
Debug Interface
ARM7TDMI Data Sheet
ARM DDI 0029E
8-15
O
Figure 8-5: Input scan cell
For output cells, capture involves placing the value of a core’s output into the serial
register. During shift, this value is serially output as before. The value applied to the
system from an output cell is either the core output, or the contents of the serial
register.
All the control signals for the scan cells are generated internally by the TAP controller.
The action of the TAP controller is determined by the current instruction, and the state
of the TAP state machine. This is described below.
There are three basic modes of operation of the scan chains, INTEST, EXTEST and
SYSTEM, and these are selected by the various TAP controller instructions. In
SYSTEM mode, the scan cells are idle. System data is applied to inputs, and core
outputs are applied to the system. In INTEST mode, the core is internally tested. The
data serially scanned in is applied to the core, and the resulting outputs are captured
in the output cells and scanned out. In EXTEST mode, data is scanned onto the core's
outputs and applied to the external system. System input data is captured in the input
cells and then shifted out.
Note
The scan cells are not fully JTAG compliant in that they do not have an
Update
stage.
Therefore, while data is being moved around the scan chain, the contents of the scan
cell is not isolated from the output. Thus the output from the scan cell to the core or to
the external system could change on every scan clock.
This does not affect ARM7TDMI since its internal state does not change until it is
clocked. However, the rest of the system needs to be aware that every output could
change asynchronously as data is moved around the scan chain. External logic must
ensure that this does not harm the rest of the system.
Shift
Register
Latch
System Data in
SHIFT Clock
Data to Core
Serial Data In
Serial Data Out
CAPTURE
Clock