当前位置:文档之家› 实验五 4位十进制频率计设计

实验五 4位十进制频率计设计

实验五  4位十进制频率计设计
实验五  4位十进制频率计设计

实验五4位十进制频率计设计

一、实验目的:设计4位十进制频率计,学习较复杂的数字系统设计方法。

二、原理说明:

根据频率的定义和频率测量的基本原理,测定信号的频率必须有一个脉宽为1秒的对输入信号脉冲计数允许的信号;1秒计数结束后,计数值锁入锁存器的锁存信号和为下一测频计数周期作准备的计数器清0信号。这清0个信号可以由一个测频控制信号发生器产生,即图5-1中的TESTCTL,它的设计要求是,TESTCTL的计数使能信号CNT_EN能产生一个1秒脉宽的周期信号,并对频率计的每一计数器CNT10的EN使能端进行同步控制。当CNT_EN高电平时,允许计数;低电平时停止计数,并保持其所计的脉冲数。在停止计数期间,首先需要一个锁存信号LOAD的上跳沿将计数器在前1秒钟的计数值锁存进各锁存器REG4B中,并由外部的7段译码器译出,显示计数值。设置锁存器的好处是,显示的数据稳定,不会由于周期性的清零信号而不断闪烁。锁存信号之后,必须有一清零信号

RST_CNT对计数器进行清零,为下1秒钟的计数操作作准备。

【例5-1】10进制计数器,用于计算分频结果,并连接数码管显示。

module cnt10d(clk,rst,en,cq,cout);

input clk;

input rst;

input en;

output[3:0] cq;

output cout;

reg[3:0] cq;

reg cout;

always@(posedge clk or posedge rst)

begin if(rst) cq<=4'b0000;

else if(en) begin if(cq<9) begin cq<=cq+1'b1;cout<=1'b0; end

else begin cq<=4'b0000; cout<=1'b1; end

end

end

endmodule

【例5-2】--测频控制器,使得频率计能自动测频

module testctl(clkk,cnt_en,rst_cnt,load);

input clkk; // 1HZ

output cnt_en;

output rst_cnt;

output load;

reg div2clk;

wire cnt_en;

reg rst_cnt;

wire load;

always@(posedge clkk)

div2clk<=~div2clk;

always @(clkk or div2clk) begin

if(!clkk & !div2clk) rst_cnt<=1'b1;

else rst_cnt<=1'b0;

end

assign load = ~div2clk;

assign cnt_en = div2clk;

endmodule

【例5-3】锁存器,将频率计的每位数锁存后输出module reg4(clk,cq,led );

input clk;

input[3:0] cq;

output[3:0] led;

reg[3:0] led;

always@(posedge clk)

led<=cq;

endmodule

[例5-4] 用原理图方式将各模块连接起来

也可以用.v文件实现系统组合。

三、实验内容:

1、根据例5-1、例5-

2、例5-3以及4位十进制频率计的工作原理写出频率计的顶层文件(或者原理图),并给出其测频时序波形,及其分析。在测试时候添加以下两个模块:(1)DE2上有两个时钟源,分别是(50MHZ ,PIN_N2),(27MHz,PIN_D13),编写一个分频模块,分别产生测频器的clk(8Hz)和f_in(频率任意定)时钟,用于连接在DE2上进行测试。

module div27(clk2,Q2);

input clk2;

output Q2;

reg Q2;

reg [25:0] count;

always@(posedge clk2) begin if(count==26999999) count<=0;

else count<=count+1'b1;

end

always@(count) begin if(count==26999999) Q2<=1;

else Q2<=0;

end

endmodule

上述为27MHZ分频为1HZ的代码

module div_50(Clk1,Q1);

input Clk1;

output Q1;

reg Q1;

reg [25:0] count;

always @(posedge Clk1)

begin

if(count==49999) count<=0;

else count<=count+1;

end

always@(count ) begin if(count==49999) Q1<=1;

else Q1<=0;

nd

endmodule

上述为50MHZ分频为1000HZ 的代码

(2)编写数码显示模块led7s,用于显示频率计数的结果显示。

module decl7s(a,led7s);

input[3:0]a;

output[6:0]led7s;

reg[6:0]led7s;

always @ (a )

begin led7s={7{1'b0}};

begin

case(a)

4'b0000:led7s[6:0]= 7'b1000000;

4'b0001:led7s[6:0]= 7'b1111001;

4'b0010:led7s[6:0]= 7'b0100100;

4'b0011:led7s[6:0]= 7'b0110000;

4'b0100:led7s[6:0]= 7'b0011001;

4'b0101:led7s[6:0]= 7'b0010010;

4'b0110:led7s[6:0]= 7'b0000010;

4'b0111:led7s[6:0]= 7'b1111000;

4'b1000:led7s[6:0]= 7'b0000000;

4'b1001:led7s[6:0]= 7'b0011000;

default:led7s[6:0]= {7{1'b0}};

endcase

end

end

endmodule

2、频率计设计硬件验证。编译、综合和适配频率计顶层设计文件,并编程下载进入目标器件中。

四、实验步骤

1、构建一个工程名为Cnt10d的工程。

(1)由File->New Project Wizard,弹出对话框,设置文件夹目录,Project名称。

暂无文件添加,按next,继续

根据DE2实验平台,选择FPGA目标器件为:Cyclone II 系列:EP2C35F672C6

仍然使用软件自带的综合仿真工具,所以按NEXT,继续

Project建立总结,按Finish完成

(2).输入Cnt10d的Verilog文本。由File->New,得如下对话框,选择Verilog HDL File,点击ok。将设计的Verilog程序输入,并存盘名为Cnt10d.v

(3).由File->new,弹出对话框,选择other files->Vector Waveform File,将波形文件存盘

为Cnt10d.vwf。

(4).设定Cnt10d.v是目前的顶层文件。

(5).由Processing->start->start annlysis & elaboration对程序进行初步的分析(6).双击波形文件下的空白区,得到如下对话框,点击Noder Finder,弹出一个对话框,单击List,选中Clk、en、rst几个端口,单击>_后,点击OK。由edit->end time ,设定仿真终止时间为1us, 选中Clk点击,设置周期是10ns。

(7).由assigments->settings,对仿真工具设定为功能仿真,并将激励文件调入。由Processing->generate functional simulation netlist,提取功能仿真的网表。由processing -> start simulation 进行功能仿真,并对结果进行分析。

(8).由assignments->settings,更改仿真器的设置为时序仿真:timing。由processing->start compile对设计进行全编译。再由processing -> start simulation 进行时序仿真,分析结果。(9)仿照工程Cnt10d的设计方法,设计testctl、reg4、decl7s并仿真,得到仿真波形。设计div27、div_50,不用仿真。

2.用原理图方式将各模块连接起来,也可以用.v文件实现系统组合。

3.引脚锁定

4.检查无误后,下载到DE2板上

五、实验结果:1.相关波形见附件

2.下载到DE2板后,DE2板上显示的是1000,达到了目的要求。

六、思考题

将频率计扩展为8位十进制频率计,并在测频速度上给予优化,使其能测出更高的频率。答:将Cnt10d和reg4和decl7s三个模块分别都增加为八个,再按照对应的接口功能引脚对应锁定。要将输入的测试频率提高,改变分频器即可。

2位十进制高精度数字频率计设计

广州大学学生实验报告 实验室:电子信息楼 317EDA 2017 年 10 月 2 日 学院机电学院年级、专 业、班 电信 151 姓名苏伟强学号1507400051 实验课 程名称 可编程逻辑器件及硬件描述语言实验成绩 实验项 目名称 实验4 2位十进制高精度数字频率计设计指导老师 秦剑 一实验目的 1 熟悉原理图输入法中74系列等宏功能元件的使用方法,掌握更复杂的原理图层次化设计技术和数字系统设计方法。 2 完成2位十进制频率计的设计,学会利用实验系统上的FPGA/CPLD验证较复杂设计项目的方法。 二实验原理 1 若某一信号在T秒时间里重复变化了N 次,则根据频率的定义可知该信号的频率fs 为:fs=N/T 通常测量时间T取1秒或它的十进制时间。 三实验设备 1 FPGA 实验箱,quarteus软件 四实验内容和结果 1 2位十进制计数器设计 1.1 设计原理图:新建quarteus工程,新建block diagram/schematic File文件,绘制原理图,命名为conter8,如图1,保存,编译,注意:ql[3..0]输出的低4位(十进制的个位), qh[3..0]输出的高4位(十进制的十位) 图片11.2 系统仿真:如图2建立波形图进行波形仿真,如图可以看到完全符合设计要求,当clk输入时钟信号时,clr有清零功能,当enb高电平时允许计数,低电平禁止计数,当低4位计数到9时向高4位进1 图2 1.3 生成元件符号:File->create/updata->create symbol file for current file,保存,命名为conter8,如图3为元件符号(block symbol file 文件): 图3 2 频率计主结构电路设计 2.1 绘制原理图:关闭原理的工程,新建工程,命名为ft_top,新建原理图文件,在project navigator的file 选项卡,右键file->add file to the project->libraries->project library name添加之前conters8工程的目录在该目录下,这样做的目的是因为我们会用到里面的conters8进行原理图绘制,绘制原理图,如图4,为了显示更多的过程信息,我们将74374的输出也作为output,重新绘制了原理图,图5 图4

四位数字频率计实验报告

数字逻辑电路大型实验报告 姓名 指导教师 专业班级 学院信息工程学院 提交日期

一、实验目的 学习用FPGA实现数字系统的方法 二、实验内容 1.FPGA, Quartus II 和VHDL使用练习 2.四位数字频率计的设计 三、四位数字频率计的设计 1.工作原理 当系统正常工作时,8Hz信号测频控制信号发生器进行信号的变换,产生计数信号,被测信号通过信号整形电路产生同频率的矩形波,送入计数模块,计数模块对输入的矩形波进行计数,将计数结果送入锁存器中,保证系统可以稳定显示数据,显示译码驱动电路将二进制表示的计数结果转换成相应的能够在七段数码显示管上可以显示的十进制结果。在数码显示管上可以看到计数结果。工作原理图如下: 2.设计方案

1) 整形电路:整形电路是将待测信号整形变成计数器所要求的脉冲信号 2)控制信号产生器(分频电路):用8Hz时钟信号产生1Hz时钟信号、锁存器信号和cs信号 3)计时器:采用级联的方式表示4位数 4)锁存器:计数结束后的结果在锁存信号控制下锁存 5)译码器:将锁存的计数结果转换为七段显示码 3.顶层原理图(总图)

注:①CLK1:8Hz时钟信号输入; CLKIN:待测信号输入; ②显像时自左而右分别是个位、十位、百位、千位; ③顶层原理图中: (1)consignal模块:为频率计的控制器,产生满足时序要求的三个控制信号; (2)cnt10模块:有四个,组成四位十进制(0000-1001)计数器,使计数器可以从0计数到9999; (3)lock模块:有四个,锁存计数结果; (4)decoder模块:有四个,将8421BCD码的锁存结果转换为七段显示码。 4.底层4个模块(控制信号产生模块,十进制计数器模块,锁存器模块,译码模块)的仿真结果。 cnt10模块(十进制计数器模块): 输入:CLK:待测量的频率信号(时钟信号模拟); CLR:清零信号,当clr=1时计数器清零,输出始终为0000,只有当clr=0时,计数器才正常计数 CS:闸门信号,当cs=1时接收clk计数,当cs=0时,不接收clk,输出为0; 输出: co:进位信号,图中,在1001(9)的上方产生一个进位信号0,其余为1。 qq:计数器的四位二进制编码输出,以十进制输出。

八位十进制数字频率计

EDA课程设计报告书 题目:8位十进制数字频率计的设计姓名: 学号: 所属学院: 专业年级: 指导教师: 完成时间:

8位十进制数字频率计的设计 一、设计介绍 数字频率计是采用数字电路制做成的能实现对周期性变化信号频率测量的仪器。频率计主要用于测量正弦波、矩形波、三角波和尖脉冲等周期信号的频率值。其扩展功能可以测量信号的周期和脉冲宽度。通常说的,数字频率计是指电子计数式频率计。频率计主要由四个部分构成:输入电路、时基(T)电路、计数显示电路以及控制电路。在电子技术领域,频率是一个最基本的参数。数字频率计作为一种最基本的测量仪器以其测量精度高、速度快、操作简便、数字显示等特点被广泛应用。许多物理量,例如温度、压力、流量、液位、PH值、振动、位移、速度等通过传感器转换成信号频率,可用数字频率计来测量。尤其是将数字频率计与微处理器相结合,可实现测量仪器的多功能化、程控化和智能化.随着现代科技的发展,基于数字式频率计组成的各种测量仪器、控制设备、实时监测系统已应用到国际民生的各个方面。 二、设计目的 (1)熟悉Quatus 11软件的基本使用方法。 (2)熟悉EDA实验开发系统的使用方法。 (3)学习时序电路的设计、仿真和硬件设计,进一步熟悉VHDL设计技术。 三、数字频率计的基本原理 数字频率计的基本原理是用一个频率稳定度高的频率源作为基准时钟,通常情况下计算每秒待测信号的脉冲个数,此时我们称闸门时间为1秒。闸门时间也可以大于或小于一秒。闸门时间越长,得到的频率值就越准确,但闸门时间越长则每测一次频率的间隔就越长。闸门时间越短,测的频率值刷新就越快,但测得的频率精度就受影响。数字频率计的主要功能是测量周期信号的频率。频率是单位时间(1S)信号发生周期变化的次数。如果我们能在给定的1S时间对信号波形计数,并将计数结果显示出来,就能读取被测信号的频率。数字频率计首先必须获得相对稳定与准确的时间,同时将被测信号转换成幅度与波形均能被数字电路识别的脉冲信号,然后通过计数器计算这一段时间间隔的脉冲个数,将其换算后显示出来。这就是数字频率计的基本原理。频率计测量频率需要设计整形电路使被测周期性信号整形成脉冲,然后设计计数器对整形后的脉冲在单位时间重复变化的次数进行计数,计数器计出的数字经锁存器锁存后送往译码驱动显示电路用数码管将数字显示出来,需要设计控制电路产生允许产生的门匣信号,计数器的清零信号和锁存器的锁存信号使电路正常工作,再设计一个量程自动转换使测量围更广。 四系统总体框架

Verilog HDL语言 四位数字频率计 课程设计

1、设计目的和要求 1、设计一个4位十进制数字频率计。 2、测量范围1~9999Hz,采用4位数码管显示,有溢出指示。 3、量程有1KHz,1MHz两档,用LED灯指示。 4、读数大于9999时,频率计处于超量程状态,发出溢出指示,下次量程,量程自动增大一档。 5、读数小时,频率计处于前量程状态,下次测量,量程自动减小一档。 6、采用记忆显示方式,在计数与显示电路中间加以锁存电路,每次计数结束,将计数结果送锁存器锁存,并保持到下一个计数结束。 2、设计原理 1、基本原理 频率测量的基本原理是计算每秒钟内待测信号的脉冲个数。这就要求sysclk 能产生一个1s脉宽的周期信号,并对频率计的每一个计数器cntp的使能端进行同步控制。当clK_cnt高电平时允许计数,并保持其所计的数。在停止计数期间,首先需要一个锁存信号将计数器在前1s的计数值锁存进锁存器reg中,并由外部的7段译码器译出并稳定显示。原理图如图1-1 图1-1 2、模块原理 根据数字频率计的基本原理,本文设计方案的基本思想是分为五个模块来实现其功能,即整个数字频率计系统分为分频模块、控制模块、计数模块、译码模

块和量程自动切换模块等几个单元,并且分别用VHDL对其进行编程,实现了闸门控制信号、计数电路、锁存电路、显示电路等。 3、设计内容 1、分频模块 由于晶体振荡器提供的为50MHz的时钟,而在整个频率计里将用到周期为2s,半个周期为1s的闸门信号,所以我们在此模块先分频产生0.5Hz的分频信号。always@(posedge sysclk) begin if(cnt==26’b10_1111_1010_1111_0000_1000_0000) begin clk_cnt<=~clk_cnt;cnt<=0;end else begin cnt<=cnt+1;end end 二进制的26’b10_1111_1010_1111_0000_1000_0000,即为十进制的50x10^7,由程序中的clk_cnt<=~clk_cnt;cnt<=0;得知会产生我们想要的周期为2s的clk_int信号。仿真结果如图1-2. 图1-2 2、 4位十进制计数器模块 4位十进制计数器模块包含4位十进制的计数器,用来对施加到时钟脉冲输入端的待测信号产生的脉冲进行计数,十进制计数器具有清零控制和进位扩展输出的功能。 always@(posedge clkint) begin if(clk_cnt) begin if(cntp1==’b1001) begin cntp1<=’b0000; cntp2<=cntp2+1; if(cntp2==’b1001)

四位十进制频率计(EDA)

四位十进制频率计设计报告

目录 一、题目分析 (3) 1、设计原理 (3) 二、设计方案 (3) 1、顶层实体描述 (3) 2、模块划分 (4) 3、模块描述 (4) 4、顶层电路图 (5) 三、方案实现 (5) 1、各模块仿真及描述 (5) 2、顶层电路仿真及描述 (6) 四、硬件测试及说明 (7) 五、结论 (7) 六、课程总结 (7) 七、附录(源程序,加中文注释) (8) 1、频率计顶层文件 (8) 2、测频控制电路 (9) 3、16位锁存器 (9) 4、16位计数器 (10) 5、十进制加法计数器 (10)

一、题目分析 1、设计原理 根据频率的定义和频率测量的基本原理,测定信号的频率必须有一个脉宽为1S的输入信号脉冲计数允许的信号;1S计数结束后,计数值被锁入锁存器,计数器清零,为下一测评计数周期做好准备。测频控制信号可以由一个独立的发生器来产生。 2、设计要求: FTCTRL的计数使能信号CNT_EN能产生一个1S脉宽的周期信号,并对频率计中的16位计数器couter16D的ENABL使能端进行同步控制。当CNT_EN高电平时允许计数;低电平时停止计数,并保持其所计的脉冲数。在停止计数期间,首先需要一个锁存信号LOAD的上升沿将计数器在前一秒钟的计数值锁进锁存器REG16D中,并由外部的十进制7段译码器译出,显示计数值。设置锁存器的好处是数据显示稳定,不会由于周期性的清零信号而不断闪烁。锁存信号后,必须有一清零信号RST_CNT对计数器进行清零,为下一秒的技术操作做准备。 3、实现功能 当输入一个待测频率时,在测频信号的控制下,可以通过外部的7段译码器显示出其频率值。 二、设计方案 1、顶层实体描述 图1:四位十进制频率计顶层实体 图2:测频控制电路实体图3: 16位计数器实体图4: 16位锁存器实体 图5:十进制加法计数器实体 2、模块划分

四位十进制频率计

EDA实验报告 实验四四位十进制频率计 实验目的 1.掌握四位十进制频率计的工作原理并能够用virlog语言编写代码,进一步熟悉EDA6000 实验箱的使用方法。 2.进一步熟悉quartusII建立程序编译、仿真及下载的操作流程并学会四位十进制频率计的 Verilog硬件设计。 3.代码 module freqcounter(clk,uclk,ge_bit,shi_bit,bai_bit,qian_bit); input clk,uclk; output [3:0] ge_bit,shi_bit,bai_bit,qian_bit; reg [3:0]ge_bit,shi_bit,bai_bit,qian_bit; reg div,en,load,cls; reg [3:0] A,B,C,D; always @(negedge clk) begin div=~div; en=div; load=~en; cls=clk&load; end always @(posedge uclk or posedge cls) begin if(cls) begin A=4'd0;B=4'd0;C=4'd0;D=4'd0; end else if(en) begin A=A+4'd1; if(A==4'D10) begin A=4'd0;B=B+4'd1; end if(B==4'D10) begin B=4'd0;C=C+4'd1; end if(C==4'D10) begin C=4'd0;D=D+4'd1; end if(D==4'D10) begin D=4'd0; end end end always @(posedge load) begin ge_bit=A; shi_bit=B; bai_bit=C; qian_bit=D; end endmodule 实验步骤 1.新建Verilog工程,编写代码并保存至与模块名对应的文件夹。注意:项目应存为系统 盘以外的盘内,路径中不含中文字符。

四位十进制频率计

四位十进制频率计

————————————————————————————————作者:————————————————————————————————日期:

一、设计任务与要求 1.设计4位十六进制频率计,学习较复杂的数字系统设计方法; 2.深入学习数字系统设计的方法与步骤; 3.用元件例化语句写出频率计的顶层文件; 4.用VHDL硬件描述语言进行模块电路的设计; 5.设计硬件要求:PC机,操作系统为Windows2000/XP,本课程所用系统均为 max+plus II 5.1设计平台,GW48系列SOPC/EDA实验开发系统。 二、总体框图 2.1工作原理以及方案 原理工作说明: 根据频率的定义和频率测量的基本原理,测定信号的频率必须有一个脉宽为1秒的对输入信号脉冲计数允许的信号;1秒计数结束后,计数值锁入锁存器的锁存信号和为下一测频计数周期作准备的计数器清0信号。这3个信号可以由一个测频控制信号发生器产生,即图(a)中的TESTCTL,它的设计要求是,TESTCTL的计数使能信号CNT_EN 能产生一个1秒脉宽的周期信号,并对频率计的每一计数器CNT4B的ENA使能端进行同步控制。当CNT_EN高电平时,允许计数;低电平时停止计数,并保持其所计的脉冲数。在停止计数期间,首先需要产生一个锁存信号LOAD,在该信号上升沿时,将计数器在前1秒钟的计数值锁存进各锁存器REG4B中,并由外部的7段译码器译出,显示计数值。设置锁存器的好处是,显示的数据稳定,不会由于周期性的清零信号而不断闪烁。锁存信号之后,必须有一清零信号RST_CNT对计数器进行清零,为下1秒钟的计数操作作准备。其工作时序波形如图(a)。

用verilog HDL设计地4位频率计

简单4位数字频率计设计 一、设计要求 (1)、利用Verilog HDL语言行为描述方法,设计一个简单的4位数字频率计;(2)、要求输入标准时钟信号频率为1MHz,系统可计数频率围为1Hz~9999Hz;(3)、系统具有复位信号,且当计数频率发生溢出时能够给出指示信号,计数的频率通过4个共阴数码管进行显示(动态扫描显示)。 二、系统结构框图 4位数字频率计系统结构框图 根据设计要求,输入系统的标准时钟信号要先经过分频后得到一个周期为2s占空比50%的信号,用来对输入信号采样,得到采样信号GATED_CLK;为了能够控制计数模块对采样的信号进行正常计数及保存计数后的频率,这要求,要在计数器刚好完成计数后立即将数据输出给显示部分进行显示,并且要为下次计数做好准备,因此数据信号处理部分还要有产生控制计数器的两个信号LOAD和COUNTER_CLR,LOAD信号控制计数完成后的数据及时输出给显示,COUNTER_CLR信号控制计数器清零;计数模块就是完成对采样信号的计数,并当计数发生溢出时产生溢出信号FLOW_UP;显示控制模块要完成将计数模块输入的信号进行译码显示。

三、信号描述 测试信号采样原理: Gated signal Signal for test To display Signal for test GATED_CLK 、LOAD 、COUNTER_CLR 信号的关系: COUNTER_CLR GATED_CLK LOAD 程序中用到的信号变量:

四、Verilog程序 各子模块verilog程序: (1)信号处理模块_verilog: module FREQUENCY_COUNTROL_BLOCK(GATED_CLK,LOAD,COUNTER_CLR,CLK_IN,SIGNAL _TEST,RESET); output GATED_CLK; output LOAD; output COUNTER_CLR; input CLK_IN; input SIGNAL_TEST; input RESET; reg LOAD; reg COUNTER_CLR; reg DIVIDE_CLK; reg[19:0]; reg A1,A2; //信号分频:由CLK_IN得到分频后的信号DIVIDE_CLK(0.5Hz) always (posedge CLK_IN) begin

八位十进制数字频率计的设计

2012~2013学年第二学期 《数字系统设计》 课程设计报告 题目:数字频率计的设计 班级:10电子信息(1) 姓名:鲍学贵李闯王群卢军 张力付世敏凌玲尹凡指导教师:周珍艮 电气工程系 2013年6月

《数字系统设计》任务书

摘要 数字频率计是用数字显示被测信号频率的仪器,被测信号可以是正弦波、方波或其它周期性变化的信号。数字频率计广泛应用于科研机构、学校、实验室、企业生产车间等场所。研究数字频率计的设计和开发,有助于频率计功能的不断完善、性价比的提高和实用性的加强。 本文介绍了一种自顶向下分层设计多功能数字频率计的设计方法。该频率计采用 硬件描述语言编程,以为开发环境,极大地减少了硬件资源的占用。数字频率计模块划分的设计具有相对独立性,可以对模块单独进行设计、调试和修改,缩短了设计周期。所设计的语言通过仿真能够较好的测出所给频率并且满足数字频率计的自动清零和自 动测试的功能要求,具有理论与实践意义。 关键词:;数字频率计; ;

目录 第一章绪论 (1) 1.1 设计背景 (1) 1.2 设计意义 (1) 1.3 本文的主要工作 (2) 第二章数字频率计的系统分析 (3) 2.1 8位十进制数字频率计系统设计的原理 (3) 2.1.1 数字频率计的基本原理 (3) 2.1.2 系统总体框架图 (3) 2.2 8位十进制数字频率计设计任务与要求 (4) 2.3 目标芯片10K (4) 第三章各功能模块基于的设计与仿真 (6) 3.1 8位十进制数字频率计的电路逻辑图 (6) 3.2 测频控制信号发生器的功能模块及仿真 (6) 3.3系统时钟分频的功能模块及仿真 (8) 3.4 32位锁存器的功能模块及仿真 (9) 3.4.1 锁存器 (9) 3.4.2 锁存器的功能模块及仿真 (9) 3.5 数码管扫描的功能模块及仿真 (10) 3.6 数码管译码显示的功能模块及仿真 (12) 3.7 十进制计数器的功能模块及仿真 (14) 3.7.1 计数器 (14) 3.7.2 十进制计数器的功能模块及仿真 (14) 3.8 8位十进制数字频率计的仿真 (16) 第四章结束语 (23) 参考文献 (24) 答辩记录及评分表 (25)

eda 4位十进制频率计

学号:XXXXXX XX 大学 EDA 技术 课程设计报告 题目: 4位十进制频率计设计 学生:XXX 学院(系):信息科学与工程学院专业班级:电子XXX 指导教师:XXXX

EDA课程设计任务书一、设计题目4位十进制频率计设计

常州大学EDA技术课程设计报告 二、设计背景 在1秒钟的时间间隔内对输入时钟信号的时钟上升沿进行计数,计数1秒钟该时钟有多少个时钟周期,即得到时钟频率。设计一4位加法十进制计数器进行计数,有一4位计数值输出端,计数到10则有1位计数溢出,输出至溢出端。该溢出端可连至另一4位加法十进制计数器的输入端进行计数,以此类推,由4个加法计数器级联,它们的计数值组成了频率计4位计数值,经锁存器连至数码管显示。 三、设计内容及要求 设计内容: 设计一4位十进制频率计,对输入信号的频率进行测量,将测量频率值经由数码管显示。 (1)设计含异步清零和同步时钟使能的4位10进制加法计数器,有一输入端CLK,清零复位端RST,使能端ENA,4位加法计数输出端OUTY和1位溢出端COUT。 (2)为了数据显示稳定,不会因周期性清零而闪烁,设计一4位锁存器,对输出数据锁存。(3)设计一测频控制器,产生1s的计数允许信号,1S结束后产生计数值锁入锁存器的锁存信号和为下一测频计数周期作准备的计数器清零信号。1HZ测频控制信号作为其输入。 要求: 1)根据系统设计要求,采用自顶向下的方法,划分系统主要模块,画出整体设计原理框图。 2)根据工作原理、用硬件描述语言对设计内容实现,列出设计程序清单,给出仿真波形图和调试中存在问题及解决方法。 3)设计内容下载至目标芯片,在EDA的GW48型实验箱进行功能验证。 4)谈谈该课题的课程设计中遇到的问题,获得哪些技能和体会,以及建设性意见。 四、设计步骤和安排: (1)题目安排;图书馆查相关资料; (2)设计原理研究,总体设计; (3)各主要模块的VHDL设计。各模块的设计仿真分析。 (4) 完成系统顶层文件设计,系统总体功能的仿真分析。 (5) 将设计内容进行硬件配置,在GW48实验箱上进行调试。 (6) 撰写课程设计报告、答辩并提交报告。

FPGA4位十进制频率计设计实验报告

FPGA 实验报告 题目:4位十进制频率计设计 一、实验目的: 设计4位十进制频率计,学习较复杂的数字系统设计方法。 二、原理说明: 根据频率的定义和频率测量的基本原理,测定信号的频率必须有一个脉宽为1秒的对输入信号脉冲计数允许的信号;1秒计数结束后,计数值锁入锁存器的锁存信号和为下一测频计数周期作准备的计数器清0信号。这清0个信号可以由一个测频控制信号发生器产生,即图5-1中的TESTCTL ,它的设计要求是,TESTCTL 的计数使能信号CNT_EN 能产生一个1秒脉宽的周期信号,并对频率计的每一计数器CNT10的EN 使能端进行同步控制。当CNT_EN 高电平时,允许计数;低电平时停止计数,并保持其所计的脉冲数。在停止计数期间,首先需要一个锁存信号LOAD 的上跳沿将计数器在前1秒钟的计数值锁存进各锁存器REG4B 中,并由外部的7段译码器译出,显示计数值。设置锁存器的好处是,显示的数据稳定,不会由于周期性的清零信号而不断闪烁。锁存信号之后,必须有一清零信号RST_CNT 对计数器进行清零,为下1秒钟的计数操作作准备。 三、实验步骤. 1.在QUARTUSII 软件下创建一工程,工程名为frequency ,芯片名为EP2C35F672C6; 2.输入10进制计数器模块,用于计算分频结果,并连接数码管显示。将其命名为cnt10d.v ,然后保存在与工程相同的文件夹中; 其功能和时序仿真波形分别如下: module cnt10d(clk,rst,en,cq,cout); input clk; input rst; input en; output[3:0] cq; output cout; reg[3:0] cq; reg cout; always@(posedge clk or posedge rst) begin if(rst) cq<=4'b0000; else if(en) begin if(cq<9) begin cq<=cq+1'b1;cout<=1'b0; end else begin cq<=4'b0000; cout<=1'b1; end end end endmodule

FPGA八位十进制数字频率计

数字系统设计与VHDL课程设计任务书 一、题目:基于FPGA的八位十进制数字频率计的设计与仿真 二、主要内容 本次设计是运用FPGA(现场可编程门阵列)芯片来实现一个八位十进制数字频率计,输入信号频率通过数码管来显示。设计中采用Verilog HDL语言编程,运用QUARTUS Ⅱ软件实现。 三、基本要求 1. 查阅相关原始资料,书写文献综述,英文资料翻译。 2. 理解相关的资料,确定系统功能、性能指标,选择系统组成方案。 3. 选择系统方案,运用Verilog HDL编程,采用QUARTUS Ⅱ集成开发环境进行编辑、综合测试,并进行引脚锁定。 4. 采用MagicSOPC实验开发平台,以FPGA为核心器件,主控芯片为EP2C35F672C8器件并下载到试验箱中进行验证,最终实现所需的八位十进制数字频率计,并在数码管上显示。 5. 撰写研究报告及结果分析,书写课程设计论文。 四、时间安排 五、教材及参考书 [1] 潘松, 王国栋. VHDL实用教程[M].西安:电子科技大学出版社,2007. [2] 黄智伟. FPGA系统设计与实践[M].北京:电子工业出版社,2005. [3] 包明. 赵明富.EDA技术与数字系统设计[M].北京:北京航空航天大学出版社,2001. [4] 莫琳,基于FPGA的频率计的设计与实现[J].现代电子技术,2004 [5] EDA修改稿

基于FPGA的八位十进制数字频率计 学生姓名: 学院: 专业班级: 专业课程: 指导教师: 2014 年6 月15 日 一、系统设计 1.系统设计要求 (1)频率测量范围:1-99.MHZ。

四位十进制频率计

Hefei University 项目报告 项目名称:4位十进制频率计 作者姓名: 作者姓名: 作者姓名:

一、实验目的 1、设计4位十进制频率计,理解用VHDL表达和设计电路的方法; 2、掌握4位十进制频率计的分析和测试方法; 3、学习较复杂的数组系统设计方法。 二、实验原理 根据频率的定义和频率测量的基本原理,测定信号的频率必须有一个脉宽为1秒的对输入信号脉冲计数允许的信号;1秒计数结束后,计数值锁入锁存器的锁存信号和为下一测频计数周期作准备的计数器清0信号。这3个信号可以由一个测频控制信号发生器产生,它的设计要求是,TESTCTL的计数使能信号CNT_EN 能产生一个1秒脉宽的周期信号,并对频率计的每一计数器CNT10的ENA使能端进行同步控制。当CNT_EN高电平时,允许计数;低电平时停止计数,并保持其所计的脉冲数。在停止计数期间,首先需要产生一个锁存信号LOAD,在该信号上升沿时,将计数器在前1秒钟的计数值锁存进各锁存器REG4B中,并由外部的7段译码器译出,显示计数值。设置锁存器的好处是,显示的数据稳定,不会由于周期性的清零信号而不断闪烁。锁存信号之后,必须有一清零信号RST_CNT 对计数器进行清零,为下1秒钟的计数操作作准备。 在Quartus II上完成4位计数器、测频控制器的设计以及4位锁存器的设计,根据这三个设计完成4位十进制频率计的设计并验证。编译、综合和适配频率计顶层设计文件,并编程下载进目标器件中。建议选实验电路模式0,4个数码管显示测频输出;待测频率输入FIN由clock0输入,频率可选4Hz、256Hz……或更高;1Hz测频控制信号F1HZ可由clock2输入。 三、实验内容 1、总体设计方案 根据频率计的定义和频率测量的基本原理:频率计即是指单位时间 1 秒内输入脉冲个数并显示出来的电路。因为要显示被测信号的,只要限制计数器的计数过程为一秒则计数器的结果即为被测信号的频率。频率值为:Fx=N,N 为一秒内计数器所计脉冲个数。因为是 4 位十进制频率计计数器是模为 9999 的十进制加法计数器,可以由 4 个模为 10 的十进制计数器级联而成,所以可以显示的频率范围是 1-9999HZ。因此,频率计的功能分割成四个模块:计数器,测

简单数字频率计的设计与制作

简单数字频率计的设计与制作 1结构设计与方案选择 1.1设计要求 (1)要求用直接测量法测量输入信号的频率 (2)输入信号的频率为1~9999HZ 1.2设计原理及方案 数字频率计是直接用十进制的数字来显示被测信号频率的一种测量装置。它不仅可以测量正弦波、方波、三角波和尖脉冲信号的频率,而且还可以测量它们的周期。 所谓频率就是在单位时间(1s)内周期信号的变化次数。若在一定时间间隔T内测得周期信号的重复变化次数为N,则其频率为f=N/T(1-1)据此,设计方案框图如图1所示: 图1 数字频率计组成框图 图中脉冲形成的电路的作用是将被测信号变成脉冲信号,其重复频率等于被测信号的频率f 。时间基准信号发生器提供标准的时间脉冲信号,若其周期为X 1s,则们控电路的输出信号持续时间亦准确的等于1s。闸门电路由标准秒信号进行控制当秒信号来到时,闸门开通,被测脉冲信号通过闸门送到计数器译码显示电路。秒信号结束时闸门关闭,技计数器得的脉冲数N是在1秒时间内的累计 = N Hz。 数,所以被测频率f X 被测信号f 经整形电路变成计数器所要求的脉冲信号○1,其频率与被测信X 号的频率相同。时基电路提供标准时间基准信号○2,其高电平持续时间t1=1 秒,当l秒信号来到时,闸门开通,被测脉冲信号通过闸门,计数器开始计数,直到l秒信号结束时闸门关闭,停止计数。若在闸门时间1s内计数器计得的脉冲个

数为N,则被测信号频率f=NHz,如图2(a)所示,即为数字频率计的组成框图。 图2(a)数字频率计的组成框图 图2(b)数字频率计的工作时序波形 逻辑控制单元的作用有两个: 其一,产生清零脉冲④,使计数器每次从零开始计数; 其二,产生所存信号⑤,是显示器上的数字稳定不变。这些信号之间的时序关系如图2(b)所示数字频率计由脉冲形成电路、时基电路、闸门电路、计数锁存和清零电路、译码显示电路组成。

4位十进制频率计

EDA技术课程大作业 设计题目:4位十进制频率计的设计 院系:电子信息与电气工程学院 学生姓名: 学号:200902070040 专业班级:09电子信息专升本 2010年12 月9 日

4位十进制频率计的设计 1. 设计背景和设计方案 1.1设计原理 4位十进制频率计的原理图如图1所示。它由4片十进制加法器CNT10、4片锁存器REG4B和1片测频控制信号发生器TESTCTL组成。 根据频率的定义和频率测量的基本原理,测定信号的频率必须有一个脉宽为1秒的对输入信号脉冲计数允许的信号;1秒计数结束后,计数值锁入锁存器的锁存信号和为下一测频计数周期作准备的计数器清0信号。这3个信号可以由一个测频控制信号发生器产生,它的设计要求是,TESTCTL的计数使能信号CNT_EN能产生一个1秒脉宽的周期信号,并对频率计的每一计数器CNT10的ENA使能端进行同步控制。当CNT_EN高电平时,允许计数;低电平时停止计数,并保持其所计的脉冲数。在停止计数期间,首先需要一个锁存信号LOAD的上跳沿将计数器在前1秒钟的计数值锁存进各锁存器REG4B中,并由外部的7段译码器译出,显示计数值。设置锁存器的好处是,显示的数据稳定,不会由于周期性的清零信号而不断闪烁。锁存信号之后,必须有一清零信号RST_CNT对计数器进行清零,为下1秒钟的计数操作作准备。 1.2设计内容 (1)编写各个VHDL源程序。三段程序分别是十进制加法器CNT10、测控器TESTETL 和锁存器REG4B的程序。 (2)用QuartusII的图形编译方法实现频率计的顶层设计如图1所示。

图1 4位十进制频率计顶层文件原理图 2. 方案实施 2.1测频控制信号发生器 TESTCTL为测频控制信号发生器。TESTCTL的计数使能信号CNT_EN能产生一个1 s 宽的周期信号,并对频率计的每一计数器CNT10的ENA使能端进行同步控制:当CNT_EN 高电平时允许计数、低电平时停止计数。 程序如下 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY TESTCTL IS PORT(CLK: IN STD_LOGIC;

8位16进制频率计设计

8 位16 进制频率计设计 1、实验目的 设计8 位16 进制频率计,学习较复杂的数字系统设计方法。 2、实验原理 根据频率的定义和频率测量的基本原理,测定信号的频率必须有一个脉宽为1的输入信号脉冲计数允许的信号;1秒计数结束后,计数值被锁入锁存器,计数器清0,为下一测频计数周期作好准备。测频控制信号可以由一个独立的发生器来产生。 3、实验内容 1、分别仿真测试模块例 7-1、例 7-2 和例 7-3,再结合例 7-4 完成 频率计的完整设计和硬件实现,并给出其测频时序波形及其分 析。建议选实验电路模式5;8个数码管以16进制形式显示测频 输出;待测频率输入FIN由clock0 输入,频率可选4Hz、 256HZ、3Hz...50MHz 等;1HZ 测频控制信号CLK1HZ 可由 clock2 输入(用跳线选 1Hz)。 注意:这是8个数码管的测频显示值是16进制的。 2、参考实验二的程序,将频率计改为8位10进制频率计,注意此 设计电路的计数器必须是8个四位的10进制计数器,而不是一 个。此外注意在测频速度上给予优化。 3、实验报告:给出频率计设计的完整报告。 4、实验程序 1、测频控制电路程序: LIBRARY IEEE;--测频控制电路 USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY FTCTRL IS PORT(CLKK: IN STD_LOGIC; --1HZ CNT_EN: OUT STD_LOGIC; --计数器时钟使能 RST_CNT: OUT STD_LOGIC;--计数器至0 Load: OUT STD_LOGIC);--输出锁存信号 END FTCTRL; ARCHITECTURE behav OF FTCTRL IS

FPGA—4位十进制频率计

4位十进制频率计 一、设计目的 用Verilog HDL语言设计一个能实现自动测频的4位十进制频率计。 1)测量范围: 1Hz~9999Hz 2)测量的数值通过4个数码管显示 3)频率超过9999Hz时,溢出指示灯亮,可以作为扩大测量范围的接口。 二、设计原理 1、若某一信号在T秒时间里重复变化了N 次,则根据频率的定义可知该信号的频率fs 为:fs=N/T。 2、当T=1s时,N就是测得的频率。 3、根据以上所提出的方法,测定信号的频率必须有一个脉宽为1秒的对输入信号脉冲计数允许的信号;1秒计数结束后,计数值锁入锁存器的锁存信号和为下一测频计数周期作准备的计数器复位信号。这个复位信号可以由一个测频控制信号发生器产生,即图1中的TESTCTL,它的设计要求是,TESTCTL的计数使能信号CNT_EN能产生一个1秒脉宽的周期信号,并对频率计的每一计数器CNT10的EN使能端进行同步控制。当CNT_EN高电平时,允许计数;低电平时停止计数,并保持其所计的脉冲数。在停止计数期间,每0.01ms锁存器进行一次锁存,并由数码管显示计数值。设置锁存器是为了使显示的数据稳定,不会由于周期性的清零信号而不断闪烁。锁存信号之后,必须有一清零信号RST_CNT 对计数器进行清零,为下1秒钟的计数操作准备。 图1 原理图

三、设计步骤 1、新建cym工程文件。 图2 建立工程 由于是用VHDL语言进行设计,所以此处选择类型为HDL。之后一直点击确认即可。 图3 芯片信息配置 由于我们所采用的板子为RCXQ208_V5 FPGA开发板,所以配置如图所示。

2、新建各个分模块并输入代码。 图4 建立VHDL文件 3、建立顶层文件为原理图型,例化各个模块并连接。 图5 建立VHDL文件 4、对设计进行综合,如果出现错误,根据提示改正。 图6 综合 黄色感叹符号代表有警告,有些警告可以忽略,绿色小勾表示综合成功。

四位十进制频率计设计 自己写的

数字频率计设计 1. 设计任务 设计一简易数字频率计,其基本要求是: 1)测量频率范围1Hz~10Hz ,量程分为4档,即×1,×10,×100,×1000。 2)频率测量准确度3102-?±≤?x x f f . 3)被测信号可以是下弦波、三角波和方波。 4)显示方式为4位十进制数显示。 5)使用EWB 进行仿真。 2. 设计原理及方案 频率的定义是单位时间(1s )内周期信号的变化次数。若在一定时间间隔T 内测得周期信号的重复变化次数为N ,则其频率为 f=N/T 据此,设计方案框图如图1所示。 图1 数字频率计组成框图 其基本原理是,被测信号u x 首先经整形电路变成计数器所要求的脉冲信号,频率与被测信号的频率f x 相同。时钟电路产生时间基准信号,分频后控制计数与保持状态。当其高电平时,计数器计数;低电平时,计数器处于保持状态,数据送入锁存器进行锁存显示。然后对计数器清零,准备下一次计数。其波形逻辑关系图如图2所示。 3. 基本电路设计 1)整形电路 整形电路是将待测信号整形变成计数器所要求的脉冲信号。电路形式采用由555定时器所构成的施密特触发器,电路如图XXX 所示。若待测信号为三角波,输入整形电路,设置分析为瞬态分析,启动电路,其输入、输出波形如图XXX 所示。可见输出为方波,二者频率相同。 2)时钟产生电路 时钟信号是控制计数器计数的标准时间信号,其精度很大程度上决定了频率计的频率测量精度。当要求频率测量精度较高时,应使用晶体振荡器通过分频获得。在此频率计中,时钟信号采用555定时器构成的多谐振荡器电路,产生频率为1Kz 的信号,然后再进行分频。多谐振荡器电路如图XXX 所示。由555定时器构成多谐振荡器的周期计算公式为 XXXXXXXXXX 取XXXXXXXXXXXXXX ,则得到振荡频率为1Kz 的负脉冲,其振荡波形如图XXX 所示。

八位十进制数字频率计

名: 口 , 号 : 所属学院: 业年级: 指导教师: 完成时间: EDA课程设计报告 8位十进制数字频率计的设计

8 位十进制数字频率计的设计 一、设计介绍数字频率计是采用数字电路制做成的能实现对周期性变化信号频率测量的仪器。频率计主要用于测量正弦波、矩形波、三角波和尖脉冲等周期信号的频率值。其扩展功能可以测量信号的周期和脉冲宽度。通常说的,数字频率计是指电子计数式频率计。频率计主要由四个部分构成:输入电路、时基(T)电路、计数显示电路以及控制电路。在电子技术领域,频率是一个最基本的参数。数字频率计作为一种最基本的测量仪器以其测量精度高、速度快、操作简便、数字显示等特点被广泛应用。许多物理量,例如温度、压力、流量、液位、 PH 值、振动、位移、速度等通过传感器转换成信号频率,可用数字频率计来测量。尤其是将数字频率计与微处理器相结合,可实现测量仪器的多功能化、程控化和智能化 .随着现代科技的发展,基于数字式频率计组成的各种测量仪器、控制设备、实时监测系统已应用到国际民生的各个方面。 二、设计目的 ( 1 )熟悉 Quatus 11 软件的基本使用方法。 (2)熟悉EDA实验开发系统的使用方法。 (3)学习时序电路的设计、仿真和硬件设计,进一步熟悉 VHDL设计技术。 三、数字频率计的基本原理数字频率计的基本原理是用一个频率稳定度高的频率源作为基准时钟,通常情况下计算每秒内待测信号的脉冲个数 ,此时我们称闸门时间为 1 秒。闸门时间也可以大于或小于一秒。闸门时间越长,得到的频率值就越准确,但闸门时间越长则每测一次频率的间隔就越长。闸门时间越短,测的频率值刷新就越快 ,但测得的频率精度就受影响。数字频率计的主要功能是测量周期信号的频率。频率是单位时间(1S)内信号发生周期变化的次数。如果我们能在给定的1S时间内对信号波形计数,并将计数结果显示出来,就能读取被测信号的频率。数字频率计首先必须获得相对稳定与准确的时间,同时将被测信号转换成幅度与波形均能被数字电路识别的脉冲信号,然后通过计数器计算这一段时间间隔内的脉冲个数,将其换算后显示出来。这就是数字频率计的基本原理。频率计测量频率需要设计整形电路使被测周期性信号整形成脉冲,然后设计计数器对整形后的脉冲在单位时间内重复变化的次数进行计数,计数器计出的数字经锁存器锁存后送往译码驱动显示电路用数码管将数字显示出来,需要设计控制电路产生允许产生的门匣信号,计数器的清零信号和锁存器的锁存信号使电路正常工作,再设计一个量程自动转换使测量范围更广。 四系统总体框架

8位十六进制频率计的设计

实验二利用VHDL实现8位十六进制频率计 一、实验目的 1)掌握更复杂的原理层次化设计和数字系统设计方法; 2)完成8位16进制频率计的设计。 二、实验内容 在Quartus II上利用VHDL设计出一个8位的十六进制的频率计,分别设计出频率计的各个模块。 三、实验仪器 1)计算机及操作系统; 2)QuartusII软件。 四、实验原理 根据频率的定义和频率测量的基本原理,测定信号的频率必须有一个脉冲宽度为1秒的输入信号脉冲计数允许的信号;1秒计数结束后,计数值锁入锁存器的锁存信号并为下一测频计数周期做准备的计数器清0信号。这3个信号可以由一个测频控制信号发生器产生,即TESTCTL。 TESTCTL的计数是能信号CNT_EN能产生一个1秒脉宽的周期信号,并对频率计的每一计数器CNT10的ENA是能端进行同步控制。当CNT_EN高电平时允许计数;低电平时停止计数,并保持其所计的脉冲数。在停止计数期间,首先需要一个锁存信号LOAD的上跳沿将计数器在前1秒钟的计数值锁存进个锁存器REG4B 中,并由外部的7段译码器译出,显示计数值。设置锁存器的好处是数据显示稳定,不会由于周期性的清0信号而不断闪烁。锁存信号后,必须有一清0信号RST_CNT对计数器进行清零,为下1秒的计数操作作准备。数字频率计的关键组成部分包括一个测频控制信号发生器、一个计数器和一个锁存器,另外包含外电路的信号整形电路、脉冲发生器、译码驱动电路和显示电路。 工作原理:系统正常工作时,脉冲信号发生器输入1Hz的标准信号,经过测频控制信号发生器的处理,2分频后即可产生一个脉宽为1秒的时钟信号,以此作为计数闸门信号。测量信号时,将被测信号通过信号整形电路,产生同频率的矩形波,输入计数器作为时钟。当计数闸门信号高电平有效时,计数器开始计数,

相关主题
文本预览
相关文档 最新文档