Моя FPGA не має ресурсів маршрутизації?


9

У мене є дизайн контролера Serial-ATA, який працює майже на будь-яких пристроях серії Xilinx 7 серії, за винятком пристрою Artix-7, який доставляє мені головний біль ...

Чистий дизайн (SATA 6.0Gb / s, тактова частота 150 МГц) може бути реалізований на моєму Artix-7 200T. Якщо додати ядра ILA (раніше відомі як ChipScope), терміни не дотримуються.

Що я зробив, щоб полегшити ситуацію: - додав 2 стадії конвеєра у кожному ядрі ILA - додав 1 етап конвеєра між приймачем GTP та логікою - використовував перенастроювання, перезапис та широке розміщення як альтернативну стратегію впровадження

Ці зображення показують нормальний проектний потік. Ядра ILA знаходяться далеко від SATAController (SATAC) та 8-бітового процесора ( SoFPGA ), однак у контролера все ще є невдалі контури (це єдиний регіон з провальними шляхами).

введіть тут опис зображення

Схоже, що в деяких районах "Артікс-7" немає ресурсів для маршрутизації. Як я можу отримати звіт із такою підозрою?

Я також спробував переосмислити, переробити та розширити стратегії розміщення. Результат такий:

введіть тут опис зображення

Збій часу майже однаковий ...

PS Дизайн використовує лише 178 з> 300 BlockRAM. Я використовував Xilinx ISE для використання майже кожного BlockRAM в інших проектах, але ніколи не стикався з такою поведінкою.

Редагувати:

Ось теплова карта всіх від'ємних значень нестійкості на скибочку (пофарбована червоним кольором) введіть тут опис зображення


3
У Altera Quartus є щось, що називається регіонами LogicLock, що дозволяє обмежити розділ або фрагмент логіки певним регіоном. Я припускаю, що для Xilinx буде щось подібне (хоча не впевнений, як це буде називатися). Якщо ви можете це зробити, вам слід обмежити ILA у регіоні, який не є вашою логікою (щоб він не зміщував важливі речі), а також додайте додаткові конвеєрні (не обмежені для регіону), щоб допомогти в часі.
Том Карпентер

2
Також може бути випадкові помилкові шляхи між годинниковим доменом ILA та будь-якими іншими тактовими доменами, що спричиняє помилкові шляхи, що призводить до додаткових зусиль слюсаря (спричиняючи обробку справжніх шляхів з меншим пріоритетом і настільки невдалого часу)
Том Карпентер

2
У мене були подібні проблеми з SignalTap (знову ж таки, еквівалент ILA Altera), тому що невдалі шляхи викликані тим, що чутливі шляхи розсуваються логікою дотику, бажаючи наблизитись до сигналів, що прослуховуються. Це відбувалося здебільшого там, де була висока щільність BRAM, тому що BRAM-та SignalTap змушували інші БРАМ ще більше. Як тільки SignalTap був обмежений регіоном, який був менш критично заповнений, проблеми пішли.
Том Карпентер

@TomCarpenter Обмеження розміщення називаються PBlock :). Наскільки я можу сказати, в області SoFPGA або SATAC немає клітин ILA, вони розділені через 3 стадії FF на кожному з 151 сигналу трасування. Зондова конструкція працює в тому ж тактовому домені, що і ILA (150 МГц). Усі шляхи обмежені (жодних необмежених, невдалих міжгодинних шляхів). Згадані недолікові шляхи знаходяться в одному доменному тактовому режимі, або в SATAC, або в самій ILA. Я знайшов звіт про маршрутні перевантаження, де говориться про використання 54% (хор. І верт.). Будь ласка, дивіться мою нег. карта слабкої теплоти додала до мого запитання.
Paebbels

1
Я виявив 2 випуски: Спочатку Artix-7 на 15-50% повільніше, ніж Kintex-7. Якщо я зміню ступінь швидкості за замовчуванням з -2 на -3, все нормально (є запас міцності в 200 к.с. порівняно з слабким 670 к.с. п. Таким чином, ступінь швидкості -3 покращує шлях до 6 600 нс майже на 0,970 нс! Це здається, що чисте приєднання сигналів сліду викликає більш високий вентилятор, що спричиняє проблеми з тимчасовою передачею. Крім того, маршрути трасування проходять через тактовий домен 100 МГц для 8-бітного ЦП, що в свою чергу спричиняє (один із 5 запусків) проблеми в домені годинника. Тому довгі лінії / маршрути викликають проблеми на інших лініях
Paebbels

Відповіді:


1

Ви можете отримати детальний звіт, зробивши аналіз дизайну в Xilinx Vivado. Виконайте таку команду на консолі tcl: "report_design_analysis" Це дає звіт про час, складність та перевантаженість реалізованої конструкції. Ви також можете запустити цей звіт, перейшовши до Інструменти-> Звіт-> Дизайн звіту_аналіз.

У цьому звіті ви можете побачити, які райони викликають затори через їх розміщення. Які фрагменти використовуються повністю або яка оренда таких фрагментів та / або маршрутів.

Я сподіваюся, що це допомогло.

З повагою, KWQ


Дякую за цей (мені невідомий) звіт. Чим воно відрізняється від мого останнього зображення (термінова теплова карта)?
Paebbels
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.