




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、一、riscrisc (reduced instruction set computer ,精簡指令集計(jì)算機(jī))是一種執(zhí)行 較 少類型計(jì)算機(jī)指令的微處理器,起源于 80年代的mips主機(jī)(即risc機(jī)),risc 機(jī)中采用的微處理器統(tǒng)稱 risc處理器。這樣一來,它能夠以更快的速度執(zhí)行操作(每秒執(zhí)行更多百萬條指令,即 mips )。因?yàn)橛?jì)算機(jī)執(zhí)行每個(gè)指令類 型都需要額外 的晶體管和電路元件,計(jì)算機(jī)指令集越大就會(huì)使微處理器更復(fù)雜,執(zhí)行操作也會(huì)更慢。1 . risc體系的指令特征精簡指令集:包含了簡單、基本的指令,透過這些簡單、基本的指令,就可 以組 合成復(fù)雜指令。 同樣長度的指令:每條指令的長度都
2、是相同的,可以在一個(gè)單獨(dú)操作里完成。單機(jī)器周期指令:大多數(shù)的指令都可以在一個(gè)機(jī)器周期里完成,并且允許處理器在同一時(shí)間內(nèi)執(zhí)行一系列的指令。2 . risc體系的優(yōu)缺點(diǎn)優(yōu)點(diǎn):在使用相同的晶片技術(shù)和相同運(yùn)行時(shí)鐘下,risc系統(tǒng)的運(yùn)行速度將是cisc的2? 4倍。由于risc處理器的指令集是精簡的,它的記憶體管理單元、浮點(diǎn)單元等都能設(shè)計(jì)在同一塊晶片上。risc處理器比相對(duì)應(yīng)的cisc處理器設(shè)計(jì)更簡單,所需要的時(shí)間將變得更短,并可以比cisc處理器應(yīng)用更多先進(jìn) 的技術(shù),開發(fā)更快的下一代處理器。缺點(diǎn):多指令的操作使得程式開發(fā)者必須小心地選用合適的編譯器,而且編寫的代碼量會(huì)變得非常大。另外就是 risc體系
3、的處理器需要更快記憶體,這通常都集成于處理器內(nèi)部,就是 l1 cache (一級(jí)緩存)。 二、cisccisc是復(fù)雜指令系統(tǒng)計(jì)算機(jī)(complex instruction set computer )的簡稱, 微處理器是臺(tái)式計(jì)算機(jī)系統(tǒng)的基本處理部件,每個(gè)微處理器的核心是運(yùn)行指令的電路。指令由完成任務(wù)的多個(gè)步驟所組成,把數(shù)值傳送進(jìn)寄存器或進(jìn)行相加運(yùn)算。1. cisc體系的指令特征使用微代碼。指令集可以直接在微代碼記憶體(比主記憶體的速度快很多) 里執(zhí)行,新設(shè)計(jì)的處理器,只需增加較少的電晶體就可以執(zhí)行同樣的指令集,也可以很快地編寫新的指令集程式。龐大的指令集??梢詼p少編程所需要的代碼行數(shù),減輕程式
4、師的負(fù)擔(dān)。高階語言對(duì)應(yīng)的指令集:包括雙運(yùn)算元格式、寄存器 到寄 存器、寄存器到記憶體以及記憶體到寄存器的指令。2. cisc體系的優(yōu)缺點(diǎn)優(yōu)點(diǎn):能夠有效縮短新指令的微代碼設(shè)計(jì)時(shí)間,允許設(shè)計(jì)師實(shí)現(xiàn)cisc體系 機(jī)器的向上相容。新的系統(tǒng)可以使用一個(gè)包含早期系統(tǒng)的指令超集合,也就可以 使用較早電腦上使用的相同軟體。另外微程式指令的格式與高階語言相匹配,因而編譯器并不一定要重新編寫。缺點(diǎn):指令集以及晶片的設(shè)計(jì)比上一代產(chǎn)品更復(fù)雜,不同的指令,需要不同的時(shí)鐘周期來完成,執(zhí)行較慢的指令,將影響整臺(tái)機(jī)器的執(zhí)行效率三、差別所謂"體系結(jié)構(gòu)", 是指程序員在某cpu 上進(jìn)行程序設(shè)計(jì)時(shí)能夠使用的處理
5、器資源,其中最重要的是處理器所提供的指令系統(tǒng)和寄存器組。注意體系結(jié)構(gòu)(architecture) 和組成 (structure ) 的區(qū)別:前者是處理器的邏輯抽象,是程序員關(guān) 注的部分。后者是具體實(shí)現(xiàn),一般為計(jì)算機(jī)系統(tǒng)設(shè)計(jì)人員關(guān)注。一般來說,arachitecture , structure 是不同層次的概念,但兩者也有一定的聯(lián)系。以指令系統(tǒng)的設(shè)計(jì)為例:相同的指令系統(tǒng)可以通過“硬連接”或“微程序” 的方法來實(shí)現(xiàn)。前者通過cpu 的硬件電路來實(shí)現(xiàn),后者通過"微程序 "來實(shí)現(xiàn)。如 果指令集以硬連接實(shí)現(xiàn),那么對(duì)于復(fù)雜指令來說,電路設(shè)計(jì)就非常困難;反之, 若用微程序來實(shí)現(xiàn)指令集,可
6、以實(shí)現(xiàn)復(fù)雜指令?,F(xiàn)代 cisc 處理器一般都使用微 碼來實(shí)現(xiàn)。在使用微碼技術(shù)的處理器中,實(shí)際存在著兩套不同層次的指令:一套是面向 程序員的,高層的指令;一套是面向硬件實(shí)現(xiàn)的,底層的微碼。在指令與微碼之 間存在著一個(gè)“解釋器”,它將指令翻譯成對(duì)應(yīng)的微碼序列。由此可以想象,指 令與微碼之間 的關(guān)系實(shí)際上時(shí)“子程序調(diào)用”思想的推廣。對(duì)于 cisc? risc 的實(shí)現(xiàn)而言 , 它們所側(cè)重的復(fù)雜性不同 : cisc 處理器的實(shí)現(xiàn)復(fù)雜性更高 , 而 risc 編譯器的復(fù)雜性更高 .微碼相對(duì)于指令的特點(diǎn):1?微碼代表的都是非常簡單的基本操作,而指令可能非常復(fù)雜。2. 微碼的取指操作很快:所有的微碼都位于 r
7、om 中,而指令位于內(nèi)存中。 n ote_13. 微碼的格式很規(guī)則,簡單。因此易于譯碼。4. 微碼的執(zhí)行速度很快,而指令相對(duì)較慢。從處理器架構(gòu)來看,可以將使用微碼技術(shù)的現(xiàn)代 cisc 的基本單元視為一個(gè)快速的 risc 內(nèi)核。這樣問題就出來了 : 如果不引入“解釋器”,而直接使用 risc微碼作為指令,那會(huì)怎樣呢?一一這正是 risc 的思想。下面我們來看看使用微碼實(shí)現(xiàn)的 cisc 旨令集的優(yōu)缺點(diǎn):cisc 旨令集又復(fù)雜化的傾向,即向高級(jí)語言看齊,處理器廠商紛紛提供一些 功能強(qiáng)大的復(fù)雜指令,例如: in tel 針對(duì) x86 處理器在 move 基礎(chǔ)上提供了 “成 串” move 指令,可以將
8、內(nèi)存中數(shù)據(jù)按字節(jié)成塊復(fù)制,相當(dāng)于 :while (n-) *dest+ = *src+;這方便于復(fù)制數(shù)據(jù)結(jié)構(gòu)。對(duì)于其他的復(fù)雜操作,也可以通過一條指令就實(shí)現(xiàn)。cisc 復(fù)雜指令的尋址方式也種類繁多,操作數(shù)可以直接來自內(nèi)存。但復(fù)雜指令為 現(xiàn)代處理器技術(shù)中廣泛使用的流水線技術(shù)引入了問題: 在微處理器中指令的執(zhí)行一般分為“預(yù)指”,“取操作數(shù)”,“運(yùn)算”,“存放”等操作。對(duì)于 cisc 復(fù)雜指令, 他們的執(zhí)行時(shí)間各不相同 note_2 (有的可在 4,5 個(gè)時(shí)鐘周期內(nèi)完成,有的卻需要幾十個(gè),即便對(duì)于簡單指令,也會(huì)由于尋址方式的不同造成不同的執(zhí)行時(shí)間 ) 。 更糟糕的是,指令長度也不一致,同一指令的長度也
9、會(huì)因不同的尋址方式而變化。針對(duì)這些指令,如何設(shè)計(jì)流水線長度呢?若按最短指令設(shè)計(jì)流水線,當(dāng)碰到復(fù)雜 指令時(shí)流水線就會(huì)發(fā)生中斷;若按最長指令設(shè)計(jì)流水線,執(zhí)行較短指令時(shí)就會(huì)跳過某些工位,使流水線不能完全充滿。針對(duì)上述情況,以及20- 80定律(80%勺情況下執(zhí)行的是占指令集 20%勺常用指 令)。多數(shù)復(fù)雜指令很少用到。當(dāng)使用高級(jí)語言進(jìn)行程序設(shè)計(jì)時(shí),編譯器 為了兼容早 期的cpu 一般不會(huì)生成特殊的復(fù)雜指令。如果舍棄這些不常用的復(fù)雜指令,就能簡化cpu的設(shè)計(jì)。這正是risc的出發(fā)點(diǎn)。risc勺特點(diǎn)指令系統(tǒng)較?。悍N類的數(shù)量較少,只提供簡單指令。這些指令大多都能在4, 5個(gè)時(shí)鐘周期內(nèi)完成。2 .指令的操作
10、數(shù)必須預(yù)存于寄存器中,這樣取指操作的時(shí)間也統(tǒng)一了。3 .指令長度,尋址方式,格式都整齊劃一:這樣可以充分利用流水線,基本上 可實(shí) 現(xiàn)一個(gè)時(shí)鐘脈沖執(zhí)行一條指令的目標(biāo)。的子程序調(diào)用與cisc的不同:在cisc中,程序調(diào)用、返回時(shí)需將上下文保存在 堆 棧中,需要內(nèi)存操作。而 risc將它們存放在寄存器中,而且參數(shù)也使用寄存器傳遞。(若存在嵌套的子程序調(diào)用,中間調(diào)用過程中的上下文還是要從寄存器"濺出"(spill)到堆棧中,而"葉"子程序不需要。)中斷可視為特殊的子程序鏈接:cisc中發(fā)生中斷時(shí),所有的寄存器內(nèi)容都被壓入堆棧,而risc對(duì)中斷進(jìn)行區(qū)分對(duì)待,分為輕
11、量級(jí)和重量級(jí)。對(duì)輕量級(jí)中斷只保存需要保存的寄存器內(nèi)容;對(duì)重量級(jí)中斷的處理如同常規(guī)中斷。都采用流水線、高速緩存、不使用微碼。當(dāng)然,risc也有它的缺點(diǎn):代碼密度不高,可執(zhí)行文件體積較大,匯編代碼 可 讀性較差。代碼密度不高是個(gè)值得關(guān)注的問題:若不使用cache,會(huì)需要更大的指令存儲(chǔ)空間,取指時(shí)也占用更大的存儲(chǔ)器帶寬。若采用 cache,又會(huì)降低cache 的命中率。risc和cisc的差異主要有:1 .內(nèi)核結(jié)構(gòu)cisc結(jié)構(gòu)的計(jì)算機(jī)數(shù)據(jù)線和指令線是分時(shí)復(fù)用的,即所謂的馮.諾依曼(vonneumann )結(jié)構(gòu),也稱普里斯頓結(jié)構(gòu),是一種將程序指令存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器合并在一起統(tǒng)一編址的存儲(chǔ)器結(jié)構(gòu)。采用r
12、isc結(jié)構(gòu)的單片機(jī)數(shù)據(jù)線和指令線分離,即所謂的哈佛 ( harward ) 結(jié)構(gòu)。處理器取指令和取數(shù)據(jù)可同時(shí)進(jìn)行。2 .處理器指令集cisc處理的是不等長指令集,它必須對(duì)不等長指令進(jìn)行分割,因此在執(zhí)行單一指令的時(shí)候需要進(jìn)行較多的處理工作。risc執(zhí)行的是等長精簡指令集,cpu在執(zhí)行指令的時(shí)候速度較快且性能穩(wěn) 定。risc 可同時(shí)執(zhí)行多條指令,它可將一條指令分割成若干個(gè)進(jìn)程或線程,交 由多個(gè)處理器同時(shí)執(zhí)行,因此在并行處理方面risc 明顯優(yōu)于 cisc 。3 .指令系統(tǒng)risc設(shè)計(jì)者把主要精力放在那些經(jīng)常使用的指令上,盡量使它們具有簡單高效的特色。對(duì)不常用的功能,常通過組合指令來完成。因此,在
13、risc機(jī)避 上實(shí)現(xiàn)特殊功能時(shí),效率可能較低。但可以利用流水技術(shù)和超標(biāo)量技術(shù)加以改進(jìn)和彌補(bǔ)。而cisc計(jì)算機(jī)的指令系統(tǒng)比較豐富,有專用指令來完成特定的功能。因此,處理特殊任務(wù)效率較高。4 .指令的形成cisc因指令復(fù)雜,故采微指令碼控制單元的設(shè)計(jì),而 risc的指令90%是 由硬體直接完成,只有10%的指令是由軟體以組合的方式完成,因此指令執(zhí)行時(shí)間上risc較短,但risc所須rom空間相對(duì)的比較大,至于 ram使用大 小應(yīng)該與程序 的應(yīng)用比較有關(guān)系。5 .定址模式cisc的需要較多的定址模式,而 risc只有少數(shù)的定址模式,因此 cpu在計(jì) 算記憶體有效位址時(shí),cisc占用的匯流排周期較多。
14、6 .指令周期cisc指令的格式長短不一,執(zhí)行時(shí)的周期次數(shù)也不統(tǒng)一,而 risc結(jié)構(gòu)剛 好相反,故適合采用管線處理架構(gòu)的設(shè)計(jì),進(jìn)而可以達(dá)到平均一周期完成一指令的方向努力。顯然的,在設(shè)計(jì)上risc較cisc簡單,同時(shí)因?yàn)閏isc的執(zhí)行步驟過多, 閑置 的單元電路等待時(shí)間增長,不利于平行處理的設(shè)計(jì),所以就效能而言risc較cisc還是站了上風(fēng),但risc因指令精簡化后造成應(yīng)用程式碼變大,需要較 大的 程式記憶體空間,且存在指令種類較多等等的缺點(diǎn)。7 .存儲(chǔ)器操作risc對(duì)存儲(chǔ)器操作有限制,使控制簡單化;而 cisc機(jī)器的存儲(chǔ)器操作指 令 多,操作直接。8 .程序risc匯編語言程序一般需要較大的內(nèi)
15、存空間,實(shí)現(xiàn)特殊功能時(shí)程序復(fù)雜,不易設(shè)計(jì)。cisc匯編語言程序編程相對(duì)簡單,科學(xué)計(jì)算及復(fù)雜操作的程序社設(shè)計(jì)相對(duì)容易,效率較高。9 .中斷risc機(jī)器在一條指令執(zhí)行的適當(dāng)?shù)胤娇梢皂憫?yīng)中斷。cisc機(jī)器是在一條指令執(zhí)行結(jié)束后響應(yīng)中斷。10 . cpurisc cpu包含有較少的單元電路,因而面積小、功耗低。cisc cpu包含有豐富的電路單元,因而功能強(qiáng)、面積大、功耗大。11 .設(shè)計(jì)周期risc微處理器結(jié)構(gòu)簡單,布局緊湊,設(shè)計(jì)周期短,且易于采用最新技術(shù)。cisc微處理器結(jié)構(gòu)復(fù)雜,設(shè)計(jì)周期長。12 .用戶使用risc微處理器結(jié)構(gòu)簡單,指令規(guī)整,性能容易把握,易學(xué)易用。cisc微處理器結(jié)構(gòu)復(fù)雜,功能強(qiáng)
16、大,實(shí)現(xiàn)特殊功能容易。13 .應(yīng)用范圍由于risc指令系統(tǒng)的確定與特定的應(yīng)用領(lǐng)域有關(guān),故 risc機(jī)器更適合于 專用機(jī)。cisc機(jī)器則更適合于通用機(jī)。小結(jié):因此,大量的復(fù)雜指令、可變的指令長度、多種的尋址方式這些cisc的特點(diǎn),也是cisc的缺點(diǎn),因?yàn)檫@些都大大增加了解碼的難度,而在現(xiàn)在的高 速硬 件發(fā)展下,復(fù)雜指令所帶來的速度提升早已不及在解碼上浪費(fèi)點(diǎn)的時(shí)間。除了個(gè)人pc市場(chǎng)還在用x86指令集外,服務(wù)器以及更大的系統(tǒng)都早已不用cisc 了。x86仍然存在的理由就是為了兼容大量的x86平臺(tái)上的軟件,同時(shí),它的體系結(jié)構(gòu)組成的實(shí)現(xiàn)不太困難。而risc體系的arm指令最大特點(diǎn)是指令長度固定,指令格式種類少,尋址方式種類少,大多數(shù)是簡單指令且都能在一個(gè)時(shí)鐘周期內(nèi)完成,易于設(shè)計(jì)超標(biāo)量與流水線,寄存器數(shù)量多,大量操作在寄存器之間進(jìn)行。優(yōu)點(diǎn)是不言而喻的,因此,arm處理器才成為是當(dāng)前最流行的處理器系列,是幾種主流的嵌入式處理體系結(jié)構(gòu)之一。risc目前正如日中天,intei似乎也將最終拋棄x86而轉(zhuǎn)向risc結(jié)構(gòu)。而實(shí)際上,隨著risc處理器在嵌入式領(lǐng)域中大放 異 彩,傳統(tǒng)的x86系列cisc處理器在intel公司的積極改進(jìn)下也克服了功耗過高 的問 題,成為一些
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 過戶放棄協(xié)議書范本
- 足球課安全協(xié)議合同協(xié)議
- 超市購銷合同協(xié)議版
- 超市食品加工合同協(xié)議
- 家園共育培訓(xùn)體系構(gòu)建
- 輪胎補(bǔ)貨協(xié)議書范本
- 農(nóng)民與合作社互助資金貸款協(xié)議
- 地鐵保安安檢服務(wù)合同
- 合同協(xié)議入伙協(xié)議
- 廠房房屋建筑合同
- 一艾到底艾灸知識(shí)競(jìng)賽100題
- 2017版銀皮書(中英文完整版)FIDIC設(shè)計(jì)采購施工交鑰匙項(xiàng)目合同條件
- 金融基礎(chǔ)高教課件 通貨膨脹與通貨緊縮
- (完整)四年級(jí)數(shù)學(xué)思維訓(xùn)練題及答案
- GA 576-2005防尾隨聯(lián)動(dòng)互鎖安全門通用技術(shù)條件
- 大跨度連續(xù)梁線型監(jiān)控課件
- 產(chǎn)品開發(fā)設(shè)計(jì)課件
- 室內(nèi)設(shè)計(jì)綜合施工圖制作教案
- 公司送電工作票
- 美國藥品批發(fā)行業(yè)發(fā)展歷程譯稿
- 十字頭零件的加工工藝規(guī)程及精車外圓工裝夾具畢業(yè)設(shè)計(jì)(機(jī)械CAD圖紙)
評(píng)論
0/150
提交評(píng)論