1 / 58

数字显示频率计的设计

可编程逻辑器件( PLD )设计方案. 数字显示频率计的设计. 电气学院电工电子基础中心. 数字显示频率计的研制过程. 一、设计要求 —— 确定产品的性能指标. 二、设计步骤 —— 选择可行的方案,进行单元电路设计. 三、安装 ( 下载 ) 调试 —— 先进行单元电路的调试,然后进行产品的调试。. 四、总结整理 —— 实验总结报告. 一、设计要求. 用 PLD 器件 ispLSI1016 及 4 只 7 段动态显示数码管(一只用于量程显示)设计一只数字频率计,要求: 测频范围 10.0Hz ~ 9.99KHz ; 测量误差小于等于 1% 。

azura
Download Presentation

数字显示频率计的设计

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 可编程逻辑器件(PLD)设计方案 数字显示频率计的设计 电气学院电工电子基础中心

  2. 数字显示频率计的研制过程 一、设计要求——确定产品的性能指标 二、设计步骤——选择可行的方案,进行单元电路设计 三、安装(下载)调试——先进行单元电路的调试,然后进行产品的调试。 四、总结整理——实验总结报告

  3. 一、设计要求 用PLD器件ispLSI1016及4只7段动态显示数码管(一只用于量程显示)设计一只数字频率计,要求: • 测频范围10.0Hz~9.99KHz; • 测量误差小于等于1%。 • 响应时间不大于15秒。 • 具有超量程显示功能。 • 频率计分成三个频段进行设计:

  4. 二、设计步骤 • 设计一个具有异步清零、计数/保持功能的10×10×10进制加法计数器。 • 设计频率计的控制电路,要求能产生10秒、1秒的闸门用相应的清零、锁存脉冲。 • 设计频率计的自动量程转换电路,要求能手动控制频段转换,超量程显示。将上述设计构成频率测量电路,并进行测试。 • 设计12位信号锁存电路、动态选通电路、显示电路、译码电路。构成一个完整的显示控制电路,并进行测试。 • 最终实现自动频段转换的3位数显频率计。

  5. 四、实验总结报告 • 频率计设计要求及方案分析。 • 频率计的整体设计思想及设计框图。 • 提供频率计单元电路(计数器、控制电路、自动量程转换电路、显示选通电路等)的具体设计说明、源程序及整体设计电路图。 • 频率计设计的重要调试过程,遇到具体问题的解决方法。 • 记录您设计的频率计的测频结果(高.中.低三频段),并对测频精度、响应速度及量程转换过程等作出分析。 • 您对扩大本频率计的功能.提高频率计的性能有何设想(要提供设计思路)? • 谈谈用PLD器件设计数字电路的体会,您认为用PLD器件较之用传统中规模数字器件设计数字系统有什么优缺点。 • 总结本次设计的收获、存在问题,并对选题、设计调试过程中的指导等方面提出您的意见与建议。

  6. 数 器 8 8 4 4 8 4 4 4 4 FX 整形 锁 存 器 译 码 电 路 & 8 锁存脉冲信号 控制电路 清零脉冲信号 闸门控制信号 原理框图(静态显示)

  7. 8 4 4 4 4 计 数 锁 存 器 FX 整形 显 示 电 路 译 码 电 路 & 扫描选择 量程控制信号 控制电路与 自动量程 清零锁存信号 闸门控制信号 原理框图(动态显示)

  8. 电路图 选通 1KHz 动态 显示 选通 译码器 显示模块 显 示 小数点 输入信号 锁存器 锁存器 锁存器 分频器 溢出 1Hz 计 数 器 计 数 器 计 数 器 控制电路 8Hz 自动量 程转换

  9. 电路单元 10×10×10进制计数器 控制电路 自动量程转换 10分频电路 频率测量电路 12位锁存器 动态显示选通电路 显示电路 显示译码电路 动态显示电路 数显频率计电路

  10. 10×10×10进制加法计数器

  11. 十进制加法计数器 • 输入信号: CLK-输入脉冲; CLR-清零脉冲; C_H-保持信号(以后称为:闸门信号) (C_H=0保持, C_H=1允许计数)。 • 输出信号: QQ=Q3,Q2,Q1,Q0=[Q3..Q0]。 • 逻辑关系: 当C_H=0时,输出保持不变。 当C_H=1时,⑴输出<9,QQ=QQ+1。 ⑵输出≥9,QQ=0。

  12. 要点复习(一) • 赋值运算: • ⑴不带时钟的赋值(组合输出)运算符(=) • ⑵带时钟的赋值 (寄存输出)运算符(:=) • 管脚及节点属性: • ⑴组合信号输出‘COM’(例:a pin istype ‘com’;) • ⑵寄存器信号输出’REG’(例:a pin istype ‘reg’;) • 指示字的使用: • @Dcset(随意值的设置):用随意条件来帮助优化不完全规定的逻辑函数。 • 注意电路图的层次化 • 用文件扩展名来了解文件类型

  13. 要点复习(二) • 时序电路中的点扩充命令: .CLK-时钟输入(例:QQ.CLK=CLK;QQ的时钟信号为 CP) .AR-异步寄存器复位 (例:QQ.AR=CLR;QQ的异步复 位信号为CLR) .FB-寄存器反馈 (例:QQ:=QQ.FB+1;QQ输出+1) .LH-锁存器的锁存使能 (例:QQ.LH=LOCK;QQ的锁存 使能信号为LOCK) • 特殊常量: .C.-上升沿时钟输入 .X.-无关项 注意:特殊常量值用大小写均可,但是前后两个“.”不能省略!

  14. 要点复习(三) • 原理图中的符号修改: 在菜单中选取Edit\Symbol,选取需修改的符号,进入Symbol Editor图形编辑窗口,根据需要进行修改。 • 原理图中的图符编号修改: 在菜单中选取Add\Instance Name,根据需要进行修改。 • 原理图中的导线属性修改: 在菜单中选取Add\Net Name,根据需要进行修改。 • 原理图中的符号属性修改: 在菜单中选取Add\Symbol Attribute,根据需要进行修改。

  15. 要点复习(四) • 页面设置:File\Sheet Setup。 • 图符编辑:Edit\symble。 • 绘图顺序:Symble\Wire\Net Name\I/O Maker。 • 文件名与图符名:一定要有区别。 • 显示波形默认为十六进制。希望用二进制或十进制来检查。 • 每一个功能模块都要进行测试。 • 标识符对大小写敏感

  16. 十进制计数器.abl与.sch

  17. 十进制计数器.abv与waveform TEST_VECTORS([CLK,C_H,CLR]->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.; }

  18. 10×10×10进制加法计数器

  19. 10×10×10计数器测试矢量与仿真波形 TEST_VECTORS([CLK,C_H,CLR]->QQ) @REPEAT 2 {[.C.,0,0]->.X.; } @REPEAT 115 {[.C.,1,0]->.X.;} @REPEAT 2 {[.C.,1,1]->.X.; } @REPEAT 5 {[.C.,0,1]->.X.; } @REPEAT 10 {[.C.,1,1]->.X.; }

  20. 频率测量原理与方法 两种频率测量的方法: 1.直接测量法 即在一定闸门时间内测量被测信号的脉冲个数。直接测量法适合于高频信号的频率测量。 2.间接测量法 如周期测量法。周期测量法,首先测出被测信号的周期Tx ,然后经过倒数运算得到信号频率Fx=1/Tx 。为了保证低频信号(频率在几十Hz以下)的测频精度,最有效、方便的方法是周期测量法。

  21. 控制电路的设计 频率计的设计关键是控制电路的设计,控制电路产生频率测量所需的闸门、清零和锁存信号。这些信号具有一定的时序关系。 为了保证测量的精确性,在每次闸门信号变为高信号前,必须给计数器提供一个清零信号。当闸门信号为高电平时,计数器开始计数;当闸门信号为低电平时,计数器停止计数。 如果闸门宽度为1S,则闸门时间内计数器的计数值即为被测信号的频率;改变闸门宽度可以改变频率计的量程,闸门宽度越小,频率计的量程越大。另一种扩大量程的方法为:闸门宽度保持不变,对被测信号先进行分频,然后再对其测频。相对来说,后者更加容易实现。

  22. 控制电路原理图 • 输入信号: F1-1Hz信号;F8-8Hz信号;SET-量程选择控制信号。 • 输出信号: C_H-闸门信号;CLR-清零信号;LOCK-锁存信号。

  23. 控制电路原理 在控制模块(KZ)中,F8为8Hz的时钟输入;F1为1Hz的时钟输入。SEL为量程选择控制端,当SEL=0时, 8Hz时钟进入JSQ15模块;当SEL=1时,1Hz时钟进入JSQ15模块,经JSQ15分频模块和BMQ编码模块后,分别产生闸门时间为1秒和10秒的闸门信号(C_H),以及相应的清零信号(CRL)、锁存信号(LOCK); 分频器的分频数应满足:最大产生10秒闸门信号,及清零信号、锁存信号的时间。因此必须大于12分频,为了可靠起见,选择15分频。 编码器根据SEL信号,产生闸门时间为1秒(F8输入)或10秒(F1输入)的闸门信号,清零信号、锁存信号。以及它们之间的时序关系。

  24. 控制电路输出信号 • 闸门信号 当闸门信号为高电平时,计数器开始计数,反之计数器停止计数。改变闸门宽度可以改变频率计的量程,闸门宽度越小,频率计的量程越大。 • 清零信号 为了保证测频准确,在每次闸门信号开通前必须让计数器处在零状态,保证计数器每次都从零开始计数。 • 锁存信号 为了防止频率计的显示随着计数值的增加不断变化,不断闪烁。在计数器和显示、译码之间增加一级锁存电路。

  25. CP脉冲 闸门信号 清零信号 锁存信号 闸门信号、清零信号及锁存信号时序关系 上图给出了一个典型的由频率为8Hz的时钟源产生的闸门信号、清零信号和锁存信号。其中闸门高电平时间为1秒,清零信号和锁存信号有效时间各为一个时钟周期。

  26. 计数器测试矢量与仿真波形 TEST_VECTORS(CLK->QQ) 0->.X.; @REPEAT 15{.C.->.X.;}

  27. 编码器的设计要点 • 选择信号,SEL=0,CLK=F8, SEL=1,CLK=F1。 当QQ=0 时,产生清零信号。 当QQ=14时,产生锁存信号。 当SEL=0,且(0<QQ<9)时,输出1秒保持信号。 当SEL=1,且0<QQ<11)时,输出10秒保持信号。

  28. 编码器测试矢量与仿真波形 TEST_VECTORS([QQ,SEL]->[C_H,CLR,LOCK]) @CONST N=0; @REPEAT 2{ @CONST M=0; @REPEAT 15{[M,N]->.X.; @CONST M=M+1;}; @CONST N=N+1;}

  29. 控制电路测试矢量与仿真波形 TEST_VECTORS([SEL,F1,F8]->[C_H,CLR,LOCK]) @REPEAT 5 {@REPEAT 4{[0,0,.C.]->.X.;} @REPEAT 4{[0,1,.C.]->.X.;} } @REPEAT 22 {@REPEAT 4{[1,0,.C.]->.X.;} @REPEAT 4{[1,1,.C.]->.X.;} }

  30. 自动量程转换电路的设计 • 输入信号: CARRY-进位 HIGH-高位全零时等于0 LOCK-锁存 • 输出信号: OVER-溢出(在一个闸门时间内,当最高位计数值由9变为0时,说明计数溢出,发出超量程信号。) S1-闸门(S1=0:产生1秒闸门。S1=1:产生10秒闸门。) S2-分频(S2=0:对被测信号不分频。S2=1:被测信号10分频后再测频。)

  31. 分频信号(S2)与闸门信号(S1)的组合 • S2S1=00 1秒闸门-不分频,中频段(100Hz~999Hz),无小数点。量程显示Hz。即:中频无小数点。 • S2S1=01 10秒闸门-不分频,低频段(10.0Hz~99.9Hz),个位前小数点亮。量程显示Hz。即:低频个位小数。 • S2S1=10 1秒闸门-10分频,高频段(1.00KHz~9.99KHz),十位前小数点亮。量程KHz。即:高频十位小数。 • S2S1=11 10秒闸门-10分频=[S2S1=00]。中频段(100Hz~999Hz),无小数点。量程显示Hz。

  32. 自动量程转换电路 • 如果超量程,且当前SS=10,发出超量程信号(OVER=1)。否则需要转向更高频段。即:从低频段(SS=01)转向中频段(S2S1=00),或从中频段(SS=00)转向高频段(SS=10)。 注:SS=[S2,S1] • 如果没有超量程,⑴计数器的最高位的4位二进制数不全为0,说明当前量程设置合理,频段SS的值不必变化。⑵计数器的最高位的4位二进制数全为0,说明当前量程设置不合理,必须转向更低频段。即:从高频段(SS=10)转向中频段(SS=00),或从中频段(SS=00)转向低频段(SS=01)。 • 自动量程转换电路必须具有记忆功能,因此,需要使用寄存器变量,寄存器的时钟来自控制电路的锁存信号(LOCK)。

  33. 自动量程转换电路的设计要点 • CARRY=0-无进位(最高位<9) • HIGH≠0-保持量程不变。 • HIGH=0、SS=00(中频)或01(低频量程)——SS=01(低频量程)。 • HIGH=0、SS=10(高频量程)——SS=00(中频量程)。 • HIGH=0、SS=11(中频量程)——SS=01(低频量程)。 • CARRY=1-有进位(最高位=9) • SS=01(低频量程)——SS=00(中频量程)。 • SS=00(中频)或SS=10(高频量程)——SS=10(高频量程)。 • SS=11(中频量程)——SS=10(转向高频量程)。 • 注意:HIGH为最高位4位二进制数的状态 当全为0时,HIGH=0; 不全为0时,HIGH≠0。

  34. 自动量程转换电路测试矢量 TEST_VECTORS([LOCK,HIGH,CARRY]->[SS,OVER]) [0,0,0]->[.X.,.X.]; @REPEAT 4 {[.C.,0,0]->[.X.,.X.];} @REPEAT4 {[.C.,1,0]->[.X.,.X.];} @REPEAT 4 {[.C.,0,0]->[.X.,.X.];} @REPEAT 4 {[.C.,1,1]->[.X.,.X.];} @REPEAT 4 {[.C.,0,0]->[.X.,.X.];} @REPEAT 4 {[.C.,1,0]->[.X.,.X.];} @REPEAT 4 {[.C.,1,1]->[.X.,.X.];} @REPEAT 4 {[.C.,1,0]->[.X.,.X.];}

  35. 自动量程转换电路仿真波形

  36. 十分频电路的设计 • 输入信号: FPKZ-分频控制 FREQX-被测频率输入 • 输出信号: CLK-频率信号(当分频控制(FPKZ)为0时,CLK(频率信号)=FREQX(被测频率输入);当分频控制(FPKZ)为1时,CLK(频率信号)=FREQX(被测频率输入)的十分频。) • SFP1-十分频器

  37. 十分频电路的设计要点 • 设置一组中间节点: Q3..Q0 NODE ISTYPE ‘REG’; • QQ.CLK=CLK_IN; • 当QQ>=9 时,QQ:=0; 当QQ<9时,QQ:=QQ.FB+1; • SFP=Q3&Q0;

  38. 十分频电路测试矢量与仿真波形 TEST_VECTORS([FREQX,FPKZ]->[CLK]) [1,0]->[.X.]; @REPEAT 5{[.C.,0]->[.X.];} @REPEAT 15{[.C.,1]->[.X.];}

  39. 频率测量电路

  40. 频率测量电路测试矢量 TEST_VECTORS([F1,F8,FREQX]->[QQ,OVER]) @CONSTm=4; @CONSTn=1; @REPEAT 32 {@REPEATm {@REPEATn {[1,1,.c.]->.x.;} @REPEATn {[1,0,.c.]->.x.;} } @ REPEATm {@ REPEATn {[0,1,.c.]->.x.;} @ REPEATn {[0,0,.c.]->.x.;} } }

  41. 频率测量电路仿真波形

  42. 二进制锁存器 • 输入信号: LOCK——锁存信号 D3..D0——输入信号 • 输出信号: Q3..Q0——输出信号 二进制锁存器设计要点 • 当LOCK=1,QQ等于DD。

  43. 二进制锁存器测试矢量与仿真波形 TEST_VECTORS([DD,LOCK]->QQ) @CONST M=0 ; @REPEAT 17{[M,.C.]->.X.; @CONST M=M+1;}

  44. 12位锁存器

  45. 四位二进制锁存器设计要点 • 如果计数器的输出直接译码显示,则在闸门信号高电平期间,频率计的显示随着计数值的增加不断变化、不断闪烁、人眼难以分辨。为了防止这种现象,在计数和显示译码之间增加锁存电路。当计数器停止计数后(闸门信号由高变低后),才将计数值锁存并译码显示。

  46. 12位锁存器测试矢量与仿真波形 TEST_VECTORS([DD,LOCK]->[QQ]) @CONST M=0; @REPEAT 17{[M,.C.]->[.X.]; @CONST M=M+20;}

  47. 动态显示选通电路的设计 • 输入信号: CLKD-动态显示时钟信号 • 输出信号: XT0、XT1、XT2、XT3-选通信号 (当XT0=0,选通H或K单位数码管; 当XT1=0,选通个位数码管; 当XT2=0,选通十位数码管; 当XT3=0,选通百位数码管。) • 设计要点: 设置一个两位二进制计数器,其四种状态,分别对应XT3..XT0四个选通信号。 注:实验器上动态数码管为共阴极,选通端为低电平有效。

  48. 动态显示选通电路的设计要点 设置一组中间节点:Q1,Q0 node istype 'reg'; QQ.CLK=CLKD; 当QQ>=3,QQ等于0。 当QQ<3,QQ等于QQ+1。 动态选通端低电平有效 XT3=!(Q1&Q0)——显示百位。 XT2=!(Q1&!Q0)——显示十位。 XT1=!(!Q1&Q0)——显示个位。 XT0=!(!Q1&!Q0)——显示H或K。

  49. 动态显示选通电路测试矢量与仿真波形 TEST_VECTORS([CLKD]->[XT]) @REPEAT 10{[.C.]->[.X.];}

  50. 显示电路的设计 • 输入信号: XT3..XT0-选通信号 S1-闸门信号 S2-分频信号 A3..A0-个位数 B3..B0-十位数 C3..C0-百位数 • 输出信号: D、C、B、A-动态四位二进制数 POT-小数点 • 中间变量: POT2=1:显示一位小数。 POT3=1:显示二位小数。 KH=0:显示H(Hz)。 KH=1:显示├(KHz)。

More Related