Skip to main content

Being Prepared for Circuit Simulation with SPICE Model Libraries

Picture of a model airplane along with model airplane pieces in SPICE model libraries


My very first experience with a model was a plastic model airplane kit that I built together with my dad. Well, OK, it was mostly built by my dad since I was pretty young at the time. I went on from there though to build all kinds of different models of cars, ships, planes, and rockets. I didn’t realize it at the time, but those years of building all of those models would one day play a key role in my engineering career. Not only was I getting valuable experience in building things, but the concept of how a model could be used to represent something else was being firmly established in my mind.

Sadly I don’t spend much time building model airplane kits as I would like to anymore. I do spend a lot of time working with a wide assortment of CAD models ranging from schematic symbols and components to PCB footprints and STEP models. Another type of model that gets a lot of my attention is SPICE models for circuit simulation. Let’s take a look at what a SPICE model is and what is involved when you work with SPICE model libraries.

What Makes Up a Model in SPICE Model Libraries?

When you are running a SPICE simulation, all of the necessary data is collected from your schematic and put into a netlist for the SPICE engine. This netlist contains many lines of data that are organized into specific groups including:

  • Identification Information: Lines of text that identify the simulation that will be run.

  • Simulation Commands: Specific keywords in lines of text that instruct the simulator what to do.

  • Netlist Connections: A list of connections, or nodes, that connect the pins of the components together.

  • Model Descriptions: Lines of text that define the electrical properties of the devices being simulated.

The model description identifies each component, such as a resistor or a capacitor, to the SPICE simulator. The model description also includes terminal (pin) information, the component’s value, operating temperature, etc. The model data, as well as the amount of data, will vary depending on the type and complexity of the component. Simple models could be a single line of text while more complex models could contain hundreds of lines of text.


Picture of PCB components and routing in SPICE model libraries

For a successful PCB layout, you should be simulating your circuits in SPICE first


Creating, Managing, and Working with Libraries

SPICE models can be contained individually within a model file, or grouped together in a library file. Individual model files are ideal when downloading specific model files from vendors, or working with individual models in directory libraries. When multiple models are grouped together in the same file, the file is sometimes referred to as a SPICE model library.

When working with SPICE models it is best to keep them organized in a library directory structure. There are a number of naming conventions for these directories that can be used. Directories can be named according to component vendors, or families of parts such as “resistors,” or whatever format best fits your circumstances. In some cases, users will organize multiple models in a single SPICE library file, and store those files in a library directory. With multiple models in a single library file, you can work with a flatter library directory structure.

Although SPICE model files and SPICE library files are often identified by unique file names, the SPICE tools themselves will use the data no matter what the source. File naming conventions like “model” and “library” are designed for the ease of the user and don’t factor into the SPICE simulator itself.

The important thing in SPICE model library management is to organize your data in a way that best fits your company and your standards. This way you know where the appropriate models are for associating with new schematic symbols that are built so that your schematics are ready for SPICE simulation.


Screenshot of PSpice report in SPICE model libraries

Graphical reporting in PSpice


How the Best SPICE Software Helps You

There are a lot of versions of SPICE available for you to work with, and you should look for the version that can help you the most with attributes such as usability and the availability of SPICE models. You will find it extremely helpful to be able to start out with an established library of SPICE models to work with so that you don’t have to immediately build your own.

Additionally, having a SPICE tool that can easily import various versions of SPICE models from component vendors or other sources will also be very helpful. Another useful feature in SPICE tools are model creation utilities that will easily guide you through the process of building your own SPICE models and libraries.

PSpice, part of the Cadence design tool suite, has been designed to be the most helpful and easy to use SPICE tools on the market today. PSpice contains over 34,000 simulation-ready models plus datasheet-driven modeling wizards that enable the creation of simulation-ready models for common components and structures. Additionally, the PSpice environment can be customized to best fit your needs with Cadence’s open API.

If you’re looking to learn more about how Cadence has the best SPICE model library solution for you, talk to us and our team of experts.