單片機內核Cortex-M3的八個知識點
1.指令集
32位ARM指令集:對應ARM狀態
16位Thumb指令集:對應Thumb狀態(是ARM指令集的一個子集)
html
2.BKP備份寄存器(42個16位寄存器組成),用來存儲用戶應用程序數據。在Vdd掉電時由Vbat供電。。在待機復位、系統復位、電源復位後,這些寄存器不會被複位
3.再也不像別的ARM7那樣從thumb狀態和ARM狀態來回切換
Thumb-2指令集橫空出世,Cortex-M3不支持ARM指令集
4.DMA用來提供外設和存儲器以及存儲器和存儲器之間的高速數據傳輸,而不須要CPU干預。
當DMA和CM3核同時訪問相同的目標(外設或者RAM)時,總線仲裁器會循環調度,確保CM3核獲得至少一半的系統總線帶寬。
5.Cortex-M3的內核是指MCU的CPU,而完整的MCU還要加上其餘外設,如存儲器、IO等其餘模塊。
下圖是一個MCU內部組成結構圖
架構
6.ARM結構的發展V4(ARM7)、V5(ARM9)、V6(ARM11)、V7A/R/M(Cortex系列)
htm
7.Cortex-M3使用的是Thumb-2指令集:支持16位/32位指令,所以不用再來回切換
8.Cortex-M3爲32位處理器內核。存儲器機構、寄存器、內部的數據路徑都是32位的。採用哈弗結構,擁有獨立的指令總線和數據總線,使得指令總線和數據總線並行不悖。可是指令總線和數據總線共享同一個存儲器空間。blog