1991 年ARM 公司成立于英國劍橋,在成立后的那幾年,ARM業績平平,工程師們也人心惶惶,害怕隨時都會失業。在這個情況下,ARM決定改變他們的產品策略——他們不再生產芯片,轉而以授權的方式,將芯片設計方案轉讓給其他公司,即“Partnership”開放模式。
沒想到正是這種模式,開創了屬于ARM的全新時代。
ARM所采取的是IP(Intellectual Property,知識產權)授權的商業模式,收取一次性技術授權費用和版稅提成。
具體來說,ARM有三種授權方式:處理器、POP以及架構授權。
處理器授權是指授權合作廠商使用ARM設計好的處理器,對方不能改變原有設計,但可以根據自己的需要調整產品的頻率、功耗等。
POP(processor optimization pack,處理器優化包)授權是處理器授權的高級形式, ARM出售優化后的處理器給授權合作廠商,方便其在特定工藝下設計、生產出性能有保證的處理器。
架構授權是ARM會授權合作廠商使用自己的架構,方便其根據自己的需要來設計處理器(例如后來高通的Krait架構和蘋果的Swift架構,就是在取得ARM的授權后設計完成的)。所以,授權費和版稅就成了ARM的主要收入來源。除此之外,就是軟件工具和技術支持服務的收入。
一、ARM 微處理器的應用領域及特點ARM處理器市場覆蓋率最高、發展趨勢廣闊,基于ARM技術的32位微處理器,市場的占有率目前已達到80%。絕大多數IC制造商都推出了自己的ARM結構芯片。我國的中興集成電路、大唐電訊、華為海思、中芯國際和上海華虹,以及國外的一些公司如德州儀器、意法半導體、Philips、Intel、Samsung等都推出了自己設計的基于ARM核的處理器。
工業控制領域:作為32 的RISC 架構,基于ARM 核的微控制器芯片不但占據了高端微控制器市場的大部分市場份額,同時也逐漸向低端微控制器應用領域擴展,ARM 微控制器的低功耗、高性價比,向傳統的8 位/16 位微控制器提出了挑戰。
無線通訊領域:目前已有超過85%的無線通訊設備采用了ARM 技術, ARM 以其高性能和低成本,在該領域的地位日益鞏固。
網絡設備:隨著寬帶技術的推廣,采用ARM 技術的ADSL 芯片正逐步獲得競爭優勢。此外,ARM 在語音及視頻處理上進行了優化,并獲得廣泛支持,也對DSP 的應用領域提出了挑戰。
消費類電子產品:ARM 技術在目前流行的數字音頻播放器、數字機頂盒和游戲機中得到廣泛采用。
成像和安全產品:現在流行的數碼相機和打印機中絕大部分采用ARM 技術。手機中的32位SIM 智能卡也采用了ARM 技術。
ARM處理器的特點:
1、體積小、低功耗、低成本、高性能;
2、支持Thumb(16 位)/ARM(32 位)雙指令集,能很好的兼容8 位/16 位器件;
3、大量使用寄存器,指令執行速度更快;
4、大多數數據操作都在寄存器中完成;
5、尋址方式靈活簡單,執行效率高;
6、指令長度固定;
二、ARM相關的幾個重要概念1.馮·諾依曼體系
馮·諾依曼體系的特點:
A、數據與指令都存儲在同一存儲區中,取指令與取數據利用同一數據總線。
B、被早期大多數計算機所采用。
C、ARM7——馮諾依曼體系結構簡單,但速度較慢。取指不能同時取數據。
2.哈佛體系
結構特點:
A、程序存儲器與數據存儲器分開.
B、提供了較大的存儲器帶寬,各自有自己的總線。
C、適合于數字信號處理.
D、大多數DSP都是哈佛結構.
E、ARM9是哈佛結構,取指和取數在同一周期進行,提高速度,改進哈佛體系結構分成三個存儲區:程序、數據、程序和數據共用。
3.CISC復雜指令集特點
A、具有大量的指令和尋址方式
B、8/2原則:80%的程序只使用20%的指令
C、大多數程序只使用少量的指令就能夠運行。
D、CISC CPU 包含有豐富的單元電路,因而功能強、面積大、功耗大。
4.RISC精簡指令集特點
A、在通道中只包含最有用的指令,只提供簡單的操作。
B、確保數據通道快速執行每一條指令。
C、Load-store結構—— 處理器只處理寄存器中的數據,load-store指令用來完成數據在寄存器和外部存儲器之間的傳送。
D、使CPU硬件結構設計變得更為簡單, RISC CPU包含較少的單元電路,因而面積小、功耗低。
5.RISC與CISC主要差別
A、寄存器方面
RISC指令集:擁有更多的通用寄存器,每個可以存放數據和地址,寄存器為所有的數據操作提供快速的存儲訪問。
CISC指令集:多用于特定目的的專用寄存器。
B、LOAD –STORE結構方面
RISC結構:Cpu 僅處理寄存器中的數據,采用獨立的、專用的LOAD –STORE 指令來完成數據在寄存器和外存之間的傳送。(訪存費時,處理和存儲分開,可以反復的使用保存在寄存器中的數據,而避免多次訪問外存)。
CISC結構:能直接處理存儲器中的數據。
三、ARM存儲格式
ARM存儲器以8位為一個單元存儲數據(一個字節),每個存儲單元分配一個存儲地址。
ARM將存儲器看作是從零地址開始的字節的線性組合。作為32位的微處理器,ARM體系結構所支持的最大尋址空間為4GB(232字節)。從零字節到三字節放置第一個存儲的字數據,從第四個字節到第七個字節放置第二個存儲的字數據,依次排列。32位的字數據要使用4個地址單元,16位半數據要使用2個地址單元。這樣,就存在一個所存儲的字或半字數據的排列順序問題。ARM體系結構可以用兩種方法存儲字數據,稱為大端格式和小端格式。
大端格式(big-endian):字數據的高字節存儲在低地址中,而字數據的低字節則存放在高地址中。
小端格式(low-endian):與大端存儲格式相反。低地址中存放的是字數據的低字節,高地址存放的是字數據的高字節。缺省設置為小端格式。
推薦閱讀我前面寫的文章:你真的懂CPU大小端模式嗎?四、Thumb技術ARM的RISC體系結構的發展中已經提供了低功耗、小體積、高性能的方案。而為了解決代碼長度的問題,ARM體系結構又增加了T變種,開發了一種新的指令體系,這就是Thumb指令集,它是ARM技術的一大特色。
Thumb是ARM體系結構的擴展。它有從標準32位ARM指令集抽出來的36條指令格式,可以重新編成16位的操作碼。這能帶來很高的代碼密度。
支持Thumb的ARM體系結構的處理器狀態可以方便的切換、運行到Thumb狀態,在該狀態下指令集是16位的Thumb指令集。
與ARM指令集相比.Thumb指令集具有以下局限:1、完成相同的操作,Thumb指令通常需要更多的指令,因此在對系統運行時間要求苛刻的應用場合ARM指令集更為適合;
2、Thumb指令集沒有包含進行異常處理時需要的一些指令,因此在異常中斷時,還是需要使用ARM指令,這種限制決定了Thumb指令需要和ARM指令配合使用。 (來源:電子工程專輯)
????????????????END ????????????????
推薦閱讀:納米級別的CPU,是如何制作的?5G通信幀結構與常見通信有什么區別?
關注公眾號『strongerHuang』,在后臺回復“1024”,查看更多精彩內容,回復“加群”,可加入黃工的技術交流群。
長按識別圖中二維碼關注
原文標題:ARM架構及ARM指令集、Thumb指令集你了解多少?
文章出處:【微信公眾號:strongerHuang】歡迎添加關注!文章轉載請注明出處。
-
處理器
+關注
關注
68文章
19407瀏覽量
231181 -
ARM
+關注
關注
134文章
9165瀏覽量
369187 -
ARM處理器
+關注
關注
6文章
361瀏覽量
41935
發布評論請先 登錄
相關推薦
評論