STM32、Cortex-M3和ARMv8-M之間的關(guān)聯(lián)
整理:黃工
參考:維基百科
參考地址: https://zh.wikipedia.org/wiki/ARM架構(gòu)
二、架構(gòu)
從1995年開(kāi)始,《ARM體系結(jié)構(gòu)參考手冊(cè)》是ARM文檔的主要來(lái)源,提供了關(guān)于ARM處理器架構(gòu)和指令集,區(qū)分接口,所有的ARM處理器的支持(如指令語(yǔ)義)的實(shí)現(xiàn)細(xì)節(jié)可能會(huì)有所不同。該體系結(jié)構(gòu)隨著時(shí)間的演變,并與Cortex系列的核心開(kāi)始,存在三個(gè)“配置”的定義如下:
"應(yīng)用"配置: Cortex-A 系列
"嵌入式"配置: Cortex-R 系列
"微處理器"配置: ARM Cortex-M 系列。
每個(gè)配置允許有其子集的架構(gòu)。例如,用于ARMv6-M配置(所使用的Cortex M0 / M0+/ M1)的一個(gè)子集ARMv7-M架構(gòu)(支持較少的指令)。
三、CPU模式
在任何時(shí)刻,CPU只可處于某一種模式,但可由于外部事件(中斷)或編程方式進(jìn)行模式切換。
用戶(hù)模式:僅非特權(quán)模式。
系統(tǒng)模式:僅無(wú)需例外進(jìn)入的特權(quán)模式。僅以執(zhí)行明確寫(xiě)入CPSR的模式位的指令進(jìn)入。
?(svc) 模式:在CPU被重置或者SWI指令被執(zhí)行時(shí)進(jìn)入的特權(quán)模式。
Abort 模式:預(yù)讀取中斷或數(shù)據(jù)中斷異常發(fā)生時(shí)進(jìn)入的特權(quán)模式。
未定義模式:未定義指令異常發(fā)生時(shí)進(jìn)入的特權(quán)模式。
干預(yù)模式:處理器接受一條IRQ干預(yù)時(shí)進(jìn)入的特權(quán)模式。
快速干預(yù)模式:處理器接受一條IRQ干預(yù)時(shí)進(jìn)入的特權(quán)模式。
Hyp 模式:armv-7a為cortex-A15處理器提供硬件虛擬化引進(jìn)的管理模式。
四、ARM授權(quán)方式
ARM公司本身并不靠自有的設(shè)計(jì)來(lái)制造或出售CPU,而是將處理器架構(gòu)授權(quán)給有興趣的廠(chǎng)家。
標(biāo)題中的STM32就是屬于ARM公司授權(quán)Cortex-M內(nèi)核給ST公司生產(chǎn)的一款處理器。
ARM提供了多樣的授權(quán)條款,包括售價(jià)與散播性等項(xiàng)目。對(duì)于授權(quán)方來(lái)說(shuō),ARM提供了ARM內(nèi)核的集成硬件敘述,包含完整的軟件開(kāi)發(fā)工具(編譯器、debugger、SDK),以及針對(duì)內(nèi)含ARM CPU硅芯片的銷(xiāo)售權(quán)。
許多半導(dǎo)體公司持有ARM授權(quán):Atmel、 ST、NXP、 TI、 IBM等。
在知識(shí)產(chǎn)權(quán)工業(yè),ARM是廣為人知最昂貴的CPU內(nèi)核之一。單一的客戶(hù)產(chǎn)品包含一個(gè)基本的ARM內(nèi)核可能就需索取一次高達(dá)美金20萬(wàn)的授權(quán)費(fèi)用。而若是牽涉到大量架構(gòu)上修改,則費(fèi)用就可能超過(guò)千萬(wàn)美元。
五、ARM核心時(shí)間線(xiàn)
早在1993年,經(jīng)典的ARM7就問(wèn)世了,直到現(xiàn)在大家看到的Cortex-A系列處理器。
其實(shí),在ARM7之前,都還有一些相關(guān)的處理器,感興趣的朋友可以上網(wǎng)了解。
免責(zé)聲明:本文來(lái)源維基百科,版權(quán)歸原作者所有。如涉及作品版權(quán)問(wèn)題,請(qǐng)與我聯(lián)系刪除。
往期好文合集
?最 后
??
?
免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。文章僅代表作者個(gè)人觀(guān)點(diǎn),不代表本平臺(tái)立場(chǎng),如有問(wèn)題,請(qǐng)聯(lián)系我們,謝謝!