• 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 Design
  3. Cannot save window in grf

Stats

  • Locked Locked
  • Replies 8
  • Subscribers 127
  • Views 16549
  • 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

Cannot save window in grf

BaaB
BaaB over 9 years ago

I am using Cadence IC6.16. I tried a lot to save simulation plot result in grf or grf.group but it displayed nothing when I reloaded.

Here is what I did:

From Virtuoso (R) Visualization & Analysis XL, choose File -> Save Window As then set an appropriate name for the file.

After that, I closed all the simulation (exited everything) and then opened the simulation again, opened Virtuoso (R) Visualization & Analysis XL, choose File -> Load Window but the result showed only signal names, no data curves were displayed at all.

Could you guide me on how can I save all signal waveform in window for later use?

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

    Please report this to customer support. We need to investigate and possibly file a bug CCR.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Brad RFeng
    Brad RFeng over 3 years ago in reply to Andrew Beckett

    This bug is still not fixed in IC6.1.8 ISR22!

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Brad RFeng
    Brad RFeng over 3 years ago in reply to Andrew Beckett

    This bug is still not fixed in IC6.1.8 ISR22!

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
  • Andrew Beckett
    Andrew Beckett over 3 years ago in reply to Brad RFeng

    Well, it works for me (as it probably did at the time when I replied to the original post 6 years ago). I've no idea whether they reported the issue, and so I'm not sure what the bug is you're referring to.

    I suggest you contact customer support, as presumably it's something to do with the precise details of what you're attempting rather than a generic problem.

    Regards,

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • ShawnLogan
    ShawnLogan over 3 years ago in reply to Andrew Beckett

    Dear Brad RFeng,

    BaaB said:

    From Virtuoso (R) Visualization & Analysis XL, choose File -> Save Window As then set an appropriate name for the file.

    After that, I closed all the simulation (exited everything) and then opened the simulation again, opened Virtuoso (R) Visualization & Analysis XL, choose File -> Load Window but the result showed only signal names, no data curves were displayed at all.

    First some background....I have  a lot of experience with ".grf" files as I use them all the time to both load or re-load simulation results. I also have learned enough about the syntax of the files to allow me to directly edit the ".grf" file with a text editor to use a database for a different simulation than I used to create the initial ".grf" file. I have asked Cadence on several occasions to provide more information on the format/syntax of this ViVA file type to facilitate my ability to modify the files in a conventional text editor, but have been told they will not provide any information nor support for modifying the filetype outside of ViVA. Hence, my efforts have been not been 100% successful when I modify a ".grf" file, but I would say 60% to 70% successful. With that as a summary of the motivation for my comments Brad, a couple of questions if you have time or even care to...

    If you open your .grf file with a text editor, there are a few file locations where the UNIX path to the psf file and the waveforms of interest should be. However, the file type has the undesirable attribute of often retaining expressions you may have loaded into a plot at one time and carrying them as "overhead" in future ".grf" files. Hence, there may also be a UNIX path that no longer points to data that exists. This can cause ViVA to fail to load the waveforms that do exist.

    1. After opening your ".grf" file in a text editor, search for the UNIX path to your desired results (i. e., a UNIX directory path containing "Interactive.X...." ). As an example of one line containing the UNIX path from a recent .grf file I've used:

    <SimpleProp Name="dataDir" Value="/scratch/noclean/dcd_serdes/smlogan/Modules/sdtal5/smlogan_unixrnd.ash_dev/simulation/sdtal5_TB/test_com_div1p5_smlogan_ash/maestro/results/maestro/Interactive.30/psf/sdd5e_TB_test_div1p5_smlogan_ash_sdd5e_com_div1p5_rc_rcworst_v1p3_pvt_vdda_leakage_func_supply_ramp/psf" Type="stringValue" />

    2. Verify that the paths shown when you search for them are all valid psf results and still exist. Recall that the .grf file does not contain any simulation data - but only pointers to the data you plotted at one time. Hence, if you deleted or moved the simulation data, loading the ".grf" file may result in errors without a pointer to existing data. 

    3. Also search for the signals or expressions you are attempting to display and verify that those signals are indeed saved in the respective dataset and the expressions have a valid syntax (i.e., the expressions can be successfully evaluated if copied into the Calculator). If you are familiar with ocean, a sort ocean script can be used to open the results pointed to in your ".grf" file after which you can use the outputs() command to save the outputs to a file and the actual expression in your ",gif" file to validate its syntax.

    For example:

    check_results.ocn might contain:

    simulator('specte)

    base_results = strcat("<UNIX path to psf file>")

    openResults(base_results)
    selectResult('tran)
    ocnPrint(?output "outputs.txt" outputs())

    wave1 = getData("/<saved_top_level_waveform_net_name>" ?result "tran" ?resultsDir base_results)

    sample_expression = average(wave1)

    printf("My ocean script finds the average of wave1 as %.4f V.\n" sample_expression)

    exit()

    You can edit the .grf file in a text editor...but so as not to waste your time...I might suggest you consider these questions initially Brad....

    Anyway, you may desire to follow just Andrew's suggestion but if thought I would pass these comments along for your information.

    Shawn

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Brad RFeng
    Brad RFeng over 3 years ago in reply to ShawnLogan

    Hi Shawn,

    Thank you for the detailed information. I too was curious about the .grf files and inspected them closely in this case and in other cases in the past. In this case my path variable in the .grf is correct. Before saving the .grf the plot contained traces from three histories all of which were created with the same test. After the plot attributes were set as desired, i.e. trace colors, styles, axis limits, the plot was saved using File>Save Window As.. from the ViVa tool bar. I then immediately opened another window in ViVa using the Create New Window icon and then File>Load Window and selected the .grf that was just created. This seems like a fairly simple set of steps and I would expect the tool to handle this without any issues. However, upon loading not all histories were recovered and some traces were duplicated. Other traces had colors that didn't match the original. I also tried this with circular impedance plots and only one of the histories was recovered correctly and other traces appeared in the legend but had no data on the plot itself. I recently submitted a CCR and the bug was acknowledged. Based on past experience though I have low confidence this bug will be fixed any time soon if at all. Such basic functionality should have been tested and validated by Cadence QA long ago.

    Brad 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 3 years ago in reply to Brad RFeng

    Brad, Shawn,

    Being honest, the graph files were really intended for use by ViVA as a standalone tool rather than for use within ADE where the results directory is changing between histories and often what was once a single waveform becomes a family in a new run because corners were enabled, or maybe different corners and sweep points now exist that didn't before and so on.

    This is why waveform templates were introduced in IC618 with ADE Explorer/Assembler (there had been a few abortive attempts to introduce them in earlier versions, but they hadn't been architected properly until the IC6.1.8/ICADVM18.1 version and so never made it out of the door - so people had been trying to shoehorn the graph files into doing something they'd not really been intended for). Yes, you could argue we should have fixed this sooner, or expanded the graph files to work - but actually this whole relationship between ADE and the graph ends up being quite a lot more complex than you might imagine.

    Have you tried using plotting templates instead? These utilise some of the graph infrastructure under the hood, but are much more closely aligned with ADE.

    Regards,

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Brad RFeng
    Brad RFeng over 3 years ago in reply to Andrew Beckett

    To reiterate, the example I described above was quite basic. It contained a single test with an s-parameter frequency sweep and only the nominal corner. After simulating the circuit, a single capacitor value was manually adjusted and the simulation run again. This was repeated a few times to generate multiple histories which should all contain the exact same dependencies and array dimensions. Recalling the plot window for this simple example failed as described above. I also tried opening the graph file from the standalone Viva using CIW>Tools>Viva XL>Waveform.. and got the same failures.

    In terms of complexity, I can simulate many levels of nested sweeps over various parameters including frequency, voltage, temperature, element values, etc. and easily plot all of the data with a variety of formats and selectability, using a competing design tool. Also it seems if a single loop can be made to work correctly, nested loops are just repeating the same process multiple times so the complexity is not increasing by N when there are N loops. I know the devil is in the details but there are other tools out there that can handle this task and which by the way have had this capability for many many years.

    Plotting templates also have bugs and limitations. You can have two identical tests in the same Assembler session and the template created using test1 can't be used on test2 results. I would not even call them templates, they are really just containers of property values for a given plot. A really big limitation is that you can't use a plot template in the append mode. So i'm faced with a lot of manual repetition arranging and formatting plots and then after all of that work i can't save and reload them reliably.

    Brad

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • ShawnLogan
    ShawnLogan over 3 years ago in reply to Brad RFeng

    Dear Brad (and Andrew),

    I must agree, Brad, with your comments regarding Plotting Templates as I find them quite limited. I also agree with what I understand from reading your latest post that I also often spend hours customizing a plot for presentation only to have issues reloading the remaining data when a simulation set completes. I find that hand editing a the ".grf" file I can sometimes correct the latter and then use the ".grf" file for similar simulation sets. To overcome the various limitations, I resort to the following:

    1. Create and run ocean scripts to access the data and perform the post-processing I want and put the data in the format I want.

    2. Use the ocean script based data file(s) as inputs to either:

    a. A custom Excel workbook set up to accept the data format that will the automatically produce all the plots I desire in a common format

    b. An Octave script (a public version of a MatLab like software package) to create plots whose dataset size prevents the use of Excel or other PC based plotting software

    c. Gnuplot scripts to generate UNIX based plots 

    I still do use ViVA frequently, but have found, for me anyway, the aforementioned solutions more " re-usable" than anything ViVA appears to provide.

    Theses are, of course, just my own personal experience and thoughts.

    Shawn

    • 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