Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Simulation using an arbitrary input source in Cadence

Status
Not open for further replies.

ic98

Member level 4
Joined
Oct 1, 2010
Messages
76
Helped
14
Reputation
30
Reaction score
14
Trophy points
1,288
Activity points
1,696
Hi,
I wonder if anyone knows how we can insert an arbitrary input source for simulation in Virtuoso ADE?
In HSPICE, we can simply write our time/input vectors (of any length) in a specific ".data" file using, e.g., MATLAB, and then include it for the simulation.
I appreciate if you share your ideas on how to do such a simulation in Virtuoso ADE?
Thank you
 

hi,
you can create a symbol of source which you wanted by verilogA
 

Hey pancho,
Could you please explain more how I can set the file name and how I should write the pwl file? (its format)
Could you introduce me a manual for using the Cadence tools (or particularly for Virtuoso ADE) like the pdf manual that exists for HSPICE? I mean some stuff by which I can find out how to set different elements in analogLib, etc.
Thanks
 

Could you please explain more how I can set the file name and how I should write the pwl file? (its format)
The following is example.
Lines which begin with non numeric character and blank lines are ignored.


; IS-95 Signal(1.2288Mcps)
time (s) VT("/net47") (V)


0 0
2.03451e-07 -0.0227593
4.06902e-07 -0.03328
6.10353e-07 -0.0355936
8.13804e-07 -0.0186356
1.01726e-06 0.0405292
1.22071e-06 0.0938852
1.42416e-06 0.12399
1.62761e-06 0.101441
1.83106e-06 0.0465421

Could you introduce me a manual for using the Cadence tools (or particularly for Virtuoso ADE) like the pdf manual that exists for HSPICE?
There is no useful manual.
 
Last edited:

Pancho,
Thanks, but actually I can't understand what the first two lines are; and I don't know yet how to set this vpwlf file in ADE simulation setup.
Could you introduce me at least a manual on this topic? (how to use vpwlf)
 

Thanks, but actually I can't understand what the first two lines are;
Surely read my append.
Lines which begin with non numeric character and blank lines are ignored.
So following 4 lines before 0 0 are ignored.

; IS-95 Signal(1.2288Mcps)
time (s) VT("/net47") (V)


0 0

Could you introduce me at least a manual on this topic? (how to use vpwlf)
Again there is no manual.
Anyway, try without thinking.

Generally you can't get any useful documentation regarding Cadence tools.
If you could find any document about components of analogLib, you can never get any useful information from it.

Only one information is "spectre -h vsource" from unix command line. However you can never get any useful information about "analogLib/vpwlf".
Actually, any voltage source in analogLib such as vdc, vsin, vac, vpwl, vpwlf, vpulse are vsource in Spectre's netlist expression.
 
Last edited:

Thanks pancho,
so let me ask my question in this way: if there is no manual and no tutorial on how to use Cadence options, then how have you/other people learned these options?
I don't know yet how/where to generate this vpwlf file (which directory, what file extension, etc.) and if I want to do have more than one arbitrary input source, then what should I do?
I wonder if you may know something about Vector File Simulation? (https://eda.engineering.wustl.edu/wiki/index.php/Tutorials:Cadence:AdvancedTopics) I just found it. which one do you think is more efficient?
 

Last edited:
  • Like
Reactions: ic98

    ic98

    Points: 2
    Helpful Answer Positive Rating
OK. thank you anyway, i don't think surfing the internet could be a good idea to learn a software.
but I thought experts here could give some advice on how to find a few true tutorial/manuals about Cadence. What a !!! software it is!
 

The Cādence IC software suite usually includes an extensive and - IMHO - useful documentation. See the doc directory!
 

erikl,
if you mean "cadence documentation" thru help menu on CIW, when i click on it i get an error says some files are missing or cannot be opened. even when i type cdsdoc on a terminal: command not found.
pancho kindly introduced me "vpwlf" source, but I don't know how to set its parameters on "add instance" window; and where the file should be saved (in cellview's directory\schematic?) and with what file extension? could you please help me.
Thank you
 

In the past I had the pleasure of designing about 20Kgates
worth of SERDES logic, analog style. To simulate the lower
level (bottom up) design chunks I got the customer's digital
guy to give me vectors, and used shell scripts to grind them
into time/voltage pairs, concatenated a veriloga header,
data and footer, stuffed it up under a symbol/veriloga pair
and there you go. Also made an "expect" widget for the
output side to display any logic faults as a node voltage.

Since I did not have access to, or inclination to pursue
and learn "real digital" tools, this was expedient. The
customer was on a different tool set than we use, anyway.
The dumb vector data was "agnostic".
 

where the file should be saved (in cellview's directory\schematic?)
Specify file path as absolute path.

and with what file extension?
Extension is not required. This is a common sense in UNIX file.
If you would like to add extension, any extension is acceptable.
 
Last edited:

pancho, what do you mean by "absolute path"?
when I'm using vpwlf, is it needed to set other options for transient analysis, like time step, maxstep, etc?
I mean when someone is using vpwlf, then what the other transient options like those mentioned mean?
thanks
 

pancho, what do you mean by "absolute path"?
Do you have a basic knowledge of UNIX ?
Learn absolute path of UNIX file system.

when I'm using vpwlf, is it needed to set other options for transient analysis, like time step, maxstep, etc?
I mean when someone is using vpwlf, then what the other transient options like those mentioned mean?
Not required.

Try without thinking using simple example.
 
  • Like
Reactions: ic98

    ic98

    Points: 2
    Helpful Answer Positive Rating
Just one more question: if I want to use more than one vpwlf signal source, is it necessary to create separate (two-column) pwlfiles for every vpwlf source in the same directory? or I can use a single file to address the time/magnitude of all the sources!?
 

if there is no manual and no tutorial on how to use Cadence options,
then how have you/other people learned these options?
We all try and confirm step by step by ourselves.

You can resolve all your questions easily, if you try and confirm by yourself.
Try without thinking !!
Try without thinking !!
Try without thinking !!
Try without thinking !!
Try without thinking !!

if I want to use more than one vpwlf signal source,
is it necessary to create separate (two-column) pwlfiles for every vpwlf source in the same directory?
or I can use a single file to address the time/magnitude of all the sources!?
If all instances are same waveforms, you can use a single file.

This question is easy and self-evident, if you can surely understand UNIX and other EDA Tool such as HSPICE, eldo, ADS, MATLAB/Simulink, etc.

Do you understand HSPICE surely ?


Anyway, Try without thinking !!
Anyway, Try without thinking !!
Anyway, Try without thinking !!
Anyway, Try without thinking !!
Anyway, Try without thinking !!
Anyway, Try without thinking !!



"data1.txt" and "data2.txt" are located under "/tmp".
"data3.txt" and "data4.txt" are located under home directory, here $home=/home/hoge

I specify pwl-file as absolute path for instances, V1, V2 and V3.

I specify pwl-file by file name only for instances, V4, V5 and V6.
Instead of specifying aboslute path, I use "include" directory option of spectre command.

spectre -I/home/hoge input.scs

###### input.scs #############################
// Generated for: spectre
// Generated on: Sep 2 15:26:16 2013
// Design library name: Heppoko_Lib
// Design cell name: test_vpwlf
// Design view name: schematic
simulator lang=spectre
global 0

// Library name: Heppoko_Lib
// Cell name: test_vpwlf
// View name: schematic

V1 (n1 0) vsource file="/tmp/data1.txt" type=pwl
V2 (n2 0) vsource file="/tmp/data2.txt" type=pwl
V3 (n3 0) vsource file="/tmp/data2.txt" type=pwl

V4 (n4 0) vsource file="data3.txt" type=pwl
V5 (n5 0) vsource file="data4.txt" type=pwl
V6 (n6 0) vsource file="data4.txt" type=pwl

simulatorOptions options reltol=1e-3 vabstol=1e-6 iabstol=1e-12 temp=27 \
tnom=27 scalem=1.0 scale=1.0 gmin=1e-12 rforce=1 maxnotes=5 maxwarns=5 \
digits=5 cols=80 pivrel=1e-3 sensfile="../psf/sens.output" \
checklimitdest=psf

tran tran stop=5 write="aps.ic" writefinal="aps.fc" annotate=status \
maxiters=5

save n1 n2 n3 n4 n5 n6
###### input.scs #############################
 

Attachments

  • hardcopy-2013-0902-1529-17.png
    hardcopy-2013-0902-1529-17.png
    30.5 KB · Views: 167
  • hardcopy-2013-0902-1529-49.png
    hardcopy-2013-0902-1529-49.png
    7.5 KB · Views: 174
  • hardcopy-2013-0902-1535-03.png
    hardcopy-2013-0902-1535-03.png
    23.7 KB · Views: 161
  • data1.txt
    30 bytes · Views: 89
  • data2.txt
    30 bytes · Views: 64
  • data3.txt
    30 bytes · Views: 57
  • data4.txt
    30 bytes · Views: 57
Last edited:

I didn't mean you to simulate something to show me Cadence capabilities. I just asked you a question; but I think you're a little aggressive to answer my questions.
Anyway, I appreciate your efforts to help me. Yes, in HSPICE, as I pointed in my first post in this thread, we can use a simple ".data" file, and name each column in it; so having a single file we can simulate different sources (already addressed in the file, separately). BUT in Cadence, we can't.
Thank you
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top