上一期的芝識(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)行外部連接的接口模塊組成。
![wKgZomVlt8yAUh1YAABN3jgCfsk417.png](https://file1.elecfans.com//web2/M00/B3/58/wKgZomVlt8yAUh1YAABN3jgCfsk417.png)
圖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所示。
![wKgZomVlt8yAScuYAABvM2rcqIM054.png](https://file1.elecfans.com//web2/M00/B3/58/wKgZomVlt8yAScuYAABvM2rcqIM054.png)
圖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í),程序流程示例中的入棧和出棧操作。
![wKgZomVlt8yAEUYfAAFci5Ikd7U490.png](https://file1.elecfans.com//web2/M00/B3/58/wKgZomVlt8yAEUYfAAFci5Ikd7U490.png)
圖3 異常/中斷事件時(shí),程序流程的入棧和出棧操作圖
此外,Arm Cortex-M3還在內(nèi)核水平上搭載了若干特殊功能寄存器,主要可分為三組:狀態(tài)字寄存器(三合一)、中斷屏蔽寄存器、控制寄存器。具體功能及描述可看圖4。
![wKgZomVlt8yAcsA1AAHhgOFMaGc517.png](https://file1.elecfans.com//web2/M00/B3/58/wKgZomVlt8yAcsA1AAHhgOFMaGc517.png)
圖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ǔ)功能介紹哦!
![wKgZomVlt8yAH-oGAC5hgvA-J-4834.gif](https://file1.elecfans.com//web2/M00/B3/58/wKgZomVlt8yAH-oGAC5hgvA-J-4834.gif)
![wKgZomVlt8yARsjSAABZYDA4_KI993.gif](https://file1.elecfans.com//web2/M00/B3/58/wKgZomVlt8yARsjSAABZYDA4_KI993.gif)
![wKgZomVlt82AexmMAABXSCdi9kc555.jpg](https://file1.elecfans.com//web2/M00/B3/58/wKgZomVlt82AexmMAABXSCdi9kc555.jpg)
點(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
![wKgZomVlt82ANqUlAABen9luueI353.jpg](https://file1.elecfans.com//web2/M00/B3/58/wKgZomVlt82ANqUlAABen9luueI353.jpg)
![wKgZomVlt82APou5AAAGKnmHk4E326.png](https://file1.elecfans.com//web2/M00/B3/58/wKgZomVlt82APou5AAAGKnmHk4E326.png)
原文標(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文章
103瀏覽量
14590
原文標(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)推薦
東芝推出七款基于Arm Cortex-M4內(nèi)核的32位微控制器
![東芝推出七款基于<b class='flag-5'>Arm</b> <b class='flag-5'>Cortex-M</b>4<b class='flag-5'>內(nèi)核</b>的32位<b class='flag-5'>微控制器</b>](https://file1.elecfans.com/web3/M00/06/E6/wKgZPGeQw2GAFbYOAAAofdPpkJE446.png)
兆易創(chuàng)新推出基于Arm Cortex-M33內(nèi)核的GD32G5系列高性能微控制器
![兆易創(chuàng)新推出基于<b class='flag-5'>Arm</b> <b class='flag-5'>Cortex-M</b>33<b class='flag-5'>內(nèi)核</b>的GD32G5系列高性能<b class='flag-5'>微控制器</b>](https://file1.elecfans.com/web1/M00/F4/FF/wKgaoWc0cNuADtSjAAAmLrQMZiI821.png)
樹莓派Pico 2發(fā)布,搭載RP2350雙核RISC-V和Arm Cortex-M33微控制器!
RM57L843基于ARM? Cortex?-R內(nèi)核的Hercules?微控制器數(shù)據(jù)表
![RM57L843基于<b class='flag-5'>ARM</b>? <b class='flag-5'>Cortex</b>?-R<b class='flag-5'>內(nèi)核</b>的Hercules?<b class='flag-5'>微控制器</b>數(shù)據(jù)表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
TMS570LC4357基于ARM Cortex?-R內(nèi)核的Hercules?微控制器數(shù)據(jù)表
![TMS570LC4357基于<b class='flag-5'>ARM</b> <b class='flag-5'>Cortex</b>?-R<b class='flag-5'>內(nèi)核</b>的Hercules?<b class='flag-5'>微控制器</b>數(shù)據(jù)表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
中微半導(dǎo)體推出CMS32M67電機(jī)控制系列微控制器
普冉半導(dǎo)體推出一款基于32位ARM Cortex-M0+內(nèi)核的微控制器
![普冉半導(dǎo)體推出一款基于32位<b class='flag-5'>ARM</b> <b class='flag-5'>Cortex-M</b>0+<b class='flag-5'>內(nèi)核</b>的<b class='flag-5'>微控制器</b>](https://file1.elecfans.com/web2/M00/DE/7E/wKgZomYwZNyAEXewAAA7HoiZgmU490.png)
中微半導(dǎo)推出基于Arm Cortex-M0的CMS32M67電機(jī)控制系列微控制器
![中微半導(dǎo)推出基于<b class='flag-5'>Arm</b> <b class='flag-5'>Cortex-M</b>0的CMS32<b class='flag-5'>M</b>67電機(jī)<b class='flag-5'>控制</b>系列<b class='flag-5'>微控制器</b>](https://file1.elecfans.com/web2/M00/C8/40/wKgaomYTUyWAH6k_AAAsvVVPz5g837.png)
東芝推出適用于電機(jī)控制的Arm Cortex-M4微控制器
東芝推出一種適用于電機(jī)控制的Arm? Cortex?-M4微控制器
![東芝推出一種適用于電機(jī)<b class='flag-5'>控制</b>的<b class='flag-5'>Arm</b>? <b class='flag-5'>Cortex</b>?-<b class='flag-5'>M</b>4<b class='flag-5'>微控制器</b>](https://file1.elecfans.com/web2/M00/C6/CC/wKgaomYDf5KAeTloAAAYDkRWGUI586.jpg)
瑞薩電子宣布推出基于Arm Cortex-M23處理器的RA2A2微控制器產(chǎn)品群
![瑞薩電子宣布推出基于<b class='flag-5'>Arm</b> <b class='flag-5'>Cortex-M</b>23處理<b class='flag-5'>器</b>的RA2A2<b class='flag-5'>微控制器</b>產(chǎn)品群](https://file1.elecfans.com/web2/M00/C6/4C/wKgaomX88-qAcIxdAAAULag7VwQ111.jpg)
兆易創(chuàng)新推出GD32F5系列Cortex-M33內(nèi)核MCU
兆易創(chuàng)新推出基于Arm? Cortex?-M33內(nèi)核的GD32F5系列高性能微控制器
![兆易創(chuàng)新推出基于<b class='flag-5'>Arm</b>? <b class='flag-5'>Cortex</b>?-<b class='flag-5'>M</b>33<b class='flag-5'>內(nèi)核</b>的GD32F5系列高性能<b class='flag-5'>微控制器</b>](https://file1.elecfans.com/web2/M00/C3/D4/wKgaomXpFDKAdbIIAAAsi5unjeM576.png)
兆易創(chuàng)新推出中國首款基于Arm? Cortex?-M7內(nèi)核的超高性能微控制器
![兆易創(chuàng)新推出中國首款基于<b class='flag-5'>Arm</b>? <b class='flag-5'>Cortex</b>?-<b class='flag-5'>M</b>7<b class='flag-5'>內(nèi)核</b>的超高性能<b class='flag-5'>微控制器</b>](https://file1.elecfans.com/web2/M00/C3/6A/wKgaomXlNbaAWFtiAACTC5sYs24956.png)
評(píng)論