MIPS架構(gòu)與ARM架構(gòu)
普通用戶關(guān)注MIPS主要還是因?yàn)槲覈?guó)所謂的”龍芯“。龍芯一開始抄襲MIPS,后來購(gòu)買到了授權(quán)。倒也并非龍芯不想發(fā)展X86架構(gòu)的桌面CPU市場(chǎng)或者ARM架構(gòu)的移動(dòng)設(shè)備市場(chǎng),是因?yàn)檫@兩家的授權(quán)太過于苛刻。X86的授權(quán)Intel已然不可能再授權(quán)。ARM是一家芯片設(shè)計(jì)公司,只能給出使用授權(quán),不會(huì)同意讓龍芯自行設(shè)計(jì)。只有MIPS才可行,MIPS的授權(quán)說白了就是隨便抄隨便改。
本文引用地址:http://butianyuan.cn/article/201611/317798.htm很多龍芯的支持者提出了MIPS在理論上有諸多的領(lǐng)先,但不要忘了ARM是一家商業(yè)公司,市場(chǎng)占有率高,競(jìng)爭(zhēng)意識(shí)也非常強(qiáng)。幾乎所有的智能手機(jī)都是ARM架構(gòu),就是最有力的證明。
1.流水線結(jié)構(gòu) pipeline
– MIPS 是最簡(jiǎn)單的體系結(jié)構(gòu)之一,所以使大學(xué)喜歡選擇 MIPS 體系結(jié)構(gòu)來介紹計(jì)算體系結(jié)構(gòu)課程。
– ARM has barrel shifter
shifter是兩面性的,一方面它可以提高數(shù)學(xué)邏輯運(yùn)算速度,另一方面它也增加了硬件的復(fù)雜性。所以和可以完成同樣功能的adder/shift register相比,效率更高,但是也占用更多的芯片面積。
– MIPS have “branch delay slot” and “load delay slot”
MIPS使用編譯器來解決上面的兩個(gè)問題。因?yàn)镸IPS最初的設(shè)計(jì)思想就是使用簡(jiǎn)單的RISC硬體,然后靠編譯器及其他軟體技術(shù),來達(dá)成RISC的完整概念。
2.指令結(jié)構(gòu) instruction
– MIPS have 32bit and 64bit architecture,but ARM only have 32bit architecture
ARM11 局部64位
– MIPS是開放式的架構(gòu),用戶可以在開發(fā)的內(nèi)核中加入自己的指令,
– ARM has 4-bit condition code in every instruction
ARM 在這一點(diǎn)很像x86。MIPS在MIPS IV也加入”conditional move”指令,來提高pipeline的效率。
– ARM has pre- and post-increment addressing modes
auto-increment/decrement on load/store instructions
– 在節(jié)省代碼空間方面,MIPS16 很類似ARM Thumb
3.寄存器 register
-由于MIPS內(nèi)核中有32個(gè)寄存器(Register),而ARM只有16個(gè),這種結(jié)構(gòu)設(shè)計(jì)上的先天優(yōu)勢(shì),決定了在同等性能表現(xiàn)下,MIPS的芯片面積和功耗會(huì)更小。
– ARM 有一組特殊用途寄存器cp0-cp15,可以使用MCR,MRC等指令控制;相對(duì)應(yīng)的,MIPS也有cp0 0-30,使用mfc0,mtc0 指令控制。
– Register banking in ARM. r8-r12 FIQ mode;r13:SP r14:LR
感覺不出banked register有什么好處。
– MIPS has a hard-wired-to-zero register ,but ARM not
MIPS use register $0 for Zero
4.地址空間 address space
– MIPS 起始地址是0xbfc00000,會(huì)有4Mbyte的大小限制,但一般MIPS芯片都會(huì)采取一些方法解決這個(gè)問題。
ARM沒有這種問題。
MIPS24K 起始地址改到了0xbf000000,現(xiàn)在有16Mbyte的空間了。
– MIPS don’t have to turn paging on to enable the cache.
MIPS have the address space for both cache and un-cache
but ARM need enable/disable cache
5.功能 function
– Float point: MIPS64 has.
ARM’s support for FP is limited, and usually not included, and it is a 32 bit architecture
– ARM use JTAG,MIPS use EJTAG。Debug工具一般兩種都支持。使用起來感覺差不多。
6.性能 performance
– 具體性能比較,因?yàn)椴町愋蕴?,所以很難分出誰(shuí)好誰(shuí)壞。從個(gè)人經(jīng)驗(yàn)來講 MIPS4k和ARM9基本上是同一個(gè)級(jí)別的,但ARM9性能似乎要比MIPS4K好。
同樣是32bit的MIPS24K性能上比MIPS4K有很大提升,也應(yīng)該比ARM9要好些。
因?yàn)闆]有用過ARM11和MIPS34K的芯片,沒法比較,但感覺這兩個(gè)似乎是一個(gè)級(jí)別的。
Cortex-A8和 MIPS 74K都是最新的設(shè)計(jì),應(yīng)該性能也差不多。
7.應(yīng)用
– 在1000MHz以上的應(yīng)用,很難找到采用ARM架構(gòu)的產(chǎn)品。
MIPS架構(gòu)用在200MHz或者是266MHz以下的應(yīng)用比較少,而這恰恰是ARM的主攻市場(chǎng)。
– ARM 由于功耗小,普遍用在在手機(jī)/PDA等便攜式消費(fèi)電子領(lǐng)域; MIPS 在住宅網(wǎng)關(guān)、線纜調(diào)制解調(diào)器、線纜機(jī)頂盒等,由于MIPS 多核的發(fā)展,現(xiàn)在大型網(wǎng)關(guān)設(shè)備也多用它。
– ARM 采用硬核授權(quán);MIPS 采用軟核授權(quán),用戶可以自己配置,做自己的產(chǎn)品。
8.未來發(fā)展
– ARM的下一代走向多內(nèi)核結(jié)構(gòu),而MIPS公司的下一代核心則轉(zhuǎn)向硬件多線程功能(multithreading)
MIPS 的multi-threading 很類似Intel 的 HyperThreading技術(shù)。從現(xiàn)在的發(fā)展來看,多內(nèi)核占上風(fēng)。
2008.12.21: 其實(shí)今天看來,也不好妄自評(píng)論孰好孰壞,雖說, HT技術(shù)在intel上發(fā)展并不好(已經(jīng)基本被dual core)代替,但是并不能推斷說MT在MIPS上就發(fā)展不好,畢竟mips的應(yīng)用場(chǎng)合多是嵌入式領(lǐng)域,而MT的功耗小芯片面積小的優(yōu)勢(shì)正好能發(fā)揮作用。
2008.12.29: MIPS也并不是只有multithreading, 其實(shí)現(xiàn)在很多的MIPS cpu的廠商都有multi-core的mips cpu在出,比如cavium, broadcom, infineon,國(guó)內(nèi)的龍芯也有多核的產(chǎn)品。
2009.6.11: MIPS的多核發(fā)展顯然比ARM要好。從 Cavium,RMI,公司的產(chǎn)品大量的應(yīng)用便可見一斑。
9.總結(jié)
自己感覺ARM和MIPS在一開始的RISC的設(shè)計(jì)上有很多不同,但隨著技術(shù)的發(fā)展,各自揚(yáng)長(zhǎng)避短,好的技術(shù)大家都會(huì)使用。比如ARM11和MIPS R1000就使用了很多一樣的技術(shù)。感覺RISC做到了極至就都一樣了。
精簡(jiǎn)指令集編輯risc一般指精簡(jiǎn)指令集
本詞條缺少信息欄,補(bǔ)充相關(guān)內(nèi)容使詞條更完整,還能快速升級(jí),趕緊來編輯吧!
RISC的英文全稱是Reduced Instruction Set Computer,中文是精簡(jiǎn)指令集計(jì)算機(jī)。特點(diǎn)是所有指令的格式都是一致的,所有指令的指令周期也是相同的,并且采用流水線技術(shù)。在中高檔服務(wù)器中采用RISC指令的CPU主要有Compaq(康柏,即新惠普)公司的Alpha、HP公司的PA-RISC、IBM公司的PowerPC、MIPS公司的MIPS和SUN公司的Sparc。
目錄
1簡(jiǎn)介
2發(fā)展背景
發(fā)展分歧
提出原由
3優(yōu)勢(shì)
4特征
5結(jié)構(gòu)特點(diǎn)
6發(fā)展前景
1簡(jiǎn)介編輯
精簡(jiǎn)指令集,是計(jì)算機(jī)中央處理器的一種設(shè)計(jì)模式,也被稱為RISC(Reduced Instruction Set Computer的縮寫)。[1] 這種設(shè)計(jì)思路對(duì)指令數(shù)目和尋址方式都做了精簡(jiǎn),使其實(shí)現(xiàn)更容易,指令并行執(zhí)行程度更好,編譯器的效率更高。常用的精簡(jiǎn)指令集微處理器包括DECAlpha、ARC、ARM、AVR、MIPS、PA-RISC、PowerArchitecture(包括PowerPC)和SPARC等。這種設(shè)計(jì)思路最早的產(chǎn)生緣自于有人發(fā)現(xiàn),盡管傳統(tǒng)處理器設(shè)計(jì)了許多特性讓代碼編寫更加便捷,但這些復(fù)雜特性需要幾個(gè)指令周期才能實(shí)現(xiàn),并且常常不被運(yùn)行程序所采用。此外,處理器和主內(nèi)存之間運(yùn)行速度的差別也變得越來越大。在這些因素促使下,出現(xiàn)了一系列新技術(shù),使處理器的指令得以流水執(zhí)行,同時(shí)降低處理器訪問內(nèi)存的次數(shù)。早期,這種指令集的特點(diǎn)是指令數(shù)目少,每條指令都采用標(biāo)準(zhǔn)字長(zhǎng)、執(zhí)行時(shí)間短、中央處理器的實(shí)現(xiàn)細(xì)節(jié)對(duì)于機(jī)器級(jí)程序是可見的。
2發(fā)展背景編輯
在早期的計(jì)算機(jī)業(yè)中,編譯器技術(shù)尚未出現(xiàn)。程序是以機(jī)器語(yǔ)言或匯編語(yǔ)言完成的。為了便于編寫程序,計(jì)算機(jī)架構(gòu)師造出越來越復(fù)雜的指令,可以高階程序語(yǔ)言直接陳述高階功能。當(dāng)時(shí)的看法是硬件比編譯器更易設(shè)計(jì),所以復(fù)雜的東西就加進(jìn)硬件了。
加速?gòu)?fù)雜化的其它因素是缺乏大內(nèi)存。內(nèi)存小的環(huán)境中,具有極高訊息密度的程序較有利。當(dāng)內(nèi)存中的每一字節(jié)如此珍貴,例如儲(chǔ)存某個(gè)完整系統(tǒng)只需幾千字節(jié),它使產(chǎn)業(yè)移向高度編碼的指令、長(zhǎng)度不等的指令、執(zhí)行多個(gè)操作的指令,和執(zhí)行數(shù)據(jù)傳輸與計(jì)算的指令。當(dāng)時(shí)指令封包問題遠(yuǎn)比易解的指令重要。
那時(shí)使用磁性技術(shù),內(nèi)存不僅小,而且很慢。這是維持極高訊息密度的其它原因。借著具有極高訊息密度封包,當(dāng)必須存取慢速資源時(shí)可以降低頻率。
CPU只有少數(shù)緩存器的兩個(gè)原因︰
CPU內(nèi)部緩存器遠(yuǎn)貴于外部?jī)?nèi)存。以當(dāng)時(shí)的集成電路技術(shù)水準(zhǔn),大緩存器集對(duì)芯片或電路板區(qū)域只是多余的浪費(fèi)。
具有大數(shù)量的緩存器將需要大數(shù)量的指令位(使用珍貴的RAM)以做為緩存器指定器。
基于上述原因,CPU設(shè)計(jì)師試著令指令盡可能做更多的工作。這導(dǎo)致一個(gè)指令將做全部的工作︰讀入兩個(gè)數(shù)字,相加,并且直接在內(nèi)存儲(chǔ)存計(jì)算結(jié)果。其它版本將從內(nèi)存讀取兩個(gè)數(shù)字,但計(jì)算結(jié)果儲(chǔ)存在緩存器。另一個(gè)版本將從內(nèi)存和緩存器各讀一個(gè)數(shù)字,并再次存入內(nèi)存。以此類推。這種處理器設(shè)計(jì)原理最終成為復(fù)雜指令集(CISC)。
當(dāng)時(shí)的目標(biāo)是給所有的指令提供所有的尋址模式,此稱為「正交性」。這在 CPU 上導(dǎo)致了一些復(fù)雜性,但就理論上每個(gè)可能的命令都可以單獨(dú)的調(diào)試(調(diào)用,be tuned),這樣使得程序員能夠比用簡(jiǎn)單的命令來得更快速。
這類的設(shè)計(jì)最終可以由光譜的兩端來表達(dá), 6502 在光譜的一端,而 VAX 在光譜的另一端。單價(jià)25美元的 1MHz 6502 芯片只有單一的通用緩存器, 但它的極精簡(jiǎn)的單周期內(nèi)存界面(single-cycle memory interface)讓一個(gè)位的操作效能和更高頻率設(shè)計(jì)幾乎相同,例如 4MHz Zilog Z80 在使用相同慢速的記憶芯片下(大約近似 300ns)。
發(fā)展分歧
在計(jì)算機(jī)指令系統(tǒng)的優(yōu)化發(fā)展過程中,出現(xiàn)過兩個(gè)截然不同的優(yōu)化方向:CISC技術(shù)和RISC技術(shù)。CISC是指復(fù)雜指令系統(tǒng)計(jì)算機(jī)(Complex Instruction Set Computer);RISC是指精減指令系統(tǒng)計(jì)算機(jī)(Reduced Instruction Set Computer)。這里的計(jì)算機(jī)指令系統(tǒng)指的是計(jì)算機(jī)的最低層的機(jī)器指令,也就是CPU能夠直接識(shí)別的指令。隨著計(jì)算機(jī)系統(tǒng)的復(fù)雜,要求計(jì)算機(jī)指令系統(tǒng)的構(gòu)造能使計(jì)算機(jī)的整體性能更快更穩(wěn)定。最初,人們采用的優(yōu)化方法是通過設(shè)置一些功能復(fù)雜的指令,把一些原來由軟件實(shí)現(xiàn)的、常用的功能改用硬件的指令系統(tǒng)實(shí)現(xiàn),以此來提高計(jì)算機(jī)的執(zhí)行速度,這種計(jì)算機(jī)系統(tǒng)就被稱為復(fù)雜指令系統(tǒng)計(jì)算機(jī),即Complex Instruction Set Computer,簡(jiǎn)稱CISC。另一種優(yōu)化方法是在20世紀(jì)80年代才發(fā)展起來的,其基本思想是盡量簡(jiǎn)化計(jì)算機(jī)指令功能,只保留那些功能簡(jiǎn)單、能在一個(gè)節(jié)拍內(nèi)執(zhí)行完成的指令,而把較復(fù)雜的功能用一段子程序來實(shí)現(xiàn),這種計(jì)算機(jī)系統(tǒng)就被稱為精簡(jiǎn)指令系統(tǒng)計(jì)算機(jī).即Reduced Instruction Set Computer,簡(jiǎn)稱RISC。RISC技術(shù)的精華就是通過簡(jiǎn)化計(jì)算機(jī)指令功能,使指令的平均執(zhí)行周期減少,從而提高計(jì)算機(jī)的工作主頻,同時(shí)大量使用通用寄存器來提高子程序執(zhí)行的速度
提出原由
IBM公司設(shè)在紐約Yorktown的JhomasI.Wason研究中心于1975年組織力量研究指令系統(tǒng)的合理性問題.因?yàn)楫?dāng)時(shí)已感到,日趨龐雜的指令系統(tǒng)不但不易實(shí)現(xiàn).而且還可能降低系統(tǒng)性能.1979年以帕特遜教授為首的一批科學(xué)家也開始在美國(guó)加州大學(xué)伯克萊分校開展這一研究.結(jié)果表明,CISC存在許多缺點(diǎn).首先.在這種計(jì)算機(jī)中.各種指令的使用率相差懸殊:一個(gè)典型程序的運(yùn)算過程所使用的80%指令.只占一個(gè)處理器指令系統(tǒng)的20%.事實(shí)上最頻繁使用的指令是取、存和加這些最簡(jiǎn)單的指令.這樣-來,長(zhǎng)期致力于復(fù)雜指令系統(tǒng)的設(shè)計(jì),實(shí)際上是在設(shè)計(jì)一種難得在實(shí)踐中用得上的指令系統(tǒng)的處理器.同時(shí).復(fù)雜的指令系統(tǒng)必然帶來結(jié)構(gòu)的復(fù)雜性.這不但增加了設(shè)計(jì)的時(shí)間與成本還容易造成設(shè)計(jì)失誤.此外.盡管VLSI技術(shù)現(xiàn)在已達(dá)到很高的水平,但也很難把CISC的全部硬件做在一個(gè)芯片上,這也妨礙單片計(jì)算機(jī)的發(fā)展.在CISC中,許多復(fù)雜指令需要極復(fù)雜的操作,這類指令多數(shù)是某種高級(jí)語(yǔ)言的直接翻版,因而通用性差.由于采用二級(jí)的微碼執(zhí)行方式,它也降低那些被頻繁調(diào)用的簡(jiǎn)單指令系統(tǒng)的運(yùn)行速度.因而.針對(duì)CISC的這些弊病.帕特遜等人提出了精簡(jiǎn)指令的設(shè)想即指令系統(tǒng)應(yīng)當(dāng)只包含那些使用頻率很高的少量指令.并提供一些必要的指令以支持操作系統(tǒng)和高級(jí)語(yǔ)言.按照這個(gè)原則發(fā)展而成的計(jì)算機(jī)被稱為精簡(jiǎn)指令集計(jì)算機(jī)(ReducedInstructionSetComputer-RISC)結(jié)構(gòu).簡(jiǎn)稱RISC.
3優(yōu)勢(shì)編輯
RISC和CISC是設(shè)計(jì)制造微處理器的兩種典型技術(shù),雖然它們都是試圖
在體系結(jié)構(gòu)、操作運(yùn)行、軟件硬件、編譯時(shí)間和運(yùn)行時(shí)間等諸多因素中做出某種平衡,以求達(dá)到高效的目的,但采用的方法不同,因此,在很多方面差異很大,它們主要有:
(1)指令系統(tǒng):RISC設(shè)計(jì)者把主要精力放在那些經(jīng)常使用的指令上,盡量使它們具有簡(jiǎn)單高效的特色。對(duì)不常用的功能,常通過組合指令來完成。因此,在RISC機(jī)器上實(shí)現(xiàn)特殊功能時(shí),效率可能較低。但可以利用流水技術(shù)和超標(biāo)量技術(shù)加以改進(jìn)和彌補(bǔ)。而CISC計(jì)算機(jī)的指令系統(tǒng)比較豐富,有專用指令來完成特定的功能。因此,處理特殊任務(wù)效率較高。
(2)存儲(chǔ)器操作:RISC對(duì)存儲(chǔ)器操作有限制,使控制簡(jiǎn)單化;而CISC機(jī)器的存儲(chǔ)器操作指令多,操作直接。
(3)程序:RISC匯編語(yǔ)言程序一般需要較大的內(nèi)存空間,實(shí)現(xiàn)特殊功能時(shí)程序復(fù)雜,不易設(shè)計(jì);而CISC匯編語(yǔ)言程序編程相對(duì)簡(jiǎn)單,科學(xué)計(jì)算及復(fù)雜操作的程序設(shè)計(jì)相對(duì)容易,效率較高。
(4)中斷:RISC機(jī)器在一條指令執(zhí)行的適當(dāng)?shù)胤娇梢皂憫?yīng)中斷,但是相比CISC指令執(zhí)行的時(shí)間短,所以中斷響應(yīng)及時(shí);而CISC機(jī)器是在一條指令執(zhí)行結(jié)束后響應(yīng)中斷。
(5)CPU:RISCCPU包含有較少的單元電路,因而面積小、功耗低;而CISCCPU包含有豐富的電路單元,因而功能強(qiáng)、面積大、功耗大。
(6)設(shè)計(jì)周期:RISC微處理器結(jié)構(gòu)簡(jiǎn)單,布局緊湊,設(shè)計(jì)周期短,且易于采用最新技術(shù);CISC微處理器結(jié)構(gòu)復(fù)雜,設(shè)計(jì)周期長(zhǎng)。
(7)用戶使用:RISC微處理器結(jié)構(gòu)簡(jiǎn)單,指令規(guī)整,性能容易把握,易學(xué)易用;CISC微處理器結(jié)構(gòu)復(fù)雜,功能強(qiáng)大,實(shí)現(xiàn)特殊功能容易。
(8)應(yīng)用范圍:由于RISC指令系統(tǒng)的確定與特定的應(yīng)用領(lǐng)域有關(guān),故RISC機(jī)器更適合于專用機(jī);而CISC機(jī)器則更適合于通用機(jī)。
4特征編輯
統(tǒng)一指令編碼(例如,所有指令中的op-code永遠(yuǎn)位于同樣的位位置、等長(zhǎng)指令),可快速解譯︰
泛用的緩存器,所有緩存器可用于所有內(nèi)容,以及編譯器設(shè)計(jì)的單純化(不過緩存器中區(qū)分了整數(shù)和浮點(diǎn)數(shù));
單純的尋址模式(復(fù)雜尋址模式以簡(jiǎn)單計(jì)算指令序列取代);
硬件中支持少數(shù)數(shù)據(jù)型別(例如,一些CISC計(jì)算機(jī)中存有處理字節(jié)字符串的指令。這在RISC計(jì)算機(jī)中不太可能出現(xiàn))。
RISC設(shè)計(jì)上同時(shí)也有哈佛內(nèi)存模塊特色,凡指令流和數(shù)據(jù)流在概念上分開;這意味著更改代碼存在的內(nèi)存地址對(duì)處理器執(zhí)行過的指令沒有影響(因?yàn)镃PU有著獨(dú)立的指令和數(shù)據(jù)緩存),至少在特殊的同步指令發(fā)出前。在另一面,這允許指令緩存和數(shù)據(jù)緩存同時(shí)被訪問,通常能改進(jìn)運(yùn)行效率。
許多早期的RISC設(shè)計(jì)同樣共享著不好的副作用——轉(zhuǎn)移延時(shí)槽,轉(zhuǎn)移延時(shí)槽是指一個(gè)跳轉(zhuǎn)或轉(zhuǎn)移指令之后的指令空間。無論轉(zhuǎn)移是否發(fā)生,空間中的指令將被執(zhí)行(或者說是轉(zhuǎn)移效果被延遲)。這些指令讓CPU的算術(shù)和邏輯單元(ALU)繁忙比通常執(zhí)行轉(zhuǎn)移所需更多的時(shí)間?,F(xiàn)在轉(zhuǎn)移延時(shí)槽被認(rèn)為是實(shí)現(xiàn)特定RISC設(shè)計(jì)的副作用,現(xiàn)代的RISC設(shè)計(jì)通常避免了這個(gè)問題(如PowerPC,最近的SPARC版本,MIPS)。
5結(jié)構(gòu)特點(diǎn)編輯
RISC是簡(jiǎn)化指令集計(jì)算機(jī)的簡(jiǎn)略縮寫,其風(fēng)格是強(qiáng)調(diào)計(jì)算機(jī)結(jié)構(gòu)的簡(jiǎn)單性和高效性。RISC設(shè)計(jì)是從足夠的不可缺少的指令集開始的。它的速度比那些具有傳統(tǒng)復(fù)雜指令組計(jì)算機(jī)結(jié)構(gòu)的機(jī)器快得多,而且RISC機(jī)由于其較簡(jiǎn)潔的設(shè)計(jì),較易使用,故具有更短的研制開發(fā)周期。RISC結(jié)構(gòu)一般具有如下的一些特點(diǎn):
①單周期的執(zhí)行:它統(tǒng)一用單周期指令。從根本上克服了CISC指令周期數(shù)有長(zhǎng)有短,造成運(yùn)行中偶發(fā)性不確定,致使運(yùn)行失常的問題。
②采用高效的流水線操作:使指令在流水線中并行地操作,從而提高處理數(shù)據(jù)和指令的速度。
③無微代碼的硬連線控制:微代碼的使用會(huì)增加復(fù)雜性和每條指令的執(zhí)行周期。
④指令格式的規(guī)格化和簡(jiǎn)單化:為與流水線結(jié)構(gòu)相適應(yīng)且提高流水線的效率,指令的格式必須趨于簡(jiǎn)單和固定的規(guī)式。比如指令采用16位或32位的固定的長(zhǎng)度,并且指令中的操作碼字段、操作數(shù)字段都盡可能具有統(tǒng)一的格式。此外,盡量減少尋址方式,從而使硬件邏輯部件簡(jiǎn)化且縮短譯碼時(shí)間,同時(shí)也提高了機(jī)器執(zhí)行效率和可靠性。
⑤采用面向寄存器堆的指令:RISC結(jié)構(gòu)采用大量的寄存器——寄存器操作指令,使指令系統(tǒng)更為精簡(jiǎn)??刂撇考鼮楹?jiǎn)化,指令執(zhí)行速度大大提高。由于VLSI技術(shù)的迅速發(fā)展,使得在一個(gè)芯片上做大量的寄存器成為可能。這也促成了RISC結(jié)構(gòu)的實(shí)現(xiàn)。
⑥采用裝入/存儲(chǔ)指令結(jié)構(gòu):在CISC結(jié)構(gòu)中。大量設(shè)置存儲(chǔ)器——存儲(chǔ)器操作指令,頻繁地訪問內(nèi)存,將會(huì)使執(zhí)行速度降低。RISC結(jié)構(gòu)的指令系統(tǒng)中,只有裝入/存儲(chǔ)指令可以訪問內(nèi)存,而其它指令均在寄存器之間對(duì)數(shù)據(jù)進(jìn)行處理。用裝入指令從內(nèi)存中將數(shù)據(jù)取出,送到寄存器;在寄存器之間對(duì)數(shù)據(jù)進(jìn)行快速處理,并將它暫存在那里,以便再有需要時(shí)。不必再次訪問內(nèi)存。在適當(dāng)?shù)臅r(shí)候,使用一條存儲(chǔ)指令再將這個(gè)數(shù)據(jù)送回內(nèi)存。采用這種方法可以提高指令執(zhí)行的速度。
⑦注重編譯的優(yōu)化,力求有效地支撐高級(jí)語(yǔ)言程序。
通常使用的單片機(jī)中,MCS一51系列的單片機(jī)屬于CISC的體系結(jié)構(gòu);AVR系列的單片機(jī)則屬于RISC的體系結(jié)構(gòu)。
6發(fā)展前景編輯
鑒于RISC的設(shè)計(jì)特點(diǎn)以及其無可比擬的優(yōu)點(diǎn),RISC體系結(jié)構(gòu)處理器的發(fā)展方向:
一
650) this.width=650;" class="lazy-img" alt="" src="http://f.hiphotos.baidu.com/baike/s%3D220/sign=28bdb2601038534388cf8023a312b01f/9c16fdfaaf51f3dea918f86894eef01f3a297917.jpg" style="border:0px;background-image:url("http://img.baidu.com/img/baike/img-loading.gif");background-color:transparent;width:220px;height:130px;background-position:50% 50%;" />擴(kuò)展指令集
是增加處理器的并行性;
二是擴(kuò)展支持可伸縮并行計(jì)算機(jī)系統(tǒng)的功能;
三是提高工藝水平。最終RISC與DSP在嵌入式應(yīng)用中完美融合,密不可分。
RISC微處理器不僅精簡(jiǎn)了指令系統(tǒng),采用超標(biāo)量和超流水線結(jié)構(gòu);它們的指令數(shù)目只有幾十條,卻大大增強(qiáng)了并行處理能力。如:1987年SunMicrosystem公司推出的SPARC芯片就是一種超標(biāo)量結(jié)構(gòu)的RISC處理器。而SGI公司推出的MIPS處理器則采用超流水線結(jié)構(gòu),這些RISC處理器在構(gòu)建并行精簡(jiǎn)指令系統(tǒng)多處理機(jī)中起著核心的作用。RISC處理器是當(dāng)今UNIX領(lǐng)域64位多處理機(jī)的主流芯片。
性能特點(diǎn)
性能特點(diǎn)一:由于指令集簡(jiǎn)化后,流水線以及常用指令均可用硬件執(zhí)行;
性能特點(diǎn)二:采用大量的寄存器,使大部分指令操作都在寄存器之間進(jìn)行,提高了處理速度;
性能特點(diǎn)三:采用緩存—主機(jī)—外存三級(jí)存儲(chǔ)結(jié)構(gòu),使取數(shù)與存數(shù)指令分開執(zhí)行,使處理器可以完成盡可能多的工作,且不因從存儲(chǔ)器存取信息而放慢處理速度。
應(yīng)用特點(diǎn)
由于RISC處理器指令簡(jiǎn)單、采用硬布線控制邏輯、處理能力強(qiáng)、速度快,世界上絕大部分UNIX工作站和服務(wù)器廠商均采用RISC芯片作CPU用。如原DEC的Alpha21364、IBM的PowerPCG4、HP的PA—8900、SGI的R12000A和SUNMicrosystem公司的UltraSPARC║。
運(yùn)行特點(diǎn)
RISC芯片的工作頻率一般在400MHZ數(shù)量級(jí)。時(shí)鐘頻率低,功率消耗少,溫升也少,機(jī)器不易發(fā)生故障和老化,提高了系統(tǒng)的可靠性。單一指令周期容納多部并行操作。在RISC微處理器發(fā)展過程中。曾產(chǎn)生了超長(zhǎng)指令字(VLIW)微處理器,它使用非常長(zhǎng)的指令組合,把許多條指令連在一起,以能并行執(zhí)行。VLIW處理器的基本模型是標(biāo)量代碼的執(zhí)行模型,使每個(gè)機(jī)器周期內(nèi)有多個(gè)操作。有些RISC處理器中也采用少數(shù)VLIW指令來提高處理速度。
評(píng)論