
B-12
Detailed Debug Operation
Rev. A
Copyright 2000 by LSI Logic Corporation. All rights reserved.
B.5.5 Scan Chains 1 and 2
The scan chains allow serial access to the core logic and to the
EmbeddedICE hardware for programming purposes. Each scan chain
cell is simple, and each consists of a serial register and a multiplexer.
The scan cells perform three basic functions:
capture
shift
update
For input cells, the capture stage involves copying the value of the
system input to the core into the serial register. During shift, this value is
output serially. The value applied to the core from an input cell is either
the system input or the contents of the parallel register (loads from the
shift register after UPDATE-DR state) under multiplexer control.
For output cells, capture involves placing the value of a core 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.
The TAP controller internally generates all the control signals for the scan
cells.
The current instruction and the state of the TAP state machine determine
the action of the TAP controller.
B.5.5.1 Scan Chain 1
Scan Chain 1 is used to communicate between the debugger and the
ARM7TDMI-S core. It is used to read and write data and to scan
instructions into the pipeline. The SCAN_NTAP instruction can be used
to select Scan Chain 1.
Scan Chain 1 is 33 bits long: 32 bits for the data value and one bit for
the scan cell on the DBGBREAK core input.
The scan chain order from DBGTDI to DBGTDO is the ARM7TDMI-S
data bits (bits 0 to 31) followed by the 33rd bit (the DBGBREAK scan
cell). Bit 33 serves three purposes: