Plotting frequency with time...

If you want to get the default value of a pcell parameter, you can
do this from the supermaster cellView by doing:

cv~>parameters~>myparam

myparam is the name of your parameter. parameters is a hierarchical parameter
containing all the pcell parameters.

If you're starting from an instance, you'd do:

inst~>master~>superMaster~>parameters~>myparam

Regards,

Andrew.

On 7 Sep 2004 15:39:50 -0700, cadence_newbie@yahoo.com (cadence_newbie) wrote:

Hi All,

When we create a stretch line in a pcell there is some default value
assoiciated with it. just wanted to know how could it be accessed in
skill code.
I tried to get it using the '->' operator and it looks as if this only
works when you have used putprop for the stretch line. Is there any
way to get around?

would greatly appreciate a reply in this regard.

thanks.
--
Andrew Beckett
Senior Technical Leader
Custom IC Solutions
Cadence Design Systems Ltd
 
From IC5141 spectre (with the new front end) can read SPICE models natively
quite effectively. You need to use the +csfe command line option, or the
spectre.envOpts useCsfe boolean t

option in the .cdsenv (I think that's what it is called, from memory).

Before then there is a tool called "spp" which can be used to convert the model
files.

Andrew.

On 10 Sep 2004 03:27:47 -0700, karthikreddy.a@gmail.com (MOSripper) wrote:

"You can modify standard SPICE model statements to use with SPECTRE with a
text editor. Lots of example model files can be found on the web."

May i know how i can do this
--
Andrew Beckett
Senior Technical Leader
Custom IC Solutions
Cadence Design Systems Ltd
 
MOSripper wrote:
The version we use in school is IC4.46......i tried the spp command at
the unix command prompt ...but no use.....so cud u please explain the
procedure to do this.....also if i wanna do layout using virtuoso wich
needs a different format of technology file altogether is it still
possible to get this from the hspice file
How did the spp command not work?
1) "command not found"
2) you could not get it to produce an output file
3) you could not get the simulator to look at the produced output file
4) the resulting output file did not have the correct syntax
5) other, explain

Solutions
1) set the path correctly
2,3) spp -h
4) might need some more options to spp


I suggest you talk to the professor or tech support at your school.
You are confusing many things here.

Hspice and Spectre technology files are device model names and
associated parameters which describe the mathematical behaviour of the
devices to the respective simulators. Virtuso is a 2d drawing tool.

So the answer to your second question is NO.

There is no connection at all between the simulator device model files
and the virtuoso technology files which describe visual representations
processing layers. In addition to both of these it is common to have
design library elements with simulator and layout representations. The
design library elements are not contained in either the simulator model
files or the virtuoso tech file.
 
What kind of netlist? What simulator?

In certain files you can use the OSS syntax [#/I1/I2/net1] (i.e. a
hierarchical schematic name, in square brackets, with a hash (pound
for the Americans) preceding the schematic name). This then gets
mapped to the netlist name (I think it is # - you can look this up in
the OSS (Open Simulation System) documentation).

Andrew.


On 11 Sep 2004 17:25:46 -0700, rnyeldram@gmail.com (Riaz) wrote:

Hi All,

I have a flat extracted netlist where nodes are numbered like 2, 3, 4,
etc.
I want to apply test vectors using vector file. I don't know how to
map vector names to the circuit nodes.

Thanks
 
That's an Assura rule compiler crash. You need to provide the rule deck,
RSF, and options to Cadence in the form of a Service Request and
testcase.

On 13 Sep 2004 17:36:21 -0700, erikwanta@starband.net (Erik Wanta)
wrote:

We are getting the following when running DRC. Has anyone seen
something similar or have any ideas?

\o function procErrorLayer redefined
\o function procCommonRunCheck redefined
\e *FATAL* voFree 7a05280 but was allocated by bc
\o iliFatal+124()
\o voiFatal+84()
\o bcFreeTemp+116()
\o rcSetqLT+1012()
\o ilSet+56()
\o iliVcodeEval+2024()
---
Erik
 
Erik,

This looks like PCR 698318 - but that was fixed in 3.1.2 USR1 - which
I thought you were using? (Assuming it's Assura DRC you're talking
about).

Andrew.

On 13 Sep 2004 17:36:21 -0700, erikwanta@starband.net (Erik Wanta)
wrote:

We are getting the following when running DRC. Has anyone seen
something similar or have any ideas?

\o function procErrorLayer redefined
\o function procCommonRunCheck redefined
\e *FATAL* voFree 7a05280 but was allocated by bc
\o iliFatal+124()
\o voiFatal+84()
\o bcFreeTemp+116()
\o rcSetqLT+1012()
\o ilSet+56()
\o iliVcodeEval+2024()
---
Erik
 
I am definitely interested.
On my wishlist:
- a section on skill dev tools
- a theory section, for instance with articles about lisp and lisp VMs

David Witkowski wrote:
* If you are not a SKILL coder/developer feel free to disregard this
message. *

Greetings,

At ICU2004 we will be seeking input & feedback on a couple of SKILL-related
questions:

1. Is there sufficient interest in SKILL within the user-base to warrant the
creation of an ICU SKILL SIG?

2a. Is there sufficient interest in SKILL within the user-base to warrant
the creation and support of an open-source SKILL effort? This would take the
form of a public website where members could donate SKILL code for the
betterment of the community, collaborate on SKILL projects, and/or enhance
any donated SKILL.

2b. If the interest in #2 is sufficient, what form should the public website
take? Should it be hosted on Sourceforge, Sourcelink, other? What features
should the website offer? (File respository, user-access controls,
discussion forums, news/annoucements, etc?

We will be distributing treeware response forms at the "Accelerated Layout
Techpanel" at ICU2004 on Wednesday 9:30-10:30am. Please come by, pick up a
form, and submit your feedback.

Regards,

...dtw


---
David T. Witkowski
Technical Account Manager
 
They are there:

hardCopyOptions(?hcHeader nil ?hcMailLogNames nil)

I'm not sure why it isn't documented - there was some discussion about
this years ago, but I don't think it was ever resolved (I've not
checked the latest documentation to see if it is in there now).

Andrew.

On 17 Sep 2004 12:45:33 -0700, stran@ime.net (sam) wrote:

Hi,

Are the options for the inclusion of the header page and email options
missing from the hardCopyOptions() command? In the cdsdoc document
version I am reading there are no previsions to turn off the above
functions.

Please help.

Sam
 
Yippieee,

I have the same problem and I'm in discussion with Cadence now since
3 Weeks.

See my previous posting:
http://groups.google.de/groups?hl=de&lr=&ie=UTF-8&frame=right&th=79f7b3aea7512dfa&seekm=2q2nnvFqhaduU1%40

I detect some more:
- It's only with Assura 3.1.2 Hotfix1 or USR1 not with the
Assura 3.1.2 Base installation
- In our environment the lvs run files are on a Network Appliance file
server.
- It happens only for already LVS clean cells not for cells
where layout and schematic did not match.

Can you confirm this?

Today my local Cadence AE filed a Program Change Request for this
issue, even if they can not exactly reproduce this behaviour of Assura
the PCR No. is #746442.

I would appreciate it if you could tell your Cadence AE to append
to this PCR.

Replies direct to
bernd.fischer@xignal.com

Regards Bernd


Rick wrote:
Im having a problem with Assura not being able to delete the files from the
previous run. Assura get hunk up trying to delete, the process "rm" runs
continuously. All of the files are gone except the .nfsxxx files. Unix rm
has the same problem. How should NFS be set up so this does not happen? I
want to talk to our sys-admins but Im not sure what to ask them to do.

Thanks

Rick
 
Rick wrote:
Im having a problem with Assura not being able to delete the files from the
previous run. Assura get hunk up trying to delete, the process "rm" runs
continuously. All of the files are gone except the .nfsxxx files. Unix rm
has the same problem. How should NFS be set up so this does not happen? I
want to talk to our sys-admins but Im not sure what to ask them to do.
You can system-trace your rm (using truss, tusc, or strace) , and your sysadmin can watch the logs from NFS daemon (and related kernel stuff), after he set them to be most verbose.
 
What spectrum should I expect when randomness is good ? (for instance with tperiod=vlogic_high=1 vlogic_low=-1, trise=tfall=1m, 10**5 cycles )?

fogh wrote:
//--------------------
// rand_bit_stream
//
// - Random bit steam generator
//
// vout: [V,A]
//
// INSTANCE parameters
// tperiod = period of stream
// seed = random number seed []
// vlogic_high = output voltage for high [V]
// vlogic_low = output voltage for low [V]
// tdel, trise, tfall = {usual}
//
// MODEL parameters
// {none}
//
// This model generates a random steam of bits.
//

module rand_bit_stream (vout);
output vout;
electrical vout;
parameter real tperiod = 1n from (0:inf);
parameter integer seed = 0;
parameter real vlogic_high = 2.2;
parameter real vlogic_low = 0 ;
parameter real tdel=0 from [0:inf);
parameter real trise=10p from (0:inf);
parameter real tfall=50p from (0:inf);

real next, vout_val, mintime,transition_accuracy;
integer bit;

analog begin
$bound_step(tperiod); //ensure the simulator will not step over

@ ( initial_step ) begin
next = $abstime + tperiod;
mintime=min(min(abs(trise),abs(tfall)),abs(tperiod));
transition_accuracy=1m; //this is dimensionless.
bit = $random(seed) & 1;
end

@ ( timer( next )) begin
bit = $random & 1;
next = next + tperiod;
if(mintime>0) $bound_step(mintime);
$discontinuity(1); //announce discontinuity of first derivative
end
vout_val = bit?vlogic_high:vlogic_low;
V(vout) <+ transition(vout_val,tdel,trise,tfall);
// V(vout) <+
transition(vout_val,tdel,trise,tfall,mintime*transition_accuracy); //not
accepted yet by spectre446.
end //analog
endmodule



fogh wrote:

Hi All,

I found the random bitstream generator in ahdlLib (category telecom)
to be not-so-random, and even obviously periodic with a big bad DC
offset from eqiprobability. This is with spectre from IC446.100.92,
and the verilogA in IC446 is the same as in IC5.

I came up with the following in an attempt to fix it, but I am new to
verilogAMS, so please review it. I know that handling of zero rise
time or fall time could be better, but I would rather the CDF
callbacks deal with this. (BTW: when, oh when, will those ahdlLib
symbol be deuglyfied ? )


//--------------------
// rand_bit_stream
//
// - Random bit steam generator
//
// vout: [V,A]
//
// INSTANCE parameters
// tperiod = period of stream
// seed = random number seed []
// vlogic_high = output voltage for high [V]
// vlogic_low = output voltage for low [V]
// tdel, trise, tfall = {usual}
//
// MODEL parameters
// {none}
//
// This model generates a random steam of bits.
//

module rand_bit_stream (vout);
output vout;
electrical vout;
parameter real tperiod = 1n from (0:inf);
parameter integer seed = 0;
parameter real vlogic_high = 2.2;
parameter real vlogic_low = 0 ;
parameter real tdel=0 from [0:inf);
parameter real trise=10p from (0:inf);
parameter real tfall=50p from (0:inf);

real next, vout_val, mintime,transition_accuracy;
integer bit;

analog begin
$bound_step(tperiod); //ensure the simulator will not step over

@ ( initial_step ) begin
next = $abstime + tperiod;
mintime=min(min(abs(trise),abs(tfall)),abs(tperiod));
//mintime=mintime+0.1f;
transition_accuracy=1m; //this is dimensionless.
bit = $random(seed) & 1;
vout_val = (vlogic_high - vlogic_low) * bit + vlogic_low;
end

//bit = abs($random) & 1;
bit = $random & 1;
@ ( timer( next )) begin
vout_val = (vlogic_high - vlogic_low) * bit + vlogic_low;
next = next + tperiod;
if(mintime>0) $bound_step(mintime);
$discontinuity (1); //announce discontinuity of first derivative
end
// V(vout) <+
transition(vout_val,tdel,trise,tfall,mintime*transition_accuracy);
//not accepted yet by spectre446.
V(vout) <+ transition(vout_val,tdel,trise,tfall);

end //analog
endmodule

 
Joon wrote:
I am simulating LNA+Mixer with a bias circuitry and digital controls.
The total design is huge.
I realized that a correct tstab setup gives a very fast simulation
results.
I am using 2110.1 MHz LO signals, 2110 MHz and 2110.05 MHz RF inputs
to simulate IIP3.
Can anyone tell me how to properly determine tstab?

thanks.
There is a convergence_radius VS iteration plot in the spectreRF appendix that show what a well converging steadystate (or QPSS) looks like. My guess is that you could increase your tstab if you did not get an exponential decrease in convergence radius with your first simulation.
BTW, did anyone write a little applet that generates this plot from the spectre log ?

Unfortunately, I wouldn t know how to set tstab upfront, knowing only circuit characteristics and overall transient/startup behaviour.
You could try this question on Ken Kundert's site.
 
envGetVal and envGetDefVal
is there is a difference in the return values
the user should have modified the variable settings.

Bernd

fogh wrote:
Hi All,

rather than bluntly use setEnvVal, I would like to first check wether
the user has saved something for this envvar in his .cdsenv
How should I do that ?
 
You can not do a truss on the rm
because the rm is here a child process of the
second Assura run where Assura itself is launched
from the UI out of the Design Framework.

We did a truss on icfb, but it does not help to
identify the problem.

Bernd

fogh wrote:
Rick wrote:

Im having a problem with Assura not being able to delete the files
from the
previous run. Assura get hunk up trying to delete, the process "rm"
runs continuously. All of the files are gone except the .nfsxxx
files. Unix rm
has the same problem. How should NFS be set up so this does not
happen? I want to talk to our sys-admins but Im not sure what to ask
them to do.

You can system-trace your rm (using truss, tusc, or strace) , and your
sysadmin can watch the logs from NFS daemon (and related kernel stuff),
after he set them to be most verbose.
 
fogh wrote:

What spectrum should I expect when randomness is good ? (for instance with
tperiod=vlogic_high=1 vlogic_low=-1, trise=tfall=1m, 10**5 cycles )?
As far as I remember _real_ random bit streams produce a flat spectrum
(white noise). This is just true for a very long period, so if you watch
over a shorter period of time, you should get a nearly flat spectrum with
two blops somewhere which are produced by the sharp transititions and the
flat plateau.

Sincerely,

Stefan

--
Dipl.-Ing. Stefan Joeres
Lehrstuhl für Integrierte Analogschaltungen
RWTH Aachen
Sommerfeldstr. 24
D-52074 Aachen

Tel: +49-241-8027752 (office)
Fax: +49-241-8022199
 
Rick wrote:
Im having a problem with Assura not being able to delete the files from the
previous run. Assura get hunk up trying to delete, the process "rm" runs
continuously. All of the files are gone except the .nfsxxx files. Unix rm
has the same problem. How should NFS be set up so this does not happen? I
want to talk to our sys-admins but Im not sure what to ask them to do.

Thanks

Rick
..nfsXXXX files are "created" when you (or some process on your behalf)
remove a file which is opened by another process. They're placeholder
names which disappear automatically when the process is done using them.

It's quite possible that this is a bug in Assura.

There's a utility around called "lsof" (LiSt Open Files). It's
installed on most Linux distributions; for other OSes, you will need to
have your sysadmin install it. Typing "lsof /path/to/.nfsXXXX" (from
the client machine) should identify the culprit.

Dave
 
I think it would get it if you do a truss -f which follows child
processes.

Normally .nfsxx files indicate that some application still has a file
open - it requires some sort of handle on the file if it gets deleted.
With local disk you can refer to a file via its inode, but an NFS
mounted disk requires a file name (I believe).

So almost certainly the problem is due to something not closing a file
when it should.

Andrew.

On Wed, 22 Sep 2004 14:45:21 +0200, Bernd Fischer
<""bernd.fischer\"@xignal-A%&HY%$v#&G=.de> wrote:

You can not do a truss on the rm
because the rm is here a child process of the
second Assura run where Assura itself is launched
from the UI out of the Design Framework.

We did a truss on icfb, but it does not help to
identify the problem.

Bernd
 
You're using too old a version of spectre. bsource was introduced
(officially) in IC5033. If you are using a version before IC50 MSR3
though, you'll get this (bsource was there, but as an engineering
release).

In practice you need to use IC5033 or IC5141 to use bsource. Your
design kit probably says this somewhere in the documentation...

Andrew.


On 22 Sep 2004 11:08:50 -0700, szekit@gmail.com (Szekit) wrote:

Hi,

In my resistor's model deck, I have the following:

r1 ( 1 12 ) bsource r=rsh/mf*1/(w-dw)*(1+pvcl*abs(v(12,2))+pvc2*v(12,2))*tfac/6

When I run with spectre simulator, it says that the v function is not
defined or being called recursively.

What is the problem here? Am I missing some files?

Thanks
szekit
 
That's what Rick an I already discussed direct.

'lsof ./*' (list open files)
and you will see that icfb is keeping the LVS run files open.

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
icfb.exe 1901 bernd 9r VREG 255,1462 671 6592030 ./index
icfb.exe 1901 bernd 30r VREG 255,1462 221 6592031 ./stat
icfb.exe 1901 bernd 33r VREG 255,1462 954 6592032 ./extr
icfb.exe 1901 bernd 35r VREG 255,1462 671 6592030 ./index
icfb.exe 1901 bernd 36r VREG 255,1462 221 6592031 ./stat
icfb.exe 1901 bernd 37r VREG 255,1462 954 6592032 ./extr

Bernd

Andrew Beckett wrote:
I think it would get it if you do a truss -f which follows child
processes.

Normally .nfsxx files indicate that some application still has a file
open - it requires some sort of handle on the file if it gets deleted.
With local disk you can refer to a file via its inode, but an NFS
mounted disk requires a file name (I believe).

So almost certainly the problem is due to something not closing a file
when it should.

Andrew.

On Wed, 22 Sep 2004 14:45:21 +0200, Bernd Fischer
""bernd.fischer\"@xignal-A%&HY%$v#&G=.de> wrote:


You can not do a truss on the rm
because the rm is here a child process of the
second Assura run where Assura itself is launched

from the UI out of the Design Framework.

We did a truss on icfb, but it does not help to
identify the problem.

Bernd
 
The .cdsenv search mechanism of DFII is the following

1. <inst_dir>/tools/dfII/etc/tools/<application/.cdsenv
2. [<inst_dir>/tools/dfII/local/.cdsenv]
optional if you have a /dfII/local/directory
3. $HOME/.cdsenv

What we do in our environment is, we use a project specific
..cdsinit file which loads a project specific .cdsenv file
with envLoadFile( "<path_to>/.cdsenv" ).

So the user can have a .cdsenv file in his $HOME directory
and the user .cdsenv settings do overwrite the project
specific settings. The user is free to do this if he wants
and yo do not overwrite specific user settings with this way.

Maybe this is worth to think about for you.

Bernd

fogh wrote:
Bernd,

In fact it is possible that the user has specified in his .cdsenv the
same value as the default. So envGetVal==envGetDefVal , but I should
still not call envSetVal.
Do you have an idea on how to check if the user has specified something
at all (no matter wether it is the same as software default or not).

Bernd Fischer wrote:

envGetVal and envGetDefVal
is there is a difference in the return values
the user should have modified the variable settings.

Bernd

fogh wrote:

Hi All,

rather than bluntly use setEnvVal, I would like to first check
wether the user has saved something for this envvar in his .cdsenv
How should I do that ?
 

Welcome to EDABoard.com

Sponsor

Back
Top