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.

138总线冲突



当dsp频繁访问sdram时, arm就无法访问ddr, 导致arm程序反应迟缓

dsp访问频率大概8us访问1次

arm上跑的linux系统, 可能是时间片远大于8us的缘故, 总是抢不过dsp, 当arm程序需要大量内存访问时问题尤为明显,程序跟死机一样.

我想问问TI的工程师, 在138的设计里, 对这种arm与dsp同时访问外部总线的情况是如何处理的,有没有办法互补影响

补充一下: DSP的程序运行在内RAM中,运行中访问的是用于数据采集的FPGA,是通过upp访问的,采集的数据存到DSP的内ram中,需要采集数据的时候,每8us有6us左右的时间用于数据传输,这个过程要重复运行几秒的时间。ARM的程序是运行在DDR中的,不太清楚ARM程序的加载方式是什么样的。应该是分段通过DMA或者upp传输的吧。
  • 1. 修改SYSCFG的寄存MSTPRIn,配置master的优先级,如果希望DSP优先于ARM,则将DSP的配置值比ARM大。0代表最高优先级,7代表最低优先级。

    2. 修改DDR的BPPBR寄存器的值,0x20是一个推荐值。

    3. DSP访问DDR是什么方式?CPU访问还是EDMA访问?访问量多大?

    总线竞争是存在的,但不应该有这么大影响。这里跟时间片没有关系。

  •  DSP的程序运行在内RAM中,运行中访问的是用于数据采集的FPGA,是通过upp访问的,采集的数据存到DSP的内ram中,需要采集数据的时候,每8us有6us左右的时间用于数据传输,这个过程要重复运行几秒的时间。ARM的程序是运行在DDR中的,不太清楚ARM程序的加载方式是什么样的。应该是分段通过DMA或者upp传输的吧。