![Texas Instruments AM1808 Скачать руководство пользователя страница 1659](http://html.mh-extra.com/html/texas-instruments/am1808/am1808_technical-reference-manual_10945581659.webp)
Region 0
128 x 32
Bytes
Memory Region 0
Base Address
Region 1
32 x 64
Bytes
Memory Region 1
Base Address
Region 2
64 x 32
Bytes
Memory Region 2
Base Address
Region N
64 x 32
Bytes
Memory Region N
Base Address
64
Entries
Index w
128
Entries
Index x
64 Entries Index y
32
Entries
Index z
65535
Linking RAM
Region 0
Linking RAM
Region 1
0
Architecture
1659
SPRUH82C – April 2013 – Revised September 2016
Copyright © 2013–2016, Texas Instruments Incorporated
Universal Serial Bus 2.0 (USB) Controller
34.2.8.6 Memory Regions and Linking RAM
In addition to allocating memory for raw data, the host is responsible for allocating additional memory for
exclusive use of the CPPI DMA Queue Manager to be used as a scratch PAD RAM. The Queue Manager
uses this memory to manage states of Descriptors submitted within the submit queues. In other words,
this memory needs not to be managed by your software and your software responsibility is only for
allocation of memory. The allocated memory can be a single block of memory that is contiguous or two
blocks of memory that are not contiguous. These two blocks of memory are referred as a Linking RAM
Regions and should not be confused with Memory Regions that are used to store Descriptors and the use
of the term Region should be used in the context of its use.
The physical size of the Linking RAM region(s) to be allocated depends on the total number of Descriptors
defined within all memory regions. A minimum of four bytes of memory needs to be allocated for each
Descriptor defined within all 16 Memory Regions.
The Queue Manager has the capability of managing up to 16 Memory Regions. These Memory Regions
are used to store descriptors of variable sizes. The total number of Descriptors that can be managed by
the Queue Manager should not exceed 16K. Each Memory Region has Descriptors of one configurable
size, that is, Descriptors with different sizes cannot be housed within a single Memory Region. These 16K
Descriptors are referenced internally in the Queue Manager by a 16-bit quantity index.
The information about the Linking RAM regions and the size that are allocated is communicated to the
CPPI DMA via three registers dedicated for this purpose. Two of the three registers are used to store the
32-bit aligned start addresses of the Linking RAM regions. The remaining one register is used to store the
size of the first Linking RAM. The size value stored here is the number of Descriptors that is to be
managed by the Queue Manager within that region not the physical size of the buffer, which is four times
the number of descriptors.
Note that you are not required to use both Linking RAM Regions, if the size of the Linking RAM for the first
Region is large enough to accommodate all Descriptors defined. No Linking RAM size register for Linking
RAM Region 2 exists. The size of the second Linking RAM, when used, is indirectly computed from the
total number of Descriptors defined less the number of Descriptors managed by the first Linking RAM.
Figure 34-19. Relationship Between Memory Regions and Linking RAM