Can Logic decode Data-Strobe signals?

The spacewire protocol uses two lines, Data and Strobe, which are combined to recover the clock. Is Logic able to decode this? For example, here are the two signals, the interpreted data, and the higher-level character interpretation:

I can write the HLA, but I don’t think the underlying functionality needed is there, as this data isn’t serial/i2c/spi.

1 Like

That’s a pretty cool protocol!

Quickly looking online, I don’t think any of our included low level analyzers are suited for decoding this, but one could be written in C++. It’s a more complicated API though.

You can learn more here:

I didn’t look too closely, but if the data itself is asynchronous, I would recommend either reviewing or modifying our serial analyzer:

Lastly, if you’re not comfortable with C++, another approach would be to record the data, and export those 2 digital channels to CSV. then write a python decoder that processes the CSV data.
Unfortunately, there is no way to display those results in our application.

You can learn more about data export here:

1 Like

@kostka I have been wanting to get involved with creating new analyzers. So if you didn’t want to make this yourself I can take a crack at it at my spare time. Not sure if there is a deadline on getting this done or not.

@markgarrison Thanks for the detailed info!!

I wasn’t aware there was a possibility for a user created low level analyzer (is that new?), but that seems like the way to go. Quite comfortable with C++ fortunately. I will likely have a go when my schedule allows.

1 Like

@kostka @eirannejad Sounds good! We’ve actually had the analyzer SDK available for several years now, though we’ve consistently made updates to it over time. Let us know if you run into any issues with it!

Just wanted to drop a quick note to say the low-level documentation is superb (which is quite rare in my experience) and I was able to get up and running quickly.

Thanks @timreyes and @markgarrison for the point in the right direction.

1 Like