Forum: FPGA, VHDL & Co. Interger speichern?


von Chris R. (mrgreen)


Lesenswert?

Hi,
kann ich einen Integer direkt speichern (in einem Register aus FlipFlops 
z.B.), oder muss ich den vorher in std_(u)logic_vector wandeln?

Kann ich mit std_(u)_logic_vector rechnen?

Wie macht man sowas generell?

Darf ich (also vom Stil her) Entities mit Integer-Signalen schreiben? 
Oder macht man sowas nicht?

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Chris R. wrote:
> kann ich einen Integer direkt speichern (in einem Register aus FlipFlops

Ja, kein Problem. Allerdings solltest du den Zahlenbereich einschränken 
(range x to y), sonst entsteht oft ein Register mit der maximalen Länge 
von 32 Bit.

> Kann ich mit std_(u)_logic_vector rechnen?

Jein, siehe Rechnen in VHDL.

> Darf ich (also vom Stil her) Entities mit Integer-Signalen schreiben?

Könnte man machen, ist aber unüblich.

von Chris R. (mrgreen)


Lesenswert?

Also würde ich immer zwischen Integer und std_(u)logic_vector wandeln?
Rechnen tue ich ja wohl auf Integer dann, und die Übergabe zwischen 
Entities durch std_logic_vetor?

von Klaus F. (kfalser)


Lesenswert?

Nein,
verwende die numeric_std Bibliothek, und rechne mit signed und unsigned 
Typen. Diese sind mit den std_logic_vectoren verwandt.
Auch die Übergabe an Ports kann man gut mit diesen Typen machen.

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.