完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
` 来源 网络 FPGA(Field Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为ASIC领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。 (1) 技术背景 以硬件描述语言(Verilog或VHDL)所完成的电路设计,可以经过简单的综合与布局,快速的烧录至 FPGA 上进行测试,是现代 IC设计验证的技术主流。 这些可编辑元件可以被用来实现一些基本的逻辑门电路(比如AND、OR、XOR、NOT)或者更复杂一些的组合功能比如解码器或数学方程式。在大多数的FPGA里面,这些可编辑的元件里也包含记忆元件例如触发器(Flip-flop)或者其他更加完整的记忆块。系统设计师可以根据需要通过可编辑的连接把FPGA内部的逻辑块连接起来,就好像一个电路试验板被放在了一个芯片里。一个出厂后的成品FPGA的逻辑块和连接可以按照设计者而改变,所以FPGA可以完成所需要的逻辑功能。 1984年 Ross Freeman、BernieVonderschmitt和Jim Barnett创立了赛灵思(Xilinx)公司,Xilinx 是第一个建立无工厂(fabless)生产模式,除了设计、营销与产品支持以外其他事务均进行外包的半导体公司,Xilinx首创了FPGA这一创新性的技术,并于1985年首次推出商业化产品——XC2064,采用2μm工艺,包含64个逻辑模块和85000个晶体管,门数量不超过1000个。 Xilinx创始人Ross Freeman(左图, FPGA的发明人)和BernieVonderschmitt(右图) 世界第一款FPGA——XC2064实物图 FPGA一般来说比ASIC的速度要慢,实现同样的功能比ASIC电路面积要大。但是他们也有很多的优点比如可以快速成品,可以被修改来改正程序中的错误和更便宜的造价。 与FPGA相似的另外一种方法是用CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)。CPLD和FPGA包括了一些相对大数量的可编辑逻辑单元。CPLD逻辑门的密度在几千到几万个逻辑单元之间,而FPGA通常是在几万到几百万。CPLD和FPGA的主要区别是他们的系统结构。 CPLD和FPGA在系统结构的比较 (2) 工作原理 FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输入输出模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。 FPGA是可编程器件,与传统逻辑电路和门阵列(如PAL,GAL及CPLD器件)相比,FPGA具有不同的结构。FPGA利用小型查找表(16×1RAM)来实现组合逻辑,每个查找表连接到一个D触发器的输入端,触发器再来驱动其他逻辑电路或驱动I/O,由此构成了既可实现组合逻辑功能又可实现时序逻辑功能的基本逻辑单元模块,这些模块间利用金属连线互相连接或连接到I/O模块。 FPGA 的可编程实际上是改变了CLB 和IOB 的触发器状态,这样,可以实现多次重复的编程由于FPGA 需要被反复烧写,它实现组合逻辑的基本结构不可能像ASIC 那样通过固定的与非门来完成,而只能采用一种易于反复配置的结构。 查找表(Look-Up-Table,LUT)可以很好地满足这一要求,LUT 本质上就是一个RAM。 目前FPGA 中多使用4 输入的LUT,所以每一个LUT 可以看成一个有4 位地址线的RAM。 当用户通过原理图或HDL 语言描述了一个逻辑电路以后,PLD/FPGA 开发软件会自动计算逻辑电路的所有可能结果,并把真值表事先写入RAM,这样,每输入一个信号进行逻辑运算就等于输入一个地址进行查表,找出地址对应的内容,然后输出即可。 输入与门的真值表 从表中可以看到,LUT 具有和逻辑电路相同的功能。实际上,LUT 具有更快的执行速度和更大的规模。 FPGA芯片主要由7部分完成,分别为:可编程输入输出单元、基本可编程逻辑单元、完整的时钟管理、嵌入块式RAM、丰富的布线资源、内嵌的底层功能单元和内嵌专用硬件模块。 FPGA芯片的内部结构 每个模块的功能如下: 可编程输入输出单元(IOB) 可编程输入/输出单元简称I/O单元,是芯片与外界电路的接口部分,完成不同电气特性下对输入/输出信号的驱动与匹配要求。 FPGA内的I/O按组分类,每组都能够独立地支持不同的I/O标准。通过软件的灵活配置,可适配不同的电气标准与I/O物理特性,可以调整驱动电流的大小,可以改变上、下拉电阻。I/O口的频率也越来越高,一些高端的FPGA通过DDR寄存器技术可以支持高达2Gbps的数据速率。 可配置逻辑块(CLB) CLB是FPGA内的基本逻辑单元。CLB的实际数量和特性会依器件的不同而不同,但是每个CLB都包含一个可配置开关矩阵,此矩阵由4或6个输入、一些选型电路(多路复用器等)和触发器组成。 开关矩阵是高度灵活的,可以对其进行配置以便处理组合逻辑、移位寄存器或RAM。在Xilinx公司的FPGA器件中,CLB由多个(一般为4个或2个)相同的Slice和附加逻辑构成。每个CLB模块不仅可以用于实现组合逻辑、时序逻辑,还可以配置为分布式RAM和分布式ROM。 数字时钟管理模块(DCM) 业内大多数FPGA均提供数字时钟管理,如Xilinx的全部FPGA均具有这种特性。 Xilinx推出最先进的FPGA提供数字时钟管理和相位环路锁定。相位环路锁定能够提供精确的时钟综合,且能够降低抖动,并实现过滤功能。 嵌入式块RAM(BRAM) 大多数FPGA都具有内嵌的块RAM,这大大拓展了FPGA的应用范围和灵活性。块RAM可被配置为单端口RAM、双端口RAM、内容地址存储器 (CAM)以及FIFO等常用存储结构。 CAM存储器在其内部的每个存储单元中都有一个比较逻辑,写入 CAM中的数据会和内部的每一个数据进行比较,并返回与端口数据相同的所有数据的地址,因而在路由的地址交换器中有广泛的应用。 除了块RAM,还可以将 FPGA中的LUT灵活地配置成RAM、ROM和FIFO等结构。单片块RAM的容量为18k比特,即位宽为18比特、深度为1024,可以根据需要改变其位宽和深度,也可以将多片块RAM级联起来形成更大的RAM。 丰富的布线资源 布线资源连通FPGA内部的所有单元,而连线的长度和工艺决定着信号在连线上的驱动能力和传输速度。 FPGA芯片内部有着丰富的布线资源,根据工艺、长度、宽度和分布位置的不同而划分为4类不同的类别,详见下表。 FPGA芯片内部的布线资源表 底层内嵌功能单元 内嵌功能模块主要指DLL(Delay Locked Loop)、PLL(Phase LockedLoop)、DSP和CPU等软处理核(Soft Core)。 DLL和PLL具有类似的功能,可以完成时钟高精度、低抖动的倍频和分频,以及占空比调整和移相等功能。 内嵌专用硬核 内嵌专用硬核是相对底层嵌入的软核而言的,指FPGA处理能力强大的硬核(Hard Core),等效于ASIC电路。为了提高FPGA性能,芯片生产商在芯片内部集成了一些专用的硬核。 例如:为了提高FPGA的乘法速度,主流的FPGA 中都集成了专用乘法器;为了适用通信总线与接口标准,很多高端的FPGA内部都集成了串并收发器(SERDES),可以达到数十Gbps的收发速度。 正因如此,FPGA具有如下的基本特点: ●采用FPGA设计ASIC电路,用户不需要投片生产,就能得到合用的芯片,是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。 ●可做其它全定制或半定制ASIC电路的中试样片。 ●内部有丰富的触发器和I/O引脚。 ●采用高速CMOS工艺,功耗低,可以与CMOS、TTL电平兼容。 可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。 (3) 生产厂商 全球知名的FPGA生产厂商及相应的开发平台信息如下: 尽管FPGA和CPLD都是可编程ASIC器件,有很多共同特点,但由于CPLD和FPGA结构上的差异,具有各自的特点: (4) 市场发展 20世纪90年代后期FPGA市场就已经过一番激烈整合,许多业者不是退出PLD(可程序化逻辑装置)市场,就是出售其PLD业务部门,或将PLD业务部门分立成独立公司,或进行购并等。 时至今日,FPGA市场的主要业者仅剩数家,包括Altera、Xilinx、Actel、Atmel、Lattice、Quick Logic等,不过2007年11月Quick Logic也确定淡出FPGA市场,并转进发展CSSP(Customer Specific Standard Product)。 但FPGA领域依然有新兴业者出现,例如Achronix Semiconductor、Math Star等。且除了单纯数字逻辑性质的可程序逻辑装置外,混讯、模拟性质的可程序逻辑装置也展露头角,例如: Cypress Semiconductor的PSoC(ProgrammableSystem-on-Chip)即具有可组态性的混讯电路、Actel公司也提出可程序化的混讯芯片——Fusion,或者也有业者提出所谓的现场可程序化模拟数组(Field Programmable Analog Array;FPAA)等,相信这些都能为可程序化芯片带来更多的发展动能。 Cypress的PSoC典型应用 FPGA产品的应用领域已经从原来的通信扩展到消费电子、汽车电子、工业控制、测试测量等广泛的领域。而应用的变化也使FPGA产品近几年的演进趋势越来越明显: 一方面,FPGA供应商致力于采用当前最先进的工艺来提升产品的性能,降低产品的成本; 另一方面,越来越多的通用IP(知识产权)或客户定制IP被引入FPGA中,以满足客户产品快速上市的要求。此外,FPGA企业都在大力降低产品的功耗,满足业界越来越苛刻的低功耗需求。 4. ASIC、单片机和DSP的区别与联系 ASIC原本就是专门为某一项功能开发的专用集成芯片,比如:摄像头里面的芯片,小小的一片,集成度很低,成本很低,可是够用了。后来ASIC发展了一些,称为半定制专用集成电路,相对来说更接近FPGA,甚至在某些地方,ASIC就是个大概念,FPGA属于ASIC之下的一部分。 单片机就是一个“百搭”的通用CPU,提供各种接口来对整体进行控制,相当一个总调度,简单的功能一片CPU独立工作也就完成了。原来的51系列就是一堆IO口,后来慢慢的把常用的PWM、AD之类的功能加入了单片机。接下来又出现了AVR、PIC、ARM、HOTEK……,其实ARM9以后,已经说不清ARM算哪类了,目前的架构来看,ARM更接近DSP。 ` |
|
相关推荐 |
|
只有小组成员才能发言,加入小组>>
2249个成员聚集在这个小组
加入小组灵动微电子MM32全系列MCU产品应用手册,库函数和例程和选型表
11715 浏览 3 评论
【MM32 eMiniBoard试用连载】+基于OLED12864的GUI---U8G2
5939 浏览 1 评论
【MM32 eMiniBoard试用连载】移植RT-Thread至MM32L373PS
10975 浏览 0 评论
【MM32 eMiniBoard测评报告】+ 开箱 + 初探
4579 浏览 1 评论
灵动微课堂(第106讲) | MM32 USB功能学习笔记 —— WinUSB设备
4307 浏览 1 评论
[MM32软件] MM32F002使用内部flash存储数据怎么操作?
985浏览 1评论
809浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-1 08:56 , Processed in 0.616693 second(s), Total 60, Slave 45 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号