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.

c6678的DDR3cache和多核同时写入的问题



各位工程师好:

      问题一:      

      我想每个核分别直接访问使用DDR3中的一块数据,单核运行时所花时间较小,但是多核运行时只有一个核和单核运行时的时间消耗相同,其他核花费时间会增加几倍。我觉得这可能是只有那个核对应的DDR区域被cache了,请问我这么想对吗,有没有多个核同时可以cacheDDR中不同的几个块使得每个核的运行速度都的要提升?

       问题二:

      因为上个问题没有解决,我想使用EDMA将DDR中的数据写到共享内存中,在运算完成后再用EDMA写回到DDR中,其中第一步即将数据写到共享内存中成功了。但是用EDMA将共享内存中的数据写回DDR的时候,单个核成功了,多核运行时一个核搬移之后下一个核再搬移也成功了,但就是8个核同时向DDR中写数据时失败了,请问这可能是什么原因造成的?

  • 1. 每个core都有各自的memory属性配置寄存器,可以单独配置其访问外部memory的cache属性,先check每个core的MAR寄存器配置,确认属性配置一致。

    2. 首先确保每个core的数据搬移用的EDMA channel及PaRAM set资源不要冲突,然后check相应的EDMA 配置。

  • 你好,请问你有没有DDR3的配置程序,最近跟导师做项目,催得紧,急求DDR3的配置程序(包括初始化和读写数据),如果有的话可否给小弟发一份,1099957024@qq.com  ,非常感谢你!

  • 你好。我记得http://www.deyisupport.com/question_answer/dsp_arm/c6000_multicore/f/53/t/47664.aspx这个地址中的multicore navigatior例程中有专门的ddr代码,不过我用的是开发板没学过ddr配置,上面那个是不是你需要的那种我不太清楚。