数字显示频率计的设计.ppt
数字显示频率计的设计数字显示频率计的设计数字显示频率计的设计数字显示频率计的设计 电气学院电工电子基础中心电气学院电工电子基础中心可编程逻辑器件(PLD)设计方案数字显示频率计的研制过程数字显示频率计的研制过程二、设计步骤二、设计步骤选择可行的方案,进行单元选择可行的方案,进行单元电路设计电路设计三、安装三、安装(下载下载)调试调试先进行单元电路的调先进行单元电路的调试,然后进行产品的调试。试,然后进行产品的调试。四、总结整理四、总结整理实验总结报告实验总结报告一、设计要求一、设计要求确定产品的性能指标确定产品的性能指标一、设计要求一、设计要求 用PLD器件ispLSI1016及4只7段动态显示数码管(一只用于量程显示)设计一只数字频率计,要求:测频范围10.0Hz9.99KHz;测量误差小于等于1%。响应时间不大于15秒。具有超量程显示功能。频率计分成三个频段进行设计:序号序号频率范围频率范围显示显示110.0Hz99.9Hz2100Hz999Hz31.00KHz9.99KHz二、设计步骤二、设计步骤l设计一个具有异步清零、计数/保持功能的101010进制加法计数器。l设计频率计的控制电路,要求能产生10秒、1秒的闸门用相应的清零、锁存脉冲。l设计频率计的自动量程转换电路,要求能手动控制频段转换,超量程显示。将上述设计构成频率测量电路,并进行测试。l设计12位信号锁存电路、动态选通电路、显示电路、译码电路。构成一个完整的显示控制电路,并进行测试。l最终实现自动频段转换的3位数显频率计。四、实验总结报告四、实验总结报告频率计设计要求及方案分析。频率计的整体设计思想及设计框图。提供频率计单元电路(计数器、控制电路、自动量程转换电路、显示选通电路等)的具体设计说明、源程序及整体设计电路图。频率计设计的重要调试过程,遇到具体问题的解决方法。记录您设计的频率计的测频结果(高中低三频段),并对测频精度、响应速度及量程转换过程等作出分析。您对扩大本频率计的功能提高频率计的性能有何设想(要提供设计思路)?谈谈用PLD器件设计数字电路的体会,您认为用PLD器件较之用传统中规模数字器件设计数字系统有什么优缺点。总结本次设计的收获、存在问题,并对选题、设计调试过程中的指导等方面提出您的意见与建议。原理框图原理框图(静态显示静态显示)计数器锁存器译码电路&整形控制电路闸门控制信号清零脉冲信号锁存脉冲信号FX4444448888原理框图原理框图(动态显示动态显示)扫描选择计数锁存器显示电路译码电路&整形控制电路与自动量程闸门控制信号清零锁存信号量程控制信号FX44448电路图电路图显示模块显示模块锁存器锁存器计计数数器器动态动态显示显示选通选通锁存器锁存器锁存器锁存器计计数数器器计计数数器器自动量自动量程转换程转换译译码码器器控制控制电路电路分频器分频器1KHz输入信号输入信号1Hz8Hz显显示示选选通通小小数数点点溢出溢出电路单元电路单元101010进制计数器控制电路自动量程转换10分频电路12位锁存器动态显示选通电路显示电路显示译码电路频率测量电路动态显示电路数显频率计电路101010101010进制加法计数器进制加法计数器十进制加法计数器十进制加法计数器uu 输入信号:CLK输入脉冲;CLR清零脉冲;C_H保持信号(以后称为:闸门信号)(C_H0保持,C_H1允许计数)。u 输出信号:QQ=Q3,Q2,Q1,Q0=Q3.Q0。u 逻辑关系:当C_H0时,输出保持不变。当C_H1时,输出QQ)REPEAT 2 .C.,0,0-.X.;REPEAT 12.C.,1,0-.X.;REPEAT 2 .C.,1,1-.X.;REPEAT 3 .C.,0,1-.X.;REPEAT 3 .C.,1,1-.X.;101010101010进制加法计数器进制加法计数器101010101010计数器测试矢量与仿真波形计数器测试矢量与仿真波形TEST_VECTORSTEST_VECTORS(CLK,C_H,CLR-QQ)(CLK,C_H,CLR-QQ)REPEATREPEAT 2 .C.,0,0-.X.;2 .C.,0,0-.X.;REPEATREPEAT 115 .C.,1,0-.X.;115 .C.,1,0-.X.;REPEATREPEAT 2 .C.,1,1-.X.;2 .C.,1,1-.X.;REPEATREPEAT 5 .C.,0,1-.X.;5 .C.,0,1-.X.;REPEATREPEAT 10 .C.,1,1-.X.;10 .C.,1,1-.X.;频率测量原理与方法频率测量原理与方法两种频率测量的方法:1.直接测量法 即在一定闸门时间内测量被测信号的脉冲个数。即在一定闸门时间内测量被测信号的脉冲个数。直接测量法适合于高频信号的频率测量。直接测量法适合于高频信号的频率测量。2.间接测量法 如周期测量法。周期测量法,首先测出被测信号如周期测量法。周期测量法,首先测出被测信号的周期的周期TxTx ,然后经过倒数运算得到信号频率,然后经过倒数运算得到信号频率FxFx=1/Tx=1/Tx。为了保证低频信号(频率在几十。为了保证低频信号(频率在几十HzHz以下)的测频精以下)的测频精度,最有效、方便的方法是周期测量法。度,最有效、方便的方法是周期测量法。控制电路的设计控制电路的设计 频率计的设计关键是控制电路的设计,控制电频率计的设计关键是控制电路的设计,控制电路产生频率测量所需的闸门、清零和锁存信号。这路产生频率测量所需的闸门、清零和锁存信号。这些信号具有一定的时序关系。些信号具有一定的时序关系。为了保证测量的精确性,在每次闸门信号变为为了保证测量的精确性,在每次闸门信号变为高信号前,必须给计数器提供一个清零信号。当闸高信号前,必须给计数器提供一个清零信号。当闸门信号为高电平时,计数器开始计数;当闸门信号门信号为高电平时,计数器开始计数;当闸门信号为低电平时,计数器停止计数。为低电平时,计数器停止计数。如果闸门宽度为如果闸门宽度为1S1S,则闸门时间内计数器的计,则闸门时间内计数器的计数值即为被测信号的频率;改变闸门宽度可以改变数值即为被测信号的频率;改变闸门宽度可以改变频率计的量程,闸门宽度越小,频率计的量程越大。频率计的量程,闸门宽度越小,频率计的量程越大。另一种扩大量程的方法为:闸门宽度保持不变,对另一种扩大量程的方法为:闸门宽度保持不变,对被测信号先进行分频,然后再对其测频。相对来说,被测信号先进行分频,然后再对其测频。相对来说,后者更加容易实现。后者更加容易实现。控制电路原理图控制电路原理图uu 输入信号:输入信号:F1-1HzF1-1Hz信号;信号;F8-8HzF8-8Hz信号;信号;SET-SET-量程选择控制信号。量程选择控制信号。uu 输出信号:输出信号:C_H-C_H-闸门信号;闸门信号;CLR-CLR-清零信号;清零信号;LOCK-LOCK-锁存信号。锁存信号。控制电路原理控制电路原理 在控制模块在控制模块(KZ)(KZ)中,中,F8F8为为8Hz8Hz的时钟输入;的时钟输入;F1F1为为1Hz1Hz的时钟输入。的时钟输入。SELSEL为量程选择控制端,当为量程选择控制端,当SEL=0SEL=0时,时,8Hz8Hz时钟进入时钟进入JSQ15JSQ15模块;当模块;当SEL=1SEL=1时,时,1Hz1Hz时钟进入时钟进入JSQ15JSQ15模块,经模块,经JSQ15JSQ15分频模块和分频模块和BMQBMQ编码模块后,分别编码模块后,分别产生闸门时间为产生闸门时间为1 1秒和秒和1010秒的闸门信号秒的闸门信号(C_H)(C_H),以及相,以及相应的清零信号应的清零信号(CRL)(CRL)、锁存信号、锁存信号(LOCK)(LOCK);分频器的分频数应满足:最大产生分频器的分频数应满足:最大产生1010秒闸门信号,秒闸门信号,及清零信号、锁存信号的时间。因此必须大于及清零信号、锁存信号的时间。因此必须大于1212分频,分频,为了可靠起见,选择为了可靠起见,选择1515分频。分频。编码器根据编码器根据SELSEL信号,产生闸门时间为信号,产生闸门时间为1 1秒秒(F8(F8输入输入)或或1010秒秒(F1(F1输入输入)的闸门信号,清零信号、锁存信号。的闸门信号,清零信号、锁存信号。以及它们之间的时序关系。以及它们之间的时序关系。控制电路输出信号控制电路输出信号uu 闸门信号 当闸门信号为高电平时,计数器开始计数,反当闸门信号为高电平时,计数器开始计数,反之计数器停止计数。改变闸门宽度可以改变频率计之计数器停止计数。改变闸门宽度可以改变频率计的量程,闸门宽度越小,频率计的量程越大。的量程,闸门宽度越小,频率计的量程越大。uu 清零信号 为了保证测频准确,在每次闸门信号开通前必须为了保证测频准确,在每次闸门信号开通前必须让计数器处在零状态,保证计数器每次都从零开始让计数器处在零状态,保证计数器每次都从零开始计数。计数。uu 锁存信号 为了防止频率计的显示随着计数值的增加不断为了防止频率计的显示随着计数值的增加不断变化,不断闪烁。在计数器和显示、译码之间增加变化,不断闪烁。在计数器和显示、译码之间增加一级锁存电路。一级锁存电路。闸门信号、清零信号及锁存信号时序关系闸门信号、清零信号及锁存信号时序关系闸门信号闸门信号清零信号清零信号锁存信号锁存信号CPCP脉冲脉冲 上图给出了一个典型的由频率为8Hz的时钟源产生的闸门信号、清零信号和锁存信号。其中闸门高电平时间为1秒,清零信号和锁存信号有效时间各为一个时钟周期。计数器计数器测试矢量与仿真波形测试矢量与仿真波形TEST_VECTORSTEST_VECTORS(CLK-QQ)(CLK-QQ)0-.X.;0-.X.;REPEATREPEAT 15.C.-.X.;15.C.-.X.;编码器的设计要点编码器的设计要点l l选择信号,SEL=0,CLK=F8,SEL=1,CLK=F1。当QQ=0 时,产生清零信号。当QQ=14时,产生锁存信号。当SEL0,且(0QQ9)时,输出1秒保持信号。当SEL1,且0QQC_H,CLR,LOCK)CONST N=0;REPEAT 2 CONST M=0;REPEAT 15M,N-.X.;CONST M=M+1;CONST N=N+1;控制电路控制电路测试矢量与仿真波形测试矢量与仿真波形TEST_VECTORSTEST_VECTORS(SEL,F1,F8-C_H,CLR,LOCK)(SEL,F1,F8-C_H,CLR,LOCK)REPEATREPEAT 5 5 REPEATREPEAT 40,0,.C.-.X.;40,0,.C.-.X.;REPEAT REPEAT 40,1,.C.-.X.;40,1,.C.-.X.;REPEATREPEAT 22 22 REPEATREPEAT 41,0,.C.-.X.;41,0,.C.-.X.;REPEATREPEAT 41,1,.C.-.X.;41,1,.C.-.X.;自动量程转换电路的设计自动量程转换电路的设计uu 输入信号:输入信号:CARRY-CARRY-进位进位 HIGH-HIGH-高位全零时等于高位全零时等于0 0 LOCK-LOCK-锁存锁存uu 输出信号:输出信号:OVER-OVER-溢出溢出(在一个闸门时间内,当最高位计数值在一个闸门时间内,当最高位计数值由由9 9变为变为0 0时,说明计数溢出,发出超量程信号。时,说明计数溢出,发出超量程信号。)S1-S1-闸门闸门(S1=0:(S1=0:产生产生1 1秒闸门。秒闸门。S1=1:S1=1:产生产生1010秒闸门。秒闸门。)S2-S2-分频分频(S2=0:(S2=0:对被测信号不分频。对被测信号不分频。S2=1:S2=1:被测信被测信号号1010分频后再测频。分频后再测频。)分频信号分频信号(S2)(S2)与闸门信号与闸门信号(S1)(S1)的组合的组合 uuS2S1=00S2S1=00 1 1秒闸门秒闸门-不分频,中频段不分频,中频段(100Hz999Hz100Hz999Hz),无小数,无小数点。量程显示点。量程显示HzHz。即:中频无小数点。即:中频无小数点。uuS2S1=01S2S1=01 10 10秒闸门秒闸门-不分频,低频段不分频,低频段(10.0Hz99.9Hz10.0Hz99.9Hz),个,个位前小数点亮。量程显示位前小数点亮。量程显示HzHz。即:低频个位小数。即:低频个位小数。uuS2S1=10S2S1=10 1 1秒闸门秒闸门-10-10分频,高频段分频,高频段(1.00KHz9.99KHz1.00KHz9.99KHz),十,十位前小数点亮。量程位前小数点亮。量程KHzKHz。即:高频十位小数。即:高频十位小数。uuS2S1=11S2S1=11 10 10秒闸门秒闸门-10-10分频分频=S2S1=00=S2S1=00。中频段。中频段(100Hz999Hz100Hz999Hz),无小数点。量程显示,无小数点。量程显示HzHz。自动量程转换电路自动量程转换电路uu如果超量程,且当前如果超量程,且当前SS=10SS=10,发出超量程信号,发出超量程信号(OVER=1)(OVER=1)。否则需要转向更高频段。即:从低频段。否则需要转向更高频段。即:从低频段(SS=01)(SS=01)转向中频段转向中频段(S2S1=00)(S2S1=00),或从中频段,或从中频段(SS=00)(SS=00)转向高频段转向高频段(SS=10)(SS=10)。注:注:SSSSS2,S1S2,S1uu如果没有超量程,如果没有超量程,计数器的最高位的计数器的最高位的4 4位二进制数位二进制数不全为不全为0 0,说明当前量程设置合理,频段,说明当前量程设置合理,频段SSSS的值不必的值不必变化。变化。计数器的最高位的计数器的最高位的4 4位二进制数全为位二进制数全为0 0,说,说明当前量程设置不合理,必须转向更低频段。即:明当前量程设置不合理,必须转向更低频段。即:从高频段从高频段(SS=10)(SS=10)转向中频段转向中频段(SS=00)(SS=00),或从中频段,或从中频段(SS=00)(SS=00)转向低频段转向低频段(SS=01)(SS=01)。uu自动量程转换电路必须具有记忆功能,因此,需要自动量程转换电路必须具有记忆功能,因此,需要使用寄存器变量,寄存器的时钟来自控制电路的锁使用寄存器变量,寄存器的时钟来自控制电路的锁存信号存信号(LOCK)(LOCK)。自动量程转换电路的设计要点自动量程转换电路的设计要点l lCARRY=0-无进位(最高位SS,OVER)(LOCK,HIGH,CARRY-SS,OVER)0,0,0-.X.,.X.;0,0,0-.X.,.X.;REPEAT REPEAT 4.C.,0,0-.X.,.X.;4.C.,0,0-.X.,.X.;REPEATREPEAT 4.C.,1,0-.X.,.X.;4.C.,1,0-.X.,.X.;REPEAT REPEAT 4.C.,0,0-.X.,.X.;4.C.,0,0-.X.,.X.;REPEATREPEAT 4.C.,1,1-.X.,.X.;4.C.,1,1-.X.,.X.;REPEAT REPEAT 4.C.,0,0-.X.,.X.;4.C.,0,0-.X.,.X.;REPEATREPEAT 4.C.,1,0-.X.,.X.;4.C.,1,0-.X.,.X.;REPEAT REPEAT 4.C.,1,1-.X.,.X.;4.C.,1,1-.X.,.X.;REPEATREPEAT 4.C.,1,0-.X.,.X.;4.C.,1,0-.X.,.X.;自动量程转换电路自动量程转换电路仿真波形仿真波形十分频电路的设计十分频电路的设计uu 输入信号:输入信号:FPKZ-FPKZ-分频控制分频控制 FREQX-FREQX-被测频率输入被测频率输入uu 输出信号:输出信号:CLK-CLK-频率信号频率信号(当分频控制当分频控制(FPKZ)(FPKZ)为为0 0时,时,CLK(CLK(频频率信号率信号)FREQX(FREQX(被测频率输入);当分频控制被测频率输入);当分频控制(FPKZ)(FPKZ)为为1 1时,时,CLK(CLK(频率信号频率信号)FREQX(FREQX(被测频率输被测频率输入)的十分频。入)的十分频。)uu SFP1-SFP1-十分频器十分频器十分频电路的设计要点十分频电路的设计要点uu设置一组中间节点:Q3.Q0 NODE ISTYPE REG;Q3.Q0 NODE ISTYPE REG;uuQQ.CLK=CLK_IN;QQ.CLK=CLK_IN;uu当当QQ=9 QQ=9 时,时,QQ:=0;QQ:=0;当当QQ9QQCLK)1,0-.X.;REPEAT 5.C.,0-.X.;REPEAT 15.C.,1-.X.;频率测量电路频率测量电路频率测量电路测试矢量频率测量电路测试矢量TEST_VECTORSTEST_VECTORS(F1,F8,FREQX-QQ,OVER)(F1,F8,FREQX-QQ,OVER)CONSTCONST m=4;m=4;CONSTCONST n=1;n=1;REPEATREPEAT 32 32 REPEATREPEAT m m REPEATREPEAT n 1,1,.c.-.x.;n 1,1,.c.-.x.;REPEATREPEAT n 1,0,.c.-.x.;n 1,0,.c.-.x.;REPEAT REPEAT m m REPEAT REPEAT n 0,1,.c.-.x.;n 0,1,.c.-.x.;REPEAT REPEAT n 0,0,.c.-.x.;n 0,0,.c.-.x.;频率测量电路频率测量电路仿真波形仿真波形二进制锁存器二进制锁存器l l 输入信号:输入信号:LOCK锁存信号锁存信号 D3.D0输入信号输入信号l l 输出信号:输出信号:Q3.Q0输出信号输出信号二进制锁存器设计要点二进制锁存器设计要点l l 当当LOCK1,QQ等于等于DD。二进制锁存器二进制锁存器测试矢量与仿真波形测试矢量与仿真波形TEST_VECTORSTEST_VECTORS(DD,LOCK-QQ)(DD,LOCK-QQ)CONSTCONST M=0;M=0;REPEATREPEAT 17M,.C.-.X.;17M,.C.-.X.;CONSTCONST M=M+1;M=M+1;1212位锁存器位锁存器 四位二进制锁存器设计要点四位二进制锁存器设计要点uu如果计数器的输出直接译码显示,则在闸门信号如果计数器的输出直接译码显示,则在闸门信号高电平期间,频率计的显示随着计数值的增加不高电平期间,频率计的显示随着计数值的增加不断变化、不断闪烁、人眼难以分辨。为了防止这断变化、不断闪烁、人眼难以分辨。为了防止这种现象,在计数和显示译码之间增加锁存电路。种现象,在计数和显示译码之间增加锁存电路。当计数器停止计数后(闸门信号由高变低后),当计数器停止计数后(闸门信号由高变低后),才将计数值锁存并译码显示。才将计数值锁存并译码显示。1212位锁存器测试矢量与仿真波形位锁存器测试矢量与仿真波形TEST_VECTORSTEST_VECTORS(DD,LOCK-QQ)(DD,LOCK-QQ)CONSTCONST M=0;M=0;REPEATREPEAT 17M,.C.-.X.;17M,.C.-.X.;CONSTCONST M=M+20;M=M+20;动态显示选通电路的设计动态显示选通电路的设计uu 输入信号:输入信号:CLKD-CLKD-动态显示时钟信号动态显示时钟信号 uu 输出信号:输出信号:XT0XT0、XT1XT1、XT2XT2、XT3-XT3-选通信号选通信号 (当当XT0=0XT0=0,选通,选通H H或或K K单位数码管单位数码管;当当XT1=0XT1=0,选通个位数码管;,选通个位数码管;当当XT2=0XT2=0,选通十位数码管;,选通十位数码管;当当XT3=0XT3=0,选通百位数码管。,选通百位数码管。)uu 设计要点:设计要点:设置一个两位二进制计数器,其四种状态,分别对应设置一个两位二进制计数器,其四种状态,分别对应XT3.XT0XT3.XT0四个选通信号。四个选通信号。注:实验器上动态数码管为共阴极,选通端为低电平有效。注:实验器上动态数码管为共阴极,选通端为低电平有效。动态显示选通电路的设计要点动态显示选通电路的设计要点设置一组中间节点:Q1,Q0 node istype reg;QQ.CLK=CLKD;当QQ=3,QQ等于0。当QQXT)(CLKD-XT)REPEATREPEAT 10.C.-.X.;10.C.-.X.;显示电路显示电路的设计的设计uu 输入信号:输入信号:XT3.XT0XT3.XT0选通信号选通信号 S1S1闸门信号闸门信号 S2S2分频信号分频信号 A3.A0A3.A0个位数个位数 B3.B0B3.B0十位数十位数 C3.C0C3.C0百位数百位数uu 输出信号:输出信号:D D、C C、B B、A A动态四位二进制数动态四位二进制数 POTPOT小数点小数点 uu 中间变量:中间变量:POT2=1:POT2=1:显示一位小数。显示一位小数。POT3=1:POT3=1:显示二位小数。显示二位小数。KH=0:KH=0:显示显示H H(HzHz)。)。KH=1:KH=1:显示显示(KHz)KHz)。显示电路的设计要点设置一组中间节点:设置一组中间节点:POT3.POT1,KH node POT3.POT1,KH node istypeistype com com。当当SS=01(SS=01(低频低频)量程量程Hz,Hz,十位小数点亮。十位小数点亮。当当SS=00(SS=00(中频中频)量程量程Hz,Hz,无小数点。无小数点。当当SS=10(SS=10(高频高频)量程量程KHz,KHz,百位小数点亮。百位小数点亮。当当SS=11(SS=11(中频中频)量程量程Hz,Hz,无小数点。无小数点。量程显示量程显示:DD=D,C,B,A:DD=D,C,B,A DD=10 DD=10,显示,显示H H。DD=11DD=11,显示,显示。XT0=0XT0=0且且KH=0KH=0显示显示H(HzH(Hz),),不显示小数点。不显示小数点。XT0=0XT0=0且且KH=1KH=1显示显示(KHz),(KHz),不显示小数点。不显示小数点。XT1=0DDXT1=0DD个位数的值,个位数的值,POT=POT1POT=POT1。XT2=0DDXT2=0DD十位数的值,十位数的值,POT=POT2POT=POT2。XT3=0DDXT3=0DD百位数的值,百位数的值,POT=POT3POT=POT3。显示电路测试矢量与仿真波形测试矢量与仿真波形TEST_VECTORSTEST_VECTORS(XT,AA,BB,CC,SS-(XT,AA,BB,CC,SS-DD,POT)DD,POT)CONSTCONST M=0;M=0;REPEATREPEAT 4 14,5,6,3,M-.X.,X.;4 14,5,6,3,M-.X.,X.;13,5,6,3,M-.X.,.X.;13,5,6,3,M-.X.,.X.;11,5,6,3,M-.X.,.X.;11,5,6,3,M-.X.,.X.;7,5,6,3,M-.X.,.X.;7,5,6,3,M-.X.,.X.;constconst M=M+1;M=M+1;显示译码电路的设计显示译码电路的设计uu 输入信号:输入信号:q3.q0q3.q0四位二进制信号四位二进制信号 uu 输出信号:输出信号:a a、b b、c c、d d、e e、f f、g g对应七段数码管的段信号对应七段数码管的段信号uu 设计要点:设计要点:数码管除了能显示数字数码管除了能显示数字0 09 9外,还能显示字符外,还能显示字符H H(HzHz)和)和(KHzKHz)。)。H H对应对应b b、c c、e e、f f、g g显示。显示。对应对应e e、f f、g g显示。显示。动态显示电路动态显示电路测试矢量与仿真波形测试矢量与仿真波形TEST_VECTORS(F_1K,SS,LOCK,D0,D1,D2-XT,POT,DD)CONST N=0;REPEAT 4 CONST P=0;REPEAT 4.C.,N,P,5,6,3-.X.,.X.,.X.;CONST P=P+1;CONST N=N+1;数显频率计电路数显频率计电路1KHz输入信号输入信号1Hz8Hz显显示示选选通通小小数数点点溢出溢出频率计测试矢量频率计测试矢量 test_vectors(clk1,clk8,dclk,freqx-scan,oab)const m=4;const n=1;repeat 32 repeat m repeat n 1,1,.C.,.C.-.x.;repeat n 1,0,.C.,.C.-.x.;repeat m repeat n 0,1,.C.,.c.-.x.;repeat n 0,0,.C.,.C.-.x.;频率计测试波形频率计测试波形