Перезагрузите файл VCD в gtkwave из командной строки
Я использую VCD-файл, сгенерированный iverilog с помощью gtkwave. В графическом интерфейсе есть кнопка, но я бы хотел перезагрузить окно волны из командной строки. Как бы я пошел об этом?
2 ответа
Вы можете запустить gtkwave в интерактивном режиме, но это требует, чтобы ваш симулятор был аддитивным. По сути, вы сохраняете прежние данные, но добавляете дополнительные данные, которые были собраны. Для этого вы добавляете "интерактивный" переключатель и вам нужно FIFO в данных.
Из руководства пользователя
Интерактивные VCD VCD-файлы можно просматривать по мере их генерации при условии, что они записаны в fifo (pipe) и сначала трамплируются через shmidcat (предположим, что симулятор обычно генерирует outfile.vcd):
mkfifo outfile.vcd
cver myverilog.v &
shmidcat outfile.vcd | gtkwave v I myverilog.sav
Затем вы можете перемещаться по файлу во время симуляции и наблюдать за его обновлением.
Кто-то из списка рассылки GTKWave на самом деле задал этот же вопрос несколько лет назад. Оказывается, вы можете перезагрузить GTKWave, используя gconftool2
из всех вещей:
gconftool-2 --type string --set /com.geda.gtkwave/0/reload 0
Выполнение вышеуказанной команды заставит GTKWave перезагрузить текущую форму волны (в отличие от включения какой-либо опции автоматической перезагрузки, что, как вы думаете, будет иметь место, учитывая, что GConf является системой конфигурации).