Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Автоматизация работы с SignalTap
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Среды разработки - обсуждаем САПРы
RobFPGA
Приветствую.

Столкнулся вот с суровой необходимостью поюзать SignalTap в Quartus 14.1 crying.gif
Разбалованный работой в ChipScope Vivado полностью через tcl был не готов к тому что придется все делать ручками (лес менюшек, куча кликов, мышку шевелить упаришся). wacko.gif

Может кто знает способ автоматизировать этот рабский труд? Чтобы скриптиком можно было скофигурить режимы SignalTap и назначит нужные сигналы для просмотра?

Удачи! Rob.
Marat Zuev
Доброго вам!
Документ со стр. 109 (2-83) quartus_stp смотрели?
RobFPGA
Приветствую!
Цитата(Marat Zuev @ Jul 30 2018, 13:32) *
Доброго вам!
Документ со стр. 109 (2-83) quartus_stp смотрели?
Смотрел ... но насколько я понял quartus_stp оперирует с уже готовым .stp файлом используя оный для модификации основного свалки файла настроек .qsf А вот как создать .stp c помощью tcl?

Удачи! Rob.
EugeneS
QUOTE (RobFPGA @ Jul 30 2018, 14:59) *
Приветствую!
Смотрел ... но насколько я понял quartus_stp оперирует с уже готовым .stp файлом используя оный для модификации основного свалки файла настроек .qsf А вот как создать .stp c помощью tcl?

Удачи! Rob.


Могу дать идею.
1. посмотреть ролик Automated generation of predefined SignalTap II Files for Arria 10
https://www.youtube.com/watch?v=oow9Fwzf_vA
2. найти в Quartus скрипты типа .\ip\altera\ethernet\alt_em10g32\MAC\stp\build_stp.tcl
3. написать свое по образцу
4. santa2.gif santa2.gif santa2.gif
Koluchiy
холивар моде он...

Вот из-за таких как Вы, эти криворукие индусы из Альтеры и Хилинха чем дальше тем больше ленятся делать нормальный мышовый интерфейс...
Скоро будем скрипт писать, чтобы Квартус открылся...
RobFPGA
Приветствую!

Цитата(EugeneS @ Aug 6 2018, 16:12) *
Могу дать идею.
...
2. найти в Quartus скрипты типа .\ip\altera\ethernet\alt_em10g32\MAC\stp\build_stp.tcl
...
Увы - это просто костыль который меняет в УЖЕ сделаном ручками шаблоне .stp пути в соответсвии с реальныой иерархией. Зачем для этого надо было городить скрипт на 54!!! Кbyte wacko.gif мне еще предстоит разбиратся.

Цитата(Koluchiy @ Aug 8 2018, 12:35) *
холивар моде он...

Вот из-за таких как Вы, эти криворукие индусы из Альтеры и Хилинха чем дальше тем больше ленятся делать нормальный мышовый интерфейс...
Скоро будем скрипт писать, чтобы Квартус открылся...
Уже можно писать но увы не все доступно. Жаль что в SignalTap все еще "нормальный" мышовый интерфейс (как раз для любителя садо-мазо пощелкать) - вот и попробуйте используя его по вытягивать сотню-другую сигналов в SignalTap crying.gif И хорошо если Вы на локальной машине это "удовольствие" получать будете - а если удаленно приходится работать?

В Vivado же можно пометить атрибутами нужные точки в исходнике. Потом автоматом в скрипте создать нужную конфигурацию ChipScope с подключенной требуемой группой(ми) сигналов. Скомпилировать, загрузить и автоматом задавая ряд условий прогнать тесты и сохранить результат для утреннего разбора. Красота!

Наличие скриптов и доступ из них ко всему функционалу это огромное преимущество инструмента разработчика.

Ну а в крайнем случае можно скриптами Вам новых кнопок для мыши нарисовать. sm.gif

Удачи! Rob.
Koluchiy
Не надо меня убеждать в необходимости написания скриптов.
В некоторых случаях (процентов 10) они действительно нужны.

Но в остальных 90% то же самое можно быстрее и лучше сделать мышкой. Но в последнее время чем дальше, тем больше у юзеров отнимают возможность делать простые действия мышкой по непонятной мне причине.

В ISE partitions худо-бедно работали при помощи написания скрипта из 4х строчек.
В Vivado в Project Mode они не поддерживаются вообще.

В Quartus не-Pro можно запустить симуляцию проекта через меню мышкой.
В Quartus Pro уже нельзя - надо потрахаться с генерацией скриптов.

Это вот почему так? Если кто-то хочет писать скрипты - да пишите, кто ж против. Скуалли мышовые удобные интерфейсы убирать?

Цитата
Жаль что в SignalTap как "нормальный" мышовый интерфейс (как раз для любителя садо-мазо пощелкать) - вот и попробуйте
используя его по вытягивать сотню-другую сигналов в SignalTap crying.gif

Всякое вытягивал, нормально. Основные проблемы как правило не с вытягиванием сигналов в SignalTap, а с тем что потом эта сотня-другая сигналов ломает времянки.
Или с тем, что синтезатор забивает на все директивы и выкидывает нужные сигналы. В общем, тыканье мышкой как правило наименьшая из проблем.

Цитата
Наличие скриптов и доступ из них ко всему функционалу это огромное преимущество инструмента разработчика.
Ну а в крайнем случае можно скриптами Вам новых кнопок для мыши нарисовать. sm.gif


Вот было бы гораздо хорошее, если бы граждане из упомянутых выше производителей вместо генерации бесконечного числа новых версий софта, в которых в основном меняются цвета менюшек и добавляются новые глюки, занимались бы рисованием и поддержкой этих самых кнопок для мыши.

А то складывается впечатление, что им недосуг, плюс им наверняка в уши активно поют свои песни фанаты скриптоводчества.
RobFPGA
Приветствую!
Цитата(Koluchiy @ Aug 8 2018, 14:45) *
Не надо меня убеждать в необходимости написания скриптов.
Так я и не убеждаю ...
Цитата(Koluchiy @ Aug 8 2018, 14:45) *
В некоторых случаях (процентов 10) они действительно нужны.
... судя по всему Вам просто не повезло sm.gif

Цитата(Koluchiy @ Aug 8 2018, 14:45) *
Но в остальных 90% то же самое можно быстрее и лучше сделать мышкой. Но в последнее время чем дальше, тем
Естественно мышка удобна для работы с графикой и не повторяющихся действий в интерфейсе - но если для выполнения чего либо мне надо десятки раз повторить одну и туже последовательность нажатий на кнопки без возможности автоматизировать этот процесс - то это уже не удобство - а эксперимент с крысой давящей на рычаг и получающей от этого кайф.

Цитата(Koluchiy @ Aug 8 2018, 14:45) *
В ISE partitions худо-бедно работали при помощи написания скрипта из 4х строчек.
В Vivado в Project Mode они не поддерживаются вообще.

В Quartus не-Pro можно запустить симуляцию проекта через меню мышкой.
В Quartus Pro уже нельзя - надо потрахаться с генерацией скриптов.

Это вот почему так? Если кто-то хочет писать скрипты - да пишите, кто ж против. Скуалли мышовые удобные интерфейсы убирать?
Выдам страшную тайну - все эти действия жмаканя по кнопке обычно запускают ... скрипты писаные теме же представителями "сексуальных меньшинств".

Цитата(Koluchiy @ Aug 8 2018, 14:45) *
А то складывается впечатление, что им недосуг, плюс им наверняка в уши активно поют свои песни фанаты скриптоводчества.
Пойте и Вы оды про прелести кнопок. Только боюсь что в этом хоре не будет гармонии - каждый ведь требует свой уникальный функционал на каждую кнопку, свою пиктограмму, расположение в меню и на толлбаре, ... такая КАКАфония стоять будет. laughing.gif

Толи уверенная песнь познавших истинность скриптов - "... Просто позвольте нам контролировать все самим! ..."

Удачи! Rob.

Koluchiy
Цитата
Естественно мышка удобна для работы с графикой и не повторяющихся действий в интерфейсе - но если для выполнения чего либо мне надо десятки раз повторить одну и туже последовательность нажатий на кнопки без возможности автоматизировать этот процесс - то это уже не удобство - а эксперимент с крысой давящей на рычаг и получающей от этого кайф.

Чтобы запустить симуляцию проекта, надо накидать скрипт. И поменять его при каждом изменении проекта. Как вариант - написать скрипт, который будет генерить скрипт и радоваться автоматизации процесса :-D. И всё это как альтернатива 2м нажатиям на кнопку. И все эти однотипные действия должны делать тысячи разработчиков по всему миру :-D.

Цитата
Выдам страшную тайну - все эти действия жмаканя по кнопке обычно запускают ... скрипты писаные теме же представителями "сексуальных меньшинств".

Ой боюсь-боюсь... sm.gif А если бы там был сишный код или включался ядреный реактор - это бы чего меняло?

Цитата
Пойте и Вы оды про прелести кнопок. Только боюсь что в этом хоре не будет гармонии - каждый ведь требует свой уникальный функционал на каждую кнопку, свою пиктограмму, расположение в меню и на толлбаре, ... такая КАКАфония стоять будет. laughing.gif


То есть, при нажатии на кнопку "Запустить симулятор" очень многим очень часто надо какой-то отличный функционал от "скомпилировать все исходники проекта и запустить симулятор"? А возможность поменять расположение и набор кнопок в софте одной мелкой фирмы появилась лет 15 назад.

Цитата
Толи уверенная песнь познавших истинность скриптов - "... Просто позвольте нам контролировать все самим! ..."

Познавшие истинность скриптов вместо 2х кликов тратят свое рабочее время на написание скриптов вместо верилога и прочих полезных штук.

Производители ПО охотно к таковым прислушиваются - это же так приятно не заниматься разработкой/поддержкой фич, а переложить эту работу на юзеров sm.gif.
В результате, мы теряем функционал ПО.

Альтеровские инструменты - это (пока еще) отлично. Signal Tap, Partition Planner и т.п.. Если мы их продолжим терять, то на этом пути рано или поздно дойдем до того, что будем ручками прошивки писать ноликами и единицами. Полный контроль, чо sm.gif.
RobFPGA
Приветствую!
Цитата(Koluchiy @ Aug 8 2018, 16:58) *
Чтобы запустить симуляцию проекта, надо накидать скрипт. И поменять его при каждом изменении проекта. Как вариант - написать скрипт, который будет генерить скрипт и радоваться автоматизации процесса :-D. И всё это как альтернатива 2м нажатиям на кнопку. И все эти однотипные действия должны делать тысячи разработчиков по всему миру :-D.
Шок ужас - в каждом новом проекте приходится писать новые разные исходники. И не по одному десятку! sm.gif.
А скрипт для компиляции, запуска симуляции (и кучи других действий) у меня написан один раз и не меняется от проекта к проекту. Разве что дополняется по мере роста моей ленивости нажатия на рычаг.

Цитата(Koluchiy @ Aug 8 2018, 16:58) *
Ой боюсь-боюсь... sm.gif А если бы там был сишный код или включался ядреный реактор - это бы чего меняло?
Для Вас ничего - все также будете зависть от догадливости индийских товарищей.

Цитата(Koluchiy @ Aug 8 2018, 16:58) *
То есть, при нажатии на кнопку "Запустить симулятор" очень многим очень часто надо какой-то отличный функционал от "скомпилировать все исходники проекта и запустить симулятор"?
Для более менее приличного проекта да. А для поделок выходного дня может быть и так сойдет.

Цитата(Koluchiy @ Aug 8 2018, 16:58) *
Познавшие истинность скриптов вместо 2х кликов тратят свое рабочее время на написание скриптов вместо верилога и прочих полезных штук.
Хм - странно - у меня как раз наоборот - наверно я что то неправильно делаю cranky.gif

Цитата(Koluchiy @ Aug 8 2018, 16:58) *
Производители ПО охотно к таковым прислушиваются - это же так приятно не заниматься разработкой/поддержкой фич, а переложить эту работу на юзеров sm.gif.
В результате, мы теряем функционал ПО.
Если производитель напряжется и уменьшит время компиляции проекта хотя бы на 20-30% или поднимет качество синтеза и P&R (% заполнения и макс частоту) в ущерб количеству кнопок менюшек и рюшек то я готов все скриптами делать! Главное чтобы TCL консоль осталась.
А если время сократит в 2 раза - я сам GUI нарисую biggrin.gif

Цитата(Koluchiy @ Aug 8 2018, 16:58) *
Альтеровские инструменты - это (пока еще) отлично. Signal Tap, Partition Planner и т.п.. Если мы их продолжим терять, то на этом пути рано или поздно дойдем до того, что будем ручками прошивки писать ноликами и единицами. Полный контроль, чо sm.gif.
Вам это не грозит - будете продолжать использовать Qu 9.1 и все будут Вам завидовать - "Слышиш как бойко клацает мышкой, ...".

Удачи! Rob.
dxp
+ за скрипты. У нас запуск симуляции производится вообще одной кнопкой из внешнего (хорошего программерского) редактора, в котором и пишется весь код. Да, кнопка запускает скрипт. Скрипт делает всю работу: проверяет зависимости (например, пересобирает корки, если что-то там обновилось в настройках и компилирует их модели в отдельную библиотеку), компилирует исходники, запускает елаборацию. Скрипт написан один раз и тоже если что и меняется, так по мелочи корректировки, а работает во всех проектах. В скриптах мне не нравится только одно: Tcl. sm.gif Более человеческий язык был бы уместнее. Но тут ничего не поделать, уже промстандарт.
Flip-fl0p
Я тоже за скрипты !
Недавно себе скриптик простой сделал, который автоматически подключает созданный шаблон тестбенча к проекту, выбирает этот тест для моделирования.
А то пока зайдешь в папку с проектом, пока дойдешь до папки содержащий скрипт, пока скопируешь название теста, пока в Quartus накликаешься мышкой для подключения этого несчастного теста. Прям ужас ужасный sad.gif . Скрипты лучше beer.gif
P.S. Я правда пока только встаю на путь использования скриптов в проектировании. Но мне уже нравится !
Kluwert
Цитата(dxp @ Aug 9 2018, 04:51) *
+ за скрипты. У нас запуск симуляции производится вообще одной кнопкой из внешнего (хорошего программерского) редактора, в котором и пишется весь код. Да, кнопка запускает скрипт. Скрипт делает всю работу: проверяет зависимости (например, пересобирает корки, если что-то там обновилось в настройках и компилирует их модели в отдельную библиотеку), компилирует исходники, запускает елаборацию. Скрипт написан один раз и тоже если что и меняется, так по мелочи корректировки, а работает во всех проектах. В скриптах мне не нравится только одно: Tcl. sm.gif Более человеческий язык был бы уместнее. Но тут ничего не поделать, уже промстандарт.

Не совсем с вами согласен. Когда большой проект да. Тот же Моделлсим, у меня уже давно запускается ватничками с вызовом соотвествующих наработанных гоадми скриптов, прям как набор с инструментами sm.gif

Но, проблема в том, что иногда этот скрипт дольше править. Объясню. Часто делаю "лабораторные работы": в большом проекте что-то не работает, есть подозрение на определённый блок. Выдёргиваешь этот блок, делаешь в два щелчка новый проект и - на моделирование. И тут выясняется, что что бы отмоделировать блок, условно, с 2 входами (один из которых клок) и одним выходом, нужно перепиливать целый скрипт.

В то время как в старом добром Макс плюс II (да, такой я старый! sm.gif), был изумительно простой графический моделлер. Там нужные сигналы в подобном случае задавались буквально в пару щелчков мыши. И - пожальте результат!

Или приведу мой любимый пример: а зачем тогда ручки и кнопки на осцилле? Давайте тоже выпускать осциллы, у которых на передней панели только экран и вход USB будет. Приготовил на компе скрипт, переписал на флешку, вставил в осцилл - и вуаля!
RobFPGA
Приветствую!
Цитата(Kluwert @ Aug 22 2018, 09:32) *
Не совсем с вами согласен. Когда большой проект да. Тот же Моделлсим, у меня уже давно запускается ватничками с вызовом соотвествующих наработанных гоадми скриптов, прям как набор с инструментами sm.gif

Но, проблема в том, что иногда этот скрипт дольше править. Объясню. Часто делаю "лабораторные работы": в большом проекте что-то не работает, есть подозрение на определённый блок. Выдёргиваешь этот блок, делаешь в два щелчка новый проект и - на моделирование. И тут выясняется, что что бы отмоделировать блок, условно, с 2 входами (один из которых клок) и одним выходом, нужно перепиливать целый скрипт.
Жуть - создавать новый проект чтобы просимит 2-х входовый модуль. crying.gif У меня вот в проектике >1000 файлов разных исходников. Я могу любой файл запустить на сим одной и той же командой sim_modue module_name [-lib lib_name] [-opt options]. И для этого мне не надо что то куда то выдергивать.
Для того чтобы самому автоматизировать такую рутину достаточно отвлечься на пол часа от жатия кнопок, подумать слегка и сваять скриптик покрывающий 99.9% вашего привычного сценария работы.

Цитата(Kluwert @ Aug 22 2018, 09:32) *
Или приведу мой любимый пример: а зачем тогда ручки и кнопки на осцилле? Давайте тоже выпускать осциллы, у которых на передней панели только экран и вход USB будет. Приготовил на компе скрипт, переписал на флешку, вставил в осцилл - и вуаля!
Так и есть, и даже больше - у меня осциллограф, генератор, спектроанализатор, ... даже источники питания, подключены через сеть к Matlab, и скриптами контролируется процесс измерений и расчета параметров sm.gif.

Удачи! Rob.
Kluwert
Цитата(RobFPGA @ Aug 22 2018, 12:17) *
Удачи! Rob.

Я не с вами вообще-то дисскусию вёл. То, что вы круче и умнее всех уже все поняли. Но конкретно ваше мнение мне ни разу не интересно. Я тоже по-началу себя так вёл, потом схватил предупреждение и сделал выводы. И вам того же желаю.

Удачи! Kluwert
Kuzmi4
2 RobFPGA
у вас получилось заставить Q2 создавать нужный вам STP с самого начала или вы всё таки остановились на варианте из "../stp/build_stp.tcl" ?
RobFPGA
Приветствую!
Цитата(Kuzmi4 @ Aug 28 2018, 16:34) *
у вас получилось заставить Q2 создавать нужный вам STP с самого начала или вы всё таки остановились на варианте из "../stp/build_stp.tcl" ?
Увы пока ни как не получилось - некогда было серьезно заняться этим - да и по время для такого неудачное - лето, отпуск sm.gif Вот будет на улице слякоть и холодрыга тогда можно будет поковыряться в "кишках" Qu.

Удачи! Rob.

Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.