请教一下一个问题:利用核0对Multicore shared memory的某块存储进行赋值,而那块存储在核1被用到。请问一下为什么核0对其赋值后,核1去读取这块存储的值却不是核0对它赋的值?我的理解是不管哪个核去访问那段存储,只要那段存储被赋值,那么那段储存就应该是被赋的那个值。
Gangping Li:
经过调试发现在核0对那段储存赋值后,reset一下系统后核1才能正确读取到那个值,请问这是为什么呢?在下谢谢咯
Feng Jin:
回复 Gangping Li:
应该需要进行cache一致性维护,Core0对MSMC复制后要cache write back,Core1读取这块数据时要先cache invalidate
Gangping Li:
回复 Feng Jin:
首先谢谢你的解答,请问一下你说的这部分内容在哪个文件里呢?谢谢哦
Feng Jin:
回复 Gangping Li:
请参考http://www.ti.com/lit/ug/sprugy8/sprugy8.pdf