Designing analog ICs can be a time-consuming and nit-picky process. As with the design of digital ICs, speed, power, and area (SPA) considerations are important. However, in the case of analog ICs, added challenges include gain, bandwidth, signal distortion, noise sensitivity, power supply sensitivity, thermal sensitivity, and more.
All the major electronic design automation (EDA) tool suppliers offer solutions for analog IC design. This FAQ does not look at those tools. Instead, it looks at some lesser-known analog IC design tools, including a web-based tool and open-source tools, and closes with a brief look at how machine learning (ML) tools for analog IC design.
The Analog IC Design Automation (AIDA) tools support the design flow from circuit-level specifications to a physical layout description. ADIA includes two primary components, AIDA-C and ADIA-L:
- AIDA-C is a circuit-level synthesizer that automates circuit sizing based on multi-objective optimization kernels that include user-defined worst-case corners. The performance of the result can be measured using Eldo, HSPICE, or Spectre simulation.
- AIDA-L uses the sized circuit and generates the complete layout by placing the routing of the devices. It also implements design rule checking (DRC) and layout versus schematic (LVS) checking. It also includes a parasitic extraction (PEX) procedure for parasitic estimates for use in layout-aware optimization procedures.
Web-based tools
Mosaic is a toolset for designing and simulating analog ICs. It’s web-based but can also be used offline. Designers can manage PDKs and IPs in their own server environment. Mosaic can be installed as an offline desktop app, as an on-premises hosted instance, or in other configurations. Designers can collaborate with colleagues simply by sending a link.
The simulation interface in Mosaic allows designers to run basic simulations and plot the results with a single click. More advanced analysis and collaboration are supported using a Jupyter Notebook environment.
The simulation interface is based on a Python API, and the open-source version of MOSAIC supports NgSpice and Xyce. Support for commercial simulators and PDKs is optionally available. The streaming simulation API can provide plotting while the simulation is running enabling rapid identification of potential problems and speeding the design process. In addition, real-time back-annotation can run short simulations in the background, like operating point and frequency analysis, and immediately annotate the schematic with resulting values for voltages, currents, gains, bandwidths, and more.
Open-source tools
Oceane is an open-source EDA (OSEDA) tool for sizing analog circuits. from the Paris 6 Computer Laboratory. It includes a library of parameterized topologies of analog functions like operational transconductance amplifiers (OTA), operational amplifiers, comparators, voltage regulators, filters, switches, and more. The user selects a technology and a topology and sets the value of the target performance parameters.
Oceane provides the sized topology in the form of a SPICE netlist and estimates of the performance. It also provides a set of SPICE-compliant benchmarks to validate the estimated performance. Oceane can also be used to perform a statistical analysis to reach a centered design that will have a higher fabrication yield.
Coriolis is a place and route EDA tool available as open-source software under the GPL license. It can be used for analog and mixed-signal designs. And it can be used together with Oceane. Designers can use a netlist sized with Oceane and design the layout using Coriolis (Figure 2).
ML for analog IC design
ML is being actively investigated to improve the automation of analog IC design. There are three primary areas being pursued:
- Neural networks (NNs) from shallow to deep complexities using supervised and reinforcement learning techniques
- Multi-objective optimization with several heuristic- and stochastic-assisted search strategies like Bayesian, Gaussian process, genetic algorithms, particle swarm, and simulated annealing; simulation-based optimizations need a circuit simulator to find a solution
- Hybrid methods that combine NN and global optimization techniques can achieve results comparable to or better than multi-objective optimization but with faster implementation times
A classification scheme for the application of ML to analog IC design is illustrated in Figure 3. Supervised and hybrid learning are further broken down into three sub-categories. Supervised learning categories include existing database, closed region random generation and global random generation. Hybrid learning categories include IC simulation replacement, NN architecture design, and evolutionary algorithm assistance by NN.
Summary
Analog IC design can be challenging. Using good tools can help take some of the pain out of the process. This FAQ has reviewed a selection of design tools from lesser-known design houses that can be used in place of the tools available from the mainline EDA tool suppliers. It also reviewed some of the efforts working to apply ML to analog IC design.
References
A Review of Machine Learning Techniques in Analog Integrated Circuit Design Automation, MDPI electronics
Analog integrated circuit design automation, AIDAsoft
Mosaic
Oceane, Paris 6 Computer Laboratory
Open Source Hardware and EDA Tools for Analog/Mixed-Signal Design and Prototyping, HAL