西南交大数字电子技术第7章_第1页
西南交大数字电子技术第7章_第2页
西南交大数字电子技术第7章_第3页
西南交大数字电子技术第7章_第4页
西南交大数字电子技术第7章_第5页
已阅读5页,还剩95页未读 继续免费阅读

下载本文档

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

文档简介

1、西南交通大学微电子研究所西南交通大学微电子研究所I Institute ofnstitute of M Microelectronics icroelectronics SWJTUSWJTU第7章 数字系统设计数字电子技术基础7.1 典型数字系统的构成 随着影像技术、处理器技术、多媒体技术等技术的迅速发展,以这些技术为基础的数字系统得到了最为广泛的应用,其中影响力最大、结构最为典型的数字系统当属Intel、AMD、ARM等公司研发的处理器。我们以一款经典的冯诺依曼结构处理器来了解数字系统的构成。图7.1.1 冯诺依曼结构处理器7.1 典型数字系统的构成p 输入设备完成对输入信号的采集和接收,常

2、见的输入设备有键盘、触控装置、数据接收器装置等。p 输出设备完成对计算结果的采集和发送,常见的输出设备有显示器、数据发射器装置等。冯诺依曼结构处理器的核心主要包括控制器、运算器和存储器三个部分。p 控制器主要完成对计算机指令的读取、解释等,同时完成各种计算任务的调用;主要构成为时序电路;p 运算器主要完成输入数据的算术运算等;主要构成为组合逻辑电路;p 存储器则用于存储计算机需要处理的数据,以及用户输入的指令等;主要构成为ROM和RAM。7.2 数字系统重要组成部件:数据转换器 数据转换器承担了数字信号世界与模拟信号世界沟通的桥梁作用,被广泛地应用于信号采集和处理系统中。一方面,数据转换器采集

3、声、光、热、机械参数等模拟信号,将其转化为数字信号,使得原模拟信号所对应的数据能够被大量存储与数字系统中,并被数字系统的核心控制中枢处理器所快速处理。 另一方面,数据转化器能够将处理器的运算结果实时转化为模拟信号,从而对声、光、热、机械等模拟装置进行控制。7.2 数字系统重要组成部件:数据转换器根据数据转换器的作用,数据转换器一般分为两种模数转换器:用于将模拟信号转换为数字信号,通常称为A/D转换器或者ADC(Analog Digital Converter);数模转换器:用于将数字信号转换为模拟信号,通常称为D/A转换器或者DAC(Digital Analog Converter)。7.2.

4、1 数模转换器DACDAC的功能是将数字量D转换为模拟量A,其功能可用公式(7-1)抽象和表示:1 DAC基本原理KDA公式(7-1)若能找到D与A之间的映射关系K,则即可完成信号之间的转换。对于数字量D,假设其位宽为n,则其十进制数值可表示:7.2.1 数模转换器DAC1 DAC基本原理二进制中每一位数值均可表示为开关值,那么该公式可用以下电路来进行计算:图7.2.1 DAC原理示意图开关Si通过“通”和“断”来表示二进制数di,Si闭合,di=1;Si断开,di=0。7.2.1 数模转换器DAC1 DAC基本原理根据线性运放“虚短”和“虚断”的特点,可知:7.2.1 数模转换器DAC1 D

5、AC基本原理将电路中的电流值代入中即可得到:对比两个公式即可知DAC的工作思想7.2.1 数模转换器DAC1 DAC基本原理DAC内部结构通常如图所示,由接口电路、模拟开关、基准电压源、转换网络、求和电路构成。其中,接口电路通常使用寄存器组实现,用来对数字信号进行收集和存储。转换网络是DAC的核心结构,它的设计结构和精度直接影响到了整个DAC的性能。通常有电阻分压型、R-2R梯形型、权电流型等结构。7.2.1 数模转换器DAC2 电阻分压器型DAC架构电阻分压器型DAC的转换网络较为简洁明了,其设计结构为在基准电压间串接多个阻值相等的电阻,利用二进制值的开关作用选取这一连串电阻中不同的分压点,

6、从而将分压电的模拟电压输出,最终实现将数字信号转换为模拟信号的功能。图7.2.3 2位电阻分压器型DAC转换网络7.2.1 数模转换器DAC2 电阻分压器型DAC架构图为2位电阻分压器型DAC转换网络的设计示意图。该DAC转换值最小步长为Vref/4。若实现n位的转换网络,其分压电阻则有2n个,并且需2n个模拟开关。7.2.1 数模转换器DAC2 电阻分压器型DAC架构随着位数的增加,所需的元器件会呈指数递增,DAC面积也会急剧增大,这是该种转换网络架构的最大缺点。但是,该类型转换网络在设计中仅需一种电阻值,因此,有制造、工艺等因素引起的偏差较小。同时,由于设计结构的特点,该类型转换网络的转换

7、速度比较快。7.2.1 数模转换器DAC3 R-2R梯形型DAC架构电阻网络中只有R和2R两种电阻。输入数据D控制模拟开关的选择,若Di=1,则开关接通Vref;若Di=0,则开关接地。图7.2.4 R-2R梯形型DAC架构梯形转换网络中,以Ni为视角中心,沿电流方向向右看,形成Ni两路并联的电阻均为2R。那么,运放虚地点左边的电阻值总和即为3R。7.2.1 数模转换器DAC3 R-2R梯形型DAC架构假定输入数据D=4b0001,根据电阻网络的特点可知,电流每流经一个N节点就会进行二分之一的分流,最终在虚地点电流值Io=Iin/24。此时,输出电压为:7.2.1 数模转换器DAC3 R-2R

8、梯形型DAC架构当输入数据只有第i个比特位为1时,输出电压为:综上所示,对于一个位宽为n比特位的任意值输入数据D,其输出模拟电压为:7.2.1 数模转换器DAC3 R-2R梯形型DAC架构虽然R-2R梯形型降低了元器件的使用数量,但是也存在很多不足之处。缺点:p 各级信号传输网络延时不同,级数越大,延时越大,最终影响DAC的转换速度。p 该缺陷导致各级模拟开关的信号不能同时到达输出端口,当输入数值多位同时发生变化时,输出端信号易出现瞬时毛刺。7.2.1 数模转换器DAC4 R-2R倒梯形型DAC架构倒梯形结构的提出正是为了解决梯形结构的缺陷。与梯形结构不同的是,倒梯形结构将开关的选择两端置于地

9、端和运放虚地端。图7.2.5 4位R-2R倒梯形型DAC架构7.2.1 数模转换器DAC4 R-2R倒梯形型DAC架构倒梯形网络中,从任意一节点Ni向左看,其等效电阻值均为R,因此,由基准电压源输入的总电流值为I=Vref/R,并且电流每流经一个节点,就分流为当前值的二分之一。假设输入数据D=4b0001,根据电阻网络的特点,可知,电流每流经一个N节点就会进行二分之一的分流,最终在虚地点电流值Io=Iin/24。7.2.1 数模转换器DAC4 R-2R倒梯形型DAC架构若输入数据为任意一位宽为n比特位的二进制数D,则流向运放的总电流Io为:故DAC输出模拟电压值为:7.2.1 数模转换器DAC

10、4 R-2R倒梯形型DAC架构相比梯形转换网络,倒梯形的优点在于:无论输入信号如何变化,只切换电流方向,不改变整个转换网络中各支路的电流值。这使得各支路电路几乎能够同时到达电路输出端,有利于提高DAC的转换速度,并有效地消除毛刺。因此,倒梯形转换网络被广泛地应用于DAC的设计中。7.2.1 数模转换器DAC4 R-2R倒梯形型DAC架构倒梯形的缺点:模拟开关的存在使得电路中存在导通压降,这会造成电路中的电流和理想值有一定差别。 同时转换网络中的电阻值必须精确匹配,这对工艺等制造条件要求较高,一般难以达到。7.2.1 数模转换器DAC5 权电流型DAC架构为了弥补倒梯形结构的缺陷,可用精确稳定的

11、恒流源代替倒梯形结构中的电阻网络,从而提高DAC的精度。该电路的计算方法同倒梯形网络,故不再赘述。图7.2.6 权电流型DAC原理示意图7.2.1 数模转换器DAC5 权电流型DAC架构权电流型DAC的优点是:速度快; 各支路权电流的大小均不受开关导通电阻和压降的影响,降低了对开关电路的要求,提高了转换精度常用的单片集成权电流DAC有AD1408、DAC0806、DAC0808等。7.2.2 模数转换器ADC1 ADC基本工作原理ADC用于将一个连续的模拟信号转换为一系列离散的数字信号,故转换一般要经过采样、保持、量化及编码4个过程。在实际ADC设计中,部分过程可同时进行和实现,如采样和保持,

12、量化和编码。此外,数字信号往往本身不具有实际意义,仅仅表示一个相对大小。故任何一个模数转换器都需要一个参考模拟量作为转换的标准。比较常见的参考标准为最大的可转换信号大小。而输出的数字量则表示输入信号相对于参考信号的大小。7.2.2 模数转换器ADC1 ADC基本工作原理(1)采样与保持在进行模拟/数字信号的转换过程中,当采样频率fs.max大于信号中最高频率fmax的2倍时(fs.max2fmax),采样之后的数字信号完整地保留了原始信号中的信息,一般实际应用中保证采样频率为信号最高频率的510倍;采样定理又称奈奎斯特定理。图7.2.7 奎斯特定理采样过程7.2.2 模数转换器ADC1 ADC

13、基本工作原理(1)采样与保持在ADC中,因为被取样的信号是动态,而ADC转换需要时间,在这个过程中为了保证在时间差内数值依然保持稳定并输出给后续的编码电路,因此,在取样完成后还需对信号进行保持。通常情况下,在ADC前加入采样-保持电路同时完成信号的采用和保持功能。图7.2.8 采样-保持电路采样保持电路由三部分组成:p 模拟开关p 模拟信号存储电容p 缓冲放大器。7.2.2 模数转换器ADC1 ADC基本工作原理(1)采样与保持采样-保持原理:p 采样状态:控制开关S闭合,uo=ui,输出跟随输入变化,并向电容充电。p 保持状态:控制开关S断开,uo保持断开瞬间的输入信号。图7.2.8 采样-

14、保持电路7.2.2 模数转换器ADC1 ADC基本工作原理(1)采样与保持采样保持电路的指标主要包括采样精度和速度。为了提高相应的指标,需重点从元器件和电路两个方面解决:p 模拟开关:要求模拟开关的导通电阻小,漏电流小,极间电容小和切换速度快。p 存储电容:要选用介质吸附效应小的和泄漏电阻大的电容。p 运算放大器:选用输入偏置电流小、带宽宽及转换速率(上升速率)大的运算放大器,输入运放还应具有大的输出电流。7.2.2 模数转换器ADC1 ADC基本工作原理(2)量化与编码数字信号本身不具有实际意义,仅表示相对大小,故任何一个数字信号都必须表示为一个最小单位量的整数倍。这个最小的单位量被称为量化

15、单位,用表示。数字信号求解整数倍的过程就称为量化。数字信号最低位为1(1LSB)时,所对应的模拟量即是量化单位。ADC所能转换的数字信号的位数越宽,其量化单位越小。由于模拟量连续的特性,因此,不是每一个值都能被量化为的整数倍。故,在量化过程中,存在一定的量化误差。通常,不同的量化方法引起的量化误差也不同。7.2.2 模数转换器ADC1 ADC基本工作原理(2)量化与编码有两种量化方法:舍尾取整方法和四舍五入方法。假设需将015V的电压用位宽为4bit的数字信号量化:若采用舍尾取整方法,电压7.1V和7.9V都会被量化为4b0111;a)若采用四舍五入方法,电压7.1V和7.9V将分别被量化为4

16、b0111和4b1000。舍尾取整方法的量化误差为1个,而四舍五入方法的量化误差仅为/2。7.2.2 模数转换器ADC1 ADC基本工作原理(2)量化与编码量化的本质导致了量化过程必然导致产生量化误差,因此,不可能消除量化误差,只能通过各种措施来减小量化误差。对于ADC的结构来说,采样与保持电路基本相似,量化与编码则各有特点并且反映了不同结构的优劣。7.2.2 模数转换器ADC1 ADC基本工作原理(2)量化与编码实现A/D转换的方法很多,按照工作原理不同可以分成直接A/D转换和间接A/D转换两类。p 直接A/D转换是将模拟信号直接转换成数字信号,比较典型的有并行比较型A/D转换和逐次逼近型A

17、/D转换。p 间接A/D转换是先将模拟信号转换成某一中间变量(时间或频率),然后再将中间变量转换成数字量。比较典型的有双积分型A/D转换和电压-频率转换型A/D转换。7.2.2 模数转换器ADC2 并行比较型ADC结构并行比较型ADC(又称瞬时比较编码型ADC)是一种转换速度最快、转换原理最直观的ADC技术。图7.2.9 并行比较型ADC结构7.2.2 模数转换器ADC2 并行比较型ADC结构图7.2.9 并行比较型ADC结构p 通过由(2n+1)个电阻串联而成的分压结构获得模拟电压值的量化值。两端阻值为R/2使得电压量化具有(1LSB)/2的精度。p 分压结构所划分的电压值进入电压比较器,当

18、电压值大于电压比较器的参考电压值时,该电压比较器输出高电平,反之则输出低电平。p 在时钟Clk的上升沿,将电压比较器的比较结果存入相应的D触发器中,供编码电路进行编码。7.2.2 模数转换器ADC2 并行比较型ADC结构p 得益于转换的高速度,并行比较型ADC在对高速数据转换系统中的得到大量使用。p 同时,由于电压比较器和D触发器兼具采用和保持的功能,因此,在并行比较型ADC中可略去采用-保持电路。p 但是,并行比较型ADC结构对元器件需求量很大,故价格较为昂贵,且随着精度的增大,电路将更为复杂。7.2.2 模数转换器ADC3 逐次逼近型ADC结构逐次逼近型ADC具有转换速度高和精度高的特点,

19、也是当前型号最多、数量最大、应用最广泛的ADC。逐次比较型ADC设计思想如同一个自动电子秤,首先将最重的砝码(Vref/2)放到天平上,若该砝码值小于待测数值,将保留该砝码,否则移去。然后在添加次重砝码(Vref/4),执行同样的操作,直至所有砝码都已使用,即可得到待测数值的大小。需要注意的是,在测试过程中,砝码的取放方式为从最重砝码、次重砝码最轻砝码,依次按序取放,砝码重量后者为前者的1/2。7.2.2 模数转换器ADC3 逐次逼近型ADC结构逐次比较型ADC需要有以下部件实现以上功能:(1)自动化调度电路,完成砝码值的依次、自动取放;(2)右移寄存器,每次向右移位1bit,完成砝码数值的除

20、2操作;(3)DAC,完成将移位后的数字信号转换为模拟量,以便同输入的模拟信号进行大小比较;(4)电压比较器,完成砝码与输入数据的比较功能;(5)数据寄存器,记录每次比较结果,从而输出最终的转换结果数字信号。7.2.2 模数转换器ADC3 逐次逼近型ADC结构图7.2.10 逐次比较型ADC结构7.2.2 模数转换器ADC3 逐次逼近型ADC结构逐次逼近型ADC结构的策略:在时钟的控制下使用数字信号对待测模拟信号进行“逐次逼近”(或称“逐位比较”),从最高位直至最低位,直至完成输出结果中每一位的数值的确定。在转换过程中,采用了“砝码低于待测值即移除”的量化方式,其本质相当于前节所述的“舍入取整

21、”方法,因此,量化误差较大。为了减小量化误差,在ADC的设计中,通常:令其中的DAC输出偏移(-/2),从而转化为“四舍五入”的量化方法,最终将量化误差减小为/2。7.2.2 模数转换器ADC3 逐次逼近型ADC结构实例:逐次逼近型ADC输出精度为4位,基准参考电压Vref=-16V,当采样-保持电路所测电压为Vin=5.8V时,逐次逼近型ADC的转换过程如下:(1)确定量化单位和量化偏移量:量化单位= Vref/24=1V,量化偏移量/2=0.5V。(2)转换过程:为了进一步说明DAC输出/2偏移量对量化误差的影响,我们将DAC带偏移量和不带偏移量的逐次比较型ADC转换过程都列出。7.2.2

22、 模数转换器ADC3 逐次逼近型ADC结构输入电压输入电压时钟数时钟数移位寄存器移位寄存器DAC输出输出DAC输出值偏移输出值偏移/2逻辑操作逻辑操作5.8V110005V4.5V保留5.8211007.5V7.0V移除5.8310106.25V5.75V保留5.8410116.875V6.375V移除表7.2.1 DAC带偏移量的转换过程7.2.2 模数转换器ADC3 逐次逼近型ADC结构输入电压输入电压时钟数时钟数移位寄存器移位寄存器DAC输出输出逻辑操作逻辑操作5.8V110005V保留5.8211007.5V移除5.8310106.25V移除5.8410015.625V保留表7.2.2

23、 DAC无偏移量的转换过程由表7.2.1中数据可知,DAC带偏移量的转换结果是4b1010,其所对应的模拟值为5.75V,相比输入的模拟信号值5.8V,其量化误差为0.05V。而不带偏移量的转换结果为4b1001,其所对应的模拟值为5.625V,相比输入的模拟信号值5.8V,其量化误差为0.175V。7.2.2 模数转换器ADC3 逐次逼近型ADC结构逐次比较型ADC转换速度低于并行比较型ADC,完成n比特位数字信号的输出须经过(n+1)个时钟周期。p 逐次比较型ADC电路规模较小,复杂度也低于并行比较型ADC,因此被中高速数据采集系统中硬件广泛。p 常见的单片集成逐次比较型ADC转换输出数据

24、位宽一般为816位,一次转换时间为数微秒到百微秒范围内。市场中常见的逐次比较型ADC有ADC1143、MAX195等4。7.2.2 模数转换器ADC4 双积分型ADC结构双积分型ADC属于间接A/D转换技术,它转换速度较低(每秒转换几次到几百次),但是具有转换精度高、廉价、抗干扰能力强等优点,在速度要求不高的实际工程中使用广泛。常用的双积分型A/D转换器有MCl4433、ICL7106、ICL7135、AD7555等芯片。7.2.2 模数转换器ADC4 双积分型ADC结构双积分型ADC由积分器、过零比较器、计数器、逻辑控制电路和模拟开关构成。图7.2.11 双积分型ADC结构7.2.2 模数转

25、换器ADC4 双积分型ADC结构p 积分器是双积分型ADC的核心部分,它由运算放大器和RC网络构成,积分常数=RC。积分器输入端连接多个模拟开关,用于切换输入待转换电压和不同极性的参考电压,其中,输入待转换电压必须与参考电压极性相反。p 过零比较器和与门用于开启和关闭计数和控制电路。7.2.2 模数转换器ADC4 双积分型ADC结构双积分型ADC的转换思想:首先,键K2闭合,电容放电至电荷为零。然后,键K2断开,模拟输入电压在固定时间(2n个时钟周期,由计数器和控制电路进行控制)内向电容充电(正向积分)。充电完成之后,将输入端切换与其极性相反的参考电压对电容放电(反向积分)。放电期间计数器计数

26、脉冲多少反映了模拟输入电压的大小。当电容器放电完毕,过零比较器关闭计数器,完成一次A/D转换。7.2.2 模数转换器ADC4 双积分型ADC结构图7.2.12 积分过程积分过程:设时间t=0时,电容已经完成放电,接入待转换模拟电压Vin开始第一段积分,过零比较器输出高电平,打开计数器。计数器(n位)计数2n个时钟周期后,计数器清零,第一段积分结束。在第一段积分完成后,积分器输出电压值为:其中,T为时钟周期。7.2.2 模数转换器ADC4 双积分型ADC结构图7.2.12 积分过程积分过程:第一段积分结束后,积分器输入端接入参考电压,开始第二段积分,计数器继续计数。经过时间T2后,电容放电完毕,

27、比较器输出低电平,与门关闭,计数器停止计数,第二次积分过程结束。在第二段积分区间T2内,积分器输出电压值为:将T2=t2-t1代入公式:7.2.2 模数转换器ADC4 双积分型ADC结构图7.2.12 积分过程故,可得T2内的计数值N:N与输入电压值成正比,若Vref=2n,则N等于输入电压值。双积分型ADC结构仅与基准电压源有关,且积分器的使用增强了电路的噪声抑制能力,从而使得双积分型ADC精度较高并且消除干扰和电源噪声的能力强。由于需要进行两次积分,导致转换速度较慢。故,双积分型ADC适合于信号变化缓慢,模拟量输入速率要求低,转换精度要求较高且现场干扰较严重的场合。7.2.3 数据转换器主

28、要技术指标通常情况下,需要静态特性参数和动态特性参数共同评价DAC和ADC的性能。由于ADC的静态特性参数与DAC的静态特性参数相似,因此,静态特性参数部分重点介绍DAC。而ADC的动态性能也直接受内置的DAC动态性能的影响,因此,动态特性参数部分也重点介绍DAC。1、静态特性参数D/A转换器的转换精度通常用分辨率和转换误差来描述。(1)分辨率(2)转换误差7.2.3 数据转换器主要技术指标(1)分辨率p 对于DAC来说,分辨率是指DAC能够分辨最小电压的能力。1LSB所对应的电压即为DAC所能刻画的最小电压,DAC接收的数字信号的位宽越大,其所能分辨的最小电压精度也就越高。因此,通常用数字信

29、号的位宽数量来表示DAC的分辨率。此外,还可将分辨率定义为DAC的最小输出电压和最大输出电压(参考电压)之比。p 对于ADC来说,其分辨率通常用输出数字信号的位宽数n来表示,其分辨2n个不同等级的模拟量,即量化单位。位宽数n越大,ADC能够对模拟量的刻画就越细致,量化误差就越小。7.2.3 数据转换器主要技术指标(2)转换误差p 转换误差指理想值与实际值之间的最大偏差。p 通常有两种表示方法,一种使用LSB为单位表示,如精度LSB/2,表示实际值与理论值之间的最大差别为半个最低有效位。另一种表示方法采用满量程的百分数表示(%FSR)。ADC与DAC均可使用精度表示其静态特性。引起转换误差的四种

30、基本误差,分别是线性误差、微分线性误差、失调误差和增益误差。其中,前两项误差在使用中无法对其进行调整或校正,后两项误差属于可调整误差。这四项对DAC的静态精度有着决定性的影响。7.2.3 数据转换器主要技术指标2、动态特性参数(1)建立时间p 建立时间是描述DAC转换速度的一个重要参数,指输入数字量变化后,输出模拟量稳定到相应数值范围内所经历的时间。p 输入数字从全0变到全1(或从全1变到全0)时,建立时间最长,称为满量程变化的建立时间。p 一般器件手册上给出的都是满量程变化建立时间,其误差范围为LSB/2。p 建立时间的倒数即为转换速率,也就是每秒钟DAC至少可进行的转换次数。p 满量程变化

31、建立时间大于100us的为低速DAC,在50ns与1us之间的为高速DAC,小于50ns的为超高速DAC。7.2.3 数据转换器主要技术指标2、动态特性参数(2)毛刺DAC中若输入的数字量发生快速变化时易导致输出信号出现毛刺。引起毛刺出现的主要两个原因:第一个原因是DAC中模拟开关动作时间不一致。另一个原因是数字信号的快速翻转过程被输出到了转换输出端。除建立时间和毛刺外,其他描述DAC动态特性的参数还有信噪比(SNR)、无杂散动态范围(SFDR)、总谐波失真加噪声(THD+N)等。7.2.4 常用集成数据转换器件数据转换器是电子系统中必不可少的组成部分,被广泛应用于信号探测等商业和军事领域中,

32、目前生产ADC和DAC的主要厂家有ADI、TI、NI、PHILIP、MOTOROLA等。AD公司生产的数据转换器一直保持市场领导地位,有代表性的产品有:AD7705(双通道16位AD转换器),AD5320(单片12位电压输出DAC)。美国国家半导体公司(NI)生产的有代表性数据转换器有:(1)DAC0832,采样频率为八位的D/A转换芯片,集成电路内有两级输入寄存器,使DAC0832芯片具备双缓冲、单缓冲和直通三种输入方式,以便适于各种电路的需要(如要求多路D/A异步输入、同步转换等)。D/A转换结果采用电流形式输出。(2)ADC0809,8位逐次逼近式A/D转换器。其内部有一个8通道多路开关

33、,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。是目前国内应用最广泛的8位通用A/D芯片。7.3 数字系统的描述和设计方法7.3.1 数字系统的描述7.3.2 数字系统的设计方法7.3.3 数字系统的常用评价参考指标7.3.1 数字系统的描述数字电路发展到今天,其包含的晶体管数量已经需要以亿为单位进行统计,2012年Intel公司发布的IVB-E CPU 内部包含18.6亿个晶体管,AMD公司发布的Trinity APU 13.03亿个晶体管。如果采用逻辑图和逻辑代数的方法描述这些大规模的数字系统,可能数以千计的工程师花费数十年都不能达成目标。为了弥补这个缺陷

34、,以Verilog HDL和VHDL为代表的数字电路高层次描述方法应用而生。这两种描述方法的诞生,在很大程度上,将数字电路工程师和研发人员从晶体管逻辑设计的低层次工作中分离,进而将注意力集中于大规模的数字电路抽象功能的高层次上,极大地提高的数字电路的设计效率。7.3.2 数字系统的设计方法数字系统的设计方法有主要有自顶向下和自底向上两种方法。1、自顶向下自顶向下充分利用了数字系统可层次化设计的特点,将系统功能逐层细化,直至各个底层小模块。步骤:明确系统所需的功能,确定系统的外围接口。制定系统内部功能框图,并层层细化。设计和描述底层单元。2、自底向上自底向上方法对设计者的经验要求较高,通常设计者

35、根据系统功能的需求,以探索的方式,从小模块开始,逐步推导、扩大和求证,最终完成整个系统的设计。7.3.3 数字系统的常用评价参考指标本节以生活中最常见的数字系统手机为例,说明数字系统的常用评价指标。通常,大众对手机的评价主要有两点:(1)运行速度够不够快?(2)待机时间有多长?这两点真实地反映了数字系统的两个评价指标:工作频率和功耗。此外,在实现相同功能的前提下,数字系统的资源使用数量(或者数字系统的面积)也是数字系统的一个重要评价指标。7.3.3 数字系统的常用评价参考指标1、时钟频率时钟是整个数字系统的驱动,时钟信号在不停地翻转中将信号逐级向下一级传递。如果时钟信号停止翻转,整个数字系统也

36、就随之停止工作。那么,在相等的一段时间内,如果时钟的翻转次数(时钟频率)更高,也就意味着更多的输入数据被处理。即,时钟频率越高,电路的处理能力越强。因此,在一定程度上,时钟频率是评估数字系统性能的一个重要指标。7.3.3 数字系统的常用评价参考指标2、功耗功耗是所有的电路(包括模拟电路和数字电路)都必须给出的一个评价指标,指的是在单位时间中所消耗的能源的数量,单位为W。图7.3.4 算法复杂度、电路处理能力和功耗发展趋势示意图7.3.3 数字系统的常用评价参考指标3、资源使用数量(面积)资源使用数量(面积)也是数字系统一个重要的评价指标。p 通常,数字电路的资源使用数量(面积)越小,由其所构成

37、的数字系统体积也越小,便携性也就越好。p 同时,数字系统在等量体积前提下,数字电路模块的的资源使用数量(面积)越小,系统就可以集成和容纳更多的电路模块,提升数字系统的整体功能和性能。p 此外,资源使用数量(面积)小可以降低生产成本。7.4 数字系统设计实例本节将给出一个数字系统的完整设计,通过该设计讲述以Verilog HDL为代表的描述方法在数字系统设计中如何应用。同时,使用Quartus II 9.0工具,在Altera Stratix FPGA平台上完成了该数字系统的实现。7.4.1功能需求7.4.2设计分析7.4.3各模块实现7.4.4仿真结果7.4.5FPGA实现结果7.4.1 功能

38、需求设计一个简单的电子时钟,其功能要求点如下:1.时钟功能:完成分时的正确计数并显示;2.闹钟定时:实现定时提醒及定时报时,利用二极管发光表示报时声音;3.时钟校时:当认为时钟不准确时,可以分别对分时进行调整;4.秒表功能:利用4个数码管完成秒表显示:A、精度达100ms;B、可以清零;C、可暂停,并可随时记时、暂停后记录数据,最大计时为999.9s。7.4.2 设计分析采用自顶向下的设计方法,据功能需求可知,该数字系统可划分为4个部分:计时控制模块为该数字系统的核心模块,完成核心功能(诸如时钟计时、闹钟、秒表等功能)以及各功能之间的切换,该模块直接决定了系统能否完成规定的功能,同时该模块的设

39、计结构也直接反映了该数字系统性能的好坏。7.4.2 设计分析p 按键采集模块由按键电路和信号采集电路构成,其关键在于信号采集过程中需消除由于机械原因带来的按键不良接触。p 显示模块由四位7段共阳数码管构成,用于显示时间。p 报警模块由1个发光二极管构成,用于闹钟报警和整点报警。图7.4.2 按键电路图7.4.3 四位7段共阳数码管7.4.3 各模块实现计时控制模块是该数字系统的核心,重点陈述和说明该模块的设计思路和方案。首先,分析整个数字系统的驱动时钟的设计方案。时钟功能、闹钟功能和校时功能的最小计时单位为1s,秒表的最小计时单位为0.1s,而外部输入时钟为50MHz,因此,需要对外部时钟进行

40、分频,以满足各个特定功能对最小计时精度的需求。需设计两个分频模块给计时控制模块提供所需的时钟信号,其中一个分频模块将50MHz时钟分频为1Hz(周期为1s),另一个分频模块将50MHz时钟分频为10Hz(周期为0.1s)。数码管需要采用扫描显示的方式,其扫描间隔时间为1ms,因此,还需一个分频模块,用于将50MHz时钟分频为1KHz(周期为1ms)。7.4.3 各模块实现计时控制模块是该数字系统的核心,重点陈述和说明该模块的设计思路和方案。其次,根据功能需求对计时控制模块的控制功能进行详细划分。可采用模式控制的方式,通过2bit的控制信号来控制该模块应提供的四种工作模式:正常计时、闹钟设置及提

41、醒、调试调分、秒表计时。 其中,正常计时、闹钟设置及提醒和调试调分的时钟周期为1s;秒表计时的时钟周期为0.1s。7.4.3 各模块实现图7.4.4 计时控制模块详细层次划分7.4.3 各模块实现1、分频模块首先,以时钟二分频为例,说明偶数分频的原理和方法。图7.4.5为时钟二分频的功能波形,可以看出,时钟clk每隔一个上升沿,输出信号就会发生翻转。这也就意味着,二分频的核心在于一以clk为驱动源的模2同步计数器,该计数器计数初值为0,计数值为0、1,当计数值等于1时,输出信号进行翻转。图7.4.5 时钟二分频功能波形7.4.3 各模块实现1、分频模块根据第五章中所讲述的时序电路设计原理,可设

42、计一模2同步计数器,以其为核心的二分频电路结构如图(a)所示,与之相对应的Verilog HDL描述如图(b)所示。always(posedge clk_in)begin if (rst_n=1b0) clk_out = 1b0; else clk_out = clk_outend(b) Verilog HDL描述(a)电路结构偶数分频:以系统外部参考时钟为触发条件做一个加计数器,当计数器值为(n/2-1)时,输出时钟发生跳转。7.4.3 各模块实现1、分频模块本题目中分频模块2(将50MHz时钟分频为0.1s)设计如下:分频模块2设计方法:设置为模为2499999的同步计数器,在计数值等于2

43、499999时,将输出信号翻转。分频模块1(将50MHz时钟分频为1Hz)与分频模块3(将50MHz时钟分频为1KHz)设计方法同分频模块2,在此不再详述。模块端口名称模块端口名称 输入输入/输出输出 位宽位宽 功能说明功能说明clk输入1输入时钟,50MHzrst_n输入1系统复位信号,低电平复位clk_0p1s输出1分频后时钟,周期0.1s分频模块2端口说明7.4.3 各模块实现2、计时和校时(调试调分)功能模块首先分析计时和校时模块的功能需求,计时模块需完成以下功能:1)工作模式选择与切换:mode=00时为普通时钟计时状态,mode=01时为闹铃定时状态,mode=10时为时钟校时状态

44、,mode=11时为秒表计时状态;2)时钟计时功能:能够正确完成秒、分、时的正常计数;3)校时功能:能够接收按键值,并正确调整分、时值,并在校时功能完成后,能够在校时后的数值上继续正确计时;4)数值输出功能:能分别正确地输出分、时的个位和十位数据给数码管显示模块;7.4.3 各模块实现2、计时和校时(调试调分)功能模块计时和校时模块工作流程7.4.3 各模块实现3、闹钟设置与提醒模块首先闹钟设置与提醒模块功能需求,该模块需完成以下功能:1) 工作模式选择与切换:mode=00时为普通时钟计时状态,mode=01时为闹铃定时状态,mode=10时为时钟校时状态,mode=11时为秒表计时状态;2

45、) 闹钟设置功能:能够正确设置闹钟的分、时数值;3) 闹钟设置标志:在闹钟设置完成后,能够标识当前是否设定闹钟;4) 闹钟提醒功能:闹钟设置过程中和设置完成后,时钟能够正常计数;在时钟计数至闹钟设定时间时,能够发出提醒。7.4.3 各模块实现3、闹钟设置与提醒模块端口名称端口名称输入输入/输出输出位宽位宽功能说明功能说明clk_1s输入1输入时钟,工作频率1Hz。rst_n输入1系统复位信号,低电平复位。turn输入1闹钟调时调分切换控制信号,turn=1时,调整分;turn=0时,调整时。mode输入2工作模式控制信号,mode=00时为普通时钟计时状态,mode=01时为闹铃定时状态,mo

46、de=10时为时钟校时状态,mode=11时为秒表计时状态。alarm_min1输出4闹钟分钟计数值十位。alarm_min0输出4闹钟分钟计数值个位。alarm_hour1输出4闹钟小时计数值十位。alarm_hour0输出4闹钟小时计数值个位。alarm_set输出1闹钟设置状态标志,高电平输出有效。alarm_alert输出1闹钟输出提醒,高电平输出有效。表7.4.3 闹钟设置与提醒模块端口说明7.4.3 各模块实现3、闹钟设置与提醒模块根据以上端口设置和工作原理,该模块工作流程如下:1)检测mode值是否为2b01,若相等,则系统启动闹钟设置和提醒模块;2)在闹钟工作模式下,时间初始值

47、为00:00。首先,检测turn值。若为高电平,则分钟值递加;若为低电平,则小时值递加。3)在闹钟设置过程中,若mode值由2b01切换为其他数值,则闹钟停止设置,最终的值即为闹钟时间。4)若闹钟设定值不等于00:00,则说明当前已经设定闹钟,则将alarm_set置为高电平,标识闹钟已经设定。5)系统在正常计时过程中,若计时时间等于闹钟设定的时间,则将alarm_alert置为高电平,开启提醒装置。7.4.3 各模块实现4、秒表模块首先秒表功能需求,该模块需完成以下功能:1)工作模式选择与切换:mode=00时为普通时钟计时状态,mode=01时为闹铃定时状态,mode=10时为时钟校时状态

48、,mode=11时为秒表计时状态;2)精度:100ms,最大计时为999.9s;端口名称端口名称输入输入/输出输出位位宽宽功能说明功能说明clk_1s输入1输入时钟,工作频率1Hz。rst_n输入1系统复位信号,低电平复位。pause输入1秒表暂停控制信号,高电平时秒表计数;低电平时秒表暂停。mode输入2工作模式控制信号,mode=00时为普通时钟计时状态,mode=01时为闹铃定时状态,mode=10时为时钟校时状态,mode=11时为秒表计时状态。st_3输出4秒表计数最高位st_2输出4秒表计数次高位st_1输出4秒表计数第三位st_0输出4秒表计数第四位7.4.3 各模块实现4、秒表

49、模块根据以上端口设置和工作原理,该模块工作流程如下:1)检测mode值是否为2b11,若相等,则系统启动秒表模块;2)在闹钟工作模式下,检测pause值,若为高电平,则秒表递加计数;否则,秒表暂停计数,保持暂停前计数值。3)若计数值超过999.9s,则停止计数,计数值保持。7.4.3 各模块实现5、显示分配模块该模块的功能在于决定当前数码管应显示哪个模块的运算结果。依据工作模式控制信号mode的值,可知:p mode=00时应显示时钟正常计时数值;p mode=01时,应显示闹铃设置数值;p mode=10时,应显示时钟校时数值;p mode=11,应显示秒表计时数值。7.4.3 各模块实现5

50、、显示分配模块端口名称端口名称输入输入/输出输出位宽位宽功能说明功能说明clk输入1输入时钟,工作频率50MHz。rst_n输入1系统复位信号,低电平复位。mode输入2工作模式控制信号,mode=00时为普通时钟计时状态,mode=01时为闹铃定时状态,mode=10时为时钟校时状态,mode=11时为秒表计时状态。alarm_min1输入4闹钟分钟计数值十位。alarm_min0输入4闹钟分钟计数值个位。alarm_hour1输入4闹钟小时计数值十位。alarm_hour0输入4闹钟小时计数值个位。clk_min1输入4分钟计数值十位。clk_min0输入4分钟计数值个位。clk_hour

51、1输入4小时计数值十位。clk_hour0输入4小时计数值个位。st_3输入4秒表计数最高位st_2输入4秒表计数次高位st_1输入4秒表计数第三位st_0输入4秒表计数第四位data_3输出4数码管最高位data_2输出4数码管次高位data_1输出4数码管第三位data_0输出4数码管第四位7.4.3 各模块实现6、数码管扫描显示模块数码管扫描显示模块的功能需求在于显示时钟的数值。可采用4位7段共阳数码管实现。其中,4位7段共阳数码管有4个位控制端口,决定显示哪一位数码管,可采用扫描输出的方法;7个段控制端口:a,b,c,d,e,f,g,决定每位数码管显示的数字。具体实现方案为:使用同步扫

52、描电路,对4个位控制端口进行扫描,使得同一个时刻只有一个数码管亮,每隔0.5ms扫描一次,由于眼睛的视觉停留效应,会使得显示结果达到4位同时亮的效果。这样可以节省3/4的电能消耗。扫描控制方式为:采用0.5ms的扫描时钟clk_0p5ms,上升沿触发模为4的同步计数器counter,counter=0显示小时的高位;counter=1显示小时的低位;counter=2显示分钟的高位;counter=3显示分钟的低位。7.4.3 各模块实现6、数码管扫描显示模块端口名称端口名称 输入输入/输出输出位宽位宽功能说明功能说明clk_1s输入1输入时钟,工作频率1Hz。rst_n输入1系统复位信号,低

53、电平复位。out_3输入4数码管最高位out_2输入4数码管次高位out_1输入4数码管第三位out_0输入4数码管第四位seg_out输出67个段控制端口seg_sel输出44个位控制端口表7.4.6 数码管扫描显示端口说明7.4.3 各模块实现7、按键消抖模块通常情况下,由机械结构所构成的弹性开关在触点开和关时,并不能如理想情况所示,在闭合和断开时会存在一定的抖动,不会稳定地瞬间导通或者闭合。为了避免这种缺点,通常需采用按键消抖措施。一般情况,抖动时间的长短由按键的机械特性决定,为5ms10ms。这是一个很重要的时间参数,在很多场合都要用到。按键稳定闭合时间的长短则是由操作人员的按键动作决

54、定的,一般为零点几秒至数秒。因此,键抖动会引起一次按键被误读多次。为了消除这种现象,必须去除按键抖动。理想按键输入特性实际键盘输入特性7.4.4 仿真结果仿真过程中,使用了Mentor公司研发的Modelsim作为仿真工具。1、分频功能此处以50MHz分频为0.1s的功能为例,验证分频功能是否正确。波形图所示,在计数器等于2499999时,输出的时钟信号clk_0p1s的值发生了翻转。由此可见,该分频功能正确。分频前后的时钟波形分频过程中计数器7.4.4 仿真结果2、时钟计时功能图7.4.12和图7.4.13中信号mode为工作模式控制信号,mode=200时,系统处于时钟计时和显示模式下。信

55、号clk_hour1和clk_hour0分别为时钟小时显示的十位和个位,信号clk_min1和clk_min0分别为时钟分钟显示的十位和个位。分钟计时小时计时p 在时钟计时模式下,分钟能够正常进行计时,并且在分钟为59min的下一分钟时,分钟值能够返回00min。p 在时钟计时模式下,小时数值也能够正常进行计时,并且在小时数值为23小时的时候,下一小时其数值能够返回为00。7.4.4 仿真结果3、时钟校时功能信号turn为调时调分控制信号,turn=1b1时,进行分钟累加;turn=1b0时,进行小时累加。校时工作校时后正确切换到计时功能p mode=210时,turn=1b1时,分钟数值进行了正确的累加;turn=1b0时,小时数值进行了正确的累加。p 在校时模式结束后,时间被调整到了21:52,系统转到计时模式后,能够正确地在校时结果的基础上继续正确地完成计时功能。7.4.4 仿真结果4、闹钟设置及提醒功能mode=201时,系统处于闹钟设

温馨提示

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

评论

0/150

提交评论