Bonjour,
Je suis débutante en langage VHDL, j'ai du mal à comprendre un truc concernant la conversion ( sur la bibliothèque STD_LOGIC_ARITH.All )
Alors voilà soient les 7 signaux suivants :
1 2 3 4 5 6
| OI3 : out integer range -2048 to 2047;
OLL: out std_logic_vector(10 downto 0);
OS1: out signed(7 downto 0);
OU1: out unsigned(10 downto 0);
IL1, IL2, IL3 : in std_logic_vector(3 downto 0) |
quand j arrive à la conversion, je ne suis pas très sûre à propos de la différence entre :
OI3 <= conv_integer(IL1);
et :
1 2 3
| OLL <= conv_std_logic_vector(unsigned(IL1),OLL'length);
OS1 <= conv_signed(unsigned(IL3),OS1'length);
OU1 <= conv_unsigned(unsigned(IL2),OU1'length); |
pourquoi le unsigned ( en rouge ) figure dans certains cas et ne figurent pas dans d'autres ?
le programme serait il incorrecte si l'on avait pas mentionné le unsigned ?
Merci de me clarifier
Partager