MicroBlaze Processor Reference Guide
15
UG081 (v14.7)
Instructions
=
Equality comparison
!=
Inequality comparison
>
Greater than comparison
>=
Greater than or equal comparison
<
Less than comparison
<=
Less than or equal comparison
+
Arithmetic add
*
Arithmetic multiply
/
Arithmetic divide
>>
x
Bit shift right
x
bits
<<
x
Bit shift left
x
bits
and
Logic AND
or
Logic OR
xor
Logic exclusive OR
op1 if cond else op2
Perform
op1
if condition
cond
is true, else perform
op2
&
Concatenate. E.g. “0000100 & Imm7” is the concatenation of the fixed field “0000100” and a 7 bit
immediate value.
signed
Operation performed on signed integer data type. All arithmetic operations are performed on signed
word operands, unless otherwise specified
unsigned
Operation performed on unsigned integer data type
float
Operation performed on floating point data type
clz(r)
Count leading zeros
Table 2-5:
Instruction Set Nomenclature
(Continued)
Symbol
Description
Table 2-6:
MicroBlaze Instruction Set Summary
Type A
0-5
6-10
11-15 16-20
21-31
Semantics
Type B
0-5
6-10
11-15
16-31
ADD Rd,Ra,Rb
000000
Rd
Ra
Rb
00000000000 Rd := Rb + Ra
RSUB Rd,Ra,Rb
000001
Rd
Ra
Rb
00000000000 Rd := Rb + Ra + 1
ADDC Rd,Ra,Rb
000010
Rd
Ra
Rb
00000000000 Rd := Rb + Ra + C
RSUBC Rd,Ra,Rb
000011
Rd
Ra
Rb
00000000000 Rd := Rb + Ra + C
ADDK Rd,Ra,Rb
000100
Rd
Ra
Rb
00000000000 Rd := Rb + Ra
RSUBK Rd,Ra,Rb
000101
Rd
Ra
Rb
00000000000 Rd := Rb + Ra + 1
ADDKC Rd,Ra,Rb
000110
Rd
Ra
Rb
00000000000 Rd := Rb + Ra + C