9. Kontextbefehle

In Bild 6 wurde bereits auf die Zusammenhänge beim Compilieren und Simulieren mit Working-Library und Resource-Libraries hingewiesen.

Um in VHDL-Modellen mit Bibliothekselementen arbeiten zu können, muß die entsprechende Bibliothek zunächst bekanntgemacht werden. Dies geschieht mit Hilfe der LIBRARY -Anweisung unter Angabe von einem oder mehreren, durch Kommata getrennten logischen Bibliotheksnamen im Kontext von Design-Einheiten (d.h. im Quellcode vor der Design-Einheit stehend):

  LIBRARY lib_name , lib_name, ... ;

Per Default (ohne LIBRARY -Anweisung) sind die Bibliotheken standard (enthält allgemeine Packages) und work (logischer Name der Working-Library) bekannt.

Der Zusammenhang zwischen logischen Bibliotheksnamen und den realisierenden Verzeichnispfaden in einer Dateistruktur wird typischerweise in werkzeugspezifischen Konfigurationsfiles hergestellt.

Im VHDL-Modell kann nun mit entsprechenden Anweisungen unter Verwendung von sog. "selected names" auf die Elemente der Bibliothek (oder auf die Definitionen eines Packages aus der Bibliothek) zugegriffen werden:

  lib_name.design_unit_name
lib_name.package_name.package_element_name

Möchte man die Elemente der Bibliothek oder des Packages ohne den ausführlichen und langen "selected_name" ansprechen, so müssen sie mit USE -Anweisungen direkt sichtbar gemacht werden:

  USE lib_name.design_unit_name;
USE lib_name.all;
USE lib_name.package_name.package_element_name;
USE lib_name.package_name.all;

Per Default sind die Elemente des Packages standard direkt ansprechbar.

USE - und LIBRARY -Anweisungen stehen i.d.R. im Quellcode vor den Design-Einheiten. Sie werden deshalb als Kontextbefehle bezeichnet.