FPGA——1位全加器和4位全加器的实现
目录
- 一、认识全加器
- 1、半加器
- 2、1位全加器
- 3、4位全加器
- 二、使用原理图实现1位加法器
- 1、原理图实现半加器
- 2、半加器元件实现全加器
- 三、使用原理图实现4位加法器
- 四、Verilog HDL实现1位加法器和四位加法器
- 五、烧录及实验效果
- 六、总结
- 七、参考链接
一、认识全加器
1、半加器
半加器是实现两个一位二进制数加法运算的器件。它具有两个输入端(被加数A和加数B)及输出端Y。
是数据输入被加数A、加数B,数据输出S和数(半加和)、进位C。
A和B是相加的两个数,S是半加和数,C是进位数。
所谓半加就是不考虑进位的加法,它的真值表如下 (见表):
逻辑表达式:
2、1位全加器
全加器英语名称为full-adder,是用门电路实现两个二进制数相加并求出和的组合线路,称为一位全加器。一位全加器可以处理低位进位,并输出本位加法进位。多个一位全加器进行级联可以得到多位全加器。常用二进制四位全加器74LS283。
一位全加器的真值表如下图,其中Ai为被加数,Bi为加数,相邻低位来的进位数为Ci-1,输出本位和为Si。向相邻高位进位数为Ci
3、4位全加器
四位全加器,是指能实现四位二进制数全加的数字电路模块。
2个四位输入以及1个一位进位,输出位一个四位数字加上1个一位进位。
二、使用原理图实现1位加法器
1、原理图实现半加器
创建工程这里就不再赘述了,可以参考这篇博客:
https://blog.csdn.net/chenyu128/article/details/127835128
注意选择对所用的芯片型号:
首先选择File->New,进入后选择Block Diagram/Schematic File
选择元件:两个输入,两个输出,一个与门,一个异或门
保存文件,并编译
通过tool->Netlist Viewers->RTL Viewer,查看电路图
仿真波形图
2、半加器元件实现全加器
将设计项目设置为可调用的元件
在打开半加器原理图文件half_adder.bdf的情况下,选择菜中File中的Create/Update→CreateSymbolFilesforCurrentFile项,即可将当前文件h_adder.bdf变成一个元件符号存盘,以待在高层次设计中调用
首先
选择File->New,进入后选择Block Diagram/Schematic File
选择元件:选择之前设置的半加器元件,三个输入,两个输出,再加上个或门
最终实现的效果图如下:
保存文件,并编译
通过tool->Netlist Viewers->RTL Viewer,查看电路图
仿真实现
创建一个向量波形文件,选择菜单项 File→New->VWF
添加信号
随便设置输入信号的波形,然后点击功能仿真。
功能仿真结果
三、使用原理图实现4位加法器
四、Verilog HDL实现1位加法器和四位加法器
1、重新创建个项目文件,创建verilog HDL 文件
2、1位加法器代码
3、4位加法器代码
4、编译文件无错误并保存
5、可以查看电路图
一位加法器的电路原理图:
4位加法器的电路原理图:
6、波形仿真
1位加法器的波形仿真图,高电平代表1,低电平代表0,可以看到,加法器正常工作无错误波形输出。
这是四位加法器的仿真波形图,这里使用4位的二进制数字来代表4位的输入信号和输出信号。
五、烧录及实验效果
1、
烧录前先要所需的绑定引脚
查询芯片引脚配置图:
将前八个拨片作为我们的2个四位信号输入,第9个拨片作为进位输入,拨片向上代表输入1信号,拨片向下代码输入0信号。
将前四个led作为四位加法器得到的加法sum和,第5个led灯则是进位。
1位加法器的引脚绑定同理如下:
2、实际效果演示
1位加法器
4位加法器
六、总结
这次实验复习了之前学习的verilog语言和Quartus软件的使用,构建1位加法器和4位加法器用原理器件和直接用verilog语言,以及仿真看看是否构建成功。
七、参考链接
https://blog.csdn.net/qq_43279579/article/details/115480406
FPGA——1位全加器和4位全加器的实现相关推荐
- 第三次笔记:算术逻辑单元 电路基本原理 加法器的设计 一位全加器 串行进位加法器 并行进位加法器 补码加减运算器 无符号整数加减法 标志位的生成
文章目录 算术逻辑单元 逻辑运算 一位全加器 串行进位加法器 并行进位加法器 补码加减运算器 加法器原理 补码加法器原理 无符号整数加减法 标志位的生成 算术逻辑单元 算术逻辑单元就是运算器里面的AL ...
- FPGA入门:QuartusⅡ实现半加器,全加器,四位全加器
文章目录 一.半加器和全加器简介 1.1 半加器 1.2 一位全加器 二.原理图实现半加器与全加器 2.1 半加器 2.1.1 创建项目 2.1.2 原理图设计半加器 2.1.3 半加器波形仿真 2. ...
- (109)FPGA面试题-Verilog实现4位Johnson Counter
1.1 FPGA面试题-Verilog实现4位Johnson Counter 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)FPGA面试题-Verilog实现4位Joh ...
- FPGA系统性学习笔记连载_Day8【4位乘法器、4位除法器设计】 【原理及verilog实现、仿真】篇
FPGA系统性学习笔记连载_Day8[4位乘法器.4位除法器设计] [原理及verilog实现.仿真]篇 连载<叁芯智能fpga设计与研发-第8天> [4位乘法器.4位除法器设计] [原理 ...
- 用vhdl实现4位加减法计数器_32位加减法器设计
功能特性 设计思路 基于一位全加器,设计32位并行加法器.并行加法器中全加器的位数与操作数相同,影响速度(延时)的主要因素是进位信号的传递.主要的高速加法器[1]有基本上都是在超前进位加法器(CLA) ...
- 有一个字长32位的浮点数符号位1位_边缘计算专题:(二)别看只有0和1,数学不好的勿进!...
一.二进制数与信息表示 1.概述 二进制的由来 德国最重要的自然科学家.数学家.物理学家.历史学家和哲学家,一个举世罕见的科学天才,和牛顿同为微积分的创建人--莱布尼兹. 在数学史上,西方史学家认为他 ...
- 【海洋女神原创】installshield 32位打包和64位打包的注意事项
32/64位问题要把握几点: 1. 明确你的产品是否需要区分32/64位 2. 明确你的产品中是否有32/64位的服务注册 3. 了解InstallShield Build出来的安装包本身是32位应用 ...
- 判断一个数为多少位 比如 3 是 1位 102 是3位。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 //判断一个数为多少位 比如 3 是 1位 102 是3位. #include <iostream> us ...
- 64位windows与32位windows的区别
64位windows与32位windows的区别 2010-07-19 15:46 64位windows与32位windows的区别 http://www.zeroplace.cn/article.a ...
最新文章
- 2016年全球100G和200G相干WDM光学系统出货量增长75%
- 【图论】Tree之最小方差树(bzoj 3754)
- c# list集合根据某个字段去重_Python list、dataframe去重
- C#LeetCode刷题之#771-宝石与石头(Jewels and Stones)
- vue从入门到开发--2-基本结构
- python编程入门课 视频-Python入门到精通视频教程下载[21课程全]
- html图片透明度变化,css,_CSS3动画实现图片透明度变化在微信上无效的解决方案,css - phpStudy...
- ML/DL-复习笔记【八】- 信息熵与相对熵(KL散度)
- 一、理解网络编程和套接字
- 计算机网络工程师模拟题库,计算机网络工程师模拟题56.doc
- 创业公司操蛋的面试过程
- Ubuntu 16.04 配置 TITAN xp, CUDA 及 cuDNN
- 星际争霸II sc2 台湾版试玩
- 再讲卷积的本质及物理意义,解释的真幽默!
- 一、在PyCharm上直接调试py脚本
- lbe+android6.0+免root,LBE安全大师(免ROOT)
- cocos2dx:重力加速度,自由落体:利用update()就能快速实现精灵自由落体运动
- linux运维常用命令整理
- 想成为一个优秀的程序员,首先做到这5点
- 阮一峰老师的JavaScript标准参考教程:函数和ES6函数的拓展