Verilog versus VHDL: twee hardwarebeschrijvingstalen vergeleken
Verilog en VHDL zijn de twee belangrijkste hardwarebeschrijvingstalen (HDL's) om digitale schakelingen te beschrijven voor simulatie en logische synthese. Verilog heeft een beknopte, op C lijkende syntaxis en is gemakkelijk om mee te beginnen. VHDL is uitgebreider en strikt getypeerd, waardoor fouten eerder aan het licht komen. Met beide is dezelfde schakeling te beschrijven en de keuze hangt meestal af van de sector, het bedrijf en bestaande code.
| Kenmerk | Verilog (en SystemVerilog) | VHDL |
|---|---|---|
| Herkomst | In de jaren 1980 ontwikkeld door Gateway Design Automation en gestandaardiseerd als IEEE 1364 | Ontwikkeld voor het Amerikaanse ministerie van Defensie en in 1987 gestandaardiseerd als IEEE 1076 |
| Kenmerken van de syntaxis | Beknopt en lijkt op C | Uitgebreid en lijkt op Ada |
| Typen | Zwak getypeerd. Impliciete typeconversie is eenvoudig, maar kan fouten verbergen | Sterk getypeerd. Expliciete typeconversie is nodig en fouten worden bij het compileren gevonden |
| Hoofdletters en kleine letters | Hoofdlettergevoelig | Niet hoofdlettergevoelig |
| Leerbaarheid | Gemakkelijk om mee te beginnen | In het begin moeilijker, maar veilig zodra je eraan gewend bent |
| Verificatiemogelijkheden | Beperkt in Verilog zelf. SystemVerilog voegt klassen, constrained random testing, assertions en UVM toe | VHDL-2008 met bibliotheken zoals OSVVM en UVVM |
| Taalabstracties | Weinig. Modules en parameters | Rijk. Packages, generics, records, enumeraties |
| Toolondersteuning | Alle belangrijke simulators en synthesetools ondersteunen het | Alle belangrijke simulators en synthesetools ondersteunen het. Simulatie met gemengde talen is mogelijk |
| Belangrijkste gebruikers | ASIC- en SoC-ontwerp, vooral in de VS en Azië | Europa, lucht- en ruimtevaart en defensie, veel FPGA-ontwikkeling |
De getalswaarden zijn typische ordegroottes en variëren per procesgeneratie en product.