XPM_FIFO_AXIL_SV - XPM_FIFO_AXIL_SV - 2026.1 English - Parameterized Macro: AXI Memory Mapped (AXI Lite) FIFO - UG1353

Versal Architecture AI Core Series Libraries Guide (UG1353)

Document ID
UG1353
Release Date
2026-06-23
Version
2026.1 English

Parameterized Macro: AXI Memory Mapped (AXI Lite) FIFO

  • MACRO_GROUP: XPM
  • MACRO_SUBGROUP: XPM_FIFO
Page-1 Sheet.8 Sheet.11 s_axi_awaddr[AXI_ADDR_WIDTH-1:0] S_AXI Sheet.17 Sheet.18 m_axi_awready Injectdbiterror_rdch Sheet.27 Sheet.30 m_axi_wready Injectdbiterror_wdch Sheet.32 Sheet.33 s_axi_bready Injectbiterror_rdch Sheet.83 m_axi_awaddr[AXI_ADDR_WIDTH-1:0] M_AXI Sheet.87 s_axi_awready dbiterr_rdch Sheet.96 Sheet.100 Sheet.114 m_axi_wvalid dbiterr_wdch Sheet.117 m_axi_wlast prog_empty_rdch Sheet.118 s_axi_wready prog_empty_wdch Sheet.119 s_axi_bid[AXI_ID_WIDTH-1:0] rd_data_count_wdch Sheet.120 m_axi_bready prog_full_rdch Sheet.125 Sheet.128 Sheet.129 Sheet.130 Sheet.132 Sheet.136 Sheet.139 s_axi_arvalid Injectbiterror_wdch Sheet.146 Sheet.147 m_axi_arready m_aclk Sheet.162 m_axi_arvalid prog_full_wdch Sheet.163 m_axi_araddr[AXI_ADDR_WIDTH-1:0] rd_data_count_rdch Sheet.167 s_axi_arready sbiterr_rdch Sheet.175 Sheet.176 Sheet.180 Sheet.188 Sheet.191 m_axi_rvalid s_aclk Sheet.194 Sheet.195 m_axi_rlast s_aresetn Sheet.200 s_axi_rvalid sbiterr_wdch Sheet.201 s_axi_rdata[AXI_DATA_WIDTH-1:0] wr_data_count_rdch Sheet.202 s_axi_rid[AXI_ID_WIDTH-1:0] wr_data_count_wdch Sheet.206 Sheet.207 Sheet.208 Sheet.230 XPM_FIFO_AXIF Box XPM_FIFO_AXIF_SV XPM_FIFO_AXIF_SV Sheet.231 X50883-120825 X50883-120825

Introduction

This macro is used to instantiate AXI Memory Mapped (AXI Lite) FIFO.

AXI4 FIFO derives from the XPM_FIFO_SYNC and XPM_FIFO_ASYNC. The AXI interface protocol uses a two-way valid and ready handshake mechanism. The information source uses the valid signal to show when valid data or control information becomes available on the channel. The information destination uses the ready signal to show when it can accept the data.

Timing Diagrams

Figure 1. Timing for Read and Write Operations to the AXI Stream FIFO
Page-1 Sheet.1 Clock.16 Clock.18 Clock.19 Clock.20 Clock.21 Clock.22 Clock.23 Clock.24 Clock.25 Clock.26 Clock.27 Clock.28 Sheet.14 1 to 0 0 to 1 0 to 1.16 1 to 0.29 High.41 0 to 1.31 1 to 0.32 High.33 Start bus grey Sheet.24 Sheet.25 Bus value D0 D0 Bus grey Bus value.38 D1 D1 End bus grey Sheet.30 Sheet.31 Sheet.32 information information Sheet.33 s_axis_tvalid s_axis_tvalid Sheet.34 s_axis_tready s_axis_tready 0 to 1.31 1 to 0.32 High.33 Start bus grey.43 Sheet.39 Sheet.40 Bus value.52 D0 D0 Bus value.54 D1 D1 1 to 0 0 to 1 0 to 1.16 1 to 0.29 High.41 End bus grey.53 Sheet.49 Sheet.50 Sheet.51 information information Sheet.52 m_axis_tvalid m_axis_tvalid Sheet.53 m_axis_tready m_axis_tready Sheet.54 CLK marker CLK marker.3 CLK marker.4 CLK marker.5 CLK marker.6 CLK marker.7 CLK marker.8 CLK marker.9 CLK marker.10 CLK marker.11 CLK marker.12 CLK marker.13 Sheet.67 s_aclk s_aclk Sheet.68 X20499-030818 Sheet.69 Sheet.70 Sheet.71 X20499-061319

In the preceding timing diagram, the information source generates the valid signal to indicate when data becomes available. The destination generates the ready signal to indicate when it can accept the data, and transfer occurs only when both the valid and ready signals are High.

Because AXI4 FIFO derives from XPM_FIFO_SYNC and XPM_FIFO_ASYNC, it shares much of their behavior. The FIFO generates the ready signal based on available space in the FIFO and holds it High to allow writes. The FIFO pulls the ready signal Low only when no FIFO space remains for additional writes. The FIFO generates the valid signal based on FIFO data availability and holds it High to allow reads. The FIFO pulls the valid signal Low only when no data remains to read from the FIFO. The information signals map to the din and dout buses in XPM_FIFO_SYNC and XPM_FIFO_ASYNC. The AXI4 FIFO width comes from concatenating all AXI interface information signals. The information signals include all AXI signals except the valid and ready handshake signals.

AXI4 FIFO operates only in First-Word Fall-Through (FWFT) mode. FWFT provides look-ahead to the next available FIFO word without issuing a read operation. When data becomes available in the FIFO, the first word falls through and appears automatically on the output data bus.

Module Ports

The vivado_interfaces.svh file includes the following module ports for AXI4, AXI4-Stream, and AXI4-Lite interfaces.

Interface Type Ports
vivado_axis_v1_0 TID, TDEST, TDATA, TSTRB, TKEEP, TLAST, TUSER, TVALID, TREADY
vivado_aximm_v1_0 AWID, AWADDR, AWLEN, AWSIZE, AWBURST, AWLOCK, AWCACHE, AWPROT, AWREGION, AWQOS, AWUSER, AWVALID, WID, WDATA, WSTRB, WLAST, WUSER, WVALID, BREADY, ARID, ARADDR, ARLEN, ARSIZE, ARBURST, ARLOCK, ARCACHE, ARPROT, ARREGION, ARQOS, ARUSER, ARVALID, RREADY, AWREADY, WREADY, BID, BRESP, BUSER, BVALID, ARREADY, RID, RDATA, RRESP, RLAST, RUSER, RVALID
vivado_axi4_lite_v1_0 AWADDR, AWPROT, AWVALID, WDATA, WSTRB, WVALID, BREADY, ARADDR, ARPROT, ARVALID, RREADY, AWREADY, WREADY, BRESP, BVALID, ARREADY, RDATA, RRESP, RVALID
Note: The parameter values passed to the interfaces must match the port mapping in the module instantiations.

Port Descriptions

Port Direction Width Domain Sense Handling if Unused Function
M_AXI Interface         Master AXI interface.
S_AXI Interface         Slave AXI interface.
dbiterr_rdch Output 1 m_aclk LEVEL_HIGH DoNotCare Double Bit Error: Indicates that the ECC decoder detected a double-bit error and data in the FIFO core is corrupted.
dbiterr_wdch Output 1 m_aclk LEVEL_HIGH DoNotCare Double Bit Error: Indicates that the ECC decoder detected a double-bit error and data in the FIFO core is corrupted.
prog_empty_rdch Output 1 m_aclk LEVEL_HIGH DoNotCare

Programmable Empty: This signal asserts when the number of words in the Read Data Channel FIFO is less than or equal to the programmable empty threshold value.

It is deasserts when the number of words in the Read Data Channel FIFO exceeds the programmable empty threshold value.

prog_empty_wdch Output 1 m_aclk LEVEL_HIGH DoNotCare

Programmable Empty: This signal asserts when the number of words in the Write Data Channel FIFO is less than or equal to the programmable empty threshold value.

It desserts when the number of words in the Write Data Channel FIFO exceeds the programmable empty threshold value.

prog_full_rdch Output 1 s_aclk LEVEL_HIGH DoNotCare

Programmable Full: This signal asserts when the number of words in the Read Data Channel FIFO is greater than or equal to the programmable full threshold value.

It deasserts when the number of words in the Read Data Channel FIFO is less than the programmable full threshold value.

prog_full_wdch Output 1 s_aclk LEVEL_HIGH DoNotCare

Programmable Full: This signal asserts when the number of words in the Write Data Channel FIFO is greater than or equal to the programmable full threshold value.

It deasserts when the number of words in the Write Data Channel FIFO is less than the programmable full threshold value.

rd_data_count_rdch Output RD_DATA_COUNT_WIDTH_RDCH m_aclk N/A DoNotCare Read Data Count: This bus indicates the number of words available for reading in the Read Data Channel FIFO.
rd_data_count_wdch Output RD_DATA_COUNT_WIDTH_WDCH m_aclk N/A DoNotCare Read Data Count: This bus indicates the number of words available for reading in the Write Data Channel FIFO.
sbiterr_rdch Output 1 m_aclk LEVEL_HIGH DoNotCare Single Bit Error: Indicates that the ECC decoder detected and fixed a single-bit error.
sbiterr_wdch Output 1 m_aclk LEVEL_HIGH DoNotCare Single Bit Error: Indicates that the ECC decoder detected and fixed a single-bit error.
wr_data_count_rdch Output WR_DATA_COUNT_WIDTH_RDCH s_aclk N/A DoNotCare Write Data Count: Indicates the number of words written into the Read Data Channel FIFO.
wr_data_count_wdch Output WR_DATA_COUNT_WIDTH_WDCH s_aclk N/A DoNotCare Write Data Count: Indicates the number of words written into the Write Data Channel FIFO.
injectdbiterr_rdch Input 1 s_aclk LEVEL_HIGH 0 Double Bit Error Injection: Injects a double bit error if the ECC feature is used.
injectdbiterr_wdch Input 1 s_aclk LEVEL_HIGH 0 Double Bit Error Injection: Injects a double bit error if the ECC feature is used.
injectsbiterr_rdch Input 1 s_aclk LEVEL_HIGH 0 Single Bit Error Injection: Injects a single bit error if the ECC feature is used.
injectsbiterr_wdch Input 1 s_aclk LEVEL_HIGH 0 Single Bit Error Injection: Injects a single bit error if the ECC feature is used.
m_aclk Input 1 N/A EDGE_RISING Active Master Interface Clock: All signals on master interface are sampled on the rising edge of this clock.
s_aclk Input 1 N/A EDGE_RISING Active Slave Interface Clock: All signals on slave interface are sampled on the rising edge of this clock.
s_aresetn Input 1 N/A LEVEL_LOW Active Active low asynchronous reset.

Design Entry Method

Instantiation Yes
Inference No
IP and IP Integrator Catalog No

Available Attributes

Attribute Type Allowed Values Default Description
AXI_ADDR_WIDTH DECIMAL 1 to 64 32 Defines the width of the ADDR ports, s_axi_araddr, s_axi_awaddr, m_axi_araddr, and m_axi_awaddr.
AXI_DATA_WIDTH DECIMAL 8 to 1024 32 Defines the width of the DATA ports, s_axi_rdata, s_axi_wdata, m_axi_rdata, and m_axi_wdata. NOTE: The maximum FIFO size (width x depth) is limited to 150-Megabits.
CASCADE_HEIGHT DECIMAL 0 to 64 0

0: No Cascade Height;enable Vivado Synthesis to choose.

1 or more: Vivado Synthesis sets the specified value as Cascade Height.

CDC_SYNC_STAGES DECIMAL 2 to 8 2

Specifies the number of synchronization stages on the CDC path.

Applicable only if CLOCKING_MODE = "independent_clock".

CLOCKING_MODE STRING "common_clock", "independent_clock" "common_clock" Designate whether AXI Memory Mapped FIFO is clocked with a common clock or with independent clocks:
  • "common_clock": Common clocking; clock both write and read domain s_aclk.
  • "independent_clock": Independent clocking; clock write domain with s_aclk and read domain with m_aclk.
ECC_MODE_RDCH STRING "no_ecc", "en_ecc" "no_ecc"
  • "no_ecc": Disables ECC
  • "en_ecc": Enables both ECC encoder and decoder.
ECC_MODE_WDCH STRING "no_ecc", "en_ecc" "no_ecc"
  • "no_ecc": Disables ECC
  • "en_ecc": Enables both ECC encoder and decoder.
EN_RESET_SYNCHRONIZER DECIMAL 0 to 1 1

0: Disable synchronizing stages in the reset path.

1: Enable synchronizing stages in the reset path. Based on CLOCKING_MODE number of synchronizing stages will differ

EN_SIM_ASSERT_ERR STRING String "warning"
  • "warning": Report warning message for FIFO overflow and underflow in simulation.
  • "error": Report error message for FIFO overflow and underflow in simulation.
  • "fatal": Report fatal message for FIFO overflow and underflow in simulation.
FIFO_DEPTH_RACH DECIMAL 16 to 4194304 2048 Defines the AXI Memory Mapped FIFO Write Depth, must be power of two. NOTE: The maximum FIFO size (width x depth) is limited to 150-Megabits.
FIFO_DEPTH_RDCH DECIMAL 16 to 4194304 2048 Defines the AXI Memory Mapped FIFO Write Depth, must be power of two. NOTE: The maximum FIFO size (width x depth) is limited to 150-Megabits.
FIFO_DEPTH_WACH DECIMAL 16 to 4194304 2048 Defines the AXI Memory Mapped FIFO Write Depth, must be power of two. NOTE: The maximum FIFO size (width x depth) is limited to 150-Megabits.
FIFO_DEPTH_WDCH DECIMAL 16 to 4194304 2048 Defines the AXI Memory Mapped FIFO Write Depth, must be power of two. NOTE: The maximum FIFO size (width x depth) is limited to 150-Megabits.
FIFO_DEPTH_WRCH DECIMAL 16 to 4194304 2048 Defines the AXI Memory Mapped FIFO Write Depth, must be power of two. NOTE: The maximum FIFO size (width x depth) is limited to 150-Megabits.
FIFO_MEMORY_TYPE_RACH STRING "auto", "block", "distributed", "ultra" "auto" Designate the FIFO memory primitive (resource type) to use:
  • "auto": Allow Vivado Synthesis to choose
  • "block": Block RAM FIFO
  • "distributed": Distributed RAM FIFO
  • "ultra": URAM FIFO
NOTE: There can be a behavior mismatch if Block RAM or Ultra RAM specific features, like ECC or Asymmetry, are selected with FIFO_MEMORY_TYPE_RACH set to "auto".
FIFO_MEMORY_TYPE_RDCH STRING "auto", "block", "distributed", "ultra" "auto" Designate the FIFO memory primitive (resource type) to use:
  • "auto": Allow Vivado Synthesis to choose
  • "block": Block RAM FIFO
  • "distributed": Distributed RAM FIFO
  • "ultra": URAM FIFO
NOTE: There can be a behavior mismatch if Block RAM or Ultra RAM specific features, like ECC or Asymmetry, are selected with FIFO_MEMORY_TYPE_RDCH set to "auto".
FIFO_MEMORY_TYPE_WACH STRING "auto", "block", "distributed", "ultra" "auto" Designate the FIFO memory primitive (resource type) to use:
  • "auto": Allow Vivado Synthesis to choose
  • "block": Block RAM FIFO
  • "distributed": Distributed RAM FIFO
  • "ultra": URAM FIFO
NOTE: There can be a behavior mismatch if Block RAM or Ultra RAM specific features, like ECC or Asymmetry, are selected with FIFO_MEMORY_TYPE_WACH set to "auto".
FIFO_MEMORY_TYPE_WDCH STRING "auto", "block", "distributed", "ultra" "auto" Designate the FIFO memory primitive (resource type) to use:
  • "auto": Allow Vivado Synthesis to choose
  • "block": Block RAM FIFO
  • "distributed": Distributed RAM FIFO
  • "ultra": URAM FIFO
NOTE: There can be a behavior mismatch if Block RAM or Ultra RAM specific features, like ECC or Asymmetry, are selected with FIFO_MEMORY_TYPE_WDCH set to "auto".
FIFO_MEMORY_TYPE_WRCH STRING "auto", "block", "distributed", "ultra" "auto" Designate the FIFO memory primitive (resource type) to use:
  • "auto": Allow Vivado Synthesis to choose
  • "block": Block RAM FIFO
  • "distributed": Distributed RAM FIFO
  • "ultra": URAM FIFO
NOTE: There can be a behavior mismatch if Block RAM or Ultra RAM specific features, like ECC or Asymmetry, are selected with FIFO_MEMORY_TYPE_WRCH set to "auto".
PROG_EMPTY_THRESH_RDCH DECIMAL 5 to 4194301 10

Specifies the minimum number of read words in the FIFO at or below which prog_empty is asserted.

  • Min_Value = 5
  • Max_Value = FIFO_WRITE_DEPTH - 5
NOTE: The default threshold value is dependent on default FIFO_WRITE_DEPTH value. If you change the FIFO_WRITE_DEPTH value, ensure the threshold value is within the valid range though the programmable flags are not used.
PROG_EMPTY_THRESH_WDCH DECIMAL 5 to 4194301 10

Specifies the minimum number of read words in the FIFO at or below which prog_empty is asserted.

  • Min_Value = 5
  • Max_Value = FIFO_WRITE_DEPTH - 5
NOTE: The default threshold value is dependent on default FIFO_WRITE_DEPTH value. If you change the FIFO_WRITE_DEPTH value, ensure the threshold value is within the valid range though the programmable flags are not used.
PROG_FULL_THRESH_RDCH DECIMAL 5 to 4194301 10

Specifies the maximum number of write words in the FIFO at or above which prog_full is asserted.

  • Min_Value = 5 + CDC_SYNC_STAGES
  • Max_Value = FIFO_WRITE_DEPTH - 5
NOTE: The default threshold value is dependent on default FIFO_WRITE_DEPTH value. If you change the FIFO_WRITE_DEPTH value, ensure the threshold value is within the valid range though the programmable flags are not used.
PROG_FULL_THRESH_WDCH DECIMAL 5 to 4194301 10

Specifies the maximum number of write words in the FIFO at or above which prog_full is asserted.

  • Min_Value = 5 + CDC_SYNC_STAGES
  • Max_Value = FIFO_WRITE_DEPTH - 5
NOTE: The default threshold value is dependent on default FIFO_WRITE_DEPTH value. If you change the FIFO_WRITE_DEPTH value, ensure the threshold value is within the valid range though the programmable flags are not used.
RD_DATA_COUNT_WIDTH_RDCH DECIMAL 1 to 23 1 Specifies the width of rd_data_count_rdch. To reflect the correct value, the width must be log2(FIFO_DEPTH)+1.
RD_DATA_COUNT_WIDTH_WDCH DECIMAL 1 to 23 1 Specifies the width of rd_data_count_wdch. To reflect the correct value, the width must be log2(FIFO_DEPTH)+1.
SIM_ASSERT_CHK DECIMAL 0 to 1 0

0: Disable simulation message reporting. Messages related to potential misuse are not reported.

1: Enable simulation message reporting. Messages related to potential misuse are reported.

USE_ADV_FEATURES_RDCH STRING String "1000"

Enables rd_data_count_rdch, prog_empty_rdch, wr_data_count_rdch, and prog_full_rdch sideband signals.

  • Setting USE_ADV_FEATURES_RDCH[1] to 1 enables prog_full_rdch flag; Default value of this bit is 0.
  • Setting USE_ADV_FEATURES_RDCH[2] to 1 enables wr_data_count_rdch; Default value of this bit is 0.
  • Setting USE_ADV_FEATURES_RDCH[9] to 1 enables prog_empty_rdch flag; Default value of this bit is 0.
  • Setting USE_ADV_FEATURES_RDCH[10] to 1 enables rd_data_count_rdch; Default value of this bit is 0.
USE_ADV_FEATURES_WDCH STRING String "1000"

Enables rd_data_count_wdch, prog_empty_wdch, wr_data_count_wdch, and prog_full_wdch sideband signals.

  • Setting USE_ADV_FEATURES_WDCH[1] to 1 enables prog_full_wdch flag; Default value of this bit is 0
  • Setting USE_ADV_FEATURES_WDCH[2] to 1 enables wr_data_count_wdch; Default value of this bit is 0.
  • Setting USE_ADV_FEATURES_WDCH[9] to 1 enables prog_empty_wdch flag; Default value of this bit is 0.
  • Setting USE_ADV_FEATURES_WDCH[10] to 1 enables rd_data_count_wdch; Default value of this bit is 0.
WR_DATA_COUNT_WIDTH_RDCH DECIMAL 1 to 23 1 Specifies the width of wr_data_count_rdch. To reflect the correct value, the width must be log2(FIFO_DEPTH)+1.
WR_DATA_COUNT_WIDTH_WDCH DECIMAL 1 to 23 1 Specifies the width of wr_data_count_wdch. To reflect the correct value, the width must be log2(FIFO_DEPTH)+1.

System Verilog Instantiation Template

// xpm_fifo_axil_sv 	: In order to incorporate this function into the design,
//    System Verilog    : the following instance declaration needs to be placed
//   instance    		: in the body of the design code.  The instance name
//  declaration  		: (xpm_fifo_axil_sv_inst) and/or the port declarations within the
//     code      		: parenthesis may be changed to properly reference and
//               		: connect this function to the design.  All inputs
//               		: and outputs must be connected.
//  Please reference the appropriate libraries guide for additional information on the XPM modules.

// -------------- Begin Cut here for INTERFACE Include ------- // INCLUDE_TAG
`include "vivado_interfaces.svh" 
// -- INCLUDE_TAG_END ------ End INTERFACE Include ------------

// -------------- Begin Cut here for INTERFACE Template ------- // INTF_TAG 
// Default parameter used by the module are for S_AXI
vivado_axi4_lite_v1_0 #(
    .ADDR_WIDTH(32),
    .DATA_WIDTH(32)
) S_AXI(), M_AXI();
//  -- INTF_TAG_END -------------- End INTERFACE Template ------------------ 

//  <-----Cut code below this line---->
// xpm_fifo_axil_sv: AXI Memory Mapped (AXI Lite) FIFO
// Xilinx Parameterized Macro, version 2026.1

xpm_fifo_axil_sv #(
    .AXI_ADDR_WIDTH(ADDR_WIDTH),          // DECIMAL
    .AXI_DATA_WIDTH(DATA_WIDTH),          // DECIMAL
    .CASCADE_HEIGHT(0),                   // DECIMAL
    .CDC_SYNC_STAGES(2),                  // DECIMAL
    .CLOCKING_MODE("common_clock"),       // String
    .ECC_MODE_RDCH("no_ecc"),             // String
    .ECC_MODE_WDCH("no_ecc"),             // String
    .EN_RESET_SYNCHRONIZER(1),            // DECIMAL; 0=disable synchronizer in the reset path, 1=enable synchronizer in the reset path
    .EN_SIM_ASSERT_ERR("warning"),        // String
    .FIFO_DEPTH_RACH(2048),               // DECIMAL
    .FIFO_DEPTH_RDCH(2048),               // DECIMAL
    .FIFO_DEPTH_WACH(2048),               // DECIMAL
    .FIFO_DEPTH_WDCH(2048),               // DECIMAL
    .FIFO_DEPTH_WRCH(2048),               // DECIMAL
    .FIFO_MEMORY_TYPE_RACH("auto"),      // String
    .FIFO_MEMORY_TYPE_RDCH("auto"),      // String
    .FIFO_MEMORY_TYPE_WACH("auto"),      // String
    .FIFO_MEMORY_TYPE_WDCH("auto"),      // String
    .FIFO_MEMORY_TYPE_WRCH("auto"),      // String
    .PROG_EMPTY_THRESH_RDCH(10),         // DECIMAL
    .PROG_EMPTY_THRESH_WDCH(10),         // DECIMAL
    .PROG_FULL_THRESH_RDCH(10),          // DECIMAL
    .PROG_FULL_THRESH_WDCH(10),          // DECIMAL
    .RD_DATA_COUNT_WIDTH_RDCH(1),        // DECIMAL
    .RD_DATA_COUNT_WIDTH_WDCH(1),        // DECIMAL
    .SIM_ASSERT_CHK(0),                  // DECIMAL; 0=disable simulation messages, 1=enable simulation messages
    .USE_ADV_FEATURES_RDCH("1000"),      // String
    .USE_ADV_FEATURES_WDCH("1000"),      // String
    .WR_DATA_COUNT_WIDTH_RDCH(1),        // DECIMAL
    .WR_DATA_COUNT_WIDTH_WDCH(1)         // DECIMAL
)
xpm_fifo_axil_sv_inst (
    .M_AXI(M_AXI.master),

    .S_AXI(S_AXI.slave),

    .m_aclk(m_aclk),                     // 1-bit input: Master Interface Clock: All signals on master interface are sampled on the rising edge
                                        // of this clock.

    .dbiterr_rdch(dbiterr_rdch),        // 1-bit output: Double Bit Error- Indicates that the ECC decoder detected a double-bit error and data
                                        // in the FIFO core is corrupted.

    .dbiterr_wdch(dbiterr_wdch),        // 1-bit output: Double Bit Error- Indicates that the ECC decoder detected a double-bit error and data
                                        // in the FIFO core is corrupted.

    .prog_empty_rdch(prog_empty_rdch),  // 1-bit output: Programmable Empty- This signal is asserted when the number of words in the Read Data
                                        // Channel FIFO is less than or equal to the programmable empty threshold value. It is de-asserted
                                        // when the number of words in the Read Data Channel FIFO exceeds the programmable empty threshold
                                        // value.

    .prog_empty_wdch(prog_empty_wdch),  // 1-bit output: Programmable Empty- This signal is asserted when the number of words in the Write
                                        // Data Channel FIFO is less than or equal to the programmable empty threshold value. It is
                                        // de-asserted when the number of words in the Write Data Channel FIFO exceeds the programmable empty
                                        // threshold value.

    .prog_full_rdch(prog_full_rdch),    // 1-bit output: Programmable Full: This signal is asserted when the number of words in the Read Data
                                        // Channel FIFO is greater than or equal to the programmable full threshold value. It is de-asserted
                                        // when the number of words in the Read Data Channel FIFO is less than the programmable full threshold
                                        // value.

    .prog_full_wdch(prog_full_wdch),    // 1-bit output: Programmable Full: This signal is asserted when the number of words in the Write Data
                                        // Channel FIFO is greater than or equal to the programmable full threshold value. It is de-asserted
                                        // when the number of words in the Write Data Channel FIFO is less than the programmable full
                                        // threshold value.

    .rd_data_count_rdch(rd_data_count_rdch), // RD_DATA_COUNT_WIDTH_RDCH-bit output: Read Data Count- This bus indicates the number of words
                                             // available for reading in the Read Data Channel FIFO.

    .rd_data_count_wdch(rd_data_count_wdch), // RD_DATA_COUNT_WIDTH_WDCH-bit output: Read Data Count- This bus indicates the number of words
                                             // available for reading in the Write Data Channel FIFO.

    .sbiterr_rdch(sbiterr_rdch),        // 1-bit output: Single Bit Error- Indicates that the ECC decoder detected and fixed a single-bit
                                        // error.

    .sbiterr_wdch(sbiterr_wdch),        // 1-bit output: Single Bit Error- Indicates that the ECC decoder detected and fixed a single-bit
                                        // error.

    .wr_data_count_rdch(wr_data_count_rdch), // WR_DATA_COUNT_WIDTH_RDCH-bit output: Write Data Count: This bus indicates the number of words
                                             // written into the Read Data Channel FIFO.

    .wr_data_count_wdch(wr_data_count_wdch), // WR_DATA_COUNT_WIDTH_WDCH-bit output: Write Data Count: This bus indicates the number of words
                                             // written into the Write Data Channel FIFO.

    .injectdbiterr_rdch(injectdbiterr_rdch), // 1-bit input: Double Bit Error Injection- Injects a double bit error if the ECC feature is used.
    .injectdbiterr_wdch(injectdbiterr_wdch), // 1-bit input: Double Bit Error Injection- Injects a double bit error if the ECC feature is used.
    .injectsbiterr_rdch(injectsbiterr_rdch), // 1-bit input: Single Bit Error Injection- Injects a single bit error if the ECC feature is used.
    .injectsbiterr_wdch(injectsbiterr_wdch), // 1-bit input: Single Bit Error Injection- Injects a single bit error if the ECC feature is used.

    .s_aclk(s_aclk),                     // 1-bit input: Slave Interface Clock: All signals on slave interface are sampled on the rising edge
                                        // of this clock.

    .s_aresetn(s_aresetn)                // 1-bit input: Active low asynchronous reset.
);

// End of xpm_fifo_axil_sv_inst instantiation