为什么在ModelSim仿真器中仿真期间使用函数时,我的基于altsyncram的内存无法正确初始化?-Altera-Intel社区-FPGA CPLD-ChipDebug

为什么在ModelSim仿真器中仿真期间使用函数时,我的基于altsyncram的内存无法正确初始化?

如果顶级测试平台包含任何其他信号的初始化,则readmemh函数可能无法在仿真期间正确初始化基于altsyncram的内存。

由于ModelSim仿真器调度信号初始化的方式,会出现问题。

当没有额外的信号初始化时,ModelSim仿真器的时间表如下:

1)内部存储器复位序列。
2)从testbench执行

当测试平台中存在任何其他初始化时,ModelSim仿真器将按如下方式安排:

1)从testbench执行
2)内部存储器复位序列。

该序列导致在应用函数之后存储器内容被重置,导致内容被全部读出。

解决/修复方法

要确保在存储器复位阶段之后应用该功能,您应该延迟如下所示:

初始#1(<文件名>,<内存路径>);

请登录后发表评论

    没有回复内容