Path: utzoo!attcan!uunet!lll-winken!lll-lcc!ames!ll-xn!oberon!sm.unisys.com!trwrb!trwspf!knurlin From: knurlin@trwspf.TRW.COM (Scott Karlin) Newsgroups: comp.sys.m68k Subject: Re: How plug compatible is 68010? Message-ID: <800@trwspf.TRW.COM> Date: 21 Jul 88 00:20:15 GMT References: <224@bcsfse.UUCP> Reply-To: knurlin@trwspf.UUCP (Scott Karlin) Organization: TRW - Data Systems Lab., Redondo Beach, CA Lines: 57 In article <224@bcsfse.UUCP> bill@bcsfse.UUCP (Bill Sears) writes: >I have a UNIX computer with a 68000 processor. I have heard that >the 68000 has a problem with restarting an instruction and thus virtual >memory systems are impossible (??). Yes, here's the problem: If you have a virtual memory system and try to execute an instruction like: MOVE.L (A0)+, (A1)+ you are asking for trouble if (A0) is in the physical memory and (A1) is not. The 68000 (and 68010) will fetch (A0), then increment A0, then write to (A1), and then increment A1. If your memory management unit generates a bus error for the write to (A1), A1 will not be incremented. The 68000 does not save enough information on the stack about its internal state to be able to jump back to the middle of the instruction after the bus error routine swaps the memory block containing (A1) into the physical memory space; the 68010 does. >I have also heard that the 68010 >corrects the bug in the 68000, and that it is plug-compatible. What I'm >wondering is, is it really 100% pin-compatible with the 68000? Yes, you can put a 68010 into a 68000 and the HARDWARE will work fine. They are 100% hardware compatible. >Can I buy a 68010, replace the 68000 in my computer and still run >all of the existing software and have everything work? Is it that easy? Maybe...Maybe not. Here are two reasons: 1. Because the 68010 puts more stuff on the stack during 2. On the 68000 the MOVE SR,D0 instruction is not a priveledged instruction; it is priveledged on the 68010. This means that any code that is running in the user mode cannot attempt to execute this instruction without generating a priveledge violation exception. >I know that there are other considerations for virtual memory operations. >All I'm interested in right now is whether it is possible to just swap >processors. Like I said, maybe...maybe not. You won't hurt your hardware but your software might not work. If you have access to all of the source code, it shouldn't be too hard to fix it for the above problems. One more thing, if you are not using VM, then the extra 5% or so increase in speed is probably not worth the effort in my opinion. > Bill Sears ...!uw-beaver!ssc-vax!voodoo!bcsfse!bill > FSE development project -- -- Scott Karlin TRW, Bldg O2-1761, One Space Park, Redondo Beach, CA 90278 USENET: knurlin@trwspf.trw.com Phone: (213) 535-3785 {sdcrdcf, scgvaxd, ucbvax}!trwrb!trwspf!knurlin