SX Users Manual Rev. 3.1
4
© 2000 Scenix Semiconductor, Inc. All rights reserved.
www.scenix.com
Contents
2.7
Stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.8
Device Configuration Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Chapter 3
Instruction Set
3.1
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.2
Instruction Operands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.3
Instruction Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.3.1
Logic Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.3.2
Arithmetic and Shift Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.3.3
Bitwise Operation Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.3.4
Data Movement Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.3.5
Program Control Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.3.6
System Control Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.4
Instruction Summary Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.5
Equivalent Assembler Mnemonics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.6
Detailed Instruction Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.6.1
ADD fr,W
Add W to fr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
3.6.2
ADD W,fr
Add fr to W . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
3.6.3
AND fr,W
AND of fr and W into fr . . . . . . . . . . . . . . . . . . . 69
3.6.4
AND W,fr
AND of W and fr into W . . . . . . . . . . . . . . . . . . . 70
3.6.5
AND W,#lit
AND of W and Literal into W . . . . . . . . . . . . . . . 71
3.6.6
BANK addr8
Load Bank Number into FSR(6:4) . . . . . . . . . . . . 72
3.6.7
CALL addr8
Call Subroutine . . . . . . . . . . . . . . . . . . . . . . . . . . 74
3.6.8
CLR fr
Clear fr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
3.6.9
CLR W
Clear W . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
3.6.10
CLR !WDT
Clear Watchdog Timer . . . . . . . . . . . . . . . . . . . . . 78
3.6.11
CLRB fr.bit
Clear Bit in fr . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
3.6.12
DEC fr
Decrement fr . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
3.6.13
DECSZ fr
Decrement fr and Skip if Zero . . . . . . . . . . . . . . . 81
3.6.14
INC fr
Increment fr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
3.6.15
INCSZ fr
Increment fr and Skip if Zero . . . . . . . . . . . . . . . 83
3.6.16
IREAD
Read Word from Instruction Memory . . . . . . . . . 84
3.6.17
JMP addr9
Jump to Address . . . . . . . . . . . . . . . . . . . . . . . . . . 86
3.6.18
MOV fr,W
Move W to fr . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
3.6.19
MOV M,#lit
Move Literal to MODE Register . . . . . . . . . . . . . 88
3.6.20
MOV M,W
Move W to MODE Register . . . . . . . . . . . . . . . . 89
3.6.21
MOV !OPTION,W
Move W to OPTION Register . . . . . . . . . . . . . . . 90
3.6.22
MOV !rx,W
Move Data Between W and Control Register . . . 91
3.6.23
MOV W,fr
Move fr to W . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
3.6.24
MOV W,/fr
Move Complement of fr to W . . . . . . . . . . . . . . . 94
3.6.25
MOV W,fr-W
Move (fr-W) to W . . . . . . . . . . . . . . . . . . . . . . . . 95
3.6.26
MOV W,--fr
Move (fr-1) to W . . . . . . . . . . . . . . . . . . . . . . . . . 96
3.6.27
MOV W,++fr
Move (fr+1) to W . . . . . . . . . . . . . . . . . . . . . . . . . 97
3.6.28
MOV W,<<fr
Rotate fr Left through Carry and Move to W . . . 98
3.6.29
MOV W,>>fr
Rotate fr Right through Carry and Move to W . . 99
3.6.30
MOV W,<>fr
Swap High/Low Nibbles of fr and Move to W . 100
3.6.31
MOV W,#lit
Move Literal to W . . . . . . . . . . . . . . . . . . . . . . . 101