Browse Prior Art Database

Fast Convolution Operation for Contact Verification in Integrated Circuits

IP.com Disclosure Number: IPCOM000060887D
Original Publication Date: 1986-May-01
Included in the Prior Art Database: 2005-Mar-09
Document File: 4 page(s) / 59K

Publishing Venue

IBM

Related People

Dally, WJ: AUTHOR [+3]

Abstract

In the manufacture of integrated circuit chips, vital components are the contacts generated between different layers of material developed in the process. These different layers may correspond to metal, polysilicon, silicon implanted with different materials such as phosphor, boron, or nitrogen, silicon dioxide with holes in it, and many others. Typically, the description of an integrated circuit consists of sets of shapes to be developed on the different layers. Overlap of two shapes on different layers is often necessary for a contact to be made between the two shapes; however, such an overlap is no guarantee for a successful contact when process variations are taken into account.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 38% of the total text.

Page 1 of 4

Fast Convolution Operation for Contact Verification in Integrated Circuits

In the manufacture of integrated circuit chips, vital components are the contacts generated between different layers of material developed in the process. These different layers may correspond to metal, polysilicon, silicon implanted with different materials such as phosphor, boron, or nitrogen, silicon dioxide with holes in it, and many others. Typically, the description of an integrated circuit consists of sets of shapes to be developed on the different layers. Overlap of two shapes on different layers is often necessary for a contact to be made between the two shapes; however, such an overlap is no guarantee for a successful contact when process variations are taken into account. In particular, it is highly likely that the shapes on the two layers may be displaced somewhat with respect to each other, so that the apparent contact may be broken with ahigh degree of probability. A method is required for rapidly checking that apparent contacts will still exist when the potential misalignment of the two layers is taken into account. There exist no standard methods for verifying that two planar shapes will overlap for a set of relative displacements. Typical of existing work is illustrated in Fig. 1; should d1, d2, d3, and d4 exceed the maximum relative displacement of the two shapes A and B, then the contact A to B is assured for that set of displacements; however, this method breaks down when dealing with non-rectilinear polygons (Fig. 2A) or when two contacts are made (Fig. 2B), either one may individually fail but the two contacts jointly assure contact under the possible set of displacements. The techniques described herein allow a check to be made for overlap between two arbitrary geometric shapes under a set of relative displacements characterized by another geometric figure, for which the symbol M is used. Fig. 3 shows examples of such displacement shapes; while typically such figures are symmetric under inversion and are also convex, this is not required for the method to work. However, it is true that such shapes can always be represented by arbitrary polygons. Defining two arbitrary shapes A and B, a shape A*B which corresponds to all the relative displacements of A and B, such that A and B remain in contact, is best done in mathematical terms. Let x and y be vectors or points in Euclidean two-space; define Tx as the translation operator on a shape A Tx A = ( y y-x A ) (1) and if represents the intersection operator between two shapes
(i.e., A#B is the shape jointly covered by A and B) then we have A*B = ( x ((Tx A) B) =0 ). (2) It can be seen that if M- A*B = 0 (3) then A and B will stay in contact under all possible displacements given by the figure M. The last step of the method is to show that the computation of A*B is practical for all polygonal representations of A and B. It can be demonstrated that A*B = U(p in A) U(q in
B) (p-q) (4) where p...