ffgg

Quartus联合modelsim的ip核仿真——以FIFO为例——(报错问题解决)

tips:本文章不涉及fifo的ip核参数含义讲解,只是通一通开发流程,总结一下哪里容易报错,新手向,旨在能够正确出波形,别卡在报错中折磨。

在新建工程前,新建文件夹管理文件在这里插入图片描述
打开quartus,新建工程,路径设置到quartus_prj目录下,工程名和顶层名均为fifo
在这里插入图片描述
一路next到选型号,按照板卡型号进行选择。Family->package->pin count---->core speed grade->available devise->next在这里插入图片描述
simulation选择modelsim verilog,next
在这里插入图片描述
层级管理器有这个就是建好了
在这里插入图片描述
调出ip核内容,如图所示
在这里插入图片描述
搜索fifo,双击进入配置
在这里插入图片描述
这里要设置一个路径,这个路径最好按照自己的习惯固定下来,在quartus_prj文件夹下新建文件夹ip_core,在ip_core文件夹下再新建一个文件夹,这个文件夹的名字与ip核的文件名保持一致,此处用scfifo_256x8(这个不是乘号,是癌克斯).,语言选择verilog。设置好后如下图所示,ok在这里插入图片描述
弹出这个窗口就是进入ip核配置了
在这里插入图片描述
具体参数怎么配置请参考野火的教程,我直接全部默认设置直到这个界面,把默认的那个bb文件的对勾给取消了,就勾上倒数第二个,finish
在这里插入图片描述
在这里插入图片描述
第一次操作会有弹窗,问你要不要把ip核添加进工程,点是就行,还可以勾选以后自动添加,自行决定即可。我是自动添加,所以点完finish之后,把层级管理器切换到file,能看到这个.qip就是ip核已经添加进工程了
在这里插入图片描述
然后开始实例化调用这个IP核,在stl文件夹下新建个fifo.v并编写它在这里插入图片描述
在这里插入图片描述
此处一个注意:第一张图框住的模块名称要与scfifo_256x8_inst.v文件(第二张图)中的模块名(第三张图)一致
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
fifo.v写完后保存,添加进工程,在层级管理器为file时,双击file就可以添加文件在这里插入图片描述
添加成功时层级管理器显示这样,有一个fifo.v
在这里插入图片描述
全编译,发现没错误,可以写仿真Test bench文件在这里插入图片描述
在sim文件夹下,新建一个tb_fifo.v并编写它,顶层模块名也是tb_fifo,和testbench文件名保持一致。
在这里插入图片描述
保存,添加进工程
在这里插入图片描述
添加成功后层级管理器的file长这样:
在这里插入图片描述

然后进行仿真设置,进assignment的settings,找到simulation
在这里插入图片描述
在这里添加testbench
在这里插入图片描述
这里因为我们之前保持了testbench文件名和文件里的顶层模块名一致,这里直接输入tb_fifo
在这里插入图片描述
把tb_fifo和fifo两个.v文件都添加进来,ok,ok,apply,ok
在这里插入图片描述
tool进去仿真
在这里插入图片描述
这里没出错,之前因为不懂,两个.v文件也都是cv野火的,所以modelsim这里总是报load failed,错误的流程有无数,反正现在这个流程是正确的
在这里插入图片描述
modelsim里常用的几个钮已经框选出来了(别丢了左下角的那个)
在这里插入图片描述
完事
在这里插入图片描述

posted on 2024-09-12 17:56  壹肆叁贰海里  阅读(14)  评论(0编辑  收藏  举报  来源

导航