Bc0t, Branch on coprocessor 0 true – NEC Network Controller uPD98502 User Manual

Page 445

Advertising
background image

APPENDIX A MIPS III INSTRUCTION SET DETAILS

Preliminary User’s Manual S15543EJ1V0UM

445

BC0T

Branch On Coprocessor 0 True

BC0T

BC

0 1 0 0 0

COPz

0 1 0 0 X X

Note

BCT

0 0 0 0 1

offset

31

26 25

21 20

16 15

0

6

5

5

16

Format:

BC0T offset

Description:

A branch target address is computed from the sum of the address of the instruction in the delay slot and the 16-bit

offset, shifted left two bits and sign-extended. If the contents of CP0's condition signal (CpCond) is true, then the

program branches to the target address, with a delay of one instruction.

Because the condition line is sampled during the previous instruction, there must be at least one instruction

between this instruction and a coprocessor instruction that changes the condition line.

Operation:

32

T-1:

condition

← SR

18

T:

target

← (offset

15

)

14

|| offset || 0

2

T+1: if condition then

PC

← PC + target

endif

64

T-1:

condition

← SR

18

T:

target

← (offset

15

)

46

|| offset || 0

2

T+1: if condition then

PC

← PC + target

endif

Exceptions:

Coprocessor unusable exception

Note See the opcode table below, or A.6 CPU Instruction Opcode Bit Encoding.

Opcode Table:

31

0

30

1

29

0

28

0

27

0

26

0

25

0

24

1

23

0

22

0

21

0

20

0

19

0

18

0

17

0

16

1

0

BC0T

Opcode

Coprocessor

number

BC sub-opcode

Branch condition

Advertising