数字逻辑作业非技术教程

前言

1.写的人真的是个菜鸡,欢迎在评论区讨论相关细节
2.这个时候写篇博客也就是给没写的同学救救急用
3.这篇博客不包含作业的代码,仅仅涉及Quartus的安装破解和编写testbench的流程步骤

Quartus和Modelsim的安装

这两个软件的安装确实比较头疼,两篇安装博客如下

Modelsim 的安装https://blog.csdn.net/he__yuan/article/details/80560064
Quartus13.0 的安装 https://blog.csdn.net/qq_18649781/article/details/81025650
(多谢胡铂)

以下教程都以上面链接的版本为准

配置环境

Quartus是一个编写电路的软件
Modelsim是一个仿真模拟的软件

所以是在Quartus里面写代码(电路代码和testbench代码),然后丢到modelsim里面仿真

安装好这两个软件之后,进去以后应该是这样
初始界面
(出现device问题的我就不管了,上面安装quartus的教程里面已经说的比较详细了)

点一下创建项目

创建项目
第一个选择你的项目的地址
第二个和第三个默认是填一样的,这里建议就直接填你要设计的电路的实体名称,比如第5题,你干脆就写and_gate_4(好像还不能数字开头)
然后点next

在这里插入图片描述
然后他让你Add files, 别理他
next

在这里插入图片描述
这个地方好像是让你选板子(我也不知道),反正开始这个默认的是不行的,换成Cyclone 2

在这里插入图片描述
next
在这里插入图片描述
EDA 工具设定要改一下,把仿真的设置换成我们安装的modelsim并且把语言换成VHDL
next之后是一张总结(Summary),然后finish。

写作业

设置好了之后就进入项目页面了
在这里插入图片描述
作业里面涉及到写VHDL和画原理图

VHDL

点击new
在这里插入图片描述
在Design Files里面最后一个就是新建VHDL文件
在这里插入图片描述

原理图

一样先new
在这里插入图片描述
Design Files下面第二个就是Block Diagram/ Schematic File
新建完之后是这样的
在这里插入图片描述
原理图讲道理比VHDL好玩一点,就是搭积木,双击原理图的任意位置
在这里插入图片描述
然后定位到这个目录,写作业要用的原件基本都在这个目录里面
在这里插入图片描述
记住要用的原件之后也可以直接在下面的name里面输入
添加完原件之后就是连线了,真没啥可说的,这块我就不截图了

编译

无论你写的是啥(VHDL还是原理图),写完了编译按这个在这里插入图片描述
报错的话,一般是上课没好好听讲,代码问题,或者前面没好好看,起的实体名称跟项目名称不一样

编译完成之后应该是这样
在这里插入图片描述
放错图了。。。。应该是这样在这里插入图片描述

到这其实作业就算写完了,后面是仿真检验写的作业是不是对的

仿真

testbench配置

首先看看assignments下的settings的Simulation,设定是不是跟下图一样在这里插入图片描述
不是就改改
然后下一步要告诉Quartus我们的Modelsim安装在哪
点开Tools下的option(比较靠下)
在这里插入图片描述
把modelsim的地址填上(Altera那个是我开始乱填的,不用管),但是如果你用的是altera就把altera的地址填上

编写testbench

我是肯定不会教testbench怎么写的(我也不会)
但是Quartus比较贴心,可以一键生成模板
点击Processing下的start,在右边延伸出来的选项卡中选择start Testbench template writer
生成完了之后会弹出一个成功的提示框

生成的testbench模板不会自动打开(沙雕设计),要手动打开
点击openfile(在new旁边),然后再simulation下的modelsim目录底下找到这个文件(后缀vht,要是vt则表示前面Assignments没设定好)
在这里插入图片描述
打开之后是这样的
在这里插入图片描述
在注释–code that executes only once的下面一行写testbench就行

仿真

写完了testbench还不能直接就RTL Simulation
还得配置
首先先把写好的testbench包含进文件:project–>add current file to project
在这里插入图片描述
包含完了之后
让Quartus编译testbench
打开assignments下的settings
在这里插入图片描述
把NativeLink settings的编译testbench选中,然后把你的testbench放进去
点一下右边的Test Benches…
在这里插入图片描述

点一下new在这里插入图片描述
然后点一下File name 右边的
在这里插入图片描述
把你的testbench打开,然后add
在这里插入图片描述
然后给你的testbench再起个名字。。。。(我也不知道为啥要有那么多名字)
然后一路OK回去,最后apply
然后点一下那个编译按钮

最后一步仿真

点一下RTL simulation
在这里插入图片描述
介个

然后modelsim会跑一会,等到他左下角的状态栏不再闪了之后
选中工作目录中你写的testbench
在这里插入图片描述
然后鼠标右键,模拟它(simulate)在这里插入图片描述
然后选中右下窗口的所有信号(按住shift鼠标左键)然后鼠标右键选择add to->wave ->selected signals
在这里插入图片描述
在这里插入图片描述
上图的蓝圈表示模拟的时间长度,红圈表示开始模拟
选好时长点击run,应该就会产生你testbench里面写好的波形,通过观察输出判断你的电路写对了没
在这里插入图片描述
Tips:按I可以放大,O可以缩小

原理图的仿真

原理图的仿真稍微麻烦一点,因为modelsim等第三方仿真软件不支持原理图这种输入形式,所以要把原理图文件转换成vhdl才能仿真

打开原理图(手动打码)在这里插入图片描述

选择左边file->creat/update ->creat HDL file for current design在这里插入图片描述
ok,创建VHDL文件

生成成功之后,要把原理图文件从当前项目中去除,把由原理图文件生成的VHDL文件包含进来
点击project->add/remove files in project
在这里插入图片描述
把bdf文件移除,然后把生成的vhdl文件包含进来
在这里插入图片描述
后面就跟对vhdl文件进行仿真的操作一样了,可以参考前面的流程。

祝大家都能按时交作业吧

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值