1.3 CKE使能和ck_t/ck_c打开 1.4 MRS寄存器模式配置 二、Calibration 2.1 颗粒端ZQ Calibraton 2...
由于Test bench里面什么都没写,工程里面也没有引入DDR3的Simulation model,所以我们是无法仿真的,只能在真正的板子上调试程序。 【test.v】 module test(); reg clock = 0; always begin #10 clock = !clock; end main main(clock); endmodule 运行仿真后,app_rdy信号和init_calib_complete信号一直为低电平。
而init_calib_complete信号为高电平表示初始化完成,读写数据不一致时,会将tg_compdata_error变为高电平,我们可以使用这两个信号分别驱动一个LED,通过观察LED的状态变化,获取MIG IP初始化DDR3及读写数据的结果。开发板上LED相关原理图如下所示,高电平点亮LED。 图22 LED原理图 综合工程后,需要对时钟信号、复位信号...
// 输出信号 init_calib_complete.ddr3_cs_n(ddr3_cs_n),// ddr3_cs_n为单输出信号.ddr3_dm(ddr3_dm),// ddr3_dm为双输出信号,位宽为.ddr3_odt(ddr3_odt),// ddr3_odt为单输出信号// 应用接口信号.app_addr(app_addr),// app_addr为输入信号,位宽为.app_cmd(app_cmd),// app_cmd为...
你好,我最近也在弄ddr3,初始化的init_calib_complete信号仿真能拉高,下到板子上就一直为低,请问可能是啥问题。或者给个联系方式指导下 TOP yangzai1236 金领一族 UID 1080411 帖子 206 精华 0 积分 674 资产 674 信元 发贴收入 1035 信元 推广收入 0 信元 附件收入 0 信元 下载支出 421 信元 ...
init_calib_complete拉高表明DDR已经校准成功初始化完成了! 拿去搬砖吧! 4. ui_clk(看好了,逻辑使用的时钟搁这输出呢) 在第二篇《DDR的时钟分析》里我们也讲过,ui_clk就是逻辑使用的时钟;由配置界面“Clock Period”与“4:1 / 2:1模式”确定的;如:核心频率为400M;选择了4:1模式,那么ui_clk = 400 / ...
然后我们将这几个文件添加进工程里面。4.然后将sim\_tb\_top.v中的example改为我们的顶层,这样就可以使用了,我们只需要自己再生成一个100M的输入时钟给锁相环输入就可以了。在MIG初始化信号init\_calib\_complete拉高之后开始我们的读写测试。 这样,我们的仿真激励就修改成功了,可以通过仿真波形图对结果进行验证...
if(init_calib_complete == 1'b1) next_state else next_state S1_WAIT : if(eof == 1'b1) next_state else next_state S2_WRITE : if(ififo_empty == 1'b1) next_state else next_state S3_WR_DONE : next_state S4_READ : if(cnt_read == cnt_length) ...
Run Behavioral Simulation运行仿真。 等待几分钟,仿真界面弹出如图所示。点击“Run All”按钮,可以执行仿真。 仿真波形如图 10.37 所示,可以对照 DDR3 芯片的读写时序确认仿真是否符合要求。 init_calib_complete表示初始化校准完成,信号拉高后校准完成,校准完成之前对DDR的读写可能失败。