Netgen 1.5

Table of Contents

Stable Version Release Notes
Older Version Release Notes
Things To Do
Bug Fixes

Netgen version 1.5 Release Notes

Version 1.5.76 effectively completes the major development of netgen as a commercial-grade tool. All remaining revisions will be bug fixes or minor enhancements.

Version 1.5.9 started a major development effort, which was largely completed by mid-April, 2015. This included a complete revision of the command syntax, using a common method for describing cells and for distinguishing cells in one compared circuit from those in the other, without ambiguity. Problems with the resolving of automorphisms in a hierarchical cell were resolved. Property matching was completely overhauled, with a new set of routines for handling arithmetic expressions in properties. Improved the matching of subcells in the hierarchy and the matching of pins between compared cells, with considerably less flattening of cells.

Version 1.5.38 largely completes the development effort started in 1.5.9. Device parallel and serial combinations are the one major remaining feature that has not yet been added. This version has successfully completed full-chip LVS runs, in conjunction with extracted hierarchical SPICE netlists from Magic-8.1.

Version 1.5.70 completes the modernization of netgen by adding complete handling of serial and parallel device networks. It is fair to say that this update makes netgen as capable as any commercial tool available. It only remains to improve the user interface somewhat.

Netgen version 1.4 Release Notes

Version 1.4.0 is a first cut at transferring the principal netlist for LVS from sim to spice format, removing the built-in device classes in favor of building device classes on the fly from device models as the file is being read. Version 1.4.0 supports 4-terminal devices, and true 2-terminal capacitors and resistors. It reads and writes device properties, although the LVS does not yet support comparison of device properties. It properly parses continuation lines in SPICE files. It auto-detects SPICE files from the first character "*" in the first line, not from file extensions. Later revisions will expand on LVS with subcircuits and hierarchy, and comparison of properties.

Version 1.4.5 completes the initial implementation of property matching, although some additions are needed to allow a detailed setup of non-default properties to match.

Version 1.4.6 implements true fully-hierarchical LVS. Revision 6 is a first cut at the LVS hierarchy, and some substantial work is required on presentation of the results. However, the basic method is in place. Cells that either match by name or are declared matching in the setup file are matched separately, while subcircuit cells whose matching cell in the opposing top-level circuit is unknown are flattened. Additional work is needed to check the port order of the two calls, and force a correct mapping between them.

Version 1.4.14 adds the port ordering feature. Netlists derived from two sources that may not agree on the order of ports to a cell can be matched by re-ordering the ports in one netlist to match those of the other, after the cell contents have been compared and verified.

Version 1.4.23 implements cell hierarchy flattening for subcircuits that cannot be matched. In addition, global nodes are properly handled through the flattening process, so that circuit that do not match because, for example, one circuit uses global variables for power and ground while the other uses local nodes passed to subcircuits through the port list, will match after all subcircuits have been flattened.

Version 1.4.35 fixes numerous bugs in the hierarchical LVS, flattening, and global node handling. In addition, this version implements a new output format with side-by-side comparison of the two circuits. Other fixes and enhancements to SPICE netlist reading have been made, such as parsing of ".include" and ".global" keywords, and keeping instance names to facilitate tracing problems back to the source schematic or layout.

To-Do List for Netgen version 1.5:

Bug Fixes from previous versions:

Versions 1.4.23 through 1.4.33 were especially buggy. They used the "lvs" command with hierarchical comparison by default, although the hierarchical comparison was unfinished and had many errors and inconsistencies. Version 1.4.35 was the new standard. Version 1.5 supercedes all versions 1.4 as the stable code as of April 2017.


Last updated: October 11, 2017 at 11:15am