home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.sys.mac.hardware
- Path: sparky!uunet!usc!sdd.hp.com!decwrl!adobe!macne035.boston.us.adobe.com!user
- From: zisk@adobe.com (Stephen Zisk)
- Subject: Re: Motorola's 68060 for the Mac
- Message-ID: <zisk-220193151809@macne035.boston.us.adobe.com>
- Followup-To: comp.sys.mac.hardware
- Sender: usenet@adobe.com (USENET NEWS)
- Organization: Adobe Systems Incorporated
- References: <D2150056.o6gh64@erics.infoserv.com> <1993Jan22.054617.25775@bilby.cs.uwa.edu.au>
- Date: Fri, 22 Jan 1993 20:30:26 GMT
- Lines: 34
-
- In article <1993Jan22.054617.25775@bilby.cs.uwa.edu.au>,
- quinn@cs.uwa.edu.au (Quinn) wrote:
- > The Lisa had an 68000 and implemented virtual memory but only for
- > code segments. Therefore I assume you can always manage to restart
- > instruction fetches on the 68000. I guess that putting data in
- > code segments was frowned upon (and didn't work).
-
- No, you cannot restart from failed instruction fetches. This is a
- common cause of bus errors. The real problem with the 68000, which was
- fixed by the 68010, is that some internal register state is not saved
- to the stack on a bus error. This means you can not recover if some
- calculation was ongoing when the bus error occured.
-
- What you can do is a slimy bit of probing by making the segment calls
- include code surrounded by a bunch of no-ops, so that there are no
- ongoing calculations. You can even write a compiler to do this on long
- pointer references, so that the system code recovering from a bus fault
- can page in the right stuff, satisfiy the hardware translators in the
- MMU (after all, you don't have to use a 68851 as MMU, you can roll your
- own), and start again at the right spot.
-
- The even uglier trick we used for our "high-performance" machines at a
- previous company was to have primary/secondary 68Ks, where the WAIT
- signal on the primary 68K becomes asserted on bus error, the secondary
- 68K goes off and satisfies the fault, and then WAIT is unasserted on
- the primary 68K and it continues on its way, not even knowing a bus
- error occured. This was an expensive solution when 68Ks were $200 a pop,
- but would be very cheap these days at < $5.
-
- Stephen Zisk (zisk@adobe.com) Disclaimer: These are my personal views
- Adobe Systems Incorporated and do not represent the position of
- Eastern Regional Office Adobe Systems Incorporated.
- 24 New England Exec. Park
- Burlington, MA 01803 They pay me but they don't muzzle me!
-