How to get flat output from hierarchical DRC?

Document created by chris_balcom on Nov 6, 2012
Version 1Show Document
  • View in full screen mode

Hierarchical ASCII DRC results only output the lowest, left-most placement of a result. This is for efficiency. This leads to difficulty when viewing the results if you want to see a whole net or a complete layer. In these cases, flat output may be desired.


FLATTEN can be used inside the rulechecks (even during a hierarchical run) to flatten output data. It could be used to flatten input data, but treating the input data hierarchically and flattening the output is probably desirable for larger databases. Here are some examples:


// This line is an example of typical usage where no flattening is specified.

'big_cont_hh'{size CONT by 0.1} // sized hierarchically, output is hier too.


// This line demonstrates flattening of the output.

'big_cont_hf'{flatten (size CONT by 0.1)} // sized hierarchically, output is flat.


// This line demonstrates flattening the input and is generally NOT RECOMMENDED

// but included here just for completeness.

'big_cont_ff'{size (flatten CONT) by 0.1} // sized flat, output is flat too.


// If the original check used COPY,

// changing to FLATTEN will flatten the results. e.g.

'copy_metal'{copy METAL1} // this would yield hierarchical result

'flatten_metal'{flatten METAL1} // yields flat result



Here are links to a few related TechNotes:


Highlight an error in all instances of the cell


Change representation of Calibre nmDRC ASCII results with a partial flattening