The Designer's Guide Community
Forum
Welcome, Guest. Please Login or Register. Please follow the Forum guidelines.
Mar 28th, 2024, 5:22am
Pages: 1
Send Topic Print
SKILL functions in VerilogA possible? (Read 3389 times)
Horror Vacui
Senior Member
****
Offline



Posts: 127
Dresden, Germany
SKILL functions in VerilogA possible?
Jun 01st, 2018, 1:52am
 
Hi everyone,

I would like to give over some parameters to my verilogA block during netlisting (library/cell/cellview used for simulation, date, username, and if possible model section/corner o be used) so they could be written into the output file generated by the VerilogA module.
I sweep some parameters and measure a few important results in my circuit with VerilogA and create an output file. It is much faster and easier then using running parametric sweeps. Also a similar thing might be used for debugging purposes as well.

Is it possible at all? I fear it is not trivial. I have looked into /thought at the following:
- spectre runs independently from the Cadence environment in batch  mode, so I do not think I can solve the problem there.
- The CDF callbacks are only evaluated when the Edit Properties form is used, which is not enough for me.
- netlister: On the other hand I am skeptical here as well. I believe that the netlister just grabs the database information - i.e. "strings" - from the devices and puts them into a netlist file as they were. At least if I would develop a netlister I would not complicate it more than necessary (KISS principle). A problem is that I do not know where is the netlister documentation.

I have no other ideas. Do you have any idea how to - try to - solve this?
Back to top
 
 
View Profile   IP Logged
Andrew Beckett
Senior Fellow
******
Offline

Life, don't talk to
me about Life...

Posts: 1742
Bracknell, UK
Re: SKILL functions in VerilogA possible?
Reply #1 - Jun 2nd, 2018, 6:47am
 
Not entirely sure whether this will help, but see this thread on the Cadence Community Forums:

https://community.cadence.com/cadence_technology_forums/f/custom-ic-design/37847...

Andrew.
Back to top
 
 
View Profile WWW   IP Logged
Horror Vacui
Senior Member
****
Offline



Posts: 127
Dresden, Germany
Re: SKILL functions in VerilogA possible?
Reply #2 - Jun 5th, 2018, 1:23am
 
Hi Andrew,

Thanks for the link. It is an interesting one, and it could be a solution to a part of my problem.
Are you aware any general way that makes it possible to put the result of a SKILL function into the netlist?

Thanks,
Zoltan
Back to top
 
 
View Profile   IP Logged
Andrew Beckett
Senior Fellow
******
Offline

Life, don't talk to
me about Life...

Posts: 1742
Bracknell, UK
Re: SKILL functions in VerilogA possible?
Reply #3 - Jun 17th, 2018, 3:23am
 
It's not that clear quite what you're trying to achieve here or why you need SKILL to do it. You could write a custom netlisting procedure, but I can't give that much advice without a clear example of what you want or what needs to be done at netlisting time.

Maybe this would be better handled by a question to Cadence Customer Support at http://support.cadence.com

Regards,

Andrew.
Back to top
 
 
View Profile WWW   IP Logged
Horror Vacui
Senior Member
****
Offline



Posts: 127
Dresden, Germany
Re: SKILL functions in VerilogA possible?
Reply #4 - Jun 17th, 2018, 12:33pm
 
I do not need to do this, I just found the idea of saving the already post-processed simulation results from a verilogA module promising.

I have a verilogA block which does my sweep control for two variables and writes the results into a textfile, from where I can plot the necessary data. Otherwise I should run too many spectre runs, where most of the runs will not have a meaningful result (=the circuit can not function as intended). One of the simulation results are what is the range where the circuit operates. I find it non trivial to let it plot in Cadence, but I find it very easy to just write it into a text file. Since I have to write into a file the idea emerged that I could add another data to it as well.

One of the problem is that the output text file where I save the results from the verilogA module, takes its filename from the block properties. I run the same testbench with different config views, with and without parasitic extraction.
It would be a great help if I could change some things in the outputs, what I have to write manually before every run if something changes: output filename, what config view has been run, which LPE view has been used, which corner is it on, date, because it might change after copying, but I could think of another information to archive.
It does not need to be SKILL, it can be anything, C, Fortran, Pascal, Java, I just wondered whether it is possible.
Back to top
 
 
View Profile   IP Logged
Frank Wiedmann
Community Fellow
*****
Offline



Posts: 677
Munich, Germany
Re: SKILL functions in VerilogA possible?
Reply #5 - Jun 19th, 2018, 1:28am
 
Did you already take a look at the section "Special $fopen Formatting Commands" in the Cadence Verilog-A Language Reference (https://support.cadence.com/apex/techpubDocViewerPage?path=veriaref/veriaref17.1...)?
Back to top
 
 
View Profile WWW   IP Logged
Horror Vacui
Senior Member
****
Offline



Posts: 127
Dresden, Germany
Re: SKILL functions in VerilogA possible?
Reply #6 - Jun 20th, 2018, 2:07am
 
Yes, I looked at it at the beginning, but these formatting commands are just a limited set and they can be used only for filenames. They did not work when I wanted to write them into the file.
Back to top
 
 
View Profile   IP Logged
Pages: 1
Send Topic Print
Copyright 2002-2024 Designer’s Guide Consulting, Inc. Designer’s Guide® is a registered trademark of Designer’s Guide Consulting, Inc. All rights reserved. Send comments or questions to editor@designers-guide.org. Consider submitting a paper or model.