Forum: FPGA, VHDL & Co. VHDL Unterschied = und ?=


von ffff (Gast)


Lesenswert?

Ich bin grad auf den linken Operator gestossen, und kann mir nicht so 
recht erläutern für was dieser Operator(? vor Vergleichsoperatoren) da 
ist?
?/= für "matching inequality" etc.

Kann mir jemand helfen?

von Alexander F. (alexf91)


Lesenswert?

Der Unterschied ist in der Behandlung von don't care Werten

'-' = '1' ist falsch
'-' ?= '1' ist wahr

Der Operator wurde in VHDL-2008 eingeführt.
Zusätzlich gibt es noch "case?", auch hier werden don't care Werte 
wirklich als solche behandelt.

von ffff (Gast)


Lesenswert?

und was hilft mir das dann bei z.B. größer und kleiner Werten. Oder wird 
don't care (lapidar ausgedrückt), dann immer der Verlierer sein?

Also

'-' ?<= '1' ist true
'_' ?>= '0' ist false?

von Alexander F. (alexf91)


Lesenswert?

Das VHDL Reference Manual liefert hier Auskunft, ich habe die genauen 
Tabellen auch nicht im Kopf.

http://web02.gonzaga.edu/faculty/talarico/polibari/documents/VHDLrefManual.pdf

Ab Seite 120.

Definiert sind ?= und ?<, die anderen Operationen ergeben sich dann 
durch verodern und negieren.

von ffff (Gast)


Lesenswert?

Danke für das RefManual. Werd ich mir dann mal anschauen :)
Und schön das sogar eine katholische Universität aus USA sowas zum 
Download anbietet^^ Ich dachte die sagen, dass das eh Teufelszeug ist

von René D. (Firma: www.dossmatik.de) (dose)


Lesenswert?

ffff schrieb:
> und was hilft mir das dann bei z.B. größer und kleiner Werten. Oder wird
> don't care (lapidar ausgedrückt), dann immer der Verlierer sein?
>
> Also
>
> '-' ?<= '1' ist true
> '_' ?>= '0' ist false?

Ich lese das Ergebnis ist vom gleichen Typ. Mit welchem Konstrukt wird 
er über geben?

Hat jemand eine vollständig Zeile als Beispiel?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.