嵌入式開發(fā)】ARM 芯片簡介 (ARM芯片類型 | ARM處理器工作模式 | ARM 寄存器 | ARM 尋址)

      網(wǎng)友投稿 818 2025-04-02

      博客地址 :?http://blog.csdn.net/shulianghan/article/details/42375701

      相關(guān)資源下載 :

      -- 三星?ARM Architecture Reference Manual 文檔 :?http://download.csdn.net/detail/han1202012/8324641

      一. ARM 芯片類型

      1. ARM 分類

      (1) ARM 分類類型(芯片 | 核 | 指令架構(gòu))

      ARM 分類 :

      -- ARM 芯片類型 : 6410, 2440, 210;

      -- ARM 核類型 : arm11, arm9, CortexA9;

      -- 指令架構(gòu) : armv7, armv6;

      (2) ARM芯片 與 ARM核 關(guān)系

      芯片 和 核關(guān)系 : 芯片包含核;

      -- 2440 芯片 : 包含 arm9 核;

      -- 6410 芯片 : 包含 arm11 核;

      -- 210 芯片 : 包含 CortexA8 核;

      (3) ARM核 與 指令架構(gòu) 關(guān)系

      ARM 核 與 指令架構(gòu) 關(guān)系 :

      -- ARM9 : armv4 指令架構(gòu);

      -- ARM11 : armv6 指令架構(gòu);

      -- CortextA8 : armv7 指令架構(gòu);

      2. ARM 演化變遷

      (1) 經(jīng)典陣營

      發(fā)展歷程 : ARM7 --> ARM9 --> ARM11, ARM11 性能最高, ARM7 性能最低;

      (2) Cortex 陣營

      Cortext 系列 :

      -- Cortex-M 系列 : 沒有操作系統(tǒng), 面向工控領域, 與單片機差不多;

      -- Cortex-R 系列 : 面向?qū)崟r應用, 強調(diào)實時性, 可以運行操作系統(tǒng);

      -- Cortex-A 系列 : 主要面向多媒體應用, 目前多數(shù)的智能手機屬于該系列;

      性能遞推 : Cortex-M0 -->?Cortex-M1 -->?Cortex-M3 -->?Cortex-M4 -->?Cortex-R4 -->?Cortex-A5 -->?Cortex-A8 -->?Cortex-A9 ;

      (3) Cortex 與 ARM 對比

      ARM 與 Cortext 對比 :

      -- ARM7 : ?ARM 7 與 Cortext-M3 類似, 都沒有操作系統(tǒng), 性能上 Cortex-M3 略高, 但是高的有限;

      -- ARM9 和 ARM11 : ARM9 和 ARM11 與 Cortex-R4 性能類似, ARM11 不如 Cortex-A5, 遠遠比不上 Cortex-A8 和?Cortex-A9;

      3. 芯片性能對比(處理速度 | 緩存 | 內(nèi)存接口 | OS)

      (1) 處理速度對比

      -- 6410 : 533MHz ~ 667MHz;

      -- 2440 : 12MHz 晶振 對應 405 ~ 532 MHz 處理速度;

      -- 210 : 800MHz ~ 1GHz;

      (2) 緩存對比

      芯片緩存對比 : 去芯片對應的芯片手冊;

      -- 6410 :?16K 指令緩存, 16K 數(shù)據(jù)緩存;

      -- 2440 :?16K 指令緩存, 16K 數(shù)據(jù)緩存;

      -- 210 : 32KB?指令緩存, 32KB 數(shù)據(jù)緩存;

      (3) 內(nèi)存接口對比

      -- 2440 : 提供 SDRAM 內(nèi)存接口;

      -- 6410 : 提供了 SDRAM, 也提供了 DDR 內(nèi)存接口;

      -- 210 : 提供了 DDR1 和 DDR2 兩種內(nèi)存接口;

      (4) 支持的操作系統(tǒng)

      芯片支持操作系統(tǒng)對比?: 去芯片對應的芯片手冊中查找;

      --?6410?: WinCE | Linux | Android;

      --?2440?: WinCE | Linux;

      --?210?: WinCE | Linux | Android;

      (5) 其它商業(yè)信息

      芯片商業(yè)對比?:

      --?6410?: 繼續(xù)使用;

      --?2440?: 三星宣布停產(chǎn);

      --?210?: 繼續(xù)使用;

      二. ARM 工作模式

      對應手冊 :?ARM Architecture Reference Manual.pdf 手冊, 在本博客中提供下載;

      -- 章節(jié)內(nèi)容 :?Programmers’ Model, A2.2 Page 41;

      -- 手冊- :?http://download.csdn.net/detail/han1202012/8324641

      1. 處理器工作模式

      (1) ARM 工作模式圖例

      工作模式圖示 : 圖片截圖自?ARM Architecture Reference Manual.pdf?手冊, Page 41, A2.2 章節(jié);

      (2) ARM 工作模式介紹

      工作模式介紹 :

      -- User 模式 (usr) : 普通應用程序運行的模式;

      -- FIQ 模式 (fiq) : 快速中斷模式;

      -- IRQ 模式 (irq) : 普通中斷模式;

      -- Supervisor 模式 (svc) : 為操作系統(tǒng)提供的保護模式;

      -- Abort 模式 (abt) : 訪問虛擬內(nèi)存導致異常的模式;

      -- Undefined 模式 (und) : 未定義指令模式;

      -- System 模式 (sys) : armv4 以上版本才有該模式;

      Linux 系統(tǒng)工作模式 : 系統(tǒng)運行在 usr 模式, 內(nèi)核運行在 svc 模式;

      三. ARM 寄存器

      對應手冊?:?ARM Architecture Reference Manual.pdf?手冊, 在本博客中提供下載;

      --?章節(jié)內(nèi)容?:?Programmers’ Model, A2.3 Page 42;

      --?手冊-?:?http://download.csdn.net/detail/han1202012/8324641

      1. 寄存器簡介

      寄存器簡介 :

      -- 寄存器個數(shù) : ARM 有 37 個寄存器;

      -- 通用寄存器 : 31 個通用寄存器, 程序計數(shù)器 也是一個通用寄存器;

      -- 狀態(tài)寄存器 : 6 個狀態(tài)寄存器;

      -- 圖示 :

      -- 寄存器圖示 : 截圖自 Page 43;

      2. 通用寄存器

      (1) 通用寄存器分類

      通用寄存器分類 :

      -- 不分組寄存器 : R0 ~ R7;

      -- 分組寄存器 : R8 ~ R14, 不同模式下使用的寄存器都不相同;

      -- 程序計數(shù)器 : PC 指針, 是 R15;

      (2) 常用通用寄存器解析

      R13 寄存器 : 通常用來做 SP 堆棧指針;

      R14 寄存器 : 通常用來做 鏈接寄存器;

      -- 作用一 : 保存函數(shù)返回地址;

      -- 作用二 : 異常發(fā)生時, 主要用于記錄函數(shù)返回地址;

      R15 寄存器 : PC 指針, 程序計數(shù)器;

      3. 狀態(tài)寄存器

      (1) 對應各個模式的狀態(tài)寄存器出現(xiàn)原因

      狀態(tài)寄存器 :

      -- 圖示 :

      -- 對應各個模式的狀態(tài)寄存器 : 當出現(xiàn)中斷后, 執(zhí)行中斷程序, 需要將對應的 CPRS 保存到對應模式的 SPRS_xxx 寄存器中, 如當前在 scv 模式中斷, 將狀態(tài)寄存器保存到 SPSR_svc 寄存器中, 中斷執(zhí)行完后, 將狀態(tài)從 SPSR_svc 中寫回到 CPRS 寄存器中;

      (2) CPSR 寄存器位簡介

      CRSR 寄存器簡介 :

      -- 圖示 :

      -- N 位 : 兩個數(shù)a 和 b比較, 即做減法 (a-b), 如果 a < b, 減法結(jié)果是負數(shù), N = 1; 如果 a >= b, 減法結(jié)果是正數(shù)或0, N = 0;

      -- Z 位 : 兩個數(shù)進行比較, 只有兩個數(shù)相等時 Z = 1;

      -- I 位 : I = 1 時不能產(chǎn)生中斷;

      -- F 位 : F = 1 時不能產(chǎn)生快速中斷;

      -- M 位 : 占了 5 個位 0 ~ 4, 主要用于標明處理器模式, 可以讀取模式 和 設置模式, 如下圖 :

      四. ARM 尋址方式

      對應手冊?:?ARM Architecture Reference Manual.pdf?手冊, 在本博客中提供下載;

      --?章節(jié)內(nèi)容?:?Programmers’ Model, A2.3 Page 42;

      --?手冊-?:?http://download.csdn.net/detail/han1202012/8324641

      尋址方式 : 處理器根據(jù)指令給出的信息找到指令的操作數(shù);

      1. 立即數(shù)尋址

      -- 尋址過程 : 操作數(shù)本身就在指令中給出, 取出指令同時也可以獲取操作數(shù);

      -- 操作數(shù) : 指令中取出的操作數(shù)就是立即數(shù);

      -- 尋址方式 : 這種從指令中取出立即數(shù)的方式就是立即數(shù)尋址;

      立即數(shù)尋址示例 :

      -- 示例 : ADD R0, R0, #0x3F;

      -- 解析 : 將 R0 + #0x3F 相加, 結(jié)果放入到 R0 中;

      立即數(shù)尋址要求 : 第二個源操作數(shù)以 "#" 為后綴;

      2. 寄存器尋址

      寄存器尋址簡介 : 利用寄存器中的數(shù)值作為操作數(shù);

      【嵌入式開發(fā)】ARM 芯片簡介 (ARM芯片類型 | ARM處理器工作模式 | ARM 寄存器 | ARM 尋址)

      -- 示例 : ADD R0, R1, R2;

      -- 示例解析 : 將 R1 和 R2 寄存器中的數(shù)字相加, 結(jié)果存放到 R0 中;

      3. 寄存器間接尋址

      寄存器間接尋址簡介 : 寄存器中存放的操作數(shù)在內(nèi)存中, 寄存器存放內(nèi)存的地址;

      -- 示例 : LDR R0, [R2];

      -- 示例解析 : 寄存器 R2 中存放的是 操作數(shù)的內(nèi)存地址, 從內(nèi)存中取出操作數(shù)存入 R0 中;

      4. 基址變址尋址

      基址變址尋址簡介 :

      -- 基址寄存器 : 寄存器中存放一個基地址;

      -- 偏移量 : 指令中給出一個偏移量, 與基址寄存器放在一個中括號號中;

      -- 示例 : LDR R0, [R1. #4];

      -- 示例解析 : 從 R1 中取出地址, 然后 該地址 加上 4, 從 相加后的地址中取出數(shù)據(jù);

      5. 相對尋址

      相對尋址簡介 : PC 指針當前值為基地址, 指令中地址標號是偏移量, 兩者相加后是有效地址;

      -- 示例 : BL NEXT 時會跳轉(zhuǎn)到 NEXT 處執(zhí)行, 執(zhí)行完后會返回到原程序處;

      BL NEXT ;跳轉(zhuǎn)到 NEXT 處執(zhí)行

      ... ...

      NEXT

      ... ...

      MOV PC, LR ;從子程序返回

      博客地址?:?http://blog.csdn.net/shulianghan/article/details/42375701

      相關(guān)資源下載?:

      --?三星?ARM Architecture Reference Manual 文檔?:?http://download.csdn.net/detail/han1202012/8324641

      ARM 單片機 嵌入式

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔相應法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔相應法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:如何取消電子表格密碼(如何取消電子表格密碼設定)
      下一篇:數(shù)據(jù)透視表怎么保留從數(shù)據(jù)源刪除的項目(怎么把數(shù)據(jù)透視表的匯總刪掉)
      相關(guān)文章
      亚洲精品中文字幕麻豆| 亚洲国产V高清在线观看| 亚洲av成人无码久久精品| 亚洲一区二区三区免费| 亚洲日本天堂在线| 亚洲国产av高清无码| 亚洲天堂视频在线观看| 久久久久国产亚洲AV麻豆| 国产精品亚洲а∨天堂2021| 综合偷自拍亚洲乱中文字幕| 蜜芽亚洲av无码一区二区三区| 亚洲色www永久网站| 亚洲乱妇老熟女爽到高潮的片| 亚洲另类无码一区二区三区| 亚洲av永久无码精品秋霞电影秋| 亚洲成a人无码亚洲成av无码 | 国产av天堂亚洲国产av天堂| 奇米影视亚洲春色| 亚洲国产精品乱码一区二区| 亚洲AV无一区二区三区久久| 亚洲人成在线观看| 亚洲日产2021三区| 亚洲成A人片在线播放器| 亚洲精品无码高潮喷水A片软| 国产成人高清亚洲一区久久 | 亚洲av片在线观看| 全亚洲最新黄色特级网站 | 亚洲最新在线视频| 亚洲香蕉久久一区二区| 亚洲色精品VR一区区三区| 亚洲成a∨人片在无码2023| 亚洲丰满熟女一区二区哦| 亚洲国产成人久久综合区| 伊人婷婷综合缴情亚洲五月| 久久精品国产精品亚洲色婷婷| 亚洲老熟女@TubeumTV| 中文字幕亚洲男人的天堂网络| 亚洲AV色无码乱码在线观看 | 亚洲精品国产精品国自产观看| 国产亚洲精品a在线观看| 久久精品国产亚洲AV网站|