FPGA成本,性能和功耗的显着改进使得它们在越来越多的嵌入式系统中与微控制器一起赢得了一席之地。时间紧迫(甚至预算紧张)的设计人员发现,最近的价格合理的中密度FPGA提供了一种经济有效的方式来增强嵌入式MCU的功能。它们混合了可编程逻辑和高性能接口电路,用于在工业,商业和医疗系统中添加定制I/O,网络连接和智能外设(图1)。与此同时,他们更大,功能更强大的兄弟们发现了与高性能成像,网络或无线系统中算法加速器的外置处理器相同的应用程序。在这些应用中,智能设计人员正在使用可编程逻辑元件来获得管理其产品线生命周期的战略优势。
图1:医学成像系统的框图说明了FPGA如何通过经济高效的高性能I/O扩展,信号处理和算法加速功能来增强嵌入式系统的主机处理器。 (由Altera公司提供)
在本文中,我们将探讨MCU如何与FPGA合作,以改变嵌入式产品在嵌入式生态系统各个层面的设计方式。
协同进化
可编程逻辑器件(PLD)及其更密集,更快速的同类,现场可编程门阵列(FGA),在嵌入式系统设计中发挥了重要作用,甚至在“嵌入式系统”一词进入之前工程词典。早在16位处理器和64 Kbyte存储器位于硅食物链顶端的时代,设计人员就依赖它们作为所谓的“胶合逻辑”来拼接CPU及其相关组件之间的定时和控制信号。 PLD甚至EPROM(还记得吗?)也用于实现自定义解码器和查找功能。然而,直到最近,大型FPGA才是相对耗电,昂贵的野兽,主要用于原型,以及高价,低产量的产品,或者作为从负担过重的处理器卸载明确定义的计算密集型操作的快速方法。
随着FPGA制造商将生产转移到越来越精细的亚微米工艺,这种情况发生了变化随着器件逻辑密度的增加和功耗的降低,在大批量应用中使用可编程解决方案变得越来越具有成本效益(图2)。虽然在同一工艺节点上实现FPGA中的特定功能仍然比同等的基于单元的专用单元设计更大,更慢,更耗电,但FPGA制造商迅速采用激进的亚微米工艺节点使它们领先于大多数ASIC和ASSP。产品降低的功耗和每个元素的成本使它们能够赢得新的应用和更大的市场。
图2:随着FPGA超过亚微米级阈值,其更高的逻辑密度和更低的功耗开始使它们越来越适用于中到大批量应用。 (由Xilinx提供。)
FPGA作为协处理器
嵌入式设计人员正在使用FPGA来增强MCU的处理能力或卸载FPGA的逻辑结构,增加DSP元件,加密硬件加速逻辑和纠错,以及其他特定于应用程序的核心。即使是功能强大的基于ARM9的MCU,如飞思卡尔的Kinetis系列或恩智浦的LPC2/3系列,也需要外置DSP或基于FPGA的加速器来并行执行矩阵处理,图像/视频压缩或AES加密/解密和其他加密方案等任务。 。由于其性价比和可重配置性,FPGA现在常用于上/下转换,模/解,包络控制以及软件定义无线电中的其他功能。
许多嵌入式汽车系统正在将FPGA用于信息娱乐和安全应用,例如车道偏离警告系统。在车辆的组合娱乐和信息系统中,可编程逻辑可作为主处理器的配套,提供媒体处理,图形加速和车辆网络功能(图3)。 FPGA还在车道偏离感应中发挥关键作用。通过提供提取特征所需的高速图像处理和雷达信号处理(例如道路上的线路,街道标志等),该设备能够精确定位车辆在高速公路上的位置。类似的算法用于确定其他车辆的位置/相对速度,然后将其用于驾驶员辅助功能(即制动辅助,加速器管理和提供转向建议)。 FPGA支持快速开发和推出这些先进系统,这些系统过于新颖,发展太快,无法使用ASIC或ASSP进行经济实施。
图3:作为主处理器的配套产品,单个Spartan-6 FPGA支持音频/视频加速,图形子系统和车辆网络功能。 (由Xilinx提供。)
FPGA在医疗应用方面有着悠久的历史。作为最大的,Altera Stratix III和Xilinx Virtex-4/5器件用于处理由高分辨率CAT,MRI和PET成像器生成的大量原始数据。在这样的医疗应用中,FPGA也被用作高速A/D和D/A的前端,它们直接连接到传感器和传感器,以便通过宽而快速的PCIe Gen2总线进行处理和传输到主机系统。但是,体积更小,成本更低的设备正在成为低成本便携式成像仪(CT,内窥镜和超声波)不可或缺的一部分,可以为农村和城市诊所以及新兴经济体的医疗中心提供先进的服务。这些应用程序运行高端设备中使用的算法的缩小版本,可以使用中档,价值导向的FPGA实现,包括大量的DSP架构,例如Altera的Arria Xilinx KINTEX系列。
I/O扩展一直是嵌入式系统中FPGA最常见的应用之一。尽管如此,增加专用元件使嵌入式设计人员更容易使用其主处理器的PCIe总线为其设计添加I/O和网络功能的自定义组合。 FPGA的硬件功能模块和可编程逻辑可用于实现PCie主机接口,以及为Texas Instruments Stellaris MCU添加千兆以太网,SATA,FibreChannel或Infiniband网络功能的连接(图4)。其他FPGA资源可用于为其他常用的I/O连接(如USB,FireWire,HDMI和DisplayPort)或专用的高性能系统互连(如CPRI/OBSAI)构建连接。
图4:高性能处理器的PCIe总线用作配置为I/O配套/扩展设备的FPGA的接口。 (由Altera公司提供)
基于FPGA的I/O和内存扩展在扩展功能和延长旧设计的使用寿命方面变得越来越流行,旧设计的主机处理器可能需要额外的处理能力或接口功能来满足新的要求。除了刚才讨论的I/O元件外,大多数FPGA系列还提供配备接口的变体,这些接口可配置用于大多数常见的DRAM/SRAM连接和独立的DDR/QDR存储器控制器元件。它们共同允许FPGA缓冲和管理流经其I/O连接的数据流。这种技术还允许设计人员调整他们的设计,以便在“遗留系统”中使用的旧的或更低成本的处理器能够享受降低的BOM成本。这些系统能够使用市场上最丰富的DDR2/3 RAM或利用DDR/QDR存储器提供的更高性能。
下一步:板载MCU
由于FPGA在越来越多的中高容量市场中与ASSP和ASIC竞争套接字空间,制造商推出了硬连线处理器内核提供的新系列设备更高的性能甚至更低的TCO。在许多情况下,这些所谓的SoC FPGA可用于特定应用的逻辑元件,处理器,存储器和相关硬件核心的组合。例如,Microsemi的SmartFusion器件将其非易失性混合信号FPGA技术与ARM Cortex-3 32位RISC处理器配对(图5)。 SmartFusion A2F200中的精密模拟温度,电流,电压和温度传感元件,PWM引擎和其他实际接口可配置为在工业,汽车和航空航天系统中提供多轴电机控制。
图5:Microsemi的SmartFusion系列将ARM Cortex-3处理器添加到Fusion的混合信号FPGA架构中。 (由Microsemi SoC Products Group提供。)
进一步提升性能范围,Xilinx最近推出的Zynq-7000可扩展处理平台配备了ARM Cortex A9高性能RISC处理器(图6)。 Cortex A9具有高效率,动态长度,多发超标量,无序,推测的8级流水线。它可作为单核或可配置多核元件提供,其处理能力可针对各种智能视频,通信和控制应用进行定制。如果需要额外的处理器,可以使用Zynq的可编程逻辑构建8位PicoBlaze或32位MicroBlaze处理器的软核。
图6:Xilinx的Zynq-7000系列FPGA SoC将功能强大的Cortex A-9处理器与高性能可编程逻辑和专用外设核心混合在一起。 (由Xilinx提供。)
Altera最新的FPGA SoC也基于A9处理器的几个产品系列,包括价值导向的Cyclone V GX系列。针对生产量适中且I/O密度高的工业和汽车应用,Cyclone器件配备单核A9,25k可编程逻辑元件和各种外围核心,批量定价低至15美元。由于Cyclone SoC产品还集成了以太网,CAN控制器,DSP(用于电机控制)和其他I/O,因此它们在传统的多芯片解决方案中具有很强的竞争力。
Altera还创建了其性能导向的Arria V系列的几个成员,这些成员配备了单核和多核A9处理器,旨在降低汽车,工厂自动化和视频处理应用中现有设计的成本。由于大多数无线系统已经基于ARM Cortex-A9,因此Altera和Xilinx的A9配备的FPGA SoC正在帮助降低基础设施产品的成本和功耗,因为设计人员将其用于基带处理,远程上/下处理,和数字和预失真/包络控制。结果
全部0条评论
快来发表一下你的评论吧 !