H
hm_fa_da
Guest
Zdravím všetkých,
Neviem, čo je zle s týmto kódom?Som naozaj prospech zmätený ...
Keď spustím ho webedition ISE v9.1, dáva fata chyba!ale nie v ISE 8.1!
do verzie 9.1, keď som vymazať 1 z line30, neposkytuje Fatal Error,
Avšak môj problém je, že nie!
<img src="http://www.edaboard.com/images/smiles/icon_exclaim.gif" alt="Exclamation" border="0" />
, Môj problém je:
V sekcii varovanie, že hovorí, že:
UPOZORNENIE: Xst: 646 - Signal <ram0> je pridelený, ale nikdy použiť.
UPOZORNENIE: Xst: 646 - Signal <result2> je pridelený, ale nikdy použiť.
Ale ja som použila je v kóde, v slučke, line57 a line62 ...
V tomto prípade, že ISE hovorí, v skutočnosti to nie je syntetizovať, čo chcem!
Kód obsahuje tieto časti: získavanie a ukladanie dát do pamäte RAM,
prechádza od ram robiť (ram príliš), a pohybuje sa od urobiť, aby výstupy ...Budem vďačný, mi pomohla
<img src="http://www.edaboard.com/images/smiles/icon_cry.gif" alt="Crying or Very sad" border="0" />Tu je kód:knižnica IEEE;
IEEE.STD_LOGIC_1164.ALL použitie;
IEEE.STD_LOGIC_ARITH.ALL použitie;
IEEE.STD_LOGIC_UNSIGNED.ALL použitie;jednotka test
port (
CLK, rám, sk, e, lnumber: in std_logic;
údaje: v std_logic_vector (7 downto 0);
refs: out std_logic_vector (112 downto 1));
konci testu;
architektúra Behaviorálne testu je
Typ ram_all je array (224 downto 1) z celej číslo v rozmedzí 0 až 255;
Typ outreg je array (112 downto 1) z celej číslo v rozmedzí 0 až 255;
signálu ram0: ram_all;
signálu Address1: integer rozmedzí 1 až 224: = 1;
signálu výsledok: integer rozmedzí 1 až 224: = 1;
signálu result2: integer rozmedzí 1 až 224: = 1;
signálu mk: celé číslo v rozmedzí 0 až 10;
signálu do: outreg;
signal cnt: integer v rozmedzí 0 až 10: = 0;
signálu cnt2: celé číslo v rozmedzí 0 až 255: = 0;
začať
mk <= conv_integer (frame); --****** line30
výsledok <= Address1 * mk;
result2 <= conv_integer (lnumber) * 112 * (conv_integer (not (frame)));process (CLK, e, sk, výsledok, result2)
variabilný Hrdza, rez2: integer rozmedzí 1 až 224: = 1;
začať
rez: = result;
rez2: = result2;
if (clk'event a CLK = '1 ') then
if (e = '1 'a sk = '1') then
Ak Address1 = 224 potom
Address1 <= 1;
iné
Address1 <= Address1 1;
end if;
ram0 (hrdza) <= conv_integer (data);
end if;
cnt <= cnt 1;
Ak cnt = 10 potom
cnt <= 0;
cnt2 <= cnt2 1;
Ak cnt2 = 255 potom - zaťaženia v okolí (i)
cnt2 <= 0;
s1: for i in 1 do 112 slučke --****** line57
do (i) <= ram0 (rez2 i);
end loop;
end if;
s2: for i in 1 do 112 slučke --****** line62
do (i) <= do (i) - 1;
Ak to (i) = 0 then
refs (i) <= '1 '; - vypnúť
iné
refs (i) <= '0 '; - zapnúť
end if;
end loop;
end if;
end if;
end process;
koniec správania;
Neviem, čo je zle s týmto kódom?Som naozaj prospech zmätený ...
Keď spustím ho webedition ISE v9.1, dáva fata chyba!ale nie v ISE 8.1!
do verzie 9.1, keď som vymazať 1 z line30, neposkytuje Fatal Error,
Avšak môj problém je, že nie!
<img src="http://www.edaboard.com/images/smiles/icon_exclaim.gif" alt="Exclamation" border="0" />
, Môj problém je:
V sekcii varovanie, že hovorí, že:
UPOZORNENIE: Xst: 646 - Signal <ram0> je pridelený, ale nikdy použiť.
UPOZORNENIE: Xst: 646 - Signal <result2> je pridelený, ale nikdy použiť.
Ale ja som použila je v kóde, v slučke, line57 a line62 ...
V tomto prípade, že ISE hovorí, v skutočnosti to nie je syntetizovať, čo chcem!
Kód obsahuje tieto časti: získavanie a ukladanie dát do pamäte RAM,
prechádza od ram robiť (ram príliš), a pohybuje sa od urobiť, aby výstupy ...Budem vďačný, mi pomohla
<img src="http://www.edaboard.com/images/smiles/icon_cry.gif" alt="Crying or Very sad" border="0" />Tu je kód:knižnica IEEE;
IEEE.STD_LOGIC_1164.ALL použitie;
IEEE.STD_LOGIC_ARITH.ALL použitie;
IEEE.STD_LOGIC_UNSIGNED.ALL použitie;jednotka test
port (
CLK, rám, sk, e, lnumber: in std_logic;
údaje: v std_logic_vector (7 downto 0);
refs: out std_logic_vector (112 downto 1));
konci testu;
architektúra Behaviorálne testu je
Typ ram_all je array (224 downto 1) z celej číslo v rozmedzí 0 až 255;
Typ outreg je array (112 downto 1) z celej číslo v rozmedzí 0 až 255;
signálu ram0: ram_all;
signálu Address1: integer rozmedzí 1 až 224: = 1;
signálu výsledok: integer rozmedzí 1 až 224: = 1;
signálu result2: integer rozmedzí 1 až 224: = 1;
signálu mk: celé číslo v rozmedzí 0 až 10;
signálu do: outreg;
signal cnt: integer v rozmedzí 0 až 10: = 0;
signálu cnt2: celé číslo v rozmedzí 0 až 255: = 0;
začať
mk <= conv_integer (frame); --****** line30
výsledok <= Address1 * mk;
result2 <= conv_integer (lnumber) * 112 * (conv_integer (not (frame)));process (CLK, e, sk, výsledok, result2)
variabilný Hrdza, rez2: integer rozmedzí 1 až 224: = 1;
začať
rez: = result;
rez2: = result2;
if (clk'event a CLK = '1 ') then
if (e = '1 'a sk = '1') then
Ak Address1 = 224 potom
Address1 <= 1;
iné
Address1 <= Address1 1;
end if;
ram0 (hrdza) <= conv_integer (data);
end if;
cnt <= cnt 1;
Ak cnt = 10 potom
cnt <= 0;
cnt2 <= cnt2 1;
Ak cnt2 = 255 potom - zaťaženia v okolí (i)
cnt2 <= 0;
s1: for i in 1 do 112 slučke --****** line57
do (i) <= ram0 (rez2 i);
end loop;
end if;
s2: for i in 1 do 112 slučke --****** line62
do (i) <= do (i) - 1;
Ak to (i) = 0 then
refs (i) <= '1 '; - vypnúť
iné
refs (i) <= '0 '; - zapnúť
end if;
end loop;
end if;
end if;
end process;
koniec správania;