An 905
An 905
APPLICATION NOTE
One Technology Way • P.O. Box 9106 • Norwood, MA 02062-9106, U.S.A. • Tel: 781.329.4700 • Fax: 781.461.3113 • www.analog.com
06683-001
Rev. 0 | Page 1 of 40
AN-905
TABLE OF CONTENTS
Introduction ...................................................................................... 1 Bit Processor ............................................................................... 24
Product Highlights ........................................................................... 1 Bit Shifter..................................................................................... 24
Installation of VisualAnalog............................................................ 3 Comment..................................................................................... 24
Instruction Notes.......................................................................... 3 Complex Waveform Merger ..................................................... 25
Quick Start for ADC Evaluation..................................................... 4 Complex Waveform Splitter...................................................... 25
VisualAnalog Software..................................................................... 6 Data Router ................................................................................. 25
Starting VisualAnalog.................................................................. 6 FFT ............................................................................................... 25
Using the Start-Up Form ............................................................. 6 FFT Analysis ............................................................................... 25
Opening a Blank Canvas ............................................................. 7 Hilbert Transform ...................................................................... 27
Using the Main Form................................................................... 7 Input Formatter .......................................................................... 27
Setting Canvas Properties............................................................ 9 Inverse FFT ................................................................................. 27
Placing Components .................................................................... 9 Inverse Sinc ................................................................................. 27
Connecting Components .......................................................... 10 I vs. Q ........................................................................................... 27
Adjusting Component Parameters........................................... 12 Logic Analysis............................................................................. 27
Updating Results......................................................................... 13 Mixer............................................................................................ 28
Making Layout Changes ............................................................ 14 Output Formatter ....................................................................... 28
Using the Menu Bar ................................................................... 14 Peak Hold .................................................................................... 28
Using the Tool Bar...................................................................... 15 Power/Phase................................................................................ 28
Using the Options Form............................................................ 16 Resampler .................................................................................... 29
Data Types Overview ..................................................................... 17 Resolution Formatter ................................................................. 29
Real Waveform Data .................................................................. 17 Scalar Math ................................................................................. 29
Complex Waveform Data .......................................................... 17 Stop............................................................................................... 29
Real FFT Data ............................................................................. 17 Subset ........................................................................................... 29
Complex FFT Data..................................................................... 17 Waveform Analysis .................................................................... 29
Analysis Data .............................................................................. 17 Window Routine ........................................................................ 29
Value Collection ......................................................................... 17 Components Results ...................................................................... 30
Numeric Value ............................................................................ 17 Data Grid..................................................................................... 30
Tone List ...................................................................................... 17 Graph ........................................................................................... 30
Components Overview .................................................................. 18 Pattern Saver ............................................................................... 32
Board Interfaces.......................................................................... 18 Components Sources ..................................................................... 33
ADC Data Capture..................................................................... 19 Filter Mask................................................................................... 33
DAC Pattern Generator Interface............................................. 20 Gaussian Noise ........................................................................... 33
DAC Pattern Generator Control Form.................................... 20 Pattern Loader ............................................................................ 33
Pattern Limitations..................................................................... 21 Tone Generator........................................................................... 34
FIFO4.x Interface........................................................................ 21 VisualAnalog Example Canvases ................................................. 35
Components Models ...................................................................... 23 ADC with ADC Data Capture Board...................................... 35
ADC Model ................................................................................. 23 ADIsimADC Model File ........................................................... 35
Components Processes .................................................................. 24 Loading the DPG with a Simple Vector .................................. 38
Array Math .................................................................................. 24 Loading the DPG with a Complex Vector .............................. 39
Average......................................................................................... 24
Rev. 0 | Page 2 of 40
AN-905
INSTALLATION OF VisualAnalog
To install VisualAnalog, you must have the following: To determine if the .NET Framework 1.1 is already installed
on your computer, click Start, select Control Panel, and click
• Administrator privileges
Add or Remove Programs. When the window appears, scroll
• Microsoft® .NET Framework Version 1.1
through the list of applications. If you see Microsoft .NET
• The latest .NET Framework 1.1 service packs
Framework 1.1 listed, you have the correct version and you do
The VisualAnalog installation package installs all of the items not need to install it.
needed to use the VisualAnalog software along with the neces 1. To ensure proper installation of all the components you
sary drivers for the ADC and DAC hardware. must have administrator privileges.
INSTRUCTION NOTES 2. Disconnect all ADC data capture boards and/or the DPG
from the computer.
• Disconnect all Analog Devices, Inc. ADC data capture
3. Install the .NET Framework 1.1 and the latest .NET
boards and/or the DPG from the computer before install
Service Pack.
ing the software. Be sure to finish the installation of the
4. Run the VisualAnalog installation executable. Follow the
software before attempting to connect any related hardware
on-screen instructions to install all of the necessary files. If
to ensure the proper installation and registration of the
interfacing with the DPG, be sure to launch the Hardware
device drivers.
Wizard at the end of the installation process to set up the
• Note that you need administrator privileges when install appropriate DPG device drivers.
ing this software package and when connecting the ADC 5. Power up and connect the DPG and/or any ADC data
and DAC hardware to the computer for the first time. If capture board to the computer to finish the driver instal
using the Hardware Wizard, follow through the instruc lation process. If using the DPG, be sure to connect the
tions to install the software automatically. This allows DPG before the ADC data capture board. If not using the
Windows® to complete the driver installation process. DPG, you can plug in the ADC data capture board at any
VisualAnalog is a Microsoft .NET application. You must time after you install the software.
have .NET Framework Version 1.1 on your machine to
run VisualAnalog. The preferred way to obtain the .NET
Framework is through Windows Update. Be sure to get the
latest service packs available as well.
Rev. 0 | Page 3 of 40
AN-905
06683-003
instructions to install the software automatically. This allows
Windows to complete the driver installation process. Figure 3. New Canvas Form
06683-006
VISUALANALOG Software section.
4. The start-up form now appears. If an ADC was connected Figure 4. FPGA Configuration Dialog
using the preceding steps, VisualAnalog attempts to detect 7. The main form appears in collapsed mode with your canvas
it and selects the canvas template that supports the ADC open and selected. Click Update to run the canvas.
on the start-up form. Note that the ADC must support
06683-007
Rev. 0 | Page 4 of 40
AN-905
To view the time domain representation of the captured data,
click Toggle Additional Plot on the graph form. See the
Components Overview section for more information.
06683-008
Figure 7. Toggle Additional Plot Button
06683-004
Figure 6. Main Form and Graph Form
Rev. 0 | Page 5 of 40
AN-905
VisualAnalog SOFTWARE
06683-009
Figure 8. VisualAnalog Start-Up Form
Figure 9. Selecting a Canvas Template If the software does not detect the ADC board at this point,
VisualAnalog can detect a connected ADC board if that ADC manually select the correct category and template.
supports a programmable SPI interface. In addition, an ADC
data capture board that supports SPI must be used. For this
Rev. 0 | Page 6 of 40
AN-905
When choosing a template that represents the detected ADC
board, with an interface with to HSC-ADC-EVALC data
capture board, a dialog box may appear that asks for permission
to configure the on-board FPGA. If the HSC-ADC-EVALC
FPGA did not configure on power-up for the particular ADC
06683-119
you are evaluating, click Yes. Click No to bypass the FPGA
configuration. Figure 12. Opening a Blank Canvas
If you check Do not show this message again, the software
USING THE MAIN FORM
automatically performs the last selected action in the future,
when choosing an applicable canvas template. If you want to The VisualAnalog main form maintains all currently open
change this option, access these settings from the Options canvases in an MDI environment. The left side of the screen
menu in VisualAnalog. shows available Components (see Figure 14). This form docks
to the left by default, but can be moved and docked to any of
the corners of the VisualAnalog program. In addition, the
Components form can be floated and moved anywhere on
screen, even outside the VisualAnalog window.
Canvas Buttons
As you open or create canvases, buttons are created across
the tool bar, each button represent a canvas. These are canvas
buttons. You can use these canvas buttons to select or clear a
06683-117
Rev. 0 | Page 7 of 40
AN-905
06683-011
Figure 14. VisualAnalog Main Form
Rev. 0 | Page 8 of 40
AN-905
SETTING CANVAS PROPERTIES Collapse Window when Opened allows you to collapse the
VisualAnalog allows you to set properties that describe the main window when this canvas is opened in the future. It
canvas and the way it behaves. To access the canvas properties, permits opening the canvas in a more formal mode without
click Canvas > (Display Name) Properties… if a blank canvas showing the canvas itself.
is opened, (Display Name) appears as Untitled. Lock Canvas allows you to lock the canvas from further layout
changes. You can still change component settings when this is
set, but you cannot alter the physical layout and connectivity of
your canvas.
PLACING COMPONENTS
To place a component on the canvas, either double click the
item in the Components tree or drag the item and drop it on
the canvas. Dragging the item gives more control over
06683-013
component placement.
Figure 15. Canvas Properties Menu
06683-017
Figure 16. Canvas Properties Form
The Display Name refers to the name that appears on the Figure 19. Placing a Component
canvas button. This is the title for the canvas. Sample placements of components are shown in Figure 19
in the following order: Tone Generator, ADC Model, Input
06683-015
differences.
Figure 18. Description
Rev. 0 | Page 9 of 40
AN-905
1 2 3 4
5 6 7
06683-018
Figure 20. Sample Component Placement
CONNECTING COMPONENTS If the wire is not connected, it appears red. As soon as you apply
To connect two components together, place a wire from the the connection, the color changes.
output node of one component to the input node of another, Figure 21 illustrates the process of connecting the first output node
or vice versa. To place a new wire, use one of the following of the Tone Generator to the first input node of the ADC Model.
techniques: For this example, place eight more wires. Figure 22 shows the
• Click the node, drag the new wire to another component, canvas after making the remainder of these connections. Your
and click again to connect. canvas should look similar to this Figure 22.
• Drag the new wire to another component.
Rev. 0 | Page 10 of 40
AN-905
06683-019
Figure 21. Connecting Components
Rev. 0 | Page 11 of 40
AN-905
06683-020
Figure 22. Sample Connections
06683-021
most cases, a wire can transfer one of several different data types.
See the Data Types Overview section for more information.
Figure 23. Tone Generator Settings
ADJUSTING COMPONENT PARAMETERS 2. In ADC Model, click the Settings… button and click Open
Some components have adjustable parameters. The steps that to browse for and select the AD6645_105.adc model file.
follow show how to generate a simple waveform as input for an This file is located in the Models\ADC subdirectory in the
ADC model and display FFT and time domain results. VisualAnalog path. When the model opens, the file name
1. In Tone Generator, set the Sample Frequency (MHz) to appears in the Model File text box, along with information
105. Also, change the Samples text to 16384, by using the about that model in the Properties grid (see Figure 24).
drop-down arrow or entering the text manually. Update the Click OK.
Use Composite Amplitude (dB) to −1 (because you are
evaluating ADC performance).
Rev. 0 | Page 12 of 40
AN-905
06683-024
Figure 26. Resizing the Graph
Next, resize the Analysis Results panel on the left side of the
Graph component by positioning the mouse cursor over the
vertical divider bar and drag to a new location (see Figure 27).
06683-022
Figure 24. ADC Model and Settings Form
06683-025
3. In Input Formatter (see Figure 25 through Figure 27),
click the Settings….button Then change the Number
Figure 27. Resizing Analysis Results
Format to two’s complement. Next, change both the
Resolution and Alignment to 14. Click OK. Notice that there are two wires connected to the graph. This is
because we have routed ADC samples to the graph as well as the
FFT results. If you want to see the time domain representation
of the data, you can click the Toggle Additional Plot button to
view the second plot.
06683-026
Figure 28. Toggle Additional Plot
UPDATING RESULTS
After making all required adjustments, you are ready to update
the results of the canvas. There are three ways to update the
canvas
• Press the Shortcut Key F5 or Ctrl + F5.
06683-023
Rev. 0 | Page 13 of 40
AN-905
06683-027
Figure 29. Updated Canvas
MAKING LAYOUT CHANGES Some components, such as the graph, are resizable. Just click,
Most layout changes require that you select an object first. To hold, and drag on the resize handle at the bottom of the
select a component or wire, click the mouse somewhere on the component.
object. If you are trying to select a component, be sure to click You can cut, copy, or paste components and wires to new
somewhere on the body (the header at the top always works). locations or other Canvas windows. To cut or copy, select the
Hold down the Ctrl key to select or deselect more than one desired components. If any selected components are connected,
object. the software copies the connecting wire as well. The appropriate
Alternatively, you can draw a box on the canvas to select objects. Edit commands in the menu or use the standard Windows
Just press the mouse somewhere on the blank canvas, drag, and shortcut keys. To execute the cut, copy, or paste commands, use
release around the objects you wish to select. Ctrl + X, Ctrl + C, or Ctrl + V.
While objects are in a selected state, they can be deleted from You can undo (or redo) parameter changes and layout changes.
the canvas. Click Edit, and select Delete, or just press the VisualAnalog maintains an undo stack and a redo stack of up to
Delete key to remove the selected items. five layers of user actions.
While components are in a selected state, they can be moved to USING THE MENU BAR
a new location. Press the left mouse button to click, hold, and The menu bar provides access to a variety of file and execution
drag one of the selected components to an empty location. Any options using a standard menu format as shown in Figure 30.
connected wires automatically adjust accordingly.
Rev. 0 | Page 14 of 40
AN-905
Tools
External Tools—Displays a form with which the user can
select external programs that VisualAnalog can open. Adding
06683-028
an executable item with this form places a new menu item
underneath the Tools menu.
Figure 30. Menu Bar
Options—Opens the VisualAnalog options form.
File
Window
New—Opens a blank canvas used for building a new
component diagram. Tile Horizontally—Tiles the canvases in a horizontal direction.
Open—Loads an existing canvas using a standard file browser. Tile Vertically—Tiles the canvases in a vertical direction.
Close—Shuts down the current canvas. If you have changed the Cascade—Cascades the canvases.
canvas since the last save, the program asks if you wish to save Canvas Selection—Provides a list of open canvases. From this
before closing. list, the user can select a canvas for editing.
Save—Saves the current canvas under the existing canvas file Help
name. If the canvas does not already have a name, the software User Manual—Opens this user manual with the associated PDF
prompts for one before the save. viewer.
Save As—Saves the current template under a new name. About VisualAnalog—Displays the VisualAnalog version
Recent Files—Displays a list of the last five canvas files opened number and other information.
or saved.
USING THE TOOL BAR
Exit—Exits VisualAnalog.
The tool bar provides quick access to common features that are
Edit available on the menu bar.
Undo—Reverses up to the last five actions, including deletion, New Canvas—Opens a blank canvas used for building a new
parameter changes, component placement, and connectivity. component diagram.
Redo—Performs the last undone action again.
06683-029
Cut—Copies the selected objects to the clipboard and then
deletes them from the canvas. Figure 31. New Canvas Button
Copy—Copies the selected objects to the clipboard. File Open—Loads an existing canvas using a standard file
browser.
Paste—Places the items from the clipboard on the canvas. 06683-030
View File Save—Saves the current canvas under the existing canvas
file name. If the canvas does not already have a name, the soft-
Components—Displays the Components Tool form if it is not
ware prompts for one before the save.
visible.
06683-031
Canvas
Update—Runs the currently selected canvases by executing the Figure 33. File Save Button
component flow on each canvas.
Update—Runs the currently selected canvases, by executing the
Continuous Update—Causes the selected canvases to run component flow on each canvas.
continuously. When started, the Continuous Update menu
06683-032
Rev. 0 | Page 15 of 40
AN-905
Continuous Update–Runs the selected canvases continuously.
When started, the Continuous Update menu item changes to
Stop Update. Selecting this stops all processing. You can also
automatically stop continuous update by using the Stop
Component. See information on the Stop Component for
more details.
06683-033
Figure 35. Continuous Update and Stop Update Icons
06683-034
USING THE OPTIONS FORM
The options form contains settings that affect the behavior of Figure 36. Options Form
VisualAnalog. You can access the VisualAnalog options form ADC Devices
by clicking the menu Tools and selecting Options.
ADC Devices contains options that affect the behavior of
VisualAnalog when interfacing with ADC data capture boards.
HSC-ADC-EVALC FPGA Configuration allows you to
adjust automatic FPGA configuration settings for the HSC
ADC-EVALC by selecting one of three options. These options
only have an effect when choosing a template from the startup
form that corresponds to a detected ADC device. For more
information, see the Using the Start-Up Form section.
Rev. 0 | Page 16 of 40
AN-905
Rev. 0 | Page 17 of 40
AN-905
COMPONENTS OVERVIEW
VisualAnalog provides a variety of components used to
06683-035
accomplish tasks. Though some of these have a fixed mode
of operation, others have a range of adjustable parameters that Figure 37. Settings Button
allow for customizable operation. Some of the components
require you to access a settings form to adjust parameters. To
access these forms, click the Settings button on the component.
BOARD INTERFACES
The following sections are a basic overview of the functionality of the components.
06683-037
06683-036
Figure 38. DAC Pattern Generator Figure 39. HSC-ADC-EVALC (ADC Data Capture Board)
Rev. 0 | Page 18 of 40
AN-905
ADC DATA CAPTURE Output Data—Determines which outputs the component
The ADC Data Capture component is responsible for passes back to the canvas. You can choose multiple outputs that
acquiring data from high speed ADC data capture boards. provide data from multiple core ADC outputs or pass the same
This component interfaces with a wide variety of ADCs, output to multiple processes on the canvas much like the Data
including those with specialty outputs such as power and Router component. Modify the default options for Output
other on-chip measurements. Data with the Add, Remove or Clear buttons. To add a new
selection, simply choose from the available selections in the
An Input Formatter must always follow the ADC Data Select Data drop-down box and click Add. Remove deletes an
Capture component if you want to perform processing within existing Output Data entry. Clear removes all outputs and
the canvas. The only exception to this rule is Logic Analysis. allows a completely new set of outputs to be added.
The Input Formatter takes the resolution and alignment of the
ADC into account when moving data into the environment of In Output Data, set the length to the sample size of the capture
VisualAnalog. For more information on setting up the Input board FIFO or the desired sample size, whichever is less.
Formatter, see the Input Formatter section. Normally, the HSC-ADC-EVALA and HSC-ADC-EVALB
boards have 32-KB devices. It is possible to reconfigure them
Most of the Analog Devices ADC evaluation boards are MSB- with compatible 256-KB devices. The HSC-ADC-EVALC board
justified to 16 bits and, therefore, the Alignment box within the can support various sample sizes, depending on the current
Input Formatter should be set to 16 bits. The resolution on the FPGA configuration.
Input Formatter should be set to the native resolution of the
ADC. Number Format should be set in accordance with the Use the Board Settings tab to set board-related parameters.
data format of the ADC.
Access ADC Data Capture Settings by clicking Settings.
Use the General tab to set parameters about the device you are
using and the data you want to capture.
06683-040
Figure 41. ADC Data Capture Settings Form, Board Settings Tab
FIFO Fill allows you to adjust parameters that are used while
filling the on-board FIFOs with ADC data. Normally, the soft
ware sends the fill command to the FIFOs and waits a specified
amount of time before reading the data. You can set the delay
time by inserting the desired amount in the Fill Delay (ms)
option.
When you have a slow clock rate, sometimes it is useful to
06683-039
poll the FIFOs for a full flag, which indicates when the FIFOs
Figure 40. ADC Data Capture and Settings Form, General Tab are full. Select the Poll Full Flag check box and then set the
Maximum Poll Time so the software stops polling after a
Capture—Shows the USB devices available. Use this drop-down
certain amount of time if it never receives a full flag. Note that
box to select the board you want to use. Boards appear in the
this setting is not recommended for the HSC-ADC-EVALC
order in which they were connected. If no devices are found,
because the FPGA configuration may not use a full flag.
check the cables and power supplies and click Refresh.
FPGA allows you to adjust FPGA settings specifically for the
ADC—Displays special configurations available for the ADC
HSC-ADC-EVALC board. You can program the on-board
that you are using. Select one or use the Default setting.
Xilinx® FPGA through the USB interface by entering a firmware
Clock Frequency (MHz) —Should be set to the sample rate of file into the Program File text box (click Browse to select one
the device. on disk) and then click Program. You may from time to time
receive an update to FPGA firmware for use with a particular
ADC; manually program it using this method. FPGA firmware
files have a .bin extension.
Rev. 0 | Page 19 of 40
AN-905
DAC PATTERN GENERATOR INTERFACE Table 1. DPG Operating Modes
The DAC Pattern Generator Interface provides access to the Port Mode
physical DPG board via a standard USB interface. This tool P1: LVDS Serialized Clock aligned
handles all of the hardware interfacing and data formatting Clock centered
issues that are required to move data from a software data set P2: LVDS Direct SDR
(vector) to the hardware. Additional information on the DPG is DDR: centered
available at www.analog.com. Note that only one DPG should DDR: coincident
be connected at any given time. When using the DPG along P3: LVCMOS Single port
with other USB devices in VisualAnalog, be sure to connect the Dual port
DPG first.
Data Playback controls playback settings and start/stop
playback and becomes active when the control is fully
06683-041 configured and data is loaded.
06683-043
06683-042
Figure 43. Setup Tab Serialized LVDS Tuning holds the controls related to tuning
for the serialized LVDS port.
Configuration allows you to set the DPG in the desired
operating mode.
Rev. 0 | Page 20 of 40
AN-905
Table 3. Serialized LVDS Tuning Controls Tx Config
The Tx Config tab holds controls for transmission features.
Control Description
Retune Manual trigger to retune the clock and data bits on
Button the serialized LVDS port. The alignment type is based
on the selected mode (aligned or centered). Tuning
is automatically performed when playback is started.
LVCMOS Tuning holds the controls related to tuning for the
LVCMOS port.
06683-045
variation of approximately 10 ns.
Load A manual trigger to load the specified delay value Figure 46. Tx Config Tab
Button for the clock and data bits on the LVCMOS port.
Idle Pattern specifies the transmit pattern when there is no
Debug
playback in progress. A four-sample pattern can be generated.
The Debug tab allows you to verify functionality of the DPG. The four-sample values in the pattern are played sequentially,
then looped and played again until a vector file playback or the
feature is disabled.
FIFO4.x INTERFACE
The FIFO4.x interface component handles all interfacing
between the ADC capture board and the software package,
simply moving data from the hardware to the software data set
(vector). This interface exists for compatibility. The preferred
ADC interface is the ADC data capture component.
Additional information is available at www.analog.com/fifo.
Rev. 0 | Page 21 of 40
AN-905
In addition, you can select the channels to enable which devices
are present. The interface supports both dual- and single-
channel devices. Access the output from the ADC data at the
output nodes on the right side of the component. The A and B
channels are output separately, with the A data on the top node
and B data on the bottom node.
An Input Formatter must always follow the ADC Data
Capture component if you want to perform processing within
the canvas. The only exception to this rule is Logic Analysis.
The Input Formatter takes the resolution and alignment of the
ADC into account when moving data into the environment of
VisualAnalog. For more information on setting up the Input
06683-046
Formatter, see the Input Formatter section.
Rev. 0 | Page 22 of 40
AN-905
COMPONENTS MODELS
In many instances, it may be desirable to use behavioral models The model interface allows selection of the desired model,
instead of real devices, such as when test hardware is not avail- setting of the analog input range (the actual analog frequency
able or if a device is in preselection phase. No matter the case, is detected or may be overridden by selecting the Nyquist zone),
VisualAnalog supports converter models in addition to physical and setting any external clock jitter—the default is that used
hardware, enabling a virtual test bench. Currently only ADC during characterization by Analog Devices. Internal device jitter
models are available using the Analog Devices ADIsimADC™ is automatically included and cannot be changed. More infor
platform. This provides a seamless integration of models into mation about ADIsimADC is available at
the evaluation platform. It is also possible to include both www.analog.com/adisimadc.
models and real devices at the same time to compare predicted When using the ADC Model component, the two input termi
vs. actual performance. nals on the left represent the input waveform on the top and a
ADC MODEL tone list on the bottom. When connecting to a VisualAnalog
The ADC Model component interfaces with ADIsimADC Tone Generator (see the Tone Generator section). the input
to simulate ADC performance. The model interface provides terminals of the ADIsimADC™ model map directly to the
translation from the analog domain to the digital domain. To output terminals of the Tone Generator. The ADC Model
access ADC Model Settings click Settings. component uses the tone list input to set the spectral center
frequency. When connecting the input to other components,
you can leave the lower input disconnected, and enter the
spectral center manually.
An Input Formatter must always follow the ADC Model
Component if you want to pedrform processing within the
canvas. The only exception to this rule is Logic Analysis. The
Input Formatter takes the resolution of the ADC into account
when moving data into the environment of VisualAnalog. For
more information on setting up the Input Formatter, see the
Input Formatter section.
All Analog Devices models are LSB-justified and, therefore,
the Alignment check box within the Input Formatter should
be set to the native resolution of the model. The resolution on
the Input Formatter should be set to the native resolution of
the model as well. Note that the alignment setting is different
when using the Input Formatter with the ADC Data Capture
component. The number format should be set in accordance
06683-048
Rev. 0 | Page 23 of 40
AN-905
COMPONENTS PROCESSES
These functional blocks provide basic numeric processing asso Other components can use the terminal value as an indicator to
ciated with converter testing. These blocks can be cascaded to perform processing only on a nonzero value. Consult the Graph
create more complex evaluation processes. component for more information on how to use it with this
terminal value.
ARRAY MATH
The Array Math component performs array arithmetic on two BIT PROCESSOR
or more inputs. Arrays may be multiplied or added and must be Bit Processor either flips (LSB to MSB or vice versa) or inverts
of the same size. the data set. When using VisualAnalog processed data, the
Output Formatter should precede this component to format
the data in a particular numeric format and resolution. In
06683-049
addition to the process selection, the Bit Resolution should
be equal to the desired precision.
Figure 49. Array Math
AVERAGE
The Average component computes the spectral average from
the provided data. The indicator on the component shows how
many averages have occurred out of the total number of averages.
06683-052
To set the total number of averages, click the Settings button.
To reset the average series, click the Reset button. Figure 51. Bit Processor
BIT SHIFTER
The Bit Shifter component is used to shift the data set bitwise
up or down by the specified number of positions. This has the
effect of multiplying or dividing by a power of 2. The Bit
Resolution and Shift amount must also be set as desired. When
using VisualAnalog processed data, the Output Formatter
should precede this component to format the data in a
particular numeric format and resolution.
06683-051
Rev. 0 | Page 24 of 40
AN-905
COMPLEX WAVEFORM MERGER
The Complex Waveform Merger component merges two real
waveforms into a complex interleaved waveform. The real input
is on the top and the quadrature input is on the bottom.
06683-055
Figure 54. Complex Waveform Merger
06683-061
Figure 55. Complex Waveform Splitter
Figure 58. FFT Analysis Settings Form, General Tab
DATA ROUTER To access FFT Analysis settings click Settings.
The Data Router component routes a single input to multiple Use the General tab to revert to a preset FFT analysis type.
destinations. This works for all data types. When the two output Currently the preset analysis list consists of Single-Tone
terminals are used, the component adds new outputs auto Analysis, Two-Tone Analysis, and Basic DAC Analysis.
matically. You can resize the component to provide room for
more outputs. To use or initialize to a preset analysis, select the type in the
drop-down box and click Initialize. Exit the form and keep
the default settings or make changes that suit your needs.
In the Report frame, you can enable or disable commonly used
06683-057
FFT ANALYSIS
The FFT Analysis component performs a numerical analysis on
FFT input data to the user’s specification, and outputs analysis
data. By default, the analysis includes normal analysis for ADCs
06683-062
Rev. 0 | Page 25 of 40
AN-905
The grid in the User-Defined tab lists computations that the Single-Side Band–determines how many bins are included in
FFT Analysis component performs on the input data. Note that the given calculation. The text form can be a constant or a
the routine performs these computations in order, from top to simple expression. The units can be bins or megahertz,
bottom. depending on the next column setting.
Name—Sets the display name for this calculation. This display Use Power As—There are six selectable actions on the
name appears wherever the software reports the result to the integrations defined for the analysis.
user, such as in a Graph component, Data Grid, or output to
• Reference—Identifies the fundamental energy. If more than
a file. This can be any combination of letters, numbers, and
one item is a reference, the FFT analysis combines the
symbols. If the display name is empty, the software does not
energies. This can be useful when performing tests where
show the result.
more than one signal may contribute to the reference
Symbol—The character or characters that show up on the FFT power.
graph display. This can be a single character or a string appro • Harmonic—Identifies a component whose power is meas
priate for the application. ured in reference to the Reference. A signal identified as a
Locate—Determines how the spectral component is located. harmonic is included in the SINAD measurement as well
Three methods are available for use and depend largely on the as in the THD.
application. • Spur, Exclude—Identifies spectral content that should not
be included as noise in overall calculations, but reported as
• Frequency—Finds the spectral component by exact fre
a spur. This is useful if a spurious signal from an external
quency in megahertz. It is important to ensure that the
source is otherwise disrupting performance. Using this
sample rate is properly set or the computed frequency
option removes the effect of the spurious signal on overall
may be in error. The analog frequency, if greater than the
performance.
Nyquist frequency, is automatically aliased to ensure that it
• Spur, Include—Identifies spectral content that should be
references the proper bin in the display.
included as noise in overall calculations, but can otherwise
• Max Power—Finds the spectral component at the maxi
be of limited interest as a spur. This includes spurs such as
mum bin location in the FFT spectrum. This is most useful
worst other.
for full-scale, single-tone testing where the frequency
• Noise—Identifies spectral content that should be a band
changes often. If the signal is a modulated waveform,
of noise in the spectrum. This setting is useful for narrow
this method is less reliable than Frequency.
band noise calculations.
• Next Max Power—Finds the next largest signal not already
• Remove—Identifies spectral content to remove from further
selected earlier in the list. This is useful for finding miscel
calculations. This setting also removes the frequency band
laneous spurious tones, such as a worst other spur in single-
from general FFT calculations.
tone analysis. When using this option, be sure to place this
item after all other items in the spectrum are to be avoided • Custom—Identifies a custom power calculation. This
in the next maximum computation. setting should be used when a power calculation is needed
that cannot be represented by the previous calculation
Freq (MHz)—The analysis uses the Freq (MHz) column when methods.
the Locate method is set to Frequency. This text may
be a constant or a simple expression using any combination Power—The analysis uses the Power column when the Use
of constants or previously defined variables. The supported Power As method is set to the Custom option. The text format
operations are addition, subtraction, division, multiplication, is similar to the Freq (MHz) column in that it can be a constant
and exponential. There is one system-defined constant, fS, or a simple expression. This column can also use previously
which represents the frequency sample rate. defined variables. In this column, a variable represents the
power of its corresponding line item.
Valid expressions include 2 * fund (assuming fund is previously
defined), 2 * f2 − f1 (assuming f1 and f2 are previously defined) Variable—Variable defines local variables used in the measure
and fS − fund (assuming fund has been previously defined). In ment. These represent the component on the corresponding
addition, simple constants such as 2.3 are also valid, as is f1 − line. Once defined, they are valid in all of the following
2.3. Parentheses are also acceptable, to force the order of calculations. If referencing the variable in the Freq (MHz)
operations, (2 * (f2 − f1)). or Single-Side Band column, the routine uses the frequency
portion of the calculation. If referencing the variable in the
The routine will ignore this column if the Locate method is not Power column, the routine uses the power portion of the
set to Frequency. calculation.
Note that you cannot use a variable in the list before you define
it. Therefore, place all defined variables before their use.
Rev. 0 | Page 26 of 40
AN-905
HILBERT TRANSFORM INVERSE SINC
Hilbert Transform performs a Hilbert transform on a real Inverse Sinc applies the inverse sinc to the time domain series.
waveform to compute the resulting complex waveform. The Both input and output are time domain series. This feature is
output is the complex waveform that consists of the real input useful to correct the magnitude roll-off vs. frequency caused when
waveform as I data, along with its Q data counterpart. digital data is converted back into the analog domain. This
function provides maximum flatness of the largest possible range.
06683-063
06683-067
Figure 60.Hilbert Transform
Figure 64. Inverse Sinc
INPUT FORMATTER
I vs. Q
Input Formatter takes data and converts it from an integer data
type to the normalized format accepted by most VisualAnalog The I vs. Q component formats complex time-domain input
processing blocks. To set the format, click Settings. data into a form that represents a constellation. This component
outputs analysis data that, when plotted, appears as Q data on
the y-axis and as I data on the x-axis.
06683-064
06683-068
Figure 61. Input Formatter
This component converts integer input data from Gray Code, Figure 65. I vs. Q
Unsigned Offset, Two’s Complement, and Signed into nor
malized signed data. The resolution and bit alignment should LOGIC ANALYSIS
match that of the input data. See the ADC Model, ADC Data Logic Analysis formats the data for display as a logic analysis.
Capture, FIFO4.X Interface, and Pattern Loader sections to Set the High Bit and Low Bit fields to represent the range of
determine how best to set these parameters. valid bits.
06683-065
INVERSE FFT
06683-130
Rev. 0 | Page 27 of 40
AN-905
MIXER
Mixer performs a complex frequency shift of the input wave
form and produces real or complex waveform output. For
complex input, the complex output option is required. The
translation frequency may be positive or negative.
06683-070
Figure 67. Mixer
06683-074
OUTPUT FORMATTER
Output Formatter converts normalized VisualAnalog data to Figure 69. Peak Hold Settings Form
integer formats used by the DPG and the pattern saver. The Peak Hold component has two outputs. The top output
Possible output formats include Gray Code, Unsigned Offset, is the running peak FFT data. The second output is a numeric
Two’s Complement, and Signed. Adjust the output bit value that indicates when the peak hold reaches its terminal
resolution and alignment as necessary. count by outputting a nonzero value.
A Stop component (see the Stop section) can use the terminal
value from the Peak Hold component to halt a continuous
update. In this case, when the Stop component receives a non
zero value and halts the canvas, the last update presents the final
peak hold.
Other components can use the terminal value as an indicator
to perform processing only on a nonzero value. See the Graph
section for more information on how to use the Graph compo
nent with this terminal value.
POWER/PHASE
Power/Phase converts data from an FFT into magnitude and
phase format. Click Power/Phase to open the options form,
allowing the formats to be set.
06683-072
PEAK HOLD
Peak Hold computes the peak data from the provided data. The
indicator on the component shows how many iterations have
occurred out of the total number of comparisons. To set the
total number of averages, click Settings. To reset the peak hold
series, click Reset.
The Peak Hold component is most efficient when running a
continuous update. A running peak hold occurs and the peak
hold continues until either the user stops the canvas or the
number of runs equals the terminal count. In the second case,
Peak Hold repeats another series of iterations unless a stop
block halts the canvas programmatically.
06683-076
Rev. 0 | Page 28 of 40
AN-905
RESAMPLER SUBSET
Resampler resamples the input waveform to a given output Subset extracts a portion of the data, based on a given starting
sample rate. Use this component for up or down sampling. point and length, for further processing. This is often useful if
only a portion of the data set contains valid information.
06683-077
Figure 71. Resampler
06683-081
RESOLUTION FORMATTER
Figure 75. Subset
Resolution Formatter rounds or truncates the input data to a
given bit resolution. There is an additional option for clipping WAVEFORM ANALYSIS
the data. Waveform Analysis performs analysis on input time-domain
waveform data and outputs analysis data. Maximum, minimum,
range, and average are all calculated.
06683-118
06683-078
06683-082
Figure 77. Window Routine
06683-079
STOP
The Stop component can halt operation when run in con
tinuous mode. Some components such as Average output an
indicator when the terminal count expires. Route this indicator
to the Stop component to halt continuous execution.
06683-080
Rev. 0 | Page 29 of 40
AN-905
COMPONENTS RESULTS
DATA GRID To zoom using the box drawing methods, position the cursor
Data Grid displays data in a tabular format. This works on all on the upper left of the desired region, drag to the lower right
data sets both in time and frequency domains. It also works of the region.
with most other data types. Graph Toolbar
Copy data from the Data Grid and paste it into other applica There are several tool buttons on the graph component to
tions such as Excel®. Highlight the data, copy the data to the extend the graph functionality.
clipboard, and paste into the new application. To select the • Float Form removes the user interface from the compo
entire grid, select the first item in the list and use Ctrl + Shift + nent, and places it on a floating form.
End to select all items. Then copy data to the clipboard. • Settings shows the Settings form.
• Show Analysis Results toggles the visible state of the results
panel on the left side of the component. This panel is
useful when looking at analysis results and plot data.
• Toggle Additional Plot toggles the visible state of a second
plot. This is useful when looking at more than one type of
data (for example, FFT and time data).
• Save Data As allows you to choose from the currently
plotted analysis data and save to a comma-separated values
(.csv) file.
• Append Results File(s) allows you to append analysis
results only to files selected in the Graph Settings. See
the Graph Settings section for more information.
•
06683-095
Rev. 0 | Page 30 of 40
AN-905
Save the floating form to an image file automatically by
selecting the Save form automatically on check box. You
can choose every update or only updates in which a non-zero
control value is supplied. In order to use this feature, specify a
file name in the text box.
Unless you want to overwrite previously saved files, make sure
to select Insert date/time in file name so that VisualAnalog
creates a new file for each save (see Figure 81).
Data Settings
06683-097
You can use the Data Settings tab to adjust settings that affect
the behavior of analysis data routed to the graph.
Figure 80. Graph Settings Form, General Tab
The Display portion of the General tab allows you to set the
text displayed across the title bar of the graph component. You
can also append the current date and/or time.
The Graph portion of the frame gives a refresh option for
the component. If you choose to refresh graph data on every
update, the plots refresh every time the canvas updates. If you
select Non-zero control value, the graph only updates when
sent a nonzero value from another component on the canvas.
This option is useful with the Average and Peak Hold compo
06683-099
nents. By routing the second output from one of these to an
input node on the graph, you can make the graph update on
Figure 82. Graph Settings Form, Data Settings Tab
the last average or peak hold operation in a series.
Use the drop-down box to select an input node for which you
The Results portion of the frame allows you to set component
would like to set data properties. These are listed with Input 1
behavior in dealing with results files. For example, to append to
as the first node.
these files automatically during canvas updates, choose every
update or only updates in which a nonzero control value is • Display Name is displayed at the top of the data set in the
supplied. To pick results files for data, use the Data Settings tab. analysis results frame on the graph component. This setting
Graph Window only affects analysis data.
• Device is displayed along with the analysis results in the
Use the Graph Window tab to adjust settings that affect the
analysis results frame.
behavior of the float form accessible from the graph component.
• Comments allow for a multiple- line comment displayed at
the end of the data set in the analysis results frame. If you
wish to enter multiple lines, press Ctrl + Return to start a
new line. You can also select the plot to which the data is to
be routed. Autoselect selects the plot based on the data
type.
• Results File Allows you to pick a results file you are to
append to for this data set. Do not write to the file just by
selecting this box and picking the file name. This action
merely selects the file for the particular data set. To write
to the selected file for a data set, you can either select the
06683-098
Rev. 0 | Page 31 of 40
AN-905
PATTERN SAVER
Pattern Saver saves a vector to a data file. Data can be I, I/Q
interleaved, or I/Q separate files. The component saves data in
hexadecimal or decimal format. Note that to write in hexadeci
mal format, use a .hex file extension.
06683-100
Figure 83. Graph Settings Form, Plot Settings Tab
06683-103
leakages on an FFT plot.
Turn labels on/off using the Show Labels check box. Labels are Figure 85. Pattern Saver Settings Form
any text labeling data in a plot. For example, the FFT Analysis
Click Settings to access the Pattern Saver Settings form (see
can use a 2 to label the second harmonic.
Figure 85).
Graph Form From the settings form, load the pattern file(s). First, select the
When a graph is floated, the contents of the graph component file format in the drop-down box at the top of the page. Second,
appear on a floating form. All of the tool bar buttons appear and enter an output file name by typing a file name manually or
continue to work as previously described. You can also manu click Browse and browse for an output directory and file name.
ally save or print the form image. If you use I/Q separate files format, you need to enter a second
File > Save Form As–Saves the form image to a file. file as well.
File > Print–Sends the form image to a printer. You can select the Save on Run check box to have the compo
nent write to the file when the canvas updates. If this is not
If you exit the form, the form disappears and the contents
selected, use the Save button on the front of the component to
appear back in the component.
manually write to the file.
If you select Append Existing check box, VisualAnalog
appends to existing files instead of overwriting. If you want
the component to write to a series of files, select the Insert
Date/Time in File Name check box.
06683-101
Rev. 0 | Page 32 of 40
AN-905
COMPONENTS SOURCES
FILTER MASK PATTERN LOADER
Filter Mask defines a single-sided spectral mask that can be Pattern Loader loads a vector from a data file. Data file format
applied to any frequency domain signal. This mask can be any may be I only, I/Q interleaved, or I/Q separate files. The compo
type of filter, including low-pass, band-pass, high-pass, band- nent loads data in hexadecimal or decimal format. Note that the
reject, multi-pass, or multi-reject options. pattern loader assumes hexadecimal format only when it
You can adjust the filter shape by entering the frequency and encounters a .hex file extension.
the power level in the Mask Points table. In addition, the initial
gain, sample frequency, and sample size can be determined.
Figure 86 defines a low-pass filter with a stop band rejection
of −100 dB.
06683-108
Figure 88. Pattern Loader
To use the Pattern Loader component, first select your file format
in the drop-down box at the top of the component. Second,
enter an output file name by typing a file name manually or
click Browse and browsing for an output directory and file
name. If you use I/Q separate files format, then you need to
enter a second file as well.
Use the Sample Frequency text to enter the sample frequency
of your data.
06683-105
Select the Load on Run check box to have the component read
Figure 86. Filter Mask Settings Form from the file when the canvas updates. If this is not selected,
GAUSSIAN NOISE you can still use the Load button on the front of the component
to read the file.
Gaussian Noise generates Gaussian time-domain noise with an
approximately normal distribution.
As shown in Figure 87, the sample frequency and sample size
can be set. In addition, the output can be set to complex if
complex Gaussian noise is required.
06683-107
Rev. 0 | Page 33 of 40
AN-905
TONE GENERATOR Set parameters for each tone in the CW Tones table. The
Tone Generator generates ideal sine waves. This block allows desired frequency can be typed into the Frequency (MHz) grid.
the sample frequency and data size to be specified. Use the The coherent value is calculated and placed in the Actual grid.
composite amplitude text to set the amplitude of multiple tones The coherent value is the one used unless the Non-integer
relative to 0 dB. The Use Composite Amplitude check box Cycles check box is selected. The relative amplitude of the tone
always normalizes each tone so that the composite amplitude can be set in the Amplitude grid as well as the Phase grid. If
equals the value entered here. If you would like the amplitude additional tones are required, add them by clicking Add and
of each tone to reflect the actual value typed in the Amplitude repeating the process.
column, clear the Use Composite Amplitude check box.
06683-109
Rev. 0 | Page 34 of 40
AN-905
06683-113
Figure 90. ADC with ADC Data Capture Board
Rev. 0 | Page 35 of 40
AN-905
06683-110
Figure 91. ADIsimADC Model File
In Figure 91, a Tone Generator generates a single sine wave at A variation of this template can be used for testing converters
70.3 MHz with a sample clock of 122.88 MSPS. This vector is with complex inputs. Because data is easily loaded from a file,
sent to the AD9246 ADIsimADC converter model where it is the model can easily be stimulated with complex waveforms
digitized and converted to bits. The Input Formatter then loaded from a file. This is useful for studying the behavior of
converts this digitized data into the normalized format proc- the ADC when stimulated from complex data.
essed by most of the blocks within VisualAnalog. The FFT
component calculates the FFT of this data and the FFT Analysis
component performs an analysis on the data. The resulting
data appears on the graph along with the analysis results.
Rev. 0 | Page 36 of 40
AN-905
06683-111
Figure 92. Complex Data Analysis with ADIsimADC
Figure 92 shows a complex data set that is loaded and split combined back into complex notation. The I vs. Q component
into real and imaginary components (I and Q) and then is used to plot the information of the constellation and the data
digitized by dual ADCs. The output of the ADCs is then is also processed with an FFT component to view the spectral
formatted back to the normalized VisualAnalog format and content of the complex signal.
Rev. 0 | Page 37 of 40
AN-905
06683-112
Figure 93. Loading the DPG with a Simple Vector
LOADING THE DPG WITH A SIMPLE VECTOR domains before it is sent to the DPG. This allows comparison
Figure 93 shows how to load a simple vector from a file and between the actual and ideal waveforms. In this example, after
then pass it to the DPG for use with one of many standard the file is loaded, it is converted into the normalized VisualAnalog
DACs. Depending on the DAC, data can be real data or data type and processed in both the time and frequency
complex data. domains for display on the graph. The data is then converted
back into the proper format to be passed to the DPG for
A benefit of using VisualAnalog to load vectors to the DPG reconstruction with the external DAC hardware.
is that the signal can be viewed in both time and frequency
Rev. 0 | Page 38 of 40
AN-905
06683-114
LOADING THE DPG WITH A COMPLEX VECTOR frequency shift it, and add a CW tone to the data set. This data
is finally sent to the DPG. Once in the DPG, the data can be
VisualAnalog can be used to load a simple vector from a file passed to an appropriate DAC to generate the desired analog
and then manipulate that file before it is sent to the DPG. waveform.
Figure 94 shows how to load a file, duplicate the vector and
Rev. 0 | Page 39 of 40
AN-905
NOTES
Rev. 0 | Page 40 of 40