Похоже, я недостаточно разобрался с tsu и tco в Virtex. Почему-то в DS они менее 1 нс, а в реальности tsu tco портов - несколько нс.
Однако согласиться с потерей частоты из-за задержек мы не можем. 10/90 недопустимое соотношение. По моим наблюдениям, хорошее размещение дает 30-50/70..50, а если 10/90 - дело в консерватории.
Микросхемы следующих градаций выбиваются из бюджета.
Нашел забавный параметр в UCF - MAXSKEW для тактового сигнала. Повышает частоту на 20 МГц, что неплохо. Непонятно только - когда я просто задаю PERIOD - результат хуже.
Сейчас задержка в раздельных частях в лучшем случае 25...29/75...71, причем больше теряется в проводах. Понятно, что теряется, но что делать? Трассировать вручную? Читать AppNote? Какой?
Когда подключаю ФИФО - все рушится.
Размещение на ПЛИС хорошей схемы выглядит, как настоящий конвейер - длинный прямоугольник. Причем, чем выше частота - тем тольше и длиннее.
Топология медленной схемы выглядит, как равностороннее пятно вокруг блока памяти ФИФО. Есть желание вообще отказаться от верилога и map/par , всё делать вручную. Схема-то простая, большая только.
|