IP Library Granted Patent US 10,657,210
Granted Patent B2
US 10,657,210 · App. 15/872,253 · Granted May 19, 2020

Slack time recycling

Inventors: Brian Etscheid (Redwood City, CA); Terry Goode (Sunnyvale, CA); Spencer Saunders (Bedfordshire, GB)
Assignee: Mentor Graphics Corporation
G06F17/5045G06F1/08G06F17/5027G06F15/80G06F2217/02G06F2217/04G06F2217/06G06F2217/84
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,657,210
App. No.
15/872,253
Granted
May 19, 2020
Kind
B2
Abstract

This application discloses a computing system to identify a stage of a logic pipeline described in a circuit design that, when implemented in configurable hardware, spans between partitions in the configurable hardware. The computing system can modify the circuit design to alter a timing for logic operations in the logic pipeline, which reduces slack in at least one stage in the logic pipeline adjacent to the identified stage in the logic pipeline. The computing system can utilize the slack reduced from at least one of the stages adjacent to the identified stage to increase a clock frequency in the configurable hardware or increase a time available for propagation delay associated with the identified stage. The computing system can generate a configuration for the configurable hardware that implements the logic pipeline with the altered timing in the configurable hardware.

Claims (31)

1. A method comprising:

utilizing, by a computing system, a physical specification of a verification system to identify partitions of configurable hardware in the verification system;

identifying, by the computing system, a stage of a logic pipeline described in a circuit design that, when implemented in the verification system, spans between a plurality of the partitions of the configurable hardware; and

modifying, by the computing system, the circuit design to alter a timing for logic operations in the logic pipeline based, at least in part, on the identified partitions of the configurable hardware, which reduces slack in at least one stage in the logic pipeline adjacent to the identified stage in the logic pipeline, wherein the configurable hardware, when configured with the modified circuit design, implements the logic pipeline with the altered timing.

2. The method of claim 1 , further comprising generating, by the computing system, a configuration for the configurable hardware, which implements the logic pipeline with the altered timing in the configurable hardware.

3. The method of claim 1 , wherein the alteration of the timing for logic operations in the logic pipeline increases a time available in the identified stage in the logic pipeline to perform the logic operations.

4. The method of claim 1 , wherein the alteration of the timing for the logic operations in the logic pipeline further comprises utilizing the slack reduced from at least one of the stages adjacent to the identified stage to increase a clock frequency in the configurable hardware.

5. The method of claim 1 , wherein the alteration of the timing for the logic operations in the logic pipeline further comprises utilizing the slack reduced from at least one of the stages adjacent to the identified stage to increase a time available for propagation delay associated with the identified stage.

6. The method of claim 1 , wherein the alteration of the timing for the initiation of the logic operations in the logic pipeline further comprises replacing a clock signal received by the identified stage with an acceleration strobe, which advances initiation of the logic operations in the identified stage.

7. The method of claim 1 , wherein the alteration of the timing the timing for the initiation of the logic operations in the logic pipeline further comprises replacing a clock signal received by a stage subsequent in the pipeline to the identified stage with a deceleration strobe, which delays initiation of the logic operations in the stage subsequent in the pipeline to the identified stage.

8. An apparatus comprising at least one computer-readable memory device storing instructions configured to cause one or more processing devices to perform operations comprising:

utilizing a physical specification of a verification system to identify partitions of configurable hardware in the verification system;

identifying a stage of a logic pipeline described in a circuit design that, when implemented in the verification system, spans between a plurality of the partitions of the configurable hardware; and

modifying the circuit design to alter a timing for logic operations in the logic pipeline based, at least in part, on the identified partitions of the configurable hardware, which reduces slack in at least one stage in the logic pipeline adjacent to the identified stage in the logic pipeline, wherein the configurable hardware, when configured with the modified circuit design, implements the logic pipeline with the altered timing.

9. The apparatus of claim 8 , wherein the instructions are configured to cause one or more processing devices to perform operations further comprising generating a configuration for the configurable hardware, which implements the logic pipeline with the altered timing in the configurable hardware.

10. The apparatus of claim 8 , wherein the alteration of the timing for logic operations in the logic pipeline increases a time available in the identified stage in the logic pipeline to perform the logic operations.

11. The apparatus of claim 8 , wherein the alteration of the timing for the logic operations in the logic pipeline further comprises utilizing the slack reduced from at least one of the stages adjacent to the identified stage to increase a clock frequency in the configurable hardware.

12. The apparatus of claim 8 , wherein the alteration of the timing for the logic operations in the logic pipeline further comprises utilizing the slack reduced from at least one of the stages adjacent to the identified stage to increase a time available for propagation delay associated with the identified stage.

13. The apparatus of claim 8 , wherein the alteration of the timing for the initiation of the logic operations in the logic pipeline further comprises replacing a clock signal received by the identified stage with an acceleration strobe, which advances initiation of the logic operations in the identified stage.

14. The apparatus of claim 8 , wherein altering the timing for the initiation of the logic operations in the logic pipeline further comprises replacing a clock signal received by a stage subsequent in the pipeline to the identified stage with a deceleration strobe, which delays initiation of the logic operations in the stage subsequent in the pipeline to the identified stage.

15. A system comprising:

a memory system configured to store computer-executable instructions; and

a computing system, in response to execution of the computer-executable instructions, is configured to:

utilize a physical specification of a verification system to identify partitions of configurable hardware in the verification system;

identify a stage of a logic pipeline described in a circuit design that, when implemented in the verification system, spans between a plurality of the partitions of the configurable hardware; and

modify the circuit design to alter a timing for logic operations in the logic pipeline based, at least in part, on the identified partitions of the configurable hardware, which reduces slack in at least one stage in the logic pipeline adjacent to the identified stage in the logic pipeline, wherein the configurable hardware, when configured with the modified circuit design, implements the logic pipeline with the altered timing.

16. The system of claim 15 , wherein the computing system, in response to execution of the computer-executable instructions, is further configured to generate a configuration for the configurable hardware that implements the logic pipeline with the altered timing in the configurable hardware.

17. The system of claim 15 , wherein the computing system, in response to execution of the computer-executable instructions, is further configured to utilize the slack reduced from at least one of the stages adjacent to the identified stage to increase a clock frequency in the configurable hardware.

18. The system of claim 15 , wherein the computing system, in response to execution of the computer-executable instructions, is further configured to utilize the slack reduced from at least one of the stages adjacent to the identified stage to increase a time available for propagation delay associated with the identified stage.

19. The system of claim 15 , wherein the computing system, in response to execution of the computer-executable instructions, is further configured to replace a clock signal received by the identified stage with an acceleration strobe, which advances initiation of the logic operations in the identified stage.

20. The system of claim 15 , wherein the computing system, in response to execution of the computer-executable instructions, is further configured to replace a clock signal received by a stage subsequent in the pipeline to the identified stage with a deceleration strobe, which delays initiation of the logic operations in the stage subsequent in the pipeline to the identified stage.

Assignments (4)
MERGER AND CHANGE OF NAME Recorded Mar 2, 2021
From: MENTOR GRAPHICS CORPORATION; SIEMENS INDUSTRY SOFTWARE INC.
To: SIEMENS INDUSTRY SOFTWARE INC.
Reel/Frame 055460/0814 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 13, 2018
From: MENTOR GRAPHICS (IRELAND) LIMITED
To: MENTOR GRAPHICS CORPORATION
Reel/Frame 046078/0268 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2018
From: SAUNDERS, SPENCER
To: MENTOR GRAPHICS (IRELAND) LIMITED
Reel/Frame 044879/0099 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 8, 2018
From: ETSCHEID, BRIAN; GOODE, TERRY
To: MENTOR GRAPHICS CORPORATION
Reel/Frame 044867/0936 →