MPC5200B Users Guide, Rev. 1
13-28 Freescale Semiconductor
On-Chip SRAM
13.16 On-Chip SRAM
MPC5200B contains 16KBytes of on-chip SRAM. This memory is directly accessible by the BestComm DMA unit. It is used primarily as
storage for task table and buffer descriptors used by BestComm DMA to move peripheral data to and from SDRAM or other locations. These
descriptors must be downloaded to the SRAM at boot.
This SRAM resides in the MPC5200B internal register space and is also accessible by the processor core. As such it can be used for other
purposes, such as scratch pad storage. The 16kBytes SRAM starts at location MBAR + 0x8000.
13.17 Programming Model
The SDMA engine expects the programmer to initialize several things in memory including the Task Table and the Variable Table(s). These
are described and illustrated in the following sub-sections. The various descriptors used in each task are also described below.

13.17.1 Task Table

The programmer must initialize the taskBAR register in the IPB Interface Module (offset 0x1200). The Task Table (sometime also referred to
as Entry Table), whose format is shown in Figure13-1, should reside at the address specified by taskBAR.
The Task Table base address must be aligned to a 512-byte boundary. There are sixteen tasks, each of which has its own unique Task Descriptor
Table (TDT) start pointer, TDT end pointer, Variable Table pointer, control information, and status information. The TDT start pointer is a
32-bit value that points to the first descriptor, an LCD, of that particular task. The remaining descriptors (LCDs and DRDs) should
consecutively follow the first one in memory, except in special branching cases. The TDT end pointer is a 32-bit value that points to the last
descriptor, which must be a DRD, of that particular task.
The 32-bit Variable Table pointer points to the top of the 32-word (128 byte) memory space where this task’s Variable Table resides. The
Variable Table format is explained later in more detail.
The control information is located in the fourth word of each task’s Task Table information as shown in Figure13-1. Bits 0 through 23 contain
the base address for this task’s function descriptors. Control bits 24 through 31 are for precise increment, not resetting the error code, whether
to pack data, integer mode, complex data mode, to enable speculative reads and whether bursting is allowed on reads and writes.
The fifth and sixth word of the task table are reserved.
The seventh word is a pointer to the Context Save Area where important data is saved and later restored in case of a task switch.
The last word is used by the SDMA engine in conjunction with Literal Initialization of LCD (to save variable usage). The user should not
modify the values stored there.

Figure 13-1. Task Table