




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、贵州大学eda技术课程设计报告题 目:bcd码加法器院 系 计算机科学与技术学院 专 业 计科121 学 号 1208060061、1208060058、1208060065 学生姓名 张飞宇、王红强、匡金军 指导教师 夏玉勤 设计bcd码加法器一、 设计任务及要求(1)课程设计意义: 对bcd码加法有了进一步了解; 学习了quartus ii设计软件,初步了解了fpga; (2)设计要求:利用verilog hdl语言,编写一个4位bcd码加法器程序,输入用八个开关分别表示两个bcd码,输出结果用数码管显示。主要芯片:2个全加器(4008bd)、开关、数码管(2个),其他元件、门电路任选 (
2、3)主要功能: 输入两个4位bcd码,相加结果显示在数码管上。 我组在要求的功能上添加了一些代码,使输入结果也能在数码管上显示。 (4)设计思路: 图1 简易结构图 如图1所示:a,b分别是2个输入数字,s0-s1为输出,经过bcd加法器的运算,能实现bcd码加法功能。(1)t=a+b,若t10,则z赋值为10,同时进位(2)c=1,和值低位(3)s0=t-z,和值高位(4)s1=c。 二、 基于verilog语言的电路设计、仿真、综合硬件及软件电路设计及描述 图2 顶层模块图 图3 rtl(1)数据的产生与输入通过j1j8八个单刀双掷开关在+5v和gnd之间的切换来产生两个4位8421bcd
3、码作为输入的数据,当开关打到+5v时输入数据1,打到gnd时输入数据0。其中j1j4分别为数据a3a0,j5j8分别为数据b3b0,且a3a0、b3b0的位权依次降低(8421)。(2)加法电路把上面得到的两个四位8421bcd码分别输入4008bd全加器的输入端a3a0、b3b0,同时cin输入端接低电平。则s3s0输出计算结果,cout为进位输出端。(3)转换电路为将输出结果显示在数码管上,需要将计算结果进行转换,转换电路的原理如表2.1所示当结果小于9时,转换为十进制时只有一位,所以无需转换可以直接输入显示译码器后通过数码管显示出。当运算结果大于9时,转化为十进制数为两位要进位,因此必须
4、通过转换电路来实现数值转换,即将得到的结果做如表1.3所示的转换。考虑到全加器要到16才能进位,而显示时则要求到十句进位,所以要在通过一个4008全加器将计算结果加上六,使其在结果为10时就开始进位,又因为计算结果小于9时不能加六,所以通过一个四位数值比较器74hc85ad将计算结果与事先设定的数9进行比较,当结果大于九时则给第二片全加器的a3a0输入数据6,当计算结果不大于9时则给第二片全加器的a3a0输入数据0,即不做变化。(4)显示电路在数字测量仪表和各种数字系统中,都需要将数字量直观地显示出来,数字显示电路通常由译码驱动器和显示器等部分组成。数码显示器就是用来显示数字、文字或符号的器件
5、。普遍使用的七段数字显示器发光二极管器件有发光二极管和液晶显示器。发光二极管构成的七段显示器有两种,共阴极和共阳极电路。共阴极电路中,七个发光二极管的阴极连在一起接低电平,需要某一段发光,就将相应二极管的阳极接高电平。共阳极显示器的驱动则刚好相反。为了使数码管能显示十进制数,必须将十进制数的代码经译码器译出,然后经驱动器点亮对应的段。例如,对于8421bcd码的0011状态,对应于十进制数为3,则译码驱动应使a、b、c、d、g各段点亮。译码器的功能就是,对应于某一组数码输入,相应的几个输出端有有效信号输出。测试实验结果: 通过调节开关输入数据0110与0011,按下f5,则数码管显示出计算09
6、(不进位); 再次调节开关输入数据1000与1001,数码管显示计算结果17(进位);然后随机输入0001与0010,数码管显示计算结果为3。如下图4所示: 图4 功能仿真图 源程序代码:1 bcd加法器module bcdadder(a,b,s0,s1,clear); /定义输入模块 input 3:0a; /考虑到a、b的值可能 /超过十进制数8,顾定义长度为4位;input 3:0b;input clear; /clear为复位信号output s0;output s1; reg 3:0s0;reg 3:0s1;reg 4:0c;reg 4:0t; /t为临时参数,c为进位,低位和值可能
7、超过16,所以定义t长 度为5;reg 4:0z;always (posedge clear) /以每一次复位上升沿到来开始计算和值;begint=a+b; /低位相加和值赋t;if(t9)beginz=10; /如果低位相加有进位,则赋值z=10;c=1; /如果t9,则有进位,此时c=1;endelsebeginz=0;c=0;end begins0=t-z; /和值s0到s1赋值;s1=c;endendendmodule2 输入数a、b显示module indisplay(a,b,displaya,displayb);input 3:0a;input 3:0b;output 6:0dis
8、playa; output 6:0displayb; /定义7段数码管的输出; reg 6:0displaya; /定义其类型为寄存器类型;reg 6:0displayb;always(a or b) /当输入a 、b中任何一位变化,即执行输入显示程序;begincase(a) /输入a显示4d0:displaya=7b1000000;4d1:displaya=7b1111001;4d2:displaya=7b0100100;4d3:displaya=7b0110000;4d4:displaya=7b0011001;4d5:displaya=7b0010010;4d6:displaya=7b0
9、000010;4d7:displaya=7b1011000;4d8:displaya=7b0000000;4d9:displaya=7b0010000;default: displaya=7b1000000; /默认时,数码管显示数字“0”;endcasecase(b) /输入b显示4d0:displayb=7b1000000;4d1:displayb=7b1111001;4d2:displayb=7b0100100;4d3:displayb=7b0110000;4d4:displayb=7b0011001;4d5:displayb=7b0010010;4d6:displayb=7b00000
10、10;4d7:displayb=7b1011000;4d8:displayb=7b0000000;4d9:displayb=7b0010000;default:displayb=7b1000000; /默认时,数码管显示数字“0”;endcaseendendmodule3 输出显示module display(s0,s1,display1,display2);input3:0 s0;input3:0 s1;output6:0 display1;output6:0 display2;reg6:0 display1;reg6:0 display2;always (s0 or s1 ) /当和值s中
11、的任何一位变化,就开始执行显示程序;begincase(s0) /和值第一位s0显示;4d0:display1=7b1000000;4d1:display1=7b1111001;4d2:display1=7b0100100;4d3:display1=7b0110000;4d4:display1=7b0011001;4d5:display1=7b0010010;4d6:display1=7b0000010;4d7:display1=7b1011000;4d8:display1=7b0000000; /默认时,数码管显示数字“0”;4d9:display1=7b0010000;default: d
12、isplay1=7b1000000; /默认时,数码管显示数字“0”;endcasecase(s1) /和值第二位s1显示;4d0:display2=7b1000000;4d1:display2=7b1111001;4d2:display2=7b0100100;4d3:display2=7b0110000;4d4:display2=7b0011001;4d5:display2=7b0010010;4d6:display2=7b0000010;4d7:display2=7b1011000;4d8:display2=7b0000000;4d9:display2=7b0010000;default:display2=7b1000000; /默认时,数码管显示数字“0”;endcaseendendmodule三、课程设计体会通过本实验,再次熟悉verilog hdl编程程序,对其中的case 、if else等语法运用有了更深的了解,掌握了bcd码加法器的逻辑原理,学会如何逐步分析,从而推导出程序顺序。在编辑程序时,开始时t0、t1的值是利用语法
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 玉晶光电考试题及答案
- 安徽电工试题及答案
- 皮革考试题库及答案
- 2025年苏叶相关题目及答案
- 工程控制基础考试试题及答案
- 城南旧事测试卷及答案
- 湖北省荆州石首市2024-2025学年第一学期三年级科学期中质量监测(含答案)
- 2025年小学电路试题及答案
- STEM地球我们的家园课件
- 少儿美术考级题库及答案
- 学校防坠楼安全知识培训课件
- 护士长领导力提升与团队管理技巧
- 医院等级评审护理组工作汇报
- 产前筛查答案及试题(附答案)
- 2025年中国保密在线考试题库及答案
- 保密观试题含答案2025年
- 应急救援人员的心理培训
- DB11T 2441-2025 学校食堂清洁和消毒规范
- DB42T 1917.1-2022 中药材 水蛭(日本医蛭)养殖与加工技术规程 第1部分:种苗繁育
- 头疗课件培训
- 公司适用法律法规标准清单2025年08月更新
评论
0/150
提交评论