开发32位处理器内核是耗资巨大、风险也很大的事情,因此使用成熟、可商用的处理器内核来开发SoC是明智的选择,不但可降低开发成本和风险,对加快上市时间也大有裨益。在今天产品快速更新、上市时间决定利润的市场上,上面提到的第二个有利因素显得更为重要。
目前,提供可授权内核的厂商有ARM、MIPS、Tensilica、ARC International等几家,他们对市场和技术的理解为业界探寻32位处理器的发展方向提供了有益的借鉴。
处理器的结构
SoC从功能上可以分为控制平面、数据平面、存储器和模拟外设,根据应用的不同,各部分功能的多寡会有所变化。控制平面通常是指主控制器,数据平面通常指数处理,如DSP、硬件加速器等。
对于这种划分方式,MIPS科技公司营销副总裁Jack Browne认为不会有多大变化,MIPS科技为模拟模块和控制平面模块提供IP解决方案。模拟模块的实现难度非常大,很难为开发人员提供差异化设计。控制平面需要标准架构来运行主要的操作系统。互连和存储控制器解决方案要求高度定制化并且差异化程度最小,采用现成的IP解决方案是不错的办法。通过提供这些解决方案,可以使客户在其他领域专注于开发自己的IP,主要是数据平面的IP,以实现终端产品的差异化。
ARM公司的中国区总裁谭军也持有类似的看法,即SoC的功能划分不会有多大变化,到具体应用上会有所裁减,主要体现在数据平面上。他从市场角度分析,有些价格在1美元~2美元的处理器主要是控制功能,一般不需要大量的数据处理,一些简单的数据处理用主控制器就可以完成。在3美元~6美元的SoC会需要数据平面,有的厂商会用DSP来实现,但这样的成本较高。对一些简单的应用,可以用硬件加速模块来实现。根据市场需求和对价格敏感程度不同,数据平面可有多种实现形式。
Tensilica的可配置处理器也可以按照这种方式划分,但在一些特殊应用中,既被用于控制平面,也被用于数据平面。该公司的一个本土客户在VDSL SoC中使用一个Diamond 212GP做控制,运行操作系统和网络协议栈,另外一个212GP进行DSP算法处理。Tensilica的可配置处理器有融合控制、DSP、数据处理功能的趋势,如新岸线在手机电视芯片中使用一颗Xtensa可配置处理器既做芯片控制也完成DSP算法处理,将来的32位处理器在控制平面和数据平面的划分可能趋于模糊。
目前的32位处理器更多地使用标准总线,如AMBA、AXI、OCP/IP,采用专有总线的越来越少,以推动更快的上市集成。ARM是AMBA总线的发起者,目前已推出AMBA总线的3.0版本,并提供AMBA Designer以方便AMBA总线的开发,连接处理器内核、L2 Cache和外设。
AMBA总线的劣势是只适合中小型的SoC,无法满足对大量带宽的需求,不过这并不妨碍AMBA的广泛应用,毕竟需要超高带宽的应用还是少之又少。
存储器的带宽瓶颈以及多处理器互联技术是未来发展的关键技术之一。关于这项技术的研究一直在进行中,虽有科研成果出现,但是离实用的程度还有比较大的差距。
多核的发展趋势
由于无法解决过高频率下的散热问题,继续提高处理器的性能就只能采用多核方案,有对称多处理和非对称多处理两种方式。对称多处理比较好理解,就是几个处理器内核平均分配负荷,内核之间通过高速总线连接。非对称多处理通常是一个或几个主控制器,加上一个或几个用于数据加速处理的DSP或专用处理器,有时也采用专门的硬件加速器。
从ARM11开始,ARM就已经开始支持多核架构,2007年推出的Cortex-A9将多核处理器的性能又提高了一个级别,NEC、ST、TI、Nvidia、三星均获得了Cortex-A9的授权。通过对称多处理的方式,Cortex-A9可以实现8000DMIPS的性能,而且Cortex-A9与单核的Cortex-A8保持代码兼容,当系统需要更高的性能时,就可以用多核处理器替换单核处理器,方便客户进行系统升级。
MIPS曾于2007年推出了频率可达1GHz的74K内核系列,主要是用延长流水线的方法,但显然时钟频率不可能无限制的提高。MIPS 34K内核系列则采用了单核多线程的方式来提高性能。过高的时钟频率带来的问题肯定比好处要多,所以转向多核也是MIPS的战略选择。Jack Browne透露,MIPS将推出新的多核平台——嵌入式多线程和多处理器的可授权IP核。凭借4个基核和一致系统单元(Coherent System Elements),该新内核系列可为多核解决方案提供优异的性能效率。新内核降低了SoC的开发成本,因为同其他多核解决方案相比,SoC开发只需要较少的内核。它还可以采用主流工艺和时钟速度,为开发SoC提供最大的灵活性。