基于FPGA的多功能计数器的设计

合集下载

基于FPGA的计数器的程序的设计方案

基于FPGA的计数器的程序的设计方案

基于FPGA的计数器的程序设计方案1.1 FPGA简介FPGA(Field-Progrmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。

它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。

自1985 年Xilinx 公司推出第一片中大规模现场可编程逻辑器件(FP2GA) 至今,FPGA 已经历了十几年的历。

在这十几年的过程中,可编程器件有了惊人的发展:从最初的1200 个可利用门,到今天的25 万可利用门,规模增大了200 多倍; FPGA 供应商也从Xilinx 的一枝独秀,到今天近20 个厂商的分庭抗争;FPGA 从单一的基于SRAM结构到今天各种结构类型的出现,都充分体现了可编程器件这一巨大市场的吸引力。

FPGA 不仅可以解决电子系统小型化、低功耗、高可靠性等问题,而且其开发周期短、开发软件投入少、芯片价格不断降低。

由于目前电子产品生命周期相对缩短,相近功能产品的派生设计增多等特点,促使FPGA 越来越多地取代了ASIC 的市场,特别是对国内众多的科研单位来说,小批量、多品种的产品需求,使得FPGA 成为首选。

1.2 硬件描述语言VHDL特点功能强大、设计灵活。

VHDL具有功能强大的语言结构,可以用简洁明确的源代码来描述复杂的逻辑控制。

它具有多层次的设计描述功能,层层细化,最后可直接生成电路级描述。

VHDL支持同步电路、异步电路和随机电路的设计,这是其他硬件描述语言所不能比拟的。

VHDL还支持各种设计方法,既支持自底向上的设计,又支持自顶向下的设计;既支持模块化设计,又支持层次化设计。

支持广泛、易于修改。

由于VHDL已经成为IEEE标准所规范的硬件描述语言,目前大多数EDA工具几乎都支持VHDL,这为VHDL的进一步推广和广泛应用奠定了基础。

基于fpga的计数器设计代码

基于fpga的计数器设计代码

基于fpga的计数器设计代码基于FPGA的计数器设计代码介绍:来自电子系统设计实验课程的一个项目,要求编写一段基于FPGA 的计数器设计代码,但是考虑到本实验课程源自一门免费的开源课程,因此无法提供实际的设备来验证此设计代码,但是可以通过模拟环境进行测试以确保实现正确设计功能,本文将介绍如何利用FPGA对计数器进行设计。

实现方法:1.首先需要确定将用哪种FPGA芯片来实现计数器功能,例如Xilinx Spartan-6的FPGA。

2.然后确定使用哪种电路来实现计数器功能,可以使用逻辑器件来实现,例如可以使用多路触发器、多变量单位、或是查找表等电路。

3.接下来就是根据前面两步的确定,开始编写实现计数器设计的代码,例如VHDL语言或Verilog语言。

4.最后进行代码仿真,使用设计的代码来仿真计数器的功能,以确保代码完全正确。

示例代码:下面是一段可以实现计数器设计的代码,采用的是VHDL语言:--计数器设计代码LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY COUNTER ISPORT (reset : IN STD_LOGIC;clk : IN STD_LOGIC;count : OUT STD_LOGIC_VECTOR (7 DOWNTO 0));END COUNTER;ARCHITECTURE RTL OF COUNTER ISBEGINPROCESS(clk, reset)BEGINIF (reset='1') THENcount <= '00000000'; --初始值为0ELSIF (clk='1' and clk'EVENT) THENcount <= count + 1; --正常的计数END IF;END PROCESS;END RTL;以上代码可以实现一个八位的计数器,当reset为高电平时,计数器初始值为0,每次当clk上升沿时,计数器递增1,当计数器到达最大值255时,再次上升时从0开始重复计数。

基于FPGA的定时器计数器的设计与实现

基于FPGA的定时器计数器的设计与实现

基于FPGA的定时器/计数器的设计与实现摘要本课题旨在用EDA工具与硬件描述语言设计一个基于Altera公司的FPGA 16位计数器\定时器,可对连续和非连续脉冲进行计数,并且计数器在具有计数定时功能基础上,实现简单脉宽调制功能和捕获比较功能。

本设计采用QuartusII编译开发工具使用VerilogHDL 设计语言进行设计,并采用了由上而下的设计方法对计数器进行设计,体现了VerilogHDL 在系统级设计上自上而下设计风格的优点。

本设计中采用了三总线的设计方案,使设计更加简洁与规范。

本设计所有模块与功能均在Quartus II 7.0_1.4G_Liwz版本下通过编译与仿真,实现了定时器/计数器的设计功能。

关键词:VerilogHDL硬件描述语言;QuartusII;FPGA;定时器/计数器FPGA-based timer / counter design and implementationThis topic aims to use EDA tools to design a 16 bit counter \ timer based on Altera's FPGA by hardware descripe language, which can count continuous and discontinuous pulset, and the counter with the function of capture and PWM. This design uses VerilogHDL language and top-down design method to design the counter on QuartusII compile tool, the design reflect the advantages of VerilogHDL top-down design in system-level design. The design uses a three-bus design, which make design much more specifications and concise. The design and function of all modules are compiled and simulationed on the Quartus II 7.0_1.4G_Liwz versions, and achieve the timer / counter’s features.Key words: VerilogHDL hardware description language; QuartusII; FPGA; timer / counter河北大学2011届本科生毕业论文(设计)目录引言 (1)1 计数器设计方式选择与论证 (4)1.1 计数器实现方案论证 (4)1.2 设计方式选择认证 (4)1.2.1 自下而上的设计方法 (4)1.2.2 自上而下的设计方法 (4)1.2.3 混合的设计方法 (5)2 计数器整体设计方案 (6)3 计数器/定时器各种工作方式的设计 (8)3.1 计数模块 (8)3.1.1 位加计数器模块 (8)3.1.2 位减计数器 (9)3.2 顶层模块设计 (11)4 总结 (19)谢辞........................................ 错误!未定义书签。

基于FPGA的计算器设计教材

基于FPGA的计算器设计教材

基于FPGA的计算器设计摘要本文介绍了一个简单计算器的设计,该设计采用了现场可编程逻辑器件FPGA设计,并基于硬件描述语言VHDL在Altera公司的Quartus Ⅱ软件上实现仿真。

系统由计算部分、存储部分、显示部分和输入部分四个部分组成,计算部分为加法器、减法器、乘法器和除法器,存储部分需要3个存储器来实现:内部累加器(acc)、输入寄存器(reg)以及结果暂存器(ans)。

显示部分由四个七段译码管组成,分别来显示输入数字,输入部分采用外接键盘,由0—9十个数字按键,加减乘除四个运算符按键,一个等号按键和一个清零按键组成的。

通过外部的按键可以完成四位数之内的…加‟、…减‟、…乘‟、…除‟四种功能运算,其结构简单,易于实现。

关键词:FPGA;VHDL;计算器1 概述在国外,电子计算器在集成电路发明后,只用短短几年时间就完成了技术飞跃,经过激烈的市场竞争,现在的计算器技术己经相当成熟。

计算器已慢慢地脱离原来的“辅助计算工具”的功能定位,正向着多功能化、可编程化方向发展,在各个领域都得到了广泛的应用。

用计算器不仅可以实现各种各样复杂的数学计算还可以用来编制、运行程序,甚至解方程组,图形计算器还可以进行图形处理。

计算器内置的软件允许用户进行类似于对计算机的文件和目录管理等操作,允许用户对图形界面进行定制,同时各种新技术也被应用到计算器里使计算器功能越来越强大。

可以说,计算器就是一个“微微型”的计算机。

国内也有厂商利用计算器芯片开发新的产品,但对计算器技术的研究、计算器芯片的设计还处于起步阶段。

计算器的主要功能还是在于“计算”,不妨称之为“低档计算器”。

即便是对这种计算器,很多厂商也只从事计算器的组装、销售业务。

一些IC 设计公司、芯片提供商也开始研究计算器技术。

本次设计基于现场可编程逻辑器件FPGA进行设计,应用硬件描述语言VHDL编程并在Altera公司的Quartus Ⅱ软件上实现仿真。

需要进行计算器的常用运算功能的实现,通过外接键盘输入、LED数码显示来达成运算目的。

基于FPGA和单片机的多功能计数器设计

基于FPGA和单片机的多功能计数器设计

基于FPGA和单片机的多功能计数器设计
一、系统方案
方案1:采用中小规模数字电路构成系统,由计数器构成主要的测量模块。

用定时器组成主要的控制电路。

此方案软件设计简单,但外围芯片过多,且频带窄,实现起来较复杂,功能不强,而且不能程控和扩展。

方案2:采用单片机实现。

被测信号经调理后送入单片机,利用其内部的计数器完成计数,然后再进行数据处理和显示,但单片机在处理高速信号时略显吃力。

方案3:利用FPGA对调理后的被测信号实现高速计数,单片机软件执行高精度浮点数运算并显示。

单片机完成系统的数据处理、逻辑控制和人机交互功能;大规模现场可编程器件(FPGA)实现外围计数功能。

电路框图如图1所示。

基于FPGA的多功能数字钟设计实现

基于FPGA的多功能数字钟设计实现

电子技术课程设计设计报告题目:基于FPGA的多功能数字钟设计实现班级:姓名:学号:指导教师:上交日期:2017.5.21摘要本设计为基于FPGA的多功能数字钟设计实现,具有计时、校对、闹钟、报整点等基础功能,以及日期、秒表、电子琴、延时闹钟、音乐闹钟等拓展功能。

本设计采用EDA技术,以硬件描述语言Verilog HDL为系统逻辑描述语言设计文件,在QUARTUSII工具软件环境下,采用自顶向下的设计方法,由各个基本模块共同构建了一个基于FPGA的数字钟。

系统采用Alera DE0开发板,并外接了蜂鸣器电路。

系统由分频模块、计时模块、闹钟模块、控制模块、显示模块、秒表模块、音乐模块、日期模块、电子琴模块组成。

经编译和仿真所设计的程序,在可编程逻辑器件上下载验证,本系统能够完成需求功能。

关键词:数字时钟,硬件描述语言,Verilog HDL,FPGA目录摘要 (2)目录 (3)1 绪论 (5)1.1背景 (5)1.2项目创意 (7)2需求分析 (8)2.1任务目标 (8)2.2元件清单 (8)2.3小组分工 (9)3系统设计 (9)3.1 系统主板电路分析 (9)3.2模块化设计方案 (16)4 模块电路设计 (17)4.1顶层模块 (17)4.2分频模块 (19)4.2.1 分频模块设计 (19)4.2.2 分频模块仿真 (21)4.3 计时模块 (21)4.3.1 计时模块设计 (21)4.3.2 计时模块仿真 (23)4.4 控制模块 (24)4.4.1 控制模块设计 (24)4.4.2 控制模块仿真 (24)4.5 秒表模块 (24)4.5.1 秒表模块设计 (24)4.6 日期模块 (26)4.6.1 日期模块设计 (26)4.7 电子琴模块 (28)4.7.1 电子琴模块设计 (28)5 系统调试及结果分析 (30)5.1 硬件检查 (30)5.2 软件编译 (30)5.3 调试过程及结果 (31)5.4 调试注意事项 (32)6 总结 (33)6.1课设中出现的问题与解决方案 (33)6.2心得体会 (33)1 绪论1.1 背景现代的社会是一个信息产品广泛使用,产品的性能越来越强大,做工越来越精细,工艺越来越高,更新换代越来越迅速的社会。

基于FPGA的计数器的设计

基于FPGA的计数器的设计
2)管脚分配、编程等过程,观察输出信号;
3)为225计数分频电路建立元件符号。
方法:先设置要建立原件符号的文件为顶层文件(project——set as top),然后生成符号文件(File——create< update——create symbol file for current file),然后在当前工程下元件库中就有所产生的元器件了
实验操作要点及总结(记录实验过程中的重点、难点及遇到的问题、实验结果):
实验成绩
指导老师签字
2、用多个D触发器级联构成多位的二进制计数器,将板载的50MHz时钟225分频,产生周期约1秒的分频时钟,编程下载,用LED灯观察输出的分频信号。
四、实验过程及结果记录
1、D触发器构成的一位二进制计数器
1)原理图
2)记录实验过程和仿真波形
2、D触发器级联构成的225计数电路
1)完成原理图输入编译;
实验报告九
基于FPGA的计数器的设计
一、实验目的
1、学习QuartusII软件的使用;
2、掌握计数器的工作原理和设计方法;
3、掌握用原理图输入设计计数器的全过程。
二、实验设备与器件
Altera公司的CycloneIII系列器件及相应的FPGA开发板,QuartusII软件等。
三、实验内容
1、以D触发器构成的一位二进制计数器(二分频器)为例,熟悉QuartusII软件设计过程;

fpga多通道脉冲计数器的设计与实现

fpga多通道脉冲计数器的设计与实现

fpga多通道脉冲计数器的设计与实现在数字电路设计领域中,FPGA(现场可编程门阵列)被广泛应用于各种应用,其中包括多通道脉冲计数器。

本文将从FPGA多通道脉冲计数器的设计与实现展开讨论,深入探讨其原理、技术和应用。

1. 引言FPGA多通道脉冲计数器是一种基于FPGA技术的高性能计数器,可同时对多个输入通道的脉冲信号进行计数和分析。

其设计与实现涉及到数字电路设计、时序控制、信号处理等多个方面,具有很高的工程价值和学术研究意义。

2. FPGA技术概述FPGA是一种可编程逻辑器件,具有灵活可编程、并行处理能力强、资源丰富等特点,广泛用于数字信号处理、通信、图像处理等领域。

在多通道脉冲计数器设计中,FPGA的并行计算和资源复用能力将发挥重要作用。

3. 多通道脉冲计数器原理多通道脉冲计数器是指能够同时对多个输入通道的脉冲信号进行计数和统计的计数器。

其原理是通过FPGA多通道输入模块对输入信号进行采样和处理,然后将处理后的数据传输至计数模块进行计数和存储,最终实现对多通道脉冲信号的精确计数和分析。

4. 设计与实现在实际设计中,多通道脉冲计数器的FPGA实现需要考虑到输入通道数、时钟频率、计数精度、数据存储等多个方面的问题。

通过适当的电路设计和FPGA编程,可以实现高性能、高稳定性的多通道脉冲计数器。

5. 应用与展望多通道脉冲计数器在核物理实验、粒子物理研究、医学影像等领域有着广泛的应用前景,其FPGA实现技术将成为未来研究的热点之一。

6. 总结与展望通过本文的讨论,我们全面了解了FPGA多通道脉冲计数器的设计与实现,明确了其原理、技术特点和应用前景。

随着FPGA技术的不断发展和应用,多通道脉冲计数器将在更多领域展现出其重要作用。

个人观点:FPGA多通道脉冲计数器的设计与实现是一个充满挑战和机遇的领域,需要对数字电路、信号处理、FPGA编程等多个方面有深入的理解和应用。

随着科学技术的发展,多通道脉冲计数器将在更多领域得到应用,为相关领域的研究和应用带来新的机遇和突破。

fpga多通道脉冲计数器的设计与实现

fpga多通道脉冲计数器的设计与实现

标题:FPGA多通道脉冲计数器的设计与实现一、引言在现代科学研究和工程应用中,脉冲计数器作为一种重要的计数设备,被广泛应用于实验室测量、核物理学、天文学、粒子物理学以及通信系统等领域。

随着科学技术的进步,对脉冲计数器的性能和功能要求也越来越高。

本文将主要讨论FPGA多通道脉冲计数器的设计与实现,探讨其原理、架构以及实际应用。

二、多通道脉冲计数器概述多通道脉冲计数器是指同时能够计数多个输入通道脉冲信号的计数器。

它通常由多个计数通道、数字信号处理单元和控制单元组成。

在实际应用中,多通道脉冲计数器可以用于不同的测量场景,例如时间分辨测量、事件计数、频率测量等。

三、FPGA在脉冲计数器中的应用FPGA作为一种可编程逻辑器件,具有高速、低功耗、灵活性强等特点,被广泛应用于脉冲计数器的设计与实现中。

通过灵活的编程和并行计算能力,FPGA可以实现多通道脉冲计数器的同时处理多路信号,大大提高了计数器的计数速度和计数精度。

四、多通道脉冲计数器的设计要点1. 采样与计数:多通道脉冲计数器需要同时对多个信号进行采样,并将采样结果进行计数。

在设计时需要充分考虑采样频率、计数器精度以及信号同步等问题。

2. 数据处理与存储:多通道脉冲计数器还需要对采样后的数据进行数字信号处理,并将处理后的数据进行存储或后续分析。

在设计中需要考虑数据处理算法和存储器的容量。

3. 接口与通信:多通道脉冲计数器通常需要与外部设备进行数据交互,因此在设计中需要考虑接口标准和通信协议,以实现与外部设备的可靠通信。

五、FPGA多通道脉冲计数器的实现在实际设计中,为了实现多通道脉冲计数器,可以采用FPGA作为核心处理器,通过硬件描述语言(HDL)对其进行编程。

在编程过程中,需要考虑时序控制、数据处理、中断处理等多个方面,以保证多通道脉冲计数器的可靠性和稳定性。

六、实际应用案例以核物理实验中的脉冲计数器设计为例,我们可以看到FPGA多通道脉冲计数器在实际科学研究中的应用。

数字电子技术项目教程 第2版 项目八 用FPGA实现计数器

数字电子技术项目教程 第2版 项目八 用FPGA实现计数器

1、掩模式只读存储器(固定ROM)
❖ 用户按照使用要求确定存储器 的存储内容,存储器制造商根据 用户的要求设计掩模板,利用掩 模板生产出相应的ROM。它在使 用时内容不能更改,只能读出其 中的数据。
2、可编程只读存储器(PROM)
❖ PROM是一种仅可进行一次编程的只读存储器,用户通过对 其内部存储单元编程一次,可获得所需存储内容的ROM。
❖ 2)地址译码器 在RAM中,地址的选择是通过地址译码器来实现的。地 址译码器通常有字译码器和矩阵译码器两种。在大容量存储器中,通常 采用矩阵译码器,这种译码器将地址分为行地址和列地址译码器两部分, 行地址译码器对行地址译码,而列地址译码器对列地址译码,行、列译 码器的输出为存储器的行、列选择线,由它们共同选择欲读/写的存储单 元。
项目简介:
❖ 可编程逻辑器件(programmable logic device,PLD)是20 世纪80年代发展起来的有划时代意义的新型逻辑器件,PLD 是一种由用户编程以完成某种逻辑功能的器件。不同种类的 PLD大多具有与、或两级结构,且具有现场可编程的特点。 作为一种理想的设计工具,可编程逻辑器件给数字系统的设 计者带来了很多方便。使用这类器件,可及时方便地研制出 各种所需要的逻辑电路,它简化了系统设计,保证了系统的 高性能、高可靠性、有效地降低了系统的成本。
❖ 3)片选和读/写控制电路 ❖ 每片RAM的存储容量极为有限,而在实际应用中通常需要大容量存储器,
故工程中解决大容量存储器的方法是用多片RAM,通过一定的联接方式 组成大容量存储系统。在这种情况下,当任一时刻进行读/写操作时,通 常只与其中的一片或几片RAM交换数据,为此,在RAM中设有片选端 (低电平有效)。若在某片RAM的端加低电平,则该RAM就被选中,可对 其进行读/写操作,否则该RAM不工作,它与存储系统隔离。

基于FPGA的计数器设计

基于FPGA的计数器设计

EDA课程设计工程名称基于FPGA地计数器地设计专业班级通信102班学生姓名青瓜指导教师2013年 5 月28 日摘要本课程设计要完成一个1 位十进制计数器地设计.计数器是大规模集成电路中运用最广泛地结构之一.在模拟及数字集成电路设计当中, 灵活地选择与使用计数器可以实现很多复杂地功能, 可以大量减少电路设计地复杂度和工作量.讨论了一种可预置加减计数器地设计, 运用Ver ilog H DL 语言设计出了一种同步地可预置加减计数器, 该计数器可以根据控制信号分别实现加法计数和减法计数, 从给定地预置位开始计数, 并给出详细地VerilogHDL 源代码.最后, 设计出了激励代码对其进行仿真验证, 实验结果证明该设计符合功能要求, 可以实现预定地功能.关键词:计数器;VerilogHDL;QuartusⅡ;FPGA;AbstractThis course is designed to complete a one decimal counter design. The counter is LSI structure in one of the most widely used. In the analog and digital IC designs, the flexibility to select the counter can achieve a lot with the use of complex functions, can significantly reduce the complexity of circuit design and workload. Discusses a presettable down counter design, using Ver ilog H DL language designed a synchronous presettable down counter, the counter can be implemented according to the control signals are counted Addition and subtraction counting from a given the preset starts counting, and gives detailed VerilogHDL source code. Finally, the design of the incentive code its simulation, experimental results show that the design meets the functional requirements, you can achieve the intended function.Key words: Decimal counter。

基于FPGA的多功能计数器的设计_毕业设计

基于FPGA的多功能计数器的设计_毕业设计

摘要本文介绍了一种以大规模可编程逻辑芯片为设计载体,由顶层到底层设计的多功能数字频率计。

该频率计采用单片机与频率测量技术相结合,大大提高了测量的精度。

本文主要包括该频率计的设计基础和实现方法两部分内容,描述了它的设计平台、工作原理和软硬件实现。

在硬件上,利用Altera 公司的FPGA器件为主控器;在软件上,采用VHDL硬件描述语言编程,极大地减少了硬件资源的占用。

该数字频率计具有频率测量、周期测量、脉宽测量和占空比测量等多种功能。

仿真与分析结果表明,该数字频率计性能优异,软件设计语言灵活,硬件简单,速度快。

关键词 FPGA 等精度频率计 VHDLAbstractThis article introduced one kind as designs the carrier take the large-scale programmable logic chip, the multi-purpose digital frequency meters which designs from the top layer to the first floor. This frequency meter uses the monolithic integrated circuit and the frequency measurement technology unifies, increased the survey precision greatly. This article mainly includes this frequency meter's design basis and realizes the method two partial contents, described its design platform, the principle of work and the software and hardware realizes. On the hardware, uses Altera Corporation's FPGA componentis the master controller; On the software, uses the VHDL hardware description language programming, reduced hardware source occupancy enormously. This digital frequency meter has the frequency measurement, the cyclical survey, the pulse width survey and the dutyfactor survey and so on many kinds of functions. The simulation and the analysis result indicated that this digital frequency meter performance is outstanding, the software design language is flexible, the hardware is simple, the speed is quick.Keywords FPGA Equal Precision Measurement Frequency meter VHDL目录第一章概述 (1)1.1多功能计数器现状 (1)1.2频率测量方法简介 (2)第二章软件开发平台VHDL简介 (5)2.1VHDL的发展 (5)2.2VHDL的特点 (5)2.3VHDL语言结构 (7)2.3.1 实体(ENTITY) (7)2.3.2 结构体(ARCHITECTURE) (8)2.4VHDL软件设计简介 (10)第三章硬件开发平台现场可编程门阵列(FPGA)简介 (12)3.1可编程逻辑器件 (12)3.2现场可编程门阵列(FPGA) (13)3.2.1 FPGA的器件结构与工作原理 (14)3.2.2 基于EDA平台的FPGA开发流程 (18)第四章多功能计数器的理论基础和总体设计方案 (21)4.1常用频率测量方法及其误差分析 (21)4.1.1 直接测频法 (21)4.1.2 测周法原理 (23)4.1.3 等精度测频原理 (25)4.2脉冲宽度和占空比测量原理 (28)4.3总体设计 (29)第五章多功能计数器的软件设计和硬件设计 (32)5.1软件设计 (32)5.1.1 测频专用模块工作功能描述及VHDL程序 (33)5.1.2 脉冲宽度和占空比测量模块 (37)5.1.3 GATE (41)5.1.4 测频/测周期实现 (42)5.2硬件设计 (43)5.2.1 程控放大电路 (44)5.2.2 过零比较电路 (45)5.2.3 测频主系统实现 (46)总结 (48)谢辞 (49)参考文献 (50)第一章概述在信息技术高速发展的今天,电子系统数字化已成为有目共睹的趋势。

基于单片机和FPGA的多功能计数器的设计

基于单片机和FPGA的多功能计数器的设计

基于单片机和FPGA的多功能计数器的设计频率、周期、相位是沟通信号的3大要素。

普通状况下,分析沟通信号需讨论其频率与相位,而周期可挺直由频率计算。

对于正弦信号的频率、相位测量精确度的要求不断提高,而随着技术的进展,对其测量办法仍不断改进完美。

较早采纳挺直频率测量的测频法,为了保证测试精度,普通低频信号采纳测周期法,而高频信号采纳测频法,测量很不便利。

而相位测量最初采纳测量信号一个周期参数的办法,该办法精度适用于低频,而高频时误差变大。

该多功能计数器采纳等精度测量法来测量信号频率,同时采纳基于和的计数相位测量办法完成精确相位测量,并能在液晶实时显示当前信号的频率、周期和相位差。

该计数器将正弦信号频率和相位的测量于一体,精度高,有用性强。

2 计划设计论证2.1 频率测量等精度测量法的测量时光是人为设定的,闸门的开启和闭合由被测信号的升高沿来控制,测量精度与被测信号频率无关,因而可以保证在囫囵测量频段内的测量精度保持不变。

被测信号的计数是同步的,对于基准信号来说,存在±1的误差,只要计数足够大,可满足高精度要求。

2.2 相位测量相差一时光测量法是将整形后的两路方波送入FPGA,分离检验出两个信号的升高沿,通过FPGA内部计数器在两个信号的升高沿间对晶振举行计数。

在低频段时,RC滤波的输出波动很大,该相位测量通过采纳高频率的计数脉冲,相位受信号频率影响小,可实现较高的测量精度。

3 系统硬件电路设计该系统硬件电路设计是由峰值检波采样、整形比较、宽带通道放大、频率测量、相位测量、显示等模块构成。

低频LM311对1 Hz到2 MHz 的信号整形效果较好,高频比较器TL3116对200 kHz以上的信号整形效果较好。

为实现1 Hz到10 MHz信号的频率测量,该系统以1为0.01~第1页共3页。

EDA实验指导 基于FPGA的计数器设计

EDA实验指导 基于FPGA的计数器设计

FPGA实验指导及记录实验一基于FPGA的计数器的设计1、实验目的:(1)掌握QuartusⅡ软件的设计流程(2)学习原理图设计方法和波形仿真方法2、实验任务:采用原理图法设计一个十进制计数器,完成时序仿真和硬件实现。

3、实验步骤:(1)新建工程双击QuartusⅡ9.1(64-Bit)图标,打开软件,选择File→New Project Wizard,如图1-1所示,单击Next,进入图1-2所示对话框,完成工程存储文件夹建立、工程名、顶层实体名的设置。

(注:可通过单击…浏览按键新建存储文件夹,文件夹放置于D盘或E盘根目录下,目录中不能有中文名称,取名最好具有可读性。

)本例存储在E盘cnt_10文件夹中,文件名和顶层实体名均为cnt_10。

图1-1新建工程向导图1-2 新建文件夹/工程名/顶层实体单击Next,进入文件添加窗口,本例还没有设计文件,直接单击Next进入下一步设置,如图1-3所示,进行器件型号选择,本例采用EP3C16Q240C8,(建议先在Family 中选择CycloneⅢ系列,然后在右侧过滤选项中选择pin count 240缩小选择范围)。

单击Next进入下一步,设置设计/仿真/时序分析工具,本例不需要,直接单击Next,进入下一步。

观察设置细节,单击Finish完成设计。

图1-3 器件型号选择图1-4 完成工程设置(2)新建设计文件选择File→New,打开如图1-5所示对话框,选择Block Diagrom原理图设计文件,打开原理图设计文件。

双击空白处,打开symbol对话框,选择74390,单击OK后,拖动鼠标可放置于原理图任意空白处。

进一步添加输入端input/输出端output,添加完成后如图1-8所示。

图1-5 新建原理图文件图1-6 选择74390图1-7添加输入/输出端 图1-8 放置所需元器件将鼠标放置于器件端口处,鼠标即会变为“+”字型,此时可拖动鼠标进行连线。

基于FPGA的计数器设计说明

基于FPGA的计数器设计说明

EDA课程设计项目名称基于FPGA的计数器的设计专业班级通信102班学生青瓜指导教师2013年 5 月28 日摘要本课程设计要完成一个 1 位十进制计数器的设计。

计数器是大规模集成电路中运用最广泛的结构之一。

在模拟与数字集成电路设计当中, 灵活地选择与使用计数器可以实现很多复杂的功能, 可以大量减少电路设计的复杂度和工作量。

讨论了一种可预置加减计数器的设计, 运用Ver ilog H DL 语言设计出了一种同步的可预置加减计数器, 该计数器可以根据控制信号分别实现加法计数和减法计数, 从给定的预置位开始计数, 并给出详细的 VerilogHDL 源代码。

最后, 设计出了激励代码对其进行仿真验证, 实验结果证明该设计符合功能要求, 可以实现预定的功能。

关键词:计数器;VerilogHDL;QuartusⅡ;FPGA;AbstractThis course is designed to complete a one decimal counter design. The counter is LSI structure in one of the most widely used. In the analog and digital IC designs, the flexibility to select the counter can achieve a lot with the use of complex functions, can significantly reduce the complexity of circuit design and workload. Discusses a presettable down counter design, using Ver ilog H DL language designed a synchronous presettable down counter, the counter can be implemented according to the control signals are counted Addition and subtraction counting from a given the preset starts counting, and gives detailed VerilogHDL source code. Finally, the design of the incentive code its simulation, experimental results show that the design meets the functional requirements, you can achieve the intended function.Key words:Decimal counter; VerilogHDL; Quartus Ⅱ; FPGA;目录摘要IAbstractII第1章绪论11.1计数器的种类11.2计数器的发展1第2章设计环境22.1 Quartus II22.1.1 软件简介22.1.2 功能22.2 Verilog HDL硬件描述语言42.2.1 语言简介42.2.2 主要能力42.2.3 语言用途62.2.4 Verilog HDL的发展历史62.2.5 主要应用72.3 Electronic Design Automation8第3章设计思路103.1输入模块103.2 寄存器模块103.3 输出模块113.4 计数模块11第4章程序设计124.1 主程序124.3 always语句134.4 if-else语句13第5章波形仿真13结论14参考文献15附录116致16第1章绪论1.1计数器的种类1、如果按照计数器中的触发器是否同时翻转分类,可将计数器分为同步计数器和异步计数器两种。

基于FPGA的多位格雷码计数器

基于FPGA的多位格雷码计数器

基于FPGA的多位格雷码计数器第9卷第23期2009年l2月1671—1819(2009)23—7158—04科学技术与工程ScienceTechnologyandEngineeringV o!.9No.23Dec.2009①2009Sci.Tech.Engng.基于FPGA的多位格雷码计数器李莉(西安邮电学院通信工程系,西安710061)摘要根据格雷码的特性,介绍了一种用拆分计数方式实现多位格雷码计数器的方法.在QuartusⅡ开发平台上使用VHDL编程实现32位格雷码计数器,并得到仿真波形.实验结果表明多位格雷码计数器能在时钟频率很高的情况下准确计数,明显消除毛刺的产生.和普通的二进制计数器相比具有很好的稳定性和可靠性,为计数器的设计提供了参考.关键词格雷码计数器拆分计数多位FPGA中图法分类号TP311.1;文献标志码A在现代的FPGA开发巾,随着设计规模的不断扩大,一个系统往往包含多个时钟.随着设计功能的不断增多,各个功能模块的时钟驱动也更加复杂.多个功能模块协调丁作带来的一个问题就是,如何设计出符合要求的时间控制模块.使用计数器是解决这个问题的一种简便的解决方案.二进制计数器是在时钟控制中广泛应用的一种方法,可以在设计中被调用来实现系统在一定时间间隔后完成动作,但是计数误差较大,数据变化中有较大的毛刺产生.现介绍一种基于FPGA的多位格雷码计数器的设计方法,使用这种方法可以设计出高速,高稳定性的计数器.1格雷码的特点格雷码(GrayCode)又称作葛莱码,是一一种无权码,其编码特点是任意两相邻代码间只有一位数码不同,这对代码的转换和传输很有利,因为它大大减少由一个状态到下一个状态时电路巾的模糊状态,提高了电路的抗十扰能力,所以格雷码是一种错误最小化的编码l】J.典型格雷码是一?种具有反2009年8月14只收到作者简介:李莉(1972一),女,汉族,河北省唐县人,硕卜毕,观工作单位:西安邮电学院通信T群系E-mail:***************射特性和循环特性的单步自补码,反射特性是指格雷码码组对半折叠,除最高位不同外,其它位对应相同(上部分最高位为0,下部分最高位为1),折叠处如同一个镜面,反射特性使得求反非常方便.循环特性是指最后一个码组与第一个码组的码距也为1,是相邻码组,循环单步特性消除了随机取数时出现重大误差的可能.2格雷码计数器的分析一个系统的各个模块要在满足要求的时钟,数据控制下正常工作.根据所要计数的日的不同,可以将计数器分为两大类:一类用来定时,用在时序的产生或控制.根据实际的功能要求,在一定的时间段中完成某个命令.如读写寄存器的动作以及数据传输的过程中都是有时间限制的.另~?类是用来计数,用在脉冲沿的计数或地址的判断,如判断FIFO传输来的数据量是否足够或者FIFO的读/写地址是否已经达到满状态,来决定F一步动作.计数器模块在整个系统中被频繁地调用,所以计数器的设计对整个系统至关重要.对计数器的要求是计时准确,从几_卜纳秒的计时间隔到儿毫秒的等待时间都应,j,正确.对于大量的计数,例如传输数据个数的判断,少则使刚几位的计数器多则二卜几位的计数器,需要高速稳定运行,尽量减少毛23期李莉:基于FPGA的多位格雷码计数器刺的干扰.如表1所示,是普通二进制计数器与格雷码计数器的比较.表1二进制计数器和格雷码计数器的比较二进制计数器(十进制/二进制码)格雷码计数器(十进制/二进制码) O/00001/00013/00112/001O6/011O7/O11l5/01O14/01OO12/1100普通的二进制计数器虽然设计简单,但由于计数时变化位不固定,来一次时钟,所有的数据位都可能变化.再加上FPGA内部延时不固定的原因,使得计数输出数据的毛刺很明显,并且延时很长时间后才会得到正确的数据,很容易影响计数的正确性.例如,当十进制数由7变为8时,若采用的是二进制码,则其编码将由0111变为1000.此时,四位二进制状态都发生变化,由于各位的状态不可能同时发生改变,于是有可能出现下列情况:0111|÷0101 —100—1100-~1000.尽管最终结果是从7(O111)变到8(1000),但出现错误的中间转换过程,从而产生毛刺.若无其他措施禁止这些中间错误输出,如果时钟恰好在数据变化过程采样,则输出结果会产生错误数值.为了解决这一问题,采用格雷码计数器来代替普通的二进制计数器.格雷码计数时每次只有一位数据发生变化,消除了竞争冒险产生的条件,有效地避免了毛刺的产生.例如,当十进制数由7变为8时,其对应的格雷码将从0100变为1100,只有一位二进制数发生改变,也无中间错误结果出现.因为转换成十进制数的方式与二进制的转换方法不同,因此进行比较判断的数据也不同.尽管格雷码计数器的设计较为复杂,占用FPGA内部资源更多.但是采用格雷码计数器可以大大增强系统的稳定性和可靠性.根据格雷码计数相邻的码字中只有一个比特会发生变化的特点,实现格雷码计数器的思路就是:将相应的普通二进制码转换成对应的格雷码.在二进制计数过程中,通过异或关系将其转换为格雷码再输出,而二进制数并不输出,这样就得到了格雷码计数器j.从而有效地避免了毛刺的产生,保证了计数的稳定和可靠.3多位格雷码计数器在某些情况下,计数器要计时几毫秒的时间再做出动作,或者要计数大量的传输数据再做判断.这样计数器的计数范围就要求很大(比如32位计数器),如果系统要求计数器的工作频率很高,那么同样是格雷码计数器也会有毛刺产生,带来较大的误差.为了提高多位格雷码计数器的速度,又要稳定准确地运行,所以采用把大位数的计数器拆分成几个小的计数器的组合.设计中采用把一个32位的格雷码计数器拆分成一个4位计数器,构成32位的低4位;一个28位计数器,构成32位的高28位.没有拆分格雷码计数器之前,虽然格雷码计数时每次只有一位数据发生变化,但是每来一次时钟,所有的位都要参与动作,即使在数值还没有计到其它位时,这样在工作频率很高的情况下就会不稳定.如果拆分格雷码计数器,低4位和高28位分开来计数,高28位的计数使能信号来自于低4位的进位信号和系统时钟的组合.当低4位每16个时钟脉冲向高28位输出一个进位脉冲时,高28位的计数使能信号才有效,此时才会进行一次计数.因为高28位计数器不用每个系统时钟都参与动作,只要低4位的进位信号在16个时钟周期内传到即可,这样就相当于高28位计数器在16分频后的时钟下计数,从而使计数器计数准确稳定.通过拆分计数器的方法,可以设计出速度更高,位数更多的格雷码计数器.拆分计数方式实现多位格雷码计数器的方法与几个二进制计数器组合的方法是不一样的,二进0lO1OlO1OO0lO0●0㈣……㈣/////////O12345678科学技术与工程9卷制计数器的组合比较简单,只要将低位计数器的进位信号作为高位计数器的使能信号,而不需要对输出的数据位进行修改J.而实现多位格雷码计数器的方法比较复杂,需要对低位计数器的计数数据做出修改.分析一个多位格雷码计数器,当计数个数逐渐增加时,计数输出数据的变化如表2所示.表2拆分格雷码计数器的计数多位格雷码计数器高4位多位格雷码计数器低4位可以看出,当低4位格雷码计数器计数到1000时,整个多位格雷码计数器为00001000.来一次时钟,其对应的格雷码将变为00011000,只有一位二进制数发生改变,但是低4位格雷码计数器仍为1000. 同样,多位格雷码计数器达到00010000时,下一次计数为00110000,低4位格雷码计数器仍为0000.因此拆分计数方式中,低位的格雷码计数器计数方式是不同的,需要在编程中做出修改.实现了拆分计数方式的低4位格雷码计数器的VHDL稃序如下:if(uI)_corn=~1)then一一递增部分if(gray—code—xhdll="1001")thenca&lt;=1:elseca&lt;=0:endif:Na『IIel0elk1龃234圈gray_code多9tog_xhdl2:=(0rHERS=&gt;0);F0RiIN0TOSIZE1L00PFORjINiTOSIZE一1LO()Ptog—xhdl2(i):=tog_xhdl2(i)XORgray—code—xhdll(j); ENDLO0P;tog_xhdl2(i):=NOTtog—xhdl2(i);F0RkIN0T0i一】L00Ptog_xhdl2(i)::tog—xhdl2(i)ANDN0...1tog~xhdl2(k) ENDLOOP;ENDLOOP;if(tog_xhdl2(SIZE一2DOWNTO0)= 00000000000000000000")thentog—xhdL2(SIZE一1):=~1;endif;gray—codexhdll&lt;:graycode_xhdllXORtog_xhdl2if(gray—codexhdl1="1000")thenup—COIl1&lt;=0;gray—code—xhdll&lt;="1000";endif;一一保持1000不变4仿真结果在QuatursⅡ平台下对格雷码计数器的低4位计数模块和高28位计数模块进行编译和仿真,最后得到32位的格雷码计数器.图1是32位格雷码计数器的低4位计数模块波形图:计数器在100MHz的时钟驱动下工作,计数器数值递增,当计数达到1000时,产生进位信号,将使高28位的计数使能信号有效.下一个时钟保持1000不变,随后计数器数值递减,当计数达到0000时,再产生进位信号.下一个时钟保持0000不变,计数器数值冉递增,重复开始的过程.200Pns210p220Pns230lDns240..0n5广一_]广]广]广]广]101I×1001:-1000×1001Il图I低4位格需码计数的波形O0O1叭叭∞∞∞∞叭㈣㈣㈣㈣23期李莉:基于FPGA的多位格雷码计数器7l61Hl蠲P0elk1aclr234妇5carry8团~ty_code2500ns260onsIlI10000000000000000000000000000i000×0000000000O000000000000000叭1000 图232位格雷码计数器的波形图2是32位格雷码计数器的波形图:计数器将4位计数模块和28位计数模块组合构成.计数器在100MHz的时钟驱动下工作,计数器的32位数据递增,每次只有一位数据发生变化,计数器计数准确稳定,没有毛刺产生.5总结设计详细介绍了基于FPGA的多位格雷码计数器的实现方法.提出了一种利用拆分计数方式来解决多位的问题,并采用VHDL进行程序设计.在QuartusII开发平台对设计结果进行仿真,结果显示采用拆分计数方式有效地解决了格雷码计数器在计数范围很大,工作频率很高的情况下有较大误差的问题.32位格雷码计数器能在时钟频率很高的情况下准确计数,消除毛刺的产生.这种多位格雷码计数器能够应用于各种时间控制和计数的系统中,具有很好的稳定性和适应性,对于计数器的设计具有很好的参考意义.参考文献1叶卫东,谢建华.格雷码计数器的低功耗分析与设计化,2006;25(4):64—662李晓娟.基于FPGA的高速数据记录系统的研究.北京院研究生院学位沦文,2007兵1二自动中国科学3鲍家元,毛文林.数字逻辑(第二版).北京:高等教育出版社, 2002:74--754宋沛.格雷码到BCD码的转换.机电程技术,2003;32(5): 99—1O05沙燕萍,阜甫伟,曾烈光.异步FIFO的VHDL设计.电子技术应用,2001;(6):l3一l76侯伯亨,顾新.VHDL硬件描述语言与数字逻辑电路设计(第二版).西安:西安电子科技大学出版社,2001:165—217 MultibitGrayCodeCounterBasedonFPGALILi(Xi'anUniversityofPosts&amp;Telecommunications,Xi'an710061,P.R.China) [Abstract]AccordingtothecharacteristicsofGraycode,amethodofseparatecountispresent ed.The32-bit GraycodecounterisprogrammedwithVHDLontheplatformofQuartus1I,andthesimulatio nwaveformsareachieved.TheresultsindicatethatGraycodecountercountsaccuratelyinthecaseofhighcloc k~equencyandob—paredwiththeordinarybinarycounter,ithas highstabilityandflexibility.Thismethodisareferencetodesignofeounter.[Keywords]GraycodecounterseparatecountmuhibitFPGA。

基于FPGA的多功能数字钟设计

基于FPGA的多功能数字钟设计

目录第一章绪论 ............................................. 错误!未定义书签。

1.1选题背景........................................... 错误!未定义书签。

1.1.1 课题相关技术的发展............................. 错误!未定义书签。

1.1.2 课题研究的必要性............................... 错误!未定义书签。

1.2课题研究的内容..................................... 错误!未定义书签。

第二章 FPGA简介......................................... 错误!未定义书签。

2.1FPGA概述 .......................................... 错误!未定义书签。

2.2FPGA基本结构 ...................................... 错误!未定义书签。

2.3FPGA系统设计流程 .................................. 错误!未定义书签。

2.4FPGA开发编程原理 .................................. 错误!未定义书签。

2.5Q UARTUS II设计平台................................... 错误!未定义书签。

2.5.1 软件开发环境及基本流程......................... 错误!未定义书签。

2.5.2 具体设计流程................................... 错误!未定义书签。

第三章数字钟总体设计方案 ............................... 错误!未定义书签。

毕设-基于FPGA的计算器设计

毕设-基于FPGA的计算器设计

目录摘要 (I)Abstract (II)第一章引言 (1)1.1 课题研究的目的与意义 (1)1.2 国内外发展现状 (1)1.3 课题的主要技术路线 (2)第二章FPGA技术及硬件描述语言 (3)2.1FPGA技术的发展现状及与CPLD的比较 (3)2.2FPGA设计方法 (5)2.3利用硬件描述语言(HDL)的硬件电路设计方法 (6)2.4VHDL语言的特点 (7)2.5Quartus Ⅱ概述及其设计流程 (7)第三章系统总体设计 (10)3.1计算器的计算部分 (10)3.2计算器的存储部分 (10)3.3计算器的显示部分 (11)3.4计算器的输入部分 (12)第四章计算器的VHDL设计 (14)4.1 加法器的设计与仿真 (14)4.2 减法器的设计与仿真 (15)4.3 乘法器的设计与仿真 (16)4.4 除法器的设计与仿真 (18)第五章结束语 (20)致谢............................................................................................................................... 错误!未定义书签。

参考文献 . (21)附录 (22)基于FPGA的计算器设计摘要:本文介绍了一个简单计算器的设计,该设计采用了现场可编程逻辑器件FPGA设计,并基于硬件描述语言VHDL在Altera公司的Quartus Ⅱ软件上实现仿真。

系统由计算部分、存储部分、显示部分和输入部分四个部分组成,计算部分为加法器、减法器、乘法器和除法器,存储部分需要3个存储器来实现:内部累加器(acc)、输入寄存器(reg)以及结果暂存器(ans)。

显示部分由四个七段译码管组成,分别来显示输入数字,输入部分采用外接键盘,由0—9十个数字按键,加减乘除四个运算符按键,一个等号按键和一个清零按键组成的。

以计数器为32位为例:FPGA中计数器设计探索

以计数器为32位为例:FPGA中计数器设计探索
以计数器为 32 位为例:FPGA 中计数器设计探索
我知道,我对与电子有关的所有事情都很着迷,但不论从哪个角度看,今 天的现场可编程门阵列(FPGA),都显得“鹤立鸡群”,真是非常棒的器件。如 果在这个智能时代,在这个领域,想拥有一技之长的你还没有关注 FPGA, 那幺世界将抛弃你,时代将抛弃你。 FPGA 中计数器设计探索,以计数器为 32 位为例: 第一种方式,直接定义 32 位计数器。 reg [31:0]count;
quartus ii 下的编译,资源消耗情况。 85C 模型下的时钟频率。 0C 模型下的时钟频率。 chip planner 下资源分布情况。 第二种方式,定义 2 个 16 位计数器。 reg [15:0]count1,count2; quartus ii 下的编译,资源消耗情况。 85C 模型下的时钟频率。 0C 模型下的时钟频率。 chip planner 下资源分布情况 从上述两种情况来看,结合 C4 内部 LAB 的结构,两种方式消耗资源一 样多,两种模型下的时钟频率比较接近。
值得注意的是,以上测试是在资源足够频率不高的条件下测试的。根据经
验,当资源使用较多,时钟频频较高时,建议使用方式二。
ቤተ መጻሕፍቲ ባይዱ
<!--
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

本科毕业论文(设计)题目:基于FPGA的多功能计数器的设计学院:自动化工程学院专业:电子信息科学与技术姓名:#############指导教师:############2010年6 月8 日基于FPGA的多功能计数器的设计The Design of Multi-function Counter Based on FPGA摘要本文介绍了一种以大规模可编程逻辑芯片为设计载体,由顶层到底层设计的多功能数字频率计。

该频率计采用单片机与频率测量技术相结合,大大提高了测量的精度。

本文主要包括该频率计的设计基础和实现方法两部分内容,描述了它的设计平台、工作原理和软硬件实现。

在硬件上,利用Altera公司的FPGA器件为主控器;在软件上,采用VHDL硬件描述语言编程,极大地减少了硬件资源的占用。

该数字频率计具有频率测量、周期测量、脉宽测量和占空比测量等多种功能。

仿真与分析结果表明,该数字频率计性能优异,软件设计语言灵活,硬件简单,速度快。

关键词FPGA 等精度频率计 VHDLAbstractThis article introduced one kind as designs the carrier take the large-scale programmable logic chip, the multi-purpose digital frequency meters which designs from the top layer to the first floor. This frequency meter uses the monolithic integrated circuit and the frequency measurement technology unifies, increased the survey precision greatly. This article mainly includes this frequency meter's design basis and realizes the method two partial contents, described its design platform, the principle of work and the software and hardware realizes. On the hardware, uses Altera Corporation's FPGA component is the master controller; On the software, uses the VHDL hardware description language programming, reduced hardware source occupancy enormously. This digital frequency meter has the frequency measurement, the cyclical survey, the pulse width survey and the dutyfactor survey and so on many kinds of functions. The simulation and the analysis result indicated that this digital frequency meter performance is outstanding, the software design language is flexible, the hardware is simple, the speed is quick.Keywords FPGA Equal Precision Measurement Frequency meter VHDL目录第一章概述 (1)1.1多功能计数器现状 (1)1.2频率测量方法简介 (2)第二章软件开发平台VHDL简介 (3)2.1VHDL的发展 (3)2.2VHDL的特点 (3)2.3VHDL语言结构 (4)2.3.1 实体(ENTITY) (4)2.3.2 结构体(ARCHITECTURE) (5)2.4VHDL软件设计简介 (6)第三章硬件开发平台现场可编程门阵列(FPGA)简介 (7)3.1可编程逻辑器件 (7)3.2现场可编程门阵列(FPGA) (7)3.2.1 FPGA的器件结构与工作原理 (8)3.2.2 基于EDA平台的FPGA开发流程 (10)第四章多功能计数器的理论基础和总体设计方案 (13)4.1常用频率测量方法及其误差分析 (13)4.1.1 直接测频法 (13)4.1.2 测周法原理 (15)4.1.3 等精度测频原理 (15)4.2脉冲宽度和占空比测量原理 (17)4.3总体设计 (18)第五章多功能计数器的软件设计和硬件设计 (20)5.1软件设计 (20)5.1.1 测频专用模块工作功能描述及VHDL程序 (21)5.1.2 脉冲宽度和占空比测量模块 (23)5.1.3 GATE (26)5.1.4 测频/测周期实现 (26)5.2硬件设计 (27)5.2.2 过零比较电路 (28)5.2.3 测频主系统实现 (29)总结 (31)谢辞 (32)参考文献 (33)第一章概述在信息技术高速发展的今天,电子系统数字化已成为有目共睹的趋势。

从传统的应用中小规模芯片构成电路系统到广泛地应用单片机,直至今天FPGA/CPLD在系统设计中的应用,电子设计技术已迈入了一个全新的阶段。

FPGA/CPLD不仅具有容量大、逻辑功能强的特点,而且兼有高速、高可靠性。

同时使得硬件的设计可以如软件设计一样方便快捷,使电子设计的技术操作和系统构成在整体上发生了质的飞跃。

随着FPGA/CPLD器件的日益成熟和应用,在通信、国防、工业自动化、仪器仪表等领域的数字电子系统设计工作中,它们正在成为电子设计的主要角色。

基于强大的EDA技术的支持,以VHDL为主要设计手段,充分开发利用CPLD芯片丰富而灵活的逻辑资源,成为当前数字系统设计的主要发展方向。

1.1 多功能计数器现状多功能计数器是一种用十进制数字显示被测信号频率、周期、占空比的数字测量仪器,是在数字电路中的一个典型应用;实际的硬件设计的多功能计数器用到的器件较多,连线比较复杂,而且会产生比较大的延时,造成测量误差、可靠性差。

随着复杂可编程逻辑器件(CPLD)的广泛应用,以EDA工具作为开发手段,运用VHDL语言,将使整个系统大大简化,提高整体的性能和可靠性。

它是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。

当今VLSI的发展日新月异,FPGA的容量和速度成倍地增长,而价格却逐年下降,这将使得基于FPGA设计的多功能计数器优势更加明显。

采用VHDL编程设计实现的多功能计数器,除被测信号的整形部分、键输入部分和数码显示部分以外,其余全部在一片FPGA芯片上实现,具有体积小、可靠性高、功耗低的特点;整个系统非常精简,且具有灵活的现场可更改性。

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

因此多功能计数器在测量物理量方面及航天、电子、测控、仪器仪表、通信等领域应用广泛。

近年来,高精度频率测量仪器广泛应用在晶体或晶体振荡器等需求量大和要求高精度的行业、越来越多的电子产品要求具备高性能和低功耗的特点,通常一块印刷电路板会布置多个晶体或晶体振荡器、一般精度的频率测量仪不能满足对其测量要求,而满足测量要求的仪器又都是作为频率计量基准,应用于国家科研院所。

这此仪器设计复杂、体积庞大、价格昂贵,很难在短期内推广。

因此,设计一款测量精度高、成木较低的频率测量仪显得十分必要。

这里介绍的计数器设计精良,操作简便,精确度高,测量范围广, LCD荧幕全功能显示,兼具备测频、测周期功能,且成本较低.并具有良好的市场前景及经济效益。

1.2 频率测量方法简介根据测频工作原理可将频率测量方法分成以下几类:1) 是利用电路的某种频率响应特性来测量频率,谐振测频法和电桥测频法是这类 测量方法的典型代表:前者常用于低频段的测量,后者主要用于高频或微波频段的测量。

谐振法的优点是体积小、重要轻、不要求电源等,目前仍获得广泛应用。

2) 是利用标准频率与被测频率进行比较来测量频率,采用比较法测量频率,其准确度取决于标准频率的准确度。

拍频法、示波器法以及差频法等均属此类方法。

拍频法和示波器法主要用于低频段的测量,差频法则用于高频段的频率测量,它的显著优点是测试灵敏度高[1]。

以上两种方法适合于模拟电路中实现,但是模拟电路没有数字电路稳定,因此数字电路出现后,马上就出现了数字频率计。

目前广泛使用的计数测频法则适合于数字电路实现。

该方法是根据频率的定义,记下单位时间内周期信号的重复次数,因此又称为电子计数器测频法。

常用数字频率测量方法有M 法,T 法和T M 法。

M 法是在给定的闸门时间内,测量被测信号的脉冲个数再进行换算得出被测信号的频率,其测量精度取决于闸门时间的准确度和被测信号频率。

当被测信号频率较低时将产生较大误差,除非闸门时间取得很大。

T 法是通过测量被测信号的周期,然后换算得出被测信号的频率。

其测量精度取决于被测信号的周期和计时精度,测信号频率较高时,对计时精度的要求就很高。

T M 法具有以上2种方法的优点,它通过测量被测信号数个周期的时间,然后换算得出被测信号的频率,可兼顾低频与高频信号,提高了测量精度。

但是,M 法,T 法和T M 法都存在1±计数误差问题。

M 法在规定闸门时间内存在1±个被测信号的脉冲计数误差,T 法或T M 法也存在1±个字的计时误差。

这个问题成为限制测量精度提高的一个重要原因。

本设计在研究总结上述方法的基础上,得出了一种新的频率测量方法,该方法利用等精度测频方法消除限制测量精度提高的1±个数字误差问题,从而使频率测量的精度和性能大为改善。

然而一种新的方法的实际应用比提出来更难,要考虑各种可能的问题,首先就是由于采用的新的设计方法使得电路的复杂程度成倍增加,因此如果还采用传统数字电路来实现则将使PCB 板面积变得异常庞大与复杂。

信号走线长,导致系统误差增大,难以提高系统的工作频率,此外,PCB 板的集成度不高还将导致高频信号容易受到外界的干扰,反而可能降低测频精度。

由于可编程逻辑器件能很好地克服了以上缺点,大大提高系统时钟,因此本设计将介绍由现场可编程门阵列(FPGA) 来实现等精度频率计。

相关文档
最新文档