行业资讯

B体育什么是FPGA?为什么FPGA会如此重要?

作者:小编 点击: 发布时间:2024-08-18 00:01:40

  B体育什么是FPGA?为什么FPGA会如此重要?美国前总统特朗普曾经发布过一条禁令,由于中兴违反了美国的某个条例,禁止美国已经国外任何一家公司向中兴销售FPGA芯片。

  这个时候,一定会有抬杠青年说,我见过国内生产的FPGA芯片,还用过呢。【通常遇到这一类质疑声,我一般都会说:你是对的!】

  后来中兴没有办法,只能妥协了,美国派了人入驻中兴,还签了一些协议。最后才恢复到原来的买卖关系中。

  FPGA 是一种硬件可重构的体系结构。它的英文全称是Field Programmable Gate Array,中文名是现场可编程门阵列。

B体育什么是FPGA?为什么FPGA会如此重要?(图1)

  FPGA就是一个可以通过编程来改变内部结构的芯片,FPGA常年来被用作专用芯片(ASIC)的小批量替代品,

B体育什么是FPGA?为什么FPGA会如此重要?(图2)

  但是,与这些需要投入巨大成本和精力的方式不同,一旦用户创建了具有多个FPGA的原型板,就可以立即运行您设计的新架构。

  因此,许多新的架构应运而生因此,对可重构处理器的研究和对新FPGA架构的研究也开始蓬勃发展,

  在此之后,FPGA使用灵活,适用性强的特征在通信/图像处理领域也大获好评,并将其应用于路由器等通信网络的各种设备中。

B体育什么是FPGA?为什么FPGA会如此重要?(图3)

  其中包括Intel、IBM、AMD、TI、GE、AT&T、摩托罗拉、朗讯、三星、东芝、飞利浦等实力雄厚的大公司,

  FPGA是集成电路大产业中的小领域,5G和AI为行业增长提供确定性,国产替代叠加行业增长,国产FPGA市场腾飞在即。

B体育什么是FPGA?为什么FPGA会如此重要?(图4)

B体育什么是FPGA?为什么FPGA会如此重要?(图5)

  通信领域需要高速的通信协议处理方式,另一方面通信协议随时都在修改,不适合做成专门的芯片,所以能够灵活改变的功能的FPGA就成了首选

  电信行业一直大量使用FPGA。电信标准不断变化,建造电信设备非常困难,因此首先提供电信解决方案的公司往往会占领最大的市场份额。由于ASIC需要花费很长时间才能制造,因此FPGA提供了捷径的机会。最初的电信设备版本开始采用FPGA,这引发了FPGA价格冲突。尽管FPGA的价格与ASIC仿真市场无关紧要,但电信芯片的价格却很重要b体育app下载官网。许多年前,AT&T和朗讯制造了自己的FPGA,称为ORCA(优化的可重配置单元阵列),但就硅片的速度或尺寸而言,它们与Xilinx或Altera不具有竞争优势。

  利用FPGA构建一个嵌入式的底层环境,然后在此之上编写一些嵌入式软件,事务性的操作更加繁杂一些,对FPGA的操作较少。

  目前CPU很难做到多通道处理和只能检测分析,但是加上FPGA之后就可以轻松解决了,尤其在图形算法领域有得天独厚的优势。

  FPGA可以做到多通道的马达控制,目前马达电力消耗占据全球能源消耗的大头,在节能环保的趋势下,未来各类精准控制马达得以采用,一片FPGA就可以控制大量的马达。

  其中Xilinx(赛灵思)是全球领先的可编程逻辑完整解决方案的供应商。Xilinx研发、制造并销售范围广泛的高级集成电路、软件设计工具以及作为预定义系统级功能的IP(Intellectual Property)核。

B体育什么是FPGA?为什么FPGA会如此重要?(图6)

  IP(Intelligent Property) 核是具有知识产权核的集成电路芯核总称,是经过反复验证过的、具有特定功能的宏模块,与芯片制造工艺无关,可以移植到不同的半导体工艺中。

  比如赛灵思已经基于FPGA设计好了UDP 核、PCIE xDMA 核、UART 核,我们只需要把人家的核添加到我们工程中,那么就相当于与我们的板子已经支持了这个功能。

  上述为lattice的一款FPGA架构,你可以把它想象成一块放满电子元件的硬件电路板,图中“电路板”上的元件有IIC和SPI硬核接口“器件”,有NVCM程序存储“器件”,有RAM数据存储“器件”,还有最小单元的LUT(查找表)器件。

  一般FPGA工程师会使用硬件描述语言Verilog或者VHDL对FPGA进行“编程”,之后,再经过厂家提供的FPGA开发工具(Diamond或Radiant、vivado)的综合、布局、布线,会产生bit文件或bin文件。

  如果工程师将最终产生的bit文件或bin文件下载到FPGA中,就相当于一位硬件工程师,在FPGA芯片这块已经放置了“元件”的“电路板”上b体育app下载官网,进行了布线操作。(也就是把毫无关联的与器件,用铜线连接起来)

  举个例子,FPGA实现的功能是SPI转并口,那么这块FPGA就可以称为“spi接口转换板”。

  当然b体育app下载官网,FPGA和“电路板”终究是不同的,FPGA可以进行重复编程,相当于一块可以反复布线的电路板。

  CPU与FPGA区别之(指令):CPU结构有指令:冯氏结构中,由于执行单元(如 CPU 核)可能执行任意指令,就需要有指令存储器、译码器、各种指令的运算器、分支跳转处理逻辑。由于指令流的控制逻辑复杂,不可能有太多条独立的指令流, 因此 GPU 使用 SIMD(单指令流多数据流)来让多个执行单元以同样的步调处理不同的数据,CPU 也支持 SIMD 指令。FPGA结构无需指令:而 FPGA 每个逻辑单元的功能在重编程(烧写)时就已经确定,不需要指令。

  CPU与FPGA区别之(内存)CPU结构仲裁与共享内存:冯氏结构中使用内存有两种作用。一是保存状态,二是在执行单元间通信。由于内存是共享的,就需要做访问仲裁;为了利用访问局部性,每个执行单元有一个私有的缓存,这就要维持执行部件间缓存的一致性。

  FPGA结构无需仲裁与共享内存:对于保存状态的需求,FPGA 中的寄存器和片上内存(BRAM)是属于各自的控制逻辑的,无需不必要的仲裁和缓存。对于通信的需求,FPGA 每个逻辑单元与周围逻辑单元的连接在重编程(烧写)时就已经确定,并不需要通过共享内存来通信。

  FPGA流水线与数据并行处理:例如:处理一个数据包有 10 个步骤,FPGA 可以搭建一个 10 级流水线,流水线的不同级在处理不同的数据包,每个数据包流经 10 级之后处理完成。每处理完成一个数据包,就能马上输出。

  GPU数据并行处理:而 GPU 的数据并行方法是做 10 个计算单元,每个计算单元也在处理不同的数据包,

  总结一句话,很多算法如果用纯软件实现,需要很多条指令才能完成, 如果用FPGA,只需要在有限个时钟周期即可完成,速度快的不是一点半腥。


相关标签:
热门产品