首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

modulsim中编译出现这个错误怎么解决?

看看这个帖子吧,上面有解释

可能问题
1。有把。。。\coregen\mem_interface_top_withtb\rtl里所有文件加到新工程里吗?
2。有把。。。\coregen\mem_interface_top_withtb\sim里所有文件加到新工程里吗?
3。有把'board_file' 改成顶层模块的名字吗?
4。由认真看readme文本里的最后一段吗?
Notes : To run simulations for different data widths and configurations, users should modify the test bench files
with right memory models and design files. User should modify the sys_clk_in and sys_clk_in_L frequency in test bench according to the frequency selected for the design.
这涉及到你用mig生成的核是针对什么型号的DDR的,数据和地址位宽,工作频率等相关参数。
然后根据这些到ddr_parameters.v文件里看看你用到的那段的相关参数(被注释掉地就不管了)和你ddrdatasheet提供的参数要求是不是相符
,比如下面这段:
    parameter tCK              =     5.0; // tCK    ns    Nominal Clock Cycle Time
    parameter tDQSQ            =     0.4; // tDQSS  ns    DQS-DQ skew, DQS to last DQ valid, per group, per access
    parameter tMRD             =    10.0; // tMRD   ns    Load Mode Register command cycle time
    parameter tRAP             =    15.0; // tRAP   ns    ACTIVE to READ with Auto precharge command
    parameter tRAS             =    40.0; // tRAS   ns    Active to Precharge command time
    parameter tRC              =    55.0; // tRC    ns    Active to Active/Auto Refresh command time
    parameter tRFC             =    70.0; // tRFC   ns    Refresh to Refresh Command interval time
    parameter tRCD             =    15.0; // tRCD   ns    Active to Read/Write command time
    parameter tRP              =    15.0; // tRP    ns    Precharge command period
    parameter tRRD             =    10.0; // tRRD   ns    Active bank a to Active bank b command time
    parameter tWR              =    15.0; // tWR    ns    Write recovery time
还有这段:
    parameter ADDR_BITS        =      13; // Set this parameter to control how many Address bits are used
    parameter DQ_BITS          =      16; // Set this parameter to control how many Data bits are used
    parameter DQS_BITS         =       2; // Set this parameter to control how many DQS bits are used
    parameter DM_BITS          =       2; // Set this parameter to control how many DM bits are used
    parameter COL_BITS         =       9; // Set this parameter to control how many Column bits are used

以上这些参数是我的ddr的参数,只是举个例子。
应该可以跑仿真了吧
还不行的话,就再把ddr.v文件打开,到最后一段,还有几个参数,对照你的ddr的datasheet修改一下,再不行就见鬼了。
比如我的:
        specparam tDSS             =     1.0; // tDSS   ns    DQS falling edge to CLK rising (setup time) = 0.2*tCK
        specparam tDSH             =     1.0; // tDSH   ns    DQS falling edge from CLK rising (hold time) = 0.2*tCK
        specparam tIH              =   0.600; // tIH    ns    Input Hold Time
        specparam tIS              =   0.600; // tIS    ns    Input Setup Time
        specparam tDQSH            =    1.75; // tDQSH  ns    DQS input High Pulse Width = 0.35*tCK
        specparam tDQSL            =    1.75; // tDQSL  ns    DQS input Low Pulse Width = 0.35*tCK
以上这些只能解决功能仿真问题,至于后仿真我这边还有问题,知道告诉我一声:)

另:用于跑波形的test_top里面的clk,reset信号的赋值也要根据你自己的需要手动设置一下。

http://www.edacn.net/bbs/viewthread.php?tid=82867

[此贴子已经被admin于2007-8-14 17:19:02编辑过]

i love this game
返回列表