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.

L1D的 cache和SRAM

大家好,

L1D可以被配置成cache或者SRAM,

请问这两者有什么区别?什么样的情况下配置成SRAM代码效率会比较高?  多谢了!

  • 具体哪颗芯片?

    区别就是一个是RAM,一个是CACHE, 放在RAM中的数据是不会被替换出去,不存在Cache miss 开销的问题,但是只对于放在RAM中的数据有效。其它放不下的数据的访问就慢了,这还要根据你的程序的具体情况来看哪种更有效些,如果你的程序中的数据内存要求本身就很小,可以放在L1D,那效率肯定是最高的。

  • 多谢回复!

    我们用的是TDA3x,里面有两个TMS320C66x DSP内核。暂时考虑使用其中一个dsp的情况。

    我们有两个数组要被频繁使用,大小均为512k(当然其它还有不频繁用到的数据,大小会更大一些)

    每次使用这两个,可能数据都不是连续的,例如第一次使用数据的index是100,第二次可能是900,这种情况,貌似缓存基命中率基本为0了。

    C66x L2D的大小为288k,请问这种情况,如何处理可以提高代码效率?   

    多谢了!