BitRunner FPGA spel (3 / 4 stap)

Stap 3: Programmering de FPGA


Met behulp van de Xilinix Design Suite kunt u de bestanden samenvoegen tot een werkend systeem van modules. U kunt deze stappen hier om het te krijgen. Voor een technisch genie zoals jezelf monteren dit moet geen big deal, maar als u meer uitleg over de modules nodig, zijn er opmerkingen binnen de ge-uploade vhd-bestanden. U kunt de notities onder elke part in deze stap negeren als u niet nodig van een uitleg over het implementeren van de module hebt, want je zo'n technische vernuft bent.

Één meer ding voordat we in deze

Voor een duidelijker, of meer in de diepte vlakkevloertheater diagram.

-Download en synthetiseren van onze vhd-modules

-Vouw de optie synthesize en dubbel klik op "View RTL schematische"

-Dubbelklik vlakkevloertheater diagram uit te vouwen

Deel 1. Maken van een register van de verschuiving voor de obstakels. Moet u een scheidingslijn van de klok om shift register belemmeringen draaien op begrijpelijke snelheden.

-In eerste instantie, geef het 8 bit shift register een '1' om te beginnen de obstakels.

-op elke rising_edge(clk) na die

---Het verschuiven van de bits omlaag door de (6 downto 0) doorgeven aan de (7 downto 1) van de "volgende" signaal (lfsr_next) zoals we het noemden

---De 1ste bit ingesteld voor de "volgende" signaal gelijk is aan de bits van het huidige register "xor" een ander stukje van het huidige register

---Kunt u elke twee bits aan xor, dit zal simpelweg resulteren in een pseudo-willekeurige volgorde.

---Het heeft sommige willekeurige eigenschappen, maar het patroon herhaalt.

Opmerking 1: SSEG-decoder en Clk_div worden gegeven aan ons door onze leraar. Deze modules werden gemaakt door Professor Bryan Mealy op Cal Poly Slo. De sseg-decoder een getal van 8 bits neemt en dat getal in decimale notatie op het 7 segment display weergeven. De clk_div is een klok-verdeler die strekt zich uit de clk-periode. Gewoon kopiëren en plakken die in. Waarschuwing: De sseg-decoder kan opleveren waarschuwingen van hoe de teller ongebruikt is. Dit is omdat de teller op nooit die hoog van een getal te verplichten bepaalde stukjes. Dus vhdl optimaliseert die stukjes en spuugt een waarschuwing.

Test die deze modules werken door het uploaden van uw programma en kijken naar de LEDs oplichten. Indien behoorlijk gedaan, moet je hersenen denken dat het lichtpatroon uitgestoten zich beweegt als een belemmering voor de links. In het geval dit klopt niet, check de breadboard setup, modules en je eigen hersenen.

Deel 2. Maken van de Score Decoder. De module uitgangen een score op basis van de tijd, het is in wezen een teller. Geen spel is compleet zonder een koude, onpartijdige manier onderscheid te maken hoe slecht je bent in vergelijking met anderen. Zorg ervoor dat Maak een module vergelijkbaar met sseg_dec.vhd, zodat u en uw beoordeling van de collega's de score op het 7 segment display met gemak bekijken kunnen.

-_ / / Verhogen de score op de stijgende rand van de clk na gezet door de clk_div,

Als dit werkt door simulatie van het testen. De toename van de getallen correct zorgen. U kunt vervolgens verder testen door uw score decoder output te sturen naar de sseg_dec om dat het visueel werkt. De score moet verhogen door een voor elke stijgende klok-rand.

Aantekening 2: Wanneer de score decoder simuleren, het venster van de simulatie is binnen een paar nanoseconden, dus vermindering van uw klok factor 1 voor goede resultaten. Anders zal niets lijkt te gebeuren.

Deel 3. Shift registreren en de Score Decoder combineren met een belangrijkste module. Zorg ervoor dat u de scheidingslijn van de klok als de klok voor zowel shift register en score. Het eindresultaat moet de een score die stappen op elke verschuiving van de obstakels.

Deel 4. Maak een module voor de knop decoder. Het neemt in de inbreng van een knop en bepaalt of de speler is in dodge staat of niet. Dit is nodig om te voorkomen dat spelers uit de dodge-knop ingedrukt te houden en alle tegemoetkomende obstakels te ontwijken.

-Deze module kan worden weergegeven met behulp van een eindige toestandsmachine, vertegenwoordigd in de bijgevoegde eindige toestandsdiagram

-Defaults te wachten staat

-Als u niet druk op de knop blijft de staat op wachten modus

-Als zij dit doen, dan gaat het te ontwijken modus en uitgangen ontwijken gedurende een ingestelde time

---Dit is bepaald door een clk die omhoog naar een bepaald aantal aan stijgende rand (tot u telt)

-Na het beëindigen van de tegenhouden, modus, het automatisch gaat naar de let_go staat en niet teruggaan naar staat te wachten totdat de speler van de knop loslaat.

Deel 5. Maak een module om te controleren als de speler het blok is geraakt en dat het spel voorbij is.

-Het spel is afgelopen als het obstakel aan het eind is op en de speler niet in tegenhouden, modus.

-Als het spel eindigt kunt u shift register en score_decoder, die we deden opnieuw instellen

--- Of u kunt wachten voor een gebruikersinvoer opnieuw op te starten van het spel

Dit werd getest met een simulatie-bestand. We stellen de ingangen naar verschillende combinaties en visueel bevestigde correctheid.

Deel 6. Zet dit allemaal samen in je belangrijkste module en start het spel met uw beperkingen-bestand.

-De toewijzingen van meest de pinnen kunnen worden gevonden op het bord.

-Voor de LED-draden die moeten worden aangesloten, hebt u het opzoeken op de website van de Raad van bestuur. Als u van een bord NEXYS 3 gebruikmaakt, kunt u onze beperkingen/uitvoering-bestand die reacties wat pinnen zijn op het bord.

-Test dit met simulatie als goed. Het is gemakkelijk om te zien wat er gebeurt met een gesimuleerde bestand aangezien u op de uitgangen van de individuele modules ook kijken kunt.

Nota 3: Om dezelfde reden, krijgt u de dezelfde waarschuwingen als opmerking 1 met enkele andere modules.

Deel 7. Optionele. (Verplicht als alle onderdelen hiervoor een fluitje van een cent u waren) Alles met een klok-verdeler en de knop decoder te nemen in de telling wijzigen (niet dit doen voor de sseg-decoder). Op deze manier als de verhogingen van de score kunt u een verschillende telling doorgeven en versnellen van het spel te verhogen de moeilijkheid.

Aantekening 4: Als u dit doet, kan je enkele extra waarschuwingen, met de melding dat u een klink hebben gemaakt. Ook werden de simulaties gedaan voordat dit, dus je moeten zult deze toewijzingen toevoegen als u wilt simuleren na toevoeging.

Opmerking 5: Kan je een waarschuwing dat sommige dingen afkomstig zijn worden door een combinatorische pin. Dit is prima, het heeft geen invloed op het spel.

Deel 8. Het bit bestand uploaden naar uw FPGA. Want ondanks al dit werk, uw FPGA nog niets doet. Om te doen deze downloaden en installeren van een programma genaamd Adept.

Kunt u het hier http://www.digilentinc.com/Products/Detail.cfm?Nav...

Zodra u hebt geïnstalleerd het sluit de micro USB-kabel aan op de FPGA en selecteer het bestand dat bits. Vervolgens druk op program. Als u dit deel hebben bereikt zonder geen stappen overslaan mag dan een kleine spel noemen we ons project zitten voor je.

Gerelateerde Artikelen

FPGA Simon Clone

FPGA Simon Clone

Dit is een fundamentele simon kloon / Folower spel dat op een FPGA kan worden gemaakt.Stap 1: Verkrijgen benodigde materialen1. FPGA-Board2. breadboard3. LEDs4 draden5. software: Digilent AdeptStap 2: Construct modulesTeller van de 8-bit (gebruikt al
Pong spel met behulp van fpga kit

Pong spel met behulp van fpga kit

Hallo iedereen. Ik deelde hier het project "pong spel met fpga kit". FPGA is veld programmable gate array. het is een technologie dat we elk digitaal apparaat door te programmeren ontwerpen kunt. dat betekent dat de fpga-kit fungeren als een dig
How to Build uw eigen klauw spel structuur

How to Build uw eigen klauw spel structuur

Ik, heb samen met vele andere mensen, jeugdherinneringen van wandelen in een bioscoop, supermarkt of arcade en het zien van een grote glazen doos gevuld met speelgoed. Er was altijd een speelgoed begraven of recht op de top dat ik wilde zat. Alles wa
Breakout spel

Breakout spel

Hier is een van mijn project voor de geïntegreerde schakeling ontwerp-cursus. De kit die wordt gebruikt voor het ontwikkelen van is FPGA SPARTAANSE 3E en ons programma wordt gecodeerd met behulp van ISE XILINX DESIGN.De basisstructuur van het spel is
Hoe u kunt besturen van een stappenmotor met een FPGA

Hoe u kunt besturen van een stappenmotor met een FPGA

Dit instructable begeleidt u door het proces en sommige achtergrondkennis over hoe je een stappenmotor werken op een FPGA. Specifiek een Nema stappenmotor, met de Digilent Basys 3 en Digilent PmodSTEP.Momenteel ben ik bezig met een klauw-spel met de
Het gebruik van een Joystick met een FPGA

Het gebruik van een Joystick met een FPGA

Dit instructable is nog een stop op mijn reis om het spel van de klauw gedreven door een FPGA. Eerder schreef ik over het bepalen van een stappenmotor met een FPGA. Ik moest nu een joystick controle zodat ik beide op mijn besturing uiteindelijk verbi
FPGA Tic Tac Toe

FPGA Tic Tac Toe

"Tic Tac Toe? Wat is dat? Ik heb nog nooit gehoord daarvan."-Niemand ooitDoor Ryan Frawley en Derek NguyenDeze gids zal u tonen hoe maak je een werkende Tic Tac Toe game in VHDL op een Nexys 2 FPGA-board. Deze tutorial werd gedaan voor een deel
Met behulp van een Joystick controle stappenmotoren met een FPGA

Met behulp van een Joystick controle stappenmotoren met een FPGA

In de derde stap in mijn reis om opnieuw de klauw-spel met de Basys3, heb ik verbonden twee PmodSTEPs, twee stappenmotorenen de PmodJSTK met de Basys3 zodat ik elk van de servo's met de PmodJSTK controleren kan.Om dit te doen verbonden ik heb met de
Stap 8 FPGA Sequencer en Synthesizer

Stap 8 FPGA Sequencer en Synthesizer

In deze tutorial gaan we graag een stap 8 synthesizer voor onze FPGA-board. We zullen werken met de Digilient Nexys 2 board maar onze code kan worden gewijzigd voor andere boards. Dit project werd gebouwd door Tran van Lincoln en Joseph Coplon voor o
"Snake" op een FPGA

"Snake" op een FPGA

Dit project werd afgerond voor de klasse ECE2220, bij de Universiteit van Manitoba, voor de periode van de herfst 2015. Het bestuur gebruikt gedurende het hele project is een Altera DE2 Cyclone IV-board. Codering wordt gedaan met Verilog HDL via Quar
Obstakel vermijden spel

Obstakel vermijden spel

We waren voor deze toewijzing gegeven een Altera DE2-115 bord met een cycloon IV E FPGA en vertelde een project dat gebruik maakt van de hardware van de Raad van bestuur en de Verilog HDL-taal die we hebben geleerd in de klas maken. We dachten dat he
Maak uw eigen spel voor 2 spelers Simon Says

Maak uw eigen spel voor 2 spelers Simon Says

Dit Instructable wordt uitgelegd hoe u een Simon Says spel met behulp van een Altera DE2-115 Cyclone IV FPGA-board. Dit project werd gedaan voor ECE2220 (digitale logica) bij de Universiteit van Manitoba.De video hierboven toont de werken VGA-uitgang
PS2 Toetsenbord voor FPGA

PS2 Toetsenbord voor FPGA

FPGA-chips bieden een leuke manier om te leren van de digitale elektronica en sommige projecten, maar zeer vaak ontbreken ze vooraf Bibliotheken, dus elke externe module zorgvuldig moet worden geanalyseerd om te schrijven een bibliotheek/stuurprogram
Decimaal aan Binaire omzetting spel

Decimaal aan Binaire omzetting spel

"Er zijn slechts 10 soorten mensen in de wereld: die binaire en degenen die niet begrijpen."Dit leuk en leerzaam spel test uw vermogen om decimale getallen converteren naar binaire getallen. Het is ook een geweldige manier om daag uw vrienden ui