[an error occurred while processing this directive]
Неужели глюк в MaxPlusII 10.0 и VHDL(+)
(«Телесистемы»: Конференция «Программируемые логические схемы и их применение»)

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

Отправлено _Aquarius_ 23 июля 2003 г. 10:37

Регистр на VHDL имеет вид:

...

cr10_i <=( data_in_r(10) and (not be_mask_r(10) and write) ) or
( cr10_r and not(not be_mask_r( 8) and write) );
cr8_i <=( data_in_r( 8) and (not be_mask_r( 8) and write) ) or
( cr8_r and not(not be_mask_r( 8) and write) );

...

srcr_reg_p:process (clk,nRst) is
begin
f nRst='0' then
cr10_r<='0'; cr8_r<='0'; cr6_r<='0';
cr3_r <='0'; cr1_r<='0'; cr0_r<='0';
elsif rising_edge(clk) then
cr10_r<=cr10_i; cr8_r<=cr8_i; cr6_r<=cr6_i;
cr3_r <=cr3_i; cr1_r<=cr1_i; cr0_r<=cr0_i;
end if;
end process srcr_reg_p;

Проблема в том, что на выходе cr10_r всегда 0. Думаю, что MaxPlus неправильно оптимизирует выражение для cr10_i ? Самое интерессное начинается, когда сигналы cr10_i,cr8_i, ... делаются выходными ( в целях тестирования) - тогда вдруг все работает как и задумано!
Вопрос: это глюк MaxPlus? именно этой версии ? может кто-то уже боролся с такими приколами?
Спасибо за ответы.

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

Ответы


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

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

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

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

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


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

E-mail: info@telesys.ru