设为首页 加入收藏

TOP

第6讲 PLL和ROM的IP核使用(二)
2017-10-10 12:24:00 】 浏览:9278
Tags:PLL ROM 使用
rom_8x256.v这个文件中有altsyncram_component.init_file = "rom_8x256.mif"这句话,modelsim编译时会自动地去sim的根目录下找rom_8x256.mif文件,可是该文件只在PLL-ROM-RAM\quartus_prj\ipcore_dir有,故需要将这个mif文件拷贝到sim的根目录下去(否则,modelsim无法用mif文件初始化ROM)。

image

image

图30 仿真结果图

由图30可知,odata有了数据产生,并且较地址rom_addr有两个时钟周期的延迟,是由于在ROM的输出端加了寄存器造成的,与当初的设想是一致的。

【用MATLAB产生mif文件】

① 在当前工程目录下新建matlab_sim文件夹,然后将miffile.m文件拷贝到该文件夹中(miffile.m文件的目的是实现miffile(filename,var,width,depth)函数),方便MATLAB程序调用;

② 打开MATLAB,并切换MATLAB的工作目录到matlab_sim文件夹下;

③ 新建一个MATLAB脚本,命名为gen_mif,并保存到matlab_sim文件夹下;

④ 编写MATLAB的程序代码:

clip_image085

⑤ 运行gen_mif.m文件后,发现在matlab_sim文件夹下生成了一个rom_8x256.mif文件,其内容如下(与用quartus生成的mif文件基本一致):

image

⑥ 将生成的rom_8x256.mif文件拷贝到sim文件夹和ex_6\quartus_prj\ipcore_dir目录下,替换掉原来的rom_8x256.mif文件,然后重新运行仿真,仿真结果如图31和图32所示:

image

图31 用MATLAB产生mif文件初始化ROM的仿真图1

image

图32 用MATLAB产生mif文件初始化ROM的仿真图2

由图31和图32可知,ROM的数据范围为0~255,与mif文件中的数据一致。

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇第7讲 SPI和RAM IP核 下一篇第8讲 异步并行接口时序设计

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目