Toolchain

SPICE Simulator
Our recommended open SPICE simulator is Ngspice, it is available for different operating systems and has been used widely and reliably for many academic and industry projects. Though other open simulators are acceptable, if different please specify the simulator used in your circuit entry.

Please for every circuit entry provide the simulation netlist and test-bench used so that others can simulate, analyze your results and contribute as well, do not use closed simulators or proprietary formats for netlists/testbenches as others in the community would not be able to reproduce your results and give back constructive feedback.

SPICE PDK Models
Because we need to use open SPICE models that allow everyone to get familiar and gain some experience with integrated circuits, we are currently using the educational models from the Arizona State University Predictive Technology Model Project. Specifically, we are using CMOS 130nm models employed with their default parameters. (Please download them to use them for ICclopedia simulations)

Our chosen 130nm node is a fair balance between analog and digital, as compared to more advanced nodes which favor digital density over analog performance, or the latest 3D FinFet CMOS processes which are often closed due to their more recent development.

You can download all of the SPICE models used in ICclopedia from here.

While other models are available (e.g. FreePDK), these often require academic e-mail accounts for access which makes it harder for those just getting started which is our main purpose with ICclopedia.

Schematic Entry
We use EEschema as our schematic entry tool (some reference schematic symbols can be found here). EEschema allows for professional schematic plotting in SVGs which we can then post-process and upload to ICclopedia. It also offers netlist generation which can be used directly in our SPICE simulator which is very convenient. Minor post-processing of plotted schematic SVGs from EEschema is performed with Inkscape.

Please feel free to use other schematic and post-processing tools as long as we can keep the schematic symbols consistent across posts. Here are our current symbol conventions.

Numerical System's Modeling
In certain instances we will use numerical modeling to illustrate the dynamics of systems at a higher level or simply to describe circuit design procedures in a procedural style. We intend to use Python for these purposes or any other open programming language otherwise specified in each circuit post.

Please let us know your feedback in the |discussion tab for this page.

__NONSFOOTER__