hjælp mig se hvad fejlen er i koden!!

J

junchaoguo51888

Guest
Derfor kan jeg ikke generere den simulere bølgeform i ISE med HDL bencher?library IEEE;
brug IEEE.STD_LOGIC_1164.all;

pakke rom_pack ersubtype rom1_word er std_logic_vector (10 downto 0);
subtype rom_range er heltal mellem 0 og 31;
type rom1_array er array (rom_range) af rom1_word;

function logic2int (DIN: std_logic_vector (4 downto 0)) return rom_range;

konstant rom1: rom1_array: = (
"00000011001", "00001001011", "00001111101", "00010101111",
"00011100001", "00100010011", "00101000101", "00101110110",
"00110101000", "00111011001", "01000001010", "01000111010",
"01001101010", "01010011010", "01011001001", "01011111000",
"01100100111", "01101010100", "01110000010", "01110101111",
"01111011011", "10000000111", "10000110010", "10001011100",
"10010000110", "10010101111", "10011011000", "10011111111",
"10100100110", "10101001100", "10101110001", "10110010110"
);ende rom_pack;

pakke krop rom_pack er
function logic2int (DIN: std_logic_vector (4 downto 0)) return rom_range er
variabel resultat: rom_range: = 0;
begynd
for jeg i 0 til 4 loop
hvis din (i) = '1 'så
result: = result 2 ** I;
end if;
END LOOP;
return result;
End Function logic2int;

ende rom_pack;library IEEE;
bibliotek arbejde;
brug IEEE.STD_LOGIC_1164.ALL;
brug IEEE.STD_LOGIC_ARITH.ALL;
brug IEEE.STD_LOGIC_UNSIGNED.ALL;
brug work.rom_pack.all;

enhed rom_logic er
Port (aaddr: i std_logic_vector (4 downto 0);
læs: i std_logic;
sinaout: out std_logic_vector (10 downto 0)
);
ende rom_logic;

architecture Beh af rom_logic er
begynd
proces (læse)
begynd

if (læs = '1 ') then
sinaout <= rom1 (logic2int (aaddr));

anden
sinaout <= (andres => 'Z');

end if;

end process;ende Beh;
Senest redigeret af junchaoguo51888 den 02 februar 2004 4:07, rettet 1 gang i alt

 
rapporten fejl er: error (s), hvor stødt på, mens udvinding af havne, skal du kontrollere syntaksen i rom_logic, men når jeg tjekke det, det har ingen fejl,

 
Hi junchaoguo51888,

Koden ser ok for mig ... Jeg har lige kompilere dine filer med Models! M og derefter lastes toppen modulet og ikke klage.

Fandt du det problem allerede ...?hvis ikke du måske kunne sende yderligere informationer ...

Hilsen,

-Maestor

 
Hej,

prøv dette:

sinaout <= rom1 (conv_integer (aaddr));

i stedet for din logic2int brugerdefineret funktion

 

Welcome to EDABoard.com

Sponsor

Back
Top