Intel 253668-032US ユーザーズマニュアル

ページ / 806
11-8   Vol. 3
MEMORY CACHE CONTROL
(depending on the write policy currently in force) can also write it out to memory. If 
the operand is to be written out to memory, it is written first into the store buffer, and 
then written from the store buffer to memory when the system bus is available. 
(Note that for the Pentium processor, write misses do not result in a cache line fill; 
they always result in a write to memory. For this processor, only read misses result in 
cache line fills.)
When operating in an MP system, IA-32 processors (beginning with the Intel486 
processor) and Intel 64 processors have the ability to snoop other processor’s 
accesses to system memory and to their internal caches. They use this snooping 
ability to keep their internal caches consistent both with system memory and with 
the caches in other processors on the bus. For example, in the Pentium and P6 family 
processors, if through snooping one processor detects that another processor 
intends to write to a memory location that it currently has cached in shared state
the snooping processor will invalidate its cache line forcing it to perform a cache line 
fill the next time it accesses the same memory location. 
Beginning with the P6 family processors, if a processor detects (through snooping) 
that another processor is trying to access a memory location that it has modified in 
its cache, but has not yet written back to system memory, the snooping processor 
will signal the other processor (by means of the HITM# signal) that the cache line is 
held in modified state and will preform an implicit write-back of the modified data. 
The implicit write-back is transferred directly to the initial requesting processor and 
snooped by the memory controller to assure that system memory has been updated. 
Here, the processor with the valid data may pass the data to the other processors 
without actually writing it to system memory; however, it is the responsibility of the 
memory controller to snoop this operation and update memory.
11.3 
METHODS OF CACHING AVAILABLE
The processor allows any area of system memory to be cached in the L1, L2, and L3 
caches. In individual pages or regions of system memory, it allows the type of 
caching (also called memory type) to be specified (see Section 11.5). Memory types 
currently defined for the Intel 64 and IA-32 architectures are (see Table 11-2):
Strong Uncacheable (UC) —System memory locations are not cached. All 
reads and writes appear on the system bus and are executed in program order 
without reordering. No speculative memory accesses, page-table walks, or 
prefetches of speculated branch targets are made. This type of cache-control is 
useful for memory-mapped I/O devices. When used with normal RAM, it greatly 
reduces processor performance.
NOTE
The behavior of FP and SSE/SSE2 operations on operands in UC 
memory is implementation dependent. In some implementations, 
accesses to UC memory may occur more than once. To ensure 
predictable behavior, use loads and stores of general purpose