石家庄铁道大学四方学院毕业设计46_第1页
石家庄铁道大学四方学院毕业设计46_第2页
石家庄铁道大学四方学院毕业设计46_第3页
石家庄铁道大学四方学院毕业设计46_第4页
石家庄铁道大学四方学院毕业设计46_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、石家庄铁道大学四方学院毕业设计基于FPGA电梯控制器的设计Elevator Controller Design Based on FPGA2012 届 电气工程 系专 业 电子信息工程 学 号 20086377 学生姓名 张炜玮 指导老师 高迎霞 完成日期 2012年5月4日毕业设计成绩单学生姓名张炜玮学号20086377班级方0809-3专业电子信息工程毕业设计题目基于FPGA电梯控制器的设计指导教师姓名高迎霞指导教师职称讲 师评 定 成 绩指导教师得分评阅人得分答辩小组组长得分成绩:院长(主任) 签字:年 月 日毕业设计任务书题目基于FPGA电梯控制器的设计姓名张炜玮学号20086377班

2、级方0809-3专业电子信息工程承担指导任务单位电气工程系导师姓名高迎霞导师职称讲师一、主要内容该项目主要模拟电梯控制的整个过程实现电梯控制。主要包含硬件部分和软件部分,硬件部分完成模拟电梯控制所需控制电路和显示部分,软件部分通过VHDL语言完成电梯控制的整个过程。两者协调工作可以完成电梯控制的整个过程。二、基本要求设计一个多层单轿厢电梯控制器,该控制器可以完成3个楼层的载客服务。电梯入口和内部设有请求上下开关,供乘客选择到达楼层。电梯运行遵循方向优先原则,即上升(下降)时只响应上升(下降)信号,直到执行完最顶层(底层),再转入另一模式。电梯具有显示电梯楼层数、电梯运行方向、响应楼层请求、电梯

3、开关门、电梯复位。三、主要技术指标1完成主要功能。2. 原理图,波形图。3. 使用说明书撰写。4. 论文正文不少于1万字,查阅文献资料不少于10篇,其中外文文献2篇以上,翻译与课题有关的外文资料不少于3000汉字。四、应收集的资料及参考文献VHDL语言开发。Quartus 开发工具。关于cyclone系列相关FPGA开发文档。EP1C12Q240C8芯片的使用手册和接口电路。五、进度计划第1 周第2周 开题报告和任务分配第3周第7 周 需求分析,概要设计第8 周第12 周 详细设计,中期考核第13 周第14 周 写论文第15 周第16 周 上交论文,答辩教研室主任签字时间年 月 日毕业设计开题

4、报告题 目基于FPGA电梯控制器的设计学生姓名张炜玮学号20086377班级方0809-3专业电子信息工程一、研究背景当今社会,随着城市建设的不断发展,高层建筑的不断增多,电梯作为高层建筑中垂直运行的交通工具已与人们的日常生活密不可分。目前电梯的控制普遍采用了两种方式,一是采用微机作为信号控制单元,完成电梯信号的采样、运行状态和功能的设定,实现电梯的自动调度和集选运行功能,拖动控制则由变频器来完成;第二种控制方式用可编程控制器取代微机实现信号控制。从控制方式和性质上来说,这两中方法并没有太大的区别。目前电梯控制系统主要有三种控制方式:继电路控制系统(“早期安装的电梯多位继电器控制系统”)、FP

5、GA的控制系统、微机控制系统。继电器控制系统由于故障率高、可靠性差、控制方式不灵活以及消耗功率大等缺点,目前已逐渐被淘汰,微机控制系统虽在智能控制方面有较强的功能,但也存在抗扰性差,系统设计复杂,一般维修人员难以掌握其维修技术等缺陷。而FPGA控制系统由于运行可靠性高,使用维修方便,抗干扰性强,设计和调试周期较短等优点,倍受人们重视等优点,已经成为目前在电梯控制系统中使用最多的控制方式,目前也广泛用于传统继电器控制系统的技术改造。二、国内外研究现状1、国内电梯现状随着我国城乡居民生活水平的不断提高,住宅和一般公共建筑内,空调和电梯成为最大的两只“电老虎”。据测算,在冬夏两季,建筑中空调的能耗一

6、般占整个建筑能耗的50%,因此控制空调温度、使用节能空调,对降低建筑能耗起着至关重要的作用。与此同时,电梯的耗能不容忽视,据了解,目前我国星级酒店每年每平方米耗电量为150度,其中将近一半用于电梯。中国电梯行业协会认为,2005年我国所有电梯中,如果80%采用节能电梯,全年可节电122亿度。如果2015年全部采用节能电梯,将节电800亿度,几乎相当于三峡大坝一年的发电量。 2 国外电梯的情况目前,国外除了以交流电梯取代直流电梯以外,在低层楼房越来越多的使用液压电梯。此外,家用小型电梯将成为电梯家族中新的组成部分。电梯是集机电一体的复杂系统,不仅涉及机械传动、电气控制和土建等工程领域,还要考虑可

7、靠性、舒适感和美学等问题。而对现代电梯而言,应具有高度的安全性。事实上,在电梯上己经采用了多项安全保护措施。在设计电梯的时候,对机械零部件和电器元件都采取了很大的安全系数和保险系数。然而,只有电梯的制造,安装调试、售后服务和维修保养都达到高质量,才能全面电子商务资料库保证电梯的最终高质量。在国外己"法规"实行电梯制造、安装和维修一体化,实行由各制造企业认可的、法规认证的专业安装队和维修单位,承担安装调试、定期维修和检查试验,从而为电梯运行的可靠性和安全性提供了保证。因此,可以说乘坐电梯更安全。美国一家保险公司对电梯的安全性做过认真地调查和科学计算,其结论是:乘电梯比走楼梯安

8、全5倍。据资料统计,在美国乘其他交通工具的人数每年约为80亿人次,而乘电梯的人数每年却有540亿人次之多。三、研究方案(1)每层电梯入口处设有上下请求开关,电梯内设有顾客到达层次的停站请求开关。(2)设有电梯入口处位置指示装置及电梯运行模式(上升或下降)指示装置。(3)电梯到达有停站请求的楼层,开门指示灯亮,开门10秒后,电梯门关闭(开门指示灯灭),电梯继续进行,直至执行完最后一个请求信号后停留在当前层。    (4)能记忆电梯内外所有请求,并按照电梯运行规则按顺序响应,每个请求信号保留至执行后消除。    (5)电梯运行规则一当电梯

9、处于上升模式时,只响应比电梯所在位置高的上楼请求信号,由下而上逐个执行,直到最后一个上楼请求执行完毕;如果高层有下楼请求,则直接升到由下楼请求的最高层,然后进入下降模式。当电梯处于下降模式时则与上升模式相反。    (6)电梯初始状态为一层开门状态。四、预期结果此系统是个3层楼的电梯控制器设计。该控制器可控制电梯完成3层楼的载客服务而且遵循方向优先原则,即上升(下降)时只响应上升(下降)信号,直到执行完最顶层(底层),再转入另一模式。电梯具有显示电梯楼层数、电梯运行方向、响应楼层请求、电梯开关门、电梯复位。指导教师签字时 间 年 月 日摘要电梯作为现代化的产物,早

10、在上个世纪就进入到我们的生活当中,对于电梯的控制,传统的方法是使用继电器-接触器控制系统进行控制,随着EDA技术的发展,FPGA已经广泛的应用到电子设计控制的各个方面中。三层电梯广泛应用在大型的货运之中。其使用便捷,货运周期短,效率高,成本低,对货运事业具有普相当的经济价值。在客运上,三层电梯虽然涉及楼层不高,应用范围不大,但就特殊而言,可以为一些上下楼层不方便的人们提供相当的帮助,照顾了这些特殊群体的感情。因此,在某些层面上说,三层电梯的设计也具有一定的社会价值。本设计是基于VHDL开发上的三层电梯控制器。以Quartus为开发环境,最终将在硬件环境实现三层电梯控制的基本功能显示。其功能包括

11、:显示电梯楼层数、电梯运行方向、响应楼层请求、电梯开关门、电梯复位。关键词:电梯控制 EDA VHDL AbstractThe life,as the modernized result,are entered in ourlife in last century.For the elevator control,the traditional approch is to use relay-contactor system to contorl.With development of EDA technology.FPGA has been widely used in all aspect

12、s of electronic design control.Three layer elevator is widely used in the large cargo. Its easy to use, cargo short cycle, high efficiency, low cost, the cargo business has general considerable economic value. In passenger transport, three elevator while involving the floor is not high, the applicat

13、ion range is not big, but the special character, can provide some upper and lower floor is not convenient people with considerable help, to take care of these special groups of feelings. Therefore, in some sense, the three layer elevator design also has certain social value.The project is based on t

14、he VHDL language development of three elevator controller.To Quartus 7.2 development environment,the ultimate test case in the EDA to achieve three basic functions of the life controller demonstration.Its features include:show floor where the life current, show the direction of the lift ,floor to re

15、spond to the requset, setting elevator door open display, elevator reset.Key word: Lift control EDA VHDL 目 录第1章 绪论11.1 课题研究的背景11.2 课题设计的意义11.3 课题设计的主要内容2第2章 实现工具简介32.1 EDA概述32.1.1 什么是EDA32.1.2 EDA的特点32.1.3 EDA的应用42.2 FPGA的简介及特点42.3 VHDL语言及程序概述62.3.1 VHDL语言的发展62.3.2 VHDL语言的特点72.3.3 VHDL语言程序的基本结构82.4

16、QuartER 的概况8第3章 系统软件设计103.1 简要说明103.2 设计任务103.3 设计思路103.4 电梯处于各楼层的分析113.5 状态原理图说明133.6 三层电梯的电路图163.7 电梯外部端口设计173.8 进程分析173.8.1 状态转化进程173.8.2 控制处理进程173.8.3 显示进程183.9 仿真结果与说明18第4章 硬件环境及调试过程224.1 芯片介绍224.2 硬件实现224.2.1 选择芯片224.2.2 引脚锁定234.2.3 下载到硬件环境24第5章 结论与展望275.1 结论275.2 展望27参考文献28致谢29附录30附录 A 外文资料31

17、附录 B 电路总图37附录 C 程序清单38石家庄铁道学院四方学院毕业设计第1章绪 论1.1 课题研究的背景当今世界,部分地区人口高度密集,人和土地资源短缺的矛盾日趋激化。这就注定了必须合理地利用土地去解决人和土地的矛盾。而兴建高层建筑是其中的有效措施之一。因此,能使人们快速、便捷地到达目的楼层的电梯便应运而生了。在一些发达国家和地区,人均电梯拥有数量一般在每万人30台以上,某些国家甚至达到每万人120台以上,随着城镇化程度的加大,电梯市场会更加繁荣。中国的电梯市场增长也很乐观,目前,每年增长率为15%18%。随着电梯普及率的升温,人们对电梯的要求也会越来越高。如何更安全、更快捷地到达目的楼层

18、,也就成了人们对电梯最为根本的要求。而电梯系统里控制这方面技术参数的是电梯控制系统。因此,控制系统的设计就成了在电梯设计领域里最为核心的技术。在电子技术飞速发展的今天,现代电子产品几乎渗透到了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品进一步提高 ,加速了电子设计激素的普及进程及技术革新。电子设计在日常生活和物质产品生产都占到了举足轻重的地位,这尤其体现在其对电子产品的开发和设计上。面对如此广袤的电梯市场,所谓“科技就是第一生产力”,处于科技前沿的电子设计技术很自然地就与电梯控制设计一拍即合,给设计师们以巨大的设计空间。因此,本设计就是希望在以开发更

19、安全、更快捷的三层电梯控制系统为前提下,结合电子设计技术,对电梯控制进行设计。1.2 课题设计的意义三层电梯广泛应用在大型的货运之中。其使用便捷,货运周期短,效率高,成本低,对货运事业具有普相当的经济价值。在客运上,三层电梯虽然涉及楼层不高,应用范围不大,但就特殊而言,可以为一些上下楼层不方便的人们提供相当的帮助,照顾了这些特殊群体的感情。因此,在某些层面上说,三层电梯的设计也具有一定的社会价值。本着“一理通,百理明”的原则,本设计希望通过在简单的三层电梯控制设计之中如何解决升、降请求信号因电梯所处状态而产生的冲突等问题发散出去,由此及彼,对高层电梯控制的开发作一个技术的铺垫,对高层电梯设计者

20、提供一个基础。1.3 课题设计的主要内容设计一个多层单轿厢电梯控制器,该控制器可以完成3个楼层的载客服务。电梯入口和内部设有请求上下开关,供乘客选择到达楼层。电梯运行遵循方向优先原则,即上升(下降)时只响应上升(下降)信号,直到执行完最顶层(底层),再转入另一模式。电梯具有显示电梯楼层数、电梯运行方向、响应楼层请求、电梯开关门、电梯复位。本控制设计拟实现以下功能:(1)每层电梯入口处设有上下请求开关,电梯内设有顾客到达层次的停站请求开关。(2)设有电梯入口处位置指示装置及电梯运行模式(上升或下降)指示装置。(3)电梯到达有停站请求的楼层,开门指示灯亮,开门10秒后,电梯门关闭(开门指示灯灭),

21、电梯继续进行,直至执行完最后一个请求信号后停留在当前层。    (4)能记忆电梯内外所有请求,并按照电梯运行规则按顺序响应,每个请求信号保留至执行后消除。    (5)电梯运行规则一当电梯处于上升模式时,只响应比电梯所在位置高的上楼请求信号,由下而上逐个执行,直到最后一个上楼请求执行完毕;如果高层有下楼请求,则直接升到由下楼请求的最高层,然后进入下降模式。当电梯处于下降模式时则与上升模式相反。    (6)电梯初始状态为一层开门状态。第2章 实现工具简介2.1 EDA概述EDA在通信行业(电信)里的另一个

22、解释是企业数据架构,EDA给出了一个企业级的数据架构的总体视图,并按照电信企业的特征,进行了框架和层级的划分。 EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪60年代中期从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。2.1.1 什么是EDA 20世纪90年代,国际上电子和计算机技术较先进的国家,一直在积极探索新的电子电路设计方法,并在设计方法、工具等方面进行了彻底的变革,取得了巨大成功。在电子技术设计领域,可编程逻辑器件(如CPLD、FPGA)的应用,已得到广泛的普

23、及,这些器件为数字系统的设计带来了极大的灵活性。这些器件可以通过软件编程而对其硬件结构和工作方式进行重构,从而使得硬件的设计可以如同软件设计那样方便快捷。这一切极大地改变了传统的数字系统设计方法、设计过程和设计观念,促进了EDA技术的迅速发展。 EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。 利用EDA工具,电子设计师可以从概念、算法、协议等

24、开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出IC版图或PCB版图的整个过程的计算机上自动处理完成。 现在对EDA的概念或范畴用得很宽。包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域,都有EDA的应用。目前EDA技术已在各大公司、企事业单位和科研教学部门广泛使用。例如在飞机制造过程中,从设计、性能测试及特性分析直到飞行模拟,都可能涉及到EDA技术。2.1.2 EDA的特点(1) 高层综合和优化为了能更好地支持自顶向下的设计方法,现代的EDA工具能够在系统进行综合和优化,这样就缩短了设计的周期,提高了设计效率。(2)采用硬件描

25、述语言进行设计采用硬件描述语言进行电路与系统的描述是当前EDA技术的另一个特征。与传统的原理图设计方法相比,HDL语言更适合描述规模大的数字系统,它能够使设计者在比较抽象的层次上对所设计系统的结构和逻辑功能进行描述。采用HDL语言设计的突出优点是:语言的公开性和利用性;设计与工艺的无关性;宽范围的描述能力;便于组织大规模系统的设计;便于设计的复用,交流,保存和修改等。目前最常用的硬件描述语言有VHDL和Verilog HDL,它们都已经成为IEEE标准。(3)开放性和标准化现代EDA工具普遍采用标准化和开放性框架结构,任何一个EDA系统只要建立了一个符合标准的开放式框架结构,就可以接纳其他厂商

26、的EDA工具仪器进行设计工作。这样就可以实现各种EDA工具的优化组合,并集成在一个易于管理的统一环境下,实现资源共享。2.1.3 EDA的应用 随着电子技术的发展,可编程逻辑器件和EDA技术已广泛应用于通信、工业自动化、智能仪表、图像处理、计算机等领域。EDA(ElectronincDesign Automation,电子设计自动化)技术是现代电子工程领域的一门新技术,它提供了基于计算机和信息技术的电路系统设计方法。EDA技术的发展和推广应用极大地推动了电子工业的发展。随着EDA技术的发展,硬件电子电路的设计几乎全部可以依靠计算机来完成,这样就大大缩短了硬件电子电路设计的周期,从而使制造商可以

27、快速开发出品种多、批量小的产品,以满足市场的众多需求。EDA教学和产业界的技术推广是当今世界的一个技术热点,EDA技术是现代电子工业中不可缺少的一项技术。2.2 FPGA的简介及特点背景目前以硬件描述语言(Verilog或 VHDL)所完成的电路设计,可以经过简单的综合与布局,快速的烧录至 FPGA 上进行测试,是现代 IC 设计验证的技术主流。这些可编辑元件可以被用来实现一些基本的逻辑门电路(比如AND、OR、XOR、NOT)或者更复杂一些的组合功能比如解码器或数学方程式。在大多数的FPGA里面,这些可编辑的元件里也包含记忆元件。例如触发器(Flipflop)或者其他更加完整的记忆块。 系统

28、设计师可以根据需要通过可编辑的连接把FPGA内部的逻辑块连接起来,就好像一个电路试验板被放在了一个芯片里。一个出厂后的成品FPGA的逻辑块和连接可以按照设计者而改变,所以FPGA可以完成所需要的逻辑功能。FPGA一般来说比ASIC(专用集成芯片)的速度要慢,无法完成复杂的设计,而且消耗更多的电能。但是他们也有很多的优点比如可以快速成品,可以被修改来改正程序中的错误和更便宜的造价。厂商也可能会提供便宜的但是编辑能力差的FPGA。因为这些芯片有比较差的可编辑能力,所以这些设计的开发是在普通的FPGA上完成的,然后将设计转移到一个类似于ASIC的芯片上。另外一种方法是用CPLD(复杂可编程逻辑器件备

29、)。 CPLD与FPGA的关系早在1980年代中期,FPGA已经在PLD设备中扎根。CPLD和FPGA包括了一些相对大数量的可以编辑逻辑单元。CPLD逻辑门的密度在几千到几万个逻辑单元之间,而FPGA通常是在几万到几百万。 CPLD和FPGA的主要区别是他们的系统结构。CPLD是一个有点限制性的结构。这个结构由一个或者多个可编辑的结果之和的逻辑组列和一些相对少量的锁定的寄存器。这样的结果是缺乏编辑灵活性,但是却有可以预计的延迟时间和逻辑单元对连接单元高比率的优点。而FPGA却是有很多的连接单元,这样虽然让它可以更加灵活的编辑,但是结构却复杂的多。 CPLD和FPGA另外一个区别是大多数的FPG

30、A含有高层次的内置模块(比如加法器和乘法器)和内置的记忆体。一个因此有关的重要区别是很多新的FPGA支持完全的或者部分的系统内重新配置。允许他们的设计随着系统升级或者动态重新配置而改变。一些FPGA可以让设备的一部分重新编辑而其他部分继续正常运行。 FPGA工作原理FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。 FPGA的基本特点:(1)采用FPGA设计ASIC电路(特定用

31、途集成电路),用户不需要投片生产,就能得到合用的芯片。 (2)FPGA可做其它全定制或半定制ASIC电路的中试样片。 (3)FPGA内部有丰富的触发器和IO引脚。 (4)FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。 (5)FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。 可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。 FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。 加电时,FPGA芯片将EPROM中数据读入片内编程RAM中

32、,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活。 2.3 VHDL语言及程序概述 VHDL 的英文全名是 Very-High-Speed Integrated Circuit Hardware Description Language,诞生于 1982 年。1987 年底,VHDL被 IEEE 和美国国防部确

33、认为标准硬件描述语言。 VHDL主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。 2.3.1 VHDL语言的发展在集成电路制造工艺的发展的过程中,微电子设计工艺已

34、经达到了深亚微米时代,在EDA设计中主要有软硬件协作设计的要求,现有的工具支持SOC设计尚有难度,迫切需要提高设计能力。在设计语言中,由于VHL和Verilog HDL是目前通用的设计语言,在设计大系统时,不够方便直观,所以需要进一步完善。电子产品随着技术的进步,更新换代日新月异,而掌握电子产品开发研制的动力源EDA技术,是我们国家工程技术人员不可推卸的责任,因为中国的设计公司大多还处在发展的初级阶段,所使用的设计工具都是几年前国外的主流工具。2.3.2 VHDL语言的特点VHDL 语言能够成为标准化的硬件描述语言并获得广泛应用 , 它自身必然具有很多其他硬件描述语言所不具备的优点。归纳起来

35、,VHDL 语言主要具有以下优点:(1) VHDL 语言功能强大 , 设计方式多样 VHDL 语言具有强大的语言结构, 只需采用简单明确的VHDL语言程序就可以描述十分复杂的硬件电路。同时, 它还具有多层次的电路设计描述功能。此外 ,VHDL 语言能够同时支持同步电路、异步电路和随机电路的设计实现, 这是其他硬件描述语言所不能比拟的。VHDL 语言设计方法灵活多样 , 既支持自顶向下的设计方式, 也支持自底向上的设计方法; 既支持模块化设计方法, 也支持层次化设计方法。 (2) VHDL 语言具有强大的硬件描述能力 VHDL 语言具有多层次的电路设计描述功能,既可描述系统级电路 , 也可以描述

36、门级电路;描述方式既可以采用行为描述、寄存器传输描述或者结构描述,也可以采用三者的混合描述方式。同时,VHDL 语言也支持惯性延迟和传输延迟,这样可以准确地建立硬件电路的模型。VHDL 语言的强大描述能力还体现在它具有丰富的数据类型。VHDL 语言既支持标准定义的数据类型,也支持用户定义的数据类型,这样便会给硬件描述带来较大的自由度。 (3) VHDL 语言具有很强的移植能力 VHDL 语言很强的移植能力主要体现在: 对于同一个硬件电路的 VHDL 语言描述 , 它可以从一个模拟器移植到另一个模拟器上、从一个综合器移植到另一个综合器上或者从一个工作平台移植到另一个工作平台上去执行。 (4) V

37、HDL 语言的设计描述与器件无关 采用 VHDL 语言描述硬件电路时, 设计人员并不需要首先考虑选择进行设计的器件。这样做的好处是可以使设计人员集中精力进行电路设计的优化, 而不需要考虑其他的问题。当硬件电路的设计描述完成以后 ,VHDL 语言允许采用多种不同的器件结构来实现。 (5) VHDL 语言程序易于共享和复用 VHDL 语言采用基于库 ( library) 的设计方法。在设计过程中 , 设计人员可以建立各种可再次利用的模块 , 一个大规模的硬件电路的设计不可能从门级电路开始一步步地进行设计 , 而是一些模块的累加。这些模块可以预先设计或者使用以前设计中的存档模块, 将这些模块存放在库

38、中 , 就可以在以后的设计中进行复用。 由于 VHDL 语言是一种描述、模拟、综合、优化和布线的标准硬件描述语言 , 因此它可以使设计成果在设计人员之间方便地进行交流和共享, 从而减小硬件电路设计的工作量, 缩短开发周期。2.3.3 VHDL语言程序的基本结构实体(Entity)结构体(Architecture) 包集合(Package)配(Configuration) 库(Library)2.4 QUARTER的概况Quarter是Altera提供的FPGA/CPLD开发集成环境,Altera 是世界上最大的可编程逻辑器件供应商之一。Quarter在21世纪初推出,是Altera前一代FPG

39、A/CPLD集成开发环境Max+plus的更新换代产品,其界面友好,使用便捷。Quarter7.2中允许将软件界面设置为Max+plus风格,支持RTL View也就是通常所讲的能够查看VHDL对应的电路原理图。这个功能对于使用HDL进行逻辑设计的人员还是很有用的,一方面可以充分理解HDL和硬件电路的对应关系,另一方面可以更加方便的查找设计中的错误。同时它支持综合布线和优化,以及功耗的计算。Altera的Quarter提供了完整的多平台设计环境,能满足各种特定的设计要求,也是单芯片可编程系统(SOPC)设计的综合性环境和SOPC开发的基本设计工具,并为AlteraDSP开发包进行系统模块设计提

40、供了集成综合环境。Quarter设计工具完全支持VHDL、Verilog的设计流程,其内部嵌有VHDL、Verilog逻辑综合器。Quartus也可以利用第三方的综合工具,同时Quartus也具备仿真功能,可以进行基于FPGA的DSP系统开发和数字通信模块开发。Quarter包括模块化的编译器。编译器包括的功能块有分析/综合器(Analysis与Synthesis)、适配器(Fitter)、装配器(Assembler)、时序分析器(Timing Analyzer)、辅助设计模块、EDA网表文件生成器、编辑数据接口等。可以通过选择Start单独运行各个模块。还可以通过选择Compiler Too

41、l,在Compiler Tool窗口中运行该模块来启动编译器模块。在Compiler Tool窗口中,可以打开该模块的设置文件或报告文件,或打开其他相关窗口。Quarter具有如下的多种设计输入方法:原理图输入和富豪编辑、硬件描述语言、波形设计输入、平面图编辑及层次设计输入。如此众多的涉及输入方法帮助设计者轻松的完成涉及输入。Quarter处理一个设计时,软件编辑器读取设计文件信息,产生用于器件编程、仿真、时序分析的输出文件。消息处理器可以自动定位编译过程中发现的错误,编译器还可以优化设计文件。Quarter提供的设计校验功能包括功能仿真与时序分析,用于测试设计的罗技操作和内部时序。Quart

42、er编程器使用编译器生成的编程文件对Altera器件进行下载编程,它可以用来进行编程、校验、检查及功能测试。第3章 系统软件设计3.1 简要说明此系统是个3层楼的电梯控制器设计。该控制器可控制电梯完成3层楼的载客服务而且遵循方向优先原则,即上升(下降)时只响应上升(下降)信号,直到执行完最顶层(底层),再转入另一模式。电梯具有显示电梯楼层数、电梯运行方向、响应楼层请求、电梯开关门、电梯复位。3.2 设计任务(1)每层电梯入口处设有上下请求开关,电梯内设有顾客到达层次的停站请求开关。(2)设有电梯入口处位置指示装置及电梯运行模式(上升或下降)指示装置。(3)电梯到达有停站请求的楼层,开门指示灯亮

43、,开门10秒后,电梯门关闭(开门指示灯灭),电梯继续进行,直至执行完最后一个请求信号后停留在当前层。    (4)能记忆电梯内外所有请求,并按照电梯运行规则按顺序响应,每个请求信号保留至执行后消除。    (5)电梯运行规则一当电梯处于上升模式时,只响应比电梯所在位置高的上楼请求信号,由下而上逐个执行,直到最后一个上楼请求执行完毕;如果高层有下楼请求,则直接升到由下楼请求的最高层,然后进入下降模式。当电梯处于下降模式时则与上升模式相反。    (6)电梯初始状态为一层开门状态。3.3 设计思路本系统的主要

44、输入有电梯外上下控制按钮Button(其中Button(0)表示一楼电梯外上升请求,Button(1)表示二楼电梯外上升请求, Button(2)表示二楼电梯外下降请求, Button(3)表示三楼电梯外下降请求);电梯内到达楼层控制按钮floor(其中floor(0)表示请求到达一层, floor(1)表示请求到达二层, floor(2)表示请求到达三层)。系统的输出包括电梯位置标识position,表示电梯当前所在楼层;电梯开门关门显示按钮door(当door=1时表示开门,door=0表示关门);电梯当前运行状态按钮up_down(当up_down=1时表示电梯处于上升状态,当up_do

45、wn=0时表示电梯处于下降状态)。3.4 电梯处于各楼层的分析处于一楼时,不管是电梯内或电梯外,电梯都只可能接收到上升的请求信号。此时,电梯就进入预上升状态,准备作上升运行,如果电梯没有接收到请求信号,电梯则在一楼待机。处于二楼时,电梯则可能出现三种情况:1.电梯并没有接受到电梯内或电梯外的任何请求信号时,电梯则停留在当前楼层。2.电梯接收到上升请求信号,进入预上升状态。3.电梯接收到下降请求信号,进入预下降状态。处于最高层时,不管电梯内或电梯外电梯都只可能接收到下降的请求信号。此时,电梯就进入预下降状态,准备作下降运行。如果电梯没有接收到请求信号,电梯则停留在最高层。如图所示:处于一楼待上升

46、待机图3-1 处于一楼 处于二楼待上升待下降待机图3-2 处于二楼处于三楼待下降待机图3-3 处于三楼电梯的运行规则确立后,需对整个控制程序的设计做一个流程规范。根据VHDL语言的规则,程序必须由最基本的实体和结构体构成。实体对控制器的端口进行定义,结构体对各端口的行为进行描述。因此程序运行需经过以下流程:VHDL库调用:确立控制器的端口及相关的寄存器;根据电梯运行规则,设计相关运行描述;对电梯内信号进行处理。总流程图如下图3-4上升信号到二楼二楼待机上升信号三楼待机下降信号下降信号到二楼一楼待机无信号无信号无信号是否是否图3-4 总流程图3.5 状态原理图说明本系统的状态比较复杂,状态中嵌套

47、状态。f1&(b0|b2|f0);!f1&b1&(b0|f0|b2);!f1&!b1&(f0|b0)f1&(b2|b0|f0);!f1&b2&(f0|b0);!f1&!b2&(b0|f0)f1&(b1|b3|f2);!f1&b1&(f2|b3);!f1&!b1&(b3|f2)(b3|f2)&(f0|f1);! (b3|f2)&(b0|b1|b2|f0|f1)(b0|f0)&(f1|f2);!(b0|f0)&(b1|b2|b3|f2|f1)(b3

48、|f3)&(!(f0|f1);!(b3|f2|b0|b1|b2|f0|f1)图3-5 状态原理图S2S1DS1US0(b0|f0)&(!(f1|f2);!(b0|f0|b1|b2|b3|f1|f2)f1&(!(b0|b1|b2|b3|f0);!f1&b1&(f2|b3|b0|f0|b2);!f1&!b1&b2&(!(f0|b0)f1&(!(b2|b0|f0|b1|b3|f2);!f1&b2&(!(f0|b0|b1| |f2);!f1&!b2&b1&(!(f2|b3) f1&(

49、b1|b3|f2);!f1&b2&(b1|f2);!f1&!b2&(b1|f2|b3))(1)电梯始终处于S0状态(b0|f0)&(!(f1|f2)表示一楼上或一楼内有请求时,但没有一楼到达二楼或三楼请求,电梯仍处于S0状态;!(b0|f0|b1|b2|b3|f1|f2)表示一楼上、一楼内、二楼上、二楼下、二楼内、三楼下或三楼内没有请求,电梯仍处于S0状态。(2)电梯由S0状态到S1U状态(b0|f0)&(f1|f2)表示一楼外或一楼内有请求,且有一楼到达二楼或三楼请求,电梯由S0状态到S1U状态;!(b0|f0)&(b1|b2|b3|f

50、2|f1) 表示一楼外或一楼内有请求,且有二楼上、二楼下、三楼下、三楼内或二楼内请求时,电梯由S0状态到S1U状态。(3)电梯由S1U状态到S0状态f1&(b0|b2|f0)表示二楼内有请求,一楼上、二楼下或一楼内请求时,电梯由S1U状态到S0状态;!f1&b1&(b0|f0|b2))表示二楼内没有请求,二楼上有请求,一楼上、一楼内或二楼下有请求时,电梯由S1U状态到S0状态;!f1&!b1&(f0|b0) 表示二楼内没有请求,二楼上没有请求,一楼内或一楼上有请求时,电梯由S1U状态到S0状态。(4)电梯始终处于S1U状态f1&(!(b0|b1|

51、b2|b3|f0)表示二楼内有请求,且一楼上、二楼上、二楼下、三楼下或一楼内没请求时,电梯始终处于S1U状态;!f1&b1&(f2|b3|b0|f0|b2) )表示二楼内没请求,二楼上有请求,且三楼内、三楼下、一楼上、一楼内或二楼下没请求时,电梯始终处于S1U状态;!f1&!b1&b2&(!(f0|b0) )表示二楼内没请求,二楼上没请求,二楼下有请求,但一楼内或一楼下没请求时电梯始终处于S1U状态。(5)电梯由S1U状态到S2状态f1&(b1|b3|f2)表示二楼内有请求时,二楼上、三楼下或三楼内有请求时,电梯由S1U状态到S2状态;!f1&a

52、mp;b1&(f2|b3) 表示二楼内没请求时,二楼上有请求,三楼内或三楼下有请求时,电梯由S1U状态到S2状态;!f1&!b1&(b3|f2) 表示二楼内没请求时,二楼上没请求,三楼下或三楼内有请求时,电梯由S1U状态到S2状态。(6)电梯始终处于S2状态(b3|f3)&(!(f0|f1)表示三楼下或三楼内有请求时,但但没有一楼到达二楼或三楼请求,电梯始终处于S2状态;!(b3|f2|b0|b1|b2|f0|f1)表示三楼下、三楼内、一楼上、二楼上、二楼下、一楼内或二楼内没请求时,电梯始终处于S2状态。(7)电梯由S2状态到S1D状态(b3|f2)&(

53、f0|f1)表示三楼下或三楼内有请求时,且有一楼到达二楼或三楼请求时,电梯由S2状态到S1D状态;! (b3|f2)&(b0|b1|b2|f0|f1) 表示三楼下或三楼内没请求时,且一楼上、二楼上、二楼下、一楼内或二楼内有请求时,电梯由S2状态到S1D状态。(8)电梯由S1D状态到S2状态f1&(b1|b3|f2)表示二楼内有请求,且二楼上、三楼下或三楼内有请求时,电梯由S1D状态到S2状态;!f1&b2&(b1|f2) 表示二楼内没请求,二楼下有请求时,且二楼上或三楼内有请求时,电梯由S1D状态到S2状态;!f1&!b2&(b1|f2|b3)

54、表示二楼没有请求,二楼下没请求时,且二楼上、三楼内或三楼下有请求时,电梯由S1D状态到S2状态。(9)电梯始终处于S1D状态f1&(!(b2|b0|f0|b1|b3|f2)表示二楼内有请求时,但二楼下、一楼上、一楼内、二楼上、三楼下或三楼内没请求时,电梯始终处于S1D状态;!f1&b2&(!(f0|b0|b1| |f2) 表示二楼内没请求时,二楼下有请求,但一楼内、一楼上、二楼上或三楼内没请求时,电梯始终处于S1D状态;!f1&!b2&b1&(!(f2|b3) 表示二楼内没请求时,二楼下没请求,二楼上有请求时,但三楼内或三楼下没请求时,电梯始终处

55、于S1D状态。(10)电梯由S1D状态到S0状态f1&(b2|b0|f0)表示二楼内有请求,且二楼下、一楼上或一楼内有请求时,电梯由S1D状态到S0状态;!f1&b2&(f0|b0) 表示二楼内没请求,二楼下有请求,且一楼内或一楼上有请求时,电梯由S1D状态到S0状态;!f1&!b2&(b0|f0) 表示二楼内没请求,二楼下没请求,且一楼内或一楼上有请求时,电梯由S1D状态到S0状态。本状态图主要说明系统运行当前状态与下一个状态的关系,考虑了从当前状态到下一状态的所有触发因素,较为复杂。3.6 三层电梯的电路图图3-6 电路总图3.7 电梯外部端口设计时

56、钟信号(clk);一楼电梯外人的上升请求信号(button0),二楼电梯外人的上升请求(Button1);二楼电梯外人的下降请求信号(Button2),三楼电梯外人的下降请求(Button3);电梯内人请求到达一楼的信号(fllor0),电梯内人请求到大二楼的信(floor1),电梯内人请求到大三楼的信号(floor2);电梯控制信号(opendoor);电梯所在楼层显示(position3.0);电梯开门状态(door);电梯上下指示(up-down);3.8 进程分析3.8.1 状态转化进程状态转换进程P1的作用是:时钟为上升沿时,把下一状态赋值给当前状态。3.8.2状态处理进程此状态处理进程的作用是:使电梯控制系统在一楼、二楼、三楼状态之间转化。1 、一楼状态处理当它收到二层电梯外上下楼请求、三层电梯外下楼请求、一层电梯内到达二层和三层请求时,电梯会按照指令上升到相应楼层并开门、关门;若收到一层电梯外上楼请求只做开门响应,随后根据使用者进入电梯后请求进行响应;其他请求不响应。2、二楼状态处理当电梯处在第二层时,若系统收到二层电梯外上下楼请求只做开门响应;若收到三层电梯外下楼或二层电梯内到达三层请求,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论