Mixed Signal Analyzer
Analyze circuit simulation data
Description
The Mixed-Signal Analyzer app enables you to visualize, analyze, and identify trends in mixed-signal simulation data. With the Cadence® Virtuoso ADE-MATLAB® Integration option you can import databases of circuit-level simulation results in MATLAB. To gain insights into the data, you can plot trends where you can vary different process parameters and see how the system behavior changes.

Open the Mixed Signal Analyzer App
MATLAB Toolstrip: In the Apps tab, under Signal Processing and Communications, click the app icon.
MATLAB command prompt: Enter
mixedSignalAnalyzer
.
Examples
Export Cadence® Simulation Data to MAT File
You can export the Cadence® simulation run results to a .mat file after an interactive run result is created. The .mat file can then be imported to the Mixed-Signal Analyzer app. To export the data, launch MATLAB® from Cadence ADE by clicking the M button in the toolbar.
The MATLAB session that opens should have adeInfo
in the base workspace.
Run the function adeinfo2msa
. This extracts the simulation results from the latest interactive run, creates a .mat file in the present working directory, and imports the file to the Mixed-Signal Analyzer app.
Once the .mat file is generated, the app automatically launches with the imported .mat file.
Import Cadence® Database to Mixed-Signal Analyzer
You can directly import the Cadence database® in the Mixed-Signal Analyzer app without explicitly creating the .mat file.
To export the data, launch MATLAB® from Cadence ADE by clicking the M button in the toolbar.
The MATLAB session that opens should have adeInfo
in the base workspace.
Launch the Mixed-Signal Analyzer app.
Select Import > AdeInfo database … from the app toolbar.
In the newly opened dialog box, select the interactive runs you want to import to the app.
Analyze Clock Buffer Using Mixed Signal Analyzer
This example shows how you can use the Mixed Signal Analyzer app to analyze a clock buffer circuit and understand the effect of varying corner points using trend charts.
Open the Mixed Signal Analyzer app.
mixedSignalAnalyzer
Import an adeInfo
object from Cadence®. Click the Import button, select AdeInfo .mat file..., and select ClockBuffer
.
The adeInfo
object loads the transient and DC analysis simulation data, analysis waveform, and performance metrics.
In the Data panel, click on /o1
under tran section, then click the Display Waveform button in the Analysis tab.
To get additional overshoot and undershoot metrics from the /o1
data, keep /o1
selected and select yMaximum and yMinimum functions from the Built-in Analysis section in the Analysis tab. The metrics are added under Analysis Metrics in the Data panel.
You can also add your custom analysis function using the Add Analysis button.
To add a custom analysis function that multiplies an waveform by five, click on the Add Analysis button. In the newly opened pop-up window, set Function Name to multiply5
, Number of input waveforms to 1
, Number of input parameters to 0
. Click the Create Analysis button. A prepolulated MATLAB editor opens where you can add your custom code, in this case the code to multiply the input waveform amplitude along the y-axis by 5.
To multiply /o1
data by 5, keep it selected and click on the newly added multiply5 function from the Custom Analyses section in the Analysis tab. Select multiply5(tran/o1)
under Analysis Waveforms section in the Data panel and click the Display Waveform button. The amplitude of /o1
data is multiplied by 5.
To get better insight about certain parameters, you can add a trend chart by clicking Trend Chart button in the Metrics tab. Select all three delayMeasure
data from the Data panel, and click on the Trend Chart button.
Here the trend chart shows the delay of the signal as various process corners are varied. You can modify and add new fields to the trend chart.
From the Plot Options panel, select corModelSpec
and wp
in the Trend Chart Fields.
Once you are satisfied with the results, you can export it as a report in either ppt, pdf, doc, or html file format.
Programmatic Use
mixedSignalAnalyzer
mixedSignalAnalyzer
opens a new blank Mixed-Signal
Analyzer app.
mixedSignalAnalyzer('mixedSignalAnalysis.mat')
mixedSignalAnalyzer('mixedSignalAnalysis.mat')
starts the
Mixed-Signal Analyzer app, and loads it with the simulation data from the
mixedSignalAnalysis.mat
file. You can specify either a simulation .mat
file or a .mat file containing data from a previous session.
More About
Extract Data from Cadence
You can extract simulation data from Cadence ADE Simulation run (Interactive or Ocean). You can save data from a specific simulation run or all simulation runs.
Simulation data are saved in a .mat file.
You can first extract the data from Cadence to a .mat file, then launch the Mixed-Signal Analyzer app. This allows you to run the app from any operating system: Linux®, Windows®, or Mac. For more information, see Export Cadence® Simulation Data to MAT File.
Alternatively, you can export the data from Cadence directly in the Mixed-Signal Analyzer app. This allows you to export multiple interactive runs at the same time. But you must be in the Linux environment. For more information, see Import Cadence® Database to Mixed-Signal Analyzer.
The adeinfo2msa
function reads the Cadence simulation information, converts the data to a .mat file, then launch the
Mixed-Signal Analyzer with the generated .mat file. You can define which type
of run result to process (Interactive or Ocean), the simulation run number, and the test
name mentioned in Cadence ADE Maestro view. You can also define which simulation type to process
(transient, dc, ac, or all) and specify the file name of the .mat file to be generated. Use
the name-value pair argument import2msa
to launch the app with the
generated .mat file or just to save the .mat file in the present working directory.
Simulation Data | Description |
---|---|
dbTables | Table containing results of ADE simulation. |
totalCorners | Structure of tables containing corner parameter definitions from ADE. |
paramTable | Structure of tables containing parameter definitions from ADE. |
paramConditionTable | Structure of tables containing parameter conditions from ADE. |
wfResults | Index entries of all results that have waveform. |
wfCorners | Structure of corner labels that contain the saved waveforms. |
wfOutput | Structure of containing net names for which waveforms exist. |
WaveformDB | Structure of waveform objects from ADE run number. |
simDBS | Structure of simulation database containing single data point. |
The simulation data from the dbTables
is used to generate two more
tables:
signalTable
— list of all signal namesexpressionTable
— list of all expression names
Analysis
Use the Mixed Signal Analyzer to perform various analysis to get a better understanding of the system. Supported analysis functions are:
Function Name | Description |
---|---|
acos | Returns the arc cosine of a signal |
acosh | Returns the arc hyperbolic cosine of a signal |
asin | Returns the arc sine of a signal |
asinh | Returns the arc hyperbolic sine of a signal |
atan | Returns the arc tangent of a signal |
average | Computes the average of an waveform over its entire range |
clip | Returns the portion of a signal between two points along the x-axis |
conjugate | Returns the conjugate complex number |
cos | Returns the cosine of a signal |
cosh | Returns the hyperbolic cosine of a signal |
db10 | Returns the waveform in decibels by a factor of 10 (dB10), given by 10log10(Absolute value of waveform) |
db20 | Returns the waveform in decibels by a factor of 20 (dB20), given by 20log10(Absolute value of waveform) |
dutyCycle | Returns the duty cycle of a waveform |
exp | Returns the exponential value of a waveform |
fallTime | Returns the fall time value of a waveform |
firstValue | Returns the first value where the waveform begins on the x-axis |
imag | Returns the imaginary component of a waveform |
int | Returns the integer value of a real number input waveform |
inverse | Returns the inverse value of a waveform |
lastValue | Returns the last value where the waveform ends on the x-axis |
log10 | Returns the 10-based logarithm of a waveform |
log | Returns the natural logarithm of a waveform |
mag | Returns the magnitude of a signal |
phaseNoise | Returns the phase noise of a signal |
phase | Returns the phase of a signal |
pow10 | Returns the ten to the power (10x) value of a waveform |
real | Returns the real component of a waveform |
riseTime | Returns the rise time value of a waveform |
sin | Returns the sine of a signal |
sinh | Returns the hyperbolic sine of a signal |
sqrt | Returns the square root of a signal |
square | Returns the squared value of a signal |
tan | Returns the tangent of a signal |
tanh | Returns the hyperbolic tangent of a signal |
xMaximum | Returns the x-axis value for the peak value along the y-axis |
xMinimum | Returns the x-axis value for the lowest value along the y-axis |
xValue | Returns the vector of x-axis values |
yMaximum | Returns the peak value along the y-axis |
yMinimum | Returns the lowest value along the y-axis |
yPower | Returns yx for two input waveforms x and y |
You can also add your custom analysis using the Add Analysis button. This opens a MATLAB script where you can add your custom code. Do not modify the first section of the script. You can access your custom analysis function from the Analysis tab in the toolstrip.
Note
The custom analysis functions are saved in the \msblks\+msaCustom
folder in your preferred directory. You can find your preferred directory using the
prefdir
command in the MATLAB command window.
The app supports analysis of both current and voltage signals. You can also combine different simulations results such as data with only waveforms, only metrics, or a combination of both.
Version History
Open Example
You have a modified version of this example. Do you want to open this example with your edits?
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)