_4afc_ 25 27 мая, 2021 Опубликовано 27 мая, 2021 · Жалоба 1 hour ago, yes said: у меня основной комп всяким мусором забит лет за 5 - ксайлинская вивада не запустилась, а переставлять винду и лишиться всего наставленного не хотелось проц где-то в 1.5 раза медленнее, чем в компе, но жрет 15Ватт, а не 150 На виртуалку можно было поставить. У меня виртуалка с Вин7 и пдф к ней клоны с матлабом или вивадой или атмел студией или для говина или для латиса или циклона или пикадом а к ним клоны с проектом под конкретную ОКР Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nick_K 0 28 мая, 2021 Опубликовано 28 мая, 2021 · Жалоба 12 hours ago, yes said: то есть без тикля, в самом тестбенче можно, по-моему Всё верно, я потом поправился. Действительно можно в самом тестовом окружении делать записи/сохранения вейвформ. Но для моего случая просто не подходят, по своим причинам) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
yes 5 28 мая, 2021 Опубликовано 28 мая, 2021 · Жалоба 13 hours ago, _4afc_ said: На виртуалку можно было поставить. У меня виртуалка с Вин7 и пдф к ней клоны с матлабом или вивадой или атмел студией или для говина или для латиса или циклона или пикадом а к ним клоны с проектом под конкретную ОКР да у меня тоже 10-к разных виртуалок стоит - потом вылазят проблемы с железом/драйверами и т.д. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dxp 34 3 июня, 2021 Опубликовано 3 июня, 2021 · Жалоба 27.05.2021 в 17:58, RobFPGA сказал: Это может здорово ускорить прогоны например в сценарии когда сделав дамп состояния сима после длительного медленного процесса (например инициализации линка PCIe) затем делать прогоны различных сценариев без ожидания, сразу загружая дамп нужной промежуточной точки. А можно этот приём поподробнее описать? Насколько я понял, $dump* — это про сохранение логов в VCD формат. А вот интересует именно то, что вы сказали: сохранить "постоянную часть" прогона (начало), где делается "длительный медленный процесс" (поднимается линк PCIe), а потом с неё стартовать. Неужто это тоже через $dump*? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 3 июня, 2021 Опубликовано 3 июня, 2021 · Жалоба Приветствую! 12 minutes ago, dxp said: А можно этот приём поподробнее описать? Насколько я понял, $dump* — это про сохранение логов в VCD формат. А вот интересует именно то, что вы сказали: сохранить "постоянную часть" прогона (начало), где делается "длительный медленный процесс" (поднимается линк PCIe), а потом с неё стартовать. Неужто это тоже через $dump*? Да вы правы $dump* лишь контролирует запись переменных в VCD файлы. Для функционала checkpoint нужно использовать внешние команды сима из скрипта. Для Ms это команды checkpoint / restore. Удачи! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dxp 34 3 июня, 2021 Опубликовано 3 июня, 2021 · Жалоба 27 минут назад, RobFPGA сказал: Для Ms это команды checkpoint / restore Попробовал. Сохранение и загрузка работают. Но не получилось добиться, чтобы можно было стартовать изменённый дизайн. Ситуация следующая: есть дизайн, в котором первые 110 мкс ничего интересного не происходит (как раз PCIe линк поднимается), на этом значении времени останавливаю его и делаю checkpoint. Хотелка в том, чтобы при последующих итерациях не нужно было каждый раз гонять эти 110 мкс со старта. Это не очень долго, но при частых итерациях всё равно аноит. Так вот, меняю в HDL что-нибудь по мелочи (количество пакетов для передачи через интерфейс), перекомпилирую дизайн (work library), в консоли квесты restore <vsim.cpt>, загружается предыдущий прогон на сохранённой точке, запускаю дальше run -all, вижу, что прогоняется не текущий вариант, а предыдущий. Т.е. получается, что сохранить и загрузить получилось, но после загрузки работает прошлый вариант, а не новый. И тогда смысл всего праздника теряется. Может что-то делаю не так? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 3 июня, 2021 Опубликовано 3 июня, 2021 · Жалоба Приветствую! 2 minutes ago, dxp said: Так вот, меняю в HDL что-нибудь по мелочи (количество пакетов для передачи через интерфейс), перекомпилирую дизайн (work library), ... Нее - checkpoint так не работает. Увы менять код нельзя. Можно симить только то состояние RTL дизайна которое было на момент создание checkpoint. Смысл этого праздника - в возможности гонять разные сценарии пропуская долгое начало. Для этого естественно нужно сам TB сделать так чтобы управлять им через данные без изменения кода. Я делал через свой скриптовый движек в TB котрый читал файлы скриптов и исполнял их в TB. Поэтому я мог меняя данные скриптов тестить разное поведение без изменения RTL кода. Удачи! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dxp 34 3 июня, 2021 Опубликовано 3 июня, 2021 · Жалоба Ага, понятно. Спасибо за информацию. В принципе, у меня этот параметр не обязательно внутри кода задавать. Надо подумать, как его снаружи читать (в какой момент). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Tpeck 0 3 июня, 2021 Опубликовано 3 июня, 2021 · Жалоба 18 minutes ago, dxp said: Но не получилось добиться, чтобы можно было стартовать изменённый дизайн. А это вообще возможно? Ведь там добавляются/удаляются различные сигналы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dxp 34 3 июня, 2021 Опубликовано 3 июня, 2021 · Жалоба Только что, Tpeck сказал: А это вообще возможно? Ведь там добавляются/удаляются различные сигналы. Да, тоже не покидало сомнение (как технически это реализуется), но хотелось верить в чудо. :) Чуда не оказалось. Уважаемый @RobFPGA объяснил сценарий использования этой техники. Оно рулит на прогонах разных данных, получаемых снаружи дизайна, но для отладки кода не годится. К сожалению. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 3 июня, 2021 Опубликовано 3 июня, 2021 · Жалоба Приветствую! 55 minutes ago, dxp said: Ага, понятно. Спасибо за информацию. В принципе, у меня этот параметр не обязательно внутри кода задавать. Надо подумать, как его снаружи читать (в какой момент). Кроме скриптового подхода еще можно форсить значение переменных в TB непосредственно из tcl управлявшего скрипта после загрузки чекпоинта. Удачи! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dvladim 0 3 июня, 2021 Опубликовано 3 июня, 2021 · Жалоба 12 часов назад, dxp сказал: Надо подумать, как его снаружи читать (в какой момент). В Verilog обычно используют $test$plusargs $value$plusargs - это управление через коммандную строку. Или свой скрипт через PLI, или Cocotb, или можно попробовать приспособить MyHDL. Ну или по-простому читать файл через $fgets, разбирать его и выполнять, или читать данные через $readmemh/$readmemb Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Мур 1 4 июня, 2021 Опубликовано 4 июня, 2021 · Жалоба Можете поздравить меня. Через 5 лет просьб оснастить меня приличным компьютером мне предоставили новый 4х ядерный I5(3Ггц) с 16Г(3Ггц) памяти и системном SSD. С удовлетворением заявляю, что экономия времени по сборке проекта составила 32%. По ModelSim не менее 20%.(буду уточнять еще) Все 4 ядра грузились на 100%.... Так это совсем другое дело!... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
new123 0 4 июня, 2021 Опубликовано 4 июня, 2021 · Жалоба Поздравляю ) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Мур 1 4 июня, 2021 Опубликовано 4 июня, 2021 · Жалоба 17 minutes ago, new123 said: Поздравляю ) Всем не равнодушным СПАСИБО! Ощущения, что выросли крылья... Желаю ВСЕМ получить недостающий инструмент для творчества! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться