Author Topic: Logic Analyzer vs Mixed Signaling - What's the difference?  (Read 1178 times)

0 Members and 1 Guest are viewing this topic.

Offline Nikos A.Topic starter

  • Regular Contributor
  • *
  • Posts: 238
  • Country: cy
Logic Analyzer vs Mixed Signaling - What's the difference?
« on: August 05, 2020, 02:03:08 pm »
Hi everyone,

I am looking to buy an osciloscope and I am bit confuded regarding the terms "logic analyzeer" and "MSO".
An osciloscope with logic analyzer is the same as MSO? An osciloscope with logic analyzer is able to decode the signal (for example the I2C bus)?

Nick
 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9890
  • Country: us
Re: Logic Analyzer vs Mixed Signaling - What's the difference?
« Reply #1 on: August 05, 2020, 02:35:41 pm »
You might get some ideas from Dave's video on MSOs



Modern DSO (not MSO) have some decode capability.  The inexpensive 4 channel Rigol DS1054Z will decode UART, I2C, SPI and limited parallel.  Others will also decode CAN and other protocols.  There are severe limitations on the size of the transaction that can be displayed.  The Rigol can only decode what is on the screen and scrolling backwards doesn't change that.

MSOs are a step up in that they can usually display a lot more channels but it remains an exercise to see what protocols they can decode.  Your exercise...  Look especially at how much data they can store.  In some cases, like the DS1054Z, they can only decode what is on the screen when the capture is taken.

Logic analyzers are more purpose built.  They only do digital and they can capture and decode gobs of data.  The most important feature is the ability to use an external 'state' clock instead of just the internal sample clock.  This comes up all the time in stateful logic systems.  The other thing is triggering.  How sophisticated is it?  Trigger on the rising edge of signal 12 after signal 11 goes high after signal 2 and 3 go low, that kind of thing.

So, there are 3 approaches and they are all different.  Dave doesn't prefer the MSO, I have an FPGA based LA and a Digilent Digital Discovery but the Digilent Analog Discovery does a decent job at lower frequencies and then there are the $8 LAs all over eBay.

You might make short work of the selection process once you decide how fast your logic will run.  There will be some debate on how much faster the LA needs to sample but 2x is the minimum and 10x is better.

Don't just dismiss the Analog Discovery (lower frequencies) or Digital Discovery (higher frequencies) when used with a 27" monitor.  You can display a lot of logic on a really big scfreen.

I have the DS1054Z, and both of the Discovery devices. I don't use the Digital Discovery all that often but I use the Analog Discovery all the time, especially for educational exercises.

« Last Edit: August 05, 2020, 02:42:52 pm by rstofer »
 

Offline Nikos A.Topic starter

  • Regular Contributor
  • *
  • Posts: 238
  • Country: cy
Re: Logic Analyzer vs Mixed Signaling - What's the difference?
« Reply #2 on: August 06, 2020, 08:10:53 am »
Thank you for your great responce rstofer!!

The Rigol can only decode what is on the screen and scrolling backwards doesn't change that.

I didn't know about that.. thanks!!

I was thinkng about the DS1045Z and buy a seperately Logic Analyzer. In general I have see very good reviews for the DS1045Z.

Are you satisfied with the Analog discovery regarding its protocol analyzer and logic analyzer capabilities?

 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9890
  • Country: us
Re: Logic Analyzer vs Mixed Signaling - What's the difference?
« Reply #3 on: August 06, 2020, 11:54:00 am »
I have only used the I2C protocol decoding of the Analog Discovery on a couple of example problems.  I tend to avoid the I2C protocol at every opportunity.  I prefer the SPI protocol...

The Analog Discovery protocol decoder is quite nice because it not only lets you watch an existing bus but it can also participate by allowing you to send and receive your own packets.  If you're not certain how some device reacts to a command, just use the AD2 to send the command and receive the result.

 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9890
  • Country: us
Re: Logic Analyzer vs Mixed Signaling - What's the difference?
« Reply #4 on: August 06, 2020, 03:46:46 pm »
I decided to add a little output from the AD2/Waveforms protocol decoding of I2c.  This example is taking an analog reading from an I2C ADC connected to a Raspberry Pi with the Waveforms software and the AD2 also running on the Pi.  Very cool!

To be clear, the output below is from the logic analyzer gadget, not the protocol gadget.  See the next post for the protocol decoder output.

I am using the FreeNove Ultimate Starter Kit to create an I2c project and it is highly recommended.  The tutorials are excellent!  They also provide all the software needed for the various projects.

https://www.amazon.com/gp/product/B06W54L7B5

Edited,,,
« Last Edit: August 07, 2020, 03:16:41 pm by rstofer »
 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9890
  • Country: us
Re: Logic Analyzer vs Mixed Signaling - What's the difference?
« Reply #5 on: August 07, 2020, 03:08:31 pm »
With the AD2, there are at least 2 ways to look at I2C.  As a straight up logic analyzer, you get traces, with decoding, as I posted above.   But as the transaction gets longer, the traces get longer and maybe you already know that traffic is moving.  What you want to know is what the master and slave are saying to each other.  Here is the output of the Protocol gadget.  It is simply a table of values sent and received with no traces involved.  Once I2C is known to work, this is what you probably want to see
« Last Edit: August 07, 2020, 05:27:57 pm by rstofer »
 

Offline Doctorandus_P

  • Super Contributor
  • ***
  • Posts: 3367
  • Country: nl
Re: Logic Analyzer vs Mixed Signaling - What's the difference?
« Reply #6 on: August 07, 2020, 03:44:30 pm »
MSO's with build- in Logic analyzers (16 channels or so) still are quite more expensive than without the Logic Analyzer.
The newer Siglent with 4 channels makes it easier t do both some analog scope stuff and decode some serial signals at the same time.


But if you're new to Logic Analyzers, I recommend to get one (or 2 in case of some damage) of the EUR7 Logic analyzer boxes and use it with Sigrok / Pulseview.

There are many reasons why I recommend this to beginners.
1). The price. Who worries about a EUR7 for a very useful measurement device.
2). Pulseview is great Open Source software. No conscience troubles.
3). Big PC monitor with mouse is a good interface for a LA, better than a scope screen.
4). Sigrok has 100+ build in protocol decoders.
5). Protocol decoders are added for free. Current rate seems to be 5+ per year.
6). You can make your own protocol decoder. It's a few pages of Python (and you have 100+ examples).
7). The device is very small. Stick it to a breadboard with elastic bands or tape.
8). Oscilloscope probes are very unwieldy for logic analyzer use.

There are some limitations with EUR7 hardware of course. Main disadvantages are the limited sample rate (24Msps on all channels, 48Msps on 4 or less channels) This is however plenty for the mayority of beginner projects. Uart, I2C, etc.

Recently I'm experimenting a bit with STM32F103 (such as "Blue Pill" boards) and I spit out a lot of debug info on a spare uart @ 2Mbps, which Pulseview easily catches. The big advantage of catching this with a LA instead of some terminal emulator, is that all timing information is preserved.

For example: Spitting out a debug byte is for the uC just a single write to the UART data register, and this can be done multiple times even in an ISR.
So I have a 60 line ISR routine that handles some RS485 data, does some basic address checking, handles the RS485 enable line, special 9th bit for start of packet detection etc, and this runs at the regular 115k2 baudrate. Then If I see any anomaly on the UART lines, I zoom in on the debug data, to see what happened at exactly that moment.

I've posted some screenshots of an example here:
https://www.eevblog.com/forum/microcontrollers/how-to-debug-microcontrollers-in-the-real-world/msg3150912/#msg3150912

And once (if) you get into the limitations of the EUR7 hardware, you've had a lot of practice and have a fairly good idea what a LA is, how you can use it, and what sort of hardware update you need.
I have both a (few of) these EUR7 boxes and a Rigol DS1052E (no LA capabilities whatsoever) and I find Pulseview with such an EUR7 box much more convenient to use. Just start with wiring it up with some dupont wires to a breadboard.

Also: As an extra precaution I always use a (preferably powered) USB hub. This makes it much less likely your PC or laptop gets damages from shorts or over voltage. An USB hub is easily replaceable if it gets damaged.
 

Offline Nikos A.Topic starter

  • Regular Contributor
  • *
  • Posts: 238
  • Country: cy
Re: Logic Analyzer vs Mixed Signaling - What's the difference?
« Reply #7 on: August 10, 2020, 06:16:39 am »
Thank you so much both guys!! Your input was really helpfull!!

I decided to order the DS1045Z and the cheap AZDelivery Logic Analyzer!! It looks like a great start.

I decided to add a little output from the AD2/Waveforms protocol decoding of I2c.  This example is taking an analog reading from an I2C ADC connected to a Raspberry Pi with the Waveforms software and the AD2 also running on the Pi.  Very cool!

Thank you for your time and the demonstration of LA and PA of AD2, it looks like an amazing tool with many capabilities!! Maybe this is going to by my next upgrade :)
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf