GTS AXI Streaming Intel® FPGA IP for PCI Express* User Guide

ID 813754
Date 5/15/2024
Public
Document Table of Contents

6.2.2. Interface Reset Signals

Table 33.  Interface Reset Signals
Signal Name Direction Type Description
p0_subsystem_cold_rst_n Input

Can be implemented as synchronous or asynchronous reset.

GTS AXI Streaming IP global reset.

Resets sticky register bits.

Active low signal.

p0_subsystem_warm_rst_n

Input

Can be implemented as synchronous or asynchronous reset.

GTS AXI Streaming IP warm reset.

Does not reset sticky register bits.

Active low signal.

p0_subsystem_cold_rst_ack_n Output

Asynchronous handshake signal

Indicates that a cold reset action is completed by the GTS AXI Streaming IP.

p0_subsystem_warm_rst_ack_n Output

Asynchronous handshake signal

Indicates that a warm reset action is completed by the GTS AXI Streaming IP.

p0_axi_st_areset_n Input

The reset signal can be asserted asynchronously, but deassertion must be synchronous after the rising edge of p0_axi_st_clk.

AXI-Stream main datapath reset.

Active low reset signal.

Used to reset the AXI-Stream datapath interface.

p0_axi_lite_areset_n Input The reset signal can be asserted asynchronously, but deassertion must be synchronous after the rising edge of p0_axi_lite_clk.

AXI-Lite reset. Active low reset signal. Used to reset the AXI4-Lite Control and Status Register Responder interface.

p0_subsystem_rst_req Input

Asynchronous handshake signal

Reset entry indication from user reset control logic.

The GTS AXI Streaming IP queries the blocks in design upon receiving this request and sends an acknowledgment back when the block is ready for reset entry.

p0_subsystem_rst_rdy Output

Asynchronous handshake signal

Ready signal for the reset entry indication from the GTS AXI Streaming IP to the user reset control logic.

p0_initiate_warmrst_req Output

Asynchronous handshake signal

Warm Reset entry required indication from the IP core to user reset control logic.

The initiator block cannot issue new reset entry request until previous reset sequence (entire reset operation) is completed.

p0_initiate_rst_req_rdy Input

Asynchronous handshake signal

Indicates user reset control logic has accepted initiation request and starts issuing resets.

p0_pin_perst_n_i Input

Asynchronous

This is an active low input and implements the PERST# function defined by the PCIe* specification.

You must assign a 1.8 V LVCMOS I/O Standard to this signal.

Note: For the current Quartus® Prime software release version, use i_gpio_perst0_n to implement the PERST# function. Tie this port to logic high.
i_gpio_perst0_n Input

Asynchronous

This is an active low input to implement the PERST# function. Assign location to a dual-purpose pin in the HVIO bank which functions as PCIe* platform reset pin.
p0_pin_perst_n Output

Asynchronous

This is the PERST output signal from the HIP. It is derived from the p0_pin_perst_n_i input signal.
p0_reset_status_n Output

Synchronous to coreclkout_hip of HIP

Active low signal.

When asserted, this indicates HIP is in reset state.

Continues to stay asserted until i_gpio_perst0_n is deasserted and HIP is out of reset state.

The application logic can use this signal to drive its reset network.

ninit_done Input

Asynchronous

A "1" on this active low signal indicates that the FPGA device is not yet fully configured.

A "0" indicates the device has been configured and is in normal operating mode.

Note: You must implement the user reset sequencer in application user logic and follow the assertion and deassertion sequence for graceful entry and exit for each of the resets (cold, warm, etc).

The following table indicates the signals or blocks used for each type of reset.

Table 34.  Signals or Blocks Used for Reset Type
Reset Type Signals/Blocks Under Reset
Cold Reset
  • subsystem_cold_rst_n
    • subsystem_warm_rst_n is asserted.
  • p0_axi_st_areset_n and p0_axi_lite_areset_n are asserted.
  • HIP undergoes reset.
Warm Reset (e.g., LTSSM Hot reset)
  • subsystem_warm_rst_n is asserted.
  • p0_axi_st_areset_n and p0_axi_lite_areset_n are asserted.
  • HIP undergoes reset too.
The expected reset isolation requirements for reset domain crossings are shown in the following table:
Table 35.  Reset Isolation Requirement for Reset Domain Crossings
  • No: No reset isolation required for Column->Row Reset Domain Crossing
  • Yes: Reset isolation required for Column->Row Reset Domain Crossing
  • N/A: Not applicable since same Reset Domain Crossing
Column:Src Row:Dest Cold Reset HIP Reset Warm Reset AXI-Stream Reset AXI-Lite Reset
Cold Reset N/A No Yes No No
HIP Reset No N/A No No No
Warm Reset No No N/A No No
AXI-Stream Reset No No No N/A No
AXI-Lite Reset No No No No N/A
Note: In endpoint mode, the warm reset can be asserted without cold reset in scenarios such as LTSSM hot reset.

Cold Reset Entry and Exit Sequence

Following is the Cold Reset entry.
  1. Cold Reset is initiated by the assertion of i_gpio_perst0_n.
  2. HIP asserts pld_link_reset_req to the GTS AXI Streaming IP.
  3. The GTS AXI Streaming IP notifies the user reset controller by asserting p0_initiate_warmrst_req.
  4. The user reset controller asserts p0_subsystem_rst_req.
  5. The GTS AXI Streaming IP sequences its internal blocks for reset entry. When the internal blocks are ready for reset, the GTS AXI Streaming IP asserts p0_subsystem_rst_rdy to the user reset controller.
  6. The user reset controller acknowledges to the GTS AXI Streaming IP that it is ready for reset by asserting p0_initiate_rst_req_rdy.
  7. The GTS AXI Streaming IP then asserts pld_warm_rst_rdy to HIP.
  8. HIP asserts p0_reset_status_n indicating the application logic needs to be in reset.
  9. User reset controller asserts p0_subsystem_cold_rst_n, p0_subsystem_warm_rst_n, p0_axi_st_areset_n, and p0_axi_lite_areset_n.
Figure 37. Cold Reset Entry and Exit Sequence Timing Diagram

Warm Reset Entry and Exit Sequence

Warm Reset is initiated by the assertion of a HIP event, for example, hot reset. Following is the Warm Reset entry sequence.
  1. HIP asserts pld_link_reset_req to the GTS AXI Streaming IP.
  2. The GTS AXI Streaming IP notifies the user reset controller by asserting p0_initiate_warmrst_req.
  3. The user reset controller then asserts p0_subsystem_rst_req.
  4. The GTS AXI Streaming IP sequences its internal blocks for reset entry. When the internal blocks are ready for reset, the GTS AXI Streaming IP asserts p0_subsystem_rst_rdy to the user reset controller.
  5. The user reset controller acknowledges to the subsystem that it is ready for reset by asserting p0_initiate_rst_req_rdy.
  6. The GTS AXI Streaming IP then asserts pld_warm_rst_rdy to HIP.
  7. HIP asserts p0_reset_status_n indicating the application logic needs to be in reset.
  8. The user reset controller asserts p0_subsystem_warm_rst_n, p0_axi_st_areset_n, andp0_axi_lite_areset_n.
Note: The Warm Reset flow is similar to Cold Reset flow, with the exception that i_gpio_perst0_n and p0_subsystem_cold_rst_n are not asserted for warm reset.
Figure 38. Warm Reset Entry and Exit Sequence Timing Diagram

User Reset Sequencer Initiated Cold Reset Entry and Exit Sequence

  1. Cold Reset is initiated by the user reset controller by the assertion of the p0_subsystem_rst_req.
  2. The GTS AXI Streaming IP sequences its internal blocks for reset entry. When the internal blocks are ready for reset, the GTS AXI Streaming IP asserts p0_subsystem_rst_rdy to user reset controller.
  3. User reset controller asserts p0_subsystem_cold_rst_n, p0_subsystem_warm_rst_n, p0_axi_st_areset_n, and p0_axi_lite_areset_n.
Figure 39. User Reset Sequencer Initiated Cold Reset Entry and Exit Sequence Timing Diagram

User Reset Sequencer Initiated Warm Reset Entry and Exit Sequence

User reset controller triggered Warm Reset flow is the same as the user reset controller triggered Cold Reset flow, with the exception that the p0_subsystem_cold_rst_n is not asserted for this flow.

Figure 40. User Reset Sequencer Initiated Warm Reset Entry and Exit Sequence Timing Diagram