TI论坛
直播中

金晖

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

在L1或者L2中可以配置为cache或者SRAM,请问cache的配置与什么有关?

关于cache配置的问题,在L1或者L2中可以配置为cache或者SRAM,请问cache的配置与什么有关?有一些参考资料么?谢谢

没有搞清楚应当如何配置cache,以及配置多大的cache,求指导!!!

回帖(2)

余少虹

2018-7-25 09:35:04
CSL库里有设置cache的函数,如
CACHE_setL1PSize
CACHE_setL1DSize
CACHE_setL2Size

源码请参考csl_cacheAux.h文件。
举报

张强

2018-7-25 09:44:35
取决于你的代码/数据对访问延迟的容忍;
L1/L2 cache/SRAM从内存模型的本质上来说,仍然是RAM,只是对软件是否透明和是否可直接(有效)访问,同时遵循"距离corepac越近的速度越快/延迟越小的规律(寄存器>L1>L2>L3>EMIF)":
  在无高实事性要求的系统中,一般将L2全部配置为cache来加速外部DDR/SDRAM的访问,此使用类似与PC x86处理器,L1/L2对软件透明;
  在部分算法/控制逻辑有强实事性要求的系统中,将相应的代码/数据放置于L2的部分或全部并将其配置为RAM模式;
  在严苛的性能要求的场景,将L1部分或全部配置为SRAM放至高速数据/代码.

需要注意的是:
    L2一般默认为SRAM模式,L1一般默认为cache模式;
    L1使用SRAM模式需要先配置后使用,而且L1D和L1P仅能做对应用途的数据/代码存放.

一个比较好的实事系统的内存使用例子是:
    L1的部分配置为SDRAM模式,将栈/ISR/中断向量表/严苛要求的少量数据/代码放至其中;
    L2保持默认的SRAM模式放置高性能算法/缓存数据;
    DDR放置外部数据,使用EDMA与L2 SRAM的缓存做背景传输/同步.

配置的接口使用Shine提供的接口,如果是使用sys/bios,可以直接在platform里指定即可.

更详细的资料,可以看SOC corepac手册资料及cache手册,
举报

更多回帖

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