Other Parts Discussed in Thread: AM2431, SYSCONFIG
器件型号: AM2431
主题: SysConfig 中讨论的其他器件
我们将 AM2431 与 LPDDR4 一起使用、并在写入 DDRSS 寄存器时观察到几种意外行为。
我们还确认 DDR 配置文件是使用最新的 SysConfig 工具生成的。
我们想问:
这是预期行为还是问题?
如果符合预期、硬件在什么情况下会以这种方式运行?
以下是我们看到的现象:
1.写入 DDR16SS0_PI_0 (0x0F30A000) 似乎会改变其他 PI 寄存器
使用: CPS_REG_WRITE(LPDDR4_AddOffset(&(ctlRegBase->DENALI_PI_0), regOffset), regValue)
一些不相关的寄存器(例如 DDR16SS0_PI_53)会接收诸如 0xFF 的意外值、这些值未在头文件中定义。
2、写入值与实际寄存器值不同
使用: CPS_REG_WRITE(LPDDR4_AddOffset(&(ctlRegBase->DENALI_PI_0), regOffset), regValue
示例(例如,DDR16SS0_PI_145 (0x0F30A244)):
预计:0x00010003
实际读回:0x40010003
写入后一个位意外设置。
仅 PHY_REG 区域 0x0F30D000 至 0x0F30D0AC 出现被一个寄存器移位的情况
写入 DDR16SS0_PHY_1360 后、PHY_REG (0x0F30D000 至 0x0F30D0AC) 块出现偏移 1。
我们的问题
对于 DDRSS/PHY 初始化、这些症状是否正常?
如果是、在哪些情况下可以:
寄存器内容暂时更改、
就会受到相邻寄存器的影响、
PHY 寄存器寻址出现移位?
如果这不符合预期、我们将感谢您提供指导。
感谢您的支持。
Kanno, Itsuki