关于可编程逻辑器件的分析和应用

描述

FPGA的宽广世界

“逻辑”一词决定了FPGA的多功能性,让FPGA有不同的模型,每个都有特定有时是独一无二的属性来满足不同应用的需要。在这当中最有需求力的是防御雷达、电子战还有信号情报领域,这方面的需求是如此严重以至于很难相信任何一个没有超级计算机的系统能够满足这些需求。然而FPGA已经席卷了防御工业,多亏了它们大规模并行处理能力和I/O口,还有低功耗,以及最近具备的能够处理浮点型算法的能力,该能力是解决许多类型计算问题的关键。

为这些应用服务的是高性能FPGA如Altera的Stratix 10系列,其带有400万个逻辑单元,加工在Intel 14nm Tri-Gate处理器上,配合64位ARM Cortex-A53四核处理器。相比它们的处理器,它们有四倍的处理数据吞吐量、四倍的串行收发器带宽、一个28-Gb/s的底板、56Gb/s的片到片/模块速率、超过2.5Tb/s的串行内存带宽、超过1.3Tb/s的并行内存接口带宽,支持DDR4内存,最高速度可达3200Mb/s.为了满足前述浮点计算能力需求,它们提供超过单精度DSP 10倍的TFLOPs。

总体上,它们耗费的能量是上一代单精度浮点型效率为100GFLOPS/W的高端FPGA的70%。Stratix 10设备被Altera的高级开发调试工具如OpenCL和SoC嵌入式设计套件中的Altera SDK所支持。

在中档范围的是Altera的立即启动型MAX 10 FPGA(图3),集成了DSP、带有12位ADC和温度传感器的模拟电路模块、锁相环、低延时全局时钟、嵌入式软处理器支持、内存控制器、达到736KB的双配置flash,允许你进行存储和在单片上的两个图像间动态切换。它们基于TSMC系列的55-nm工艺嵌入式flash技术设计,该技术支持立即启动配置以使它们可以控制系统中其它元件的上电或初始化。器件密度达2000到50000个逻辑元素。其它特点包括多达500个的用户I/O引脚、18路模拟输入通道还有128位AES加密。

图3:评估板上的Altera MAX 10FPGA来源:Altera

特别有意思的是结合了Nios II代处理器内核、片上外设和带有片下内存接口内存的Nios II处理器。相比固化的微控制器,该Nios II代处理器是一个可配置的“软”IP核,这意味着处理器内核是可编程的并且不是固化在芯片里的。当它在FPGA上实现的时候,它允许软硬件工程师协同工作来优化硬件以及测试里边运行的软件。

就连给大众应用服务的FPGA也有令人生畏的性能。例如,Lattice Semiconductor宣称它的MachXO3 FPGA家族是尺寸最小、每I/O成本最低的平台,旨在扩展系统能力和同时利用如MIPI、PCIe及千兆以太网之类的并行和串行I/O来桥接新兴的连接。它们的封装技术消除了连接线,此举减少了成本,增大了I/O密度。基于模型可以看出它们有640到6900个查找表。典型的应用领域包括消费电子、计算及存储、无线通信、工业控制还有汽车。他们的设计工具库包括流行的逻辑综合软件、预先设计的IP、还有专门适合MachXO3L家族产品的免费参考设计。为了让开发更简单化,Terasic,一家专门使用FPGA(还有其它设备)定制子系统的公司,提供了基于Altera Cyclone V代GX FPGA搭建的Cyclone 5代GX开发套件硬件设计平台。该板(图4)包括相关硬件如一个Arduino接头、板载USB Blaster、带有高速收发器的音频视频功能。该公司的目标是简化评估和制造FPGA子系统的任务,而只需额外增加一台基于Windows的PC机而已。

图4:Terasic的Cyclone五代GX开发套件。(来源:Cyclone五代GX开发套件用户指南)

并不是板上的唯一成员

FPGA可能确实很性感(以工程师的说法),但它们并不是唯一的可编程逻辑器件;其它设备也可以用单一设备提供一系列功能。看看来自Cypres半导体公司的“片上可编程系统”(PSoC)架构吧,它是工业上唯一一个在单片上结合了高性能模拟模块、可编程PLD、内存以及微控制器的可编程嵌入式SOC,并且功耗很低。最高级的PSoC变体——PSoC-5家族集成了最新的ARM Cortex-M混合信号解决方案。

例如PSoC-5家族的CY8C56LP系列(图5)在一个CPU子系统中提供可配置的模拟、数字还有互连电路。结合了模拟子系统、数字子系统、路由和I/O的CPU使其在一大片消费者领域、工业领域还有医药领域中很有吸引力。该PSoC的数字子系统通过其数字系统互联电路高效地把任何一个外设与任何一个管脚连接,同时通过小型、快速、低功耗的通用数据模块(UDB)来提供功能灵活性。

可编程逻辑

图5:CY8C56LP的主要器件是ARM Cortex-M3内核CPU,数字、模拟、可编程、调试还有测试子系统,I/O,时钟还有供电部分。来源:Cypress半导体公司

它支持测试版的PSoC创建库、标准数字外设(UART、SPI、LIN、PRS、CRC、定时器、路由器、PWM、与门、或门等),这些都映射在UDB阵列中。每一个UDB包含可编程逻辑功能,还有一个小型状态机引擎来允许它支持一系列外设。其它可配置的数字模块可以用于特定的功能,如4个16位定时器,路由器,PWM模块,I2C从、主和多-主模式,还有USB和CAN 2.0总线。该设备通常被称为MCU,但是却和FPGA一样有很强的灵活性,并且相对编程容易。

总结

如果到此处你还没有领略到如今可编程逻辑器件的强大性和多功能性,看看这个:如今仅用三个OpenVPX外形设计(为防御系统使用)的卡就可以构建一个完整的信号捕捉及处理子系统了。其主要设备包括两片高端FPGA、高级ADC和DAC(每一个用两片)、一个Intel i7四核处理器、SERDES 收发器、内存和I/O口。多亏了较宽的带宽还有高采样率的DAC以及有强悍处理能力的FPGA,该三卡解决方案甚至可以利用DC捕捉到空中高达6GHz的信号。而几年前要实现这个目标,则需要一个5到10倍体积的解决方案。

由于更多的市场部门,从消费者电子到图像处理、汽车、防御电子、工业自动化和控制及医药领域,正利用这些设备的优势,这方面的发展以及取得的成就让人吃惊。因此尽管FPGA和其它可编程逻辑器件并不是一个新的概念,它们正实现着一些尖端领域的创举。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分