data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv
 line:159: before: "*"
1: b"%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:114: Can't find definition of 'tdata' in dotted variable: 'eth_tx.tdata'\n  assign eth_tx_tdata  = eth_tx.tdata;\n                                ^~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:115: Can't find definition of 'tuser' in dotted variable: 'eth_tx.tuser'\n  assign eth_tx_tuser  = eth_tx.tuser;\n                                ^~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:116: Can't find definition of 'tlast' in dotted variable: 'eth_tx.tlast'\n  assign eth_tx_tlast  = eth_tx.tlast;\n                                ^~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:117: Can't find definition of 'tvalid' in dotted variable: 'eth_tx.tvalid'\n  assign eth_tx_tvalid = eth_tx.tvalid;\n                                ^~~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:118: Can't find definition of 'tready' in dotted variable: 'eth_tx.tready'\n  assign eth_tx.tready = eth_tx_tready;\n                ^~~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:120: Can't find definition of 'tdata' in dotted variable: 'eth_rx.tdata'\n  assign eth_rx.tdata  = eth_rx_tdata;\n                ^~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:121: Can't find definition of 'tuser' in dotted variable: 'eth_rx.tuser'\n  assign eth_rx.tuser  = eth_rx_tuser;\n                ^~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:122: Can't find definition of 'tlast' in dotted variable: 'eth_rx.tlast'\n  assign eth_rx.tlast  = eth_rx_tlast;\n                ^~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:123: Can't find definition of 'tvalid' in dotted variable: 'eth_rx.tvalid'\n  assign eth_rx.tvalid = eth_rx_tvalid;\n                ^~~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:124: Can't find definition of 'tready' in dotted variable: 'eth_rx.tready'\n  assign eth_rx_tready = eth_rx.tready;\n                                ^~~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:126: Can't find definition of 'tdata' in dotted variable: 'e2v.tdata'\n  assign e2v_tdata     = e2v.tdata;\n                             ^~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:127: Can't find definition of 'tlast' in dotted variable: 'e2v.tlast'\n  assign e2v_tlast     = e2v.tlast;\n                             ^~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:128: Can't find definition of 'tvalid' in dotted variable: 'e2v.tvalid'\n  assign e2v_tvalid    = e2v.tvalid;\n                             ^~~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:129: Can't find definition of 'tready' in dotted variable: 'e2v.tready'\n  assign e2v.tready    = e2v_tready;\n             ^~~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:131: Can't find definition of 'tdata' in dotted variable: 'v2e.tdata'\n  assign v2e.tdata     = v2e_tdata;\n             ^~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:132: Can't find definition of 'tlast' in dotted variable: 'v2e.tlast'\n  assign v2e.tlast     = v2e_tlast;\n             ^~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:133: Can't find definition of 'tvalid' in dotted variable: 'v2e.tvalid'\n  assign v2e.tvalid    = v2e_tvalid;\n             ^~~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:134: Can't find definition of 'tready' in dotted variable: 'v2e.tready'\n  assign v2e_tready    = v2e.tready;\n                             ^~~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:136: Can't find definition of 'tdata' in dotted variable: 'e2c.tdata'\n  assign e2c_tdata     = e2c.tdata;\n                             ^~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:137: Can't find definition of 'tuser' in dotted variable: 'e2c.tuser'\n  assign e2c_tuser     = e2c.tuser;\n                             ^~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:138: Can't find definition of 'tlast' in dotted variable: 'e2c.tlast'\n  assign e2c_tlast     = e2c.tlast;\n                             ^~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:139: Can't find definition of 'tvalid' in dotted variable: 'e2c.tvalid'\n  assign e2c_tvalid    = e2c.tvalid;\n                             ^~~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:140: Can't find definition of 'tready' in dotted variable: 'e2c.tready'\n  assign e2c.tready    = e2c_tready;\n             ^~~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:142: Can't find definition of 'tdata' in dotted variable: 'c2e.tdata'\n  assign c2e.tdata     = c2e_tdata;\n             ^~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:143: Can't find definition of 'tuser' in dotted variable: 'c2e.tuser'\n  assign c2e.tuser     = c2e_tuser;\n             ^~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:144: Can't find definition of 'tlast' in dotted variable: 'c2e.tlast'\n  assign c2e.tlast     = c2e_tlast;\n             ^~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:145: Can't find definition of 'tvalid' in dotted variable: 'c2e.tvalid'\n  assign c2e.tvalid    = c2e_tvalid;\n             ^~~~~~\n%Error: data/full_repos/permissive/214858095/FPGA_Exploration/spartan6/B205mini/ISE_Project/lib/rfnoc/xport_sv/eth_interface_tb/eth_ifc_synth_test.sv:146: Can't find definition of 'tready' in dotted variable: 'c2e.tready'\n  assign c2e_tready    = c2e.tready;\n                             ^~~~~~\n%Error: Exiting due to 28 error(s)\n"
module eth_ifc_synth_test #(
  parameter [15:0] PROTOVER    = {8'd1, 8'd0},
  parameter        MTU         = 10,
  parameter        NODE_INST   = 0,
  parameter        RT_TBL_SIZE = 6,
  parameter        REG_AWIDTH  = 14,
  parameter        BASE        = 0,
  parameter        EWIDTH      = 512,
  parameter        CWIDTH      = 64,
  parameter        VWIDTH      = 128
) (
  input logic        bus_clk,
  input logic        bus_rst,
  input logic [15:0] device_id,


  input logic                  reg_wr_req,
  input logic [REG_AWIDTH-1:0] reg_wr_addr,
  input logic [31:0]           reg_wr_data,


  input  logic                  reg_rd_req,
  input  logic [REG_AWIDTH-1:0] reg_rd_addr,
  output logic                  reg_rd_resp,
  output logic     [31:0]       reg_rd_data,


  output logic [47:0] my_mac,
  output logic [31:0] my_ip,
  output logic [15:0] my_udp_chdr_port,


  output logic [EWIDTH-1:0] eth_tx_tdata,
  output logic [$clog2(EWIDTH/8):0] eth_tx_tuser,
  output logic       eth_tx_tlast,
  output logic       eth_tx_tvalid,
  input  logic       eth_tx_tready,
  input  logic [EWIDTH-1:0] eth_rx_tdata,
  input  logic [$clog2(EWIDTH/8):0] eth_rx_tuser,
  input  logic       eth_rx_tlast,
  input  logic       eth_rx_tvalid,
  output logic       eth_rx_tready,


  output logic [VWIDTH-1:0] e2v_tdata,
  output logic       e2v_tlast,
  output logic       e2v_tvalid,
  input  logic       e2v_tready,
  input  logic [VWIDTH-1:0] v2e_tdata,
  input  logic       v2e_tlast,
  input  logic       v2e_tvalid,
  output logic       v2e_tready,


  output logic [CWIDTH-1:0] e2c_tdata,
  output logic [$clog2(CWIDTH/8):0] e2c_tuser,
  output logic       e2c_tlast,
  output logic       e2c_tvalid,
  input  logic       e2c_tready,
  input  logic [CWIDTH-1:0] c2e_tdata,
  input  logic [$clog2(CWIDTH/8):0] c2e_tuser,
  input  logic       c2e_tlast,
  input  logic       c2e_tvalid,
  output logic       c2e_tready

 );

  localparam MAX_PACKET_BYTES = 2**16;
  localparam ENET_W=EWIDTH;
  localparam ENET_USER_W=$clog2(EWIDTH/8)+1;
  localparam CHDR_W=VWIDTH;
  localparam CHDR_USER_W=$clog2(VWIDTH/8)+1;
  localparam CPU_W=CWIDTH;
  localparam CPU_USER_W=$clog2(CWIDTH/8)+1;

  AxiStreamIf #(.DATA_WIDTH(ENET_W),.USER_WIDTH(ENET_USER_W),.TKEEP(0),
                .MAX_PACKET_BYTES(MAX_PACKET_BYTES))
    eth_tx (bus_clk, bus_reset);
  AxiStreamIf #(.DATA_WIDTH(ENET_W),.USER_WIDTH(ENET_USER_W),.TKEEP(0),
                .MAX_PACKET_BYTES(MAX_PACKET_BYTES))
    eth_rx (bus_clk, bus_reset);

  AxiStreamIf #(.DATA_WIDTH(CHDR_W),.USER_WIDTH(CHDR_USER_W),.TKEEP(0),.TUSER(0))
    v2e    (bus_clk, bus_reset);
  AxiStreamIf #(.DATA_WIDTH(CHDR_W),.USER_WIDTH(CHDR_USER_W),.TKEEP(0),.TUSER(0))
    e2v    (bus_clk, bus_reset);

  AxiStreamIf #(.DATA_WIDTH(CPU_W),.USER_WIDTH(CPU_USER_W),.TKEEP(0))
    c2e    (bus_clk, bus_reset);
  AxiStreamIf #(.DATA_WIDTH(CPU_W),.USER_WIDTH(CPU_USER_W),.TKEEP(0))
    e2c    (bus_clk, bus_reset);

  assign eth_tx_tdata  = eth_tx.tdata;
  assign eth_tx_tuser  = eth_tx.tuser;
  assign eth_tx_tlast  = eth_tx.tlast;
  assign eth_tx_tvalid = eth_tx.tvalid;
  assign eth_tx.tready = eth_tx_tready;

  assign eth_rx.tdata  = eth_rx_tdata;
  assign eth_rx.tuser  = eth_rx_tuser;
  assign eth_rx.tlast  = eth_rx_tlast;
  assign eth_rx.tvalid = eth_rx_tvalid;
  assign eth_rx_tready = eth_rx.tready;

  assign e2v_tdata     = e2v.tdata;
  assign e2v_tlast     = e2v.tlast;
  assign e2v_tvalid    = e2v.tvalid;
  assign e2v.tready    = e2v_tready;

  assign v2e.tdata     = v2e_tdata;
  assign v2e.tlast     = v2e_tlast;
  assign v2e.tvalid    = v2e_tvalid;
  assign v2e_tready    = v2e.tready;

  assign e2c_tdata     = e2c.tdata;
  assign e2c_tuser     = e2c.tuser;
  assign e2c_tlast     = e2c.tlast;
  assign e2c_tvalid    = e2c.tvalid;
  assign e2c.tready    = e2c_tready;

  assign c2e.tdata     = c2e_tdata;
  assign c2e.tuser     = c2e_tuser;
  assign c2e.tlast     = c2e_tlast;
  assign c2e.tvalid    = c2e_tvalid;
  assign c2e_tready    = c2e.tready;

  eth_ipv4_interface #(
   .PROTOVER(PROTOVER), .MTU(MTU), .NODE_INST(NODE_INST),
   .REG_AWIDTH(REG_AWIDTH), .RT_TBL_SIZE(RT_TBL_SIZE),
   .BASE(BASE),
   .DROP_UNKNOWN_MAC(0),
   .DROP_MIN_PACKET(0),
   .PREAMBLE_BYTES(0),
   .ADD_SOF(0),
   .SYNC(0),
   .ENET_W(EWIDTH),.CPU_W(CWIDTH),.CHDR_W(VWIDTH)
  ) eth_interface (
   .* );

endmodule
module eth_ifc_synth_test #(
  parameter [15:0] PROTOVER    = {8'd1, 8'd0},
  parameter        MTU         = 10,
  parameter        NODE_INST   = 0,
  parameter        RT_TBL_SIZE = 6,
  parameter        REG_AWIDTH  = 14,
  parameter        BASE        = 0,
  parameter        EWIDTH      = 512,
  parameter        CWIDTH      = 64,
  parameter        VWIDTH      = 128
) (
  input logic        bus_clk,
  input logic        bus_rst,
  input logic [15:0] device_id,


  input logic                  reg_wr_req,
  input logic [REG_AWIDTH-1:0] reg_wr_addr,
  input logic [31:0]           reg_wr_data,


  input  logic                  reg_rd_req,
  input  logic [REG_AWIDTH-1:0] reg_rd_addr,
  output logic                  reg_rd_resp,
  output logic     [31:0]       reg_rd_data,


  output logic [47:0] my_mac,
  output logic [31:0] my_ip,
  output logic [15:0] my_udp_chdr_port,


  output logic [EWIDTH-1:0] eth_tx_tdata,
  output logic [$clog2(EWIDTH/8):0] eth_tx_tuser,
  output logic       eth_tx_tlast,
  output logic       eth_tx_tvalid,
  input  logic       eth_tx_tready,
  input  logic [EWIDTH-1:0] eth_rx_tdata,
  input  logic [$clog2(EWIDTH/8):0] eth_rx_tuser,
  input  logic       eth_rx_tlast,
  input  logic       eth_rx_tvalid,
  output logic       eth_rx_tready,


  output logic [VWIDTH-1:0] e2v_tdata,
  output logic       e2v_tlast,
  output logic       e2v_tvalid,
  input  logic       e2v_tready,
  input  logic [VWIDTH-1:0] v2e_tdata,
  input  logic       v2e_tlast,
  input  logic       v2e_tvalid,
  output logic       v2e_tready,


  output logic [CWIDTH-1:0] e2c_tdata,
  output logic [$clog2(CWIDTH/8):0] e2c_tuser,
  output logic       e2c_tlast,
  output logic       e2c_tvalid,
  input  logic       e2c_tready,
  input  logic [CWIDTH-1:0] c2e_tdata,
  input  logic [$clog2(CWIDTH/8):0] c2e_tuser,
  input  logic       c2e_tlast,
  input  logic       c2e_tvalid,
  output logic       c2e_tready

 );


  localparam MAX_PACKET_BYTES = 2**16;
  localparam ENET_W=EWIDTH;
  localparam ENET_USER_W=$clog2(EWIDTH/8)+1;
  localparam CHDR_W=VWIDTH;
  localparam CHDR_USER_W=$clog2(VWIDTH/8)+1;
  localparam CPU_W=CWIDTH;
  localparam CPU_USER_W=$clog2(CWIDTH/8)+1;

  AxiStreamIf #(.DATA_WIDTH(ENET_W),.USER_WIDTH(ENET_USER_W),.TKEEP(0),
                .MAX_PACKET_BYTES(MAX_PACKET_BYTES))
    eth_tx (bus_clk, bus_reset);
  AxiStreamIf #(.DATA_WIDTH(ENET_W),.USER_WIDTH(ENET_USER_W),.TKEEP(0),
                .MAX_PACKET_BYTES(MAX_PACKET_BYTES))
    eth_rx (bus_clk, bus_reset);

  AxiStreamIf #(.DATA_WIDTH(CHDR_W),.USER_WIDTH(CHDR_USER_W),.TKEEP(0),.TUSER(0))
    v2e    (bus_clk, bus_reset);
  AxiStreamIf #(.DATA_WIDTH(CHDR_W),.USER_WIDTH(CHDR_USER_W),.TKEEP(0),.TUSER(0))
    e2v    (bus_clk, bus_reset);

  AxiStreamIf #(.DATA_WIDTH(CPU_W),.USER_WIDTH(CPU_USER_W),.TKEEP(0))
    c2e    (bus_clk, bus_reset);
  AxiStreamIf #(.DATA_WIDTH(CPU_W),.USER_WIDTH(CPU_USER_W),.TKEEP(0))
    e2c    (bus_clk, bus_reset);

  assign eth_tx_tdata  = eth_tx.tdata;
  assign eth_tx_tuser  = eth_tx.tuser;
  assign eth_tx_tlast  = eth_tx.tlast;
  assign eth_tx_tvalid = eth_tx.tvalid;
  assign eth_tx.tready = eth_tx_tready;

  assign eth_rx.tdata  = eth_rx_tdata;
  assign eth_rx.tuser  = eth_rx_tuser;
  assign eth_rx.tlast  = eth_rx_tlast;
  assign eth_rx.tvalid = eth_rx_tvalid;
  assign eth_rx_tready = eth_rx.tready;

  assign e2v_tdata     = e2v.tdata;
  assign e2v_tlast     = e2v.tlast;
  assign e2v_tvalid    = e2v.tvalid;
  assign e2v.tready    = e2v_tready;

  assign v2e.tdata     = v2e_tdata;
  assign v2e.tlast     = v2e_tlast;
  assign v2e.tvalid    = v2e_tvalid;
  assign v2e_tready    = v2e.tready;

  assign e2c_tdata     = e2c.tdata;
  assign e2c_tuser     = e2c.tuser;
  assign e2c_tlast     = e2c.tlast;
  assign e2c_tvalid    = e2c.tvalid;
  assign e2c.tready    = e2c_tready;

  assign c2e.tdata     = c2e_tdata;
  assign c2e.tuser     = c2e_tuser;
  assign c2e.tlast     = c2e_tlast;
  assign c2e.tvalid    = c2e_tvalid;
  assign c2e_tready    = c2e.tready;

  eth_ipv4_interface #(
   .PROTOVER(PROTOVER), .MTU(MTU), .NODE_INST(NODE_INST),
   .REG_AWIDTH(REG_AWIDTH), .RT_TBL_SIZE(RT_TBL_SIZE),
   .BASE(BASE),
   .DROP_UNKNOWN_MAC(0),
   .DROP_MIN_PACKET(0),
   .PREAMBLE_BYTES(0),
   .ADD_SOF(0),
   .SYNC(0),
   .ENET_W(EWIDTH),.CPU_W(CWIDTH),.CHDR_W(VWIDTH)
  ) eth_interface (
   .* );

endmodule