Automatic integrated circuit routing using spines
First Claim
1. A method comprising:
- providing a gridless routing area, wherein the route area has a rectangular shape and is bounded by a first, second, third, and fourth side, the third side is opposite of the first side, the fourth side is opposite of the second side, the first side is longer than the second side, the first and third sides extend in a first direction, the second and fourth sides extend in a second direction, and the second direction is orthogonal to the first direction, and a plurality of first pins, to be coupled together using a first interconnect, at the first or third side of the routing area and a plurality of second pins, to be coupled together using a second interconnect, at the first or third side of the routing area;
by a computer, generating within the gridless routing area, a first spine polygon of the first interconnect having a plurality of straight edges extending in the first direction a length from the second side to the fourth side of the routing area and a uniform first width between the straight edges;
by the computer, generating within the gridless routing area, a second spine polygon of the second interconnect, parallel to the first spine polygon, having a plurality of straight edges extending in the first direction a length from the second side to the fourth side of the routing area and the uniform first width between the straight edges, wherein between the first and second spine polygons is a space, extending parallel to the first and second polygons;
after generating the first and second spine polygons, generating a first plurality of stitch polygons to couple each of the first pins to the first polygon, a first stitch polygon and a second stitch polygon of the first plurality of stitch polygons forming first and second T-junctions with the first polygon; and
after generating the first and second spine polygons, generating a second plurality of stitch polygons to couple each of the second pins to the second polygon, a third stitch polygon and a fourth stitch polygon of the second plurality of stitch polygons forming third and fourth T-junctions with the second polygon.
0 Assignments
0 Petitions
Accused Products
Abstract
A method and technique of routing interconnects of an integrated circuit providing improved routing quality. In an embodiment of the invention, the technique provides linear spine interconnect routing. In memory array blocks, such as in DRAM and SRAM memory designs, connected pins are generally separated by large distances in a first direction and small distances in a second direction, or a spine or channel region. A route area is defined within the spine region. In one embodiment, obstacles in the route area are identified and corresponding forbidden areas are demarcated. The linear spine interconnect is routed in the first direction within the route area while avoiding the forbidden areas. Pins are connected to the spine interconnect by stitching interconnects. Stitching interconnects are generally routed in the second direction.
99 Citations
20 Claims
-
1. A method comprising:
-
providing a gridless routing area, wherein the route area has a rectangular shape and is bounded by a first, second, third, and fourth side, the third side is opposite of the first side, the fourth side is opposite of the second side, the first side is longer than the second side, the first and third sides extend in a first direction, the second and fourth sides extend in a second direction, and the second direction is orthogonal to the first direction, and a plurality of first pins, to be coupled together using a first interconnect, at the first or third side of the routing area and a plurality of second pins, to be coupled together using a second interconnect, at the first or third side of the routing area; by a computer, generating within the gridless routing area, a first spine polygon of the first interconnect having a plurality of straight edges extending in the first direction a length from the second side to the fourth side of the routing area and a uniform first width between the straight edges; by the computer, generating within the gridless routing area, a second spine polygon of the second interconnect, parallel to the first spine polygon, having a plurality of straight edges extending in the first direction a length from the second side to the fourth side of the routing area and the uniform first width between the straight edges, wherein between the first and second spine polygons is a space, extending parallel to the first and second polygons; after generating the first and second spine polygons, generating a first plurality of stitch polygons to couple each of the first pins to the first polygon, a first stitch polygon and a second stitch polygon of the first plurality of stitch polygons forming first and second T-junctions with the first polygon; and after generating the first and second spine polygons, generating a second plurality of stitch polygons to couple each of the second pins to the second polygon, a third stitch polygon and a fourth stitch polygon of the second plurality of stitch polygons forming third and fourth T-junctions with the second polygon. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method comprising:
-
providing a rectangular routing area having a length L at least four times greater than a width; providing at least a first pin and a second pin along a first length side of the routing area, and at least a third pin and a fourth pin along a second length side of the routing area, wherein the first and third pins are to be coupled together using a first interconnect, and the second and fourth pins are to be coupled together using a second interconnect; by a computer, within the routing area, generating a first spine polygon of the first interconnect having a plurality of straight edges extending the length L of the routing area and a uniform spine width between the straight edges; by a computer, within the routing area, generating a second spine polygon of the second interconnect, parallel to the first spine polygon, having a plurality of straight edges extending the length L of the routing area and the uniform spine width between the straight edges; generating a first plurality of stitch polygons to couple the first and third pins to the first polygon; generating a second plurality of stitch polygons to couple the second and fourth pins to the second polygon; providing fifth pin along the first length side and a sixth pin along the second length side, wherein the fifth pin is to be coupled together with the first and third pins using the first interconnect, and the sixth pin is to be coupled together with the second and fourth pins using the second interconnect, and the generating a first plurality of stitch polygons comprises generating a stitch polygon to couple the fifth pin to the first spine polygon, and the generating a second plurality of stitch polygons comprises generating a stitch polygon to couple the sixth pin to the second spine polygon. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A method comprising:
-
providing a rectangular routing area having a length L at least four times greater than a width; providing at least a first pin and a second pin along a first length side of the routing area, and at least a third pin and a fourth pin along a second length side of the routing area, wherein the first and second pins are to be coupled together using a first interconnect, and the third and fourth pins are to be coupled together using a second interconnect; within the routing area, generating a first spine polygon of the first interconnect having a plurality of straight edges extending the length L of the routing area and a uniform spine width between the straight edges; within the routing area, generating a second spine polygon of the second interconnect, parallel to the first spine polygon, having a plurality of straight edges extending the length L of the routing area and the uniform spine width between the straight edges; by a computer, generating a first plurality of stitch polygons to couple the first and second pins to the first polygon, a first stitch polygon forming a forming first T-junction with the first polygon and a second stitch polygon forming second T-junction with the first polygon; and by a computer, generating a second plurality of stitch polygons to couple the third and fourth pins to the second polygon, a third stitch polygon forming a third T-junction with the second polygon and a fourth stitch polygon forming fourth T-junction with the second polygon. - View Dependent Claims (17, 18, 19, 20)
-
Specification