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.

多核芯片 MSMC 作用

1 最近在学习c6678存储层次结构域cache,想问一下msmc一般推荐怎么用(就是直接作为共享的sdram,还是配置为shared L2,或者配置为shared L3)?

2 关于4M 的MSM默认配置是共享sdram,怎么配置为shared L2 或者shared L3?

3 在c66x cache用户手册里面,好像没有提到shared L2 或者shared L3的相关内容(如缓存层次机制,数据一致性保持等等)?

 

 

  • MAMC中的共享memory区域,映射的逻辑地址为0x0c000000开始的区间时对应的是SL2,如果映射到其他逻辑地址空间则对应SL3,默认映射到0x0c000000开始的区间对应为SL2,如果要映射为SL3则可以通过MPAX进行重配映射关系;

    当映射为SL2时,访问该memory会经过L1 cache,维护cache一致性只需刷L1 cache;映射为SL3时,会经过L1/L2二级cache,由于L1与L2的cache一致性有硬件维护,所以此时需要刷L2 cache。

    关于具体MSMC RAM的映射配置及cache属性等请参阅C66X Corpac user guide section7 XMC章节。

  • 还想就下面的问题咨询一下:

    1  在c6678内LL2和L1是可以配置为cache和sdram两种类型的,若配置为sdram,则dsp核运算单元可直接访问的存储单元;若配置为cache则是可以高速缓存更低层次的存储区间的数据,以供dsp核高速访问;那mamc中的共享memory区域,映射逻辑地址为0x0c000000,即为sl2时,该片共享区域是作为cache?sdram?还是像ll2一样可部分为cache,部分为sdram?若部分为为cache,部分为sdram,怎么配置两者间各占多少空间?

    2 对配置为sl3时,同问上述问题。

    谢谢1