Kom i gang med at designe kredsløb med Verilog

Afsløring: Din support hjælper med at holde webstedet kørt! Vi tjener et henvisningsgebyr for nogle af de tjenester, vi anbefaler på denne side.


Verilog er et hardwarebeskrivelsessprog (HDL). Dette ligner et programmeringssprog, men ikke helt den samme ting. Mens et programmeringssprog bruges til at opbygge software, bruges et hardwarebeskrivelsessprog til at beskrive opførslen af ​​digitale logiske kredsløb. Det vil sige, en HDL bruges til at designe computerchips: processorer, CPU’er, bundkort og lignende digitale kredsløb.

Verilog historie

Verilog var en af ​​de første moderne HDL’er. Der var flere tidligere HDL’er, der gik tilbage til 1960’erne, men de var relativt begrænsede. Indtil Verilog (og dens nære konkurrent, VHDL), blev de fleste kredsløbsdesign primært udført for hånd, hvilket oversatte den opførsel, der er specificeret i et formelt hardwarebeskrivelsessprog, til udkast til kredsløbskort-tegninger.

Verilog startede i begyndelsen af ​​1980’erne som et proprietært (lukket kildesprog) til simulering af hardware – delvis til at udføre hardwareverifikationsarbejde. (Navnet er en kombination af “verifikation” og “logik.”) Designet inkorporerede ideer fra andre HDL’er (for det meste HiLo) og også fra programmeringssprog (for det meste C). Når folk begyndte at bruge sproget, var det tydeligt, at det kunne bruges til at designe ny hardware. Dette krævede design af hardware-synteseværktøjer, der kunne oversætte logikken for et HDL-modul til et fysisk design.

I 1990 besluttede det firma, der ejede Verilog (Cadence), at åbne kildekode sproget. De overførte rettighederne til en ny non-profit organisation kaldet Open Verilog International (som senere fusionerede med den tilsvarende organisation for VHDL til dannelse af Accellera). Hardwareleverandører begyndte hurtigt at ændre og udvide Verilog til deres egne formål og skabte snesevis af lidt uforenelige versioner. OVI bad IEEE om at standardisere sproget, som det gjorde i 1995. IEEE er fortsat det autoritative standardiseringsorgan for Verilog-sproget, og Accellera er den primære drivkraft for sprogudvikling.

Verilog har ændret sig meget i de sidste tre årtier. Før standardisering introducerede hver nye version fra Cadence et stort antal nye funktioner. Siden standarden blev taget op af IEEE har der været tre sprogspecifikationer – den seneste i 2005.

Verilog-familien

Ud over det centrale Verilog-sprog er der to større medlemmer af Verilog-familien.

  • SystemVerilogis er et supersæt af Verilog, der tilføjer et komplet hardwareverifikationssprog.
  • Verilog-AMS er et derivat af Verilog, der tilføjer funktioner til beskrivelse af analoge og blandede signalsystemer.

Verilog syntaks og eksempler

Syntaks og struktur for Verilog ligner meget C. Den største forskel er, at den inkluderer strukturer og operatører til beskrivelse af hardwarespecifikke detaljer.

Nogle ting gøres mere eksplicit i Verilog – forplantningstid og signalstyrke, for eksempel – som ikke rigtig behandles på sprog som C.

Andre ting er faktisk abstraheret lidt – som flip-flops (udveksling af værdier for to variabler), som kan vises i Verilog uden behov for midlertidig tildeling til ad-hoc-variabler. I det følgende eksempel udskiftes værdierne i x- og y-variablerne:

begynde
x <= y;
y <= x;
ende

For at give dig en lidt fornemmelse af sproget er her tre eksempler på den samme multiplexproces. Disse kombinerer alle signalerne fra to indgange til en enkelt udgang.

Eksempel: Kontinuerlig tildeling

tråd ud;
tildele ud = sel? a: b;

Eksempel: Procedure

reg ud;
altid @ (a eller b eller sel)
begynde
tilfælde (sel)
1’b0: ud = b;
1’b1: ud = a;
endcase
ende

Eksempel: Hvis-andet

reg ud;
altid @ (a eller b eller sel)
hvis (sel)
ud = a;
andet
ud = b;

Det altid nøgleord danner en uendelig sløjfe. Når @ () -operatøren tilføjes, sker der en iteration af løkken, hver gang de navngivne værdier ændres.

Verilog Resources

Fordi Verilog ikke er et traditionelt softwareprogrammeringssprog, er ressourcerne mere fokuseret på bøger. Men vi har også sammensat nogle af de bedste online ressourcer.

Online ressourcer

  • Vejledninger
    • Verilog-tutorial fra Asic World: informationen er fremragende, især for dem, der har brug for en tutorial på entry-level. Men du bliver nødt til at ignorere dets forfærdelige design.
    • Verilog Primer: en bare bog med fire ben på kapitel, der prøver at levere “bare fakta” om Verilog. Meget godt til at forkæle dig selv.
    • Introduktion til Verilog: et gratis ni-kapitel kursus.
  • Værktøj
    • VeriPool: gratis softwareværktøjer til Verilog-udvikling.
    • Verilog Online Simulator: en gratis Verilog-tolk.

Bøger

I modsætning til populære sprog til softwareudvikling er der bare ikke så mange online ressourcer og tutorials til Verilog. Hvis du vil lære sproget, skal du erhverve nogle fysiske bøger.

Introduktionsbøger

Dette er for folk lige begyndt at lære Verilog.

  • Introduktion til Verilog: en af ​​de bedre tilgængelige bøger, der lige er kommet i gang.
  • Fundamentals of Digital Logic with Verilog Design: en introduktion til emnet, skrevet og designet som en lærebog til et kursus på universitetsniveau. Integrerer CAD (computerstøttet design) software til at oversætte Verilog til fysisk kredsløb design, og dokumenterer, hvordan reelle chips faktisk fungerer.
  • Verilog ved eksempel: En kort introduktion til FPGA-design: FPGA er feltprogrammerbar gate-array, en type integreret kredsløb, der kan programmeres efter fremstilling (og omprogrammeret). Dette kombinerer hastigheden ved direkte hardwareimplementering (som i en ASIC) med fleksibiliteten i softwareprogrammering. Verilog kan bruges til at programmere FPGA’er (faktisk, hvis du lige er i gang, er det meget mere sandsynligt, at du er i stand til at implementere dine designs på en FPGA end en ASIC, som skulle være specialfremstillet). Denne bog giver en solid introduktion til dette emne.
  • Digital design (Verilog): En indbygget systemtilgang ved hjælp af Verilog: en anden college-kursus-lærebog med introduktionsinformation om Verilog, denne med vægt på at designe indlejrede systemer (hvor du sandsynligvis finder dig selv nødt til at designe nye FPGA-billeder i den virkelige verden).
  • Digital design: Med en introduktion til Verilog HDL
  • Digital design og Verilog HDL Fundamentals
  • Verilog HDL Synthesis, en praktisk primer
  • SystemVerilog for Design Anden udgave: En guide til brug af SystemVerilog til hardware Design og modellering

Mellemliggende og avancerede bøger

Bøger til folk, der allerede kender Verilog, og vil øge deres færdighedsniveau.

  • Verilog og SystemVerilog Gotchas: 101 almindelige kodningsfejl og hvordan man undgår dem: en stærkt anbefalet bog til mellemliggende Verilog-programmerere, der ønsker at blive eksperter.
  • Verilog Designer’s Library: en slags Verilog opskriftsbog til arbejdende Verilog-udviklere.
  • Avanceret chipdesign, praktiske eksempler i Verilog: en af ​​de nyere tilføjelser til Verilog-kanonen, denne bog fra 2013 er et dybtgående kig på chipdesign fra en kunsthåndværker..
  • Digital logik RTL & Verilog Interview Spørgsmål

Bøger næsten om System Verilog

  • UVM Primer: En trinvis introduktion til den universelle verifikationsmetodologi
  • SystemVerilog til verifikation: En guide til indlæring af testbenchs sprogfunktioner
  • SystemVerilog-påstande og funktionel dækning: Vejledning til sprog, metodologi og applikationer

Alternativer til Verilog

Verilog er et af de to mest almindeligt anvendte hardwarebeskrivelsessprog. Den anden er VHDL. Derudover kan C ++ også bruges som HDL og HVL, dog mest kun til adfærdsdesign på højt niveau. De fleste seriøse hardwareudviklere taler flydende i alle tre plus større operativsystemsprog som lavt niveau som C.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map