pavlovconst 2 12 февраля, 2021 Опубликовано 12 февраля, 2021 · Жалоба Всем привет! Можно ли автоматически подсчитать количество тактов в пайплайне между двумя указанными регистрами. Подразумеваем, что оба регистра в одном тактовом домене. Хочу узнать задержку распространения данных по тракту в стороннем коде. Может ли такое сделать Timequet или Vivado? Или, может, есть сторонние тулы, которые анализируют нетлист? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
new123 0 12 февраля, 2021 Опубликовано 12 февраля, 2021 · Жалоба TimeQuest пишет время пути. Как общее, так и подробнее по шагам. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 12 февраля, 2021 Опубликовано 12 февраля, 2021 · Жалоба Приветствую! 50 minutes ago, pavlovconst said: Можно ли автоматически подсчитать количество тактов в пайплайне между двумя указанными регистрами. Подразумеваем, что оба регистра в одном тактовом домене. Хочу узнать задержку распространения данных по тракту в стороннем коде. Может ли такое сделать Timequet или Vivado? Или, может, есть сторонние тулы, которые анализируют нетлист? Не помню такого готового функционала. Но в Vivado можно сделать TCL скрипт который сможет находить в нетлисте путь между заданными начальным и конечным регистрами и соответственно считать число промежуточных регистров. Да и в Qu тоже наверное можно но IMHO сложнее. Удачи! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
pavlovconst 2 12 февраля, 2021 Опубликовано 12 февраля, 2021 · Жалоба 1 hour ago, new123 said: TimeQuest пишет время пути Вы, наверное, не то имеете ввиду. Мне нужны не комбинационные шаги между смежными регистрами, а количество регистров в длинном вычислительном конвейере Нашел команду report_path в доке по Таймквесту. По описанию, с опцией -min_path очень похоже на то, что я ищу, но получить результат пока не получилось. Пишет "No paths were found" Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
new123 0 12 февраля, 2021 Опубликовано 12 февраля, 2021 (изменено) · Жалоба 14 minutes ago, pavlovconst said: Вы, наверное, не то имеете в виду. вот я имелл ввиду то, что Rob выше описал. А задать правильно путь, это по началу целое искусство =) лучше конечно GUI для начала пользоваться, нагляднее. Изменено 12 февраля, 2021 пользователем new123 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nick_K 0 13 февраля, 2021 Опубликовано 13 февраля, 2021 · Жалоба 13 hours ago, pavlovconst said: Вы, наверное, не то имеете ввиду. Мне нужны не комбинационные шаги между смежными регистрами, а количество регистров в длинном вычислительном конвейере Нашел команду report_path в доке по Таймквесту. По описанию, с опцией -min_path очень похоже на то, что я ищу, но получить результат пока не получилось. Пишет "No paths were found" report_path используется только для комбинаторики. Через регистры оно не покажет ничего. Единственный вариант, как указал @RobFPGA это пропарсить нетлист через тикль скрипт. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 13 февраля, 2021 Опубликовано 13 февраля, 2021 · Жалоба Приветствую! Кстати для Vivado есть прикольный внешний tools как раз для работы с нетлистом RapidWright. Этакая надстройка над Vivado-вским TCL API. Прикольная шутка. Если порыться то может и готовое что найдете и не придется самому на TCL трассировать нетлист. Удачи! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
new123 0 13 февраля, 2021 Опубликовано 13 февраля, 2021 (изменено) · Жалоба 3 hours ago, Nick_K said: report_path используется только для комбинаторики. Через регистры оно не покажет ничего. Единственный вариант, как указал @RobFPGA это пропарсить нетлист через тикль скрипт. попробую еще раз вставить свои 5 копеек, вдруг это все таки то, что надо генерю список нужных путей, с параметром full_path report_timing -to_clock { .... } -setup -npaths 10 -detail full_path... Далее могу просматривать конкретно каждый путь, как он проходит и сколько времени занимает К примеру, как у меня идет сигнал от трансивера до нужной мне логики Буквально вчера, у меня тут стоял встроенный pileline от квартуса между трансивером и логикой и я его тоже видел. Ради интереса, сделал EDA Netlist Writer, проверил там пути, они точно такие же. Изменено 13 февраля, 2021 пользователем new123 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexadmin 0 18 февраля, 2021 Опубликовано 18 февраля, 2021 · Жалоба On 2/13/2021 at 8:17 AM, RobFPGA said: Кстати для Vivado есть прикольный внешний tools как раз для работы с нетлистом RapidWright. Этакая надстройка над Vivado-вским TCL API. Прикольная шутка. Если порыться то может и готовое что найдете и не придется самому на TCL трассировать нетлист. Открыл первый же пример: "проанализировали тайминги, получили столько-то. А вивада показывает с ошибкой на 30пс меньше". И как теперь с этим жить? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 18 февраля, 2021 Опубликовано 18 февраля, 2021 · Жалоба Приветствую! 4 hours ago, alexadmin said: Открыл первый же пример: "проанализировали тайминги, получили столько-то. А вивада показывает с ошибкой на 30пс меньше". И как теперь с этим жить? Мучатся всю оставшееся жизнь за бесцельно потерянные пикосекунды . Увы, я плотно с RapidWright не работал. Но читал где то статью что эти ребята делали свой быстрый анализ времянки в FPGA чтобы использовать в своих алгоритмах palce & route. Может это оно? Удачи! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexadmin 0 18 февраля, 2021 Опубликовано 18 февраля, 2021 · Жалоба 1 hour ago, RobFPGA said: Мучатся всю оставшееся жизнь за бесцельно потерянные пикосекунды . Если бы потерянные. Они ведь наоборот, в Vivade излишне оптимистичные получились! То-то самолеты все в воду падают... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nick_K 0 19 февраля, 2021 Опубликовано 19 февраля, 2021 · Жалоба 14 hours ago, alexadmin said: Если бы потерянные. Они ведь наоборот, в Vivade излишне оптимистичные получились! То-то самолеты все в воду падают... Мне вот больше интересно, как "левые" ребята смогли открыть и разобраться с нетлистом, сгенерированным в Виваде. И ещё и к этому всему подтянуть значения зашифрованных либ Xilinx'а? Ведь значения таймингов описани лишь приблизительно для компонентов и без какого-либо упоминания межкомпонентных соединений. То что сама Вивада пишет лучше значения, наверное на то есть причины - как минимум ей виднее и она знает чутка больше, чем некие парни с обочины. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 19 февраля, 2021 Опубликовано 19 февраля, 2021 · Жалоба Приветствую! 3 hours ago, Nick_K said: Мне вот больше интересно, как "левые" ребята смогли открыть и разобраться с нетлистом, сгенерированным в Виваде. И ещё и к этому всему подтянуть значения зашифрованных либ Xilinx'а? Ведь значения таймингов описани лишь приблизительно для компонентов и без какого-либо упоминания межкомпонентных соединений. То что сама Вивада пишет лучше значения, наверное на то есть причины - как минимум ей виднее и она знает чутка больше, чем некие парни с обочины. Вот что что мне попадалось на глаза. При желании можно и самому провести исследовательскую работу генерируя сотни нетлистов с разными интерконнектами и анализируя результаты задержек в том же Vivado Удачи! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
pavlovconst 2 19 февраля, 2021 Опубликовано 19 февраля, 2021 · Жалоба On 2/13/2021 at 8:17 AM, RobFPGA said: Кстати для Vivado есть прикольный внешний tools как раз для работы с нетлистом RapidWright. Нашел еще один похожий тулкит, тоже написанный на Java - https://github.com/byuccl/RapidSmith2 9 hours ago, Nick_K said: чем некие парни с обочины RapidWright лежит в официальном репозитории Xilinx-a. Левыми их называть сложно =) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться