реклама на сайте
подробности

 
 
> Мультиплицирование сигналов различных модулей в одном проекте, В симуляторе работает, а в реальном железе -нет
D.Xil
сообщение Dec 23 2009, 13:51
Сообщение #1





Группа: Участник
Сообщений: 5
Регистрация: 23-12-09
Пользователь №: 54 431



В проекте на Spartan-3E один из модулей - блочная память, другой- usart, третий- модуль расчета CRC.
Данные выдаются через усарт на ПК по следующему алгоритму:
CODE

if DTR='1' then
if i<7 then
crc_en<='1';--enable CRC
rst_crc<='0';
din_usart<=dout_ram;
else
if i=10 then
din_usart<=crc_out(7 downto 0);
else
din_usart<=crc_out(15 downto 8);
end if;
end if;
else
din_usart<=dout_ram;
end if;
.......
crc_en<='0';--disable CRC


Т.е. контрольная сумма расчитывается для первых 7 передаваемых байт из памяти. После чего подсчет CRC прекращается , передаются остальные 3 байта и затем предпоследним и последним- само значение CRC.
Так вот, в симуляторе(ISE Simulator) все нормально, а после прогр. демо -платы в ПК принимаются сплошные ошибки.
Как только комментирую код, где данные из модуля CRC передаются через усарт - все становится нормально.
Это "гонки" сигналов? Или что? И как это отловить/исключить?
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 00:07
Рейтинг@Mail.ru


Страница сгенерированна за 0.01369 секунд с 7
ELECTRONIX ©2004-2016