Lär dig Verilog: En kort Tutorial serie på Digital elektronik Design med FPGAs och Verilog HDL (18 / 21 steg)

Steg 18: VM 4.1: den alltid blockera

Om någon nämner orden "Verilog" och "Beteende" i samma mening, bör din hjärna förhoppningsvis tänker genast "alltid block". Det finns inte en sann översättning mellan en alltid block och något i ett språk som C/C++, men konceptet är inte svårt att förstå. Men om du måste ha en jämförelse med C/C++, ett block är alltid som ett tag loop som har tillstånd när man ska utvärdera är en röra av om uttalanden.

I ett nötskal, ett block är alltid en del av Verilog kodat logik som beräknas varje gång en utlösaren villkoret ändras.

Vad betyder det? Låt oss titta på en grundläggande alltid blocket för en krets med två ingångar, sw0 och sw1.

alltid @ (sw0, sw1)
börja
slutet

Det finns ingen kropp kod till detta block, men låt oss bortse från det för nu. Märka den ' att intäkterna "alltid" ("alltid" är ett Verilog sökord). Lägg också märke till uttrycket inom parenteser: "sw0, sw1".

Med hjälp av en enkel tabell med sanningen, vi vet att för två ingångar finns det högst 4 unika stater insatsvaror kunde vara i: båda logic hög, både logik låg och en hög en låg för båda ingångarna.

Den "alltid @ (sw0, sw1)" i huvudsak säger "om när som helst någon ingång ändrar sitt tillstånd (dvs ändra raden på sanningen bordlägger) sedan omvärdera följande kod:".

Detta skulle inte vara alltför enkelt att skriva i C/C++, men i Verilog är det så enkelt. En alltid block kommer att omvärdera koden inom dess tillämpningsområde (mellan begin och end-satser efter "alltid") när en av de listade utlösare (listan kallas en känslighet lista) ändras antingen från en logik en en logik noll eller från en logik noll till en logik en. Kan du tänka på en gemensam logik krets komponent eller två (eller ett gäng!) som enkelt kan implementeras i en alltid blockera?

Det klassiska exemplet är multiplexor, eller, mux. När någon av de utvalda ingångarna ändrar, har mux åter besluta vad ingång för att passera till utgången. Nästa par handledning modulerna täcka vilken typ av kod kan vi skriva "insidan" en alltid blockera.

Pro tip: endast en alltid block per Verilog modul (Lasse fil). Justera känsligheten listan istället för att försöka göra ett annat block.

Tips (kopia): du kan bara ange värden för en reg i en alltid blockera, ingen tilldela värden för att ange tråd. Du kan, men senare tilldela kabeln för att motsvara den reg värde.

Se Steg
Relaterade Ämnen

Att få igång med Python och programmering - The kort handledning

så jag ser att du är intresserad av lärande om programmering... eller ormar.Om du är här i ormar, tyvärr är detta inte platsen för dig. Ja, kanske...Om du är här för att lära sig om programmering eller Python då du har kommit. Denna handledning gjord...

DIY Basic sy Tutorial T-shirt / jacka / tröja / bygel / Normal och Raglan ärm

Hur jag syr en t-shirt? Sömnad för nybörjare. Vi visar dig hur att sy en skjorta, top med ärm, raglanärm, raglan tröja själv. Principen är alltid densamma oavsett om du är sömnad t-shirts, jackor, långa ärmar, raglanärm, klänningar med ärmar etc.Vi h...

Himmelska Mechanica serie: växellåda design och konstruktion

Himmelska Mechanica är en 16-ft lång kinetic stål skulptur av vårt solsystem som representerar den majestätiska dansen av himlakropparna. Den skapades av en grupp ledd av Jessika Welz för Burning Man 2014.(Projektet Facebooksida: https://www.facebook...

GTA IV - utan grafiken kort Tutorial - av SBTOPZZZ

Välkommen killar,Kan börja Grand Theft Auto 4 utan grafikkort.Steg 1: Steg 1: möjligt att ha GTA IV utan grafikkort?Om du frågar mig, säger jag Ja.GTA IV konfigurerar alltid din dator för att kontrollera krav, speciellt Grafikkort.Så, jag hade också...

DIY mikrofon byggnad Tutorial serie

del 1Del 2Del 3Del 4Del 5Del 6 Detta är en sex delar serie videoklipp om hur man bygger din egna mikrofoner. Jag kommer på detta ur bygga mikrofoner för förstärkt munspel, men många av tipsen skulle gälla byggnad mikrofoner för andra ändamål. Videorn...

1. hacka Panasonic GH2 Tutorial serie - komma igång

[youtube]0b8iBiUPWoI[/youtube]...

2. hacka Panasonic GH2 Tutorial serie - använder hacket

[youtube]IOisy0Oq0TE[/youtube]...

3. hacka Panasonic GH2 Tutorial serie - testa inställningar

[youtube]ZPhrMmX4E3Y[/youtube]...

4. hacka Panasonic GH2 Tutorial serie - testning Footage - ISO Bug

[youtube]N21mzRjJG74[/youtube]...

Hur man gör en låg poly spel modellen ser mycket mer detaljerade med mixer och Gimp

Så du vill göra ett spel men du har en dator som inte kan hantera grafik alla väl och men du ändå vill göra något som ser wicked. Detta är en metod jag gjorde upp när jag försöker göra spel.En formel jag vilja leva av är roligt > arbete. Om du arbeta...

Hur till göra mat bilder ser aptitlig med rekvisita och naturlig belysning

En bild säger tusen ord!Det finns inget som tar en minnesvärd bild och visar det för släkt och vänner och få fave recensioner på hur bilden ser ut och hur det känns när observera det.Som en ivrig foodie mig själv och inte en professionell fotograf, j...

HUR DU LÄR DIG RITA! OKONVENTIONELLA sätt att rita saker, det är enkel och trevlig.

För dem som gillar ritningen och konst! och aldrig ens försökt Rita någon sak cuz han tror att han aldrig har någon talang! Detta instructable kan vara ditt första steg som konstnär!Jag har börjat lära sig Rita bara två år sedan på mitt första år som...

Photoshop Tutorial: Skapa nödställda textur med genomskinlig bakgrund

Detta Photoshop tutorial ska show dig hur man skapar nödställda struktur och spara den som en tif-fil med en genomskinlig bakgrund i teckningen i Adobe Illustrator....

Video Tutorial: Hur man skapar en webbsida med SliceMaker produkter?

Detta är en video tutorial av SliceMaker produkter. I denna video tutorial, kommer att vi lära dig att skapa en komplett webbsida med hjälp av SliceMaker produkter.Du behöver inte skriva koder manuellt när du skapar en webbsida med SliceMaker produkt...

SliceMaker Tutorial: Hur man skapar en webbsida med SliceMaker produkter?

SliceMaker mjuk kommer att fortsätta att ge dig nya video tutorials om hur du använder deras produkter. Detta är en av den video tutoials av SliceMaker produkter. Genom denna video tutorial lära du enkelt dig att skapa en webbsida med SliceMaker prod...

Brainstorming buss Shelter design med kortplats bygga kort

studenter tillsammans bygga fysiska brainstorming modeller av busskurer med Tom registerkort som de konvertera i kortplatsen bygga kort. Slot skyddsrum modell byggnad verkstad lektionen inbjuder elementära studenter att föreställa multipurpose bussku...

2015 gym Guide: Lär dig att träna + förbättra din hälsa med 16 + års professionell vägledning!

Personlig träning är dyrt. Ännu människor fortfarande dra nytta av den personliga touch som en fitness expert erbjuder. Mitt mål med denna uppskrivning är att informera dig om att du har alternativ för DIY fitness utbildning. Jag älskar personliga tr...

Knex pistol: Gear Series #1-GGLP (växel Grenade Launcher och Pistol)

denna pistol är sparka igång en ny serie: GEAR -serien. Jag planerar att göra (förutom GGLP) ett gevär, sniper och hagelgevär.Denna pistol har en optimal räckvidd på 40ft, inklusive granat. Det är robust och ganska bärbara, tidningen rymmer ca 6 enda...

DIY blåser lila krita konst! Med hjälp av FIG lila!

i bara några enkla steg, kan du skapa detta roliga dekoration, perfekt för studentrummet eller något utrymme som behöver lite extra! Ingen limpistol som behövs!Här är vad du behöver:-1 duk.-En bild på någon låtsas att blåsa bubblor tryckt på vanliga...