如今,微控制器的功能日漸強大,已經從早期的單片機轉向基于SoC結構的MCU體系。在這個轉變過程中,內核成為了決定一顆MCU的性能和應用場景的關鍵。比如我們常說MCU的位數就是根據內核來確定的,不同的內核代表了不同的MCU性能。例如,早期的8051就是8位單片機的典型內核,現在主流的Arm Cortex M系列則代表了32位MCU最常見的內核;Cortex M0+則是低功耗低成本MCU的標簽;Cortex M7內核的MCU作為高性能微控制器的代表甚至可以進行部分視頻處理應用,而PowerPC架構的內核則常見于汽車動力總成部分的MCU應用場景。
如何配置強大的CPU內核?
內核是一顆MCU中的主處理單元(也可以說是MCU的CPU),內核基本決定了一顆MCU半數以上的技術指標,因此對CPU內核進行配置就成為應用MCU的最關鍵步驟。今天我們就以東芝的TLCS-870/C1內核作為示例,帶大家共同學習一下CPU整體配置的基本知識。
首先我們來認識一下微控制器的各個基本功能,如下圖所示,CPU具有用于存放微控制器中各種數據和程序的存儲電路以及用于執(zhí)行計算的運算電路。其中各個部分功能如下。
	
PSW(程序狀態(tài)字):用于保存操作結果和指令執(zhí)行結果狀態(tài)的寄存器,由各種標志組成。
通用寄存器:用于儲存數據的存儲電路,根據存儲電路的位置,通用寄存器分別稱為W、A、B、C、D、E、H、L等。儲存計算結果的地方稱為累加器。在TLCS-870/C1中,W、A、B、C、D、E、H、L、IX和IY這十個寄存器具有累加器功能。
程序計數器(PC):用于儲存存儲器地址以讀取指令的存儲電路。
ALU(算術邏輯單元):用于執(zhí)行計算的運算電路。
指令寄存器:用于暫時存儲讀取指令的存儲電路。
指令解碼器:對存儲在指令寄存器中的指令進行解密,并將其發(fā)送到控制單元。
中斷控制電路:用來控制中斷功能。
在這些功能中,程序計數器(PC)是管理下一步要執(zhí)行指令存儲地址的寄存器。每次執(zhí)行一條指令時,程序計數器指定的地址將進行+n處理(1字指令為+1,2字指令為+2)。當在中斷指令等情況下,PC將存儲跳轉目標地址。CPU從PC讀取下一條要執(zhí)行指令所在的地址,并依次執(zhí)行。例如,如果PC中存儲了0x8020(地址),則意味著CPU正在執(zhí)行地址為0x8019的指令。如果從PC讀取了地址0x8020,則CPU下一步要執(zhí)行指令的地址0x8021將儲存在PC中。這個過程可以參考圖2所示的流程示意。
	
	
而通用寄存器可用于各種用途,例如累加器和數據處理。TLCS-870/C1有八個8位寄存器:W、A、B、C、D、E、H和L。這八個寄存器也可以作為16位寄存器成對使用:WA、BC、DE和HL。這些組合只適用于相鄰的寄存器,例如,B和E、H和E等不能組合。此外,TLCS-870/C1還有兩個16位通用寄存器IX和IY。這些寄存器主要作為訪問存儲器時的索引寄存器。
在CPU執(zhí)行指令后,會有一個標志指示存儲器的內容以及計算結果的狀態(tài)。PSW(程序狀態(tài)字)的作用就是收集這些標志。下圖是A寄存器(00111110)和B寄存器(11100000)相加的例子。計算結果(100011110)本應儲存在A寄存器中。但是,由于A寄存器只能儲存8位,所以將進位標設置為“1”,并將進位標志保留為發(fā)生進位的信息。因此,在A寄存器中,存儲不包括最高有效位1的(00011110)作為計算結果。例如,如果計算結果是(100000000),則在進位標志中設置1,(00000000)儲存在A寄存器中,所以在零標志中設置1。
	
今天我們跟大家一起了解了微控制器的CPU部分功能單元和基本指令執(zhí)行的知識,下一節(jié)我們將帶大家一起認識另一個CPU配置的關鍵環(huán)節(jié)“中斷處理”。請大家持續(xù)關注哦~
	來源:東芝半導體
	免責聲明:本文為轉載文章,轉載此文目的在于傳遞更多信息,版權歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權問題,請聯系小編進行處理
審核編輯 黃宇
- 
                                微控制器
                                +關注
關注
48文章
8210瀏覽量
160906 - 
                                存儲器
                                +關注
關注
39文章
7700瀏覽量
170507 - 
                                cpu
                                +關注
關注
68文章
11198瀏覽量
222087 
發(fā)布評論請先 登錄
ATtiny3224/3226/3227:高性能低功耗的tinyAVR? 2系列微控制器
    
貿澤開售Renesas Electronics RA8P1微控制器 為先進AI提供高CPU性能
    
基于AM263x Sitara?微控制器的實時控制解決方案
    
TMS320F280013x系列微控制器技術解析與應用指南
    
求助,關于TC377tp微控制器上GTM TOM模塊的問題求解
如何在MCXN947微控制器上配置安全啟動和生命周期
    
知名廠商微控制器(MCU)芯片手冊分享
    
家用電器開發(fā)中微控制器的選型要點
    
東芝推出七款基于Arm Cortex-M4內核的32位微控制器
    
FPGA 與微控制器優(yōu)缺點比較
03-01-09-CBM9002A8051內核的USB型微控制器
兆易創(chuàng)新推出基于Arm Cortex-M33內核的GD32G5系列高性能微控制器
    
          
        
        
【微控制器基礎】——CPU內核與整體配置(上)
                
 
    
    
           
            
            
                
            
評論