Bootstrap

Rule110_hdlbits

没有化简

module top_module(
    input clk,
    input load,
    input [511:0] data,
    output [511:0] q
); 
    reg [511:0 ]q_l, q_r;
    assign q_l = {1'b0, q[511:1]};
    assign q_r = {q[510:0] , 1'b0};
    always @ (posedge clk)
        begin
            if (load)
                q <= data;
            else
                q <= (q_l&q& ~q_r) + (q_l & ~q & q_r) + (~q_l & q & q_r) + (~q_l & q & ~q_r) + (~q_l & ~q & q_r);
        end
endmodule
;