當前位置: 華文世界 > 數位

一文讀懂Cortex-M3處理器

2024-03-11數位

Cortex-M3處理器結構是一種基於ARMv7架構的32位元嵌入式內核,它具有以下特點和組成部份:

  • 它采用哈佛結構,擁有獨立的指令匯流排和數據匯流排,可以實作取指和數據存取的並列。
  • 它支持小端模式和大端模式,可以根據不同的套用需求選擇數據儲存的方式。
  • 它只使用Thumb-2指令集,它是一種混合了16位元和32位元指令的指令集,可以提高程式碼密度和處理效能。
  • 它有16個32位元通用寄存器,其中R0-R12用於數據操作,R13用於堆疊指標,R14用於連線寄存器,R15用於程式計數器。它還有一些特殊功能寄存器,如程式狀態字寄存器、中斷遮蔽寄存器和控制寄存器。
  • 它有一個巢狀向量中斷控制器(NVIC),它支持240個外部中斷和11個內部異常源,可以賦予不同的優先級,並實作可巢狀中斷的支持。它還有一個不可遮蔽中斷(NMI)輸入腳,用於處理緊急或重要的任務。
  • 它有一個記憶體保護單元(MPU),它可以管理CPU對記憶體的存取,防止任務意外破壞其他任務所使用的記憶體或資源。MPU是可選的,如果套用不需要則可以繞過。
  • 它有一個記憶體對映單元(MMU),它將4GB的儲存空間劃分為不同的區域,如程式碼區、片上SRAM區、片上外設區、片外RAM區、片外外設區和私有外設區。它預先定義了這些區域的地址範圍和內容,方便開發者存取這些區域。
  • 它有多個匯流排介面,如指令儲存區匯流排、系統匯流排和私有外設匯流排,用於連線內核與記憶體和外設。它還支持AMBA AHB-lite協定,方便與其他ARM元件進行互聯。
  • 它有豐富的偵錯支持功能,如程式執行控制、斷點和觀察點、寄存器和記憶體存取、效能監測和跟蹤機制等。它還支持JTAG和SWD兩種偵錯協定。