• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC SKILL
  3. MATLAB Interface S-parameter Data Import

Stats

  • Locked Locked
  • Replies 10
  • Subscribers 143
  • Views 17772
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

MATLAB Interface S-parameter Data Import

Curtisma
Curtisma over 6 years ago

The aaSP function in MATLAB isn't working for me at all.

I open Matlab and load my results successfully, but when I try to get some data using the aaSP function it throws an error every time as shown below.  Using the aaSP function in the Cadence calculator and as part of an expression in Maestro works great on the same results data set.

Any idea where I am going wrong?  I have tried specifying the datapoint # and test name when running the loadResult() method but it still throws an error.  I also tried specifying the result name ('sp-sp') and result directory as part of my call to aaSP but those also throw an error.

The transient data access functions (VT) do work for another sim I'm running.  I haven't been able to find a way to evaluate an expression and return a Waveform to MATLAB.  Is this possible?

I am using MATLAB R2019a and Virtuoso IC6.1.7-64b.500.23  I have also tried it with MATLAB 2018a and it works the same.

Regards,

Curtis

  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 6 years ago

    Hi Curtis,

    It looks as if the s-parameter data is missing (I just tried it with an s-parameter run with the same Virtuoso and Matlab versions you're using and it worked for me). Can you try:

    analyses=cds_srr(adeInfo.adeCurrentResultsPath)
    signals=cds_srr(adeInfo.adeCurrentResultsPath,'sp-sp')
    signals.S_Param

    and post what you get?

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Curtisma
    Curtisma over 6 years ago in reply to Andrew Beckett

    I've found that those commands do work if I change the results path slightly by appending "/<test name>/psf" with the test name being "FSPAR_a" in this case.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 6 years ago in reply to Curtisma

    Hi Curtis,

    Your initial experiment was for a single point (see adeDataPoint in adeInfo), for which the cds_srr function should work. The example today has adeDataPoint set to -1 and also doesn't have the test specified (you could solve this with adeInfo.loadResult('dataPoint',1,'test','FSPAR_a') first). So you're not comparing like with like. The cds_srr really needs the leaf level data, whereas aaSP should work at the top level (although you have to be looking at a single test at a time).

    Regards,

    Andrew 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Curtisma
    Curtisma over 6 years ago in reply to Andrew Beckett

    Hey Andrew:

    Ok, so I ran the cds_srr commands after loading a single data point and they seemed to return what I would expect as shown below havever the aaSP function is still throwing an error as shown below.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 6 years ago in reply to Curtisma

    Ah, I wonder if this is something to do with having more than 9 ports. The naming convention changes when you have more than 9 ports (goes from s11 to s1:1). I'll do some checks.

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 6 years ago in reply to Curtisma

    Ah, I wonder if this is something to do with having more than 9 ports. The naming convention changes when you have more than 9 ports (goes from s11 to s1:1). I'll do some checks.

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
  • Andrew Beckett
    Andrew Beckett over 6 years ago in reply to Andrew Beckett

    Hi Curtis,

    Yes, that's exactly what it is. The aaSP() function assumes the signals are called "sNM" and not "sN:M". That's a bug that we need to fix. Could you log a case with support.cadence.com and then post the number here - I'll pick it up and file the CCR (it's best to be tied to a customer rather than just me doing it myself).

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Curtisma
    Curtisma over 6 years ago in reply to Andrew Beckett

    Hey Andrew:

    I already had the following case open:

    Case # 46373090

    Any idea how long it would take to get an update?  I was really hoping to use this for some post-processing of spar results right away.

    Do you think I could go in and change the MATLAB code or maybe subclass and override a method in MATLAB to fix the issue in the meantime?

    -Curtis

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 6 years ago in reply to Curtisma

    Hi Curtis,

    I'm checking with the case owner to see if I can pick it up. This will need an enhancement to aaSP to make it smarter. I've just written a modification to the current code, and I'll send it to you via the case.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information