diff --git a/src/doc/doc/manual/drc_basic.xml b/src/doc/doc/manual/drc_basic.xml index 4fe88fc7a..a5f0cc756 100644 --- a/src/doc/doc/manual/drc_basic.xml +++ b/src/doc/doc/manual/drc_basic.xml @@ -234,6 +234,49 @@ gate.width(min_width).output("gate_width", "Gate width violations") Hence such files can only be run from the macro IDE.
++ DRC waiving is a process of signing off DRC violations that cannot be avoided. + Usually DRC waiving is not encouraged, as manufacturability of the device cannot + be guaranteed if DRC violations are present. Even worse, giving a non-clean layout + into manufacturing may create a contamination risk that manufacturers will try + to avoid. Hence, non-DRC-clean layouts are usually rejected. +
+ ++ Still there are some legit reasons for DRC waiving. Sometimes DRC rules do not apply + because a specific technology option is not used by the device and corresponding + DRC rules do not apply. Or, a certain DRC rule may be a recommended rule, and violating + it is not forbidden. In that case, a DRC violation can be waived at your own risk. + Waiving is not a formal process. Usually, the manufacturer will ask for a confirmation + if DRC violations are present. KLayout can help documenting violations and copying + the waivers from one DRC run to the next. +
+ ++ The DRC waiving flow of KLayout is the following: +
+ ++ In the waiving step, KLayout will apply attributes to items with the same value (i.e. shape), category and cell. + This specifically means, that when you rename a cell, waivers will no longer be applied, or - in the worst case - + be applied to the wrong cell. Hence, waiving should be done late in the process, when cell names are unlikely to change. +
+