Methane 0 15 июня, 2010 Опубликовано 15 июня, 2010 · Жалоба if( ((tx_fifo_rdusedw > cfg_maxpload_dw_l[10:0]) | ((tx_fifo_rdusedw + dma_tx_addr_now[11:0]) > 13'hFFF)) & (dma_tx_stop_l==1'b0) ) begin Итд. end Почему-то всегда истинно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 15 июня, 2010 Опубликовано 15 июня, 2010 · Жалоба Нужно ставить || и && Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Methane 0 15 июня, 2010 Опубликовано 15 июня, 2010 · Жалоба Нужно ставить || и && Только что попробовал. (хотя почему не правильно старый вариант?) тоже не работает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 15 июня, 2010 Опубликовано 15 июня, 2010 · Жалоба Почему-то всегда истинно. это же очевидно %) что то, где то не так сравнивается, или какие то константы стоят такие что условия всегда выполняются, а dma_tx_stop не имеет свойства падать в ноль. На большее моих телепатических способностей не хватает %) Нужно ставить || и && как мертвому припарка %) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Methane 0 15 июня, 2010 Опубликовано 15 июня, 2010 · Жалоба Только что попробовал. (хотя почему не правильно старый вариант?) тоже не работает. if( ((tx_fifo_rdusedw > cfg_maxpload_dw_l[10:0]) || (((tx_fifo_rdusedw + dma_tx_addr_now[11:0]) > 13'hFFF)?1'b1:1'b0)) && (dma_tx_stop_l==1'b0) ) begin Почему работает? это же очевидно %) что то, где то не так сравнивается, или какие то константы стоят такие что условия всегда выполняются, а dma_tx_stop не имеет свойства падать в ноль. На большее моих телепатических способностей не хватает %) Вот почему-то не так. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 15 июня, 2010 Опубликовано 15 июня, 2010 · Жалоба Почему работает? еще раз, в чем вопрос то ? почему в одном случае работает, а в другом нет ? Тестбенч и сорцы в студию. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Methane 0 15 июня, 2010 Опубликовано 15 июня, 2010 · Жалоба еще раз, в чем вопрос то ? почему в одном случае работает, а в другом нет ? Тестбенч и сорцы в студию. Что ВСЕ? Функционально два приведенных фрагмента отличаются? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 15 июня, 2010 Опубликовано 15 июня, 2010 · Жалоба Что ВСЕ? Функционально два приведенных фрагмента отличаются? Часть где глюк проявляется. Да фрагменты отличаются, хочу увидеть воочию, есть у меня пара подозрений. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Methane 0 15 июня, 2010 Опубликовано 15 июня, 2010 · Жалоба Часть где глюк проявляется. Да фрагменты отличаются, хочу увидеть воочию, есть у меня пара подозрений. Я не буду постить сюда весь проект. Только в этом файле 600 строк. Квартус на гонки не жалуется. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 15 июня, 2010 Опубликовано 15 июня, 2010 · Жалоба Я не буду постить сюда весь проект. в таком случае телепаты в отпуске %) Только в этом файле 600 строк. Квартус на гонки не жалуется. гонки здесь совершенно не причем. надо это место в Tecnology Mapper разложить и посмотреть. tx_fifo_rdusedw то хоть 13 ти битный ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 15 июня, 2010 Опубликовано 15 июня, 2010 · Жалоба По логике оба куска работают одинаково (повезло, что везде получаются однобитовые значения, иначе | и & давали бы совсем не то, что || и &&). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Methane 0 15 июня, 2010 Опубликовано 15 июня, 2010 · Жалоба tx_fifo_rdusedw то хоть 13 ти битный ? Нет. Для а какие могут быть проблемы в сравнении двух чисел с разной разрядностью? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 15 июня, 2010 Опубликовано 15 июня, 2010 · Жалоба Нет. Для а какие могут быть проблемы в сравнении двух чисел с разной разрядностью? в сравнении никаких, но ведь у вас не только сравнение. код модуля приведите или и дальше будем делать операцию по фотографии ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Methane 0 15 июня, 2010 Опубликовано 15 июня, 2010 · Жалоба в сравнении никаких, но ведь у вас не только сравнение. код модуля приведите или и дальше будем делать операцию по фотографии ? Модуль большой. То что я написал, делается за такт, на Арии второй, при тактовой 125. В общем всем спасибо. Работает, вернусь когда время будет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 15 июня, 2010 Опубликовано 15 июня, 2010 · Жалоба для des00 Не томите, выскажите свою пару подозрений. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться