home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!paladin.american.edu!europa.asd.contel.com!gatech!swrinde!elroy.jpl.nasa.gov!ames!olivea!charnel!rat!koko.csustan.edu!nic.csu.net!csufres.CSUFresno.EDU!matthewd
- From: matthewd@csufres.CSUFresno.EDU (Matthew Davidian)
- Newsgroups: comp.sys.amiga.hardware
- Subject: Re: Data/Instruction Cache & BURST modes on 68030? Why/when?
- Message-ID: <1992Dec23.212118.3625@nic.csu.net>
- Date: 24 Dec 92 05:21:17 GMT
- References: <hellerS.724958427@batman> <72192@cup.portal.com> <smcgerty.725067816@unix1.tcd.ie>
- Organization: California State University, Fresno
- Lines: 35
- Nntp-Posting-Host: csufres.cs.csufresno.edu
-
- In article <smcgerty.725067816@unix1.tcd.ie> smcgerty@unix1.tcd.ie (Stephen John McGerty) writes:
- >With this in mind, why is it that Motorola have seperate instruction
- >and data caches? On the i486 there is a single 8k cache used for
- >both instructions and data. On the M68040, there is one 4k cache
- >for data, and another 4k cache for instructions. Which is better?
- >
- >I hear that the Intel 586 is going to have seperate instruction
- >and data caches, as in the M68040, so this would seem to imply that
- >this is the prefered arrangement...?
- >
- >The only thing I can think of is that you might not want your instruction
- >cache getting overwritten with less frequently used data, in a vector
- >operation or something. But this isn't really a serious factor, or
- >so I'm told...
-
- The main rationale I've read for the "Harvard" or split cache setup is that
- they can both be accessed at the same time; in pipelined architectures this
- can be especially good, since in one stage you might be fetching & decoding
- an instruction, while another stage might be fetching the operand for another
- instruction; both at the same time.
-
- A side effect of having data and instruction caches is that self modifying
- code (which is not a good thing anyway) won't work--your writes to modify
- the code will go into the data cache (because it's assumed to be data) and
- the instruction caches doesn't get the change.
-
- In an article I read before the P5/586/Pentium was announced, the writer
- swore that Intel would never produce an 80x86 with a Harvard architecture
- because so many DOS programs use self-modifying code--including Windows.
- In order to pull this off, they must have added some extra stuff to check
- data writes against the instruction cache, or some such magic, or else
- the caches will have to be disabled for self-modifying code.
-
- Matt Davidian
- matthewd@csufres.csufresno.edu
-