Xilinx MicroBlaze Reference Manual page 14

32-bit soft processor
Hide thumbs Also See for MicroBlaze:
Table of Contents

Advertisement

Table 2-6: MicroBlaze Instruction Set Summary (Cont'd)
Type A
Type B
FCMP.UN Rd,Ra,Rb
010110
FCMP.LT Rd,Ra,Rb
010110
FCMP.EQ Rd,Ra,Rb
010110
FCMP.LE Rd,Ra,Rb
010110
FCMP.GT Rd,Ra,Rb
010110
FCMP.NE Rd,Ra,Rb
010110
FCMP.GE Rd,Ra,Rb
010110
FLT Rd,Ra
010110
FINT Rd,Ra
010110
FSQRT Rd,Ra
010110
MULI Rd,Ra,Imm
011000
BSRLI Rd,Ra,Imm
011001
BSRAI Rd,Ra,Imm
011001
BSLLI Rd,Ra,Imm
011001
TNEAGET Rd,FSLx
011011
TNAPUT Ra,FSLx
011011
TNECAGET Rd,FSLx
011011
TNCAPUT Ra,FSLx
011011
OR Rd,Ra,Rb
100000
PCMPBF Rd,Ra,Rb
100000
MicroBlaze Processor Reference Guide
UG984 (v2016.2) June 8, 2016
UG984 (v2016.1) April 6, 2016
0-5
6-10 11-15 16-20
0-5
6-10 11-15
Rd
Ra
Rb
Rd
Ra
Rb
Rd
Ra
Rb
Rd
Ra
Rb
Rd
Ra
Rb
Rd
Ra
Rb
Rd
Ra
Rb
Rd
Ra
0
Rd
Ra
0
Rd
Ra
0
Rd
Ra
Rd
Ra
00000000000 & Imm5
Rd
Ra
00000010000 & Imm5
Rd
Ra
00000100000 & Imm5
Rd
00000
0N0TAE000000 & FSLx
00000
Ra
1N0TA0000000 & FSLx
Rd
00000
0N1TAE000000 & FSLx
00000
Ra
1N1TA0000000 & FSLx
Rd
Ra
Rb
Rd
Ra
Rb
www.xilinx.com
Chapter 2: MicroBlaze Architecture
21-31
16-31
01000000000 Rd := 1 if (Rb = NaN or Ra = NaN, float
else
Rd := 0
01000010000 Rd := 1 if (Rb < Ra, float
Rd := 0
01000100000 Rd := 1 if (Rb = Ra, float
Rd := 0
01000110000 Rd := 1 if (Rb <= Ra, float
Rd := 0
01001000000 Rd := 1 if (Rb > Ra, float
Rd := 0
01001010000 Rd := 1 if (Rb != Ra, float
Rd := 0
01001100000 Rd := 1 if (Rb >= Ra, float
Rd := 0
01010000000 Rd := float (Ra)
01100000000 Rd := int (Ra)
01110000000 Rd := sqrt (Ra)
Imm
Rd := Ra * s(Imm)
Rd : = 0 & (Ra >> Imm5)
Rd := s(Ra >> Imm5)
Rd := (Ra << Imm5) & 0
Rd := FSLx (data read, blocking if N = 0)
MSR[FSL] := 1 if (FSLx_S_Control = 1)
MSR[C] := not FSLx_S_Exists if N = 1
FSLx := Ra (data write, blocking if N = 0)
MSR[C] := FSLx_M_Full if N = 1
Rd := FSLx (control read, blocking if N =
0)
MSR[FSL] := 1 if (FSLx_S_Control = 0)
MSR[C] := not FSLx_S_Exists if N = 1
FSLx := Ra (control write, blocking if N
= 0)
MSR[C] := FSLx_M_Full if N = 1
00000000000 Rd := Ra or Rb
10000000000 Rd := 1 if (Rb[0:7] = Ra[0:7]) else
Rd := 2 if (Rb[8:15] = Ra[8:15]) else
Rd := 3 if (Rb[16:23] = Ra[16:23]) else
Rd := 4 if (Rb[24:31] = Ra[24:31]) else
Rd := 0
Semantics
1
)
1
) else
1
) else
1
) else
1
) else
1
) else
1
) else
1
1
1
14
Send Feedback

Advertisement

Table of Contents
loading

Table of Contents