课程设计(论文)基于FPGA的数字频率计的设计_第1页
课程设计(论文)基于FPGA的数字频率计的设计_第2页
课程设计(论文)基于FPGA的数字频率计的设计_第3页
课程设计(论文)基于FPGA的数字频率计的设计_第4页
课程设计(论文)基于FPGA的数字频率计的设计_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目录 1 引言引言 .2 2 fpga 及及 verilog hdl.2 2.1 fpga 简介.2 2.2 verilog hdl 概述.3 3 数字频率计的设计原理数字频率计的设计原理 .3 3.1 设计要求.3 3.2 频率测量.3 3.2.1时间门限测量法.4 3.2.2标准频率比较测量法.4 3.2.3 等精度测量法.4 3.3 方案提出及确定.4 3.4 系统设计与方案论证.5 3.4.1测频控制信号发生器设计.6 3.4.2寄存器设计.6 3.4.3计数器的设计.6 3.5 小结.7 4 数字频率计的设计数字频率计的设计 .7 4.1 功能模块设计.7 4.1.1分频器模块.7

2、4.1.2测频控制信号发生器模块.7 4.1.3 32位锁存器模块.8 4.1.4译码器模块.8 4.1.5十进制计数器模块.9 4.1.6用原理图描述的模块.9 4.2 顶层文件.11 4.3 小结.13 5 软件的测试软件的测试 .13 5.1 测试的环境.13 5.2 调试和器件编程.13 6 硬件设计硬件设计 .13 61 epf10k30ati144-3 fpga 芯片简介.13 62 epc2 配置芯片简介.13 6.3 配置模式.14 6.4 下载方式.14 6.5 硬件电路原理图设计.14 6.6 频率测试.16 7 结论及展望结论及展望 .16 7.1 结论.16 7.2 展

3、望.16 致 谢.17 参考文献.18 附 录.19 基于基于 fpgafpga 的数字频率计的设计的数字频率计的设计 摘要:摘要:在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因 此频率的测量就显得更加重要。通过运用 verilog hdl 语言,实现 8 位数字频率计,并利用 max+plusii 集成开发环 境进行编辑、综合、波形仿真,并下载到 fpga 器件中,经实际电路测试,该系统性能可靠。 关键词:关键词:硬件描述语言 现场可编程门阵列 fpga 频率计 频率测量 1 引言引言 在电子技术中,频率是最基本的参数之一,并且与许多电参量的

4、测量方案、测量结果都有十分密 切的关系,因此,频率的测量就显得更为重要。测量频率的方法有多种,其中电子计数器测量频率具有 精度高、使用方便、测量迅速,以及便于实现测量过程自动化等优点,是频率测量的重要手段之一。 数字式频率计的测量原理有两类:一是直接测频法,即在一定闸门时间内测量被测信号的脉冲个数; 二是间接测频法即测周期法,如周期测频法。直接测频法适用于高频信号的频率测量,通常采用计数 器、数据锁存器及控制电路实现,并通过改变计数器阀门的时间长短在达到不同的测量精度;间接测 频法适用于低频信号的频率测量,本设计中使用的就是直接测频法,即用计数器在计算 1s 内输入信 号周期的个数。 数字频率

5、计是数字电路中的一个典型应用,实际的硬件设计用到的器件较多,连线比较复杂,而 且会产生比较大的延时,造成测量误差、可靠性差。随着现场可编程门阵列 fpga 的广泛应用,以 eda 工具作为开发手段,运用 verilog hdl 等硬件描述语言语言,将使整个系统大大简化,提高了系 统的整体性能和可靠性。 采用 fpga 现场可编程门阵列为控制核心,通过硬件描述语言 verilog hdl 编程,在 max+plusii 仿真平台上编译、仿真、调试 ,并下载到 fpga 芯片上,通过严格的测试后,能够较准确地测量方 波、正弦波、三角波、矩齿波等各种常用的信号的频率,而且还能对其他多种物理量进行测量

6、。 2 fpga 及及 verilog hdl 本章首先对设计所采用的可编程逻辑器件 fpga 及 verilog hdl 进行了简单的介绍,对设计有些 基本的了解。 2.1 fpga 简介 fpga 是 20 世纪 80 年代中期出现的高密度可编程逻辑器件,它一般由布线资源分隔的可编程逻 辑单元构成阵列,又由可编程 i/o 单元围绕阵列构成整个芯片,排列阵列的饿逻辑单元由布线通道中 的可编程内连线连接起来实现一定的逻辑功能。一个 fpga 包含丰富的具有快速系统速度的逻辑门、 寄存器和 i/o 组成。 fpga/cpld 芯片都是特殊的 asic 芯片,除了具有 asic 的特点外还有一下几

7、个优点:随着超大 规模集成电路 vlsi 工艺的不断提高,单一芯片内部可以容纳上百万个晶体管;fpga/cpld 芯片出厂 前 100%都做过测试,不需要设计人员承担风险和费用;用户可以反复地编程、擦除、使用或者在外 围电路不动的的情况下,用不同软件就可实现不同的功能,用 fpga/cpld 试制样片,能以最快的速 度占领市场。fpga/cpld 软件包中有各种输入工具、仿真工具、版图设计及编程器等全线产品,使 电路设计人员在较短的时间内就可以完成电路的输入、编译、优化、仿真,直至最后芯片的制作。 fpga 采用了逻辑单元阵列 lca(logic cell array)这样一个新概念,内部包括

8、可配置逻辑模块 clb(configurable logic block) 、输出输入模块 iob(input output block)和内部连线 (interconnect)三个部分。fpga 的基本特点主要有: 1)采用 fpga 设计 asic 电路,用户不需要投片生产,就能得到合用的芯片。 2)fpga 可做其它全定制或半定制 asic 电路的中试样片。 3)fpga 内部有丰富的触发器和 io 引脚。 4)fpga 是 asic 电路中设计周期最短、开发费用最低、风险最小的器件之一。 5)fpga 采用高速 chmos 工艺,功耗低,可以与 cmos、ttl 电平兼容。 可以说,f

9、pga 芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。目前 fpga 的品种 很多,有 xilinx 的 xc 系列、ti 公司的 tpc 系列、altera 公司的 flex 系列等。fpga 是由存放 在片内 ram 中的程序来设置其工作状态的,因此,工作时需要对片内的 ram 进行编程。用户可以 根据不同的配置模式,采用不同的编程方式。加电时,fpga 芯片将 eprom 中数据读入片内编程 ram 中,配置完成后,fpga 进入工作状态。掉电后,fpga 恢复成白片,内部逻辑关系消失,因此, fpga 能够反复使用。fpga 的编程无须专用的 fpga 编程器,只须用通用的 e

10、prom、prom 编程器 即可。当需要修改 fpga 功能时,只需换一片 eprom 即可。这样,同一片 fpga,不同的编程数据, 可以产生不同的电路功能。因此,fpga 的使用非常灵活。 2.2 verilog hdl 概述 verilog hdl 是硬件描述语言的一种,用于数字电子逻辑系统设计。它允许设计者用它来进行各 种级别的逻辑设计,可以用它进行数字逻辑系统的仿真验证、时序分析、逻辑综合。verilog hdl 硬 件描述语言用于算法级、门级到开关级的多种抽象设计层次的数字系统建模,它具有以下描述能力: 设计的行为描述、设计的数据流特性、设计的结构组成以及包含响应监控和设计验证方面

11、的时延和波 形产生机制,而且定义了语法,对每个语法结构都定义了清晰的模拟、仿真语义。 通过以上的介绍,可以看出课题中所用的编程语言、采用的可编程逻辑器件对课题有了基本的了 解,下面将对设计的具体方案进行探讨。 3 数字频率计的设计原理数字频率计的设计原理 本章首先介绍了数字频率计设计的要求和频率测量的工作原理,最后对系统的设计方案进行探 讨,综合起来形成数字频率计的设计思路以及原理框图。 3.1 设计要求 (1)控制功能:能测量输入信号的频率,频率范围 1hz8mhz,波形可以是正弦波,三角波, 方波和其他任何有固定频率的信号,信号的幅值 0.55v。 (2)在 eda 软件平台上建立计数器电

12、路的顶层电路文件并完成编译和仿真。 (3)根据实验装置上的 fpga 芯片选择相应的芯片,然后将这些文件下载到实验装置上运行, 操作功能开关,验证设计功能。 3.2 频率测量 数字频率计是用于测量信号频率的电路。测量信号的频率参数是最常用的测量方法之一。实现频 率测量的方法比较多, 在此我们主要介绍三种常用的方法: 时间门限测量法、标准频率比较测量法、 等精度测量法。 3.2.1 时间门限测量法 在一定的时间门限 t 内,如果测得输入信号的脉冲数为 n, 设待测信号的频率为 fx,则该信号 的频率为 改变时间 t,则可改变测量频率范围。例如,当 t=1s, 则 fx=n(hz);t=1ms,则

13、 fx=n(khz)。 3.2.2 标准频率比较测量法 用两组计数器在相同的时间门限内同时计数,测得待测信号的脉冲个数为 n1、已知的标准频率信 号的脉冲个数为 n2,设待测信号的频率为 fx, 已知的标准频率信号的频率为 f0;由于测量时间相同, 则可得到如下等式: t n fx 0 21 f n f n x 从上式可以得出待测频率的公式为 标准频率比较测量法对测量时产生的时间门限的精度要求不高,对标准频率信号的频率准确度和频 率的稳定度要求较高,标准信号的频率越高,测量的精度就比较高。该方法的测量时间误差与时间门 限测量法的相同,可能的最大误差为正负一个待测信号周期,即 t=1/fx。 3

14、.2.3 等精度测量法 等精度测量法的机理是在标准频率比较测量法的基础上改变计数器的计数开始和结束与闸门门限 的上升沿和下降沿的严格关系。当闸门门限的上升沿到来时,如果待测量信号的上升沿未到时两组计 数器也不计数,只有在待测量信号的上升沿到来时,两组计数器才开始计数;当闸门门限的下降沿到 来时,如果待测量信号的一个周期未结束时两组计数器也不停止计数,只有在待测量信号的一个周期 结束时两组计数器才停止计数。这样就克服了待测量信号的脉冲周期不完整的问题,其误差只由标准 频率信号产生, 与待测量信号的频率无关。最大误差为正负一个标准频率周期,即 t=1/f0。 3.3 方案提出及确定 方案一: 采用

15、小规模数字集成电路制作 被测信号经过放大整形变换为脉冲信号后加到主控门的输入端,时基信号经控制电路产生闸门信 号送至主控门,只有在闸门信号采样期间内输入信号才通过主控门,若时基信号周期为 t,进入计数 器的输入脉冲数为 n,则被信号的测频率其频率 f=n/t,其原理方框图如图 3-1 所示 被测信号 图 3-1 方案一测频原理图 方案二:采用单片机进行测频控制 单片机技术比较成熟,功能也比较强大,被测信号经放大整形后送入测频电路,由单片机对测频 电路的输出信号进行处理,得出相应的数据送至显示器显示。原理方框图如图 2-2 所示。 待测信号 图 3-2 单片机测频电路原理图 采用这种方案优点是足

16、以地成熟的依赖单片机技术、运算功能较强、软件编程灵活、自由度大、 设计成本也较低,缺点是显而易见的,在传统的单片机设计系统中必须使用许多分立元件组成单片机 的外围电路,整个系统显得十分复杂,并且单片机的频率不能做得很高,使得测量精度大大降低。 方案三:采用现场可编程门阵列(fpga)为控制核心 采用现场可编程门阵列(fpga)为控制核心,利用 verilog hdl 语言编程,下载烧制实现。将所有 0 2 1 f n n fx 整形放大闸门计数器译码器显示 逻辑控制 信号整形测频电路单片机显示 晶 振 器件集成在一块芯片上,体积大大减小的同时还提高了稳定性,可实现大规模和超大规模的集成电路,

17、测频测量精度高,测量频率范围大,而且编程灵活、调试方便。本设计采用 fpga 器件来实现高速, 高精度,连续测频具有很大的优势,它可以解决采用单片机测频中时基频率(标准频率)过低而影响 测频精度的缺点。并且可以实现高速,连续测频技术,采用 fpga 器件来实现运算可以节省运算时间, 缩短每次测频时间,从而可以比较方便的实现连续测频技术。 综合上述分析,方案三为本设计测量部分最佳选择方案。 3.4 系统设计与方案论证 数字频率计基本原理是用计数器来计算 1s 内输入信号周期的个数。如图 2-3 所示是 8 位十进制数 字频率计的系统方框原理图,当系统正常工作时,脉冲发生器提供的 1 hz 的输入

18、信号,经过测频控制 信号发生器进行信号的变换,产生计数信号,被测信号通过信号整形电路产生同频率的矩形波,送入 计数模块,计数模块对输入的矩形波进行计数,将计数结果送入锁存器中,保证系统可以稳定显示数 据,显示译码驱动电路将二进制表示的计数结果转换成相应的能够在七段数码显示管上可以显示的十 进制结果。 图 3-3 系统方框图 3.4.1 测频控制信号发生器设计 频率测量的基本原理是计算每秒内待测信号的脉冲个数。这就要求 testctl 的计数使能信号 tsten 能产生一个 1s 脉宽的周期信号,并对频率计的每个计数器 cnt10 的 ena 使能端进行同步控 制。当 teten 高电平时允许计

19、数、低电平时停止计数,并保持其所计的数。在停止计数期间,首先 需要一个锁存信号 load 的上挑沿将计数器在前 1s 的计数值锁存进锁存器 reg 中,并由外部的 7 段 译码器译出并稳定显示。设置寄存器的好处是,显示的数据稳定,不会由于周期性的清零信号而不断 闪烁。锁存信号之后,必须有一清零信号 clr-cnt 对计数器清零,为下一秒钟的计数操作作准备。 这样需设计一个测频控制信号发生器,而且它的工作要满足一定的时序关系。为了产生这个时序图, 需建立一个由 d 触发器构成的二分频器,在每次时钟 clk 上升沿到来时其值翻转。其中控制信号时 钟 clk 的频率取 1hz,那么信号 teten

20、的脉宽恰好为 1s,可以用作闸门信号。然后根据测频时的 时序要求,可得信号 load 和 clr-cnt 的逻辑描述。在计数完成后,即计数使能信号 teten 在 1s 七段数码管显示 译码电路 输出信号锁存器 测频计数模块 测频控制信号发 生器模块 时钟信号 闸门信号 控制信号 清零信号 锁存信号 被测频率信号 的高电平后,利用其反相值的上跳沿产生一个锁存信号 load,0.5s 后,clr-cnt 产生一个清零信 号的上跳沿。 3.4.2 寄存器设计 若已有 32 位 bcd 码存在于此模块的输入口,在信号 load 的上升沿锁存到寄存器的内部,并由 寄存器的输出端输出,然后由试验板上的

21、7 段译码器译成能在数码管上显示输出的相对应的数值。 3.4.3 计数器的设计 计数器有两种触发方式:同步触发和异步触发。同步触发的优点在于共用一个时钟变量,可以避 免芯片中出现多种时钟信号,但缺点在于引用的逻辑门个数较多,模块如果做大了就会引起较大的时 延,产生竞争冒险问题。异步触发的优点在于可以很方便用于多个模块的级连而不需要逻辑门的引入, 但多时钟变量的引入会占用大量的触发器,造成硬件资源不够用,设计时应避免这种情况的发生。权 衡两者的利弊,并进行多次设计实现,最终得出采用同步触发方式,在通过 8 个十进制计数器级连的 方案。该方案从延时和资源的利用出发,对计数器内部采用同步触发方式,在

22、通过 8 个十进制计数器 的级连实现 8 位频率计的计数功能。之所以选择 8 位不是 4 位,是从实际要求和发挥优势的角度出发, 既要量程大又要有较高的测量精度,就需要采用多位数码管来显示,而且采用 eda 工具可以使设计 方便很多,不会引起多数码管造成布线上复杂的麻烦,可以充分展示 eda 工具的优势。此十进制计 数器的特殊之处是有一个时钟使能输入端 ena,用于锁定计数值。当高电平时计数允许,低电平平时 禁止计数。 3.5 小结 本章对数字频率的设计要求进行阐述,由此对频率测量的工作原理进行探讨引申出几个设计的方 案,采用的时间门限测量法根据此方法确定了以现场可编程门阵列为控制核心的设计方

23、案,它最为灵 活方便。然后得出论述对方案的进行细节方面的论证,产生了设计的原理方框图。但是在设计中有个 特别需要注意的地方是:在测频控制信号发生器的设计当中,要对其进行仔细的时序仿真,防止可能 产生的毛刺。 4 数字频率计的设计数字频率计的设计 先对系统设计的模块一一进行描,然后对数字频率计设计的顶层电路原理图进行了阐述。整个系 统共设计了五个模块:分频器模块(div2) 、测频控制信号发生器模块(testctl) 、有时钟使能的 计数器模块(8count) 、32 位锁存器模块(seltime) 、7 段译码器(encode) 。 4.1 功能模块设计 4.1.1 分频器模块 分频器模块“d

24、iv2.v”。 输入信号:cl k 试验平台上的时钟信号。 输出信号:clkdiv2 输出 1hz 标准信号。 逻辑功能:对输入信号频率进行二分频,提供测频控制信号发生器所需的 1hz 标准信号。 源文件 div2.v 见附录 4.1.2 测频控制信号发生器模块 测频控制信号发生器模块,文件名为 testctl.v。 输入信号:clkdiv2 1hz 标准输入信号。 输出信号:tsten 计数时能信号; clr-cnt 计数器清零信号; load 锁存信号。 逻辑功能:产生 1s 脉宽的周期信号,并根据测频需要产生相应的计数器清零信和锁存器的锁存 信号。 如图源文件为 testctl.v 见附

25、录 仿真波形如图 4-1 图 4-1 测频控制模块波形图 4.1.3 32 位锁存器模块 32 位锁存器模块,文件为 seltime .vhd 输入信号:load 锁存器锁存信号 din0,din2,din3,din4,din5,din6,din7 8 个十进制 计数器输出的 4 位 bcd 码。 输出信号:sel2.0 控制选择信号。 dauth3:0 通过选择后输出的 bcd 码。 逻辑功能:当 load 信号上跳时,将输入的 8 位 bcd 码送到输出端,由于接收的是 8 个计数器 的输出信号,因此输入信号是 8 个 4 位而不是 1 个 32 位。 源文件 seltime .vhd 见

26、附录 图形元件与波形如图 4-2 图 4-2 锁存器元件与波形图 4.1.4 译码器模块 译码器模块,文件为 encode.v。 输入信号:i3:0 输入 4 位 bcd 码。 输出信号:a,b,c,d,e,f,g 输出 4 位 bcd 码对应的 7 位二进制码。 逻辑功能:将 4 位 bcd 码译成能被数码管显示的 7 位二进制。 源文件为 encode.v 见附录 4.1.5 十进制计数器模块 十进制计数器模块,文件为 cnt10.v。 输入信号:ena 输入时钟使能信号; clr 输入清零信号; clk 输入时钟触发信号。 输出信号:cq30 输出 bcd 码; carry-out 输出

27、计数器进位信号。 逻辑功能:ena 为高电平时计数,clk 为输入时钟变量,clr 为高电平时计数清零,当计数器 计到 9 时,carry-out 为高电平。 源文件为 cnt10.v 见附录 图形元件和仿真波形如图 4-3 图 4-3 十进制计数器波形与图形元件 4.1.6 用原理图描述的模块 8 位十进制计数器模块,文件名 8count.gdf。 输入信号:ena输入时钟使能信号; clr输入清零信号; clk输入时钟触发信号。 输出信号:dout3.0,dout7.4,dout11.8,dout15.12, dout19.16,dout23.20,dout27.24,dout 31.28

28、。 输出 8 个计数器的计数值(bcd) 。 逻辑功能:eda 为高电平时计数,为低电平时保持所计的值,clk 为时钟信号输入。clr 为高电平时计数器清零。 原理图文件名问:8count.gdf,原理图和波形如图 4-4 所示。 图 4-4 计数器原理图、图形元件与波形图 4.2 顶层文件 系统设计顶层电路原理图 顶层电路原理图如图 4-5 所示。文件名shuzihz.gdf。 输入信号:clk 用来产生阀门信号的时钟信号; fsin 被测频率输入信号 。 输出信号:a,b,c,d,e,f,g 译码器输出端口。 sel2.0 数码管控制选择端口。 4-5 顶层电路原理图 4-6 顶层电路波形

29、图 4.3 小结 本章主要对数字频率计进行设计,对各个功能模块进行介绍、分析和探讨,最后得到了顶层电路 原理图,同时对各个模块和顶层电路模拟仿真,产生波形。在形成顶层电路原理图过程当中,应当注 意各个模块图形元件的位置以及他们之间的连线,不然很容易造成编译不成功。 5 软件的测试软件的测试 本章进行对于源文件进行编译、模拟仿真、调试,对电路板芯片管脚进行定义,最后下载到 fpga 芯片 epf10k30ati114-3 上,对频率进行测试,查看结果。 5.1 测试的环境 max+plusii 是 altera 公司推出各种可编程逻辑器件产品,具有完全集成化的易学、易用的可视化 环境,还有具有工

30、业标准 eda 工具接口,并且可以运行在多种操作平台上。使 max+plusii 提供了丰 富的逻辑功能库、模块库以及参数化的兆功能供设计者使用。它还具有开放核的特点,允许设计人员 添加自己的宏功能模块。充分利用这些逻辑功能模块,可大大减少设计工作量。 max+plusii 由设计输入、项目编译、项目检验和器件编程等四部分组成。设计输入主要有文本编 辑器、图形编辑器、符号编辑器、波形编辑器以及第三方 eda 工具生成的设计网表文件输入等,输入 方式不同,生成的设计文件也不同。 编译设计项目主要是根据要求设计参数和编译策略,如选定其间、锁定引脚等等,然后对项目进 行网表提取、逻辑综合、器件适配,

31、产生报告文件,供分析仿真及编程用。项目检验方法包过功能仿 真、模拟仿真和定时分析,编程验证是将仿真后的目标文件编入所选定的 altera 可编程逻辑器件中, 然后加入实际激励信号进行测试,检查是否达到要求。 5.2 调试和器件编程 将各个模块的源文件程序代码输入文本文件,编译运行项目成功后,把各个模块放在一起形成顶 层设计文件,对项目进行逻辑综合,然后将项目的设计结果加载到 altera 器件中;成功编译以后,进 入到模拟仿真时段,设置好完成时间和网络间距,在列出输入输出信号等等,进行波形编辑在模拟器 运行成功;启动定时分析工具,对传播延迟、时序电路性能、建立和保持时间等进行分析顺利后,就 可

32、以开始器件编程了。通过利用 byteblaster 电缆与微机并行口相连,接通 el 实验箱电源,打开 max+plusii 编程器窗口,将器件编程文件调出,确保与电路板顺序相同。设置完成后选择 program 按键,对器件链进行编程。 6 硬件设计硬件设计 61 epf10k30ati144-3 fpga 芯片简介 本系统所使用的 fpga 芯片为 epf10k30ati144-3 的 flex 系列芯片,其管脚数为 144,封装为 tqfp,工作电压可选择 5v 或 3.3v,典型可用门数为 30,000,最大可用系统门数为 69,000,逻辑单元 (les)为 1,728,逻辑阵列块(l

33、abs)为 216,嵌入式阵列块(eabs)为 6,总的 ram 为 12,288 位, 最大用户使用 i/o 口为 246 个。 62 epc2 配置芯片简介 本系统使用的专用配置芯片为 epc2,该芯片数据传输方式为串行传输,与 flex 系列的芯片相 接的管脚只有 4 个,连接相当简单。支持 max+plus ii 软件平台,能够用 max+plus ii 自带的编程 器进行下载。封装形式有多种:8 脚的 pdip 封装、20 脚的 plcc 封装以及 32 脚的 tqfp 封装。其存 储空间为 1,695,680 位。能够对 flex10k、flex6000、flex8000 系列芯片

34、进行配置。支持 5v 和和 3.3v 电压,能够在 max+plus ii 平台下通过 bitblaster、byteblaster 和 byteblastermv 电缆进行下载, 支持 ps 及 jtag 下载模式。 6.3 配置模式 fpga 有多种配置模式。对于 altera 公司的 sram lut fpga 器件,fpga 有六种配置模式,这 些模式通过 fpga 上的两个模式选择引脚 msel1 和 msel0 上设定的电平来决定: (1)专用器件配置模式,如用 epc 系列器件进行配置。 (2)ps(passive serial 被动串行)模式:msel1=0、msel0=0。

35、(3)pps(passive parallel synchronous 被动并行同步)模式:msel1=1、msel0=0。 (4)ppa(passive parallel asynchronous 被动并行异步)模式:msel1=1、msel0=1。 (5)psa(passive serial asynchronous 被动串行异步)模式:msel1=1、msel0=0。 (6)jtag 模式:msel1=0、msel0=0。 6.4 下载方式 fpga 的配置方式有多种,但总的来说下载方式只有两种:ps 下载和 jtag 下载方式。这两种方 式的硬件电路连接图如图 4.1 所示。图中只是这

36、两种下载接口电路的介绍,它既可以用 jtag 接口下 载,也可以用 byteblaster 接口进行下载。不过用 jtag 方式是先把数据下载到 epc2 器件,epc2 器 件再对 fpga 进行配置,其实用 jtag 方式也可以直接把数据下载到 fpga 中,但图中没有画出来, 有兴趣可以参考后面的相关参考文献。图中的 byteblaster 接口既可以直接下载到 fpga 器件,也可以 在配置 fpga 的同时把数据下载到 epc2 器件中(图中开关要合上) 。而在实际应用过程中,并不一不 定要这样接,我们可以只选择其中一种下载接口。而在把研究设计转换成产品的时候则一定要用配置 芯片,配

37、置芯片在掉电的时候可以保存数据,下次加电的时候数据可以直接从配置芯片中下载到 fpga 中。下载电路如图 6-1 所示。 6 7 8 9 msel 1 msel 0 epf10k30ati114-3 6 7 8 9 6 7 8 9 6 7 8 9 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10dclk conf-done config nstatus data 0 vccint vccio nce o nce 6 7 8 9 6 7 8 9 6 7 8 9 6 7 8 9 1

38、 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 data dclk oe ncs tms tck tdi vcc vccsel vpp vppsel ncasc ninit_conf tdo nce epc2件件 vccvccvcc vccvccvccvccvcc gnd vcc gnd gnd vcc gnd gnd vcc gnd gnd vcc n.c gnd jt ag件件 byteblaster件件 图 6-1 下载接口原理图 本设计对配置器件 epc2 采用 jta

39、g 下载方式,数据同时下载到 epc2 和 fpga 中, epc2 对 fpga 的配置采用 ps(被动串行)模式。 6.5 硬件电路原理图设计 本设计工作电压为 5v,对 fpga 芯片配置采用 ps 模式,用 byteblastermv 电缆进行下载,数码 管用动态扫描方式进行显示(可以用静态扫描,此种 fpga 有足够的引脚,但程序要变) ,其硬件电 路图如下图所示。54 脚接 10mhz 标准时钟, 55 脚接被测信号时钟, 63、64、65、67、68、69、70、71 脚分别接数码管的 a、b、c、d、e、f、g、dp 端,用于控制数 码管的段选。73、78、79、80、81、8

40、2、83、86 脚分别接数码管 18 的公共端(阴极) ,用于控制数 码管的位选。由电路图 6-2 可以看出用 fpga 设计 vccio 电路的外围电路相当简单,设计起来事半功 倍。 a bf c g d e dpy 1 2 3 4 5 6 7 a b c d e f g 8 dp dp sm8 a bf c g d e dpy 1 2 3 4 5 6 7 a b c d e f g 8 dp dp sm7 a bf c g d e dpy 1 2 3 4 5 6 7 a b c d e f g 8 dp dp sm6 a bf c g d e dpy 1 2 3 4 5 6 7 a b c

41、 d e f g 8 dp dp sm5 a bf c g d e dpy 1 2 3 4 5 6 7 a b c d e f g 8 dp dp sm1 a bf c g d e dpy 1 2 3 4 5 6 7 a b c d e f g 8 dp dp sm2 a bf c g d e dpy 1 2 3 4 5 6 7 a b c d e f g 8 dp dp sm3 a bf c g d e dpy 1 2 3 4 5 6 7 a b c d e f g 8 dp dp sm4 +5 epf10k30ati114-3 vcc vcc vcc vcc clk件件 clk件件 61

42、71 66 55 54 52 50 45 40 72 70 69 68 67 65 64 63 gnd vcc gnd vcc io io vcc io io io gnd io io io io vcc io vccvcc vcc a 1 b 2 c 3 g2a 4 g2b 5 g1 6 y7 7 y6 9 y5 10 y4 11 y3 12 y2 13 y1 14 y0 15 74ls138 sm 33 32 31 io io io 6 16 25 115 123 127 134 139 94 84 77 75 103 6 7 8 9 6 7 8 9 6 7 8 9 6 7 8 9 1 2

43、 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 6 7 8 9 6 7 8 9 6 7 8 9 6 7 8 9 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 data dclk oe ncs tms tck tdi vcc vccsel vpp vppsel ncasc ninit_conf tdo nce epc2件件 vccvccvcc vccvccvccv

44、ccvcc gnd vcc gnd gnd vcc gnd gnd vcc gnd gnd jtag件件 byteblaster件件 10mhz c1 22pf c2 22pf r2 10k 5v r1 220k q1 nmos q2 pmos vcc vcc n1n2 y1 10mhz ns tatus config conf-done dclk data0 vccint vccio msel1 msel0 nce 图 6-2 硬件电路图 6.6 频率测试 系统的测试主要是测试硬件是否能正常工作,软件和硬件是否匹配,是否合乎设计的要求。在频 率测试过程中,系统的测量范围系统的精度是两个较重要

45、的指标。系统的测量结果如表 6-3 序号标准频率 f/hz实际频率 fx/hz f/hz 误差 % 12200 2202000 3 10010000 41000100000 55000499910.02 6500005000110.002 720000019999910.0002 85000049999730.0006 9100000099999550.0004 图 6-3 频率测试表 通过上个图表我们可以看出对与一般的很低的频率能够比较精确的测量,但是一旦达到几千就产 生了比较大的误差,随着测量频率的增大,误差也愈来愈小了 。 7 结论及展望结论及展望 7.1 结论 本次毕业设计实现了设计要

46、求的大部分功能,系统的误差小于 1%,精度达到 1hz. 具有以下几个 特点: (1)模块化的设计方法,使得它升级和维护都很方便、灵活; (2)设计的频率计体积小,功耗低,稍加修改就可以改变数字频率计测量范围,拥有较高的整体 性能和可靠性; (3)造价比较低, 容易生产,具有较好的市场前景。 数字频率计是目前精度最高的频率计。在高速时钟随处可见的现代电子系统,有着非常广泛的研 究价值。从某种程度上说它是以牺牲时间来换取精确度的,但一般情况下频率计对时间的要求并不高, 并且由于电子系统对系统时钟准确度的要求越来越高,因此数字频率计还是有着广泛的应用空间。通 过对数字频率计的设计,及仿真,得到了良

47、好的结果,这对硬件的设计和测试提供了很好的依据。本 设计在最后做了硬件电路进行最后的硬件测试,能够与现在市面上的频率计的测试结果进行比较,得 到更加科学的验证。 通过这次毕业设计,锻炼了我严谨认真的学习态度,学到了很多东西,知识和技能都得到了提高, 但是也暴露了很多不足的地方,比如说不够仔细和耐心,在设计有个参数设得太大了,检查了很久, 感觉没有错误很暴躁结果,多亏同学的帮忙指正。此频率计精度比较高,比较适合于高频信号的频率 测量,对于低频信号测量效果不是很好,这点还有待于加强。 7.2 展望 eda(电子设计自动化)是现代电子设计的趋势,vhdl 语言则是 eda 设计中最为流利的一种 高级

48、语言,要掌握现代电子设计的核心技术,就应该学会 vhdl 语言。其设计简单,不需要详细知道 硬件电路的结构,就可以进行开发。这样可以有更多的人加入到电子行业。其语言通俗易懂,开发容 易,从而可以大大缩短产品上市的时间,可以事先用开发软件进行前期仿真,提前发现问题,提前解 决问题,投资风险减少,同时由于数字电路都集成在一块芯片上,因此可以大大缩小电子产品的体积。 因此从各方面来看,用可编程逻辑器件(fpga 或 cpld)作硬件,用 vhdl 硬件描述语言作为开发 语言,是一种方便快捷、高效、高速、低成本的开发方式。 现在 altera 公司又推出了全新的 hradcopy 技术:通过强化 ed

49、a 工具的设计能力,在保持 fpga 开发优势的前提下,引入 asic 的开发流程,从而对 asic 市场形成直接竞争。也就是利用原有 的 fpga 开发工具,将成功实现于 fpga 器件上的系统通过特定的技术直接向 asic 转化,从而克服 传统 asic 设计中普遍存在的问题,并且用 hardcopy 技术设计的 asic 一次性投片的成功率近乎 100%,即所谓的 fpga 向 asic 的无缝转化。而且用 asic 实现后的系统性能将比以前在 hardcopy fpga 上验证的模型提高近 50%,而功耗则降低 40%。一次性成功率的大幅度提高即意味着设计成本 的大幅降低和产品上市速度

50、的大幅提高。因此就其发展趋势看,势必涉及越来越广阔的电子技术及电 子设计技术领域。其中包括电子工程、电子信息、通信、航天航空、工业自动化、家电、生物工程等 等。而且随着大规模集成电路技术的发展和 eda 工具软件功能的不断加强,所涉及的领域还将不断 扩大。随着 fpga 器件性价比的不断提高,eda 技术将不断地渗透到电子设计的各个领域,逐步进入 到家电,高精度仪器仪表,汽车等日常消费行业。下面我对基于 fpga 的频率计的设计作一些具体的 展望: (1)采用等精度的频率测量技术与已往的测频技术相比,在测量精度上有了大的提高,这样在一 些频率测量的场合可以考虑采用本设计方法具有很大的优势。 (

51、2)本设计采用了高集成度的 fpga 芯片,还具有很大的功能扩展空间,这样有利于等精度频 率计的升级,这种升级是完全不需要改板的升级,只须修改 fpga 内部的逻辑功能,大大的降低了频 率计的二次开发费用。 (3)采用 fpga 器件来实现高速,高精度,连续测频具有很大的优势,它可以解决采用单片机 测频中时基频率(标准频率)过低而影响测频精度的缺点。并且可以实现高速,连续测频技术,采用 fpga 器件来实现运算可以节省运算时间,缩短每次测频时间,从而可以比较方便的实现连续测频技 术。 (4)对于目前提出的高精度定闸门的测频方法,如果采用单片机来实现,存在着一定的缺点,需 要采用 pc 机来实现

52、高速运算。但如果采用 fpga 芯片来实现,则会很好的解决这个问题,当然基于 fpga 的高精度定闸门的测频方法目前还没有进行设计,这也是我在以后的工作中要做的。 (5)现在对高频率信号频率的测量也已经显得越来越重要,怎样提高被测信号的频宽,对高频信 号能够进行准确,快速的测量也是衡量一个频率计的一个很重要的参数。在传统的单片机测量技术中, 其标准频率只能在几十兆 hz 左右,因此很难提高测频频宽。而现在的 fpga 器件具有更高的标准频 率,而且可以设计宽位、高速的乘法器,这样一来,对于高频信号的频率测量技术提供了一个很好的 发展平台。 (6)对超高频信号(几百 m 赫兹几吉赫兹)频率的测量

53、也是目前频率测量的一个难以解决 的难题。在本设计的基础上,我们可以提出一个解决的方案。在本设计中,测量的最高频率几百 m 赫 兹,但是我们可以在本设计的基础之上,我们可以采用对被测信号先进行硬件分频,然后再进行测量, 然后对测量的数据进行必要的数据处理,这样一来,我们就可以进行几吉赫兹频率的测量。其中存在 有两个难题:一是怎样判定被测信号是一个超高频信号以便于启动硬件分频系统;二是怎样实现对被 测超高频信号的频率进行还原,然后进行正确的显示。这两个问题在理论上都是可以在 fpga 器件上 加以实现。但是,怎样进行具体实现这是我们下一阶段要解决的问题。当然,在进行硬件分频时会产 生一定得分频误差

54、,这样会影响频率测量精度,这是不可避免的。 致 谢 在毕业论文定稿之时,四年的大学生活也即将结束。但是,艰辛而快乐的求学之路,也给我留下 了很多难以忘怀的记忆。此次毕业设计,我遇到很多问题,通过向老师求教、和同学讨论让我知道真 正完成一项设计是不容易的,在巩固专业知识的同时也让我学到了坚持和努力。本次毕业设计在自己 的努力,同学的帮助,老师的指点下已全部完成,结果重要,过程也很珍贵,因为好的结果必然得经 过一个艰辛的过程,而从这个坚信的过程中我获得了珍贵的经验和教训,仔细认真的总结将对自己是 个质的提升。在此,向四年来陪伴我一起走过,给予我帮助和关心的良师益友们,致以最为真挚的谢 意! 首先,

55、我要特别感谢我的毕业论文指导老师。他日里工作繁忙,但在我做毕业设计的每个阶段, 都给予了我悉心的指导。在设计过程中经常遇到一些问题,老师都给了我详细的讲解,他无论在理论 上还是实践中都给予我很多切实的建议,使我受益匪浅,这对于我以后的工作和学习都有巨大的帮助, 感谢他耐心的辅导!同时,也感谢各位授课老师以及实验室的指导老师,在我的成长过程中也都付出 了大量的精力,在此一并衷心感谢! 参考文献 1陈赜、鲁放,cpld/fpga 与 asic 设计实践教程, 北京:科学出版社出版,19998, 232268 2徐志军,大规模可编程逻辑器件及其应用m,成都:电子科技大学出版 3李辉,pld 与数字系

56、统设计m,成都:电子科技大学出版,1998,2570 4杜建国,verilog hdl 硬件描述语言,国防工业出版社,2000,98120 5赵雅兴,fpga 原理、设计与应用m,天津:天津大学出版社,1999,1216 6李景华、杜玉远,可编程逻辑器件与 eda 技术m,沈阳:东北大学出版社,2002,158168 7顾巨峰、周浩洋、朱建华,基于可编程逻辑器件(lattice)的多功能数字频率计j,2002,6679 8付家才,eda 原理与应用,化学工业出版社,2001,88100 9刘宝琴、张芳兰,altera 可编程逻辑器件及其应用,北京:清华大学出版社,1995,20130 10赵立

57、民,可编程逻辑器件与数字系统,北京:机械工业出版社,2004,100150 11胡振华,vhdl 与 fpga 设计,北京:中国铁道出版社,2003,210250 12金西,vhdl 与复杂数字系统设计,西安:西安电子科技大学出版社,2003,160180 13杨恒,fpga/vhdl 快速工程实践入门与提高,北京:北京航空航天大学出版社,2003,7186 14 周政新电子设计自动化实践与训练,中国民航出版社,1998,2031 15荀殿栋,徐志军.数字电路设计实用手册m北京:电子工业出版社,2003,1520 16王伟.verilog hdl 程序设计与应用m.北京:人民邮电出版社,200

58、5,5568 17 王兆安.电力电子技术m北京:机械工业出版社,2003,2538 auto-adjusting digital cymometer based on fpga abstract:in the electronics technique, the frequency is one of the most basic parameters, and with many give or get an electric shock three quantity of the diagraph projects, diagraphs all have a very close relation as a result, so the diagraphs of frequency seem to be more important. the design is from verilog hdl language to carry out 8 numerical frequencies of the

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论