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

ID 813754
Date 8/07/2024
Public
Document Table of Contents

7.2.2. Interface Reset Signals

Table 38.  Interface Reset Signalsn = 0 or 1, p0 = port 0, and p1 = port 1
Note: Port 1 is only available in D-Series FPGAs
Signal Name Direction Type Description
p<n>_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.

p<n>_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.

p<n>_subsystem_cold_rst_ack_n Output

Asynchronous handshake signal

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

p<n>_subsystem_warm_rst_ack_n Output

Asynchronous handshake signal

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

p<n>_axi_st_areset_n Input

The reset signal can be asserted asynchronously, but deassertion must be synchronous after the rising edge of p<n>_axi_st_clk.

AXI-Stream main datapath reset.

Active low reset signal.

Used to reset the AXI-Stream datapath interface.

p<n>_axi_lite_areset_n Input The reset signal can be asserted asynchronously, but deassertion must be synchronous after the rising edge of p<n>_axi_lite_clk.

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

p<n>_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.

p<n>_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.

p<n>_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.

p<n>_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

p0_pin_perst_n_1_i

p1_pin_perst_n_i

Input

Asynchronous

This is an active low input for the PERST# function defined by the PCIe* specification. Connect PERST# to either one of the reset pins

You must assign a weak pull down to this pin in the Quartus® Prime software setting file. Example:

set_instance_assignment -name WEAK_PULL_DOWN ON -to p0_pin_perst_n_i

i_gpio_perst0_n

i_gpio_perst1_n

Input

Asynchronous

Tie to logic high. i_gpio_perst1_n is only available in the Agilex™ 5 D-Series FPGAs.
p<n>_pin_perst_n Output

Asynchronous

This is the PERST# indication for the HIP.
p<n>_reset_status_n Output

Synchronous to coreclkout_hip of HIP

Active low signal. When low, it indicates the HIP is in 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 39.  Signals or Blocks Used for Reset Type
Reset Type Signals/Blocks Under Reset
Cold Reset
  • subsystem_cold_rst_n and subsystem_warm_rst_n are 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 40.  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: Source

Row: Destination

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 deassertion of HIP input signal p<n>_pin_perst_n_i.
  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 p<n>_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 p<n>_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 p<n>_initiate_rst_req_rdy.
  7. The GTS AXI Streaming IP then asserts pld_warm_rst_rdy to HIP.
  8. HIP asserts p<n>_reset_status_n indicating the application logic needs to be in reset.
  9. User reset controller asserts p<n>_subsystem_cold_rst_n, p<n>_subsystem_warm_rst_n, p<n>_axi_st_areset_n, and p<n>_axi_lite_areset_n.
Figure 44. 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 p<n>_initiate_warmrst_req.
  3. The user reset controller then asserts p<n>_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 p<n>_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 p<n>_initiate_rst_req_rdy.
  6. The GTS AXI Streaming IP then asserts pld_warm_rst_rdy to HIP.
  7. HIP asserts p<n>_reset_status_n indicating the application logic needs to be in reset.
  8. The user reset controller asserts p<n>_subsystem_warm_rst_n, p<n>_axi_st_areset_n, and p<n>_axi_lite_areset_n.
Note: The Warm Reset flow is similar to Cold Reset flow, with the exception that p<n>_pin_perst_n and p<n>_subsystem_cold_rst_n are not asserted for warm reset.
Figure 45. 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 p<n>_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 p<n>_subsystem_rst_rdy to user reset controller.
  3. User reset controller asserts p<n>_subsystem_cold_rst_n, p<n>_subsystem_warm_rst_n, p<n>_axi_st_areset_n, and p<n>_axi_lite_areset_n.
Figure 46. 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 p<n>_subsystem_cold_rst_n is not asserted for this flow.

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