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

ID 813754
Date 11/04/2024
Public
Document Table of Contents

6.2.2. Interface Reset Signals

Table 58.  Interface Reset Signalsn = 0 or 1, p0 = port 0, and p1 = port 1
Note: Port 1 is only available in D-Series FPGAs
EP = Endpoint, RP = Root Port, BP = TLP Bypass
Signal Name Direction Port Mode Description
p<n>_subsystem_cold_rst_n Input EP/RP/BP

GTS AXI Streaming IP global reset.

Active low signal. Resets sticky register bits.

Can be implemented as synchronous or asynchronous reset.

p<n>_subsystem_warm_rst_n

Input EP/RP/BP

GTS AXI Streaming IP warm reset.

Active low signal. Does not reset sticky register bits.

Can be implemented as synchronous or asynchronous reset.

p<n>_subsystem_cold_rst_ack_n Output EP/RP/BP

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

Asynchronous handshake signal

p<n>_subsystem_warm_rst_ack_n Output EP/RP/BP

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

Asynchronous handshake signal.

p<n>_axi_st_areset_n Input EP/RP/BP

Used to reset the AXI-Stream datapath interface. Active low reset signal.

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

p<n>_axi_lite_areset_n Input EP/RP/BP

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

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

p<n>_subsystem_rst_req Input EP/RP/BP

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.

Asynchronous handshake signal.

p<n>_subsystem_rst_rdy Output EP/RP/BP

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

Asynchronous handshake signal.

p<n>_initiate_warmrst_req Output EP/RP/BP

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.

Asynchronous handshake signal.

p<n>_initiate_rst_req_rdy Input EP/RP/BP

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

Asynchronous handshake signal.

p0_pin_perst_n_i

p0_pin_perst_n_1_i

p1_pin_perst_n_i

Input EP/RP/BP

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
p<n>_pin_perst_n Output EP/RP/BP This is the PERST# indication for the HIP.
p<n>_reset_status_n Output EP/RP/BP

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.

Synchronous to coreclkout_hip of HIP.

ninit_done Input EP/RP/BP

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 59.  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 60.  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 40. 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 41. 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 42. 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 43. User Reset Sequencer Initiated Warm Reset Entry and Exit Sequence Timing Diagram