简述基于QuartusⅡ设计的频率计

合集下载

基于FPGA的数字频率计实验报告(能测占空比)

基于FPGA的数字频率计实验报告(能测占空比)

基于FPGA的数字频率计设计学院:专业:班级:姓名:学号:审阅老师:评分:目录一、课程设计目的 (3)二、设计任务 (3)三、功能要求与技术指标 (3)四、数字频率计工作原理概述 (3)五.数字频率计实现方法 (4)六.结论与误差分析 (11)七.VHDL程序: (12)一、课程设计目的熟悉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.数字频率计简介在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此频率的测量就显得更为重要。

而数字频率计是采用数字电路制成的实现对周期性变化信号的频率的测量。

2.常用频率测量方法:方案一采用周期法。

通过测量待测信号的周期并求其倒数,需要有标准倍的频率,在待测信号的一个周期内,记录标准频率的周期数,这种方法的计数值会产生最大为±1个脉冲误差,并且测试精度与计数器中记录的数值有关,为了保证测试精度,测周期法仅适用于低频信号的测量。

eda课程设计基于fpga的数字频率计

eda课程设计基于fpga的数字频率计

摘要等精度频率计在工业生产中具有很重要的作用,它在仪表测量领域扮演着重要的角色,它应用等精度测频原理,其测量精度优于普通频率计。

基于传统测频原理的频率计的测量精度将随被测信号频率的下降而降低,在实用中有较大的局限性,而等精度频率计不但具有较高的测量精度,而且在整个频率区域能保持恒定的测试精度。

本次设计频率测量范围为2K-999KHZ,作品已经与DDS信号源搭配成功的完成了调试,其测量精度高,性能稳定。

本次设计方案是基于FPGA完成全系统设计,应用ALTERA公司的CYCLONE II芯片构成系统主体。

本次设计的软件部分应用VHDL语言。

应用Quartus II 6.0完成系统的设计,具有较高的灵活性与可靠性。

关键词:等精度;频率计;FPGA;VHDLAbstractEqual accuracy cymometer play a very important role in the frequency of industrial production and in the field of measurement instrumentation, the application of precision frequency measurement principle, the accuracy is better than ordinary cymometer. The cymometer based on the principles of traditional frequency measurement of the accuracy will face more practical limitations when the frequency of the signal decrease.the equal accuracy cymometer not only has high accuracy, but also maintain constant accuracy in the whole frequency region.The frequency of this design is in the range of 2 K-999KHZ, it has been works with DDS signal generator successfully,completed with the commissioning, its high precision,stable performance.Key words:equal accuracy;cymometer;FPGA;VHDL目录引言 (1)1 设计功能及要求 (1)2等精度测频原理 (1)3 FPGA概述 (3)3.1 FPGA概念 (3)3.2设计工具Quartus II 6.0 (4)4 详细设计方案 (5)5 结论 (12)谢辞 (13)参考文献 (14)附录 (15)引言频率测量是电子测量的重要领域。

简述基于QuartusⅡ设计的频率计

简述基于QuartusⅡ设计的频率计

重庆师范大学期末考核提交材料课程名称: EDA原理及应用院系:物理与电子工程学院时间: 2012—2013学年度第2学期专业:电子信息科学与技术(职教师资)年级: 2011级培养层次:本科学生姓名:学号:成绩:基于QuartusⅡ设计的频率计摘要:计数器在数字电路中有着广泛的应用,现提出一种计数器设计穿插在电子电路设计的教学方法,使学生能够快速地根据现有的数字电路知识转化到EDA 的应用。

关键词频率计;电子设计自动化;Verilog0 引言:随着EDA技术的发展和应用领域的扩大,EDA技术在电子信息、通信、自动控制及计算机应用等领域的重要性日益突出。

同时,随着技术市场对EDA技术需求的不断提高,产品的市场效率和技术要求也必然会反映到数学和科研领域中来。

以最近的十届全国大学生电子设计竞赛为例,涉及EDA技术的赛题从未缺席过。

对诸如斯坦福大学、麻省理工学院等美国一些著名院校的电子与计算机实验室建设情况的调研表明,其EDA技术的教学与实践的内容也十分密集;在其本科和研究生教学中有两个明显的特点:其一,各专业中EDA教学实验课程的普及率和渗透率极高;其二,几乎所有实验项目都部分或全部地融入了EDA技术,其中包括数字电路、计算机组成与设计、计算机接口技术、数字通信技术、嵌入式系统、DSP等实验内容,并且更多地注重创新性实验。

这显然是科技发展和市场需求双重影响下自然产生的结果。

1.QuartusⅡ简介:QuartusⅡ是Altera提供的FPGA/CPLD开发集成环境,Altera是世界最大的可编程逻辑器件供应商之一。

QuartusⅡ在21世纪初推出,是Altera前一代FPGA/CPLD集成开发环境MAX+plusⅡ的更新换代产品,其界面友好,使用便捷。

2.计数器设计这里首先设计测频用的、含时钟使能控制的2位十进制计数器。

2.1:设计电路原理图。

频率计的核心元件之一是含有时钟使能及进位扩展输出的十进制计数器。

基于QUARTUS的EDA课程设计数字频率计的仿真

基于QUARTUS的EDA课程设计数字频率计的仿真

成绩评定表课程设计任务书目录1.设计要求 (2)2、设计目的 (2)3.总体设计思路及解决方案 (2)3.1相关知识 (2)3.3、设计思路及解决方案 (4)4.分层次方案设计及代码描述 (5)4.1.底层程序源码 (5)4.2顶层程序源码 (10)5.各模块的时序仿真结果 (12)6.设计心得 (15)数字频率计课程设计1.设计要求设计一个四位十进制的数字频率计。

要求具有以下功能:(1)测量范围:1HZ~10HZ。

(2) 测量误差≤1/(3)响应时间≤15s。

(4)显示时间不小于1s。

(5)具有记忆显示的功能。

即在测量过程中不刷新数据。

等数据过程结束后才显示测量结果。

给出待测信号的频率值。

并保存到下一次测量结束。

(6)包括时基产生与测评时序控制电路模块。

以及待测信号脉冲计数电路模块和锁存与译码显示控制电路。

2、设计目的通过综合性课程设计题目的完成过程,运用所学EDA知识,解决生活中遇到的实际问题,达到活学活用,所学为所用的目的,进一步理解EDA的学习目的,提高实际应用水平。

本次设计的数字频率计具有精度高、使用方便、测量迅速、便于实现测量过程自动化等优点,是频率测量的重要手段之一。

数字频率计主要包括时基产生与测评时序控制电路模块、待测信号脉冲计数电路、译码显示与锁存控制电路模块。

3.总体设计思路及解决方案3.1相关知识Quartus II 是Altera公司的综合性PLD开发软件,支持原理图、VHDL、VerilogHDL以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。

Quartus II可以在XP、Linux以及Unix上使用,除了可以使用T cl脚本完成设计流程外,提供了完善的用户图形界面设计方式。

具有运行速度快,界面统一,功能集中,易学易用等特点。

Quartus II支持Altera的IP核,包含了LPM/MegaFunction宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。

VHDL频率计设计

VHDL频率计设计

VHDL频率计设计数字频率计是利用EDA技术设计的被测信号频率的一种测量工具。

它不仅可以测量正弦波、方波、三角波、尖脉冲信号和其他具有周期特性的信号的频率,而且还可以测量它们的周期。

经过改造,可以测量脉冲宽度,做成数字式脉宽测量仪;在电路中增加传感器,还可以做成数字脉搏仪、计价器等。

因此数字频率计在测量物理量方面应用广泛。

本设计介绍了一种自顶向下分层设计多功能十进制显示的数字频率计。

该频率计采用VHDL硬件描述语言编程, Quartus II为开发环境,极大地减少了硬件资源的占用。

该数字频率计的测量范围为lHz~10KHz,响应时间小于等于15秒;其测试结果由4只七段数码管稳定显示,测量误差小于等于1%。

由仿真波形与分析结果表明,所设计的电路通过硬件仿真能够满足数字频率计的功能要求,具有理论与实践意义,实现了电子电路自动化的过程。

数字频率计模块划分的设计具有相对独立性,可以对模块单独进行设计、调试和修改,缩短了设计周期,方便移植。

在不更改硬件电路的基础上,对系统进行各种改进还可以进一步提高系统的性能。

该数字频率计具有高速、精确、可靠、抗干扰性强和现场可编程等优点。

目录1引言 (v)2概述 (1)2.1 设计概述 (1)2.2设计内容 (1)2.3 设计原理 (1)2.4 设计功能 (2)3技术与开发工具 (3)3.1 VHDL简介 (3)3.1.1简介 (3)3.1.2 VHDL程序组成部分 (4)3.1.3 VHDL系统优势 (5)3.2 Quartus II (5)3.2.1 软件简介 (5)3.2.2 软件功能 (5)3.2.3设计流程 (6)4 系统分析 (7)4.1数字频率计的设计任务及要求 (7)4.2 模块的划分 (7)4.3设计分析 (8)5各功能模块基于VHDL的设计 (9)5.1 时基产生与测频时序控制电路模块的VHDL源程序 (9)5.2 待测信号脉冲计数电路模块的VHDL源程序 (10)5.2.1 十进制加法计数器的VHDL源程序 (10)5.2.2待测信号脉冲计数器的VHDL源程序 (12)5.3 锁存与译码显示控制电路模块的VHDL源程序 (12)5.3.1 译码显示电路的VHDL源程序 (12)5.3.2 锁存与译码显示控制模块的VHDL源程序 (12)5.4 顶层电路的VHDL源程序 (13)6 数字频率计波形仿真 (15)6.1 时基产生与测频时序控制电路模块的仿真 (15)6.2 待测信号脉冲计数电路模块的仿真 (15)6.2.1 十进制加法计数器的仿真 (15)6.2.2待测信号脉冲计数器的仿真 (16)6.3 锁存与译码显示控制电路模块的仿真 (16)6.3.1 译码显示电路的仿真 (16)6.3.2 锁存与译码显示控制模块的仿真 (17)6.4 数字频率计系统的仿真 (18)结论 (19)1引言所谓频率,就是周期性信号在单位时间(1s)里变化的次数。

基于PROTEUS的频率计的设计

基于PROTEUS的频率计的设计

摘要在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此频率的测量就显得更为重要。

频率计可以用纯硬件电路搭制。

本文设计了一种以单片机AT89C52为核心的数字频率计,其中硬件部分主要是由整形电路、单片机最小系统和显示单元组成的,软件设计是由一些功能模块来实现的,例如有初始化模块、数据显示模块等等。

此外,通过控制单片机的各项功能和运算操作能力进而来实现周期和频率间的计数和数据的保存。

通过这样的设计能测量频率10Hz-10kHz,这既达到了设计所要求的频率测量范围,又达到了较高的精确度。

测量时,将被测输入信号送给单片机,通过程序控制计数,结果送数码管显示频率值。

本设计中的频率计具有电路结构简单、成本低、测量方便、精度较高等特点,适合测量低频信号,能基本满足一般情况下的需求,既保证了测频精度,又使系统具有较好的实时性,并且本频率计设计简洁,便于携带,扩展能力强,适用范围广。

另外,由于本设计采用了模块化的设计方法,提高了测量频率的范围,并且本次设计包括硬件画图和软件程序编写。

关键词:频率测量,频率计,单片机,LED显示ABSTRACTAmong electronic technology, frequency is one of the most basic parameters,and result of measuring have a very close relation to a lot of electric parameters, so the measurement of frequency seems even more important. Frequency counter can take the system with pure hardware circuitry.Based on single-chip processor digital frequency of thousands of design and implementation Abstract This article proposes plan design digital frequency meter, highlighting the design taking monolithic integrated circuit AT89C52 as the control core. The hardware partially is composed by the shaping circuit 、the smallest system of microcontroller and the data display electric circuit; The software design is achieved by many functional modules, such as the signal frequency measurement module、the data display module and so on. What's more ,achieving counting function and conversion between cycle and frequency by using control functions and mathematics operation ability of microcontroller. Like these the survey scope can achieve 10Hz-10kHz, both can reach the frequency range requirements designed,and the measuring accuracy high。

基于quartus2十六进制8位数码管扫描显示频率计设计

基于quartus2十六进制8位数码管扫描显示频率计设计

Ftctrl时钟控制模块的vhdl代码:(clkk一定要是1s周期脉冲啊,没有的话就拿分频器分频) LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY FTCTRL ISPORT (CLKK : IN STD_LOGIC;CNT_EN : OUT STD_LOGIC;RST_CNT: OUT STD_LOGIC;Load : OUT STD_LOGIC);END FTCTRL;ARCHITECTURE behav OF FTCTRL ISSIGNAL Div2CLK : STD_LOGIC;BEGINPROCESS ( CLKK ) BEGINIF CLKK'EVENT AND CLKK = '1' THENDiv2CLK <= NOT Div2CLK;END IF;END PROCESS;PROCESS (CLKK ,Div2CLK) BEGINIF CLKK='0' AND Div2CLK='0' THEN RST_CNT<='1';ELSE RST_CNT <='0'; END IF;END PROCESS;Load <= NOT Div2CLK; CNT_EN <=Div2CLK;END behav;4位计数器cnt4b的vhdl代码:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT4B ISPORT (Fin,CLR,ENABL: IN STD_LOGIC;DOUT : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);COUT : OUT STD_LOGIC );END CNT4B;ARCHITECTURE behav OF CNT4B ISBEGINPROCESS(Fin,CLR,ENABL)VARIABLE Q : STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINIF CLR='1' THEN Q := (OTHERS=>'0');ELSIF Fin'EVENT AND Fin='1' THENIF ENABL='1' THENIF Q<15 THEN Q :=Q+1;ELSE Q := (OTHERS=>'0');END IF;END IF;END IF;IF Q="1111" THEN COUT<='1';ELSE COUT<='0'; END IF;DOUT <= Q;END PROCESS;END behav;分频器模块fp的vhdl代码:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY fp ISPORT( inclk : IN STD_LOGIC;outclk : OUT STD_LOGIC);END fp;ARCHITECTURE a OF fp ISSIGNAL fp : STD_LOGIC_VECTOR(3 downto 0);SIGNAL f : STD_LOGIC;BEGINPROCESS(inclk)BEGINIF inclk'event and inclk='0' THENIF fp=4then fp<="0000"; f<=not f;ELSE fp<=fp+1;END IF; --“4”那里自己改,outclk频率是inclk频率的1/[2*(4+1)] END IF;END PROCESS;outclk<=f;END a;---------------------------------------------------------------------------------------------------------------------------------缓存信号输出模块topreg32b的vhdl代码:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY TOPREG32B ISPORT (LK : IN STD_LOGIC;DIN :IN STD_LOGIC_VECTOR(31 DOWNTO 0);DOUT0 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);DOUT1 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0));END TOPREG32B;ARCHITECTURE ONE OF TOPREG32B ISSIGNAL Q0 : STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL Q1 : STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL H1 : STD_LOGIC_VECTOR(2 DOWNTO 0);BEGINA:PROCESS (LK)VARIABLE H : STD_LOGIC_VECTOR(2 DOWNTO 0);BEGINIF LK='1' AND LK'EVENT THENIF H<=7 THEN H:=H+1;DOUT0<=Q0;DOUT1<=Q1;ELSE H:= (OTHERS=>'0');END IF;END IF;H1<=H;END PROCESS A ;B:PROCESS (H1,DIN)BEGINCASE H1 ISWHEN "000"=>Q0<=DIN(3 DOWNTO 0);Q1<=(OTHERS=>'0'); WHEN "001"=>Q0<=DIN(7 DOWNTO 4);Q1<=(OTHERS=>'0'); WHEN "010"=>Q0<=DIN(11 DOWNTO 8);Q1<=(OTHERS=>'0'); WHEN "011"=>Q0<=DIN(15 DOWNTO 12);Q1<=(OTHERS=>'0'); WHEN "100"=>Q1<=DIN(19 DOWNTO 16);Q0<=(OTHERS=>'0'); WHEN "101"=>Q1<=DIN(23 DOWNTO 20);Q0<=(OTHERS=>'0'); WHEN "110"=>Q1<=DIN(27 DOWNTO 24);Q0<=(OTHERS=>'0'); WHEN "111"=>Q1<=DIN(31 DOWNTO 28);Q0<=(OTHERS=>'0'); WHEN OTHERS => NULL;END CASE;END PROCESS B;END ONE;数码管decoder译码模块的vhdl代码:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity decoder isport(a : in std_logic_vector(3 downto 0);clk : in std_logic;led7s : out std_logic_vector(6 downto 0);K : OUT STD_LOGIC_VECTOR(7 DOWNTO 0));end;architecture one of decoder issignal h1: std_logic_vector(2 downto 0);signal k1 : std_logic_vector( 8 downto 0);beginD:process(a)begincase a iswhen"0000"=>led7s<="0111111"; when"0001"=>led7s<="0000110"; when"0010"=>led7s<="1011011"; when"0011"=>led7s<="1001111"; when"0100"=>led7s<="1100110"; when"0101"=>led7s<="1101101"; when"0110"=>led7s<="1111101"; when"0111"=>led7s<="0000111"; when"1000"=>led7s<="1111111"; when"1001"=>led7s<="1101111"; when"1010"=>led7s<="1111100"; when"1011"=>led7s<="0111111"; when"1100"=>led7s<="0111001"; when"1101"=>led7s<="1011110"; when"1110"=>led7s<="1111001"; when"1111"=>led7s<="1110001";when others=>null;end case;end process D;B:PROCESS (clk)VARIABLE H : STD_LOGIC_VECTOR(2 DOWNTO 0); BEGINIF cLK='1' AND cLK'EVENT THENIF H<=7 THEN H:=H+1;ELSE H:= (OTHERS=>'0');END IF;END IF;H1<=H;END PROCESS B ;C:PROCESS (H1)BEGINCASE H1 ISWHEN "000"=>K1<="000000001";WHEN "001"=>K1<="000000010";WHEN "010"=>K1<="000000100";WHEN "011"=>K1<="000001000";WHEN "100"=>K1<="000010000";WHEN "101"=>K1<="000100000";WHEN "110"=>K1<="001000000";WHEN "111"=>K1<="010000000";WHEN OTHERS => NULL;END CASE;END PROCESS C;k<=k1(8 downto 1);end;然后上顶层文件原理图:--------------------------------------------------------------------------------------------------------------------------------- 不知道啥是cnt32b?那是由8个cnt4b计数器组成的。

[精品]EDA课程的设计简易频率计的设计

[精品]EDA课程的设计简易频率计的设计

目录摘要 (1)一、简易数字频率计设计原理 (2)1.1基本原理 (2)1.2原理框图 (2)二、各模块程序及仿真 (4)2.1信号处理模块_verilog: (4)2.2计数器模块: (5)2.3信号显示处理 (7)三、仿真结果分析 (10)总结与致谢 (13)参考文献 (14)摘要EDA技术是以硬件语言为主要的描述方式,以EDA软件为主要的设计软件,以大规模课编程逻辑器件为载体的数字电路的设计过程。

其设计的灵活性使得EDA技术得以快速发展和广泛应用。

本设计以QuartusⅡ软件为设计平台,采用Verilog HDL语言现数字频率计的整体设计。

电子设计自动化(EDA)逐渐成为重要的设计手段,已经广泛应用于模拟与数字电路系统等许多领域,电子设计自动化是一种实现电子系统或电子产品自动化设计的技术,它与电子技术,微电子技术的发展密切相关,它吸收了计算机科学领域的大多数最新研究成果,以高性能的计算机作为工作平台,促进了工程发展。

EDA的一个重要特征就是使用硬件描述语言(HDL)来完成的设计文件,在电子设计领域受到了广泛的接受。

EDA技术就是以计算机为工具,设计者在EDA软件平台上,有硬件描述语言Verilog HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作,最终形成集成电子系统或专业集成芯片的一门新技术。

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

关键词:EDA;QuartusⅡ;Verilog HDL一、简易数字频率计设计原理1.1基本原理数字频率计的主要功能是测量周期信号的频率。

频率计的基本原理是用一个频率稳定度高的频率源作为基准时钟,对比测量其他信号的频率。

频率是单位时间(1秒)内方波信号发生周期变化的次数。

在给定的1秒时间内对方波信号波形计数,并将所计数值显示出来,就能读取被测信号的频率。

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

重庆师范大学期末考核提交材料课程名称: EDA原理及应用院系:物理与电子工程学院时间: 2012—2013学年度第2学期专业:电子信息科学与技术(职教师资)年级: 2011级培养层次:本科学生姓名:学号:成绩:基于QuartusⅡ设计的频率计摘要:计数器在数字电路中有着广泛的应用,现提出一种计数器设计穿插在电子电路设计的教学方法,使学生能够快速地根据现有的数字电路知识转化到EDA 的应用。

关键词频率计;电子设计自动化;Verilog0 引言:随着EDA技术的发展和应用领域的扩大,EDA技术在电子信息、通信、自动控制及计算机应用等领域的重要性日益突出。

同时,随着技术市场对EDA技术需求的不断提高,产品的市场效率和技术要求也必然会反映到数学和科研领域中来。

以最近的十届全国大学生电子设计竞赛为例,涉及EDA技术的赛题从未缺席过。

对诸如斯坦福大学、麻省理工学院等美国一些著名院校的电子与计算机实验室建设情况的调研表明,其EDA技术的教学与实践的内容也十分密集;在其本科和研究生教学中有两个明显的特点:其一,各专业中EDA教学实验课程的普及率和渗透率极高;其二,几乎所有实验项目都部分或全部地融入了EDA技术,其中包括数字电路、计算机组成与设计、计算机接口技术、数字通信技术、嵌入式系统、DSP等实验内容,并且更多地注重创新性实验。

这显然是科技发展和市场需求双重影响下自然产生的结果。

1.QuartusⅡ简介:QuartusⅡ是Altera提供的FPGA/CPLD开发集成环境,Altera是世界最大的可编程逻辑器件供应商之一。

QuartusⅡ在21世纪初推出,是Altera前一代FPGA/CPLD集成开发环境MAX+plusⅡ的更新换代产品,其界面友好,使用便捷。

2.计数器设计这里首先设计测频用的、含时钟使能控制的2位十进制计数器。

2.1:设计电路原理图。

频率计的核心元件之一是含有时钟使能及进位扩展输出的十进制计数器。

为此这里用一个双十进制计数器74390和其他一些辅助元件来完成。

首先建立图像编辑环境,再在原理图编辑窗口分别键入74390、AND4、AND2、NOT、INPUT和OUTPUT元件名,调出这些元件,并按照图1链接好电路原理图。

图中,74390连成两个独立的十进制计数器,待测频率信号clk通过一个与门进入74390的计数器“1”端的时钟输入端1CLKA。

与门的另一端由计数使能信号enb 控制:当enb=1时允许计数;enb=0时禁止计数。

计数器1的4 位输出去q[3]、q[2]、q[1]和q[0]并成总线表达方式,即q[3..0](注意原理图中的总线表示方法,如Q[3..0],与VHDL不同),由图1左下角的OUTPUT输出端口向外输出计数值。

同时由一个4输入与门和两个反相器构成进位信号,进位信号进入第二个计数器的时钟输入端2CLKA。

第二个计数器的4位计数输出是q[7]、q[6]、q[5]、q[4],总线输出信号是q[7..4]。

这两个计数器的总的进位信号,可由一个6输入与门和两个反相器产生,由cout输出。

Clr是计数器的清零信号。

图一含有时钟使能的2位十进制计数器在原理图的绘制过程中应特别注意图形设计规则中信号标号和总线的表达方式(粗线条表示总线)。

对于以标号方式进行总线连接,如图1所示。

例如一根8位的总线bus1[7..0]欲与三根分别为1、3、4位宽的连线相接,他们的标号可分别为bus1[0]、bus1[3..1]、bus1[7..4]。

最后将图1电路存盘,文件为conter.dbf 2.2:建立工程。

为了测试图1电路的功能,可以将conter.bdf设置成工程,工程名和顶层文件名都取为conter。

建立工程后,如果要了解74390内部的情况,可以在其上双击鼠标。

2.3:系统仿真。

完成设计即可对电路的功能进行测试。

由图2可见,电路的功能完全符合原设计要求:当clk输入时钟信号时,clr信号具有清零功能;当enb为高电平时允许计数,低电平时禁止计数;当低4位计数器计到9时向高4位计数器进位。

另外由于图中没有显示出高4位计数器计到9,故看不到count的进位信号。

图2 2位十进制计数器工作波形2.4:生成元件符号。

选择左上File中德相关项,将当前文件conter.bdf变成一个元件conter后存盘,以便在高层次设计中调用。

3.频率计主结构电路设计根据频率计的测频原理,可以完成如图3所示的频率计主体结构的电路设计。

方法同上。

首先关闭原来的工程,再打开一个新的原理图编辑窗口,并将此空原理图设为工程,文件名可取为ft_top。

然后在基于新工程的原理图编辑窗口调入图3所示的所有元件,连接好后存盘。

图3 2位十进制频率计频率计顶层设计原理图文件图3所示的电路中,74374是8位锁存器;74248是七段BCD译码器,它的7位输出可以直接与7段公阴数码管相接,图上方的74248显示个位频率计数值,下方的显示十位频率计数值;conter是电路图1构成的元件。

在这些元件上双击鼠标,可以看到内部的电路结构。

此电路的工作时序波形图4所示,由该波形可以清楚地了解电路的工作原理。

在图4的激励波形的设置中要注意,根据仿真需求,元件conter的输入信号的设置:其中F_IN是待测频率信号(设周期为410ns);CNT_EN是对待测频率脉冲计数允许信号(设周期为32us);当CNT_EN高电平时允许计数,低电平时禁止计数。

图4 2位十进制平频率计测频仿真波形仿真波形显示,当CNT_EN为高电平时允许conter对F_IN计数,低电平时conter 停止计数,由锁存信号LOCK发出的脉冲,将conter中的二个4位十进制数“39”锁存进74374中,并由74374分高低位通过总线H[6..0]和L[6..0]输给74248译码输出显示,这就是测得的频率值。

十进制显示值“39”的7段译码值分别是“6F”和“4F”。

此后由清零信号CLR对计数器conter清零,以备下一周期计数之用。

图3中的进位信号COUT是留待频率计扩展用的。

在实际测频中,由于CNT_EN是测频控制信号,如果其频率选定为0.5Hz,则其允许计数的脉宽为1s,这样,数码管就能直接显示F_IN的频率值了。

4.时序控制电路设计由波形图4可知,欲使频率计能自动测频,还需增加一个测频时序控制电路,要求它能按照图4所示的时序关系,产生三个控制信号:CNT_EN、LOCK和CLR,以便使频率计能自动完成计数、锁存和清零三个重要的功能步骤。

根据控制信号CNT_EN、LOCK和CLR的时序要求,图5给出了相应的电路,设该电路的文件名为tf_ctro,bdf。

该电路由三个部分组成:4位二进制计数器7493、4-16译码器74154和两个由双与非门构成的RS触发器。

其中的74154也可以用3—8译码器74138代替,甚至用其他电路形式实现此功能,大家可以试一试。

对图5所示电路(取文件名为tf_cteo.bdf)的设计和验证流程同上,包装入库的元件名为tf_ctro。

对其建立工程后即可对其功能进行仿真测试。

图6即为其时序波形。

比较图6和图4中德控制信号CNT_EN、LOCK和CLR的时序,表明图5的电路是满足设计要求的。

事实上,图5所示的电路还有许多其他用途。

例如可构成高速时序脉冲发生器,可通过输入不同频率的CLK信号,或将RS触发器接在74154的不同输出端,从而产生各种不同脉宽和频率的脉冲信号。

图5 测频时序控制电路图6 测试时序控制电路工作波形5.顶层电路设计有了图5的电路元件tf_ctro,就可以改造图3的电路,使其成为能自动测频和数据显示的实用频率计了。

改造后的电路如图7所示,其中含有新调入的元件tf_ctro。

电路中有两个输入信号:待测频率输入信号F_IN和测频控制时钟CLK。

根据电路图5和波形图6可以算出,如果从CLK输入的控制时钟的频率是8Hz,则计数使能信号CNT_EN的脉宽即为1s,从而可使数码管直接显示F_IN的频率值。

图7 频率计顶层电路原理图图7的保存文件名不变,仍为ft_top.gdf,它的仿真波形示于图8.图中,待测信号F_IN的周期取为410ns,测频控制信号CLK的周期取为2us。

根据测频电路原理,不难算出测频显示应该为“39”。

这个结果与图4给出的数值完全一致。

由该图可见,测频计数器中的计数值q[3..0],q[7..4]随着F_IN脉冲的输入而不断发生变化,但由于74374的锁存功能,两个74248输出的测频结果L[6..0]和H[6..0]始终分别稳定在“6F”和“4F”上(通过7段显示数码管,此二数将分别被译码显示为3和9)。

图7 频率计工作时序波形结论EDA技术是电子设计的发展趋势,利用EDA工具可以代替设计者完成电子系统设计中的大部分工作EDA工具从数字系统设计的单一领域,发展到今天,应用范围己涉及模拟、微波等多个领域,可以实现各个领域电子系统设计的测试、设计仿真和布局布线等,这些都是我在这次课设中深刻体会到的。

经过这次实习,让我真正认识了EDA这门学科,了解到这种方式下的设计方案,硬件电路简洁,集成度高,体现了当今社会所需的先进技术,日后必定在有着广阔的发展空间。

在这次EDA课程结束设计中,虽然应用的都是在书本上学过的知识,但是只有应用到实际中才算真正的学懂了这些知识。

通过这次课程设计实践巩固了学过的知识并能够较好的利用。

课程设计实践不单是将所学的知识应用于实际,在设计的过程中,只拥有理论知识是不够的。

逻辑思维、电路设计的步骤和方法、考虑问题的思路和角度等也是很重要,需要我们着重注意锻炼的能力。

在这次设计中还发现理论与实际常常存在很大差距,为了使电路正常工作,必须灵活运用原理找出解决方法。

经过这学期的实习,使我学到了很多只有实际操作中的问题,虽然在学习的过程中遇到不少的麻烦,但是经过周围同学和老师的帮助,最终顺利的完成了此次课程结题设计。

在此,感谢我们的何老师。

本课能够顺利完成,离不开何老师在课堂上的耐心讲解和课下的指导。

参考文献【1】潘松.黄继业.潘明编著,EDA技术实用教程——Verilog HDL版(第四版).北京:科学出版社,2010。

相关文档
最新文档