描述
当MicroBlaze设置“C_DCACHE_ALWAYS_USED”或“C_ICACHE_ALWAYS_USED”设置为1时,是否需要在软件中启用缓存?
解
即使CACHE_ALWAYS_USED设置为1,也必须在软件中启用缓存。
“C_DCACHE_ALWAYS_USED”或“C_ICACHE_ALWAYS_USED”= 1表示始终通过CacheLink访问高速缓存的内存范围,但可能无法高速缓存数据。否则,当软件中未启用高速缓存(即MSR [DCE] = 0或MSR [ICE] = 0)或可高速缓存范围之外的存储器位置时,将使用AXI或PLB。
microblaze_enable_icache()和microblaze_enable_dcache()设置MSR [DCE] = 1且MSR [ICE] = 1.这些功能启用缓存功能。
C_DCACHE_ALWAYS_USED或C_ICACHE_ALWAYS_USED设置PVR4 [IAU]或PVR5 [DAU]位。这些设置选择数据路径。
没有回复内容