Hello,
Titre un peu bizarre, je sais pas vraiment comment ça s'appelle.
Je cherche à faire quelque chose de très simple : j'ai un std::logic_vector, je regarde la valeur d'un bit, et je génère un std_logic_vector qui soit '1111' si le bit est '1', et '0000' si le bit est '0'.
Il faut passer par une variable ? (Je cherche à faire ça en 1 cycle)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 signal n: std_logic_vector(31 downto 0); -- on regarde le bit de poids fort de n variable n_msb_extand: std_logic_vector(31 downto 0) := (others => '0'); --... process(i_clk) begin n_msb_extand := (others => n(31)); n <= (n(30 downto 0) & i_data) xor n_msb_extand; --... end process;
Partager