A–16
System Address Space
PCI Dense Memory Space
•
The concept of dense space (and sparse space) is applicable only to a 21164-gen-
erated address. There is no such thing as dense space (or sparse space) for a PCI
generated address.
•
Byte or word transactions are not possible in dense space. The minimum access
granularity is a longword on write transactions and a quadword on read transac-
tions. The maximum transfer length is 32 bytes (performed as a burst of eight
longwords on the PCI). Any combination of longwords may be valid on write
transactions. Valid longwords surrounding an invalid longword(s) (called a hole)
are required to be handled correctly by all PCI devices. The 21174 will allow
such holes to be issued.
•
Read transactions will always be performed as a burst of two or more longwords
on the PCI because the minimum granularity is a quadword. The 21164 can
request a longword but the 21174 will always fetch a quadword, thus prefetching
a second longword. Therefore, this space cannot be used for devices that have
read side effects. Although a longword may be prefetched, the prefetch buffer is
not treated as a cache and so coherency is not an issue. A quadword read transac-
tion is not atomic on the PCI; that is, the target device is at liberty to force a retry
after the first longword of data is sent, and then to allow another PCI device to
take control of the PCI bus
1
.
•
The 21164 merges noncached reads of up to 32 bytes maximum. The largest
dense-space read transaction is 32 bytes from the PCI bus.
•
Write transactions to dense space are buffered in the 21164 chip. The 21174 sup-
ports a burst length of 8 on the PCI, corresponding to 32 bytes of data. Also, the
21174 provides four 32-byte write buffers to maximize I/O write transaction per-
formance. These four buffers are strictly ordered. Write transactions are sent out
on the bus in the order that they were received from the 21164. Avoid write
buffer merging and use memory barrier (MB) and write memory barrier (WMB)
instructions carefully.
1 The 21174 does not drive the PCI lock signal and this cannot ensure atomicity. This is true
of all current Alpha microprocessors.