Figure 14.2 Multicast Group Address Region Determination - Renesas IDT 89HPES48H12G2 User Manual

Pci express switch
Table of Contents

Advertisement

IDT Multicast
Notes
PES48H12G2 User Manual
The starting address of the region associated multicast group zero is equal to the multicast base
address defined by the Multicast Base Address Low (MCBARL) field in the MCBARL register and the Multi-
cast Base Address High (MCBARH) field in the Multicast Base Address High (MCBARH) register.
– The multicast base address is a 64-bit quantity and may start anywhere in memory.
In general, the starting address of the region associated with multicast group n is equal to the multicast
base address plus the quantity (n * 2
the multicast group number or that are less than the multicast index position (i.e., INDEXPOS) must be
zero, the multicast group ID associated with a TLP may be determined as shown in Figure 14.2.
For the purpose of multicast TLP determination, address bits in the TLP address less than the multicast
index position and bits associated with the multicast group ID are zeroed. This address is then compared to
the multicast base address. If the two are not equal, then the TLP is not a multicast TLP.
If the two addresses are equal, then the multicast group ID is extracted from the address bits that corre-
spond to enabled multicast groups. The number of bits is equal to
the address bit corresponding to the value of INDEXPOS. If the multicast group ID is greater than the
number of enabled multicast groups (i.e., NUMGROUP + 1), then the TLP is not a multicast TLP. Other-
wise, the TLP is a multicast TLP.

Figure 14.2 Multicast Group Address Region Determination

Once a TLP has been determined to be a multicast TLP and the multicast group ID has been deter-
mined, the following error checks are performed. If the multicast TLP fails the source validation ACS check,
then it is handled as specified by ACS. No other ACS checks are performed on multicast TLPs. Associated
with each multicast group is a "block all" bit. If the block all bit corresponding to the multicast group ID asso-
ciated with a received multicast TLP is set in the ingress port, then the multicast TLP is treated as a blocked
multicast TLP.
– The "block all" bits are contained in the ingress port's Multicast Block All (MCBLKALL) fields of the
Multicast Block All Low (MCBLKALLL) and Multicast Block All High (MCBLKALLH) registers.
Associated with each multicast group is a "block untranslated" bit. If the "block untranslated" bit corre-
sponding to the multicast group ID associated with a received multicast TLP is set in the ingress port and
the TLP is untranslated, as determined by the Address Type (AT) field in the TLP header, then the multicast
TLP is treated as a blocked multicast TLP.
– The "block untranslated" bits are contained in the ingress port's Multicast Block Untranslated
(MCBLKUT) fields of the Multicast Block Untranslated Low (MCBLKUTL) and Multicast Block
Untranslated High (MCBLKUTH) registers.
A blocked multicast TLP is treated in the following manner.
– The TLP is dropped and flow control credits are returned.
– The error is reported to AER as a MC Blocked TLP error and the header is logged.
– In an upstream port, the Signaled Target Abort (STAS) bit is set in the PCI Status (PCISTS)
register.
– In a downstream port, the Signaled Target Abort (STAS) bit is set in the Secondary Status
(SECSTS) register.
INDEXPOS
). Since bits in the multicast base address that correspond to
Muticast Base Address
Multicast
Group ID
14 - 3

log
(NUMGROUP + 1)
and start with
2
Multicast Group Offeset
Address
Multicast
Index
Position
April 5, 2013

Advertisement

Table of Contents
loading

Table of Contents