BCM1250/BCM1125/BCM1125H
User Manual
10/21/02
B r o a d c o m C o r p o r a t i o n
Page
218
Section 8: PCI Bus and HyperTransport Fabric
Document
1250_1125-UM100CB-R
Figure 46: PCI Adaptive Retry Parameters
illustrates the algorithm. (The suggested delay values are appropriate for a host bridge, which is
permitted to wait up to 32 cycles before issuing a retry, compared to only 16 cycles in a device). The retry delay
is initialized to the value given in the
nom_tar_retry
register. This sets the normal retry timeout that should be
used and should be set above the delay expected for the memory system. Most reads will be satisfied in this
latency (falling in to the Normal Read Latency box in the figure), and the occasional long latency accesses will
be disconnected and retried (this behavior is just like the standard case). If the system becomes busier and
the latency increases slightly (moving the read latency into the higher than expected load box), to fall between
the nominal and maximum values, rather than continually disconnecting transactions just before their data
becomes available the adaptive policy will increase the retry delay to the maximum value. This prevents the
PCI throughput falling catastrophically when the system experiences a load slightly higher than was expected.
However, if the memory latency becomes larger than the maximum (the very high load box) then the retry delay
is set to its minimum value causing requests to be rapidly disconnected. Once the overload has been detected
the retry delay is left at the minimum until the memory latency returns to its normal range, when the retry delay
will also be restored to its normal value.
Table 124: Adaptive Retry Delay
Condition
New Delay Before Retry
Memory latency > max_tar_retry
retry_delay = min_tar_retry
retry_delay != min_tar_retry
AND max_tar_retry > Memory latency > nom_tar_retry
retry_delay = max_tar_retry
retry_delay == min_tar_retry
AND nom_tar_retry > Memory latency > min_tar_retry
retry_delay = nom_tar_retry
0
Measured
Memory
Latency
max_tar_retry
(e.g. 20)
nom_tar_retry
(e.g. 16)
min_tar_retry
(e.g. 8 or less)
New retry delay when memory
latency detected in this range
set
retry_delay = min_tar_retry
if (retry_delay! = min_tar_retry)
retry_delay = max_tar_retry
if (retry_delay = = min_tar_retry)
set retry_delay = nom_tar_retry
Normal
Read
Latency
Read
Latency
with
higher than
expected
load
Read
Latency
with
very high
load
Содержание BCM1125
Страница 18: ...BCM1250 BCM1125 BCM1125H User Manual 10 21 02 Broadcom Corporation Page xviii Document 1250_1125 UM100CB R ...
Страница 28: ...BCM1250 BCM1125 BCM1125H User Manual 10 21 02 Broadcom Corporation Page xxviii Document 1250_1125 UM100CB R ...
Страница 515: ...BCM1250 BCM1125 BCM1125H User Manual 10 21 02 Broadcom Corporation Page vii Index Document 1250_1125 UM100CB R ...