单片机/MCU论坛
直播中

h1654155275.5661

7年用户 969经验值
私信 关注

TC33X将dCache映射到RAM会导致存储总线错误是为什么?如何解决?

我尝试通过以下(简化的)顺序使用 TC33X 将数据缓存映射到 RAM 区域:
CPU_DCON0 = 2
MTU_CLC = 0 MTU_MEMMAP |= 1

在软件闪烁且调试器保持连接状态后,这可以正常工作。 如果没有调试器,软件会挂起,即使在首次重置后使用调试器,在 MTU_MEMMAP 写入访问权限之后,软件也会获得 4 级 SBE。
知道这里可能出了什么问题吗?

回帖(1)

李艳

2024-1-25 17:12:08
这个问题可能是由于存储总线错误(Storage Bus Error,SBE)而导致的。存储总线错误是一种硬件错误,通常发生在访问未映射或非法地址时。

在将dCache映射到RAM时,需要确保RAM区域的地址范围正确。您可以检查MTU_MEMMAP寄存器的值,确保其设置为正确的RAM地址范围。

另外,您还可以尝试以下几个步骤来解决此问题:

1. 确保dCache正确地映射到RAM之前,不要执行任何对RAM的访问操作。
2. 确保所有的硬件连接正确无误,包括存储总线连接和外设连接。
3. 检查是否有任何其他的硬件模块与RAM发生冲突,例如DMA控制器等。
4. 检查dCache与RAM之间的数据传输速率是否匹配。如果超出了RAM的指定数据传输速率,可能会导致存储总线错误。


举报

更多回帖

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