8位加减发器设计(74181)
前两天刚帮朋位友做了一个数字电路里的8位加减发器,感触颇深啊!一个简单的8位加减发器都做了好久,而且……
简单说一下题目:
熟悉计算机的加、减法运算的原理和硬件电路的实现,掌握带符号加减法的溢出方法判断和硬件电路的实现方法。
1、输入数据为原码,其中高1位为符号位,低7位为数据位,运
算结果需要转换为原码表示。
2、具有进位信号输入,输出能力,溢出判断能力。
3、通过功能选择控制信号M选择运算功能,M =0,加法运算,M=1,进行减法运算。
4、用数码管显示两个输入数据和运算结果。用发光二极管显示溢出与否,绿灯表示未溢出,红灯表示溢出。要求
1、在multisim上进行电路设计及仿真
2、输入、输出数码显示正确,另外溢出指示正确
3、结果验证,选择四组数据依次验证:结果为正不溢出、结果为负不溢出、结果正溢出和结果负溢出四种情况
个人感觉刚读完题有点懵,没听过这位老的讲的课谁能看懂什么意思……每个人看到这个题的第一反应应该是分类,加法有几种情况,减法有几种情况,但是这种情况你就陷入了误区,这时候你应该问一下小伙伴学的课本,大概那个章节,重新学习一下(反正我是栽了跟头以后,要了他们的课本,看了几个例题就知道他们老师想干什么了):.
这是好几天以前写的了,忘了思路了,下面把小伙伴的报告直接贴上摘 要采用一款优秀的软件Multisim13作为设计平台,,对任意一个8位二进制并行加/减法运算电路的设计原理及构成方法作了详细的介绍,通过按键输入被减数和减数,并设置+、-号按键;允许减数大于被减数,负号可采用数码管或其他显示器件,并利用LED灯显示计算结果。提出至少两种设计实现方案,并优选方案进行设计。利用该软件能实现电子电路的快速设计和仿真,大大缩短了电子电路的设计开发周期。本文以任意一个8位二进制并行加/减法运算电路的设计为例,详细介绍了基于Multisim13的数字电路加减法运算的设计与仿真。【关键词】Multisiml3,寄存器,显示器,门元件,数字电路
第1章 概述
1.1 课题分析
目前人类社会已逐步实现了高度发达的信息化,各种电子产品不但在性能上不断增强,而且更新换代的频率也越来越快,实现这种进步的主要原因是生产制造技术和电子设计技术的发展,特别是以EDA为核心的电子设计技术得到了飞速发展。EDA是以计算机为工作平台,融合电子技术、计算机技术、智能化技术等最新成果研制而成的通用软件。它的主要功能是IC设计、各种电路的计算机辅助设计和仿真,以及PCB设计。
算数运算是数字系统的基本功能,更是计算机中不可缺少的组成单元。要实现加减法运算电路,给出任意8位二进制数能进行加减法运算,首先要掌握加法运算电路的构成\原理和设计方法,设计出较合理的电路,来实现加减法运算, 加减法运算是我们经常用到的一项操作,因此我们的这项设计非常贴近我们是现实生活,离我们实际非常近。
1.2 仿真(实验)环境分析
Multisim是美国国家仪器(NI) 有限公司推出的以Windows为基础的仿真工具,适用于板级的模拟/数字电路板的设计工作。它包含了电路原理图的图形输入、电路硬件描述语言输入方式,具有丰富的仿真分析能力。Multisim随着计算机技术飞速发展,电路设计可以通过计算机辅助分析和仿真技术来完成。计算机仿真在教学中的应用,代替了大包大揽的试验电路,大大减轻验证阶段的工作量; 其强大的实时交互性、信息的集成性和生动直观性,为电子专业教学创设了良好的平台,极大地激发了学生的学习兴趣,能够突出教学重点、突破教学难点;并能保存仿真中产生的各种数据,为整机检测提供参考数据,还可保存大量的单元电路、元器件的模型参数。采用仿真软件能满足整个设计及验证过程的自动化。Multisim软件是一个专门用于电子线路仿真与设计的EDA 工具软件。作为Windows’下运行的个人桌面电子设计工具,Multisim 是一个完整的集成化设计环境。Multisim计算机仿真与虚拟仪器技术可以很好地解决理论教学与实际动手实验相脱节的这一问题。我们可以很方便地把刚刚学到的理论知识用计算机仿真真实的再现出来,并且可以用虚拟仪器技术创造出真正属于自己的仪表。Multisim极大地提高了我们的学习热情和积极性,真正的做到了变被动学习为主动学习。这些在课设活动中已经得到了很好的体现。因而学习Multisim,除了可以提高仿真能力、综合能力和设计能力外,还可进一步提高实践能力。初步掌握-种电子电路计算机辅助分析和设计软件对学习模拟电子技术基础课很有必要。鉴于Multisim.上述特点,本课设选用Multisim13.0作为基本工具,力图使我们从中学习电子电路的仿真方法和测试方法。
第2章 总方案设计
2.1 设计思路与方案
首先通过对Multisim里的操作和功能熟悉,接着全面思考题目的含义和目的,把上课时所学到的知识点记得滚瓜烂熟,在设计中灵活运用。还要有宏观,策划设计时不会受到局限,而且要一丝不苟的态度,不断从别人的书籍中得到帮助。思路要清晰,规划好需要用的时间。加法器是数字系统中的基本逻辑器件。例如,为了节省逻辑资源,减法器和硬件乘法器都可由加法器来构成。多位加法器的设计十分耗费硬件资源,因此和硬件乘法器都可由加法器来构成。多位加法器的设计十分耗费硬件资源,因此在实际的设计和相关系统的开发中,需要注意资源的利用率和进位速度两方面的问题。对此,首先应选择较适合组合逻辑设计的器件作为最终的目标器件;其次在加法器的逻辑结构设计上,在芯片资源的利用率和加法器的速度两方面权衡得失,探寻最佳选择,即选择最佳的并行进位最小的加法单元的宽度。显然这种选择与目标器件的时延特性有直接关系。
方案:由两异或门两与门、一个或门和两个异或门组成加减法器,可实现8位二进制加减逻辑运算,8 位二进制数并行相加的逻辑运算可采用8个全加器串行进位的方式来实现,将低位的进位输出信号接到高位的进位输入端,8个全加器依次串行连接,并将最低位的进位输入端接逻辑“0",就组成了一个可实现8位二进制数并行相加的逻辑电路。通过在全加器电路中再接入两个反相器可组成一个全减器,实现8位二进制减逻辑运算,将来自低位的错位信号端接到向高位借位的信号端,依次连接8个全减器,构成可实现8位二进制数并行进行逻辑减运算的电路。在两组电路置数端接开关控制置数输入加法还是减法运算电路,输出为8位二进制数。
2.2 设计总体框图
把计数器置零,然后写入两个8位2进制数,再选择是加法还是减法,就显示出最后的计算结果。
图2-1 加减运算原理框图
第3章 基本单元电路的设计
3.1 单元电路设计
3.1.1 单元电路原理1/指令1微程序设计
被加数和加数或被减数和减数的各位能同时并行到达各位的输入端,而加减法器的进位输入则是按照由低位向高位逐级串行传递的,各进位形成一个进位链。由于每一位相加的和或相减的差都与本位进位输入有关,所以,最高位必须等到各低位全部相加或相减完成并送来进位信号之后才能产生运算结果。显然,这种加减法器运算速度较慢,而且位数越多,速度就越低。 为了提高加减法器的运算速度,必须设法减小或去除由于进位信号逐级传送所花的时间, 使各位的进位直接由加数和被加数或被减数和减数来决定,而不需依赖低位进位。根据这一思想设计的加减法器称为超前进位(又称先行进位)二进制并行加减法器。对于8位的二进制加法,相关的有五个的量: 1、被加数A, 2、被加数B,3、前一位的进位CIN, 4、此位二数相加的和S,5、此位二数相加产生的进位COUT。前三个量为输入量,后两个量为输出量,五个量均为8位。对于8位的二进制减法也有相关的有五个的量: 1、被减数A, 2、减数B,3、前一位的进位CIN, 4、此位二数相加的差S,5、此位二数相加产生的进位COUT。前三个量为输入量,后两个量为输出量,五个量均为8位。一种自然的想法就是将1位的二进制加减法重复8次(即逐位进位加法器)。这样做无疑是可行且易行的,但由于每一位的CIN都是由前一位的COUT提供的,所以第2位必须在第1位计算出结果后,才能开始计算;第3位必须在第2位计算出结果后,才能开始计算,等等。而最后的第8位必须在前7位全部计算出结果后,才能开始计算。
图3-1 二进制加法/减法逻辑结构图
3.1.2 单元电路的设计实现
一位全加器由两个与门、一个或门和两个异或门组成,输入信号X1、Y1, 以及进位信号Co,输出信号为和S1,进位信号C1。如下图所示:
图3-2 全加器
3.2 章节小结
通过对8位加减法器各模块逻辑部件的分析、设计,了解到各模块的功能与具体实现方法,加深了对这部分内容知识的理解,能够根据真值表推出逻辑表达式,再由逻辑表达式设计出电路图。巩固了这学期所学的内容,加深了对这个课程设计相关内容的理解,使我们受益良多。
第4章 仿真测试
4.1单元电路1仿真测试/指令1测试
一、8位二进制加法
1.把A1和A2向下拉
图4-1
2.把B1和B2向下拉
图4-2
二、8位二进制减法
1.把A1至A4向下拉
图4-3
2把B1向下拉
图4-4
4.2单元电路2仿真测试/指令2测试
一、8位二进制加法溢出
1.把A1至A8全部向下拉
图4-5
2.把B8向下拉
图4-6
二、8位二进制减法溢出
1.把A1和A2向下拉
图4-7
2.把B8向下拉
图4-8
4.3总电路仿真测试/整体指令功能测试
经过编程和设计,8位加减法器的功能已经完善了,可以运算两个8位二进制数的相加或相减。
图4-9 8位加减法总程序
4.4章节小结
通过使用Multism13仿真测试软件画出仿真电路图进行测试,在过程中也遇到许多的问题,比如对Multism13仿真软件的不熟悉,以及对各个器件的功能认识不够全面,但最后通过小组内的相互讨论以及老师的帮助,我们解决了此过程中遇到的许多问题。最终学会了很多的知识,了解到这个仿真软件Multism13的使用方法及ALU的仿真设计。
第5章 仿真结果分析与改进
5.1单元电路1仿真结果与分析/指令1测试结果与分析
一、8位二进制加法结果
二、8位二进制减法结果
5.2单元电路2仿真结果与分析/指令2测试结果与分析
一、8位二进制加法结果溢出
二、8位二进制减法结果溢出
5.3 电路改进/微程序改进
本来想运用逻辑门,但是因为逻辑门存在但是由于逻辑门本身的电压降,搭建出来的有80%的可能是仿真不通过,还有我把74283运算器改成了74181运算器。
5.4 章节小结
通过对仿真结果的分析,对照理论结果,发现两者一致,说明电路的输出正确,能够进行逻辑运算和算术运算。学会了通过仿真软件来验证理论分析的结果。
8位加减发器设计(74181)相关推荐
- 汇编语言实现模拟单片机数码管的进位借位加减操作
题目要求如下 利用MCS51系列单片机为CPU,设计电路,连接4位数码管,并连接 两个按键,按第一个按键数码管显示值增加1,按另外一个按键数码管显示值减1.要求线路连接正确,包含晶振电路和复位电路,数 ...
- java计算10以内阶层相加的值_大班计算:10以内数加减混合运算
大班计算:10以内数加减混合运算 设计意图: 在学习利用加减法的基础上通过情境课件来学习加减混合运算.新课利用两幅生动形象的描述,展现白天鹅飞来飞去的情景,让幼儿明白飞来就是加上,飞走就是减去的意义. ...
- 数字集成电路及其版图设计:带有预置数功能的8位二进制加减计数器设计及版图实现
数字集成电路及其版图设计 带有预置数功能的8位二进制加减计数器设计及版图实现 一.目的: 1.熟悉数字集成电路设计的基本流程: 2.熟悉虚拟机的安装及使用方法: 3.熟悉Linux系统及vi编辑器的操 ...
- 第三次笔记:算术逻辑单元 电路基本原理 加法器的设计 一位全加器 串行进位加法器 并行进位加法器 补码加减运算器 无符号整数加减法 标志位的生成
文章目录 算术逻辑单元 逻辑运算 一位全加器 串行进位加法器 并行进位加法器 补码加减运算器 加法器原理 补码加法器原理 无符号整数加减法 标志位的生成 算术逻辑单元 算术逻辑单元就是运算器里面的AL ...
- EDA技术与应用上机任务 电子信息类 Quartus II或Quartus Prime D触发器、半减器、全减器、可加减控制的50进制加减计数器。
EDA技术与应用上机任务书 上机目的 熟悉掌握Quartus II或Quartus Prime开发工具的使用. 掌握利用硬件描述语言(Verilog)设计简单程序的步骤及方法. 掌握若干组合逻辑电路及 ...
- 三位共阴数码管动态显示按键控制加减
用这个软件也有一两个月了,学习了很多大神的教程代码,让我飞速的进步学习了解电子科技的知识,现在我也想回报大家,慢慢写文章发布我所了解的项目的教程,尽可能写简单通俗,让大部分初学者都能看懂. 买这东东将 ...
- 电子电路课程设计——8位数字抢答器设计论文
江苏广播电视大学 (电子电路课程设计--8位数字抢答器设计论文) 班级: 姓名: 指导老师: 日期:2010年10月 目录 一.摘要 二.前言 三.设计目的与要求 1 .设计目的 2. 设计要求 四. ...
- c语言六位抢答器课程设计,基于c语言单片机8位竞赛抢答器设计课程设计.docx
基于c语言单片机8位竞赛抢答器设计课程设计 课程设计报告课程名称:单片机课程设计报告题目:8位竞赛抢答器的设计学生姓名:所在学院:信息科学与工程学院专业班级:学生学号:指导教师:2013 年12月25 ...
- 基于FPGA的两位按键控制LED数码管加减计数实验
两位按键控制LED数码管加减计数实验 这是一篇拖了一个多月的文章,主要是基于FPGA利用按键消抖原理与动态数码管驱动原理相结合,来实现一个利用两位按键来控制数码管实现0-99的加法计数或者减法计数功能 ...
最新文章
- ThinkServer RD430:高性价比的海量存储服务器
- android开发国内镜像
- avro文件导入到hive_XML到Avro的转换
- N76E003---看门狗
- android baidupush
- 异常检测算法之HBOS
- 使用手机企业微信创建自己的企业(公司)
- 图论 —— 网络流 —— 最大流 —— Dinic 算法
- knime实现python编写脚本
- 多项目晶圆(MPW)服务
- python语言中函数在调用前必须先定义吗_应该在python中使用函数之前进行定义?...
- SD-WAN(软件定义WAN)
- QQ文件上传不了:什么年代了,还使用简单的关键词过滤,智能一点可好
- 移动通信发展史与5G技术的探索
- windows7官方原版_如何下载微软原版操作系统、办公软件
- Scanf 用法和注意事项
- 外包php技术,php外包
- linux pipe命令,Linux入门教程:Linux下的pipe命令
- 【Android】实现自定义标题栏
- HTML5+CSS3小实例:手风琴式加载动画
热门文章
- 并发数、TPS、吞吐量、响应时间、每秒点击数等
- android 人物走动_Android游戏开发学习(2)--SurfaceView实例控制角色移动
- 跨专业的我如何收获BAT微软等大厂意向书(学习路线分享)
- 2021年 Android Studio 下载安装教程(详细)
- 可视化:Windows图形设备接口及绘图
- php cpu主频,cpupower命令 – 调整CPU主频
- 中国邮路问题的解决(数据结构课程设计)
- 敏捷转型大步迈进,民生证券敏捷实践培训圆满结束!
- 解决uploadify对象不支持此属性或方法
- 福克斯更换变速箱油方法