7. Die Configuration

7.1 Configuration von Verhaltensmodellen

Bei reinen Verhaltensmodellen ist in der Configuration nur festzulegen, welche der existierenden Architekturen verwendet werden soll. In diesem Fall hat die Configuration folgendes Aussehen:

  CONFIGURATION configuration_name OF entity_name IS

FOR architecture_name
END FOR;

END configuration_name;

7.2 Configuration von strukturalen Modellen

Die Configuration von strukturalen Modellen dient dazu, in der Architektur instantiierte Sockel aufzufüllen, d.h. anzugeben, welches (bereits vorher definierte) Modell für jede einzelne Instanz der Architektur zu verwenden ist. Darüber hinaus können über die Configuration generische Parameterwerte an die einzelnen Instanzen übergeben werden und es kann definiert werden, wie die einzelnen Ports zu verdrahten sind. Dies geschieht in einzelnen Konfigurations-anweisungen. Dabei unterscheidet man prinzipiell zwischen Block-Konfigurationsanweisungen und Komponentenkonfigurationsanweisungen.

Block-Konfigurationsanweisungen

Wurden die Submodule der Architektur innerhalb von Blöcken oder GENERATE -Anweisungen instantiiert, so sind zunächst (evtl. über mehrere Hierarchieebenen) Blockkonfigurationsanwei-sungen (FOR ... END FOR ) zu verwenden. Auch die Auswahl der Architektur ist eine (obligatorische) Blockkonfigurationsanweisung. Die Syntax lautet:

  CONFIGURATION configuration_name OF entity_name IS

FOR architecture_name
FOR block_name

block configurations

component configurations


END FOR;
END FOR;

END configuration_name;

Komponenten-Konfigurationsanweisungen

Die Anweisungen zur Konfiguration von instantiierten Sockeln verweisen mit Hilfe der USE-Anweisung auf:

  • den Namen der Configuration des Modells, das verwendet werden soll,
  • den Namen der Entity mit Angabe der Architektur des zu verwendeten Modells,
  • inen unbeschalteten Sockel (USE OPEN)

Komponentenkonfigurationsanweisungen haben damit folgendes Aussehen:

  FOR instance_name : component_name

USE CONFIGURATION lib_name.config_name
GENERIC MAP (generic specification
)
PORT MAP (port association specification
);
END FOR;


FOR instance_name : component_name

USE ENTITY lib_name.entity_name (architecture_name)
GENERIC MAP (generic specification
)
PORT MAP (port association specification
);
END FOR;


FOR instance_name : component_name

USE OPEN;
END FOR;

Bei strukturalen Modellen, die mehrere Hierarchieebenen besitzen, kann bei den einzelnen Instanzen auf deren Configuration zurückgegriffen werden. Falls die zweite Alternative (Angabe von Entities und Architekturen) verwendet wird, muss die Configuration des übergeordneten Modells entsprechend hierarchisch über mehrere Ebenen reichen.

Configurations stehen immer in engem Zusammenhang mit der zugehörenden Architecture. Für Beispiele sei deshalb auf spätere Kapitel (Multiplexerbeispiel) verwiesen.