Syntax: !wirecheck [layer ...]Wire database objects have the property that their geometric shape is not unambiguously specified. Every tool contains code that generates a polygon from the wire vertex list, which can be displayed and further processed. The details of how corners are handled, and how the ``rounded'' end style is handled, can vary slightly between tools.
Some wires are difficult to represent as a polygon, and in fact may cause failure with some tools (and possibly not others). Although wires sensibly created by hand would rarely if ever cause trouble, wires generated by format converters or some other program might cause failures, for example when ``fracturing'' the layout file during mask generation. Even wires that look reasonable on-screen may not be renderable on other tools, thus Xic provides some tests that can be applied to flag potential problems.
Wires can be ``questionable'' or ``bad''. Bad wires can not be rendered, and will never be included in the Xic database. These wires are always flagged as errors when seen.
Wires that are ``questionable'' have vertices that are closely spaced compared to the wire width, and trigger an edge-clipping fix-up in the wire-to-polygon function. Such wires may cause rendering difficulty in other tools. In addition, wires whose polygon representation requires more than 600 vertices are flagged as questionable.
When reading a layout file, questionable wires will be reported as warnings in the log file.
This command can be used to find questionable wires in the current cell. It takes a list of layer names as arguments, which will limit the testing to wires on those layers. If no arguments are given, all layers will be used.
If wires are selected before the command is given, only the selected wires on the given layers (or on any layer, if no arguments are given) will be checked. If no wires are selected, all wires on the layers given (or on any layer if no arguments are given) will be checked.
If a wire is determined to be questionable, it will be, or remain, selected. The Info command in the View Menu can be used to determine the exact nature of the defect.
The flags that might be listed in the info for wires have the following explanations.
Wires that are determined to be questionable will have one or more of ZEROWIDTH, CLIPFIX, or BIGPOLY set.