DDR3基本概念3 - 复位初始化实战举例Lattice DDR3 IP仿真

1) 通过lattice clarify designer 配置DDR3 IP,最新版本是3.1版本
2) 配置完成后,自动生成了一套包括testbenches在内的仿真环境。
   以上1和2的详细过程,将在另一篇文章中说明。
3)启动仿真
   且记:
   Lattice DDR3的仿真环境中各个rtl使用了不同的timescale,所以在仿真时,必须保留每一个rtl中的timescale,如下例,强行覆盖各个rtl的timescale,将引起仿真失败:
    irun -timescale 1ns/100ps  +ncoverride_timescale ...

   本人实测,仿真失败的表现:
   a)DDR3 memory 的ck和ck_n上为固定电平,没有时钟;
   b)因为没有时钟,cke信号起来后,控制器无法启动mode register的自动初始值写入等操作。
4)启动仿真后,观看DDR3 波形,总结出初始化步骤为:
   step1)cke信号置起后,首先发起mode register的设置,设置顺序:MR2, MR3, MR1,最后是MR0。这点完全符合DDR3标准规格中的规定。
   step2)ZQCL 校准。
   step3) 然后为DDR3读写自检。

   step4) 完成后init_done信号被置起。

你可能感兴趣的:(芯片设计,DDR,3,从基本原理到实战,DDR3初始化)