Line 43... |
Line 43... |
input aresetn
|
input aresetn
|
);
|
);
|
|
|
// --------------------------------------------------------------------
|
// --------------------------------------------------------------------
|
//
|
//
|
axis_if #(.N(N), .I(I), .D(D), .U(U)) axis_mux_out(.*);
|
defparam axis_mux_out.N = N; // why are needed these for recursive modules?
|
|
defparam axis_mux_out.I = I;
|
|
defparam axis_mux_out.D = D;
|
|
defparam axis_mux_out.U = U;
|
|
axis_if axis_mux_out(.*);
|
|
// axis_if #(.N(N), .I(I), .D(D), .U(U)) axis_mux_out(.*);
|
|
|
assign axis_in[0].tready = select ? 0 : axis_mux_out.tready;
|
assign axis_in[0].tready = select ? 0 : axis_mux_out.tready;
|
assign axis_in[1].tready = select ? axis_mux_out.tready : 0;
|
assign axis_in[1].tready = select ? axis_mux_out.tready : 0;
|
|
|
assign axis_mux_out.tvalid = select ? axis_in[1].tvalid : axis_in[0].tvalid;
|
assign axis_mux_out.tvalid = select ? axis_in[1].tvalid : axis_in[0].tvalid;
|
Line 60... |
Line 65... |
assign axis_mux_out.tuser = select ? axis_in[1].tuser : axis_in[0].tuser;
|
assign axis_mux_out.tuser = select ? axis_in[1].tuser : axis_in[0].tuser;
|
|
|
|
|
// --------------------------------------------------------------------
|
// --------------------------------------------------------------------
|
//
|
//
|
|
defparam axis_register_slice_i.N = N; // why are needed these for recursive modules?
|
|
defparam axis_register_slice_i.I = I;
|
|
defparam axis_register_slice_i.D = D;
|
|
defparam axis_register_slice_i.U = U;
|
axis_register_slice
|
axis_register_slice
|
#(
|
// #(
|
.N(N),
|
// .N(N),
|
.I(I),
|
// .I(I),
|
.D(D),
|
// .D(D),
|
.U(U),
|
// .U(U),
|
.USE_TSTRB(0),
|
// .USE_TSTRB(0),
|
.USE_TKEEP(0)
|
// .USE_TKEEP(0)
|
)
|
// )
|
axis_register_slice_i
|
axis_register_slice_i
|
(
|
(
|
.axis_in(axis_mux_out), // slave
|
.axis_in(axis_mux_out), // slave
|
.axis_out(axis_out), // master
|
.axis_out(axis_out), // master
|
.*
|
.*
|