EDA技术与VHDL设计(西电版)第9章-数字电子系统设计及典型实例课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《EDA技术与VHDL设计(西电版)第9章-数字电子系统设计及典型实例课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EDA 技术 VHDL 设计 西电版 数字 电子 系统 典型 实例 课件
- 资源描述:
-
1、1 1第9章 数字电子系统设计及典型实例 第9章 数字电子系统设计及典型实例 9.1 数字电子系统的构成 9.2 数字电子系统设计基本流程 9.3 数字电子系统设计实例 2 2第9章 数字电子系统设计及典型实例 9.1 数字电子系统的构成数字电子系统的构成数字电子系统通过数字电路逻辑器件,以数字方式对信息进行处理、传送或存储,来实现其特定的、复杂的功能。从功能上,数字电子系统通常可以分为系统接口、数据处理器和控制器三个部分,如图9-1所示。3 3第9章 数字电子系统设计及典型实例 图9-1 数字电子系统的构成 4 4第9章 数字电子系统设计及典型实例 其中,系统接口是完成将物理量转化为数字量或
2、将数字量转化为物理量的功能部件,例如键盘、打印机、音响系统、显示系统等;数据处理器的主要功能是实现对数字信息的处理,在接受控制命令,执行相应动作的同时,还将自身的状态反馈给控制部分,其逻辑功能常常可分解为若干个子处理单元来完成,例如译码器、运算器等;控制器的功能则是接收外部输入信号,以及数据处理器反馈的信号,管理各个子系统的局部及整个系统按规定顺序工作。5 5第9章 数字电子系统设计及典型实例 一般情况下,系统接口、数据处理器可通过组合电路或时序电路构成;控制器由同步时序电路构成。而这些数字逻辑电路都可以通过可编程逻辑器件(CPLD/FPGA)来实现。随着可编程逻辑器件的集成度和功能的日益提高
3、,一个可编程逻辑器件芯片除了有丰富的数字逻辑资源外,还含有一个或多个主要功能模块(如CPU、数字信号处理器核和其他的专门处理功能模块)、嵌入式存储器功能块以及通用或专用I/O功能块等。这样,一个芯片就可以构成一个完整的数字电子系统(片上可编程系统SOPC,System on Programmable Chip)。6 6第9章 数字电子系统设计及典型实例 9.2 数字电子系统设计基本流程数字电子系统设计基本流程在现代电子系统设计领域,EDA技术已经成为电子系统设计的重要手段。基于EDA技术及VHDL的数字电子系统是采用自顶向下和层次化结构建模的方法来进行设计的,其基本的设计流程如下:7 7第9章
4、 数字电子系统设计及典型实例 1分析设计要求分析设计要求进行数字电子系统设计,首先要正确理解项目的任务、要求和指标。例如:设计一个数字电子钟系统,需要理解数字电子钟的基本功能,工作原理,输入、输出端口,显示方式,测试精度等相关知识,这些基本概念是提出设计方案的前提和依据,也是完成整个设计任务的关键。相关设计项目的技术资料可以通过搜寻相关网站或查阅参考文献完成。8 8第9章 数字电子系统设计及典型实例 2确定方案确定方案根据设计任务的总体框架、技术指标,找出可以实现设计任务的不同方案,然后从可行性、性能价格比、复杂度、可靠性、通用性、扩展性、工作速度、所需器件的资源、成本等多方面进行分析、计算和
5、比较,选择出合适、高效、稳定的设计方案。在方案确定中,需要考虑的一个关键因素是系统实现的最终硬件环境,也就是CPLD/FPGA器件的选型。选型一般采取两步走的方式:首先采用CPLD/FPGA适配板或开发板来实现既定功能,在设计项目确保验证无误后,再转化成实际的电子系统。9 9第9章 数字电子系统设计及典型实例 在选择硬件开发环境时需要考虑三个方面:一是适用目标芯片的型号以及开发系统的类别和型号;二是确认开发系统提供的输入端外围硬件资源(如独立或矩阵按键、键盘、晶振、A/D转化器等)是否需要扩展,稳定性如何;三是确认开发系统提供的输出端外围硬件资源,如数码管、液晶显示器、受控器、驱动器、D/A转
6、换器、扬声器、各种接插件等,判断是否需要扩展外围电路,同时这些硬件资源也是目标芯片锁定引脚的依据。10 10第9章 数字电子系统设计及典型实例 3细化设计方案细化设计方案确定设计方案后,需要把设计项目分解成若干个功能清晰、易于设计的模块,构成层次化设计方案的结构框图,再将结构框图从粗至细,步步细化,直到每个模块易于实现为止。要明确每一个模块的基本功能(任务)、输入/输出端口以及各模块间的接口信号、控制关系,使之合情合理,满足设计要求。11 11第9章 数字电子系统设计及典型实例 4. 设计模块电路设计模块电路设计模块电路时,首先需明确各模块的工作原理、设计思路。根据实际需要,可选取原理图或HD
7、L语言描述方式来实现。一个好的设计构思,应简单明了、结构清晰、易于扩充,这不仅能提高设计效率,而且能有好的设计方案。每完成一个模块设计,都要进行仿真测试,检验每一个模块能否实现预定的技术指标,及时发现问题并予以修正,确保设计工作顺利进行。12 12第9章 数字电子系统设计及典型实例 5设计顶层模块设计顶层模块顶层模块设计实际是将底层模块电路级联起来,形成整体电路。对顶层模块进行仿真测试时,如果顶层电路出现异常,问题大多来源于底层电路或总体设计方案,应及时排除故障,反复测试推敲。6适配下载适配下载根据选定的目标芯片的编程接口、编程模式、配置器件等,锁定管脚适配下载。13 13第9章 数字电子系统
8、设计及典型实例 7硬件验证硬件验证进行硬件验证的目的,一方面是实际检验目标芯片的逻辑功能,另一方面是检验系统电路的响应速度、带载能力、抗干扰能力、电能损耗等多项性能指标。只有对目标芯片编程下载成功并通过了硬件验证的设计项目才会是合格的项目。当然,对于不同的设计项目,进行硬件验证的方式、方法、手段都可能有所不同。8文件归档和撰写设计总结报告文件归档和撰写设计总结报告当硬件测试结果符合设计要求后,最后的工作即是文件归档和撰写设计总结报告。文件归档指将所有设计文件归纳整理,删除不必要的中间文件,保留最终版本的设计文件。14 14第9章 数字电子系统设计及典型实例 设计总结报告是设计者对整个设计进程的
9、工作业绩、收获体会的全面总结。在撰写设计总结报告时,其内容次序应尽量与设计过程一致。设计报告一般包括设计思路、电路结构选择依据、实现关键技术指标的理论依据和计算公式、核心模块的工作原理等,并辅以必要的整体/局部原理电路、仿真分析、HDL语言注释、各模块的端口名称定义、各图表的编号说明等。设计报告中对设计成果的检测方法和结果必须真实可靠,同时,对设计成果的不足之处以及改进措施也可以写进报告之中。设计总结报告的撰写,不仅可使设计者自身在理论分析、应用技术、实践能力上有所提高,也可为他人使用或者修改系统设计项目提供完整的第一手资料。15 15第9章 数字电子系统设计及典型实例 9.3 数字电子系统设
10、计实例数字电子系统设计实例本节以数字跑表的设计、交通信号灯控制系统的设计以及离线误码检测仪的设计共三个实例来进一步说明数字电子系统的设计。9.3.1 数字跑表的设计数字跑表的设计1设计要求设计要求数字跑表是体育比赛中常用的计时仪器。它使用简单、携带方便,通过按键控制计时的起点和终点,其主要技术指标是计时精度和计时范围。16 16第9章 数字电子系统设计及典型实例 本例设计的数字跑表计时精度为10毫秒,计时范围为0分00秒00毫秒59分59秒99毫秒,具有复位、开始计时、停止计时及显示等功能。2确定方案确定方案通过对设计要求的分析可以看出,数字跑表的核心功能就是控制、计时和显示。计时功能可以通过
11、计数器来实现,显示功能可以通过对8位数码管扫描控制来实现;而复位、开始计时、停止计时功能实际上是对计数器进行控制,可通过按键输入信号控制计数器是否清零、是否开始或停止计数来实现。由此可得出数字跑表的系统总体设计框图,如图9-2所示。17 17第9章 数字电子系统设计及典型实例 图9-2 数字跑表总体设计框图 18 18第9章 数字电子系统设计及典型实例 数字跑表的硬件验证环境可以先采用FPGA/CPLD适配板或开发板,当设计无误后,再选用最合适的芯片,设计PCB板来最终实现。下面将EDA综合实验箱作为开发平台进行设计。(1) 核心部分:由FPGA器件Cyclone 系列EP3C10E144C8
12、实现所有的逻辑功能。(2) 输入部分:以EDA综合实验箱提供的40 MHz的晶振时钟作为输入时钟信号,按需要进行不同的分频;使用EDA核心板上的按键SW0和SW1分别作为复位和开始计时/停止计时信号。(3) 输出部分:采用8位七段数码管分别对分、秒、百分之一秒进行显示,其格式如图9-3所示。19 19第9章 数字电子系统设计及典型实例 图9-3 数字跑表输出格式 2020第9章 数字电子系统设计及典型实例 3. 细化设计方案细化设计方案根据数字跑表的计时、控制、显示这三个功能,可以把FPGA设计方案进一步细化,按照功能来分割模块。(1) 计时功能:由稳定、准确的输入计数时钟和计数模块来实现。考
13、虑到设计指标要求跑表精度为0.01秒,那么计数器的时钟输入就应该是频率为100 Hz的脉冲,但EDA综合实验箱提供的时钟晶振是40 MHz,不能直接使用。所以要先设计一个分频系数是400000的分频器,该分频器的输出才能作为计数器的最低位的计数时钟信号。其次,计数模块设计应考虑跑表的计时范围(0分0秒00毫秒59分59秒99毫秒)。可以看出,需要6位计数输出,其中有两位是六进制形式(分和秒的十位),其余四位是十进制形式,即可通过4个模10计数器和2个模6计数器来实现,其中低一级的进位输出就是高一级的计数时钟信号。计数器模块构成如图9-4所示。21 21第9章 数字电子系统设计及典型实例 图9-
14、4 计数器模块构成图 2222第9章 数字电子系统设计及典型实例 (2) 按键控制功能:通过开始计时/停止计时、复位两个按键来控制计数器的工作状态。复位按键端口直接接到计数器的清零端rst即可实现复位。开始计时/停止计时按键可通过控制计数器的使能端en来实现对计数器的控制,当en取值为“0”时,计数器开始计数;反之,则停止计数。但是此按键输入需要先经过消抖处理,否则容易误判按键键值;然后再进行信号转化。2323第9章 数字电子系统设计及典型实例 (3) 显示功能:使用8位数码管来显示计时结果。根据EDA综合实验箱的硬件结构,数码管采用动态扫描显示的方式,使用一个频率是1kHz的扫描信号扫描数码
15、管,实现对6位已经锁存的计数结果以及分割符“”和小数点“.”的扫描输出。根据上述分析,将具体功能整合后数字跑表的原理框图如图9-5所示。可以看出,数字跑表主要包含:时钟分频模块、使能控制模块、计数模块、显示控制模块四个模块。2424第9章 数字电子系统设计及典型实例 图9-5 数字跑表的原理框图 2525第9章 数字电子系统设计及典型实例 4模块设计模块设计1) 时钟分频模块时钟分频模块的功能是将实验箱提供的40MHz的晶振信号进行分频,产生用于数码管扫描的1kHz的扫描时钟clk_s,以及用于计数器模块进行计数的100Hz的计数时钟clk_c。时钟分频模块的VHDL源代码见例9-1,仿真结果
16、见图9-6。2626第9章 数字电子系统设计及典型实例 【例9-1】2727第9章 数字电子系统设计及典型实例 2828第9章 数字电子系统设计及典型实例 图9-6 分频模块仿真波形 2929第9章 数字电子系统设计及典型实例 2) 计数模块计数模块由4个十进制计数器和2个六进制计数器构成,低一级的计数进位信号作为高一级的计数器的时钟信号,结构如图9-4所示。这里先分别构造十进制计数器(见例9-2)和六进制计数器(见例9-3)。图9-7是十进制计数器的仿真结果,图9-8是六进制计数器的仿真结果。3030第9章 数字电子系统设计及典型实例 【例9-2】31 31第9章 数字电子系统设计及典型实例
17、 3232第9章 数字电子系统设计及典型实例 图9-7 十进制计数器仿真结果 3333第9章 数字电子系统设计及典型实例 【例9-3】3434第9章 数字电子系统设计及典型实例 3535第9章 数字电子系统设计及典型实例 图9-8 六进制计数器仿真结果 3636第9章 数字电子系统设计及典型实例 在计数器设计完成后就可以直接调用它们完成计数模块的设计,可以采用原理图的形式或VHDL元件例化的形式。图9-9采用原理图的形式调用计数器,例9-4采用元件例化的形式调用计数器。计数器元件图如图9-10所示,有3个输入端和6个计数输出端。计数器总体设计仿真结果见图9-11和图9-12。3737第9章 数
18、字电子系统设计及典型实例 【例9-4】3838第9章 数字电子系统设计及典型实例 3939第9章 数字电子系统设计及典型实例 图9-9 计数模块设计原理图 4040第9章 数字电子系统设计及典型实例 图9-10 计数器元件图 clk_crstenmsi3.0msh3.0sl3.0sh3.0ml3.0mh3.0cntinst41 41第9章 数字电子系统设计及典型实例 图9-11 计数模块仿真结果(1)4242第9章 数字电子系统设计及典型实例 图9-12 计数模块仿真结果(2) 4343第9章 数字电子系统设计及典型实例 3) 显示控制模块显示控制模块的目的是控制数码管按设计要求正确显示计时结
19、果。数码管以发光二极管作为字段来进行显示,分为共阴和共阳两种,其差别在于:共阴数码管的发光二极管的阴极连接在一起,而阳极对应各段分别控制;共阳数码管则刚好相反,发光二极管的阳极连接在一起,阴极对应各段分别控制。5.5.4节中已对数码管电路和显示编码进行了讲解,这里不再赘述。4444第9章 数字电子系统设计及典型实例 EDA综合实验箱采用共阴数码管,且8位数码管的段选信号是连接在一起的,即只能采用动态扫描的形式进行显示。位选信号以一定的扫描速度依次选通数码管,即驱动数码管轮流进行显示,利用发光二极管的余辉与人眼的视觉暂存作用,使人眼感觉数码管是同时进行显示的。显示控制模块可分为两个子模块:译码子
20、模块和扫描子模块。译码子模块实现4位二进制计数结果与对应数码管各段编码的转换;扫描子模块则通过1 kHz的扫描信号依次选中数码管,并决定该位数码管显示的数字。4545第9章 数字电子系统设计及典型实例 (1) 译码子模块。译码子模块将输入的4位二进制计数结果转化为对应的数码管编码,VHDL代码见例9-5。其仿真结果如图9-13和图9-14所示。由图9-14可以看出,当输入数字是除09以及分隔符外,均不显示。4646第9章 数字电子系统设计及典型实例 【例9-5】4747第9章 数字电子系统设计及典型实例 4848第9章 数字电子系统设计及典型实例 图9-14 译码子模块仿真结果(2)图9-13
21、 译码子模块仿真结果(1)4949第9章 数字电子系统设计及典型实例 (2) 扫描子模块。扫描子模块利用时钟分频模块产生的分频输出信号clk_s作为扫描信号,依次选中每个数码管,控制位选信号。同时还决定当不同数码管选中时,该数码管显示哪一位计数结果,如分高位mh、分低位ml等。扫描子模块VHDL代码见例9-6,仿真结果见图9-15。5050第9章 数字电子系统设计及典型实例 【例9-6】51 51第9章 数字电子系统设计及典型实例 5252第9章 数字电子系统设计及典型实例 图9-15 扫描子模块仿真结果 5353第9章 数字电子系统设计及典型实例 (3) 显示控制模块总体设计。显示控制模块由
22、译码子模块和扫描子模块组成,可采用 VHDL例化语句(见例9-7)或原理图的形式将它们连接起来。原理图的形式请读者自行完成。显示控制模块元件如图9-16所示。5454第9章 数字电子系统设计及典型实例 【例9-7】5555第9章 数字电子系统设计及典型实例 5656第9章 数字电子系统设计及典型实例 图9-16 显示控制模块元件图 clk_smsl3.0msh3.0sl3.0sh3.0ml3.0mh3.0seg7.0dig7.0displayinst75757第9章 数字电子系统设计及典型实例 4) 使能控制模块由于使能按键信号是单个脉冲信号,而计数器要持续计数所需的使能信号是持续的电平,因此
23、,使能控制模块的功能是对输入的开始计时/停止计时按键信号进行处理,使之变成能直接控制计数器模块的使能信号。另外,由于按键是一种机械开关(单个按键工作原理见图9-17),核心部件是弹性金属簧片,在开关切换的瞬间(即按键开关按下或松开时)会在触点出现来回弹跳的现象,如图9-18所示。弹跳现象引起的信号抖动会造成电路的误判,从而影响系统的正确性。一般而言,抖动的时间是510 ms。所以,使能控制模块首先需要对按键信号进行消除抖动处理,然后再完成信号的转换。5858第9章 数字电子系统设计及典型实例 图9-17 按键工作原理 5959第9章 数字电子系统设计及典型实例 图9-18 按键抖动波形 606
24、0第9章 数字电子系统设计及典型实例 消除按键抖动有多种方法,如:计数器型消抖、D触发器型消抖、状态机消抖等。由于篇幅有限,这里不再详细阐述,可参考EDA技术与VHDL设计实验指导一书实验9。例9-8采用计数器型消抖的方法来消除按键的抖动。计数时钟采用时钟分频模块的1 kHz分频输出信号clk_s,即一次计数周期为1 ms,从0计数到15共计数16次,延时时间16 ms,满足抖动时间要求。仿真结果见图9-19和图9-20。消除抖动后,按下一次按键key_en,输出使能端en_out为“1”,再按下一次,en_out为“0”。 61 61第9章 数字电子系统设计及典型实例 【例9-8】6262第
25、9章 数字电子系统设计及典型实例 6363第9章 数字电子系统设计及典型实例 图9-20 使能控制模块仿真结果(2) 图9-19 使能控制模块仿真结果(1) 6464第9章 数字电子系统设计及典型实例 5顶层电路设计顶层电路设计将时钟分频、计数器、显示控制以及使能控制4个模块连接起来,即可构成顶层电路。顶层电路设计既可采用原理图的形式,如图9-21所示;也可采用VHDL元件例化的形式。请读者自行完成元件例化实现的顶层电路设计。顶层电路的仿真与各功能模块的仿真类似,但由于时钟初值为40 MHz,与仿真时间(几秒)相差过大,导致仿真速度过慢,这里不再展示顶层原理仿真结果。6565第9章 数字电子系
展开阅读全文