上一期的芝識(shí)課堂,我們帶大家一起認(rèn)識(shí)了東芝應(yīng)用廣泛的TX03系列微控制器,并且重點(diǎn)介紹了TX03系列中部分產(chǎn)品組的主要特點(diǎn)和應(yīng)用領(lǐng)域。在MCU中,內(nèi)核是關(guān)鍵單元,要應(yīng)用好TX03系列MCU必須要先了解該系列所基于的Arm Cortex-M3內(nèi)核。本期內(nèi)容開始,芝子將向大家介紹Arm Cortex-M3內(nèi)核的特點(diǎn)和各基本單元。
東芝的TX03系列是基于Arm Cortex-M3內(nèi)核設(shè)計(jì)的MCU,讓我們先來一起認(rèn)識(shí)Arm Cortex-M3處理器的基本功能,方框圖如圖1所示。它由一個(gè)主核模塊、一個(gè)控制中斷的NVIC(內(nèi)嵌向量中斷控制器)模塊、一個(gè)支持調(diào)試的功能模塊和一個(gè)與外圍電路進(jìn)行外部連接的接口模塊組成。
圖1 內(nèi)核結(jié)構(gòu)方框圖
根據(jù)圖1可知,Cortex-M3主核采用三段式流水線配置。[Fe]是讀數(shù)階段,讀取PC(程序計(jì)數(shù)器)指示的存儲(chǔ)器地址的指令;[De]作為解碼階段,對(duì)指令進(jìn)行解碼,并確定執(zhí)行階段的執(zhí)行控制;[Ex]是執(zhí)行階段,通過Shift和ALU(算術(shù)邏輯單元)執(zhí)行四則運(yùn)算、邏輯運(yùn)算、乘法和除法等運(yùn)算,并執(zhí)行加載和存儲(chǔ),寄存器在此階段更新;最后[MUL/DIV]代表乘法/除法。
針對(duì)Arm處理器中斷響應(yīng)的問題,Cortex-M3在內(nèi)核上集成了NVIC(嵌套向量中斷控制器)。NVIC模塊可掛起正在主核上運(yùn)行的計(jì)算處理,并控制切換到優(yōu)先處理。它支持系統(tǒng)異常和中斷的發(fā)生,如果在異常處理過程中需要有一個(gè)高優(yōu)先級(jí)的異常中斷,NVIC塊將:
1
暫停正在處理的異常
2
啟動(dòng)高優(yōu)先級(jí)的異常處理
3
完成高優(yōu)先級(jí)的異常處理
4
恢復(fù)中斷的異常處理
它可以控制嵌套,即異常中斷處理。此外,它還包括調(diào)試控制功能和SysTickTimer,即操作系統(tǒng)(OS)進(jìn)行任務(wù)管理的硬件定時(shí)器。
Cortex-M3處理器具有R0至R15寄存器。R0至R12是通用寄存器。R13是可配置區(qū)域的寄存器,可以在兩種堆棧指針之間切換。R14是鏈接寄存器,R15是程序計(jì)數(shù)器。此外,還有控制Cortex-M3處理器特殊功能的特殊寄存器。寄存器分配如圖2所示。
圖2 寄存器分配示意圖
圖片上藍(lán)色部分寄存器均為通用寄存器,用于輸入算術(shù)單元(ALU)的數(shù)據(jù),輸出計(jì)算結(jié)果,傳輸存儲(chǔ)器中儲(chǔ)存數(shù)據(jù)的操作等。寄存器R15(PC)和R14(LR)用于控制程序執(zhí)行順序,而寄存器R13則用于堆棧指針。
特別要注意的是,Arm Cortex-M3內(nèi)核在異常/中斷處理程序的開始和結(jié)束時(shí)會(huì)自動(dòng)執(zhí)行入棧和出棧功能??勺詣?dòng)執(zhí)行入棧和出棧的寄存器有8個(gè),分別是R0、R1、R2、R3、R12、R14、R15和xPSR。
我們來看看如圖3所示的在發(fā)生異常/中斷事件時(shí),程序流程示例中的入棧和出棧操作。
圖3 異常/中斷事件時(shí),程序流程的入棧和出棧操作圖
此外,Arm Cortex-M3還在內(nèi)核水平上搭載了若干特殊功能寄存器,主要可分為三組:狀態(tài)字寄存器(三合一)、中斷屏蔽寄存器、控制寄存器。具體功能及描述可看圖4。
圖4 Arm Cortex-M3內(nèi)核特殊寄存器功能概述
通過今天的芝識(shí)課堂,我們帶大家從內(nèi)核的基本結(jié)構(gòu)入手,不僅學(xué)習(xí)了流水線的基本流程,還了解了該內(nèi)核的寄存器相關(guān)知識(shí)和分配的規(guī)則。在隨后的芝識(shí)課堂中,我們將會(huì)繼續(xù)跟大家一起學(xué)習(xí)Arm Cortex-M3內(nèi)核的操作模式和其他功能單元,請(qǐng)大家持續(xù)關(guān)注芝識(shí)課堂,別錯(cuò)過最詳盡的MCU基礎(chǔ)功能介紹哦!
點(diǎn)擊“閱讀原文”,了解更多東芝產(chǎn)品信息!
點(diǎn)擊前往了解更多信息
東芝微站
關(guān)于東芝電子元件及存儲(chǔ)裝置株式會(huì)社
東芝電子元件及存儲(chǔ)裝置株式會(huì)社是先進(jìn)的半導(dǎo)體和存儲(chǔ)解決方案的領(lǐng)先供應(yīng)商,公司累積了半個(gè)多世紀(jì)的經(jīng)驗(yàn)和創(chuàng)新,為客戶和合作伙伴提供分立半導(dǎo)體、系統(tǒng)LSI和HDD領(lǐng)域的杰出解決方案。
公司22,200名員工遍布世界各地,致力于實(shí)現(xiàn)產(chǎn)品價(jià)值的最大化,東芝電子元件及存儲(chǔ)裝置株式會(huì)社十分注重與客戶的密切協(xié)作,旨在促進(jìn)價(jià)值共創(chuàng),共同開拓新市場(chǎng),公司現(xiàn)已擁有超過8,598億日元(62億美元)的年銷售額,期待為世界各地的人們建設(shè)更美好的未來并做出貢獻(xiàn)。
如需了解有關(guān)東芝電子元件及存儲(chǔ)裝置株式會(huì)社的更多信息,請(qǐng)點(diǎn)擊以下鏈接進(jìn)行訪問:https://toshiba-semicon-storage.com
“贊”和“在看”點(diǎn)這里
原文標(biāo)題:芝識(shí)課堂【TX03微控制器】—強(qiáng)大的Arm? Cortex?-M3內(nèi)核(上)
文章出處:【微信公眾號(hào):東芝半導(dǎo)體】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
-
東芝半導(dǎo)體
+關(guān)注
關(guān)注
1文章
102瀏覽量
14507
原文標(biāo)題:芝識(shí)課堂【TX03微控制器】—強(qiáng)大的Arm? Cortex?-M3內(nèi)核(上)
文章出處:【微信號(hào):toshiba_semicon,微信公眾號(hào):東芝半導(dǎo)體】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論