Online / 5 & 6 February 2022

visit

Writing GTKWave documents, with style

A Python-based CSS-like mini language for generating GTKWave documents


GTKWave is a nice tool for displaying signal traces, while developing with Hardware Description Languages, and has many formatting features like changing signal color, grouping signals in a hierarchy, etc. However, it can become tedious to manually edit through the GUI. Also, its document format, while ASCII, is a bit cryptic, and contains extra information pertaining to the GUI (window and panel sizes, last modification date, etc.), making it inconvenient for placing in revision control. A Domain Specific Language for generating GTKWave documents was developed, separating signal description and structure from style, not unlike HTML+CSS, but described using Python Lists and Dictionaries. This makes it especially suitable for embedding in Python-based Hardware Description Languages and Simulators. While it fits my own needs, I'm hopping to gather some feedback on this tiny library, so it could be made more generally useful.

Speakers

Photo of Cesar Strauss Cesar Strauss

Links