概述
由于軟件技術(shù)的發(fā)展,傳統(tǒng)的CISC結(jié)構(gòu)必然隨著越來越多的宏代碼和功能更強的操作發(fā)展,以便為高級語言和操作系統(tǒng)提供更多的支持。其結(jié)果是指令數(shù)量增加,要求一條指令中完成的操作更多,從而計算機結(jié)構(gòu)變得越來越復(fù)雜。但是,在對系統(tǒng)內(nèi)核和優(yōu)化編譯程序生成目標(biāo)代碼的分析中發(fā)現(xiàn),由于微碼很少提供支持各種高級語言和系統(tǒng)環(huán)境所需的程序,因此復(fù)雜指令很少用到。而最簡單的指令卻達到了很高的使用頻度。由此而產(chǎn)生了RISC的概念。
簡介
精簡指令集,是計算機中央處理器的一種設(shè)計模式,也被稱為RISC(Reduced Instruction Set Computer的縮寫)。這種設(shè)計思路對指令數(shù)目和尋址方式都做了精簡,使其實現(xiàn)更容易,指令并行執(zhí)行程度更好,編譯器的效率更高。常用的精簡指令集微處理器包括DECAlpha、ARC、ARM、AVR、MIPS、PA-RISC、PowerArchitecture(包括PowerPC)和SPARC等。
對比CISC
RISC和CISC是設(shè)計制造微處理器的兩種典型技術(shù),雖然它們都是試圖在體系結(jié)構(gòu)、操作運行、軟件硬件、編譯時間和運行時間等諸多因素中做出某種平衡,以求達到高效的目的,但采用的方法不同,因此,在很多方面差異很大,它們主要有:
?。?)指令系統(tǒng):RISC設(shè)計者把主要精力放在那些經(jīng)常使用的指令上,盡量使它們具有簡單高效。對不常用的功能,常通過組合指令來完成。因此,在RISC機器上實現(xiàn)特殊功能時,效率可能較低。但可以利用流水技術(shù)和超標(biāo)量技術(shù)加以改進和彌補。而CISC計算機的指令系統(tǒng)比較豐富,有專用指令來完成特定的功能。因此,處理特殊任務(wù)效率較高。
?。?)存儲器操作:RISC對存儲器操作有限制,使控制簡單化;而CISC機器的存儲器操作指令多,操作直接。
?。?)程序:RISC匯編語言程序一般需要較大的內(nèi)存空間,實現(xiàn)特殊功能時程序復(fù)雜,不易設(shè)計;而CISC匯編語言程序編程相對簡單,科學(xué)計算及復(fù)雜操作的程序設(shè)計相對容易,效率較高。
?。?)中斷:RISC機器在一條指令執(zhí)行的適當(dāng)?shù)胤娇梢皂憫?yīng)中斷,但是相比CISC指令執(zhí)行的時間短,所以中斷響應(yīng)及時;而CISC機器是在一條指令執(zhí)行結(jié)束后響應(yīng)中斷。
?。?)CPU:RISC CPU包含有較少的單元電路,因而面積小、功耗低;而CISCCPU包含有豐富的電路單元,因而功能強、面積大、功耗大。
(6)設(shè)計周期:RISC微處理器結(jié)構(gòu)簡單,布局緊湊,設(shè)計周期短,且易于采用最新技術(shù);CISC微處理器結(jié)構(gòu)復(fù)雜,設(shè)計周期長。
?。?)用戶使用:RISC微處理器結(jié)構(gòu)簡單,指令規(guī)整,性能容易把握,易學(xué)易用;CISC微處理器結(jié)構(gòu)復(fù)雜,功能強大,實現(xiàn)特殊功能容易。
(8)應(yīng)用范圍:由于RISC指令系統(tǒng)的確定與特定的應(yīng)用領(lǐng)域有關(guān),故RISC機器更適合于專用機;而CISC機器則更適合于通用機。
特點
究竟應(yīng)怎樣來認(rèn)識RISC呢?應(yīng)該說,時至而今的RISC不是一個具體的系統(tǒng),也不是一種具體的技術(shù),它是一種結(jié)構(gòu)設(shè)計的規(guī)范。
所謂RISC計算機,應(yīng)具有這樣一個指令系統(tǒng),它既能由流水線處理器高效地執(zhí)行,又能為優(yōu)化編譯程序生成優(yōu)化的代碼。
這種開放式的定義綜合了RISC設(shè)計的基本要求和原理,在這個定義下的RISC機器通常具有以下特點:
●指令集中各條指令的周期數(shù)一致。以便指令流水線的管理簡單,高效。
●指令編碼簡單一致。
●大部分指令能在一個周期內(nèi)完成。
●只由Load和Store指令訪問存儲器。
●尋址方式簡單。
●延遲的裝入指令。
●延遲的分支指令。
●三地址指令格式。
●寄存器數(shù)量多。
●具有對稱指令集。
應(yīng)該注意的是,這些特點都沒有排除執(zhí)行復(fù)雜功能的指令。例如在很多RISC中都提供了浮點運算指令。但只有在用硬件實現(xiàn)比用一組簡單指令更快時,RISC才考慮包括這種復(fù)雜功能指令。所謂“精簡”并不是要求把指令集縮減到某最低限,而應(yīng)以滿足性能要求為前提。
內(nèi)容來自百科網(wǎng)