Nexys 2 - döda en mullvad (5 / 13 steg)
Steg 5: Hit eller Miss? (hitormiss.vhd)
Whack en mullvad är ett spel som kan delas upp i många komponenter. Den främsta drivkraften är att fastställa om spelaren har framgångsrikt "fixat" Mullvaden eller om de missat sin chans och Mullvaden flydde. Tänk på att poängen med denna beskrivning är att beskriva funktionerna i modulen. Det finns små detaljer i vhd-filen som bidrar till att skapa denna funktionalitet men de kommer inte att diskuteras här.
Ingångarna måste vi överväga för denna modul är lysdioderna, växla, klocka och återställa signaler för att fastställa en korrekt utgång. Utgångarna är "hit" och "giltig" som vi kommer att gå in i detalj om senare.
Klockan är nödvändigt eftersom det finns en räknare bäddat in in i modulen hit eller miss som lägger till 1 på stigande kanten av klockan. När timern når sitt max skapas en inre signal, som kallas "maxtime" för att indikera att modulen måste uppdatera. MaxTime är hur vi avgöra om spelaren får Mullvaden att fly.
En annan viktig intern signal att vi måste skapa är det nuvarande tillståndet av växeln som refereras till som "prs". Denna signal är nödvändigt att skapa funktionen växla som vi vill när det gäller handtralla en mullvad. För att betrakta Mullvaden som fixat vi jämför tillståndet för det aktuella läget för övergången till den offentliga destrueringstjänsten. Detta kommer att skapa funktionen att kunna växla en övergång från sitt nuvarande tillstånd till ett motsatt tillstånd och har det indikerar en hit. Utan prs-signalen måste spelaren flytta växeln upp och ner för en hit, vilket inte är så trevlig för en spelupplevelse.
Nu vi tar dessa signaler, LED, switch, prs och maxtime och använda dem för att avgöra utdata staterna hit och giltig. Om lysdioden är låg då oberoende av de andra signalerna, utgångar det låga för både hit och giltig. Annars, om lampan är hög, måste vi överväga switchen, prs, och maxtime. Om maxtime nås kommer det ut högt för giltigt och låg för hit. Annars har vi att jämföra den offentliga destrueringsverksamheten till växeln och om de inte är lika det kommer produktionen hög för både giltig och hit.
Anledningen till att vi inte har "missar" som en utgång är eftersom det kan indikeras av den låga delstaten hit. Giltig är också nödvändig eftersom det måste finnas en indikator som går längs med hit signalera att avgöra om eller inte att ta hit signalen.
Nu duplicera vi denna komponent 8 gånger skapa vhd-filen "whack8moles.vhd" som kommer att integreras i smäll och slå modul.
Sammanfattning vi kontrollera LED, switch, och nuvarande tillstånd för att avgöra om det fanns en träff eller missar.