Preliminary Data Sheet U14168EJ2V0DS00
63
μ
PD703100A-33, 703100A-40, 703101A-33, 703102A-33
(4/7)
Execution
Clock
Flags
Mnemonic
Operand
Opcode
Operation
i
r
l
CY
OV
S
Z
SAT
rr r r r 1 1 1 1 1 1 R R R RR
reg1,reg2,reg3
w w w w w 0 1 0 0 0 1 0 0 0 10
GR[reg3] II GR[reg2]
←
GR[reg2]
×
GR[reg1]
1
2
Note 14
2
r r r r r 1 1 1 1 1 1 i i i ii
MULU
imm9,reg2,reg3
ww w w w 0 1 0 0 1 1 1 1 1 10
GR[reg3] II GR[reg2]
←
GR[reg2]
×
zero-
extend(imm9)
Note 13
1
2
Note 14
2
NOP
00 0 0 0 0 0 0 0 0 0 0 0 0 00
Pass at least one clock cycle doing nothing
1
1
1
NOT
reg1,reg2
rr r r r 0 0 0 0 0 1 R R R RR
GR[reg2]
←
NOT(GR[reg1])
1
1
1
0
×
×
01 b b b 1 1 1 1 1 0 R R R RR
bit#3,disp16[reg1]
dd d d d d d d d d d d d d dd
adr
←
GR[reg1]+sign-extend(disp16)
Z flag
←
Not(Load-memory-bit(adr,bit#3))
Store-memory-bit(adr,bit#3,Z flag)
3
Note 3
3
Note 3
3
Note 3
×
rr r r r 1 1 1 1 1 1 R R R RR
NOT1
reg2,[reg1]
00 0 0 0 0 0 0 1 1 1 0 0 0 10
adr
←
GR[reg1]
Z flag
←
Not(Load-memory-bit(adr,reg2))
Store-memory-bit(adr,reg2,Z flag)
3
Note 3
3
Note 3
3
Note 3
×
OR
reg1,reg2
rr r r r 0 0 1 0 0 0 R R R RR
GR[reg2]
←
GR[reg2] OR GR[reg1]
1
1
1
0
×
×
rr r r r 1 1 0 1 0 0 R R R RR
ORI
imm16,reg1,reg2
ii i i i i i i i i i i i i ii
GR[reg2]
←
GR[reg1] OR zero-
extend(imm16)
1
1
1
0
×
×
00 0 0 0 1 1 1 1 0 i i i i iL
list12,imm5
LL L L L L L L L L L 0 0 0 01
Store-memory(sp-4,GR[reg in list12],Word)
sp
←
sp-4
repeat 1 step above until all regs in list12 is
stored sp
←
sp-zero-extend(imm5)
N+1
Note 4
N+1
Note 4
N+1
Note 4
00 0 0 0 1 1 1 1 0 i i i i iL
LL L L L L L L L L L f f 0 11
PREPARE
list12,imm5
,
sp/imm
Note 15
imm16/imm32
Note 16
Store-memory(sp-4,GR[reg in list12],Word)
sp
←
sp-4
repeat 1 step above until all regs in list12 is
stored sp
←
sp-zero-extend(imm5)
ep
←
sp/imm
N+2
Note 4
Note 17
N+2
Note 4
Note 17
N+2
Note 4
Note 17
00 0 0 0 1 1 1 1 1 1 0 0 0 00
RETI
00 0 0 0 0 0 1 0 1 0 0 0 0 00
if PSW.EP=1
then PC
←
EIPC
←
EIPSW
PSW
else if PSW.NP = 1
then
PC
←
FEPC
PSW
←
FEPSW
PC
←
EIPC
PSW
←
EIPSW
else
3
3
3
R
R
R
R
R
rr r r r 1 1 1 1 1 1 R R R RR
reg1,reg2
0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0
GR[reg2]
←
GR[reg2]arithmetically shift right
by GR[reg1]
1
1
1
×
0
×
×
SAR
imm5,reg2
rr r r r 0 1 0 1 0 1 i i i ii
GR[reg2]
←
GR[reg2]arithmetically shift right
by zero-extend(imm5)
1
1
1
×
0
×
×
rr r r r 1 1 1 1 1 0 c c cc c
SASF
cccc,reg2
00 0 0 0 0 1 0 0 0 0 0 0 0 00
if conditions are satisfied
then GR[reg2]
←
(GR[reg2] Logically shift
left by 1)
OR 00000001H
else GR[reg2]
←
(GR[reg2] Logically shift
left by 1)
OR 00000000H
1
1
1