东北石油大学课程设计2009年7 月10 日东北石油大学课程设计任务书课程电子系统设计与实践计题目数字电压表设计专业计算机科学与技术姓名学号主要内容、基本要求等一、主要内容:利用EL教学实验箱、微机和QuartusⅡ软件系统,使用VHDL语言输入方法设计数字钟。
可以利用层次设计方法和VHDL语言,完成硬件设计设计和仿真。
最后在EL教学实验箱中实现。
二、基本要求:1、A/D转换接口电路的设计,负责对ADC0809的控制。
2、编码转换电路设计,负责把从ADC0809数据总线中读出的电压转换成BCD 码。
3、输出七段显示电路的设计,负责将BCD码用7段显示器显示出来。
三、扩展要求1. 当测量结束后,蜂鸣器鸣响10声。
按照规范写出论文,要求字数在4000字以上,并进行答辩。
论文内容包括概述(学习、调研、分析、设计的内容摘要)、EDA技术的现状和发展趋势、对EL教学实验箱和QuartusⅡ软件的掌握程度、数字钟的设计过程(包括原理图或程序设计、编译、仿真分析、硬件测试的全过程),论文中含有原理图、程序、仿真波形图及其分析报告。
完成期限2周指导教师专业负责人年月日东北石油大学课程设计成绩评价表指导教师:年月日摘要Quartus II 是Altera公司的综合性PLD开发软件,支持原理图、VHDL、VerilogHDL以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。
Quartus II可以在XP、Linux以及Unix上使用,除了可以使用Tcl脚本完成设计流程外,提供了完善的用户图形界面设计方式。
具有运行速度快,界面统一,功能集中,易学易用等特点。
本文设计主要利用VHDL语言在EDA平台上设计一个数字电压表,它的显示位数为4位,由三大部分组成,每一部分又包含了若干子电路,将各电路组合起来,就构成了一个整体。
总的程序由几个各具不同功能的部分组成,其中包括循环控制P1、复位和状态转换P2、编码转换data、BCD码加法do、输出七段显示dout。
并且使用Quartus7.2-II软件进行电路波形仿真,下载到EDA实验箱进行验证。
关键词: EDA(电子设计自动化);VHDL(硬件描述语言);ADC0809;数字电压表。
目录第1章概述 (1)1.1EDA的概念 (1)1.2VHDL语言的概念 (2)1.3EDA的开发环境 (3)第2章数字电压表的系统分析 (4)2.1设计目的 (4)2.2功能说明 (4)2.3实验原理 (4)2.4系统硬件 (4)第3章数字电压表的底层电路设计 (5)3.1设计规划 (5)3.2设计说明 (5)3.3电路程序 (5)第4章数字电压表的测试与运行 (13)4.1数字电压表的编译与仿真 (13)4.2数字电压表的适配与测试 (15)结论 (17)参考文献 (18)第1章概述1.1 EDA的概念EDA在通信行业(电信)里的另一个解释是企业数据架构,EDA给出了一个企业级的数据架构的总体视图,并按照电信企业的特征,进行了框架和层级的划分。
EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪60年代中期从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。
20世纪90年代,国际上电子和计算机技术较先进的国家,一直在积极探索新的电子电路设计方法,并在设计方法、工具等方面进行了彻底的变革,取得了巨大成功。
在电子技术设计领域,可编程逻辑器件(如CPLD、FPGA)的应用,已得到广泛的普及,这些器件为数字系统的设计带来了极大的灵活性。
这些器件可以通过软件编程而对其硬件结构和工作方式进行重构,从而使得硬件的设计可以如同软件设计那样方便快捷。
这一切极大地改变了传统的数字系统设计方法、设计过程和设计观念,促进了EDA技术的迅速发展。
EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言VHDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。
EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。
利用EDA工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出IC版图或PCB版图的整个过程的计算机上自动处理完成。
现在对EDA的概念或范畴用得很宽。
包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域,都有EDA的应用。
目前EDA技术已在各大公司、企事业单位和科研教学部门广泛使用。
例如在飞机制造过程中,从设计、性能测试及特性分析直到飞行模拟,都可能涉及到EDA技术。
1.2 VHDL语言的概念VHDL 的英文全名是Very-High-Speed Integrated Circuit Hardware Description Language,诞生于 1982 年。
1987 年底,VHDL被 IEEE 和美国国防部确认为标准硬件描述语言。
VHDL主要用于描述数字系统的结构,行为,功能和接口。
除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。
VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。
在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。
这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。
VHDL 语言能够成为标准化的硬件描述语言并获得广泛应用 , 它自身必然具有很多其他硬件描述语言所不具备的优点。
归纳起来 ,VHDL 语言主要具有以下优点:(1) VHDL 语言功能强大 , 设计方式多样VHDL 语言具有强大的语言结构, 只需采用简单明确的VHDL语言程序就可以描述十分复杂的硬件电路。
同时, 它还具有多层次的电路设计描述功能。
此外 ,VHDL 语言能够同时支持同步电路、异步电路和随机电路的设计实现, 这是其他硬件描述语言所不能比拟的。
VHDL 语言设计方法灵活多样 , 既支持自顶向下的设计方式, 也支持自底向上的设计方法; 既支持模块化设计方法, 也支持层次化设计方法。
(2) VHDL 语言具有强大的硬件描述能力VHDL 语言具有多层次的电路设计描述功能,既可描述系统级电路 , 也可以描述门级电路;描述方式既可以采用行为描述、寄存器传输描述或者结构描述,也可以采用三者的混合描述方式。
同时,VHDL 语言也支持惯性延迟和传输延迟,这样可以准确地建立硬件电路的模型。
VHDL 语言的强大描述能力还体现在它具有丰富的数据类型。
VHDL 语言既支持标准定义的数据类型,也支持用户定义的数据类型,这样便会给硬件描述带来较大的自由度。
(3) VHDL 语言具有很强的移植能力VHDL 语言很强的移植能力主要体现在: 对于同一个硬件电路的 VHDL 语言描述 , 它可以从一个模拟器移植到另一个模拟器上、从一个综合器移植到另一个综合器上或者从一个工作平台移植到另一个工作平台上去执行。
(4) VHDL 语言的设计描述与器件无关采用 VHDL 语言描述硬件电路时, 设计人员并不需要首先考虑选择进行设计的器件。
这样做的好处是可以使设计人员集中精力进行电路设计的优化, 而不需要考虑其他的问题。
当硬件电路的设计描述完成以后 ,VHDL 语言允许采用多种不同的器件结构来实现。
(5) VHDL 语言程序易于共享和复用VHDL 语言采用基于库 ( library) 的设计方法。
在设计过程中 , 设计人员可以建立各种可再次利用的模块 , 一个大规模的硬件电路的设计不可能从门级电路开始一步步地进行设计 , 而是一些模块的累加。
这些模块可以预先设计或者使用以前设计中的存档模块, 将这些模块存放在库中 , 就可以在以后的设计中进行复用。
由于 VHDL 语言是一种描述、模拟、综合、优化和布线的标准硬件描述语言 , 因此它可以使设计成果在设计人员之间方便地进行交流和共享, 从而减小硬件电路设计的工作量, 缩短开发周期。
1.3 EDA的开发环境EDA工具软件可大致可分为芯片设计辅助软件、可编程芯片辅助设计软件、系统设计辅助软件等三类。
目前进入我国并具有广泛影响的EDA软件是系统设计软件辅助类和可编程芯片辅助设计软件:Protel、Altium Designer、PSPICE、multiSIM10(原EWB的最新版本)、OrCAD、PCAD、LSIIogic、MicroSim、ISE、modelsim、Matlab等等。
这些工具都有较强的功能,一般可用于几个方面,例如很多软件都可以进行电路设计与仿真,同进还可以进行PCB自动布局布线,可输出多种网表文件与第三方软件接口。
第2章数字电压表的系统分析2.1设计目的1.掌握负责对ADC0809进行控制的A/D转换接口电路的设计。
2.掌握负责把从ADC0809数据总线中读出的电压转换成BCD码的编码转换电路的设计。
3.掌握十六进制转十进制的运算方法。
4.理解输出七段显示电路的设计。
2.2功能说明1.具有输出模拟电压的功能。
2.具有复位。
2.3实验原理在同一EPLD芯片EPF10K10上集成了如下电路模块:1.控制ADC0809对模拟电压的转换。
2.通过编码设计电路,将ADC0809中的电压转换为BCD码。
3.通过对7段显示电路的设计,将读出的电压通过7段显示器显示出来。
2.4系统硬件1.EPF10K10LC84-4适配器。
2. 可变直流电平输出电路。
3. ADC0809。
4. 7段显示器。
第3章数字电压表的底层电路设计3.1设计规划数字电压表因为只实现一个功能,附带一个重置的控制功能。
因此可以将数字电压表设计分为以下模块:1.控制信号模块:利用状态机来实现控制器对ADC0809进行模/数信号的转换的控制。
2.电压转换BCD码模块:找出模拟输入电压与输出电压的对应关系,设计一个12位的BCD码加法器。
3.电压显示模块:对转换后的电压数进行显示,将数字分为7个部分,另外还有小数点,通过vhdl程序对进行相应电压数的转换。
3.2设计说明首先从整体分析数字电压表,然后对其进行细化,将其大致分为三大模块,然后专攻一个部分,再将其融合在一起。
3.3电路程序3.3.1 实体部分(VHDL语言编译)其代码如下:(VHDL语言):library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;entity voltmeter isport (D: in std_logic_vector(7 downto 0);CLK,INT,RESET: in std_logic;CS,RD,WR: out std_logic;DATOUT: out std_logic_vector(11 downto 0));end voltmeter;architecture doit of voltmeter issignal datain : std_logic_vector(7 downto 0);signal data1,data2 : std_logic_vector(15 downto 0);signal dout1,dout2,dout3,dout4 : std_logic_vector(11 downto 0);signal do1,do2,do3,do4,c1,c2,c3,doo1,doo2,doo3,doo4 :std_logic_vector(4 downto 0); type statetype is(idle,write,swait,read,disp1,disp2,disp3,disp4);signal present_state,next_state: statetype;这段VHDL语言声明实体voltmeter并定义其信号。