Forum: FPGA, VHDL & Co. VHDL: Warum "to" und "downto" bei Integer Variablen?


von Schnapphase (Gast)


Lesenswert?

Ich habe eine Frage zu VHDL:

Warum gibt es die Unterscheidung zwischen "to" und "downto" bei der 
range-Angabe von Integer Variablen?

Bei Signalen ist es mir klar. Und mir ist auch klar, warum ich einen 
range bei Variablen angeben sollte.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> Bei Signalen ist es mir klar. Und mir ist auch klar, warum ich einen
> range bei Variablen angeben sollte.
Bei Integern solltest du einen Range angeben, damit die Synthesetools 
auch kürzere Vektoren als 32 Bit für einen uneingeschränkten Integer 
anlegen können.

> Warum gibt es die Unterscheidung zwischen "to" und "downto" bei der
> range-Angabe von Integer Variablen?
Es ist egal, ob du den Range eines Integers aufsteigend (to) oder 
absteigend (downto) definierst. Hier wird ja keine Bitanordnung (wie bei 
einem Vektor) angegeben, sondern ein Bereich, in dem sich der Wert 
dieses Typs/Signals/Variable bewegen darf.

von Schnapphase (Gast)


Lesenswert?

Bis hierhin war mir da alles klar ;)

Ich suche eigentlich nach dem Grund, warum diese Unterscheidung gemacht 
wird.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Es ist eher andersrum:
Es gibt keinen Grund, dass die Bereichsangabe bei Integern eingeschränkt 
werden sollte. Bei Vektoren z.B. stellst du dir diese Frage (ob es nur 
to oder downto geben sollte/könnte) ja auch nicht ;-)

von Schnapphase (Gast)


Lesenswert?

Na bei Vektoren erhalte ich ja auch verschiedene Ergebnisse, was bei 
Integern nicht der Fall ist!

Aber ich verstehe deine Aussage - es gibt keinen Unterschied zwischen to 
und downto bei Integern, aber es gibt auch keinen Grund, eines der 
beiden weg zu lassen.

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.