IP Library › Granted Patent US 10,387,600
Granted Patent B2
US 10,387,600 · App. 15/266,827 · Granted Aug 20, 2019

Dynamic power reduction in circuit designs and circuits

Inventors: Chaithanya Dudha (San Jose, CA); Krishna Garlapati (Los Gatos, CA)
Assignee: XILINX, INC.
G06F17/505G06F1/32G06F17/5045G06F17/5072G06F17/5081G06F2217/78G06F2217/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,387,600
App. No.
15/266,827
Granted
Aug 20, 2019
Kind
B2
Abstract

Reducing dynamic power consumption for a circuit can include analyzing, using a processor, a netlist specifying the circuit to determine a block of combinatorial circuitry in a first signal path with at least a threshold amount of switching activity and detecting, using the processor, a second signal path coupled to the block of combinatorial circuitry by a sequential circuit element. The second signal path has a delay that meets a target signal path requirement. Using the processor, the netlist can be modified by subdividing the block of combinatorial circuitry into at least a first portion and a second portion and moving one of the portions from the first signal path to the second signal path, wherein the moving separates the first portion from the second portion by the sequential circuit element.

Claims (36)

1. A method of reducing dynamic power consumption for a circuit, the method comprising:

analyzing, using a processor, a netlist specifying the circuit to determine switching activity of a block of combinatorial circuitry in a first signal path;

comparing the switching activity of the block of combinatorial circuitry of the first signal path with a threshold amount of switching activity to determine whether the switching activity exceeds the threshold amount of switching activity;

detecting, using the processor, a second signal path coupled to the block of combinatorial circuitry by a sequential circuit element, the second signal path having a delay that meets a target signal path requirement; and

in response to determining that the switching activity exceeds the threshold amount of switching activity and the detecting the second signal path coupled to the block of combinatorial circuitry by the sequential circuit element, modifying, using the processor, the netlist by subdividing the block of combinatorial circuitry into at least a first portion and a second portion and moving one of the portions from the first signal path to the second signal path, wherein the moving separates the first portion from the second portion by the sequential circuit element;

wherein the portions of the block of combinatorial circuitry have an order prior to the modifying, and subsequent to the modifying, the portions of the block of combinatorial circuitry are separated only by one or more sequential circuit elements and the order of the portions is unchanged.

2. The method of claim 1 , wherein a configuration bitstream is generated from the modified netlist and loaded within a programmable integrated circuit to implement the modified netlist within the programmable integrated circuit.

3. The method of claim 1 , wherein the second signal path comprises combinatorial circuitry and the selected portion of the block of combinatorial circuitry abuts the combinatorial circuitry of the second signal path.

4. The method of claim 1 , wherein the first signal path meets a timing requirement.

5. The method of claim 1 , wherein a size of the selected portion is determined based upon a slack of the second signal path.

6. The method of claim 1 , wherein the block of combinatorial circuitry is subdivided into a number of portions determined based upon a number of target signal paths for the block of combinatorial circuitry.

7. The method of claim 1 , wherein the modified netlist is implemented within an integrated circuit.

8. A system for reducing dynamic power consumption of a circuit, comprising:

a processor configured to initiate executable operations including:

analyzing a netlist specifying the circuit to determine switching activity of a block of combinatorial circuitry in a first signal path;

comparing the switching activity of the block of combinatorial circuitry of the first signal path with a threshold amount of switching activity to determine whether the switching activity exceeds the threshold amount of switching activity;

detecting a second signal path coupled to the block of combinatorial circuitry by a sequential circuit element, the second signal path having a delay that meets a target signal path requirement; and

in response to determining that the switching activity exceeds the threshold amount of switching activity and the detecting the second signal path coupled to the block of combinatorial circuitry by the sequential circuit element, modifying the netlist by subdividing the block of combinatorial circuitry into at least a first portion and a second portion and moving one of the portions from the first signal path to the second signal path, wherein the moving separates the first portion from the second portion by the sequential circuit element;

wherein the portions of the block of combinatorial circuitry have an order prior to the modifying, and subsequent to the modifying, the portions of the block of combinatorial circuitry are separated only by one or more sequential circuit elements and the order of the portions is unchanged.

9. The system of claim 8 , wherein a configuration bitstream is generated from the modified netlist and implemented within a programmable integrated circuit to implement the modified netlist within the programmable integrated circuit.

10. The system of claim 8 , wherein the second signal path comprises combinatorial circuitry and the selected portion of the block of combinatorial circuitry abuts the combinatorial circuitry of the second signal path.

11. The system of claim 8 , wherein the first signal path meets a timing requirement.

12. The system of claim 8 , wherein a size of the selected portion is determined based upon a slack of the second signal path.

13. The system of claim 8 , wherein the block of combinatorial circuitry is subdivided into a number of portions determined based upon a number of target signal paths for the block of combinatorial circuitry.

14. The system of claim 8 , wherein the modified netlist is implemented within an integrated circuit.

15. A computer program product comprising a computer readable storage medium having program code stored thereon, the program code executable by a processor to perform a method of reducing dynamic power consumption for a circuit, the method comprising:

analyzing, using the processor, a netlist specifying the circuit to determine switching activity of a block of combinatorial circuitry in a first signal path;

comparing the switching activity of the block of combinatorial circuitry of the first signal path with a threshold amount of switching activity to determine whether the switching activity exceeds the threshold amount of switching activity;

detecting, using the processor, a second signal path coupled to the block of combinatorial circuitry by a sequential circuit element, the second signal path having a delay that meets a target signal path requirement; and

in response to determining that the switching activity exceeds the threshold amount of switching activity and the detecting the second signal path coupled to the block of combinatorial circuitry by the sequential circuit element, modifying, using the processor, the netlist by subdividing the block of combinatorial circuitry into at least a first portion and a second portion and moving one of the portions from the first signal path to the second signal path, wherein the moving separates the first portion from the second portion by the sequential circuit element;

wherein the portions of the block of combinatorial circuitry have an order prior to the modifying, and subsequent to the modifying, the portions of the block of combinatorial circuitry are separated only by one or more sequential circuit elements and the order of the portions is unchanged.

16. The computer program product of claim 15 , wherein a configuration bitstream is generated from the modified netlist and implemented within a programmable integrated circuit to implement the modified netlist within the programmable integrated circuit.

17. The computer program product of claim 15 , wherein the second signal path comprises combinatorial circuitry and the selected portion of the block of combinatorial circuitry abuts the combinatorial circuitry of the second signal path.

18. The computer program product of claim 15 , wherein a size of the selected portion is determined based upon a slack of the second signal path.

19. The computer program product of claim 15 , wherein the block of combinatorial circuitry is subdivided into a number of portions determined based upon a number of target signal paths for the block of combinatorial circuitry.

20. The computer program product of claim 15 , wherein the modified netlist is implemented within an integrated circuit.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 15, 2016
From: DUDHA, CHAITHANYA; GARLAPATI, KRISHNA
To: XILINX, INC.
Reel/Frame 039760/0067 →
Continuity (1)
Related Publication 20180075172A1 · Mar 15, 2018