TI论坛
直播中

孙乙鑫

7年用户 239经验值
私信 关注
[问答]

请教关于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!

回帖(2)

李峰

2018-8-2 06:46:57
你好,一般工程中配置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的长度。
举报

孙乙鑫

2018-8-2 07:01:07
引用: kingnet_52004 发表于 2018-8-2 06:46
你好,一般工程中配置CMD文件来定义MEMORY和SECTION,这样就会将程序中不同的数据存放到设定的存储位置。如果你没有在工程中设置CMD文件,这时会默认片上资源优先。
L1 cache、 L2 cache 的cache line 长度是不同,但读取数据位置不同,如果cache数据是从L2 RAM中读取,适合设置DATA_ALIGN 为L1 cache line的长度;如果cac ...

非常感谢!!!
举报

更多回帖

发帖
×
20
完善资料,
赚取积分