关键问题
由于 Cyclone® 10 DDR3 IP 存在问题,生成的示例设计模拟 emif_usr_clk 频率的方式不准确。
例如,如果示例设计的内存时钟频率 = 533.33MHz、用户逻辑时钟速率 = Quarter、PLL_refclk = 133.33MHz,则预期的 emif_usr_clk 应模拟频率为 133.33MHz。
但是,您可能会在仿真波形查看器中观察到 7.52ns = 133MHz 的 emif_usr_clk 。
解决方法是手动编辑仿真设计文件(例如目录路径可能如下所示:/emif_c10_0_example_design/sim/ip/ed_sim/ed_sim_emif_c10_0/altera_emif_c10_180/sim/ed_sim_emif_c10_0_altera_emif_c10_*_*.v)。
对于下面的示例,搜索参数并将其编辑为正确的周期值以匹配所需的频率。
1445: .PLL_VCO_FREQ_MHZ_INT (533),
1446: .PLL_VCO_TO_MEM_CLK_FREQ_RATIO (1),
1447: .PLL_PHY_CLK_VCO_PHASE (2),
1448: .PLL_VCO_FREQ_PS_STR (“1876 ps”),
1449: .PLL_REF_CLK_FREQ_PS_STR (“7504 ps”),
1450: .PLL_REF_CLK_FREQ_PS (7504),
1451: .PLL_SIM_VCO_FREQ_PS (1880),
1452: .PLL_SIM_PHYCLK_0_FREQ_PS (3760),
1453: .PLL_SIM_PHYCLK_1_FREQ_PS (7520), // 示例:将此值从 7520 更改为 7500
1454: .PLL_SIM_PHYCLK_FB_FREQ_PS (7520), // 示例:将此值从 7520 更改为 7500
1455: .PLL_SIM_PHY_CLK_VCO_PHASE_PS (470),
1456: .PLL_SIM_CAL_SLAVE_CLK_FREQ_PS (7520), // 示例:将此值从 7520 更改为 7500
1457: .PLL_SIM_CAL_MASTER_CLK_FREQ_PS (7520), // 示例:将此值从 7520 更改为 7500
保存编辑好的参数后,重新运行模拟以反映正确的频率。