Cache performance on 386 boards running Unix

David Hinds dhinds at portia.Stanford.EDU
Thu Oct 26 06:56:19 AEST 1989


In article <1480 at crdos1.crd.ge.COM>, davidsen at crdos1.crd.ge.COM (Wm E Davidsen Jr) writes:
>   If anyone has an Intel cache controller spec sheet handy, please
> contribute. 

I don't have the spec's, but as I understand it, the Intel chip is a
"2-way set-associative" cache controller.  Each entry in the cache
has two parts: a physical-memory address to which it corresponds, and
a copy of the data at that address (32 bits, I think).  To speed up
the check to see if something is in the cache, there are only two
entries in the cache where any given physical address might reside.
A 'set' of physical addresses are 'associated' with each pair of
cache entries.  When the 80386 sends out a physical address, the
cache controller figures out which two entries might contain the data
(probably using the top bits of the address as an index into the cache),
checks those two entries to see if either address matches the request,
and either returns the data from the cache or polls main memory.
A 64K cache is built from 8 8K-by-8bit static RAM chips, to be 64 bits
wide, so that each cache entry has room for a 32-bit address and 32 bits
of data.  So it actually has 32K of data.
                               -David Hinds
                                dhinds at portia.stanford.edu



More information about the Comp.unix.i386 mailing list