/********************************************** _ _ Cook Darwin __

_ descript: author : Cook.Darwin Version: VERA.0.0 creaded: 2018-4-18 10:01:29 madified: ***********************************************/ `timescale 1ns/1ps (* axi_stream = “true” *) module axis_to_lite_wr #(

parameter DUMMY = 8

)(

axi_stream_inf.slaver   axis_in,
axi_lite_inf.master_wr  lite

);

axi_stream_inf #(axis_in.DSIZE) cm_tb_m (axis_in.aclk,axis_in.aresetn,axis_in.aclken);

logic [31:0] addr,data; logic out_valid;

parse_big_field_table_A2 #(

.DSIZE         (axis_in.DSIZE   ),
.FIELD_LEN     (DUMMY           )     //MAX 16*8

)parse_big_field_table_A2_ins( /* input */ .enable (1'b1 ), /* output */ .value ({addr,data } ), /* output logic */ .out_valid (out_valid ), /* axi_stream_inf.slaver */ .cm_tb_s (axis_in ), /* axi_stream_inf.master */ .cm_tb_m (cm_tb_m ), /* axi_stream_inf.mirror */ .cm_mirror (axis_in ) );

assign cm_tb_m.axis_tready = 1'b1;

data_inf_c #(1) trigger_aw_inf (axis_in.aclk,axis_in.aresetn); data_inf_c #(1) trigger_w_inf (axis_in.aclk,axis_in.aresetn);

trigger_data_inf_c #(

.DSIZE  (1  )

)trigger_data_inf_c_aw_inst( /* input */ .trigger (/*cm_tb_m.axis_tvalid && cm_tb_m.axis_tready && cm_tb_m.axis_tlast*/out_valid), /* input [DSIZE-1:0] */ .data (1'b0), /* data_inf_c.master */ .trigger_inf (trigger_aw_inf ) );

trigger_data_inf_c #(

.DSIZE  (1  )

)trigger_data_inf_c_w_inst( /* input */ .trigger (cm_tb_m.axis_tvalid && cm_tb_m.axis_tready && cm_tb_m.axis_tlast), /* input [DSIZE-1:0] */ .data (1'b0), /* data_inf_c.master */ .trigger_inf (trigger_w_inf ) );

assign lite.axi_awvalid = trigger_aw_inf.valid; assign lite.axi_awaddr = addr; assign lite.axi_awlock = 1'b0; assign lite.axi_wvalid = trigger_w_inf.valid; assign lite.axi_wdata = data; assign lite.axi_bready = 1'b1;

assign trigger_aw_inf.ready = lite.axi_awvalid; assign trigger_w_inf.ready = lite.axi_wready;

endmodule