|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
做DDR4 silicon 测试时,在PHY training 之后总是会报CA parity ERROR,通过示波器观测CK测试点,时钟正常,通过降频等操作测试结果一样。怀疑硬件有问题,通过检查alert_n pad ,发现电源信号接错,应该接到VDDQ,导致alert误报。因为DDR4 支持ODT ,决定对该pad 内部上拉,去掉外部上拉的电阻。 对pad 进行内部上拉的前提是该pad 只做DDR 控制器的input,利用ODT 功能设置pad 的内部上拉电阻。
设置寄存器phy_pad_err_drive2[20:17] =4'b0;[24:21] =4'hc,上拉电阻值为40ohm,注意下拉电阻功能要关闭。
设置寄存器phy_pad_err_term[17] =1,enable driver terminaltion mode
设置完毕,phy training 正常结束,parity error 寄存器没有报错
拓展:
1. CA Parity:
CA 校验就是DRAM 在执行命令之前会对接收到的command 和地址进行even 校验,相应的校验信号时PAR,具体的流程如下图所示:
DRAM Controller进行数据传输前会产生even 校验位,同时送给DRAM, DRAM 接收到cmd/addr 会产生一个even 校验位和接收的校验位进行比较,
如果相同,则认为cmd/addr 传输正确,如果不同,则拉低alert_n 进行parity 预警。
2.ODT 功能
数据接收端上拉终结电阻可以减少反射,提高信号完整性。 为了应对设计的复杂性,减少PCB 设计成本,DDR2 开始把终结匹配电阻集成到芯片内部,DDR4 支持dynamic ODT ,即可以实现RTT_wr,RTT_nom,RTT_park 三种终结电阻以适应不同的应用场景,大部分和RANK 数量有关。
|
|