Advertisement
Guest User

Untitled

a guest
Apr 25th, 2015
207
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.17 KB | None | 0 0
  1. module deneme(D1,D2, NextState);
  2. input D1,D2;
  3. output [1:0] NextState;
  4. reg [1:0] CurrentState=2'b00;
  5. reg [1:0] NextStateOut;
  6. parameter S0=2'b00, S1=2'b10, S2=2'b11, S3=2'b01;
  7.  
  8. always @(D1 or D2)
  9. begin
  10. case(CurrentState)
  11. S0:
  12. begin
  13. if(D1==1'b0 && D2==1'b0)
  14. NextStateOut <=S0;
  15. if(D1==1'b1 && D2==1'b0)
  16. begin
  17. NextStateOut <=S1;
  18. end
  19. end
  20. S1:
  21. begin
  22. if(D1==1'b0 && D2==1'b0)
  23. begin
  24. NextStateOut <=S0;
  25. end
  26. if(D1==1'b1 && D2==1'b0)
  27. NextStateOut <=S1;
  28. if(D1==1'b1 && D2==1'b1)
  29. begin
  30. NextStateOut <=S2;
  31. end
  32. end
  33. S2:
  34. begin
  35. if(D1==1'b1 && D2==1'b0)
  36. begin
  37. NextStateOut <=S1;
  38. end
  39. if(D1==1'b1 && D2==1'b1)
  40. NextStateOut <=S2;
  41. if(D1==1'b0 && D2==1'b1)
  42. begin
  43. NextStateOut <=S3;
  44. end
  45. end
  46. S3:
  47. begin
  48. if(D1==1'b1 && D2==1'b1)
  49. begin
  50. NextStateOut <=S2;
  51. end
  52. if(D1==1'b0 && D2==1'b1)
  53. NextStateOut <=S2;
  54. if(D1==1'b0 && D2==1'b0)
  55. begin
  56. NextStateOut <=2'b00;
  57. end
  58. end
  59. endcase
  60. CurrentState<= NextStateOut;
  61. end
  62. assign NextState= NextStateOut;
  63. endmodule
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement