The PKTDMA module supports the transmission
and reception of various packet types. The PKTDMA is architected to facilitate the
segmentation and reassembly of DMA data structure compliant packets to/from smaller data
blocks that are natively compatible with the specific requirements of each connected
peripheral. Multiple Tx and Rx channels are provided within the DMA which allow multiple
segmentation or reassembly operations to be ongoing. The DMA controller maintains state
information for each of the channels which allows packet segmentation and reassembly
operations to be time division multiplexed between channels in order to share the
underlying DMA hardware. An internal DMA scheduler is used to control the ordering and
rate at which this multiplexing occurs for Transmit operations. The ordering and rate of
Receive operations is indirectly controlled by the order in which blocks are pushed into
the DMA on the Rx PSI-L interface.
A
block diagram of the PKTDMA Controller is shown below: