Method and apparatus for placement and routing cells on integrated circuit chips
First Claim
1. A method to layout an integrated circuit, the method comprising:
- analyzing timing to identify a set of cells on a path;
splitting the path into segments at a plurality of nets that includes determining the plurality of nets of the path;
generating a plurality of placement designs for the path, wherein each of the placement designs is generated from placing and routing cells of a first segment of the path near a first location that includes placing a cell of the first segment at a permissible location out of a plurality of permissible locations;
routing the cell from the permissible location; and
determining a timing parameter associated with the cell already placed and routed, and subsequently, after the routing of the cells of the first segment, placing and routing cells of a second segment of the path near a second location, the first segment and the second segment being connected by one of the plurality of nets;
routing at least one of the nets of the path for each of the plurality of placement designs; and
selecting a first design from the plurality of placement designs, wherein said selecting is based on actual routes of the at least one of the nets routed for each of the plurality of placement designs.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatuses to place and route cells on integrated circuit chips along paths. In one aspect of the invention, methods to layout an integrated circuit are based on placing and routing cells along paths. In one embodiment, a method to layout an integrated circuit including: routing a wire to connect a first cell of the integrated circuit and a second cell of the integrated circuit; and placing a third cell of the integrated circuit after the wire is routed to connect the first cell and the second cell. In one example, the first, second and third cells are on a first path; and, the third cell is connected to one of the first and second cells on the first path by only one net. The first path is selected from a set of paths; and the first and second cells are placed before the wire is routed to connect the first cell and the second cell. Timing is analyzed using a route of the wire connecting the first cell and the second cell to select a second path from the set of paths before a cell is placed on the second path.
-
Citations
18 Claims
-
1. A method to layout an integrated circuit, the method comprising:
-
analyzing timing to identify a set of cells on a path; splitting the path into segments at a plurality of nets that includes determining the plurality of nets of the path; generating a plurality of placement designs for the path, wherein each of the placement designs is generated from placing and routing cells of a first segment of the path near a first location that includes placing a cell of the first segment at a permissible location out of a plurality of permissible locations;
routing the cell from the permissible location; and
determining a timing parameter associated with the cell already placed and routed, and subsequently, after the routing of the cells of the first segment, placing and routing cells of a second segment of the path near a second location, the first segment and the second segment being connected by one of the plurality of nets;routing at least one of the nets of the path for each of the plurality of placement designs; and selecting a first design from the plurality of placement designs, wherein said selecting is based on actual routes of the at least one of the nets routed for each of the plurality of placement designs. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A machine readable medium containing executable computer program instructions which when executed by a digital processing system cause said system to perform a method to layout an integrated circuit, the method comprising:
-
analyzing timing to identify a set of cells on a path; splitting the path into segments at a plurality of nets that includes determining the plurality of nets of the path; generating a plurality of placement designs for the path, wherein each of the placement designs is generated from placing and routing cells of a first segment of the path near a first location that includes placing a cell of the first segment at a permissible location out of a plurality of permissible locations;
routing the cell from the permissible location; and
determining a timing parameter associated with the cell already placed and routed, and subsequently, after the routing of the cells of the first segment, placing and routing cells of a second segment of the path near a second location, the first segment and the second segment being connected by one of the plurality of nets;
routing at least one of nets of the path for each of the plurality of placement designs; andselecting a first design from the plurality of placement designs, wherein said selecting is based on actual routes of the at least one of nets routed for each of the plurality placement designs. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A digital processing system to layout an integrated circuit, the digital processing system comprising:
-
mean for analyzing timing to identify a set of cells on a path; means for splitting the path into segments that includes means for determining the plurality of nets of the path; means for generating a plurality of placement designs for the path, wherein each of the placement designs is generated by means for placing and routing cells of a first segment of the path near a first location that includes means for placing a cell of the first segment at a permissible location out of a plurality of permissible locations;
means for routing the cell from the permissible location; and
means for determining a timing parameter associated with the cell already placed and routed, and means for subsequently, after the routing of the cells of the first segment, placing and routing cells of a second segment of the path near a second location, the first segment and the second segment being connected by one of the plurality of nets;means for routing at least one of nets of the path for each of the plurality of placement designs; and means for selecting a first design from the plurality of placement designs, wherein said selecting is based on actual routes of the at least one of nets routed for each of the plurality of placement designs. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification