Patent US5694481A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5694481A Expired / Lapsed US ⏱️ 0.0 years remaining

Automated design analysis system for generating circuit schematics from high magnification images of an integrated circuit

Assignee: TechInsights Inc
•
Filing: 1995-04-12
•
Granted: 1997-12-02
•
Expires: 2015-04-12
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method of analyzing at least a portion of an integrated circuit (IC) comprised of the steps of automatically: (a) scanning at least a portion of a layer of an integrated circuit using high magnification to provide first digital signals representing pixel amplitudes, (b) extracting features of interest from the first digital signals to provide second digital signals representing values of groups of pixels defining the features of interest, (c) modifying the second digital signals representing adjacent features of interest from step (b) so as to mosaic the features of interest and providing third signals representing a seamless representation of the layer, (d) repeating steps (a), (b) and (c) for other layers of the integrated circuit, whereby plural third signals representing plural ones of the layers are provided, (e) registering the plural third signals relative to each other so as to represent vertical alignment of the layers by determining features of interest representative of IC mutual interconnection locations between layers, and using the locations as control points for the registering, and establishing an integrated circuit layout database therefrom, (f) generating a netlist from data signals defining the cells, and (g) generating a schematic diagram of a circuit contained in the integrated circuit from the netlist.

Inventors

  • 👤 Larry Lam
  • 👤 George Chamberlain
  • 👤 Alexei Ioudovsky
  • 👤 Ghassan Naim

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-07 14:07
CPC Classifications
G; G06; G06F; G06F30/00; G06F30/30; G06F30/39; G06F30/398; G06V; G06V30/00; G06V30/40; G06V30/42; G06V30/422

Claims Analysis

Total Claims: 52
Claim 1
Independent Claim 205 words
A method of analyzing at least a portion of an integrated circuit (IC) comprising the steps of automatically: (a) scanning at least a portion of a layer of an integrated circuit using high magnification to provide first digital signals representing pixel amplitudes, (b) extracting features of interest from the first digital signals to provide second digital signals representing values of groups of pixels defining said features of interest, (c) modifying said second digital signals representing adjacent features of interest from step (b) so as to mosaic the features of interest and providing third signals representing a seamless representation of said layer, (d) repeating steps (a), (b) and (c) for other layers of the integrated circuit, whereby plural third signals representing plural ones of said layers are provided, (e) registering said plural third signals relative to each other so as to represent vertical alignment of said layers by determining features of interest representative of IC mutual interconnection locations between layers, and using said locations as control points for said registering, and establishing an integrated circuit layout database therefrom, (f) generating a netlist from data signals defining said cells, and (g) generating a schematic diagram of a circuit contained in the integrated circuit from the said netlist.
Claim 2
Independent Claim 205 words
A method of analyzing at least a portion of an integrated circuit (IC) comprising the steps of automatically: (a) scanning at least a portion of a layer of an integrated circuit using high magnification to provide first digital signals representing pixel amplitudes, (b) extracting features of interest from the first digital signals to provide second digital signals representing values of groups of pixels defining said features of interest, (c) modifying said second digital signals representing adjacent features of interest from step (b) so as to mosaic the features of interest and providing third signals representing a seamless representation of said layer, (d) repeating steps (a), (b) and (c) for other layers of the integrated circuit, whereby plural third signals representing plural ones of said layers are provided, (e) registering said plural third signals relative to each other so as to represent vertical alignment of said layers by determining features of interest representative of IC mutual interconnection locations between layers, and using said locations as control points for said registering, and establishing an integrated circuit layout database therefrom, (f) generating a netlist from data signals defining said cells, and (g) generating a schematic diagram of a circuit contained in the integrated circuit from the said netlist.
Claim 3
Dependent Claim 39 words
A method as defined in claim 1, including determining features of interest representative of IC diffused regions for transistors, defining cells having boundaries which fully contain diffused regions and which avoid intersecting diffused regions prior to generating said netlist.
Claim 4
Dependent Claim 52 words
A method as defined in claim 1 in which the step of extracting features is comprised of reducing or eliminating background information other than features of interest, and including the further step of computing a plurality of polygons in place of said groups of pixels for representation by said second digital signal.
Claim 5
Dependent Claim 136 words
A method as defined in claim 3, in which the step of mosaicking is comprised of: (i) selecting data representing a set of four images representing adjacent features of interest, (ii) computing mutually orthogonal (x,y) coordinate offsets between two adjacent images in each said set of four images which minimizes registration error between image pairs, (iii) substracting said offsets and computing overlap between image pairs in each said set of four images after substracting said offsets, whereby a cell representation signal of said four images is obtained as representations of said adjacent features of interest, (iv) determinining, from computation of said offsets, whether a sufficient number of unique x, y, coordinate offsets exists to define a cell, and in the event there is an insufficient number, indirectly determining missing x, y offsets prior to step (iii).
Claim 6
Dependent Claim 43 words
A method as defined in claim 1 in which the step of extracting features is comprised of separating signals representing foreground data from said first digital signals and converting the separated signals into a data signal representing linked edges of each said features.
Claim 7
Dependent Claim 30 words
A method as defined in claim 5 in which the separating step is comprised of determining image regions of approximately uniform appearance of at least one of intensity and slope.
Claim 8
Dependent Claim 44 words
A method as defined in claim 5 in which the separating step is comprised of stretching contrast of pixel values of the second digital signals in a non-linear manner, and processing resulting digital signals through a Sobel filter, to provide replacement second digital signals.
Claim 9
Dependent Claim 44 words
A method as defined in claim 5 in which the separating step is comprised of replacing the value of each pixel by a value representing the dispersion of intensity in a surrounding area defined by a kernel size, to provide replacement second digital signals.
Claim 10
Dependent Claim 35 words
A method as defined in claim 8 including the step of non-linear stretching of a contrast value of each kernel in a medium range of intensity whereby contrast of low-contrast features of interest is enhanced.
Claim 11
Dependent Claim 32 words
A method as defined in claim 8 including comparing each dispersed intensity value with a threshold, and linking signals in excess of the threshold which are less than a maximum distance apart.
Claim 12
Dependent Claim 95 words
A method as defined in claim 8 including comparing each dispersed intensity value with a high and a medium intensity range, then non-linear stretching of the intensity values within the medium intensity ranges to increase the average difference of intensity between noise and low contrast features of interest, comparing the stretched intensity values with a further threshold to extract low contrast features which are above the further threshold, and combining the extracted features that are above the further threshold with the intensity values within the high intensity range to provide said replacement second digital signals.
Claim 13
Dependent Claim 50 words
A method as defined in claim 5 in which the step of converting the separated signals is comprised of identifying clusters of contiguous pixels representing said linked edges, and defining polygon vertices based on running directions of said clusters, to define said data signals representing linked edges of said clusters.
Claim 14
Dependent Claim 72 words
A method as defined in claim 1 including defining an uppermost layer relative to an integrated circuit substrate, registering pairs of layers from the uppermost layer to a lowermost diffusion layer based on centers of said interconnection locations of said layers being aligned with a minimum error, and storing resulting coordinates of the features of interest of all layers relative to a global coordinate system for provision to a netlist generating process.
Claim 15
Dependent Claim 28 words
A method as defined in claim 13 including flagging the coordinates of said interconnection locations which have no corresponding ones of said interconnection locations in a lower layer.
Claim 16
Dependent Claim 19 words
A method as defined in claim 1 in which said mutual interconnection locations are comprised of vias or contacts.
Claim 17
Independent Claim 295 words
A method of analyzing at least a portion of an integrated circuit (IC) comprising the of automatically: (a) scanning at least a portion of a layer of an integrated circuit using high magnification to provide first digital signals representing pixel amplitudes, (b) extracting features of interest representative of IC mutual interconnection locations between layers from the first digital signals to provide second digital signals representing values of groups of pixels defining said features of interest; (c) modifying said second digital signals representing adjacent features of interest from step (b) so as to mosaic the features of interest and providing third signals representing a seamless representation of said layer by (i) selecting data representing a set of four images representing adjacent features of interest, (ii) computing mutually orthogonal (x,y) coordinate offsets between two adjacent images in each said set of four images which minimizes registration error between image pairs, (iii) determining, from computation of said offsets, whether a sufficient number of unique x, y coordinate offsets exists to define a cell, and in the event there is an insufficient number, indirectly determining missing x, y offset, (iv) subtracting said offsets and computing overlap between image pairs in said set of four images after subtracting said offsets, whereby a cell representation signal of said four images is obtained as representations of said adjacent features of interest, (d) repeating steps (a), (b) and (c) for other layers of the integrated circuit, whereby plural third signals representing plural ones of said layers are provided, (e) registering said plural third signals relative to each other so as to represent vertical alignment of said layers, and establishing an integrated circuit layout database therefrom, and (f) generating a schematic diagram of a circuit contained in the integrated circuit from the said database.
Claim 18
Independent Claim 295 words
A method of analyzing at least a portion of an integrated circuit (IC) comprising the of automatically: (a) scanning at least a portion of a layer of an integrated circuit using high magnification to provide first digital signals representing pixel amplitudes, (b) extracting features of interest representative of IC mutual interconnection locations between layers from the first digital signals to provide second digital signals representing values of groups of pixels defining said features of interest; (c) modifying said second digital signals representing adjacent features of interest from step (b) so as to mosaic the features of interest and providing third signals representing a seamless representation of said layer by (i) selecting data representing a set of four images representing adjacent features of interest, (ii) computing mutually orthogonal (x,y) coordinate offsets between two adjacent images in each said set of four images which minimizes registration error between image pairs, (iii) determining, from computation of said offsets, whether a sufficient number of unique x, y coordinate offsets exists to define a cell, and in the event there is an insufficient number, indirectly determining missing x, y offset, (iv) subtracting said offsets and computing overlap between image pairs in said set of four images after subtracting said offsets, whereby a cell representation signal of said four images is obtained as representations of said adjacent features of interest, (d) repeating steps (a), (b) and (c) for other layers of the integrated circuit, whereby plural third signals representing plural ones of said layers are provided, (e) registering said plural third signals relative to each other so as to represent vertical alignment of said layers, and establishing an integrated circuit layout database therefrom, and (f) generating a schematic diagram of a circuit contained in the integrated circuit from the said database.
Claim 19
Dependent Claim 52 words
A method as defined in claim 16 in which the step of extracting features is comprised of reducing or eliminating background information other than features of interest, and including the further step of computing a plurality of polygons in place of said groups of pixels for representation by said second digital signal.
Claim 20
Dependent Claim 26 words
A method as defined in claim 16, including repeating steps (i), (ii), and (iii) repeatedly using cells resulting from step (iii) as image in step (i).
Claim 21
Dependent Claim 107 words
A method as defined in claim 18, wherein the selecting step is comprised of determining the coordinates of the right edges of adjacent features of a left-hand pair of the four images along a y axis (WR1, WR4), determining the coordinates of the bottom edges of adjacent features of a top pair of the four images along an x axis (W1, WB2), determining the coordinates of the left edges of the right hand pair of the four images (TL2, TL3) and determining the coordinates of the top edges of the bottom pair of the four images (TT4, TT3), and storing said coordinates as representations of said images.
Claim 22
Dependent Claim 21 words
A method as defined in claim 19 including computing said overlap relative to the TL(N) coordinates and clipping the corresponding image.
Claim 23
Dependent Claim 23 words
A method as defined in claim 20 including clipping the WR(N) image coordinate with the same overlap values as the TL(N) image coordinates.
Claim 24
Dependent Claim 43 words
A method as defined in claim 16 in which the step of extracting features is comprised of separating signals representing foreground data from said first digital signals and converting the separated signals into a data signal representing linked edges of each said features.
Claim 25
Dependent Claim 30 words
A method as defined in claim 22 in which the separating step is comprised of determining image regions of approximately uniform appearance of at least one of intensity and slope.
Claim 26
Dependent Claim 50 words
A method as defined in claim 22 in which the step of converting the separated signals is comprised of identifying clusters of contiguous pixels representing said linked edges, and defining polygon vertices based on running directions of said clusters, to define said data signals representing linked edges of said clusters.
Claim 27
Dependent Claim 44 words
A method as defined in claim 22 in which the separating step is comprised of stretching contrast of pixel values of the second digital signals in a non-linear manner, and processing resulting digital signals through a Sobel filter, to provide replacement second digital signals.
Claim 28
Dependent Claim 44 words
A method as defined in claim 22 in which the separating step is comprised of replacing the value of each pixel by a value representing the dispersion of intensity in a surrounding area defined by a kernel size, to provide replacement second digital signals.
Claim 29
Dependent Claim 32 words
A method as defined in claim 26 including comparing each dispersed intensity value with a threshold, and linking signals in excess of the threshold which are less than a maximum distance apart.
Claim 30
Dependent Claim 95 words
A method as defined in claim 26 including comparing each dispersed intensity value with a high and a medium intensity range, then non-linear stretching of the intensity values within the medium intensity ranges to increase the average difference of intensity between noise and low contrast features of interest, comparing the stretched intensity values with a further threshold to extract low contrast features which are above the further threshold, and combining the extracted features that are above the further threshold with the intensity values within the high intensity range to provide said replacement second digital signals.
Claim 31
Dependent Claim 35 words
A method as defined in claim 26 including the step of non-linear stretching of a contrast value of each kernel in a medium range of intensity whereby contrast of low-contrast features of interest is enhanced.
Claim 32
Dependent Claim 41 words
A method as defined in claim 16, comprising the steps of: (a) eliminating background information other than features of interest, and (b) computing a plurality of polygons in place of said groups of pixels for representation by said first digital signals.
Claim 33
Independent Claim 191 words
A method of analyzing at least a portion of an integrated circuit comprising the steps of automatically: (a) scanning small portions of at least a portion of a layer of an IC using high magnification, to obtain stored images of said portions of the IC, (b) converting said stored images to polygon data (c) assembling the polygon data in mosaicked image sets, (d) repeating steps (a), (b) and (c) for plural layers of the IC, (e) registering the mosaicking image sets into alignment, and (f) generating a schematic diagram of circuitry represented by at least a portion of the IC from the aligned mosaicked image sets, in which step (c) is comprised of: (i) selecting data representing a set of four images representing adjacent features of interest, (ii) computing mutually orthogonal (x,y) coordinate offsets between two adjacent images in said set of four images which minimizes registration error between image pairs, and (iii) substracting said offsets and computing overlap between image pairs in said set of four images after substracting said offsets, whereby a cell representation signal of said four images is obtained as representations of said adjacent features of interest.
Claim 34
Independent Claim 191 words
A method of analyzing at least a portion of an integrated circuit comprising the steps of automatically: (a) scanning small portions of at least a portion of a layer of an IC using high magnification, to obtain stored images of said portions of the IC, (b) converting said stored images to polygon data (c) assembling the polygon data in mosaicked image sets, (d) repeating steps (a), (b) and (c) for plural layers of the IC, (e) registering the mosaicking image sets into alignment, and (f) generating a schematic diagram of circuitry represented by at least a portion of the IC from the aligned mosaicked image sets, in which step (c) is comprised of: (i) selecting data representing a set of four images representing adjacent features of interest, (ii) computing mutually orthogonal (x,y) coordinate offsets between two adjacent images in said set of four images which minimizes registration error between image pairs, and (iii) substracting said offsets and computing overlap between image pairs in said set of four images after substracting said offsets, whereby a cell representation signal of said four images is obtained as representations of said adjacent features of interest.
Claim 35
Dependent Claim 27 words
A method as defined in claim 31 including removing overlap between the stored images during step (c) so as to provide data representing a seamless mosaicked image.
Claim 36
Dependent Claim 32 words
A method as defined in claim 32 including modifying data representing boundaries of an image set so as to avoid crossing a boundary of a diffusion region defined in an image set.
Claim 37
Dependent Claim 53 words
A method as defined in claim 33 including defining first cells of four mosaicked adjacent images, defining second cells of four mosaicked adjacent cells, and defining further cells of four mosaicked lower order cells, and storing data requesting a highest order of four mosaicked lower order cells prior to carrying out step (f).
Claim 38
Independent Claim 149 words
A method of analyzing at least a portion of an integrated circuit which has been scanned, and images adjacent or overlapping regions of the integrated circuit stored, comprising the steps of: (i) selecting data representing a set of four images representing adjacent features of interest, (ii) computing mutually orthogonal (x,y) coordinate offsets between two adjacent images in said set of four images which minimizes registration error between image pairs, (iii) subtracting said offsets and computing overlap between image pairs in said set of four images after subtracting said offsets, whereby a cell representation signal of said four images is obtained as representations of said adjacent features of interest, (iv) determining, from computation of said offsets, whether of sufficient number of unique x, y coordinate offsets exists to define a cell, and in the event there is an insufficient number, indirectly determining missing x, y offsets prior to step (iii).
Claim 39
Independent Claim 149 words
A method of analyzing at least a portion of an integrated circuit which has been scanned, and images adjacent or overlapping regions of the integrated circuit stored, comprising the steps of: (i) selecting data representing a set of four images representing adjacent features of interest, (ii) computing mutually orthogonal (x,y) coordinate offsets between two adjacent images in said set of four images which minimizes registration error between image pairs, (iii) subtracting said offsets and computing overlap between image pairs in said set of four images after subtracting said offsets, whereby a cell representation signal of said four images is obtained as representations of said adjacent features of interest, (iv) determining, from computation of said offsets, whether of sufficient number of unique x, y coordinate offsets exists to define a cell, and in the event there is an insufficient number, indirectly determining missing x, y offsets prior to step (iii).
Claim 40
Dependent Claim 107 words
A method as defined in claim 35, wherein the selecting step is comprised of determining the coordinates of the right edges of adjacent features of a left-hand pair of the four images along a y axis (WR1, WR4), determining the coordinates of the bottom edges of adjacent features of a top pair of the four images along an x axis (WB1, WB2), determining the coordinates of the left edges of the right hand pair of the four images (TL2, TL3) and determining the coordinates of the top edges of the bottom pair of the four images (TT4, TT3), and entering said coordinates as representations of said images.
Claim 41
Dependent Claim 21 words
A method as defined in claim 36 including computing said overlap relative to the TL(N) coordinates and clipping the corresponding image.
Claim 42
Dependent Claim 23 words
A method as defined in claim 37 including clipping the WR(N) image coordinate with the same overlap values as the TL(N) image coordinates.
Claim 43
Independent Claim 101 words
A method of analyzing at least a portion of an integrated circuit which has been scanned to produce first digital signals representing pixel amplitudes, and images of adjacent or overlapping regions of the integrated circuit in a form of said first digital signals stored, comprising the steps of: (a) extracting features of interest from the first digital signals to provide second digital signals representing values of groups of pixels defining said features of interest, (b) separating signal representing foreground data from said digital signals and connecting the separated signals into a data signal representing linked edges of each of said features.
Claim 44
Independent Claim 101 words
A method of analyzing at least a portion of an integrated circuit which has been scanned to produce first digital signals representing pixel amplitudes, and images of adjacent or overlapping regions of the integrated circuit in a form of said first digital signals stored, comprising the steps of: (a) extracting features of interest from the first digital signals to provide second digital signals representing values of groups of pixels defining said features of interest, (b) separating signal representing foreground data from said digital signals and connecting the separated signals into a data signal representing linked edges of each of said features.
Claim 45
Dependent Claim 30 words
A method as defined in claim 39 in which the separating step is comprised of determining image regions of approximately uniform appearance of at least one of intensity and slope.
Claim 46
Dependent Claim 44 words
A method as defined in claim 39 in which the separating step is comprised of stretching contrast of pixel values of the second digital signals in a non-linear manner, and processing resulting digital signals through a Sobel filter, to provide replacement second digital signals.
Claim 47
Dependent Claim 44 words
A method as defined in claim 39 in which the separating step is comprised of replacing the value of each pixel by a value representing the dispersion of intensity in a surrounding area defined by a kernel size, to provide replacement second digital signals.
Claim 48
Dependent Claim 35 words
A method as defined in claim 42 including the step of non-linear stretching of a contrast value of each kernel in a medium range of intensity whereby contrast of low-contrast features of interest is enhanced.
Claim 49
Dependent Claim 32 words
A method as defined in claim 42 including comparing each dispersed intensity value with a threshold, and linking signals in excess of the threshold which are less than a maximum distance apart.
Claim 50
Dependent Claim 95 words
A method as defined in claim 42 including comparing each dispersed intensity value with a high and a medium intensity range, then non-linear stretching of the intensity values within the medium intensity ranges to increase the average difference of intensity between noise and low contrast features of interest, comparing the stretched intensity values with a further threshold to extract low contrast features which are above the further threshold, and combining the extracted features that are above the further threshold with the intensity values within the high intensity range to provide said replacement second digital signals.
Claim 51
Dependent Claim 50 words
A method as defined in claim 39 in which the step of converting the separated signals is comprised of identifying clusters of contiguous pixels representing said linked edges, and defining polygon vertices based on running directions of said clusters, to define said data signals representing linked edges of said clusters.
Claim 52
Dependent Claim 25 words
A method as defined in claim 39 including repeating each of steps (a) and (b) on digital signals representing each layer of the integrated circuit.

References Cited (Backward Citations)

US4791586A Cited
US4790027A Cited
US5222158A Cited
US5191213A Cited
US5086477A Cited
US5224178A Cited
US5465163A Cited
US5463561A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-12-01 2001-06-02 2001-12-02 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-12-01 2005-06-02 2005-12-02 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-12-01 2009-06-02 2009-12-02 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag