Hardwarebeschreibungssprachen
Mit einer Hardwarebeschreibungssprache lässt sich das Verhalten von digitalen Schaltkreisen in Textform beschreiben. Aus dem Quelltext können dann z. B. Daten für die Programmierung von Logikbausteinen (FPGA, CPLD, GAL) gewonnen werden (Synthese), oder es lassen sich Simulationen durchführen. Dabei muss man beachten, dass Hardwarebeschreibungssprachen zwar wie "normale" Programmiersprachen aussehen, es aber nicht sind! Sie beschreiben im wesentlichen eine parallel arbeitende Hardwarestruktur, im Gegensatz zu sequenziellen Ablauf einer Programmiersprache. Natürlich kann man auch sequentielle Abläufe in einer Hardwarebeschreibungssprache ausdrücken. Dazu verwendet man endliche Zustandsautomaten (engl. Finite State Machines).
ABEL
Advanced Boolean Equation Language
ABEL wird hauptsächlich für kleinere Aufgaben wie die Programmierung von GALs und ISPs verwendet. Xilinx unterstützt ABEL als Beschreibungssprache für CPLDs (CoolRunner-Familie, XC95xxx-Familie)
- ABEL-HDL Primer - englischsprachige ABEL-Einführung von der University of Pennsylvania
- Eintrag deutsche Wikipedia - Geschichte und Beispiel
AHDL
Die Altera Hardware Description Language AHDL ist eine Weiterentwicklung von ABEL.
Verilog
Verilog wurde 1983 von der Firma Gateway Design Automation entwickelt. Zu diesem Zeitpunkt diente sie der Simulation/Verifikation, aber nicht der Synthese digitaler Schaltungen. Das gab dieser Sprache auch den Namen: Verifying Logic - Veri Log.
Verilog ist vornehmlich auf dem amerikanischen Kontinent verbreitet.
- Verilog Handbook nicht mehr online, als HTML und PDF noch hier zu finden:
http://web.archive.org/web/20060805053107/http://www.eg.bucknell.edu/~cs320/1995-fall/verilog-manual.html http://web.archive.org/web/20060805053107/http://www.eg.bucknell.edu/~cs320/1995-fall/manual.pdf
- Verilog Quick Reference
- Verilog Tips and Tricks
- Websites für Lernende
- An Introduction To Verilog bei www.pyroelectro.com
VHDL
Very High Speed Integrated Circuit Hardware Description Language
VHDL ist die in Europa vorwiegend verwendete Beschreibungssprache für digitale Schaltungen.
SystemC
SystemC ist im Gegensatz zu VHDL oder Verilog keine eigene Hardware-Beschreibungssprache sondern eine Klassenbibliothek für C++. Mit SystemC ist es möglich Hardware abstrakt und auf der Register Transfer Ebene (RTL) zu beschreiben. Für eine Beschreibung auf RTL wurde ein VHDL ähnlicher Dialekt gebildet. Für SystemC gibt es zahlreiche erweiterung wie zB. das Transaction Linking Modell (TLM) mit dem es möglich ist komplette Protokolle nachzubilden. Bisher ist es jedoch so das SystemC nicht synthesefähig ist, dieses wird sich im laufe der Zeit ändern. Schon jetzt ist es möglich mit highlevel Synthesen C oder auch C++ Programme zu Synthetisieren und diese auf einen FPGA zu programmieren.
VHDL-AMS
VHDL mit Erweiterungen für die Analog/Mixed Signal - Simulation. Diese Beschreibungssprache wird z. B. benutzt, um elektrodynamische und mechanische Modelle wie Bremsen, Motoren und Ähnliches in elektrische Schaltungssimulationen zu integrieren.
Weblinks
- Hiesiger thread: http://www.mikrocontroller.net/forum/read-9-358956.html
- http://www.syssim.ecs.soton.ac.uk/
- http://www.vhdl-ams.org/Tools/tools.html
- VHDL-AMS simulator (SEAMS), Version 1.1c (23 March 99): http://www.ececs.uc.edu/~dpl/distribution/packages/packages.html
- SMASH: http://www.dolphin-integration.com/medal/smash/smash_overview.html
- Simplorer oder hAMSter: http://www.ansoft.com/about/academics/simplorer_sv/index.cfm
- Linkliste: http://www.vlsi.informatik.tu-darmstadt.de/staff/klupsch/steffen-vhdlams_links.html
- VHDL-AMS models & prototyping : http://www.systemsvip.com
Bücher
- VHDL-AMS. Mit CD. Anwendungen und industrieller Einsatz (Broschiert) von Yannick Herve, ISBN: 3486577875, 34,80 EUR, März 2006
Sonstige
- CUPL: Zu ABEL verwandte Sprache, wird von Atmel noch als WinCUPL für Atmel-CPLDs kostenlos bereitgestellt, aber nicht mehr gepflegt. (Der Texteditor stürzt beim Speichern ab und beendet das Programm - Abhilfe: Wordpad o.ä. benutzen)
- GHDL: Genrad's hardware description langugage, eine boolsche Sprache zur Beschreibung von GALs und PALs.