![]() |
9-6: Network Consistency Checking (NCC, or LVS) |
![]() |
To compare two facets, they must be shown in the only two windows or window partitions on the screen. Then, the Do NCC (LVS) subcommand of the Network command of the Tools menu compares them, using a technique called graph isomorphism.
For an example of network consistency checking, open the library "samples.txt" and edit the facets "tool-NCC{lay}" and "tool-NCC{sch}" (you can read the library with the Readable Dump subcommand of the Import command of the File menu). These two facets are equivalent and the checker will find them to be so.
When you request comparison, the system displays the number of components, networks, and other information in each facet. Inconsistencies in these numbers generally lead to failure of comparison. As an aid to debugging networks that are not equivalent, you can examine these initial components and networks in more detail with the Do NCC Preanalysis subcommand.
Once compared successfully, nodes and arcs in one facet can be matched to those in the other simply by selecting one and using the Show Network subcommand.
To control the network consistency checker, use the NCC Options... subcommand. For an initial comparison of two facets, it is best to leave all options off. The system can automatically detect some of the options, and you can choose to select others as needed.
The network consistency checker can work on the current facet, or it can recursively check each facet from the current point on downward. To request recursive NCC, check the "Recurse through hierarchy" box. When checking a particular facet, the checker can ignore or examine the contents of instances. If "Expand hierarchy" is checked, then all circuitry below the current facet is extracted and considered with the facet. Otherwise, facet instances are only compared by their connections without regard to their contents.
Two "Verbose" checkboxes request textual and graphical debugging information. The "Do NCC now" button quits the dialog and runs the check. The "Do Preanalysis now" button quits the dialog and runs the preanalysis.
The NCC remembers the time at which a successful NCC was done and marks the matched facets so that they are not checked again (if they haven't changed). The "Clear valid NCC dates" button removes this information, forcing the NCC to run again. Note that the button also removes all "NCCmatch" tags that are created by the matching process.
The dialog also provides six options for controlling the network consistency checking. These options, as selected on the left, are defaults for all facets. However, each of these options can be overridden for individual facets by selecting that facet and choosing the "Yes" or "No" override buttons. To see a list of all overrides that exist, use the "List all overrides" button.
The "Expand hierarchy", as mentioned earlier, instructs the NCC to examine the contents of facet instances. To help align two hierarchies that are structured differently, this option can be applied selectively to different facets.
The "Merge parallel components" instructs the NCC to consider multiple components wired in parallel to be a single component. When this option is selected, two parallel components will correctly match a single, larger component in the other facet.
The "Merge series transistors" instructs the NCC to consider multiple transistors wired in series to be a single, complex component. When this option is selected, the order of wiring gates to these transistors will not be ignored.
"Ignore power and ground" instructs the NCC to ignore all power and ground networks. This is useful when the layout has power and ground but the schematic doesn't.
The "Check export names" check instructs the NCC to check export names for consistency. If exports are named differently in the two circuits, warnings will be issued.
"Check component sizes" instructs the NCC to compare component sizes. Unless this is checked, component will be equated only according to their connectivity, and not their size. The size tolerance field allows slop in the comparison of two components.
When comparison fails, you can review the errors by typing ">" and "<" to step to the next and previous error that was found.
![]() |
Previous | ![]() |
Table of Contents | Next | ![]() |