使用硬件描述语言设计四位并行加法器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
东华理工大学信息工程学院
课程设计报告
课程:计算机组成与体系结构
课程设计题目:使用硬件描述语言设计四位并行加法器
学生姓名:
专业:计算机科学与技术
班级:
指导教师:
2013年1 月6 日
摘要
本课程设计是计算机科学与技术专业重要的实践性教学环节之一,是在学生学习完《计算机组成原理》课程后进行的一次全面的综合设计。
目的是通过使用硬件描述语言设计四位并行加法器,加深对计算机组成原理课程内容的理解,建立起整机系统的概念,掌握计算机设计的基本方法,培养学生科学的工作作风和分析、解决实际问题的工作能力。
要求学生综合运用计算机组成原理、数字逻辑和ABEL硬件描述语言等相关课程的知识,理解和熟悉计算机系统的组成原理,掌握计算机主要功能部件的工作原理和设计方法,掌握并行加法器的原理及其设计方法,熟悉CPLD 应用设计及EDA 软件的使用。
本课程设计用硬件描述语言设计组合逻辑电路——4位并行加法器,并且通过软件进行电路的仿真,将仿真好的程序下载到实验箱中。
关键词:ABEL硬件描述语言,ispDesignEXPERT,四位并行加法器
目录
摘要 (2)
1 课程设计内容与要求 (4)
2 课程设计的实验设备 (4)
3课程设计的实验原理 (4)
4 TDN-CM++教学实验系统 (5)
5 ABEL硬件描述语言简介 (6)
6 ISP器件的编程软件介绍 (7)
7课程设计实验步骤 (8)
7.2建立新项目 (8)
7.3编辑源程序 (9)
7.4对源程序进行编译 (11)
7.5连接下载电缆 (13)
7.6将JEDEC 文件下载到ispLSI1032 (13)
7.7连接实验电路 (13)
7.8 验证所设计器件的逻辑功能 (14)
7.9 实验结果及问题 (14)
8课程设计的收获及体会 (14)
参考文献 (15)
1 课程设计内容与要求
内容:
熟悉可编程逻辑器件开发软件的开发环境,掌握用硬件描述语言设计的操作流程,最后用硬件描述语言设计组合逻辑电路—— 4 位加法器,并且通过软件进行电路的仿真,将仿真好的程序下载到实验箱中。
基本要求:
1 、掌握在可编程逻辑器件开发软件的开发环境中用硬件描述语言设计数字电路的方法
2 、掌握用硬件描述语言设计4 位加法器的方法
3 、将编写好的硬件描述语言程序进行仿真并下载到可编程逻辑器件中去
2 课程设计的实验设备
1.TDN-CM+或TDN-CM++教学实验系统一套。
2.PC 微机一台。
3课程设计的实验原理
本节实验使用大规模可编程逻辑器件CPLD 来设计实现一个 4 位的并行进位加法器。
传统的数字系统设计只能是通过设计电路板来实现系统功能,而采用可编程逻辑器件,则可以通过设计芯片来实现系统功能。
从而有效地增强了设计的灵活性,提高了工作效率。
并能够缩小系统体积,降低能耗,提高系统的性能和可靠性。
实验系统中采用的器件是Lattice 公司的ispLSI 1032 芯片,isp 是指芯片具有“在系统可编程功能”,这种功能可随时对系统进行逻辑重构和修改,而且只需要一条简单的编程电缆和一台PC 计算机就可以完成器件的编程。
ispLSI1032 芯片的等效逻辑门为6000 门,具有128 个宏单元,192 个触发器和64 个锁存器,其共有84 个引脚,其中64 个为I/O 引脚。
ispLSI1032 芯片的结构图如图 2.1-3 所示。
对该器件的逻辑系统设计是通过使用硬件描述语言或原理图输入来实现的,硬件描述语言有ABEL、VHDL等多种语言,本节实验是使用硬件描述语言来进行编程的。
下面用ABEL语言编程来实现上述加法器,该加法器采用并行进位,有两组四位加数A3~A0、B3~B0输入,四位本地和F3~F0 输出,一个低位进位C0输入及一个本地进位CY输出。
系统采用ispDesignEXPERT 软件来对可编程逻辑器件ispLSI1032 进行编程设计实验。
ispDesignEXPERT 可采用原理图或硬件描述语言或这两种方法的混合输入共三种方式来进行设计输入,并能对所设计的数字电子系统进行功能仿真和时序仿真。
其编译器是此软件的核心,它能进行逻辑优化,并将逻辑映射到器件中去,自动完成布局与布线并生成编程所需要的熔丝图文件。
该软件支持所有Lattice 公司的ispLSI 器件。
4 TDN-CM++教学实验系统
“TDN-CM++计算机组成原理与系统结构教学实验系统”是西安唐都科教仪器公司推出的一套高效的、开放性的教学实验系统,该系统可以通过对多种原理性计算机的设计、实现和调试来高效率地支持“计算机组成原理”和“计算机系
统结构”等课程的开放式实验教学,为高校各个教学层次的计算机原理教学提供了完善的解决方案。
实验系统安装有一个标准的DB 型9 针RS-232C 串口插座,使用配套的串行通信电缆分别插在实验系统及PC 微机的串口,即可实现系统与PC 微机的联机操作。
系统配套的集成操作软件具有专为联机操作而开发的图形方式操作界面,其操作简便、直观,具有动态调试功能,可以完全根据实验系统的数据通路图来实时、动态地显示读者设计的实验数据流的流向、数据值、控制线和各单元的内容。
本系统软件是通过PC 微机串行口向实验系统上的单片机控制单元发送指令,由实验系统的单片机直接对程序存储器、微程序控制器进行读和写,控制单拍或单步微程序、单步机器指令和程序连续运行等操作,实时监测各数据流和控制流,从而实现实时动态图形方式下的系统跟踪调式和运行。
系统通信电缆连接方式如图1.3-1 所示。
5 ABEL硬件描述语言简介
ABEL硬件描述语言是美国DATAI/O公司开发的一种高级可编程逻辑设计硬件描述语言。
它允许设计者以逻辑图、表达式、状态图以及真值表等方式描述逻辑设计,准确地反映设计思想。
ABEL语言不需要设计者详细了解PLD器件的内部结构,只要求输入符合语法规定的逻辑描述,就能实现各种不同功能的逻辑系统,同时还可以进行逻辑系统的化简、仿真和验证。
由于ABEL硬件描述语言的独立性以及上至系统、下至门级的宽口径描述功能和宽松的数据格式,因此可以方便地适用于各种不同规模的可编程器件设计(包括CPLD、FPGA)。
ABEL源文件由一个或多个模块组成,每个模块包括一个或多个完整的逻辑描述。
简单的源文件可能只包括一个模块,而复杂的源文件可能包括大量的模块,这些模块会同时被ABEL软件编译处理。
下面为复杂的ABEL源文件的基本格式。
可见.ABEL的每个模块都必须以关键字“MODULE”和模块名开始,以关键字“END”和模块名结束。
ABEL硬件描述语言还能通过开发系统将其设计转换成目前热门的其它语言描述,如VHDL、Verilog-HDL等。
与VHDL、Verilog-HDL等语言相比,ABEL硬件描述语言格式简洁、入门容易,是一种容易掌握的硬件描述语言,用于GAL器件的开发非常合适。
下面关于ABEL语言的语法、格式、语句的叙述比较冗长,但又是必需的。
6 ISP器件的编程软件介绍
ispDesignEXPERT是由lattice公司提供的一种通用电子设计软件。
它支持ABEL-HDL语言、VHDL语言、原理图三种电子设计方式,以及这些设计方式的混合使用。
它能对所设计的数字系统进行功能模拟和时序模拟,能对设计进行逻辑优化,并将逻辑映射到器件中去,自动完成预布线,生成编程所需的熔丝图文件,通过下载电缆下载到器件中。
ispDesignEXPERT在Windows平台上运行,它支持层次设计,并具有十分友好的人机界面。
ispEXPERT中的项目导航器引导设计一步步进行,最终生成器件编程所需的JEDEC文件,并下载到ISP器件中。
项目导航器是一个很好的设计工具,便于用户跟踪软件的运行流程。
用ispDesignEXPERT对可编程器件进行设计,除了确定设计思想等必需的准备工作外,大部分工作在计算机上进行。
整个设计工作流程大致可分为创建新
设计项目、选择器件、输入源文件或原理图、编译与优化、逻辑模拟、连接和器件适配等若干过程。
7课程设计实验步骤
为了学习以硬件描述语言来进行编程,描写器件功能,下面用ABEL 语言编程来实现上述加法器,步骤如下:
7.1安装EDA 软件
打开计算机电源,进入Windows 系统,安装上述ispDesignEXPERT 软件。
安装完成后,桌面和开始菜单中则建有ispDesignEXPERT 软件图标。
7.2建立新项目
用鼠标双击该软件图标,则出现其操作界面ispDesignEXPERT Project Navigator。
在界面左上角File 菜单中点New Project ...或点击左上角“新建”图标,则出现界面Create New Project ,在其中Project 栏中输入Untitled,在Project type 栏中选Schematic/ABEL,并点保存,则在Sources in Project 栏中建立了新的项目。
如下图所示:
双击第一行Untitled 对该项目命名,在名称栏中填入ALU_EX 并点OK。
双击第二行选择器件。
根据实验系统中所使用的器件型号,例如对ispLSI1032-60LJ 这一器件,在Family 栏中选ispLSI 1K Device,在Device栏中选ispLSI1032,在Speed Grade栏中选60,在Package 栏中选84PLCC ,点OK ,再用Yes 确定,则选定器件为ispLSI1032-60LJ84。
如下图所示:
7.3编辑源程序
单击界面左下角的按钮New... ,则出现界面New Source :(Schematic/ABEL),在其中选择ABEL-HDL Module ,点击按钮OK,如下图所示:
则出new ABLE-HDL source窗口,输入模块名称和文件名并点OK,如下图所示:
就可在出现的源程序编辑界面中输入源程序了。
输入完成后,将其存盘并退出编辑界面。
如下图所示:
上述并行加法器设计用ABEL 语言来描述程序如下:
MODULE alu
TITLE '4 bit adder'
"Inputs
A4,A3,A2,A1 PIN 38,39,40,41;
B4,B3,B2,B1 PIN 34,35,36,37;
C0 PIN 52;
"Outputs
F4,F3,F2,F1 PIN 6,5,4,3;
CY PIN 10;
"V AR
A=[0,A4,A3,A2,A1];
B=[0,B4,B3,B2,B1];
C=[0, 0, 0, 0,C0];
F=[CY,F4,F3,F2,F1];
"
EQUATIONS
"
F = A + B + C;
"
END
7.4对源程序进行编译
在左方Sources in Project栏中选中第二行ispLSI1032-70LJ84 ,在右方Processes for Current Source 栏中双击第七行JEDEC File ,则开始编译。
如果编译正确,则生成可下载的文件JEDEC File ,即使出现警告提示,也表明成功生成了可下载文件。
如果提示错误,则需修改程序,然后重新编译。
如下图所示:
7.5连接下载电缆
在打开PC 计算机和实验系统的电源之前,将下载电缆的一端与PC 计算机的打印机口相连接,另一端与实验系统中的ispLSI1032 器件编程接口相连。
7.6将JEDEC 文件下载到ispLSI1032
首先打开实验系统的电源。
在以上界面菜单Tools 中点击ispDCD,则进入文件下载界面。
在下载界面中,点击菜单Configuration 中的Scan Board 项或SCAN 图标,则出现扫描界面,其下方的信息显示已检测到ISP 芯片电路。
然后点按钮BROWSE ,在其中选择要下载的文件ALU.JED。
并在Command 菜单中,点Run Operation in Sequential Mode 项或Run Operation图标,则进入文件下载过程。
在进行下载时,实验系统下载电路的指示灯闪烁。
下载完成后,界面下方显示下载过程是否正确的有关信息。
7.7连接实验电路
按图2.2-3 连接实验电路,其中ispLSI1032 的输入输出引脚已在程序中定义。
7.8 验证所设计器件的逻辑功能
本实验所设计的是一个4位并行进位加法器,实验中用INPUTDEVICE单元的高4位为B3~B0,低4位为A3~A0,以总线单元的低4位B3~B0 发光二极管来显示运算结果。
B7位来显示进位输出。
而低位进位输入由一个开关AR 来给出。
使SWITCH UNIT单元中的开关SW-B=0(打开数据输出三态门),拨动INPUT DEVICE单元的输入开关置A和B的值,然后从总线单元的显示灯来观察运算结果。
7.9 实验结果及问题
实验中对源程序进行编译时出现错误,后来仔细查看代码后发现漏写了一个分号,最后多次连线多没有得出最后正确的结果,后来和几个同样做加法器的同学一起讨论,并在老师的指导下发现时引脚没有绑定,导致没有结果,由于实验室设备原因,下载电缆线等问题最终并没有完成实验结果,但是理论上完成了本次实验。
8课程设计的收获及体会
经过这次课程设计我了解了很多知识,也学到了一些课本中没有的知识点,实践给我们带来了很多快乐,但是在这快乐中我们有着艰辛,在我们接完线的时候,去运行机器总是出错,我们一步一步的检查,到最后一遍又一遍的重新连线,到最后终于成功了,心里有着一般人没有的喜悦。
这次的课程设计加强了我的动手、思考和解决问题的能力。
巩固和加深了对
计算机并行加法器的理解,提高综合运用所学知识解决问题的能力。
培养了我们选用参考书,查阅手册及文献资料的能力。
培养独立思考,深入研究,分析问题、解决问题的能力。
通过ispDesignEXPERT 软件的使用让我对其中的原理能清楚的掌握。
此外还培养了我严肃认真的工作作风 逐步建立正确的生产观念、经济观念和全局观念。
而且做课程设计同时也是对课本知识的巩固和加强。
平时看课本时,有些问题就不是很能理解,做完课程设计,那些问题就迎刃而解了。
而且还可以记住很多东西。
认识来源于实践,实践是认识的动力和最终目的,实践是检验真理的唯一标准。
所以这个期末测试之后的课程设计对我们的作用是非常大的。
这次的课程设计使我懂得了理论与实际相结合是很非常重要的。
只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。
在整个设计过程中,构思是很花费时间的。
但是在老师的帮助下,我们在电路中遇到的关于编辑、编译、调试、仿真中的问题都一一解决了。
当然,有时用错了方法,总是实现不了。
同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。
通过这次的课程设计让我更加了解到计算机组成原理的重要性。
以及它对我们专业的发展发挥的作用。
对我们而言,知识上的收获很重要,但精神上的丰收更加可喜。
让我知道了学无止境的道理。
我们每一个人永远不能满足于现有的成就。
人生就像在爬山,一座山峰的后面还有更高的山峰在等着你。
挫折是一份财富,经历是一份拥有。
这次课程设计必将成为我人生旅途上一个非常美好的回忆,同时在做课程设计时要能够从多方面去考虑,去研究,用多种方法去实现要求。
此次课程设计我学到了很多课内学不到的东西。
比如独立思考解决问题,出现差错的随机应变能力。
这些都让我受益非浅。
今后的制作应该能够更轻松,自己也都能够解决并高质量的完成项目。
参考文献
1. 计算机组成原理教学实验设备及实验指导书 THTJZ-2型
2. 《计算机组成原理》科学出版社白中英著
3. 《计算机组成与体系结构》清华大学出版社王诚宋佳兴著
东华理工大学信息工程学院
课程设计评分表
学生姓名:洪室平班级:10204102
学号:1020410211 课程设计题目:使用硬件描述语言设计四位并行加法器
项目内容满分实评
选题能结合所学课程知识、有一定的能力训练。
符合选题要求
(5人一题)
10 工作量适中,难易度合理10
能力水平能熟练应用所学知识,有一定查阅文献及运用文献资料能力10 理论依据充分,数据准确,公式推导正确10
能应用计算机软件进行编程、资料搜集录入、加工、排版、
制图等
10 能体现创造性思维,或有独特见解10
成果质量总体设计正确、合理,各项技术指标符合要求。
10 说明书综述简练完整,概念清楚、立论正确、技术用语准确、
结论严谨合理;分析处理科学、条理分明、语言流畅、结构
严谨、版面清晰
10
设计说明书栏目齐全、合理,符号统一、编号齐全。
格式、
绘图、表格、插图等规范准确,符合国家标准
10 有一定篇幅,字符数不少于5000 10
总分100
指导教师评语:
指导教师签名:
年月日。