1. 概述
SPARC(Scalable Processor ARChitecture,可扩展处理器架构)是SUN公司在1985年提出的体系结构标准,它基于1980年到1982年间加州大学伯克利分校关于Berkeley RISC的研究成果,并由一个独立、非盈利组织SPARC Internationa负责SPARC架构标准的管理和开发认证,是国际上流行的RISC(Reduced Instruction Set Computer,精简指令集)微处理器体系架构之一。
Sun在被甲骨文收购前将UltraSPARC T2开源,任何机构或个人均可研究或开发基于SPARC架构的产品,如东芝、富士通、Aeroflex、ESA(Europen Space Agent)等都在此架构上开发出了自己的SPARC微处理器。
2. 特点
SPARC微处理器(基于SPARC架构的微处理器)的显著特点就是它的可扩展性,从笔记本到超级计算机上的微处理器均可采用SPARC架构。1987年由SUN和TI公司合作开发的微处理器,称为“Sparc”,是业界出现的第一款有可扩展性功能的微处理器。
“Sparc”用于Sun-4计算机中,它的推出为SUN奠定了其在高端微处理器发展中的领先地位。在服务器领域,以性能卓越而闻名SUN服务器采用的就是SPARC架构;在高可靠嵌入式应用方面,国际空间站上的控制计算机 DMS-R和太空观测台JEM-EUSO上均使用SPARC微处理器。
SPARC微处理器具备精简指令集、支持32位/64位数据精度,架构运行稳定、可扩展性优良、体系标准开放等特点。此外,寄存器窗口技术既是SPARC微处理器的显著特点,也是SPARC架构不同于由斯坦福大学提出的MIPS微处理器架构的主要不同点之一。采用这项技术可以显著减少过程调用和返回执行时间、执行的指令条数和访问存储器的次数,从而易于实现直接高效的编译。如上图所示,它将工作寄存器组成若干个窗口,建立起环形结构,利用重叠寄存器窗口技术来加快程序的运转。每个过程分配一个寄存器窗口(含有一组寄存器),当发生过程调用时,可以把处理器转换到不同寄存器窗口使用,无需保存和恢复操作。相邻寄存器窗口部分重叠,便于调用参数传送。为每个过程提供有限数量的寄存器窗口,各个过程的部分寄存器窗口重叠。
3. 应用
SPARC微处理器在嵌入式应用领域获得了巨大的发展空间,全球大约已有3万多个成功的应用案例。
3.1 国外
比较著名的是国际空间站上的控制计算机DMS-R及空间自动转移器ATV中均使用了SPARC微处理器ERC32,而在太空观测台JEM-EUSO上则使用了SPARC V8架构的微处理器。
3.2 国内
国内研制的SPARC微处理器在军工电子领域已得到应用,在民用领域正处于普及推广应用过程中。
3.2.1 国防科大
有飞腾1000和飞腾1500两款产品,用于天河超算中作为计算节点前端处理器。
飞腾1500是对飞腾1000的改进升级,是一款40nm的16核芯片,主频也提升到1.8G,最大功耗65W,双精浮点144G。
据统计,天河1号使用了2048片飞腾1000作为计算节点前端处理器,天河2号使用了4096片飞腾1500作为计算节点前端处理器。
3.2.2 航天771
在计算机及其设备领域,771所从系统应用需求出发,采用软硬件综合设计、单片集成设计、小型化、一体化设计技术,进行系统集成研究。开发出涵盖x86、MIPS、SPARC、PowerPC、ARM、Ti、ADI等多种指令集的实时容错体系结构控制与处理的嵌入式计算机产品、地面计算机测发控系统、电子系统计算机测试仿真系统和嵌入式操作系统等系统软件和多种基础应用软件。规划定义并开发了新型星用SPARC体系的处理器、高速1553B总线控制器系列产品以及多通道串行控制器、多总线控制器、SRAM等国产化核心器件。这些产品和技术均处于国内领先水平,很多产品完全可以替代进口,有效降低了对国外元器件的依存度,对打破国外封锁禁运发挥着重要作用。
4. 架构及微处理器发展历史
1987年,SUN发布了业界第一款有可扩展性功能的32位微处理器“Sparc”。因为它采用了SPARC的首款架构SPARC V7,所以获得了更高的流水线硬件执行效率和更为优化的编译器,并缩短了其开发周期,满足了Sun-4 计算机迅速投放市场的要求。
1990年,SPARC International发布了32位SPARC V8架构标准。它在SPARC V7的基础上增加了乘法和除法指令,加速乘除法的处理,使得用户不必使用子程序完成相同操作。
为了在本世纪微处理器发展上仍具有竞争性,SPARC International在1993年发布了64位SPARC V9架构标准。相对于SPARC V8,这一版本的显著变化在于:数据和地址的位宽由32位变到64位,支持超标量微处理器的实现,支持容错及多层嵌套陷阱,具有超快速陷阱处理及上下文切换能力。
1995年以前,基于SPARC V7或V8架构的微处理器种类不多,而且基本上只有SUN一家公司在研制开发。从1995年以后,基于SPARC V9架构的64位SPARC微处理器日渐丰富,其面向高性能计算和服务器的微处理器得到了市场广泛的接受,如SUN的UltraSPARCT1/T2系列及富士通的SPARC64系列等。
架构及微处理器发展历史
随着基于SPARC V8架构的LEON2在2003年的发布,面向高可靠嵌入式领域(如工业控制、军工电子、空间应用等)的SPARC微处理器的研制得到了众多公司的青睐。ESA研制了基于SPARC V7架构的ERC32微处理器,ATMEL制造了SPARC V8架构的AT697微处理器。
5. 发展趋势和展望
经过30多年的发展,SPARC微处理器凭借其持续的创新研发能力,不断取得骄人成绩。在服务器等高端处理器领域,SPARC Enterprise 服务器系列的M8000机型就是一个典型的例子,2007年,它在SAPERP2005、Oracle Database 10g和Solaris10运行环境下,刷新了16 路处理器级别系统中SAP SD 2-tier 标准应用基准测试的世界记录[3]。在空间应用等高可靠嵌入式应用领域,SPARC微处理器也发挥着越来越重要的作用。ESA决定在2013年发射的水星探测任务中采用SPARC微处理器。
SPARC架构标准的开放和最先进的多核心、多线程SPARC微处理器的设计代码开放,促使世界上越来越多的公司、机构和大学加入到SPARC微处理器的研发中。到目前为止,对于开源的SPARC微处理器设计代码,已经有超过10,000个下载。而业界对研究SPARC微处理器的积极响应,必将推动SPARC微处理器持续进步,让它始终具有超强的竞争性。
参考文献
[3]“让开放系统兼备大型机优势”, Computing IT Week,2007(15)
[4] http://www.eepw.com.cn/article/114121.htm