微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 行业新闻动态 > 处理器史话 | FPGA在MCU领域的“一席之地”将何去何从?

处理器史话 | FPGA在MCU领域的“一席之地”将何去何从?

时间:02-04 来源:3721RD 点击:

3. FPGA
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、Bernie Vonderschmitt和Jim Barnett创立了赛灵思(Xilinx)公司,Xilinx 是第一个建立无工厂(fabless)生产模式,除了设计、营销与产品支持以外其他事务均进行外包的半导体公司,Xilinx首创了FPGA这一创新性的技术,并于1985年首次推出商业化产品--XC2064,采用2μm工艺,包含64个逻辑模块和85000个晶体管,门数量不超过1000个。



Xilinx创始人Ross Freeman(左图, FPGA的发明人)和Bernie Vonderschmitt(右图)

世界第一款FPGA--XC2064实物图

FPGA一般来说比ASIC的速度要慢,实现同样的功能比ASIC电路面积要大。但是他们也有很多的优点比如可以快速成品,可以被修改来改正程序中的错误和更便宜的造价。
与FPGA相似的另外一种方法是用CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)。CPLD和FPGA包括了一些相对大数量的可编辑逻辑单元。CPLD逻辑门的密度在几千到几万个逻辑单元之间,而FPGA通常是在几万到几百万。CPLD和FPGA的主要区别是他们的系统结构。


CPLD和FPGA在系统结构的比较

选项

CPLD

FPGA

结构要求

由一个或者多个可编辑的结果之和的逻辑组列和一些相对少量的锁定的寄存器组成; 缺乏编辑灵活性; 具有可以预计的延迟时间和逻辑单元对连接单元高比率的优点。 很多的连接单元; 更加灵活的编辑; 结构复杂很多。

内置功能模块和存储器

如加法器和乘法器等,大多数的FPGA具有; 支持完全的或者部分的系统内重新配置。

运行机制

CPLD下电之后,原有烧入的逻辑结构不会消失

FPGA下电之后,再次上电时,需要重新加载FLASH里面的逻辑代码,需要一定的加载时间。

(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 具有更快的执

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top