Étape 5: Pseudo aléatoire Obstacle générateur
Un module est nécessaire qui crée un certain nombre de bits aléatoires de trois, mais pas le b111 cas de 3'. Une horloge peut être utilisée pour créer des nombres aléatoires. Nous avons choisi d’utiliser l’horloge PLL 40 MHz, car ce sera pas synchronisé avec l’horloge 50 MHz du Conseil causant le comptoir pour être synchronisées avec le jeu. En les utilisant, nous avons un avoir un compteur qui va de 0 à 6 avec un interrupteur compteur permettant un ordre différent des obstacles. Les obstacles peuvent être dans le même ordre, mais en partant du compteur à des moments différents avant que le joueur commence le jeu, il semble aléatoire.
module random(start,clk,outOb) ;
début d’entrée, clk ; sortie reg [2:0] outOb ;
toujours @ (posedge clk)
Si (début)
outOb < = 3' b000 ;
d’autre j’ai
outOb f (outOb < 6) < = outOb + 1 ;
else outOb = 3' b000 ;
endmodule