Vilka är skillnaderna mellan verilog och systemverilog?


Bästa svaret

1.Verilog är en HDL (Hardware Description Language) medan SystemVerilog (SV) är både en HDL och HVL (Hardware Verification Language), så kombinerat benämnt HDVL.

2. Verilog har huvudsakligen två datatyper Reg och Wire som är 4 värderade logiska 0,1, x, z medan SV är berikat med ett brett utbud av datatyp som int, shortint, longint, logik, bit, real, realtid, reg, chandle, användardefinierad datatyp, etc som båda är kombinationer av 4 och 2 värderad logik.

3.Minne och arrays deklaration på Verilog är statisk till sin natur, medan det i fråga om SV är dynamiskt till sin natur att deklarationen kan ändras under kompileringstiden.

4. Hela händelsekön i Verilog är indelad i fyra regioner som är aktiva , inaktiv, NBA och uppskjuten region medan den i fall av SV är uppdelad i 17 regioner inklusive PLI och introduktionen av programblock som har inbyggd metod rasfri testbänk och används som en separering mellan n DUT och TB till skillnad från Verilog.

5. Verilog har ett enda alltid block för implementering av kombinations- och sekventiell logik medan SV använder alltid\_ff, alltid\_komb, alltid\_låskonstruktion för användning av annan logik.

6. Fullständigt fall och parallellt fall i Verilog ersätts med unikt och prioritetsuttalande i SV.

7.FSM-implementering i SV är mycket lättare i SV med användning av enum-datatyp som har ett antal metoder som nummer, första, sista, nästa, föregående som hjälper till att felsöka syftet till skillnad från att använda parametern i Verilog som är hårdkodad.

8. SystemVerilog använder gränssnittskonstruktion som har använts för gruppering av alla signaler tillsammans med klockblock som används för synkronisering till skillnad från Verilog där instantiering med DUT blir tråkig på grund av ett stort antal signaler.

9. Verilog använder testnivå på modulnivå medan SV använder klassbaserad testbänk som är dynamisk till sin natur.

Svar

SystemVerilog är ett superset och ett tillägg till Verilog språk. För att förstå hur den utvecklades kommer det att vara bra att kort förstå historien om hur den utvecklades

Verilog-språk började på 1983 som ett eget språk för hårdvarumodellering vid Gateway Design Automation Inc. Gateway Design Automation förvärvades senare av Cadence 1990 och fortsatte förbättringar. Det blev senare IEEE standard 1364 1995 och började bli mer allmänt använt. Det fanns två stora förbättringar av Verilog senare i 2001 och 2005 .

Under samma tidsperiod ökade designkomplexiteten och förbättringarna i Verilog-standarden var främst för RTL-konstruktioner.

Verifieringsmetoder utvecklades också inom samma tidsram för att hantera effektiv verifiering av komplexa mönster. Begränsad slumpmässig verifiering med täcknings- och påståendebaserad verifiering blev mer användbar.

Eftersom Verilog-språket inte har stöd för samma, har flera andra verifieringsorienterade språk som Vera och Specman blev allmänt använd inom industrin eftersom de stödde de flesta konstruktioner som behövdes för verifiering när det gäller modellering, stimulans, påståenden etc. Men dessa språk var begränsade till specifika leverantörer och inte någon IEEE-standard.

SystemVerilog var ursprungligen avsedd som en förlängning av Verilog 2005 och blev IEEE-standard 1800. Den publicerades som en separat dokumenterad och består av hundratals förbättringar och tillägg till verilog. 2009 blev det officiellt en super uppsättning av Verilog och uppdaterades igen 2012 som IEEE 1800-2012 standard.

Det fanns 5 stora områden där förbättringar har lagts till i SystemVerilog

1) SVD – Systemverilog för design. Detta inkluderar flera förbättringar av designkonstruktioner.

2) SVTB – SystemVerilog för testbänkar: Detta var den största uppsättningen förbättring i SystemVerilog för support all testbänkmodellering och behov av nyare verifieringsmetoder.

Detta inkluderar på en hög nivå – Objektorienterad programmeringsstöd med Classes, en begränsningslösare med flera funktioner för att skapa begränsad slumpmässig stimulans, samtidiga processer , semaforer, brevlådor och många fler.

3) SVA – System Verilog-påståenden: Detta inkluderar flera funktioner för tidsmässiga och samtidiga påståenden som egenskaper och sekvenser.

4) SVDPI – SV Direct Programming Interface: Detta inkluderar funktioner för bättre C / C ++ -integration

5) SVAPI – SV Application Programming Interface: Detta inkluderar funktioner för bättre integrering av API: er för täckning och påståenden

För mer information, se IEEE 1800.2012 spec – 1800-2012 Standard

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *