IP Library Granted Patent US 9,032,356
Granted Patent B2
US 9,032,356 · App. 13/901,738 · Granted May 12, 2015

Programmable clock spreading

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 9,032,356
App. No.
13/901,738
Granted
May 12, 2015
Kind
B2
Abstract

An integrated circuit having a programmable clock spreader configured to generate a plurality of controllably skewed clock signals, each applied to a corresponding region within the integrated circuit with circuitry configured to be triggered off the applied clock signal. The programmable clock spreader is designed to enable customization of the current-demand characteristics exhibited by the integrated circuit, e.g., based on the circuit's spectral impedance profile, to cause transient voltage droops in the power-supply network of the integrated circuit to be sufficiently small to ensure proper and reliable operation of the integrated circuit.

Claims (52)

1. An integrated circuit, comprising:

a plurality of clock regions, each configured to receive a respective clock signal from a first plurality of clock signals and having circuitry that is triggered by the respective clock signal from the first plurality of clock signals; and

a programmable clock spreader configured to generate the first plurality of clock signals, the programmable clock spreader including:

a shift register configured to generate a second plurality of clock signals, each corresponding to a different respective phase of a master-clock signal, wherein the shift register is clocked by a reference-clock signal having a frequency that is higher than a frequency of the master-clock signal; and

a plurality of signal selectors, each configured to receive at least a subset of the second plurality of clock signals from said shift register and apply a selected one of said received clock signals of the second plurality to a corresponding clock region of the plurality of clock regions as the respective clock signal, wherein each signal selector of the plurality of signal selectors is programmable to select any one of said received clock signals of the second plurality for application to the corresponding clock region;

wherein the programmable clock spreader has been programmed to cause a dominant frequency band of a current-demand curve exhibited by the integrated circuit to be at a spectral location having one or both of the following characteristics:

said spectral location corresponds to a null or a minimum of a spectral impedance profile of the integrated circuit; and

said spectral location corresponds to an impedance value in the spectral impedance profile of the integrated circuit that does not exceed 40% of a maximum impedance value in the spectral impedance profile.

2. The integrated circuit of claim 1 , wherein the programmable clock spreader further comprises a configuration register configured to store a configuration value that programs the plurality of signal selectors to make corresponding clock signal selections.

3. The integrated circuit of claim 2 , wherein the programmable clock spreader further comprises circuit means for changing the configuration value stored in the configuration register.

4. The integrated circuit of claim 1 , wherein the plurality of signal selectors have been programmed so that said spectral location corresponds to a null or a minimum of the spectral impedance profile of the integrated circuit; and

wherein the plurality of signal selectors have been programmed so that said spectral location also corresponds to an impedance value in the spectral impedance profile of the integrated circuit that does not exceed 40% of the maximum impedance value in the spectral impedance profile.

5. The integrated circuit of claim 1 , wherein

the second plurality of clock signals consists of K clock signals corresponding to K different phases of the master-clock signal, where K is an integer greater than four; and the plurality of signal selectors consists of L signal selectors, where L is a positive integer that is smaller than K.

6. A method of clock spreading, comprising:

(A) obtaining, with a machine, a spectral impedance profile corresponding to an integrated circuit, wherein the integrated circuit comprises:

a programmable clock spreader configured to generate a first plurality of clock signals based on a master clock signal and in accordance with a programmed configuration; and

a plurality of clock regions, each configured to receive a respective clock signal of the first plurality of clock signals from the programmable clock spreader and having circuitry that is configured to be triggered off the respective clock signal; and

(B) identifying, with the machine, a configuration to be programmed into the programmable clock spreader based on the spectral impedance profile, wherein the identifying is performed by:

(B1) selecting a possible configuration for the programmable clock spreader;

(B2) obtaining a current-demand characteristic of the integrated circuit corresponding to the possible configuration selected at step (B1);

(B3) evaluating power-supply noise corresponding to the possible configuration selected at step (B1) based on the spectral impedance profile obtained at step (A) and the current-demand characteristic obtained at step (B2);

(B4) performing steps (B1)-(B3) for each configuration from a plurality of possible configurations of the programmable clock spreader; and

(B5) selecting, from the plurality of possible configurations, the configuration to be programmed into the programmable clock spreader based on evaluation results obtained in different instances of step (B3).

7. The method of claim 6 , further comprising:

(C) programming the configuration identified at step (B) into the programmable clock spreader of the integrated circuit.

8. The integrated circuit that has been programmed using the method of claim 7 .

9. The method of claim 6 , wherein step (B2) comprises running a computer-based simulation to generate the current-demand characteristic corresponding to the possible configuration selected at step (B1).

10. The method of claim 6 , wherein step (B3) comprises:

(B3a) selecting a predetermined number of frequency bands in the current-demand curve obtained at step (B2);

(B3b) multiplying an amplitude of each frequency band selected at step (B3a) by a corresponding impedance value from the spectral impedance profile obtained at step (A); and

(B3c) determining a sum of the multiplication products generated at step (B3b).

11. The method of claim 6 , wherein step (B) comprises identifying the configuration to be programmed into the programmable clock spreader in a manner that causes a dominant frequency band of a corresponding current-demand curve exhibited by the integrated circuit to be at a spectral location corresponding to a null or a minimum of the spectral impedance profile obtained at step (A).

12. The method of claim 6 , wherein step (B) comprises identifying the configuration to be programmed into the programmable clock spreader in a manner that causes a dominant frequency band of a corresponding current-demand curve exhibited by the integrated circuit to be at a spectral location corresponding to an impedance value in the spectral impedance profile obtained at step (A) that does not exceed 40% of a maximum impedance value in the spectral impedance profile.

13. The method of claim 6 , wherein step (A) comprises running a computer-based simulation to generate the spectral impedance profile.

14. The method of claim 6 , wherein step (A) comprises measuring the spectral impedance profile of the integrated circuit using a circuit tester.

15. The method of claim 6 , wherein the programmable clock spreader comprises:

circuit means for generating a second plurality of clock signals, each corresponding to a different respective phase of the master-clock signal; and

a plurality of signal selectors, each configured to receive at least a subset of the second plurality of clock signals from said circuit means and apply a selected one of said received clock signals of the second plurality to a corresponding clock region of the plurality of clock regions as the respective clock signal, wherein each signal selector of the plurality of signal selectors is programmable to select any one of said received clock signals of the second plurality for application to the corresponding clock region.

16. The method of claim 15 , wherein the second plurality of clock signals consists of K clock signals corresponding to K different phases of the master-clock signal, where K is an integer greater than four; and

the plurality of signal selectors consists of L signal selectors, where L is a positive integer that is smaller than K.

17. A non-transitory machine-readable medium, having encoded thereon program code, wherein, when the program code is executed by a machine, the machine implements a method of clock spreading, the method comprising:

(A) obtaining a spectral impedance profile corresponding to an integrated circuit, wherein the integrated circuit comprises:

a programmable clock spreader configured to generate a first plurality of clock signals based on a master-clock signal and in accordance with a programmed configuration; and

a plurality of clock regions, each configured to receive a respective clock signal of the first plurality of clock signals from the programmable clock spreader and having circuitry that is configured to be triggered off the respective clock signal; and

(B) identifying a configuration to be programmed into the programmable clock spreader based on the spectral impedance profile;

wherein when programmed, the programmable clock spreader causes a dominant frequency band of a current-demand curve exhibited by the integrated circuit to be at a spectral location having the following characteristics:

said spectral location corresponds to a null or a minimum of a spectral impedance profile of the integrated circuit; and

said spectral location corresponds to an impedance value in the spectral impedance profile of the integrated circuit that does not exceed 40% of a maximum impedance value in the spectral impedance profile.

18. The non-transitory machine-readable medium of claim 17 , wherein a shift register located in the programmable clock spreader receives a reference-clock signal having a frequency that is higher than a frequency of the master-clock signal.

19. The non-transitory machine-readable medium of claim 17 , wherein a configuration register located in the programmable clock spreader stores a configuration value that directs a plurality of signal selectors to make corresponding clock signal selections.

20. The non-transitory machine-readable medium of claim 19 , wherein the plurality of signal selectors have been programmed so that said spectral location corresponds to an impedance value in the spectral impedance profile of the integrated circuit that does not exceed 40% of the maximum impedance value in the spectral impedance profile.

Assignments (10)
MERGER Recorded Mar 3, 2023
From: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED; BROADCOM INTERNATIONAL PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 062952/0850 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 14, 2020
From: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
To: BROADCOM INTERNATIONAL PTE. LTD.
Reel/Frame 053771/0901 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE PREVIOUSLY RECORDED AT REEL: 047422 FRAME: 0464. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 6, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048883/0702 →
MERGER Recorded Oct 5, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047422/0464 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041710/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037808/0001 →
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: LSI CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 035390/0388 →
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 May 24, 2013
From: MONTHIE, JAMES G.; SREEKUMAR, VINEET; YASHWANTE, RANJIT
To: LSI CORPORATION
Reel/Frame 030480/0931 →