24.12.2012 Aufrufe

Schaltungsdesign mit VHDL

Schaltungsdesign mit VHDL

Schaltungsdesign mit VHDL

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

11.3.3 Überladen von Aufzähltypwerten<br />

11 Spezielle Modellierungstechniken<br />

Neben Unterprogrammen und Operatoren können auch die einzelnen<br />

Werte eines Aufzähltyps überladen werden. Man denke z.B. an den Signalwert<br />

'0' des Logiktyps bit und die '0' des benutzerdefinierten<br />

Logiktyps mvl4. Tritt ein Ausdruck <strong>mit</strong> solchen Werten im<br />

<strong>VHDL</strong>-Quelltext auf, so muß aus dem Kontext heraus klar sein, um<br />

welchen Typ es sich dabei handelt. Kann dies nicht eindeutig festgestellt<br />

werden, so ist eine explizite Typkennzeichnung erforderlich.<br />

11.3.4 Explizite Typkennzeichnung<br />

Bei mehrdeutigen Ausdrücken (s.o.) und Typen von Operanden ist die<br />

explizite Kennzeichnung des gewünschten Typs durch sog. qualifizierte<br />

Ausdrücke ("qualified expressions") erforderlich. Unter Angabe<br />

des Typ- bzw. Untertypnamens haben sie folgende Syntax:<br />

type_name'(expression)<br />

Eine mögliche Konstellation für die Notwendigkeit eines solchen Konstruktes<br />

zeigt folgendes Beispiel. Hier wird durch die Typkennzeichnung<br />

explizit angegeben, welche Variante des mehrfach überladenen<br />

Vergleichsoperators "=" zu verwenden ist.<br />

USE work.fourval.ALL; -- siehe oben<br />

ENTITY equal IS<br />

PORT (a,b,c,d : IN mvl4;<br />

w : OUT mvl4; x,y,z : OUT boolean );<br />

END equal;<br />

ARCHITECTURE behavioral OF equal IS<br />

BEGIN -- verw. Funktion in [ ]<br />

w

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!