TSC87251G1A
7. Instruction Set Summary
This section contains tables that summarize the instruction set. For each instruction there is a short description, its
length in bytes, and its execution time in states (one state time is equal to two system clock cycles). There are two
concurrent processes limiting the effective instruction throughput:
D Instruction Fetch
D Instruction Execution
Table 20 to Table 34 assume code executing from on–chip memory, then the CPU is fetching 16–bit at a time and this
is never limiting the execution speed.
If the code is fetched from external memory, a pre–fetch queue will store instructions ahead of execution to optimize
the memory bandwidth usage when slower instructions are executed. However, the effective speed may be limited
depending on the average size of instructions (for the considered section of the program flow). The maximum average
instruction throughput is provided by Table 14 depending on the external memory configuration (from Page Mode to
Non–Page Mode and the maximum number of wait states). If the average size of instructions is not an integer, the
maximum effective throughput is found by pondering the number of states for the neighbor integer values.
Table 14. Minimum Number of States per Instruction for given Average Sizes
Non–Page Mode (states)
Page Mode
(states)
Average size of
Instructions (bytes)
2 Wait States
0 Wait State
1 Wait State
1
2
3
4
5
1
2
3
4
5
2
4
3
6
4
8
6
9
12
16
20
8
12
15
10
If the average execution time of the considered instructions is larger than the number of states given by Table 14, this
larger value will prevail as the limiting factor. Otherwise, the value from Table 14 must be taken. This is providing
a fair estimation of the execution speed but only the actual code execution can provide the final value.
7.1. Notation for Instruction Operands
Table 15 to Table 19 provide Notation for Instruction Operands.
Table 15. Notation for Direct Addressing
Direct Address
Description
C251
C51
dir8
A direct 8-bit address. This can be a memory address (00h-7Fh) or a SFR address
(80h-FFh). It is a byte (default), word or double word depending on the other operand.
n
n
dir16
A 16-bit memory address (00:0000h-00:FFFFh) used in direct addressing.
n
Table 16. Notation for Immediate Addressing
Immediate
Address
Description
C251
C51
#data
An 8-bit constant that is immediately addressed in an instruction
A 16-bit constant that is immediately addressed in an instruction
n
n
n
n
#data16
#0data16
#1data16
A 32-bit constant that is immediately addressed in an instruction. The upper word is filled
with zeros (#0data16) or ones (#1data16).
#short
A constant, equal to 1, 2, or 4, that is immediately addressed in an instruction.
n
15
Rev. A – September 21, 1998