1. 程式人生 > >arm架構和x86架構介紹

arm架構和x86架構介紹

什麼叫arm架構

  ARM架構過去稱作進階精簡指令集機器(AdvancedRISCMachine,更早稱作:AcornRISCMachine),是一個32位精簡指令集(RISC)處理器架構,其廣泛地使用在許多嵌入式系統設計。由於節能的特點,ARM處理器非常適用於移動通訊領域,符合其主要設計目標為低耗電的特性。

在今日,ARM家族佔了所有32位嵌入式處理器75%的比例,使它成為佔全世界最多數的32位架構之一。ARM處理器可以在很多消費性電子產品上看到,從可攜式裝置(PDA、行動電話、多媒體播放器、掌上型電子遊戲,和計算機)到電腦外設(硬碟、桌上型路由器)甚至在導彈的彈載計算機等軍用設施中都有他的存在。在此還有一些基於ARM設計的派生產品,重要產品還包括Marvell的XScale架構和

德州儀器的OMAP系列。

  ARM架構圖

  下圖所示的是ARM構架圖。它由32位ALU、若干個32位通用暫存器以及狀態暫存器、32&TImes;8位乘法器、32&TImes;32位桶形移位暫存器、指令譯碼以及控制邏輯、指令流水線和資料/地址暫存器組成。

  1、ALU:它有兩個運算元鎖存器、加法器、邏輯功能、結果以及零檢測邏輯構成。

  2、桶形移位暫存器:ARM採用了32&TImes;32位的桶形移位暫存器,這樣可以使在左移/右移n位、環移n位和算術右移n位等都可以一次完成。

  3、高速乘法器:乘法器一般採用“加一移位”的方法來實現乘法。ARM為了提高運算速度,則採用兩位乘法的方法,根據乘數的2位來實現“加一移位”運算;ARM高速乘法器採用32&TImes;8位的結構,這樣,可以降低整合度(其相應芯片面積不到並行乘法器的1/3)。

  4、浮點部件:浮點部件是作為選件供ARM構架使用。FPA10浮點加速器是作為協處理方式與ARM相連,並通過協處理指令的解釋來執行。

  5、控制器:ARM的控制器採用的是硬接線的可程式設計邏輯陣列PLA。

  6、暫存器

x86架構

  目前的PC架構絕大多數都是Intel的X86架構,貌似也是因為INTEL的這個X86架構早就了目前INTEL如日中天的地位。X86架構(The X86 architecture)是微處理器執行的計算機語言指令集,指一個intel通用計算機系列的標準編號縮寫,也標識一套通用的計算機指令集合。

當然,這個架構圖並不是所有的都是如此,根據不同的主機板,平臺,架構是略有差別的比如說,目前很多主機板已經將北橋整合到

CPU當中,將南橋整合為PCH,但大致的框架還是如此的。下面對這個架構圖上的各個內容分別進行一些簡介。

  1:CPU,大家都不陌生的名詞,中央處理器,計算機的核心大腦。

  2: 北橋(North Bridge Chipset):北橋是電腦主機板上的一塊晶片,位於CPU插座邊,起連線作用。

  3:南橋晶片(South Bridge)是主機板晶片組的重要組成部分,一般位於主機板上離CPU插槽較遠的下方,PCI插槽的附近,這種佈局是考慮到它所連線的I/O匯流排較多,離處理器遠一點有利於佈線。

  4: 記憶體是計算機中重要的部件之一,它是與CPU進行溝通的橋樑。計算機中所有程式的執行都是在記憶體中進行的,因此記憶體的效能對計算機的影響非常大。

  5:顯示卡(Video card,Graphics card)全稱顯示介面卡,又稱顯示介面卡,是計算機最基本配置、最重要的配件之一。

  6:顯示j介面

  7:網絡卡是工作在鏈路層的網路元件,是區域網中連線計算機和傳輸介質的介面,不僅能實現與區域網傳輸介質之間的物理連線和電訊號匹配,還涉及幀的傳送與接收、幀的封裝與拆封、介質訪問控制、資料的編碼與解碼以及資料快取的功能等。

  8:音效卡的基本功能是把來自話筒、磁帶、光碟的原始聲音訊號加以轉換,輸出到耳機、揚聲器、擴音機、錄音機等聲響裝置,或通過音樂裝置數字介面(MIDI)使樂器發出美妙的聲音。

  9:SATA(Serial Advanced Technology Attachment,序列高階技術附件)是一種基於行業標準的序列硬體驅動器介面,是由Intel、IBM、Dell、APT、Maxtor和Seagate公司共同提出的硬碟介面規範。

  10:硬碟是電腦主要的儲存媒介之一,由一個或者多個鋁製或者玻璃制的碟片組成。碟片外覆蓋有鐵磁性材料。

  11:匯流排

  arm架構和x86架構有什麼區別

  一、效能

  X86結構的電腦無論如何都比ARM結構的系統在效能方面要快得多、強得多。X86的CPU隨便就是1G以上、雙核、四核大行其道,通常使用45nm(甚至更高階)製程的工藝進行生產;而ARM方面:CPU通常是幾百兆,最近才出現1G左右的CPU,製程通常使用不到65nm製程的工藝,可以說在效能和生產工藝方面ARM根本不是X86結構系統的對手。

  但ARM的優勢不在於效能強大而在於效率,ARM採用RISC流水線指令集,在完成綜合性工作方面根本就處於劣勢,而在一些任務相對固定的應用場合其優勢就能發揮得淋漓盡致。

  二、擴充套件能力

  X86結構的電腦採用“橋”的方式與擴充套件裝置(如:硬碟、記憶體等)進行連線,而且x86結構的電腦出現了近30年,其配套擴充套件的裝置種類多、價格也比較便宜,所以x86結構的電腦能很容易進行效能擴充套件,如增加記憶體、硬碟等。

  ARM結構的電腦是通過專用的資料介面使CPU與資料儲存裝置進行連線,所以ARM的儲存、記憶體等效能擴充套件難以進行(一般在產品設計時已經定好其記憶體及資料儲存的容量),所以採用ARM結構的系統,一般不考慮擴充套件。基本奉行“夠用就好”的原則。

三、作業系統的相容性

  X86系統由微軟及Intel構建的Wintel聯盟一統天下,壟斷了個人電腦作業系統近30年,形成巨大的使用者群,也深深固化了眾多使用者的使用習慣,同時x86系統在硬體和軟體開發方面已經形成統一的標準,幾乎所有x86硬體平臺都可以直接使用微軟的視窗系統及現在流行的幾乎所有工具軟體,所以x86系統在相容性方面具有無可比擬的優勢。

  ARM系統幾乎都採用Linux的作業系統,而且幾乎所有的硬體系統都要單獨構建自己的系統,與其他系統不能相容,這也導致其應用軟體不能方便移植,這一點一直嚴重製約了ARM系統的發展和應用。GOOGLE開發了開放式的Android系統後,統一了ARM結構電腦的作業系統,使新推出基於ARM結構的電腦系統有了統一的、開放式的、免費的作業系統,為ARM的發展提供了強大的支援和動力。

  四、軟體開發的方便性及可使用工具的多樣性

  X86結構的系統推出已經近30年,在此期間,x86電腦經過飛速發展的黃金時期,使用者的應用、軟體配套、軟體開發工具的配套及相容等工作,已經到達非常成熟甚至可以說是完美的境界。所以使用X86電腦系統不僅有大量的第三方軟體可供選擇,也有大量的軟體程式設計工具可以幫助您完成您所希望完成的工作。

  Arm結構的電腦系統因為硬體效能的制約、作業系統的精簡、以及系統相容等問題的制約,造成Arm結構的電腦系統不可能像X86電腦系統那樣有眾多的程式設計工具和第三方軟體可供選擇及使用,ARM的程式語言大多采用C和JAVA

  對這一點的比較,更直接的結論是:基於x86結構電腦系統平臺開發軟體比arm結構系統更容易、更簡單、實際成本也更低,同時更容易找到第三方軟體(免去自己開發的時間和成本),而且軟體移植更容易。

  從以上對比分析,給了我們的一個很清晰的感覺,ARM和X86結構的電腦根本就無法對比,ARM根本就不是X86電腦的的對手。是的,如果只考慮上述幾個方面的要數,ARM確實無法與X86電腦競爭,甚至連比較的資格都沒有。但是近1、2年,ARM的產品在終端應用特別是手持終端應用飛速發展(如:智慧手機、平板電腦等),其銷售數量已經遠遠超出x86結構的電腦銷售數量,可見ARM是具有其與X86結構電腦不可對比的優勢。該優勢就是:功耗。

  五、功耗

  X86電腦因考慮要適應各種應用的需求,其發展思路是:效能+速度。20多年來x86電腦的速度從原來8088的幾M發展到現在隨便就是幾G,而且還是幾核,其速度和效能已經提升了千、萬倍,技術進步使x86電腦成為大眾生活中不可缺少的一部分。但是x86電腦發展的方向和模式,使其功耗一直居高不下,一臺電腦隨便就是幾百瓦,即使是號稱低功耗節能的手提電腦或上網本,也有十幾、二十多瓦的功耗,這與ARM結構的電腦就無法相比。