home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!paladin.american.edu!darwin.sura.net!mips!apple!apple!taligent!lsr.taligent.com!user
- From: lsr@taligent.com (Larry Rosenstein)
- Newsgroups: comp.sys.mac.hardware
- Subject: Re: 040 caching
- Message-ID: <lsr-220792174236@lsr.taligent.com>
- Date: 23 Jul 92 00:48:04 GMT
- References: <1992Jul22.025300.10797@news.columbia.edu> <CKD.92Jul22040059@loiosh.eff.org>
- Sender: usenet@taligent.com (More Bytes Than You Can Read)
- Followup-To: comp.sys.mac.hardware
- Organization: Taligent, Inc.
- Lines: 25
-
- In article <CKD.92Jul22040059@loiosh.eff.org>, ckd@eff.org (Christopher
- Davis) wrote:
- >
- > completely inside the chip. Now, when B modifies the next location, it
- > modifies the location in the DATA cache, not the INSTRUCTION cache... so
- > you get A B C D E A B C D E etc.
-
- This was also true of the 68030. But on the 68030 you could write an
- instruction into a RAM location that had never been executed and not have a
- problem. (Although this is still not recommended.) If the location was
- never executed then it couldn't be in the INSTRUCTION cache.
-
- The difference on the 68040 is the DATA cache is not write through (which
- it was on the 030). So the same code that would work on the 030 won't work
- on the 040, for the following reason.
-
- The program writes an instruction into memory; it goes into the DATA cache
- but not into RAM. The processor then tries to execute that instruction.
- It's not in the INSTRUCTION cache, so it goes out to RAM to fetch the code
- and misses the value in the DATA cache.
-
- Larry Rosenstein
- Taligent, Inc.
-
- lsr@taligent.com
-