Unfortunately neither statement is correct. First: There is no limit to what speed is supported by SPI. You can run it at several GHz if you manage to get the timing right. Second: every DSO has a limit to the speed it can decode. For example: on my GW Instek it depends on the memory length. With a short memory length it has no problem decoding SPI at 125MHz but at longer memory lengths, the maximum speed drops. In the end a DSO has a limited amount of resources to do the decoding which in turn limits the number of samples it can process within a reasonable amount of time.
You are right, there are no hard limits for the SPI bus clock speed. But 20 MHz, is by today's standards low speed.
Also, I have switched to the Logic Analyzer mode, so it should record only one bit per sample, and not 8 bits
per signal. If there are any limitations due to memory or such, that the Data Sheet of the DSO should have
listed them. I have run my test using different time bases, and sampling rates. Short and large captures.
Yes, when I try to record 200mS worth of SPI traffic, it just chokes and doesn't do anything useful. On the
other hand, I can record 200mS worth of analog traces and save them to flash drive and then decode it
myself.
The fact remains, that the decoder IS BROKEN. It works 70% of the time, and when you really need it does not.
Another thing I forgot to mention, the very first transaction in a capture is ALWAYS decoded wrong.
I would be happy to work with Siglent and provide sample traces if they are interested.
And don't forget, saving digital traces is also broken (saved as all zeros). And yes I have the threshold
set correctly ...
rudi