OR3||STI
Parallel OR3 and STI
13-192
Syntax
OR3
src2, src1, dst1
||
STI
src3, dst2
Operation
src1 OR src2
→
dst1
|
src3
→
dst2
Operands
src1 register
(R
n1, 0
≤
n1
≤
7)
src2 indirect
(
disp = 0, 1, IR0, IR1)
dst1 register
(R
n2, 0
≤
n2
≤
7)
src3 register
(R
n3, 0
≤
n3
≤
7)
dst2 indirect
(
disp = 0, 1, IR0, IR1)
This instruction’s operands have been augmented in the following devices:
-
’C31 silicon revision 6.0 or greater
-
’C32 silicon revision 2.0 or greater
src1
register (R
n1, 0
≤
n1
≤
7)
src2
indirect (
disp = 0, 1, IR0, IR1) or any CPU register
dst1
register (R
n2, 0
≤
n2
≤
7)
src3
register (R
n3, 0
≤
n3
≤
7)
dst2
indirect (
disp = 0, 1, IR0, IR1)
Opcode
31
24 23
16
8 7
0
15
1 1
0 1
0
0
src1
src2
dst2
1
dst1
src3
A bitwise-logical OR and an integer store are performed in parallel. All registers
are read at the beginning and loaded at the end of the execute cycle. This
means that if one of the parallel operations (STI) reads from a register and the
operation being performed in parallel (OR3) writes to the same register, then STI
accepts the contents of the register as input before it is modified by the OR3.
If
src2 and dst2 point to the same location, src2 is read before the write to dst2.
Cycles
1