FPGA的性能特征及其尴尬处境

1. 史称“胶合逻辑专业户”

FPGA(Field Programable Gate Array)问世于1985年,直到十几年前,顾名思义,其内部的硬件资源都是一些呈阵列排列的、功能可配置的基本逻辑单元,以及连接方式可配置的硬件连线。其在产品中的应用范围仅限于信号的汇集、分发、时序调整,以及脉冲序列的生成。

所以,FPGA在长期应用过程中给业界的印象,被固化为“胶合逻辑专业户”,与复杂算法功能的实现无关。又兼,早期的FPGA应用研发工程师都是由硬件工程师兼职,其主流设计思路都是基于PCB原理图的硬件连线,从而更加固化了这一印象。

2. 那啥丝逆袭

事实上,最近十几年,芯片厂商已经在FPGA片内添加了大量RAM块、基础DSP块(由预加法器、乘法器、加法器、累加器、大量寄存器及复杂的可编程逻辑构成的可配置硬件运算单元,通常每片芯片中包含了几十、几百甚至上千个),并且在开发环境中提供了大量基于基础DSP块、RAM块的“软”IP,从而使研发人员基于FPGA算法开发环境能够在较高抽象层次上运用大量分布式硬件资源并行实现多种复杂算法

同时,芯片厂商还在FPGA上提供了专用的高速串行接口,以及用于高速读写DDRx-SDRAM的接口IP,使其内部的硬件算法功能可以方便高效地实现与外部芯片、设备的高速通信,从而使众多模块能够以高耦合度形成更大的算法、功能系统 -- 这可以算是“胶合逻辑专业户”属性的升级换代。

进而,在FPGA芯片中嵌入CPU核(例如ARM核)已经成为各芯片厂商的常规做法,这一架构使FPGA硬件资源与CPU外围接口的耦合程度大大提高,为软硬件协同工作提供了性能更高的平台 -- “胶合”已经发展到了基于片内硬件连线的程度。

总之,经过三十多年的发展、应用,FPGA已经是一种成熟、稳定、高性能的技术,具备高速、并行、运算及引脚资源极其丰富、定时精确(纳秒级)、功能极其灵活、硬件直接实现算法(不需要在操作系统调度下访问片外存储器以读取算法指令序列)、操作数存取机制简单且高效(不需要在操作系统调度下访问片外存储器/外部总线以读取运算过程涉及的各种数据源和状态数据、发出控制指令)(如果执行基于图像分析等大缓存机制的反馈控制算法则需要访问直接连接FPGA引脚的片外存储器)、开发调试手段先进的优点,适合用来实现基于多路高速并行协同采样、高速并行运行多路大运算量协作算法、多通道输出精准协同、强实时性(低延迟量+低延迟抖动量)的高性能复杂反馈控制系统

3. 短板

FPGA的主要短板是,其技术思路、实现方式与软件技术迥异,掌握FPGA应用研发技术(尤其是针对特定需求拟定系统架构、设计并高效实现复杂算法)的工程师与软件工程师相比在数量上处于绝对劣势,从而导致任何熟悉软件技术的研发团队,或者是已经基于软件技术实现了N版产品功能的研发团队在决策引入FPGA技术时都必须考虑人才供给问题,以及,改变既有技术架构的成本问题、采用“黑箱技术”的决策风险问题

FPGA的另一块短板是,尽管具备了在较高抽象层次上实现复杂算法的能力,但这是与“胶合逻辑专业户”相比而言的,其算法开发环境提供的抽象程度仍然比主流软件技术低得多,其设计思路更加偏重于硬件底层,从而导致采用FPGA技术实现复杂算法的项目的研发周期相对较长。也就是说,FPGA“跑得快”的代价是“做得慢”,这必定会在研发团队评估FPGA技术时被视为减分项。

4. 尴尬处境

FPGA一方面能够实现非常复杂、性能非常高的产品功能,能够大幅度提高基于CPU、DSP的产品的性能、性价比,另一方面却被很多研发团队视为万不得已才考虑采用的技术方案,并且其在产品技术架构中的定位还要受到业界历史观点的严重制约。

对于一项问世三十多年、成熟至少十年的技术来说,这种处境的确是非常尴尬的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值