What's a ".pm" file? I don't recognize that suffix. Without knowing the contents of the file (don't post it here, because that would probably break a license agreement from whoever provided you with the model) - comments in the file might give some clue as to what simulator it was intended for - it's very hard to tell you what to do.
Wouldn't the best place to get the 22nm MIGFET model be from whatever foundry is providing the 22nm process?
In reply to Andrew Beckett:
In reply to Saeed Gharagoz:
My guess in that case is that you're using too old a version of spectre.
If I do "spectre -h bsimsoi" with spectre from IC5141, it says (at the top):
B3SOI is an SOI model developed by U.C. Berkeley based on bsim3v3. B3SOI devices require that you use a modelstatement. This is the B3SOI version-3.0/3.11 model.
In MMSIM71 version of spectre it says:
B3SOI is an SOI model developed by U.C. Berkeley based on bsim3v3. B3SOI devices require that you use a modelstatement. This is the B3SOI version-2.23/3.0/3.11/3.2/4.0/4.1 model.
In MMSIM72 version of spectre it says:
B3SOI is an SOI model developed by U.C. Berkeley based on bsim3v3. B3SOI devices require that you use a modelstatement. This is the B3SOI version-2.23/3.0/3.11/3.2/4.0/4.1/4.2/4.3 model.
So you need something more recent than spectre from IC5141 if you want version 3.2 of bsimsoi. (see many posts on this forum, or solutions on http://support.cadence.com ) which talk about using spectre from MMSIM streams.
Hello Saeed, How did you work with .pm file of finfet in spectre??
I got 32nm model of finfet from website http://ptm.asu.edu/. I don't know how to use this model in spectre for circuit simulations.
Can you tell me about this.
In reply to Vandana Khanna:
After making a small correction to the soi*.pm files :
.model nmos1 nmos1 level = 57
.model nmos1 nmos level = 57
and similarly for all of them (the third word should be nmos or pmos, not a repetition of the second word), I then just used it directly in a spectre netlist (this is testfin.scs)
// testfin.scsinclude "32nm_finfet.pm"M1 (D G 0 0) DGNMOS w=1u l=32nVDS (D 0) vsource dc=1VGS (G 0) vsource dc=0.5dc dc
Hello Andrew,Thanks.But before doing simulations, I need to integrate a particular model of a new device like finfet into spectre.
I found following line in one of the doc about spectre.'The Spectre Compiled Model Interface (CMI) option lets you integrate
new devices into the Spectre simulator using a very powerful,
efficient, and flexible C language interface. This CMI option, the same
one used by Spectre developers, lets you install proprietary models.'Do you have any idea about this??
The ® Spectre®
circuit simulator supports dynamic loading of device models. This
feature allows you to dynamically load device primitives (stored in
shared objects) at run time. This is useful for developing and
CMI is now shipped with Spectre. The installation is done as a manual step after the Spectre product installation.
To install CMI, run the cmiExtract script located in the following directory:your_install_dir/tools/spectre/bin
You must have a valid Spectre CMI license
to run this script. You are prompted to specify a directory in which
the CMI hierarchy is to be installed, with the default being your_install_dir/tools/.
Once the extraction script is complete, the CMI hierarchy can be found in the directory spectrecmi in the specified location. The README files are in the spectrecmi directory and the CMI manual, cmiprint.pdf, is in spectrecmi/doc/. See the CMI manual, Compiled-Model Interface Reference for information on how to proceed.
In reply to 3gh2:
Using CMI is only necessary if you are going to integrate a model (written in C/C++) into the simulator which doesn't exist already. That would typically only be done by somebody who has detailed modelling and software experience, and only if a standard model doesn't exist.
You're talking more about using an existing model card, i.e. a file containing model parameters. Are you trying to use this from the Analog Design Environment or by using spectre from the command line? Normally if using ADE you'd have a design kit which would take care of tying up the device symbols and the corresponding models. Knowing more about your use model and what you're actually trying to do will help me (or someone else) give you a sensible answer.
Thanks Andrew and Saeed.
Let me try to explain my problem once again.
I want to do some circuit simulations using finfet as a device. I do not want to build device model, but I want to use the existing models of finfet in my circuit simulations.
I found 32nm and 45nm finfet models on http://ptm.asu.edu/
Toolset I have in my university is Cadence ADE , where I can use spectre to do circuit simulations.
Now the point is how I can integrate the model of finfet in spectre?? Suppose I want to build any combinational /sequential circuit using finfet as device and do its power analysis, I need to pick finfet symbol from a library, and while simulating, spectre should pick finfet's corresponding model.
So now, if could help me regarding this. please let me know how should I proceed with this?
Thanks in advance,
email id: firstname.lastname@example.org
In reply to Farshad78:
To answer Vandana's question, all you normally need to do is to have a component which netlists with the same model name as in the file (e.g. use analogLib/nmos4/symbol and then set the model name to match the name in the file, and set the w and l appropriately). Then in ADE use Setup->Model Libraries and give the path to the model file. Note that spectre can read SPICE syntax files.
Note I did need to make a small correction to the file because the syntax was wrong (see earlier my earlier post in the thread on this), and then it worked OK.
Normally you'd have a design kit which takes care of the mapping between symbols and model files, but in the absence of this using analogLib components would be OK.