官术网_书友最值得收藏!

1.2.2 MSP430G2553中央處理器

中央處理器(CPU)是單片機的核心,實現(xiàn)了運算器和控制器的功能,其性能直接決定著單片機的處理能力。MSP430G2553單片機的CPU結(jié)構(gòu)與通用單片機基本相同,其CPU具有一個對應(yīng)用高度透明的16位精簡指令集(RISC)架構(gòu),主要包括1個16位的算術(shù)邏輯運算單元(ALU)、16個寄存器、1個指令單元。所有的操作(程序流指令除外)均作為寄存器操作與用于源操作數(shù)的7種尋址模式和用于目的操作數(shù)的4種尋址模式一起執(zhí)行,這使得其運算能力很強,整體功耗卻極低。圖1-3是MSP430G2553單片機的CPU結(jié)構(gòu)。

1.CPU的特性

MSP430G2553單片機的主要特性如下。

1)具有27條指令和7個尋址模式的RISC。

2)有可使用每個尋址模式的每條指令的正交架構(gòu)。

3)包括程序計數(shù)器、狀態(tài)寄存器和棧指針的完全寄存器訪問。

4)可實現(xiàn)單周期寄存器運行。

5)大尺寸16位寄存器文件,減少了到存儲器的取指令。

6)16位地址總線可實現(xiàn)直接訪問整個存儲器范圍上的分支。

7)16位數(shù)據(jù)總線可實現(xiàn)對字寬自變量的操作。

8)常量發(fā)生器提供最多六個立即值并減少了代碼尺寸。

9)無須中間寄存器保持的直接存儲器到存儲器傳輸。

10)字和字節(jié)尋址與指令格式。

圖1-3 MSP430G2553單片機的CPU結(jié)構(gòu)

2.寄存器

MSP430G2553單片機CPU集成了16個寄存器:R0~R15,其中R0~R3專門用作程序計數(shù)器(PC)、棧指針(SP)、狀態(tài)寄存器(SR)和常數(shù)發(fā)生器(CG1和CG2),其余的寄存器R4~R15為通用寄存器。

(1)程序計數(shù)器

16位程序計數(shù)器指向?qū)⒈粓?zhí)行的下一條指令。每個指令使用偶數(shù)數(shù)量的字節(jié)(2字節(jié)、4字節(jié)或6字節(jié)),并且PC相應(yīng)遞增。64KB地址空間內(nèi)的指令訪問在字邊界上執(zhí)行,并且PC與偶數(shù)地址對齊。可用所有指令和尋址模式對PC尋址。

(2)棧指針

棧指針被CPU用來存儲子例程調(diào)用和中斷的返回地址。它使用先遞減、后遞增的機制。此外,SP可由軟件用所有指令和尋址模式來使用。SP由用戶初始化入RAM,并且與偶數(shù)地址對齊,如圖1-4所示。

例如:

圖1-4 棧指針的使用

利用PUSH和POP指令將棧指針SP指向入棧和出棧數(shù)據(jù)的順序,如圖1-5所示。

圖1-5 PUSH SP-POP SP序列

(3)狀態(tài)寄存器

狀態(tài)寄存器在程序設(shè)計中有著重要意義,它反映了程序執(zhí)行時控制器的當前狀態(tài),用于指示ALU的運算結(jié)果狀態(tài)以及時鐘狀態(tài)等。通過判斷狀態(tài)寄存器的標志位,用戶可控制程序的執(zhí)行流向。

MSP430單片機的狀態(tài)寄存器有16位,一般常用其前9位,其說明如表1-2所示。

表1-2 狀態(tài)寄存器位的說明

(4)常數(shù)發(fā)生器

常數(shù)發(fā)生器CG1和CG2生成的六個常用常數(shù)無須額外的16位代碼字。用源寄存器尋址模式(AS)選擇常數(shù),硬件自動生成-1、0、1、2、4、8,如表1-3所示。

表1-3 常數(shù)發(fā)生器

常數(shù)發(fā)生器的優(yōu)勢在于:

1)無須特殊指令;

2)對于六個常數(shù),無須代碼字;

3)無須代碼存儲器訪問來檢索常數(shù)。

如果六個常數(shù)中的一個被用作立即源操作數(shù),則匯編程序自動使用常數(shù)發(fā)生器。寄存器CG1和CG2在常數(shù)模式中使用,不能被顯式尋址,它們運行時只能作為數(shù)據(jù)源寄存器。

主站蜘蛛池模板: 磐石市| 独山县| 蓝山县| 新干县| 怀化市| 巴彦淖尔市| 台东市| 乌兰察布市| 枣庄市| 平舆县| 陇川县| 神农架林区| 临沧市| 博乐市| 田阳县| 于田县| 广州市| 雷山县| 桂阳县| 漠河县| 伊吾县| 中方县| 江都市| 竹北市| 南乐县| 科技| 琼结县| 新干县| 海口市| 古丈县| 江永县| 夏河县| 临猗县| 武穴市| 中西区| 连云港市| 桐柏县| 枣阳市| 淮安市| 宜阳县| 临桂县|