河南科技大学课程设计说明书课程名称__现代电子系统课程设计__题目___简易数字频率计设计__学院___电子信息工程学院___班级_电子信息科学与技术091班_学生姓名_____李可以______指导教师__齐晶晶、张雷鸣___日期2012.12.21课程设计任务书(指导教师填写)课程设计名称现代电子系统课程设计学生姓名李可以专业班级电信科091 设计题目简易数字频率计设计一、课程设计目的掌握高速AD的使用方法;掌握频率计的工作原理;掌握GW48_SOPC实验箱的使用方法;了解基于FPGA的电子系统的设计方法。
二、设计内容、技术条件和要求设计一个具有如下功能的简易频率计。
(1)基本要求:a.被测信号的频率范围为1~20kHz,用4位数码管显示数据,十进制数值显示。
b.被测信号为幅值1~3V的方波、脉冲信号。
c.具有超量程警告(可以用LED灯显示,也可以用蜂鸣器报警)。
d.当测量脉冲信号时,能显示其占空比(精度误差不大于1%)。
(2)发挥部分a.修改设计,实现自动切换量程。
b.扩宽被测信号能测量正弦波、三角波。
c.其它。
三、时间进度安排布置课题和讲解:1天查阅资料、设计:4天实验:3天撰写报告:2天四、主要参考文献何小艇《电子系统设计》浙江大学出版社 2008.1潘松黄继业《EDA技术实用教程》科学出版社 2006.10齐晶晶《现代电子系统设计》实验指导书电工电子实验教学中心 2009.8指导教师签字: 2012年 12月3日摘要频率计是数字电路中的一个典型应用,是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器,频率测量在科技研究和实际应用中的作用日益重要。
数字频率计是数字电路中的一个典型应用,实际的硬件设计用到的器件较多,连线比较复杂,而且会产生比较大的延时,造成测量误差、可靠性差。
随着复杂可编程逻辑器件(CPLD)的广泛应用,以EDA工具作为开发手段,运用VHDL语言。
将使整个系统大大简化。
提高整体的性能和可靠性。
在本文中,我们设计了一个简易数字频率计。
主要分为如下几个部分:A/D模块:用硬件描述语言写一个状态机,控制ADC0809芯片正常工作,使输入的被测模拟信号经过ADC0809芯片处理,转化为数字信号。
比较整形模块:将A/D转换出来的数字信号通过比较,高于阈值的为1低于阈值的为0从而将八位数字信号转换为脉冲便于频率计算。
频率测量模块:常用的频率测量方法有很多。
有计数法和计时法,等精度法等,具体的方案论证将在下面进行。
占空比计算模块:计算脉冲波占空比,具体的方案论证将在下面进行。
选择显示模块:由于只有四位数码管显示,所以用一个二选一选择器,通过一个按键控制四位数码管显示的内容是频率还是占空比。
关键词:数字频率计、模块、占空比、数字信号、测量、阈值目录一.任务解析 (3)二.总体方案与比较论证 (4)2.1方案选择 (5)2.2频率测量方法方案论症 (5)三.系统结构 (8)3.1 A/D模块设计 (9)3.2比较整形模块设计 (11)3.3频率测量模块设计 (12)3.4占空比计算模块设计 (13)3.5选择显示模块设计 (15)四.硬件验证 (16)五.误差分析 (17)六.心得体会 (18)七.参考文献 (18)八.程序附录 (19)一.任务解析本次课程设计的我利用verilog语言设计一个简易数字频率计。
频率计主要用于测量正弦波、矩形波、三角波和尖脉冲等周期信号的频率值及脉冲的占空比。
其扩展功能可以实现自动切换量程,使整形时,以实现扩宽被测信号的幅值范围。
数字频率计的整体系统原理框图如图1,被测信号为外部输入信号,送入测量电路经过数字整形、测量计算、数据锁存和送显。
就完成了频率计的基本功能,控制选择用来实现频率的计算频率和计算占空比功能的选择。
图1二.总体方案与比较论证数字频率计在具体是现实时,可以采用单片机或者FPGA来实现,具体有如下方案:方案一:采用FPGA与单片机为核心来实现,可以利用FPGA来实现在单片机系统中的计数部分。
这样可以节省单片机的系统资源,考虑到在下面的相移网络设计中也需要利用单片机和FPGA,但单片机的系统资源相对有限,因此我们建议在这里单片机主要用于控制,而FPGA则可以用来进行计数之类的事情。
简单原理图如图2图2方案二:全部利用FPGA来实现,即利用FPGA产生时钟。
由于FPGA的工作频率比单片机的高很多,因此可以考虑直接利用FPGA产生信号的高频参考频率,FPGA处理速度快,得到的频率,占空比相对稳定,精度高,容易实现高频测量。
缺点是编程较为复杂,实现控制相对复杂。
简单原理图如图3图32.1方案选择:方案一虽然可行,但是由于在实验室现有的FPGA实验板上无法将单片机运用在系统中,因此不能用。
方案二不仅符合此次课程设计的要求,且在实验室的条件下均能实现,所以我们选择方案二作为本次课程设计的方案。
2.2频率测量方法方案论证所谓“频率”,就是周期性信号在单位时间(秒)内变化的次数。
若在一定的时间间隔T内计数,计得某周期性信号的重复变化次数为N,则该信号的频率可表达为:f = N / T所以测量频率就要分别知道N和T的值,由此,测量频率的方法一般有三种:测频方法、测周方法和等精度测量。
2.2.1测频方法这种方法即已知时基信号(频率或周期确定)做门控信号,T为已知量,然后在门控信号有效的时间段内进行输入脉冲的计数,原理图如下图所示:图 2-2-1 测频方法原理图首先,被测信号①(以正弦波为例)经过放大整形后转变成方波脉冲②,其重复频率等于被测信号频率。
把方波脉冲②加到闸门的输入端。
由一个高稳定的石英振荡器和一系列数字分频器组成了时基信号发生器,它输出时间基准(或频率基准)信号③去控制门控电路形成门控信号④,门控信号的作用时间T是非常准确的(由石英振荡器决定)。
门控信号控制闸门的开与闭,只有在闸门开通的时间内,方波脉冲②才能通过闸门成为被计数的脉冲⑤由计数器计数。
闸门开通的时间称为闸门时间,其长度等于门控信号作用时间T。
比如,时间基准信号的重复周期为1S,加到闸门的门控信号作用时间T亦准确地等于1S,即闸门的开通时间——“闸门时间”为1S。
在这一段时间内,若计数器计得N=100000个数,根据公式f = N / T,那么被测频率就是100000Hz。
如果计数式频率计的显示器单位为“KHz”,则显示100.000KHz,即小数点定位在第三位。
不难设想,若将闸门时间设为T=0.1S,则计数值为10000,这时,显示器的小数点只要根据闸门时间T的改变也随之自动往右移动一位(自动定位),那么,显示的结果为100.00Khz。
在计数式数字频率计中,通过选择不同的闸门时间,可以改变频率计的测量范围和测量精度。
2.2.2测周方法测周方法即:被测信号(频率或周期待测)做门控信号,T为未知量,做门控信号T,然后在门控信号有效的时间段内对时基信号脉冲计数,原理图如下图所示:图 2-2-2 测周方法原理图计数器测周的基本原理刚好与测频相反,即由被测信号控制主门开门,而用时标脉冲进行计数,所以实质上也是一种比较测量方法。
2.2.3等精度测量法等精度测量法的核心思想是通过闸门信号与被测信号同步,将闸门时间τ控制为被测信号周期长度的整数倍。
测量时,先打开预置闸门,当检测到被测信号脉冲沿到达时,标准信号时钟开始计数。
预置闸门关闭时,标准信号并不立即停止计数,而是等检测到被测信号脉冲沿到达时才停止,完成被测信号整数个周期的测量。
测量的实际闸门时间可能会与预置闸门时间不完全相同,但最大差值不会超过被测信号的一个周期。
在等精度测量法中,相对误差与被测信号本身的频率特性无关,即对整个测量域而言,测量精度相等,因而称之为“等精度测量”。
标准信号的计数值越f可以提高测量精大则测量相对误差越小,即提高门限时间τ和标准信号频率c度。
在精度不变的情况下,提高标准信号频率可以缩短门限时间,提高测量速度。
原理图如下:三.系统结构根据本次课程设计的要求,我将这次的频率计功能实现分为五个模块:3.1、A/D模块3.2、比较整形模块3.3、频率测量模块3.4、占空比计算模块3.5、选择显示模块系统结构如图6:图3其中频率测量模块的基准信号为1HZ,而占空比计算模块的基准信号为3MHZ, 其中AD转换模块也需要时钟,由于ADC0809是低速转换器,所以基准信号为1MHZ即可,由于试验箱时钟信号源资源比较丰富,所以可以直接用FPGA的3个引脚引入时钟就行,所以不需要分频模块。
下面是各个模块的具体描述与功能:3.1 A/D模块设计A/D模块的主要功能就是控制ADC0809芯片正常工作进行被测模拟信号的采集和数字化的过程,ADC0809是美国国家半导体公司生产的CMOS工艺8通道,8位逐次逼近式A/D转换器。
其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。
是目前国内应用最广泛的8位通用A/D芯片。
其主要控制信号:START是转换启动信号,高电平有效;ALE是3位通道选择地址信号的锁存信号。
当模拟量送至某一输入端,由3位地址信号选择,而地址信号由ALE锁存;EOC是转换情况状态信号;在EOC的上升沿后,若使输出使能信号OE为高电平,则打开三态缓冲期,把转换好的8位数据结果输至数据总线。
其实按照本次课程设计的要求,此次频率计应该使用一个高速AD芯片,但是由于实验条件,我们只能用0809这个慢速的AD,所以本次课程设计的测频范围就大大缩小了,测频范围大概只能从1Hz到4KHz。
ADC0809的工作过程:首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。
此地址经译码选通8路模拟输入之一到比较器。
START上升沿将逐次逼近寄存器复位。
下降沿启动 A/D转换,之后EOC输出信号变低,指示转换正在进行。
直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。
当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上,至此ADC0809的一次转换结束。
下面是控制ADC0809采样状态图:图7用VHDL语言写了一个状态机来控制ADC0809正常工作采集转化被测信号,下面是A/D模块的封装图以及仿真波形图:图8图9由仿真图可也看出状态机能够控制ADC0809芯片正常工作完成被测信号的数字化处理。
3.2 比较整形模块设计比较整形模块的输入信号是经过0809数字化的被测信号。
比较整形模块的作用就是将输入的八位信号转化为误差较小的高低电平,形成脉冲信号。
原理就是在设置一个阈值,当输入的信号高于这个阈值时输出高电平,当输入的信号低于阈值时输出低电平。
这样就可以把被测的信号转化为脉冲信号,然后送入频率计算电路就能方便地计算出被测信号的频率。