CPU与FPGA的根本区别在于软件与硬件的差异。CPU为冯诺依曼结构,串行地执行一系列指令;而FPGA可以实现并行操作,就象在一个芯片中嵌入多个CPU,其性能会是单个CPU的十倍、百倍。一般来说,CPU可以实现的功能,都可以用硬件设计的方法由FPGA来实现。当然,极其复杂的算法用硬件实现会比较困难,资源消耗也很大,如果没有高性能要求,那用硬件实现就有点得不偿失了。对于一个复杂系统而言,进行合理的软、硬件划分,由CPU(或DSP)和硬件电路(如FPGA)合作完成系统功能是非常必要的,也是高效的。http://blog.csdn.net/chzms/article/details/2548272
实际上,推动某项或几项技术发展方向的真正动力是市场与技术的综合因素,技术本身或内在的发展惯性并不是最重要的,或者说并非唯一决定性因素。 在无线通信基础设施、汽车电子、智能视频监控、工业自动化控制和航空航天等嵌入式应用领域,目前的市场需求是:以更低成本、更低功耗、更小尺寸处理日益复杂的功能。这些市场需求正推动着FPGA、CPU、DSP等不同技术走向融合。 对FPGA技术来说,早期研发在5年前就已开始尝试采用多核和硬件协处理加速技术朝系统并行化方向发展。在实际设计中,FPGA已经成为CPU的硬件协加速器,很多芯片厂商采用了硬核或软核CPU+FPGA的模式,今后这一趋势也将继续下去。 CPU+FPGA模式的兴起 赛灵思根据市场需求,率先于2010年4月28日发布了集成ARM Cortex-A9CPU和28nmFPGA的可扩展式处理平台(Extensible Processing Platform)架构。 该公司全球市场营销及业务开发高级副总裁VinRatford曾在不同场合强调:“该架构颠覆了以前以FPGA为中心,CPU为辅的理念。现在以CPU为主,FPGA为辅。CPU可单独启动。这个架构针对的是嵌入式软件开发工程师,而不是FPGA工程师。” 时隔不到一年,赛灵思于2011年3月4日又推出了可扩展处理平台Zynq-7000系列,把FPGA+ASIC+ASSP优势集成在一起,形成了对传统ASIC和ASSP市场的进一步渗透。虽然不会取代后两者,但对它们的现有地位构成了强劲挑战(参见本站报道“‘不是单纯的FPGA’——赛灵思推出可扩展处理平台Zynq-7000系列”)。 英特尔在2010秋季IDF上发布的凌动E600C可配置处理器SoC封装中,也集成了Altera的FPGA。后者看上的是凌动的处理性能和业内最先进的芯片工艺。 不过,一位FPGA厂商的高层人士指出:“这款可配置处理器采用开放的标准PCIe作为处理器与芯片的接口,虽然提高了设计灵活性,降低了开发难度,但是接口带宽还是略显局促。另外,在价格和功耗方面也需较大的改进。” 英特尔对此回应表示,该SoC的性能完全可以满足我们目前所涉及的市场领域客户的设计需求。当然,针对未来的需求,还会进一步完善。 Altera也根据大批客户的反馈和要求,于2010年10月13日公布了自己的嵌入式计划,与ARM、MIPS及Intel等主要嵌入式处理器伙伴合作,提供集成了CPU+FPGA的多种技术方案。 美高森美(Microsemi)的SoC产品部(原Actel公司)于2010年11月17日发布了65nm嵌入式闪存工艺的FPGA平台,采用了ARMCortex-M3微处理器架构及DSP模块。
|