Debug Interface
ARM7TDMI Data Sheet
ARM DDI 0029E
8-14
O
The currently selected scan chain only changes when a SCAN_N instruction is
executed, or a reset occurs. On reset, scan chain 3 is selected as the active scan
chain.
The number of the currently selected scan chain is reflected on the
SCREG[3:0]
outputs. The TAP controller may be used to drive external scan chains in addition to
those within the ARM7TDMI macrocell. The external scan chain must be assigned a
number and control signals for it can be derived from
SCREG[3:0]
,
IR[3:0]
,
TAPSM[3:0]
,
TCK1
and
TCK2
.
The list of scan chain numbers allocated by ARM are shown in
·
Table 8-2: Scan chain
number allocation
. An external scan chain may take any other number.The serial data
stream to be applied to the external scan chain is made present on
SDINBS
, the serial
data back from the scan chain must be presented to the TAP controller on the
SDOUTBS
input. The scan chain present between
SDINBS
and
SDOUTBS
will be
connected between
TDI
and
TDO
whenever scan chain 3 is selected, or when any of
the unassigned scan chain numbers is selected. If there is more than one external
scan chain, a multiplexor must be built externally to apply the desired scan chain
output to
SDOUTBS
. The multiplexor can be controlled by decoding
SCREG[3:0]
.
8.9.5 Scan chains 0,1 and 2
These allow serial access to the core logic, and to ICEBreaker for programming
purposes. They are described in detail below.
Scan chain 0 and 1
Purpose:
Allows access to the processor core for test and debug.
Length:
Scan chain 0: 105 bits
Scan chain 1: 33 bits
Each scan chain cell is fairly simple, and consists of a serial register and a multiplexer.
The scan cells perform two basic functions,
capture
and
shift
.
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 serial
register, and this is controlled by the multiplexer.
Scan Chain Number
Function
0
Macrocell scan test
1
Debug
2
ICEbreaker programming
3
External boundary scan
4
Reserved
8
Reserved
Table 8-2: Scan chain number allocation