Home > Community > Forums > Custom IC Design > OCEAN write generic procedure to plot waveforms

Email

* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

 OCEAN write generic procedure to plot waveforms 

Last post Fri, May 17 2013 7:36 AM by The Setlaz. 6 replies.
Started by The Setlaz 13 May 2013 08:48 AM. Topic has 6 replies and 1064 views
Page 1 of 1 (7 items)
Sort Posts:
  • Mon, May 13 2013 8:48 AM

    • The Setlaz
    • Top 500 Contributor
    • Joined on Wed, Dec 5 2012
    • Saggart, Dublin
    • Posts 35
    • Points 500
    OCEAN write generic procedure to plot waveforms Reply

     Hi,

     

    I'm trying to write a generic procedure to plot waveform that takes the plot macro parameters as procedure input arguments.

    Basically, I want something like this :

    procedure( my_proceduresignal signal_name strip ...stuff... )

        plot( sprintf( "%s ?expr '("%s") ?strip "%d" " signal signal_name strip ) )

        ...stuff...

        hardCopy...stuff

    );procedure

     

    It seems like I cannot plot something out of a sprintf because sprintf does not return an object, right ?

    Is there any way to get that working ?

     

    Thanks,

    Damien

    • Post Points: 20
  • Mon, May 13 2013 9:07 AM

    Re: OCEAN write generic procedure to plot waveforms Reply

    Well, sprintf returns a string, so you can't just pass that to plot. In general trying to do run-time evaluation of a macro like plot is going to be problematic, so I'd suggest that  you do:

    procedure(my_procedure(signal signal_name strip)
      awvPlotWaveform(currentWindow() || newWindow() list(signal) ?expr list(signal_name) ?stripNumber list(strip))
      ; hardCopy stuff
    )

    So use the underlying function.

    Regards,

    Andrew.

     

    • Post Points: 20
  • Mon, May 13 2013 9:19 AM

    • The Setlaz
    • Top 500 Contributor
    • Joined on Wed, Dec 5 2012
    • Saggart, Dublin
    • Posts 35
    • Points 500
    Re: OCEAN write generic procedure to plot waveforms Reply

    Hi Andrew,

     

    Thanks you very much for your answer. It seems to be working !

    Do you have any documentation on the awvPlotWaveform function ? I can't find anything in the manual.

    What is the difference with the Plot function ?

     

    Thanks,

    Damien

    • Post Points: 20
  • Mon, May 13 2013 9:24 AM

    Re: OCEAN write generic procedure to plot waveforms Reply

    It's documented. In IC615 it's in <ICinstDir>/doc/vivaxlskill/vivaxlskill.pdf (and cdnshelp would find it). In IC5141 it's in <ICinstDir>/doc/skartistref/skartistref.pdf (I searched in cdsdoc, and found it).

    The plot() function has some convient options - it will create a window if one doesn't exist already, and you can just do plot(sig1 sig2 sig3) for example - the awvPlotWaveform() is a bit more verbose.

    Andrew.

    • Post Points: 20
  • Mon, May 13 2013 2:02 PM

    • The Setlaz
    • Top 500 Contributor
    • Joined on Wed, Dec 5 2012
    • Saggart, Dublin
    • Posts 35
    • Points 500
    Re: OCEAN write generic procedure to plot waveforms Reply

     Hi Andrew,

     

    Alright. Does it mean that the plot() macro is kind of wrapper for awvPlotWaveform() function ?

    I will look at the documentation tomorrow - I only looked at OCEAN Refence and SKILL Language Reference and SKILL User's Guide maual. Thanks a lot for your help.

     

    Regards,

    Damien

    • Post Points: 20
  • Thu, May 16 2013 1:43 AM

    Re: OCEAN write generic procedure to plot waveforms Reply

    Effectively, yes. It's actually a wrapper around either awvSimplePlotWaveform or awvPlotExpression - which are all very similar to awvPlotWaveform.

    Regards,

    Andrew.

    • Post Points: 20
  • Fri, May 17 2013 7:36 AM

    • The Setlaz
    • Top 500 Contributor
    • Joined on Wed, Dec 5 2012
    • Saggart, Dublin
    • Posts 35
    • Points 500
    Re: OCEAN write generic procedure to plot waveforms Reply

     Hi Andrew,

     

    Thanks for the details !

    I have another question regarding the plot. I would like to change the defaults size of the graph being saved.

    I tried creating a window using the syntax you gave a few times :

    awvCreatePlotWindow(?bBox list(100:100 1000:600))

     

    But when I open the plot image, it is still a 800 x 600 graph.

     

    I also tweaked my .cdsenv to make Viva to plot to large window using the following settings :

    viva.graphFrame width string "1920"
    viva.graphFrame height string "1152"

    It works, when I run OCEAN without the -nograph option, the graph is plotted to a big OCEAN window, but it still saved to a 800 x 600px.

     

     I'm running Cadence 6.1.5.162

     

    Thanks,

    Damien

    • Post Points: 5
Page 1 of 1 (7 items)
Sort Posts:
Started by The Setlaz at 13 May 2013 08:48 AM. Topic has 6 replies.