FPGA与嵌入式系统
听完了关于专题一的所有报告,我想到的首先就是FPGA及其在在嵌入式系统应用中的潜力,网上关于这方面的论文很多,不过很多都是关于软核的应用,而软核CPU的应用其实与其它架构相比,在通用性上其实是不占优势的,不过早就听说了FPGA与ARM的结合,因而我去官网查了下最新的ARM-Based SoC FPGA,因为个人的看法不同吧,有的人看好ASIC,有的人看好FPGA,我觉得两者的结合将会成为下一代嵌入式系统的固有架构。
随着嵌入式开发人员在开发过程中的提高系统性能、降低系统功耗、减少电路面积、降低系统成本等需求,FPGA厂商在嵌入式领域的竞争越来越激烈,继今年早些时候,赛灵思(Xilinx)发布集成双核ARM Cortex A9的处理器Zynq后,Altera公司日前发布了同样嵌入ARM Cortex-A9内核的28nm Cyclone V和Arria V FPGA。
我们先来看看最新发步的ARM-Based SoC FPGA的一些特点吧:
1. 集成了双核ARM Cortex-A9 MPCore处理器,结合了硬核IP。Altera的Cyclone V和Arria V SoC FPGA的处理器系统采用了双核800 MHz ARM Cortex-A9 MPCore处理器,同时具有NEON媒体处理引擎、单精度/双精度浮点单元、L1和L2高速缓存、ECC保护存储器控制器、ECC保护高速暂存存储器,以及多种常用外设。
2. 先进的28-nm FPGA技术。Cyclone V和Arria V SoC FPGA基于低功耗28nm工艺(28LP)。Cyclone V和Arria V SoC FPGA系列具有分别工作在5-Gbps和10-Gbps的嵌入式收发器。Cyclone V SoC FPGA具有110K逻辑单元(LE),系统功耗和成本是业界最低的。
Cyclone V SoC FPGA主要针对智能电网、太阳能逆变器、汽车娱乐、视频监控/IP摄像机以及高级汽车辅助驾驶系统应用,而Arria V SoC FPGA则在性能和成本、功耗上更突出,主要针对远程射频前端、LTE基站、交换机和路由器,以及金融计算、多功能打印等中高端应用。其处理器系统的峰值性能达到4,000 DMIPS,而功耗不到1.8瓦。处理器系统和FPGA架构独立供电,能够以任意顺序配置和启动。工作起来后,可以根据需要关断FPGA部分,以降低系统功耗。
从以上这些特点看来,专题上所讲的内容,如视频会议系统,通用的嵌入式系统以及GPU(图象处理器)的设计都可以在ARM-Based SoC FPGA得到很好的应用。
目前数字集成电路最大的特点就是更新换代速度快,集成度越来越高,其应用也越来越复杂,然而FPGA与就像是一堆积木,但是它能完成任何数字器件的功能,从最简单的组合逻辑到高性能的CPU,而且现在的FPGA上可以容纳几个32位的CPU同时工作,实现复杂的嵌入式系统。
正如后面我在ALTERA官网上下的白皮书所说的,这种单芯片的方式对于嵌入式系统开发中需面对的上市时间、价格、性能、设计复用度以及使用寿命等要求有很独特的价值。而且随着FPGA价格的进一步降低以及开发技术的进一步成熟,这种灵活的开发方式一定会比ASIC以及多芯片的架构有更大的优势。
后面的白皮书介绍的基于ARM的FPGA片上系统可以说是应对现在嵌入式系统设计所面临的挑战应运而生的,其灵活性也可以说是前所未有的。
ARM-Based SoC FPGA可以说是结合了FPGA的灵活性与ARM应用的广泛性以及其它优势,从以下两幅图可以看出其在将来的发展肯定是不可限量的。
图一. 嵌入式系统的流行平台
图二. FPGA中处理器的增长
具体点说,现在嵌入式系统遇到的问题主要有:
l 开发周期长。这点其实最主要的原因是ASIC灵活性不够的原因,设计出一块具有特定逻辑功能的电路板是很麻烦的,先要进行逻辑电路设计,然后再进行印刷电路板设计,然后还有焊接工序,这期间的调试工作很多都牵涉到个器件之间的阻抗匹配、信号完整性等。也就是说各逻辑器件并不像在逻辑设计阶段那么理想了,还需要考虑实际情况。而且其中出现一个小错误的话就可能得要重新制版。这样以来开发周期就很长了。
l 系统升级困难。在嵌入式应用开发过程中肯定是存在一定的不足的,而这些问题在以后发现后进行系统修改时是十分困难的,因为电路功能已经固定了,这就使得系统的应用得不到最大效率的发挥。
l 功耗大。如果ASIC不支持需要用到的一些功能,电路板上可能要使用外部器件去实现该功能,这就导致了电路板的体积以及功耗都会变大,可靠性降低,而且设计人员不能专注于逻辑功能的设计,效率极低。
FPGA将给嵌入式系统的开发带来革命性的突破:
l 简化系统设计。只要FPGA上得资源足够,一片可编程逻辑器件就可以容纳传统设计所需要的通用器件,而且可以自己设计出来原来所没有的器件,也可以通过购买IP核来简化系统的设计。
l 加速系统设计。FPGA的一大特点就是大部分引脚均可配置,所以可编程逻辑器件的内部逻辑设计及与PCB绘制可以同时进行,大大缩短系统设计周期。PCB设计完成后还可以利用FPGA的在线编程能力随时进行修改。
最后我想说通过这次的专题课,我了解到了更多关于本专业的一些发展趋势和相关领域的最新动态。相信在以后的实践中我会接触到更多的相关知识,而且将其应用到实际的产品中去。
参考文献:
[1] 《嵌入式系统开发原理与实践》,陈文智
[2] User-Customizable ARM-Based SoC FPGAs for Next-Generation Embedded Systems,www.altera.com