ARM版本系列及家族成員梳理

ARM公司簡介

ARM是Advanced RISC Machines的縮寫,它是一家微處理器行業的知名企業,該企業設計了大量高性能、廉價、耗能低的RISC (精簡指令集)處理器。 1985年第一個ARM原型在英國劍橋誕生。

公司的特點是只設計芯片,而不生產。它提供ARM技術知識產權(IP)核,將技術授權給世界上許多著名的半導體、軟件和OEM廠商,并提供服務。有ARM7/ARM9等多個版本。除了一些Unix圖形工作站外,大多數ARM核心的處理器都使用在嵌入領域。

ARM,既可以認為是一個公司的名字,也可以認為是對一類微處理器的通稱,還可以認為是一種技術的名字。

ARM版本Ⅰ: V1版架構

該版架構只在原型機ARM1出現過,只有26位的尋址空間,沒有用于商業產品。

其基本性能有:

  • 基本的數據處理指令(無乘法);
  • 基于字節、半字和字的Load/Store指令;
  • 轉移指令,包括子程序調用及鏈接指令;
  • 供操作系統使用的軟件中斷指令SWI;
  • 尋址空間:64MB(226)。
  • ARM版本Ⅱ: V2版架構

該版架構對V1版進行了擴展,例如ARM2和ARM3(V2a)架構。包含了對32位乘法指令和協處理器指令的支持。 版本2a是版本2的變種,ARM3芯片采用了版本2a,是第一片采用片上Cache的ARM處理器。同樣為26位尋址空間,現在已經廢棄不再使用。

V2版架構與版本V1相比,增加了以下功能:

  • 乘法和乘加指令;
  • 支持協處理器操作指令;
  • 快速中斷模式;
  • SWP/SWPB的最基本存儲器與寄存器交換指令;
  • 尋址空間:64MB。
  • ARM版本Ⅲ : V3版架構

ARM作為獨立的公司,在1990年設計的第一個微處理器采用的是版本3的ARM6。它作為IP核、獨立的處理器、具有片上高速緩存、MMU和寫緩沖的集成CPU。 變種版本有3G和3M。版本3G是不與版本2a向前兼容的版本3,版本3M引入了有符號和無符號數乘法和乘加指令,這些指令產生全部64位結果。 V3版架構( 目前已廢棄 )對ARM體系結構作了較大的改動:

  • 尋址空間增至32位(4GB);

  • 當前程序狀態信息從原來的R15寄存器移到當前程序狀態寄存器CPSR中(Current Program Status Register);

  • 增加了程序狀態保存寄存器SPSR(Saved Program Status Register);

  • 增加了兩種異常模式,使操作系統代碼可方便地使用數據訪問中止異常、指令預- - 取中止異常和未定義指令異常。;

  • 增加了MRS/MSR指令,以訪問新增的CPSR/SPSR寄存器;

  • 增加了從異常處理返回的指令功能。

ARM版本Ⅳ : V4版架構

V4版架構在V3版上作了進一步擴充,V4版架構是目前應用最廣的ARM體系結構,ARM7、ARM8、ARM9和StrongARM都采用該架構。 V4不再強制要求與26位地址空間兼容,而且還明確了哪些指令會引起未定義指令異常。

指令集中增加了以下功能:

  • 符號化和非符號化半字及符號化字節的存/取指令;
  • 增加了T變種,處理器可工作在Thumb狀態,增加了16位Thumb指令集;
  • 完善了軟件中斷SWI指令的功能;
  • 處理器系統模式引進特權方式時使用用戶寄存器操作;
  • 把一些未使用的指令空間捕獲為未定義指令

ARM版本Ⅴ : V5版架構

V5版架構是在V4版基礎上增加了一些新的指令,ARM10和Xscale都采用該版架構。

這些新增命令有:

  • 帶有鏈接和交換的轉移BLX指令;
  • 計數前導零CLZ指令; BRK中斷指令;
  • 增加了數字信號處理指令(V5TE版);
  • 為協處理器增加更多可選擇的指令;
  • 改進了ARM/Thumb狀態之間的切換效率;
  • E—增強型DSP指令集,包括全部算法操作和16位乘法操作;
  • J----支持新的JAVA,提供字節代碼執行的硬件和優化軟件加速功能。

ARM版本Ⅵ : V6版架構

V6版架構是2001年發布的,首先在2002年春季發布的ARM11處理器中使用。在降低耗電量地同時,還強化了圖形處理性能。通過追加有效進行多媒體處理的SIMD(Single Instruction, Multiple Data,單指令多數據 )功能,將語音及圖像的處理功能提高到了原型機的4倍。

此架構在V5版基礎上增加了以下功能:

  • THUMBTM:35%代碼壓縮;
  • DSP擴充:高性能定點DSP功能;
  • JazelleTM:Java性能優化,可提高8倍;
  • Media擴充:音/視頻性能優化,可提高4倍

ARM版本ⅤⅡ: V7版架構

V7架構是在ARMv6架構的基礎上誕生的。該架構采用了Thumb-2技術,它是在ARM的Thumb代碼壓縮技術的基礎上發展起來的, 并且保持了對現存ARM解決方案的完整的代碼兼容性。Thumb-2技術比純32位代碼少使用31%的內存,減小了系統開銷。同時能夠提供比已有的基于Thumb技術的解決方案高出38%的性能。

ARMv7架構還采用了NEON技術,將DSP和媒體處理能力提高了近4倍,并支持改良的浮點運算,滿足下一代3D圖形、游戲物理應用以及傳統嵌入式控制應用的需求。此外,ARMv7還支持改良的運行環境,以迎合不斷增加的JIT(Just In Time)和DAC(DynamicAdaptive Compilation)技術的使用。

ARM版本ⅤⅢ: V8版架構

v8架構是在32位ARM架構上進行開發的,將被首先用于對擴展虛擬地址和64位數據處理技術有更高要求的產品領域,如企業應用、高檔消費電子產品。ARMv8架構包含兩個執行狀態:AArch64和AArch32。AArch64執行狀態針對64位處理技術,引入了一個全新指令集A64;而AArch32執行狀態將支持現有的ARM指令集。目前的ARMv7架構的主要特性都將在ARMv8架構中得以保留或進一步拓展,如:TrustZone技術、虛擬化技術及NEON advanced SIMD技術等。

在這里插入圖片描述
ARM微處理器核心以及體系結構的發展歷史

1.ARM7處理器

ARM7處理器采用了ARMV4T(馮·諾依曼)體系結構,這種體系結構將程序指令存儲器和數據存儲器合并在 一起。主要特點就是程序和數據共用一個存儲空間,程序指令存儲地址和數據存儲地址指向同一個存儲器的不同物理位置,采用單一的地址及數據總線,程序指令和 數據的寬度相同。這樣,處理器在執行指令時,必須先從存儲器中取出指令進行譯碼,再取操作數執行運算。

總體來說ARM7體系結構具有三級流水、空間統一的 指令與數據Cache、平均功耗為0.6mW/MHz、時鐘速度為66MHz、每條指令平均執行1.9個時鐘周期等特性。其中的ARM710、ARM720和ARM740為內帶Cache的ARM核。

ARM7指令集同Thumb指令集擴展組合在一起,可以減少內存容量和系統成本。同時,它還利用嵌入式ICE調試技術來簡化系統設計,并用一個DSP增強擴展來改進性能。ARM7體系結構是小型、快速、低能耗、集成式的RISC內核結構。該產品的典型用途是數字蜂窩電話和硬盤驅動器等,目前主流的ARM7內核是ARM7TDMI、ARM7TDMI-S、ARM7EJ-S、ARM720T。

現在市場上 用得最多的ARM7處理器有Samsung公司的S3C44BOX與S3C4510處理器、Atmel公司的AT91FR40162系列處理器、Cirrus公司的EP73xx系列等。通常來說前兩三年大部分手機基帶部分的應用處理器基本上都以ARM7為主。還有很多的通信模塊,如CDMA模塊、GPRS模塊和GPS模塊中都含有ARM7處理器。

2.ARM9、ARM9E處理器

ARM9處理器采用ARMV4T(哈佛)體系結構。這種體系結構是一種將程序指令存儲和數據存儲分開的存儲器 結構,是一種并行體系結構。其主要特點是程序和數據存儲在不同的存儲空間中,即程序存儲器和數據存儲器。它們是兩個相互獨立的存儲器,每個存儲器獨立編 址、獨立訪問。與兩個存儲器相對應的是系統中的4套總線,程序的數據總線和地址總線,數據的數據總線和地址總線。這種分離的程序總線和數據總線可允許在一 個機器周期內同時獲取指令字和操作數,從而提高了執行速度,使數據的吞吐量提高了一倍。又由于程序和數據存儲器在兩個分開的物理空間中,因而取指和執行能 完全重疊。

ARM9采用五級流水處理及分離的Cache結構,平均功耗為0.7mW/MHz。時鐘速度為120MHz~200MHz,每條指令平均執行1.5個時鐘周期。與ARM7處理器系列相似,其中的ARM920、ARM940和ARM9E處理器均為含有Cache的CPU核,性能為132MIPS(120MHz時鐘,3.3V供電)或220MIPS(200MHz時鐘)。

ARM9處理器同時也配備Thumb指令擴展、調試和Harvard總線。在生產工藝相同的情況下,性能是ARM7TDMI處理器的兩倍之多。常用于無線設備、儀器儀表、聯網設備、機頂盒設備、高端打印機及 數碼相機應用中。

ARM9E內核是在ARM9內核的基礎上增加了緊密耦合存儲器TCM及DSP部分。目前主流的ARM9內核是ARM920T、ARM922T、ARM940。相關的處理器芯片有Samsung公司的S3C2510、Cirrus公司的EP93xx系列等。主流的ARM9E內核是ARM926EJ-S、ARM946E-S、ARM966E-S等。目前市場上常見的PDA,比如說PocketPC中一般都是用ARM9處理器,其中以Samsung公司的S3C2410處理器居多。

3.ARM10E處理器

ARM10E處理器采用ARMVST體系結構,可以分為六級流水處理,采用指令與數據分離的Cache結構, 平均功耗1000mW,時鐘速度為300MHz,每條指令平均執行1.2個時鐘周期。ARM10TDMI與所有ARM核在二進制級代碼中兼容,內帶高速32×16 MAC,預留DSP協處理器接口。其中的VFP10(向量浮點單元)為七級流水結構。其中的ARM1020T處理器則是由ARMl0TDMI、32KB指 令、數據Caches及MMU部分構成的。其系統時鐘高達300MHz時鐘,指令Cache和數據Cache分別為32KB,數據寬度為64位,能夠支持 多種商用操作系統,適用于下一代高性能手持式因特網設備及數字式消費類應用。主流的ARM10內核是ARM1020E、ARM1022E、ARM1026EJ-S等。

4.SecurCore處理器

SecurCore系列處理器提供了基于高性能的32位RISC技術的安全解決方案,該系列處理器具有體積 小、功耗低、代碼密度大和性能高等特點。另外最為特別的就是該系列處理器提供了安全解決方案的支持。采用軟內核技術,以提供最大限度的靈活性,以及防止外 部對其進行掃描探測,提供面向智能卡的和低成本的存儲保護單元MPU,可以靈活地集成用戶自己的安全特性和其他的協處理器,目前含有SC100、SC110、SC200、SC210 4種產品。

5.StrongARM處理器

StrongARM處理器采用ARMV4T的五級流水體系結構。目前有SA110、SA1100、SA1110等3個版本。另外Intel公司的基于ARMv5TE體系結構的XScale PXA27x系列處理器,與StrongARM相比增加了I/D Cache,并且加入了部分DSP功能,更適合于移動多媒體應用。目前市場上的大部分智能手機的核心處理器就是XScale系列處理器。

6.ARM11處理器

ARM11系列微處理器是ARM公司近年推出的新一代RISC處理器,它是ARM新指令架構——ARMv6的第一代設計實現。該系列主要有ARM1136J,ARM1156T2和ARM1176JZ三個內核型號,分別針對不同應用領域。

ARM11處理器系列可以在使用130nm代工廠技術、小至2.2mm2芯片面積和低 至0.24mW/MHz的前提下達到高達500MHz的性能表現。ARM11處理器系列以眾多消費產品市場為目標,推出了許多新的技術,包括針對媒體處理 的SIMD,用以提高安全性能的TrustZone技術,智能能源管理(IEM),以及需要非常高的、可升級的超過2600 Dhrystone 2.1 MIPS性能的系統多處理技術。主要的ARM11處理器有ARM1136JF-S、ARM1156T2F-S、ARM1176JZF-S、ARM11 MCORE等多種。

7.Cortex系列處理器

ARM Cortex-M系列支持Thumb-2指令集(Thumb指令集的擴展集),可以執行所有已存的為早期處理器編寫的代碼。通過一個前向的轉換方式, 為ARM Cortex-M系列處理器所寫的用戶代碼可以與ARM Cortex-R系列微處理器完全兼容。

ARMCortex-M系列系統代碼(如實時操作系統)可以很容易地移植到基于ARM Cortex-R系列的系統上。ARMCortex-A和Cortex-R系列處理器還支持ARM 32位指令集,向后完全兼容早期的ARM處理器,包括從1995年發布的ARM7TDMI處理器到2002年發布的ARMll處理器系列。

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/252654.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/252654.shtml
英文地址,請注明出處:http://en.pswp.cn/news/252654.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

z-index ie無效

首先來個 解釋了三個原因&#xff1a;http://www.cnblogs.com/hakuci/archive/2011/01/05/1926212.html 我這個還比較特殊 爸爸級別在最底層 遮羞層在中間 兒子最外邊 <div>遮羞層</div> z-index2 <div>爺爺 <div>小爸爸</div> <div>爸…

數據結構與算法問題 AVL二叉平衡樹

AVL樹是帶有平衡條件的二叉查找樹。這個平衡條件必須保持&#xff0c;并且它必須保證樹的深度是O&#xff08;logN&#xff09;。 一棵AVL樹是其每一個節點的左子樹和右子樹的高度最多差1的二叉查找樹。&#xff08;空樹的高度定義為-1&#xff09;。在插入以后。僅僅有那些從插…

tomcat源碼閱讀之StandardHost和StandardEngine

StandardHost及UML類圖&#xff1a; 1、StandardHost類是Host接口的默認實現&#xff1b;其繼承自ContainerBase類&#xff0c;說明他也是一個容器類&#xff0c;既然是容器類&#xff0c;那肯定也有管道對象PipeLine和閥門&#xff0c;其基礎閥門&#xff08;Basic Valve&…

安防監控產業鏈全景梳理

安防行業是隨著現代社會安全需求應運而生的產業&#xff0c;圍繞著視頻監控技術的改革創新&#xff0c;行業從“看得見、看得遠、看得清到看得懂”&#xff0c;一共經歷模擬監控、數字監控、網絡高清監控和智能監控4個階段&#xff0c;每一階段的突破&#xff0c;都由上游技術的…

Vue項目搭建步驟

一&#xff0e; vue-cli初始化1. 全局安裝 vue-cli  npm install --global vue-cli2. 創建一個基于 webpack 模板的新項目  vue init webpack my-project3. 安裝依賴  cd my-project  npm install (換源安裝: npm install --registry https://registry.npm.taobao.org …

Python tutor 簡介

Python tutor 能夠直觀顯示object 引用關系。 網址是 http://www.pythontutor.com/visualize.html 先分享一下我的一個Python tutor&#xff1a; 點我出現神奇&#xff1a; 1&#xff09; 編輯code。 2&#xff09; 運行&#xff0c; 能夠看到以下界面。 這個工具是很酷的&…

提高CSS性能

1、選擇器 了解CSS的查找匹配原理&#xff0c;讓CSS更簡潔、高效使用高效率的CSS選擇器如何使CSS渲染更高效 總結 不要在ID選擇器前使用標簽名 一般寫法&#xff1a;div#divBox 更好寫法&#xff1a;#divBox 解釋&#xff1a; 因為ID選擇器是唯一的&#xff0c;加上div反而增加…

光學鏡頭行業發展現狀及趨勢,智能手機應用領域占比最高

一、光學鏡頭分類 光學鏡頭也叫攝像鏡頭或攝影鏡頭&#xff0c;簡稱鏡頭&#xff0c;其功能就是光學成像。光學鏡頭是光學成像系統中的必備組件&#xff0c;直接影響到成像質量的好壞&#xff0c;影響算法的實現和效果。從結構來看&#xff0c;光學鏡頭一般由精密五金、塑膠零…

關于_vmvare workstation裝32ubuntu的問題

剛開始啟動的時候是黑屏&#xff0c;沒有任何反應 1.bios也設置BIOS intel virtual technology 設置了enabled(開啟硬件虛擬化:要運行一些操作系統&#xff0c;虛擬化軟件和虛擬機&#xff0c;硬件虛擬化就需要啟用。大多數情況下&#xff0c;不需要虛擬化技術的操作系統可以正…

window screen (獲取屏幕信息)

document.write("屏幕寬度"screen.width);document.write("屏幕高度"screen.height);//&#xff08;整個電腦的屏幕的高&#xff09;上面和下面不是有效區的也被包括了 document.write("可用高度"screen.availHeight)//除了上面的任務欄 其他的全…

360°環視(全景影像)系統發展趨勢

360環視系統&#xff0c;系統同時采集車輛四周的影像&#xff0c;經過圖像處理單元一系列的智能算法處理&#xff0c;最終形成一幅車輛四周的全景俯視圖顯示在屏幕上&#xff0c;直觀地呈現出車輛所處的位置和周邊情況。系統大大地拓展了駕駛員對周圍和環境的感知能力&#xff…

python簡記

Python新手懵懂區&#xff1a; 1.不可變對象是傳值&#xff0c;可變對象是傳引用 2.不可變對象被真正復制&#xff0c;而可變對象只是復制了一個對它們的引用 3.*args --> 元組型參數傳遞 **args --> 字典型參數傳遞 4.淺拷貝&#xff1a;只復制了對對象的引用&#…

需求分析挑戰之旅(瘋狂的訂餐系統)(8)——最后的瘋狂

摘要&#xff1a; 說教性質的需求分析理論&#xff0c;各位看了也白看&#xff0c;所以咱們就來一個真實個案——“訂餐系統”體驗一下。“訂餐系統”貌似簡單&#xff0c;但陷阱重重&#xff0c;各種需求分析的經典場景將會一一重現&#xff0c;各位做好準備接受這個挑戰沒有&…

CPU架構:CPU架構詳細介紹

1 概述 CPU架構是CPU商給CPU產品定的一個規范&#xff0c;主要目的是為了區分不同類型的CPU。目前市場上的CPU分類主要分有兩大陣營&#xff0c;一個是intel、AMD為首的復雜指令集CPU&#xff0c;另一個是以IBM、ARM為首的精簡指令集CPU。不同品牌的CPU&#xff0c;其…

【NOIP】關押罪犯

帶權并查集&#xff0c;其實這種并查集的核心就是“向量” 1 #include<cstdio>2 #include<iostream>3 #include<algorithm>4 using namespace std;5 int n,m,p[20001],r[20001]; //0表示在同一監獄&#xff0c;1表示在不同監獄 6 struct node{7 int…

數學之路(3)-機器學習(3)-機器學習算法-SVM[7]

SVM是新近出現的強大的數據挖掘工具&#xff0c;它在文本分類、手寫文字識別、圖像分類、生物序列分析等實際應用中表現出非常好的性能。SVM屬于監督學習算法&#xff0c;樣本以屬性向量的形式提供&#xff0c;所以輸入空間是Rn的子集。 圖1 如圖1所示&#xff0c;SVM的目標是找…

Dalvik指令備忘

跳轉指令 if-eq vx, vy, 目標 如果vx vy注2&#xff0c;跳轉到目標。if-ne vx,vy, 目標 如果vx ! vy注2&#xff0c;跳轉到目標。 if-lt vx,vy, 目標 如果vx < vy注2&#xff0c;跳轉到目標。 if-ge vx, vy, 目標 如果vx > vy注2&#xff0c;跳轉到目標。 if-gt vx,vy, …

CPU、GPU、FPGA、ASIC等AI芯片特性及對比

1、前言 目前&#xff0c;智能駕駛領域在處理深度學習AI算法方面&#xff0c;主要采用GPU、FPGA 等適合并行計算的通用芯片來實現加速。同時有部分芯片企業開始設計專門用于AI算法的ASIC專用芯片&#xff0c;比如谷歌TPU、地平線BPU等。在智能駕駛產業應用沒有大規模興起和批量…

個人博客03

昨天編寫登錄界面、注冊界面的代碼。 今天依舊做這些。 遇到的問題為數據庫連接不上。轉載于:https://www.cnblogs.com/qilin20/p/8068555.html

人工智能Ai芯片層出不窮,GPU、FPGA、ASIC用于人工智能的優勢和劣勢對比

人工智能&#xff08;AI&#xff09;主要包括三大要素&#xff0c;分別是數據、算法和算力。其中數據是基礎&#xff0c;正是因為在實際應用當中的數據量越來越大&#xff0c;使得傳統計算方式和硬件難以滿足要求&#xff0c;才催生了AI應用的落地。而算法是連接軟件、數據、應…