//----------------------------------------------------- // Design Name : lfsr // File Name : lfsr.v // Function : Linear feedback shift register // Coder : Deepak Kumar Tala //----------------------------------------------------- module lfsr ( out , // Output of the counter enable , // Enable for counter clk , // clock input reset // reset input ); //----------Output Ports-------------- output [7:0] out; //------------Input Ports-------------- input enable, clk, reset; //------------Internal Variables-------- reg [7:0] out; wire linear_feedback; //-------------Code Starts Here------- assign linear_feedback = !(out[7] ^ out[3]); always @(posedge clk) if (reset) begin // active high reset out <= 8'b0 ; end else if (enable) begin out <= {out[6],out[5], out[4],out[3], out[2],out[1], out[0], linear_feedback}; end endmodule // End Of Module counter