IP Library Granted Patent US 12,493,337
Granted Patent B2
US 12,493,337 · App. 18/132,390 · Granted Dec 9, 2025

Integrated circuit that mitigates inductive-induced voltage droop

Inventors: Darshan Gandhi (Palo Alto, CA); Manish K. Shah (Austin, TX); Raghu Prabhakar (San Jose, CA); Gregory Frederick Grohoski (Bee Cave, TX); Youngmoon Choi (Milpitas, CA); Jinuk Shin (San Jose, CA)
Assignee: SambaNova Systems, Inc.
G06F1/305G01R31/275G06F1/08G06F1/28G06F1/324G06F1/3206
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 12,493,337
App. No.
18/132,390
Granted
Dec 9, 2025
Kind
B2
Abstract

An integrated circuit (IC) includes an array of compute units. Each compute unit is configured such that, when transitioning from not processing data to processing data, the compute unit makes an individual contribution to an aggregate time rate of change of current drawn by the IC. Control circuitry is configurable to, for each compute unit of the array of compute units, control when the compute unit is eligible to transition from not processing data to processing data relative to when the other compute units start processing data to mitigate supply voltage droop caused by the aggregate time rate of change of current drawn by the IC through inductive loads of the IC.

Claims (76)

1 . An integrated circuit (IC), comprising:

an array of compute units;

wherein each compute unit is configured such that, when transitioning from not processing data to processing data, the compute unit makes an individual contribution to an aggregate time rate of change of current drawn by the IC;

control circuitry configurable to, for each compute unit of the array of compute units, control when the compute unit is eligible to transition from not processing data to processing data relative to when the other compute units start processing data to mitigate supply voltage droop caused by the aggregate time rate of change of current drawn by the IC through inductive loads of the IC.

2 . The IC of claim 1 ,

wherein each of the compute units comprises a portion of the control circuitry such that the control circuitry is distributed among the compute units.

3 . The IC of claim 2 ,

wherein the integrated circuit further comprises switches that connect the compute units;

wherein each of the switches comprises a portion of the control circuitry such that the control circuitry is distributed among the compute units and among the switches.

4 . The IC of claim 2 ,

wherein the integrated circuit further comprises memory units that buffer data to and/or from the compute units;

wherein each of the memory units comprises a portion of the control circuitry such that the control circuitry is distributed among the compute units and among the memory units.

5 . The IC of claim 1 , further comprising:

configuration storage statically reconfigurable with configuration data usable by the control circuitry to control when each of the compute units is eligible to transition from not processing data to processing data relative to when the other compute units start processing data to mitigate the supply voltage droop.

6 . The IC of claim 1 ,

wherein the control circuitry is configurable to control the compute units such that no more than a statically reconfigurable number of compute units concurrently transitions from not processing data to processing data.

7 . The IC of claim 6 ,

wherein the statically reconfigurable number of compute units is based on simulations that estimate the individual contribution made by each compute unit to the aggregate time rate of change of current drawn by the IC when transitioning from not processing data to processing data.

8 . The IC of claim 7 ,

wherein the simulations estimate the individual contribution as a time rate of change of current drawn by the individual compute unit for approximately S clock cycles beginning with a clock cycle in which the transition from not processing data to processing data occurs, wherein S is a number of pipeline stages of the individual compute unit.

9 . The IC of claim 6 ,

wherein the statically reconfigurable number of compute units is based on a clock period of the IC.

10 . The IC of claim 1 ,

wherein the control circuitry is configurable to control the compute units such that at least a statically reconfigurable number of clock cycles passes between a first clock cycle in which a group of compute units concurrently transitions from not processing data to processing data and a second clock cycle in which a temporally adjacent group of compute units concurrently transitions from not processing data to processing data.

11 . The IC of claim 1 ,

wherein the control circuitry is configurable to control the compute units such that at least a statically reconfigurable number of clock cycles passes between a first clock cycle in which a group of no more than a statically reconfigurable number of compute units concurrently transitions from not processing data to processing data and a second clock cycle in which a temporally adjacent group of no more than the statically reconfigurable number of compute units concurrently transitions from not processing data to processing data.

12 . The IC of claim 1 ,

wherein the IC comprises a dataflow architecture processor statically reconfigurable to process data according to a dataflow graph; and

wherein the compute units are statically reconfigurable to perform operations of the dataflow graph.

13 . The IC of claim 1 ,

wherein the IC comprises two or more power domains configured to be supplied power from two or more respective power supplies;

wherein each compute unit is supplied power by only one of the two or more power domains; and

wherein, for each power domain of the two or more power domains:

the control circuitry is configurable to, for each compute unit of the array of compute units, control when the compute unit is eligible to transition from not processing data to processing data relative to when the other compute units that are supplied power by the same power domain start processing data and independent of when compute units that are supplied power by the other power domains start processing data.

14 . The IC of claim 1 ,

wherein the compute units of the array are homogeneous with respect to their configurability to process data.

15 . A method, comprising:

in an integrated circuit (IC), comprising an array of compute units, wherein each compute unit is configured such that, when transitioning from not processing data to processing data, the compute unit makes an individual contribution to an aggregate time rate of change of current drawn by the IC:

for each compute unit of the array of compute units:

controlling, by control circuitry, when the compute unit is eligible to transition from not processing data to processing data relative to when the other compute units start processing data to mitigate supply voltage droop caused by the aggregate time rate of change of current drawn by the IC through inductive loads of the IC.

16 . The method of claim 15 ,

wherein each of the compute units comprises a portion of the control circuitry such that the control circuitry is distributed among the compute units.

17 . The method of claim 16 ,

wherein the integrated circuit further comprises switches that connect the compute units;

wherein each of the switches comprises a portion of the control circuitry such that the control circuitry is distributed among the compute units and among the switches.

18 . The method of claim 16 ,

wherein the integrated circuit further comprises memory units that buffer data to and/or from the compute units;

wherein each of the memory units comprises a portion of the control circuitry such that the control circuitry is distributed among the compute units and among the memory units.

19 . The method of claim 15 , further comprising:

statically reconfiguring configuration storage of the integrated circuit with configuration data usable by the control circuitry to control when each of the compute units is eligible to transition from not processing data to processing data relative to when the other compute units start processing data to mitigate the supply voltage droop.

20 . The method of claim 15 , further comprising:

controlling, by the control circuitry, the compute units such that no more than a statically reconfigurable number of compute units concurrently transitions from not processing data to processing data.

21 . The method of claim 20 ,

wherein the statically reconfigurable number of compute units is based on simulations that estimate the individual contribution made by each compute unit to the aggregate time rate of change of current drawn by the IC when transitioning from not processing data to processing data.

22 . The method of claim 21 ,

wherein the simulations estimate the individual contribution as a time rate of change of current drawn by the individual compute unit for approximately S clock cycles beginning with a clock cycle in which the transition from not processing data to processing data occurs, wherein S is a number of pipeline stages of the individual compute unit.

23 . The method of claim 20 ,

wherein the statically reconfigurable number of compute units is based on a clock period of the IC.

24 . The method of claim 15 , further comprising:

controlling, by the control circuitry, the compute units such that at least a statically reconfigurable number of clock cycles passes between a first clock cycle in which a group of compute units concurrently transitions from not processing data to processing data and a second clock cycle in which a temporally adjacent group of compute units concurrently transitions from not processing data to processing data.

25 . The method of claim 15 , further comprising:

controlling, by the control circuitry, the compute units such that at least a statically reconfigurable number of clock cycles passes between a first clock cycle in which a group of no more than a statically reconfigurable number of compute units concurrently transitions from not processing data to processing data and a second clock cycle in which a temporally adjacent group of no more than the statically reconfigurable number of compute units concurrently transitions from not processing data to processing data.

26 . The method of claim 15 ,

wherein the IC comprises a dataflow architecture processor statically reconfigurable to process data according to a dataflow graph; and

wherein the compute units are statically reconfigurable to perform operations of the dataflow graph.

27 . The method of claim 15 , further comprising:

wherein the IC comprises two or more power domains configured to be supplied power from two or more respective power supplies;

wherein each compute unit is supplied power by only one of the two or more power domains; and

for each power domain of the two or more power domains and for each compute unit of the array of compute units:

controlling, by the control circuitry, when the compute unit is eligible to transition from not processing data to processing data relative to when the other compute units that are supplied power by the same power domain start processing data and independent of when compute units that are supplied power by the other power domains start processing data.

28 . The method of claim 15 ,

wherein the compute units of the array are homogeneous with respect to their configurability to process data.

29 . A non-transitory computer-readable storage medium having computer program instructions stored thereon that are capable of configuring an integrated circuit (IC), comprising:

an array of compute units;

wherein each compute unit is configured such that, when transitioning from not processing data to processing data, the compute unit makes an individual contribution to an aggregate time rate of change of current drawn by the IC;

control circuitry configurable to, for each compute unit of the array of compute units, control when the compute unit is eligible to transition from not processing data to processing data relative to when the other compute units start processing data to mitigate supply voltage droop caused by the aggregate time rate of change of current drawn by the IC through inductive loads of the IC.

Assignments (2)
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Apr 18, 2025
From: SAMBANOVA SYSTEMS, INC.
To: SILICON VALLEY BANK, A DIVISION OF FIRST-CITIZENS BANK & TRUST COMPANY, AS AGENT
Reel/Frame 070892/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2023
From: GANDHI, DARSHAN; SHAH, MANISH K.; PRABHAKAR, RAGHU; GROHOSKI, GREGORY FREDERICK; CHOI, YOUNGMOON; SHIN, JINUK
To: SAMBANOVA SYSTEMS, INC.
Reel/Frame 064012/0911 →
Continuity (2)
Provisional Application 63405363 · Sep 9, 2022
Related Publication 20240085965A1 · Mar 14, 2024
References Cited (24)
US 6127746A · Clemente · 2000 [cited by applicant]
US 6819538B2 · Blaauw · 2004 [cited by examiner]
US 20050289499A1 · Ogawa et al. · 2005 [cited by applicant]
US 20060123256A1 · Cornelius · 2006 [cited by examiner]
US 20090063065A1 · Weekly · 2009 [cited by applicant]
US 20090112550A1 · Aikawa et al. · 2009 [cited by applicant]
US 20140157277A1 · Eisen et al. · 2014 [cited by applicant]
US 20140365750A1 · Shirvani et al. · 2014 [cited by applicant]
US 20190041942A1 · Keceli et al. · 2019 [cited by applicant]
US 20190267806A1 · Scott et al. · 2019 [cited by applicant]
US 20190339757A1 · Roy et al. · 2019 [cited by applicant]
US 20190341843A1 · Xu et al. · 2019 [cited by applicant]
US 20220357956A1 · Johnson · 2022 [cited by examiner]
US 20240053401A1 · Huang · 2024 [cited by examiner]
US 20240085965A1 · Gandhi et al. · 2024 [cited by applicant]
US 20240085966A1 · Gandhi et al. · 2024 [cited by applicant]
US 20240085967A1 · Gandhi et al. · 2024 [cited by applicant]
US 20240094794A1 · Gandhi et al. · 2024 [cited by applicant]
WO 2010142987A1 · 2010 [cited by applicant]
U.S. Appl. No. 18/132,393—Non-Final Rejection dated Jul. 25, 2024, 9 pages. [cited by applicant]
List of Related cases, dated Apr. 16, 2024, 2 pages. [cited by applicant]
M. Emani et al., Accelerating Scientific Applications With Sambanova Reconfigurable Dataflow Architecture, in Computing in Science & Engineering, vol. 23, No. 2, pp. 114-119, Mar. 26, 2021, [doi: 10.1109/MCSE.2021.30572… [cited by applicant]
Podobas et al, A Survey on Coarse-Grained Reconfigurable Architectures From a Performance Perspective, IEEEAccess, vol. 2020.3012084, Jul. 27, 2020, 25 pages. [cited by applicant]
U.S. Appl. No. 18/132,393—Final Rejection dated Oct. 24, 2024, 9 pages. [cited by applicant]