基于VHDL六层电梯控制系统毕业设计论文.doc
2012 届毕业设计说明书 基于GW48EDA实验箱的设计 系 、 部: 电气与信息工程 学生姓名: AAA 指导教师:AAA职称高级工程师 专 业: 电子信息工程技术 班 级: 0901 完成时间: 2012年5月 摘 要 电梯作为垂直方向的交通工具,在高层建筑和公共场所已成为不可或缺的设备。中国是全球最大的电梯市场,也具有最强的电梯生产能力,但由于缺乏自主知识产权和核心技术,自主品牌占市场的份额很少。随着社会需求的变化,电梯朝着节能、环保及智能化方向发展。EDA技术打破了软件和硬件间的壁垒,是计算机的软件技术与硬件实现、设计效率与产品能合二为一,它代表了电子技术和应用技术的发展方向。VHDL主要用于描述数字系统的接口,结构和功能,它的语法简单易懂,移植性好。本设计采用VHDL,源程序Altera公司的Quartus II软件仿真。运用有限状态机的设计方法,设计了两个进程相互配合,状态机进程作为主要进程,信号灯控制进程作为辅助进程。在主进程中定义了7个状态,分别是“stopon1”“dooropen”“doorclose”“doorwait4”“up”“down”和“stop”,在电梯时钟的触发下,通过当前状态和信号灯信号判定下一状态。信号灯控制进程中,信号灯存储按键请求情况,它的熄灭是由状态机进程中传出的信号来控制。关键字:电梯控制器;VHDL;状态机;CPLDABSTRACT Elevator has become an indispensable device as a vertical transport in high-rise buildings and public places. China is the worlds largest elevator market ,and also has the highest lift capacity. But the lack of independent intellectual property rights and core technologies, the market share of own brands account for very little. With the changing of the communitys needs, elevator develop towards energy saving, environmental protection and intelligent.EDA breaks the barriers between hardware and software. Not only the computer software technology and hardware but also the design efficiency and product performance are combined. EDA represents the electronic design technology and application technologys development. VHDL digital system is mainly used to describe the interface, structure and function. Its syntax is easy and transplantable.This design which uses VHDL simulated by Alteras Quartus II software. I use method named finite state machine which two processes complement each other. The state machine process act as the main process, and the signal control process act as a assistant. Seven states were defined in the main process, namely “stopon1” “dooropen” “doorclose” “doorwait4” “up”“down” and “stop”. Triggered by the lifts clock, the next state is determined by the current state and the signal. In signal control process, registers keep input value, and lamps black out when the control process, registers keep input value, and lamps black out when the control signal in the main process is high value.Key words: Elevator Controller;VHDL State Machine;CPLD目 录第1章 绪论1第2章 EDA技术的介绍22.1 EDA技术的基本特征22.2 EDA技术的基本设计方法42.3 QuartusII软件介绍7第三章EDA实验箱使用和介绍83.1 GW48系统使用注意事项83.2 GW48系统主板结构与使用方法9 3.3模式选择12第四章 总体方案设计134.1设计的目的134.2 设计要求134.3设计的基础依据134.3.1VHDL语言介绍144.3.2 VHDL的特点144.3.3 VHDL的设计步骤154.3.4 VHDL语言编程格式15第五章 电梯控制设计方案175.1 电梯控制器的总体设计方案175.2电梯运行控制流程图如下185.3 六层电梯控制器的设计思路19第六章 程序设计及调试206.1 程序流程分析206.2 程序设计说明216.2.1端口、寄存器设计说明216.2.2模块设计说明226.2.3具体语句设计说明236.3 程序调试26第7章 程序仿真287.1建立波形输入287.2电梯功能的实现与仿真297.2.1 仿真步骤297.2.2 电梯功能实现与仿真结果分析32第8 章 设计总结37参考文献38致 谢39附录一40 附录二48第1章 绪论 随着社会的发展,电梯的使用越来越普遍,已经从原来只在商业大厦,宾馆使用,过度到在办公楼,居民楼等场所使用,并且对电梯功能的要求也不断提高,相应地其控制方式也在不停地发生变化.对于电梯的控制,传统的方法是使用继电器接触器控制系统进行控制,随着技术的 不断发展,微型计算机在电梯控制上的 应用日益广泛,现在已进入全微化控制的时代。VHDL主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式、描述风格以及语法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。VHDL具有功能强大的语言结构,可以用简洁明确的源代码来描述复杂的逻辑控制。它具有多层次的设计描述功能,层层细化,最后可直接生成电路级描述。VHDL支持同步电路、异步电路和随机电路的设计,这是其他硬件描述语言所不能比拟的。VHDL还支持各种设计方法,既支持自底向上的设计,又支持自顶向下的设计;既支持模块化设计,又支持层次化设计。电梯的微机化控制主要有以下几种形式;1、PLC控制,2、单片机控制 ,3、单板机控制,4、单微机控制,5、多微机控制,6、人工智能控制。随着EDA技术的快速发展 ,VHDL已广泛应用于电子设计与控制的各个方面 本文采用VHDL语言来设计实用六层电梯控制器,其代码具有良好的可读性和易理解性,源程序经A1tera公司的 Quartus II软件仿真,目标器件选用CPLD器件。通过对六层电梯控制器的设计,可以发现本设计有一定的扩展性,而且可以作为更多层电梯控制器实现的基础。第2章 EDA技术的介绍 电子设计技术的核心就是EDA技术,EDA是指以计算机为工作平台,融合应用电子技术、计算机技术、智能化技术最新成果而研制成的电子CAD通用软件包,主要能辅助进行三方面的设计工作,即IC设计、电子电路设计和PCB设计。EDA技术已有30年的发展历程,大致可分为三个阶段。70年代为计算机辅助设计(CAD)阶段,人们开始用计算机辅助进行IC版图编辑、PCB布局布线,取代了手工操作。80年代为计算机辅助工程(CAE)阶段。与CAD相比,CAE除了有纯粹的图形绘制功能外,又增加了电路功能设计和结构设计,并且通过电气连接网络表将两者结合在一起,实现了工程设计。CAE的主要功能是:原理图输入,逻辑仿真,电路分析,自动布局布线,PCB后分析。90年代为电子系统设计自动化(EDA)阶段。2.1 EDA技术的基本特征EDA代表了当今电子设计技术的最新发展方向,它的基本特征是:设计人员按照“自顶向下”的设计方法,对整个系统进行方案设计和功能划分,系统的关键电路用一片或几片专用集成电路(ASIC)实现,然后采用硬件描述语言(HDL)完成系统行为级设计,最后通过综合器和适配器生成最终的目标器件,这样的设计方法被称为高层次的电子设计方法。下面介绍与EDA基本特征有关的几个概念。1“自顶向下”的设计方法10年前,电子设计的基本思路还是选用标准集成电路“自底向上”地构造出一个新的系统,这样的设计方法就如同一砖一瓦建造金字塔,不仅效率低、成本高而且容易出错。高层次设计是一种“自顶向下”的全新设计方法,这种设计方法首先从系统设计入手,在顶层进行功能方框图的划分和结构设计。在方框图一级进行仿真、纠错,并用硬件描述语言对高层次的系统行为进行描述,在系统一级进行验证。然后,用综合优化工具生成具体门电路的网络表,其对应的物理实现级可以是印刷电路板或专用集成电路。由于设计的主要仿真和调试过程是在高层次上完成的,这既有利于早期发现结构设计上的错误,避免设计工作的浪费,又减少了逻辑功能仿真的工作量,提高了设计的一次成功率。2ASIC设计现代电子产品的复杂度日益提高,一个电子系统可能由数万个中小规模集成电路构成,这就带来了体积大、功耗大、可靠性差的问题。解决这一问题的有效方法就是采用ASIC芯片进行设计。ASIC按照设计方法的不同可分为全定制ASIC、半定制ASIC和可编程ASIC(也称为可编程逻辑器件)。设计全定制ASIC芯片时,设计师要定义芯片上所有晶体管的几何图形和工艺规则,最后将设计结果交由IC厂家去进行掩模制造,做出产品。这种设计方法的优点是芯片可以获得最优的性能,即面积利用率高、速度快、功耗低,而缺点是开发周期长,费用高,只适合大批量产品开发。半定制ASIC芯片的版图设计方法分为门阵列设计法和标准单元设计法,这两种方法都是约束性的设计方法,其主要目的就是简化设计,以牺牲芯片性能为代价来缩短开发时间可编程逻辑芯片与上述掩模ASIC的不同之处在于:设计人员完成版图设计后,在实验室内就可以烧制出自己的芯片,无须IC厂家的参与,大大缩短了开发周期。可编程逻辑器件自70年代以来,经历了PAL、GAL、CPLD、FPGA几个发展阶段,其中CPLD/FPGA属高密度可编程逻辑器件,目前集成度已高达200万门/片,它将掩模ASIC集成度高的优点和可编程逻辑器件设计生产方便的特点结合在一起,特别适合于样品研制或小批量产品开发,使产品能以最快的速度上市,而当市场扩大时,它可以很容易地转由掩模ASIC实现,因此开发风险也大为降低。上述ASIC芯片,尤其是CPLD/FPGA器件,已成为现代高层次电子设计方法的实现载体。3.硬件描述语言硬件描述语言(HDL)是一种用于设计硬件电子系统的计算机语言,它用软件编程的方式来描述电子系统的逻辑功能、电路结构和连接形式,与传统的门级描述方式相比,它更适合大规模系统的设计。例如一个32位的加法器,利用图形输入软件需要输入500至1000个门,而利用VHDL语言只需要书写一行“A=BC”即可。而且VHDL语言可读性强,易于修改和发现错误。早期的硬件描述语言,如ABEL、HDL、AHDL,由不同的EDA厂商开发,互不兼容,而且不支持多层次设计,层次间翻译工作要由人工完成。为了克服以上不足,1985年美国国防部正式推出了高速集成电路硬件描述语言VHDL,1987年IEEE采纳VHDL为硬件描述语言标准(IEEESTD1076)。VHDL是一种全方位的硬件描述语言,包括系统行为级、寄存器传输级和逻辑门级多个设计层次,支持结构、数据流和行为三种描述形式的混合描述,因此VHDL几乎覆盖了以往各种硬件描述语言的功能,整个自顶向下或自底向上的电路设计过程都可以用VHDL来完成。VHDL还具有以下优点:(1)VHDL的宽范围描述能力使它成为高层次设计的核心,将设计人员的工作重心提高到了系统功能的实现与调试,而花较少的精力于物理实现。(2)VHDL可以用简洁明确的代码描述来进行复杂控制逻辑的设计,灵活且方便,而且也便于设计结果的交流、保存和重用。(3)VHDL的设计不依赖于特定的器件,方便了工艺的转换。(4)VHDL是一个标准语言,为众多的EDA厂商支持,因此移植性好。4EDA系统框架结构EDA系统框架结构(Framework)是一套配置和使用EDA软件包的规范。目前主要的EDA系统都建立了框架结构,如Cadence公司的DesignFramework,Mentor公司的FalconFramework,而且这些框架结构都遵守国际CFI组织制定的统一技术标准。框架结构能将来自不同EDA厂商的工具软件进行优化组合,集成在一个易于管理的统一的环境之下,而且还支持任务之间、设计师之间以及整个产品开发过程中的信息传输与共享,是并行工程和自顶向下设计方法的实现基础。2.2 EDA技术的基本设计方法1电路级设计电路级设计工作流程如图2.1所示。电子工程师接受系统设计任务 后,首先确定设计方案,并选择能实现该方案的合适元器件,然后根据具体的元器件设计电路原理图。接着进行第一次仿真,其中包括数字电路的逻辑模拟、故障分析,模拟电路的交直流分析、瞬态分析。在进行系统仿真时,必须要有元件模型库的支持,计算机上模拟的输入输出波形代替了实际电路调试中的信号源和示波器。这一次仿真主要是检验设计方案在功能方面的正确性。图2.1仿真通过后,根据原理图产生的电气连接网络表进行PCB板的自动布局布线。在制作PCB板之前还可以进行PCB后分析,其中包括热分析、噪声及窜扰分析、电磁兼容分析、可靠性分析等,并可将分析后的结果参数反标回电路图,进行第二次仿真,也称为后仿真。后仿真主要是检验PCB板在实际工作环境中的可行性。由此可见,电路级的EDA技术使电子工程师在实际的电子系统产生前,就可以全面地了解系统的功能特性和物理特性,从而将开发风险消灭在设计阶段,缩短了开发时间,降低了开发成本。2系统级设计进入90年代以来,电子信息类产品的开发明显呈现两个特点:一是产品复杂程度提高;二是产品上市时限紧迫。然而,电路级设计本质上是基于门级描述的单层次设计,设计的所有工作(包括设计输入、仿真和分析、设计修改等)都是在基本逻辑门这一层次上进行的,显然这种设计方法不能适应新的形势,一种高层次的电子设计方法,也即系统级设计方法,应运而生。高层次设计是一种“概念驱动式”设计,设计人员无须通过门级原理图描述电路,而是针对设计目标进行功能描述。由于摆脱了电路细节的束缚,设计人员可以把精力集中于创造性的方案与概念的构思上,一旦这些概念构思以高层次描述的形式输入计算机,EDA系统就能以规则驱动的方式自动完成整个设计。这样,新的概念就能迅速有效地成为产品,大大缩短了产品的研制周期。不仅如此,高层次设计只是定义系统的行为特性,可以不涉及实现工艺,因此还可以在厂家综合库的支持下,利用综合优化工具将高层次描述转换成针对某种工艺优化的网络表,使工艺转化变得轻而易举。系统级设计的工作流程见图3。首先,工程师按照“自顶向下”的设计方法进行系统划分。其次,输入VHDL代码,这是高层次设计中最为普遍的输入方式。此外,还可以采用图形输入方式(框图,状态图等),这种输入方式具有直观、容易理解的优点。第三步是,将以上的设计输入编译成标准的VHDL文件。第四步是进行代码级的功能仿真,主要是检验系统功能设计的正确性。这一步骤适用大型设计,因为对于大型设计来说,在综合前对源代码仿真,就可以大大减少设计重复的次数和时间。一般情况下,这一仿真步骤可略去。第五步是,利用综合器对VHDL源代码进行综合优化处理,生成门级描述的网络表文件,这是将高层次描述转化为硬件电路的关键步骤。综合优化是针对ASIC芯片供应商的某一产品系列进行的,所以综合的过程要在相应的厂家综合库支持下才能完成。第六步是,利用产生的网络表文件进行适配前的时序仿真,仿真过程不涉及具体器件的硬件特性,是较为粗略的。一般的设计,也可略去这一仿真步骤。第七步是利用适配器将综合后的网络表文件针对某一具体的目标器件进行逻辑映射操作,包括底层器件配置、逻辑分割、逻辑优化、布局布线。第八步是在适配完成后,产生多项设计结果:(1)适配报告,包括芯片内部资源利用情况,设计的布尔方程描述情况等;(2)适配后的仿真模型;(3)器件编程文件。根据适配后的仿真模型,可以进行适配后的时序仿真,因为已经得到器件的实际硬件特性(如时延特性),所以仿真结果能比较精确地预期未来芯片的实际性能。如果仿真结果达不到设计要求,就需要修改VHDL源代码或选择不同速度和品质的器件,直至满足设计要求;最后一步是将适配器产生的器件编程文件通过编程器或下载电缆载入到目标芯片FPGA或CPLD中。如果是大批量产品开发,则通过更换相应的厂家综合库,轻易地转由ASIC形式实现。图2.2综上所述,EDA技术是电子设计领域的一场革命,目前正处于高速发展阶段,每年都有新的EDA工具问世。广大电子工程人员掌握这一先进技术,这不仅是提高设计效率的需要,更是我国电子工业在世界市场上生存、竞争与发展的需要,正因EDA在设计控制系统中的这些特点,在电梯控制电路上采用EDA技术进行开发,越来越受到人们的重视。2.3 QuartusII软件介绍 Altera公司的QuartusII软件提供了可编程片上系统(SOPC)设计的一个综合开发环境。Quartus II 开发工具人机界面友好、易于使用、性能优良,并自带编译、仿真功能。QuartusII软件支持VHDL和Verilog硬件描述语言的设计输入、基于图形的设计输入方式以及集成系统级设计工具。QuartusII软件可以将设计、综合、布局和布线以及系统的验证全部都整合到一个无缝的环境之中,其中也包括和第三方EDA工具的接口。QuartusII设计软件根据设计者需要提供了一个完整的多平台开发环境,它包含整个FPGA和CPLD设计阶段的解决方案。在实际应用设计中,对程序原理性及可执行性的验证主要集中在程序修改阶段,尤其在处理的数据复杂、繁多时,Quartus II自带的波形输入仿真就很难实现程序的验证,而且输出的数据不能方便的以波形图示直观的呈现,给程序设计者在校验程序阶段带来了很多的不便。再有,在很多数字电路设计中,考虑成本的问题,FPGA实现的往往是设计的核心部分,而很多的外围电路如A/D转换器、D/A转换器等仍然使用传统的接口芯片来实现。而QuartusII 设计只是针对数字信号,并不支持模拟量的输入。而仅仅为了便于程序的验证而用FPGA实现这些外围电路,会大大延长程序的开发周期,更会增大开发的成本。而MATLAB具有强大的运算功能,可以容易的实现A/D、D/A转换等外围电路功能,并能以波形形式将结果直观地呈现,极大地方便了程序设计人员设计应用系统。第三章EDA实验箱使用和介绍3.1 GW48系统使用注意事项 a:闲置不用GW48 EDA/SOC系统时,关闭电源,拔下电源插头! b:EDA软件安装方法可参见光盘中相应目录中的中文README.TXT;详细使用方法可参阅本书或EDA技术实用教程、或VHDL实用教程中的相关章节。 c:在实验中,当选中某种模式后,要按一下右侧的复位键,以使系统进入该结构模式工作。 d:换目标芯片时要特别注意,不要插反或插错,也不要带电插拔,确信插对后才能开电源。其它接口都可带电插拔(当适配板上的10芯座处于左上角时,为正确位置)。 e:对工作电源为5V的CPLD(如1032E/1048C、95108或7128S等)下载时。最好将系统的电路“模式”切换到“ b”,以便使工作电压尽可能接近5V。 g: GW48详细使用方法可参见EDA技术实用教程配套教学软件*.ppt。 h:主板左侧3个开关默认向下,但靠右的开关必须打向上(DLOAD),才能下载。 i:跳线座“SPS” 默认向下短路(PIO48);右侧开关默认向下(TO MCU)。 j:左下角拨码开关除第4档“DS8使能”向下拨(8数码管显示使能)外,其余皆默认向上拔。3.2 GW48系统主板结构与使用方法 图3.2为GW48-CK型EDA实验开发系统的主板结构图(GW48-GK/PK型未画出,具体结构说明应该参考实物主板),该系统的实验电路结构是可控的。即可通过控制接口键SW9,使之改变连接方式以适应不同的实验需要。因而,从物理结构上看,实验板的电路结构是固定的,但其内部的信息流在主控器的控制下,电路结构将发生变化。这种“多任务重配置”设计方案的目的有3个:1.适应更多的实验与开发项目;2. 适应更多的PLD公司的器件;3. 适应更多的不同封装的FPGA和CPLD器件。系统板面主要部件及其使用方法说明如下。 以下是对GW48系统主板功能块的注释,但请注意,有的功能块仅GW48-GK获GW48-PK系统存在: 图3.2 (1) SW9 :按动该键能使实验板产生12种不同的实验电路结构。 (2)混合工作电压使用:对于低压FPGA/CPLD目标器件,在GW48系统上的设计方法与使用方法完全与5V器件一致,只是要对主板的跳线作一选择(对GW48-GK/PK系统不用跳线): JVCC/VS2:跳线JVCC(GW48GK/PK型标为“VS2”)对芯片I/O电压3.3V(VCCIO)或5V(VCC)作选择,对5V器件,必须选“5.0V”。例如,若系统上插的目标器件是EP1K30/50/100或EPF10K30E/50E等,要求将主板上的跳线座“JVCC”短路帽插向“3.3V”一端;将跳线座“JV2”短路帽插向“+2.5V”一端(如果是5V器件,跳线应插向“5.0V”)。 (3)键1键8 :为实验信号控制键,此8个键受“多任务重配置”电路控制,它在每一张电路图中的功能及其与主系统的连接方式随SW9的模式选择而变,使用中需参照第二节中的电路图。 (4)键9键12 :实验信号控制键(仅GW48GK/PK型含此键)此4个键不受“多任务重配置”电路控制,使用方法参考“实验电路结构 NO.5”。 (5) 数码管18/发光管D1D16 :也受“多任务重配置”电路控制,它们的连线形式也需参照第二节的电路图。 (6) 数码管914/发光管D17D22 :不受“多任务重配置”电路控制(仅GW48GK/PK型含此发光管),它们的连线形式和使用方法参考“实验电路结构 NO.5”。 (7)“时钟频率选择”P1A/JP1B/JP1C :为时钟频率选择模块。通过短路帽的不同接插方式,使目标芯片获得不同的时钟频率信号。对于“CLOCK0”JP1C,同时只能插一个短路帽,以便选择输向“CLOCK0”的一种频率: 信号频率范围: 1Hz 50MHz(对GW48-CK系统) 信号频率范围: 0.5Hz 50MHz(对GW48-GK系统) 信号频率范围: 0.5Hz 100MHz(对GW48-PK系统), 由于CLOCK0可选的频率比较多,所以比较适合于目标芯片对信号频率或周期测量等设计项目的信号输入端。JP1B分三个频率源组,即如系统板所示的“高频组”、“中频组”和“低频组”。它们分别对应三组时钟输入端。例如,将三个短路帽分别插于JP1B座的2Hz、1024Hz和12MHz;而另三个短路帽分别插于JP1A座的CLOCK4、CLOCK7和CLOCK8,这时,输向目标芯片的三个引脚:CLOCK4、CLOCK7和CLOCK8分别获得上述三个信号频率。需要特别注意的是,每一组频率源及其对应时钟输入端,分别只能插一个短路帽。也就是说,通过JP1A/B的组合频率选择,最多只能提供三个时钟频率。 注意,对于GW48-GK/PK系统,时钟选择比较简单:每一频率组仅接一个频率输入口,如低频端的4个频率通过短路帽,可选的时钟输入口仅为CLOCK2,因此对于GW48-GK/PK,总共只有4个时钟可同时输入FPGA:CLOCK0(Pin126)、CLOCK2(Pin54)、CLOCK5(Pin56)、CLOCK9(Pin126)。 (8)扬声器S1:目标芯片的声讯输出,与目标芯片的“SPEAKER”端相接,即PIO50。通过此口可以进行奏乐或了解信号的频率。 (9) PS/2接口:通过此接口,可以将PC机的键盘和/或鼠标与GW48系统的目标芯片相连,从而完成PS/2通信与控制方面的接口实验,GW48-GK/PK含另一PS/2接口,参见实验电路结构 NO.5。 (10)VGA视频接口:通过它可完成目标芯片对VGA显示器的控制。 (11) 单片机接口器件:它与目标板的连接方式也已标于主系统板上: 注意1,对于GW48-GK/PK系统,实验板左侧有一开关,向上拨,将RS232通信口直接与FPGA的PIO31和PIO30相接;向下拨则与89C51单片机的P30和P31端口相接。于是通过此开关可以进行不同的通信实验,平时此开关向下打,不要影响FPGA的工作。 注意2,由附图2-13可知,单片机89C51的P3和P1口是与FPGA的PIO66-PIO79相接的,而这些端口又与6数码管扫描显示电路连在一起的,所以当要进行6数码管扫描显示实验时,必须拔去右侧的单片机,并安实验电路结构 NO.5,将拨码开关3,拨为使能,这时LCD停止工作。 (12) RS-232串行通讯接口:此接口电路是为单片机与PC机通讯准备的,由此可以使PC机、单片机、FPGA/CPLD三者实现双向通信。当目标板上FPGA/CPLD器件需要直接与PC机进行串行通讯时,可参见附图2-13,和实验电路结构图NO.5,将实验板右侧的开关向上打“TO FPGA”,从而使目标芯片的PIO31和PIO30与RS232口相接,即使RS232的通信接口直接与目标器件FPGA的PIO30/PIO31相接。而当需要使PC机的RS232串行接口与单片机的P3.0和P3.1口相接时,则应将开关向下打“TO MCU”既可(平时不用时也应保持在个位置)。 (13) “AOUT” D/A转换 :利用此电路模块(实验板左下侧),可以完成FPGA/CPLD目标芯片与D/A转换器的接口实验或相应的开发。它们之间的连接方式可参阅“实验电路结构 NO.5” :D/A的模拟信号的输出接口是“AOUT”,示波器可挂接左下角的两个连接端。当使能拨码开关8:“滤波1”时,D/A的模拟输出将获得不同程度的滤波效果 。 注意,进行D/A接口实验时,需打开左侧第2个开关,获得+/-12伏电源,实验结束后关上此电源。 (14) “AIN0”/“AIN1”:外界模拟信号可以分别通过系统板左下侧的两个输入端“AIN0”和“AIN1”进入A/D转换器ADC0809的输入通道IN0和IN1,ADC0809与目标芯片直接相连。通过适当设计,目标芯片可以完成对ADC0809的工作方式确定、输入端口选择、数据采集与处理等所有控制工作,并可通过系统板提供的译码显示电路,将测得的结果显示出来。此项实验首先需参阅第二节的“实验电路结构NO.5”有关0809与目标芯片的接口方式,同时了解系统板上的接插方法以及有关0809工作时序和引脚信号功能方面的资料。 注意:不用0809时,需将左下角的拨码开关的“A/D使能”和“转换结束”打为禁止:向上拨,以避免与其他电路冲突。3.3模式选择在此设计中模式选择很重要,在实验箱中模式有很多种见附录二图1,但设计要接口多在此设计中我们选择模式5如图3.3图3.3第四章 总体方案设计4.1设计的目的针对我国楼层层数的基本水平,本着“一理通,百理明”的原则,本设计希望通过简单的六层电梯控制器的设计,为广大电梯设计者提供一个基础。针对目前中小型电梯所能实现的功能,本控制器虚拟实现以下功能:(1) 指示电梯所在楼层(2) 电梯基本运行(3) 关门延时设置(4) 提前关门设置(5) 超载报警(6) 故障报警4.2 设计要求六层电梯控制器将实现的功能:(1)每层电梯入口处设有上下请求开关,电梯内设有顾客到达层次的停站请求开关。(2)设有电梯入口处位置指示装置及电梯运行模式(上升或下降)指示装置。(3)电梯每秒升(降)一层楼。(4)电梯到达有停站请求的楼层,经过1秒电梯门打开,开门指示灯亮,开门4秒后,电梯门关闭(开门指示灯灭),电梯继续进行,直至执行完最后一个请求信号后停留在当前层。(5)能记忆电梯内外所有请求,并按照电梯运行规则按顺序响应,每个请求信号保留至执行后消除。(6)电梯运行规则:当电梯处于上升模式时,只响应比电梯所在位置高的上楼请求信号,由下而上逐个执行,直到最后一个上楼请求执行完毕;如果高层有下楼请求,则直接升到由下楼请求的最高层,然后进入下降模式。当电梯处于下降模式时则与上升模式相反。(7)电梯初始状态为一层开门状态。4.3设计的基础依据现代电子设计技术的核心是EDA技术。基于EDA技术开发的实现六层电梯自动控制与目前主流的利用可编程逻辑控制器实现电梯控制紧密相连。硬件描述语言是EDA技术的重要组成部分,VHDL是作为电子设计主流硬件的描述语言。使用VHDL语言进行程序设计,在QuartusII软件上对程序进行编译、仿真。在MAX2win平台上开发具有易学易懂、控制灵活方便、抗干扰能力强、运行稳定可靠等优点。4.3.1VHDL语言介绍VHDL(Very High Speed Integrated Circuit Hardware Description Language)语言于1983年由美国国防部发起创建,由电工和电子工程师协会(the institute of electrical and electronics engineer)进一步发展并在1987年作为“IEEE1076”发布。从此,VHDL成为硬件描述语言的业界标准之一。VHDL作为一个规范语言和建模语言,具有很强的电路描述和建模能力,能从多个层次对数字系统进行建模和描述,从而大大简化了硬件设计任务,提高了设计效率和可靠性。VHDL具有与具体硬件电路无关和设计平台无关的特性,并且具有良好的电路行为描述和系统描述的能力,并在语言易读性和层次化结构化设计方面,表现了强大的生命力和应用潜力。4.3.2 VHDL的特点 应用VHDL进行系统设计,有以下几方面的特点:(一) 功能强大:VHDL具有功能强大的语言结构。它可以用明确的代码描述复杂的控制逻辑设计。并且具有多层次的设计描述功能,支持设计库和可重复使用的元件生成。VHDL是一种设计、仿真和综合的标准硬件描述语言。(二) 可移植性:VHDL语言是一个标准语言,其设计描述可以为不同的EDA工具支持。它可以从一个仿真工具移植到另一个仿真工具,从一个综合工具移植到另一个综合工具,从一个工作平台移植到另一个工作平台。此外,通过更换库再重新综合很容易移植为ASIC设计。(三) 独立性:VHDL的硬件描述与具体的工艺技术和硬件结构无关。设计者可以不懂硬件的结构,也不必管最终设计实现的目标器件是什么,而进行独立的设计。程序设计的硬件目标器件有广阔的选择范围,可以是各系列的CPLD、FPGA及各种门阵列器件。(四) 可操作性:由于VHDL具有类属描述语句和子程序调用等功能,对于已完成的设计,在不改变源程序的条件下,只需改变端口类属参量或函数,就能轻易地改变设计的规模和结构。(五) 灵活性:VHDL最初是作为一种仿真标准格式出现的,有着丰富的仿真语句和库函数。使其在任何大系统的设计中,随时可对设计进行仿真模拟。所以,即使在远离门级的高层次(即使设计尚未完成时),设计者就能够对整个工程设计的结构和功能的可行性进行查验,并做出决策。4.3.3 VHDL的设计步骤采用VHDL的系统设计,一般有以下6个步骤。(1)要求的功能模块划分;(2)VHDL的设计描述(设计输入);(3)代码仿真模拟(前仿真);(4)计综合、优化和布局布线;(5)布局布线后的仿真模拟(后仿真);(6)设计的实现(下载到目标器件)。4.3.4 VHDL语言编程格式 (1)一个完整的VHDL程序是以下五部分组成的: 库(LIBRARY):储存预先已经写好的程序和数据的集合。 程序包(PACKAGE):声明在设计中将用到的常数、数据类型、元件及子程序。 实体(ENTITY):声明到其他实体或其他设计的接口,即定义本定义的输入输出端口。 构造体(ARCHITECTUR):定义实体的实现。 电路的具体描述配置(CONFIGURATION):一个实体可以有多个构造体,可以通过配置来为实体选择其中一个构造体。(2)实体实体(ENTITY)是VHDL设计中最其本的组成部分之一(另一个是结构体),VHDL表达的所有设计均与实体有关。实体类似于原理图中的一个部件符号,它并不描述设计的具体功能,只是定义所需的全部输入/输出信号。实体格式如下:ENTITY 实体名 ISGENERIC(常数名:数据类型:设定值) 类属说明 PORT