sv2v/test/relong/gen_struct.v

28 lines
658 B
Verilog

`default_nettype none
module Example(
input wire [3:0] a,
output wire [31:0] all
);
function [1:0] __truncate_to_2_bits(input [1:0] i);
__truncate_to_2_bits = i;
endfunction
generate
genvar i;
for(i = 0; i < 4; i = i + 1) begin : __gen_loop
reg [7:0] s;
always @* begin
s = {__truncate_to_2_bits(3-i), a, __truncate_to_2_bits(i)};
// s = '{
// first: i,
// middle: a,
// last: 3 - i
// };
end
assign all[i*8+:8] = s;
end
endgenerate
endmodule