This white paper describes the use of machine learning (ML) techniques in the Siemens EDA Solido™ Characterization Suite that accelerates production quality .lib characterization and verification at advanced technology nodes. These ML techniques address some of the fundamental challenges with the demanding .lib requirements of modern technology nodes and their validation.
ML-enabled .lib production and verification with Solido Generator and Solido Analytics
The Solido Characterization Suite uses production-proven ML techniques to accelerate library characterization and verification of standard cells, memory and custom blocks. The two main components of the suite are Solido Generator and Solido Analytics.
Solido Generator uses ML methods to accelerate the overall library characterization process by instantly generating libraries for additional PVT corners after the initial characterization. Solido Generator uses existing SPICE-characterized libraries as anchor data to build ML models of the libraries and produce new PVT libraries.
Prior to generating the additional PVTs, Solido Generator analyzes the anchor corner set to determine the optimized set of libraries needed for additional PVT generation. Since the tool uses a set of pre-characterized .libs, it eliminates the dependency on SPICE netlists or subcircuits and the need to replicate characterization settings to match that of the library vendor. Solido Generator runs about 100 times faster than traditional SPICE.
The ML-enabled methods in Solido Generator give users the “best of both worlds” by generating production-accurate LVF .libs for additional PVT corners in a fraction of runtime compared to brute-force Monte Carlo or approximated Monte Carlo methods, while retaining accuracy equivalent to its input anchor .libs. Solido Analytics is an advanced library validation, analysis, and debugging solution that includes not only fast, parallelized, and comprehensive static rule-based checks, but also employs an ML outlier detection tool that “learns” the expected characterized values in a library and automatically detects errors like outliers or non-monotonic behaviors in the characterized data that typically go undetected with other tools.