




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、x86與MIPS體系結構的比較計算機科學與技術杜立明200926100406一、x86x86或80 x86是英特爾Intel首先開發(fā)制造的一種微處理器體系結構的泛稱。x86架構于1978年推出的Intel8086中央處理器中首度出現(xiàn),它是從Intel8008處理器中發(fā)展而來的,而8008則是發(fā)展自Intel4004的。8086在三年后為IBMPC所選用,之后x86便成為了個人計算機的標準平臺,成為了歷來最成功的CPU架構。x86架構是重要的可變指令長度的CISC(復雜指令集計算機,ComplexInstruetionSetComputer)。字組(word,4字節(jié))長度的存儲器訪問允許不對齊存
2、儲器地址,字組是以低位字節(jié)在前的順序儲存在存儲器中。x86架構在設計過程中著重考慮了向前兼容性,保證電腦能繼續(xù)運行以往開發(fā)的各類應用程序以保護和繼承豐富的軟件資源。但在較新的微架構中,x86處理器會把x86指令轉換為更像RISC的微指令再予執(zhí)行,從而獲得可與RISC比擬的超標量性能,而仍然保持向前兼容。x86架構的處理器一共有四種執(zhí)行模式,分別是真實模式,保護模式,系統(tǒng)管理模式以及虛擬V86模式。80 x86指令系統(tǒng),指令按功能可分為以下七個部分:(1)數(shù)據(jù)傳送指令。(2)算術運算指令。(3)邏輯運算指令。(4)串操作指令??刂妻D移指令。(6)處理器控制指令。(7)保護方式指令。在此基礎上,又
3、發(fā)展加入了一些專用的擴展指令集:MMX,增加57條特地為視頻信號(VideoSignal),音頻信號(AudioSignal)以及圖像處理(GraphicalManipulation)而設計指令3DNOW!,1997年由AMD推出,增加21條指令,針對MMX指令集沒有加強浮點處理能力的弱點,重點提高了CPU對3D圖形的處理能力。EES,SSE兼容MMX指令,它可以通過SIMD(單指令多數(shù)據(jù)技術)和單時鐘周期并行處理多個浮點來有效地提高浮點運算速度。EES2,共144條,包括浮點SIMD指令、整形SIMD指令、SIMD浮點和整形數(shù)據(jù)之間轉換、數(shù)據(jù)在MMX寄存器中轉換等幾大部分。引入新的數(shù)據(jù)格式,
4、女口:128位SIMD整數(shù)運算和64位雙精度浮點運算等。新增加了幾條緩存指令,允許程序員控制已經(jīng)緩存過的數(shù)據(jù)。EES3,新增加了13條指令,一條用于視頻解碼,兩條用于線程同步,其余用于復雜的數(shù)學運算、浮點到整數(shù)轉換和SIMD浮點運算。SSE4,增加了50條新的增加性能的指令,這些指令有助于編譯、媒體、字符/文本處理和程序指向加速。x86的優(yōu)點:具有功能強大而多樣的指令系統(tǒng),使CPU對一些專業(yè)用途的軟件表現(xiàn)出強大的性能,如:3D繪圖,音頻和視頻的處理等。為每條指令設計硬件電路,使得指令執(zhí)行速度快,并有效的減少了程序的指令條數(shù)。x86的不足:1、x86指令的長度是不定的,而且有幾種不同的格式,結果
5、造成x86CPU的解碼工作非常復雜,為了提高CPU的工作頻率,不得不延長CPU中的流水線,而過長的流水線在分支預測出錯的情況下,又會帶來CPU工作停滯時間較長的弊端。2、x86指令集架構只有8個通用寄存器,而且實際只能使用6個。這種情況同現(xiàn)代的超標量CPU極不適應,雖然工程師們采用寄存器重命名的技術來彌補這個缺陷,但造成了CPU過于復雜,流水線過長的局面。3、x86指令可訪問內存地址,在目前CPU的速度是內存速度的5倍或5倍以上的情況下,嚴重降低了CPU的性能。4、x87FPU是目前最慢的FPU,主要的原因之一就在于x87指令使用一個操作數(shù)堆棧。如果沒有足夠多的寄存器進行計算,你就不得不使用堆
6、棧來存放數(shù)據(jù),這會浪費大量的時間來使用FXCH指令(即把正確的數(shù)據(jù)放到堆棧的頂部)。5、所有用于提高x86CPU性能的方法,如寄存器重命名、巨大的緩沖器、亂序執(zhí)行、分支預測、x86指令轉化等等,都使CPU的芯片面積變得更大,也限制了工作頻率的進一步提高,而額外集成的這些晶體管都只是為了解決x86指令的問題。二、MIPSMIPS是世界上很流行的一種RISC處理器。MIPS的意思“無內部互鎖流水級的微處理器”(Microprocessorwithoutinterlockedpipedstages),其機制是盡量利用軟件辦法避免流水線中的數(shù)據(jù)相關問題。它最早是在80年代初期由斯坦福(Stanford
7、)大學Hennessy教授領導的研究小組研制出來的。MIPS公司的R系列就是在此基礎上開發(fā)的RISC工業(yè)產(chǎn)品的微處理器。MIPS體系結構的特點(1)所有指令長度都是32位:這意味著沒有指令能夠僅占用兩三個字節(jié)的內存空間(因而MIPS的二進制文件比典型80 x86大百分之二十到三十),也沒有指令可以超過四個字節(jié)。隨之而來就是不可能把一個32位常數(shù)放進單個指令中。MIPS設計者決定留出26位常數(shù)的空間用以編碼跳轉和調用指令的目標地址:但是僅有給兩條指令。其它指令只能有16位空間留給常數(shù)。(2)MIPS架構中有32個通用寄存器,其中$0(這個寄存器中保存的數(shù)據(jù)恒為0)和$31(保存函數(shù)調用jal的返
8、回地址)有著特殊的用途,其它的寄存器可作為通用寄存器用于任何一條指令中。如果有FPA(浮點協(xié)處理器),將會有32個浮點寄存器,按匯編語言的約定為$f0$f31,MIPS32中只能實用偶數(shù)號的浮點寄存器,奇數(shù)號的用途是:在做雙精度的浮點運算時,存放該奇數(shù)號之前的偶數(shù)號浮點寄存器的剩余無法放下的32位。(3)三操作數(shù)的指令:算數(shù)/邏輯指令不需要指定內存地址,所以空出了充足的指令位可以定義兩個獨立的源操作數(shù)和一個目的操作數(shù)。編譯器喜歡三操作數(shù)指令,其給了優(yōu)化程序更大的空間來處理復雜的表達式的代碼。有整數(shù)乘法部件,這個部件使用兩個特殊的寄存器HI、LO,并且提供相應的指令mfhi/mthi,mthi/
9、mtlo來實現(xiàn)整數(shù)乘法結果hi/lo寄存器與通用寄存器之間的數(shù)據(jù)交換CP0(協(xié)處理器0)MIPS處理器控制.用于控制和設置MIPSCPU,里面包含了一些寄存器,同過對這些寄存器的不同的位的操作可以實現(xiàn)對處理器的設置沒有條件碼及x86中的PC:MIPS的指令集的一個特征就是沒有條件標志,MIPS體系結構把所有信息保存到寄存器堆中。比較指令設置通用寄存器,條件分支指令檢測通用寄存器。MIPS具有流水線結構的CPU中,程序計數(shù)器在同一時刻可以有多個給定的值。訪問內存只能通過簡單的寄存器加載和存儲:對內存變量進行算術運算會打亂流水線,所以不這么做。每次內存訪問用一條顯式的加載或存儲指令。只有一種數(shù)據(jù)尋
10、址方式:幾乎所有的加載和存儲都通過單個寄存器基址加上一個16位的常數(shù)偏移量尋址內存。字節(jié)地址指令:一旦數(shù)據(jù)存入MIPSCPU的寄存器,所有的操作都是在整個寄存器上操作。load/store必須對齊:內存操作只能從對齊到相應數(shù)據(jù)類型邊界的地址加載荷存儲數(shù)據(jù)。字節(jié)可以在任意地址傳輸,但是半字必須在偶數(shù)地址對齊,字在四字節(jié)邊界對齊。跳轉指令:有限的32為指令長度在想要支持很大程序的體系結構上對分支是個問題。MIPS指令的最小操作碼域為6位,留出了26位來定義跳轉的目標。因為所有指令在內存中都是四字節(jié)邊界對齊的,低兩位地址無需保存,這樣可有256MB的地址范圍。這個地址不是相對PC的,而是解釋成256
11、MB段內的絕對地址。這對大于256MB的單個程序極為不便,到目前按還沒有碰到太大的問題。超出段內的分支可以通過使用一個寄存器跳轉指令做到,該指令可以跳轉任意32位地址。條件分支只有16位的偏移域給出了262144字節(jié)的范圍,因為指令都是四字節(jié)對齊的一一解釋成相對PC的帶符號的偏移量。如果知道分支目標會在緊跟分支之后的指令的128KB范圍內,編譯器就能只生成一個簡單的條件分支指令。MIPS指令集架構的發(fā)展MIPS自從1988年提出后,不斷擴展,其ISA大致如下:MIPSI:這是基本的MIPS指令集,早期的R2000和R3000處理器實現(xiàn)了該指令集。MIPSII:R6000處理器引入該指令集,它增
12、加了loadlinked、條件存儲和分支等指令。還改進了FPU指令集,支持64位讀寫。MIPSIII:于1992年R4000處理器引入。增加了64位寄存器和整數(shù)指令,以及平方根FP指令。MIPSIV:R8000處理器實現(xiàn)了該指令集,增加了條件move和平方根FPU指令集求倒數(shù)指令。MIPSV:MIPSV于1994年提出,是一個規(guī)范,但實際上沒有任何處理器實現(xiàn)了該指令集。MIPS64指令集是其的超集。MIPS32:是MIPS64指令集的32位子集。MIPS64:是MIPSV的超集。MIPS32V2.0和MIPS64V2.0DSPASE(ApplicationSpecificExtensions)
13、:DSPASE是MIPS32/MIPS64版本2指令集的可選擴展,能用于加速大量的媒體計算,尤其是音頻。因為電視分辨率的視頻計算不在通用處理器的處理范圍內。與大多數(shù)MIPS指令集架構不同,他有相當多的不合規(guī)則的操作集,這些操作集很多與一些關鍵算法有關。三、龍芯為何使用MIPS架構首先,如果開發(fā)全新的架構,則必須設計硬件電路及指令集,開發(fā)難度大,開發(fā)周期長。得到產(chǎn)品后不能保證和現(xiàn)在市場上電子產(chǎn)品的兼容性,造成在做出CPU后必須再另外設計芯片組、編譯器等配套設備及軟件,在投放市場的過程中難度更為巨大。在去除完全自主研發(fā)這一途徑后,從其他CPU廠商得到授權,在已有架構上研究開發(fā)是比較合理的方案。MIPS是最簡單的體系結構之一,所以大學喜歡選擇MIPS體系結構來介紹計算體系結構課程。MIPS的系統(tǒng)結構及設計理念比較先進,其指令系統(tǒng)經(jīng)過通用處理器指令體系MIPSI、MIPSII、MIPSIII、MIPSIV到MIPSV,嵌入式指令體系MIPS16、MIPS32到MIPS64的發(fā)展已經(jīng)十分成熟。在設計理念上MIPS強調軟硬件協(xié)同提高性能,同時簡化硬件設計。MIPS是開放式的架構,用戶可以在開發(fā)的內核中加入自己的指令。和英特爾采用的復雜指令系統(tǒng)計算結構(CISC)相比,RISC具有設計更簡單、設計周期更短等優(yōu)點,并可以應用更多先進的技術,開發(fā)更快的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年大學試題(圖書館、情報與文獻學)-醫(yī)學信息檢索醫(yī)學文獻檢索歷年參考題庫含答案解析(5套典型考題)
- 2025年大學試題(醫(yī)學)-腫瘤學歷年參考題庫含答案解析(5套典型考題)
- 胰島素抵抗機制與治療
- 2025年大學試題(體育科學)-體育史歷年參考題庫含答案解析(5套典型考題)
- 2025年同等學力申碩-同等學力(經(jīng)濟學)歷年參考題庫含答案解析(5套典型考題)
- 2025年衛(wèi)生資格(中初級)-中醫(yī)皮膚與性病學主治醫(yī)師歷年參考題庫含答案解析(5套典型題)
- 2025年醫(yī)藥衛(wèi)生考試-職稱醫(yī)古文考試歷年參考題庫含答案解析(5套典型題)
- 2025年醫(yī)學高級職稱-臨床醫(yī)學檢驗臨床化學技術(醫(yī)學高級)歷年參考題庫含答案解析(5套典型題)
- 2025年會計職稱考試-高級會計師歷年參考題庫含答案解析(5套典型考題)
- 2025年企業(yè)文化企業(yè)建設知識競賽-中國石化企業(yè)文化歷年參考題庫含答案解析(5套典型考題)
- 三七銷售培訓課件
- 醫(yī)保網(wǎng)絡安全培訓
- 老年急危重癥容量管理急診專家共識解讀
- 2025-2030中國小分子肽市場供需調查及發(fā)展趨勢預測報告
- 《無人機概論》高職無人機應用技術專業(yè)全套教學課件
- 2025年體外培育牛黃項目可行性研究報告
- 2025年湖北聯(lián)投招聘筆試沖刺題(帶答案解析)
- T/CIIA 015-2022智慧工地建設規(guī)范
- T/CCIAS 010-2023雞精調味料生產(chǎn)技術規(guī)范
- 投資款退回協(xié)議書
- 新能源車火災應急預案模板(3篇)
評論
0/150
提交評論