This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Part Number: OMAPL138B-EP
I want to check Current setting for priority between CPU/IDMA/SDMA and may be need to change this as well.
HOw do I check and change priority ?
Is there any SFR available for it?
Following are the silicon errata(Ref:-Silicon errata sprz301m) in which it is mentioned about priority issue because of this I want to check priorities
Advisory 2.3.1 DMA Access to L2 RAM Can Stall When DMA and C674x CPU Command PrioritiesAre Equal
Note: DMA refers to all non-CPU requests. This includes Internal Direct Memory Access(IDMA) requests and all other system DMA master requests via the Slave Direct MemoryAccess (SDMA) port.The C674x Megamodule uses a bandwidth management (BWM) system to arbitratebetween DMA and CPU requests issued to L2 RAM. See TMS320C674x DSPMegamodule Reference Guide, Literature Number - SPRUFK5 for more information onthe BWM. BWM arbitration grants L2 bandwidth based on programmable priorities andcontention- cycle-counters. The contention-cycle-counters count the number of cycles forwhich the associated L2 requests are blocked by higher priority requests. When thecontention-cycle-counter reaches a programmed threshold (MAXWAIT), the associatedL2 request is granted a slice of L2 bandwidth. This prevents indefinite blocking of lowpriority requests when faced with the continuous presence of higher priority requests.Ideally, the BWM arbitration will grant equal L2 bandwidth between equal priority DMAand CPU requests. Instead, when equal priority DMA and CPU requests arrive at theBWM, bandwidth is always granted in favor of the CPU over DMA. In the case ofsuccessive CPU requests, it is possible for the CPU to block all DMA requests until CPUtraffic subsides. Additionally, some command logic in the BWM uses priority level 7,which can also result in SDMA stalls when the CPU is also programmed to priority level7.
This is covered in Chapter 6 - Bandwidth Management Architecture of the TMS320C674x DSP Megamodule Reference Guide.
The Bandwidth Management (BWM) system arbitrates DMA and CPU requests to L2 RAM. If equal priority requests come from both the DMA and CPU at the same time, the BWM will always give access to the CPU first. This can cause the DMA to stall until CPU requests are complete.
If you suspect this is an issue in your system, you can modify the priority of the CPU and DMA. You can also specify the maximum time allowed for the CPU or DMA to wait on a request. Once this time is reached, the requester will be given a priority level of -1, indicating highest priority, and will be allowed to complete a transfer.
Default priorities and max wait times are specified in Table 6-3 in the Megamodule Reference Guide linked above.
We are glad that we were able to resolve this issue, and will now proceed to close this thread.
If you have further questions related to this thread, you may click "Ask a related question" below. The newly created question will be automatically linked to this question.
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.