Il s’agit d’un exemple de Verilog qui montre la mise en œuvre d’une machine d’état. Le premier relevé CASE définit les sorties qui dépendent de la valeur de l’état variable de la machine d’état. Le deuxième relevé CASE définit les transitions de la machine d’état et les conditions qui les contrôlent.
Pour plus d’informations sur l’utilisation de cet exemple dans votre projet, reportez-vous à la section Comment utiliser Verilog HDL Examples sur la page Web de Verilog.
statem.v
statem du module (connecteur, in, réinitialisation, out) ; entrée clk, in, réinitialisation ; sortie [3:0] ; rég [3:0] ; état rég [1:0] ; paramètre zéro=0, un=1, deux =2, trois=3 ; toujours @(state) case de départ (état) zéro : out = 4'b0000 ; un : out = 4'b0001 ; deux : sortie = 4'b0010 ; trois : out = 4'b0100 ; par défaut : out = 4'b0000 ; fin de l’emballage toujours @(posedge clk ou posedge reset) commence si (reset) state = zéro ; autre cas (état) zéro : état = un ; un : si (in) état = zéro ; autre état = deux ; deux : état = trois ; trois : état = zéro ; endmodule endcase