"神経形態学的およびシナプトロニックシステムであって、複数の電子ニューロンと、前記複数の電子ニューロンを相互接続するために構成されたクロスバーアレイネットワークと、を備え、前記クロスバーアレイネットワークが、複数のクロスバーアレイであって、各クロスバーアレイが、軸索および樹状突起が互いに横断するような複数の軸索および複数の樹状突起、および複数のシナプスデバイスであって、各シナプスデバイスが樹状突起と軸索との間に結合された前記クロスバーアレイの交差接合点にある、複数のシナプスデバイス、を備える、複数のクロスバーアレイを備え、前記クロスバーアレイが、前記シナプスデバイスの千鳥配列されたクロスバーレイアウトを提供する空間的な千鳥配列パターンである、システム。前記クロスバーアレイが、2次元平面内に前記シナプスデバイスの千鳥配列されたクロスバーレイアウトを提供する空間的な千鳥配列パターンであり、各クロスバーアレイの前記複数のシナプスデバイスが、隣接するクロスバーアレイの前記複数のシナプスデバイスに対してオフセットされる、請求項1に記載のシステム。各クロスバーアレイが、対応する前記複数の軸索、前記複数の樹状突起、前記複数のシナプスデバイス、および1つまたは複数の電子ニューロンを含む、クロスバー回路タイルを備える、請求項2に記載のシステム。各クロスバー回路タイルが、隣接するクロスバー回路タイルに対して空間的にオフセットされた、請求項3に記載のシステム。各クロスバー回路タイルが、Nの軸索、Nの樹状突起、NxNグループのシナプスデバイス、および1つまたは複数の電子ニューロンを備え、各電子ニューロンの受容野が、千鳥配列パターンのNxNの相互接続されたクロスバー回路タイルを備え、各電子ニューロンの射影野が、千鳥配列パターンのNxNの相互接続されたクロスバー回路タイルを備え、前記クロスバーアレイネットワークが複数のNxNのクロスバー回路タイルを含む、請求項4に記載のシステム。各クロスバー回路タイルが、N-1の樹状突起を介して隣接するクロスバー回路タイルと第1の空間的方向に相互接続される、請求項4に記載のシステム。各クロスバー回路タイルが、N-1の軸索を介して隣接するクロスバー回路タイルと、前記第1の空間的方向に対して横断する第2の空間的方向に相互接続される、請求項6に記載のシステム。各樹状突起が、Nの隣接するクロスバー回路タイルを前記第1の空間的方向に相互接続し、各軸索が、Nの隣接するクロスバー回路タイルを前記第2の空間的方向に相互接続する、請求項7に記載のシステム。各クロスバーアレイが、前記複数の樹状突起に対応する複数の樹状ドライバであって、各樹状ドライバが前記クロスバーアレイの第1の側面で樹状突起に結合される、複数の樹状ドライバと、前記複数の軸索に対応する複数の軸索ドライバであって、各軸索ドライバが前記クロスバーアレイの第2の側面で軸索に結合される、複数の軸索ドライバと、を備え、交差接合点でシナプスデバイスによって結合されたドライバおよび樹状ドライバが組み合わされて、電子ニューロンの最新のスパイキングが前記軸索ドライバおよび前記樹状ドライバ内へスパイキング信号を発火させ、スパイクタイミング依存可塑性STDPを生成してからの時間に応じて、前記シナプスデバイスの状態を変更できる信号を生成する、請求項8に記載のシステム。前記複数の電子ニューロンのそれぞれが、前記複数のクロスバーアレイのうちの1つに対応し、前記システムが、前記ネットワーク内の複数のクロスバーアレイの同時活動化をクロッキングするための信号生成器をさらに備える、請求項1に記載のシステム。前記ネットワーク内の複数のクロスバーアレイのあるクロッキングレートでの同時活動化が、前記クロスバーアレイネットワーク内のクロスバーアレイの数と無関係である、請求項10に記載のシステム。前記信号生成器のクロッキングが複数の時間ステップを提供し、各時間ステップ内で、前記複数のクロスバーアレイおよび対応する電子ニューロンのそれぞれについて、電子ニューロンの発火時に、対応する軸索および樹状突起に信号を送信すること、前記対応する軸索が、STDPの抑制部分に関する警報としても働く読み取り信号を送信すること、前記対応する軸索が、リセット信号を送信し、所与の樹状突起が確率的に返答すること、前記対応する樹状突起が、セット信号を送信し、所与の軸索が確率的に返答すること、軸索上のONビット数を読み取ること、および樹状突起上のONビット数を読み取ること、を含む6つの動作段階を提供する、請求項10に記載のシステム。軸索通信ステップが下位ステップをさらに含み、各下位ステップ内で複数のシナプスが読み取り信号を受信し、軸索リセットステップが下位ステップをさらに含み、各下位ステップ内で、複数の軸索がリセット信号を送信し、所与の樹状突起が確率的に返答し、樹状突起通信ステップが下位ステップ含み、各下位ステップ内で、複数の樹状突起がセット信号を送信し、所与の軸索が確率的に返答し、軸索読み取りステップが下位ステップを含み、各下位ステップが複数の軸索上のONビット数を読み取ることを含み、樹状突起読み取りステップが下位ステップを含み、各下位ステップが複数の樹状突起上のONビット数を読み取ることを含む、請求項11に記載のシステム。電子ニューロンがスパイクする場合、前記電子ニューロンから、電子ニューロンのネットワーク内のスパイキング電子ニューロンに接続された各軸索および各樹状突起へと、スパイキング信号を送信し、スパイクタイミング依存可塑性STDPを生成すること、を含む方法であって、前記電子ニューロンのネットワークが、複数の電子ニューロンと、前記複数の電子ニューロンを相互接続するために構成されたクロスバーアレイネットワークと、を備え、前記クロスバーアレイネットワークが、複数のクロスバーアレイであって、各クロスバーアレイが、軸索および樹状突起が互いに横断するような複数の軸索および複数の樹状突起、および複数のシナプスデバイスであって、各シナプスデバイスが樹状突起と軸索との間に結合された前記クロスバーアレイの交差接合点にある、複数のシナプスデバイス、を備える、複数のクロスバーアレイを備え、前記クロスバーアレイが、前記シナプスデバイスの千鳥配列されたクロスバーレイアウトを提供する空間的な千鳥配列パターンである、方法。前記複数の電子ニューロンのそれぞれが、前記複数のクロスバーアレイのうちの1つに対応し、前記方法が、前記ネットワーク内の複数のクロスバーアレイの同時活動化のためにクロッキング信号を生成することをさらに含む、請求項14に記載の方法。前記複数のクロスバーアレイおよび対応する電子ニューロンのそれぞれについて、前記クロッキング信号に基づき、電子ニューロンの発火時に、対応する軸索および樹状突起に信号を送信すること、前記対応する軸索が、STDPの抑制部分に関する警報としても働く読み取り信号を送信すること、前記対応する軸索が、リセット信号を送信し、所与の樹状突起が確率的に返答すること、前記対応する樹状突起が、セット信号を送信し、所与の軸索が確率的に返答すること、軸索上のONビット数を読み取ること、および樹状突起上のONビット数を読み取ること、をさらに含む、請求項15に記載の方法。前記クロスバーアレイが、2次元平面内に前記シナプスデバイスの千鳥配列されたクロスバーレイアウトを提供する空間的な千鳥配列パターンであり、各クロスバーアレイの前記複数のシナプスデバイスが、隣接するクロスバーアレイの前記複数のシナプスデバイスに対してオフセットされる、請求項16に記載の方法。各クロスバーアレイが、対応する前記複数の軸索、前記複数の樹状突起、前記複数のシナプスデバイス、および1つまたは複数の電子ニューロンを含む、クロスバー回路タイルを備える、請求項17に記載の方法。各クロスバー回路タイルが、隣接するクロスバー回路タイルに対して空間的にオフセットされ、隣接するクロスバー回路タイル内の前記複数のシナプスデバイスに対する各クロスバー回路タイル内の前記複数のシナプスデバイスの千鳥配列されたクロスバーレイアウトを提供する、請求項18に記載の方法。各クロスバー回路タイルが、Nの軸索、Nの樹状突起、NxNグループのシナプスデバイス、および1つまたは複数の電子ニューロンを備え、前記ネットワークが、千鳥配列パターンのNxNの相互接続されたクロスバー回路タイルを備える、請求項19に記載の方法。各クロスバー回路タイルが、N-1の樹状突起を介して隣接するクロスバー回路タイルと第1の空間的方向に相互接続される、請求項19に記載の方法。各クロスバー回路タイルが、N-1の軸索を介して隣接するクロスバー回路タイルと、前記第1の空間的方向に対して横断する第2の空間的方向に相互接続される、請求項21に記載の方法。各樹状突起が、Nの隣接するクロスバー回路タイルを前記第1の空間的方向に相互接続し、各軸索が、Nの隣接するクロスバー回路タイルを前記第2の空間的方向に相互接続する、請求項22に記載の方法。各クロスバーアレイが、前記複数の樹状突起に対応する複数の樹状ドライバであって、各樹状ドライバが前記クロスバーアレイの第1の側面で樹状突起に結合される、複数の樹状ドライバと、前記複数の軸索に対応する複数の軸索ドライバであって、各軸索ドライバが前記クロスバーアレイの第2の側面で軸索に結合される、複数の軸索ドライバと、を備え、交差接合点でシナプスデバイスによって結合されたドライバおよび樹状ドライバが組み合わされて、電子ニューロンの最新のスパイキングが前記軸索ドライバおよび前記樹状ドライバ内へスパイキング信号を発火させ、STDPを生成してからの時間に応じて、前記シナプスデバイスの状態を変更できる信号を生成する、請求項23に記載の方法。前記クロスバーアレイが、2次元平面内に前記シナプスデバイスの千鳥配列されたクロスバーレイアウトを提供する空間的な千鳥配列パターンであり、各クロスバーアレイの前記複数のシナプスデバイスが、隣接するクロスバーアレイの前記複数のシナプスデバイスに対してオフセットされ、前記複数の電子ニューロンのそれぞれが、前記複数のクロスバーアレイのうちの1つに対応し、前記システムが、前記ネットワーク内の複数のクロスバーアレイの同時活動化をクロッキングするための信号生成器をさらに備える、請求項1に記載の神経形態学的およびシナプトロニックシステム。各クロスバーアレイが、対応する前記複数の軸索、前記複数の樹状突起、および前記複数のシナプスデバイスを含む、クロスバー回路タイルを備え、各クロスバー回路タイルが、隣接するクロスバー回路タイルに対して空間的にオフセットされ、隣接するクロスバー回路タイル内の前記複数のシナプスデバイスに対する各クロスバー回路タイル内の前記複数のシナプスデバイスの千鳥配列されたクロスバーレイアウトを提供し、各クロスバー回路タイルが、Nの軸索、Nの樹状突起、およびNxNグループのシナプスデバイスを備え、前記ネットワークが、千鳥配列パターンのNxNの相互接続されたクロスバー回路タイルを備え、各クロスバー回路タイルが、N-1の樹状突起を介して隣接するクロスバー回路タイルと第1の空間的方向に相互接続され、各クロスバー回路タイルが、N-1の軸索を介して隣接するクロスバー回路タイルと、前記第1の空間的方向に対して横断する第2の空間的方向に相互接続され、各樹状突起が、Nの隣接するクロスバー回路タイルを前記第1の空間的方向に相互接続し、各軸索が、Nの隣接するクロスバー回路タイルを前記第2の空間的方向に相互接続し、各クロスバーアレイが、前記複数の樹状突起に対応する複数の樹状ドライバであって、各樹状ドライバが前記クロスバーアレイの第1の側面で樹状突起に結合される、複数の樹状ドライバをさらに備え、各クロスバーアレイが、前記複数の軸索に対応する複数の軸索ドライバであって、各軸索ドライバが前記クロスバーアレイの第2の側面で軸索に結合される、複数の軸索ドライバをさらに備え、交差接合点でシナプスデバイスによって結合されたドライバおよび樹状ドライバが組み合わされて、電子ニューロンの最新のスパイキングが前記軸索ドライバおよび前記樹状ドライバ内へスパイキング信号を発火させ、スパイクタイミング依存可塑性STDPを生成してからの時間に応じて、前記シナプスデバイスの状態を変更できる信号を生成する、請求項25に記載のシステム。前記信号生成器のクロッキングが、前記複数のクロスバーアレイおよび対応する電子ニューロンのそれぞれについて、電子ニューロンの発火時に、対応する軸索および樹状突起に信号を送信すること、前記対応する軸索が、STDPの抑制部分に関する警報としても働く読み取り信号を送信すること、前記対応する軸索が、リセット信号を送信し、所与の樹状突起が確率的に返答すること、前記対応する樹状突起が、セット信号を送信し、所与の軸索が確率的に返答すること、軸索上のONビット数を読み取ること、および樹状突起上のONビット数を読み取ること、を含む6つの動作段階を提供する、請求項26に記載のシステム。本発明の実施形態は、クロスバーアレイネットワーク内で相互接続された電子ニューロンを使用してスパイクタイミング依存可塑性を提供する。一実施形態では、クロスバーアレイネットワークは複数のクロスバーアレイを備える。各クロスバーアレイは、軸索および樹状突起が互いに横断transverseするような複数の軸索および複数の樹状突起と、複数のシナプスデバイスとを備え、各シナプスデバイスは、樹状突起と軸索との間に結合されたクロスバーアレイの交差接合点にある。クロスバーアレイは空間的に、シナプスデバイスの千鳥配列されたstaggeredクロスバーレイアウトを提供する千鳥配列パターンである。本発明の一実施形態では、方法は、電子ニューロンから、電子ニューロンのネットワーク内のスパイキング電子ニューロンに接続された各軸索および各樹状突起へ、スパイキング信号を送信することを含む。本発明の一実施形態では、複数の電子ニューロンのそれぞれが、複数のクロスバーアレイのうちの1つに対応する。本発明の一実施形態では、ネットワーク内の複数のクロスバーアレイを同時に活動化するために、クロッキング信号が生成される。方法は、複数のクロスバーアレイおよび対応する電子ニューロンのそれぞれについて、クロッキング信号に基づき、電子ニューロンの発火時に、信号を対応する軸索および樹状突起に送信することをさらに含む。軸索は、STDPの抑制depressing部分に関する警報としても働く、読み取り信号を送信する。軸索はリセット信号を送信し、所与の樹状突起が確率的に返答する。樹状突起はセット信号を送信し、所与の軸索が確率的に返答する。軸索上のONビット数が読み取られ、樹状突起上のONビット数が読み取られる。本発明のこれらおよび他の特徴、態様、および利点は、以下の説明、添付の特許請求の範囲、および添付の図面を参照することで、より良く理解されよう。本発明の実施形態は、複数の電子ニューロンを相互接続するシナプスデバイスシナプスのクロスキルトされたcrossquiltedクロスバーレイアウトを特徴とするコンピューティングチップを含み、スパイクタイミング依存可塑性STDPに従ってシナプスの読み取りおよびプログラミングを提供し、複数のクロスバーの動作を並行して調整する、神経形態学的およびシナプトロニックシステムを提供する。ここで図1を参照すると、複数のニューロン14を有するクロスバーアレイ12を備える神経形態学的およびシナプトロニックシステム100を表す図が示されている。本明細書では、ニューロンは電子ニューロンとも呼ばれる。システム100は、クロスバーアレイ12の交差接合点23に可変状態レジスタを含む複数のシナプスデバイス22をさらに備え、シナプスデバイス22は軸索24と樹状突起26との間に接続される。軸索24および樹状突起26は、交差接合点で互いに横断する。図1は、特殊な場合に、軸索24および樹状突起26が交差点接合で直交構成である実施形態を示す。Neは興奮性ニューロンを含み、Niは抑制性ニューロンを含む。図1は、ニューロンが回帰ループを形成することを示すが、一般に異なるニューロンはその出力を異なるクロスバー内の他のニューロンに与えることに留意されたい。図2は、クロスバーアレイ12の例示的実装を示し、各シナプスデバイス22はプログラム可能レジスタとして可変状態レジスタ23を備える。クロスバーアレイ12は、当該電子ニューロン間に任意および塑性接続を実装するように採用された、交差接合点に当該レジスタ23を備えるナノスケールクロスバーアレイを備える。PNダイオードまたはダイオードとして配線されたFETなどのアクセスまたは制御デバイス25または非線形電圧電流応答を伴う何らかの他の要素は、信号通信時のクロストークニューロン発火イベントを防ぐため、およびリークおよび電力消費を最小限にするために、あらゆるクロスバー接合点でレジスタ23と直列に接続することが可能であるが、これはシナプス機能を達成するために必要な条件ではない。シナプスデバイスは必ずしも可変状態レジスタである必要はなく、他の実施形態では、SRAM、DRAM、EDRAMなどのメモリ要素を備えることができる。本発明の一実施形態では、各電子ニューロンは1対のRC回路15を備える。一般に、本発明の実施形態によれば、ニューロンは、樹状突起入力接続26から受け取る統合入力がしきい値を越えた場合に発火パルスを伝送する。ニューロンは発火した場合、そのRC回路のうちの1つにおけるレジスタおよびキャパシタの値によって決定される、相対的に長い所定の時定数と共に減衰する、反STDPA-STDP変数を維持する。たとえば一実施形態では、この時定数は約50ミリ秒とすることができる。A-STDP変数は、電流ミラーまたは等価の回路を使用するキャパシタを横切る電圧を決定することによって、サンプリングすることができる。この変数を使用して、関連するニューロンの最後の発火からの時間をエンコードすることによって、軸索STDPが達成される。軸索STDPは、この文脈ではシナプスコンダクタンスの増加として定義される増強を制御するために使用される。ニューロンは発火した場合、そのRC回路15のうちの1つにおけるレジスタおよびキャパシタの値に基づいて、相対的に長い所定の時定数と共に減衰する、D-STDP変数も維持する。本明細書で使用される場合、場合という用語は、ニューロンの発火後瞬時に、またはニューロンの発火後ある期間のうちに、信号が送信される旨を意味することができる。図1に示されるように、電子ニューロン14はクロスバーアレイ12周辺の回路として構成される。クロスバーアーキテクチャは、単純に設計および製造されることに加えて、使用可能スペースの効率的な使用を提供する。クロスバーアレイ12は、ニューロン間の通信をカスタマイズするように構成可能である。製造レベルで所定のシナプスをブロックすることによって、任意接続が取得可能である。したがって、本明細書でのアーキテクチャ原理は、生物学的な神経形態学的およびシナプトロニックネットワーク内で観察されるすべての直接配線組み合わせを模倣することができる。クロスバーアレイ12は、図1に示されるようなドライバルータデバイスX2、X3、およびX4をさらに含むわかりやすくするために、ドライバデバイスは図2には示されていない。デバイスX2、X3、およびX4はインターフェースドライバデバイスを備える。具体的に言えば、樹状突起26は、クロスバーアレイ12の一方の側にドライバデバイスX2を、クロスバーアレイの他方の側に感知増幅器X4を有する。軸索24は、クロスバーアレイの一方の側にドライバデバイスX3を有する。一実施形態では、ドライバデバイスは、本明細書で説明される機能を実装する相補型金属酸化膜半導体CMOS論理回路を備える。図3はクロスバーアレイ12の斜視図を示し、通常の場合、各クロスバーアレイ内の軸索24および樹状突起26は交差接合点で90°未満の構成である。各クロスバーアレイは、Nの軸索24およびNの樹状突起26の交差接合点にNxNグループのシナプス22を備える、回路タイル12Tを備える。この例ではN=3であり、各タイル12Tは、3つの樹状突起26と横断構成の3つの軸索24を含む3x3のクロスバーアレイを備える。Nは0よりも大きい整数である。図4は、本発明の実施形態に従った、2次元平面内の複数の空間的に千鳥配列されたクロスバーアレイ12を含む回路を備えるネットワーク101の斜視図を示す。このネットワーク101では、通常の場合、各クロスバーアレイ内の軸索24および樹状突起26は交差接合点で90°未満の構成とすることができる。各クロスバーアレイ12は、Nの軸索24およびNの樹状突起26の交差接合点にNxNグループのシナプス22を備えるたとえばN=3。タイル12Tはオフセットされ、千鳥配列パターンのタイル12Tを提供する。タイル12Tのグループは共通の軸索24および樹状突起26を介して相互接続され、シナプス22のキルトされたクロスバーレイアウトを提供する。図4のネットワーク101は、各クロスバーまたはタイルを使用する電子ニューロン図示せずの相互接続を可能にする。したがってクロスバーアレイ12は、ネットワーク101内にシナプス22の交差キルトされたクロスバーレイアウトを提供する千鳥配列パターンであり、シナプス22はNxNグループである。図5は、グリッド12G内にNxNグループのタイル12Tを示すたとえばN=3、図4のネットワーク101の一部の上面図を示す。各グリッド12G内のNxNグループのタイル12Tは共通の軸索24および樹状突起26を介して相互接続され、タイル12T内の交差接合点にシナプスの交差キルトされたクロスバーレイアウトを提供する。図6はネットワーク101の他の斜視図を示し、各グリッド12G内のタイル12Tも、共通の軸索24および樹状突起26によって隣接グリッド12G内の隣接タイル12Tと相互接続される。各タイル12Tは、N-1の樹状突起26を介して左または右の隣接タイルに接続される。各タイル12Tは、N-1の軸索24を介して上または下の隣接タイルに接続される。各グリッド12Gでは、軸索24はNのタイル12Tにわたって横切り、各樹状突起はNのタイル12Tを横切るtraverse。グリッド12G内のクロスバータイル12Tの数は、タイル12T内のシナプスの数の関数である。クロスバータイル12TはデカルトX,Y平面内で互いにオフセットされ、樹状突起と軸索との間に接続を提供する。オフセットにより、生物学的な脳における接続の近似をより正確にすることができる。千鳥配列により、電子ニューロンを1つのクロスバー12に接続させ、交差接合点で軸索、樹状突起、およびシナプスを使用して他のクロスバーに接続されたニューロンと通信することができる。各ニューロンはタイル12Tに対応する。ネットワーク101内のタイル12Tおよび対応するニューロンはグリッド12Gに編成されるため、必要であればバスに類似したそれらを接続する空間充填曲線を有することが可能である。クロスバーネットワーク101によって相互接続されたニューロンは、各ニューロンを霖雨する連続通信パス13を介して接続された規則的格子状に配置構成される。パス13は、図7の例によって示されるようにすべてのニューロンを接続するバスを画定し、ここで各ニューロンの位置はパス13上の黒丸によって示されている。図7は、2次元座標系に基づく接続例を提供する。図8は、4つの構成要素部分に分解された例示的クロスバーアレイ12の構成を示す。この例では、タイルは、8つの軸索24、8つの樹状突起26、および64のシナプスの、8x8のクロスバーに対応する。軸索インターフェースモジュール24AはドライバX3を含み、樹状インターフェースモジュール26AはX2およびX4ドライバを含む。ニューロンニューロン14などはクロスバー12に対応する。図9は、図8の概念的分解に従って分解されたクロスバー12を備えるネットワーク101の一部を示す。一実施形態では、本発明に従ったニューラルネットワークは、千鳥配列されたクロスバーアレイ12内に複数の軸索および複数の樹状突起を含むネットワーク回路101を備える。各シナプスデバイスは、樹状突起と軸索との間に結合された相互接続回路の交差接合点のビットを表す、バイナリ状態メモリデバイスを備える。千鳥配列されたクロスバー全体が連結interlinkされる。NxNのクロスバー12では、たとえすべてのNビットがONであっても、保護のために電流が制限され、行全体が並列に読み取り可能であり、ここで予測されるONビットの数はN/2である。行列全体をリセットセットするように試行可能であり、2ビットより多くのビットがリセットセットされる場合、保護のために電流が制限され、成功しない可能性がある。たとえすべてのNビットがONであっても、保護のために電流が制限され、列全体が並列に読み取り可能である。予測されるONビットの数はN/2である。主要なイベントはニューロンが発火する場合である。これにより、読み取りおよびプログラミングという2つの動作が発生する。読み取り動作の場合、ニューロンによる発火により、発火ニューロンが接続されているすべてのニューロンに対して警報が発せられ、すべての軸索ルータまたはドライバX3に送信信号が送信される。各軸索ルータX3は、複数の並列、または部分的に並列の樹状読み取りをサポートする。プログラミング動作の場合、ニューロンによる発火によってシナプスの変更が発生し、すべての軸索ルータX3およびすべての樹状ルータX2、X4に送信信号が送信される。一実施形態では、クロスバーアレイ12において、南西~北東SW-NE方向が軸索を表し、南東~北西SE-NW方向が樹状突起を表す。軸索接点の回路はX3として示され、樹状突起接点の回路はX2およびX4として示される。各X4は1ビットのADC感知増幅器を含み、各X2はリセットおよびセット回路を含み、各X3は読み取り回路を含む。本発明は、X2、X3、X4回路およびそれらの駆動に使用される論理の、電力および空間要件の削減を提供する。複数の軸索を並列に読み取るためには、1ビットより多くのADCが必要である。感知増幅器デバイスX4は、興奮性スパイキング電子ニューロンNeに流れ込み、これが軸索ドライバデバイスX3および樹状ドライバデバイスX2に接続される。一般に、興奮性スパイキング電子ニューロンは、そのターゲットニューロンをより発火しやすくする。さらに、抑制性スパイキング電子ニューロンNiは、そのターゲットをより発火しにくくする。スパイキング電子ニューロンの様々な実装が使用可能である。一般に、こうしたニューロンはカウンタを備え、このカウンタはソース興奮性ニューロンからの入力が受信された場合に増加し、ソース抑制性ニューロンからの入力が受信された場合に減少する。カウンタは、入力とは無関係にリークをシミュレートするために定期的に減分することができる。カウンタが所定のしきい値に到達した場合、ニューロンはそれ独自のスパイクを生成しすなわち発火し、カウンタはベースライン値にリセットされる。スパイキング電子ニューロンという用語は、本明細書では電子ニューロンと呼ばれる。この例では、それぞれの興奮性ニューロンNeは統合および発火を提供するように構成される。各抑制性ニューロンNiは、全体のネットワーク活動に応じて興奮性ニューロンの活動を規制するように構成される。当業者であれば理解されるように、興奮性ニューロンおよび抑制性ニューロンの正確な数は、本明細書で開示されたアーキテクチャを使用して解決する問題の性質に応じて変更可能である。本発明の実施形態は、神経形態学的集積回路に関するSTDP学習規則に基づいた、スパイキングニューロンネットワークを含む神経形態学的およびシナプトロニックネットワークを備える神経系を提供する。本発明の一実施形態は、相変化メモリPCM回路などのナノスケールメモリシナプスを介して互いに対話するCMOS電子ニューロンを使用する、スパイクベース計算を提供する。一実施形態では、軸索ドライバデバイスX3は長いプログラミングパルスおよび通信スパイクを提供する。樹状ドライバデバイスX2は、遅延を伴うプログラミングパルスを提供する。一実施形態では、アナログ論理回路を使用するニューロン回路が実装される場合、対応する感知増幅器X4は、PCMPCMはいかなる紹介もなしに作られたの電流レベルを統合のためにニューロン電流レベルに変換する。本発明の他の実施形態では、ニューロン回路はデジタル論理回路を使用して実装され、対応する感知増幅器X4はPCMの電流レベルを統合のために2進デジタル信号に変換する。たとえば、短期間たとえば約0.05ミリ秒から0.15ミリ秒および好ましくは約0.1ミリ秒長さの読み取りスパイクを、通信用の軸索ドライバデバイスX3に適用することができる。伸長パルスたとえば、約150ミリ秒から250ミリ秒、および好ましくは約200ミリ秒長さを軸索ドライバデバイスX3に適用することが可能であり、短い負のパルスたとえば約45ナノ秒から55ナノ秒および好ましくは約45ナノ秒長さを、プログラミングのために軸索ドライバパルスを介して中途の樹状ドライバデバイスX2に適用することができる。ネットワーク101はデジタルの同期方式に従って機能する。一実施形態では、時分割多重アクセス方式TDMAを使用してイベント駆動型アーキテクチャを提供するために、クロッキングモジュール19図2が使用される。TDMAは、競合または衝突無しに、異なるニューロンを横切って同じクロスバー上で読み取り、セット、リセット、および他の通信を実行することができる。一例では、NxNのクロスバーアレイの場合、任意の軸索または列のMの要素が読み取り/書き込みできるように、MがNの約数を示すようにする。たとえばNを100とし、Mを1、2、5、10、20、25、または50とすることができる。こうしたアレイ上でTDMAをサポートするために必要なクロックレートは、NおよびMの関数として変化する。基本的に、あらゆるニューロンの状態を、1/TkHzのクロックレートに対応するTミリ秒時間ステップで更新しなければならない。各時間ステップで、各軸索を処理し各樹状突起を処理するものとし、ここでは2N/TkHzのクロックレートが必要である。各軸索または樹状突起の処理は段階を含み、6N/TkHzのクロックレートを必要とする。各段階では、すべてのシナプス要素を処理するためにN/Mの下位段階が必要であり、ここでは6N2/MTkHzのクロックレートが必要である。T=0.1、N=100、M=10の場合、60MHzのクロックレートとなる。異なるメモリ技術が異なるNおよびMの値をサポートする。一例では、PCMなどの可変状態レジスタはM=1から10の値をサポートすることができる。スタティックランダムアクセスメモリSRAMなどの他のメモリは、M=100または256などのより大きな値をサポートすることができる。本発明の実施形態によれば、値T、N、Mは、低クロックレートを達成するように選択され、その結果、いくつかのGHzクロックレートを使用することが可能な従来のコンピュータシステムを介した大幅な電力節約となる。ニューロンの状態が更新される時間ステップTの分解能を低減させることによって、必要なクロックレートを低下させることができる。たとえば、T=0.6、N=100、M=10の場合、これは10MHzとなる。一実施形態では、各ニューロンについてSのシナプスが存在する。SがNの整数の倍数であると想定すると、各ニューロンは比率S/N数のクロスバーから樹状突起入力を受け取る必要があり、その軸索出力をS/Nクロスバーに送信する。各ニューロンはS/N樹状突起区画およびS/N軸索軸を有する。各樹状突起構成要素はスパイクする場合、ニューロン体細胞構成要素の体細胞にスパイクを送信する。樹状突起構成要素は、電流またはカウントではなく、体細胞にスパイクを送信する。ニューロンはすべての樹状突起区画からの入力を統合して、発火するタイミングを決定する。ニューロンが発火する場合、そのすべての軸索および樹状突起に信号が送られる。樹状突起区画からニューロンへのこの信号送信は、アドレスイベント表現の形で実装される。ニューロンおよびクロスバー動作は同期的であるが、AERは非同期的である。千鳥配列されたクロスバーアレイネットワーク101では、本発明の実施形態に従い、各クロスバー内の各軸索は固有の識別unique_idを有し、各樹状突起はunique_idを有する。N=100の場合、タイル2Tにおいて、各軸索および樹状突起は以下の相対識別を有することになる。relative_id=unique_idmod100relative_idの範囲は0から99である。異なるクロスバーに属するが同じrelative_idを備える2つの軸索が重複接続を有することはなく、異なるクロスバーに属するが同じrelative_idを備える2つの樹状突起が重複接続を有することはない。したがって、同じrelative_idを備えるすべての軸索および樹状突起は、特定の時点で安全に活動化されることができる。このようにして、TDMAのメカニズムは、同じrelative_idを有するシステム内のすべての軸索上で同時に動作可能であり、同じrelative_idを有するシステム内のすべての樹状突起上で同時に動作可能である。したがって、軸索上で動作するために、全体が相互接続された交差キルトされたクロスバーアレイをロックする必要はない。前述の6N2/MTkHzのクロックレートは、クロスバーアレイネットワーク内のクロスバーの数に関係なく使用可能である。イベントベースの確率的STDP方式が使用され、ここでシナプスコンダクタンスは、STDPに従い、プレシナプスおよびポストシナプスニューロンの相対的なスパイク時間に応じて時間と共に変化することが可能である。STDP規則は、そのプレシナプスニューロンが発火した後にそのポストシナプスニューロンが発火する場合、シナプスのコンダクタンスを増加させ、この2つの発火が逆の順序である場合、シナプスのコンダクタンスを減少させる。STDPセットは、樹状突起と、クロスバーアレイ内の接合点で交差するすべての軸索との間の協働を介して実行される。樹状突起がセット信号を送信する場合、いくつかおよびすべての軸索は対応する信号で確率的に応答することができる。信号が軸索および樹状突起の両方から同時に到達する場合のみ、接合点で接合が設定される。同様にSTDPリセットは、軸索と、クロスバーアレイ内の接合点で交差するすべての樹状突起とを介して実行される。本発明の一実施形態では、クロスバーアレイ12内の動作ステップは、図10に示されたプロセス50のプロセスブロックに従って、たとえば図2のグローバルクロックモジュール19からのクロッキング信号に基づく、以下の6つの異なる段階を含む。ブロック51:段階1対応する軸索および樹状突起に信号を送信するためにニューロンが発火した場合これは非同期通信とすることができる、通信信号がAERを通過するように、ニューロンを更新する。軸索/樹状突起は、後の評価段階で通信信号を受信する。各ニューロンは軸索遅延を実装することができる。ブロック52:段階2STDPの抑制部分に関する警報としても働く読み取り信号を送信する。ブロック53:段階3軸索はリセット信号を送信し、所与の樹状突起が確率的に返答する。ブロック54:段階4樹状突起はセット信号を送信し、所与の軸索が確率的に返答する。ブロック55:段階5軸索当たりの1つまたは複数の要素22に基づいてONビット数を読み取る。ブロック56:段階6樹状突起当たりの1つまたは複数の要素22に基づいてONビット数を読み取る。図11~図16は、時分割多重化様式で前述した6つの段階を実装するために、本発明の実施形態に従ったタイル12TのNxNグループたとえばN=3のネットワーク101における動作シーケンスを示し、あらゆる軸索および樹状突起を一度に1つずつスキャンするのではなく、いくつかのタイル12Tが同時に活動化されるボールドの色分けで示される。具体的に言えば、図11は、活動化された軸索の第1のセット24a1で、活動化されたタイル12Taを示すたとえば、図に示されるように、活動化された各軸索は3つの隣接タイル12Tを横切る。図12は、活動化された軸索の第2のセット24a2で、図11の活動化されたタイル12Taを示す。図13は、活動化された軸索の第3のセット24a3で、図11の活動化されたタイル12Taを示す。同様に、図14は、活動化された樹状突起の第1のセット26a1で、活動化されたタイル12Taを示すたとえば、図に示されるように、活動化された各樹状突起は3つのタイル12Tを横切る。図15は、活動化された樹状突起の第2のセット26a2で、図14の活動化されたタイル12Taを示す。図16は、活動化された樹状突起の第3のセット26a3で、図14の活動化されたタイル12Taを示す。6つの段階がすべて等しい時間を使用する必要はなく、それらの動作に対して最適化することができる。一実施形態では、N=100およびM=10であるため、各段階はN2/M=1,000の下位段階を備える。軸索は、100のシナプスを読み取ることが可能な読み取り信号を通信する。これは、M=10のバッチにおけるシナプスを読み取ることによって実行され、第1のバッチはrelative_id0からrelative_id9までの樹状突起を含み、第2のバッチはrelative_id10からrelative_id19までの軸索を含む、という具合である。同様に、各軸索は10のバッチにおけるシナプスを読み取ることを含めて順番に実行し、ここで第1のバッチはrelative_id0からrelative_id9までの軸索を含み、第2のバッチはrelative_id10からrelative_id19までの軸索を含む、という具合である。この例では、100の係数に関して100の軸索が存在する。本発明の実施形態によれば、クロッキング方式はクロスバーネットワーク/回路内の動作および段階に関する制約を設定する。必要でない限り動作は実行されず、必要に応じて回路は起動する。一例では、ニューロン分解能は0.6ミリ秒であり、これは、毎秒1666.66のステップが存在することを意味する。あらゆるステップは前述の6つの段階を含み、結果として合計10,000の段階が生じる。あらゆる段階は100x10の下位段階を含み、結果として10MHzのクロックレートを必要とする、1秒当たり合計1000万の下位段階が生じる。一実施形態では、各樹状突起および各軸索は、およそ50のシナプスがONであることを保証するようにそのSTDPをローカルに適合する。これは、好ましい臨界状態である。さらに軸索ルータは塑性であり、再ルーティング可能である。一実施形態では、抑制性樹状突起を使用することができる。クロスバーアーキテクチャは、シナプス用の特定のデバイス選択とは無関係である。たとえば、10x、100x、または1000xの、より抵抗性の高いPCMデバイス電流抵抗は10kオームであるをシナプスとして使用することができる。シナプスに関する他のメモリ技術も使用可能である。可変状態レジスタという用語は、電気パルス電圧または電流の印加がデバイスの電気的コンダクタンス特徴を変化させることになるデバイスのクラスを言い表すものである。クロスバーアレイの神経形態学的およびシナプトロニックシステムについての一般的な考察、ならびにこうしたクロスバーアレイで使用される可変状態レジスタについては、KLikharevによるHybridCMOSNanoelectronicCircuitsOpportunitiesandChallenges、JNanoelectronicsandOptoelectronics、2008年、Vol3、203~230ページを参照している。本発明の一実施形態では、可変状態レジスタはPCMシナプスデバイスを含むことができる。PCMデバイスに加えて、本発明の実施形態で使用可能な他の可変状態レジスタデバイスは、KLikharevによる上記参照論文により詳細に説明されているように、金属酸化物、硫化物、酸化ケイ素、および非晶質シリコンを使用して作られたデバイス、磁気トンネル接合、フローティングゲートFETトランジスタ、ならびに有機薄膜層デバイスを含む。可変状態レジスタは、スタティックランダムアクセスメモリデバイス、ダイナミックランダムアクセスメモリ、または埋め込み型ダイナミックランダムアクセスメモリを使用して構築することも可能である。一実施形態では、グローバルビットは、クロスバーが配備モードにあるかどうか、またはトレーンtrainモードにあるかどうかを示す。配備モードにある場合、前述の段階1のみが使用され、トレーニングに関する残りの段階は使用されないため、電力消費が節約される。トレーンモードではすべての段階が使用される。本発明の一実施形態では、ネットワークは、基本原子単位として、Nによって千鳥配列された、タイル12TのNxNたとえばN=10アレイを含む。クロスバーアレイはタイル12T間にスペースを提供し、それらの間に回路たとえば図8の24A、26A、14を配置することが可能である。一例では、1つの空間には1つの回路のみが配置される。あらゆる軸索ルータX3は0からN-1までを列挙し、あらゆる樹状ルータX2、X4は0からN-1までを列挙する。各ニューロンはx,yidを有する。各軸索ルータX3は、x,yidを有する。樹状ルータX2、X4は、その関連付けられたニューロンと同じidを有する。ニューロンからシナプスへの通信は論理的である。シナプスからニューロンへの通信は物理的である。したがって、軸索は分散されるが樹状突起は局所的である。本発明の一実施形態では、複数のクロスバーアレイ12を備える回路101において、あらゆるNxNクロスバーアレイ12はidを有し、一例ではこれが2組のx,yを含み、ここでxは0からN-1までを列挙し、yは0からN-1までを列挙する。あらゆる時間ステップで、同じidを備えるすべてのクロスバーアレイをONにすることができる。ONクロスバーアレイでは、プロセスは軸索0からN-1、または樹状突起0からN-1を通る。クロックレートは、千鳥配列されたクロスバーアレイが1つだけの場合と同じままである。クロックレートの一例は10MHzである。一実施形態では、クロスバーアレイ内の警報パルスにダイオードを使用することができる。他の実施形態では、各NxNのクロスバーアレイ12について、警報パルスに副次通信sidecommunicationメカニズムが使用されるため、ダイオードの必要性はなくなる。ダイオードは、ONであるデバイスの合計数を学習するために使用可能である。これには、すべてのニューロン膜をオンにすること、それぞれの樹状突起に電圧を印加すること、および電流量を決定することが含まれる。一実施形態では、ニューロンは0.1ミリ秒に1回のみ更新され、すなわちT=0.1である。したがってイベント駆動様式では、ニューロンラッチによる電力消費量は以下のように表され、CV2F=10fF/ラッチ106ラッチ1ボルト21104Hz=0.1mW上式で、Cはラッチキャパシタンス、Vは動作電圧、およびFは動作周波数である。一実施形態では、各ニューロンはクロスバーアレイ12内の1000のシナプスと相互接続する。10Hzの発火レートで、各シナプスは毎秒1メッセージのみを受信し、シナプスラッチによって消費される電力は以下の通りである。CV2F=10fF/ラッチ106103ラッチ1ボルト2110Hz=0.1mWこれにより、ニューロンとシナプスの電力消費の間でバランスが取れた設計が提供される。一実施形態では、回路はゲート付きクロックを使用し、基本的に電力を消費しない。ニューロンは、アクティブであるべき理由がある場合にアクティブとなり、それ以外ではニューロンは電力をほとんどまたはまったく消費しない。一例では、シナプス読み取りイベントは、以下のような電力消費を含む。1061031010pJPCMアクセスデバイスの場合=0.1J/秒、すべての読み取りイベントについて0.1Wを示す一実施形態では、シナプス書き込みイベントは以下のような電力消費を含む。10610310100pJ/10=0.1J/秒、書き込みイベント当たり0.1Wを示す10イベントにつき1のみであることが、確率的STDPによるプログラミングにつながるしたがって、一実施形態では、それぞれが100万ニューロンおよび10億シナプスを含む10,000チップの場合、電力消費は1kWである。この消費にはシステムリークは含まれない。一実施形態では、デジタルアナログ混合設計ニューロンは、デジタル蓄積カウンタおよびリーク用のアナログRC回路を含む。さらに他の実施形態では、真のイベント駆動様式で必然的に実装可能なアナログニューロンが使用される。一実施形態では、千鳥配列されたクロスバーアレイネットワーク101は、隣接するニューロンが重複野を有するように、各ニューロンについて受容野receptivefieldおよび射影野projectivefieldを提供する。ニューロンの受容野は、ニューロンがそこからの入力を受容するニューロンのセットを含むたとえばニューロンの受容野は、千鳥配列パターンのNxNの相互接続されたクロスバー回路タイルを含む。ニューロンの射影野は、ニューロンがそこへ出力を送信するニューロンのセットを含むたとえばニューロンの射影野は、千鳥配列パターンのNxNの相互接続されたクロスバー回路タイルを含む。千鳥配列された接続により、ニューロンの空間的位置に応じた受容野および射影野の設計が可能になる。各ニューロンはx,y座標を有する。x,yにある第1のニューロンからx1,y1にある第2のニューロンへ移動する場合、射影/受容野は生物学的ニューロンの射影/受容野に似た所定の重複を有する。一実施形態では、不規則なクロスバーアレイネットワーク101が使用可能である。たとえば、パラメータMがNより大きい、M=15およびN=10などの場合、所定数の軸索または樹状突起を10未満となるように変更すること、および所定数を10より大きくなるようにただし16未満変更することが可能であるため、不規則な受容および射影野が提供される。一実施形態では、連結されたクロスバーアレイ12のグローバルネットワーク101に対して同期化が使用される。一例では、グローバルネットワーク101をN2xN2サイズのブロックに分割することができる。アレイ12のそれぞれに、別々に非同期アクセスが提供され、アクティブである必要のない軸索および樹状突起を横切るTDMAの必要がなくなる。各クロスバーアレイ12は、ニューロンへのAERマッピングと同様に対処される。一実施形態では、クロスバーサイズを2倍にすることが可能であるが、約75のシナプスはマスクステップを使用して体系的に消去される永続的にオープンとなる。これにより、受容野に不規則性が与えられる。一実施形態では、同期化が必要な場合にクロックが使用され、ここでニューロンリーク減衰を同期化する必要はない。本明細書で使用される電子ニューロンという用語は、生物学的ニューロンをシミュレートするように構成されたアーキテクチャを表す。電子ニューロンは、生物学的な脳のニューロンと概ね機能的に等価の処理要素間の接続を生成する。したがって、本発明の実施形態に従った電子ニューロンを備える神経形態学的およびシナプトロニックシステムは、生物学的ニューロンをモデルとする様々な電子回路を含むことが可能である。さらに、本発明の実施形態に従った電子ニューロンを備える神経形態学的およびシナプトロニックシステムは、生物学的ニューロンをモデルとする様々な処理要素コンピュータシミュレーションを含むを含むことが可能である。本明細書では、本発明の所定の例示的実施形態について、電子回路を備える電子ニューロンを使用して説明しているが、本発明は電子回路に限定されるものではない。本発明の実施形態に従った神経形態学的およびシナプトロニックシステムは、アナログまたはデジタルの回路を備える神経形態学的およびシナプトロニックアーキテクチャとして、ならびにコンピュータシミュレーションとして実装可能である。実際には、本発明の実施形態は、完全にハードウェア実施形態、完全にソフトウェア実施形態、またはハードウェアおよびソフトウェアの両方の要素を含む実施形態の形を取ることができる。本発明の実施形態は、コンピュータ、処理デバイス、または任意の命令実行システムによって、あるいはこれらに関連して使用するためのプログラムコードを提供する、コンピュータ使用可能またはコンピュータ読み取り可能媒体からアクセス可能な、コンピュータシミュレーションまたはプログラム製品の形を取ることができる。当業者であれば理解されるように、本発明の態様はシステム、方法、またはコンピュータプログラム製品として具体化することができる。したがって、本発明の態様は、完全にハードウェア実施形態、完全にソフトウェア実施形態ファームウェア、常駐ソフトウェア、マイクロコードなどを含む、あるいは本明細書ではすべてを全体として回路、モジュール、またはシステムと呼ぶことのできるソフトウェアおよびハードウェアの態様を組み合わせた実施形態の形を取ることができる。さらに本発明の態様は、その上に具体化されたコンピュータ読み取り可能プログラムコードを有する1つまたは複数のコンピュータ読み取り可能媒体内に具体化された、コンピュータプログラム製品の形を取ることができる。1つまたは複数のコンピュータ読み取り可能媒体の任意の組み合わせが使用可能である。コンピュータ読み取り可能媒体は、コンピュータ読み取り可能信号媒体またはコンピュータ読み取り可能記憶媒体とすることができる。コンピュータ読み取り可能記憶媒体は、たとえば電子、磁気、光、電磁、赤外線、または半導体のシステム、装置、またはデバイス、あるいはそれらの任意の好適な組み合わせとすることができるが、それらに限定されるものではない。コンピュータ読み取り可能記憶媒体のより特定の例非網羅的リストには、1本または複数本のワイヤを有する電気接続、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリRAM、読み取り専用メモリROM、消去可能プログラマブル読み取り専用メモリEPROMまたはフラッシュメモリ、光ファイバ、ポータブルコンパクトディスク読み取り専用メモリCD-ROM、光記憶デバイス、磁気記憶デバイス、または上記の任意の好適な組み合わせが含まれる。本書との関連において、コンピュータ読み取り可能記憶媒体は、命令実行のシステム、装置、またはデバイスによって、あるいはそれらに関連して使用するためのプログラムを含むかまたは格納することが可能な、任意の有形媒体とすることができる。コンピュータ読み取り可能信号媒体は、たとえばベースバンド内または搬送波の一部としてその中に具体化されたコンピュータ読み取り可能プログラムコードを備えた、伝搬データ信号を含むことが可能である。こうした伝搬信号は、電磁、光、またはそれらの任意の好適な組み合わせを含むがこれらに限定されない、多様な形のいずれかを取ることができる。コンピュータ読み取り可能信号媒体は、コンピュータ読み取り可能記憶媒体ではなく、命令実行のシステム、装置、またはデバイスによって、あるいはそれらに関連して使用するためのプログラムを、通信、伝搬、または移送することが可能な、任意のコンピュータ読み取り可能媒体とすることができる。コンピュータ読み取り可能媒体上に具体化されるプログラムコードは、無線、有線、光ファイバケーブル、無線周波数RFなど、またはそれらの任意の好適な組み合わせを含むが、これらに限定されない、任意の適切な媒体を使用して伝送することができる。本発明の態様に関する動作を実行するためのコンピュータプログラムコードは、Java、Smalltalk、Cなどのオブジェクト指向プログラミング言語、および、Cプログラミング言語または同様のプログラミング言語などの従来の手続き型プログラミング言語を含む、1つまたは複数のプログラミング言語の任意の組み合わせで作成することができる。プログラムコードは、完全にユーザのコンピュータ上で、スタンドアロン型ソフトウェアパッケージのように部分的にユーザコンピュータ上で、部分的にユーザのコンピュータ上および部分的にリモートコンピュータ上で、または、完全にリモートコンピュータまたはサーバ上で、実行することができる。後者のシナリオでは、リモートコンピュータは、ローカルエリアネットワークLANまたはワイドエリアネットワークWANを含む任意のタイプのネットワークを介して、ユーザのコンピュータに接続することが可能であるか、あるいは外部コンピュータにたとえばインターネットサービスプロバイダを使用してインターネットを介して接続することが可能である。本発明の態様について、本発明の実施形態に従った方法、装置システム、およびコンピュータプログラム製品の流れ図あるいはブロック図またはその両方を参照しながら、以下で説明する。流れ図あるいはブロック図またはその両方の各ブロック、および、流れ図あるいはブロック図またはその両方におけるブロックの組み合わせが、コンピュータプログラム命令によって実装可能であることを理解されよう。これらのコンピュータプログラム命令は、汎用コンピュータ、特定用途向けコンピュータ、またはマシンを製造するための他のプログラマブルデータ処理装置の、プロセッサに提供可能であるため、結果として、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサを介して実行する命令が、流れ図あるいはブロック図またはその両方のブロック内に指定された機能/動作を実装するための手段を作成することになる。これらのコンピュータプログラム命令は、特定の様式で機能するように、コンピュータ、他のプログラマブルデータ処理装置、または他のデバイスに指示することが可能な、コンピュータ読み取り可能媒体内にも格納可能であるため、結果としてコンピュータ読み取り可能媒体内に格納された命令が、流れ図あるいはブロック図またはその両方のブロック内に指定された機能/動作を実装する命令を含む製品を製造することになる。コンピュータプログラム命令は、コンピュータ実施プロセスを作成するために、コンピュータ、他のプログラマブル装置、または他のデバイス上で一連の動作ステップを実行させるために、コンピュータ、他のプログラマブルデータ処理装置、または他のデバイス上にロードすることも可能であるため、結果としてコンピュータまたは他のプログラマブル装置上で実行する命令が、流れ図あるいはブロック図またはその両方のブロック内に指定された機能/動作を実装するためのプロセスを提供することになる。図17は、本発明の一実施形態を実装するために有用な情報処理システムを示す、高水準ブロック図である。コンピュータシステムは、プロセッサ102などの1つまたは複数のプロセッサを含む。プロセッサ102は通信インフラストラクチャ104たとえば通信バス、クロスオーババー、またはネットワークに接続される。コンピュータシステムは、グラフィックス、テキスト、および他のデータを、通信インフラストラクチャ104からまたは図示されていないフレームバッファからディスプレイユニット108上に表示するために転送する、ディスプレイインターフェース106を含むことができる。コンピュータシステムは、メインメモリ110、好ましくはランダムアクセスメモリRAMも含み、2次メモリ112も含むことができる。2次メモリ112は、たとえばハードディスクドライブ114、あるいは、たとえばフレキシブルディスクドライブ、磁気テープドライブ、または光ディスクドライブを表す、取り外し可能記憶ドライブ116、またはその両方を含むことができる。取り外し可能記憶ドライブ116は、当業者に良く知られた様式で、取り外し可能記憶ユニット118からの読み取りあるいは取り外し可能記憶ユニット118への書き込み、またはその両方を実行する。取り外し可能記憶ユニット118は、取り外し可能記憶ドライブ116によって読み取られ、書き込まれる、たとえばフレキシブルディスク、コンパクトディスク、磁気テープ、または光ディスクなどを表す。理解されるように、取り外し可能記憶ユニット118は、内部に格納されたコンピュータソフトウェアあるいはデータまたはその両方を有する、コンピュータ読み取り可能媒体を含む。代替実施形態では、2次メモリ112は、コンピュータプログラムまたは他の命令をコンピュータシステム内にロードできるようにするための他の同様の手段を含むことができる。こうした手段は、たとえば取り外し可能記憶ユニット120およびインターフェース122を含むことができる。こうした手段の例は、ビデオゲームデバイス内に見られるようなプログラムパッケージおよびパッケージインターフェース、EPROMまたはPROMなどの取り外し可能メモリチップおよび関連付けられたソケット、ならびにソフトウェアおよびデータを取り外し可能記憶ユニット120からコンピュータシステムへ転送することが可能な他の取り外し可能記憶ユニット120およびインターフェース122を含むことができる。コンピュータシステムは、通信インターフェース124を含むこともできる。通信インターフェース124は、コンピュータシステムと外部デバイスとの間でソフトウェアおよびデータを転送させることができる。通信インターフェース124の例は、モデム、イーサネットカードなどのネットワークインターフェース、通信ポート、またはPCMCIAスロットおよびカードなどを含むことができる。通信インターフェース124を介して転送されるソフトウェアおよびデータは、たとえば通信インターフェース124によって受信可能な電子、電磁、光、または他の信号とすることが可能な、信号の形である。これらの信号は、通信パスすなわちチャネル126を介して通信インターフェース124に提供される。この通信パス126は信号を搬送し、ワイヤまたはケーブル、光ファイバ、電話回線、携帯電話リンク、RFリンク、あるいは他の通信チャネル、またはそれらすべてを使用して実装可能である。本書では、コンピュータプログラム媒体、コンピュータ使用可能媒体、およびコンピュータ読み取り可能媒体という用語は、メインメモリ110および2次メモリ112、取り外し可能記憶ドライブ116、およびハードディスクドライブ114内にインストールされたハードディスクなどの媒体を、全体として言い表すために使用される。コンピュータプログラムコンピュータ制御論理とも呼ばれるは、メインメモリ110あるいは2次メモリ112またはその両方に格納される。コンピュータプログラムは、通信インターフェース124を介しても受信可能である。こうしたコンピュータプログラムは、実行された場合、本明細書で考察された本発明の機能をコンピュータシステムに実行させることができる。特にコンピュータプログラムは、実行された場合、コンピュータシステムの機能をプロセッサ102に実行させることができる。したがって、こうしたコンピュータプログラムはコンピュータシステムのコントローラを表す。図面内の流れ図およびブロック図は、本発明の様々な実施形態に従ったシステム、方法、およびコンピュータプログラム製品の可能な実装のアーキテクチャ、機能、および動作を示す。この点で、流れ図またはブロック図内の各ブロックは、指定された論理機能を実装するための1つまたは複数の実行可能命令を備える、モジュール、セグメント、またはコードの一部を表すことができる。いくつかの代替実装では、ブロック内に示された機能は図内に示された順序とは異なる順序で実行可能であることにも留意されたい。たとえば、関与する機能に応じて、連続して示される2つのブロックを実際にはほぼ同時に実行することが可能であるか、または時にはブロックを逆の順序で実行することが可能である。ブロック図あるいは流れ図またはその両方の各ブロック、およびブロック図あるいは流れ図またはその両方におけるブロックの組み合わせが、指定された機能または動作、あるいは特定用途向けのハードウェアおよびコンピュータ命令の組み合わせを実行する、特定用途向けハードウェアベースシステムによって実装可能であることにも留意されたい。"