查看: 844|回复: 0
打印 上一主题 下一主题

基于modelsim的正弦信号发生器的Rom仿真

[复制链接]
跳转到指定楼层
沙发
发表于 2016-4-9 18:04:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
        大学的一个课程设计,再次让我接触到了modelsim,本来就是新手。由于各种原因又中断了FPGA的学习,再次拿起时有一种极好的亲切感,一切有得重来,首先start test bench,
        本人使用的是Verilog语言,生成.vt文件,设置时基,编写激励代码。在Tool-options里选择使用的第三方工具modelsim-Altera,。再到setting里加载test bench。
  经过n次尝试rom无输出数据,网上查的需进行一下处理:
  ,因为MODELSIM 只认十六进制的文件,所以必须把MIF 文件转成HEX文件才行。具体怎么做 ,有个朋友总结的很好。我粘贴在这里:

  A.下载convert_hex2ver.dll文件,convert_hex2ver.dll就是把hex文件转换成ModelSim 能认出
  
  来的ver文件的动态链接库文件。新版本的QuartusII中已经不带此文件了。需要在网上找一份。
  
  (老版本的软件里带了此文件(路径:quartusXX/eda/mentor/modelsim/),应当可以用。)
  
  B.将convert_hex2ver.dll文件放在modelsim安装路径的win32目录下;
  
  C. 在ModelSim安装的目录下找到 modelsim.ini文件,将其只读属性去掉,在“; List of dynamically loaded objects for Verilog PLI applications,”后填入一行“;Veriuser = 目录/convert_hex2ver.dll”

  D.修改Rom.v文件中”altsyncram_component.init_file = ” 后的XX.hex的路径(必须为hex文件的绝对路径)

  E.最后就是进行正常的modelsim仿真。(比如库的创建和文件添加的操作,对于IP核别忘了添加220model.v和altera_mf.v这两个文件,在quartus安装目录eda/sim_lib下)
  ModelSim不支持mif文件,这就意味着如果你要这样做的话,只有先把mif另存为hex,再用上面的办法。
  mif文件转hex的方法:
  用quartuus打开现有的mif文件,然后新建一个hex文件,存储的宽度和深度必须匹配,将mif文件和hex文件的地址和数据的格式设置为一致,然后在mif编辑界面直接选中全部数据,进行复制,最后在hex编辑界面选中全都数据,粘贴后保存即可。
  最终得到仿真结果图
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入因仑

本版积分规则

快速回复 返回顶部 返回列表