| 
 | 
 
仿真的时序与我上传的图片时序不对应,肯定是程序出了问题,求大虾指点 
module pulse(clk,reset,pulse1_uin,pulse1_lin,pulse2_uin,pusle2_lin); 
input clk,reset; 
output pulse1_uin,pulse1_lin,pulse2_uin,pusle2_lin; 
reg pulse1_uin,pulse1_lin,pulse2_uin,pusle2_lin; 
integer  state,nxstate,counter; 
parameter st0=0,st1=1,st2=2,st3=3,st4=4,st5=5,st6=6,st7=7; 
always @(posedge clk or negedge reset) 
begin 
        if(!reset) 
        begin 
          state=st0; 
          counter=0; 
//          nxstate=st0; 
        end 
        else 
        begin  
          counter<=counter+1; 
          state=nxstate; 
            
        end 
end 
 
always @(state) 
begin 
  case(state) 
  st0: begin  
          
         pulse1_uin=1'b0;pulse1_lin=1'b1; 
         pulse2_uin=1'b0;pusle2_lin=1'b1; 
         if(counter==5) 
         nxstate=st1; 
         #100 nxstate=st1; 
       end 
  st1: begin  
         pulse1_uin=1'b0;pulse1_lin=1'b0; 
         pulse2_uin=1'b0;pusle2_lin=1'b1; 
         
         if(counter==10) 
        #100 nxstate=st2; 
         
       end        
  st2: begin  
         pulse1_uin=1'b1;pulse1_lin=1'b0; 
         pulse2_uin=1'b0;pusle2_lin=1'b1; 
         if(counter==15) 
         nxstate=st3; 
       end 
  st3: begin  
         pulse1_uin=1'b0;pulse1_lin=1'b0; 
         pulse2_uin=1'b0;pusle2_lin=1'b1; 
         if(counter==20) 
        #100 nxstate=st4; 
       end 
  st4: begin  
         pulse1_uin=1'b0;pulse1_lin=1'b1; 
         pulse2_uin=1'b0;pusle2_lin=1'b1; 
         if(counter==25) 
        #100 nxstate=st5; 
       end  
  st5: begin  
         pulse1_uin=1'b0;pulse1_lin=1'b1; 
         pulse2_uin=1'b0;pusle2_lin=1'b0; 
         if(counter==30) 
       #100 nxstate=st6; 
       end 
  st6: begin  
         pulse1_uin=1'b0;pulse1_lin=1'b1; 
         pulse2_uin=1'b1;pusle2_lin=1'b0; 
         if(counter==35) 
        #100 nxstate=st7; 
       end   
                  
                  
  st7: begin  
         pulse1_uin=1'b0;pulse1_lin=1'b1; 
         pulse2_uin=1'b0;pusle2_lin=1'b0; 
         if(counter==40) 
         begin 
        #100 nxstate=st0; 
         counter=0; 
         end 
       end 
      endcase 
    end 
  endmodule |   
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?我要注册 
 
 
 
x
 
 
 
 
 |