(57)【要約】【課題】ハードウェア人工ニューラル・ネットワークにおけるニューロン値の非同期伝達のためのシステムおよび方法を提供する。【解決手段】人工ニューラル・ネットワーク（ＡＮＮ）における計算は、ニューロンと呼ばれる簡単な処理ユニットを使用して達成され、データは、シナプスと呼ばれるニューロン間の接続によって、およびこれらの接続の強度、すなわち、シナプス重みによって具現される。各クロスポイントに不揮発性メモリ（ＮＶＭ）要素を有するＡＮＮの１つの層を表すために、クロスバー・アレイを使用することができ、シナプス重みを符号化するために、ＮＶＭ要素のコンダクタンスを使用することができ、アレイにおける高度に並列の電流合計が、出力ニューロンの値を表す重み付き加算演算を達成する。アレイ間の距離に関係なく、グローバル・クロック同期の必要なしに、そのようなニューロン値を１つのアレイの出力部から第２のアレイの入力部に移送するための、および次のアレイでそのような値を使用するための、またはそのような値を次のアレイにおいてデジタル・ビットに変換するための、あるいはその両方の方法が略述される。【選択図】図３
2020507842.tif 000002
【特許請求の範囲】
【請求項１】
グローバル・クロックまたはグローバル同期の他の手段を使用することなしに、オンチップのある領域からオンチップの別の領域に信号を送信するための方法であって、前記方法が、
送信チャンネルのすべてが共通の初期設定トリガを共有する複数の前記送信チャンネルで複数のアナログ信号を、前記共通の初期設定トリガと後続の固有の終端トリガとの間の遅延で前記信号の各々を符号化することによって送信するステップであり、その結果、前記信号の各々が、限られた数の送信チャンネルを使用して正確に遠隔でデジタル化される、前記送信するステップ
を含む、方法。
【請求項２】
アドレス指定方式によって、マルチビット・データ・バス上の到着する信号が、データが向けられなければならない特定の宛先回路ノードを決定することを可能にする、請求項１に記載の方法。
【請求項３】
符号化の追加のレベルが、２つ以上の信号のほぼ同時の到着によって引き起こされる衝突を回避し、到着アドレスおよび関連する追加の遅延の両方が、前記データが向けられなければならない前記特定の宛先回路ノードを決定する、請求項１に記載の方法。
【請求項４】
前記複数のアナログ信号が、前記アナログ信号のデジタル形式への変換なしに前記別の領域でアナログ的に使用される、請求項１に記載の方法。
【請求項５】
前記方法が、人工ニューラル・ネットワーク（ＡＮＮ）で実施され、前記ＡＮＮが、層に配置された複数のニューロンを含み、前記層が、少なくとも１つの上流ニューロン層と少なくとも１つの下流ニューロン層とを含み、前記少なくとも１つの上流ニューロン層の出力部が前記少なくとも１つの下流ニューロン層の入力部に接続され、前記オンチップの一方の領域が上流ニューロン層であり、前記オンチップの他方の領域が下流ニューロン層であり、前記方法が、
（ａ）前記上流ニューロン層で発生されたイネーブル信号に基づいて前記上流ニューロン層のキャパシタの放電を開始するステップであり、前記キャパシタが、前記上流ニューロン層の出力を表す初期値を有する、前記開始するステップと、
（ｂ）（ａ）における前記イネーブル信号を、前記下流ニューロン層に配置されたデジタル・カウンタの入力部と共有するステップであり、前記カウンタが、前記イネーブル信号の受信時に前記下流ニューロン層に対してローカルであるクロックを使用してカウンティングを開始する、前記共有するステップと、
（ｃ）前記キャパシタの出力アナログ電圧をモニタするステップと、さらに
（ｄ）電圧遷移が、前記モニタされた出力アナログ電圧において検出されたとき、
（ｅ）電圧遷移信号を前記下流ニューロン層に送信するステップと
を含み、
前記下流ニューロン層が、前記電圧遷移信号の受信時に前記カウンタの現在値をラッチし、前記ラッチされた現在値が、前記上流ニューロン層の出力を表す前記初期値に等しく、前記出力値が、前記上流ニューロン層と前記下流ニューロン層との間のクロックのグローバル同期なしに前記上流ニューロン層と前記下流ニューロン層との間で通信される、請求項１に記載の方法。
【請求項６】
前記キャパシタの前記出力アナログ電圧をモニタする前記ステップが、コンパレータにおいて、前記キャパシタの前記出力アナログ電圧と基準電圧との入力を受信するステップであり、前記コンパレータが、前記キャパシタの前記モニタされた出力アナログ電圧を表す信号を出力する、前記受信するステップを含む、請求項５に記載の方法。
【請求項７】
前記出力アナログ電圧を表す電圧幅が、前記下流ニューロンからさらに下流に配置された複数のシナプス要素内に電流信号を発生させるために直接適用される、請求項６に記載の方法。
【請求項８】
前記電圧遷移信号が、前記下流ニューロン層の複数のフリップフロップによって受信される、請求項６に記載の方法。
【請求項９】
前記下流ニューロン層に配置された前記デジタル・カウンタが、別の上流ニューロン層に配置された少なくとも１つの他のコンパレータと共有され、異なるコンパレータからの立上りエッジが、対応する瞬間カウンタ値に応じて異なる時間にラッチされる、請求項６に記載の方法。
【請求項１０】
異なるコンパレータからの前記立上りエッジの各々が、前記下流ニューロン層のフリップフロップの異なる組によって受信される、請求項９に記載の方法。
【請求項１１】
前記遷移信号が、以下のもの、すなわち、（１）ロー「０」からハイ「１」に遷移する信号であり、（ｄ）における前記カウンタの前記現在値が、前記遷移信号の立上りエッジの受信時にラッチされる、前記信号と、（２）ハイ「１」からロー「０」に遷移する信号であり、（ｄ）における前記カウンタの前記現在値が、前記遷移信号の立下りエッジの受信時にラッチされる、前記信号とのうちのいずれかである、請求項５に記載の方法。
【請求項１２】
前記上流ニューロン層および前記下流ニューロン層の各々におけるニューロンが、シナプスを介して互いに接続される場合、各シナプスが、２つの接続されたニューロン間の接続強度を符号化するシナプス重みを有し、前記ＡＮＮの前記シナプス重みが、不揮発性メモリ（ＮＶＭ）を使用して実装される、請求項５に記載の方法。
【請求項１３】
前記ＮＶＭが、抵抗性ランダム・アクセス・メモリ（ＲＲＡＭ）および相変化メモリ（ＰＣＭ）からなる群から選択される、請求項１２に記載の方法。
【請求項１４】
前記ＡＮＮにおける前記ニューロンが、ＣＭＯＳ回路を使用して表される、請求項１２に記載の方法。
【請求項１５】
前記ＡＮＮが、パターン認識アプリケーション、画像認識アプリケーション、音声認識アプリケーション、および言語処理アプリケーションからなる群から選択されるアプリケーションの一部として使用される、請求項１２に記載の方法。
【請求項１６】
前記方法が、人工ニューラル・ネットワーク（ＡＮＮ）で実施され、前記ＡＮＮが、層に配置された複数のニューロンを含み、前記層が、少なくとも１つの上流ニューロン層と少なくとも１つの下流ニューロン層とを含み、前記少なくとも１つの上流ニューロン層の出力部が前記少なくとも１つの下流ニューロン層の入力部に接続され、前記オンチップの一方の領域が上流ニューロン層であり、前記オンチップの他方の領域が下流ニューロン層であり、前記方法が、
（ａ）前記上流ニューロン層で発生されたイネーブル信号に基づいて、前記上流ニューロン層のキャパシタに関連する出力アナログ電圧と比較するために閾値電圧のランピングを開始するステップであり、前記キャパシタに関連する前記電圧の初期値が、前記上流ニューロン層の出力を表す、前記開始するステップと、
（ｂ）（ａ）における前記イネーブル信号を、前記下流ニューロン層に配置されたデジタル・カウンタの入力部と共有するステップであり、前記カウンタが、前記イネーブル信号の受信時に前記下流ニューロン層に対してローカルであるクロックを使用してカウンティングを開始する、前記共有するステップと、
（ｃ）（ａ）における前記ランプ閾値電圧をモニタし、前記ランプ閾値電圧が前記上流ニューロン層の前記キャパシタの前記出力アナログ電圧を通過する遷移を検出するステップと、さらに
（ｄ）電圧遷移が、前記モニタされた出力アナログ電圧において検出されたとき、
（ｅ）電圧遷移信号を前記下流ニューロン層に送信するステップと
を含み、
前記下流ニューロン層が、前記電圧遷移信号の受信時に前記カウンタの現在値をラッチし、前記ラッチされた現在値が、前記上流ニューロン層の出力を表す前記初期値に等しく、前記出力値が、前記上流ニューロン層と前記下流ニューロン層との間のクロックのグローバル同期なしに前記上流ニューロン層と前記下流ニューロン層との間で通信される、請求項１に記載の方法。
【請求項１７】
前記キャパシタの前記出力アナログ電圧をモニタする前記ステップが、コンパレータにおいて、前記キャパシタの前記出力アナログ電圧と基準電圧との入力を受信するステップであり、前記コンパレータが、前記キャパシタの前記モニタされた出力アナログ電圧を表す信号を出力する、前記受信するステップを含む、請求項１６に記載の方法。
【請求項１８】
前記出力アナログ電圧を表す電圧幅が、前記下流ニューロンからさらに下流に配置された複数のシナプス要素内に電流信号を発生させるために直接適用される、請求項１６に記載の方法。
【請求項１９】
前記電圧遷移信号が、前記下流ニューロン層の複数のフリップフロップによって受信される、請求項１６に記載の方法。
【請求項２０】
前記下流ニューロン層に配置された前記デジタル・カウンタが、別の上流ニューロン層に配置された少なくとも１つの他のコンパレータと共有され、異なるコンパレータからの立上りエッジが、対応する瞬間カウンタ値に応じて異なる時間にラッチされる、請求項１６に記載の方法。
【請求項２１】
異なるコンパレータからの前記立上りエッジの各々が、前記下流ニューロン層のフリップフロップの異なる組によって受信される、請求項２０に記載の方法。
【請求項２２】
前記遷移信号が、以下のもの、すなわち、（１）ロー「０」からハイ「１」に遷移する信号であり、（ｄ）における前記カウンタの前記現在値が、前記遷移信号の立上りエッジの受信時にラッチされる、前記信号と、（２）ハイ「１」からロー「０」に遷移する信号であり、（ｄ）における前記カウンタの前記現在値が、前記遷移信号の立下りエッジの受信時にラッチされる、前記信号とのうちのいずれかである、請求項１６に記載の方法。
【請求項２３】
前記上流ニューロン層および前記下流ニューロン層の各々におけるニューロンが、シナプスを介して互いに接続される場合、各シナプスが、２つの接続されたニューロン間の接続強度を符号化するシナプス重みを有し、前記ＡＮＮの前記シナプス重みが、不揮発性メモリ（ＮＶＭ）を使用して実装される、請求項１６に記載の方法。
【請求項２４】
前記ＮＶＭが、抵抗性ランダム・アクセス・メモリ（ＲＲＡＭ）および相変化メモリ（ＰＣＭ）からなる群から選択される、請求項２３に記載の方法。
【請求項２５】
前記ＡＮＮにおける前記ニューロンが、ＣＭＯＳ回路を使用して表される、請求項２３に記載の方法。
【請求項２６】
人工ニューラル・ネットワーク（ＡＮＮ）で実施されるシステムであって、
前記ＡＮＮが、層に配置された複数のニューロンを含み、前記システムが、
（ａ）下流ニューロン層の第１の回路であり、前記下流ニューロン層の入力部が上流ニューロン層の出力部に接続され、前記第１の回路がデジタル・カウンタと複数のフリップフロップとを含む、前記第１の回路と、
（ｂ）上流ニューロン層の第２の回路であり、前記第２の回路が、
（ｉ）キャパシタを放電させるためのイネーブル信号を発生する第３の回路であり、前記キャパシタが、前記上流ニューロン層の出力を表す初期値を有する、前記第３の回路と、
（ｉｉ）前記発生されたイネーブル信号を前記デジタル・カウンタの入力部と共有する第４の回路であり、前記カウンタが、前記イネーブル信号の受信時に前記下流ニューロン層に対してローカルであるクロックを使用してカウンティングを開始する、前記第４の回路と、
（ｉｉｉ）前記キャパシタの出力アナログ電圧をモニタするための第５の回路と、さらに
（ｉｖ）電圧遷移が、前記モニタされた出力アナログ電圧において検出されたとき、前記下流ニューロン層の前記第１の回路における前記複数のフリップフロップに電圧遷移信号を送信するための第６の回路であり、前記下流ニューロン層が、前記電圧遷移信号の受信時に前記カウンタの現在値をラッチし、前記ラッチされた現在値が、前記上流ニューロン層の出力を表す前記初期値に等しい、前記第６の回路と
を含む、前記第２の回路と
を含み、
前記出力値が、前記上流ニューロン層と前記下流ニューロン層との間のクロックのグローバル同期なしに前記上流ニューロン層と前記下流ニューロン層との間で通信される、システム。
【請求項２７】
前記第５の回路が、前記キャパシタの前記出力アナログ電圧と基準電圧とを入力として受信するコンパレータを含み、前記コンパレータが、前記キャパシタの前記モニタされた出力アナログ電圧を表す信号を出力する、請求項２６に記載のシステム。
【請求項２８】
前記下流ニューロン層に配置された前記デジタル・カウンタが、別の上流ニューロン層に配置された少なくとも１つの他のコンパレータと共有され、異なるコンパレータからの立上りエッジが、対応する瞬間カウンタ値に応じて異なる時間にラッチされる、請求項２６に記載のシステム。
【請求項２９】
異なるコンパレータからの前記立上りエッジの各々が、前記下流ニューロン層のフリップフロップの異なる組によって受信される、請求項２６に記載のシステム。
【請求項３０】
前記上流ニューロン層および前記下流ニューロン層の各々におけるニューロンが、シナプスを介して互いに接続される場合、各シナプスが、２つの接続されたニューロン間の接続強度を符号化するシナプス重みを有し、ＡＮＮの前記シナプス重みが、不揮発性メモリ（ＮＶＭ）を使用して実装される、請求項２６に記載のシステム。
【請求項３１】
前記ＮＶＭが、抵抗性ランダム・アクセス・メモリ（ＲＲＡＭ）および相変化メモリ（ＰＣＭ）からなる群から選択される、請求項３０に記載のシステム。
【請求項３２】
ＡＮＮにおける前記ニューロンが、ＣＭＯＳ回路を使用して表される、請求項３０に記載のシステム。
【請求項３３】
前記ＡＮＮが、パターン認識アプリケーション、画像認識アプリケーション、音声認識アプリケーション、および言語処理アプリケーションからなる群から選択されるアプリケーションの一部として使用される、請求項３０に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、人工ニューラル・ネットワーク（ＡＮＮ）の分野に関する。より具体的には、本発明は、ハードウェア人工ニューラル・ネットワークにおけるニューロン値の非同期伝達のためのシステム、方法、および製品に関する。
【背景技術】
【０００２】
人工ニューラル・ネットワーク（ＡＮＮ）は、シナプスと呼ばれる接続点によって相互接続されているいくつかのニューロンからなる分散コンピューティング・システムである。各シナプスは、あるニューロンの出力と別のニューロンの入力との間の接続の強度を符号化する。各ニューロンの出力は、それに接続されている他のニューロンから受け取った総入力によって、したがって、これらの「上流」接続ニューロンの出力と、シナプスの重みによって決定される接続の強度とによって決定される。ＡＮＮは、特定の種類の入力が所望の出力を生成するようにシナプスの重みを調節することによって、特定の問題（例えば、パターン認識）を解決するように訓練される。重み調節手順は、「学習」として知られている。ＡＮＮ文献には、画像認識、音声認識、言語処理などのような様々なタスクに適した、学習を実行するための多くのアルゴリズムがある。理想的には、これらのアルゴリズムは、学習過程の間に所与の問題の最適解に向かって収束するシナプス重みのパターンをもたらす。
【０００３】
ＡＮＮの魅力的な実施態様は、ニューロンを表すために何らかの（例えば、ＣＭＯＳ）回路を使用し、その機能は、特定のニューロンが接続されている上流ニューロンからの総入力を積分または合計し、入力の非線形関数を適用してそのニューロンの出力を導き出す。一般に、各ニューロンは他のニューロンの大部分に接続されるので、シナプス（接続）の数は、ニューロンの数よりもはるかに多く、したがって、ニューロモルフィック・コンピューティング・チップ上に超高密度を達成することができるシナプスの実装を使用することは有利である。１つの魅力的な選択は、抵抗性ランダム・アクセス・メモリ（ＲＲＡＭ）または相変化メモリ（ＰＣＭ）などの不揮発性メモリ（ＮＶＭ）技術である。別の魅力的な選択は、キャパシタ−トランジスタ対（capacitor-transistor pair）である。以下の文書はＮＶＭベース・シナプスを論じることになるが、技法、方法、および実施形態は、キャパシタンスベース・シナプス要素に基づくシステムに同様に関連することに留意されたい。正と負（すなわち、興奮性と抑制性）の両方の重みが望まれるので、１つの方式は、２つの間のコンダクタンスの差として重みを表すために１対のＮＶＭ（または２つのキャパシタ−トランジスタ対）を使用する（M. Suri et al., IEDM Tech. Digest, 4.4 (2011)を参照）。この方式が図１に示される。図１は、クロスバー・アレイで実装されたＡＮＮの層を示し、ＮＶＭコンダクタンスの対がシナプス重みとして働く。上流のＮｉ個のニューロンの出力は、並列に合計され、ＮＶＭコンダクタンスの対を通って下流のＭｉ個のニューロンの正入力および負入力に入る。この並列性は、効率的な計算にとって非常に有利である。この方式では非線形２端子アクセス・デバイスが示されているが、３端子トランジスタ・アクセス・デバイスが、同様にこの議論に関連することに留意されたい。
【０００４】
累積電流が、ミラーされ、出力キャパシタに積分され、その結果、最終アナログ電圧は、ニューロンのうちの１つの出力値を表すことができる。このキャパシタは、この特定のアレイに対して「ローカル」であり、その出力のアナログ表現であるが、出力ニューロン活性化のこの値は、第２のクロスバー・アレイに実装された別の「下流」ニューラル・ネットワーク層の入力部において、好ましくはデジタル形式で、利用可能にされなければならない。この第２のアレイは、ソース／上流の第１のクロスバー・アレイから任意の距離とすることができ、好ましくは、ＣＭＯＳチップは、アレイ出力のセットと、次のアレイの入力の後続のセットとの間のマッピングが製作中ではなく実行時にユーザによって選ばれ得るように設計される。
【０００５】
図２は、電流ミラーを示し、電流ミラーは、クロスバーの瞬間電流を出力段上に複製するために使用され、その結果、これらの電流は出力キャパシタンスに積分され、出力キャパシタンスの最終電圧は、ニューロンＭｉのアナログ活性化を表す。
【０００６】
アナログ電圧をデジタル値に変換するための簡単化された近似方法は、蓄積電荷を一定電流で放出することと、キャパシタが完全に放電されるまでクロック・パルスの数を数えることとを含む。ローカル・デジタル化とそれに続く下流アレイへの伝達が可能であり、潜在的に正確であるが、これは、システム全体にわたりクロック信号の非常に注意深い同期（最小クロック・スキューを有する）を必要とし、それは、不可能でないにしても、高価であり消費電力が大きいことが分かる。次いで、Ｎ個（ここで、Ｎは１００〜１０００とすることができる）のそのようなデジタル値を渡すプロセスは、並列伝送ではｑＮ個の個々のバス・ラインを必要とし、ＯＲは、より少数のバス・ラインにわたるより遅い伝送のために直列化を必要とする。そのような手法は、さらに、追加のエリア・ペナルティを伴う相互接続誘起スルー（すなわち、入力信号が金属ワイヤに沿って伝搬するとき抵抗性および容量性効果に起因して、入力信号の立上りエッジおよび立下りエッジが「シャープ」でなくなる現象）に関連する問題を避けるために、デジタル化データ信号の注意深い再バッファリングを必要とする。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】M. Suri et al., IEDM Tech. Digest,4.4 (2011)
【発明の概要】
【発明が解決しようとする課題】
【０００８】
したがって、複数のキャパシタンスの電圧として符号化された１つまたは複数のアナログ値が与えられると、これらの値をチップにわたって任意距離を横切って配置されたデジタル・バッファのバンクに伝達するための技法への必要性が当技術分野には存在する。
【課題を解決するための手段】
【０００９】
本発明は、グローバル・クロックまたはグローバル同期の他の手段を使用することなしに、オンチップのある領域からオンチップの別の領域に信号を送信するための方法及びシステムを提供する。
【００１０】
１つの実施形態において、本発明の方法は、グローバル・クロックまたはグローバル同期の他の手段を使用することなしに、オンチップのある領域からオンチップの別の領域に信号を送信するための方法を提供し、この方法は、送信チャンネルのすべてが共通の初期設定トリガを共有する複数の送信チャンネルで複数のアナログ信号を、共通の初期設定トリガと後続の固有の終端トリガとの間の遅延で信号の各々を符号化することによって送信するステップであり、その結果、信号の各々が、限られた数の送信チャンネルを使用して、正確に遠隔でデジタル化されるか、または直接積分のために遠隔で使用され得る、送信するステップを含む。
【００１１】
別の実施形態では本発明は、人工ニューラル・ネットワーク（ＡＮＮ）で実施される方法を提供し、ＡＮＮが、層に配置された複数のニューロンを含み、層が、少なくとも１つの上流ニューロン層と少なくとも１つの下流ニューロン層とを含み、少なくとも１つの上流ニューロン層の出力部は少なくとも１つの下流ニューロン層の入力部に接続され、この方法は、（ａ）上流ニューロン層で発生されたイネーブル信号に基づいて上流ニューロン層のキャパシタの放電を開始するステップであり、キャパシタが、上流ニューロン層の出力を表す初期値を有する、開始するステップと、（ｂ）（ａ）におけるイネーブル信号を、下流ニューロン層に配置されたデジタル・カウンタの入力部と共有するステップであり、カウンタが、イネーブル信号の受信時に下流ニューロン層に対してローカルであるクロックを使用してカウンティングを開始する、共有するステップと、（ｃ）キャパシタの出力アナログ電圧をモニタするステップと、さらに（ｄ）電圧遷移が、モニタされた出力アナログ電圧において検出されたとき、（ｅ）電圧遷移信号を下流ニューロン層に送信するステップとを含み、下流ニューロン層が、電圧遷移信号の受信時にカウンタの現在値（current value）をラッチし、ラッチされた現在値が、上流ニューロン層の出力を表す初期値に等しく、出力値が、上流ニューロン層と下流ニューロン層との間のクロックのグローバル同期なしに上流ニューロン層と下流ニューロン層との間で通信される。
【００１２】
本発明の一群の代替実施形態では、上流ニューロンに関連するキャパシタが、実際には、それを放電させることによってランプ・ダウンされるのではなく、代わりに、その電圧が、絶えず増加するランプと比較され、このランプの初期トリガと、ランプ電圧がキャパシタ電圧を通過する時間との間の期間が、遠隔場所に伝達するためのアナログ電圧を符号化する。
【００１３】
本発明の別の一群の代替実施形態では、下流ニューロンに到着する期間は、デジタル化されるのではなく、代わりに、そのニューロンのシナプス・デバイスのクロスバー・アレイに直ちに適用され、この下流のニューロンからさらに下流のニューロンの次の層の一連のキャパシタへの積分をもたらす。さらに、入来の期間情報がデジタル化され、下流シナプスのアレイに直接適用される実施形態も可能である。
【００１４】
さらなる別の実施形態では、本発明は、人工ニューラル・ネットワーク（ＡＮＮ）で実施されるシステムを提供し、ＡＮＮが、層に配置された複数のニューロンを含み、システムは、（ａ）下流ニューロン層の第１の回路であり、下流ニューロン層の入力部が上流ニューロン層の出力部に接続され、第１の回路がデジタル・カウンタと複数のフリップフロップとを含む、第１の回路と、（ｂ）上流ニューロン層の第２の回路であり、第２の回路が、（ｉ）キャパシタを放電させるためのイネーブル信号を発生する第３の回路であり、キャパシタが、上流ニューロン層の出力を表す初期値を有する、第３の回路と、（ｉｉ）発生されたイネーブル信号をデジタル・カウンタの入力部と共有する第４の回路であり、カウンタが、イネーブル信号の受信時に下流ニューロン層に対してローカルであるクロックを使用してゼロから上方カウント（upward count）を開始する、第４の回路と、（ｉｉｉ）キャパシタの出力アナログ電圧をモニタするための第５の回路と、（ｉｖ）電圧遷移が、モニタされた出力アナログ電圧において検出されたとき、下流ニューロン層の第１の回路における複数のフリップフロップに電圧遷移信号を送信するための第６の回路であり、下流ニューロン層が、電圧遷移信号の受信時にカウンタの現在値をラッチし、ラッチされた現在値が、上流ニューロン層の出力を表す初期値に等しい、第６の回路とを含む、第２の回路とを含み、出力値が、上流ニューロン層と下流ニューロン層との間のクロックのグローバル同期なしに上流ニューロン層と下流ニューロン層との間で通信される。
【００１５】
別の実施形態では、本発明は、人工ニューラル・ネットワーク（ＡＮＮ）で実施される方法を提供し、ＡＮＮが、層に配置された複数のニューロンを含み、層は、少なくとも１つの上流ニューロン層と少なくとも１つの下流ニューロン層とを含み、少なくとも１つの上流ニューロン層の出力部は少なくとも１つの下流ニューロン層の入力部に接続され、この方法は、（ａ）上流ニューロン層で発生されたイネーブル信号に基づいて、上流ニューロン層のキャパシタに関連する出力アナログ電圧と比較するために閾値電圧のランピングを開始するステップであり、キャパシタに関連する電圧の初期値が、上流ニューロン層の出力を表す、開始するステップと、（ｂ）（ａ）におけるイネーブル信号を、下流ニューロン層に配置されたデジタル・カウンタの入力部と共有するステップであり、カウンタが、イネーブル信号の受信時に下流ニューロン層に対してローカルであるクロックを使用してカウンティングを開始する、共有するステップと、（ｃ）（ａ）におけるランプ閾値電圧をモニタし、ランプ閾値電圧が上流ニューロン層のキャパシタの出力アナログ電圧を通過する遷移を検出するステップと、さらに（ｄ）電圧遷移が、モニタされた出力アナログ電圧において検出されたとき、（ｅ）電圧遷移信号を下流ニューロン層に送信するステップとを含み、下流ニューロン層が、電圧遷移信号の受信時にカウンタの現在値をラッチし、ラッチされた現在値が、上流ニューロン層の出力を表す初期値に等しく、出力値が、上流ニューロン層と下流ニューロン層との間のクロックのグローバル同期なしに上流ニューロン層と下流ニューロン層との間で通信される。
【００１６】
本発明の実施形態が、以下の図に関して詳細に説明される。図面は、例証のためにのみ提供され、単に本発明の例を描いている。これらの図面は、読者が本開示を理解するのを容易にするために提供されており、本開示の広さ、範囲、または適用性を限定すると考えられるべきではない。例証を明確および容易にするために、これらの図面は必ずしも一定の縮尺で作られていないことに留意されたい。
【図面の簡単な説明】
【００１７】
【図１】クロスバー・アレイで実装されたＡＮＮの層を示す図であり、ＮＶＭコンダクタンスの対がシナプス重みとして働く。
【図２】電流ミラーを示す図であり、電流ミラーは、クロスバーの瞬間電流を出力段上に複製するために使用され、その結果、これらの電流は出力キャパシタンスに積分され、出力キャパシタンスの最終電圧は、ニューロンＭｉのアナログ活性化を表す。
【図３】アナログ放電を開始するイネーブル信号が下流ニューロン層に関連するカウンタとどのように共有されるかを示す図である。
【図４】下流クロスバー・アレイの単一のカウンタが多数のデジタル化フリップフロップによって共有され得るサンプル回路を示す図である。
【発明を実施するための形態】
【００１８】
本発明を好ましい実施形態で図示および説明するが、本発明は多くの異なる構成で生成することができる。この説明は、本発明の原理およびその構造に対する関連機能仕様の例示と見なされるべきであり、例証の実施形態に本発明を限定するものではないという了解の下で、本発明の好ましい実施形態が、図面に示され、本明細書において詳細に説明される。当業者は、本発明の範囲内の他の多くの可能な変形を思い描くであろう。
【００１９】
この説明において、「１つの実施形態」または「一実施形態」への言及は、言及されている特徴が、本発明の少なくとも１つの実施形態に含まれていることを意味することに留意されたい。さらに、この説明における「１つの実施形態」への別々の言及は必ずしも同じ実施形態を指さないが、しかしながら、そのような実施形態は、排他的であると述べられていない限りおよび当業者には容易に明らかであるときを除いて、互いに排他的ではない。したがって、本発明は、本明細書で説明する実施形態の任意の様々な組合せまたは統合あるいはその両方を含むことができる。
【００２０】
本明細書で説明する本発明の好ましい実施形態は、データをアナログ遅延に符号化し、宛先／下流クロスバー・アレイでのみデジタル化することによって、クロック信号の同期およびデータのスルーに関連する課題を除去することができる。本発明の好ましい実施形態は、ソース／上流クロスバー・アレイに初期トリガ信号を導入し、初期トリガ信号は、後続のデータ信号と同じ距離を横切る。したがって、トリガとデータ信号の両方は、少なくとも一次では、同じスルー効果および同じ遅延を受ける。この手法は、アプリケーション全体が送信データにおける小さいゼロ平均誤差に対して回復力がある状況、例えば、人工ニューラル・ネットワークなどに適している。
【００２１】
本発明の好ましい実施形態では、上流ニューロンのキャパシタへの電荷の積分動作が完全に終了した後、イネーブル信号が、上流クロスバー・アレイの制御ロジックによって発生される。このイネーブル信号は、各出力ニューロンのキャパシタに蓄積されたアナログ電圧の放電を開始するために、または代替としてこれらのアナログ電圧と比較する際に使用するためのランプ電圧（ramped voltage）を開始するために使用される。イネーブル信号は、さらに、下流アレイに配置されたデジタル・カウンタの入力部に送信される。受信すると、カウンタは、下流の宛先アレイのローカル領域でのみ同期しさえすればよいクロックを使用してゼロから上方カウントを開始することになる。
【００２２】
図３は、アナログ放電を開始するイネーブル信号が出力段のカウンタとどのように共有されるかを示す。コンパレータ立上りエッジがＦＦに到着すると、カウンタの瞬時値が捕捉される。この値は、上流の出力キャパシタのアナログ電圧のデジタル表現であり、両方の到着信号が同じ遅延を受けるので下流アレイにローカルに格納される。
【００２３】
ある時点に、キャパシタ電圧は、ゼロに近い基準電圧を下回ることになるか、または静止した非放電キャパシタ電圧は、基準電圧ランプによって通過されることになる。これにより、出力キャパシタンス・ノードと基準電圧の両方に接続されているコンパレータの出力は、「０」から「１」に遷移することになる。この立上りエッジは下流アレイに送信されることになり、ローカル・カウンタの出力部から並列に入力を受信するフリップフロップのバンクは、この立上りエッジを受信すると、カウンタ・ビットの現在値をラッチすることができる。コンパレータ（上流アレイに対してローカルである）の出力および受信フリップフロップ（下流アレイに対してローカルである）からの無視できない伝搬遅延が存在するが、この遅延は、カウンタ動作を開始したイネーブル信号の遅延と同等であり、したがって、その遅延によって効果的に相殺される。したがって、チップの全体にわたってクロックをグローバルに同期させる必要なしに、情報を効果的に送信することが可能である。
【００２４】
この考えは、下流アレイの単一の共有カウンタに拡大することができ、異なるコンパレータからの多数の立上りエッジは、様々な時点に瞬間カウンタ値を異なるフリップフロップにラッチする。すでに述べたように、距離が同等である限り、ラッチされた値は、「真の」アナログ電圧の妥当な近似推定であると予想される。
【００２５】
場合によっては、トリガ／イネーブル信号とコンパレータ信号の両方が、マルチワイヤ・バスで伝達され得、その結果、このバス上のデータ・パターンは、信号が生じたキャパシタのアドレス、したがって、このデータ・パターンの到着の瞬間にラッチされるべき特定のフリップフロップのアドレスを符号化する。ソース・アレイでこのアドレスを符号化し、宛先でこのアドレスを復号することに関連する遅延は、すべてのキャパシタ／フリップフロップ対に対して同一でありさえすればよく、トリガ信号の到着に関連した遅延に付け加えることができる。これが正確に行われる場合、容量性読出しのトリガリングとコンパレータの遷移との間のソースでの第１の遅延と、カウンタのトリガリングと、関連するフリップフロップのラッチングとの間の宛先での第２の遅延とは、一定値だけ異なることになり、それは、所望に応じてゼロまたは非ゼロとなるように巧みに処理することができる。しかしながら、この手法は、潜在的に、コンテンション（あまりにも多くのコンパレータが同じ短い時間ウィンドウ内にトリップすること）に起因して、一部のデータ値を不正確に伝達する場合がある。コンテンションへの許容量は、物理アドレスと、ラッチングの前に課されるべき符号化遅延（物理アドレス復号化の後の）の両方を送信することによって設計することができる。したがって、宛先でのラッチング・イベントがほとんど同時に所望の遅延（例えば、カウンタ値）で生じるように、いくつかの同時コンパレータ・イベントが、適切な物理アドレスおよびいくつかの異なる符号化遅延を使用して送信される。
【００２６】
図４は、下流クロスバー・アレイの単一のカウンタが多数のデジタル化フリップフロップによって共有され得るサンプル回路を示す。到着する立上りエッジは、各々、正確な到着時時間に応じてこのカウンタの異なる瞬時値を独立して捕捉することになる。
【００２７】
別の実施形態では、本発明は、人工ニューラル・ネットワーク（ＡＮＮ）で実施される方法を提供し、ＡＮＮは、層に配置された複数のニューロンを含み、層は、少なくとも１つの上流ニューロン層と少なくとも１つの下流ニューロン層とを含み、少なくとも１つの上流ニューロン層の出力部は少なくとも１つの下流ニューロン層の入力部に接続され、この方法は、（ａ）上流ニューロン層で発生されたイネーブル信号に基づいて上流ニューロン層のキャパシタの放電を開始するステップであり、キャパシタが、上流ニューロン層の出力を表す初期値を有する、開始するステップと、（ｂ）（ａ）におけるイネーブル信号を、下流ニューロン層に配置されたデジタル・カウンタの入力部と共有するステップであり、カウンタが、イネーブル信号の受信時に下流ニューロン層に対してローカルであるクロックを使用して、ゼロから上方カウントを開始する、共有するステップと、（ｃ）キャパシタの出力アナログ電圧をモニタするステップと、さらに、（ｄ）電圧遷移が、モニタされた出力アナログ電圧において検出されたとき、（ｅ）電圧遷移信号を下流ニューロン層に送信するステップとを含み、下流ニューロン層が、電圧遷移信号の受信時にカウンタの現在値をラッチし、ラッチされた現在値が、上流ニューロン層の出力を表す初期値に等しく、出力値が、上流ニューロン層と下流ニューロン層との間のクロックのグローバル同期なしに上流ニューロン層と下流ニューロン層との間で通信される。
【００２８】
本発明の一群の代替実施形態では、上流ニューロンに関連するキャパシタが、実際には、それを放電させることによってランプ・ダウンされるのではなく、代わりに、その電圧が、絶えず増加するランプと比較され、このランプの初期トリガと、ランプ電圧がキャパシタ電圧を通過する時間との間の期間が、遠隔場所に伝達するためのアナログ電圧を符号化する。
【００２９】
本発明の別の一群の代替実施形態では、下流ニューロンに到着する期間は、デジタル化されるのではなく、代わりに、そのニューロンのシナプス・デバイスのクロスバー・アレイに直ちに適用され、この下流のニューロンからさらに下流のニューロンの次の層の一連のキャパシタへの積分をもたらす。さらに、入来の期間情報がデジタル化され、下流シナプス・アレイに直接適用される実施形態も可能である。
【００３０】
さらなる別の実施形態では、本発明は、人工ニューラル・ネットワーク（ＡＮＮ）で実施されるシステムを提供し、ＡＮＮは、層に配置された複数のニューロンを含み、システムは、（ａ）下流ニューロン層の第１の回路であり、下流ニューロン層の入力部が上流ニューロン層の出力部に接続され、第１の回路がデジタル・カウンタと複数のフリップフロップとを含む、第１の回路と、（ｂ）上流ニューロン層の第２の回路であり、第２の回路が、（ｉ）キャパシタを放電させるためのイネーブル信号を発生する第３の回路であり、キャパシタが、上流ニューロン層の出力を表す初期値を有する、第３の回路と、（ｉｉ）発生されたイネーブル信号をデジタル・カウンタの入力部と共有する第４の回路であり、カウンタが、イネーブル信号の受信時に下流ニューロン層に対してローカルであるクロックを使用して、ゼロから上方カウントを開始する、第４の回路と、（ｉｉｉ）キャパシタの出力アナログ電圧をモニタするための第５の回路と、さらに、電圧遷移が、モニタされた出力アナログ電圧において検出されたとき、（ｉｖ）下流ニューロン層の第１の回路における複数のフリップフロップに電圧遷移信号を送信するための第６の回路であり、下流ニューロン層が、電圧遷移信号の受信時にカウンタの現在値をラッチし、ラッチされた現在値が、上流ニューロン層の出力を表す初期値に等しい、第６の回路とを含む第２回路とを含み、出力値が、上流ニューロン層と下流ニューロン層との間のクロックのグローバル同期なしに上流ニューロン層と下流ニューロン層との間で通信される。
【００３１】
別の実施形態では、本発明は、人工ニューラル・ネットワーク（ＡＮＮ）で実施される方法を提供し、ＡＮＮは、層に配置された複数のニューロンを含み、層は、少なくとも１つの上流ニューロン層と少なくとも１つの下流ニューロン層とを含み、少なくとも１つの上流ニューロン層の出力部は少なくとも１つの下流ニューロン層の入力部に接続され、この方法は、（ａ）上流ニューロン層で発生されたイネーブル信号に基づいて、上流ニューロン層のキャパシタに関連する出力アナログ電圧と比較するために閾値電圧のランピングを開始するステップであり、キャパシタに関連する電圧の初期値が、上流ニューロン層の出力を表す、開始するステップと、（ｂ）（ａ）におけるイネーブル信号を、下流ニューロン層に配置されたデジタル・カウンタの入力部と共有するステップであり、カウンタが、イネーブル信号の受信時に下流ニューロン層に対してローカルであるクロックを使用してカウンティングを開始する、共有するステップと、（ｃ）（ａ）におけるランプ閾値電圧をモニタし、ランプ閾値電圧が上流ニューロン層のキャパシタの出力アナログ電圧を通過する遷移を検出するステップと、（ｄ）電圧遷移信号を下流ニューロン層に送信するステップであり、下流ニューロン層が、電圧遷移信号の受信時にカウンタの現在値をラッチし、ラッチされた現在値が、上流ニューロン層の出力を表す初期値に等しく、出力値が、上流ニューロン層と下流ニューロン層との間のクロックのグローバル同期なしに上流ニューロン層と下流ニューロン層との間で通信される、送信するステップとを含む。
【００３２】
開示したプロセスのステップの特定の順序または階層は、例示の手法の例証であることが理解される。設計優先度に基づいて、プロセスのステップの特定の順序または階層は再配置されてもよく、またはすべての例証されたステップが実行されることが理解される。ステップのうちの一部は同時に実行されてもよい。例えば、特定の状況では、多重タスク処理および並行処理が有利であることがある。
【００３３】
上述の本発明の様々な実施形態は、例証としてのみ提供されており、本開示の範囲を限定するように解釈されるべきでない。当業者は、本明細書に図示および説明された例示の実施形態および適用に従うことなく、および本発明の範囲から逸脱することなく、本明細書で説明した原理に対して行うことができる様々な変形および変更を容易に認識するであろう。
【００３４】
結論
ハードウェア人工ニューラル・ネットワークにおけるニューロン値の非同期伝達のためのシステム、方法、および製品の効果的な実施のためのシステムおよび方法を、本発明の上述の実施形態で示した。本発明の様々な好ましい実施形態を図示および説明したが、そのような開示によって本発明を限定する意図はなく、むしろ、添付の特許請求の範囲において定義されるような本発明の範囲内にあるすべての変形を包含するように意図されることを理解されよう。例えば、本発明は、ソフトウェア／プログラム、コンピューティング環境、または特定のコンピューティング・ハードウェアによって限定されるべきではない。
【図１】
2020507842.tif 000003
【図２】
2020507842.tif 000004
【図３】
2020507842.tif 000005
【図４】
2020507842.tif 000006
【手続補正書】
【提出日】令和1年10月9日(2019.10.9)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
グローバル・クロックまたはグローバル同期の他の手段を使用することなしに、オンチップのある領域からオンチップの別の領域に信号を送信するための方法であって、前記方法が、
送信チャンネルのすべてが共通の初期設定トリガを共有する複数の前記送信チャンネルで複数のアナログ信号を、前記共通の初期設定トリガと後続の固有の終端トリガとの間の遅延で前記信号の各々を符号化することによって送信するステップであり、その結果、前記信号の各々が、限られた数の送信チャンネルを使用して正確に遠隔でデジタル化される、前記送信するステップ
を含む、方法。
【請求項２】
アドレス指定方式によって、マルチビット・データ・バス上の到着する信号が、データが向けられなければならない特定の宛先回路ノードを決定することを可能にする、請求項１に記載の方法。
【請求項３】
符号化の追加のレベルが、２つ以上の信号のほぼ同時の到着によって引き起こされる衝突を回避し、到着アドレスおよび関連する追加の遅延の両方が、前記データが向けられなければならない前記特定の宛先回路ノードを決定する、請求項１に記載の方法。
【請求項４】
前記複数のアナログ信号が、前記アナログ信号のデジタル形式への変換なしに前記別の領域でアナログ的に使用される、請求項１に記載の方法。
【請求項５】
前記方法が、人工ニューラル・ネットワーク（ＡＮＮ）で実施され、前記ＡＮＮが、層に配置された複数のニューロンを含み、前記層が、少なくとも１つの上流ニューロン層と少なくとも１つの下流ニューロン層とを含み、前記少なくとも１つの上流ニューロン層の出力部が前記少なくとも１つの下流ニューロン層の入力部に接続され、前記オンチップの一方の領域が上流ニューロン層であり、前記オンチップの他方の領域が下流ニューロン層であり、前記方法が、
（ａ）前記上流ニューロン層で発生されたイネーブル信号に基づいて前記上流ニューロン層のキャパシタの放電を開始するステップであり、前記キャパシタが、前記上流ニューロン層の出力を表す初期値を有する、前記開始するステップと、
（ｂ）（ａ）における前記イネーブル信号を、前記下流ニューロン層に配置されたデジタル・カウンタの入力部と共有するステップであり、前記カウンタが、前記イネーブル信号の受信時に前記下流ニューロン層に対してローカルであるクロックを使用してカウンティングを開始する、前記共有するステップと、
（ｃ）前記キャパシタの出力アナログ電圧をモニタするステップと、さらに
（ｄ）電圧遷移が、前記モニタされた出力アナログ電圧において検出されたとき、
（ｅ）電圧遷移信号を前記下流ニューロン層に送信するステップと
を含み、
前記下流ニューロン層が、前記電圧遷移信号の受信時に前記カウンタの現在値をラッチし、前記ラッチされた現在値が、前記上流ニューロン層の出力を表す前記初期値に等しく、前記出力値が、前記上流ニューロン層と前記下流ニューロン層との間のクロックのグローバル同期なしに前記上流ニューロン層と前記下流ニューロン層との間で通信される、請求項１に記載の方法。
【請求項６】
前記キャパシタの前記出力アナログ電圧をモニタする前記ステップが、コンパレータにおいて、前記キャパシタの前記出力アナログ電圧と基準電圧との入力を受信するステップであり、前記コンパレータが、前記キャパシタの前記モニタされた出力アナログ電圧を表す信号を出力する、前記受信するステップを含む、請求項５に記載の方法。
【請求項７】
前記出力アナログ電圧を表す電圧幅が、前記下流ニューロンからさらに下流に配置された複数のシナプス要素内に電流信号を発生させるために直接適用される、請求項６に記載の方法。
【請求項８】
前記電圧遷移信号が、前記下流ニューロン層の複数のフリップフロップによって受信される、請求項６に記載の方法。
【請求項９】
前記下流ニューロン層に配置された前記デジタル・カウンタが、別の上流ニューロン層に配置された少なくとも１つの他のコンパレータと共有され、異なるコンパレータからの立上りエッジが、対応する瞬間カウンタ値に応じて異なる時間にラッチされる、請求項６に記載の方法。
【請求項１０】
異なるコンパレータからの前記立上りエッジの各々が、前記下流ニューロン層のフリップフロップの異なる組によって受信される、請求項９に記載の方法。
【請求項１１】
前記遷移信号が、以下のもの、すなわち、（１）ロー「０」からハイ「１」に遷移する信号であり、（ｄ）における前記カウンタの前記現在値が、前記遷移信号の立上りエッジの受信時にラッチされる、前記信号と、（２）ハイ「１」からロー「０」に遷移する信号であり、（ｄ）における前記カウンタの前記現在値が、前記遷移信号の立下りエッジの受信時にラッチされる、前記信号とのうちのいずれかである、請求項５に記載の方法。
【請求項１２】
前記上流ニューロン層および前記下流ニューロン層の各々におけるニューロンが、シナプスを介して互いに接続される場合、各シナプスが、２つの接続されたニューロン間の接続強度を符号化するシナプス重みを有し、前記ＡＮＮの前記シナプス重みが、不揮発性メモリ（ＮＶＭ）を使用して実装される、請求項５に記載の方法。
【請求項１３】
前記ＮＶＭが、抵抗性ランダム・アクセス・メモリ（ＲＲＡＭ）および相変化メモリ（ＰＣＭ）からなる群から選択される、請求項１２に記載の方法。
【請求項１４】
前記ＡＮＮにおける前記ニューロンが、ＣＭＯＳ回路を使用して表される、請求項１２に記載の方法。
【請求項１５】
前記ＡＮＮが、パターン認識アプリケーション、画像認識アプリケーション、音声認識アプリケーション、および言語処理アプリケーションからなる群から選択されるアプリケーションの一部として使用される、請求項１２に記載の方法。
【請求項１６】
前記方法が、人工ニューラル・ネットワーク（ＡＮＮ）で実施され、前記ＡＮＮが、層に配置された複数のニューロンを含み、前記層が、少なくとも１つの上流ニューロン層と少なくとも１つの下流ニューロン層とを含み、前記少なくとも１つの上流ニューロン層の出力部が前記少なくとも１つの下流ニューロン層の入力部に接続され、前記オンチップの一方の領域が上流ニューロン層であり、前記オンチップの他方の領域が下流ニューロン層であり、前記方法が、
（ａ）前記上流ニューロン層で発生されたイネーブル信号に基づいて、前記上流ニューロン層のキャパシタに関連する出力アナログ電圧と比較するために閾値電圧のランピングを開始するステップであり、前記キャパシタに関連する前記電圧の初期値が、前記上流ニューロン層の出力を表す、前記開始するステップと、
（ｂ）（ａ）における前記イネーブル信号を、前記下流ニューロン層に配置されたデジタル・カウンタの入力部と共有するステップであり、前記カウンタが、前記イネーブル信号の受信時に前記下流ニューロン層に対してローカルであるクロックを使用してカウンティングを開始する、前記共有するステップと、
（ｃ）（ａ）における前記ランプ閾値電圧をモニタし、前記ランプ閾値電圧が前記上流ニューロン層の前記キャパシタの前記出力アナログ電圧を通過する遷移を検出するステップと、さらに
（ｄ）電圧遷移が、前記モニタされた出力アナログ電圧において検出されたとき、
（ｅ）電圧遷移信号を前記下流ニューロン層に送信するステップと
を含み、
前記下流ニューロン層が、前記電圧遷移信号の受信時に前記カウンタの現在値をラッチし、前記ラッチされた現在値が、前記上流ニューロン層の出力を表す前記初期値に等しく、前記出力値が、前記上流ニューロン層と前記下流ニューロン層との間のクロックのグローバル同期なしに前記上流ニューロン層と前記下流ニューロン層との間で通信される、請求項１に記載の方法。
【請求項１７】
前記キャパシタの前記出力アナログ電圧をモニタする前記ステップが、コンパレータにおいて、前記キャパシタの前記出力アナログ電圧と基準電圧との入力を受信するステップであり、前記コンパレータが、前記キャパシタの前記モニタされた出力アナログ電圧を表す信号を出力する、前記受信するステップを含む、請求項１６に記載の方法。
【請求項１８】
前記出力アナログ電圧を表す電圧幅が、前記下流ニューロンからさらに下流に配置された複数のシナプス要素内に電流信号を発生させるために直接適用される、請求項１６に記載の方法。
【請求項１９】
前記電圧遷移信号が、前記下流ニューロン層の複数のフリップフロップによって受信される、請求項１６に記載の方法。
【請求項２０】
前記下流ニューロン層に配置された前記デジタル・カウンタが、別の上流ニューロン層に配置された少なくとも１つの他のコンパレータと共有され、異なるコンパレータからの立上りエッジが、対応する瞬間カウンタ値に応じて異なる時間にラッチされる、請求項１６に記載の方法。
【請求項２１】
異なるコンパレータからの前記立上りエッジの各々が、前記下流ニューロン層のフリップフロップの異なる組によって受信される、請求項２０に記載の方法。
【請求項２２】
前記遷移信号が、以下のもの、すなわち、（１）ロー「０」からハイ「１」に遷移する信号であり、（ｄ）における前記カウンタの前記現在値が、前記遷移信号の立上りエッジの受信時にラッチされる、前記信号と、（２）ハイ「１」からロー「０」に遷移する信号であり、（ｄ）における前記カウンタの前記現在値が、前記遷移信号の立下りエッジの受信時にラッチされる、前記信号とのうちのいずれかである、請求項１６に記載の方法。
【請求項２３】
前記上流ニューロン層および前記下流ニューロン層の各々におけるニューロンが、シナプスを介して互いに接続される場合、各シナプスが、２つの接続されたニューロン間の接続強度を符号化するシナプス重みを有し、前記ＡＮＮの前記シナプス重みが、不揮発性メモリ（ＮＶＭ）を使用して実装される、請求項１６に記載の方法。
【請求項２４】
前記ＮＶＭが、抵抗性ランダム・アクセス・メモリ（ＲＲＡＭ）および相変化メモリ（ＰＣＭ）からなる群から選択される、請求項２３に記載の方法。
【請求項２５】
前記ＡＮＮにおける前記ニューロンが、ＣＭＯＳ回路を使用して表される、請求項２３に記載の方法。
【請求項２６】
人工ニューラル・ネットワーク（ＡＮＮ）で実施されるシステムであって、
前記ＡＮＮが、層に配置された複数のニューロンを含み、前記システムが、
（ａ）下流ニューロン層の第１の回路であり、前記下流ニューロン層の入力部が上流ニューロン層の出力部に接続され、前記第１の回路がデジタル・カウンタと複数のフリップフロップとを含む、前記第１の回路と、
（ｂ）上流ニューロン層の第２の回路であり、前記第２の回路が、
（ｉ）キャパシタを放電させるためのイネーブル信号を発生する第３の回路であり、前記キャパシタが、前記上流ニューロン層の出力を表す初期値を有する、前記第３の回路と、
（ｉｉ）前記発生されたイネーブル信号を前記デジタル・カウンタの入力部と共有する第４の回路であり、前記カウンタが、前記イネーブル信号の受信時に前記下流ニューロン層に対してローカルであるクロックを使用してカウンティングを開始する、前記第４の回路と、
（ｉｉｉ）前記キャパシタの出力アナログ電圧をモニタするための第５の回路と、さらに
（ｉｖ）電圧遷移が、前記モニタされた出力アナログ電圧において検出されたとき、前記下流ニューロン層の前記第１の回路における前記複数のフリップフロップに電圧遷移信号を送信するための第６の回路であり、前記下流ニューロン層が、前記電圧遷移信号の受信時に前記カウンタの現在値をラッチし、前記ラッチされた現在値が、前記上流ニューロン層の出力を表す前記初期値に等しい、前記第６の回路と
を含む、前記第２の回路と
を含み、
前記出力値が、前記上流ニューロン層と前記下流ニューロン層との間のクロックのグローバル同期なしに前記上流ニューロン層と前記下流ニューロン層との間で通信される、システム。
【請求項２７】
前記第５の回路が、前記キャパシタの前記出力アナログ電圧と基準電圧とを入力として受信するコンパレータを含み、前記コンパレータが、前記キャパシタの前記モニタされた出力アナログ電圧を表す信号を出力する、請求項２６に記載のシステム。
【請求項２８】
前記下流ニューロン層に配置された前記デジタル・カウンタが、別の上流ニューロン層に配置された少なくとも１つの他のコンパレータと共有され、異なるコンパレータからの立上りエッジが、対応する瞬間カウンタ値に応じて異なる時間にラッチされる、請求項２６に記載のシステム。
【国際調査報告】
2020507842.tif 000007
2020507842.tif 000008
2020507842.tif 000009