IP Library Granted Patent US 12,645,277
Granted Patent B2
US 12,645,277 · App. 18/132,394 · Granted Jun 2, 2026

Integrated circuit that mitigates inductive-induced voltage overshoot

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/3206G06F1/305G06F1/324
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,645,277
App. No.
18/132,394
Granted
Jun 2, 2026
Kind
B2
Abstract

An integrated circuit (IC) includes an array of compute units and control circuitry for mitigating supply voltage overshoot. Each compute unit contributes to an aggregate time rate of change of current drawn by the IC when transitioning between processing and non-processing states. The control circuitry is configurable to stagger when each compute unit is eligible to transition from processing data to not processing data relative to other compute units, thereby limiting the negative rate of change of current through inductive loads of the IC and preventing voltage overshoot above a maximum threshold. The control circuitry may be distributed among the compute units and configured using statically reconfigurable parameters that specify the maximum number of compute units permitted to transition concurrently and the minimum number of clock cycles between successive group transitions.

Claims (66)

1 . An integrated circuit (IC), comprising:

an array of compute units;

wherein each compute unit is configured such that, when transitioning from processing data to not 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 processing data to not processing data relative to when the other compute units stop processing data to mitigate supply voltage overshoot 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 processing data to not processing data relative to when the other compute units stop processing data to mitigate the supply voltage overshoot.

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 processing data to not 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 processing data to not 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 processing data to not 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 processing data to not processing data and a second clock cycle in which a temporally adjacent group of compute units concurrently transitions from processing data to not 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 processing data to not 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 processing data to not 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 compute units of the array are homogeneous with respect to their configurability to process data.

14 . 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 processing data to not 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 processing data to not processing data relative to when the other compute units stop processing data to mitigate supply voltage overshoot caused by the aggregate time rate of change of current drawn by the IC through inductive loads of the IC.

15 . The method of claim 14 ,

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

16 . The method of claim 15 ,

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.

17 . The method of claim 15 ,

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.

18 . The method of claim 14 , 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 processing data to not processing data relative to when the other compute units stop processing data to mitigate the supply voltage overshoot.

19 . The method of claim 14 , 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 processing data to not processing data.

20 . The method of claim 19 ,

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 processing data to not processing data.

21 . The method of claim 20 ,

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 processing data to not processing data occurs, wherein S is a number of pipeline stages of the individual compute unit.

22 . The method of claim 19 ,

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

23 . The method of claim 14 , 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 processing data to not processing data and a second clock cycle in which a temporally adjacent group of compute units concurrently transitions from processing data to not processing data.

24 . The method of claim 14 , 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 processing data to not 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 processing data to not processing data.

25 . The method of claim 14 ,

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.

26 . The method of claim 14 ,

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

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

an array of compute units;

wherein each compute unit is configured such that, when transitioning from processing data to not 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 processing data to not processing data relative to when the other compute units stop processing data to mitigate supply voltage overshoot 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 23, 2023
From: GANDHI, DARSHAN; SHAH, MANISH K.; PRABHAKAR, RAGHU; GROHOSKI, GREGORY FREDERICK; CHOI, YOUNGMOON; SHIN, JINUK
To: SAMBANOVA SYSTEMS, INC.
Reel/Frame 064042/0504 →
Continuity (2)
Provisional Application 63405363 · Sep 9, 2022
Related Publication 20240085967A1 · Mar 14, 2024
References Cited (23)
US 6127746A · Clemente · 2000 [cited by applicant]
US 20050289499A1 · Ogawa et al. · 2005 [cited by applicant]
US 20090063065A1 · Weekly · 2009 [cited by applicant]
US 20090112550A1 · Aikawa et al. · 2009 [cited by applicant]
US 20110198941A1 · Suzuki · 2011 [cited by examiner]
US 20140157277A1 · Eisen et al. · 2014 [cited by applicant]
US 20140365750A1 · Shirvani et al. · 2014 [cited by applicant]
US 20170038814A1 · Pal · 2017 [cited by examiner]
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 20220344323A1 · Wu · 2022 [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]
U.S. Appl. No. 18/132,393—Final Rejection dated Oct. 24, 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]