What is a Logic Analyzer?
A logic analyzer is a must-have instrument for digital system designers. It is as important for digital system designers as is an oscilloscope for analog electronics and the spectrum analyzer is for RF measurements.
A logic analyzer is equipped with multiple channels. The data state and timing of a large number of digital signals are characterized by a logic analyzer. The usual number input channels offered by these digital measuring instruments are 16, 32, 64, or a greater number. These input channels can be displayed via a variety of input formats. These display formats include state diagrams, timing diagrams, assembly code, and protocol decodes.
This device is primarily used for the development of embedded firmware.
Form Factors of Logic Analyzer
Logic analyzers come in a number of form factors. They can be broadly classified into three categories – instrument-format, computer-based, and modular.
* Instrument-format logic analyzers are housed in standalone cases. The traditional cases used by instrument-format logic analyzers are similar to the ones used by spectrum analyzers or oscilloscopes.
* Computer-based logic analyzers are small modular structures which can be connected to the PC via Ethernet or USB connections.
* Modular logic analyzers are intended to work in a chassis or mainframe crate. These are based on standardized PC cards. The channel count is fixed for each module. The maximum channel capacity depends on the number of slots in the crate. It is a function of the number of slots that are available in the chassis. All the modules in a crate share the timing signals and power equally.
In recent times, embedded experts have paired with digital oscilloscopes. These are called MSOs (mixed-signal oscilloscopes). Logic analyzing instruments like GoLogicXL-36 can be incorporated into an oscilloscope. This adds the triggering capabilities of a logic analyzer to the features of the scope.
The Display of a Logic Analyzer
Multiple channels of digital data in a logic analyzer display are plotted as digital state vs time. The display of a typical logic analyzer shows a four-wire digital bus (D0-D3). Along with this, it shows the three components of an SPI serial interface – clock (CLK), SPI data (DATA), and chip select (CS). The SPI bus decode (SPI Bus) and the digital bus state (BUS1) are displayed simultaneously.
The data contained in the serial SPI packet is decoded and its value is displayed by the SPI bus readout. The data in the SPI packet consists of the data that occurs during the eight-pulse clock burst with the chip-select line in the ‘0’ or low setting.
How Does a Logic Analyzer Operate?
The logic analyzer is a digital instrument. Each input is digitized by it according to the rate that is set by the clock of the analyzer. This is a bit similar to the workings of a digital oscilloscope. However, unlike a digital oscilloscope, each channel of the digital conversion has only a single bit. Depending on the value of the digital threshold set by the user, the value of the digitized data is either 0 or 1. The standard threshold values of CMOS, TTL, and other thresholds set by the user usually range from 0 to 7V.
All of these digital channels clock data simultaneously. All the parallel digital data is clocked directly into the acquisition memory. Each digital input has one row of acquisition memory. The duration of the measurement is determined by the depth of the acquisition memory. This process gathers data continuously until a trigger event occurs. At the time of the trigger event, the memory contents are displayed on screen. If the logic analyzer was set to a single-trigger mode, then the data acquisition stops until the logic analyzer is re-armed. If the analyzer is set to a normal trigger mode, the data acquisition resumes and awaits the next trigger event.
The trigger location can be set by the user to occur at the center of the acquisition memory. If the user does this, then the data before and after the trigger can be viewed. This helps in case of anomalous events. So in case an anomaly happens, the conditions leading up to the event will be displayed by the logic analyzer. There is a display zoom feature available that allows users to focus on the sections of the memory contents that they wish to view.
The trigger of a logic analyzer functions exactly like an oscilloscope. The trigger condition depends entirely on the user. It can be something as simple as a single digital input’s edge transition. Or, there can be a preset logic state which involves multiple digital lines.
Examples of a few common trigger events are data words that fall under a specific range of values, specific data words, external trigger signals, or an event counter-based preset number of events. Conditional triggering occurs simultaneously. In these cases, triggering occurs only under a single qualifying logic. The content of the acquisition memory is locked during a trigger event and is then displayed as we explained in the previous section.
These sophisticated machinations have made logic analyzer a popular tool in the arsenal of PCB design services and software development services.
Clocking modes
Logic analyzers are usually available in two clocking modes – synchronous (state) acquisition and asynchronous (timing) acquisition. In case of asynchronous clocking, the logic analyzer uses an internal clock. The frequency of the internal clock is far greater than the system clock of the device under test.
In case of synchronous clocking, the clock source is synchronous with the device being tested. In this form of clocking, the digital signal is only captured when a valid value pops up. This mode ignores the transitional conditions on the digital signal lines and instead helps map the progression of machine states in the system under test.
Measurements
Logic analyzers have a number of tools that can be used to make measurements of the acquired data. At the very least, you will be provided with a cursor which will help you measure the time between the events. Sophisticated logic analyzers offer a number of parameters for measurement like – pulse width, frequency, duty cycle, edge count, and period. All of these parameters are automated and hence save a ton of manual labor.
No amplitude-related measurements can be made as that would require an oscilloscope.
Instrument synchronization
Most logic analyzers can be synchronized with oscilloscopes. When these are operated jointly, analog waveforms get synchronized with digital data and are displayed via a common display. Latest MSOs offer both digital and analog channels. This helps them display both digital and analog signals on time axis that are synchronized.
Software packages which help analyze the synchronized analog and digital data are available in the market. Some software options allow code disassembly and processor emulation. This permits the correlation of source code to low-level hardware activity.
Specification
There is a wide range of form factors of logic analyzers. These form factors are responsible for determining the cost and capabilities of the logic analyzers. The key specification are –
* Channel count: This specifies the number of digital signals that the device can analyze.
* Channel bandwidth: The speed of measurement of logic families is dependent on this.
* Threshold selections: The compatibility with specific logic families is governed by this.
* Maximum clock rate: The time resolution of the measurement is fixed by this.
* Acquisition record length: The duration of the analysis is controlled by this specification.
* Trigger modes: The target digital events are isolated by this.
* Probe type: How easily the logic analyzer and the integrity of the signal connections can be connected are determined by this.
* Measurement tools: The acquired data is interpreted with the help of automated measurements and cursors provided.
Main Difference Between Logic Analyzer and Oscilloscope
An oscilloscope is used to measure the aspects of a signal that are analog. The voltage, and how the voltage changes over time can be measured by an oscilloscope.
However, if you care about the digital aspect of a signal, you use a logic analyzer. With the help of a logic analyzer, you will be able to find out whether the signal represents a zero or a one over time.
Another difference between logic analyzer and oscilloscope lies in the way they record data. The recording in an oscilloscope is triggered by a certain feature. Once triggered it captures a brief recording of what happened during that time. This is ideal for repetitive signals. However, digital signals change too quickly for human eyes to follow. A logic analyzer records the signal so that you can inspect it in your own time.
Advantages of Logic Analyzer
The main advantages of logic analyzer are –
* A logic analyzer allows you to simultaneously measure multiple signals. It will then show you their relative timings too.
* Logic analyzers are able to capture high-speed signals which may not be captured by other devices.
* It displays the captured data in binary, ASCII, decimal, or hexadecimal.
* It can be set to trigger on specific patterns or events. It can be triggered by a pulse width, falling or rising edge, or a serial protocol. This will help you focus on the issue by isolating the relevant signal.
In Conclusion
Logic analyzers are sophisticated machines and require competent personnel for proper usage. If used properly by embedded design companies, logical analyzers can help record and decode signals that might otherwise be missed by other devices. Moreover, logical analyzers are the best devices to record and analyze the digital aspects of signals. This is why most firms hire embedded firmware test engineers to help operate logic analyzers to their fullest potential.