当前位置:首页 > 新闻资讯 > FPGA之家动态 >

FPGA技术的应用与发展趋势 (1)

时间:2025-08-31      来源:FPGA_UCY 关于我们 0

10

科技资讯

科技资讯 SCIENCE & TECHNOLOGY INFORMATION

2007 NO.14

SCIENCE & TECHNOLOGY INFORMATION

工 业 技 术

自从1984年美国Xilinx公司率先发明

FPGA 用户现场可编程门阵列的概念以来,

FPGA技术随着亚微米CMOS集成电路制作技

术的成熟不断深层次发展。随着核心器件的

集成度不断增大,器件价格不断下降,

FPGA以其现场设计、现场修改、现场验

证、现场实现的可达数万门级的数字系统单

片化的应用优势,逐渐受到各国电子系统应

用领域的设计工程师广泛的关注和欢迎。世

界上主要的EDA技术公司纷纷在EDA工具上

开发FPGA应用设计接口,推动了FYGA应

用设计的通用化。正是在这样的技术应用背景

下,世界上一些主要的微电子技术公司,立足

自身的技术特长,在FPGA器件性能、价格、

新品种方面相互竞争,推陈出新。目前,FPGA

技术已经不再是ASIC技术领域的一个点缀和

补充,而跃之为电子应用 包括通讯技术、计算

机应用、自动控制、仪器仪表、ASIC设计领

域广受欢迎的实用化技术,成为数字系统的科

研实验、样机试制、小批量产品的即时实现的

最佳途径。同时,FPGA器件的新功能、新构

思正在不断出现,采用通用设计方法,现场实

现用户指定功能的单片电子系统,已不是遥远

的梦想,电子设计的传统方式将发生变革。

1 FPGA技术简介与特点分析

现场可编程门阵列(FPGA)是一种新

兴的可编程逻辑器件,具有更高的密度、更快

的工作速度和更大的编程灵活性,被广泛应用

于各种电子类产品中。FPGA是实现可重新配

置和可扩展体系结构的一种标准器件,可作为

标准处理器芯片的算法协处理器。由于FPGA

的现场可编程性及高密度性,使电路设计的大

部分工作简化为在微机上进行。由于借助

CAD技术,使得产品的开发周期缩短,风险投

资减小。样品体积及器件功耗也由于器件高密

度性而大大降低,使得用户无需到国外流片就

可以在实验室开发出大规模专用集成电路。它

一经出现,就立即受到电路和系统设计者的喜

爱,成为当今电路发展中一个异军突起的新型

电路。FPGA的功能完全由用户编制的配置程

序所决定,在不改变其外部接口的情况下可以

很方便地改变其电路的逻辑功能,因此非常适

用于小批量、多品种的军品设备的研制。由于

它使用方便,改变逻辑功能易于实现,这也迎

合了现代通信发展的要求,所以,国外已普遍

地使用FPGA来设计产品或进行科研工作。

FPGA的器件结构可分为两种基本类型,

一类是阵列分布的逻辑单元型的,其电路结构

接近于门阵列电路,芯片内部由阵列分布的可

编程逻辑单元块组成,芯片四周为可编程输入

输出单元;另一类属于PAL结构扩展型,其结

FPGA技术的应用与发展趋势

尚明

(天津工业大学信息与通信工程学院 天津 300160)

摘 要:现场可编程门阵列FPGA是 80年代末发展起来的新型大规模集成逻辑器件,它采用高级计算机辅助设计技术进行

器件的开发与设计,其优越性大大超过普通TTL集成门,具有速度快、功耗低、功能强,可反复使用等特点。本文重点介

绍FPGA的基本组成原理和特点,通过对FPGA的设计流程进行探讨,说明了FPGA的常见技术应用方式,最后说明了FPGA

技术的发展趋势。

关键词:FPGA 现场可编程门阵列 可配置逻辑块 专用集成电路

中图分类号:TP313 文献标识码:A 文章编号:1672-3791 200705 b-0010-03

构特点是与“阵列”可编程,或“阵列”固定,

因而使得互连模式不够灵活。

FPGA技术器件的主要特点是:采用

FPGA设计ASIC电路,用户不需要投片生产,

就能得到合用的芯片;可做其它全定制或半定

制ASIC电路的中试样片;有丰富的触发器和

I/O引脚;是ASIC电路中设计周期最短、开

发费用最低、风险最小的器件之一;采用高速

CHMOS工艺,功耗低,可以与CMOS、TTL

电平兼容。

2 FPGA器件的设计开发流程

高密度可编程逻辑的开发,需要易于设

计并可实现最快时间上市。占全球FPGA市场

分额最大的Xilinx公司的XDM软件包拥有强

大的开发功能,并支持许多第三方EDA厂家

的设计输入和仿真工具。使设计者易于掌握并

与其原有开发环境兼容。一般FPGA芯片的设

计开发流程主要分为:设计准备 Design

Prepare、设计输入 Design Entry、设计实

现 Design Implementation、设计验证 Design

Verification和器件编程这五部分。各个部分之

间只有功能上的区分,无严格的前后顺序,可

往复或交错进行,基本的开发设计流程如图1

所示。

图1 FPGA器件的设计开发流程图

2.1 设计准备阶段

在进行FPGA器件的设计开发之前,首

先要进行方案论证、系统设计和器件选择等

设计准备工作。设计者首先要根据任务要

求,如系统所完成的功能和复杂程度,对工

作速度和器件本身的资源和成本、连线的可

布性等方面进行权衡,选择合适的方案和合

适的器件类型。

2.2 设计输入阶段

设计输入是将要实现的逻辑关系以开发系

统所支持的方式输入计算机,设计者将所设

计的系统或电路以开发软件要求的某种形式表

示出来并输入到计算机,这是设计FPGA的

开始。有多种方法实现设计输入,经常采用

的方式有:原理图、硬件描述语言 HDL、

波形输入等,最常用的是原理图编辑器。它

允许用两种方式进行设计输入:

1图形输入:这种输入方式允许使用元

件库中提供的各种常规门电路及逻辑部件 宏

单元设计电路,并以原理图的方式输入。

2文本输入:这种输入方式允许使用高

级可编程逻辑设计语言,如ABEL、CUPL

语言等编写输入文件,也允许直接用布尔方

程进行输入。

设计输入的目的是要产生一个 XNF

Xilinx Netlist Format文件,这是设计实现

和设计验证的输入文件。如果同时采用图形

输入和文本输入,则还需要进行归并处理,

以产生一个完整的XNF文件。

2.3 设计处理阶段

FPGA器件的设计处理是设计流程中的核

心环节,在设计处理过程中,编译软件将对

设计输入的文件进行逻辑化简、综合优化,

并且适当地用一片或多片器件自动地进行适

配,最后产生编程用的编程文件。设计处理

阶段一般包括语法检查和设计规则检查、逻

辑优化和综合、适配和分割、布局布线、生

成编程数据文件等。

设计实现的主要任务是对归并后的XNF

文件进行分割、布局和布线。分割是把XNF

文件中的逻辑设计经过化简,分割成为以

CLB及IOB为基本单元的逻辑设计。布局是

把分割后的逻辑设计分配到FPGA的相应CLB

及IOB位置。布线是对已布局好的CLB、IOB

进行连线。设计实现的最终目的是产生符合

设计要求的比特流文件,这是用来为FPGA

芯片装载的二进制文件。设计实现工具将已

输入的逻辑映射到目标器件结构的资源中,

决定逻辑的优化布局,并选择一个连接逻辑

和IO块的布线通道。将自动将所输入的设计

进行优化和映射,然后按复杂的优化算法进

行分割、布局和布线,最后自动生成可以配

置芯片的二进制码,即位流文件。对于一些

复杂并且要求比较严格的设计,设计者可以

在不同程度上控制自动实现过程。

2.4 设计验证阶段

FPGA器件的设计验证包括功能仿真和时

序仿真,这两项工作是在设计处理过程中同

时进行的。功能仿真是在设计输入完成之

后,在选择具体的器件进行编译之前进行的

逻辑功能验证,此仿真无延时信息,对于系

11  科技资讯 SCIENCE & TECHNOLOGY INFORMATION

2007 NO.14

SCIENCE & TECHNOLOGY INFORMATION

工 业 技 术

科技资讯

统初步的功能检测非常方便。功能仿真假设

信号通过每个逻辑门产生同样的延迟时间 0.

1ns,而通过路径没有延时。这种仿真可测

试系统功能是否满足设计要求。仿真前首先

要利用波形编辑器或硬件描述语言建立测试向

量,仿真结果以报告或波形的形式输出,从

中可以看出各个节点的结果,如果有错误,

则返回设计输入中修改逻辑设计。时序仿真

是在布局布线后进行,它能按照所选器件的

实际延迟时间进行模拟,主要用来验证系统

的时序关系。时序仿真是在选择了具体器件

并完成布局布线之后进行的时序关系仿真,

由于不同的器件内部的延时不一样,不同的

布局、布线方案也能引起不同的延时,因此

在设计处理以后,对系统和各模块进行时序

仿真、分析其时序关系,估计设计的性能以

及检查和消除竞争冒险是非常有必要的。

2.5 器件编程

FPGA器件的编程是指将编程数据写到可

编程器件中去。器件编程要满足一定的条

件,如编程电压、编程时序和算法等。器

件编程完毕之后,可以用编译时产生的文件

进行检验、加密等工作。对于具有边界扫描

测试能力和在系统编程能力的器件来说,测

试起来就更加方便。

FPGA中有大量实现组合逻辑的资源,

可以完成较大规模的组合逻辑电路设计,而

其中相当数量的存储电路 触发器又可完成复

杂的时序逻辑电路设计。通过使用各种EDA

工具,用原理图或硬件描述语言,可以很方

便地将复杂的电路在FPGA中实现。编程器

是对FPGA进行写入和擦除的专用装置,能

够提供写入或擦除操作所需要的电源电压和控

制信号,并通过串行接口从计算机接收编程

数据,最终写进FPGA之中。

3 FPGA技术的应用

3.1 FPGA技术在数字中频处理中的应用

FPGA在软件无线电中的应用主要体现在

数字上变频DUC和数字下变频DDC中。经

过A/D采样后的信息直接送给FPGA,在

FPGA中完成本地混频,把中频信号搬移到

基带信号,然后经过低通滤波和多级抽取滤

波,降低信息的采样速率,由FPGA送至通

用DSP,实现基带信号的调制解调。

要实现本地数字混频,主要由两个部件

完成,一是乘法器,二是数控振荡器

NCO。乘法器是数字信号处理中的基本运

算单元,在FPGA中设计较为复杂,而且占

用资源也比较多,但在具体实现FIR滤波

时,往往不采用这种直接的乘累加的形式,

以免占用大量的资源;在实现混频时,由于

只需两个乘法器,而且是在很高的速率下进

行,所以不考虑资源的限制。抽样率变换滤

波器组下变频过程中经过混频后的信号必须进

行抽取滤波,以便降低抽样速率,使得通用

的DSP对基带信号处理时有充足的时间完成运

算。在上变频过程中,首先要进行插值滤

波,提高抽样速率,从而实现在IF范围内频

谱的搬移。

3.2 在FPGA中植入嵌入式系统处理器

目前最为常用的嵌入式系统大多采用了含

有ARM的32位知识产权处理器核的器件。尽

管由这些器件构成的系统有很强的功能,但

为了使系统更为完备,功能更为强大,对更

多任务的完成具有更好的适应性,通常必须

为此处理器配置许多接口器件,如VGA接

口,DSP协处理模块等等,这样势必增加整

个系统的体积、功耗,降低了系统的可靠

性。不但如此,还有许多诸如实时语音和图

象处理等功能,传统的ARM系统是无能为力

的。但是如果将ARM或其他知识产权核以

硬核方式植入FPGA中,利用FPGA中的可

编程逻辑资源和IP软核来构成该系统的接口

或协处理模块,就能很好地解决这些问题。

这样可以使FPGA灵活的硬件设计和硬件实现

与处理器的强大的软件功能有机结合,高效

实现一种全新的SOC。但这种方案仍存在一

些不足,如由于此类硬核多来自第3方公司,

从而导致FPGA器件价格相对较高;由于硬

核是预先植入的,设计者无法根据实际需要

改变处理器的结构,如总线规模、接口方

式,指令形式和指令功能等。

3.3 基于FPGA的DSP系统设计

面对当今的应用市场,DSP处理器在处

理速度、硬件灵活性、开发效率和知识产权

等许多方面存在难以克服的缺点。大容量、

高速度的FPGA一般都内嵌有可配置的高速

RAM、PLL、LVDS、LVTTL以及硬件乘

法累加器等DSP模块。用FPGA来实现数字

信号处理可以很好地解决并行性和速度问题,

而且其灵活的可配置特性以及先进的开发工具

使得FPGA构成的DSP系统弥补了传统方案

的诸多不足。现在利用FPGA进行DSP系统

的开发应用上,已有了全新的设计工具。

DSP基本模块是以算法级描述出现的,用户

易于从系统级进行理解,甚至不需要十分清

楚FPGA结构和硬件描述语言。基于FPGA

的DSP解决方案完全基于EDA特有的自顶向

下的设计流程,从与硬件完全无关的系统级

开始,首先利用MATLAB提供的模块 或IP

核完成顶层系统设计及系统仿真测试,然后

将设计模型转换成VHDL的RTL表述,通过

进行综合、适配与时序仿真;最后形成对指

定FPGA的POF和SOF文件,实现硬件DSP

系统的仿真测试。

3.4 FPGA技术在单片机中的应用

FPGA等大规模可编程逻辑器件可以取代

现有的全部微机接口芯片,实现微机系统中

的存储器、地址译码等多种功能。利用

FPGA可以把多个微机系统的功能电路集成在

一块芯片上。在功能上,单片机与FPGA有

很强的互补性,单片机具有性能价格比高、

功能灵活、易于人机对话以及良好的数据处

理等特点,而FPGA具有高速、高可靠性以

及开发便捷、规范等优点。单片机可用总线

方式和独立方式与FPGA接口,由于其通信

工作时序是纯硬件行为,对于单片机来说,

只需一条单指令就能够完成所需读写时序,

在FPGA中通过逻辑切换,可使单片机与

SRAM或ROM接口,这种方式类似于微处

理器系统的DMA工作方式。首先由FPGA与

接口的AD等器件进行高速数据采样,并将数

据暂存于SRAM中,采样结束后,通过切换

单片机可以与SRAM以总线方式进行数据通

信。目前许多实验电路板都将FPGA与单片

机有机地结合在一起,从而可以完成许多复

杂的设计任务通常单片机负责键控、显示、

计算、通信、简单控制和系统协调,而

FPGA负责高速、高精度和高稳定性等指标

的实现,由单片机负责功能上的设计FPGA

负责指标上的设计。

4 FPGA技术的发展趋势

4.1 PGA技术向大容量、低电压、低功耗方

向发展

大容量FPGA是市场发展的焦点,FPGA

产业中的两大霸主:Altera和Xilinx在超大

容量FPGA上展开了激烈的竞争。Altera推

出的APEXEP2A70,其容量为67200个LE

Logic element,逻辑单元,Xilinx推出的

Vitex6000,其容量为33792个slices 一个slices

约等于2个LE。采用深亚微米 DSM的半导

体工艺后,器件在性能提高的同时,价格也

在逐步降低。由于便携式应用产品的发展,

对FPGA的低电压、低功耗的要求日益迫

切,无论那个厂家、哪种类型的产品,都

在瞄准这个方向而努力。

4.2 PGA技术向高密度方向发展

随着生产规模的提高,产品应用成本的

下降,FPGA的应用已经不是过去的仅仅适

用于系统接口部件的现场集成,而是将它灵

活地应用于系统级 包括其核心功能芯片设计

之中。在这样的背景下,国际主要FPGA厂

家在系统级高密度FPGA的技术发展上,主

要强调FPGA的IP 知识产权硬核和IP软核。

当前具有IP内核的系统级FPGA的开发主要

体现在:一方面是FPGA厂商将IP硬核 指完

成版图设计的功能单元模块嵌入到FPGA器

件中,另一方面是大力扩充优化的IP软核 指

利用HDL语言设计并经过综合验证的功能单

元模块用户可以直接利用这些预定义的、

经过测试和验证的IP核资源有效地完成复杂

的片上系统设计。

4.3 动态可重构的FPGA

动态可重构FPGA是指在一定条件下芯片

不仅具有在系统重新配置电路功能的特性,

而且还具有在系统动态重构电路逻辑的能力。

对于数字时序逻辑系统,动态可重构FPGA

的意义在于其时序逻辑的发生不是通过调用芯

片内不同区域、不同逻辑资源来组合而成,

而是通过对FPGA进行局部的或全局的芯片逻

辑的动态重构而实现的。动态可重构FPGA

在器件编程结构上具有专门的特征,其内部

逻辑块和内部连线的改变,可以通过读取不

同的SRAM中的数据来直接实现这样的逻辑

重构,时间往往在纳秒级,有助于实现

FPGA系统逻辑功能的动态重构。

4.4 FPGA的功能扩展和在线编程技术不断发展

FPGA技术最新发展的另一特征,反映

在所谓功能扩展和现场编程技术方面。在原

来离线的串/并行格式编程技术基础上,创

新产生了所谓的在线式可编程技术 ISP和动态

可重配置技术 或称Cache logic。使FPGA

器件不仅仅是现场可编程,而且可供用户在

线编程,动态容量可扩展,从而进一步提高

了FPGA技术的应用灵活性,降低了应用系

统的实现成本。动态可重配置技术应用于其

基于SRAM技术的FPGA器件之中,不仅可

12

科技资讯

科技资讯 SCIENCE & TECHNOLOGY INFORMATION

2007 NO.14

SCIENCE & TECHNOLOGY INFORMATION

工 业 技 术

以使用户实现在线用逻辑功能的转换,而且

利用其高速的,动态的重配置特征,可使有限

的芯片物理逻辑空间得以在时间空间上的扩

展。

5 结语

随着半导体技术的飞速发展,FPGA器

件的集成度和性能不断提高,采用FPGA技术

实现电子线路设计制造已成为一种高效可靠的

重要解决方案,在工业控制、信号处理、网络

通讯、图形图象处理等领域得到越来越广泛的

应用,其作为替代ASIC来实现电子系统的前

景将日趋光明。FPGA技术的发展必将推动数

字系统设计进入一个崭新阶段。


注明:本内容来源网络,不用于商业使用,禁止转载,如有侵权,请来信到邮箱:429562386ⓐqq.com 或联系本站客服处理,感谢配合!

用户登陆

    未注册用户登录后会自动为您创建账号

提交留言