IP Library › Granted Patent US 10,417,375
Granted Patent B2
US 10,417,375 · App. 15/689,791 · Granted Sep 17, 2019

Time-driven placement and/or cloning of components for an integrated circuit

Inventors: Woohyun Chung (Daejeon, KR); Gi-Joon Nam (Chappaqua, NY); Lakshmi N. Reddy (Briarcliff Manor, NY)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G06F17/5081G06F9/44G06F16/275G06F17/5022G06F17/5045G06F17/5072
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,417,375
App. No.
15/689,791
Granted
Sep 17, 2019
Kind
B2
Abstract

Techniques that facilitate time-driven placement and/or cloning of components for an integrated circuit are provided. In one example, a system includes an analysis component, a geometric area component and a placement component. The analysis component computes timing information and distance information between a set of transistor components of an integrated circuit. The geometric area component determines at least a first geometric area of the integrated circuit and a second geometric area of the integrated circuit based on the timing information and the distance information. The placement component determines a location for a latch component on the integrated circuit based on an intersection between the first geometric area and the second geometric area.

Claims (33)

1. A system, comprising:

a memory that stores computer executable components;

a processor that executes computer executable components stored in the memory, wherein the computer executable components comprise:

an analysis component that computes timing information and distance information between a set of transistor components of an integrated circuit;

a geometric area component that determines at least a first geometric area of the integrated circuit and a second geometric area of the integrated circuit based on the timing information and the distance information; and

a placement component that:

determines a location for a latch component on the integrated circuit that improves at least one timing characteristic of the integrated circuit based on an intersection between the first geometric area and the second geometric area, and

presents an integrated circuit layout with the latch component at the location on the integrated circuit.

2. The system of claim 1 , wherein the analysis component determines a slack timing value between the set of transistor components that satisfies a defined criterion, and wherein the geometric area component determines at least the first geometric area of the integrated circuit and the second geometric area of the integrated circuit based on the slack timing value.

3. The system of claim 1 , wherein the latch component is a first latch component and the location is a first location on the integrated circuit, wherein the computer executable components further comprise a cloning component that clones the first latch component to generate a second latch component, and wherein the cloning component determines a second location for a second latch component on the integrated circuit based on the intersection between the first geometric area and the second geometric area.

4. The system of claim 3 , wherein the cloning component determines a first set of transistor components associated with the first latch component and a second set of transistor components associated with the second latch component based on the intersection between the first geometric area and the second geometric area.

5. The system of claim 1 , wherein the geometric area component determines a total number of geometric areas of the integrated circuit based on the timing information and the distance information.

6. The system of claim 1 , wherein the first geometric area comprises a first portion of transistors from the set of transistor components and the second geometric area comprises a second portion of transistors from the set of transistor components.

7. The system of claim 1 , wherein the placement component determines the location for the latch component between a first transistor component and a second transistor component based on the intersection between the first geometric area and the second geometric area.

8. The system of claim 1 , wherein the location for the latch component facilitates optimized timing characteristics for the integrated circuit.

9. A computer program product for improving design of an integrated circuit, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by processor to cause the processor to:

determine, by the processor, timing information and distance information associated with a set of transistors for an integrated circuit layout associated with an integrated circuit;

determine, by the processor, at least a first geometric area of the integrated circuit layout and a second geometric area of the integrated circuit layout based on the timing information and the distance information; and

determine, by the processor, a location for a sequencing element on the integrated circuit layout that improves at least one timing characteristic of the integrated circuit based on an intersection between the first geometric area and the second geometric area; and

presenting, by the processor, the integrated circuit layout with the sequencing element at the location on the integrated circuit.

10. The computer program product of claim 9 , wherein the program instructions are further executable by the processor to cause the processor to:

determine, by the processor, a slack timing value between the set of transistors that satisfies a defined criterion; and

determine, by the processor, at least the first geometric area of the integrated circuit and the second geometric area of the integrated circuit based on the slack timing value.

11. The computer program product of claim 9 , wherein the sequencing element is a first sequencing element and the location is a first location on the integrated circuit, and wherein the program instructions are further executable by the processor to cause the processor to:

duplicate, by the processor, the sequencing element to generate a second sequencing element; and

determine, by the processor, a second location for a second sequencing element on the integrated circuit layout based on the intersection between the first geometric area and the second geometric area.

12. The computer program product of claim 11 , wherein the program instructions are further executable by the processor to cause the processor to:

determine, by the processor, a first set of transistors for the first sequencing element based on the intersection between the first geometric area and the second geometric area; and

determine, by the processor, a second set of transistors associated with the second sequencing element based on the intersection between the first geometric area and the second geometric area.

13. The computer program product of claim 11 , wherein the program instructions are further executable by the processor to cause the processor to:

determine, by the system, the timing information and the distance information based on analysis of the integrated circuit layout.

14. The computer program product of claim 9 , wherein the program instructions are further executable by the processor to cause the processor to:

determine, by the processor, the location for the sequencing element between a first transistor and a second transistor from the set of transistors based on the intersection between the first geometric area and the second geometric area.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 29, 2017
From: CHUNG, WOOHYUN; NAM, GI-JOON; REDDY, LAKSHMI N.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 043438/0882 →
Continuity (1)
Related Publication 20190065655A1 · Feb 28, 2019