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.

9 Besonderheiten bei Signalen<br />

Neben den obigen Erläuterungen über nebenläufige und sequentielle<br />

Signalzuweisungen gibt es noch einige Besonderheiten bei der Handhabung<br />

von Signalen in <strong>VHDL</strong>, die hier erwähnt werden sollen.<br />

9.1 Signaltreiber und Auflösungsfunktionen<br />

Ein Signal ist ein Informationsträger, der verschiedene Signalwerte annehmen<br />

kann. Im Falle herkömmlicher Signale, wie sie in vorhergehenden<br />

Kapiteln erläutert wurden, wird dieser Wert durch Signalzuweisungen<br />

festgelegt. Dahinter verbirgt sich aber ein Mechanismus,<br />

der erst bei mehrfachen, gleichzeitigen Zuweisungen an ein und dasselbe<br />

Signal wichtig wird: Das Konzept von Signaltreibern und Auflösungsfunktionen<br />

("resolution functions").<br />

Soll z.B. ein Bus oder eine bidirektionale Verbindung aufgebaut werden,<br />

sind jeweils mehrere Signalquellen für ein Signal vorzusehen, die<br />

in gewisser Weise einen Teil zum resultierenden Signalwert auf dem<br />

Bus oder der bidirektionalen Leitung beitragen. Diese einzelnen Signalquellen<br />

werden in <strong>VHDL</strong> als Signaltreiber ("driver") bezeichnet.<br />

Signaltreiber werden durch <strong>VHDL</strong>-Signalzuweisungen erzeugt. Dies<br />

geschieht oft auch unbeabsichtigt durch mehrfache Signalzuweisungen.<br />

Das Signal w im nachfolgenden Beispiel besitzt durch die beiden<br />

Signalzuweisungen zwei Signaltreiber, die u.U. auch gleichzeitig aktiv<br />

sein können, da die Anweisungen nebenläufig (parallel) ablaufen.<br />

ARCHITECTURE arch_one OF anything IS<br />

BEGIN<br />

w

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!