[an error occurred while processing this directive]
Может кто знает ... +
(«Телесистемы»: Конференция «Языки описания аппаратуры (VHDL и др.))

миниатюрный аудио-видеорекордер mAVR

Отправлено _Amid_ 05 октября 2006 г. 20:43

Привожу маленький пример проги, которая железно работает в древних версиях ISE (ISE5.x, ISE6.x) и не работает в более новых 7.1, 8.1 (для SPARTAN3).

-------------------------------------------------
library IEEE;
use IEEE.STD_LOGIC_1164.all;
use IEEE.STD_LOGIC_arith.all;
use IEEE.STD_LOGIC_unsigned.all;


entity test is
port(
reset : in std_logic;
clk : in std_logic;
a : in STD_LOGIC_VECTOR(0 to 7);
b : in STD_LOGIC_VECTOR(0 to 7);
c : out STD_LOGIC_VECTOR(0 to 7)
);
end test;

architecture test_body of test is
begin

process (reset, clk)
variable i : integer range 7 downto 0;
begin
if reset = '1' then
c <= conv_std_logic_vector(0,8);
i := 0;
elsif clk'event and clk = '1' then
i := i + 1;
if i = 0 then
if a = b then
c <= a;
elsif a > b then
c <= b;
end if;
end if;
end if;
end process;

end test_body;

--------------------------------------------------------

При синтезе выдаётся предупреждение (только в ISE 7.1, 8.1):

WARNING:Xst:1988 - Unit : instances , of unit and unit are dual, second instance is removed

Имплиментация проходит нлрмально. НО при помтроении диаграмм - выход "с" - всегда в неопределённом состоянии. Почему не могу понять.
В ISE 6.1 все компилится без ворнингов и диаграмма строится нормально.


Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа
Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 
URL изображения: 


Rambler's Top100 Рейтинг@Mail.ru
Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание