05.07.2013 Aufrufe

VHDL Kompakt - CES

VHDL Kompakt - CES

VHDL Kompakt - CES

MEHR ANZEIGEN
WENIGER ANZEIGEN

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

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!