我将L2全部用作SRAM,将L1DCACHE配置为32k,问题如下:
如果一次需要从共享内存中读取16384个float型的数据(也就是65K字节)进行处理,我在读之前,理应将这一段的CACHE invalid,但是实际上总的CACHE大小只有32k,那么:
1.CACHE是如何工作的呢?需要CACHE的数据大于总的CACHE空间了,硬件上应该会有类似FIFO的机制进行调控,请问具体是如何调控的呢?
2.我在使用CACHE_invL1D这个函数时应该如何设置长度呢?是需要用多少(比如65K)就设置多少,还是有其他方法?