[讨论] 请大虾指出程序的错误

eeleader   2010-4-4 21:38 楼主
parameter idle=00,
          jia=01,
          cheng=11,
          yuan=10;
                        
always@(posedge clk)
if(!rst)
        begin
                j<=0;
                c<=0;
                y<=0;
                state<=idle;
        end
else begin
      case(state)
      idle:if(en)begin         
                  state<=cheng;
                  flog<=0;
                  c<=1;j<=0;y<=0;
                end
      cheng: begin if(en) begin
                        if(!flog)  begin state<=jia;
                                         c<=0;j<=1;y<=0;
                                   end
                        else           begin state<=yuan;
                                         c<=0;j<=0;y<=1;
                                   end
                                                                           
                              flog<=flog+1;
                           end
                     else begin
                             state<=idle;
                             c<=0;j<=0;y<=0;
                          end
             end
        jia:begin
                if(flog) begin state<=jia;
                                c<=0;j<=1;y<=0;
                         end
                else  begin state<=cheng;
                             c<=1;j<=0;y<=0;
                         end
                        flog<=flog+1;
                end
        yuan:begin
                if(!flog) begin state<=yuan;
                                 c<=0;j<=0;y<=0;
                           end
                else  begin state<=cheng;
                             c<=1;j<=0;y<=0;
                      end
                     flog<=flog+1;
               end
        endcase
        end

回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复