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

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

Отправлено imsushka 08 апреля 2005 г. 22:48

Есть кусок кода

case op1s is
when RS_BYTE => a(IUDbits*2-1 downto 8) := (others => a(7));
when RS_WORD => a(IUDbits*2-1 downto 16) := (others => a(15));
when RS_DWORD => a(IUDbits*2-1 downto 32) := (others => a(31));
when RS_QWORD => a(IUDbits*2-1 downto 64) := (others => a(63));
--------------------------------------------------------------------
-- when RS_OWORD => a(IUDbits*2-1 downto 128) := (others => a(IUD128));
when RS_HWORD => null;
--------------------------------------------------------------------
when others => null;
end case;

В отделенном куске (который выше) хотелось бы иметь нечто типа if IUDbits > 64 then

И в куске, который ниже, то же нечто похожее, а то компилер ругается что пределы не те (IUDbits у меня 64, а на будущее хотелось бы 256)

-------------------------------------------------------------
---- if IUDbits > 128 then
-- if b(7) = '1' then
-- a(IUDbits+127 downto 0) := a(IUDbits+255 downto 128);
-- end if;
----
---- if IUDbits > 64 then
-- if b(6) = '1' then
-- a(IUDbits+ 63 downto 0) := a(IUDbits+127 downto 64);
-- end if;
----
if b(5) = '1' then
a(IUDbits+ 31 downto 0) := a(IUDbits+ 63 downto 32);
end if;
if b(4) = '1' then
a(IUDbits+ 15 downto 0) := a(IUDbits+ 31 downto 16);
end if;

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

Ответы


Отправка ответа

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

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

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru