11.10.2013 Aufrufe

Hardware-Entwurf mit VHDL

Hardware-Entwurf mit VHDL

Hardware-Entwurf 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.

<strong>Hardware</strong>-<strong>Entwurf</strong> <strong>mit</strong> <strong>VHDL</strong><br />

Prof. Dr.-Ing. Stefan Wolter Elektrotechnik und Informatik<br />

• Ansprechen von Objekten in Records:<br />

- Der Zugriff auf Elemente des Records erfolgt über sog. „selected names“, bei denen der Name<br />

des Elements durch einen Punkt getrennt an den Namen des Records gehängt wird:<br />

record_name . record_element_name<br />

- Die Zuweisung von kompletten Records oder Einzelelementen kann auch über Aggregate erfolgen.<br />

- Beispiele:<br />

TYPE complex IS RECORD -- Deklaration des Records „complex“<br />

part_real : integer;<br />

part_imag : real;<br />

END RECORD;<br />

. . .<br />

VARIABLE var1, var2 : complex ;<br />

var1.part_real := 5 ;-- Zuweisung über selected name<br />

var1.part_imag := 1.9 ;-- Zuweisung über selected name<br />

var2 := var1 ; -- Zuweisung eines gesamten Records<br />

-- Zuweisung über positional association:<br />

var1 := (5, 1.9);<br />

-- Zuweisung über named association:<br />

var2 := (part_real => 5, part_imag => 1.9);<br />

2.5 Attribute<br />

- Mit Hilfe von vordefinierten Funktionen können bestimmte Eigenschaften von Objekten oder<br />

Typen abgefragt werden. Diese Art von Funktionen nennt man Attribute.<br />

- Durch Attribute können <strong>VHDL</strong>-Modelle kürzer und eleganter gestaltet werden.<br />

- Es gibt eine Reihe von vordefinierten Attributen z.B. für Typen, Felder und Signale.<br />

- Syntax:<br />

obj_or_type_name’attr_1_name { ’ attr_n_name }<br />

- Es sind auch anwenderspezifische Attribute möglich.<br />

<strong>VHDL</strong>-GRUNDLAGEN 37

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!