module clk_3_odd (clk,reset,clk_out); //占空比为50%
  input clk, reset; 
  output clk_out; 
  reg[1:0] state; 
  reg clk1; 
  parameter s0=2'b00;
                      s1=2'b01;
                      s2=2'b11;
    always @(posedge clk or negedge reset) 
      if(!reset) 
         state<=s0; 
      else 
        case(state) 
          s0:state<=s1; 
          s1:state<=s2; 
          s2:state<=s0; 
          default:state<=s0; 
        endcase        
 always @(negedge clk or negedge reset) 
      if(!reset) 
         clk1<=1'b0; 
      else 
         clk1<=state[0];          
  assign clk_out=state[0]&clk1;
endmodule