日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ARM9处理器总结

發布時間:2023/12/16 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ARM9处理器总结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.


?

ARM處理器微體系結構的演變--過去的十年中,ARM處理器經歷了從簡單的ARM7TDMI內核發展到最新ARM11EJ-S內核,當前有5個產品系列——ARM7ARM9ARM9EARM10?SecurCoreARM11

下面介紹ARM9微處理器系列相關特性:

ARM9系列微處理器在高性能和低功耗特性方面提供最佳的性能。具有以下特點:

? ? 5級整數流水線,指令執行效率更高。

? ??提供1.1MIPS/MHz的哈佛結構。

? ??支持32ARM指令集和16Thumb指令集。

? ??支持32位的高速AMBA總線接口。

? ??全性能的MMU,支持Windows CELinuxPalm OS等多種主流嵌入式操作系統。

? ? MPU支持實時操作系統。

? ??支持數據Cache和指令Cache,具有更高的指令和數據處理能力。大小都為16K

ARM9系列微處理器主要應用于無線設備、儀器儀表、安全系統、機頂盒、高端打印機、數字照相機和數字攝像機等。

ARM9系列微處理器包含ARM920TARM922TARM940T三種類型,以適用于不同的應用場合。

ARM920T =ARM9TDMI core plus cache and MMU

ARM微處理器結構

1??RISC體系結構RISC結構優先選取使用頻最高的簡單指令,避免復雜指令

? ???1RISC體系結構應具有如下特點:

?采用固定長度的指令格式,指令歸整、簡單、基本尋址方式有23種。

?使用單周期指令,便于流水線操作執行。

?大量使用寄存器,數據處理指令只對寄存器進行操作,只有加載/?存儲指令可以訪問存儲器,以提高指令的執行效率。

除此以外,ARM體系結構還采用了一些特別的技術,在保證高性能的前提下盡量縮小芯片的面積,并降低功耗:

?所有的指令都可根據前面的執行結果決定是否被執行,從而提高指令的執行效率。

?可用加載/存儲指令批量傳輸數據,以提高數據的傳輸效率。

?可在一條數據處理指令中同時完成邏輯處理和移位處理。

?在循環處理中使用地址的自動增減來提高運行效率。

2ARM微處理器的寄存器結構

ARM處理器共有37個寄存器,被分為若干個組(BANK),這些寄存器包括:

?31個通用寄存器,包括程序計數器(PC指針),均為32位的寄存器。

?6個狀態寄存器,用以標識CPU的工作狀態及程序的運行狀態,均為32位,目前只使用了其中的一部分。

同時,ARM處理器又有7種不同的處理器模式,在每一種處理器模式下均有一組相應的寄存器與?之對應。即在任意一種處理器模式下,可訪問的寄存器包括15個通用寄存器(R0R14)、一至二個狀態寄存器和程序計數器。在所有的寄存器中,有些是在?7種處理器模式下共用的同一個物理寄存器,而有些寄存器則是在不同的處理器模式下有不同的物理寄存器。

3ARM微處理器的指令結構

ARM微處理器的在較新的體系結構中支持兩種指令集:ARM指令集和Thumb指令集。其?中,ARM指令為32位的長度,Thumb指令為16位長度。Thumb指令集為ARM指令集的功能子集,但與等價的ARM代碼相比較,可節省30?40%以上的存儲空間,同時具備32位代碼的所有優點。

ARM微處理器的啟動過程

1Bootloader?的啟動:其一般要實現的功能如下:

(1)初始化CPU速度、存儲器、存儲器配置寄存器以及串口等;

(2)激活指令/數據Cache、建立堆棧指針、建立啟動參數區、構造參數結構和標識列表;

(3)通過上電自檢,來識別存在哪些設備,并報告異常,提供對電源管理中休眠/恢復的支持;

(4)跳轉到內核起始處,系統啟動。

ARM微處理器的工作狀態

從編程的角度看,ARM一般有兩種工作狀態:ARM狀態和Thumb狀態。并可在兩個狀態之間隨時切換。

ARM狀態下,大多數指令都是有條件執行的;而Thumb狀態下,只有分支指令是有條件執行的。

ARM體系結構的存儲器結構

ARM體系結構可以用兩種方式存儲:大端格式和小端格式。最大尋址空間為4GB232字節)

big-endian格式中,對于地址為A的字單元其中字節單元由高位到低位字節順序為A,A+1,A+2,A+3;這種存儲器格式如下所示:

31 24 23 16 15 8 7 0

------------------------------------------------------------------------------------

字單元A |

------------------------------------------------------------------------------------

半字單元A |?半字單元A+2 |

------------------------------------------------------------------------------------

字節單元A |?字節單元A+1 |?字節單元A+2 |?字節單元A+3|

------------------------------------------------------------------------------------

little-endian格式中,對于地址為A的字單元由高位到低位字節順序為A+3,A+2,A+1,A,這種存儲格式如下所示

31 24 23 16 15 8 7 0

----------------------------------------------------------------------------------

字單元A |

----------------------------------------------------------------------------------

半字單元A+2 |?半字單元A |

----------------------------------------------------------------------------------

字節單元A+3 |字節單元A+2 |?字節單元A+1 |?字節單元A |

----------------------------------------------------------------------------------

指令長度和數據類型

ARM處理器的指令長度可以是32位(ARM狀態下),也可以是16位(Thumb狀態下)。ARM處理器支持字節(8位)、半字(16位)、字(32位)三種數據類型。其中字需要4字節對齊(地址的低兩位為0)、半字需要2字節對齊(地址的最低位為0)。

處理器模式

ARM微處理器支持7種運行模式:

——用戶模式(usr

——快速中斷模式(fiq

——外部中斷模式(irq

——管理模式(svc

——數據訪問中止模式(abt

——系統模式(sys

——未定義指令中止模式(und

ARM體系結構所支持的異常類型

復位、未定義指令、軟件中斷、指令預取中止、數據中止、IRQ(外部中斷請求)、FIQ(快速中斷請求)。

對中斷的響應:

1、將下一條指令的地址存入相應連接寄存器LR,以便程序在處理異常返回時能從正確的位置重?新開始執行。若異常是從ARM狀態進入,LR寄存器中保存的是下一條指令的地址(當前PC4PC8,與異常的類型有關);若異常是從Thumb狀態?進入,則在LR中保存當前PC的偏移量。

2、將CPSR復制到相應的SPSR

3、根據異常的類型,強制轉換CPSR的運行模式位。

4、強制PC從相關的異常向量地址取下一條指令執行,從而跳轉到相應的異常處理程序處。

各類異常的具體描述:

FIQ異常是為了支持數據傳輸或者通道處理而設計的。

IRQ屬于正常的中斷請求。

ABORT意味著對存儲器的訪問失敗

總結

以上是生活随笔為你收集整理的ARM9处理器总结的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。