十进制加法器设计含点阵课程设计说明书.docx
- 文档编号:3883301
- 上传时间:2023-05-06
- 格式:DOCX
- 页数:15
- 大小:136.20KB
十进制加法器设计含点阵课程设计说明书.docx
《十进制加法器设计含点阵课程设计说明书.docx》由会员分享,可在线阅读,更多相关《十进制加法器设计含点阵课程设计说明书.docx(15页珍藏版)》请在冰点文库上搜索。
十进制加法器设计含点阵课程设计说明书
课程设计说明书
题目:
十进制加法器
学院(系):
电气工程学院
年级专业:
11级应电1班
学号:
学生姓名:
指导教师:
教师职称:
第1章引言……………………………………………………………………………4
第2章摘要……………………………………………………………………………5
第3章基本原理………………………………………………………………………6
设计思路…………………………………………………………………………6
真值表……………………………………………………………………………6
双点阵显示………………………………………………………………………10
第4章原理图分析………………………………………………………………………11
流程图……………………………………………………………………………11
原理图及说明……………………………………………………………………12
程序及说明………………………………………………………………………12
管脚锁定及硬件连线……………………………………………………………18
第5章波形仿真图及结果分析………………………………………………………19
第6章总结……………………………………………………………………………22
参考文献…………………………………………………………………………………23
燕山大学评审意见表……………………………………………………………………24
引言
数字电路主要是基于两个信号(我们可以简单的说是有电压和无电压),用数字信号完成对数字量进行算术运算和逻辑运算的电路我们称之为数字电路,它具有逻辑运算和逻辑处理等功能,数字电路可分为组合逻辑电路和时序逻辑电路。
1.EDA介绍
EDA技术,就是以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的可开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件的方式设计的电子系统到硬件系统的逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿真,直至完成对于特定目标芯片的适配编译、逻辑映射、编程下载等工作,最终形成集成电子系统或专用集成芯片的一门新技。
此次课程设计的题目整点到计提醒,本任务书,首先概括介绍了EDA技术、VerilogHDL硬件描述语言,根据任务书对本课题整体思路进行了介绍,然后分别介绍了主程序各部分的功能,并绘制波形仿真,再次给出实现本任务书所要求的功能及其附加功能的源程序以及波形仿真图,最后进行管脚锁定和外部硬件连线并下箱实现了所有功能。
摘要
十进制加法器可由BCD码(二-十进制码)来设计,它可以在二进制加法器的基础上加上适当的“校正”逻辑来实现,该校正逻辑可将二进制的“和”改变成所要求的十进制格式。
n位BCD码行波式进位加法器由n级组成,每一级将一对6位的BCD数字相加,并通过一位进位线与其相邻级连接。
在十进制运算时,当相加二数之和大于9时,便产生进位。
用BCD码完成十进制数运算时,当和数大于9时,必须对和数进行加6修正,由加法器和比较器完成功能的实现。
加法器的加数或被加数若大49则蜂鸣器警报5秒,数码管显示为0,双点阵显示F,加法器的加数或被加数若小于等于49则数码管显示当前数值,双色点阵显示Z,蜂鸣器不发生警报。
由比较器和计数器控制。
动态数码管由计数器、数据选择器、译码器完成显示功能,由双色点阵显示数值范围。
关键词:
十进制加法器、动态数码管显示、蜂鸣器警报、双色点阵、译码器、数据选择器
第三章基本原理
设计思路
根据项目要求设计的十进制加法器有两个输入,及加数和被加数,分别是用四个拨码开关表示的六位二进制数,即输入的范围为0到63;有一个输出,即两个加数相加的结果。
加数、被加数和结果都需要显示在动态数码管上,并且,加数或被加数若大于49,则蜂鸣器报警5秒钟,且显示为0,双色点阵显示F。
根据要求,设计加数和被加数的合法范围为0到49,故当输入的加数大于49的时候需要将其统一变换成0。
这里我们使用7485四位数字比较器级联和相应的组合逻辑电路,将输入的加数和110001B(即49)做比较,如果其小于等于49,就输出原数作为加数,同时双点阵显示Z;如果其大于49,就输出000000B(即0)作为新的加数,同时双点阵显示F,并通过控制蜂鸣器蜂鸣5秒。
处理过的加数、被加数分别接入74283四位超前进位加法器的各个引脚,相加后的六位输出结果SUM1-SUM4连同进位输出cout,是一个七位的二进制数,cout是其高位。
输出的七位二进制数需要转换成为八位BCD码才能显示,故需要添加转换环节。
使用一片7485比较器和一片74283四位超前进位加法器即可实现从七位二进制数到七位BCD码的转换。
加数、被加数和运算结果,通过由十进制加法计数器74160接成的6进制加法计数器的循环与级联双四选一数据选择器74153的控制,分时输出数值,经过BCD七段译码器7448译码即可接入动态数码管进行显示,动态数码管的片选也由级联的四进制加法计数器控制,实现数据的显示。
真值表
(1)、六位二进制加法真值表
加数
被加数
和
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
……(注:
加数和被加数都不大于49,且相加无进位得到的和;)
1
0
1
1
1
0
1
1
0
0
0
1
1
0
1
1
1
1
1
1
0
1
1
1
1
1
1
0
0
0
1
1
1
0
0
0
0
0
1
1
0
0
0
0
1
1
0
0
0
1
1
1
0
0
0
0
1
1
1
0
0
0
1
1
1
0
0
0
1
1
1
0
0
0
1
0
……(注:
加数和被加数都不大于9时所有情况相加得到和;)
1
1
0
0
1
0
1
0
1
1
1
1
0
1
0
1
1
1
1
1
1
0
0
1
0
1
1
0
0
0
0
0
1
1
0
0
0
0
1
1
0
0
1
0
1
1
0
0
0
1
0
1
1
0
0
0
1
1
1
0
0
1
0
1
1
0
0
1
0
0
0
0
0
0
0
0
……(注:
加数或被加数大于9时按0处理,相加得到和;)
(2)、B-BCD转换真值表
二进制数
BCD码
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
1
0
0
0
0
0
0
1
1
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
1
0
0
0
0
1
1
0
0
0
0
0
0
1
1
0
0
0
0
0
1
1
1
0
0
0
0
0
1
1
1
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
1
0
0
0
0
1
0
0
1
0
0
0
1
0
1
0
0
0
0
1
0
0
0
0
0
0
0
1
0
1
1
0
0
0
1
0
0
0
1
0
0
0
1
1
0
0
0
0
0
1
0
0
1
0
0
0
0
1
1
0
1
0
0
0
1
0
0
1
1
0
0
0
1
1
1
0
0
0
0
1
0
1
0
0
0
0
0
1
1
1
1
0
0
0
1
0
1
0
1
0
0
1
0
0
0
0
0
0
0
1
0
1
1
0
0
0
1
0
0
0
1
0
0
0
1
0
1
1
1
0
0
1
0
0
1
0
0
0
0
1
1
0
0
0
0
0
1
0
0
1
1
0
0
0
1
1
0
0
1
0
0
1
0
1
0
0
0
0
1
0
0
0
0
0
0
0
1
0
1
0
1
0
0
1
0
0
0
0
1
0
0
1
0
1
1
0
0
0
1
0
0
0
1
0
0
0
1
0
1
1
1
0
0
1
0
0
0
1
1
0
0
1
1
0
0
0
0
0
1
0
0
1
0
0
0
0
1
1
0
0
1
0
0
1
0
0
1
0
1
0
0
1
1
0
1
0
0
0
1
0
0
1
1
0
0
0
1
1
0
1
1
0
0
1
0
0
1
1
1
0
0
1
1
1
0
0
0
0
1
0
1
0
0
0
0
0
1
1
1
0
1
0
0
1
0
1
0
0
1
0
0
1
1
1
1
0
0
0
1
1
0
0
0
0
0
0
1
1
1
1
1
0
0
1
1
0
0
0
1
0
1
0
0
0
0
0
0
0
1
1
0
0
1
0
0
1
0
0
0
0
1
0
0
1
1
0
0
1
1
0
1
0
0
0
1
0
0
0
1
1
0
1
0
0
0
1
0
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
0
1
0
0
0
0
1
1
0
1
1
0
0
1
0
0
1
0
1
0
0
1
1
0
1
1
1
0
1
0
0
1
1
0
0
0
1
1
1
0
0
0
0
1
0
0
1
1
1
0
0
1
1
1
0
0
1
0
1
0
1
0
0
0
0
1
0
0
0
0
0
0
0
1
0
1
0
0
1
0
1
0
0
0
0
0
1
0
1
0
1
0
1
0
0
1
0
0
0
0
1
0
0
1
0
1
0
1
1
0
1
0
0
0
0
1
1
0
1
0
1
1
0
0
0
1
0
0
0
1
0
0
0
1
0
1
1
0
1
0
1
0
0
0
1
0
1
0
1
0
1
1
1
0
0
1
0
0
0
1
1
0
0
1
0
1
1
1
1
0
1
0
0
0
1
1
1
0
1
1
0
0
0
0
0
1
0
0
1
0
0
0
0
1
1
0
0
0
1
0
1
0
0
1
0
0
1
0
1
1
0
0
1
0
0
1
0
1
0
0
0
0
0
1
1
0
0
1
1
0
1
0
1
0
0
0
1
0
1
1
0
1
0
0
0
1
0
1
0
0
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
1
1
0
1
1
0
1
1
0
0
1
0
1
0
1
0
0
0
1
1
0
1
1
1
0
1
0
1
0
1
0
1
0
1
1
1
0
0
0
0
1
0
1
0
1
1
0
0
1
1
1
0
0
1
0
1
0
1
0
1
1
1
0
1
1
1
0
1
0
0
1
0
1
1
0
0
0
0
1
1
1
0
1
1
0
1
0
1
1
0
0
1
0
1
1
1
1
0
0
0
1
1
0
0
0
0
0
0
1
1
1
1
0
1
0
1
1
0
0
0
0
1
0
1
1
1
1
1
0
0
1
1
0
0
0
1
0
0
1
1
1
1
1
1
0
1
1
0
0
0
1
1
1
0
0
0
0
0
0
0
1
1
0
0
1
0
0
1
0
0
0
0
0
1
0
1
1
0
0
1
0
1
1
0
0
0
0
1
0
0
1
1
0
0
1
1
0
1
0
0
0
0
1
1
0
1
1
0
0
1
1
1
1
0
0
0
1
0
0
0
1
1
0
1
0
0
0
1
0
0
0
1
0
1
0
1
1
0
1
0
0
1
1
0
0
0
1
1
0
0
1
1
1
0
0
0
0
1
0
0
0
1
1
1
0
1
1
1
0
0
0
1
1
0
0
1
0
0
0
0
1
1
1
0
0
1
0
1
0
0
1
0
0
1
0
1
1
1
0
0
1
1
1
0
0
1
0
1
0
0
1
1
1
0
1
0
0
1
0
0
1
0
1
1
0
1
1
1
0
1
0
1
1
0
0
1
1
0
0
0
1
1
1
0
1
1
0
1
0
0
1
1
0
1
0
1
1
1
0
1
1
1
1
0
0
1
1
1
0
0
1
1
1
1
0
0
0
1
0
0
1
1
1
1
0
1
1
1
1
0
0
1
1
0
1
0
0
0
0
1
0
0
0
0
0
0
0
1
0
1
0
0
0
1
1
0
0
0
0
0
0
1
1
0
1
0
0
1
0
1
0
0
0
0
0
1
0
1
0
1
0
0
1
1
1
0
0
0
0
0
1
1
1
0
1
0
1
0
0
1
0
0
0
0
1
0
0
1
0
1
0
1
0
1
1
0
0
0
0
1
0
1
1
0
1
0
1
1
0
1
0
0
0
0
1
1
0
1
0
1
0
1
1
1
1
0
0
0
0
1
1
1
1
0
1
1
0
0
0
1
0
0
0
1
0
0
0
1
0
1
1
0
0
1
1
0
0
0
1
0
0
1
1
0
1
1
0
1
0
1
0
0
1
0
0
0
0
1
0
1
1
0
1
1
1
0
0
1
0
0
0
1
1
0
1
1
1
0
0
1
0
0
1
0
0
1
0
1
0
1
1
1
0
1
1
0
0
1
0
0
1
1
1
0
1
1
1
1
0
1
0
0
1
0
1
0
0
1
0
1
1
1
1
1
1
0
0
1
0
1
0
1
1
1
0
0
0
0
0
1
0
0
1
0
1
1
0
1
1
0
0
0
0
1
1
0
0
1
0
1
1
1
1
1
0
0
0
1
0
1
0
0
1
1
0
0
0
双点阵显示
图一
图二
第四章原理图分析
流程图
加数A和被加数B分别通过六个拨码开关输入,加数A和被加数B通过与49比较,判断是否合法,若小于49,则在合法范围内,蜂鸣器不发出警报,双点阵显示Z;若A和B中有一个大于49(超出合法范围),则显示0,蜂鸣器输入高电平,蜂鸣5秒,双点阵显示F。
A和B通过六个二进制数表示十进制数,如果在动态数码管上显示十进制数,需要加上进制转换功能。
同理,A,B相加结果是由七位二进制数表示,同样需要加上进制转换功能。
原理图
说明:
A和B表示两个6位二进制数,CLK是扫描时钟信号,通过modulech1处理,输出两数之和RN(由8位二进制数表示),加数、被加数及两数之和由7段动态数码管(abcdefg)显示,即DUAN[6:
0]。
WEI[2:
0]表示加数A、被加数B及两数之和RN的十位、个位。
FLAG表示加数A、被加数B是否在合法范围内。
若在,FLAG=0;若不在,FLAG=1。
FLAG是蜂鸣器和双色点阵触发信号。
modulelattice蜂鸣器和点阵部分,若FLAG=0,则蜂鸣器不警报,双色点阵显示Z;若FLAG=1,则蜂鸣器警报5秒,双色点阵显示F。
程序及说明
1)
Moduletop(CLK,CLKF,CLKB,A,B,WEI,DUAN,Row,Line,Bee);
inputCLK,CLKF,CLKB;
input[5:
0]A,B;
output[2:
0]WEI;
output[6:
0]DUAN;
output[7:
0]Row;
output[7:
0]Line;
outputBee;
wirex1;
ch1u1(.CLK(CLK),.A(A),.B(B),.WEI(WEI),.DUAN(DUAN),.FLAG(x1));
latticeu2(.CLKF(CLKF),.CLKB(CLKB),.FLAG(x1),.Bee(Bee),.Row(Row),.Line(Line));
endmodule
说明:
顶层文件,用wirex1线连接modulech1和modulelattice。
用FLAG标志位触发双色点阵和蜂鸣器。
当FLAG=0,,蜂鸣器不警报,双点阵显示Z;当FLAG=1,蜂鸣器警报,双点阵显示F。
2)
modulech1(CLK,A,B,WEI,DUAN,FLAG,RN);
input[5:
0]A,B;
inputCLK;
output[2:
0]WEI;
output[6:
0]DUAN;
输入超出显示
加数为52,不在合法范围内(大于49),被加数为16,在和范围内,由于,加数和被加数有一个超出范围蜂鸣器即为高电平,发出警报。
第六章总结
本次EDA(ElectricDesignAutomation)课程设计,是我第一次深入接触电路设计和工程设计的内容。
作为一个应电专业的学生,我在过去的两年半中学习了专业的各方面知识,包括电路原理、模拟电路、数字电路等等,而这周的EDA课设,将我们学过的各方面电学知识和现代电路设计方法结合起来,应用计算机软件进行课题项目设计,不单夯实了我们的理论知识和对数字电路的理解,更极大的锻炼了我们实际动脑、动手能力。
我的设计题目是十进制加法计数器,通过拨码开关输入两个数(大于49的时候按0处理),将输入的数通过动态数码管显示,相加后的结果也通过两个动态数码管显示出来。
在输入非法数字时,蜂鸣器发生五秒警报,双点阵显示F.该设计具有实际意义,它包含了从教材上截取的精华,比如比较器与49比较,通过级联四位二进制全进位加法器实现两位数加法计算,二进制数字向BCD码的转换。
在这一周的设计过程中,我遇到了很多的问题,比如,蜂鸣器的定时,要求五秒警报,能在启动;比如,动态数码管的显示过程,双点阵显示。
本设计题目并没有我最初想象的那么简单,在一步步的设计进程中,我遇到了问题,学会了自己解决问题,收获颇多。
很多问题在课本教材的学习过程中没遇到过,实际的动手设计很重要,可以锻炼的更多,收获的更多。
通过一周课程设计,我受益良多。
在老师的指导下,我学会了软件MAX+plusIIBASELINE的基础使用方法,初步了解了电气设计的过程,接触了工程设计的概念。
在这一周的时间里,我独立进行思考,设计电路,调试波形……这次课设让我在实际中真正地运用了在课本中学到的东西,既加深理论知识的理解,又锻炼了自己的动手能力,感谢老师两周的耐心讲
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 十进制 加法器 设计 点阵 课程设计 说明书