wavedrom / zoom

🔍 Zoomable Waveform viewer for the Web
MIT License
42 stars 1 forks source link

Protocol interpretation #10

Open drom opened 6 years ago

drom commented 6 years ago

Originally posted by @nturley in https://github.com/wavedrom/zoom/issues/1#issuecomment-435543623

drom commented 6 years ago

It would be nice to have a "phantom" wave which is an overlay on named traces. It could be used to compare captured traces to configured timings (from datasheet / mock) to highlight errors. This could be used complementary with #10. Maybe as plugin?

Originally posted by @fusedFET in https://github.com/wavedrom/zoom/issues/1#issuecomment-435586675

drom commented 6 years ago

I can imagine the cursor that (instead of being vertical time marker) highlights specific protocol transaction. Including all time slots of all signals involved in the specific transaction from request to response.

key2 commented 6 years ago

could use libsigrokdecode for decoding. what would be nice is to have the possibility to have a line for the decoded data such as pulseview

drom commented 6 years ago

@key2 I would love to integrate with libsigrok at some point. I am not sure about libsigrokdecode . It implements all protocol decoder in Pyhton 3, which is a heavy dependency for Zoom.

key2 commented 6 years ago

I would say that what we want in JS is the rendering. That is the part missing today. Decoding is another task. In my case, as I was planning to use it with electron.js, I could do the decoding using libsigrokdecode or re-implement decoders in pure JS.

key2 commented 6 years ago

FYI, I do simulation with verilator, which dumps VCDs that are sometimes a couple of GB heavy. I re-wrote my own vcd parser in C in order to play with the dump (for creating a stackdump and memory dump of a processor I simulate for example) . I hardly imagine that converting that into json could be handled properly by v8 and rendered like that. One would need to have an engine that can give you a small subset of the data to be rendered according to the zoom requested.