【導(dǎo)讀】:SPARC(Scalable Processor ARChitecture)可擴(kuò)展處理器架構(gòu)是SUN公司在1985年提出的體系結(jié)構(gòu)標(biāo)準(zhǔn),它基于1980年到1982年間加州大學(xué)伯克利分校關(guān)于Berkeley RISC的研究成果,并由一個(gè)獨(dú)立、非盈利組織SPARC International[1]負(fù)責(zé)SPARC架構(gòu)標(biāo)準(zhǔn)的管理和開發(fā)認(rèn)證,是國際上流行的RISC(Reduced Instruction Set Computer)微處理器體系架構(gòu)之一。關(guān)鍵詞: 時(shí)代民芯 微處理器 SPARC

  引言  SPARC(Scalable Processor ARChitecture)可擴(kuò)展處理器架構(gòu)是SUN公司在1985年提出的體系結(jié)構(gòu)標(biāo)準(zhǔn),它基于1980年到1982年間加州大學(xué)伯克利分校關(guān)于Berkeley RISC的研究成果,并由一個(gè)獨(dú)立、非盈利組織SPARC International[1]負(fù)責(zé)SPARC架構(gòu)標(biāo)準(zhǔn)的管理和開發(fā)認(rèn)證,是國際上流行的RISC(Reduced Instruction Set Computer)微處理器體系架構(gòu)之一?! PARC是開放的,任何機(jī)構(gòu)或個(gè)人均可研究或開發(fā)基于SPARC架構(gòu)的產(chǎn)品,如東芝、富士通、Aeroflex、ESA(Europen Space Agent)等都在此架構(gòu)上開發(fā)出了自己的SPARC微處理器?! PARC微處理器(基于SPARC架構(gòu)的微處理器)的顯著特點(diǎn)就是它的可擴(kuò)展性,從筆記本到超級計(jì)算機(jī)上的微處理器均可采用SPARC架構(gòu)。1987年由SUN和TI公司合作開發(fā)的微處理器,稱為“Sparc”,是業(yè)界出現(xiàn)的第一款有可擴(kuò)展性功能的微處理器?!癝parc”用于Sun-4 計(jì)算機(jī)中,它的推出為SUN奠定了其在高端微處理器發(fā)展中的領(lǐng)先地位。在服務(wù)器領(lǐng)域,以性能卓越而聞名SUN服務(wù)器采用的就是SPARC架構(gòu);在高可靠嵌入式應(yīng)用方面,國際空間站上的控制計(jì)算機(jī) DMS-R和太空觀測臺JEM-EUSO上均使用SPARC微處理器?! PARC架構(gòu)及其微處理器的發(fā)展歷史  1987年,SUN發(fā)布了業(yè)界第一款有可擴(kuò)展性功能的32位微處理器“Sparc”。因?yàn)樗捎昧薙PARC 的首款架構(gòu)SPARC V7,所以獲得了更高的流水線硬件執(zhí)行效率和更為優(yōu)化的編譯器,并縮短了其開發(fā)周期,滿足了Sun-4 計(jì)算機(jī)迅速投放市場的要求?! ∮蒘UN在1985年發(fā)布的SPARC V7是世界上第一個(gè)32位可擴(kuò)展處理器架構(gòu)標(biāo)準(zhǔn),它基于加州大學(xué)伯克利分校的關(guān)于RISC微處理器項(xiàng)目的研究成果,如寄存器窗口結(jié)構(gòu)。V7定義了SPARC體系結(jié)構(gòu)的數(shù)據(jù)類型、寄存器、指令、存儲器模型和異常處理,處理器指令字長是32位。它采用獨(dú)立的指令(SAVE,RESTORE )來進(jìn)行寄存器管理,用LOAD和STORE指令訪問內(nèi)存?! ?990年,SPARC International發(fā)布了32位SPARC V8架構(gòu)標(biāo)準(zhǔn)。它在SPARC V7的基礎(chǔ)上增加了乘法和除法指令,加速乘除法的處理,使得用戶不必使用子程序完成相同操作?! 榱嗽诒臼兰o(jì)微處理器發(fā)展上仍具有競爭性,SPARC International在1994年發(fā)布了64位SPARC V9架構(gòu)標(biāo)準(zhǔn)。相對于SPARC V8,這一版本的顯著變化在于:數(shù)據(jù)和地址的位寬由32位變到64位,支持超標(biāo)量微處理器的實(shí)現(xiàn),支持容錯及多層嵌套陷阱,具有超快速陷阱處理及上下文切換能力。

  圖1 顯示了SPARC架構(gòu)及其微處理器發(fā)展歷史。1995年以前,基于SPARC V7或V8架構(gòu)的微處理器種類不多,而且基本上只有SUN一家公司在研制開發(fā)。從1995年以后,基于SPARC V9 架構(gòu)的64位SPARC微處理器日漸豐富,其面向高性能計(jì)算和服務(wù)器的微處理器得到了市場廣泛的接受,如SUN的UltraSPARCT1/T2系列及富士通的SPARC64系列等?! ‰S著基于SPARC V8架構(gòu)的LEON2在2003年的發(fā)布,面向高可靠嵌入式領(lǐng)域(如工業(yè)控制、軍工電子、空間應(yīng)用等)的SPARC微處理器的研制得到了眾多公司的青睞。ESA研制了基于SPARC V7架構(gòu)的ERC32微處理器,ATMEL制造了SPARC V8架構(gòu)的AT697微處理器。  國內(nèi)也有多家公司和大學(xué)從事SPARC微處理器的研發(fā)。值得說明的是,北京時(shí)代民芯科技有限公司已成功研制出基于SPARC V8架構(gòu)的高性能、高可靠嵌入式微處理器MXT0105及其片上系統(tǒng)芯片(SoC)產(chǎn)品MXT0106,微處理器MXT0105性能已達(dá)到且部分指標(biāo)超過ATMEL公司的AT697。MXT0106是集成多路模擬量與開關(guān)量數(shù)據(jù)采集、多路模擬與數(shù)字信號輸出、1553B通訊、多種外設(shè)接口的高性能、高可靠片上系統(tǒng),內(nèi)部通過AMBA總線將高性能CPU、浮點(diǎn)處理器、A/D、模擬開關(guān)、1553B總線控制器、I2C總線控制器、計(jì)數(shù)器、定時(shí)器、通用I/O、PWM輸出等功能模塊集成在單一芯片上,適合測試、實(shí)時(shí)計(jì)算以及控制領(lǐng)域應(yīng)用,有效實(shí)現(xiàn)電氣系統(tǒng)的集成化、小型化、輕量化、智能化以及低功耗。MXT0106的主頻可達(dá)到150MHz,支持8/16/32位外部存儲器數(shù)據(jù)訪問,帶有64路模擬開關(guān)、4路12位高速A/D轉(zhuǎn)換器和1553B總線控制器,具備成熟的編譯器、可視化集成開發(fā)環(huán)境、驅(qū)動程序、例程、BSP軟件包、SoC 開發(fā)板支持。  SPARC微處理器特點(diǎn)及其嵌入式應(yīng)用  SPARC 微處理器具備精簡指令集、支持32 位/64 位數(shù)據(jù)精度,架構(gòu)運(yùn)行穩(wěn)定、可擴(kuò)展性優(yōu)良、體系標(biāo)準(zhǔn)開放等特點(diǎn)。此外,寄存器窗口技術(shù)既是SPARC微處理器的顯著特點(diǎn),也是SPARC架構(gòu)不同于由斯坦福大學(xué)提出的MIPS微處理器架構(gòu)的主要不同點(diǎn)之一。采用這項(xiàng)技術(shù)可以顯著減少過程調(diào)用和返回執(zhí)行時(shí)間、執(zhí)行的指令條數(shù)和訪問存儲器的次數(shù),從而易于實(shí)現(xiàn)直接高效的編譯。如圖2所示,它將工作寄存器組成若干個(gè)窗口,建立起環(huán)形結(jié)構(gòu),利用重疊寄存器窗口技術(shù)來加快程序的運(yùn)轉(zhuǎn)。每個(gè)過程分配一個(gè)寄存器窗口(含有一組寄存器),當(dāng)發(fā)生過程調(diào)用時(shí),可以把處理器轉(zhuǎn)換到不同寄存器窗口使用,無需保存和恢復(fù)操作。相鄰寄存器窗口部分重疊,便于調(diào)用參數(shù)傳送。為每個(gè)過程提供有限數(shù)量的寄存器窗口,各個(gè)過程的部分寄存器窗口重疊。

  伴隨LEON2的發(fā)布,SPARC微處理器在嵌入式應(yīng)用領(lǐng)域獲得了巨大的發(fā)展空間,全球大約已有3萬多個(gè)成功的應(yīng)用案例。比較著名的是國際空間站上的控制計(jì)算機(jī)DMS-R及空間自動轉(zhuǎn)移器ATV中均使用了SPARC微處理器ERC32,而在太空觀測臺JEM-EUSO上則使用了SPARC V8架構(gòu)的微處理器。國內(nèi)研制的SPARC微處理器在軍工電子領(lǐng)域已得到應(yīng)用,在民用領(lǐng)域正處于普及推廣應(yīng)用過程中?! PARC微處理器未來發(fā)展趨勢和展望  經(jīng)過20多年的發(fā)展,SPARC微處理器憑借其持續(xù)的創(chuàng)新研發(fā)能力,不斷取得驕人成績。在服務(wù)器等高端處理器領(lǐng)域,SPARC Enterprise 服務(wù)器系列的M8000機(jī)型就是一個(gè)典型的例子,2007年,它在SAPERP2005、Oracle Database 10g和Solaris10運(yùn)行環(huán)境下,刷新了16 路處理器級別系統(tǒng)中SAP SD 2-tier 標(biāo)準(zhǔn)應(yīng)用基準(zhǔn)測試的世界記錄[3]。在空間應(yīng)用等高可靠嵌入式應(yīng)用領(lǐng)域,SPARC微處理器也發(fā)揮著越來越重要的作用。ESA決定在2013年發(fā)射的水星探測任務(wù)中采用SPARC微處理器?! PARC架構(gòu)標(biāo)準(zhǔn)的開放和最先進(jìn)的多核心、多線程SPARC微處理器的設(shè)計(jì)代碼開放,促使世界上越來越多的公司、機(jī)構(gòu)和大學(xué)加入到SPARC微處理器的研發(fā)中。到目前為止,對于開源的SPARC微處理器設(shè)計(jì)代碼,已經(jīng)有超過10,000個(gè)下載。而業(yè)界對研究SPARC微處理器的積極響應(yīng),必將推動SPARC微處理器持續(xù)進(jìn)步,讓它始終具有超強(qiáng)的競爭性?! ⒖嘉墨I(xiàn)  [1] http://www.sparc.org/  [2] http://www.opensparc.net/  [3]“讓開放系統(tǒng)兼?zhèn)浯笮蜋C(jī)優(yōu)勢”, Computing IT Week,2007(15)