v_mirgorodsky 0 17 ноября, 2005 Опубликовано 17 ноября, 2005 · Жалоба Есть следующая проблема: есть Sy*np*lify 8.2.1, в коде описан 18x18 умножитель, не интантиирован как элемент, а описан как операция умножения двух знаковых чисел. Это удобно для обеспечения переносимости кода на разные семейства микросхем. При синтезе этот Sy*np*lify выдает тактовую частоту порядка 86МГц. После имплементации решения в Cyclone II частота показываемая Квартусом достигает рассчетных 160МГц - скорости работы умножителя для восьмого Cyclone II. Пытались запретить анализировать собственно операцию умножения, обозвать ее false_path, объявить ее как мультицикл и т.д. Синтезатор упорно ругается на умножитель и не показывает реальную частоту работы схемы. В Technology Mapper стоит именно аппаратный умножитель с внутренними регистрами на входе и выходе. Знает ли кто с чем это может быть связано? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 17 ноября, 2005 Опубликовано 17 ноября, 2005 · Жалоба Есть следующая проблема: есть Sy*np*lify 8.2.1, в коде описан 18x18 умножитель, не интантиирован как элемент, а описан как операция умножения двух знаковых чисел. Это удобно для обеспечения переносимости кода на разные семейства микросхем. При синтезе этот Sy*np*lify выдает тактовую частоту порядка 86МГц. После имплементации решения в Cyclone II частота показываемая Квартусом достигает рассчетных 160МГц - скорости работы умножителя для восьмого Cyclone II. Пытались запретить анализировать собственно операцию умножения, обозвать ее false_path, объявить ее как мультицикл и т.д. Синтезатор упорно ругается на умножитель и не показывает реальную частоту работы схемы. В Technology Mapper стоит именно аппаратный умножитель с внутренними регистрами на входе и выходе. Знает ли кто с чем это может быть связано? Хмм 1. "пристегнуть" констрейн на тип хардварного макроса 2. завернуть умножитель в обертку и сделать 2 архитектуры Behavor Black-Box (на ВХДЛ) и влепить для синтеза вторую Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrew_b 17 17 ноября, 2005 Опубликовано 17 ноября, 2005 · Жалоба И чего вы привязались к оценке частоты синтезатором? Я не нее вообще не смотрю. Синтезатор же не учитывает размещения на кристалле, а от него многое зависит. В результате получается встроеный умножитель или что? В логах фиттера умножитель присутствует? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
v_mirgorodsky 0 17 ноября, 2005 Опубликовано 17 ноября, 2005 · Жалоба Уже все так и сделали, но не сильно это помогло. Если поставить black-box, то все становится нормально, синтезатор не ругается, показывает нормальную частоту. Однако проблема оказалась в самих умножителях. 162МГц это для некоторых идеальных условий. Реально умножитель не хочет нормально работать если на вход его регистра подать комбинаторные сигналы. Можно конечно поставить перед входом еще один регистр, но это расточительно по ресурсам. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться