Paso 3: Juego obstáculos
Para que este juego ser jugable y divertido, hay obstáculos. Para tener obstáculos aparecen en los carriles que acabamos de crear, hemos implementado dos señales diferentes dentro de la arquitectura del LFSR. En primer lugar tenemos la señal de llamada "lfsr" que es un número binario de 32 bits con una sola en un lugar aleatorio dentro de la cadena. La siguiente señal que se llama "lfsr_next" que es otra vez un número binario de 32 bits que consisten en solamente un solo uno colocado en la misma posición como el "lfsr".
Una vez que declaró esas señales, hemos creado un proceso llamado lfsr_seq con una lista de sensibilidad que consiste en game_clock y reset. Un if/else instrucción entonces lee en determinar si "muerto" es alta y, si es así, el lfsr se asigna un número binario de 32 bits que consta de solamente ceros. LFSR sólo cambiará cuando la game_clock está en el borde de levantamiento.
Por último, hay un proceso de lógica combinatoria llamado lfsr_comb que va a crear una secuencia pseudo-random de obstáculos. En este proceso una puerta XOR es poner en cualquier lugar en el número binario de 32 bits. Este XOR sirve para crear la secuencia pseudo-random del número.
Ahora tenemos obstáculos!