ZHCSDR5B March 2012 – April 2015 TMS320C6654
PRODUCTION DATA.
On the C6654 device, the C66x CorePac, the EDMA3 transfer controller, and the system peripherals are interconnected through the TeraNet, which is a non-blocking switch fabric enabling fast and contention-free internal data movement. The TeraNet allows for low-latency, concurrent data transfers between master peripherals and slave peripherals. The TeraNet also allows for seamless arbitration between the system masters when accessing system slaves.
Two types of buses exist in the device: data buses and configuration buses. Some peripherals have both a data bus and a configuration bus interface, while others have only one type of interface. Further, the bus interface width and speed varies from peripheral to peripheral. Configuration buses are mainly used to access the register space of a peripheral and the data buses are used mainly for data transfers.
The C66x CorePac, the EDMA3 traffic controller, and the various system peripherals can be classified into two categories: masters and slaves. Masters are capable of initiating read and write transfers in the system and do not rely on the EDMA3 for their data transfers. Slaves, on the other hand, rely on the masters to perform transfers to and from them. Examples of masters include the EDMA3 traffic controller and PCI Express. Examples of slaves include the SPI, UART, and I2C.
The masters and slaves in the device are communicating through the TeraNet (switch fabric). The device contains two switch fabrics. The data switch fabric (data TeraNet) and the configuration switch fabric (configuration TeraNet). The data TeraNet, is a high-throughput interconnect mainly used to move data across the system. The data TeraNet connects masters to slaves via data buses. The configuration TeraNet, is mainly used to access peripheral registers. The configuration TeraNet connects masters to slaves via configuration buses. Note that the data TeraNet also connects to the configuration TeraNet. For more details see Section 5.2.
The tables below list the master and slave end point connections.
Intersecting cells may contain one of the following:
MASTERS | SLAVES | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
CorePac0_SDMA | PCIe0_Slave | Boot_ROM | SPI | EMIF16 | Mcbsp0_FIFO_Data | Mcbsp1_FIFO_Data | QM_Slave | MSMC_SES | STM | TETB_D | TETB0 | EDMA3CC | EDMA3TC(0-3) | Semaphore | QM__CFG | Tracer | Timer | |
EDMA3CC_TC0_RD | Y | Y | Y | Y | Y | - | - | - | Y | - | 1 | - | 1 | 1 | 1 | 1 | 1 | 1, 4 |
EDMA3CC_TC0_WR | Y | Y | - | Y | Y | - | - | - | Y | 1 | - | - | 1 | 1 | 1 | 1 | 1 | 1, 4 |
EDMA3CC_TC1_RD | Y | Y | Y | Y | Y | 2, 4 | 2, 4 | - | Y | - | - | 2 | 2 | 2 | - | - | - | - |
EDMA3CC_TC1_WR | Y | Y | - | Y | Y | 2, 4 | 2, 4 | - | Y | - | - | - | 2 | 2 | - | - | - | - |
EDMA3CC_TC2_RD | Y | Y | Y | Y | Y | 1, 4 | 1, 4 | - | Y | - | 1 | - | 1 | 1 | 1 | 1 | 1 | 1, 4 |
EDMA3CC_TC2_WR | Y | Y | - | Y | Y | 1, 4 | 1, 4 | - | Y | - | - | - | 1 | 1 | 1 | 1 | 1 | 1, 4 |
EDMA3CC_TC3_RD | Y | Y | Y | Y | Y | - | - | 2 | Y | - | - | - | 2 | 2 | - | - | - | - |
EDMA3CC_TC3_WR | Y | Y | - | Y | Y | - | - | 2 | Y | 2 | - | - | 2 | 2 | - | - | - | - |
PCIe_Master | Y | - | - | Y | Y | 1, 4 | 1, 4 | 1 | Y | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1, 4 |
EMAC | 3 | - | - | - | - | - | - | - | 3 | - | - | - | - | - | - | - | - | - |
MSMC_Data_Master | Y | Y | Y | Y | Y | 1, 4 | 1, 4 | 1 | - | 1 | - | - | - | - | - | - | - | - |
QM Packet DMA | Y | - | - | - | - | - | - | 1 | Y | - | - | - | - | - | - | - | - | - |
QM Second | Y | - | Y | Y | Y | - | - | 1 | Y | - | - | - | - | - | - | - | - | - |
DAP_Master | Y | Y | Y | Y | Y | 1, 4 | 1, 4 | 1 | Y | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1, 4 |
CorePac0_CFG | - | - | - | - | - | - | - | - | - | - | - | - | - | Y | - | - | - | - |
Tracer_Master | - | - | - | - | - | - | - | - | - | 1 | Y | Y | Y | Y | Y | Y | Y | 4 |
uPP | 3 | - | - | - | - | - | - | - | 3 | - | - | - | - | - | - | - |
MASTERS | SLAVES | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
GPIO | I2C | SEC_CTL | SEC_KEY_MGR | Efuse | Boot_CFG | PSC | PLL | CIC | MPU0-3 | MPU4 | Debug_SS_CFG | SmartReflex | UART_CFG (0-1) | McBSP_CFG(0-1) | McBSP_FIFO_CFG(0-1) | EMAC_CFG | UPP_CFG | |
EDMA3CC_TC0_RD | 1, 4 | 1, 4 | 1, 4 | 1, 4 | - | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1 | 1, 4 | - | - | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1 |
EDMA3CC_TC0_WR | 1, 4 | 1, 4 | 1, 4 | 1, 4 | - | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1 | 1, 4 | - | - | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1 |
EDMA3CC_TC1_RD | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
EDMA3CC_TC1_WR | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
EDMA3CC_TC2_RD | 1, 4 | 1, 4 | 1, 4 | 1, 4 | - | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1 | 1, 4 | - | - | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1 |
EDMA3CC_TC2_WR | 1, 4 | 1, 4 | 1, 4 | 1, 4 | - | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1 | 1, 4 | - | - | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1 |
EDMA3CC_TC3_RD | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
EDMA3CC_TC3_WR | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
PCIe_Master | 1, 4 | 1, 4 | 1, 4 | 1, 4 | - | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1 | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1 |
EMAC | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
MSMC_Data_Master | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | |
QM Packet DMA | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
QM Second | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
DAP_Master | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1 | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1, 4 | 1 |
EDMA3CC | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
CorePac0_CFG | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | Y | 4 | 4 | 4 | 4 | 4 | 4 | 4 | Y |
Tracer_Master | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
uPP | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
The figures below show the connections between masters and slaves through various sections of the TeraNet.
The priority level of all master peripheral traffic is defined at the TeraNet boundary. User programmable priority registers allow software configuration of the data traffic through the TeraNet. Note that a lower number means higher priority - PRI = 000b = urgent, PRI = 111b = low.
Most master ports provide their priority directly and do not need a default priority setting. Examples include the CorePacs, whose priorities are set through software in the UMC control registers. All the packet-DMA-based peripherals also have internal registers to define the priority level of their initiated transactions.
Some masters do not have apriority allocation register of their own. For these masters, a priority allocation register is provided for them and described in the sections below. For all other modules, see the respective User Guides in Section 9.2 for programmable priority registers.
The packet DMA secondary port is one master port that does not have priority allocation register inside the IP. The priority level for transaction from this master port is described by PKTDMA_PRI_ALLOC register in Figure 5-6 and Table 5-3.
31 | 3 | 2 | 0 |
Reserved | PKTDMA_PRI |
R/W-00000000000000000000001000011 | RW-000 |
LEGEND: R/W = Read/Write; R = Read only; -n = value after reset |
Bit | Name | Description |
---|---|---|
31-3 | Reserved | Reserved |
2-0 | PKTDMA_PRI | Control the priority level for the transactions from packet DMA master port, which access the external linking RAM. |
The EMAC and uPP are master ports that do not have priority allocation registers inside the IP. The priority level for transaction from these master ports is described by EMAC_UPP_PRI_ALLOC register in Figure 5-7 and Table 5-4.
31 | 27 | 26 | 24 | 23 | 19 | 18 | 16 | 15 | 11 | 10 | 8 | 7 | 3 | 2 | 0 |
Reserved | EMAC_EPRI | Reserved | EMAC_PRI | Reserved | UPP_EPRI | Reserved | UPP_PRI |
R-00000 | RW-110 | R-00000 | RW-111 | R-00000 | RW-110 | R-00000 | RW-111 |
LEGEND: R/W = Read/Write; R = Read only; -n = value after reset |
Bit | Name | Description |
---|---|---|
31-27 | Reserved | Reserved |
26-24 | EMAC_EPRI | Control the maximum priority level for the transactions from EMAC master port. |
23-19 | Reserved | Reserved |
18-16 | EMAC_PRI | Control the priority level for the transactions from EMAC master port. |
15-11 | Reserved | Reserved |
10-8 | UPP_EPRI | Control the maximum priority level for the transactions from uPP master port. |
7-3 | Reserved | Reserved |
2-0 | UPP_PRI | Control the priority level for the transactions from uPP master port. |