IP Library Granted Patent US 8,271,922
Granted Patent B2
US 8,271,922 · App. 12/423,001 · Granted Sep 18, 2012

System and method for clock optimization to achieve timing signoff in an electronic circuit and electronic design automation tool incorporating the same

Assignee: LSI Corporation
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 8,271,922
App. No.
12/423,001
Granted
Sep 18, 2012
Kind
B2
Abstract

A system and method for clock optimization to achieve timing signoff in an electronic circuit and an EDA tool that embodies the system or the method. In one embodiment, the system includes: (1) a clock cell identifier/sorter configured to identify at least some clock cells in a clock network associated with an electronic circuit design and sort the cells according to breadth, (2) a slack analyzer associated with the clock cell identifier/sorter and configured to identify flops that are downstream of the cells and determine a worst setup and hold timing slack thereof and (3) a clock cell delay adjuster associated with the slack analyzer and configured to adjust delays of the cells subject to the worst setup and hold timing slack.

Claims (52)

1. A system for clock optimization to achieve timing signoff in an electronic circuit, comprising:

a clock cell identifier/sorter configured to identify at least some clock cells in a clock network associated with an electronic circuit design and sort said at least some clock cells according to breadth in an order from a broader breadth to a narrower breadth, wherein breadth of a clock cell of said at least some clock cells is a number of data paths of circuit elements driven by said clock cell of said clock network;

a slack analyzer associated with said clock cell identifier/sorter and configured to process said at least some clock cell in said order by identifying flops in said data paths that are downstream of said at least some clock cells and determining a worst setup and hold timing slack thereof; and

a clock cell delay adjuster associated with said slack analyzer and configured to adjust delays of said at least some clock cells subject to said worst setup and hold timing slack.

2. The system as recited in claim 1 wherein said slack analyzer is further configured to determine a worst slack on input data pins on said flops and said clock cell delay adjuster is further configured to adjust said delays subject to said worst slack.

3. The system as recited in claim 2 wherein said slack analyzer is further configured to exclude paths containing both identified transmitting and receiving flops.

4. The system as recited in claim 1 wherein said system is embodied in a timing signoff tool included in an electronic design automation tool, comprising:

a design tool configured to produce a register transfer logic representation of an electronic circuit; and

a layout tool configured to transform said register transfer logic representation into a physical layout of cells and interconnects and implement an engineering change order file with respect thereto.

5. The system as recited in claim 1 wherein said clock cell delay adjuster is further configured to cooperate with a cell library to carry out at least one of:

substituting a faster clock cell,

substituting a slower clock cell, and

adding a further clock cell.

6. The system as recited in claim 5 wherein said faster clock cell and said slower clock cell have identical footprints.

7. The system as recited in claim 1 wherein said slack analyzer and said clock cell delay adjuster are invoked multiple times to reach timing signoff.

8. A method of clock optimization to achieve timing signoff in an electronic circuit, comprising:

identifying at least some clock cells in a clock network associated with an electronic circuit design;

sorting said at least some clock cells according to breadth in an order of a broader breadth to a narrower breadth, wherein breadth of a clock cell of said at least some clock cells is a number of data paths of said clock network that include said clock cell; and

processing said at least some clock cells in said order, including:

identifying flops in said data paths that are downstream of said at least some clock cells;

determining a worst setup and hold timing slack of said flops; and

adjusting delays of said at least some clock cells subject to said worst setup and hold timing slack, wherein said determining and said adjusting are performed by a processor.

9. The method as recited in claim 8 further comprising:

determining a worst slack on input data pins on said flops; and

adjusting said delays subject to said worst slack.

10. The method as recited in claim 9 further comprising excluding paths containing both identified transmitting and receiving flops.

11. The method as recited in claim 8 wherein said method is carried out in a timing signoff tool included in an electronic design automation tool that further performs:

producing a register transfer logic representation of an electronic circuit;

transforming said register transfer logic representation into a physical layout of cells and interconnects; and

implementing an engineering change order file with respect to said physical layout.

12. The method as recited in claim 8 further comprising employing a cell library to carry out at least one of:

substituting a faster clock cell,

substituting a slower clock cell, and

adding a further clock cell.

13. The method as recited in claim 12 wherein said faster clock cell and said slower clock cell have identical footprints.

14. The method as recited in claim 8 further comprising carrying out said determining and said adjusting multiple times to reach timing signoff.

15. An electronic design automation tool, comprising:

a signoff analysis tool configured to perform a timing signoff and including:

a clock cell identifier/sorter configured to identify at least some clock cells in a clock network associated with an integrated circuit design and sort said at least some clock cells according to breadth in an order of a broader breadth to a narrower breadth, wherein breadth of a clock cell of said at least some clock cells is a number of data paths of said clock network that include said clock cell,

a slack analyzer associated with said clock cell identifier/sorter and configured to process said at least some clock cells in said order by identifying identify flops in said data paths that are downstream of said at least some clock cells, determining a worst setup and hold timing slack thereof and determining a worst slack on input data pins on said flops,

a clock cell delay adjuster associated with said slack analyzer and configured to adjust delays of said at least some clock cells subject to said worst setup and hold timing slack and said worst slack; and

an engineering change order generator associated with said clock cell delay adjuster and configured to transform an output thereof into an engineering change order file.

16. The electronic design automation tool as recited in claim 15 wherein said slack analyzer is further configured to exclude paths containing both identified transmitting and receiving flops.

17. The electronic design automation tool as recited in claim 15 further comprising:

a design tool configured to produce a register transfer logic representation of an electronic circuit; and

a layout tool configured to transform said register transfer logic representation into a physical layout of cells and interconnects and implement said engineering change order file with respect thereto.

18. The electronic design automation tool as recited in claim 15 wherein said clock cell delay adjuster is further configured to cooperate with a cell library to carry out at least one of:

substituting a faster clock cell,

substituting a slower clock cell, and

adding a further clock cell.

19. The electronic design automation tool as recited in claim 18 wherein said faster clock cell and said slower clock cell have identical footprints.

20. The electronic design automation tool as recited in claim 15 wherein said slack analyzer and said clock cell delay adjuster are invoked multiple times to reach timing signoff.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded Apr 15, 2022
From: CORTLAND CAPITAL MARKET SERVICES LLC
To: HILCO PATENT ACQUISITION 56, LLC; BELL SEMICONDUCTOR, LLC; BELL NORTHERN RESEARCH, LLC
Reel/Frame 059720/0223 →
SECURITY INTEREST Recorded Feb 1, 2018
From: HILCO PATENT ACQUISITION 56, LLC; BELL SEMICONDUCTOR, LLC; BELL NORTHERN RESEARCH, LLC
To: CORTLAND CAPITAL MARKET SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 045216/0020 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 17, 2017
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.; BROADCOM CORPORATION
To: BELL SEMICONDUCTOR, LLC
Reel/Frame 044887/0109 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (RELEASES RF 032856-0031) Recorded Feb 2, 2016
From: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
To: LSI CORPORATION; AGERE SYSTEMS LLC
Reel/Frame 037684/0039 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2015
From: AGERE SYSTEMS LLC
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 035365/0634 →
PATENT SECURITY AGREEMENT Recorded May 8, 2014
From: LSI CORPORATION; AGERE SYSTEMS LLC
To: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
Reel/Frame 032856/0031 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 14, 2009
From: ZAHN, BRUCE E.; BLAIR, GERARD M.
To: LSI CORPORATION
Reel/Frame 022539/0880 →
Continuity (1)
Related Publication 20100262939A1 · Oct 14, 2010