![](http://datasheet.mmic.net.cn/230000/79RC32438-200BB_datasheet_15568909/79RC32438-200BB_172.png)
IDT Bus Arbitration
Theory of Operation
79RC32438 User Reference Manual
5 - 4
November 4, 2002
Notes
The minimum percentage of bus bandwidth available for a given priority can be calculated as follows for
the above example:
Where MTCi is the MTC for the bus master with index i and PTCj is the PTC for priority j.
As an example, the percentage of bus bandwidth available to bus masters 3 and 4 may be calculated as
follows:
It should be apparent that these equations approximate bus bandwidth since the IPBus arbiter deals
with transactions and not clock cycles. Despite this fact, the IPBus arbiter provides a mechanism to bound
service delays and provide a guaranteed level of service.
When the CMTC field of all bus masters requesting service is zero, then instead of allowing the IPBus to
go idle, the bus is granted in a fair manner to one of the bus master(s) with the highest priority.
IPBus supports transaction merging. This allows burst transfers to the Double Data Rate (DDR)
controller that are longer than a maximal length DMA burst (16 words). It also allows the system to limit
queueing delays and hence minimize the size of buffers.
The DDR controller can supply data at twice the data rate required by the IPBus. The IPBus arbiter
passes hints to the DDR controller when IPBus transaction merging may take place. The DDR controller
uses this information to speculatively prefetch data potentially required for the next DMA transaction. When
the Disable Prefetching (DP) bit is set in the IPBus Arbiter Control (IPAC) register, DDR prefetching hints
are disabled (i.e., the DDR controller will never speculatively prefetch data).
Figure 5.2 depicts a flow chart of the IPBus arbitration algorithm.
BW available to priority 3
100%
=
BW available to priority 2
1
MTC
-----------------+
MTC
PTC
3
11
+
–
x
100%
=
BW available to priority 1
1
MTC
-------------------+
MTC
PTC
3
11
+
–
x
1
MTC
------------------------------------------
MTC
15
+
PTC
2
–
x
100%
=
BW available to priority 0
1
MTC
-------------------+
MTC
PTC
3
11
+
–
x
1
MTC
-----------------+
MTC
15
P
TC2
MTC
14
–
MTC
PTC
3
x
1
1
MTC
+
+
–
x100%
=
BW available to bus master 4
MTC
4
PTC
3
----------------
x
100%
=
BW available to bus master 3
MTC
3
PTC
2
----------------
x
1
MTC
-----------------+
MTC
PTC
3
11
+
–
x
100%
=