You are on page 1of 53

MATLAB Inline Processing in Oscilloscope

Three Possible Communication Configurations


Configuration 1: Remote Control Scope From Computer

Oscilloscope
GPIB TCP/IP

Remote Computer

Computational results reside in MATLAB software & remote PC No integration between MATLAB and scope Synergy between MATLAB and scope unrealized

Three Possible Communication Configurations


Configuration 2: MATLAB Software Installed on Scope

Oscilloscope
Scope Software
Driver

MATLAB

Install MATLAB into the oscilloscope, running on MS Windows OS Not true integration Scope application and MATLAB running separately MATLAB data resides in MATLAB, instrument data resides in the instrument application Like configuration 1 (remote control), except theres no physical cables

Three Possible Communication Configurations


Configuration 3: MATLAB Software Integrated Within Scope Application

Oscilloscope
Scope Software

INLINE PROCESSING

MATLAB

MATLAB embeds into the oscilloscope architecture, share native capabilities with scope application MATLAB can access the scope memory directly and provides its capabilities not just on the scope platform, but INSIDE of the scope application.

Measuring Signal Parameters

Making Customized Measurements on the Signal

Customized measurements can be created in MATLAB and run from within the scope

Fully-Integrated Customized Measurement

Real-time display of MATLAB measurement (including statistics)

You can add your own customized measurement or math function

Application Example:
Ratio of signal peaks

Application 1: Harmonic Ratio Measurement

Signal harmonics
Measure ratio of 1st and 2nd harmonics Identify harmonic peaks above threshold voltage

Harmonic Ratio Measurement

Harmonic Ratio Measurement

Enter your MATLAB code here

WformIn1 WformIn2

Display Peaks in MATLAB

Application Example:
Damped Sine Measurements

Application 2: Damped Sine Measurements Damped Sinusoidal Measurements

Damped Sine
Peak decay ratio Measure the half-life of the damped sine

Damped Sine Measurements

Real-Time Modification of Custom Measurement

On-scope editor allows real-time modification of script algorithms

Creating Customized Math Functions

Creating Customized Functions


Signal waveform (y)

Function: Derivative of Signal waveform (dy/dx)

Application Example:
Customizing Digital Filters

Butterworth Low-Pass Filter

C1 Swept Sine F1

Filter is implemented with only 5 lines of MATLAB code

Notch (Band-Stop) Filter

Swept Sine

Notch Filtered Swept Sine

Automatic Leveling Filter

Filter removes slow mean variations by repositioning waveform data

AM Demodulation

Demodulate QPSK (QAM4) signal


Acquire the RF signal; high sample rate, long memory and excellent signal integrity
Real-time visualization of data in the baseband

Real-time constellation plot

The MATLAB Editor integrated inside the oscilloscope, direct access to all MATLAB DSP libraries

26

Application Example:
Inverse FFT & Windowing

Inverse FFT

Original signal

FFT (Real)

FFT (Imaginary) Inverse FFT

MATLAB Code WformOut = ifft(WformIn1 + j*WformIn2);

User-designed FFT Windowing Input signal

Custom window applied to data

FFT is now performed on custom window

Any FFT windowing algorithm can be used with FFT

Application Example:
Decoding NRZ Bitstream

Decoding NRZ Data

Application Example:
MATLAB Signal Integrity

Challenges in high speed signal integrity

Interconnection between DUT and measurement device is non-ideal.

Fixtures are required for signal integrity testing to provide access to the DUT, but also impact the measurement

Eye closure, signal amplitude, slew rate distortions and jitter are introduced in lossy channel

2.51 Gb/s signal at far end of 24" blackplane

5.1 Gb/s signal at far end of 24" blackplane

9.75 Gb/s signal at far end of 24" blackplane


Serial data analysis tools cannot be used on this unequalized signal

Realtime Signal Equalization

Acquired Waveform

Realtime Equalizer with MATLAB Math

Equalized Waveform

Eye Pattern on MATLAB Equalized Waveform

Acquired Waveform

Realtime Equalizer

Equalized Waveform

Application Example:
Graphical Programming with MATLAB (WebEdit)

WebEdit
Build Measurement Parameters or Math functions from basic building blocks and MATLAB operator

40

Processing Web Building parameters or math functions with MATLAB operators

C1
C2

C1-C2
-(C1-C2)

C1

C2

F1=C1-C2 F2= - (C1-C2)

Application Example:
Custom MATLAB GUI

Custom Graphical User Interfaces

Create customized graphical user interface using MATLAB Automate script execution, data acquisition and processing

Application Example:
MATLAB and Simulink

Simulink Blocksets Can Be Used for Real-Time Simulation

Workflow Model for Incorporating A New Algorithm


Traditional Model:
Time Scale: 6 - 9 months Requires a new feature; contacts local representative with request Contacts applications

End User Sales Engr

Already moved on to a different project, no longer needs measurement Delivered to end user

Inline Processing Model:


Time Scale: Immediate

End User
Incorporates new inline measurement today, and can begin to use it immediately Proprietary measurements can remain classified and do not need to be shared with scope vendor or the outside world

Notifies local rep

Collects data, logs report, contacts product manager

Appl Engr Prod Mngr Engr Mngr Dsn Engr


Six months later, implements inline measurement into firmware Releases firmware with feature included

Evaluates request, prioritizes projects Assigns resources, places project in queue

MATLAB Resources

How do I get started?


Visit the Teledyne LeCroy booth There are new getting started guides available that show
you how to use MATLAB with your particular instrument in under 15 minutes.

Two MATLAB guides available for LeCroy oscilloscopes Using MATLAB remotely with TCP/IP or GPIB Using MATLAB inline with Teledyne LeCroy
Oscilloscopes

How do I get started?


Visit: www.teledynelecroy.com/MATLAB

Get sample MATLAB scripts, programming guides and app notes

LeCroy MATLAB Inline Processing allows...

Custom Functions

Arbitrary Waveforms

Unique Views

Dynamic Measurements

User-defined Interfaces

Thank you