




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
学学 号:号: 201140410337 课课 程程 设设 计计 题题 目目硬件加减法器的设计硬件加减法器的设计 教教 学学 院院计算机学院计算机学院 专专 业业计算机科学与技术计算机科学与技术 班班 级级2011 级(级(3)班)班 姓姓 名名张勇张勇 指导教师指导教师高高 芹芹 2013 年1月20日 课程设计任务书课程设计任务书 20122013 学年第 1 学期 学生姓名:学生姓名: 张勇张勇 专业班级:专业班级:计算机科学与技术(计算机科学与技术(3 3)班)班 指导教师:指导教师: 高芹高芹 工作部门:工作部门: 计算机学院计算机学院 一、课程设计题目一、课程设计题目 硬件加减法器的设计 二、课程设计内容二、课程设计内容(含技术指标) 1利用 quartus 软件设计 8 位的补码加减法电路。 方案一:用原理图设计法设计 8 位行波进位加减法器。 方案二:用原理图设计法设计 8 位超前进位加法器。 方案三:用 vhdl 设计法设计 8 位加减法器。 2. 输入两个 8 位数据分别存放在 a、b 寄存器中,通过计算,将结果 y 以十进制显示在数码 管上,并判断是否产生溢出,用 v 表示,如果溢出,使蜂鸣器报警。 总体框图参考下图: 加减法器 ab y in(70) ldb lda v i 三、进度安排三、进度安排 1.2012 年 12 月 29 日,课题讲解,布置任务 2.2012 年 12 月 30 日到 2013 年 1 月 4 日,查阅资料,分析、讨论与设计 3.2013 年 1 月 5 日到 8 日,进行各子模块的设计,并进行调试 4.2013 年 1 月 9 日到 10 日完成各模块联调,进行测试 5.2013 年 1 月 11 日,成果验收,进行答辩 四、基本要求四、基本要求 1.能够熟练掌握计算机中补码加法减法的计算方法及溢出判断方法; 2.掌握硬件描述语言 vhdl 及原理图设计方法; 3.熟练掌握 quartus ii 软件平台; 4.各小组按模块分工,每人独立完成自己负责的模块; 5.合作完成最终的硬件下载及调试; 6.独立撰写符合要求的课程设计报告。 ii 目 录 1 课程设计概述课程设计概述 .4 1.1 课设目的 4 1.2 设计任务 4 1.3 设计要求 4 2 实验原理与环境实验原理与环境6 2.1 实验原理 6 2.2 实验环境 7 3 总体方案设计总体方案设计 .8 3.1 需求分析 8 3.2 硬件设计 8 4 详细设计与实现详细设计与实现10 4.1 硬件实现 10 5 实验过程与调试实验过程与调试14 5.1 仿真14 5.2 主要故障与调试 16 5.3 功能测试 16 5.4 实验流程图 18 6 设计总结与心得设计总结与心得19 6.1 课设总结 19 6.2 课设心得 19 参考文献参考文献.21 3 1课程设计概述 1.1 课设目的 计算机组成原理是计算机专业的核心专业基础课。课程设计属于设计型实验, 不仅锻炼学生简单计算机系统的设计能力,而且通过进行设计及实现,进一步提高 分析和解决问题的能力。 (1)学习从书籍以及实践的经历方面去获取知识加强自我学习的能力,对计算机 组成原理更进一步的了解,从而锻炼自己的动手能力实践课本上的知识来加深对知 识的掌握。 (2)掌握硬件描述语言 vhdl 及原理图设计方法;掌握 quartuc ii 软件平台。 (3)培养小组团队间的团结合作精神 1.2 设计任务 加减法器的目的是利用 quartus 软件设计 8 位的补码加减法电路,实现八位二 进制数的加减运算,通过指示灯亮暗来判断结果,并且用一个信号灯判断是否溢出。 具体设计任务如下: 1输入两个 8 位数据分别存放在 a、b 寄存器中,通过计算,将结果 y 显示在 数码管上,并判断是否产生溢出,用 v 表示,如果溢出,使蜂鸣器报警。 2.用原理图设计法设计 8 位行波进位加减法器。 1.3 设计要求 根据理论课程所学的至少,设计出简单计算机系统的总体方案,结合各单元实 验积累和课堂上所学知识,选择适当芯片,设计简单的计算机系统,具体要求如下: 4 (1) 根据课设指导书的要求,制定设计方案。 (2) 设计一个八位二进制数的寄存器。 (3) 设计一个一位二进制数的加减法器。 (4) 画出自己所涉及加减法器的原理图和器件连接引脚。 (5) 设计硬件电路,载入试验箱实现功能。 5 2 实验原理与环境 2.1 实验原理 运用到数字逻辑与计算机组成原理知识,包括逻辑电路的设计,及加减法器的 原理,根据运算的过程得到方程,从而画出原理图。 一位全加器的原理为,两个二进制数 ai,bi 和一个进位输入 ci 相异或,产生 一个和输出 si,以及一个进位输出 ci+1。表中列出一位全加器 fa 进行加法运算的 输入输出真值表 2.1。 表 2.1 一位全加器真值表 输入输出 ai bi cisi ci+1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 0 0 1 0 1 0 0 1 1 0 0 1 0 1 1 1 根据表所示的真值表,三个输入端和两个输出端可按如下逻辑方程进行联系: s i=aibici ci+1=aibi + bici+ ciai 而八位二进制的加法器则是有这样的二进制加法器串联而成,如图 2.2,其 中 m 用高低电压来控制,低电压时 m=0,此时做加法(a+b)运算,高电压时 m=1,此时做减法a 补+(-b)补运算 ,而 v 控制溢出。 6 图 2.2 八位二进制加法器原理图 n=8 2.2 实验环境 (1)试验台设备 eda 试验箱 (2)设计开发软件 quartus 7 3 总体方案设计 3.1 需求分析 根据总体结构图我们知道,此图需要两个输入和一个加减法器,这是实验的主体, 因此需要两个八位的寄存器和一个八位二进制的加减法器,而八位二进制加减法器 可有八个全加器组成而寄存器则用代码程序得到。 3.2 硬件设计 3.2.1总体设计 采用的是硬件设计,设计硬件电路,主要设计出寄存器和加法器,实现八位二 进制数的运算,其中八位二进制寄存器采用 vhdl 语言程序生成。加法器 fa 则采 用一位加法器生成。 总体结构图如所示。 图 3.1 总体结构图 加减法器 ab y in(70) ldb lda v 8 3.2.2 全加器全加器 从 ai 和 bi 输入端,输入数,ci-1 为上一位的进位,三个从相异或,产生 一个输出 si 和一个进位 ci,如此运算。 图 3.2 一位全加器 fa 3.2.33.2.3 寄存器寄存器 寄存器为八位寄存器,是由 vhdl 语言所写的程序生成,如下所示, 其中包括八位输入和八位输出以和一个控制信号 lda。d0-d7 为八个输入端, q0-q7 为八个输出端,lda 用于寄存器控制输入信号。 图 3.4 八位寄存器 9 4 详细设计与实现 4.1硬件实现 4.1.1 全加器硬件原理图 如图 4.1 所示,进位链采用一个或门。该原理图为一位全加器,其中结果 s i 由 三个输入信号 ai、bi、ci-1 异或得到,信号 ci 为进位。 图4.1 一位加法器原理图 4.1.2 寄存器实现 在 quartus 软件上用程序如下: library ieee; use ieee.std_logic_1164.all; entity reg is port(d0: in std_logic; 10 d1: in std_logic; d2: in std_logic; d3: in std_logic; d4: in std_logic; d5: in std_logic; d6: in std_logic; d7: in std_logic; lda: in std_logic; q0:out std_logic; q1:out std_logic; q2:out std_logic; q3:out std_logic; q4:out std_logic; q5:out std_logic; q6:out std_logic; q7:out std_logic ); end entity reg; architecture bhv of reg is begin process (d0,d1,d2,d3,d4,d5,d6,d7,lda) begin if lda =1 then q0= d0; q1= d1; 11 q2= d2; q3= d3; q4= d4; q5= d5; q6= d6; q7= d7; end if; end process; end bhv; 从而生成了下图八位寄存器,而程序定义了 16 个输入输出和 1 个控制键。 图 4.2 八位寄存器 4.2 总体原理图总体原理图 全图由八个全加器相互串联组成八位加减法,并且由两个八位的寄存器 a 和 b 组成输入设备。其中 m 用高低电压来控制,低电压时 m=0,此时做加法(a+b) 运算,高电压时 m=1,此时做减法a 补+(-b)补运算 ,而 v 控制溢出。 12 图 4.3 总体结构原理图 13 5 实验过程与调试 5.1 仿真 将 m 置为 0 做加法,高电平为 1,低电平为 0,置 lda、ldb 为 1,分别为 a 和 b 赋值,a 为 10010010,b 为 00000001,结果 s 为 10010011,v 为 0,未溢出。 图 5.1 如下仿真图 14 将 m 置为 1 做减法,分别给 a、b 赋值,a 为 10010000,b 为 00000101,结果 s 为 10001011,v 为 0,未溢出,如下仿真图。 图 5.2 如下仿真图 15 5.2 主要故障与调试 5.2.1 故障 1 用 vhdl 语言编写的生成全加器的程序调试出错。 调试与分析:调试与分析:由于刚开始时只用一个 dn 和 qn 用循环语句来表示输入和输出, 导致只有一个总的一根线来表示输入,但是八位加减法器 a 有八根线,八个引脚, 无法连接,导致总的原理图不正确,最后将 dn 用 d0 到 d7 分别定义和 qn 用 q0 到 d7 分别定义从而解决了八个引脚的问题。 5.2.2 故障 2 将逻辑电路载入芯片后,连接线路完成,但是试验箱不能正常运行。 调试与分析:调试与分析:刚开始时按原理图连接完实验需要的所有线后,安装了驱动后, 但是仍然不能输出,检查了原理图、逻辑电路和实验箱连线并进行了仿真无错误, 最后进行各排查,确认是连接高电压的电线不能导电,最后换掉后实现输出的运行。 5.3 功能测试 本次课程设计中,根据方程设计出一位全加器 fa,进行八位运算只需要使用八 个 fa 即可,将进位连接好,输入与寄存器相连,并设计好运算控制信号 m 和溢出 判断信号 v。待电路连接好后便可进行测试。 题目题目 1:00000001+00000001 程序流程为程序流程为:将 m 置为 0 做加法,高电平为 1,低电平为 0,置 lda、ldb 为 1,分别为 a 和 b 赋值,a 为 00000001,b 为 00000001,结果 s 为 00000010,v 为 0,未溢出。 程序运行结果程序运行结果: 16 图 5.3 运行结果模拟图 题目题目 2:10000000-00000001 程序流程为程序流程为:将 m 置为 1 做减法,分别给 a、b 赋值,a 为 10000000,b 为 00000001,结果 s 为 10001011,v 为 0,未溢出。 程序运行结果程序运行结果: 5.4 运行结果模拟图 17 5.4 实验流程图 1. 2012 年 12 月 29 日,课题讲解,布置任务 2. 2012 年 12 月 30 日到 2013 年 1 月 4 日,查阅资料,分析、讨论与设计 3. 2013 年 1 月 5 日到 8 日,进行各子模块的设计,并进行调试 4. 2013 年 1 月 9 日到 10 日完成各模块联调,进行测试 5. 2013 年 1 月 11 日,成果验收,进行答辩 18 6 设计总结与心得 6.1 课设总结 基于八位二进制数的的加减法,采用方案是用原理图设计法设计八位行波进位 加减法器,主要用于计算机中的基本运算。 (1) 完成方案总结 这个实验主要是实现加减法器,首先在 quartus ii 上画出 一个全加器的原理图然后再将其转化为一个全加器的元器件,最后将八个全加器串 联并用一个非门控制加减法,从而实现了八位二进制的加减法器。实现全加器的方 程:s i=aibici ci+1=aibi + bici+ ciai。从而在 quartus ii 画出整个原 理图。 (2)功能总结 首先将原理图的功能从电脑写入实验箱的芯片中,首先, lda,ldb 高电压,m 用高低电压来控制,低电压时 m=0,此时做加法(a+b)运 算,高电压时 m=1,此时做减法a 补+(-b)补运算 ,结果用亮灯来表示,而 v 控制溢出,溢出则显示器亮红灯。 6.2 课设心得 做这次课程设计,我学会了很多,首先锻炼了自己的动手,实践能力,本来自己就 对电子技术不感兴趣的,学的很无趣,基本不懂 ,但是这次课程设计的硬件加减法 器的设计让自己死啃电子技术,必须清楚硬件布线和逻辑电路,而主要为加法器的 逻辑图和整个原理图的设计,而我们知道八位加法器重点为怎样生成八位寄存器和 八位二进制的加减法器。当然这就涉及生成八位寄存器的代码和一位二进制的全加 器怎么转换为八位二进制的加法器和怎样变加法器为减法器 ,我们首先从老师那里 得到八位寄存器的代码,但是那是只有一根将八根输入或输出总起来输入和输出, 19 和我们需要分别有八根输入和输出的代码有很大区别,因此我们试着将一个循环的 代码改为一个分别定义八个输入和输出的代码,而八个全加器则串联生成了八位二 进制的加法器,这样基本将一个八位二进制的加法器设计成功,而加法器变减法器 则用一个非门来控制 b 的输入,从而到达减法器的目的, 当然这次的课设也锻炼了 我们对 quartus ii 软件的掌握,对怎样去用这软件画 逻辑图和怎样利用这个软件 把这个原理图的功能写入到芯片中,这些都需要我们
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 产品涂装合同样本
- 公园投资经营合同标准文本
- 仓库电梯维修合同标准文本
- 公司购买商铺合同标准文本
- 传媒内部合同样本
- 入股种植合同样本
- 公租房服务合同标准文本
- 书面保险合同样本
- 2025股权代持合同协议样本
- 个人买卖机器合同样本
- 医院处方笺模板
- 【工程项目施工阶段造价的控制与管理8100字(论文)】
- XX学校推广应用“国家中小学智慧教育平台”工作实施方案
- 非遗文化创意产品设计 课件全套 第1-5章 概述- 非遗文创产品设计案例解析
- 法律尽职调查所需资料清单
- 幼儿园中班安全教育活动《紧急电话的用途》
- 118种元素原子结构示意图
- 英语四线三格Word版
- 幼儿园行政工作制度
- 广州新华学院
- 部编版七年级下册道法期中试卷1
评论
0/150
提交评论