基于FPGA的数字频率计设计
学院: 专业: 班级: 姓名: 学号: 审阅老师: 评分:
1 / 21
目录
一、课程设计目的 ................................................................................. 3 二、设计任务 ......................................................................................... 3 三、功能要求与技术指标 ...................................................................... 3 四、数字频率计工作原理概述 .............................................................. 3 五.数字频率计实现方法 ...................................................................... 4 六.结论与误差分析............................................................................ 11 七.VHDL程序: ................................................................................. 12
2 / 21
一、课程设计目的
熟悉EDA工具,掌握用VHDL语言进行数字系统设计的基本方法和流程,提高工程实践能力。
二、设计任务
设计一数字频率计,用VHDL语言描述,用QuartusII工具编译和综合,并在实验板上实现。
三、功能要求与技术指标
1. 基本功能要求
(1) 能够测量出方波的频率,其范围50Hz~50KHz。 (2) 要求测量的频率绝对误差±5Hz。
(3) 将测量出的频率以十进制格式在实验板上的4个数码管上显示。 (4) 测量响应时间小于等于10秒。 以上(1)~(4)基本功能要求均需实现。
2. 发挥部分
(1) 提高测量频率范围,如10Hz~100KHz或更高、更低频率,提高频率
的测量绝对值误差,如达到±1Hz。
(2) 可以设置量程分档显示,如X1档(显示范围1Hz~9999Hz),X10档
(显示范围0.001KHz~9.999KHz),X100档(显示范围0.100KHz~999.9KHz)...可以自定义各档位的范围。量程选择可以通过按键选择,也可以通过程序自动选择量程。
(3) 若是方波能够测量方波的占空比,并通过数码管显示。 以上(1)~(3)发挥功能可选择实现其中的若干项。
四、数字频率计工作原理概述
1. 数字频率计简介
3 / 21
在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此频率的测量就显得更为重要。而数字频率计是采用数字电路制成的实现对周期性变化信号的频率的测量。
2. 常用频率测量方法:
方案一
采用周期法。通过测量待测信号的周期并求其倒数,需要有标准倍的频率,在待测信号的一个周期内,记录标准频率的周期数,这种方法的计数值会产生最大为±1个脉冲误差,并且测试精度与计数器中记录的数值有关,为了保证测试精度,测周期法仅适用于低频信号的测量。
方案二
采用直接测频法。直接测频法就是在确定的闸门时间内,记录被测信号的脉冲个数。由于闸门时间通常不是待测信号的整数倍,这种方法的计数值也会产生最大为±1个脉冲误差。进一步分析测量准确度:设待测信号脉冲周期为Tx,频率为Fx,当测量时间为T=1s时,测量相对误差为Tx/T=Tx=1/Fx。由此可知直接测频法的测量准确度与信号的频率有关:当待测信号频率较高时,测量准确度也较高,反之测量准确度也较低。
五.数字频率计实现方法
本文采用方案二直接测频法进行设计,具体实施方法如下:
1. 直接测频法:
采用一个标准的基准时钟,在单位闸门时间(1s)里对被测信号的脉冲数进行计数,即为信号的频率。由于闸门时间通常不是待测信号的整数倍,这种方法的计数值也会产生最大为±1个脉冲误差。
进一步分析测量准确度:设待测信号脉冲周期为Tx,频率为Fx,当
测量时间为T=1s时,测量相对误差为Tx/T=Tx=1/Fx。由此可知直接测频
4 / 21
法的测量准确度与信号的频率有关:当待测信号频率较高时,测量准确度也较高,反之测量准确度也较低。
2. 具体设计流程:
1). 基本功能部分:
(1). 原理概述:
1利用FPGA实验板的基准时钟50M分频产生一个1Hz的脉冲方○
波作为闸门信号;
2当待测信号的上升沿到来时,利用四个个十进制计数器(即 ○
最高能记到9999次数)对其上升沿进行计数;
3计数的同时不断把数锁存,并送到数码管显示部分显示; ○
4当1Hz闸门信号的上升沿到来时,对锁存送到显示部分的数 ○
据用十进制显示到四位数码管,一旦显示后就把四个计数器的值清零,计数器重新对待测信号上升沿计数并锁存,直到1Hz闸门信号的下个上升沿到来时在把这次闸门时间内记到的数据送去数码管显示。
○5如此循环,实现对不是固定频率的待测信号的频率每秒更新
1Hz闸门信号 1秒时间宽度 1锁存计数值,并送数码管显示 ○ 一次的功能。
(2)设计原理时序图:
待测信号
清零信号clr 2然后计数器清零clr=1,重新计数 ○ 5 / 21