Jaké jsou rozdíly mezi verilogem a systemverilogem?


Nejlepší odpověď

1. Verilog je HDL (Hardware Description Language), zatímco SystemVerilog (SV) je HDL i HVL (Hardware Verification Language), tak v kombinaci s názvem HDVL.

2. Verilog má hlavně 2 datové typy Reg a Wire, což jsou 4 hodnotové logiky 0,1, x, z, zatímco SV je obohacen o širokou škálu datový typ jako int, shortint, longint, logic, bit, real, realtime, reg, chandle, uživatelem definovaný datový typ atd., což jsou kombinace logiky se 4 a 2 hodnotou.

3. Paměť a pole deklarace na Verilogu má statickou povahu, zatímco v případě SV má dynamickou povahu, což znamená, že deklaraci lze během kompilace změnit.

4. Celá fronta událostí ve Verilogu je rozdělena na 4 aktivní oblasti , neaktivní, NBA a odložená oblast, zatímco v případě SV je rozdělena do 17 regionů včetně PLI a zavedení programového bloku, který má zabudovanou metodu race free testbench a používá se jako separace mezi n DUT a TB na rozdíl od Verilogu.

5. Verilog má jeden vždy blok pro implementaci kombinační a sekvenční logiky, zatímco SV používá konstrukt always\_ff, always\_comb, always\_latch pro použití jiné logiky.

6. Úplný a paralelní případ ve Verilogu jsou nahrazeny jedinečným a prioritním příkazem v SV.

7. Implementace FSM v SV je mnohem snazší v SV s použitím datového typu enum, který má řadu metody jako číslo, první, poslední, další, předchozí, které pomáhají při ladění účelu, na rozdíl od použití parametru ve Verilogu, který je napevno zakódován.

8. SystemVerilog používá konstrukci rozhraní, která se používá pro seskupování všech signálů, spolu s taktovacím blokem, který se používá pro synchronizaci, na rozdíl od Verilogu, kde se instance s DUT stává zdlouhavou kvůli velkému počtu signálů. testbench na úrovni modulu, zatímco SV používá Classb testbench, který má dynamickou povahu.

Odpověď

SystemVerilog je nadmnožinou a rozšíření do jazyka Verilog . Abychom pochopili, jak se to vyvinulo, bude dobré stručně pochopit historii toho, jak se to vyvinulo.

Verilog language začal v 1983 jako patentovaný jazyk pro modelování hardwaru Gateway Design Automation Inc. Gateway Design Automation později získala společnost Cadence v roce 1990 a pokračovala v vylepšování. Později se stal standardem IEEE 1364 v roce 1995 a začal se stále více používat. Později v 2001 a 2005 došlo k dvěma hlavním vylepšením Verilogu.

Ve stejném časovém rámci se zvyšovala složitost návrhu a vylepšení ve standardu Verilog byla primárně pro konstrukce RTL.

Metodiky ověřování se také vyvinuly ve stejném časovém rámci, aby se vypořádaly s účinným ověřováním složitých návrhů. Omezené náhodné ověření s ověřením na základě pokrytí a tvrzení se stalo užitečnějším.

Protože jazyk Verilog neměl podporu pro stejný jazyk, několik dalších jazyků zaměřených na ověření, jako je Vera a Specman se v průmyslu staly široce používanými, protože podporovaly většinu konstrukcí potřebných k ověření, pokud jde o modelování, stimuly, tvrzení atd. Tyto jazyky však byly omezeny na konkrétní prodejce a nikoli na žádný standard IEEE.

SystemVerilog byl původně zamýšlen jako rozšíření k Verilogu 2005 a stal se standardem IEEE 1800. Byl vydán jako samostatný dokumentovaný dokument a skládá se ze stovek vylepšení a rozšíření k verilogu. V roce 2009 se oficiálně stala super sadou Verilogu a v roce 2012 byla znovu aktualizována jako standard IEEE 1800-2012 .

Bylo 5 hlavních oblasti, kde byla přidána vylepšení v SystemVerilog

1) SVD – System Verilog for Design. To zahrnuje několik vylepšení konstrukčních konstrukcí.

2) SVTB – SystemVerilog pro Testbenches: Toto byla největší sada vylepšení v SystemVerilog pro podporu všech modelování Testbench a potřeby novějších metodik ověřování.

To zahrnuje na vysoké úrovni – podporu objektově orientovaného programování s třídami, řešení omezení s několika schopnostmi pro vytváření omezených náhodných stimulů, souběžných procesů , semafory, poštovní schránky a mnoho dalších.

3) SVA – tvrzení systému Verilog: To zahrnuje několik funkcí pro časová a souběžná tvrzení, jako jsou vlastnosti a sekvence.

4) SVDPI – přímé programovací rozhraní SV: zahrnuje funkce pro lepší integraci C / C ++

5) SVAPI – Rozhraní pro programování aplikací SV: To zahrnuje funkce pro lepší integraci API pro pokrytí a tvrzení

Další informace najdete v IEEE 1800.2012 spec – 1800-2012 Standard

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *