module Divider(
	input wire clk,		// Clock input
	output wire divided	// Divided output
);

// Parameters for division circuit
parameter divideby = 1;
parameter divide_reg_size;
parameter pulsemode = 1;

reg [divide_reg_size-1:0] div;	// Division counter
reg div_int;							// Internal division result state

assign divided = div_int;			// Assign internal result state to external output

// Division
always @ (posedge clk) begin
	if(div == divideby) begin
		div_int <= pulsemode ? 1'b1 : ~div_int;
		div <= 0;
	end else begin
		if(pulsemode) div_int <= 0;
		div <= div + 1'b1;
	end
end

endmodule