大家好,目前我在OMAP-L138 experiment kit上调试,将DSP核与ARM核的代码都加载到外部同一片mDDR中的运行(地址不重叠),程序运行情况正常。但我的问题是:
1. DSP核与ARM核是共享数据总线与地址总线的,那么两个核的指令是如何被安排执行的呢?
2. 如果两个和的优先级都是默认的2,那么是不是分时复用总线,ARM执行一条,DSP执行一条呢?
3. 如果是分时复用,那么效率是不是比两个核在各自独立的地址空间里运行效率要低一半呢?
谢谢!
Tony Tang:
1. 这是由芯片内部interconnection以及外设如DDR端口仲裁的。
2. 相同优先级是round-robin,轮流使用,不一定是一次执行一条,这要看发起访问方的特性,CPU的访问与EDMA的访问还不一样。
3. 效率会受一定的影响,但很小,因为ARM,DSP核内都有Cache,大部分时间都是Cache内取指,取数,不是每次都从外部取,所以冲突的机会即同时访问的机会不多,对于取CPU访问来说,最长的等待时间也就是一个Cache line size的访问。
Yuan Fang:
回复 Tony Tang:
请教Tony Tang :
我也一直对OMAPL138中ARM核与DSP核同时访问DDR有疑惑。哪个文献讲到了interconnection呢?谢谢。
附:我的邮箱officezone@126.com.。
Tony Tang:
回复 Yuan Fang:
请看TRM手册的第4章。
http://www.ti.com/general/docs/litabsmultiplefilelist.tsp?literatureNumber=spruh77a