Skip to content

Wave source hierarchy browser #216

@bluecmd

Description

@bluecmd

In order to support sources with a lot of channels, it is inevitable that glscopeclient will have to offer some sort of interface to select and add a lot of channels at once. Right now this is done by the "Add" menu, which works pretty well for a few channels commonly used on analog scopes.

The most extreme examples I can think of are SPICE simulations which can easily have thousands of nets in the results,
I made an example SPICE waveform here: lots-of-inverters.tar.zst. It contains a 300MB SPICE simulation of some hundred inverters in a 2-level hierarchy.

Some inspiration from GTKwave here:
image

Other simulation tools usually have something similar, a type of "filesystem" folder/trace structure that allows navigation. Some viewers have a flat hierarchy but allowing you to filter.

For VCD and FST the folder-hierarchy maps really well as they are hierarchical anyway. For SPICE data they are more implicit, like this:

v(x16.net30)    voltage
v(x16.net31)    voltage
v(net16)        voltage
v(sky130_fd_pr__esd_nfet_05v0_nvt.pm3)  voltage
v(m.x16.xm60.msky130_fd_pr__nfet_01v8#dbody)    voltage
v(m.x16.xm60.msky130_fd_pr__nfet_01v8#body)     voltage
i(v.x3.vsense-vcc)      current
i(v.x2.vsense-in)       current
i(v.x2.vsense-vcc)      current
i(v.x1.vsense-in)       current
i(v.x1.vsense-vcc)      current
i(v1.8) current
i(v.100mhz)     current

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions