Hard Processor System Technical Reference Manual: Agilex™ 5 SoCs

ID 814346
Date 4/01/2024
Public
Document Table of Contents

8.6.3.3. Debug Reset Sequence

A reset of the debug subsystem can be initiated when either software writes to a register bit in the reset manager, or the debugger requests a reset via its JTAG interface to the HPS. A debug reset only impacts the debug subsystem. The rest of the HPS remains operational.

To support a debugger requested reset, the debug reset sequence has been updated to add a hardware-controlled fence and drain step into the flow.

The DBGRSTCMPLT[swdbgrstcmplt] status register bit has been added to indicate when the reset manager has completed the reset assertion/de-assertion process. The bit is set by the reset manager after debug resets have been de-asserted. Either the debugger or software clears this bit to indicate the completing of the initialization process. This bit allows software to poll for status rather than having to build fixed delays into the software routine.

Since a POR or HPS cold reset also resets the debug subsystem, then if a POR or HPS cold request occurs during this flow, the debug reset flow stops and the POR or HPS cold reset is immediately taken. Similarly, since an HPS warm reset does not impact the debug subsystem, then if an HPS warm reset occurs during this flow, the HPS warm reset assertion flow begins immediately while the debug subsystem reset completes in parallel.

The following diagram shows the flow for a debug system reset.

Figure 274. Debug Reset Sequence