IP Library Granted Patent US 10,203,718
Granted Patent B1
US 10,203,718 · App. 15/192,299 · Granted Feb 12, 2019

Generating delays of exit points for a clock circuit

Inventor: Usha Narasimha (Plano, TX)
Assignee: XILINX, INC.
G06F1/12G06F1/10
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,203,718
App. No.
15/192,299
Granted
Feb 12, 2019
Kind
B1
Abstract

Generating delays for a clock circuit includes, determining, using a processor, groups of contexts for exit points of the clock circuit based upon a plurality of characteristics and a type selected from a plurality of different types for each characteristic, forming, using the processor, sub-groups of the exit points based upon delay values for the exit points, and determining, using the processor, a mean delay value for each sub-group.

Claims (48)

1. A method of generating delays for a clock circuit, comprising:

determining, using a processor, groups of contexts for exit points of the clock circuit based upon a plurality of characteristics and a type selected from a plurality of different types for each characteristic;

forming, using the processor, sub-groups of the exit points based upon delay values for the exit points, wherein the forming the sub-groups includes sorting the exit points based upon node delay and creating the sub-groups based upon differences in node delay between consecutive exit points exceeding a threshold amount of delay;

determining, using the processor, a delay value for each sub-group based upon the delay values for the exits points in each respective sub-group; and

simulating a circuit design using the delay values of the sub-groups;

wherein the plurality of characteristics include wire type and the plurality of different types for each characteristic include wire orientation and indicate whether the wire type is for a lower level of a tree structure implementation of the clock circuit.

2. The method of claim 1 , wherein the forming the sub-groups comprises:

selectively assigning exit points to different ones of the sub-groups based upon reduction in spread of the sub-groups.

3. The method of claim 1 , wherein each group includes a different combination of types for the plurality of characteristics.

4. The method of claim 1 , wherein:

the characteristics include a buffer, a buffer node, a pre-buffer, and a pre-buffer node;

types of the buffer and the pre-buffer include different types of buffers; and

types of the buffer node and the pre-buffer node include different wire types.

5. The method of claim 1 , wherein:

the characteristics include tile crossings of the buffer node and tile crossings of the pre-buffer node;

types of tile crossings of the buffer node indicate a type of a tile of a programmable integrated circuit that the buffer node crosses; and

types of the tile crossings of the buffer node indicate the type of the tile of the programmable integrated circuit that the pre-buffer node crosses.

6. A system, comprising:

a processor configured to initiate executable operations for generating delays for a clock circuit including:

determining groups of contexts for exit points of the clock circuit based upon a plurality of characteristics and a type selected from a plurality of different types for each characteristic;

forming sub-groups of the exit points based upon delay values for the exit points, wherein the forming the sub-groups includes sorting the exit points based upon node delay and creating the sub-groups based upon differences in node delay between consecutive exit points exceeding a threshold amount of delay;

determining a delay value for each sub-group based upon the delay values for the exit points in each respective sub-group; and

simulating a circuit design using the delay values of the sub-groups;

wherein the plurality of characteristics include wire type and the plurality of different types for each characteristic include wire orientation and indicate whether the wire type is for a lower level of a tree structure implementation of the clock circuit.

7. The system of claim 6 , wherein the forming the sub-groups comprises:

selectively assigning exit points to different ones of the sub-groups based upon reduction in spread of the sub-groups.

8. The system of claim 6 , wherein each group includes a different combination of types for the plurality of characteristics.

9. The system of claim 6 , wherein:

the characteristics include a buffer, a buffer node, a pre-buffer, and a pre-buffer node;

types of the buffer and the pre-buffer include different types of buffers; and

types of the buffer node and the pre-buffer node include different wire types.

10. The system of claim 6 , wherein:

the characteristics include tile crossings of the buffer node and tile crossings of the pre-buffer node;

types of tile crossings of the buffer node indicate a type of a tile of a programmable integrated circuit that the buffer node crosses; and

types of the tile crossings of the buffer node indicate the type of the tile of the programmable integrated circuit that the pre-buffer node crosses.

11. A computer program product comprising a computer readable storage medium having program code stored thereon for generating delays for a clock circuit, the program code executable by a processor to perform operations comprising:

determining groups of contexts for exit points of the clock circuit based upon a plurality of characteristics and a type selected from a plurality of different types for each characteristic;

forming sub-groups of the exit points based upon delay values for the exit points, wherein the forming the sub-groups includes sorting the exit points based upon node delay and creating the sub-groups based upon differences in node delay between consecutive exit points exceeding a threshold amount of delay;

determining a delay value for each sub-group based upon the delay values for the exits points in each respective sub-group; and

simulating a circuit design using the delay values of the sub-groups;

wherein the plurality of characteristics include wire type and the plurality of different types for each characteristic include wire orientation and indicate whether the wire type is for a lower level of a tree structure implementation of the clock circuit.

12. The computer program product of claim 11 , wherein the forming the sub-groups comprises:

selectively assigning exit points to different ones of the sub-groups based upon reduction in spread of the sub-groups.

13. The computer program product of claim 11 , wherein each group includes a different combination of types for the plurality of characteristics.

14. The computer program product of claim 11 , wherein:

the characteristics include a buffer, a buffer node, a pre-buffer, and a pre-buffer node;

types of the buffer and the pre-buffer include different types of buffers; and

types of the buffer node and the pre-buffer node include different wire types.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 24, 2016
From: NARASIMHA, USHA
To: XILINX, INC.
Reel/Frame 039006/0300 →
Cited By (1)
US 12,449,835