J
junchaoguo51888
Guest
Zakaj ne morem ustvariti simulacijo vala v ISE z HDL bencher?library IEEE;
Uporaba IEEE.STD_LOGIC_1164.all;
paket rom_pack jepodtipa rom1_word je std_logic_vector (10 downto 0);
podtipa rom_range je celo območju od 0 do 31;
Vrsta rom1_array je matrika (rom_range) z dne rom1_word;
funkcijo logic2int (din: std_logic_vector (4 downto 0)) vrnitev rom_range;
konstantna 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"
);end rom_pack;
paket organ rom_pack je
funkcijo logic2int (din: std_logic_vector (4 downto 0)) vrnitev rom_range je
Rezultati spremenljivke: rom_range: = 0;
začeti
za i od 0 do 4 v zanki
če din (i) ='1 'potem
rezultat: = rezultat
2 ** I;
konca, če;
konec zanke;
vračanje rezultata;
koncu funkcije logic2int;
end rom_pack;library IEEE;
Knjižnica dela;
Uporaba IEEE.STD_LOGIC_1164.ALL;
Uporaba IEEE.STD_LOGIC_ARITH.ALL;
Uporaba IEEE.STD_LOGIC_UNSIGNED.ALL;
Uporaba work.rom_pack.all;
Podjetje rom_logic je
Port (aaddr: v std_logic_vector (4 downto 0);
se glasi: v std_logic;
sinaout: ven std_logic_vector (10 downto 0)
);
end rom_logic;
Beh architecture of rom_logic je
začeti
procesa (read)
začeti
če (beri ='1 '), potem
sinaout <= rom1 (logic2int (aaddr));
še
sinaout <= (drugi => 'Z');
konca, če;
koncu postopka;Beh end;
Last edited by junchaoguo51888 na
02. februar 2004 5:07, edited 1 v času celotnega
Uporaba IEEE.STD_LOGIC_1164.all;
paket rom_pack jepodtipa rom1_word je std_logic_vector (10 downto 0);
podtipa rom_range je celo območju od 0 do 31;
Vrsta rom1_array je matrika (rom_range) z dne rom1_word;
funkcijo logic2int (din: std_logic_vector (4 downto 0)) vrnitev rom_range;
konstantna 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"
);end rom_pack;
paket organ rom_pack je
funkcijo logic2int (din: std_logic_vector (4 downto 0)) vrnitev rom_range je
Rezultati spremenljivke: rom_range: = 0;
začeti
za i od 0 do 4 v zanki
če din (i) ='1 'potem
rezultat: = rezultat
2 ** I;
konca, če;
konec zanke;
vračanje rezultata;
koncu funkcije logic2int;
end rom_pack;library IEEE;
Knjižnica dela;
Uporaba IEEE.STD_LOGIC_1164.ALL;
Uporaba IEEE.STD_LOGIC_ARITH.ALL;
Uporaba IEEE.STD_LOGIC_UNSIGNED.ALL;
Uporaba work.rom_pack.all;
Podjetje rom_logic je
Port (aaddr: v std_logic_vector (4 downto 0);
se glasi: v std_logic;
sinaout: ven std_logic_vector (10 downto 0)
);
end rom_logic;
Beh architecture of rom_logic je
začeti
procesa (read)
začeti
če (beri ='1 '), potem
sinaout <= rom1 (logic2int (aaddr));
še
sinaout <= (drugi => 'Z');
konca, če;
koncu postopka;Beh end;
Last edited by junchaoguo51888 na
02. februar 2004 5:07, edited 1 v času celotnega