System chip synthesis
First Claim
1. A method for synthesizing an integrated circuit design, the method comprising:
- performing a physical optimization of a block and wire placement, before performing a logic synthesis;
partitioning the blocks into cores and shells;
synthesizing the shells and cores; and
recombining the cores and shells into blockswherein;
a core comprises logic in a block bounded by registers; and
a shell comprises logic between a core and pins of a block.
1 Assignment
0 Petitions
Accused Products
Abstract
A technique to design deep sub-micron (DSM) integrated circuits is disclosed, in which global wire delays are minimized first, before performing logic synthesis. According to the present method, a designer performs layout of physical blocks by estimating an area for each block. After connecting the pins of the blocks with no timing constraints, each wire is assigned to a metal layer, based on length. The delay of each wire is minimized by inserting buffers at optimal distances. The blocks are then partitioned into “cores” and “shells.” The shells and cores are synthesized, and then recombined. This procedure greatly reduces the number of design iterations required to complete a design.
68 Citations
23 Claims
-
1. A method for synthesizing an integrated circuit design, the method comprising:
-
performing a physical optimization of a block and wire placement, before performing a logic synthesis; partitioning the blocks into cores and shells; synthesizing the shells and cores; and recombining the cores and shells into blocks wherein; a core comprises logic in a block bounded by registers; and a shell comprises logic between a core and pins of a block. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for designing deep sub-micron integrated circuits, the method comprising:
-
performing a layout of physical blocks by estimating an area for each block; connecting pins of the blocks with no timing constraints; assigning each wire to a metal layer pair; optimizing the speed of each wire for its respective layer; partitioning the blocks into cores comprising logic in a block bounded by registers and shells comprising logic between a core and pins of the block; synthesizing the shells; synthesizing the cores; and recombining the shells and cores. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A method for reducing a design cycle time for integrated circuits, the method comprising:
-
laying out blocks by estimating an area for each block; minimizing a delay in each global wire; partitioning each block into a core of logic bounded by registers and a shell of logic between the core and pins of the block; performing a logic synthesis on each shell by utilizing a known delay for each wire; performing logic synthesis on each core; and recombining the shells and cores. - View Dependent Claims (15, 16, 17)
-
-
18. A method for synthesizing an integrated circuit design, the method comprising:
-
performing a physical optimization of a block and wire placement, before performing a logic synthesis; partitioning the blocks into cores and shells; synthesizing the shells and cores; and recombining the cores and shells into blocks; wherein; performing the physical optimization of the wire placement comprises determining a pin assignment layout; performing the physical optimization of the wire placement further comprises selecting a layer for each wire based on wire length; performing the physical optimization of the wire placement further comprises minimizing a delay in each wire by inserting buffers at optimal distances; each wire is overdesigned in that it is designed to be as fast as possible at the earliest stages of design and wire changes related to wire speed in subsequent design stages comprise area recovery by dropping repeaters that are not absolutely necessary; and synthesizing the shells comprises determining a proportion of time to assign to each shell on each side of a wire wherein each core is logic bounded by registers in a block and each shell is logic between a core and pins of a block. - View Dependent Claims (19, 20, 21, 22, 23)
-
Specification