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.

cadence ic5 simulation - howto and discussion

Status
Not open for further replies.

electronrancher

Advanced Member level 1
Joined
Mar 24, 2002
Messages
447
Helped
46
Reputation
92
Reaction score
11
Trophy points
1,298
Activity points
6,935
well install and general debugging have their threads, so i think this topic needs a different one to keep everything focused.

i got simulation working tonight with spectreS on the NCSU models of the AMI 1.6u process. no replies to my other post about how to get the models running, so i guess that most others have these troubles. first my howto.

1) New library "test" made with lib manager, attached to AMI 1.6u tech library since NCSU CDK is up & running. This process is the cheapest at MOSIS, so I will probably send my "hobby" designs here once this is all running smoothly..

2) New cellview "nsweep" created, and schematic created to virtuoso. Added one nmos from the NCSU Lib (default was 4um/1.6um). Added 2 dc sources, one for drain (called Vcc) and one for gate (Vgate). Threw in the GND arrow and Vcc bar, and wired it all up. This is just a simple test bench to characterize a FET.

3) Saved schematic and ran Analog Env. Changed simulator from hspice (NCSU default) to spectreS (likes the models), since I dont have hspice yet.. Added a new "output to be plotted", and chose the drain of the nmos. This will give us current into the drain. Choosing the wire will give you voltage at that node. Set parameters of Vcc supply to be DC=>5 and Vgate supply to be DC=>2.5 .

4) Analysis options lets us choose dc sweep, and we decide to sweep Vcc. (choose the supply from schematic, just click & go). Sweep from 0-5v while our gate stays at 2.5v. You all know this plot of Idd/Vdd I'm sure.

5) NOW ADD MODELS FROM NCSU KIT! This was my old mistake, I assumed IC5 is smart enough to link from TechLib. Nope!
"Setup model path" from menu, and you can delete the two generic paths it gives you - mine were empty so it complained about it. Now add the NCSU kit from /local/models/spectre/nom. This means the nominal process run, an average device.
Note:You can also choose fast (hot transistors, thin gates or heavy doping makes k' big) or slow (the opposite, low k') directories to see how your IC works over all process corners.

5) Run the sim. I see about 141uA flat when i run transient analysis from 0-15ns, Vg=2.5, Vd=5. Not bad for a little 4u/1.6u nmos. The DC sweep we were setting up before gives a nice little plot so you can see the classic mosfet sweep. Look at the "flat" part (saturation) to estimate output resistance and, well you know your physics already i guess..
Again, looks pretty nice, I like AMI's process so far.

Now for the bad part. Sweeping 1 NMOS took 9 seconds on an athlon 1800 with 1/2GB ram and 2GB swap! Setting VGate to a variable, and running paramtric sweep to give me the whole set of nmos curves took almost 10 minutes for 50 sweeps!! This is garbage in my opinion!

Has anyone else gotten results like this? How will I simulate top-level 5k transistor designs? The spectre manual suggests 256MB ram for 1M transistor simulations, or something very impressive - I didn't think they meant it would take 3 days!

I am wondering how long it takes to sweep the NCSU nmos on everyone's system. I am using SuSe 8.2 and KDE. I closed the schematic window and only had open - icms, Analog Environment, and... that's all i think

I would like your feedback, everyone - I will take some more experiments and let you know if i am mistaken, and spectre is not garbage. Maybe i'll try hspice, but I used that one before and decided it pretty slow a long time ago.
 

model library???

hi,

in the spectre user guide is written, that basic simulation models like bsim3v3 are already implemented in spectre. or do i need for simulation an external model library? if yes, are these models part of the NCSU design kit?

greetings,
hqqh
 

the ability to use bsim3 models is what is in spectre. it can also read berkeley spice, and a few others i believe. the ncsu kit gives the models in spectre format - they are all derivative, ie the same info..
 

I have heard about a similar issue with Smash ported from Win to Solaris. The performance falls down a big factor related to the Spec2000 rating. The reason mention was that the port was done by automatic translation of the system calls.

Prob. that is the same story for ic5?
 

Wow, I hope not. If I moved my entire company to this new platform and found it this unusable, there would be some serious lawsuits pending...

Lucky me I can just throw it away - see, trial use of software DOES help protect the small guy!

I saw some NT tools of IC446 - is that true? Anyone using those? How do they perform?
 

No NT for ic4.4.6,

have not seen anything.

One story with ic4.4.2 was that the netlist procedure of the analog artist fails because the pins in the schematic database and the symbol database are retrieved by the order they are stored. So the identification of a pin in the symbol to the schematic pin was done by position in the database. So if you edit your schematic or symbol pins it could be that you have a matching list of pin names but the pins order is wrong. That is because the database does not store the pin name string. So you netlist was wrong because the hierachical traversal screw up with the wrong connections. Cadence was not able to fix it in the database architecture. Instead they supply somewhere in ic4.4.3 a skill fix. The reason is that the source code of basic tools like composer are untouched now for more than 5 years. Lack of EDA programmers could be one reason.

That seems to me also a reason to make use of automatic translation routines. They hardware will compensate for in the near future!! That is what programmers think off. They play small testcases on only 6 month old machines. That is out industry.
 

no, i think this is just a case of bad spice implementation.. maybe bad everything, i dunno
 

electronrancher said:
I am wondering how long it takes to sweep the NCSU nmos on everyone's system. I am using SuSe 8.2 and KDE. I closed the schematic window and only had open - icms, Analog Environment, and... that's all i think

I would like your feedback, everyone - I will take some more experiments and let you know if i am mistaken, and spectre is not garbage. Maybe i'll try hspice, but I used that one before and decided it pretty slow a long time ago.

Firsty, thanks a lot for your help, electronrancher! Without your help, I couldn't make the NCSU tools work. I will try your case tonight.

My machine is PIII800M, 384M ram and 800M swap, redhat 8.0. BTW, I got some problem when adding instance, the component browser doesn't work, I click the instance name in that browser, but the corresponding name doesn't show up in add instance diag. So I have to use lib browser. I also got some button in analog environmont don't work, such as delete. Do you think that is due to redhat 8.0?
 

My machine is PIII800M, 384M ram and 800M swap, redhat 8.0. I run you case

1. DC analysis for Vcc 0-5V , 2 seconds
2. Vgs sweep 0-5V 50 steps, less than 1 mins.

I think maybe you should use redhat.
 

That component browser problem is why I threw out RH8 - it uses the right kernel, but Xwin has an error that chooses a font of size 0 for "pasting" into a text box. Look at your ICMS window - don't you get hundreds of warnings?

How did you fix it? Maybe RH is faster than SuSe..

PS - What video card do you use? I read a post that said the graphics implementation for my card was crap, so everything is very slow.. Maybe I'll try a new one..
 

My video card si ATI radeon mobility 8M. My computer is IBM x22 laptop. What's you video card?
 

electronrancher said:
That component browser problem is why I threw out RH8 - it uses the right kernel, but Xwin has an error that chooses a font of size 0 for "pasting" into a text box. Look at your ICMS window - don't you get hundreds of warnings?

How did you fix it? Maybe RH is faster than SuSe..

You mean you can't use component browser either. I use lib brower instead to solve this problem. Maybe I should try redhat 7.2.
 

electronrancher said:
That component browser problem is why I threw out RH8 - it uses the right kernel, but Xwin has an error that chooses a font of size 0 for "pasting" into a text box. Look at your ICMS window - don't you get hundreds of warnings?

How did you fix it? Maybe RH is faster than SuSe..

PS - What video card do you use? I read a post that said the graphics implementation for my card was crap, so everything is very slow.. Maybe I'll try a new one..

I use rh8 and it works ok.
I had that problem with component browser. When selected a component from analogLib, I could not paste it into the schematic entry window.
This problem was solved by unsetting the LANG env variable.
 

Where to unset Lan env? .cdsenv?
 

playdc2002 said:
Where to unset Lan env? .cdsenv?

you can unset from your shell
for bash :
$LANG=
$export LANG
$echo $LANG
 

srik said:
playdc2002 said:
Where to unset Lan env? .cdsenv?

you can unset from your shell
for bash :
$LANG=
$export LANG
$echo $LANG

Thanks a lot! It works and saves for at least 10 hrs. Coz I want to reinstall redhat 7.2 to solve this problem. But it works only for typing in terminal windows. When I add above commands in .bashprofile so don't have to type it every time, it doesn't work.

Sirk, any ways to add above setting in something like .bashprofile or env file?
 

.bash_profile
in your home
 

srik said:
.bash_profile
in your home
As playdc2002 said, it does not work. $LANG can not be set in .bashprofile or .bashrc.
 

add this :
unset LANG

in <home>/.bashrc
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top