data/full_repos/permissive/504525819/scan_wrapper.v
1: b"%Error: data/full_repos/permissive/504525819/scan_wrapper.v:52: Can't resolve module reference: 'sky130_fd_sc_hd__sdfxtp_1'\n    sky130_fd_sc_hd__sdfxtp_1 scan_flop [NUM_IOS-1:0] (\n                              ^~~~~~~~~\n%Error: Exiting due to 1 error(s)\n"
module scan_wrapper_lesson_3 (
    input wire clk_in,
    input wire data_in,
    input wire scan_select_in,
    input wire latch_enable_in,
    output wire clk_out,
    output wire data_out,
    output wire scan_select_out,
    output wire latch_enable_out
    );
    
    assign scan_select_out = scan_select_in;
    assign latch_enable_out = latch_enable_in;
    assign clk_out = clk_in;
    wire clk = clk_in;

    `ifdef COCOTB
    initial begin
        $dumpfile ("scan_wrapper.vcd");
        $dumpvars (0, scan_wrapper_lesson_3);
        #1;
    end
    `endif

    parameter NUM_IOS = 8;


    wire [NUM_IOS-1:0] scan_data_out;
    wire [NUM_IOS-1:0] scan_data_in;
    wire [NUM_IOS-1:0] module_data_in;
    wire [NUM_IOS-1:0] module_data_out;


    assign scan_data_in = {scan_data_out[NUM_IOS-2:0], data_in};
    

    assign data_out = scan_data_out[NUM_IOS-1];



    `ifndef FORMAL
    `ifndef FORMAL_COMPAT
    sky130_fd_sc_hd__sdfxtp_1 scan_flop [NUM_IOS-1:0] (
        .CLK        (clk), 
        .D          (scan_data_in),
        .SCD        (module_data_out),
        .SCE        (scan_select_in),
        .Q          (scan_data_out),
        .VPWR       (1'b1),
        .VGND       (1'b0)
    );



    sky130_fd_sc_hd__dlxtp_1 latch [NUM_IOS-1:0] (
        .D          (scan_data_out),
        .GATE       (latch_enable_in),
        .Q          (module_data_in),
        .VPWR       (1'b1),
        .VGND       (1'b0)
    );
    `endif
    `endif


    lesson3 #(.NUM_IOS(NUM_IOS)) user_module(
        .inputs     (module_data_in),
        .outputs    (module_data_out)
    );

endmodule
module scan_wrapper_lesson_3 (
    input wire clk_in,
    input wire data_in,
    input wire scan_select_in,
    input wire latch_enable_in,
    output wire clk_out,
    output wire data_out,
    output wire scan_select_out,
    output wire latch_enable_out
    );

    
    assign scan_select_out = scan_select_in;
    assign latch_enable_out = latch_enable_in;
    assign clk_out = clk_in;
    wire clk = clk_in;

    `ifdef COCOTB
    initial begin
        $dumpfile ("scan_wrapper.vcd");
        $dumpvars (0, scan_wrapper_lesson_3);
        #1;
    end
    `endif

    parameter NUM_IOS = 8;


    wire [NUM_IOS-1:0] scan_data_out;
    wire [NUM_IOS-1:0] scan_data_in;
    wire [NUM_IOS-1:0] module_data_in;
    wire [NUM_IOS-1:0] module_data_out;


    assign scan_data_in = {scan_data_out[NUM_IOS-2:0], data_in};
    

    assign data_out = scan_data_out[NUM_IOS-1];



    `ifndef FORMAL
    `ifndef FORMAL_COMPAT
    sky130_fd_sc_hd__sdfxtp_1 scan_flop [NUM_IOS-1:0] (
        .CLK        (clk), 
        .D          (scan_data_in),
        .SCD        (module_data_out),
        .SCE        (scan_select_in),
        .Q          (scan_data_out),
        .VPWR       (1'b1),
        .VGND       (1'b0)
    );



    sky130_fd_sc_hd__dlxtp_1 latch [NUM_IOS-1:0] (
        .D          (scan_data_out),
        .GATE       (latch_enable_in),
        .Q          (module_data_in),
        .VPWR       (1'b1),
        .VGND       (1'b0)
    );
    `endif
    `endif


    lesson3 #(.NUM_IOS(NUM_IOS)) user_module(
        .inputs     (module_data_in),
        .outputs    (module_data_out)
    );

endmodule