User Manual
BCM1250/BCM1125/BCM1125H
10/21/02
B r o a d c o m C o r p o r a t i o n
Document
1250_1125-UM100CB-R
Section 4: System Control and Debug Unit
Page
41
S e c t i o n 4 : S y s t e m C o n t r o l a n d D e b u g U n i t
I
NTRODUCTION
The System Control and Debug unit (SCD) includes all the system control functions, interrupt mappers, system
level performance monitoring, and debugging functions.
S
YSTEM
C
ONTROL
The system controller is used to bring the part out of reset. It holds the reset-time configuration options and
contains the extended JTAG interface that allows external control and monitoring of the system.
The JTAG interface is described in detail in
Section: “TAP Controller” on page 422
. The basic scan chain has
been extended to allow an external debugger access to a selection of internal state both in the CPUs and in
the system. The JTAG interface can access system debug and performance monitoring features such as the
performance counters and the ZBbus trace logic. No software support on the target system is required to run
this debugging interface.
System Reset is controlled by this section of the SCD. The external COLDRES_L pin must be asserted at
system power-up and can be asserted later to cause a cold reset of the system. The RESET_L pin can be used
to cause a warm reset of the system. The SCD generates all the required internal reset pulses and timing and
drives the external reset output RESETOUT_L.
There are two registers associated with the system controller. One is the
system_revision
register which
identifies the part and gives the chip revision number. The second is the system configuration register
system_cfg
which reports the states of the reset time configuration options and allows resetting of various
sections of the system. The
system_cfg
register is accessible both from the system and from the JTAG port.
A CPU can cause a system reset by setting the system_reset bit of the
system_cfg
register. This will behave
the same as the COLDRES_L pin of the part being asserted (except the PLL is not restarted), and is the
standard way for software to cause a full restart. The restart will clear the system_reset bit. The sb_softres bit
is identical except the
system_cfg
register bits are not restored to their defaults (note that this bit does not self
clear). Software may use the other bits of the register to reset an individual CPU or signal an external reset.
To prevent lockup, the CPU 0 reset bit automatically clears. JTAG access to the register may also manipulate
the reset bits, in this case they do not automatically clear so the JTAG probe has full control of the resets. The
JTAG probe can also reset individual ZBbus agents. While reset is asserted the agent is isolated from the
system, in this state any access to the agent will hang.
The lower bits of the
system_cfg
register reflect the state that was latched from the generic bus IO_AD pins
at reset time. These are described in
. Some of these are used to configure device
pin options, others are free for interpretation by system software (for example the board revision could be read
in this way).
Many bits of the
system_cfg
port are only writable from the JTAG port. They provide access to test features
and are reserved for use by Broadcom. They must be left at zero for normal operation of the part.