tools
 |
Putting Pspice to the Test
A quick look at OrCAD's Pspice tool yielded satisfying results in ease of use and robustness--revealing welcome changes in analog simulation.
by Tets Maniwa
| |
|
Once again I put on my engineering hat to look at engineering tools, here evaluating OrCAD's Pspice simulator. Formerly Microsim's
product, Pspice was incorporated into OrCAD's tool family when OrCAD bought the company last year. The simulator remains unchanged, though. The package evaluated here includes the Pspice A/D & Basics+ Release 8.0, plus the Microsim Pspice Optimizer. In general, after having undergone numerous refinements, the latest version contains many extremely usable features. It integrates the schematic entry and simulation engines into a compact presentation, allowing the designer to work essentially from a single
window.
Pspice comes in a slide-out box with manuals, a CD-ROM, and a hardware key for the PC version. I installed it on a Gateway 2000 with a 300-MHz Pentium II, 512 Mbytes of RAM, and Windows 95--a platform similar to that used for our first simulator benchmarks last year. The program uses a standard install wizard from the CD and requires no unusual features or noticeable changes in the operating environment. I recommend freeing up at least several hundred megabytes of hard disk space to
accommodate the large number of data, libraries, and results files that the program generates.
After installing the program, I reacquainted myself with the tool functions in a Spice-based simulator. The nice tutorial illustrates the use of many of the analysis features and describes the basics of developing various subcircuits. The only drawback is that the tutorials are somewhat too simple and can leave you wondering what went wrong if you're unfamiliar with some of Spice's operating
details. For example, the specifications state that the Mosfet models can use BSIM 3V3 parameters, the latest versions of scalable models for submicron processes. However, neither the printed manuals nor the CD manuals explicitly indicate how to invoke the models and components in a design, or how to change to the BSIM models from other model types. To invoke a model, the user must call out the model type in the device line, then fill in all of the parameters in the .model line(s) in the netlist.
Fortunately, the drawbacks of the tutorials don't extend into the simulator, which overall offers impressive presentation and design capabilities. Pspice comes with a large library of functions and models. Some of the models include modifiable parameters; the device performance tailors itself to match actual performance. The libraries include various behavioral analog and mixed-signal models for system-level modeling, a number of digital components, memories, and models of programmable logic
devices. Pspice supports the development of the device-level schematics and netlists for analog designs, as well as the detailed modeling of complex mixed-signal subsystems. As with most detailed simulators, however, you wouldn't want to use this tool for simulating large, complex digital circuits. The detailed circuit equation calculations and extremely small time increments consume amounts of simulation time that would be unacceptable for any large design. Spice-based programs remain useful principally in A/D
mixed-signal circuit design, where the emphasis falls on the A for analog and not on the D for digital.
Along with the customary analog and mixed-signal design, Pspice can provide detailed and very high-precision simulation of digital circuits--especially when the event simulator isn't accurate enough to reassure the designer with respect to possible outcomes of the design. The availability of lossy transmission line models and the ability to import a back-annotated netlist from other
tools makes it possible to use the tool for detailed verification of (small) critical paths in designs of deep-submicron digital circuits or mixed-signal portions of a high-performance system on a chip.
Some of the features I like in this version of the simulator include integrated analysis and the probe function for waveform viewing, which are similar to some of the HDL simulators' capabilities. The ability to annotate operating points directly into the schematics provides quick sanity
checks on circuit operation. When the user sets up a circuit for analysis, the program creates a netlist from the schematics and automatically launches the waveform viewer upon completion of the simulations.
In addition to Monte Carlo and sensitivity analysis, the optimizer function for automatic and directed circuit optimizations enhances the tool. Rather than having to develop a set of scripts and list of components and values for separate evaluation, the optimizer function adjusts the
values of components to obtain an output value within an acceptable tolerance band. The process is similar to the base simulation algorithm convergence on device operating values, which is much easier than poking a value into the netlist and resimulating the circuit. Although this function may not be sufficient to handle very high precision circuits, the intermediate results improve upon the manual alternatives and help to identify quickly a range of convergence. I think the optimizer function justifies the
time and effort needed to learn to use it; the payoff yields more time available to the designer for design exploration and trade-off analysis.
Tool time
I started this evaluation by developing a band-gap reference, knowing that completely balancing the contributions of the positive and negative temperature coefficients in its design is difficult. Usually the reference requires amplifying the differential voltage across two transistor emitters with different current
densities--created by mismatching the emitter areas--and running the signal through multiple amplifier sections. Because of the multiple feedback loops in the circuit, some simulators can't converge on the stable bias conditions. Pspice, having a fairly large capacity, converged quickly in my reference circuit. The large amount of RAM and the speed of the computer certainly improve simulation speed; I couldn't create a circuit large enough to choke the simulator. Even the optimizer function took no more than a few
minutes to complete. Because of the relatively small size of my test circuits and the speed of the system, I didn't measure the actual time for the simulations but it seemed very fast.
After finishing the band-gap reference, I built up a nonoverlapping clock generator for a switched capacitor filter. The clock generator didn't work at first because one model represented a bus as a single output line. The tool generated an error message that said that a bus and a line can't be connected or
that the number of signals didn't match. When the clock was completed, I started on a set of switched-capacitor filters. The libraries have a number of switched-capacitor building blocks, allowing me to compare the performance of my design with other such filters.
The nature of analog and mixed-signal design requires designers to use many device characteristics to perform a function. Analog designers use devices in all operating ranges--not just at on and off. Accounting for device
variations caused by manufacturing tolerances hampers the development of a good IC model. Although the tool automates some of the tedium out of analog design, the work remains detail-oriented and process- and device-sensitive. Pspice does contain a number of built-in functions that assist in the full evaluation of a design. Monte Carlo analysis helps to identify the sensitive components and those areas in the design that need complete analysis to ensure a high-yield design.
After designing
and modeling the switched-capacitor filter sections, I considered increasing the system complexity by identifying more function blocks to add to the design. A typical signal processing system might contain a number of filter sections and amplifiers feeding an analog-to-digital converter and referenced to a band-gap reference circuit. The digitized signals are then passed to the DSP section of the system for further processing. I found that even with the high levels of automation and analysis built into
Pspice, I ran out of time before I could complete the converter sections--not to mention the interfaces to the digital sections. Unfortunately, designing at the transistor level requires a lot of drawing and editing of schematics. The macro functions, the various shortcuts for replicating sections of a design, and the ability to develop designs with hierarchy all help to manage the design complexity. Nevertheless, the number and size of the drawings soon became overwhelming, even with OrCAD's design manager.
Overall, I liked Pspice's features. None of the circuits I designed suffered convergence problems, although it wouldn't be hard to create a design too large or complex for any Spice simulator. At least on my workstation, the tool could handle any circuit I threw at it.
To voice an opinion on this or any
Integrated System Design
article, please email your message to
jeff@isdmag.com.
|