Probème de compilation sur Quartus II
Modérateur : Modérateur
Probème de compilation sur Quartus II
bonjour à tous,
Voilà j'ai problème, je n'arrive pas à compiler mon code VHDL sur quartus II(logiciel d'Altera). Alors que sur Galaxy (logiciel de Cypres), j'y arrivais.
Voici mon code en VHDL a l'expension *.vhd :
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
entity compteur is port (
clk : in bit;
Q : out bit_vector(3 downto 0));
end compteur;
architecture description of compteur is
signal cpt : integer range 15 downto 0;
begin
process(clk)
begin
if (clk='1' and clk'event) then
cpt <= cpt + 1;
end if;
end process;
Q <= bit_vector(cpt);
end description;
et voici le message d'erreur :
Error: VHDL Type Conversion error at cpt.vhd(22): integer type cannot be converted to bit_vector type
Error: Ignored construct description at cpt.vhd(12) because of previous errors
je ne comprends pas pourquoi il ne veut pas convertir le type integer en type bit_vector.
Merci d'avance pour votre aide.
Voilà j'ai problème, je n'arrive pas à compiler mon code VHDL sur quartus II(logiciel d'Altera). Alors que sur Galaxy (logiciel de Cypres), j'y arrivais.
Voici mon code en VHDL a l'expension *.vhd :
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
entity compteur is port (
clk : in bit;
Q : out bit_vector(3 downto 0));
end compteur;
architecture description of compteur is
signal cpt : integer range 15 downto 0;
begin
process(clk)
begin
if (clk='1' and clk'event) then
cpt <= cpt + 1;
end if;
end process;
Q <= bit_vector(cpt);
end description;
et voici le message d'erreur :
Error: VHDL Type Conversion error at cpt.vhd(22): integer type cannot be converted to bit_vector type
Error: Ignored construct description at cpt.vhd(12) because of previous errors
je ne comprends pas pourquoi il ne veut pas convertir le type integer en type bit_vector.
Merci d'avance pour votre aide.
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
entity compteur is port (
clk : in bit;
Q : out std_logic_vector(3 downto 0));
end compteur;
architecture description of compteur is
signal cpt : std_logic_vector(3 downto 0);
begin
process(clk)
begin
if (clk='1' and clk'event) then
cpt <= cpt + 1;
end if;
end process;
Q <= cpt; --tu as bien changé ici aussi?end description;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
entity compteur is port (
clk : in bit;
Q : out std_logic_vector(3 downto 0));
end compteur;
architecture description of compteur is
signal cpt : std_logic_vector(3 downto 0);
begin
process(clk)
begin
if (clk='1' and clk'event) then
cpt <= cpt + 1;
end if;
end process;
Q <= cpt; --tu as bien changé ici aussi?end description;
piged:
vu le message d'erreur tu as du appeler un fichier "cpt.vhd" et le définir comme l'entitée principale du projet mais oublier de créer une entitée nommée "cpt".
Le fichier TOP_Level doit être de la forme suivante:
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
entity cpt is port ( --déclaration de l'entitée principale(ce qui doit manquer à mon avis)
--entrées sorties
);
end cpt;
architecture comportement of cpt is
--définition signaux
--référence à l'entitée compteur que tu as écris(et qui est correcte)....
component compteur is
port(...
--signaux de ton entitée "compteur" entrées et sorties
);
end component;
begin
---et une structure port map ex:
compt : compteur
port map(
signal =>signal,
signal2=>signal2
);
vu le message d'erreur tu as du appeler un fichier "cpt.vhd" et le définir comme l'entitée principale du projet mais oublier de créer une entitée nommée "cpt".
Le fichier TOP_Level doit être de la forme suivante:
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
entity cpt is port ( --déclaration de l'entitée principale(ce qui doit manquer à mon avis)
--entrées sorties
);
end cpt;
architecture comportement of cpt is
--définition signaux
--référence à l'entitée compteur que tu as écris(et qui est correcte)....
component compteur is
port(...
--signaux de ton entitée "compteur" entrées et sorties
);
end component;
begin
---et une structure port map ex:
compt : compteur
port map(
signal =>signal,
signal2=>signal2
);