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.

关于DSP内存映射



hi,everyone:

在DSP移植算法时候,有几个问题不是很明白

1.

DSP代码一般都会使用#pragma CODE_SECTION(my_fun,"SDRAM")将my_fun定位到

SDRAM中,但是,如果不显式使用pragma code_section,DSP该如何定位?是随机定位

么?我测试结果是,如果不显式使用pragma code_section,DSP首先会考虑片上资源,

如果片上允许就放在片上,其次再考虑片外的。

2.

DATA_ALIGN  指令,一般几字节对齐比较好呢?  我的理解这个对齐,应该是cacheline

长度才对啊,保证cache 命中率,但是L1 cache L2 cache 的cache line 长度都不同,

到底该向哪一个对齐?

Best Regards!

  • 你好,一般工程中配置CMD文件来定义MEMORY和SECTION,这样就会将程序中不同的数据存放到设定的存储位置。如果你没有在工程中设置CMD文件,这时会默认片上资源优先。

    L1 cache、 L2 cache 的cache line 长度是不同,但读取数据位置不同,如果cache数据是从L2 RAM中读取,适合设置DATA_ALIGN 为L1 cache line的长度;如果cache数据是从SDRAM等外存来读,适合设置DATA_ALIGN 为L2 cache line的长度。

  • 非常感谢!!!