The sizing operation grows or shrinks all edges of the polygons. It is not the same as scaling. Sizing is often used to compensate for process related shrinkage or growth. The mask data is compensated in the opposite direction so that the final results are equal to the intended size.

Sizing can pose various difficulties - the sizing amount generally should be much smaller than the smallest feature size in the set of polygons. Acute angles should also be clipped or smoothed when sized up. If this is not done there is a risk that they will "poke" into an adjacent polygon.

In the snapshot below, you can see a simple test file before any sizing has been applied. Dimensions are in um.

There are four sizing options: Fine; Gross (Ortho); 3 Point; 5 point.

The shortest feature size is 0.5 um in the far left polygon. So let's apply a size up of 0.1 um and 0.25 um and 0.5um to see what the result is.

**FAST**

This is the fastest and simplest sizing algorithm. However if used incorrectly, it can produce bad output polygons. This mode simply offsets the edges by the sizing amount and then intersects them to build the new polygon. If the sizing amount is 0.5 or more of the smallest edge then it may produce an illegal output polygon.

In the polygon to the far right, you can see that at 0.5 um sizing a bad output is generated.

**GROSS (ORTHO)**

This choice is best for polygons that are Manhattan (orthogonal edges). Unlike the FAST mode, ORTHO will not generate illegal output polygons even if the sizing value is larger than the smallest feature size as it uses a more advanced approach. For acute angles, it truncates the "tip" so that the tip does not flare out and possibly intersect an nearby polygon.

QckBool Page | Download | Revision History | Price |