Verilog
# Verilog

Verilog, standardisiert als IEEE 1364, ist eine Hardwarebeschreibungssprache, die für die Modellierung mikroelektronischer Systeme (VLSI) verwendet wird. Verilog ist neben VHDL die weltweit meistgenutzte Hardwarebeschreibungssprache zum Entwerfen von Computerchips (ASICs, FPGAs).

## Geschichte

Verilog wurde 1983/84 von Phil Moorby bei Gateway Design Automation ursprünglich als Simulationssprache entworfen. Der zweite wichtige Einsatzbereich ist die Synthese digitaler Schaltungen. Gateway Design Automation wurde 1990 von Cadence Design Systems aufgekauft. Cadence war nun Besitzer der Rechte an Verilog und des Logiksimulators Verilog-XL.

Parallel zu Verilog wurde die Beschreibungssprache VHDL immer populärer, und Cadence entschied 1995, Verilog in einen freien Standard umzuwandeln, verwaltet von der Organisation Open Verilog International (OVI, auch bekannt als Accellera). Verilog wurde beim IEEE eingereicht und im selben Jahr als IEEE Standard 1364–1995 (Verilog-95) verabschiedet.

Durch Zusammenführen von Verilog-A (Modellierungssprache für analoge Schaltungen) und Verilog zu Verilog-AMS steht seit 1998 (erste Version) auch eine relativ leistungsfähige Sprache für Analog/Mixed-Signal-Designs zur Verfügung. Für den Analogbereich stehen jedoch keine Synthese-Tools zur Verfügung. Für den Digitalbereich lieferte Synopsys bereits 1988 ein Synthese-Werkzeug für Verilog aus.

Aufgrund von Einschränkungen, die von den Nutzern bemängelt wurden, veröffentlichte die IEEE im Jahr 2001 eine Erweiterung des Standards unter der Bezeichnung IEEE Standard 1364–2001, bekannt als Verilog 2001.

Im Juni 2002 erschien SystemVerilog 3.0, eine Erweiterung für den IEEE Standard 1364–2001. Mit SystemVerilog war es nun möglich, Hardware nicht nur zu beschreiben, sondern auch elegant zu verifizieren. Verilog wurde somit durch SystemVerilog zur ersten Hardware-Beschreibungs- und Verifikationssprache (englisch Hardware Description and Verification Language, kurz HDVL genannt). Auch in den letzten Jahren wurden ständig Spracherweiterungen vorgenommen.

## Funktionsweise

Verilog erlaubt es, Hardware (z. B. ICs) auf einer höheren Abstraktionsebene zu beschreiben, als es mit einem Schematic-Entry-Programm möglich wäre. Die Architektur, das Verhalten und niedrigere Abstraktionslevel auf Gatterebene können beschrieben werden.

Beispiel für ein Und-Gatter (and gate)

Beispiel für eine Verhaltensbeschreibung eines Flipflops (synthetisierbar)

Neben den Beschreibungsmöglichkeiten für Hardware bietet Verilog auch Merkmale aus anderen Sprachen, die z. B. für das Debugging oder für die Bereitstellung einer Testumgebung genutzt werden können. So ist es beispielsweise möglich, Textmeldungen auszugeben.

