八层电梯vhdl实现课程设计报告.docx
《八层电梯vhdl实现课程设计报告.docx》由会员分享,可在线阅读,更多相关《八层电梯vhdl实现课程设计报告.docx(62页珍藏版)》请在冰豆网上搜索。
![八层电梯vhdl实现课程设计报告.docx](https://file1.bdocx.com/fileroot1/2023-6/9/26a335b2-2ca0-4840-97e0-3fbc80ca3ab3/26a335b2-2ca0-4840-97e0-3fbc80ca3ab31.gif)
八层电梯vhdl实现课程设计报告
北京工业大学
VLSI版图设计
课程设计报告
姓名:
学号:
月10年2014
八层电梯vhdl实现课程设计报告
目录................................................................................................................................1
1绪论.........................................................................................................................3
1.1集成电路的前世今生..................................................................................3
1.1.1集成电路出现....................................................................................3
1.1.2集成电路的现状................................................................................3
1.2VHDL语言简介..........................................................................................5
2课题功能设计与仿真.............................................................................................6
2.1课设设计思路和模块划分..........................................................................6
2.1.1课设主要功能....................................................................................6
2.1.2课设设计思路....................................................................................6
2.1.3课设模块划分....................................................................................6
2.2主程序模块(dt.vhd)功能设计与仿真....................................................7
2.2.1输入输出管脚及程序中定义变量介绍............................................7
2.2.2设计原理............................................................................................7
2.2.3主程序模块(dt.vhd)原程序.........................................................9
2.2.4主程序模块(dt_t.vhd)测试程序................................................16
2.3电梯所在楼层七段数码显示模块(seg.vhd)功能设计与仿真............17
2.3.1输入输出管脚及程序中定义变量介绍..........................................17
2.3.1设计原理..........................................................................................17
2.3.2电梯所在楼层七段数码显示模块(seg.vhd)原程序.................18
2.3.3电梯所在楼层七段数码显示模块(seg_t.vhd)测试程序..........18
2.4电梯运行状态数码点阵显示模块(dian.vhd)功能设计与仿真..........19
2.4.1输入输出管脚及程序中定义变量介绍..........................................19
2.4.2设计原理..........................................................................................20
2.4.3电梯运行状态数码点阵显示模块(dian.vhd)原程序................20
2.4.4电梯运行状态数码点阵显示模块(dian_t.vhd)测试程序.........21
2.5顶层综合程序(top.vhd)........................................................................22
2.5.1综合程序(top.vhd)连线图.........................................................22
2.5.2综合程序(top.vhd)原程序.........................................................22
2.5.3综合程序(top_t.vhd)测试程序..................................................25
3课题设计实现.......................................................................................................27
3.1各个模块仿真波形截图............................................................................27
3.1.1主程序模块仿真波形图..................................................................27
1
八层电梯vhdl实现课程设计报告
3.1.2电梯所在楼层七段数码显示模块仿真波形图..............................28
3.1.3电梯运行状态数码点阵显示模块仿真波形图..............................28
3.1.4顶层综合程序仿真波形图..............................................................29
3.2Dc和icc仿真图........................................................................................30
3.2.1Dc仿真图........................................................................................30
3.2.2Icc仿真图........................................................................................32
4附:
篮球三十秒原程序和仿真截图...................................................................33
4.1设计要求....................................................................................................33
4.2原程序与仿真程序....................................................................................33
4.2.1主程序(cnt30.vhd)......................................................................33
4.2.2主程序测试程序(cnt30_t.vhd)...................................................34
4.2.3七段译码显示程序(disp.vhd)....................................................35
4.2.4七段译码显示仿真程序(disp_t.vhd).........................................35
4.2.5顶层综合程序(top.vhd).............................................................36
4.2.6顶层综合测试程序(top_t.vhd)..................................................37
4.3测试仿真波形图........................................................................................38
5总结与体会...........................................................................................................40
参考文献......................................................................................................................41
2
八层电梯vhdl实现课程设计报告
1绪论
随着晶体管的出现,集成电路随之产生,并极大地降低了电路的尺寸和成本。
而由于追求集成度的提高,渐渐设计者不得不利用EDA、CAD工具设计集成电路的版图,这样大大提高了工作效率。
1982年诞生了VHDL(Very-High-Speed
IntegratedCircuitHardwareDescriptionLanguage)语言,而如今,在电子工程领域,VHDL已成为事实上的通用硬件描述语言。
本文主要介绍一种基于VHDL语言的八层电梯设计。
1.1集成电路的前世今生
1.1.1集成电路出现
集成电路(英语:
integratedcircuit,IC)、或称微电路(microcircuit)、微芯片(microchip)、芯片(chip)在电子学中是一种把电路(主要包括半导体设备,也包括被动组件等)小型化的方式,并通常制造在半导体晶圆表面上。
二十世纪中期前,在爱迪生效应的启发下,一些科学家发明了真空二极管、三极管,接着真空管得到了一些实际的应用,但是由于其体积巨大,不利于大规模电路的应用,而随着时代的发展,大规模电路的出现成为了必然,于是人们寻找另一种体积小又与电子管功能一样的器件。
1947年,约翰·巴丁、沃尔特·布喇顿和威廉·肖克利终于发明了晶体管,其中巴丁、布喇顿主要发明半导体三极管;肖克利则是发明PN二极管。
晶体管被认为是现代历史中最伟大的发明之一,在重要性方面可以与印刷术,汽车和电话等发明相提并论。
晶体管在当今社会的重要性主要是因为晶体管可以使用高度自动化的过程进行大规模生产的能力,因而可以不可思议地达到极低的单位成本。
晶体管发明并大量生产之后,其得到了大量的应用,从而取代了体积庞大的真空管在电路中的功能和角色。
与真空管相比,晶体管的体积明显缩小,而且速度也和快,功耗也比较低。
因为晶体管的低成本和后来的电子计算机,数字化信息的浪潮来到了。
由于晶体管体积较小,一些科学家想到了将其集成在一个电路上或者一块硅片上的思想。
随着20世纪中后期半导体制造技术进步,1958年杰克?
基尔比发明了第一个集成电路。
其中包括一个双极性晶体管,三个电阻和一个电容器,相较于现今科技的尺寸来讲,体积相当庞大。
虽然如此,但是它的出现也是具有重要的意义的。
1.1.2集成电路的现状
从杰克·基尔比发明了第一个集成电路到如今,集成电路的发展在摩尔定理的引导下已经发展到了一个新的高度,电子电路的设计越来越趋向于小型化和高3
vhdl实现课程设计报告八层电梯
速化,越来越多的应用已经由复杂的模拟电路转化为简单的数字逻辑集成电路。
根据一个芯片上集成的微电子器件的数量,集成电路可以分为以下几类:
小规模集成电路(SSI英文全名为SmallScaleIntegration,逻辑门10个以下或晶体管
100个以下)、中规模集成电路(MSI英文全名为MediumScaleIntegration,逻)、大规模集成电路(LSI英文全名为Large个101~1k或晶体管辑门11~100个ScaleIntegration,逻辑门101~1k个或晶体管1,001~10k个)、超大规模集成电路(VLSI英文全名为Verylargescaleintegration,逻辑门1,001~10k个或晶体管10,001~100k个)、甚大规模集成电路(ULSI英文全名为UltraLargeScale
Integration,逻辑门10,001~1M个或晶体管100,001~10M个)。
而根据处理信号的不同,可以分为模拟集成电路、数字集成电路、和兼具模拟与数字的混合信号集成电路。
仅仅在其开发后半个世纪,集成电路变得无处不在,电脑,手机和其他数字电器成为现代社会结构不可缺少的一部分。
这是因为,现代计算,交流,制造和交通系统,包括互联网,全都依赖于集成电路的存在。
甚至很多学者认为有集成电路带来的数字革命是人类历史中最重要的事件。
IC的成熟将会带来科技的大跃进,不论是在设计的技术上,或是半导体的制程突破,两者都是息息相关。
最先进的集成电路是微处理器或多核处理器的核心,可以控制电脑到手机到数字微波炉的一切。
存储器和特定应用集虽然设计开发一个复杂集成电路的成本非常高,但是当分散到通常以百万计的产品上,每个集成电路的成本最小化。
集成电路的性能很高,因为小尺寸带来短路径,使得低功率逻辑电路可以在快速开关速度应用。
成电路是其他集成电路家族的例子,对于现代信息社会非常重要。
“集成电路中的晶体管数量,每1.5年增加一倍。
”从戈登·摩尔提出这个定理之后,集成电路基本上按照这个趋势进行,但是随着集成度的提高,集成电路的发展必定会遇到瓶颈。
目前集成电路发展道路上存在的一些亟待攻克的问题:
器件物理极限问题,光刻工艺问题,互连线限制问题等。
(图1)
4
八层电梯vhdl实现课程设计报告
1.2VHDL语言简介
VHDL全名Very-High-SpeedIntegratedCircuitHardwareDescriptionLanguage,诞生于1982年。
1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言。
自IEEE-1076(简称87版)之后,各EDA公司相继推出自己的VHDL设计环境,或宣布自己的设计工具可以和VHDL接口。
1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本,简称93版。
VHDL和Verilog作为IEEE的工业标准硬件描述语言,得到众多EDA公司支持,在电子工程领域,已成为事实上的通用硬件描述语言。
VHDL语言是一种用于电路设计的高级语言。
它在80年代的后期出现。
最初是由美国国防部开发出来供美军用来提高设计的可靠性和缩减开发周期的一种使用范围较小的设计语言。
VHDL翻译成中文就是超高速集成电路硬件描述语言,主要是应用在数字电路的设计中。
它在中国的应用多数是用在
---VHDLExample
当然在一些实力的设计中。
FPGA/CPLD/EPL。
较为雄厚的单位,它也被用来设计ASIlibraryieee;
主要用于描述数字系统的结构,行VHDuseieee.std_logic_1164.all;为,功能和接口。
除了含有许多具有硬件特-库声明的语言形式、描述风格以及的语句外,VHDL语法是十分类似于一般的计算机高级语言。
entityTONEis
的程序结构特点是将一项工程设计,或VHDL称设计实体(可以是一个元件,一个电路模块实体定义port(A,B:
instd_logic;--)及端口分成外部(或称可视部分,或一个系统)C:
outstd_logic);
既涉及实体的内部,和内部(或称不可视部分)endTONE;
功能和算法完成部分。
在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他architectureEXofTONEis的设计就可以直接调用这个实体。
这种将设计--结构体定义系统设计VHDL实体分成内外部分的概念是的基本点。
Begin
具有以与其他硬件描述语言相比,VHDL下特点:
功能强大、设计灵活,支持广泛、易C<=AORB;
于修改,强大的系统硬件描述能力,独立于器件的设计、与工艺无关,很强的移植能力,易endEX;于共享和复用。
5
八层电梯vhdl实现课程设计报告
2课题功能设计与仿真
本章介绍八层电梯的基本原理与设计思路(模块划分),各模块的功能设计与仿真实现。
2.1课设设计思路和模块划分
2.1.1课设主要功能
本课设主要要实现的功能是实现八层电梯的功能,即电梯内部有可以选择停靠楼层数的按钮,还有选择后在未完成停靠任务前会一直点亮的灯的功能;电梯外部有本层要上升或者下降请求的按钮;还有标示电梯门开关的指示灯,并且可以设定电梯门从开门到关门的时间;通过七段数码管标示电梯所在位置的功能;通过数码管表示电梯运行状态的功能。
2.1.2课设设计思路
先设计主程序,即用来处理楼层升降请求以及标示状态等功能,然后设计用来将主程序中输出的所在楼层信号用数码管显示出来的程序,最后是设计用来将主程序输出的运行状态用数码点阵直观地表示出来的程序。
然后每次设计好各个模块后,都要进行测试,观察是否满足该程序的设计要求。
最后,当所有的程序都满足设计要求后,再通过top程序,将所有的模块合并在一起,并进行测试。
在这个过程中,要做好各个进度中的测试,每当发现测试结果不符合要求时,就要对程序进行修改,然后继续测试、完善。
通过这种做法完成最终所要求的八层电梯的设计。
2.1.3课设模块划分
通过2.1.2中的设计思路分析,我们可以将程序分成以下三个模块,主程序(dt.vhd),电梯所在楼层七段数码显示模块(seg.vhd),电梯运行状态数码点阵显示模块(dian.vhd)。
最后将这三个模块,通过top.vhd综合起来,完成最后的要求。
6
八层电梯vhdl实现课程设计报告
2.2主程序模块(dt.vhd)功能设计与仿真
2.2.1输入输出管脚及程序中定义变量介绍
位置
名称
功能
输入端口
rest
用于重置,使得电梯处于最初状态
clk
系统时钟
up1…up7
1-7层请求上升按钮(0表示有请求)
down2…down8
2-8层请求下降按钮(0表示有请求)
k1…k8
电梯内1-8层停靠按钮(0表示有请求)
输出端口
site
显示电梯所在楼层输出信号
a1…a8
电梯未完成的要停靠楼层指示灯
mode
0下降)电梯运行状态(1上升,
door
电梯门开、关状态(1开门,0关门)
程序自定义变量
up
层上升请求(1表示有请求)用于暂存1-7
down
1表示有请求)用于暂存2-8层下降请求(
ting
1用于暂存1-8层停靠请求(表示有请求)
ceng
site用于暂存电梯所在位置,最后转存给
mo
上升)用于暂存电梯运行状态,最后转存给mode(1
cnt1,cnt2
用于控制电梯每爬一层楼、开关电梯门时间
state
用于暂存电梯当前运行状态
设计原理2.2.2重置信号,如有清空所有信号,将电梯置于首先程序应该先检查是否有rest、up1-up7)在系统时钟上升沿时扫描按键,并将相应楼层的上升信号(最初状态。
、up(8downto1)暂存在靠信号(k1-k8)、下降信号(down2-down8)停表示第八层‘1'ting(8downto1)中,用作后期处理。
如down(8)=down(8downto1)、k1-k8、、down2-down8有人按下了下降的请求按钮,其余的类似。
注意up1-up7为有中‘1'、up(8downto1)、down(8downto1)ting(8downto1)中‘0'为有效信号,而效信号。
cnt1设置电梯每转换一层所需要的时间。
然后利用定义下面利用扫面按键请求结果和电梯的当前状态判断电梯的下一步状态。
,其、kaic8、c6、c7、c4c2state新变量state,可以取得以下值:
c1、、c3、、c5即为电梯处于开门即为电梯处于一层,state<=kai所表示含义为例如,state<=c1语句使得电梯在不同状态下能执行不同的指令。
状态。
利用case,如果此的值应为“0001”ceng首先是state<=c1,即电梯处于第一层,此时然后电先响应这些请求,时有一层电梯外上升请求或者电梯内停靠一层的请求,然后清除一层电梯外上升请求和电梯内(即转入开门状态),state<=kai梯状态为层是否有上升或者停停靠一层请求,即响应完请求后要及时清除。
接着判断8-27
八层电梯vhdl实现课程设计报告
靠或者下降的请求,若有则state<=c2(电梯上升到第二层),mo<=‘1'(电梯状态标识为上升)。
若没有以上请求,state<=c1