VHDL Kompakt - CES
VHDL Kompakt - CES
VHDL Kompakt - CES
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
8. Strukturbeschreibungen<br />
Als Voreinstellung für den Bindungsmechanismus gelten folgende Regeln:<br />
top-level : Alle CAD-Programme, die <strong>VHDL</strong> verarbeiten, haben einen Schritt der Codeanalyse:<br />
wenn die Dateien mit <strong>VHDL</strong>-Code eingelesen werden. Existieren mehrere alternative<br />
Architekturen, dann wird die (zeitlich) zuletzt analysierte für die Entity benutzt. Sie<br />
wird auch als null Konfiguration bezeichnet.<br />
Komponente - Entity(Architektur) : Sind die Namen und die Deklarationen identisch, dann<br />
wird die Komponente durch die null-Konfiguration der gleichnamigen Entity ersetzt.<br />
In obigem Beispiel wird deshalb als implizite Konfiguration der Instanz I2: NAND2<br />
das Paar aus NAND2(GATE_DELAY) benutzt;<br />
Syntax<br />
configuration 〈configurationId〉 of 〈entityId〉 is<br />
for 〈architectureId〉<br />
{〈component configuration〉}<br />
end for;<br />
end [configuration] [ 〈configurationId〉 ];<br />
〈component configuration〉 ::=<br />
for 〈instance〉: 〈componentId〉<br />
use entity [ 〈libraryId〉.] 〈entityId〉 [(〈archId〉)] [ 〈mapping〉 ] ;|<br />
use configuration [ 〈libraryId〉.] 〈configId〉 [ 〈mapping〉 ] ;<br />
[ for 〈architectureId〉<br />
{〈component configuration〉}<br />
end for; ]<br />
end for;<br />
〈instance〉 ::= 〈label〉{, 〈label〉} | others | all<br />
〈mapping〉 ::= [ 〈generic map〉 ] [ 〈port map〉 ]<br />
Eine Konfiguration ist eine separate Entwurfseinheit, die die Bindung für einen Teil der<br />
Hierarchie beschreibt. Sie ersetzt in übergeordneten Entwürfen in Bindungsanweisungen<br />
ein Paar aus Entity und Architektur und sie kann einzeln analysiert und simuliert werden<br />
kann.<br />
Bei der <strong>VHDL</strong>-Simulation hat man meist schon dadurch eine Hierarchie, dass man eine<br />
Testumgebung einsetzt, welche die Schaltung als Komponente instanziiert. Über Prozesse<br />
oder andere Stimuligeneratoren werden die Eingänge getrieben, die Ausgänge kann man<br />
sich interaktiv ansehen oder prozedural auswerten. Viele Simulationsprogramme erwarten<br />
eine Konfiguration der Testumgebung — meist wird hier die null-Konfiguration benutzt:<br />
Syntax<br />
configuration 〈configurationId〉 of 〈entityId〉 is<br />
for 〈architectureId〉<br />
end for;<br />
end [configuration] [ 〈configurationId〉 ];<br />
56