Командные циклы и длина команд микроконтроллеров семейства MSP430

Число тактовых циклов ЦПУ, требуемых для выполнения команды, определяется форматом команды и используемым режимом адресации, и не зависит, собственно, от команды. Понятие количества тактовых циклов относится к MCLK.

Циклы прерывания и сброса

В таблице 3.14 приведено количество циклов ЦПУ для обслуживания прерывания и сброса.

Таблица 3.14. Циклы прерывания и сброса

Действие Кол-во циклов Длина команды
Возврат из прерывания (RETI) 5 1
Получение прерывания 6 -
Сброс WDT 4 -
Сброс (nonRST/NMI) 4 -

Циклы команд формата-II (один операнд) и их длина

В таблице 3.15 приводится длина и необходимое количество циклов ЦПУ для всех адресных режимов команд формата-II.

Таблица 3.15. Количество циклов и длина команд формата-II

Режим
адресации
Действие Длина
команды
Пример
RRA,RRC
SWPB,SXT
PUSH CALL
Rn 1 3 4 1 SWPB R5
@Rn 3 4 4 1 RRC @R9
@Rn+ 3 4 5 1 SWPB @R10+
#N См.прим. 4 5 2 CALL #81H
X(Rn) 4 5 5 2 CALL 2(R7)
EDE 4 5 5 2 PUSH EDE
&EDE 4 5 5 2 SXT &EDE

Примечание: команда формата-II в непосредственном режиме адресации Не следует использовать команды RRA, RRC и SXT с непосредственным режимом в поле получателя. Их использование в непосредственном режиме приведет к выполнению непредсказуемой программной операции.

Циклы команд формата-III (команды перехода) и их длина

Все команды перехода требуют одно слово кода и при выполнении используют два цикла ЦПУ, независимо от того, сделан переход или нет.

Циклы команд формата-I (двойной операнд) и их длина

В таблице 3.16 приводится длина и необходимое количество циклов ЦПУ для всех адресных режимов команд формата-I.

Таблица 3.16. Количество циклов и длина команд формата-I

Режим адресации Кол-во
циклов
Длина
команды
Пример
Src Dst
Rn Rm 1 1 MOV R5,R8
PC 2 1 BR R9
x(Rm) 4 2 ADD R5,3(R6)
EDE 4 2 XOR R8,EDE
&EDE 4 2 MOV R5,&EDE
@Rn Rm 2 1 AND @R4,R5
PC 3 1 BR @R8
x(Rm) 5 2 XOR @R5,8(R6)
EDE 5 2 MOV @R5,EDE
&EDE 5 2 XOR @R5,&EDE
@Rn+ Rm 2 1 ADD @R5+,R6
PC 3 1 BR @R9+
x(Rm) 5 2 XOR @R5,8(R6)
EDE 5 2 MOV @R9+,EDE
&EDE 5 2 XOR @R9+,&EDE
#N Rm 2 2 MOV #20,R9
PC 3 2 BR #2AEh
x(Rm) 5 3 MOV #0300h,0(SP)
EDE 5 3 ADD #33,EDE
&EDE 5 3 ADD #33,&EDE
x(Rn) Rm 3 2 MOV 2(R5),R7
PC 3 2 BR 2(R6)
TONI 6 3 MOV 4(R7),TONI
x(Rm) 6 3 ADD 3(R4),6(R9)
&TONI 6 3 MOV 3(R4),&TONI
EDE Rm 3 2 AND EDE,R6
PC 3 2 BR EDE
TONI 6 3 CMP EDE,TONI
x(Rm) 6 3 MOV EDE,0(SP)
&TONI 6 3 MOV EDE,&TONI
&EDE Rm 3 2 MOV &EDE,R8
PC 3 2 BRA &EDE
TONI 6 3 MOV &EDE,TONI
x(Rm) 6 3 MOV &EDE,0(SP)
&TONI 6 3 MOV &EDE,&TONI

3.4.5 Описание набора команд

Карта команд показана на рис.3.20, а полный набор команд приведен в таблице 3.17.

Рис.3.20. Карта команд ядра

  000 040 080 0С0 100 140 180 1С0 200 240 280 2С0 300 340 380 3С0
0xxx                                
4xxx                                
8xxx                                
1xxx RRC RRC.B SWPB   RRA RRA.B SXT   PUSH PUSH.B CALL   RETI      
14xx                                
18xx                                
1Cxx                                
20xx JNE/JNZ
24xx JEQ/JZ
28xx JNC
2Cxx JC
30xx JN
34xx JGE
38xx JL
3Cxx JMP
4xxx MOV,MOV.B
5xxx ADD,ADD.B
6xxx ADDC,ADDC.B
7xxx SUBC,SUBC.B
8xxx SUB,SUB.B
9xxx CMP,CMP.B
Axxx DADD,DADD.B
Bxxx BIT,BIT.B
Cxxx BIC,BIC.B
Dxxx BIS,BIS.B
Exxx XOR,XOR.B
Fxxx AND,AND.B






© 2008 Электроника для начинающих | Programming V.Lasto | Povered by Nano-CMS | Designer S.Gordi