where layers is a comma-separated list of types to paint.
The drop command paints layer types into descendents of the current edit cell where selected paint is found. Normally, paint and erase operations will only change the current edit cell. Selections can copy paint out of descendents of the current edit cell, but the descendent cells are not themselves affected. This specialized command scans an existing selection and determines from which subcell each bit of paint in the selection was copied from. Then, it paints layers back into those subcells in an area coincident with the selected paint.
The primary reason this command was created was to deal with regions such as a pwell region inside a deep nwell. The pwell is often not a layer in the GDS but is defined by the absence of nwell, over a deep nwell layer. A drawn pwell is needed for magic to properly extract the bulk terminal of any transistor in the pwell. But the pwell must exist in the same cell as the transistor. After reading GDS, a command sequence such as the following: "select area dnwell ; select intersect ~nwell ; drop pwell" will ensure that the pwell layer exists over the area inside a deep nwell p-region.
Be aware that because other instances of a cell may exist outside of the selection area, that all instances of a cell modified by drop will be likewise modified.
drop is implemented as a built-in command in magic.
|Return to command index|
Last updated: March 25, 2021 at 9:48pm