Stap 2: Overzicht en verdeling van VHDL Modules
De VHDL achter dit spel kan worden gesplitst in twee verschillende Staten: status weergeven en te wachten staat. Het idee achter de weergavestatus is een warm LED output voor een bepaalde hoeveelheid tijd te nemen een signaal. Makkelijk genoeg toch? Voor deze procedure gaan we nodig een LFSR, teller en multiplexer (MUX). Aan de onderkant van deze pagina is een uitleg van elk onderdeel en het vhd-bestand voor elk gekoppeld is.
Daarnaast is de status van de wait nog eenvoudiger! De wacht moeten kunnen nemen van een waarde uit de LFSR en vergelijk deze met de knop die wordt geduwd door de gebruiker. Dus, de status van de wait is een decoder die signaal afgeven zullen wanneer de juiste knop wordt geduwd aan de respectieve LED.
Hieronder is een lijst van de componenten en hun functie voor het spel.
LFSR (Linear Feedback Shift Register) - een blok die zal "willekeurig" Genereer een getal elke klokcyclus. In plaats van een vooraf gedefinieerde set van bewegingen, is de LFSR een uitstekende manier om te houden van het patroon psuedo-random. Het nummer dat de LFSR uitgangen komt overeen met de LED verlicht.
Teller - de teller van doel is te tellen voor een bepaalde hoeveelheid tijd en het doorgeven van een signaal wanneer u klaar bent. Hoewel het klinkt simpel, is dit het brein van het hele spel. De besturingselementen van de teller hoelang de LED wordt aangestoken omhoog en hoe lang de speler moet druk op de overeenkomstige knop. De teller is zeer belangrijk omdat het is aangesloten op de display en wachten staat.
Multiplexer (voor de weergavestatus) - deze module in de weergavestatus moet kunnen opslaan het gegeven getal uit de LFSR en display dat nummer op de LEDs, zolang de teller gaat. Wanneer de teller is klaar, zal de mux om het even wat niet weergegeven op de LEDs.
Decoder (voor de status van de wait) - deze module is het eenvoudigst uit allemaal! De decoder de functie is het ontvangen van een aantal van de LFSR en controleren als de juiste knop wordt geduwd door de gebruiker. Als de knop en het aantal overeenkomen, dan een signaal opnieuw wordt gegenereerd. Hierdoor kan het spel te cyclus opnieuw en een nieuwe LED te tonen.