SPARC微處理器綜合介紹
SPARC是一個(gè)開(kāi)放的體系結(jié)構(gòu)標(biāo)準(zhǔn),它基于80年代加州大學(xué)伯克利分校對(duì)RISC微處理器的研究成果,現(xiàn)在已成為國(guó)際上流行的RISC微處理器體系架構(gòu)之一。本文介紹了SPARC微處理器的發(fā)展歷史、優(yōu)勢(shì)特點(diǎn)和國(guó)內(nèi)外現(xiàn)狀,并對(duì)其未來(lái)發(fā)展進(jìn)行了展望。
關(guān)鍵詞: 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)的管理和開(kāi)發(fā)認(rèn)證,是國(guó)際上流行的RISC(Reduced Instruction Set Computer)微處理器體系架構(gòu)之一。
SPARC是開(kāi)放的,任何機(jī)構(gòu)或個(gè)人均可研究或開(kāi)發(fā)基于SPARC架構(gòu)的產(chǎn)品,如東芝、富士通、Aeroflex、ESA(Europen Space Agent)等都在此架構(gòu)上開(kāi)發(fā)出了自己的SPARC微處理器。
SPARC微處理器(基于SPARC架構(gòu)的微處理器)的顯著特點(diǎn)就是它的可擴(kuò)展性,從筆記本到超級(jí)計(jì)算機(jī)上的微處理器均可采用SPARC架構(gòu)。1987年由SUN和TI公司合作開(kāi)發(fā)的微處理器,稱為“Sparc”,是業(yè)界出現(xiàn)的第一款有可擴(kuò)展性功能的微處理器。“Sparc”用于Sun-4 計(jì)算機(jī)中,它的推出為SUN奠定了其在高端微處理器發(fā)展中的領(lǐng)先地位。在服務(wù)器領(lǐng)域,以性能卓越而聞名SUN服務(wù)器采用的就是SPARC架構(gòu);在高可靠嵌入式應(yīng)用方面,國(guó)際空間站上的控制計(jì)算機(jī) DMS-R和太空觀測(cè)臺(tái)JEM-EUSO上均使用SPARC微處理器。
1 SPARC架構(gòu)及其微處理器的發(fā)展歷史
1987年,SUN發(fā)布了業(yè)界第一款有可擴(kuò)展性功能的32位微處理器“Sparc”。因?yàn)樗捎昧薙PARC 的首款架構(gòu)SPARC V7,所以獲得了更高的流水線硬件執(zhí)行效率和更為優(yōu)化的編譯器,并縮短了其開(kāi)發(fā)周期,滿足了Sun-4 計(jì)算機(jī)迅速投放市場(chǎng)的要求。
由SUN在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ù)類型、寄存器、指令、存儲(chǔ)器模型和異常處理,處理器指令字長(zhǎng)是32位。它采用獨(dú)立的指令(SAVE,RESTORE )來(lái)進(jìn)行寄存器管理,用LOAD和STORE指令訪問(wèn)內(nèi)存。
1990年,SPARC International發(fā)布了32位SPARC V8架構(gòu)標(biāo)準(zhǔn)。它在SPARC V7的基礎(chǔ)上增加了乘法和除法指令,加速乘除法的處理,使得用戶不必使用子程序完成相同操作。
為了在本世紀(jì)微處理器發(fā)展上仍具有競(jìng)爭(zhēng)性,SPARC International在1994年發(fā)布了64位SPARC V9架構(gòu)標(biāo)準(zhǔn)。相對(duì)于SPARC V8,這一版本的顯著變化在于:數(shù)據(jù)和地址的位寬由32位變到64位,支持超標(biāo)量微處理器的實(shí)現(xiàn),支持容錯(cuò)及多層嵌套陷阱,具有超快速陷阱處理及上下文切換能力。
圖1:SPARC架構(gòu)及其微處理器發(fā)展歷史[2]
圖1 顯示了SPARC架構(gòu)及其微處理器發(fā)展歷史。1995年以前,基于SPARC V7或V8架構(gòu)的微處理器種類不多,而且基本上只有SUN一家公司在研制開(kāi)發(fā)。從1995年以后,基于SPARC V9 架構(gòu)的64位SPARC微處理器日漸豐富,其面向高性能計(jì)算和服務(wù)器的微處理器得到了市場(chǎng)廣泛的接受,如SUN的UltraSPARCT1/T2系列及富士通的SPARC64系列等。
隨著基于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微處理器。
國(guó)內(nèi)也有多家公司和大學(xué)從事SPARC微處理器的研發(fā)。值得說(shuō)明的是,北京時(shí)代民芯科技有限公司已成功研制出基于SPARC V8架構(gòu)的高性能、高可靠嵌入式微處理器MXT0105及其片上系統(tǒng)芯片(SoC)產(chǎn)品MXT0106,微處理器MXT0105性能已達(dá)到且部分指標(biāo)超過(guò)ATMEL公司的AT697。MXT0106是集成多路模擬量與開(kāi)關(guān)量數(shù)據(jù)采集、多路模擬與數(shù)字信號(hào)輸出、1553B通訊、多種外設(shè)接口的高性能、高可靠片上系統(tǒng),內(nèi)部通過(guò)AMBA總線將高性能CPU、浮點(diǎn)處理器、A/D、模擬開(kāi)關(guān)、1553B總線控制器、I2C總線控制器、計(jì)數(shù)器、定時(shí)器、通用I/O、PWM輸出等功能模塊集成在單一芯片上,適合測(cè)試、實(shí)時(shí)計(jì)算以及控制領(lǐng)域應(yīng)用,有效實(shí)現(xiàn)電氣系統(tǒng)的集成化、小型化、輕量化、智能化以及低功耗。MXT0106的主頻可達(dá)到150MHz,支持8/16/32位外部存儲(chǔ)器數(shù)據(jù)訪問(wèn),帶有64路模擬開(kāi)關(guān)、4路12位高速A/D轉(zhuǎn)換器和1553B總線控制器,具備成熟的編譯器、可視化集成開(kāi)發(fā)環(huán)境、驅(qū)動(dòng)程序、例程、BSP軟件包、SoC 開(kāi)發(fā)板支持。
[!--empirenews.page--]
2 SPARC微處理器特點(diǎn)及其嵌入式應(yīng)用
圖2:寄存器窗口
SPARC 微處理器具備精簡(jiǎn)指令集、支持32 位/64 位數(shù)據(jù)精度,架構(gòu)運(yùn)行穩(wěn)定、可擴(kuò)展性優(yōu)良、體系標(biāo)準(zhǔn)開(kāi)放等特點(diǎn)。此外,寄存器窗口技術(shù)既是SPARC微處理器的顯著特點(diǎn),也是SPARC架構(gòu)不同于由斯坦福大學(xué)提出的MIPS微處理器架構(gòu)的主要不同點(diǎn)之一。采用這項(xiàng)技術(shù)可以顯著減少過(guò)程調(diào)用和返回執(zhí)行時(shí)間、執(zhí)行的指令條數(shù)和訪問(wèn)存儲(chǔ)器的次數(shù),從而易于實(shí)現(xiàn)直接高效的編譯。如圖2所示,它將工作寄存器組成若干個(gè)窗口,建立起環(huán)形結(jié)構(gòu),利用重疊寄存器窗口技術(shù)來(lái)加快程序的運(yùn)轉(zhuǎn)。每個(gè)過(guò)程分配一個(gè)寄存器窗口(含有一組寄存器),當(dāng)發(fā)生過(guò)程調(diào)用時(shí),可以把處理器轉(zhuǎn)換到不同寄存器窗口使用,無(wú)需保存和恢復(fù)操作。相鄰寄存器窗口部分重疊,便于調(diào)用參數(shù)傳送。為每個(gè)過(guò)程提供有限數(shù)量的寄存器窗口,各個(gè)過(guò)程的部分寄存器窗口重疊。
伴隨LEON2的發(fā)布,SPARC微處理器在嵌入式應(yīng)用領(lǐng)域獲得了巨大的發(fā)展空間,全球大約已有3萬(wàn)多個(gè)成功的應(yīng)用案例。比較著名的是國(guó)際空間站上的控制計(jì)算機(jī)DMS-R及空間自動(dòng)轉(zhuǎn)移器ATV中均使用了SPARC微處理器ERC32,而在太空觀測(cè)臺(tái)JEM-EUSO上則使用了SPARC V8架構(gòu)的微處理器。國(guó)內(nèi)研制的SPARC微處理器在軍工電子領(lǐng)域已得到應(yīng)用,在民用領(lǐng)域正處于普及推廣應(yīng)用過(guò)程中。
3 SPARC微處理器未來(lái)發(fā)展趨勢(shì)和展望
經(jīng)過(guò)20多年的發(fā)展,SPARC微處理器憑借其持續(xù)的創(chuàng)新研發(fā)能力,不斷取得驕人成績(jī)。在服務(wù)器等高端處理器領(lǐng)域,SPARC Enterprise 服務(wù)器系列的M8000機(jī)型就是一個(gè)典型的例子,2007年,它在SAPERP2005、Oracle Database 10g和Solaris10運(yùn)行環(huán)境下,刷新了16 路處理器級(jí)別系統(tǒng)中SAP SD 2-tier 標(biāo)準(zhǔn)應(yīng)用基準(zhǔn)測(cè)試的世界記錄[3]。在空間應(yīng)用等高可靠嵌入式應(yīng)用領(lǐng)域,SPARC微處理器也發(fā)揮著越來(lái)越重要的作用。ESA決定在2013年發(fā)射的水星探測(cè)任務(wù)中采用SPARC微處理器。
SPARC架構(gòu)標(biāo)準(zhǔn)的開(kāi)放和最先進(jìn)的多核心、多線程SPARC微處理器的設(shè)計(jì)代碼開(kāi)放,促使世界上越來(lái)越多的公司、機(jī)構(gòu)和大學(xué)加入到SPARC微處理器的研發(fā)中。到目前為止,對(duì)于開(kāi)源的SPARC微處理器設(shè)計(jì)代碼,已經(jīng)有超過(guò)10,000個(gè)下載。而業(yè)界對(duì)研究SPARC微處理器的積極響應(yīng),必將推動(dòng)SPARC微處理器持續(xù)進(jìn)步,讓它始終具有超強(qiáng)的競(jìng)爭(zhēng)性。