在modelsim中仿真rom初始化文件问题解决之法(altera篇)近来要对quartus7
2的megafuntion生成的ROM进行初期的功能仿真,看时序是不是满足我的设计要求
在网上找了很多办法都不能成功初始化ROM,仿真处理的都看不到 ROM的数据有输出结果
经过本人大半天的摸索,加上去 Altera网站下了几个参考设计,终于搞定了 ROM初始化的问题
:-)现在就把我操作的工程详细介绍一下
先介绍一下我的软件环境:AlteraQuartus7
2Modelsimseplus6
1d例子程序的产生1
先新建一个工程 rom_test,器件我选的是EP1C3T144C8,内部带 M4K
先点击 file/new在选中里面的otherfiles文件类型选里面的memoryinitializationfiles,设置好你的ROM初始化文件的长度,数据宽度
我选的32个字节的数据 8bit数据宽度
就给了几个数据测试一下就好了
文件名我存的是:inirom
然后在quartus的tool里选 megawizardplug_inmanager,产生一个 ROM
具体过程看下图:这样产出的零件名字我的是:initrom,文件类型 veriloghdl
我就会 veriloghdl,感觉上手很快
看一下生成的元件的操作时序如下:4
根据上面的时序图写测试代码,代码如下:很简单的
文件名字:test_initrom
v//testinitrom`timescale10ns/10nsmoduletest_initrom;reg[4:0]address;regclock;wire[7:0]q;initromu0(
address(address),
clock(clock),
q(q));always#1clock=~clock;initialbeginclock=0;