data/full_repos/permissive/528831163/src/dec_permutation_layer.v
1: b"%Error: data/full_repos/permissive/528831163/src/dec_permutation_layer.v:8: Cannot find file containing module: 'dec_XOR_layer'\n    dec_XOR_layer xl(.i_xor(i_pl), .o_xor(xor2rp));\n    ^~~~~~~~~~~~~\n        ... Looked in:\n             data/full_repos/permissive/528831163/src,data/full_repos/permissive/528831163/dec_XOR_layer\n             data/full_repos/permissive/528831163/src,data/full_repos/permissive/528831163/dec_XOR_layer.v\n             data/full_repos/permissive/528831163/src,data/full_repos/permissive/528831163/dec_XOR_layer.sv\n             dec_XOR_layer\n             dec_XOR_layer.v\n             dec_XOR_layer.sv\n             obj_dir/dec_XOR_layer\n             obj_dir/dec_XOR_layer.v\n             obj_dir/dec_XOR_layer.sv\n%Error: data/full_repos/permissive/528831163/src/dec_permutation_layer.v:10: Cannot find file containing module: 'dec_round_permutation'\n            dec_round_permutation #(.shift(1), .data_length(16)) rp0(.i_rp(xor2rp[(16*0 + 15):16*0]), .o_rp(rp2bs[15:0]));\n            ^~~~~~~~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/528831163/src/dec_permutation_layer.v:11: Cannot find file containing module: 'dec_round_permutation'\n            dec_round_permutation #(.shift(4), .data_length(16)) rp1(.i_rp(xor2rp[(16*1 + 15):16*1]), .o_rp(rp2bs[(16 + 15):16*1]));\n            ^~~~~~~~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/528831163/src/dec_permutation_layer.v:12: Cannot find file containing module: 'dec_round_permutation'\n            dec_round_permutation #(.shift(7), .data_length(16)) rp2(.i_rp(xor2rp[(16*2 + 15):16*2]), .o_rp(rp2bs[(16*2 + 15):16*2]));\n            ^~~~~~~~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/528831163/src/dec_permutation_layer.v:13: Cannot find file containing module: 'dec_round_permutation'\n            dec_round_permutation #(.shift(9), .data_length(16)) rp3(.i_rp(xor2rp[(16*3 + 15):16*3]), .o_rp(rp2bs[(16*3 + 15):16*3]));\n            ^~~~~~~~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/528831163/src/dec_permutation_layer.v:18: Cannot find file containing module: 'dec_block_shuffle'\n            dec_block_shuffle bs(.i_bs(rp2bs[(16*i + 15):16*i]), .o_bs(o_pl[(16*i + 15):16*i]));\n            ^~~~~~~~~~~~~~~~~\n%Error: Exiting due to 6 error(s)\n"
module dec_permutation_layer (
    input [63:0] i_pl, output [63:0] o_pl
);
    wire [63:0] rp2bs;

    wire [63:0] xor2rp;

    dec_XOR_layer xl(.i_xor(i_pl), .o_xor(xor2rp));

            dec_round_permutation #(.shift(1), .data_length(16)) rp0(.i_rp(xor2rp[(16*0 + 15):16*0]), .o_rp(rp2bs[15:0]));
            dec_round_permutation #(.shift(4), .data_length(16)) rp1(.i_rp(xor2rp[(16*1 + 15):16*1]), .o_rp(rp2bs[(16 + 15):16*1]));
            dec_round_permutation #(.shift(7), .data_length(16)) rp2(.i_rp(xor2rp[(16*2 + 15):16*2]), .o_rp(rp2bs[(16*2 + 15):16*2]));
            dec_round_permutation #(.shift(9), .data_length(16)) rp3(.i_rp(xor2rp[(16*3 + 15):16*3]), .o_rp(rp2bs[(16*3 + 15):16*3]));

    genvar i;
    generate
        for (i = 0; i < 4; i = i +1 ) begin
            dec_block_shuffle bs(.i_bs(rp2bs[(16*i + 15):16*i]), .o_bs(o_pl[(16*i + 15):16*i]));
        end
    endgenerate



endmodule
module dec_permutation_layer (
    input [63:0] i_pl, output [63:0] o_pl
);

    wire [63:0] rp2bs;

    wire [63:0] xor2rp;

    dec_XOR_layer xl(.i_xor(i_pl), .o_xor(xor2rp));

            dec_round_permutation #(.shift(1), .data_length(16)) rp0(.i_rp(xor2rp[(16*0 + 15):16*0]), .o_rp(rp2bs[15:0]));
            dec_round_permutation #(.shift(4), .data_length(16)) rp1(.i_rp(xor2rp[(16*1 + 15):16*1]), .o_rp(rp2bs[(16 + 15):16*1]));
            dec_round_permutation #(.shift(7), .data_length(16)) rp2(.i_rp(xor2rp[(16*2 + 15):16*2]), .o_rp(rp2bs[(16*2 + 15):16*2]));
            dec_round_permutation #(.shift(9), .data_length(16)) rp3(.i_rp(xor2rp[(16*3 + 15):16*3]), .o_rp(rp2bs[(16*3 + 15):16*3]));

    genvar i;
    generate
        for (i = 0; i < 4; i = i +1 ) begin
            dec_block_shuffle bs(.i_bs(rp2bs[(16*i + 15):16*i]), .o_bs(o_pl[(16*i + 15):16*i]));
        end
    endgenerate



endmodule