Verilog er et hardwarebeskrivelsessprog (HDL). Det er et sprog, der bruges til at beskrive et digitalt system, såsom en netværksswitch, en mikroprocessor, en hukommelse eller en flip-flop. Vi kan beskrive enhver digital hardware ved at bruge HDL på ethvert niveau. Designs beskrevet i HDL er uafhængige af teknologi, meget nemme at designe og fejlfinde og er normalt mere nyttige end skemaer, især til store kredsløb.
Hvad er Verilog?
Verilog er et HARDWAREBESKRIVELSESPROG (HDL), som bruges til at beskrive et digitalt system såsom en netværksswitch eller en mikroprocessor eller en hukommelse en flip-flop.
Verilog blev udviklet for at forenkle processen og gøre HDL mere robust og fleksibel. I dag er Verilog den mest populære HDL, der anvendes og praktiseres i hele halvlederindustrien.
HDL blev udviklet for at forbedre designprocessen ved at give ingeniører mulighed for at beskrive den ønskede hardwares funktionalitet og lade automatiseringsværktøjer konvertere denne adfærd til faktiske hardwareelementer som kombinationsgates og sekventiel logik.
Verilog er ligesom ethvert andet hardwarebeskrivelsessprog. Det giver designerne mulighed for at designe designs i enten Bottom-up eller Top-down metodologi.
Verilog abstraktionsniveauer
Verilog understøtter et design på mange abstraktionsniveauer, såsom:
- Adfærdsniveau
- Register-overførselsniveau
- Portniveau
Adfærdsniveau
Adfærdsniveauet beskriver et system ved hjælp af samtidige algoritmer adfærdsmæssigt. Hver algoritme er sekventiel, hvilket betyder, at den består af et sæt af udførte instruktioner én efter én. Funktioner, opgaver og blokke er hovedelementerne. Der tages ikke hensyn til den strukturelle realisering af designet.
Registrerings-overførselsniveau
Design, der bruger registeroverførselsniveauet, specificerer et kredsløbs karakteristika ved hjælp af operationer og overførsel af data mellem registrene.
Den moderne definition af en RTL-kode er 'Enhver kode, der kan syntetiseres, kaldes RTL-kode'.
Portniveau
Et systems karakteristika er beskrevet af logiske links og deres timingegenskaber inden for det logiske niveau. Alle signaler er diskrete signaler. De kan kun have bestemte logiske værdier (`0', `1', `X', `Z`).
De brugbare operationer er foruddefinerede logiske primitiver (grundlæggende porte). Portniveaumodellering er muligvis ikke den rigtige idé til logisk design. Gate-niveaukode genereres ved hjælp af værktøjer såsom synteseværktøjer, og hans netliste bruges til gate-niveau-simulering og backend.
Verilogs historie
- Verilog HDL's historie går tilbage til 1980'erne, da et firma kaldet Gateway Design Automation udviklede en logisk simulator, Verilog-XL, og et hardwarebeskrivelsessprog.
- Cadence Design Systems erhvervede Gateway i 1989 og med det rettighederne til sproget og simulatoren. I 1990 satte Cadence sproget i det offentlige domæne med den hensigt, at det skulle blive et standardsprog, der ikke er proprietær.
- Verilog HDL vedligeholdes nu af en nonprofitorganisation, Accellera, dannet af fusionen af Open Verilog International (OVI) og VHDL International. OVI havde til opgave at tage sproget gennem IEEE-standardiseringsproceduren.
- I december 1995 blev Verilog HDL IEEE Std. 1364-1995. En væsentligt revideret version blev offentliggjort i 2001: IEEE Std. 1364-2001. Der var en yderligere revision i 2005, men denne tilføjede kun nogle få mindre ændringer.
- Accellera har også udviklet en ny standard, SystemVerilog, som udvider Verilog.
- SystemVerilog blev en IEEE-standard (1800-2005) i 2005.
Hvordan er Verilog nyttig?
Verilog skaber et abstraktionsniveau, der hjælper med at skjule detaljerne om dens implementering og teknologi.
For eksempel ville et D-flip-flop-design kræve viden om, hvordan transistorerne skal arrangeres for at opnå en positiv-flank-udløst FF, og hvad de stige-, fald- og CLK-Q-tider, der kræves for at låse værdien på et flop blandt mange andre teknologiorienterede detaljer.
Effekttab, timing og evnen til at drive net og andre flops ville også kræve en mere grundig forståelse af en transistors fysiske egenskaber.
Verilog hjælper os med at fokusere på adfærden og lade resten blive sorteret ud senere.
Forudsætninger
Før du lærer Verilog, bør du have et grundlæggende kendskab til VLSI-designsprog.
- Du bør vide, hvordan logiske diagrammer fungerer, boolsk algebra, logiske porte, kombinerede og sekventielle kredsløb, operatører osv.
- Du bør kende til statiske tidsanalysekoncepter såsom opsætningstid, holdetid, kritisk vej, grænser for clockfrekvens osv.
- ASIC og FPGA grundlæggende og syntese og simuleringskoncepter.
Publikum
Vores Verilog-tutorial er designet til at hjælpe begyndere, designingeniører og verifikationsingeniører, der er villige til at lære at modellere digitale systemer i Verilog HDL for at tillade automatisk syntese. Ved slutningen af denne tutorial, vil du have opnået et mellemliggende niveau af ekspertise i Verilog.
Problem
Vi forsikrer dig om, at du ikke vil finde noget problem med Verilog Tutorial. Men hvis der er nogen fejl, så send venligst spørgsmålet i kontaktformularen.