在对DDR3控制器的用户接口仿真时,通过给的例子可以看出在init_calib_complete被拉高之前,app_en、app_wdf_end、app_addr等用户接口输入信号均是保持在高电平或者低电平,而输出端ddr3_cs_n,ddr3_ras_n等输出信号却能够发送刷新,激活等命令。
然后我又自己写了一个测试激励,把用户接口的输入信号设置为与例子同样的逻辑电平,为什么总是在仿真到1000ns的时候就断了,不往下仿真了?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
你好,我现在已经利用example design里sim文件夹中的do文件跑出了例子设计的波形,现在我想将控制器mig_7series_v1_7(use design)应用到具体的工程里面,就对APP接口写了一段测试激励,但是没有看到ddr的输出端有波形输出
我的步骤为:
1、参照例子例子设计里面初始一段时间APP接口中sys_rst信号被拉高,其他输入信号被拉低,在控制器的输出端能够输出加载模式寄存器、刷新等命令。
2、参照例子设计,在ISE里面对mig_7series_v1_7(use design)部分新建一个Verilog test fixture,在里面输入
always #2.5 sys_clk_p=~sys_clk_p;
always #2.5 sys_clk_n=~sys_clk_n;
initial begin
// Initialize Inputs
sys_clk_p = 0;
sys_clk_n = 1;
sys_rst=0;
app_wdf_mask = 0;
app_sr_req = 0;
app_ref_req = 0;
app_zq_req = 0;
ddr3_vio_sync_out = 0;
dbg_byte_sel = 0;
dbg_sel_pi_incdec = 0;
dbg_pi_f_inc = 0;
dbg_pi_f_dec = 0;
dbg_sel_po_incdec = 0;
dbg_po_f_inc = 0;
dbg_po_f_stg23_sel = 0;
dbg_po_f_dec = 0;
#200 sys_rst=1;
#300 app_en = 0;
app_wdf_wren = 0;
app_addr = 0;
app_cmd = 0;
//app_wdf_data = 0;
app_wdf_end = 0;
3、仿真时间我设置成10000ns,在ise里面点击simulate behavioral model ,在通过modelsim观察波形时没有看到输出端ddr_*这些信号有任何的输出。
我现在不知道问题出在哪里
一周热门 更多>