E
Eglantine
Guest
HI,
Che
sto facendo un RAM su VHDL.Sono in grado di compilare, ma quando cerco la simulazione ho questo messaggio:Attenzione: NUMERIC_STD.TO_INTEGER: metavalue rilevato, restituendo 0Ho già fatto: NumericStdNoWarnings = 1 in modelsim.ini come è stato detto in altri argomenti.
In realtà io non
sono un esperto di VHDL e Modelsim.Vi do il mio codice, forse può aiutare ad aiutare me.
Grazie mille*********************** ************************ RAM
Codice:
IEEE.Numeric_Std.all uso;entità è sync_ram
porto (
orologio: in std_logic;
noi: in std_logic;
indirizzo: in std_logic_vector;
datain: in std_logic_vector;
dataout: out std_logic_vector
);
fine sync_ram entità;architettura di RTL è sync_ramtipo ram_type è array (da 0 a (2 ** address'length) -1) di std_logic_vector (datain'range);
segnale ariete: ram_type;
segnale read_address: std_logic_vector (address'range);iniziareRamProc: processo (orologio) èiniziare
se rising_edge (orologio) e poi
se ='1 ', quindi - écriture
ram (to_integer (unsigned (indirizzo))) <= datain;
end if;
read_address <= indirizzo;
end if;
RamProc fine processo;dataout <= ram (to_integer (unsigned (read_address)));RTL fine architettura;
Che
sto facendo un RAM su VHDL.Sono in grado di compilare, ma quando cerco la simulazione ho questo messaggio:Attenzione: NUMERIC_STD.TO_INTEGER: metavalue rilevato, restituendo 0Ho già fatto: NumericStdNoWarnings = 1 in modelsim.ini come è stato detto in altri argomenti.
In realtà io non
sono un esperto di VHDL e Modelsim.Vi do il mio codice, forse può aiutare ad aiutare me.
Grazie mille*********************** ************************ RAM
Codice:
IEEE.Numeric_Std.all uso;entità è sync_ram
porto (
orologio: in std_logic;
noi: in std_logic;
indirizzo: in std_logic_vector;
datain: in std_logic_vector;
dataout: out std_logic_vector
);
fine sync_ram entità;architettura di RTL è sync_ramtipo ram_type è array (da 0 a (2 ** address'length) -1) di std_logic_vector (datain'range);
segnale ariete: ram_type;
segnale read_address: std_logic_vector (address'range);iniziareRamProc: processo (orologio) èiniziare
se rising_edge (orologio) e poi
se ='1 ', quindi - écriture
ram (to_integer (unsigned (indirizzo))) <= datain;
end if;
read_address <= indirizzo;
end if;
RamProc fine processo;dataout <= ram (to_integer (unsigned (read_address)));RTL fine architettura;