`timescale 1ns/1ns

module odo_div_or
   (
    input    wire  rst ,
    input    wire  clk_in,
    output   wire  clk_out7
    );

//*************code***********//
reg [2:0]   bit_cnt;
reg     out_reg,reg_out;
always@(posedge clk_in or negedge rst)
    if(!rst)
        bit_cnt <=  3'd0;
    else    if(bit_cnt==3'd6)
        bit_cnt <=  3'd0;
    else
        bit_cnt <=  bit_cnt + 1'b1;


always@(posedge clk_in or negedge rst)
    if(!rst)
        reg_out <=  1'b0;
    else    if(bit_cnt  ==  3'd3)
        reg_out <=  1'b1;
    else    if(bit_cnt  == 3'd6 )
        reg_out <=  1'b0;

always@(negedge clk_in or negedge rst)
    if(!rst)
        out_reg <=  1'b0;
    else    if(bit_cnt  ==  3'd3)
        out_reg <=  1'b1;
    else    if(bit_cnt  == 3'd6 )
        out_reg <=  1'b0;

assign  clk_out7 = (out_reg || reg_out);
//*************code***********//
endmodule