解讀x86 ARM和MIPS三種主流晶元架構

2021-06-29 01:00:59 字數 2058 閱讀 7997

指令集可分為複雜指令集(cisc)和精簡指令集(risc)兩部分,代表架構分別是x86

、arm

和mips

armrisc是為了提高處理器執行速度而設計的晶元體系,它的關鍵技術在於流水線操作即在乙個時鐘週期裡完成多條指令。相較複雜指令集cisc而言,以risc為架構體系的arm

指令集的指令格式統

一、種類少、定址方式少,簡單的指令意味著相應硬體線路可以盡量做到最佳化,從而提高執行速率。因為指令集的精簡,所以許多任務作必須組合簡單的指令,而針對複雜組合的工作便需要由編譯程式來執行。而cisc體系的x86

指令集因為硬體所提供的指令集較多,所以許多任務作都能夠以乙個或是數個指令來代替,編譯的工作因而減少了許多。

arm指令集架構的主要特點:一是體積小、低功耗、低成本、高效能;二是大量使用暫存器且大多數資料操作都在暫存器中完成,指令執行速度更快;三是定址方式靈活簡單,執行效率高;四是指令長度固定,可通過多流水線方式提高處理效率。

mips

是高效精簡指令集計算機體系結構中的一種,與當前商業化最成功的arm架構相比,mips

的優勢主要有五點:一是早於arm支援64bit指令和操作,截至目前mips已面向高中低端市場先後發布了p5600系列、i6400系列和m5100系列64位處理器架構,其中p5600、i6400單核效能分別達到3.5和3.0dmips/mhz,即單核每秒可處理350萬條和300萬條指令,超過arm cortex-a53 230萬條/秒的處理速度;二是mips有專門的除法器,可以執行除法指令;三是mips的核心暫存器比arm多一倍,在同樣的效能下mips的功耗會比arm更低,同樣功耗下效能比arm更高;四是mips指令比arm稍微多一些,執行部分運算更為靈活;五是mips在架構授權方面更為開放,允許授權商自行更改設計,如更多核的設計。

同時,mips架構也存在一些不足之處:一是mips的記憶體位址起始有問題,這導致了mips在記憶體和cache的支援方面都有限制,即mips單核心無法面對高容量記憶體配置;二是mips技術演進方向是並行執行緒,類似intel的超執行緒,而arm未來的發展方向是物理多核,從目前核心移動裝置的發展趨勢來看物理多核佔據了上風;三是mips雖然結構更加簡單,但是到現在還是順序單/雙發射,arm則已經進化到了亂序雙/三發射,執行指令流水線週期遠不如arm高效;四是mips學院派發展風格導致其商業程序遠遠滯後於arm,當arm與高通、蘋果、nvidia等晶元設計公司合作大舉進攻移動終端的時候,mips還停留在高畫質盒子、印表機等小眾市場產品中;五是mips自身系統的軟體平台也較為落後,應用軟體與arm體系相比要少很多。

x86 cisc是一種為了便於程式設計和提高記憶體訪問效率的晶元設計體系,包括兩大主要特點:一是使用微**,指令集可以直接在微**記憶體裡執行,新設計的處理器,只需增加較少的電晶體就可以執行同樣的指令集,也可以很快地編寫新的指令集程式;二是擁有龐大的指令集,x86擁有包括雙運算元格式、暫存器到暫存器、暫存器到記憶體以及記憶體到暫存器的多種指令型別,為實現複雜操作,微處理器除向程式設計師提供類似各種暫存器和機器指令功能外,還通過存於唯讀儲存器(rom)中的微程式來實現極強的功能,微處理器在分析完每一條指令之後執行一系列初級指令運算來完成所需的功能。

x86指令體系的優勢體現在能夠有效縮短新指令的微**設計時間,允許實現cisc體系機器的向上相容,新的系統可以使用乙個包含早期系統的指令集合。另外微程式指令的格式與高階語言相匹配,因而編譯器並不一定要重新編寫。相較arm risc指令體系,其缺點主要包括四個方面。

第一,通用暫存器規模小,x86指令集只有8個通用暫存器,cpu大多數時間是在訪問儲存器中的資料,影響整個系統的執行速度。而risc系統往往具有非常多的通用暫存器,並採用了重疊暫存器視窗和暫存器堆等技術,使暫存器資源得到充分的利用。

第二,解碼器影響效能表現,解碼器的作用是把長度不定的x86指令轉換為長度固定的類似於risc的指令,並交給risc核心。解碼分為硬體解碼和微解碼,對於簡單的x86指令只要硬體解碼即可,速度較快,而遇到複雜的x86指令則需要進行微解碼,並把它分成若干條簡單指令,速度較慢且很複雜。

第三,x86指令集定址範圍小,約束使用者需要。

第四,x86 cisc單個指令長度不同,運算能力強大,不過相對來說結構複雜,很難將cisc全部硬體整合在一顆晶元上。而arm risc單個指令長度固定,只包含使用頻率最高的少量指令,效能一般但結構簡單,執行效率穩定。

ARM和x86的區別

cpu的指令集從主流的體系結構上分為精簡指令集 risc 和複雜指令集 cisc 嵌入式系統中的主流處理器 arm處理器,所使用的就是精簡指令集。而桌面領域的處理器大部分使用的是複雜指令集,比如intel的x86系列處理器。我們把arm處理器所使用的指令集稱為arm指令集,把x86處理器所使用的指令...

X86和ARM的區別

區別 arm是risc架構 50多個指令,半開源 x86是cisc架構 至少981個指令,不開源 cisc架構 cpu的運算指令可以操作在暫存器和記憶體中,複雜性高。舉例 add mem reg 把記憶體資料和暫存器資料相加 risc架構 cpu只允許load和store指令與記憶體互動,而運算指令...

X86平台和ARM平台

x86和arm都是指cpu的核心。桌面電腦,膝上型電腦中使用的intel amd處理器,就是x86處理器。arm是一家英國的處理器設計公司,其設計的處理器採用了arm核心。arm指令集少,電路規模小,功耗低,發熱低,非常適合於嵌入式 可攜式電子產品,如手機 平板,以及工業嵌入式等。32位系統需要x8...