EDA课程设计数字频率计

合集下载

EDA课程设计-数字频率计

EDA课程设计-数字频率计

目录一、目录 (1)二、前言 (2)三、课程设计内容与要求分析 (2)●设计题目●设计要求●设计要求分析四、程序设计 (2)●计数器模块 (3)●数字频率计 (4)●功能描述及硬件说明●仿真调试 (9)五、工作进程及收获体会 (10)●工作进程安排●收获体会二、前言EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言VHDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。

EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。

利用EDA工具,可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出IC版图或PCB版图的整个过程的计算机上自动处理完成。

三、课程设计内容与要求分析1.设计题目数字频率计2.设计要求1、设计一个能测量方波信号的频率的频率计。

2、测量的频率范围是0 999999Hz。

3、结果用十进制数显示。

4、按要求写好设计报告(设计报告内容包括:引言,方案设计与论证,总体设计,各模块设计,调试与数据分析,总结)。

3.设计要求分析1、脉冲信号的频率就是在单位时间内所产生的脉冲个数,其表达式为,f为被测信号的频率,N为计数器所累计的脉冲个数,T为产生N个脉冲所需的时间。

所以,在1秒时间内计数器所记录的结果,就是被测信号的频率。

2、被测频率信号取自实验箱晶体振荡器输出信号,加到主控门的输入端。

3、再取晶体振荡器的另一标准频率信号,经分频后产生各种时基脉冲:1ms,10ms,0.1s,1s等,时基信号的选择可以控制,即量程可以改变。

4、时基信号经控制电路产生闸门信号至主控门,只有在闸门信号采样期间内(时基信号的一个周期),输入信号才通过主控门。

5f=N/T,改变时基信号的周期T,即可得到不同的测频范围。

数字频率计的EDA设计

数字频率计的EDA设计
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity scan7 is
port(clk_scan: in std_logic;
en:out std_logic;
sel:out std_logic_vector(2 downto 0);
3)训练目标
具备硬件编程语言VHDL设计数字系统的初步能力,熟悉开发环境和流程,掌握技术方法。
2设计思路
2.1数字频率计的测量方案选取
设计数器的计数值为N,则可得到被测信号频率为f =N。但是由于闸门的开通、关闭的时间与被测频率信号的跳变难以同步,因此采用此测量方法在低频段的相对测量误差可能达到50% ,即在低频段不能满足设计要求。在频率测量方法中,常用的有直接测频法、倍频法和等精度测频法。这三种方案各有利弊,其中直接测频法是依据频率的含义把被测频率信号加到闸门的输入端,只有在闸门开通时间T (以1 s计)内,被测(计数)的脉冲送到十进制计数器进行计数。但根据三个方案的分析,直接测频法比其他两个方案更加简单方便可行,直接测频法虽然在低频段测量时误差较大,但在低频段我们可以采用直接测周法测量,这样就可以提高测量精度了。
begin
case state is
when"000"=>limit_cnt<=1000000;
when"001"=>limit_cnt<=100000;
when others=>limit_cnt<=10000;
end case;
end process limit;
4.4动态扫描模块设计

eda的频率计课程设计

eda的频率计课程设计

eda的频率计课程设计一、课程目标知识目标:1. 学生能理解EDA(电子设计自动化)的基本概念,掌握频率计的设计原理;2. 学生能描述频率计的工作原理,了解其主要组成部分;3. 学生能掌握频率计的电路设计方法,并了解其在实际应用中的重要性。

技能目标:1. 学生能运用所学知识,使用EDA软件进行频率计的电路设计;2. 学生能通过实验操作,搭建并调试频率计电路,提高实际动手能力;3. 学生能分析实验数据,解决频率计使用过程中出现的问题。

情感态度价值观目标:1. 学生对电子设计产生兴趣,培养创新意识和实践能力;2. 学生养成合作学习的习惯,提高团队协作能力;3. 学生认识到频率计在科技发展中的重要作用,增强社会责任感和使命感。

分析课程性质、学生特点和教学要求,本课程目标旨在使学生在掌握基本理论知识的基础上,通过实践操作,提高电子设计能力。

课程目标具体、可衡量,以便学生和教师能够清晰地了解课程的预期成果。

后续教学设计和评估将围绕这些具体学习成果展开。

二、教学内容本章节教学内容围绕以下三个方面进行选择和组织:1. 理论知识学习:- 电子设计自动化(EDA)基本概念及发展历程;- 频率计的工作原理及主要组成部分;- 频率计电路设计的基本方法。

教学内容关联课本第3章“电子设计自动化”及第4章“频率计的设计与应用”。

2. 实践操作环节:- 使用EDA软件进行频率计电路设计;- 搭建并调试频率计电路;- 分析实验数据,解决实际问题。

实践操作环节与课本第5章“实验与实训”相结合。

3. 教学大纲安排:- 第一周:学习EDA基本概念、发展历程,了解频率计的工作原理及主要组成部分;- 第二周:学习频率计电路设计方法,进行EDA软件操作训练;- 第三周:分组进行频率计电路设计,搭建和调试电路,分析实验数据。

教学内容具有科学性和系统性,确保学生在掌握理论知识的基础上,通过实践操作提高电子设计能力。

4. 教材章节及内容列举:- 第3章 电子设计自动化:3.1节、3.2节、3.3节;- 第4章 频率计的设计与应用:4.1节、4.2节、4.3节;- 第5章 实验与实训:5.1节、5.2节、5.3节。

EDA课程设计_简易数字频率计设计

EDA课程设计_简易数字频率计设计

目录1 引言 . ...........................................................................................................................1 2 简易数字频率计设计原理 . (2)2.1基本原理 . (2)2.2原理框图 . .......................................................................................................... 2 3 各模块程序及仿真 . (4)3.1测频控制发生器ctr 模块的设计 (4)3.2待测信号计数器counter 模块的设计 . ............................................................ 4 3.3锁存器regist 模块的设计 . ............................................................................... 5 3.4顶层模块的设计 . .............................................................................................. 6 3.5 引脚锁定 . ......................................................................................................... 7 4 心得体会 . ................................................................................................................... 9 参考文献 . ..................................................................................................................... 10 附录 . (11)1 引言EDA 技术是以硬件语言为主要的描述方式,以EDA 软件为主要的设计软件,以大规模课编程逻辑器件为载体的数字电路的设计过程。

eda频率计课程设计

eda频率计课程设计

eda频率计课程设计一、课程目标知识目标:1. 让学生理解EDA(电子设计自动化)的基本概念,掌握频率计的设计原理;2. 学会运用已学的电子元件和电路知识,设计并搭建一个简单的频率计;3. 掌握频率计在电子测量中的应用,了解其重要性和实际意义。

技能目标:1. 培养学生动手操作能力,能正确使用电子仪器和工具进行电路搭建;2. 提高学生问题解决能力,通过团队协作,设计和调试频率计电路;3. 培养学生运用EDA软件进行电路仿真和优化设计的能力。

情感态度价值观目标:1. 培养学生对电子设计的兴趣和热情,激发创新意识;2. 培养学生团队协作精神,学会倾听、沟通、分享和合作;3. 增强学生环保意识,了解电子产品的绿色设计和可持续发展。

分析课程性质、学生特点和教学要求,本课程将目标分解为以下具体学习成果:1. 学生能独立完成频率计电路的设计和搭建;2. 学生能运用EDA软件进行电路仿真,优化设计方案;3. 学生在团队协作中,发挥个人特长,共同解决问题;4. 学生通过课程学习,增强对电子设计领域的认识和兴趣,培养良好的情感态度价值观。

二、教学内容根据课程目标,教学内容主要包括以下几部分:1. EDA基本概念与频率计原理- 介绍EDA的基本概念、作用及其在电子设计中的应用;- 讲解频率计的工作原理、分类及其在电子测量中的重要性。

2. 电子元件与电路知识- 复习已学的电子元件(如电阻、电容、二极管、晶体管等)及其特性;- 梳理相关电路知识(如放大电路、滤波电路等)在频率计设计中的应用。

3. 频率计设计与搭建- 分析频率计电路的设计方法,引导学生运用所学知识进行设计;- 实践操作,指导学生正确搭建频率计电路,并进行调试。

4. EDA软件应用与电路仿真- 介绍EDA软件的基本功能,教授学生如何进行电路仿真和优化设计;- 指导学生运用EDA软件完成频率计电路的仿真,提高设计效率。

5. 团队协作与问题解决- 培养学生团队协作能力,分工合作完成频率计设计任务;- 引导学生学会分析问题、解决问题,提高实际操作能力。

EDA课程设计报告,数字频率计

EDA课程设计报告,数字频率计

. I目录前言01. 总体设计方案11.1总体设计方案12. 单元模块设计12.1十进制计数器设计12.1.1 十进制计数器原件t10设计12.1.2 位十进制计数器的顶层设计22.2闸门控制模块EDA设计32.2.1 定时信号模块Timer32.2.2 控制信号发生器模块T_con42.3译码显示模块42.3.1 显示存放器设计42.3.2 译码扫描显示电路52.3.3 译码显示模块的顶层电路设计73. 软件测试83.1测试的环境83.2调试和器件编程84. 设计总结85. 参考文献9前言在电子技术高度开展的今天,各种电子产品层出不穷,而频率作为设计的最根本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此,频率的测量就显得更为重要。

测量频率的方法有多种,其中电子计数器测量频率具有精度高、使用方便、测量迅速,以及便于实现测量过程的自动化等优点。

数字频率计是一种用十进制数字显示被测信号频率的数字测量仪器,它的根本功能是测量正弦信号、方波信号、尖脉冲信号以及其它各种单位时间变化的物理量。

当今国外厂家生产的数字频率计在功能和性能方面都比拟优良,而且还在不断开展中,但其构造比拟复杂,价位也比拟高,在测量精准度要求比拟低的测量场合,使用这些数字频率计就不够经济合算。

我所设计的这款数字频率计能够可靠实现频率显示功能,原理及构造也比拟简单本次所做的课程设计就是一个数字频率计,能测量1HZ~9999HZ的矩形波信号,并正确地显示所测信号的频率值。

数字频率计是数字电路中的一个典型应用,实际的硬件设计用到的器件较多,连线比拟复杂,而且会产生比拟大的延时,造成测量误差、可靠性差。

随着现场可编程门阵列FPGA 的广泛应用,以EDA工具作为开发手段,运用VHDL等硬件描述语言语言,将使整个系统大大简化,提高了系统的整体性能和可靠性。

采用FPGA现场可编程门阵列为控制核心,通过硬件描述语言VHDL编程,在Quartus‖仿真平台上编译、仿真、调试,并下载到FPGA芯片上,通过严格的测试后,能够较准确地测量各种常用的波形信号的频率,而且还能对其他多种物理量进展测量。

eda课程设计数字频率计

eda课程设计数字频率计

eda课程设计 数字频率计一、课程目标知识目标:1. 学生能够理解并掌握数字频率计的基本原理,包括频率的概念、测量方法及其在电子工程中的应用。

2. 学生能够运用所学知识,分析并识别EDA(电子设计自动化)软件中与数字频率计相关的元件和模块。

3. 学生能够运用电子元件搭建简单的数字频率计电路,并描述其工作过程。

技能目标:1. 学生能够运用EDA软件进行数字频率计电路的设计、仿真和调试,具备实际操作能力。

2. 学生能够通过小组合作,解决在数字频率计设计过程中遇到的技术问题,提高团队协作和问题解决能力。

情感态度价值观目标:1. 学生能够认识到数字频率计在电子工程领域的重要性和实际应用价值,激发对电子工程的兴趣和热情。

2. 学生在课程学习中,培养严谨的科学态度,注重实验数据的真实性和准确性。

3. 学生通过小组合作,学会尊重他人意见,培养良好的沟通能力和团队精神。

本课程针对高中年级学生,结合电子工程学科特点,强调理论与实践相结合,注重培养学生的动手操作能力和实际应用能力。

课程目标具体、可衡量,旨在帮助学生和教师在课程结束后,能够清晰地了解学生在知识、技能和情感态度价值观方面的预期成果。

同时,将课程目标分解为具体的学习成果,便于后续的教学设计和评估。

二、教学内容本章节教学内容依据课程目标,紧密围绕数字频率计的设计与实现,确保内容的科学性和系统性。

具体教学内容如下:1. 理论知识学习:- 频率概念及其测量方法- 数字频率计的原理与分类- EDA软件的基本操作与使用方法2. 实践操作环节:- 数字频率计电路设计原理- EDA软件中数字频率计电路搭建与仿真- 实际电路搭建与调试3. 教学大纲安排:- 第一课时:介绍频率概念、测量方法及数字频率计的原理与分类,让学生了解课程背景和目标。

- 第二课时:讲解EDA软件的基本操作与使用方法,引导学生学习并掌握软件应用。

- 第三课时:分析数字频率计电路设计原理,指导学生进行电路设计和仿真。

eda数字频率计课程设计

eda数字频率计课程设计

eda数字频率计课程设计一、课程目标知识目标:1. 让学生理解数字频率计的基本原理,掌握EDA工具的使用方法;2. 使学生掌握数字频率计的电路设计,包括计数器、时钟分频器等关键部分;3. 让学生掌握数字频率计的仿真与调试方法,了解其在实际应用中的限制和改进措施。

技能目标:1. 培养学生运用EDA工具进行数字电路设计和仿真的能力;2. 培养学生独立分析问题、解决问题的能力,能够根据实际需求调整和优化数字频率计的设计;3. 培养学生团队合作意识,提高沟通与协作能力。

情感态度价值观目标:1. 激发学生对电子设计的兴趣,培养创新意识和探索精神;2. 培养学生严谨的科学态度,注重实验数据的真实性,遵循实验操作规范;3. 引导学生关注我国电子产业的发展,增强民族自豪感和使命感。

课程性质:本课程为实践性较强的电子设计课程,旨在通过数字频率计的设计与实现,让学生掌握电子设计的基本方法和技能。

学生特点:学生已具备一定的电子基础知识,具有较强的学习能力和动手能力,但对EDA工具的使用和数字电路设计尚较陌生。

教学要求:教师需结合学生特点,注重理论与实践相结合,引导学生主动参与课堂讨论和实践活动,培养其独立思考和解决问题的能力。

通过课程学习,使学生能够达到预定的学习成果,为后续相关课程的学习打下坚实基础。

二、教学内容根据课程目标,本章节教学内容主要包括以下几部分:1. 数字频率计原理介绍:使学生了解数字频率计的工作原理,掌握频率测量的基本方法。

- 相关教材章节:第五章“数字频率计”- 内容列举:频率计的基本原理、计数器原理、时钟分频器原理等。

2. EDA工具使用:培养学生运用EDA工具进行电路设计与仿真的能力。

- 相关教材章节:第三章“EDA工具的使用”- 内容列举:EDA工具的基本操作、原理图绘制、电路仿真等。

3. 数字频率计电路设计:使学生掌握数字频率计的电路设计方法,包括计数器、时钟分频器等关键部分。

- 相关教材章节:第四章“数字电路设计”- 内容列举:计数器设计、时钟分频器设计、数字频率计整体电路设计等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计报告(理工类)课程名称:EDA技术专业班级:学生学号:学生姓名:X X 所属院部:物电学院指导教师:XXX 2011——2012学年第2学期目录1.设计目的和要求 (3)1.1课程设计目的与要求 (3)1.2课程设计内容 (3)1.3设计原理 (3)2.仪器和设备 (5)2.1MAX+PLUSI软件介绍 (5)2.2MAX+PLUSⅡ软件组成 (5)3.设计过程 (6)3.1设计内容和要求 (6)3.2设计方法和开发步骤 (6)3.2.1设计方案 (6)3.2.2实验步骤 (6)3.3设计思路 (7)3.4设计难点 (7)4.设计结果与分析 (8)4.1实验结果 (8)4.1.1测频控制信号发生器 (8)4.1.2十进制计数器 (8)4.1.3锁存器 (8)4.1.4动态扫描输出 (9)4.1.5七段译码器 (9)4.1.6顶层模块 (10)4.2程序简要说明 (10)4.2.1测频控制信号发生器的结构体VHDL源程序 (10)4.2.2十进制加法计数器的结构体VHDL源程序 (11)4.2.3锁存器的结构体VHDL源程序 (12)4.2.4动态扫描的结构体VHDL源程序 (13)4.2.5数码管显示的结构体VHDL源程序 (13)4.2.6顶层模块波形仿真 (15)5.实验小结 (16)参考文献 (17)1.设计目的和要求1.1课程设计目的与要求1.学会利用MAX+PLUSII进行层次化设计,并进行编译仿真;2.掌握数字频率计电路的设计原理;3.掌握运用VHDL语言进行系统设计的方法;4.输入顶层电路图和下层设计文件;5.利用仿真手段进行功能调试。

1.2课程设计内容分析数字频率计的功能,完成功能模块的划分,分别用VHDL语言完成底层模块的设计和以原理图的方法完成顶层模块的设计,分别对各个模块以及顶层模块进行仿真分析,最后在硬件开发平台上进行测试。

1.3设计原理频率信是常用的测量仪器,它通过对单位时间内的信号脉冲进行计数,从而测量出信号的频率。

设计一个6位频率计,可以测量1~999999Hz的信号频率。

频率计工作时,先要生产一个计数允许信号即闸门信号,闸门信号的宽度为单位时间,例如1s。

在闸门信号有效的时间内对被测信号计数,即为信号评率。

测量过程结束,需要锁存计数值或留出一段时间显示测量值。

下一次测量前,应该对计数器清零。

频率计闸门时序如图1所示,闸门信号由闸门电路产生。

计数显示清零计数计数允许信号清零信号图1频率计闸门时序频率计可以分为3个部分:闸门电路、计数器和显示电路。

本实验中,闸门电路时钟为2Hz,产生的技术周期为1s,清零周期为0.5s,4s为一个周期测量一次信号频率。

计数器由6个十进制计数器构成i端,受闸门电路控制。

显示电路利用实例7设计的6位扫描数码显示器,他的扫描时钟可以使用1kHz或10kHz 的时钟。

数字频率计的关键组成部分包括测频控制发生器、计数器、锁存器、动态扫描输出,其原理框图如图2所示:图2数字频率计原理框图2.仪器和设备PC机,MAX+PLUSI软件2.1MAX+PLUSI软件介绍MAX+PLUSⅡ开发工具是Altera公司推出的一种EDA工具,具有灵活高效、使用便捷和易学易用等特点。

使用MAX+PLUSⅡ软件,设计者无需精通器件内部的复杂结构,只需用业已熟悉的设计输入工具,如硬件描述语言、原理图等进行输入即可,MAX+PLUSⅡ就会自动将设计转换成目标文件下载到器件中去。

MAX+PLUSⅡ开发系统具众多特点,如多平台、开放的界面、模块组合式工具软件、与结构无关、支持硬件描述语言、丰富的设计库等。

使用MAX+PLUSI软件可以使我们在较短的时间内完成相应的内容。

2.2MAX+PLUSⅡ软件组成MAX+PLUSⅡ软件采用模块化结构,包括设计输入、项目处理、项目校验和器件编程4个部分,所有这些部分都集成在一个可视化的操作环境下。

1、设计输入:MAX+PLUSⅡ的设计输入方法有多种,主要包括文本设计输入、原理图输入、波形设计输入等多种方式;2、项目处理:设计处理的任务就是对项目进行编译,编译实际就是将设计者编写的设计改为可以用于生产的“语言”。

编译器通过读入设计文件并产生用于编程、仿真和定时分析的输出文件来完成编译工作;3、项目校验:MAX+PLUSⅡ提供的设计校验过程包括仿真和定时分析,项目编译后,为确保设计无误,要再用专用软件进行仿真。

如果发现了错误,则应对设计输入进行部分修改直至无误;4、器件编程:MAX+PLUSⅡ通过编程器将编译器生成的编程文件编程或配置到Altera CPLD器件中,然后加入实际激励信号进行测试,检查是否达到了设计要求。

在设计过程中,如果出现错误,则需要重新回到设计输入阶段,改正错误或调整电路后重复上述过程。

3.设计过程3.1设计内容和要求本次设计的目的就是在掌握EDA实验开发系统的初步使用基础上,了解EDA 技术,掌握频率计的原理。

在掌握所学的计算机组成与结构课程理论知识时。

通过对数字频率计的设计,进行理论与实际的结合,提高与计算机有关设计能力,提高分析、解决计算机技术实际问题的能力。

通过课程设计深入理解计算机结构与控制实现的技术,达到课程设计的目标。

分析数字频率计的功能,完成功能模块的划分,分别用VHDL语言完成底层模块的设计和以原理图的方法完成顶层模块的设计,分别对各个模块以及顶层模块进行仿真分析,最后得出实验结果。

3.2设计方法和开发步骤3.2.1设计方案1、间接测频法(测周法):测量单位时间内被测信号的周期数,即在闸门时间内对被测信号的脉冲进行计数。

若闸门打开时间为T,被测信号通过闸门进入计数器的计数值为Nx,则可求的被测信号的频率fx=Nx/T,当闸门时间T=1s时,fx=Nx(Hz),即计数器计数值就是被测信号的频率值。

当被测信号频率范围不同的时候,通常会选择不同的闸门时间,以得到较精确的测量结果。

2、直接测频法:被测信号的频率fx应远大于产生闸门信号的基准频率,否则测频将产生较大的误差。

此处仅以闸门时间T=1s为例进行设计,由于闸门信号的起始时间与被测信号的边沿不同步,因此计数结果会有+1或—1的误差,假设该误差可在允许范围内。

由于直接测频法适用于高频信号的频率测量,间接测频法适用于低频信号的频率测量。

本设计采用了直接测量法,在一定闸门时间内测量被测信号的脉冲个数。

3.2.2实验步骤打开MAX+PLUSII软件→新建.vdh文本文件→输入代码并保存→单击“file”中的project→单击“Set project to current file”→单击“MAX+PLUII”中的Compiler进行编译→新建.scf波形文件并保存→选择“node”→单击“enter nodes from SNF”导入输入输出→单击“MAX+PLUII”中的“simulator”进行波形仿真。

3.3设计思路采用VHDL语言设计一个复杂的电路系统,运用自顶向下的设计思想,将系统按功能逐层分割的层次化设计方法进行设计。

在顶层对内部各功能块的连接关系和对外的接口关系进行了描述,而功能块的逻辑功能和具体实现形式则由下一层模块来描述。

先将各个子模块采用VHDL语言编程,并进行仿真与调试,然后通过这些子模块画出顶层模块,进行仿真,得出波形。

3.4设计难点数字频率计的设计需要许多模块的组成,有闸门控制电路、十进制计数器、锁存器、动态扫描器和七段译码器。

数字频率计的设计的工作量很大,当然在设计时碰到许多问题。

1、一开始没有思路,经过查看资料,知道测量频率有两种方案:测周法和测频率法。

在做的时候要确定一个标准时钟信号,根据一个时钟周期内的待测信号的个数,就可知道待测信号的频率。

2、在编写闸门控制电路的代码是遇到了困难,不知使能信号、清零信号、锁存信号要设置成多大。

3、由于要连的线很多,很容易连错。

在做网络标号时要注意一定要点中此线,当你双击此线,可以看到它们是连在一起的4、做出来的每一模块文件都要放在同一文件夹中,而且每一模块的代码都要进行编译,由于做的模块比较多,要记住编译之前要把编译的文件设置成当前文件才行。

在做原理图时要改变某一模块的代码,改变后要重新编译才行。

5、做原理图仿真波形时,看不到波形。

那是由于参数的设置不对,仿真时间变长,波形的频率设置的大一些,可以看到波形。

由于软件的限制,看到的波形有所失真。

4.设计结果与分析4.1实验结果4.1.1测频控制信号发生器闸门信号产生电路如图3所示,输入标准时钟信号,经过闸门信号电路产生使能信号CNT、清零信号RST和锁存信号LOAD。

使能信号CNT和清零信号控制十进制的工作;而锁存信号LOAD控制锁存器的工作。

图3测频控制信号发生器模块4.1.2十进制计数器为了显示方便,采用十进制计数器计数,其逻辑符号如图4所示。

十进制计数器只有十个不同的状态,并按十进制进位规律进行计数。

闸门控制电路产生的清零信号RST和使能信号CNT接至计数器CLR端和ENA端,控制十进制的清零和使能状态,而CLK端接的是待测信号。

CO[3..0]输出的是出现上升沿的个数,当计数溢出时,CARRY_OUT数值从0变为1,作为下一个十进制计数器的时钟信号。

图4十进制加法计数器模块4.1.3锁存器为了使显示结果稳定显示,需要将计数器每次记得的结果进行锁存,其逻辑符号如图5所示,闸门电路产生的LOAD接至锁存器的LOAD端;十进制计数器输出接至锁存器的DIN[3..0]端,而锁存器的输出端DOUT[3..0]作为动态扫描器的输入端。

图5锁存器模块4.1.4动态扫描输出动态扫描器使结果输出更加清晰,其逻辑符号如图6所示。

动态扫描器的CLK端接一时钟信号,而COUNT1[3..0]……COUNT6[3..0]分别接对应的锁存器输出端。

当CLK出现第一个上升沿时,输出COUNT1[3..0]中的数值,第二个上升沿时输出COUNT2[3..0]的数值,以此类推,当出现第七个上升沿的时候有输出COUNT1[3..0],也就是说六个上升沿一个循环。

图6动态扫描输出模块4.1.5七段译码器七段译码器电路如图7所示,使输出的结果更加形象化。

动态扫描器的DOUT[3..0]接至七段译码器的NUM[3..0]端,输出端输出的结果是把NUM[3..0]数值转化成数码管显示的形式。

图7数码管显示模块4.1.6顶层模块图8顶层模块4.2程序简要说明4.2.1测频控制信号发生器的结构体VHDL源程序architecture behavior of testctl issignal div2clk:std_logic;beginprocess(clk)beginif clk'event and clk='1'thendiv2clk<=not div2clk;end if;end process;process(clk,div2clk)beginif(clk='0'and div2clk='0')thenrst<='1';else rst<='0';end if;end process;load<=not div2clk;cnt<=div2clk;end behavior;仿真波形:图9测频控制信号发生器仿真波形4.2.2十进制加法计数器的结构体VHDL源程序architecture art of cnt10issignal cqi:std_logic_vector(3downto0);beginprocess(clk,clr,ena)isbeginif clr='1'then cqi<="0000";elsif clk'event and clk='1'thenif ena='1'thenif cqi="1001"then cqi<="0000";else cqi<=cqi+'1';end if;end if;end if;end process;process(cqi)isbeginif cqi="0000"then carry_out<='1';elsecarry_out<='0';end if;end process;co<=cqi;end architecture art;仿真波形:图10十进制仿真波形4.2.3锁存器的结构体VHDL源程序architecture behavior of reg4b isbeginprocess(load,din)beginif load'event and load='1'thendout<=din;end if;end process;end behavior;锁存器波形仿真:图11锁存器波形仿真4.2.4动态扫描的结构体VHDL源程序architecture art of scan issignal c:std_logic_vector(2downto0);beginprocess(clk)isbeginif(clk'event)and clk='1'thenc<=c+1;case c iswhen"001"=>s<="000";dout<=count1;when"010"=>s<="001";dout<=count2;when"011"=>s<="010";dout<=count3;when"100"=>s<="011";dout<=count4;when"101"=>s<="100";dout<=count5;when"110"=>s<="101";dout<=count6;c<="001";when others=>s<="000";dout<="0000";end case;end if;end process;end art;动态扫描波形仿真:图12动态扫描波形仿真4.2.5数码管显示的结构体VHDL源程序architecture art of deled issignal led:std_logic_vector(6downto0); beginprocess(num)begincase num iswhen"0000"=>led<="1111110";when"0001"=>led<="0110000";when"0010"=>led<="1101101";when"0011"=>led<="1111001";when"0100"=>led<="0110011";when"0101"=>led<="1011011";when"0110"=>led<="1011111";when"0111"=>led<="1110000";when"1000"=>led<="1111111";when"1001"=>led<="1111011";when"1010"=>led<="1110111";when"1011"=>led<="0011111";when"1100"=>led<="1001110";when"1101"=>led<="0111101";when"1110"=>led<="1001111";when others=>led<="1000111";end case;end process;a<=led(6);b<=led(5);c<=led(4);d<=led(3); e<=led(2);f<=led(1);g<=led(0);end art;数码管显示波形仿真:图13数码管显示波形仿真4.2.6顶层模块波形仿真图14顶层模块波形仿真5.实验小结本设计采用EDA技术,利用测频法的原理和VHDL语言,采用自上向下的设计方法,实现了一个可以测量1~999999Hz的信号频率6位频率计。

相关文档
最新文档