单片机/MCU论坛
直播中

独当一面

10年用户 821经验值
擅长:可编程逻辑
私信 关注

tc389 DLMU RAM(CPU0_NC)上的内容,被hsm核读取取到的值偶尔为0是什么原因呢?

tc389 DLMU RAM(CPU0_NC)上的内容,内容时初始化时就已经写好的,如:
uint32 test = 0xffffffff;
但是将test地址传递给hsm核,hsm使用
HSM_BRIDGE->SAHBASE = targetAddr   0xFFFF0000;
pmem = (unsigned int *)(0xF0050000 | (targetAddr   0x0000FFFF));
return pmem[0];
的形式去读,结果读到的值为0,请问各位大咖是什么原因呢?


                                                                                                                                                                                                                                                                                                                                                                                                

回帖(1)

study875

2024-1-26 17:06:55
可能的原因有以下几个:

1. 内存读取时机:确定在HSM核读取之前已经将数据写入了DLMU RAM(CPU0_NC)上,确保写入操作在HSM核读取之前完成。

2. 内存地址映射:确保HSM核使用的是正确的内存地址进行读取,检查地址转换的逻辑和计算是否正确。

3. 读取长度:确保读取长度正确,如果读取长度不正确可能导致读到的值为0。

4. 内存访问权限:检查HSM核对该内存地址的访问权限是否设置正确,如果权限不足可能无法正确读取。

5. 硬件故障:可能存在硬件故障导致无法正确读取数据,可以尝试使用其他方法或硬件进行验证。


举报

更多回帖

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