Anatomie eines VHDL-Moduls
Der zugehörige Code befindet sich in FPGA\SimpleLed\Button\src\button_led.vhd.
Jedes VHDL-Modul besteht aus zwei klar getrennten Teilen: der Entity und der Architecture. Diese Struktur ist in VHDL immer gleich – egal ob das Modul eine einfache LED-Steuerung oder ein komplexer Prozessor ist.
Die Entity – die Außenschnittstelle
Die Entity beschreibt, wie das Modul nach außen aussieht – vergleichbar mit dem Gehäuse eines ICs. Sie legt fest, welche Signale hinein- und herausgehen.
Im Port-Bereich werden alle elektrischen Anschlüsse aufgelistet. Jeder Port hat einen Namen, eine Richtung (in oder out) und einen Typ. In diesem Beispiel hat das Modul zwei Ports:
btnist ein Eingangsport. Das Modul liest dieses Signal, kann es aber nicht verändern.ledist ein Ausgangsport. Das Modul treibt diesen Pin aktiv mit einem berechneten Wert.
Der Typ STD_LOGIC repräsentiert ein einzelnes digitales Signal und ist der in VHDL am häufigsten verwendete Typ. Er stammt aus der IEEE-Bibliothek, die deshalb zu Beginn eingebunden wird.
Die Architecture – das Innenleben
Die Architecture beschreibt, was das Modul tatsächlich tut. Der Name Behavioral ist frei wählbar und hat keine technische Bedeutung – er dient nur der Lesbarkeit.
In diesem Beispiel enthält die Architecture nur eine einzige Zeile Logik:
led <= NOT btn; Das bedeutet: Der Ausgang led erhält immer den invertierten Wert von btn. Da der Button am FPGA-Board Low-aktiv verschaltet ist (gedrückt = logisch 0), leuchtet die LED genau dann, wenn der Button gedrückt wird.
Zusammenfassung
| Teil | Aufgabe |
|---|---|
| Entity | Definiert die Ports (Schnittstelle nach außen) |
| Architecture | Beschreibt die Logik (Verhalten im Inneren) |
Diese klare Trennung ist ein Grundprinzip von VHDL: Man beschreibt zuerst was ein Modul anschließt – und danach wie es sich verhält.
Weiter zu: Getaktete Logik in VHDL
