Revision 1.6 Page 73 of 104
nRF9E5 Product Specification
Table 66. nRF9E5 Instruction Set, Branching Instructions.
Table 67. nRF9E5 Instruction Set, Miscellaneous Instructions.
21.4 Instruction timing
Instruction cycles in the nRF9E5 are four clock cycles in length, as opposed to twelve clock cycles per
instruction cycle in the standard 8051. This translates to a 3X improvement in execution time for most
instructions. However, some instructions require a different number of instruction cycles on the nRF9E5
than they do on the standard 8051. In the standard 8051, all instructions except for MUL and DIV take one
or two instruction cycles to complete. In the nRF9E5 architecture, instructions can take between one and
five instruction cycles to complete. For example, in the standard 8051, the instructions MOVX A, @DPTR
and MOV direct, each take two instruction cycles (twenty-four clock cycles) to execute. In the nRF9E5
architecture, MOVX A, @DPTR takes two instruction cycles (eight clock cycles) and MOV direct, direct
takes three instruction cycles (twelve clock cycles). Both instructions execute faster on the nRF9E5 than
they do on the standard 8051, but require different numbers of clock cycles.
For timing of real time events, use the numbers of instruction cycles from Table 62. to Table 67. to calculate
the timing of software loops. The bytes column of these tables indicate the number of memory accesses
(bytes) needed to execute the instruction. In most cases, the number of bytes is equal to the number of
instruction cycles required to complete the instruction. However, as indicated in Table 62., there are some
instructions (for example, DIV and MUL) that require a greater number of instruction cycles than memory
accesses. By default, the nRF9E5 timer/counters run at twelve clock cycles per increment so that timer
based events have the same timing as with the standard 8051. The timers can be configured to run at four
clock cycles per increment to take advantage of the higher speed of the nRF9E5.
JNB bit, rel Jump on direct bit = 0 3 4 30
JBC bit, rel Jump on direct bit = 1 and clear 3 4 10
JMP @A+DPTR Jump indirect relative DPTR 1 3 73
JZ rel Jump on accumulator = 0 2 3 60
JNZ rel Jump on accumulator /= 0 2 3 70
CJNE A, direct, rel Compare A, direct JNE relative 3 4 B5
CJNE A, #d, rel Compare A, immediate JNE relative 3 4 B4
CJNE Rn, #d, rel Compare reg, immediate JNE relative 3 4 B8–BF
CJNE @Ri, #d, rel Compare ind, immediate JNE relative 3 4 B6–B7
DJNZ Rn, rel Decrement register, JNZ relative 2 3 D8–DF
DJNZ direct, rel Decrement direct byte, JNZ relative 3 4 D5
All mnemonics are copyright © Intel Corporation 1980.
Miscellaneous Instructions
Mnemonic Description Byte Instr. Cycles Hex Code
NOP No operation 1 1 00
There is an additional reserved opcode (A5) that also acts as a NOP.
All mnemonics are copyright © Intel Corporation 1980.
Branching Instructions
Mnemonic Description Byte Instr.
Cycles Hex Code