SPRUGR9H November 2010 – April 2015 66AK2E05 , 66AK2H06 , 66AK2H12 , 66AK2H14 , 66AK2L06 , AM5K2E02 , AM5K2E04 , SM320C6678-HIREL , TMS320C6652 , TMS320C6654 , TMS320C6655 , TMS320C6657 , TMS320C6670 , TMS320C6671 , TMS320C6672 , TMS320C6674 , TMS320C6678
The Multicore Navigator uses a Queue Manager Subsystem (QMSS) and a Packet DMA (PKTDMA) to control and implement high-speed data packet movement within the device. This reduces the traditional internal communications load on the device DSPs significantly, increasing overall system performance.
This document describes the functionality, operational details, and programming information for the PKTDMA and the components of the QMSS in KeyStone architecture devices.
All trademarks are the property of their respective owners.
This document uses the following conventions:
Notes use the following conventions:
NOTE
Means reader take note. Notes contain helpful suggestions or references to material not covered in the publication.
The information in a caution or a warning is provided for your protection. Please read each caution and warning carefully.
CAUTION
Indicates the possibility of service interruption if precautions are not taken.
WARNING
Indicates the possibility of damage to equipment if precautions are not taken.
Antenna Interface 2 (AIF2) for KeyStone Devices User Guide | SPRUGV7 |
Fast Fourier Transform Coprocessor (FFTC) for KeyStone Devices User Guide | SPRUGS2 |
Memory Protection Unit (MPU) for KeyStone Devices User Guide | SPRUGW5 |
Packet Accelerator (PA) for KeyStone Devices User Guide | SPRUGS4 |
Serial RapidIO (SRIO) for KeyStone Devices User Guide | SPRUGW1 |
Table 1-1 defines the important acronyms used in this document.
Acronym | Definition |
---|---|
AIF2 | Antenna interface subsystem |
BCP | Bit coprocessor |
CPPI | Communications port programming interface (Multicore Navigator) |
EOP | End of packet |
FFTC | FFT coprocessor subsystem |
FDQ | Free descriptor queue |
MOP | Middle of packet |
NETCP | Network Coprocessor (new name for Packet Accelerator) |
OEM | Open event machine |
PA, PASS | Packet accelerator subsystem |
PDSP | Packed data structure processor |
PKTDMA | Packet DMA, consisting of two independent halves: RX DMA and TX DMA (previously was CDMA for CPPI DMA -- this is obsolete) |
PS | Protocol specific |
QM, QMSS | Hardware queue manager; queue manager sub-system |
QoS | Quality of service (PDSP firmware) |
RX DMA | RX half of the PKTDMA |
SOP | Start of packet |
SRIO | Serial rapid I/O subsystem |
TX DMA | TX half of the PKTDMA |
Multicore Navigator provides the following features in KeyStone I devices:
Multicore Navigator was developed based on the design goals while incorporating ideas from leading-edge architectures for Ethernet, ATM, HDLC, IEEE1394, 802.11, and USB communications modules.
Some general features of Multicore Navigator:
Multicore Navigator provides the following services to the host:
Figure 1-1 shows the major functional components of Multicore Navigator for KeyStone I devices. The queue manager sub system (QMSS) contains a queue manager, the infrastructure PKTDMA, and two accumulator PDSPs with timers. The block marked Hardware Block is a Multicore Navigator peripheral (such as SRIO), and shows a detailed view of the PKTDMA sub-blocks with interfaces.
For KeyStone II devices, the following changes were made to the Queue Manager Sub System:
These changes are shown in Figure 1-2. K2L and K2E devices do not contain QM2 or PKTDMA2, and have a 16K entry Linking RAM.
As described in the previous section, the KeyStone II QMSS is roughly a doubling of the modules in the KeyStone I QMSS. One component that was doubled in size, but not in number, is the internal linking RAM. Both QM1 and QM2 share this component. The programming of each QM’s linking RAM and descriptor memory region registers determines if the linking RAM is used cooperatively (Shared Mode) or independently (Split Mode).
In this mode, both QMs share the entire internal linking RAM. Because both QMs will be writing into the same areas of the linking RAM, both QMs must be programmed with identical descriptor memory regions so that there will be no colliding indexes written into the linking RAM, which will corrupt it. The linking RAM registers in both QMs are also programmed identically, as shown in Figure 1-3. Advantage: The two QMs can be treated as a single double-sized KeyStone I QM.
This is like having two independently operating KeyStone I QMs. In this mode, each QM has a non-overlapping partition of the linking RAM to use (not necessarily equal halves as shown here). This allows each QM to be programmed with descriptor memory regions that are independent of the other QM. Note that the descriptor region indexes must begin with 0 for each QM configuration, because the indexes are relative to the address given as the base of its linking RAM. Figure 1-1 shows the linking RAM configuration for this mode. Advantage: 128 total memory regions provides much better granularity of descriptor sizing/counts.