TI中文支持网
TI专业的中文技术问题搜集分享网站

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传输的吧。

Tony Tang:

1. 修改SYSCFG的寄存MSTPRIn,配置master的优先级,如果希望DSP优先于ARM,则将DSP的配置值比ARM大。0代表最高优先级,7代表最低优先级。

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

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

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

liangzhu ma:

回复 Tony Tang:

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

赞(0)
未经允许不得转载:TI中文支持网 » 138总线冲突
分享到: 更多 (0)