SPRUHX5I August 2014 – May 2024 TMS320F28374S , TMS320F28375S , TMS320F28375S-Q1 , TMS320F28376S , TMS320F28377S , TMS320F28377S-Q1 , TMS320F28378S , TMS320F28379S
The uPP peripheral can operate at high speed and transfer data at a very high rate. When operating the uPP near the upper limits, tuning certain parameters can help decrease the incidence of errors and the software overhead incurred servicing uPP data. Table 23-4 lists several parameters that can be useful in system tuning. A parameter is defined as a “coarse” adjustment, if changing the parameter directly alters the peripheral throughput. A “fine” adjustment does not change the peripheral throughput, but the adjustment does affect general system performance.
Parameter | Register | Register Field | Edge Value | Safe Value | Description |
---|---|---|---|---|---|
Data Rate | CHCTL | DRA | 1 | 0 | Double data rate increases data transfer by a factor of 2 and greatly increases system loading for the same clock divisor. This is a coarse adjustment and is probably fixed due to design constraints. |
Clock Division | IFCFG | CLKDIVA | 0 | 1+ | Increasing clock division is the most straight-forward way to decrease system loading. This is a coarse adjustment; the difference between CLKDIVx = 0 and 1 is the same (in terms of data rate) as the difference between single and double data rate. |
DMA Read Burst Size | THCFG | RDSIZEQ RDSIZEI |
0 | 3h | Increasing the DMA read threshold decreases system loading by generating fewer, larger DMA events. This is a fine adjustment. |
DMA Line Size, Count | CHxDESC1 | LCNT BCNT |
0 | (1) | Condensing uPP transfers into fewer, larger lines generates fewer end-of-line interrupts and, thus, invokes fewer ISR calls. This is a fine adjustment. |
Total Transfer Size | CHxDESC1 | LCNT BCNT |
(1) | (1) | Performing many small uPP transfers can require excessive software overhead (programming DMA descriptors, handling interrupts, and so forth) at high data rates. This is a fine adjustment. |