24.12.2012 Aufrufe

Schaltungsdesign mit VHDL

Schaltungsdesign mit VHDL

Schaltungsdesign mit VHDL

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.

6 Verhaltensmodellierung<br />

Mit der überarbeiteten Syntax (393) kann einer IF-ELSIF-ELSE-<br />

Anweisung auch ein Label gegeben werden. Entsprechend kann in der<br />

END IF-Anweisung dieses Label wiederholt werden:<br />

[if_label :] IF condition_1 THEN<br />

...<br />

END IF [if_label] ;<br />

6.5.6 CASE-Anweisung<br />

Eine weitere Möglichkeit der bedingten Ausführung bestimmter Anweisungen<br />

liegt in der CASE-Anweisung. Sie bietet sich insbesondere<br />

bei mehrfacher Verzweigung basierend auf einem Ausdruck an:<br />

CASE expression IS<br />

{ WHEN value_n =><br />

...<br />

...<br />

... }<br />

-- sequentielle Anweisungen<br />

[ WHEN OTHERS<br />

...<br />

=><br />

...<br />

... ]<br />

END CASE ;<br />

-- sequentielle Anweisungen<br />

Im Gegensatz zu IF-ELSIF-ELSE müssen hier allerdings alle Werte<br />

(value_n), die der Ausdruck (expression) annehmen kann, explizit<br />

angegeben werden. Um die noch nicht behandelten Werte abzufragen,<br />

kann auch das Schlüsselwort OTHERS dienen.<br />

Folgende Beispiele einer bedingten Verzweigung sind äquivalent:<br />

ENTITY four_byte_rom IS<br />

PORT (address : IN integer RANGE 1 TO 4;<br />

contents : OUT bit_vector(1 TO 8) ) ;<br />

END four_byte_rom;<br />

© G. Lehmann/B. Wunder/M. Selz 157

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!