Forum: FPGA, VHDL & Co. Typenkonvertierung unsigned-std_logic


von Felix O. (felixanius)


Lesenswert?

Hallo alle,

Ich benutze das numeric_std Package, eine Frage dazu.

Beispiel:

signal scale: std_logic_vector(12 downto 0) := (others => '0');

...

scale <= unsigned(scale) + 1;


geht das? Ich weiß dass es gehen würde, wenn ich scale gleich als 
unsigned deklarieren würde, dann müsste ich nicht mehr per Hand 
konvertieren. Aber kann man mit unsigned rechnen und dann wieder in 
std_logic speichern?

Ist es schöner gleich unsigned zu benutzen? Gibt es Fälle, bei denen man 
mein obiges Beispiel anwenden müsste?

Ich frage das, weil ich meine das irgendwo mal gesehen zu haben und es 
intuitiv auch so gemacht hätte, da unsigned soweit ich weiß ein subtyp 
von std_logic ist.

Danke

von berndl (Gast)


Lesenswert?

pack noch ein 'std_logic_vector (....)' drumrum, dann funktioniert das. 
Aber warum nicht gleich als unsigned deklarieren? Falls du es 'nach 
aussen' uebergeben willst und dazu std_logic_vector verwenden moechtest, 
dann halt mit einem 'output_name <= std_logic_vector 
(interner_name);'...

von Felix O. (felixanius)


Lesenswert?

Alles klar, danke!

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.