On-die Termination (ODT) 是为nv-ddr2接口中high-seed下提供的终端匹配电阻,可选择使能。
一般原则是,发送cmd、addr时关闭,发送或接收data时打开。
在flash内部状态机中,先判断ALE、CLE、DQS、RE_n是否有电平变化。
在ALE、CLE或CE-n由0->1上升沿跳变,说明是cmd、addr或芯片操作结束,则关闭ODT。
如果非amd、addr,这时有DQS 1->0下降沿,说明是input data,对应DQS、DQ的ODT会打开;
如果是RE_N 1->0下降沿,说明是output data,flash的DQS、DQ是始端不是中终端,只打开RE的ODT;
所以,在set feature使能ODT前提下,只有当DQS、RE有下降沿变化,才会打开ODT,故要求DQS和RE的默认电平是high。
因为RE#是低有效信号,默认high没问题。
DQS信号在发送完数据之后,有个post-amble的保持低电平要求,建议在idle时,DQS==high。
明显DQS/RE#信号要在ALE/CLE变低之后再操作,所以两者需要错开处理。