(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-12-17
(54)【発明の名称】ニューラルネットワーク負荷のためのニューラルネットワークベースの電力管理
(51)【国際特許分類】
G06G 7/60 20060101AFI20241210BHJP
G06N 3/063 20230101ALI20241210BHJP
G06F 1/26 20060101ALI20241210BHJP
G05F 1/56 20060101ALI20241210BHJP
【FI】
G06G7/60
G06N3/063
G06F1/26
G05F1/56 310L
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024531119
(86)(22)【出願日】2022-11-30
(85)【翻訳文提出日】2024-05-23
(86)【国際出願番号】 US2022080655
(87)【国際公開番号】W WO2023107841
(87)【国際公開日】2023-06-15
(32)【優先日】2021-11-30
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2022-11-29
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】507364838
【氏名又は名称】クアルコム,インコーポレイテッド
(74)【代理人】
【識別番号】100108453
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100163522
【氏名又は名称】黒田 晋平
(72)【発明者】
【氏名】ムスタファ・ケスキン
(72)【発明者】
【氏名】グオチン・ミアオ
(72)【発明者】
【氏名】サミール・ワドファ
【テーマコード(参考)】
5B011
5H430
【Fターム(参考)】
5B011DA02
5B011DB03
5B011EA08
5B011GG02
5B011GG03
5B011GG06
5B011KK01
5H430BB05
5H430BB09
5H430BB12
5H430EE04
5H430HH03
(57)【要約】
ニューラルネットワーク回路などの動的負荷に電力を供給するための方法及び装置。1つの例示的な電源回路は、概して、電圧レギュレータ回路と、電圧レギュレータ回路の1つ又は複数の出力に結合された分配回路とを含む。分配回路は、動的負荷の変化に基づいて異なる量の電流を出力するように構成されている。いくつかの態様では、動的負荷は、複数のセグメントを有するニューラルネットワーク回路を含む。この場合、分配回路は、ニューラルネットワーク回路の複数のセグメント内のどのセグメントがアクティブであるかに基づいて、異なる量の電流を出力するように構成することができる。
【特許請求の範囲】
【請求項1】
動的負荷に電力を供給するための電源回路であって、
電圧レギュレータ回路と、
前記電圧レギュレータ回路の1つ又は複数の出力に結合され、かつ前記動的負荷の変化に基づいて異なる量の電流を出力するように構成された分配回路と、
を備える、電源回路。
【請求項2】
前記動的負荷が、複数のセグメントを有するニューラルネットワーク回路を含み、
前記分配回路が、前記ニューラルネットワーク回路の前記複数のセグメント内のどのセグメントがアクティブであるかに基づいて、前記異なる量の電流を出力するように構成されている、
請求項1に記載の電源回路。
【請求項3】
前記動的負荷が、複数のセグメントを有するニューラルネットワーク回路を含み、
前記分配回路の第1の出力が、前記ニューラルネットワーク回路の第1のセグメントに結合され、
前記分配回路の第2の出力が、前記ニューラルネットワーク回路の第2のセグメントに結合されている、
請求項1に記載の電源回路。
【請求項4】
前記ニューラルネットワーク回路の前記第1のセグメントが、前記ニューラルネットワーク回路の前記第2のセグメントよりも多い数の構成要素を有し、前記分配回路が、前記第2のセグメントがアクティブであるときと比較して、前記第1のセグメントがアクティブであるときにより高い電流を供給するように構成されている、請求項3に記載の電源回路。
【請求項5】
前記分配回路が、複数のパスゲートトランジスタを備え、前記複数のパスゲートトランジスタ内の第1のトランジスタが、前記ニューラルネットワーク回路の前記第1のセグメントがアクティブであるときにオンにされるように構成され、前記複数のパスゲートトランジスタ内の第2のトランジスタが、前記ニューラルネットワーク回路の前記第2のセグメントがアクティブであるときにオンにされるように構成され、前記第2のトランジスタが、前記第1のトランジスタよりも小さい、請求項4に記載の電源回路。
【請求項6】
前記分配回路が、前記電圧レギュレータ回路の前記1つ又は複数の出力に結合された複数のスイッチを備え、前記複数のスイッチ内の第1のスイッチが、前記ニューラルネットワーク回路の前記第1のセグメントがアクティブであるときにオンにされるように構成され、前記複数のスイッチ内の第2のスイッチが、前記ニューラルネットワーク回路の前記第2のセグメントがアクティブであるときにオンにされるように構成されている、請求項3に記載の電源回路。
【請求項7】
前記複数のスイッチ内の第3のスイッチが、前記ニューラルネットワーク回路の前記第1のセグメントがアクティブであるとき、かつ増加した電流需要の間隔の間、オンにされるように構成され、前記第1のスイッチが、前記ニューラルネットワーク回路の前記第1のセグメントのためのメインスイッチとして指定され、前記第3のスイッチが、前記ニューラルネットワーク回路の前記第1のセグメントのための補助スイッチとして指定されている、請求項6に記載の電源回路。
【請求項8】
前記分配回路が、スイッチマトリックスを含み、
前記スイッチマトリックスが、前記電圧レギュレータ回路の前記1つ又は複数の出力に結合されたパスゲートトランジスタの行を備え、
パスゲートトランジスタの前記行が、少なくとも2つの異なる量の電流を供給することが可能な複数のトランジスタを備える、
請求項1に記載の電源回路。
【請求項9】
前記電圧レギュレータ回路が、スイッチモード電源回路を備える、請求項1に記載の電源回路。
【請求項10】
前記電圧レギュレータ回路が、一次電圧レギュレータ回路と複数の二次電圧レギュレータ回路とを備え、前記複数の二次電圧レギュレータ回路が、前記一次電圧レギュレータ回路の出力に結合された入力を有し、前記電圧レギュレータ回路の前記1つ又は複数の出力に結合された出力を有する、請求項1に記載の電源回路。
【請求項11】
前記一次電圧レギュレータ回路が、スイッチモード電源回路を備え、
前記複数の二次電圧レギュレータ回路が、複数の低ドロップアウト(LDO)レギュレータ回路を備え、
前記複数のLDOレギュレータ回路が、2つ以上の異なる出力電圧を出力するように構成されている、
請求項10に記載の電源回路。
【請求項12】
前記分配回路が、パスゲートトランジスタの複数の行を備えるスイッチマトリックスを含み、前記スイッチマトリックスの各行が、前記複数の二次電圧レギュレータ回路の異なる出力に結合され、前記スイッチマトリックスの各列が、前記電圧レギュレータ回路の前記1つ又は複数の出力に結合されている、請求項10に記載の電源回路。
【請求項13】
前記電圧レギュレータ回路が、前記二次電圧レギュレータ回路のうちの少なくとも1つと並列に結合され、かつ前記一次電圧レギュレータ回路の前記出力を前記電圧レギュレータ回路の前記出力のうちの少なくとも1つに直接結合させるように構成された少なくとも1つのバイパス回路、を更に備える、請求項10に記載の電源回路。
【請求項14】
前記電圧レギュレータ回路が、レプリカ負荷回路を有するフィードバックループを備える、請求項1に記載の電源回路。
【請求項15】
前記電圧レギュレータ回路の前記出力に結合され、かつ前記電圧レギュレータ回路の前記出力における出力電圧を感知するように構成された複数のセンサ、を有するセンサマトリックスを更に備え、前記センサマトリックスが、フィードバックループ内で前記分配回路に結合されている、請求項1に記載の電源回路。
【請求項16】
前記センサマトリックスに結合された複数の入力を有し、かつ前記分配回路の1つ又は複数の制御入力に結合された1つ又は複数の出力を有するコントローラ、を更に備え、前記コントローラが、前記複数のセンサによって感知された前記電圧レギュレータ回路の前記出力における前記出力電圧の指示に少なくとも部分的に基づいて、前記分配回路の動作を制御するように構成されている、請求項15に記載の電源回路。
【請求項17】
前記分配回路の1つ又は複数の制御入力に結合された1つ又は複数の出力を有し、かつ前記分配回路の動作を制御するように構成されたコントローラ、を更に備え、前記コントローラが、前記電源回路に関連付けられたプロセス、電圧、又は温度の少なくとも1つの指示を受信するように構成されている、請求項1に記載の電源回路。
【請求項18】
前記分配回路の1つ又は複数の制御入力に結合された1つ又は複数の出力を有し、かつ前記分配回路の動作を制御するように構成されたコントローラ、を更に備え、前記コントローラが、ニューラルネットワーク回路を備え、前記コントローラが、更に、推論学習に基づいて、前記動的負荷について訓練されるように、かつ前記分配回路又は前記電圧レギュレータ回路のうちの少なくとも1つの前記動作を制御するように構成されている、請求項1に記載の電源回路。
【請求項19】
前記分配回路の1つ又は複数の制御入力に結合された1つ又は複数の出力を有し、かつ前記分配回路の動作を制御するように構成されたコントローラ、を更に備え、前記動的負荷が、複数のセグメントを有するニューラルネットワーク回路を含み、前記コントローラが、前記ニューラルネットワーク回路の1つ又は複数の特性に基づいて前記分配回路の前記動作を制御するように構成されている、請求項1に記載の電源回路。
【請求項20】
前記ニューラルネットワーク回路の前記1つ又は複数の特性が、前記複数のセグメントの構造、前記複数のセグメントの各セグメント内の構成要素の数、重みの量子化レベル、アクティブ化の量子化レベル、重みのスパース性情報、又はアクティブ化ユニットのスパース性情報のうちの少なくとも1つを含む、請求項19に記載の電源回路。
【請求項21】
前記分配回路の1つ又は複数の制御入力に結合された1つ又は複数の出力を有し、かつ前記分配回路の動作を制御するように構成されたコントローラ、を更に備え、前記コントローラが、前記電圧レギュレータ回路の1つ又は複数の制御入力に結合された1つ又は複数の他の出力を有し、前記電圧レギュレータ回路の動作を制御するように更に構成されている、請求項1に記載の電源回路。
【請求項22】
電力を供給する方法であって、
電圧レギュレータ回路を動作させることと、
第1の電流を負荷に供給するように分配回路を動作させることであって、前記分配回路が前記電圧レギュレータ回路の1つ又は複数の出力と前記負荷との間に結合されている、前記分配回路を動作させることと、
前記負荷の変化に基づいて、第2の電流を前記負荷に供給するように前記分配回路を動作させることであって、前記第2の電流が前記第1の電流とは異なる、前記分配回路を動作させることと、
を含む、方法。
【請求項23】
前記負荷が、複数のセグメントを有するニューラルネットワーク回路を含み、
前記負荷の前記変化が、前記ニューラルネットワーク回路の前記複数のセグメント内の異なるセグメントのアクティブ化を含む、
請求項22に記載の方法。
【請求項24】
前記負荷が、複数のセグメントを有するニューラルネットワーク回路を含み、
前記第1の電流を供給するように前記分配回路を動作させることが、前記ニューラルネットワーク回路の第1のセグメントに前記第1の電流を供給することを含み、
前記第2の電流を供給するように前記分配回路を動作させることが、前記ニューラルネットワーク回路の第2のセグメントをアクティブ化することに基づいて、前記第2のセグメントに前記第2の電流を供給することを含む、
請求項22に記載の方法。
【請求項25】
前記ニューラルネットワーク回路の前記第2のセグメントが、前記ニューラルネットワーク回路の前記第1のセグメントよりも少ない数の構成要素を有し、
前記負荷の前記変化が、前記第1のセグメントを非アクティブ化することと、前記第2のセグメントをアクティブ化することとを含み、
前記第2の電流が、前記第1の電流よりも低く、
前記分配回路が、複数のパスゲートトランジスタを備え、
前記第1の電流を供給するように前記分配回路を動作させることが、前記ニューラルネットワーク回路の前記第1のセグメントに前記第1の電流を供給するために、前記複数のパスゲートトランジスタ内の第1のトランジスタをオンにすることを含み、
前記第2の電流を供給するように前記分配回路を動作させることが、前記ニューラルネットワーク回路の前記第2のセグメントに前記第2の電流を供給するために、前記第1のトランジスタをオフにすることと、前記複数のパスゲートトランジスタ内の第2のトランジスタをオンにすることとを含み、
前記第2のトランジスタが、前記第1のトランジスタよりも小さい、
請求項24に記載の方法。
【請求項26】
前記分配回路が、複数のスイッチを備え、
前記第1の電流を供給するように前記分配回路を動作させることが、前記ニューラルネットワーク回路の前記第1のセグメントに前記第1の電流を供給するために、前記複数のスイッチ内の第1のスイッチを閉じることを含み、
前記第2の電流を供給するように前記分配回路を動作させることが、前記ニューラルネットワーク回路の前記第2のセグメントに前記第2の電流を供給するために、前記第1のスイッチを開くことと、前記複数のスイッチ内の第2のスイッチを閉じることとを含み、
前記第1の電流を供給するように前記分配回路を動作させることが、増加した電流需要の間隔中に前記複数のスイッチ内の第3のスイッチを閉じることを更に含み、
前記第1のスイッチが、前記ニューラルネットワーク回路の前記第1のセグメントのためのメインスイッチとして指定され、
前記第3のスイッチが、前記ニューラルネットワーク回路の前記第1のセグメントのための補助スイッチとして指定されている、
請求項24に記載の方法。
【請求項27】
前記電圧レギュレータ回路が、一次電圧レギュレータ回路と複数の二次電圧レギュレータ回路とを備え、前記複数の二次電圧レギュレータ回路が、前記一次電圧レギュレータ回路の出力に結合された入力を有し、前記電圧レギュレータ回路の1つ又は複数の出力に結合された出力を有し、
前記複数の二次電圧レギュレータ回路が、2つ以上の異なる出力電圧を出力するように構成されており、
前記方法が、
前記負荷に電力を供給するために前記二次電圧レギュレータ回路のうちの1つを選択することと、
前記二次電圧レギュレータ回路のうちの少なくとも1つを選択的にバイパスすることと、
を更に含む、
請求項22に記載の方法。
【請求項28】
前記分配回路が、パスゲートトランジスタの複数の行を備えるスイッチマトリックスを含み、
前記スイッチマトリックスの各行が、前記複数の二次電圧レギュレータ回路の異なる出力に結合され、
前記スイッチマトリックスの各列が、前記電圧レギュレータ回路の前記1つ又は複数の出力に結合され、
前記第1の電流を供給するように前記分配回路を動作させることが、前記負荷に前記第1の電流を供給するために、前記スイッチマトリックス内の第1の行及び第1の列における第1のトランジスタをオンにすることを含み、
前記第2の電流を供給するように前記分配回路を動作させることが、前記負荷の前記変化に基づいて前記第2の電流を供給するために、前記第1のトランジスタをオフにすることと、前記スイッチマトリックス内の第2の行及び第2の列における第2のトランジスタをオンにすることとを含む、
請求項27に記載の方法。
【請求項29】
前記電圧レギュレータ回路の出力における出力電圧を感知することと、
コントローラにおいて、前記電圧レギュレータ回路の前記出力における前記出力電圧の指示を受信することと、
前記電圧レギュレータ回路の前記出力における前記出力電圧の前記指示に少なくとも部分的に基づいて、前記分配回路の動作を制御することと、
を更に含む、請求項22に記載の方法。
【請求項30】
コントローラを用いて前記分配回路の動作を制御することと、
前記負荷に対する変化に基づいて前記コントローラを訓練することであって、前記制御することが、推論学習を使用して前記コントローラを用いて前記分配回路の前記動作を制御することを含む、訓練することと、
前記コントローラを用いて前記電圧レギュレータ回路の動作を制御することであって、
前記負荷が、複数のセグメントを有するニューラルネットワーク回路を含み、
前記制御することが、前記ニューラルネットワーク回路の1つ又は複数の特性に基づいて、前記コントローラを用いて前記分配回路の前記動作を制御することを含み、
前記ニューラルネットワーク回路の前記1つ又は複数の特性が、前記複数のセグメントの構造、前記複数のセグメントの各セグメント内の構成要素の数、重みの量子化レベル、アクティブ化の量子化レベル、重みのスパース性情報、又はアクティブ化ユニットのスパース性情報のうちの少なくとも1つを含む、
制御することと、
を更に含む、請求項27に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、本出願の譲受人に譲渡され、以下に完全に記載されるかのように、かつ全ての適用可能な目的のためにそれらの全体が参照により本明細書に明確に組み込まれる、2021年11月30日に出願された米国仮出願第63/284,478号の利益及び優先権を主張する、2022年11月29日に出願された米国出願第18/059,954号の優先権を主張する。
【背景技術】
【0002】
開示の分野
本開示の態様は、電子回路に関し、具体的には、ニューラルネットワーク回路などの動的負荷のための電力管理技術に関する。
【0003】
関連技術の記載
消費者向け電子デバイスは、そのようなデバイスの携帯性に起因して複雑な電力仕様を有することがある。加えて、モノのインターネット(internet-of-things、IoT)及びスマート電子デバイスなどの新しい技術分野は、人工知能/機械学習(artificial intelligence/machine learning、AI/ML)アルゴリズム及び深層ニューラルネットワーク(deep neural network、DNN)ハードウェアを使用するプロセッサを含むことができる。これらの新しいプロセッサを有するデバイスは、毎秒数百万回の動作を実行し、大量の電力を消費する場合がある。
【0004】
機械学習は、一般に、アプリオリに知られる訓練データのセットへの一般化適合を表す、訓練されたモデル(例えば、人工ニューラルネットワーク、ツリー、又は他の構造)を生成するプロセスである。新たなデータに訓練済みモデルを適用することにより、推論が生成され、この推論を使用して、新たなデータへの洞察を得ることができる。場合によっては、新たなデータにモデルを適用することは、その新たなデータに対して「推論を実行すること」として説明される。人工ニューラルネットワークは、人工ニューロンの相互接続されたグループを含むことができ、1つ又は複数のニューラル処理ユニット(neural processing units、NPUs)によって実装することができる。人工ニューラルネットワークは、従来の計算技術が扱いにくく、非実用的であり、又は不十分である、いくつかの用途のための革新的かつ有用な計算技術を提供することができる。人工ニューラルネットワークは、観察から機能を推論することができるので、そのようなネットワークは、タスク又はデータの複雑さが従来の技術による機能の設計を面倒にする用途において特に有用である。
【0005】
AI/MLハードウェア及び他のそのような高電力消費構成要素に電力を供給して調整するために、1つ又は複数の電圧レギュレータを使用することができる。電圧レギュレータは、理想的には、負荷電流又は入力電圧の変化にかかわらず、一定の直流(direct current、DC)出力電圧を提供する。電圧レギュレータは、線形レギュレータ又はスイッチングレギュレータとして分類することができる。線形レギュレータは、比較的コンパクトである傾向があるが、多くの用途は、スイッチングレギュレータの効率の向上から利益を得ることができる。線形レギュレータは、例えば、低ドロップアウト(low-dropout、LDO)レギュレータによって実装することができる。スイッチングレギュレータ(「スイッチングコンバータ」又は「スイッチャ」としても知られる)は、例えば、バックコンバータ、ブーストコンバータ、バックブーストコンバータ、又はチャージポンプなどのスイッチモード電源(switched-mode power supply、SMPS)によって実装することができる。
【0006】
例えば、バックコンバータは、典型的には(1)比較的高い電圧レールとスイッチングノードとの間に結合されたハイサイドスイッチと、(2)スイッチングノードと比較的低い電圧レールとの間に結合されたローサイドスイッチと、(3)スイッチングノードと負荷(例えば、シャント容量性素子によって表される)との間に結合されたインダクタとを備える、SMPSの一種である。ハイサイドスイッチ及びローサイドスイッチは、典型的にはトランジスタを用いて実装されるが、ローサイドスイッチは、代替的にダイオードを用いて実装されてもよい。
【0007】
別の例示的なタイプのSMPSとして、ブーストコンバータ又はブーストレギュレータは、入力電圧よりも高い出力電圧を生成する。ブーストレギュレータの「オン」フェーズの間、シャントスイッチは、インダクタが電流を蓄積するように、電圧源及びインダクタを有するループを閉じる。ブーストコンバータの「オフ」フェーズの間、シャントスイッチは、開かれ、インダクタは、電流を流し続けるために、スイッチ側の電圧をより高い電圧に押し上げる。これにより、ダイオード(又は別のスイッチ)が作動し、電流が負荷に流れる。SMPSスイッチのスイッチング動作及び負荷変動は、インダクタを通る動的電流を導入する。
【0008】
電力管理集積回路(Power management integrated circuits、電力管理ICs又はPMICs)は、ホストシステムの電力方式を管理するために使用され、1つ又は複数の電圧レギュレータ(例えば、SMPS及び/又はLDOレギュレータ)を含むことができ、かつ/又は制御することができる。PMICは、デバイス内の電力の流れ及び方向を制御するために、携帯電話、タブレット、ラップトップ、ウェアラブルなどのバッテリ動作式デバイスにおいて使用することができる。PMICは、(例えば、上述したような電圧レギュレータを使用した)DC-DC変換、バッテリ充電、電源選択、電圧スケーリング、電力シーケンシングなど、デバイスのための様々な機能を実行することができる。
【発明の概要】
【0009】
本開示のシステム、方法、及びデバイスは、それぞれがいくつかの態様を有しており、それらのうちの1つの態様のみが、その望ましい属性を表わしているわけではない。以下の特許請求の範囲によって表現されるような、本開示の範囲を限定することなく、いくつかの特徴が、以下で簡潔に論じられる。この論考を検討した後、また特に、「発明を実施するための形態」と題されたセクションを読了した後、本開示の特徴が、本明細書で説明される利点をどのように提供するかが理解されるであろう。
【0010】
本開示のいくつかの態様は、動的負荷に電力を供給するための電源回路を対象とする。電源回路は、概して、電圧レギュレータ回路と、電圧レギュレータ回路の1つ又は複数の出力に結合された分配回路とを含む。分配回路は、動的負荷の変化に基づいて異なる量の電流を出力するように構成されている。いくつかの態様では、動的負荷は、複数のセグメントを有するニューラルネットワーク回路を含む。
【0011】
本開示のいくつかの態様は、電力を供給する方法を対象とする。この方法は、概して、電圧レギュレータ回路を動作させることと、第1の電流を負荷に供給するように、電圧レギュレータ回路の1つ又は複数の出力と負荷との間に結合された分配回路を動作させることと、負荷の変化に基づいて、第1の電流とは異なる第2の電流を負荷に供給するように、分配回路を動作させることと、を含む。
【0012】
他の態様は、前述の方法並びに本明細書で説明される方法を実行するように構成されている、処理システムと、処理システムの1つ又は複数のプロセッサによって実行されたときに、処理システムに前述の方法並びに本明細書で説明される方法を実行させる命令を含む、非一時的コンピュータ可読媒体と、前述の方法並びに本明細書で更に説明される方法を実行するためのコードを含む、コンピュータ可読記憶媒体上に具現化されている、コンピュータプログラム製品と、前述の方法並びに本明細書で更に説明される方法を実行する手段を備える、処理システムとを提供する。
【0013】
上記の目的及び関連する目的の達成のために、1つ又は複数の態様は、以降で十分に説明され、特に特許請求の範囲において指摘される、特徴を含む。以下の説明及び添付図面は、1つ又は複数の態様の特定の例示的特徴を詳細に記載している。しかしながら、これらの特徴は、様々な態様の原理を採用することが可能な様々な方式のうちの、ごく一部を示すものである。
【0014】
本開示の上述の特徴を詳細に理解することができるように、添付図面にその一部が示されている諸態様を参照することによって、上記で簡潔に要約された、より具体的な説明を得ることができる。しかしながら、本説明は、他の等しく効果的な態様を許容する場合があるので、添付の図面が、本開示のいくつかの典型的な態様のみを示し、したがって、その範囲の限定と見なされるべきではないことに留意されたい。
【図面の簡単な説明】
【0015】
【
図1】本開示のいくつかの態様のための動的負荷として機能することができる例示的なニューラルネットワーク回路を示す。
【
図2】本開示のいくつかの態様による、動的負荷のための例示的な電源回路のブロック図である。
【
図3A】本開示のいくつかの態様による、パスゲートを使用して実装された例示的な分配回路と、パスゲート間の例示的な電流負荷分配とを示す。
【
図3B】本開示のいくつかの態様による、パスゲートを使用して実装された例示的な分配回路と、パスゲート間の例示的な電流負荷分配とを示す。
【
図3C】本開示のいくつかの態様による、パスゲートを使用して実装された例示的な分配回路と、パスゲート間の例示的な電流負荷分配とを示す。
【
図4A】本開示のいくつかの態様による、フィードバックループとして電源回路に追加された例示的な分散センサ構造を示す。
【
図4B】本開示のいくつかの態様による、フィードバックループとして電源回路に追加された例示的な分散センサ構造を示す。
【
図5A】本開示のいくつかの態様による、電源回路に実装された例示的な積層電源方式を示す。
【
図5B】本開示のいくつかの態様による、電源回路に実装された例示的な積層電源方式を示す。
【
図5C】本開示のいくつかの態様による、電源回路に実装された例示的な積層電源方式を示す。
【
図5D】本開示のいくつかの態様による、ニューラルネットワーク回路を使用した、電源回路のための電力管理コントローラの例示的な実装形態を示す。
【
図5E】本開示のいくつかの態様による、ニューラルネットワーク回路を使用した、電源回路のための電力管理コントローラの例示的な実装形態を示す。
【
図6A】本開示のいくつかの態様による、1つ又は複数のマトリックス構造を使用して実装された、
図5A~
図5Cの積層電源方式のための例示的な分配回路を示す。
【
図6B】本開示のいくつかの態様による、1つ又は複数のマトリックス構造を使用して実装された、
図5A~
図5Cの積層電源方式のための例示的な分配回路を示す。
【
図7】本開示のいくつかの態様による、電力を供給するための例示的な動作を示す流れ図である。
【
図8】本開示のいくつかの態様による、動的負荷を有する例示的な電子デバイスを示すブロック図である。
【0016】
理解を容易にするために、可能な場合には、図面に共通する同一の要素を指定するために同一の参照番号が使用されている。ある1つの態様の要素及び特徴を、更に詳述することなく、他の態様に有益に組み込むことができる点が想到されている。
【発明を実施するための形態】
【0017】
本開示の態様は、ニューラルネットワーク回路などの動的負荷に電力を供給するための装置、方法、処理システム、及びコンピュータ可読媒体を提供する。1つの例示的な電源回路は、概して、電圧レギュレータ回路と、電圧レギュレータ回路の1つ又は複数の出力に結合された分配回路とを含む。分配回路は、動的負荷の変化に基づいて異なる量の電流を出力するように構成されている。いくつかの態様では、動的負荷は、複数のセグメントを有するニューラルネットワーク回路を含む。この場合、分配回路は、ニューラルネットワーク回路の複数のセグメント内のどのセグメントがアクティブであるかに基づいて、異なる量の電流を出力するように構成することができる。
【0018】
本開示の様々な態様が、添付の図面を参照して、以下でより十分に説明される。しかしながら、本開示は、多くの異なる形態で具現化されてもよく、本開示全体にわたって提示される任意の特定の構造又は機能に限定されるものと解釈されるべきではない。むしろ、これらの態様は、本開示が徹底的で完全になり、本開示の範囲を当業者に十分に伝えるように提供される。本明細書の教示に基づいて、本開示の範囲は、本開示の任意の他の態様とは無関係に実装されるにせよ、本開示の任意の他の態様と組み合わせて実装されるにせよ、本明細書で開示する本開示の任意の態様を包含することが意図されることを、当業者は諒解されたい。例えば、本明細書に記載の任意の数の態様を使用して、装置を実装してもよく、方法を実施してもよい。なお、本開示の範囲は、本明細書に記載する本開示の様々な態様に加えて、又はそれらの態様以外の、他の構造、機能性、又は構造及び機能性を使用して実践されるような装置又は方法を包含することが意図されている。本明細書に開示の本開示のいずれの態様も、特許請求の範囲の1つ又は複数の要素によって具現化できることを理解されたい。
【0019】
「例示的(exemplary)」という語は、「例、事例、又は例示としての役割を果たすこと」を意味するために本明細書で使用される。「例示的」として本明細書で説明したいずれの態様も、必ずしも他の態様よりも好ましい又は有利であると解釈されるべきではない。
【0020】
特定の態様が本明細書で説明されるが、これらの態様の多数の変形及び置換が本開示の範囲内に入る。好ましい態様のいくつかの利益及び利点が述べられるが、本開示の範囲は、特定の利益、用途、又は目的に限定されるものではない。むしろ、本開示の態様は、異なる技術、システム構成、ネットワーク、及びプロトコルに広く適用可能であるものとし、そのうちのいくつかが例として図及び好ましい態様の以下の説明において示される。詳細な説明及び図面は、限定的ではなく、本開示の例示にすぎず、本開示の範囲は、添付の特許請求の範囲及びその等価物によって定義される。
【0021】
ニューラルネットワーク、深層ニューラルネットワーク、及び深層学習に関する簡単な導入
ニューラルネットワークは、相互接続されたノードの層に編成されている。一般に、ノード(又は、ニューロン)は、計算が行われる場所である。例えば、ノードは、入力データを、その入力データを増幅又は減衰させる重み(又は、係数)のセットと組み合わせることができる。それゆえ、入力信号の増幅又は減衰は、ネットワークが学習しようと試みているタスクに関する様々な入力に対しての、相対的重要性の割り当てと見なすことができる。一般に、入力と重みとの積が合計(又は、累算)され、次いで、その信号がネットワークを通って更に進行するべきか否か、及び、どの程度まで進行するべきかを決定するために、この総和がノードの活性化関数に通される。
【0022】
殆どの基本的実装形態では、ニューラルネットワークは、入力層、隠れ層、及び出力層を有し得る。「深層」ニューラルネットワークは、一般に、2つ以上の隠れ層を有する。
【0023】
深層学習は、深層ニューラルネットワークを訓練する方法である。一般に、深層学習は、ネットワークへの入力をネットワークからの出力にマッピングするものであり、またそれゆえ、深層学習は、任意の入力xと任意の出力yとの間の未知の関数f(x)=yを近似するように学習することができるため、「普遍的近似器」と称される場合がある。換言すれば、深層学習は、xをyに変換するための、正しいfを見つけ出す。
【0024】
より具体的には、深層学習は、ノードの各層を、先行の層からの出力である個別の特徴セットに基づいて訓練する。それゆえ、深層ニューラルネットワークの各層が連続するにつれて、特徴は、より複雑なものとなる。それゆえ、深層学習が強力である理由は、深層学習が、各層において連続的により高い抽象レベルで入力を表すように学習し、それにより入力データの有用な特徴表現を構築することによって、入力データから、より高いレベルの特徴を漸進的に抽出して、物体認識などの複雑なタスクを実行することができるためである。
【0025】
例えば、視覚データで提示される場合には、深層ニューラルネットワークの第1の層は、入力データ内の、エッジなどの比較的単純な特徴を認識するように学習することができる。別の実施例では、聴覚データで提示される場合には、深層ニューラルネットワークの第1の層は、入力データ内の、特定の周波数におけるスペクトルパワーを認識するように学習することができる。次いで、深層ニューラルネットワークの第2の層は、第1の層の出力に基づいて、視覚データに関する単純な形状、又は聴覚データに関する音の組み合わせなどの、特徴の組み合わせを認識するように学習することができる。次いで、より上位の層は、視覚データ内の複雑な形状、又は聴覚データ内の単語を認識するように学習することができる。更に上位の層は、一般的な視覚オブジェクト又は話されたフレーズを認識することを学習してもよい。それゆえ、深層学習アーキテクチャは、自然な階層構造を有する問題に適用される場合に、特に良好に機能し得る。
【0026】
例示的な人工ニューラルネットワーク
深層ニューラルネットワーク(DNN)などのニューラルネットワークは、層間の様々な結合性パターンを使用して設計されてもよい。
【0027】
図1は、本開示のいくつかの態様において動的負荷として機能することができる人工ニューロンの複数のレベル(「層」と呼ばれる)を有する例示的なニューラルネットワーク100を示す。ニューラルネットワーク100は、重み104のネットワーク(例えば、フィードフォワード接続)を介してニューロンの別のレベル106(「レベルi+1」とラベル付けされる)に接続されたニューロンのレベル102(「レベルi」とラベル付けされる)を含むことができる。簡略化のために、2つのレベルのニューロンのみが
図1に示されているが、より少ない又はより多いレベルのニューロンが、典型的なニューラルネットワークシステムに存在することができる。ニューロンのうちのいくつかは、側方結合を介して同じ層の他のニューロンに接続することができることに留意されたい。更に、ニューロンのうちのいくつかは、フィードバック接続を介して前の層のニューロンに戻って接続することができる。
【0028】
図1に示されているように、レベル102内の各ニューロンは、例えば、複数の入力信号108
1、108
2、...、108
N(本明細書ではまとめて「入力信号108」と呼ばれ、Nは、レベル102への入力の総数である)から入力信号を受信することができる。場合によっては、入力信号108は、前のレベルの複数のニューロン(
図1には図示せず)によって生成することができる。入力信号108は、レベル102におけるニューロンへのアクティブ化入力(例えば、入力電流又は電圧)を表すことができる。
【0029】
ニューロンの1つのレベルから別のレベルへの信号の転送は、
図1に示されるように、重み104のネットワークを介して達成することができる。重み104は、レベル102のニューロンから出力信号を受信することができる。これらの信号のうちの少なくともいくつかは、調整可能な重み
【数1】
に従ってスケーリングされることができる(式中、Pは、レベル102のニューロンとレベル106のニューロンとの間の接続の総数である)。更に、(スケーリングされた)信号は、レベル106における各ニューロンの入力信号として組み合わせることができる。レベル106内の全てのニューロンは、対応する組み合わされた入力信号に基づいて、1つ又は複数の出力信号110
1、110
2、...、110
M(本明細書ではまとめて「出力信号110」と呼ばれ、Mは、レベル106からの出力の総数である)を生成することができる。次いで、出力信号110は、別の接続ネットワーク(
図1には示されていない)を使用して別のレベルのニューロンに転送することができる。
【0030】
ニューラルネットワーク100は、汎用プロセッサ、デジタル信号プロセッサ(digital signal processor、DSP)、特定用途向け集積回路(application specific integrated circuit、ASIC)、フィールドプログラマブルゲートアレイ(field programmable gate array、FPGA)若しくは他のプログラマブル論理デバイス(programmable logic device、PLD)、個別ゲート若しくはトランジスタ論理、個別ハードウェア構成要素、プロセッサによって実行されるソフトウェアモジュール、又はそれらの任意の組合せによってエミュレートすることができる。ニューラルネットワーク100は、画像及びパターン認識、機械学習、モータ制御などの、広範囲の用途において利用することができる。ニューラルネットワーク100内の各ニューロンは、ニューロン回路として実装することができる。
【0031】
ニューラルネットワーク100をエミュレートするニューラルプロセッサの機能は、ニューロン間の接続の強度を制御することができる接続の重みに依存し得る。重みは、電源切断された後にプロセッサの機能を保持するために、不揮発性メモリに記憶することができる。一態様では、重みメモリは、メインニューラルプロセッサチップとは別個の外部チップ上に実装することができる。重みメモリは、交換可能なメモリカードとしてニューラルプロセッサチップとは別個にパッケージ化されてもよい。これにより、ニューラルプロセッサに多様な機能を提供することができ、特定の機能は、ニューラルプロセッサに現在取り付けられているメモリカードに記憶された重みに基づくことができる。
【0032】
動的負荷のための例示的な電力管理
ニューラルネットワークは、入力層、隠れ層、及び出力層を有することができる。深層ニューラルネットワーク(DNNs)は、一般に、2つ以上の隠れ層を有する。深層ニューラルネットワークを実装する物理ニューラルネットワーク回路は、実質的な過渡電力需要(例えば、短時間にわたる大きな電流変化)の事例を経験することがある。深層ニューラルネットワークを実装するハードウェア回路はまた、負荷の突然の変化を経験することがある(例えば、ニューラルネットワークは、短時間の間に多数の乗算及び累算(multiply-and-accumulate、MAC)演算を処理することを予想することができる)。これらの問題は、深層ニューラルネットワーク構造の複雑さ及び計算リソースの制限によって悪化する可能性がある。DNN及びプロセッサにおいて実行される動作の数に起因して、ニューラルネットワーク回路全体にわたる電力需要対負荷を動的に最適化する(又は少なくとも調整する)ことが望ましい場合がある。更に、機械学習が様々な用途においてますます利用されるようになるにつれて、ニューラルネットワークが電力及び負荷の変化を動的に管理することを可能にするシステム全体の技術及び構造を設計することが望ましい場合がある。
【0033】
本開示の態様は、ニューラルネットワーク回路における電力及び負荷の変化を動的に管理するための技術及び装置を提供する。
【0034】
図2は、本開示のいくつかの態様による、動的負荷222のための例示的な電源回路200のブロック図である。いくつかの態様では、動的負荷222は、ニューラルネットワーク回路(例えば、
図1のニューラルネットワーク100を実装するハードウェア)を含むことができる。例えば、動的負荷222は、ニューラル処理ユニット(neural processing unit、NPU)、中央処理ユニット(central processing unit、CPU)、グラフィックス処理ユニット(graphics processing unit、GPU)、デジタル信号プロセッサ(DSP)、システムオンチップ(system on a chip、SoC)のサブシステムなどの少なくとも一部分であってもよい。電源回路200は、電圧レギュレータ回路202と、分配回路212とを含んでもよい。電圧レギュレータ回路202は、1つ又は複数の層(例えば、単一又は積層)内の1つ又は複数の電圧レギュレータ(例えば、SMPS及び/又はLDOレギュレータ)によって実装することができ、1つ又は複数の調整電圧を生成することができ、調整電圧(単数又は複数)をデバイス内の他の構成要素に(例えば、分配回路212に)提供するための1つ又は複数の出力(例えば、電源レール)を有することができる。分配回路212は、1つ又は複数の調整電圧を受信することができ、分配回路212の1つ又は複数の出力を介して動的負荷222に送られる電流の量を管理することができる。動的負荷222に出力される電流出力の量は、動的イベント、負荷、又は負荷への変化に基づいて制御(例えば、ゲート制御又は調整)することができる。いくつかの態様では、電源回路200は、電圧レギュレータ回路202及び分配回路212のいずれか又は両方を制御することができるコントローラ250を含む。いくつかの態様では、コントローラ250は、動的負荷222内のニューラルネットワーク回路とは異なってもよいニューラルネットワーク回路によって実装することができる。
【0035】
図3Aは、本開示のいくつかの態様による、動的負荷に電力を供給するための例示的な電源回路300のブロック図である。上述したように、電圧レギュレータ回路202は、SMPSのみによって、LDOのみによって、又はSMPS及びLDOによってなど、1つ又は複数の電圧レギュレータによって実装することができる。分配回路212は、メインパスゲート302として指定されるパスゲートと、補助パスゲート304(「ヘルパーパスゲート」とも呼ばれる)として指定される1つ又は複数の他のパスゲートとを常に含むことができる、分散型パスゲート(「伝送ゲート」又は「アナログスイッチ」とも呼ばれる)を使用して実装することができる。分散型パスゲート構造は、動的負荷の電力需要(例えば、ニューラルネットワーク回路322の1つ又は複数のセグメント)に関係するイベント又は情報に応じて、動的負荷にルーティングされ、かつ利用可能な電流を制御するように動作する。
【0036】
例えば、動的負荷は、(図示されるような)ニューラルネットワーク回路322であってもよい。ニューラルネットワーク回路322は、ニューラル処理ユニット(NPU)、グラフィックス処理ユニット(GPU)、デジタル信号プロセッサ(DSP)、又はニューラルネットワークを実現するための任意の他の様々な適切なハードウェア回路のうちの少なくとも一部分によって実装することができる。
図3Aでは、ニューラルネットワーク回路322は、複数の層324、326、328、330、332、及び334を有するニューラルネットワークとして示されているが、ニューラルネットワーク回路322は、そのようなニューラルネットワークを実装するための物理的ハードウェア(例えば、処理要素、乗算及び累算(MAC)モジュール、論理回路など)であることを理解されたい。これらの図示された層の各々は、これらのセグメントがニューラルネットワーク層に対応する又はこれらの層に無相関であるかにかかわらず、ニューラルネットワーク回路322の異なるハードウェアセグメントを表すことができることも理解されたい。言い換えれば、ニューラルネットワーク回路322は、ニューラルネットワーク層に従ってセグメント化される必要はない。この実施例では6つの層(セグメント)が示されているが、ニューラルネットワークは、6つより多い又は少ない層(セグメント)を有してもよい。
【0037】
常に、ニューラルネットワーク回路322の1つ又は複数のセグメントをアクティブ化することができ、他のセグメントを非アクティブ化することができる場合、パスゲートは、セグメントの数、セグメントタイプ及び/若しくは構造、並びに/又はセグメントサイズ(例えば、層ごとにいくつのニューロン323があるか、又はセグメントごとにいくつの処理要素若しくは他の構成要素があるか)に基づいて、ニューラルネットワーク回路322のセグメント(例えば、図示されるようなニューラルネットワークの層)と整列することができる。例えば、より小さいパスゲートは、より少ない構成要素を有するセグメント(例えば、より少ないニューロン323を有する層)によって配置され、それに割り当てられてもよく、一方、より大きいパスゲート(より大きい電流を流すことが可能)は、より多くの構成要素を有するセグメント(例えば、より多くのニューロンを有する層)によって配置され、それに割り当てられてもよい。結果として、電力供給を最適化(又は少なくとも改善)することができ、電力を節約することができ、これにより、バッテリ時間を延長し、熱問題を低減し、デバイス内の電子構成要素(例えば、バッテリ)の寿命を保つように機能することができる。いくつかの態様では、各パスゲートのサイズ及び電力供給能力のスケーリングは、パスゲートがサポートしているニューラルネットワークセグメントの電力需要に密接に関係する。
【0038】
デフォルト設定として、各パスゲートは、パスゲートの関連付けられたニューラルネットワークセグメントがアクティブであるときに「オン」になるように構成することができるが、そうでなければ「オフ」にすることができる。任意の所与の時間において、パスゲートのうちのいずれか1つは、メインパスゲート302として指定されてもよく、他のパスゲートは、ヘルパーパスゲート304と見なすことができる。メインパスゲートは、(例えば、パスゲートに関連付けられたニューラルネットワーク回路322のセグメントの)動的負荷の電流需要によって決定することができる。例えば、電流がニューラルネットワーク回路322内の特定のセグメントに駆動される場合、メインパスゲート302は、そのセグメントに関連付けられたパスゲートとなる。パスゲートとニューラルネットワーク回路322のセグメントとの間の関連付けは、例えば、パスゲートとセグメントとの間の物理的近接性に基づくことができる。
【0039】
例えば、
図3Bに示すように、
図2の分配回路212は、スイッチマトリックス314を含み、パスゲートは、ニューラルネットワーク回路322の6つのセグメント(例えば、ニューラルネットワークの6つの層)の各々について1つのトランジスタである、トランジスタM1~M6によって実装される。いくつかの態様では、スイッチマトリックス314は、トランジスタへの制御入力(例えば、トランジスタM1~M6のための個々のゲート信号)を提供することができるが、他の態様では、スイッチマトリックス314は、パスゲートトランジスタを含むことができる(すなわち、スイッチマトリックスは、分散型パスゲートトランジスタによって実装される)。パスゲートトランジスタは、異なる既定の電流を提供するように、異なるサイズにされてもよい。例えば、図示されるように、トランジスタM1及びM6は、10mAを供給することができ、トランジスタM2及びM5は、20mAを供給することができ、トランジスタM3及びM4は、40mAを供給することができる。より多くの数の構成要素を有するセグメント(例えば、より多くの数のニューロン323を有する層)に、より大きな電流を提供することができる。例えば、(例えば、層324によって表される)1つのセグメントがアクティブであり、他のセグメントが非アクティブであるとき、トランジスタM1は、10mAをアクティブセグメントに供給するように制御することができ、メインパスゲート302として指定することができるが、他のトランジスタM2~M6は、オフにすることができ、補助パスゲート304と見なすことができる。
【0040】
図3Bはまた、電圧レギュレータ回路202のための例示的なフィードバック回路を示す。フィードバック回路は、増幅器306と、増幅器のフィードバックループ内のローカル負荷回路308とを含む。ローカル負荷回路308は、動的負荷の簡略化されたバージョンであるレプリカ負荷回路であってもよい。例えば、動的負荷がニューラルネットワーク回路322である場合、ローカル負荷回路308は、ニューラルネットワーク回路の一部分のみを複製してもよく、又はニューラルネットワーク回路の負荷効果をシミュレートするために、ニューラルネットワーク回路よりも単純な回路として実装されてもよい。ローカル負荷回路308は、動的負荷と同じプロセスを使用して製造されてもよく、動的負荷と同じ電圧及び温度(PVT)を経験することができる。このようにして、電圧レギュレータ回路202は、動的負荷に起因する損失を補償する又は少なくとも調整する出力電圧Vregを生成することができる。電圧レギュレータ回路202の出力からの電圧Vregは、スイッチマトリックス314に供給される。
【0041】
図3Bに示されるものなど、場合によっては、メインパスゲート302(例えば、トランジスタM1)は、十分な電流を負荷に供給することが可能であり得る。しかしながら、他の場合には、負荷は、メインパスゲート302が供給することができるよりも多くの電流を必要とすることがある。そのような場合、電源回路300は、1つ又は複数のヘルパーパスゲート(例えば、補助パスゲート304)が過剰負荷を満たすためにより多くの電流を供給することを可能にすることができる。電源回路300は、必要に応じて、ヘルパーパスゲートを直ちに有効にすることができる。
【0042】
例えば、
図3Cでは、(例えば、層328によって表される)第1のセグメントは、アクティブであるが、トランジスタM3(第1のセグメントのための指定されたメインパスゲート302)が供給することができる40mAよりも大きい需要を有する。したがって、第2のセグメント(例えば、トランジスタM4に最も密接に関連付けられ、層330によって表されるセグメント)が非アクティブ化されたとしても、80mAを第1のセグメントに供給することができるように、トランジスタM4は、追加の40mAを供給するために、補助パスゲート304としてオンにすることができる。いくつかの態様では、パスゲートトランジスタM3及びM4が電流負荷をアクティブセグメントに供給することが可能であるので、他の補助パスゲート304は、効率のために無効化されたままであってもよい。
【0043】
ヘルパーパスゲートは、メインパスゲートに対するゲートの物理的位置及び電流供給能力に基づいて決定することができる。例えば、メインパスゲートに物理的に最も近いヘルパーパスゲートがメインパスゲートから過剰電流負荷を供給可能な場合、メインパスゲートから物理的により遠くにある追加のヘルパーパスゲートを、それらのヘルパーパスゲートが上記の最も近いヘルパーパスゲートよりも大きい負荷を供給可能な場合であっても、有効にする必要はない。別の言い方をすれば、ヘルパーパスゲートのメインパスゲートへの物理的近接性は、ヘルパーパスゲートの優先度を確立することができる。
【0044】
代替実施例では、メインパスゲートに物理的に最も近いパスゲートが、メインパスゲートからの過剰負荷全体を供給することができない場合、残りの過剰負荷は、負荷全体が分散されるまで、次に最も近いヘルパーパスゲート(単数又は複数)にリダイレクトすることができる。
【0045】
分散型パスゲートは、電源回路300が効率損失に動的に対処することを可能にする。負荷は、セグメントのアクティブ化/非アクティブ化による既知の負荷変化に従って動的に分散することができるので、動的応答は、ニューラルネットワークセグメントごとの負荷変化が予想される(例えば、既知である)ときに特に有用であり得る。
【0046】
電力管理は、電圧レギュレータ回路202及び分配回路212それぞれに比較的遅いループ及びネストされた速いループを統合することによって、更に改善することができる。
図4Aに示すように、電源回路300にフィードバックループとして分散センサ構造を追加してもよい。分散センサ構造は、電源回路300が分配回路212(例えば、分散型パスゲートマトリックス)を動的に制御するのを助けるように設計されたセンサマトリックス402によって実装することができる。センサマトリックス402は、パスゲートの各々における負荷アクティビティに基づいて様々なパラメータに関する情報を収集することができる複数のセンサ(例えば、電圧及び/又は電流センサ)を含むことができる。この情報は、将来予想される負荷に対してどのパスゲートを有効にするかを決定するために(例えば、センサマトリックス402によって、及び/又はコントローラ250によって)使用することができる。
【0047】
電圧レギュレータ回路202は、フィードバックループ401を含むことができ、これは、調整された出力電圧Vregを更新する前に、変化がいくつかの構成要素(例えば、ローカル負荷回路308内の処理及び/又は他の回路要素)を介して伝搬することができるので、「遅い」フィードバックループと見なすことができる。センサマトリックス402は、「高速」フィードバックループ403の一部であってもよく、いくつかの事例では、スイッチマトリックス314に直接結合されていてもよい。フィードバックループ403は、センサマトリックス402からのデータがセンサによって迅速に収集され、スイッチマトリックス314に直接提供されるので、高速フィードバックループと見なされてもよい。これにより、スイッチマトリックス314がセンサマトリックス402からの情報に迅速に応答することを可能にする。しかしながら、直接結合は、スイッチマトリックス314が誤った情報(例えば、グリッチ又はオーバーシュート電流に基づく情報)に依存することになり得、これは、問題であり得る。
【0048】
したがって、本開示のいくつかの態様は、異なるタイプのセンサ情報を区別することを提供する。例えば、ある特定の情報は、センサマトリックス402からスイッチマトリックス314に直接送信されてもよい。この特定の情報は、最下位ビット(least significant bits、LSBs)用に指定されたヘルパーパスゲートなど、比較的小さい電流を有するヘルパーパスゲートを制御するために使用することができる。情報の残りの部分は、同じ問題を経験すべきではない別のフィードバックループ(例えば、コントローラ250を含む)を介して送信されてもよい。なぜなら、この別のフィードバックループは、グリッチ又は同様のイベントから生じる誤った情報を区別して無視することができる可能性が最も高いことがあるからである。
【0049】
図4Bは、本開示のいくつかの態様による、分散センサ構造がフィードバックとして追加され、2つのフィードバックループが混合速度実装形態においてマージされた、例示的な電源回路450を示す。
図4Bの電源回路450は、ローカル負荷回路308から及びセンサマトリックス402から入力を受信することができ、かつ増幅器306のためのフィードバックを提供するために、この情報を組み合わせることができる(例えば、加算することができる)、結合器404(例えば、加算器)を含む。
【0050】
図5Aは、本開示のいくつかの態様による、例示的なフレキシブル積層電源方式を示す。積層電源方式は、例えば、
図3Aの電源回路300において実装することができる。積層電源方式では、電圧レギュレータ回路202は、一次電圧レギュレータ回路502と、1つ又は複数の二次電圧レギュレータ回路504
1、504
2、...、504
N(本明細書ではまとめて「二次電圧レギュレータ回路504」と呼ばれる)とを含むことができる。一次電圧レギュレータ回路502は、図示されるようなスイッチモード電源(SMPS)によって、又は異なるタイプのレギュレータによって実装することができる。二次電圧レギュレータ回路504は、(図示のような)LDOレギュレータ、SMPSレギュレータ、又はLDOレギュレータとSMPSレギュレータの組合せなど、様々な適切なレギュレータのいずれかによって実装することができる。二次電圧レギュレータ回路504は、柔軟な電力管理のために2つ以上の異なる出力電圧を提供することができ、特定の二次電圧レギュレータ回路504は、動的負荷の変化に基づいて(例えば、ニューラルネットワーク回路322の1つ又は複数のセグメントのアクティブ化に基づいて)選択することができる。図示されるように、いくつかの実施例では、二次電圧レギュレータ回路504の数は、ニューラルネットワーク回路322内のセグメントの数と同じであってもよい。
【0051】
LDOレギュレータの場合、二次電圧レギュレータ回路504のうちの少なくともいくつかは、異なるタイプであってもよい。例えば、LDOレギュレータのうちの1つは、PMOSレギュレータとして実装されてもよく、別のLDOレギュレータは、NMOSレギュレータであってもよい。同様に、いくつかのLDOレギュレータは、直列レギュレータであってもよいが、他のLDOレギュレータは、並列レギュレータであってもよい。加えて、いくつかのLDOレギュレータは、他のLDOレギュレータとは異なる電圧又は電力レベルで動作することができる(例えば、いくつかは、低電力レギュレータであってもよいが、他は、高電力及び/又は中電力レギュレータである)。
【0052】
二次電圧レギュレータ回路504は、サージ制御のためのバイパスとして機能するスイッチを含んでもよい。例えば、動的負荷が、予め設定された比較的短い時間の間、大電流を要求する場合、一時的なバイパス動作を、開ループ構成を使用して実施し、電流の突然の突入を緩和することを助けることができる。
図5Bは、電圧レギュレータ回路202が二次電圧レギュレータ回路504のうちの1つ又は複数をバイパスし(例えば、短絡し)、一次電圧レギュレータ回路502から直接電流を供給することができるように、二次電圧レギュレータ回路504に追加された例示的なバイパススイッチ506
1、506
2、...、506
N(本明細書ではまとめて「二次バイパススイッチ506」と呼ばれる)を示す。
【0053】
時間間隔が事前設定されておらず(したがって未知であり)、電圧レギュレータ回路の出力における電圧調整が必要とされる場合、センサを使用して、負荷状態を監視し、フィードバックを(例えば、一次電圧レギュレータ回路502に、及び/又はバイパススイッチ506を制御するために)提供することができる。例えば、
図5Cは、(上述したように)分配回路212の出力に結合されたセンサマトリックス402を示す。センサマトリックス402は、一次電圧レギュレータ回路502にフィードバックを提供するように構成することができる。いくつかの態様では、バイパススイッチ506は、センサマトリックス402によって提供されるフィードバックに基づいて制御することができる。
【0054】
上述したように、電力管理コントローラ(例えば、
図2のコントローラ250)は、電圧レギュレータ回路202(例えば、一次電圧レギュレータ回路502及び/又は二次電圧レギュレータ回路504)及び/又は分配回路212(例えば、分散型パスゲートマトリックス)を制御するように設計することができる。
図5Dに示されるように、電力管理コントローラへの入力520は、ニューラルネットワーク回路322内のセグメントの構造(全結合層、畳み込み層、又は再帰層など)、セグメント内の処理要素又は他の構成要素の数(例えば、層内のニューロンの数)、重み又はアクティブ化の量子化レベル、及び重み又はアクティブ化ユニットのスパース性情報を含むことができる。加えて、動的負荷を実装する集積回路(単数又は複数)のプロセス、供給電圧、及び温度(process,supply voltage,and temperature、PVT)を、コントローラ250に提供することができる。
【0055】
いくつかの態様では、パスゲートトランジスタは、ニューラルネットワーク回路322内の物理回路(例えば、メモリセル、処理要素、MACモジュール、論理回路など)の分布を模倣するように分布することができる。例えば、パスゲートトランジスタは、ニューラルネットワーク回路322に隣接して行列形式でマトリックス状に分布してもよい。すなわち、パスゲートトランジスタは、図示されるように、複数の行604a、604b等(集合的に「行604」と呼ばれる)、及び複数の列606a、606b等(集合的に「列606」と呼ばれる)を有するマトリックスに配列されてもよい。行列形式は、(
図6Aに示されるように)単一のアレイ602として、又は(
図6Bに示されるように)複数のアレイ612として実装することができる。二次電圧レギュレータ回路504のうちのいずれかの出力は、(スイッチマトリックス及びアレイ(単数又は複数)を介して)選択され、ニューラルネットワーク回路322のパスゲートトランジスタ及びそれらの関連付けられたセグメントのうちのいずれかへの入力として使用することができる。
【0056】
電力管理コントローラは、(例えば、ニューラルネットワーク回路322によって実装された)深層ニューラルネットワーク(DNN)パラメータ及び構造に基づくアクティブ最適化コントローラであってもよい。そのようなパラメータ及び構造は、セグメントに基づく(例えば、層内のニューロンの数に基づく)重み付けされたトランジスタサイズを含む。重み付けされたトランジスタサイズは、関連付けられた層内のニューロンの数に基づくことができる、又はバイナリ符号化することができる。
【0057】
スパース性管理は、メモリ内計算(compute-in-memory、CiM)=0に基づいて出力電流をスケーリングすることによって実施することができる。結果がφ重み=0及びXin=0である2つの条件がある。したがって、レギュレータ出力は、0に等しくない重み及び入力の総数に基づいて制御及びスケーリングすることができる。これは以下の式で表すことができる。
Σ(~φ重み)+Σ(~Xin)
【0058】
電力管理制御は、ニューラルネットワーク内の層のタイプ(例えば、全結合層(fully connected layer、FCL)、組合せネットワーク層(combination network layer、CNL)、畳み込み、又は再帰)に基づくことができる。ニューラルネットワーク層は、様々な方法で確立及び処理することができる。所与の層内のニューロンの数は、層の構成に基づくことができる。
【0059】
いくつかの態様では、電力管理制御は、ニューラルネットワーク回路内の乗算及び累算(MAC)ユニットの数、並列コンピューティングの考慮(例えば、リソース割振りの考慮)、及び/又は適応電圧スケーリングに基づくことができる。
【0060】
電力管理コントローラは、負荷及びそのアクティビティを推定するために、上述の情報の少なくとも一部分を蓄積する又は組み合わせることを試みることができる。このモードについての予測は、ニューロンのアクティブ化された数及びトランジスタのアクティブな数に基づくことができる。例えば、スパース性が約50%である(例えば、ニューロンの約半分が非アクティブである)場合、それに応じて、電流の50%を供給からカットすることができる。したがって、層、MACユニット、及び/又はスパース性管理デバイスからの情報は、蓄積され、負荷側でアクティブなトランジスタの数を近似的に計算するために使用することができる。
【0061】
いくつかの態様では、電力管理コントローラは、それ自体、
図5Dの電力管理のためのニューラルネットワーク(neural network for power management、NN-PM)530によって示されるように、(例えば、深層ニューラルネットワークを実装するための)ニューラルネットワーク回路として実装することができる。そのような場合、電力管理コントローラは、推論学習において直接使用することができる、又はオンライン学習/機械学習探索及び救済(machine learning search-and-rescue、ML-SAR)ベースの制御を使用することができる。例えば、コントローラニューラルネットワークは、動的負荷(例えば、負荷ニューラルネットワーク回路)におけるアクティビティから取得された情報に基づいて、どのパスゲート及び/又は二次電圧レギュレータ回路を有効にすべきかに関して事前訓練することができる。コントローラニューラルネットワークはまた、負荷ニューラルネットワークの可能なオンライン訓練に基づいて再訓練することができる。いくつかの態様では、コントローラは、セグメント化ニューラルネットワークとして実装することができる。例えば、
図5Eに示されるように、コントローラは、電力管理のためのニューラルネットワーク(NN-PM)部分535及び機械学習ニューラルネットワーク(machine learning neural network、ML-NN)部分540を備えてもよい。この場合、NN-PM部分535は、事前訓練されてもよく、ML-NN部分540は、オンラインで訓練されてもよい。
図5EのNN-PM部分535は、
図5Dのニューラルネットワーク530と同様であってもよい。
【0062】
電力管理コントローラの少なくとも一部分がニューラルネットワークとして実装されるいくつかの態様では、このニューラルネットワークは、電力管理コントローラが(例えば、入力データに基づく特定の負荷アクティビティ及び推論学習を用いた訓練に基づいて)将来の負荷シナリオを予測することを可能にすることができる。例えば、ニューラルネットワークを有する電力管理コントローラは、様々なシナリオ中の負荷アクティビティを監視することができ、監視された負荷アクティビティ及び対応するシナリオに基づいて、同様のシナリオに対する将来の負荷需要を予測することができる。電力管理ニューラルネットワークは、(例えば、負荷アクティビティを監視しながら)将来の負荷需要をリアルタイムで予測することができ、又は後で負荷アクティビティを分析することによって将来の負荷需要を予測することができる。
【0063】
本開示の態様は、パスゲート及び/又は二次電圧レギュレータ回路のためのレジスタ設定を生成するためのコントローラニューラルネットワークを提供する。負荷ニューラルネットワーク回路に関連する情報は、電力管理コントローラに入力されてもよく、次いで、電力管理コントローラは、この情報に基づいて、次の負荷を管理するために、どの二次電圧レギュレータ回路(単数又は複数)及び/又はパスゲート(単数又は複数)を有効にすべきかを決定することができる。
【0064】
いくつかの態様では、負荷センサは、例えば、回路非理想性及び/又は予測されない負荷状態を克服することを支援するために、オンラインニューラルネットワーク訓練に統合することができる。負荷センサは、オンライン又はリアルタイム情報を電力管理コントローラに提供して、(例えば、ニューラルネットワーク回路において)電力及び負荷の変化を動的に管理するときに、より優れた制御及び精度を可能にすることができる。例えば、負荷センサは、軽負荷から高負荷への動的負荷(例えば、負荷ニューラルネットワーク回路)の遷移を監視し、オンライン又はリアルタイムで電力管理コントローラに情報を提供することができる。この実施例では、負荷センサは、メインパスゲート(例えば、メインパスゲート302)が供給することができるよりも大きい場合がある、又は予想よりも大きい場合がある、大電流需要を検出することができる。その結果、電力管理コントローラは、負荷センサ(単数又は複数)によって提供される情報に応じて、1つ又は複数のアクションを取ることができる。1つ又は複数のアクションは、例えば、1つ又は複数のヘルパーパスゲート(例えば、補助パスゲート304)が大電流需要を満たすためにより多くの電流を供給することを可能にすることを含むことができる。例えば、(負荷センサ(単数又は複数)によって取得された)電流測定値の勾配から、電力管理コントローラは、(例えば、特定の閾値を上回る)後続のより大きい電流値を(例えば、その内部ニューラルネットワークを使用して)予測して、1つ又は複数のヘルパーパスゲートを有効にすることが可能であり得る。
【0065】
電力管理コントローラと、一次電圧レギュレータ回路、二次電圧レギュレータ回路、及びパスゲートマトリックスとの間に追加の管理層があってもよい。例えば、管理層は、2つの入力、すなわち、電力管理コントローラの出力及びセンサマトリックスの出力を有することができる。上述したように、センサマトリックスは、負荷ニューラルネットワーク回路の負荷アクティビティに基づいて異なる情報を収集することができる。これにより、管理層が、どの二次電圧レギュレータ回路及び/又はパスゲートがより頻繁に使用されるかを動的に学習することを可能にし、それにより、管理層が、将来の負荷のためにどの二次電圧レギュレータ回路及び/又はパスゲートを有効にすべきかをより正確に決定することを可能にすることができる。
【0066】
電力供給のための例示的な動作
図7は、本開示のいくつかの態様による、動的負荷に電力を供給するための例示的な動作700を示す流れ図である。動作700は、
図2に関して説明した電源回路200などの電源回路によって実行されてもよい。
【0067】
動作700は、ブロック705において、電源回路が電圧レギュレータ回路(例えば、電圧レギュレータ回路202)を動作させることで開始することができる。ブロック710において、電源回路は、負荷(例えば、動的負荷222)に第1の電流を供給するように、分配回路(例えば、分配回路212)を動作させることができる。分配回路は、電圧レギュレータ回路の1つ又は複数の出力と負荷との間に結合することができる。負荷の変化に基づいて、ブロック715において、負荷に第2の電流を供給するように分配回路を動作させることができ、第2の電流は、第1の電流とは異なる。
【0068】
いくつかの態様によれば、負荷は、(例えば、層324、326、328、330、332、334によって表される)複数のセグメントを有するニューラルネットワーク回路(例えば、ニューラルネットワーク回路322)を含む。この場合、負荷の変化は、ニューラルネットワーク回路の複数のセグメント内の異なるセグメントのアクティブ化を伴い得る。いくつかの態様では、ブロック710において第1の電流を供給するように分配回路を動作させることは、ニューラルネットワーク回路の(例えば、層330によって表される)第1のセグメントに第1の電流を供給することを含むことができ、ブロック715において第2の電流を供給するように分配回路を動作させることは、第2のセグメントをアクティブ化することに基づいて、ニューラルネットワーク回路の(例えば、層332によって表される)第2のセグメントに第2の電流を供給することを伴うことができる。この場合、ニューラルネットワーク回路の第2のセグメントは、ニューラルネットワーク回路の第1のセグメントよりも少ない数の構成要素を有することができ、負荷の変化は、第1のセグメントを非アクティブ化することと、第2のセグメントをアクティブ化することとを含むことができ、第2の電流は、第1の電流よりも低くてもよい。いくつかの態様では、分配回路は、複数のパスゲートトランジスタ(例えば、トランジスタM1~M6)を含み、ブロック710において第1の電流を供給するように分配回路を動作させることは、ニューラルネットワーク回路の第1のセグメントに第1の電流を供給するために、複数のパスゲートトランジスタ内の第1のトランジスタ(例えば、トランジスタM4)をオンにすることを伴い、ブロック715において第2の電流を供給するように分配回路を動作させることは、ニューラルネットワーク回路の第2のセグメントに第2の電流を供給するために、第1のトランジスタをオフにすることと、複数のパスゲートトランジスタ内の第2のトランジスタ(例えば、トランジスタM5)をオンにすることとを伴い、第2のトランジスタは、第1のトランジスタよりも小さい。いくつかの態様では、分配回路は、複数のスイッチ(例えば、パスゲート302、304などのアナログスイッチ)を備え、ブロック710において第1の電流を供給するように分配回路を動作させることは、ニューラルネットワーク回路の第1のセグメントに第1の電流を供給するために、複数のスイッチ内の第1のスイッチを閉じることを伴い、ブロック715において第2の電流を供給するように分配回路を動作させることは、ニューラルネットワーク回路の第2のセグメントに第2の電流を供給するために、第1のスイッチを開くことと、複数のスイッチ内の第2のスイッチを閉じることとを伴う。いくつかの態様では、ブロック710において第1の電流を供給するように分配回路を動作させることは、増加した電流需要の間隔中に複数のスイッチ内の第3のスイッチを閉じることを更に伴う。この場合、第1のスイッチは、ニューラルネットワーク回路の第1のセグメントのためのメインスイッチ(例えば、メインパスゲート302)として指定されてもよく、第3のスイッチは、ニューラルネットワーク回路の第1のセグメントのための補助スイッチ(例えば、補助パスゲート304)として指定されてもよい。
【0069】
いくつかの態様によれば、電圧レギュレータ回路は、一次電圧レギュレータ回路(例えば、一次電圧レギュレータ回路502)と、複数の二次電圧レギュレータ回路(例えば、二次電圧レギュレータ回路504)とを含み、複数の二次電圧レギュレータ回路は、一次電圧レギュレータ回路の出力に結合された入力を有し、電圧レギュレータ回路の1つ又は複数の出力に結合された出力を有する。この場合、複数の二次電圧レギュレータ回路は、2つ以上の異なる出力電圧を出力するように構成することができ、動作700は、負荷に電力を供給するために二次電圧レギュレータ回路のうちの1つを選択することを更に伴うことができる。いくつかの態様では、分配回路は、パスゲートトランジスタの複数の行を備えるスイッチマトリックス(例えば、スイッチマトリックス314又はアレイ602、612)を含み、スイッチマトリックスの各行は、複数の二次電圧レギュレータ回路の異なる出力に結合することができ、及び/又はスイッチマトリックスの各列は、電圧レギュレータ回路の1つ又は複数の出力に結合することができる。この場合、ブロック710において第1の電流を供給するように分配回路を動作させることは、負荷に第1の電流を供給するために、スイッチマトリックス内の第1の行(例えば、行604a)及び第1の列(例えば、列606a)における第1のトランジスタをオンにすることを伴うことができ、ブロック715において第2の電流を供給するように分配回路を動作させることは、負荷の変化に基づいて第2の電流を供給するために、第1のトランジスタをオフにすることと、スイッチマトリックス内の第2の行(例えば、行604b)及び第2の列(例えば、列606b)における第2のトランジスタをオンにすることとを伴うことができる。いくつかの態様では、動作700は、(例えば、バイパススイッチ(単数又は複数)506を用いて)二次電圧レギュレータ回路のうちの少なくとも1つを選択的にバイパスすることを更に伴うことができる。
【0070】
いくつかの態様によれば、動作700は、電圧レギュレータ回路の出力における出力電圧を感知することを更に伴う。この場合、動作700はまた、コントローラ(例えば、コントローラ250)において、電圧レギュレータ回路の出力における出力電圧の指示を受信することと、電圧レギュレータ回路の出力における出力電圧の指示に少なくとも部分的に基づいて、分配回路の動作を制御することとを更に伴うことができる。
【0071】
いくつかの態様によれば、動作700は、コントローラ(例えば、コントローラ250)を用いて分配回路の動作を制御することを更に伴う。この場合、動作700は、負荷の変化に基づいてコントローラを訓練することを更に含むことができ、制御することは、推論学習を使用してコントローラを用いて分配回路の動作を制御することを含む。いくつかの態様では、負荷は、複数のセグメントを有するニューラルネットワーク回路(例えば、ニューラルネットワーク回路322)を含む。この場合、制御することは、ニューラルネットワーク回路の1つ又は複数の特性に基づいて、コントローラを用いて分配回路の動作を制御することを含むことができる。例えば、ニューラルネットワーク回路の1つ又は複数の特性は、複数のセグメントの構造、複数のセグメントの各セグメント内の構成要素の数、重みの量子化レベル、アクティブ化の量子化レベル、重みのスパース性情報、又はアクティブ化ユニットのスパース性情報のうちの少なくとも1つを含むことができる。いくつかの態様では、動作700は、コントローラを用いて電圧レギュレータ回路の動作を制御することを更に伴う。
【0072】
動的負荷のための電力管理を有する例示的なデバイス
図8は、例示的な電子デバイス800を示す。電子デバイス800は、
図7に関して説明された動作700を含む、本明細書で説明される方法を実行するように構成することができる。
【0073】
電子デバイス800は、いくつかの態様ではマルチコアCPUとすることができる中央処理ユニット(CPU)802を含む。CPU802において実行される命令は、例えば、CPU802に関連付けられたプログラムメモリからロードされてもよく、又はメモリ824からロードされてもよい。
【0074】
電子デバイス800はまた、グラフィックス処理ユニット(GPU)804、デジタル信号プロセッサ(DSP)806、(例えば、ニューラルネットワークを実装するための)ニューラル処理ユニット(NPU)807又は他の動的負荷、マルチメディア処理ブロック810、及び無線接続処理ブロック812などの、特定の機能に調整された追加の処理ブロックを含む。いくつかの実装形態では、NPU807は、CPU802、GPU804、及び/又はDSP806のうちの1つ又は複数に実装される。
【0075】
いくつかの態様では、無線接続処理ブロック812は、例えば、第3世代(Third-Generation、3G)接続、第4世代(Fourth-Generation、4G)接続(例えば、4G LTE)、第5世代接続(Fifth-Generation connectivity)(例えば、5G又はNR)、Wi-Fi接続、Bluetooth接続、及び/又は無線データ伝送規格に関する、構成要素を含むことができる。無線接続処理ブロック812は、無線通信を容易にするために、1つ又は複数のアンテナ814に更に接続されている。
【0076】
電子デバイス800はまた、任意の方式の1つ又は複数のセンサに関連付けられた1つ又は複数のセンサプロセッサ816、任意の方式の1つ又は複数の画像センサに関連付けられた1つ又は複数の画像信号プロセッサ(image signal processors、ISPs)818、並びに/又は衛星ベースの測位システム構成要素(例えば、全地球測位システム(Global Positioning System、GPS))並びに慣性測位システム構成要素を含むことができるナビゲーションプロセッサ820を含んでもよい。
【0077】
電子デバイス800はまた、スクリーン、タッチ感知面(タッチ感知ディスプレイを含む)、物理ボタン、スピーカ、マイクロフォンなどの、1つ又は複数の入力及び/又は出力デバイス822も含むことができる。いくつかの態様では、電子デバイス800のプロセッサのうちの1つ又は複数は、アドバンストRISCマシン(Advanced RISC Machines、ARM)命令セットに基づくことができ、RISCとは、「縮小命令セットコンピューティング」を表す。
【0078】
電子デバイス800はまた、1つ又は複数のバッテリと電力管理回路とを含むことができる電源808(例えば、
図2に関して説明した電源回路200)を含む。
【0079】
電子デバイス800はまた、メモリ824を含み、このメモリは、ダイナミックランダムアクセスメモリ(dynamic random access memory、DRAM)、フラッシュベースのスタティックメモリなどの、1つ又は複数のスタティックメモリ及び/又はダイナミックメモリを表している。この実施例では、メモリ824は、NPU807を含む、電子デバイス800の前述のプロセッサのうちの1つ又は複数によって実行することができるコンピュータ実行可能構成要素を含む。図示の構成要素、及び図示されていない他の構成要素は、本明細書で説明されている方法の様々な態様を実行するように構成されてもよい。
【0080】
電子デバイス800がサーバデバイスである場合などの、いくつかの態様では、マルチメディア処理ブロック810、無線接続処理ブロック812、アンテナ(単数又は複数)814、センサプロセッサ816、ISP818、及び/又はナビゲーションプロセッサ820のうちの1つ又は複数などの様々な態様を、
図8に示されている実施例から省略することができる。
【0081】
例示的な条項
上述の様々な態様に加えて、諸態様の特定の組み合わせが、本開示の範囲内であり、そのうちのいくつかが、以下の条項において詳述される。
【0082】
条項1:動的負荷に電力を供給するための電源回路であって、電圧レギュレータ回路と、電圧レギュレータ回路の1つ又は複数の出力に結合され、かつ動的負荷の変化に基づいて異なる量の電流を出力するように構成された分配回路と、を備える、電源回路。
【0083】
条項2:動的負荷が、複数のセグメントを有するニューラルネットワーク回路を含む、条項1に記載の電源回路。
【0084】
条項3:分配回路が、ニューラルネットワーク回路の複数のセグメント内のどのセグメントがアクティブであるかに基づいて、異なる量の電流を出力するように構成されている、条項2に記載の電源回路。
【0085】
条項4:分配回路の第1の出力が、ニューラルネットワーク回路の第1のセグメントに結合され、分配回路の第2の出力が、ニューラルネットワーク回路の第2のセグメントに結合されている、条項2又は3に記載の電源回路。
【0086】
条項5:ニューラルネットワーク回路の第1のセグメントが、ニューラルネットワーク回路の第2のセグメントよりも多い数の構成要素を有し、分配回路が、第2のセグメントがアクティブであるときと比較して、第1のセグメントがアクティブであるときにより高い電流を供給するように構成されている、条項4に記載の電源回路。
【0087】
条項6:分配回路が、複数のパスゲートトランジスタを備え、複数のパスゲートトランジスタ内の第1のトランジスタが、ニューラルネットワーク回路の第1のセグメントがアクティブであるときにオンにされるように構成され、複数のパスゲートトランジスタ内の第2のトランジスタが、ニューラルネットワーク回路の第2のセグメントがアクティブであるときにオンにされるように構成され、第2のトランジスタが、第1のトランジスタよりも小さい、条項5に記載の電源回路。
【0088】
条項7:分配回路が、電圧レギュレータ回路の1つ又は複数の出力に結合された複数のスイッチを備え、複数のスイッチ内の第1のスイッチが、ニューラルネットワーク回路の第1のセグメントがアクティブであるときにオンにされるように構成され、複数のスイッチ内の第2のスイッチが、ニューラルネットワーク回路の第2のセグメントがアクティブであるときにオンにされるように構成されている、条項4から6のいずれか一項に記載の電源回路。
【0089】
条項8:複数のスイッチ内の第3のスイッチが、ニューラルネットワーク回路の第1のセグメントがアクティブであるとき、かつ増加した電流需要の間隔の間、オンにされるように構成され、第1のスイッチが、ニューラルネットワーク回路の第1のセグメントのためのメインスイッチとして指定され、第3のスイッチが、ニューラルネットワーク回路の第1のセグメントのための補助スイッチとして指定されている、条項7に記載の電源回路。
【0090】
条項9:分配回路が、スイッチマトリックスを備える、条項1から8のいずれか一項に記載の電源回路。
【0091】
条項10:スイッチマトリックスが、電圧レギュレータ回路の1つ又は複数の出力に結合されたパスゲートトランジスタの行を備え、パスゲートトランジスタの行が、少なくとも2つの異なる量の電流を供給することが可能な複数のトランジスタを備える、条項9に記載の電源回路。
【0092】
条項11:電圧レギュレータ回路が、スイッチモード電源回路を備える、条項1から10のいずれか一項に記載の電源回路。
【0093】
条項12:電圧レギュレータ回路が、一次電圧レギュレータ回路と複数の二次電圧レギュレータ回路とを備え、複数の二次電圧レギュレータ回路が、一次電圧レギュレータ回路の出力に結合された入力を有し、電圧レギュレータ回路の1つ又は複数の出力に結合された出力を有する、条項1から11のいずれか一項に記載の電源回路。
【0094】
条項13:一次電圧レギュレータ回路が、スイッチモード電源回路を備え、複数の二次電圧レギュレータ回路が、複数の低ドロップアウト(LDO)レギュレータ回路を備える、条項12に記載の電源回路。
【0095】
条項14:複数のLDOレギュレータ回路が、2つ以上の異なる出力電圧を出力するように構成されている、条項13に記載の電源回路。
【0096】
条項15:分配回路が、パスゲートトランジスタの複数の行を備えるスイッチマトリックスを含み、スイッチマトリックスの各行が、複数の二次電圧レギュレータ回路の異なる出力に結合され、スイッチマトリックスの各列が、電圧レギュレータ回路の1つ又は複数の出力に結合されている、条項12から14のいずれか一項に記載の電源回路。
【0097】
条項16:電圧レギュレータ回路が、二次電圧レギュレータ回路のうちの少なくとも1つと並列に結合され、かつ一次電圧レギュレータ回路の出力を電圧レギュレータ回路の出力のうちの少なくとも1つに直接結合させるように構成された、少なくとも1つのバイパス回路を更に備える、条項12から15のいずれか一項に記載の電源回路。
【0098】
条項17:電圧レギュレータ回路が、レプリカ負荷回路を有するフィードバックループを備える、条項1から16のいずれか一項に記載の電源回路。
【0099】
条項18:電圧レギュレータ回路の出力に結合され、かつ電圧レギュレータ回路の出力における出力電圧を感知するように構成された複数のセンサを有するセンサマトリックスを更に備える、条項1から17のいずれか一項に記載の電源回路。
【0100】
条項19:センサマトリックスが、フィードバックループ内で分配回路に結合されている、条項18に記載の電源回路。
【0101】
条項20:センサマトリックスに結合された複数の入力を有し、かつ分配回路の1つ又は複数の制御入力に結合された1つ又は複数の出力を有するコントローラを更に備え、コントローラが、複数のセンサによって感知された電圧レギュレータ回路の出力における出力電圧の指示に少なくとも部分的に基づいて、分配回路の動作を制御するように構成されている、条項18又は19に記載の電源回路。
【0102】
条項21:分配回路の1つ又は複数の制御入力に結合された1つ又は複数の出力を有し、かつ分配回路の動作を制御するように構成されたコントローラを更に備える、条項1から20のいずれか一項に記載の電源回路。
【0103】
条項22:コントローラが、電源回路に関連付けられたプロセス、電圧、又は温度の少なくとも1つの指示を受信するように構成されている、条項21に記載の電源回路。
【0104】
条項23:コントローラが、ニューラルネットワーク回路を備え、コントローラが、動的負荷について訓練されるように、かつ推論学習に基づいて分配回路又は電圧レギュレータ回路のうちの少なくとも1つの動作を制御するように更に構成されている、条項21又は22に記載の電源回路。
【0105】
条項24:動的負荷が、複数のセグメントを有するニューラルネットワーク回路を含み、コントローラが、ニューラルネットワーク回路の1つ又は複数の特性に基づいて、分配回路の動作を制御するように構成されている、条項21から23のいずれか一項に記載の電源回路。
【0106】
条項25:ニューラルネットワーク回路の1つ又は複数の特性が、複数のセグメントの構造、複数のセグメントの各セグメント内の構成要素の数、重みの量子化レベル、アクティブ化の量子化レベル、重みのスパース性情報、又はアクティブ化ユニットのスパース性情報のうちの少なくとも1つを含む、条項24に記載の電源回路。
【0107】
条項26:コントローラが、電圧レギュレータ回路の1つ又は複数の制御入力に結合された1つ又は複数の他の出力を有し、電圧レギュレータ回路の動作を制御するように更に構成されている、条項21から25のいずれか一項に記載の電源回路。
【0108】
条項27:電力を供給する方法であって、電圧レギュレータ回路を動作させることと、第1の電流を負荷に供給するように、電圧レギュレータ回路の1つ又は複数の出力と負荷との間に結合された分配回路を動作させることと、負荷の変化に基づいて、第1の電流とは異なる第2の電流を負荷に供給するように、分配回路を動作させることと、を含む、方法。
【0109】
条項28:負荷が、複数のセグメントを有するニューラルネットワーク回路を含む、条項27に記載の方法。
【0110】
条項29:負荷の変化が、ニューラルネットワーク回路の複数のセグメント内の異なるセグメントのアクティブ化を含む、条項28に記載の方法。
【0111】
条項30:第1の電流を供給するように分配回路を動作させることが、ニューラルネットワーク回路の第1のセグメントに第1の電流を供給することを含み、第2の電流を供給するように分配回路を動作させることが、第2のセグメントをアクティブ化することに基づいて、ニューラルネットワーク回路の第2のセグメントに第2の電流を供給することを含む、条項28又は29に記載の方法。
【0112】
条項31:ニューラルネットワーク回路の第2のセグメントが、ニューラルネットワーク回路の第1のセグメントよりも少ない数の構成要素を有し、負荷の変化が、第1のセグメントを非アクティブ化することと、第2のセグメントをアクティブ化することとを含み、第2の電流が、第1の電流よりも低い、条項30に記載の方法。
【0113】
条項32:分配回路が、複数のパスゲートトランジスタを備え、第1の電流を供給するように分配回路を動作させることが、ニューラルネットワーク回路の第1のセグメントに第1の電流を供給するために、複数のパスゲートトランジスタ内の第1のトランジスタをオンにすることを含み、第2の電流を供給するように分配回路を動作させることが、ニューラルネットワーク回路の第2のセグメントに第2の電流を供給するために、第1のトランジスタをオフにすることと、複数のパスゲートトランジスタ内の第2のトランジスタをオンにすることとを含み、第2のトランジスタが、第1のトランジスタよりも小さい、条項31に記載の方法。
【0114】
条項33:分配回路が、複数のスイッチを備え、第1の電流を供給するように分配回路を動作させることが、ニューラルネットワーク回路の第1のセグメントに第1の電流を供給するために、複数のスイッチ内の第1のスイッチを閉じることを含み、第2の電流を供給するように分配回路を動作させることが、ニューラルネットワーク回路の第2のセグメントに第2の電流を供給するために、第1のスイッチを開くことと、複数のスイッチ内の第2のスイッチを閉じることとを含む、条項30から32のいずれか一項に記載の方法。
【0115】
条項34:第1の電流を供給するように分配回路を動作させることが、増加した電流需要の間隔中に複数のスイッチ内の第3のスイッチを閉じることを更に含み、第1のスイッチが、ニューラルネットワーク回路の第1のセグメントのためのメインスイッチとして指定され、第3のスイッチが、ニューラルネットワーク回路の第1のセグメントのための補助スイッチとして指定されている、条項33に記載の方法。
【0116】
条項35:電圧レギュレータ回路が、一次電圧レギュレータ回路と複数の二次電圧レギュレータ回路とを備え、複数の二次電圧レギュレータ回路が、一次電圧レギュレータ回路の出力に結合された入力を有し、電圧レギュレータ回路の1つ又は複数の出力に結合された出力を有し、複数の二次電圧レギュレータ回路が、2つ以上の異なる出力電圧を出力するように構成されており、方法が、負荷に電力を供給するために二次電圧レギュレータ回路のうちの1つを選択することを更に含む、条項27から34のいずれか一項に記載の方法。
【0117】
条項36:分配回路が、パスゲートトランジスタの複数の行を備えるスイッチマトリックスを含み、スイッチマトリックスの各行が、複数の二次電圧レギュレータ回路の異なる出力に結合され、スイッチマトリックスの各列が、電圧レギュレータ回路の1つ又は複数の出力に結合され、第1の電流を供給するように分配回路を動作させることが、負荷に第1の電流を供給するために、スイッチマトリックス内の第1の行及び第1の列における第1のトランジスタをオンにすることを含み、第2の電流を供給するように分配回路を動作させることが、負荷の変化に基づいて第2の電流を供給するために、第1のトランジスタをオフにすることと、スイッチマトリックス内の第2の行及び第2の列における第2のトランジスタをオンにすることとを含む、条項35に記載の方法。
【0118】
条項37:二次電圧レギュレータ回路のうちの少なくとも1つを選択的にバイパスすることを更に含む、条項35又は36に記載の方法。
【0119】
条項38:電圧レギュレータ回路の出力における出力電圧を感知することを更に含む、条項27から37のいずれか一項に記載の方法。
【0120】
条項39:コントローラにおいて、電圧レギュレータ回路の出力における出力電圧の指示を受信することと、電圧レギュレータ回路の出力における出力電圧の指示に少なくとも部分的に基づいて、分配回路の動作を制御することと、を更に含む、条項38に記載の方法。
【0121】
条項40:コントローラを用いて分配回路の動作を制御することを更に含む、条項27から39のいずれか一項に記載の方法。
【0122】
条項41:負荷の変化に基づいてコントローラを訓練することを更に含み、制御することが、推論学習を使用してコントローラを用いて分配回路の動作を制御することを含む、条項40に記載の方法。
【0123】
条項42:負荷が、複数のセグメントを有するニューラルネットワーク回路を含み、制御することが、ニューラルネットワーク回路の1つ又は複数の特性に基づいて、コントローラを用いて分配回路の動作を制御することを含む、条項40又は41に記載の方法。
【0124】
条項43:ニューラルネットワーク回路の1つ又は複数の特性が、複数のセグメントの構造、複数のセグメントの各セグメント内の構成要素の数、重みの量子化レベル、アクティブ化の量子化レベル、重みのスパース性情報、又はアクティブ化ユニットのスパース性情報のうちの少なくとも1つを含む、条項42に記載の方法。
【0125】
条項44:コントローラを用いて電圧レギュレータ回路の動作を制御することを更に含む、条項40から43のいずれか一項に記載の方法。
【0126】
条項45:本明細書及び添付の文書において例示され、図示され、暗示され、説明された各方法、装置、システム、非一時的コンピュータ可読媒体、及びそれらの組み合わせ。
【0127】
追加的な考慮事項
前述の説明は、本明細書に記載の様々な態様を、当業者のいずれも実践できるようにするために提供されている。本明細書に説明の実施例は、請求項に記載されている範囲、適用可能性、又は態様を限定するものではない。これらの態様に対する様々な修正が、当業者には容易に明らかとなり、本明細書で定義されている一般的原理は、他の態様に適用することもできる。例えば、本開示の範囲から逸脱することなく、説明されている要素の機能及び配置に変更を加えることができる。様々な実施例は、必要に応じて、様々な手順又は構成要素を省略してもよく、置換してもよく、又は追加してもよい。例えば、説明されている方法は、説明されている順序とは異なる順序で実行されてもよく、様々なステップが追加されてもよく、省略されてもよく、又は組み合わされてもよい。また、いくつかの実施例に関して説明されている特徴を、いくつかの他の実施例に組み合わせることもできる。例えば、本明細書に記載の任意の数の態様を使用して、装置を実装してもよく、方法を実施してもよい。更には、本開示の範囲は、本明細書に記載されている本開示の様々な態様に加えて、又はそれらの態様以外に、他の構造、機能、若しくは、構造及び機能を使用して実施されるような、装置又は方法を包含することが意図されている。本明細書に開示の本開示のいずれの態様も、特許請求の範囲の1つ又は複数の要素によって具現化できることを理解されたい。
【0128】
本明細書で使用される場合、「例示的」という語は、「実施例、事例、又は例示としての役割を果たすこと」を意味する。「例示的」として本明細書で説明したいずれの態様も、必ずしも他の態様よりも好ましい又は有利であると解釈されるべきではない。
【0129】
本明細書で使用される際、項目の列挙「のうちの少なくとも1つ」を指す句は、単一のメンバーを含む、それらの項目の任意の組合せを指す。例として、「a、b、又はcのうちの少なくとも1つ」は、a、b、c、a-b、a-c、b-c、及びa-b-c、並びに、複数の同じ要素を有する任意の組合せ(例えば、a-a、a-a-a、a-a-b、a-a-c、a-b-b、a-c-c、b-b、b-b-b、b-b-c、c-c、及びc-c-c、あるいは、a、b、及びcの任意の他の順序)を包含することが意図されている。
【0130】
本明細書で使用される際、「決定すること/判定すること/求めること(determining)」という用語は、多種多様なアクションを包含する。例えば、「決定すること」は、算出すること、計算すること、処理すること、導出すること、調査すること、検索すること(例えば、テーブル、データベース、又は別のデータ構造を検索すること)、確認することなどを含み得る。また、「決定すること」は、受信すること(例えば、情報を受信すること)、アクセスすること(例えば、メモリ内のデータにアクセスすること)なども含み得る。また、「決定すること」は、解決すること、選択すること、選び取ること、確立することなども含み得る。
【0131】
本明細書に開示の方法は、方法を達成するための1つ又は複数のステップ又はアクションを含む。それらの方法のステップ及び/又はアクションは、特許請求の範囲から逸脱することなく、互いに入れ替えることができる。換言すれば、ステップ又はアクションの特定の順序が指定されていない限り、特定のステップ及び/又はアクションの順序及び/又は使用は、特許請求の範囲から逸脱することなく、修正することができる。更には、上述の方法の様々な動作は、対応する機能を実行することが可能な、任意の好適な手段によって実行されてもよい。それらの手段は、回路、特定用途向け集積回路(application specific integrated circuit、ASIC)、又はプロセッサを含むが、これらに限定されない、様々なハードウェア構成要素及び/又はソフトウェア構成要素(単数又は複数)、並びに/あるいは、様々なハードウェアモジュール及び/又はソフトウェアモジュール(単数又は複数)を含み得る。一般に、図中に動作が示されている場合、それらの動作は、同様の番号が付された、対応する同等の手段も機能も有し得る。
【0132】
以下の特許請求の範囲は、本明細書で示されている態様に限定されることを意図するものではなく、特許請求の範囲の文言と一致する全範囲が認められるべきである。請求項内では、単数形による要素への言及は、そのように明記されていない限り、「1つのみ」を意味するものではなく、むしろ「1つ又は複数」を意味することが意図されている。別段に明記されていない限り、「いくつかの」という用語は、1つ又は複数を指す。請求項のいかなる要素も、その要素が「~のための手段」という語句を使用して明示的に列挙されていない限り、又は方法請求項の場合には、その要素が「~のためのステップ」という語句を使用して列挙されていない限り、米国特許法第112条(f)の規定の下で解釈されるべきではない。当業者には公知であるか又は後に公知となる、本開示の全体にわたって説明されている様々な態様の要素に対する、全ての構造的及び機能的な等価物は、参照により本明細書に明示的に組み込まれ、特許請求の範囲によって包含されることが意図されている。加えて、本明細書において開示されるものは、そのような開示が特許請求の範囲において明示的に記載されているか否かにかかわらず、公衆に供することを意図するものではない。
【国際調査報告】