Hardware-Entwurf mit VHDL
Hardware-Entwurf mit VHDL
Hardware-Entwurf mit VHDL
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>Hardware</strong>-<strong>Entwurf</strong> <strong>mit</strong> <strong>VHDL</strong><br />
Prof. Dr.-Ing. Stefan Wolter Elektrotechnik und Informatik<br />
2.7 Strukturale Modellierung<br />
Unter einem Strukturmodell versteht man ein Modell aus verbundenen Komponenten in Form einer<br />
Netzliste. Die Gesamtstruktur kann hierarchisch aufgebaut sein. Das Vorgehen entspricht da<strong>mit</strong> der<br />
graphischen Schaltplaneingabe <strong>mit</strong> „verbalen“ Mitteln.<br />
• Die strukturale Modellierung kann man im allgemeinen Fall als dreistufiges Vorgehen ansehen:<br />
1. Komponentendeklaration,<br />
2. Komponenteninstantiierung und -verdrahtung,<br />
3. Konfiguration der Modelle.<br />
Für ein besseres Verständnis kann man sich dies <strong>mit</strong> ICs und zugehörigen Sockeln bzw. Sockeltypen,<br />
der Bildung von Instanzen <strong>mit</strong> diesen Sockeltypen und deren Verdrahtung sowie dem Einsetzen von<br />
IC-Typen in die einzelnen Sockel vorstellen. Die einzelnen Schritte werden im folgenden erklärt.<br />
2.7.1 Komponentendeklaration<br />
- Mit der Komponentendeklaration wird dem Compiler eine Komponente vor ihrer ersten Instantiierung<br />
bekanntgemacht. Dazu gehört die Angabe der Ports und die Angabe der zu übergebenden<br />
Parameter. Die Komponentendeklaration ist quasi ein Abbild der zur Komponenten<br />
gehörenden Entity.<br />
- Syntax:<br />
COMPONENT comp_name<br />
[ GENERIC (<br />
param_1 { , param_n } : type_name<br />
[ := def_value ]<br />
{ ; further_generic_declarations } ) ; ]<br />
[ PORT (<br />
{ port_1 { , port_n } : IN type_name<br />
[ := def_value ] }<br />
{ ; port_declarations_of_mode_OUT }<br />
{ ; port_declarations_of_mode_INOUT }<br />
{ ; port_declarations_of_mode_BUFFER } ) ; ]<br />
END COMPONENT [comp_name];<br />
- Die Wiederholung von comp_name ist erst ab der <strong>VHDL</strong>-93-Norm möglich.<br />
<strong>VHDL</strong>-GRUNDLAGEN 50