Typenkonvertierung unsigned-std_logic

OP #3358029
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
Gast #3358051
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);'...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren