ddr3仿真初始化失败,DDR4仿真没有效果

文章讲述了在对DDR3和DDR4进行仿真时遇到的问题,如init_calib_complete信号无法拉高,原因是缺少相应的仿真模型。MIG核示例工程提供了DDR3的仿真模型,而DDR4则需要查看例程代码。DDR4仿真只能写入数据,无法读取,可能需要在线调试。
摘要由CSDN通过智能技术生成

在对DDR3,DDR4等存储器进行仿真的时候,会发现仿真不出效果!!!

DDR3出错的原因如下:

在DDR3中仿真会出现init_calib_complete初始化信号无法拉高,是因为要在对DDR3仿真时加入仿真模型文件,可以打开例程工程看,里面是加了仿真文件才可以进行正常仿真。

我们在使用MIG核进行仿真时,如果没有DDR的仿真模型就无法在仿真阶段实现对DDR的操作。Xilinx在MIG核的示例工程中为我们提供了对应的仿真模型。打开MIG核的示例工程【open IP example project】,找到对应的本地存储位置,在imports文件夹中找到对应的文件,这就是DDR的仿真模型。

特别提醒,在配置好IP之后再打开示例工程。更改芯片之后,重新配置IP获取模型。主要是由于模型在引用时会有参数配置,这个过程应该是在IP配置过程中进行,我之前拿着A7的仿真模型到K7的工程中使用,出现无法初始化成功的情况(init_calib_complete无法拉高)。MIG的初始化需要较长时间(约108us)

之后将这两个文件加入工程中,在TB中调用即可。如果采用多片DDR构成宽数据位宽,记得在例化时分配好数据位:

ddr3_model inst_ddr3_model_h (
            .rst_n   (DDR3_reset_n),
            .ck      (DDR3_ck_p),
            .ck_n    (DDR3_ck_n),
            .cke     (DDR3_cke),
            .cs_n    (DDR3_cs_n),
            .ras_n   (DDR3_ras_n),
            .cas_n   (DDR3_cas_n),
            .we_n    (DDR3_we_n),
            .dm_tdqs (DDR3_dm[3:2]),
            .ba      (DDR3_ba),
            .addr    (DDR3_addr),
            .dq      (DDR3_dq[31:16]),
            .dqs     (DDR3_dqs_p[3:2]),
            .dqs_n   (DDR3_dqs_n[3:2]),
            .tdqs_n  (),
            .odt     (DDR3_odt)
        );

    ddr3_model inst_ddr3_model_l (
            .rst_n   (DDR3_reset_n),
            .ck      (DDR3_ck_p),
            .ck_n    (DDR3_ck_n),
            .cke     (DDR3_cke),
            .cs_n    (DDR3_cs_n),
            .ras_n   (DDR3_ras_n),
            .cas_n   (DDR3_cas_n),
            .we_n    (DDR3_we_n),
            .dm_tdqs (DDR3_dm[1:0]),
            .ba      (DDR3_ba),
            .addr    (DDR3_addr),
            .dq      (DDR3_dq[15:0]),
            .dqs     (DDR3_dqs_p[1:0]),
            .dqs_n   (DDR3_dqs_n[1:0]),
            .tdqs_n  (),
            .odt     (DDR3_odt)
        );

 DDR4出错的原因如下:

也是同上面的问题,没有模型,导致无法进行仿真,但唯一不同的是这个的例程的模型,是在tb文件中写出来的,不是像DDR3一样有一个专门的文件。所以想做DDR4的仿真,只能看例程,然后直接上板在线调试(ILA或者DEBUG)。

但DDR4是可以跑出来的,只是当你读数据的时候是没有任何数据出来的,简单的来说就是DDR4的仿真:只能写数据不能读数据!

  • 5
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值