User Manual
BCM1250/BCM1125/BCM1125H
10/21/02
B r o a d c o m C o r p o r a t i o n
Document
1250_1125-UM100CB-R
Section 3: System Overview
Page
23
Two fields describe the cache attributes of a transfer. The first, shown in
, describes the base (Level 1
cache) attribute. This must be set consistently by all agents using a block or all accesses to the block become
UNPREDICTABLE.
The second attribute is only used for cacheable transactions that have an address in the memory controller
range. The A_L2CA (Level 2 Cache Allocate) signal indicates that the block should be allocated in the L2 cache
if it misses. Following the D-phase of a transaction with this attribute the data will always be in the L2 cache.
Note that this attribute only controls the behavior on a cache miss: all cacheable accesses to the memory
controller range are checked in the L2 cache, reads will always be serviced by the L2 if they hit and writes will
always update the L2 if they hit.
R
ESPONSE
P
HASE
The response phase determines which agent will supply the data for a read command and is the point of
ownership transfer for a block. Following the R-phase the new owner is responsible for the block (even if it
does not yet have the data).
Each agent has R_EXC and R_SHD status signals. It asserts the R_EXC signal to indicate it has exclusive
ownership of the block and that it will provide read data. It asserts the R_SHD signal to indicate it has a shared
copy of the block. The memory controller and L2 cache use these to determine if they must supply or accept
the data. The requesting agent will examine the status after doing a Read (shared) command, if no other agent
has a shared copy of the data then the requesting agent is permitted (but not required) to take exclusive
ownership of the block as if it had issued a Read Exclusive command.
An agent can assert both R_EXC and R_SHD to indicate an error. This is done if there is a parity or ECC error
in the tags and the agent is unable to determine if it has ownership. If an exclusive owner can be identified then
it supplies the block as normal. If there is no other exclusive owner then the memory controller will respond
with UNPREDICTABLE data marked with a Fatal Error.
The L2 cache will assert the R_L2HIT to indicate to the memory controller that it will act as the default owner
for the block. The default owner supplies data for a read if there is no exclusive owner, and captures the data
on a write or ownership transfer.
Table 4: ZBbus Level 1 Cache Attributes
A_L1CA[1:0]
Attribute
00
Cacheable non-coherent. The block will be cached but will not play a part in the coherence protocol. Any
agent with a copy of the block is free to write it. Software must manage the coherence.
01
Cacheable coherent. The block will be cached and uses the full coherence protocol. During usual
operation all blocks with main memory addresses should use this attribute.
10
Uncacheable. The data will not be cached, and will not play a part in the coherence protocol. (Although
not required, this attribute is normally used for uncacheable data that consists of 8 bytes or less.)
11
Uncacheable. The data will not be cached and will not play a part in the coherence protocol. (Although
not required, this attribute is normally used for uncacheable data that has been merged in a buffer and
may therefore be any number of bytes.)