VHDL Kompakt - CES
VHDL Kompakt - CES
VHDL Kompakt - CES
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
8. Strukturbeschreibungen<br />
Konfigurationen erlauben weiterhin eine neu-Abbildung der Anschlüsse der Komponenten<br />
(component ...) zu denen des zugrundeliegenden Entwurfs (entity ...). Meist sind<br />
Komponenten- und Entity-Deklaration identisch, aber in einigen Fällen sind Umbenennungen<br />
oder Umordnungen notwendig.<br />
• Beispielsweise kann mit generischen Zellbibliotheken gearbeitet werden, die dann durch<br />
Konfigurationen auf Zielbibliotheken verschiedener Hersteller abgebildet werden.<br />
• Außerdem können Elemente des Entwurfs, durch Spezialisierung anderer, ähnlicher Teile<br />
ersetzt werden.<br />
In dem Beispiel wird der Inverter in COMPARE (vergl. Seite 7) an einen geeignet beschaltetes<br />
Nand-Gatter gebunden.<br />
Beispiel<br />
configuration NANDY of COMPARE is<br />
for ARCH_STRUCT<br />
for all: INV use entity work.NAND2(NO_DELAY)<br />
port map (A => X, B => X, C => Z);<br />
end for;<br />
end for;<br />
end configuration NANDY;<br />
8.1.3 Parametrisierung von Entities durch generische Werte<br />
Während <strong>VHDL</strong>-Entwürfe über Signale an den Ein- und Ausgängen im Sinne einer Struktur<br />
in der Umgebung eingebunden werden, kann deren Verhalten über generische Werte<br />
verändert werden. In den zugehörigen Architekturen und in der (den Generics folgenden)<br />
Port-Deklaration der Entity können die Werte als Konstanten benutzt werden. Typische Beispiele<br />
dazu sind Wortbreiten, Zähler(end)stände oder Verzögerungszeiten.<br />
Beispiel<br />
entity ADDER is<br />
generic ( BIT_WIDTH : integer range 2 to 64 := 16);<br />
port ( A, B : in signed(BIT_WIDTH-1 downto 0);<br />
SUM : out signed(BIT_WIDTH downto 0));<br />
end entity ADDER;<br />
...<br />
entity NAND2 is<br />
generic ( DEL : time := 185 ps);<br />
port ( A, B : in bit;<br />
C : out bit);<br />
end entity NAND2;<br />
architecture GEN_DELAY of NAND2 is erste architecture<br />
begin<br />
C