需要了解的FPGA基础知识 - FPGA开发者技术社区 - 电子技术william hill官网 - 广受欢迎的专业电子william hill官网 - 威廉希尔官方网站
分享 收藏 返回

yinwuqing 关注 私信
[文章]

需要了解的FPGA基础知识

一、FPGA是什么

FPGA(Field Programmable Gate Array,简称FPGA),译文:现场可编程门阵列,一种主要以数字威廉希尔官方网站 为主的集成芯片,于1985年由Xilinx创始人之一Ross Freeman发明,属于可编程逻辑器件PLD(Programmable Logic Device)的一种。真正意义上的第一颗FPGA芯片XC2064为Xilinx所发明,这个时间差不多比著名的摩尔定律晚20年左右。FPGA是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物,是作为专用集成威廉希尔官方网站 (ASIC)领域中的一种半定制威廉希尔官方网站 而出现的,既解决了定制威廉希尔官方网站 的不足,又克服了原有可编程器件门威廉希尔官方网站 数有限的缺点。简而言之,FPGA就是一个可以通过编程来改变内部结构的芯片。

二、FPGA的基本结构

FPGA可编程的特性决定了其实现数字逻辑的结构不能像专用ASIC那样通过固定的逻辑门威廉希尔官方网站 来完成,而只能采用一种可以重复配置的结构来实现,而查找表(LUT)可以很好地满足这一要求,目前主流的FPGA芯片仍是基于SRAM工艺的查找表结构。

PLA内部结构
20世纪70年代,可编程逻辑阵列PLA(Programmable Logic Array)问世,PLA中包含了一些固定数量的与门、非门,分别组成了“与平面”和“或平面”,即“与连接矩阵”和“或连接矩阵”,以及仅可编程一次的连接矩阵(因为编程基于的是熔丝工艺),因此可以实现一些相对复杂的与、或多项表达式的逻辑功能。

PROM内部结构
与PLA同时问世的还有可编程只读存储器PROM(Programmable Read-Only Memory),与PLA相同,PROM内部包含“与连接矩阵”和“或连接矩阵”,但是与门的连接矩阵是硬件固定的,只有或门的连接矩阵可编程。

PAL结构
若只有与门的连接矩阵可编程,而或门的连接矩阵是硬件固定的,那么这种芯片叫做可编程阵列逻辑器件PAL(Programmable Array Logic),根据输出威廉希尔官方网站 工作模式的不同,PAL可分为几类,有三态输出、寄存器输出、互补输出,但PAL仍使用熔丝工艺,只可编程一次。

GAL结构
在PAL的基础上,又发展出了通用阵列逻辑器件GAL( Generic Array Logic),相比于PAL有两点改进:一是采用了电可擦除的CMOS工艺,可多次编译,增强了器件的可重配置性和灵活性;二是采用了可编程的输出逻辑宏单元 OLMC(Output Logic Macro Cell),通过编程OLMC可将GAL 的输出设置成为不同状态,仅用一个型号的GAL就可以实现所有PAL器件输出威廉希尔官方网站 的工作模式,增强了器件的通用性。

CPLD结构
早期的可编程逻辑器件主要由上述四种类型的芯片组成,即PROM、PLA、PAL和GAL。它们的共同特点是可以实现速度特性较好的逻辑功能,但由于其结构过于简单所以只能实现规模较小的数字威廉希尔官方网站 。随着科技的发展、社会的进步,人们对芯片的集成度要求越来越高。早期的PLD产品不能满足人们的需求,复杂可编程逻辑器件CPLD(Complex Programmable Logic Device)诞生。CPLD可以看成是PLA器件结构的延续,一个CPLD器件也可以看作若干个PLA和一个可编程连接矩阵的集合。

三、 FPGA的优势

① 灵活性:通过对 FPGA 编程,FPGA 能够执行 ASIC 能够执行的任何逻辑功能。FPGA 的独特优势在于其灵活性,即随时可以改变芯片功能,在技术还未成熟的阶段,这种特性能够降低产品的成本与风险,在 5G 初期这种特性尤为重要。

② 上市时间:由于 FPGA 买来编程后既可直接使用,FPGA 方案无需等待三个月至一年的芯片流片周期,为企业争取了产品上市时间。

③ 成本:FPGA 与 ASIC 主要区别在 ASIC 方案有固定成本而 FPGA 方案几乎没有,在使用量小的时候,FPGA 方案由于无需支付一次性百万美元的流片成本,同时也不用承担流片失败风险,FPGA 方案的成本低于 ASIC,随着使用量的增加,FPGA 方案在成本上的优势逐渐缩小,超过某一使用量后,ASIC 方案由于大量流片产生了规模经济,在成本上更有优势。

计算机应用是多种多样的,最适合于应用的方法也会因应用而异,其中包括现成的微处理器(MPU)和微控制器(MCU)、现成的图形处理单元(GPU)、FPGA和自定义片中系统(SOC)装置。要决定使用哪种方法,需要根据具体的应用需求来综合考虑。
举例来说,在研究诸如5G基站这样的尖端技术时,设计者需要考虑的是,基础标准和协议还在不断地发展。这就是说,设计者需要能够迅速、有效地应对任何超出控制范围的规范变更。类似地,它们需要能够灵活地对系统部署到现场之后发生的标准和协议变化作出反应。另外,他们还必须能够应对系统功能中出现的意外错误或系统安全漏洞,通过修改已有功能或增加新功能来延长系统寿命。
虽然最好的性能通常由SoC提供,但是这种方法非常昂贵和耗费时间。此外,任何在芯片结构中实现的算法本质上都是“冻结在硅片中”。基于以上考虑,这种固有的不灵敏性便成为一个问题。要寻找性能和灵活性的最佳平衡,就需要另一种途径。这一途径通常由FPGA,微处理器/微控制器和FPGA的结合,或者以硬处理器内核为部分结构的FPGA提供。FPGA适用于各种不同的应用,随着技术的发展,现在FPGA普遍适用于实现智能接口功能、电机控制、算法加速和高性能计算 (HPC)、图像和视频处理、机器视觉、人工智能、机器学习 (ML)、深度学习 (DL)、雷达、激光波束、基站和通信等领域 。

四、FPGA的一般设计流程

FPGA的设计流程就是利用EDA开发软件和编程工具对FPGA芯片进行开发的过程。原理图和HDL(Hardware description language,硬件描述语言)是两种最常用的数字硬件威廉希尔官方网站 描述方法。其中,运用HDL设计方法具有更好的移植性、通用性以及利于模块划分的特点,在工作学习中被广泛使用。典型FPGA的开发流程一般如下图所示,其包括功能定义/器件选型、设计输入、功能仿真、综合优化、综合后仿真、实现、布线后仿真、板级仿真以及芯片编程与调试等主要步骤。
FPGA一般设计流程图.jpg

更多回帖

×
发帖