Download Print this page

Siemens C16 Series Instruction Set Manual page 125

16-bit cmos single-chip microcontrollers

Advertisement

Instructions executed from the internal RAM require the same minimum time as if being fetched
from the internal ROM plus an instruction-length dependent number of state times, as follows:
For 2-byte instructions:
For 4-byte instructions:
In contrast to the internal ROM program execution, the minimum time T Imin (ext) to process an
external instruction additionally depends on the instruction length. T Imin (ext) is either 1 ALE Cycle
Time for most of the 2-byte instructions, or 2 ALE Cycle Times for most of the 4-byte instructions.
The following formula represents the minimum execution time of instructions fetched from an
external memory via a 16-bit wide data bus:
For 2-byte instructions:
For 4-byte instructions:
Note: For instructions fetched from an external memory via an 8-bit wide data bus, the minimum
number of required ALE Cycle Times is twice the number for a 16-bit wide bus.
Additional State Times
Some operand accesses can extend the execution time of an instruction T In . Since the additional
time T Iadd is mostly caused by internal instruction pipelining, it often will be possible to evade these
timing effects in time-critical program modules by means of a suitable rearrangement of the
corresponding instruction sequences. Simulators and emulators offer a lot of facilities, which
support the user in optimizing his program whenever required.
• Internal ROM operand reads: T Iadd = 2
Both byte and word operand reads always require 2 additional state times.
• Internal RAM operand reads via indirect addressing modes: T Iadd = 0 or 1
Reading a GPR or any other directly addressed operand within the internal RAM space does NOT
cause additional state times. However, reading an indirectly addressed internal RAM operand will
extend the processing time by 1 state time, if the preceding instruction auto-increments or auto-
decrements a GPR as shown in the following example:
I n
: MOV R1 , [R0+]
I n+1
: MOV [R3], [R2]
In this case, the additional time can simply be avoided by putting another suitable instruction before
the instruction I n+1 indirectly reading the internal RAM.
Semiconductor Group
30Mar98@15:00h
T Imin (RAM) = T Imin (ROM) + 4
T Imin (RAM) = T Imin (ROM) + 6
T Imin (ext) = 1
ACT + ( T Imin (ROM) - 2)
*
T Imin (ext) = 2
ACTs + ( T Imin (ROM) - 2)
*
States
*
; auto-increment R0
; if R2 points into the internal RAM space:
; T Iadd = 1
C166 Family Instruction Set
States
*
States
*
States
*
*
State
*
125
Instruction State Times
States
State
*
Version 1.2, 12.97

Hide quick links:

Advertisement

loading