SOPC现状及发展趋势System-on-a-Programmable-Chip,即可编程片上系统。用可编程逻辑技术把整个系统放到一块硅片上,称作SOPC。可编程片上系统(SOPC)是一种特殊的嵌入式系统:首先它是片上系统(SOC),即由单个芯片完成整个系统的主要逻辑功能;其次,它是可编程系统,具有灵活的设计方式,可裁减、可扩充、可升级,并具备软硬件在系统可编程的功能。以SOPC为核心的电子产品,是近几年集成电路中发展最快的产品.SOPC将进一步扩大适用领域,将复杂专用芯片挤向高端和超复杂应用.SOPC是PLD和ASIC技术融合的结果,目前0.13微米的ASIC产品制造价格仍然相当昂贵,相反,集成了硬核或软核CPU、DSP、存储器、外围I/O及可编程逻辑的SOPC芯片在应用的灵活性和价格上有极大的优势。SOPC被称为“半导体产业的未来”。SOPC是一个融合体:融合了SOC和FPGA的技术,同时也在ASIC和可编程器件之间找到一个折衷点,未来很难预测。几家主要的可编程器件厂商都相继推出了自己的SOPC产品,它们各有特点。SOPC中一个重要的部件是CPU,因为没有这个大脑,也就谈不上SOPC了。围绕着这个CPU,各个厂家各出其招.首先是软核的方案,Altera成功推出Nios和NiosII,在Cyclone等系列上得到了广泛的应用;Xilinx也不甘落后,推出了MicroBlaze,新的系列产品都支持这个CPU。在SOPC中使用软核的好处不言而喻,和普通SOC中使用软核有异曲同工之处。一方面给使用者带给了设计上的灵活性,同时升级到其他系列产品也很方便;几款软核还可以嵌入RTOS。Nios还给用户提供了自定义命令的功能。可以说软核的使用加快了FPGA市场的普及。正是因为看到这个市场,CPU的风云人物ARM也不甘落后,也和Actel一起推出了Cortex-M1,也准备在FPGA软核这个市场上大显身手。本人比较看重Cortex-M1,ARM的市场占有率是一个主要的原因。Cortx-M1和ARM以前的产品有兼容性,因为很多嵌入式系统使用的是ARM7或ARM9,这样在系统升级的时候,投入的成本会小得多。下面简单介绍各个软核的特点:①Xilinx的MicroBlaze感觉和ARM7比较接近,32bitRISC,3级流水线,哈佛结构。采用IBM的总线构造CoreConnect,感觉没有太特殊的地方。开发工具为ISE.(很想知道它占用FPGA的情况)②Altera的NiosII也是32bitRISC,据说可以达到200DMIPS,采用Altera特有的总线结构Avalon总线结构。根据性能需要,可以有三种的选择:快速,标准,经济,占用的FPGA资源相应减少。支持RTOS,例如MicroC/OS-II以及NucleusPlus。(更希望它支持ucLinux),开发工具为QuartusII中的SOPCbuilder.③ARM的Cortex-M1Cortex-M1的性能参数大致为:基本相当于ARM7-TDMI,,使用thumb2命令集的一个子集,最高频率为170MHz,处理能力达0.8DMIPS/MHz,占用FPGA资源为4300TILE.。开发工具还是那些常用的(ADS,Realview等)接下来看一看硬核的方案。Altera推出的带有硬核的SOPC是Excalibur,它的设计思想是把Apex20KE与一个ARM922的200MHz集成起来,这个主意看起来很不错,但是实际效果并不好。在Altera的官方网站上,已经明确告诉用户,新的设计不推荐使用这个器件。主要原因应该是产品定位和成本的问题。Excalibur并不适合做终端产品,因为它太贵了;如果作验证系统的话,他又太弱了,很多厂家推出专门的FPGA验证系统。所以看来是市场决定了产品生存。所以看来Altera现在的SOPC主打产品还是使用NIOS-II作为CPU。再来看看Xilinx的硬核方案,Xilinx使用IBM的powerPC作为硬核,而且有的系列还集成了DSPslice可以说,性能很高,毫无疑问他的产品定位应该主要是高端的通信,军事,多媒体等领域。Xilinx推出这些产品的一个重要原因,就是他解决了价格的问题。因为它使用的是65nm和90nm的工艺,而且采用ASMBL技术,所以可以低成本提供高性能的芯片。针对这一趋势,其他的FPGA大厂,也会很快推出带有硬核的高性能的SOPC器件。SOPC的发展趋势一直以来,在开发一个典型的系统时,设计人员仍不得不采用各种昂贵的,分立的模拟器件配合可编程逻辑器件或者混合信号的ASIC作为解决方案.而SOPC是具有所有这些属性的现成部件,利用它可以方便的选择器件来构成一个系统,而且可以根据系统的需要对处理器的资源进行裁剪.此外,由于各个器件之间通过总线的链接是自动生成的,这就大大缩减了系统的开发周期,也因此,针对于特定器件IP核的设计以及IP核的重用成为SOPC技术的发展的关键.与传统方法相比,SOPC的设计方法必须有根本的改变,即从以功能设计为基础的传统流程,转变到以功能组装为基础的全新流程.总之,SOPC技术的目标就是试图将尽可能大而完整的电子系统,包括嵌入式处理器系统,接口系统,硬件协处理器或加速器,DSP系统,数字通信系统,存储电路以及普通数字系统等,在单一可编程片上系统中实现,使得所设计的系统在规模,可靠性,体积,功耗,功能,性能指标,上市周期,开发成本,产品维护及其硬件升级等多方面实现最优化,而这也是SOPC技术发展的根本方向.目前SOPC的发展趋势主要体现在以下四个方面:一是向更高密度,更大容量的千万门系统级方向迈进;二是向低成本,低电压,微功耗,微封装和绿色化方向发展;三是IP资源复用理念将得到普遍认同并成为主要的设计方式;四是嵌入式处理器IP将成为SOPC的核心.