
IDT Switch Core
PES32NT24xG2 User Manual
4 - 8
January 30, 2013
Notes
Switch ports in this device support port arbitration using hardware fixed round-robin. As such, the port’s
VC Capability Structure indicates support for a hardware-fixed algorithm only (i.e., round-robin).
Hardware Fixed Round-Robin Arbitration
By default, all ports are programmed for hardware fixed round-robin port arbitration. A port operates in
this mode unless it is configured for WRR arbitration as discussed in section Proprietary Weighted Round
Robin (WRR) Arbitration below. When a port is programmed for hardware fixed round-robin, the port imple-
ments a round-robin scheme among all requesting ingress ports, including the DMA module(s) requesting
transfers to the port.
–
Other ports in the same partition can transfer packets to the port (i.e., intra-partition transfers).
–
Other ports in other partitions can also transfer packets to the port (i.e., inter-partition transfers).
Proprietary Weighted Round Robin (WRR) Arbitration
All ports in the switch support a proprietary Weighted Round Robin (WRR) port arbitration scheme. This
scheme is enabled on each port independently, by setting the Enable WRR Port Arbitration (EWRRPA)
register in the port’s PORTCTL register. WRR may be enabled on a port to enforce a differentiated priority
policy among ingress ports that send traffic to the port.
When WRR is enabled on a port, the port’s arbiter follows the weights programmed in the VC0 Port
Arbiter Counter Initialization (VC0PARBCIx) registers located in the port’s configuration space. These regis-
ters contain 26 port-arbitration count fields. Each field is associated with a port, plus two fields associated
with the two DMA modules (e.g., 24 ports + 2 DMA modules = 26).
For example, the port arbiter for Port 0 follows the weights programmed in the VC0PARBCIx registers
located in Port 0’s configuration space (in function 0 of the port). The P1IC field in these VC0PARBCIx
registers contains the count value for packet transfers requested by port 1 towards port 0. Similarly, the
P2IC field contains the count value for packet transfers requested by port 2 towards port 0, and so on up to
the number of ports in the device.
In addition, the P24IC field contains the count value for packet transfers requested by the DMA engine 0
(logically associated with function 2 of port 0) towards port 0. The P25IC field contains the count value for
packet transfers requested by the DMA engine 1 (logically associated with function 2 of port 8) towards port
0.
The value programmed in a count field associated with a port, divided by the sum of the values
programmed in all fields, represents the percentage of arbitration cycles allocated to that port. The fields
are 8-bits wide each, so WRR may be programmed with a granularity of 0.015% increments.
Port arbitration can be said to occur in arbitration “epochs”. At the start of each epoch, the port arbiter
initializes the counters per the value in the VC0PARBCIx registers. Each time the port arbiter issues a grant
to a requesting port, the counter associated with that port is decremented by one unit (unless its value is
zero). Ports whose associated count value is zero are not granted by the arbiter until the current arbitration
epoch ends and a new one begins. An arbitration epoch ends due to all counters being zero or due to no
port with a non-zero count requesting service
1
.
When a value in a count field is programmed to 0x0, the port associated with that field is never granted
access by the port arbiter (i.e., the port is starved). A user must never program a value of 0x0 in a count
field, unless it is known that the port associated with that count field will never issue requests to the port
arbiter. This consideration includes the DMA engines (aliased to ports numbered 24 and 25) as well as
transfers among ports in different partitions.
For example, if ports 0 and 8 are located in different switch partitions and transfers among these ports
are possible (e.g., a TLP received by port 0 can cross partitions and be emitted by port 8, or vice-versa),
then the P8IC field in port 0’s VC0PARBCIx register must not be programmed to zero. Similarly, the P0IC
field in port 8’s VC0PARBCIx register must not be programmed to zero.
1.
There is no overhead introduced by the end of an arbitration epoch (i.e., no clock cycles are added to the arbi-
tration).
Содержание PCI Express 89HPES32NT24xG2
Страница 20: ...IDT Table of Contents PES32NT24xG2 User Manual x January 30 2013 Notes...
Страница 24: ...IDT List of Tables PES32NT24xG2 User Manual xiv January 30 2013 Notes...
Страница 28: ...IDT List of Figures PES32NT24xG2 User Manual xviii January 30 2013 Notes...
Страница 56: ...IDT PES32NT24xG2 Device Overview PES32NT24xG2 User Manual 1 20 January 30 2013 Notes...
Страница 100: ...IDT Switch Core PES32NT24xG2 User Manual 4 22 January 30 2013 Notes...
Страница 124: ...IDT Switch Partition and Port Configuration PES32NT24xG2 User Manual 5 24 January 30 2013 Notes...
Страница 128: ...IDT Failover PES32NT24xG2 User Manual 6 4 January 30 2013 Notes...
Страница 148: ...IDT Link Operation PES32NT24xG2 User Manual 7 20 January 30 2013 Notes...
Страница 164: ...IDT SerDes PES32NT24xG2 User Manual 8 16 January 30 2013 Notes...
Страница 170: ...IDT Power Management PES32NT24xG2 User Manual 9 6 January 30 2013 Notes...
Страница 196: ...IDT Transparent Switch Operation PES32NT24xG2 User Manual 10 26 January 30 2013 Notes...
Страница 244: ...IDT SMBus Interfaces PES32NT24xG2 User Manual 12 40 January 30 2013 Notes...
Страница 247: ...IDT General Purpose I O PES32NT24xG2 User Manual 13 3 January 30 2013 Notes...
Страница 248: ...IDT General Purpose I O PES32NT24xG2 User Manual 13 4 January 30 2013 Notes...
Страница 330: ...IDT Switch Events PES32NT24xG2 User Manual 16 6 January 30 2013 Notes...
Страница 342: ...IDT Multicast PES32NT24xG2 User Manual 17 12 January 30 2013 Notes...
Страница 344: ...IDT Temperature Sensor PES32NT24xG2 User Manual 18 2 January 30 2013 Notes...
Страница 384: ...IDT Register Organization PES32NT24xG2 User Manual 19 40 January 30 2013...
Страница 492: ...IDT Proprietary Port Specific Registers PES32NT24xG2 User Manual 21 44 January 30 2013 Notes...
Страница 588: ...IDT NT Endpoint Registers PES32NT24xG2 User Manual 22 96 January 30 2013 Notes...
Страница 710: ...IDT JTAG Boundary Scan PES32NT24xG2 User Manual 25 12 January 30 2013 Notes...
Страница 743: ...IDT Usage Models PES32NT24xG2 User Manual 26 33 January 30 2013 Notes...
Страница 744: ...IDT Usage Models PES32NT24xG2 User Manual 26 34 January 30 2013 Notes...