四位加法器的原理
通过底层逻辑,我们可以通过组建半加器到一位全加器再到四位全加器,四位全加器可以由四个一位全加器构成,加法器之间可以通过串行方式实现。通过将低位加法器的进位输出cout与相邻的高位加法器的最低进位输入信号cin相连接
quartus使用前言
每一次新建一个block文件和Verilog文件,编辑完成之后要如下操作才能编译成功
如果要使用波形图仿真则block文件不能有数字(和汉字没试过,但是不推荐),否则极其容易失败
原理图实现构建四位加法器
首先,上一次我们做出了一个一位加法器,我们先通过使用过的方式,把一位加法器设置成一个单独的元件
接下来还是新建新建,file->new->Block
通过总线连接方式,对加法器进行拼接,我们需要两个input,两个output,一个gnd和四个一位全加器full_adder,如图连接成一个整体(右侧方括号写法分别是s[0],s[1],s[2],s[3],s[3…0])
连接完成后,保存编译
RTL图如下
波形图结果
还是新建一个波形图(file->new)
生成如下图像既是成功
功能仿真结果
时序仿真结果
Verilog实现四位加法器
依然是new->file
加入代码
module four_bit(a,b,cin,cout,dout);
//与保存的文件名相同,但尽量不与之前的原理图名相同
input [3:0] a,b; //a,b为4位输入
input cin;
output cout;
output [3:0] dout;
assign {cout,dout} = a+b+cin; //a+b 加法操作
//使用拼接运算符将cout、dout拼接,dout取结果中的低四位
endmodule
保存编译
RTL图如下
当然还是可以检查一下RTL图是否正确
如差不多是这样的一个没问题了
波形图结果
新建一个波形图仿真,还是file,new
引进多个引脚,这里直接显示结果
功能仿真结果
时序仿真结果
DE2-115开发板实验验证
因为刚才我们已经编译成功了,接下来我们直接配置引脚
接下来烧录
板子上的结果
这个就是最右边的四位是一个数,往左数的四位又是一个数,第九位是cin,上边亮灯就是结果,看起来很成功!
总结
首先,每一次新建一个block文件和Verilog文件,编辑完成之后要指定文件才能编译成功。另外使用波形图时文件名不能有数字,有些许麻烦,但是总体还是比较成功的。那就下次见了拜了个拜~
参考文章
QuartusII实现4位加法器文章来源:https://www.toymoban.com/news/detail-488407.html
【Verilog设计—仿真实验】四位加法器的实现文章来源地址https://www.toymoban.com/news/detail-488407.html
到了这里,关于四位全加器的设计与实践的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!