Advertisement
aidanozo

Untitled

Nov 5th, 2024
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. module mealy_fsm(
  2.     output reg parity,
  3.     input clk,
  4.     input reset,
  5.     input x);
  6.    
  7.     reg state, next_state;
  8.     parameter S0=0;
  9.     parameter S1=1;
  10.  
  11.     // Partea secvențială
  12.     always @(posedge clk or negedge reset)
  13.         if (!reset)
  14.             state <= S0;
  15.         else
  16.             state <= next_state;
  17.  
  18.     // Partea combinațională
  19.     always @(*) begin
  20.         parity = 1'b0;
  21.         case(state)
  22.             S0:
  23.                 if(x)
  24.                     next_state = S1;
  25.                 else
  26.                     next_state = S0;
  27.             S1:
  28.                 if(x) begin
  29.                     parity = 1;
  30.                     next_state = S0;
  31.                 end
  32.                 else begin
  33.                     parity = 1;
  34.                     next_state = S1;
  35.                 end
  36.             default:
  37.                 next_state = S0;
  38.         endcase
  39.     end
  40. endmodule
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement