一位全加器的设计与实践
认识全加器
半加器
半加器是能够对两个一位的二进制数进行相加得到半加和以及半加进位的组合电路
半加器的输出表达式为S=A⊕B,C=AB,逻辑电路图如下
一位全加器
全加器的真值表如下,其中Ain表示被加数,Bin表示加数,Cin表示低位进位,Cout表示高位进位,Sum表示本位和
即输出表达式为
Sum=Ain⊕Bin⊕Cin
Cout=(Ain⊕Bin)⋅Cin+Ain·Bin=(Ain&Bin)∣(Bin&Cin)∣(Ain&Cin)
输出原理图实现一位加法器
首先启动quartus软件,选择file,找到new project wizard
半加器原理图输入
首先选择file,选择new,进入选择Block Diagram/Schematic File
选择元件,添加一个and2,一个xor,两个input,两个output,组成如下图的电路
保存文件,编译
通过Tools->Netlist Viewers->RTL Viewer查看电路图
得到如图。
创建一个向量波形文件,选择菜单项File->New->University Program VWF
然后按照如下图所示操作
编辑并保存
功能仿真结果
时序仿真结果
全加器原理图输入
将设计项目设置为可调用的元件
在打开半加器原理图文件half_adder.bdf的情况下,选择菜中File中的Create/Update→CreateSymbolFilesforCurrentFile项,即可将当前文件h_adder.bdf变成一个元件符号存盘,以待在高层次设计中调用。
接下来我们再绘制一个,还是老样子,选择file->new,选择Block Diagram/Schematic File
加入元件
名字出了点问题。
做成如图所示
这里先把这个文件置顶
这里是如上相同的方式,保存编译查看电路图,仿真实现
功能仿真
时序仿真
Verilog实现一位加法器创建
先创建Verilog文件
输入代码
module Verilog1(//这里的名字与自己的文件名相同
//输入信号,ain表示被加数,bin表示加数,cin表示低位向高位的进位
input ain,bin,cin,
//输出信号,cout表示向高位的进位,sum表示本位的相加和
output reg cout,sum);
reg s1,s2,s3;
always @(ain or bin or cin) begin
sum=(ain^bin)^cin;//本位和输出表达式
s1=ain&cin;
s2=bin&cin;
s3=ain&bin;
cout=(s1|s2)|s3;//高位进位输出表达式
end
endmodule
成功
然后创建波形图文件
编译运行
功能仿真
时序仿真
下载测试
芯片引脚配置表
找到quartus的pin planner
接下来电脑接入FPGA开发板。如果是原理图进行实现的话,绘制的原理图会出现以下变化,输入输出旁边会标注刚刚绑定的引脚编号。
然后如下图操作
选择好下图中的移动接口,没有这个接口要到在设备管理器中找到加感叹号的USB-blaster设备,并在一下路径下18.1/quatus/drivers/USB-blaster添加驱动。
回到上一级菜单,选中以下2框选处,点击start开始烧录。若4处出现success表示烧录成功。
成功。
一位全加器的设计与实践相关推荐
- 一位全加器的设计和交通灯控制器EDA
一.实验内容 1)熟悉quartusll开发环境 2)一位全加器的设计和交通灯控制器. FPGA为核心,设计一个交通灯控制器,每个路口都有红.黄.绿三盏灯.该交通信号灯控制器由一条车道A和一条车道B汇 ...
- 一位全加器 VHDL设计与实现
作者:chenjieb520 一.设计目的 熟悉Quartus II的VHDL文本设计流程全过程,学习组合电路的设计,仿真和测试. 二.设计内容 设计一位全加器,给出程序的设计.软件编译.仿真分析.硬 ...
- 四位全加器的设计与实践
目录 四位加法器的原理 quartus使用前言 原理图实现构建四位加法器 RTL图如下 波形图结果 Verilog实现四位加法器 RTL图如下 波形图结果 DE2-115开发板实验验证 总结 参考文章 ...
- 在Verilog语言中,使用门级建模设计一个由1位全加器组成的4位全加器
4位全加器的门级建模 Verilog语言的层级 在Verilog硬件描述语言中,我们可以分许多层次对电路进行描述,每一层都有自己的特点.层次分为开关级.门级.数据流级.行为级.我们不能说必须使用哪一种 ...
- 【计算机组成原理】一位全加器
一位全加器 在设计全加器的过程中,需要考虑如下两个问题: 如何产生相加数的和数 如何产生相加数的进位数 和数的逻辑实现 和为1:0+1=11+0=1和为0:0+0=01+1=0和为1: 0 + 1 = ...
- 四位全加器的设计与仿真
若对你有用,记得点赞.关注我哦! 计算机组成原理期末复习[超实用] 一位全加器的设计与仿真 简单运算器的设计与仿真 八位比较器的设计与仿真 1/2分频器的设计和仿真 四选一多路选择器的设计与仿真 1. ...
- 用行为级描述方式实现一个加法器电路(基于ISE的设计)(2输入1位全加器电路)
准备 先用行为级描述方式实现一个2输入一位全加器电路 由于后面需要使用综合工具进行综合,这里先声明使用的FPGA是Virtex-7系列的: 目的很单纯,就是熟悉一下使用ISE进行FPGA设计的一般流程 ...
- 硬件设计与实践:16位CPU设计
课程设计报告 名 称: 硬件设计与实践 题 目: 16位CPU设计 硬件设计与实践 任 务 书 一. 目的与要求 1.目的 1.1 培养学生在计算机硬件方面的动手实践能力: 1.2 熟悉VHDL硬件描 ...
- 原理图以及vhdl设计一位全加器
原理图设计以及VHDL设计 一位加法器 全加器原理 全加器真值 输出表达式 原理图设计法 VHDL设计法 代码如下: 全加器是用门电路实现两个二进制数相加并求出和的组合线路,称为一位全加器.一位全加器 ...
最新文章
- RhinoMock入门(7)——Do,With和Record-playback
- solidity智能合约[37]-以太坊虚拟机数据存储
- activiti 为什么需要采用乐观锁?
- 可交互的 Attention 可视化工具!我的Transformer可解释性有救了?
- 前端填空题_一年前端面试总结|入职字节|2020.8
- vue 将行转换成对象_Vue简化版实现
- 《京华烟云》—— 读后总结
- 关于坑爹的编解码问题
- 将json字符串转换成html,根据json字符串生成Html的一种方式
- hspice标识符语法
- 什么是常见的计算机应用软件,什么是计算机的应用软件?
- Data must be padded to 16 byte boundary in CBC mode
- 我们到底在恐惧什么?
- flex effect
- 深度操作系统deepin 20.9 正式发布!
- rtx3060性能相当于什么水平 rtx3060参数
- python 常用库收集
- 【mcuclub】矩阵键盘
- 基于 短信认证 通过 华为、H3C 结合 OpenPortal认证计费系统 实现 网络准入 短信验证码 访客实名认证
- 什么是代理IP池,如何构建?
热门文章
- Puzzled Elena
- 水资源行业建设物联网有什么好处?
- python基于Python的资产管理系统毕业设计-附源码201117
- 计算机应用基础西南大学答案2015,西南大学2013级《计算机应用基础》论述题答案(全).doc...
- 数学知识复习:第二型曲线积分
- 智慧工厂人员定位系统源码,实现对工厂内的人车、物、料等的精确定位
- 项目管理指南学习笔记-项目运行环境(1)
- AI芯片独角兽寒武纪新融资完成:估值逾20亿美元,国家队基金入场
- MySQL 对于千万级的大表要怎么优化?(读写分离、水平拆分、垂直拆分)
- Elasticsearch技术解析与实战-索引分词器