Advertisement
varli_ketanpl

AC_LAB5_EX_1

Oct 30th, 2023
1,005
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. module ba(
  2.     output reg o,   // found output: 0 - not found, 1 - found
  3.     input i,        // char input: 0 - 'a', 1 - 'b'
  4.     input clk);     // clock input
  5.  
  6. //TODO implementarea functionarii
  7.  
  8. reg[1:0] state = 0, next_state = 0;
  9.  
  10. always@(posedge clk) begin
  11.     state <= next_state;
  12. end
  13.  
  14. always@(*) begin
  15.     o = 0;
  16.     case (state)
  17.         0: if(i == 1) begin
  18.                 next_state = 1;
  19.                 o = 0;
  20.             end
  21.             else begin
  22.                 next_state = 2;
  23.                 o = 0;
  24.             end
  25.         1: if(i == 1) begin
  26.             next_state = 3;
  27.             o = 1;
  28.         end
  29.             else begin
  30.                 next_state = 2;
  31.                 o = 0;
  32.             end
  33.         2: if(i == 1) begin
  34.                 next_state = 1;
  35.                 o = 0;
  36.             end
  37.             else begin
  38.                 next_state = 2;
  39.                 o = 0;
  40.             end
  41.         3: if(i == 1) begin
  42.                 next_state = 1;
  43.                 o = 0;
  44.             end
  45.             else begin
  46.                 next_state = 2;
  47.                 o = 0;
  48.             end
  49.     endcase
  50. end
  51.  
  52. endmodule
  53.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement