Non-orthogonal structures and space tiles for layout, placement, and routing of an integrated circuit
AssigneeCadence Design Systems, Inc.
InventorsSteven Lee Pucci, Eric Martin Nequist
Life of this patent
Estimating the term…
Abstract
Disclosed is an improved approach for maintaining the structures for objects in a layout. A single type of structure is maintained that can be used to store or track a polygon of any shape, as long as the shape possesses a supported number of sides. The structure is capable of supporting irregular polygons or objects having angled edges. In one approach, the structure maintains information about each polygon as if that polygon is an octagon. Therefore, any polygon having eight or less orthogonal or diagonal sides can be supported using this structure.
Claims31
A method for implementing a layout of an integrated circuit, comprising:
- identifying one or more objects to be placed on an integrated circuit layout;
- tracking each of the one or more objects using an octagon-based structure, the octagon-based structure maintains at least eight data values, with the at least eight data values corresponding to sides of an octagon shape, the at least eight data values identify locations of corresponding sides along a perpendicular axis to the sides, and
- in which at least one of the at least eight data values corresponds to a zero length side, in which the octagon shape is a degenerate octagon having less than eight sides.
A method for implementing a layout of an integrated circuit, comprising:
- identifying one or more objects to be placed on an integrated circuit layout;
- tracking each of the one or more objects using an octagon-based structure in which the octagon-based structure comprises one or more data elements to identify neighboring objects with respect to the one or more objects.
A method for implementing a layout of an integrated circuit, comprising:
- identifying one or more objects to be placed on an integrated circuit layout;
- tracking each of the one or more objects using an octagon-based structure in which at least two objects are merged together into a single shape, wherein a single octagon-based structure is used to track the single shape.
A computer program product comprising a computer usable medium having executable code to execute a process for implementing a layout of an integrated circuit, the process comprising:
- identifying one or more objects to be placed on an integrated circuit layout;
- tracking each of the one or more objects using an octagon-based structure, the octagon-based structure maintains at least eight data values, with the at least eight data values corresponding to sides of an octagon shape, the at least eight data values identify locations of corresponding sides along a perpendicular axis to the sides, and in which at least one of the at least eight data values corresponds to a zero length side, in which the octagon shape is a degenerate octagon having less than eight sides.
A system for implementing a layout of an integrated circuit, comprising:
- means for identifying one or more objects to be placed on an integrated circuit layout;
- means for tracking each of the one or more objects using an octagon-based structure, the octagon-based structure maintains at least eight data values, with the at least eight data values corresponding to sides of an octagon shape, the at least eight data values identify locations of corresponding sides along a perpendicular axis to the sides, and in which at least one of the at least eight data values corresponds to a zero length side, in which the octagon shape is a degenerate octagon having less than eight sides.
A computer program product comprising a computer usable medium having executable code to execute a process for implementing a layout of an integrated circuit, the process comprising:
- identifying one or more objects to be placed on an integrated circuit layout;
- tracking each of the one or more objects using an octagon-based structure, in which the octagon-based structure comprises one or more data elements to identify neighboring objects with respect to the one or more objects.
A system for implementing a layout of an integrated circuit, comprising:
- means for identifying one or more objects to be placed on an integrated circuit layout;
- means for tracking each of the one or more objects using an octagon-based structure, in which the octagon-based structure comprises one or more data elements to identify neighboring objects with respect to the one or more objects.
A computer program product comprising a computer usable medium having executable code to execute a process for implementing a layout of an integrated circuit, the process comprising:
- identifying one or more objects to be placed on an integrated circuit layout;
- tracking each of the one or more objects using an octagon-based structure, in which at least two objects are merged together into a single shape, wherein a single octagon-based structure is used to track the single shape.
A system for implementing a layout of an integrated circuit, comprising:
- means for identifying one or more objects to be placed on an integrated circuit layout;
- means for tracking each of the one or more objects using an octagon-based structure, in which at least two objects are merged together into a single shape, wherein a single octagon-based structure is used to track the single shape.
Dependencies are inferred from the claim text.