Обнаружил изумительный способ генерить диаграммы сигналов из текстового описания. Диаграмма описывается на языке WaveJSON и выглядит следующим образом:

Для интересующихся асинхронной логикой: сей примитив называется Concur и в асинхронном верилоге реализует блок fork...join.

{ "signal": [ { "name": "activate.req", "wave": "01........0.", "node": ".A.........." }, { "name": "activate.ack", "wave": "0........1.0", "node": ".........F.." }, { "name": "out1.req", "wave": "0.1.0.......", "node": "..B........." }, { "name": "out1.ack", "wave": "0..1.0......", "node": ".....D......" }, { "name": "out2.req", "wave": "0.1....0....", "node": "..C........." }, { "name": "out2.ack", "wave": "0.....1.0...", "node": "........E..." } ], "edge": [ "A~B", "A~C", "D~F", "E~F" ] }Утилита wavedrom преобразует этот формат в SVG, а дальше посредством inkscape можно делать PNG, EPS или PDF. Вышеприведённый текст превращается в рисунок:

Для интересующихся асинхронной логикой: сей примитив называется Concur и в асинхронном верилоге реализует блок fork...join.
