Advertisement
Guest User

Untitled

a guest
Jun 10th, 2018
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // This is a generated file. Use and modify at your own risk.
  2. ////////////////////////////////////////////////////////////////////////////////
  3. // default_nettype of none prevents implicit wire declaration.
  4. `default_nettype none
  5. `timescale 1 ns / 1 ps
  6. // Top level of the kernel. Do not modify module name, parameters or ports.
  7. module sdx_kernel_wizard_0 #(
  8.   parameter integer C_S_AXI_CONTROL_ADDR_WIDTH = 12 ,
  9.   parameter integer C_S_AXI_CONTROL_DATA_WIDTH = 32 ,
  10.   parameter integer C_M00_AXI_ADDR_WIDTH       = 64 ,
  11.   parameter integer C_M00_AXI_DATA_WIDTH       = 512
  12. )
  13. (
  14.   // System Signals
  15.   input  wire                                    ap_clk               ,
  16.   input  wire                                    ap_rst_n             ,
  17.   //  Note: A minimum subset of AXI4 memory mapped signals are declared.  AXI
  18.   // signals omitted from these interfaces are automatically inferred with the
  19.   // optimal values for Xilinx SDx systems.  This allows Xilinx AXI4 Interconnects
  20.   // within the system to be optimized by removing logic for AXI4 protocol
  21.   // features that are not necessary. When adapting AXI4 masters within the RTL
  22.   // kernel that have signals not declared below, it is suitable to add the
  23.   // signals to the declarations below to connect them to the AXI4 Master.
  24.   //
  25.   // List of ommited signals - effect
  26.   // -------------------------------
  27.   // ID - Transaction ID are used for multithreading and out of order
  28.   // transactions.  This increases complexity. This saves logic and increases Fmax
  29.   // in the system when ommited.
  30.   // SIZE - Default value is log2(data width in bytes). Needed for subsize bursts.
  31.   // This saves logic and increases Fmax in the system when ommited.
  32.   // BURST - Default value (0b01) is incremental.  Wrap and fixed bursts are not
  33.   // recommended. This saves logic and increases Fmax in the system when ommited.
  34.   // LOCK - Not supported in AXI4
  35.   // CACHE - Default value (0b0011) allows modifiable transactions. No benefit to
  36.   // changing this.
  37.   // PROT - Has no effect in SDx systems.
  38.   // QOS - Has no effect in SDx systems.
  39.   // REGION - Has no effect in SDx systems.
  40.   // USER - Has no effect in SDx systems.
  41.   // RESP - Not useful in most SDx systems.
  42.   //
  43.   // AXI4 master interface m00_axi
  44.   output wire                                    m00_axi_awvalid      ,
  45.   input  wire                                    m00_axi_awready      ,
  46.   output wire [C_M00_AXI_ADDR_WIDTH-1:0]         m00_axi_awaddr       ,
  47.   output wire [8-1:0]                            m00_axi_awlen        ,
  48.   output wire                                    m00_axi_wvalid       ,
  49.   input  wire                                    m00_axi_wready       ,
  50.   output wire [C_M00_AXI_DATA_WIDTH-1:0]         m00_axi_wdata        ,
  51.   output wire [C_M00_AXI_DATA_WIDTH/8-1:0]       m00_axi_wstrb        ,
  52.   output wire                                    m00_axi_wlast        ,
  53.   input  wire                                    m00_axi_bvalid       ,
  54.   output wire                                    m00_axi_bready       ,
  55.   output wire                                    m00_axi_arvalid      ,
  56.   input  wire                                    m00_axi_arready      ,
  57.   output wire [C_M00_AXI_ADDR_WIDTH-1:0]         m00_axi_araddr       ,
  58.   output wire [8-1:0]                            m00_axi_arlen        ,
  59.   input  wire                                    m00_axi_rvalid       ,
  60.   output wire                                    m00_axi_rready       ,
  61.   input  wire [C_M00_AXI_DATA_WIDTH-1:0]         m00_axi_rdata        ,
  62.   input  wire                                    m00_axi_rlast        ,
  63.   // AXI4-Lite slave interface
  64.   input  wire                                    s_axi_control_awvalid,
  65.   output wire                                    s_axi_control_awready,
  66.   input  wire [C_S_AXI_CONTROL_ADDR_WIDTH-1:0]   s_axi_control_awaddr ,
  67.   input  wire                                    s_axi_control_wvalid ,
  68.   output wire                                    s_axi_control_wready ,
  69.   input  wire [C_S_AXI_CONTROL_DATA_WIDTH-1:0]   s_axi_control_wdata  ,
  70.   input  wire [C_S_AXI_CONTROL_DATA_WIDTH/8-1:0] s_axi_control_wstrb  ,
  71.   input  wire                                    s_axi_control_arvalid,
  72.   output wire                                    s_axi_control_arready,
  73.   input  wire [C_S_AXI_CONTROL_ADDR_WIDTH-1:0]   s_axi_control_araddr ,
  74.   output wire                                    s_axi_control_rvalid ,
  75.   input  wire                                    s_axi_control_rready ,
  76.   output wire [C_S_AXI_CONTROL_DATA_WIDTH-1:0]   s_axi_control_rdata  ,
  77.   output wire [2-1:0]                            s_axi_control_rresp  ,
  78.   output wire                                    s_axi_control_bvalid ,
  79.   input  wire                                    s_axi_control_bready ,
  80.   output wire [2-1:0]                            s_axi_control_bresp  ,
  81.   output wire                                    interrupt            
  82. );
  83.  
  84. ///////////////////////////////////////////////////////////////////////////////
  85. // Local Parameters
  86. ///////////////////////////////////////////////////////////////////////////////
  87.  
  88. ///////////////////////////////////////////////////////////////////////////////
  89. // Wires and Variables
  90. ///////////////////////////////////////////////////////////////////////////////
  91. (* DONT_TOUCH = "yes" *)
  92. reg                                 areset                         = 1'b0;
  93. wire                                ap_start                      ;
  94. wire                                ap_idle                       ;
  95. wire                                ap_done                       ;
  96. wire [32-1:0]                       scalar00                      ;
  97. wire [64-1:0]                       axi00_ptr0                    ;
  98.  
  99. // Register and invert reset signal.
  100. always @(posedge ap_clk) begin
  101.   areset <= ~ap_rst_n;
  102. end
  103.  
  104. ///////////////////////////////////////////////////////////////////////////////
  105. // Begin control interface RTL.  Modifying not recommended.
  106. ///////////////////////////////////////////////////////////////////////////////
  107.  
  108.  
  109. // AXI4-Lite slave interface
  110. sdx_kernel_wizard_0_control_s_axi #(
  111.   .C_ADDR_WIDTH ( C_S_AXI_CONTROL_ADDR_WIDTH ),
  112.   .C_DATA_WIDTH ( C_S_AXI_CONTROL_DATA_WIDTH )
  113. )
  114. inst_control_s_axi (
  115.   .aclk       ( ap_clk                ),
  116.   .areset     ( areset                ),
  117.   .aclk_en    ( 1'b1                  ),
  118.   .awvalid    ( s_axi_control_awvalid ),
  119.   .awready    ( s_axi_control_awready ),
  120.   .awaddr     ( s_axi_control_awaddr  ),
  121.   .wvalid     ( s_axi_control_wvalid  ),
  122.   .wready     ( s_axi_control_wready  ),
  123.   .wdata      ( s_axi_control_wdata   ),
  124.   .wstrb      ( s_axi_control_wstrb   ),
  125.   .arvalid    ( s_axi_control_arvalid ),
  126.   .arready    ( s_axi_control_arready ),
  127.   .araddr     ( s_axi_control_araddr  ),
  128.   .rvalid     ( s_axi_control_rvalid  ),
  129.   .rready     ( s_axi_control_rready  ),
  130.   .rdata      ( s_axi_control_rdata   ),
  131.   .rresp      ( s_axi_control_rresp   ),
  132.   .bvalid     ( s_axi_control_bvalid  ),
  133.   .bready     ( s_axi_control_bready  ),
  134.   .bresp      ( s_axi_control_bresp   ),
  135.   .interrupt  ( interrupt             ),
  136.   .ap_start   ( ap_start              ),
  137.   .ap_done    ( ap_done               ),
  138.   .ap_idle    ( ap_idle               ),
  139.   .scalar00   ( scalar00              ),
  140.   .axi00_ptr0 ( axi00_ptr0            )
  141. );
  142.  
  143. ///////////////////////////////////////////////////////////////////////////////
  144. // Add kernel logic here.  Modify/remove example code as necessary.
  145. ///////////////////////////////////////////////////////////////////////////////
  146.  
  147. // Example RTL block.  Remove to insert custom logic.
  148. sdx_kernel_wizard_0_example #(
  149.   .C_M00_AXI_ADDR_WIDTH ( C_M00_AXI_ADDR_WIDTH ),
  150.   .C_M00_AXI_DATA_WIDTH ( C_M00_AXI_DATA_WIDTH )
  151. )
  152. inst_example (
  153.   .ap_clk          ( ap_clk          ),
  154.   .ap_rst_n        ( ap_rst_n        ),
  155.   .m00_axi_awvalid ( m00_axi_awvalid ),
  156.   .m00_axi_awready ( m00_axi_awready ),
  157.   .m00_axi_awaddr  ( m00_axi_awaddr  ),
  158.   .m00_axi_awlen   ( m00_axi_awlen   ),
  159.   .m00_axi_wvalid  ( m00_axi_wvalid  ),
  160.   .m00_axi_wready  ( m00_axi_wready  ),
  161.   .m00_axi_wdata   ( m00_axi_wdata   ),
  162.   .m00_axi_wstrb   ( m00_axi_wstrb   ),
  163.   .m00_axi_wlast   ( m00_axi_wlast   ),
  164.   .m00_axi_bvalid  ( m00_axi_bvalid  ),
  165.   .m00_axi_bready  ( m00_axi_bready  ),
  166.   .m00_axi_arvalid ( m00_axi_arvalid ),
  167.   .m00_axi_arready ( m00_axi_arready ),
  168.   .m00_axi_araddr  ( m00_axi_araddr  ),
  169.   .m00_axi_arlen   ( m00_axi_arlen   ),
  170.   .m00_axi_rvalid  ( m00_axi_rvalid  ),
  171.   .m00_axi_rready  ( m00_axi_rready  ),
  172.   .m00_axi_rdata   ( m00_axi_rdata   ),
  173.   .m00_axi_rlast   ( m00_axi_rlast   ),
  174.   .ap_start        ( ap_start        ),
  175.   .ap_done         ( ap_done         ),
  176.   .ap_idle         ( ap_idle         ),
  177.   .scalar00        ( scalar00        ),
  178.   .axi00_ptr0      ( axi00_ptr0      )
  179. );
  180.  
  181. endmodule
  182. `default_nettype wire
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement