基于FPGA任意倍数分频器设计 推荐.docx

上传人:b****4 文档编号:1351603 上传时间:2022-10-21 格式:DOCX 页数:40 大小:328.05KB
下载 相关 举报
基于FPGA任意倍数分频器设计 推荐.docx_第1页
第1页 / 共40页
基于FPGA任意倍数分频器设计 推荐.docx_第2页
第2页 / 共40页
基于FPGA任意倍数分频器设计 推荐.docx_第3页
第3页 / 共40页
基于FPGA任意倍数分频器设计 推荐.docx_第4页
第4页 / 共40页
基于FPGA任意倍数分频器设计 推荐.docx_第5页
第5页 / 共40页
点击查看更多>>
下载资源
资源描述

基于FPGA任意倍数分频器设计 推荐.docx

《基于FPGA任意倍数分频器设计 推荐.docx》由会员分享,可在线阅读,更多相关《基于FPGA任意倍数分频器设计 推荐.docx(40页珍藏版)》请在冰豆网上搜索。

基于FPGA任意倍数分频器设计 推荐.docx

基于FPGA任意倍数分频器设计推荐

1绪论

1.1课题分析

随着电子技术的高速发展,FPGA/CPLD以其高速、高可靠性、串并行工作方式等突出优点在电子设计中受到广泛的应用,而且代表着未来EDA设计的方向。

FPGA/CPLD的设计采用了高级语言,如VHDL语言AHDL语言等,进一步打破了软件与硬件之间的界限,缩短了产品的开发周期。

所以采用先进的FPGA/CPLD取代传统的标准集成电路、接口电路已成为电子技术发展的必然趋势[1]。

EDA技术代表了当今电子设计技术的最新发展方向,采用EDA工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出IC版图或PCB版图的整个过程在计算机上自动处理完成。

由于现代电子产品的复杂度和集成度的日益提高,一般分离的中小规模集成电路组合已不能满足要求,电路设计逐步地从中小规模芯片转为大规模、超大规模芯片,具有高速度、高集成度、低功耗的可编程朋IC器件已蓬勃发展起来[2]。

分频器是数字系统设计中的一种基本电路,我们往往需要通过分频器得到我们所需要的时钟频率,在FPGA的设计中也是使用频率非常高的一种基本设计。

基于FPGA实现的分频电路一般有两种方法:

一种是使用FPGA芯片内部提供的锁相环电路进行分频,如ALTERA提供的PLL(PhaseLockedLoop),Xilinx提供的DLL(DelayLockedLoop);第二种是使用硬件描述语言,如VHDL、VerilogHDL等。

使用锁相环电路进行分频有许多的优点,例如可以实现倍频、相位偏移以及占空比可调等。

但是由于FPGA内部提供的锁相环个数极为有限,不能满足使用时的要求。

因此使用硬件描述语言实现分频电路在数字电路设计较为常用,因为它消耗不多的逻辑单元就可以实现对时钟的操作,具有成本低、可编程等优点[3]。

在数字系统的设计中,设计人员会遇到各种形式的分频需求,如整数、小数、分数分频等。

在某些数字系统设计中,系统不仅对频率有要求,而且对占空比也有着很严格的要求。

由计数器或计数器的级联构成各种形式的偶数分频及非等占空比的奇数分频实现起来较为简单,但对半整数分频及等占空比的奇数分频实现较为困难,小数分频和分数分频更困难。

本论文利用VHDL硬件描述语言,通过QuartusⅡ7.2开发平台,设计了一种能满足偶数分频,奇数分频,半整数分频,占空比可调的分频,小数分频的任意倍数分频器,并可以通过按钮来选择具体由哪一种分频器进行操作,而拨码开关则可以预置一些分频系数,发光二极管则显示具体由那种分频实现,数码管显示分频的系数。

分频系数设置:

偶数分频:

2,4,6,8,10,12,14

奇数分频:

1,3,5,7,9,11,13,15

半整数分频:

1.5—15.5

占空比可调的分频:

1:

1,1:

2,1:

3,2:

1,2:

2,2:

3,3:

1,3:

2,3:

3

小数分频:

1.1—3.3

1.2FPGA概述

FPGA(Field Programmable Gate Array)现场可编程逻辑门阵列,它是在PAL(ProgrammableArrayLogic)、GAL(genericarraylogic)、CPLD(ComplexProgrammableLogicDevice)等可编程器件的基础上进一步发展的产物。

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

它是当今数字系统设计的主要硬件平台,其主要特点就是完全由用户通过软件进行配置和编程,从而完成某种特定的功能,且可以反复擦写。

在修改和升级时,不需额外地改变PCB 电路板,只是在计算机上修改和更新程序,使硬件设计工作成为软件开发工作,缩短了系统设计的周期,提高了实现的灵活性并降低了成本

以硬件描述语言(Verilog或VHDL)所完成的电路设计,可以经过简单的综合与布局,快速的烧录至FPGA上进行测试,是现代IC设计验证的技术主流。

这些可编辑元件可以被用来实现一些基本的逻辑门电路(比如AND、OR、XOR、NOT)或者更复杂一些的组合功能比如解码器或数学方程式。

在大多数的FPGA里面,这些可编辑的元件里也包含记忆元件例如触发器(Flip-flop)或者其他更加完整的记忆块。

系统设计师可以根据需要通过可编辑的连接把FPGA内部的逻辑块连接起来,就好像一个电路试验板被放在了一个芯片里。

一个出厂后的成品FPGA的逻辑块和连接可以按照设计者而改变,所以FPGA可以完成所需要的逻辑功能。

FPGA一般来说比ASIC(专用集成芯片)的速度要慢,无法完成复杂的设计,但是功耗较低。

但是他们也有很多的优点比如可以快速成品,可以被修改来改正程序中的错误和更便宜的造价。

厂商也可能会提供便宜的但是编辑能力差的FPGA。

因为这些芯片有比较差的可编辑能力,所以这些设计的开发是在普通的FPGA上完成的,然后将设计转移到一个类似于ASIC的芯片上。

另外一种方法是用CPLD(复杂可编程逻辑器件备)。

FPGA采用了逻辑单元阵列LCA(LogicCellArray)这样一个概念,内部包括可配置逻辑模块CLB(ConfigurableLogicBlock)、输出输入模块IOB(InputOutputBlock)和内部连线(Interconnect)三个部分。

目前主流的FPGA仍是基于查找表技术的,已经远远超出了先前版本的基本性能,并且整合了常用功能(如RAM、时钟管理和DSP)的硬核(ASIC型)模块:

FPGA芯片主要由6部分完成,分别为:

可编程输入输出单元、基本可编程逻辑单元、完整的时钟管理、嵌入块式RAM、丰富的布线资源、内嵌的底层功能单元和内嵌专用硬件模块。

FPGA的基本特点有:

1、采用FPGA设计ASIC电路(专用集成电路),用户不需要投片生产,就能得到合用的芯片。

2、FPGA可做其它全定制或半定制ASIC电路的中试样片。

3、FPGA内部有丰富的触发器和I/O引脚。

4、FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。

5、FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。

FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。

用户可以根据不同的配置模式,采用不同的编程方式。

加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。

掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。

FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。

当需要修改FPGA功能时,只需换一片EPROM即可。

这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。

因此,FPGA的使用非常灵活。

早在1980年代中期,FPGA已经在PLD设备中扎根。

CPLD和FPGA包括了一些相对大数量的可编辑逻辑单元。

CPLD逻辑门的密度在几千到几万个逻辑单元之间,而FPGA通常是在几万到几百万。

CPLD和FPGA的主要区别是他们的系统结构。

CPLD是一个有点限制性的结构。

这个结构由一个或者多个可编辑的结果之和的逻辑组列和一些相对少量的锁定的寄存器。

这样的结果是缺乏编辑灵活性,但是却有可以预计的延迟时间和逻辑单元对连接单元高比率的优点。

而FPGA却是有很多的连接单元,这样虽然让它可以更加灵活的编辑,但是结构却复杂的多。

CPLD和FPGA另外一个区别是大多数的FPGA含有高层次的内置模块(比如加法器和乘法器)和内置的记忆体。

因此一个有关的重要区别是很多新的FPGA支持完全的或者部分的系统内重新配置。

允许他们的设计随着系统升级或者动态重新配置而改变。

一些FPGA可以让设备的一部分重新编辑而其他部分继续正常运行。

CPLD和FPGA还有一个区别:

CPLD下电之后,原有烧入的逻辑结构不会消失;而FPGA下电之后,再次上电时,需要重新加载FLASH里面的逻辑代码,需要一定的加载时间。

FPFA的主要生产商有:

Altera,Xilinx,Actel,Lattice。

其中Altera作为世界老牌可编程逻辑器件的厂家,是当前世界范围内市场占有率最大的厂家,它和Xilinx主要生产一般用途FPGA,其主要产品采用RAM工艺。

Actel主要提供非易失性FPGA,产品主要基于反熔丝工艺和FLASH工艺。

1.3VHDL语言和QUARTUSII简介

1.3.1VHDL语言简介

VHDL(VHSIC(VeryHighSpeedIntegratedCircuit)HardwareDescriptionLanguage)是超高速集成电路硬件描述语言,是一种用于电路设计的高级语言。

它出现于80年代后期,刚开始时它是由美国国防部开发出来的,是为了供美军用来提高设计的可靠性和缩减开发周期的一种使用范围比较小的设计语言。

VHDL语言主要应用于数字电路系统的设计。

目前,国内对它的应用多数集中在FPGA/CPLD/EPLD的设计当中,除此之外,一些较为有实力的单位,也将它用来设计ASIC。

VHDL语言具有多层次描述系统硬件功能的能力,既可以描述系统级电路,又可以描述门级电路。

而描述既可以采用行为描述、寄存器传输描述或结构描述,也可以采用三者混合的混合级描述。

另外,VHDL还支持惯性延迟和传输延迟,还可以准确地建立硬件电路模型。

VHDL支持预定义的和自定义的数据类型,给硬件描述带来较大的自由度,使设计人员能够方便地创建高层次的系统模型。

VHDL语言具有自顶向下和基于库的设计特点。

其开发流程:

在顶层用方框图或硬件语言对电路的行为进行描述后,进行系统仿真验证和纠错,再用逻辑综合优化工具生成具体的门级逻辑电路的网表,然后通过适配器将网表文件配置于指定的目标器件,产生最终下载文件或配置文件。

最后把适配后生成的下载或配置文件通过编程器或编程电缆下载到具体的FPGA/CPLD器件中去,以便进行硬件调试和验证,从而实现可编程的专用集成电路ASIC的设计。

VHDL主要用于描述数字系统的结构,行为,功能和接口,除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。

VHDL系统设计与其他硬件描述语言相比,具有比较强的行为描述能力,从而决定了它成为系统设计领域最佳的硬件描述语言之一。

强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证[4]。

VHDL语言能够成为标准化的硬件描述语言并获得广泛应用,它自身必然具有很多其他硬件描述语言所不具备的优点。

归纳起来,VHDL语言主要具有以下优点:

1、VHDL语言功能强大,设计方式多样

VHDL语言具有强大的语言结构,只需采用简单明确的VHDL语言程序就可以描述十分复杂的硬件电路。

同时,它还具有多层次的电路设计描述功能。

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

VHDL语言设计方法灵活多样,既支持自顶向下的设计方式,也支持自底向上的设计方法;既支持模块化设计方法,也支持层次化设计方法[5]。

2、VHDL语言具有强大的硬件描述能力

VHDL语言具有多层次的电路设计描述功能,既可描述系统级电路,也可以描述门级电路;描述方式既可以采用行为描述、寄存器传输描述或者结构描述,也可以采用三者的混合描述方式。

同时,VHDL语言也支持惯性延迟和传输延迟,这样可以准确地建立硬件电路的模型。

VHDL语言的强大描述能力还体现在它具有丰富的数据类型。

VHDL语言既支持标准定义的数据类型,也支持用户定义的数据类型,这样便会给硬件描述带来较大的自由度。

3、VHDL语言具有很强的移植能力

VHDL语

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1