Add Analyzer for TDM


I would like to add analyzer for TDM (extension to I2S).

  • Do I need to add both High Level Analyzer Extension and Digital Measurement Extension?
  • Does Digital Measurement Extension support process on multiple channels?

Thanks in advance.


@hao.chen Thanks for writing in!

A High Level Analyzer (HLA) extension sits on top of an existing Low Level Analyzer (LLA) such as our existing I2S LLA, and can act as a way to provide an extra layer of decoding. For example, an HLA could translate raw I2S data into a more readable form, and can also combine a sequence of decoded messages into a single message (just a few examples).

As such, an HLA could certainly be developed for our I2S analyzer to perform an extra layer of translation. However, the data format you have shared in your image doesn’t look like it conforms to the 2-channel standard that our existing I2S analyzer follows.

As an example, our existing I2S analyzer decodes data as follows:

  • FRAME level dictates the channel (either ch1 or ch2)
  • Each CLK rising edge denotes a single bit for the particular channel
  • The I2S settings can provide some variation, including Data polarity, number of bits, CLK polarity, etc.

Having said that, our native SPI analyzer might actually be the best place to start! I’ve provided a quick example image below utilizing demo data.

The SPI Enable line could act as your FS line (since it seems to be acting as an Enable line anyways). All clock pulses while the Enable line is high will be ignored. Data will only be decoded while the Enable line is low. You could then set the SPI analyzer to decode in x-bit chunks based on your requiements.

Could this work out as a solution for you? Feel free to share a copy of your .sal capture file if you’ve already taken a capture of your TDM data using our logic analyzer. I’d be happy to play around with it to see if this solution could work.