您好:
C6678的8个核能否同一时刻去访问共享存储器?是否会造成总线冲突?我现在想将共享存储器配置成L2,请问怎么配置?谢谢
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.
si cheng,您好:
我刚刚就你的问题查了下资料,我认为可以这样理解。
MSMC默认配置为L2,根据用户需要能配置成L3。由于配置为L3只是做了地址映射,所以物理上的访问时间应该还是一个数量级的,相差不大。这里的L2和L3的区别应该是指L2只能被L1D和L1P Cache, L3能被L2、L1D和L1P Cache。
一般来说,默认使用L2的配置。用户根据自己的应用来决定是否配置为L3。最常见的需要设置MSMC为L3的场景为:需要MSMC内存为non-cacheable,需要将MSMC设置为L3 RAM。
谢谢!
si cheng,您好!
C6678的MSMC负责处理系统中所有的master(包括8个核,以及SMS和SES接口)对MSMC SRAM和DDR3的访问请求。4M字节的MSMC SRAM有4个bank,这些bank是独立的slave,也就是说,如果两个master在同一个clock访问两个不同的bank,则两个访问可以同时完成。如果多个master在同一个clock访问同一个bank,则由MSMC内的仲裁逻辑按优先级处理。DDR3只有一个slave端口,如果多个master在同一个clock访问它,也由MSMC内的仲裁逻辑按优先级处理。
顺便说一下,C6678的资料链接如下:
其中的MSMC用户手册对此有详细描述。