dwfv
dwfv copied to clipboard
Fixed-point signals: analog visualization and stats/table
First off, congratulations for this tool. I find it very useful for it to be a terminal application, and the Rust tooling is nice.
I'd like to discuss a couple of features related to fixed-point signals:
Analog visualization
In GtkWave, multi-bit signals can be viewed as binary, unsigned integer, signed integer, hex, etc. but also as "analog" plots. When multi-bit signals represent fixed-point values, it is possible to set the number of fractional bits, so the value is shown as a float/real. A few months ago, I opened gtkwave/gtkwave#9 to discuss some specific details about the feature.
I saw that tui-rs allows plotting XY charts (demo). Would it be feasible to add this feature to dwfv? Is there any plan to do so?
Stats or frequency table
As explained in dbhi/fpconv, I'd like to extract some specific statistics from waveforms. Precisely, for a given set of signals in a synchronous design, I'd like to record all the different values that each signal is assigned, and how many times does each signal hold each value. I prototyped it using a Python script (fpconv.py).
Since dwfv seems to expose a backend API for manipulation of signals, I wonder whether this feature might be added as an argument/subcommand (arguments seem to be subcommands).