JP6250054B2 - ニューラル・コア回路 - Google Patents

ニューラル・コア回路 Download PDF

Info

Publication number
JP6250054B2
JP6250054B2 JP2015531660A JP2015531660A JP6250054B2 JP 6250054 B2 JP6250054 B2 JP 6250054B2 JP 2015531660 A JP2015531660 A JP 2015531660A JP 2015531660 A JP2015531660 A JP 2015531660A JP 6250054 B2 JP6250054 B2 JP 6250054B2
Authority
JP
Japan
Prior art keywords
neuron
neurons
memory device
entry
firing event
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015531660A
Other languages
English (en)
Other versions
JP2015534172A (ja
Inventor
アーサー、ジョン、バーノン
メローラ、ポール
モダ、ダーメンドラ、シャンティラル
アルバレズ、イカザ、リベラ、ロドリゴ
キャシディ、アンドリュー、スティーブン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2015534172A publication Critical patent/JP2015534172A/ja
Application granted granted Critical
Publication of JP6250054B2 publication Critical patent/JP6250054B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Neurology (AREA)
  • Memory System (AREA)
  • Multi Processors (AREA)
  • Feedback Control In General (AREA)
  • Peptides Or Proteins (AREA)

Description

本発明は、米国国防高等研究計画局(DARPA)によって与えられたHR0011−09−C−0002の下で米国政府の援助によって行われた。米国政府は本発明における一定の権利を有する。
本発明の実施形態は、ニューロモルフィック及びシナプトロニック計算に関し、特に、多重化ニューラル・コア回路に関する。
ニューロモルフィック及びシナプトロニック計算は、人工ニューラル・ネットワークとも呼ばれ、本質的に生体脳の機能に類似した方式で電子システムが機能することを可能にする計算システムである。ニューロモルフィック及びシナプトロニック計算は、一般に0と1とを操作する伝統的なデジタル・モデルを使用しない。その代りに、ニューロモルフィック及びシナプトロニック計算は、生体脳のニューロンとほぼ機能的に等価な処理要素間の結合を作り出す。ニューロモルフィック及びシナプトロニック計算は、生体ニューロンをモデル化した様々な電子回路を含むことができる。
生体システムにおいて、ニューロンの軸索と別のニューロンの樹状突起との間の接点はシナプスと呼ばれ、そのシナプスに関して、これら2つのニューロンは、それぞれシナプス前及びシナプス後と呼ばれる。我々個々人の経験の本質は、シナプスのコンダクタンスの形で記憶される。シナプスのコンダクタンスは、スパイク・タイミング依存可塑性(STDP)に従って、シナプス前ニューロン及びシナプス後ニューロンの相対スパイク時刻の関数として時間と共に変化する。STDP規則は、シナプス前ニューロンが発火した後にシナプス後ニューロンが発火した場合にはシナプスのコンダクタンスを高め、2つの発火の順序が逆の場合にはシナプスのコンダクタンスを低減する。
本発明の課題は、多重化ニューラル・コア回路を提供することである。
本発明の実施形態は、多重化ニューラル・コア回路に関する。1つの実施形態は、複数のニューロンのニューロン属性を保持するメモリ・デバイスを含むコア回路を含む。メモリ・デバイスは、複数のエントリを有する。各エントリは、対応するニューロンのニューロン属性を保持する。コア回路は、メモリ・デバイスを管理するコントローラをさらに含む。これらニューロンのうちの1つを標的とするニューロン発火イベントに応答して、コントローラは、メモリ・デバイスの対応するエントリから標的ニューロンのニューロン属性を取り出し、取り出したニューロン属性に基づいて発火イベントを積分し、標的ニューロンに対する発火イベントを生成する。
別の実施形態は、複数のニューロンのニューロン属性をメモリ・デバイス内に保持することを含む。メモリ・デバイスは、複数のエントリを有する。各エントリは、対応するニューロンのニューロン属性を保持する。これらニューロンのうちの1つを標的とするニューロン発火イベントに応答して、メモリ・デバイスの対応するエントリから標的ニューロンのニューロン属性が取り出され、取り出されたニューロン属性に基づいて発火イベントが積分されて、標的ニューロンに対する発火イベントが生成される。
本発明のこれら及び他の特徴、態様及び利点は、以下の説明、添付の特許請求の範囲、及び添付の図面を参照することによって理解されることになるであろう。
これから、本発明の実施形態を、例示のみを目的として、添付の図面を参照しながら説明する。
本発明の一実施形態によるニューラル・コア回路を示す。 本発明の一実施形態による、発火イベントの入力ベクトルを受け取ったときのコア回路の動作を示す。 本発明の一実施形態による、コア回路のリセット及びセット動作を示す。 本発明の一実施形態による多重化ニューラル・コア回路を示す。 本発明の一実施形態による、多重化コア回路のメモリ・デバイスを示すブロック図である。 本発明の一実施形態による、多重化コア回路のメモリ・デバイスのエントリ内に保持される情報を示すブロック図である。 本発明の一実施形態による多重化コア回路を示すブロック図である。 本発明の一実施形態による、バイナリ入力ベクトルを受け取る多重化コア回路を示すブロック図である。 本発明の一実施形態による、半多重化コア回路を示すブロック図である。 本発明の一実施形態による縦長メタ・コアを示す。 本発明の一実施形態による、縦長メタ・コアの縦長メモリ・デバイスを示すブロック図である。 本発明の一実施形態による幅広メタ・コアを示す。 本発明の一実施形態による、幅広メタ・コアの幅広メモリ・デバイスを示すブロック図である。 本発明の一実施形態によるメタ・コアを示す。 本発明の一実施形態による、メタ・コアのメモリ・デバイスを示すブロック図である。 本発明の一実施形態によるニューラル・ネットワークを示す。 本発明の一実施形態による、多重化コア回路において発火イベントを処理するための例示的プロセスのフローチャートを示す。 本発明の1つの実施形態を実装するのに有用な情報処理システムを示す高レベル・ブロック図である。
本発明の実施形態は、多重化ニューラル・コア回路に関する。1つの実施形態は、複数のニューロンのニューロン属性を保持するメモリ・デバイスを含むコア回路を含む。メモリ・デバイスは、複数のエントリを有する。各エントリは、対応するニューロンのニューロン属性を保持する。コア回路は、メモリ・デバイスを管理するコントローラをさらに含む。これらニューロンのうちの1つを標的とするニューロン発火イベントに応答して、コントローラは、メモリ・デバイスの対応するエントリから標的ニューロンのニューロン属性を取り出し、取り出したニューロン属性に基づいて発火イベントを積分し、標的ニューロンに対する発火イベントを生成する。
別の実施形態は、複数のニューロンのニューロン属性をメモリ・デバイス内に保持することを含む。メモリ・デバイスは、複数のエントリを有する。各エントリは、対応するニューロンのニューロン属性を保持する。これらニューロンのうちの1つを標的とするニューロン発火イベントに応答して、メモリ・デバイスの対応するエントリから標的ニューロンのニューロン属性が取り出され、取り出されたニューロン属性に基づいて発火イベントが積分されて、標的ニューロンに対する発火イベントが生成される。
メモリ・デバイスの各エントリは、対応するニューロンのニューロン属性である、シナプス結合性情報、ニューロン・パラメータ、及びルーティング・データ情報を保持する。コントローラは、積分された発火イベントが標的ニューロンの閾値ニューロン・パラメータを超える場合に、発火イベントを生成する。
各標的ニューロンに対して、コントローラは該標的ニューロンの少なくとも1つのニューロン・パラメータを更新する。
コントローラは、複数のニューロンの計算及び制御論理を多重化する。メモリ・デバイスのエントリに対応する各ニューロンに対して、コントローラはそのニューロンを標的とする入力発火イベントを受け取り、そのニューロンのシナプス結合性情報をメモリ・デバイスの対応するエントリから取り出す。
メモリ・デバイスのエントリに対応する各ニューロンに対して、コントローラはそのニューロンのニューロン・パラメータをメモリ・デバイスの対応するエントリから取り出し、そのニューロンを標的とする入力発火イベントを積分し、ここで入力発火イベントは、そのニューロンのニューロン・パラメータ及びシナプス結合性に基づいて積分される。コントローラは、積分された入力発火イベントがそのニューロンの閾値ニューロン・パラメータを超えるとき、出力発火イベントを生成し、ここで出力発火イベントは、そのニューロンのルーティング・データ情報に基づいて生成される。コントローラは、そのニューロンの少なくとも1つのニューロン・パラメータを更新する。
時間ステップ毎に、メモリ・デバイスの各エントリがシーケンシャルに読み出される。
一実施形態において、メモリ・デバイスは、複数のパーティションを含むメモリ・アレイである。第1のパーティションは、複数のニューロンのシナプス結合性情報を保持し、第2のパーティションは、それらニューロンのニューロン・パラメータを保持し、第3のパーティションは、それらニューロンのルーティング・データ情報を保持する。
別の実施形態において、メモリ・デバイスは、複数のメモリ・アレイを含む。第1のメモリ・アレイは、複数のニューロンのシナプス結合性情報を保持し、第2のメモリ・アレイは、それらニューロンのニューロン・パラメータを保持し、第3のメモリ・アレイは、それらニューロンのルーティング・データ情報を保持する。
本明細書で用いられるデジタル・ニューロンという用語は、生体ニューロンを模擬するように構成されたフレームワークを表す。デジタル・ニューロンは、生体脳のニューロンとほぼ機能的に等価な処理要素間の結合を作り出す。従って、本発明の実施形態によるデジタル・ニューロンを含むニューロモルフィック及びシナプトロニック計算は、生体ニューロンをモデル化した様々な電子回路を含むことができる。さらに、本発明の実施形態によるデジタル・ニューロンを含むニューロモルフィック及びシナプトロニック計算は、生体ニューロンをモデル化した様々な処理要素(コンピュータ・シミュレーションを含む)を含むことができる。本発明の特定の例証的な実施形態は、本明細書において、デジタル回路を含むデジタル・ニューロンを用いて説明されるが、本発明はデジタル回路に限定されるものではない。本発明の実施形態によるニューロモルフィック及びシナプトロニック計算は、回路を含むニューロモルフィック及びシナプトロニック・フレームワークとして、さらにはコンピュータ・シミュレーションとして実装することができる。実際に、本発明の実施形態は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態、又はハードウェア要素及びソフトウェア要素の両方を含む実施形態の形態を取ることができる。
図1は、本発明の一実施形態によるニューラル・コア回路10を示す。ニューラル・コア回路10は、ニューロシナプス・コア回路である。コア回路10は、複数のシナプス前軸索15及び複数のシナプス後ニューロン11を含む。各ニューロン11は、設定可能な動作パラメータを有する。コア回路10は、複数のシナプス31と、複数の行/軸索経路26と、複数の列/樹状突起経路34とを含むシナプス・クロスバー12をさらに含む。
各シナプス31は、シナプス前軸索15とシナプス後ニューロン11との間で発火イベント(例えば、スパイク・イベント)を伝達する。具体的には、各シナプス31は、軸索経路26と樹状突起経路34との間の交差点に位置しており、軸索経路26と樹状突起経路34との間の結合がシナプス31を通して作られるようになっている。各軸索15は、軸索経路26に結合されており、軸索15は、結合した軸索経路26にスパイクを送るようになっている。各ニューロン11は、樹状突起経路34に結合されており、ニューロン11は、結合した樹状突起経路34からスパイクを受け取る。
各シナプス31は、シナプス重みを有する。コア回路10のシナプス31のシナプス重みは、重み行列Wによって表すことができ、ここで行列Wの要素Wjiは、クロスバー12の行/軸索経路j及び列/樹状突起経路iに位置するシナプス31のシナプス重みを表す。1つの実施形態において、シナプス31はバイナリ・メモリ・デバイスである。各シナプス31は、そのシナプス31が非導電状態にあることを示す重み「0」、又はこのシナプス31が導電状態にあることを示す重み「1」を有することができる。スパイク・タイミング依存可塑性(STDP)のような学習則を適用して、シナプス31のシナプス重みを更新することができる。
図2は、本発明の一実施形態による、発火イベントの入力ベクトル50を受け取ったときのコア回路10(図1)の動作を示す。時間ステップ(クロック・ステップ)t毎に、コア回路10の軸索15(図1)は、バイナリ入力ベクトル(「入力ベクトル」)50を受け取る。入力ベクトル50は、以前のクロック・ステップt−1で生成された発火イベントを受け取った軸索15を表す。入力ベクトル50の各インデックスは、軸索15に対応する。バイナリ値1を有する入力ベクトル50の各インデックスは、対応する軸索15が発火イベントを受け取ったことを示す。バイナリ値0を有する入力ベクトル50の各インデックスは、対応する軸索15が発火イベントを受取らなかったことを示す。
バイナリ値1を有する入力ベクトル50の各インデックスに関して、対応する軸索15の軸索経路/行26に位置するシナプス31の重みが読み出されて、バイナリ出力ベクトル(「出力」)60が得られる。軸索15に対応する出力ベクトル60に関して、出力ベクトル60の各インデックスは、その軸索15の軸索経路/行26に位置するシナプス31に対応する。バイナリ値1を有する出力ベクトル60の各インデックスは、対応するシナプス31が導電性シナプス31であることを示す。バイナリ値0を有する出力ベクトル60の各インデックスは、対応するシナプス31が非導電性シナプス31であることを示す。
例えば、図2に示すように、時間ステップF(t)において、軸索15は、値<1,0,0,0,1,0,0,1,1>を有する入力ベクトル50を受け取る。値<1,0,0,0,1,0,0,1,1>は、クロスバー12の軸索経路/行0、4、7、及び8に結合する軸索15が、以前のクロック・ステップF(t−1)で生成された発火イベントを受け取ったことを示す。各軸索経路/行0、4、7及び8に位置するシナプス31の重みが時間ステップF(t)の間に読み出される。行0、4、7、及び8に対応する出力行列60は、それぞれ、<1,0,0,0,1,0,0,1,1>、<0,1,1,0,0,0,1,1,0>、<1,1,0,0,1,1,1,1,0>、及び<0,0,0,1,1,1,0,1,1>である。
前述のように、バイナリ値1を有する出力ベクトル60の各インデックスは、対応するシナプス31が導電性シナプス31であることを示す。各ニューロン11は、相互結合された軸索15から導電性シナプス31を介して発火イベントを受け取る。各ニューロン11は、受け取った発火イベントを積分して、そのニューロン11の膜電位変数Vにする。
例えば、図2には数のシーケンス70が示されており、ここでシーケンス70の各々の数は、コア回路10のニューロン11に対応する。シーケンス70の各々の数は、対応するニューロン11が現在の時間ステップtにおいて受け取った発火イベントの数を表す。クロスバー12の樹状突起経路/列0、1、2、...、及び8に結合したニューロン11は、それぞれ、2つの発火イベント、2つの発火イベント、1つの発火イベント、1つの発火イベント、3つの発火イベント、2つの発火イベント、2つの発火イベント、4つの発火イベント、及び2つの発火イベントを受け取った。
各ニューロン11は、現在の時間ステップtにおいてそのニューロン11によって積分された発火イベントの数がそのニューロン11の発火閾値を超える場合に、発火イベントを生成する。現在の時間ステップtにおける発火ニューロン11を表すバイナリ更新ベクトル(「更新ベクトル」)80が得られる。更新ベクトル80の各インデックスは、ニューロン11に対応する。バイナリ値1を有する各インデックスは、対応するニューロン11が現在の時間ステップtにおいて発火イベントを生成したことを示す。
例えば、コア回路10の各ニューロン11は、2に等しいスパイク閾値を有する(即ち、ニューロン11は、ニューロン11が2つより多くの発火イベントを受け取った場合に発火する)ものとすることができる。図2に示すように、値<0,0,0,0,1,0,0,1,0>を有するバイナリ更新ベクトル80は、クロスバー12の樹状突起経路/列4及び7に結合されたニューロン11が現在の時間ステップF(t)において発火イベントを生成したことを示す。前述のように、樹状突起経路/列4及び7に結合されたニューロン11は各々、2つより多くの発火イベントを受け取った。
図3は、本発明の一実施形態によるコア回路10のリセット及びセット動作を示す。リセット動作及びセット動作は、STDPのようなシナプス学習を促進する。一実施形態において、活性軸索15(図1)に結合された各シナプス31のシナプス重みがリセットされる。活性軸索15は、現在の時間ステップ又は最近の時間ステップにおいて発火イベントを受け取った軸索15である。活性軸索15に結合したシナプス31がバイナリである場合、そのシナプス31のシナプス重みは0にリセットされる。活性軸索15に結合されたシナプス31が非バイナリである場合、そのシナプス31のシナプス重みが減らされる。
例えば、図3に示すように、バイナリ値1を有する入力ベクトル50の各インデックスに対して、そのインデックスに対応する軸索15のためのバイナリ・リセット・ベクトル90が生成される。ある軸索15のリセット・ベクトル90に関して、バイナリ値1を有するリセット・ベクトル90の各インデックスは、その軸索15に結合されたシナプス31がリセットされることを示す。
一実施形態において、活性ニューロン11に結合された各シナプス31(図1)のシナプス重みがセットされる。活性ニューロン11は、現在の時間ステップ又は最近の時間ステップにおいて発火イベントを生成したニューロン11である。活性ニューロン11に結合されたシナプス31がバイナリである場合、シナプス31のシナプス重みは1にセットされる。活性ニューロン11に結合されたシナプス31が非バイナリである場合、シナプス31のシナプス重みが増やされる。
例えば、図3に示すように、バイナリ値1を有する更新ベクトル80の各インデックスに関して、そのインデックスに対応するニューロン11のバイナリ・セット・ベクトル95が生成される。あるニューロン11のセット・ベクトル95に関して、バイナリ値1を有するセット・ベクトル95の各インデックスは、そのニューロン11に結合されたシナプス31がセットされることを示す。
1つの実施形態において、N個のニューロンを含むニューラル・コア回路は、N個のニューロンのためのα個のコントローラをさらに含み、ここでαは正の整数であって1≦α<Nであり、ニューロンはデジタル・ニューロンである。各コントローラは、処理及び計算論理回路である。
図4は、本発明の一実施形態による多重化ニューラル・コア回路100を示す。コア回路100は、多重化ニューロシナプス・コア回路である。コア回路100は、複数のニューロン11に対する計算及び制御論理を多重化したものである。具体的には、コア回路100は、複数のニューロン11のニューロン属性を保持するメモリ・デバイス110を含む。コア回路100は、メモリ・デバイス110のためのコントローラ(即ち、処理及び計算論理回路)120をさらに含む。
メモリ・デバイス110は、複数のエントリ111を有する(図5)。各エントリ111は、ニューロン11のニューロン属性を保持する。1つの実施形態において、各エントリ111は、ニューロン11のニューロン属性である、シナプス結合性情報(Wji)、ニューロン・パラメータ、及びルーティング情報を保持する。1つの実施形態において、各エントリ111の第1のサブセット112は、ニューロン11を軸索15に相互結合するシナプス31のシナプス重みを保持する。各エントリ111の第2のサブセット113は、ニューロン11のニューロン・パラメータである、膜電位変数(V)、スパイク閾値(Th)、リーク速度(Lk)、及び、各々可能な軸索型(Syn0、Syn1、Syn2)の重みを保持する。各エントリ111の第3のサブセット114は、ニューロン11のルーティング情報である、ファンアウト(F)及びルーティング遅延(ΔT)をさらに保持する。
メモリ・デバイス110は、複数のセグメント110Aに分割される。1つの実施形態において、メモリ・デバイス110は、単一のメモリ・アレイである。メモリ・アレイは複数のニューロン11のシナプス結合性情報を保持する第1のパーティション110A、ニューロン11のニューロン・パラメータを保持する第2のパーティション110A、及びニューロン11のルーティング・データ情報を保持する第3のパーティション110Aのような複数のパーティション110Aを含むことができる。別の実施形態において、メモリ・デバイス110は、複数のメモリ・アレイを含む。第1のメモリ・アレイは、複数のニューロン11のシナプス結合性情報を保持し、第2のメモリ・アレイは、ニューロン11のニューロン・パラメータを保持し、第3のメモリ・アレイは、ニューロン11のルーティング・データ情報を保持する。
メモリ・デバイス110は、メモリ・インタフェース回路115をさらに含む。回路115は、標準的なメモリ・インタフェース回路とすることができる。
一実施形態において、コントローラ120は、入力処理ファブリック130及び計算ファブリック140を含む。各エントリ111に対して、処理ファブリック130は、そのエントリ111を標的にする発火イベントを受け取って処理するように構成される。具体的には、受け取った各発火イベントは、そのエントリ111によって表されるニューロン11が相互結合された軸索15を標的にする。前述のように、各エントリ111の第1のサブセットは、ニューロン11を軸索15に相互結合するシナプス31のシナプス重みを保持する。標的にされる軸索15とエントリ111によって表されるニューロン11とを相互結合するシナプス31が導電性である場合、その発火イベントを計算ファブリック140によって積分することができる。
一実施形態において、処理ファブリック130は、デコーダ131、スケジューラ制御ユニット132、スケジューラ133、軸索型レジスタ134、多重制御ユニット135、及びドット積モジュール136を含む。
複数のコア回路100を含むニューラル・ネットワークにおいて、発火イベントは、ニューラル・ネットワークのコア回路100間でアドレス−イベント・パケットの形態でルーティングされる。各アドレス−イベント・パケットは、標的軸索15を表すバイナリ・アドレスとしてコード化された発火イベントを含み、ここで発火イベントは、同じコア回路100又は異なるコア回路100内のニューロン11によって生成されたものである。各アドレス−イベント・パケットは、そのアドレス−イベント・パケット内にカプセル化された発火イベントがいつ発生したかを示すタイム・スタンプをさらに含む。各コア回路100のデコーダ131は、アドレス−イベント・パケットを受け取ってデコードするように構成される。
1つの例示的な実装において、スケジューラ133は、行及び列を含むデュアル・ポート・メモリである。受け取ったアドレス−イベント・パケットからデコードされた発火イベントは、スケジューラ133内に格納され、ここで行は未来の時間ステップを表し、列は軸索15を表す。各発火イベントに対して、スケジューラ制御ユニット132は、スケジューラ133のどの行及び列に発火イベントが書き込まれるかを制御する。受け取った発火イベントに対して、それらを標的軸索15に伝達する前に選択的に遅延が課される。各発火イベントに対して、スケジューラ制御ユニット132は、その発火イベントがデコーダ131までのルート上で費やした時間の長さを、アドレス−イベント・パケットがデコーダ131に到着した時間と、発火イベントがいつ生成されたか示すタイム・スタンプとの間の差dとして計算する。差dが所定の配信遅延(又は所定の全遅延)n未満の場合、その発火イベントは、発火イベント生成から発火イベント配信までにn個のタイム・スタンプを達成するように、nとdとの間の差に等しい遅延期間Dの間、スケジューラ133内に保持され、スケジューラ133は、遅延期間の終了時に発火イベントを配信する。
例えば、スパイクが、ニューラル・ネットワーク内を伝搬するために3乃至9の時間ステップを必要とする場合、スケジューラ133は、全てのスパイクに対して9つの時間ステップを確保する。一例において、スパイクが生成から3つの時間ステップ内でデコーダ131に到着したとしても、スケジューラ133は、このスパイクがスパイク生成から9つの時間ステップの終了の時点でスケジューラ133から伝達されるように、スパイクの伝達を6つの時間ステップだけ遅延させる。
各時間ステップの開始時に、現在の時間ステップにおける全ての活性軸索15を示すベクトルが、スケジューラ133から行として読み出される。次に、メモリ・デバイス110全体が、時間ステップ毎に一回、読出し及び書込みされる。
具体的には、各時間ステップに対して、メモリ・デバイス110のエントリ111が、シーケンシャル・スキャナ150を用いて1つずつシーケンシャルに読み出される。多重制御ユニット135は、制御信号をメモリ・デバイス110に送るように構成される。ニューロン11を表す各エントリ111に対して、ドット積モジュール136は、現在の時間ステップにおける活性軸索15のベクトルと、そのエントリ111内に保持されたシナプス結合性情報、即ち、ニューロン11の樹状突起経路が結合された全てのシナプス31のシナプス重み(Wj)との間のドット積を計算する。
軸索型レジスタ134は、異なるコマンドを保持し、軸索型(即ち、Syn0、Syn1、Syn2など)に基づいて計算ファブリック140にコマンドを送る。保持される各コマンドは、計算されたドット積のインデックスに対応する。1つの実施形態において、メモリ・デバイス110内に保持されるシナプス重みはバイナリ値である。軸索型レジスタ134は、非ゼロ値を有するドット積のインデックスに対応するコマンドを計算ファブリック140に送る。例えば、計算されたドット積が値<1,1,1,0,0,0>を有し、軸索型レジスタが値<0,1,2,3,1,2>を保持する場合、軸索型レジスタ134は、コマンド0、1、2を計算ファブリック140に送る。
多重制御ユニット135は、計算されたドット積と発火イベントとを組み合せて計算ファブリック140に送るための信号及びコマンドを作成するようにさらに構成される。作成された信号は、クロック信号/時間ステップを含む。
別の実施形態において、メモリ・デバイス110内に保持されるシナプス重みは非バイナリである。軸索型レジスタ134は、ドット積の各々の非ゼロ値にその非ゼロ値を有するドット積のインデックスに対応するコマンドを掛け合わせたものを計算ファブリック140に送る。例えば、計算されたドット積が値<2,1,3,0,0,0>を有し、軸索型レジスタが値<0,1,2,3,1,2>を保持する場合、軸索型レジスタ134は、(0,2)、(1,1)、及び(2,3)を計算ファブリック140に送る。
一実施形態において、計算ファブリック140は、第1のマルチプレク141、第2のマルチプレク142、加算器143、デマルチプレクサ144、コンパレータ・モジュール(「コンパレータ」)145、及びエンコーダ146を含む
各エントリ111に対して、第1のマルチプレクサ141は、多重制御ユニット135によって供給された情報を使用してニューロン・パラメータ(即ち、Syn0、Syn1、Syn2、Lk)を選択する。例えば、全てのスパイクが積分された後で、エントリ111内に保持されたリーク速度Lkが選択される。加算器143は、第1のマルチプレクサ141によって選択されたニューロン・パラメータを、第2のマルチプレクサ142によって選択された膜電位変数に加える。各エントリ111に対して、第2のマルチプレクサ142は、そのエントリ111内に保持された膜電位変数Vを最初の加算のために選択する。各エントリ111に対して、第2のマルチプレクサ142は、修正された膜電位変数を次の加算のために選択し、ここで修正された膜電位変数は一時的変数である。
各エントリ111に対して、全てのスパイクが積分されてリーク速度が適用された後、コンパレータ145は、修正された膜電位変数がそのエントリ111内に保持されている閾値パラメータThを超えるかどうかを判断する。閾値パラメータThを超える場合、エンコーダ146は、スパイクを生成し、そのエントリ111内に保持されているファンアウトF及びルーティング遅延ΔT情報を用いて、生成されたスパイクをアドレス−イベント・パケットにカプセル化/エンコードする。膜電位変数Vは、そのエントリ111に再度書き込まれる前にゼロにリセットすることができる。
以下の表1は、コントローラ120の実行を示す例示的な疑似コードを与える。
Figure 0006250054
別の例示的実施において、スケジューラ133は、二重バッファリング用に構成される。例えば、スケジューラ133は、第1のバッファ及び第2のバッファを含むことができる。スケジューラ133は、現在の時間ステップtにおいて受け取った発火イベントを第1のバッファ内にバッファリングする。次の時間ステップt+1の開始時に、スケジューラ133は、第1のバッファ内の発火イベントを第2のバッファに移動させる。各発火イベントは、その発火イベントに対してプログラムされた配信時間に応じて、時間ステップt+1又は次の時間ステップにおいて標的軸索15に配信することができる。
図5は、本発明の一実施形態による多重化コア回路100のメモリ・デバイス110を示すブロック図である。前述のように、メモリ・デバイス110は、複数のニューロン11に関する情報を保持する。メモリ・デバイス110は、複数のエントリ111を含む。各エントリ111は、ニューロン11のニューロン属性を保持する。
図6は、本発明の一実施形態による多重化コア回路100のメモリ・デバイス110のエントリ111内に保持される情報を示すブロック図である。1つの実施形態において、各エントリ111は、ニューロン11のニューロン属性である、シナプス結合性情報、ニューロン・パラメータ、及びルーティング情報を保持する。1つの実施形態において、各エントリ111の第1のサブセット112は、ニューロン11を軸索15に相互結合するシナプス31のシナプス重みを保持する。各エントリ111の第2のサブセット113は、ニューロン11のニューロン・パラメータである、膜電位変数(V)、スパイク閾値(Th)、リーク速度(Lk)、及び、各々の可能な軸索型(Syn0、Syn1、Syn2)の重みを保持する。各エントリ111の第3のサブセット114は、ニューロン11のルーティング情報である、ファンアウト(F)、及びルーティング遅延(ΔT)をさらに保持する。
図7は、本発明の一実施形態による多重化コア回路100を示すブロック図である。前述のように、コア回路100は、複数のエントリ111を含むメモリ・デバイス110を含む。各エントリ111は、ニューロン11に関する情報を保持する。コア回路100は、メモリ・デバイス110のためのコントローラ(即ち、処理及び計算論理回路)120をさらに含む。メモリ・インタフェース回路115が、メモリ・デバイス110をコントローラ120に橋絡する。
図8は、本発明の一実施形態による、バイナリ入力ベクトル50を受け取る多重化コア回路100を示すブロック図である。前述のように、各時間ステップの開始時に、現在の時間ステップにおける全ての活性軸索15を示すバイナリ入力ベクトル50がスケジューラ133から取得される。次に、メモリ・デバイス110の各エントリ111が、シーケンシャルに1つずつ読み出される。
図9は、本発明の一実施形態による、半多重化コア200を示すブロック図である。コア200は、複数のメモリ・デバイス110を含む。各メモリ・デバイス110は、対応するコントローラ(即ち、対応する処理及び計算論理回路)120を有する。一実施形態において、N個のニューロンを含むコア200は、N個のニューロンのためのα個のコントローラ(即ち、処理及び計算論理回路)を含むことができ、ここでαは正の整数であり、1≦α<Nである。
図10は、本発明の一実施形態による縦長メタ・コア400を示す。メタ・コア400は、多重化ニューラル・ネットワーク・システムである。メタ・コア400は、異なるコア回路10に属する複数のニューロン11のニューロン属性を保持する縦長メモリ・デバイス410を含む。メモリ・デバイス410は、複数のサブセット412(図11)を含み、各々のサブセット412は、1つのコア回路10のニューロン11のニューロン属性を保持する。各サブセット412は、複数のエントリ411を含み、各々のエントリ411は、1つのニューロン11のニューロン属性を保持する。各エントリ411に関して、ニューロン11のニューロン属性は、シナプス結合性情報、ニューロン・パラメータ、及びルーティング情報を含む。
縦長メモリ・デバイス410内にデータを統合することにより、全体の有効電力消費を増やすことなく受動的電力消費が削減される。メタ・コア400は、コントローラ(即ち、処理及び計算論理回路)120をさらに含む。メモリ・デバイス410によって表されるニューロン11は、多重化されているので、メモリ・デバイス410のエントリ411によって表される各ニューロン11が、メモリ・デバイス410の他のエントリ411によって表される他のニューロン11とコントローラ120を共有するようになっている。従って、異なるコア回路10のニューロン11が同じコントローラ120を共有する。メモリ・インタフェース回路415が、メモリ・デバイス410をコントローラ120に橋絡する。
コントローラ120のデコーダ131は、アドレス−イベント・パケットをルーティング・ネットワーク260から受け取るように構成される。コントローラ120のエンコーダ146は、アドレス−イベント・パケットをルーティング・ネットワーク260に送るように構成される。
図11は、本発明の一実施形態による縦長メタ・コア400の縦長メモリ・デバイス410を示すブロック図である。前述のように、縦長メモリ・デバイス410は、異なるコア回路10に属する複数のニューロン11のニューロン属性を保持する。メモリ・デバイス410は、複数のサブセット412を含み、各々のサブセット412は、1つのコア回路10のニューロン11のニューロン属性を保持する。各サブセット412は、複数のエントリ411を含み、各々のエントリ411は、1つのニューロン11のニューロン属性を保持する。各エントリ411に関して、ニューロン11のニューロン属性は、シナプス結合性情報、
ニューロン・パラメータ、及びルーティング情報を含む。
図12は、本発明の一実施形態による幅広メタ・コア500を示す。メタ・コア500は、多重化ニューラル・ネットワーク・システムである。メタ・コア500は、異なるコア回路10に属する複数のニューロン11のニューロン属性を保持する幅広メモリ・デバイス510を含む。メモリ・デバイス510は、複数のサブセット512を含み、メモリ・デバイス510の各サブセット512は、1つのコア回路10のニューロン11のニューロン属性を保持する。各サブセット512は、複数のエントリ511に分割することができ、各エントリ511は、1つのニューロン11のニューロン属性を保持する。1つの例示的な実装において、各サブセット512が含むエントリ511の数は、メモリ・デバイス510が表すコア回路10の数に等しい。各エントリ511に関して、そのエントリ511内に保持されるニューロン11のニューロン属性は、シナプス結合性情報、ニューロン・パラメータ、及びルーティング情報を含む。
幅広メモリ・デバイス510内にデータを統合することにより、受動的電力消費が削減される。メタ・コア500は、複数のコントローラ(即ち、処理及び計算論理回路)120をさらに含む。1つの実施形態において、N個のニューロンを含むメタ・コア500は、N個のニューロンのためのα個のコントローラ(即ち、処理及び計算論理回路)120を含むことができ、ここでαは正の整数であり、1≦α<Nである。1つの例示的な実装において、メモリ・デバイス510の各サブセット512は、対応するコントローラ(即ち、対応する処理及び計算論理回路)120を有する。従って、同じコア回路10のニューロン11は、同じコントローラ120を共有する。動作中、各サブセット512の各エントリ511が完全に読み出され、そのエントリ511のニューロン属性は、そのサブセット512のコントローラ120によって独立に処理される。
図13は、本発明の一実施形態による幅広メタ・コア500の幅広メモリ・デバイス510を示すブロック図である。前述のように、幅広メモリ・デバイス510は、異なるコア回路10に属する複数のニューロン11のニューロン属性を保持する。メモリ・デバイス510は、複数のサブセット512を含み、メモリ・デバイス510の各サブセット512は、1つのコア回路10のニューロン11のニューロン属性を保持する。各サブセット512は、複数のエントリ511に分割することができ、各エントリ511は、1つのニューロン11のニューロン属性を保持する。1つの例示的な実装において、各サブセット512が含むエントリ511の数は、メモリ・デバイス510が表すコア回路10の数に等しい。各エントリ511に関して、そのエントリ511内に保持されるニューロン11のニューロン属性は、シナプス結合性情報、ニューロン・パラメータ、及びルーティング情報を含む。
図14は、本発明の一実施形態によるメタ・コア600を示す。メタ・コア600は、多重化ニューラル・ネットワーク・システムである。メタ・コア600は、異なるコア回路10(図1)に属する複数のニューロン11(図1)のニューロン属性を保持するメモリ・デバイス610を含む。図14に示すように、メモリ・デバイス610は、コア回路であるコア0、コア1、コア2、...、コア8、に属するニューロン11のニューロン属性を保持する。複数のコア回路10のデータをメモリ・デバイス610内に統合することにより、受動的電力消費が削減される。
メモリ・デバイス610は、複数のサブセット612(図15)を有し、各サブセット612は、1つのコア回路10のニューロン11のニューロン属性を保持する。各サブセット612は、複数のエントリ611(図15)を有し、各エントリ611は、1つのニューロン11のニューロン属性を保持する。各エントリ611に関して、そのエントリ611内に保持されるニューロン属性は、ニューロン11のシナプス結合性情報、ニューロン・パラメータ、及びルーティング情報を含む。
メタ・コア600は、複数のコントローラ(即ち、処理及び計算論理回路)120をさらに含む。1つの実施形態において、N個のニューロンを含むメタ・コア600は、N個のニューロンのためのα個のコントローラ(即ち、処理及び計算論理回路)120を含むことができ、ここでαは正の整数であり、1≦α<Nである。1つの例示的な実装において、メモリ・デバイス610のサブセット612は、複数のグループ614(図15)に編成される。各グループ614は、異なるコア回路10を表す複数のサブセット612を含む。各グループ614は、対応するコントローラ(即ち、処理及び計算論理回路)120を有するので、そのグループ614のニューロン11は同じコントローラ120を共有するようになっている。動作中、各グループ614の各サブセット612の各エントリ611が読み出され、そのエントリ611内に保持されたニューロン属性は、そのグループ614のコントローラ120によって独立に処理される。
図14に示すように、コア回路であるコア0、コア3、及びコア6のデータは、第1のコントローラ120を共有し、コア回路であるコア1、コア4、及びコア7のデータは、第2のコントローラ120を共有し、コア回路であるコア2、コア5、及びコア8のデータは、第3のコントローラ120を共有する。
1つの実施形態において、コア回路10のニューロン更新は、ニューロン11が1つずつ更新されるようにシーケンシャルに行われる。1つの例示的な実装において、ニューロン更新中に、1つのコア回路10のための1つのコントローラ120のみが使用される。1つのニューロン11のニューロン更新が完了すると、メタ・コア600は、全てのニューロン11が処理されるまでは、次のニューロン11に進む。従って、ニューロン11の数が増加するにつれて(及びシナプス31の数が増加するにつれて)、コントローラ120がコア回路10のニューロン更新を完了するのにかかる時間量もまた増大する。この時間が時間ステップの持続時間を超えると、コントローラ120は、コア回路10のニューロン更新を時間ステップ内で完了することができないことになる。従って、メモリ・デバイス610の最適な高さは、コントローラ120が時間ステップ内で処理できるニューロン11の可能な最大数に基づくものとすべきである。例えば、コントローラ120が100MHzで動作し、全てのニューロン11を1msの時間ステップ内で処理する必要があり、1つのニューロン11を処理するのに1000チックが必要な場合、メモリ・デバイス610は、100個のエントリ611しかを有することができない。メモリ・デバイス610の最適幅を決定することは、プロセス依存性である。
別の実施形態において、コア回路10のニューロン更新は並列に実行される。1つの例示的な実装において、異なるコア回路10のためのコントローラ120が並列に使用される。幾つかのコア回路(即ち、スレーブ・コア回路)のニューロン11の膜電位変数の変化を収集することができ、1つのコア回路10(即ち、マスター・コア回路10)のデータが、収集された変化に基づいて更新される。コア回路10のニューロン更新は並列に実行されるので、ニューロン更新の時間はメタ・コアのサイズに依存しない。
図15は、本発明の一実施形態による、メタ・コア600のメモリ・デバイス610を示すブロック図である。前述のように、メモリ・デバイス610は、異なるコア回路10に属する複数のニューロン11のニューロン属性を保持する。メモリ・デバイス610は、複数のサブセット612を含み、メモリ・デバイス610の各サブセット612は、1つのコア回路10のニューロン11のニューロン属性を保持する。各サブセット612は、複数のエントリ611を有し、各エントリ611は、1つのニューロン11のニューロン属性を保持する。各エントリ611に関して、そのエントリ611内に保持されるニューロン属性は、ニューロン11のシナプス結合性情報、ニューロン・パラメータ、及びルーティング情報を含む。1つの例示的な実装において、サブセット612は、複数のグループ614に編成され、各グループ614は、異なるコア回路10を表す複数のサブセット612を含む。
図15に示すように、コア回路であるコア0、コア3、及びコア6のデータは、第1のグループ614内に編成され、コア回路であるコア1、コア4、及びコア7のデータは、第2のグループ614内に編成され、コア回路であるコア2、コア5、及びコア8のデータは、第3のグループ614内に編成される。
図16は、本発明の一実施形態によるニューラル・ネットワーク700を示す。このニューラル・ネットワークは、複数のコア710を含む。コア710は、多重化コア回路100、縦長メタ・コア400、幅広メタ・コア500、又はメタ・コア600とすることができる。各コア710は、アドレス−イベント・パケットを、北方向、南方向、東方向、及び西方向に隣接するルータ720に転送するための対応するルータ720を有する。
図17は、本発明の一実施形態による、多重化コア内で発火イベントを処理するための例示的なプロセス800のフローチャートを示す。プロセス・ブロック801において、アドレス−イベント・パケット(AERイベント)を受取る。プロセス・ブロック802において、受け取った各アドレス−イベント・パケットがデコードされる。プロセス・ブロック803において、デコードされたアドレス−イベント・パケットが、デコードされた情報に基づいてスケジューラに格納される。プロセス・ブロック804において、現在の時間ステップにおける活性軸索のベクトルがスケジューラから取得される。プロセス・ブロック805において、メモリ・デバイスの各エントリがシーケンシャルに読み出され、ここでメモリ・デバイスはニューロンに関する情報を保持する。
図18は、本発明の1つの実施形態を実装するために有用な情報処理システム300を示す高レベル・ブロック図である。コンピュータ・システムは、プロセッサ302のような1つ又は複数のプロセッサを含む。プロセッサ302は、通信インフラストラクチャ304(例えば、通信バス、クロス・オーバ・バー、又はネットワーク)に接続される。
コンピュータ・システムは、通信インフラストラクチャ304から(又は図示されていないフレーム・バッファから)の画像、テキスト、及び他のデータを表示のためにディスプレイ・ユニット308に転送するディスプレイ・インタフェース306を含むことができる。コンピュータ・システムはまた、主メモリ310、好ましくはランダム・アクセス・メモリ(RAM)を含み、さらに二次メモリ312を含むことができる。二次メモリ312は、例えば、ハード・ディスク・ドライブ314、及び/又は、例えば、フロッピー・ディスク・ドライブ、磁気テープ・ドライブ、若しくは光ディスク・ドライブを表す取外し可能記憶ドライブ316を含むことができる。取外し可能記憶ドライブ316は、当業者に周知の方式で取外し可能記憶ユニット318から読み出す及び/又はそれに書き込む。取外し可能記憶ユニット318は、取外し可能記憶ドライブ316によって読み出され又は書き込まれる、例えば、フロッピー・ディスク、コンパクト・ディスク、磁気テープ、又は光ディスクなどを表す。当然のことながら、取外し可能記憶ユニット318は、コンピュータ・ソフトウェア及び/又はデータを内部に格納したコンピュータ可読媒体を含む。
代替的実施形態において、二次メモリ312は、コンピュ−タ・プログラム又はその他の命令をコンピュータ・システムにロードすることを可能にする他の同様の手段を含むことができる。そのような手段としては、例えば、取外し可能記憶ユニット320及びインタフェース322を挙げることができる。そのような手段の例としては、プログラム・パッケージ及びパッケージ・インタフェース(ビデオゲーム機内にあるようなもの)、取外し可能メモリ・チップ(EPROM又はPROMなど)及び付属ソケット、並びに、取外し可能記憶ユニット320からソフトウェア及びデータをコンピュータ・システムに転送することを可能にする他の取外し可能記憶ユニット320及びインタフェース322を挙げることができる。
コンピュータ・システムはまた、通信インタフェース324を含むこともできる。通信インタフェース324は、コンピュータ・システムと外部機器との間でのソフトウェア及びデータの転送を可能にする。通信インタフェース324の例としては、モデム、ネットワーク・インタフェース(イーサネット・カードなど)、通信ポート、又はPCMCIAスロット及びカードなどを挙げることができる。通信インタフェース324を介して転送されるソフトウェア及びデータは信号の形態であり、これは、例えば、電子信号、電磁気信号、光信号、又は通信インタフェース324によって受け取ることができる他の信号とすることができる。これらの信号は、通信パス(即ち、チャネル)326を介して通信インタフェース324に供給される。この通信パス326は、信号を搬送するものであり、ワイヤ又はケーブル、光ファイバ、電話回線、携帯電話リンク、RFリンク、及び/又は他の通信チャネルを用いて実装することができる。
本明細書において、「コンピュータ・プログラム媒体」、「コンピュータ使用可能媒体」、及び「コンピュータ可読媒体」という用語は、例えば、主メモリ310及び二次メモリ312、取外し可能記憶ドライブ316、並びにハード・ディスク・ドライブ314内に装着されたハード・ディスクなどの媒体を一般的に指すために使用される。
コンピュータ・プログラム(コンピュータ制御論理とも呼ばれる)は、主メモリ310及び/又は二次メモリ312の中に格納される。コンピュータ・プログラムはまた、通信インタフェース324を介して受け取ることもできる。そのようなコンピュータ・プログラムは、実行されたときに、本明細書で論じた本発明の機能をコンピュータ・システムが実施できるようにする。特に、コンピュータ・プログラムは、実行されたときに、プロセッサ302がコンピュータ・システムの機能を実施できるようにする。従って、このようなコンピュータ・プログラムは、コンピュータ・システムのコントローラを表す。
上記の説明から、本発明は、本発明の実施形態を実装するためのシステム、コンピュータ・プログラム製品、及び方法を提供することが分かる。本発明はさらに、ニューラル・ネットワーク内の構造的可塑性を有する階層型ルーティング及び双方向情報フローのための、非一時的コンピュータ使用可能記憶媒体を提供する。非一時的コンピュータ使用可能記憶媒体は、コンピュータ可読プログラムを有し、このプログラムは、コンピュータ上で処理されると、本明細書で説明した実施形態に従って、本発明のステップをコンピュータに行わせる。特許請求の範囲において、ある要素を単数形で言及している場合、明示的に言明されない限り、「1つかつ唯一」を意味することを意図するのではなく、むしろ「1つ又は複数」を意味することを意図する。当業者に現在知られた又は後に知られるようになる前述の例示的な実施形態の要素の全ての構造的及び機能的均等物は、本特許請求の範囲に包含されることが意図される。ここにおける請求項のいかなる要素も、その要素が明示的に「のための手段(means for)」又は「のためのステップ(step for)」という語句を用いて記述されていない限り、米国特許法第112条第6段落の規定の下で解釈されるべきではない。
本明細書で用いる用語は、特定の実施形態を説明するためだけのものであり、発明を限定することを意図したものではない。本明細書で用いられる場合、単数形「ある、1つの(a)、(an)」及び「この(the)」は、文脈から明らかにそうでないことが示されていない限り、複数形も同様に含むことが意図される。「含む(comprises)」及び/又は「含んでいる(comprising)」という用語は、本明細書において使用される場合、言明された特徴、整数、ステップ、動作、要素、及び/又は構成要素の存在を指定するものではあるが、1つ又は複数の他の特徴、整数、ステップ、動作、要素、構成要素、及び/又はそれらの群の存在又は追加を排除するものではないこともさらに理解される。
以下の特許請求の範囲における「手段又はステップと機能との組合せ(ミーンズ又はステップ・プラス・ファンクション)」要素の対応する構造、物質、行為、及び均等物は、その機能を、明確に特許請求されている他の特許請求された要素と組み合せて実行するための、あらゆる構造、物質、又は行為を含むことが意図されている。本発明の説明は、例証及び説明のために提示されたものであり、網羅的であることを意図するものでもなく、本発明を開示された形に限定することを意図したものでもない。当業者には、本発明の範囲及び主旨から逸脱しない多くの変更及び変形が明白となるであろう。実施形態は、本発明の原理及び実際の用途を最も良く説明するため、及び、当業者が、企図される特定の用途に適した種々の修正を有する種々の実施形態に関して本発明を理解することができるように、選択され説明された。
10:ニューラル・コア回路
11:ニューロン
12:シナプス・クロスバー
15:シナプス前軸索
26:行/軸索経路
31:シナプス
34:列/樹状突起経路
50:入力ベクトル
60:出力ベクトル
70:数のシーケンス
80:更新ベクトル
90:リセット・ベクトル
95:セット・ベクトル
100:多重化ニューラル・コア回路
110、410、510、610:メモリ・デバイス
110A:パーティション(セグメント)
111、411、511、611:エントリ
112:エントリの第1のサブセット
113:エントリの第2のサブセット
114:エントリの第3のサブセット
115:メモリ・インタフェース回路
120:コントローラ
130:入力処理ファブリック
135:多重制御ユニット
136:ドット積モジュール
140:計算ファブリック
141、142:マルチプレクサ
143:加算器
144:デマルチプレクサ
145:コンパレータ
200:半多重化コア
300:情報処理システム
400:縦長メタ・コア
412、512、612:サブセット
500:幅広メタ・コア
600:メタ・コア
614:グループ
700:ニューラル・ネットワーク
710:コア
720:ルータ

Claims (19)

  1. 複数のニューロンのニューロン属性を保持するメモリ・デバイスであって、複数のエントリを有し、各エントリが対応するニューロンのニューロン属性を保持する、メモリ・デバイスと、
    前記メモリ・デバイスを管理するコントローラであって、各ニューロンを標的とするニューロン発火イベントを処理するコントローラとを含み、
    前記コントローラは、前記複数のニューロンの計算及び制御論理を多重化し、
    前記コントローラは、前記ニューロンのうちの1つを標的とするニューロン発火イベントに応答して、前記メモリ・デバイスの対応するエントリから前記標的ニューロンのニューロン属性を取り出し、前記取り出したニューロン属性に基づいて前記発火イベントを積分し、前記標的ニューロンに対する発火イベントを生成する
    ニューラル・コア回路。
  2. 前記エントリの各々に関して、前記エントリ内に保持される前記ニューロン属性は、対応するニューロンのシナプス結合性情報、ニューロン・パラメータ、及びルーティング・データ情報を含む、請求項1に記載のニューラル・コア回路。
  3. 前記コントローラは、積分された発火イベントが前記標的ニューロンの閾値ニューロン・パラメータを超える場合に、標的ニューロンに対する発火イベントを生成する、請求項2に記載のニューラル・コア回路。
  4. 各標的ニューロンに対して、前記コントローラは、前記標的ニューロンの少なくとも1つのニューロン・パラメータを更新する、請求項3に記載のニューラル・コア回路。
  5. 前記メモリ・デバイスのエントリに対応する各ニューロンに対して、前記コントローラは、
    前記ニューロンを標的とする入力発火イベントを受け取り、
    前記ニューロンのシナプス結合性情報を前記メモリ・デバイスの前記対応するエントリから取り出す、
    請求項2に記載のニューラル・コア回路。
  6. 前記メモリ・デバイスのエントリに対応する各ニューロンに対して、前記コントローラは、
    前記ニューロンのニューロン・パラメータを前記メモリ・デバイスの前記対応するエントリから取り出し、
    前記ニューロンを標的とする入力発火イベントを、前記ニューロンの前記ニューロン・パラメータ及びシナプス結合性情報に基づいて積分し、
    前記積分された入力発火イベントが前記ニューロンの閾値ニューロン・パラメータを超えるとき、前記ニューロンの前記ルーティング・データ情報に基づいて出力発火イベントを生成し、
    前記ニューロンの少なくとも1つのニューロン・パラメータを更新する、
    請求項に記載のニューラル・コア回路。
  7. 時間ステップ毎に、前記メモリ・デバイスの各エントリがシーケンシャルに読み出される、請求項1から請求項のいずれか1項に記載のニューラル・コア回路。
  8. 前記メモリ・デバイスは、複数のパーティションを含むメモリ・アレイであり、
    前記複数のパーティションは、
    前記複数のニューロンのシナプス結合性情報を保持する第1のパーティションと、
    前記複数のニューロンのニューロン・パラメータを保持する第2のパーティションと、
    前記複数のニューロンのルーティング・データ情報を保持する第3のパーティションと、
    を含む、請求項1から請求項までのいずれか1項に記載のニューラル・コア回路。
  9. 前記メモリ・デバイスは複数のメモリ・アレイを含み、
    前記複数のメモリ・アレイは
    前記複数のニューロンのシナプス結合性情報を保持する第1のメモリ・アレイと、
    前記複数のニューロンのニューロン・パラメータを保持する第2のメモリ・アレイと、
    前記複数のニューロンのルーティング・データ情報を保持する第3のメモリ・アレイと、
    を含む、請求項1から請求項8のいずか1項に記載のニューラル・コア回路。
  10. 方法であって、
    複数のニューロンのニューロン属性をメモリ・デバイス内に保持することであり、前記メモリ・デバイスは、複数のエントリを有し、各エントリは、対応するニューロンのニューロン属性を保持する、ことと、
    前記メモリ・デバイスを管理するためにコントローラを利用することであり、前記コントローラは各ニューロンを標的とするニューロン発火イベントを処理する、こととを含み、
    前記コントローラは、前記複数のニューロンの計算及び制御論理を多重化し、
    前記コントローラは、前記ニューロンのうちの1つを標的とするニューロン発火イベントに応答して、前記メモリ・デバイスの対応するエントリから前記標的ニューロンのニューロン属性を取り出し、前記取り出したニューロン属性に基づいて前記発火イベントを積分し、前記標的ニューロンに対する発火イベントを生成する
    方法。
  11. 前記エントリの各々に対して、対応するニューロンのシナプス結合性情報、ニューロン・パラメータ、及びルーティング・データ情報を前記エントリ内に保持することをさらに含む、請求項10に記載の方法。
  12. 積分された発火イベントが前記標的ニューロンの閾値ニューロン・パラメータを超える場合に、標的ニューロンに対する発火イベントを生成することをさらに含む、請求項11に記載の方法。
  13. 各標的ニューロンに対して、前記標的ニューロンの少なくとも1つのニューロン・パラメータを更新することをさらに含む、請求項12に記載の方法。
  14. 前記メモリ・デバイスのエントリに対応する各ニューロンに対して、
    前記ニューロンを標的とする入力発火イベントを受け取ることと、
    前記ニューロンのシナプス結合性情報を前記メモリ・デバイスの前記対応するエントリから取り出すことと、
    をさらに含む、請求項11に記載の方法。
  15. 前記メモリ・デバイスのエントリに対応する各ニューロンに対して、
    前記ニューロンのニューロン・パラメータを前記メモリ・デバイスの前記対応するエントリから取り出すことと、
    前記ニューロンを標的とする入力発火イベントを、前記ニューロンの前記ニューロン・パラメータ及びシナプス結合性情報に基づいて積分することと、
    前記積分された入力発火イベントが前記ニューロンの閾値ニューロン・パラメータを超えるとき、前記ニューロンの前記ルーティング・データ情報に基づいて出力発火イベントを生成することと、
    前記ニューロンの少なくとも1つのニューロン・パラメータを更新することと、
    をさらに含む、請求項14に記載の方法。
  16. 時間ステップ毎に、前記メモリ・デバイスの各エントリをシーケンシャルに読み出すことをさらに含む、請求項10から請求項15までのいずれか1項に記載の方法。
  17. 前記複数のニューロンのシナプス結合性情報をメモリ・アレイの第1のパーティションに保持することと、
    前記複数のニューロンのニューロン・パラメータを前記メモリ・アレイの第2のパーティションに保持することと、
    前記複数のニューロンのルーティング・データ情報を前記メモリ・アレイの第3のパーティションに保持することと、
    をさらに含む、請求項10から請求項16までのいずれか1項に記載の方法。
  18. 前記複数のニューロンのシナプス結合性情報を第1のメモリ・アレイに保持することと、
    前記複数のニューロンのニューロン・パラメータを第2のメモリ・アレイに保持することと、
    前記複数のニューロンのルーティング・データ情報を第3のメモリ・アレイに保持することと、
    をさらに含む、請求項10から請求項16までのいずれか1項に記載の方法。
  19. 請求項10から請求項18までのいずれかに記載の方法を実施するためにコンピュータによって実行可能なプログラム・コードを有する、ニューラル・コア回路のためのコンピュータ・プログラム。
JP2015531660A 2012-09-14 2013-06-28 ニューラル・コア回路 Active JP6250054B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/619,433 US9159020B2 (en) 2012-09-14 2012-09-14 Multiplexing physical neurons to optimize power and area
US13/619,433 2012-09-14
PCT/IB2013/055312 WO2014041443A1 (en) 2012-09-14 2013-06-28 Neural core circuit

Publications (2)

Publication Number Publication Date
JP2015534172A JP2015534172A (ja) 2015-11-26
JP6250054B2 true JP6250054B2 (ja) 2017-12-20

Family

ID=50277711

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015531660A Active JP6250054B2 (ja) 2012-09-14 2013-06-28 ニューラル・コア回路

Country Status (5)

Country Link
US (2) US9159020B2 (ja)
JP (1) JP6250054B2 (ja)
CN (1) CN104641385B (ja)
DE (1) DE112013003349T5 (ja)
WO (1) WO2014041443A1 (ja)

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9390368B2 (en) * 2013-10-21 2016-07-12 International Business Machines Corporation Coupling parallel event-driven computation with serial computation
US9406015B2 (en) * 2013-12-27 2016-08-02 International Business Machines Corporation Transform for a neurosynaptic core circuit
US9412063B2 (en) 2013-12-27 2016-08-09 International Business Machines Corporation Transform architecture for multiple neurosynaptic core circuits
US9852006B2 (en) 2014-03-28 2017-12-26 International Business Machines Corporation Consolidating multiple neurosynaptic core circuits into one reconfigurable memory block maintaining neuronal information for the core circuits
US9195903B2 (en) * 2014-04-29 2015-11-24 International Business Machines Corporation Extracting salient features from video using a neurosynaptic system
US9373058B2 (en) 2014-05-29 2016-06-21 International Business Machines Corporation Scene understanding using a neurosynaptic system
US9798972B2 (en) 2014-07-02 2017-10-24 International Business Machines Corporation Feature extraction using a neurosynaptic system for object classification
US10115054B2 (en) 2014-07-02 2018-10-30 International Business Machines Corporation Classifying features using a neurosynaptic system
US10664751B2 (en) * 2016-12-01 2020-05-26 Via Alliance Semiconductor Co., Ltd. Processor with memory array operable as either cache memory or neural network unit memory
CN105426957B (zh) * 2015-11-06 2017-09-29 兰州理工大学 一种电磁辐射下的神经元电活动模拟器
US10423879B2 (en) 2016-01-13 2019-09-24 International Business Machines Corporation Efficient generation of stochastic spike patterns in core-based neuromorphic systems
US10990872B2 (en) 2016-03-31 2021-04-27 International Business Machines Corporation Energy-efficient time-multiplexed neurosynaptic core for implementing neural networks spanning power- and area-efficiency
WO2017200088A1 (ja) * 2016-05-19 2017-11-23 国立大学法人北海道大学 ニューラルネットワーク回路及びニューラルネットワーク集積回路
US10586147B2 (en) * 2016-09-22 2020-03-10 Intel Corporation Neuromorphic computing device, memory device, system, and method to maintain a spike history for neurons in a neuromorphic computing environment
US11281963B2 (en) * 2016-09-26 2022-03-22 Intel Corporation Programmable neuron core with on-chip learning and stochastic time step control
US11270193B2 (en) * 2016-09-30 2022-03-08 International Business Machines Corporation Scalable stream synaptic supercomputer for extreme throughput neural networks
US10423876B2 (en) 2016-12-01 2019-09-24 Via Alliance Semiconductor Co., Ltd. Processor with memory array operable as either victim cache or neural network unit memory
US10395165B2 (en) * 2016-12-01 2019-08-27 Via Alliance Semiconductor Co., Ltd Neural network unit with neural memory and array of neural processing units that collectively perform multi-word distance rotates of row of data received from neural memory
US10417560B2 (en) * 2016-12-01 2019-09-17 Via Alliance Semiconductor Co., Ltd. Neural network unit that performs efficient 3-dimensional convolutions
US10248906B2 (en) 2016-12-28 2019-04-02 Intel Corporation Neuromorphic circuits for storing and generating connectivity information
CN106971229B (zh) * 2017-02-17 2020-04-21 清华大学 神经网络计算核信息处理方法和系统
CN106971228B (zh) * 2017-02-17 2020-04-07 北京灵汐科技有限公司 神经元信息发送方法和系统
US11615297B2 (en) 2017-04-04 2023-03-28 Hailo Technologies Ltd. Structured weight based sparsity in an artificial neural network compiler
US11551028B2 (en) 2017-04-04 2023-01-10 Hailo Technologies Ltd. Structured weight based sparsity in an artificial neural network
US11238334B2 (en) 2017-04-04 2022-02-01 Hailo Technologies Ltd. System and method of input alignment for efficient vector operations in an artificial neural network
US11544545B2 (en) 2017-04-04 2023-01-03 Hailo Technologies Ltd. Structured activation based sparsity in an artificial neural network
US10387298B2 (en) 2017-04-04 2019-08-20 Hailo Technologies Ltd Artificial neural network incorporating emphasis and focus techniques
EP3627437B1 (en) * 2017-04-06 2022-11-09 Cambricon (Xi'an) Semiconductor Co., Ltd. Data screening device and method
US11551067B2 (en) 2017-04-06 2023-01-10 Shanghai Cambricon Information Technology Co., Ltd Neural network processor and neural network computation method
US10795836B2 (en) 2017-04-17 2020-10-06 Microsoft Technology Licensing, Llc Data processing performance enhancement for neural networks using a virtualized data iterator
US11100396B2 (en) * 2017-08-24 2021-08-24 International Business Machines Corporation Self-adjusting threshold for synaptic activity in neural networks
WO2019049686A1 (ja) 2017-09-07 2019-03-14 パナソニック株式会社 半導体記憶素子を用いたニューラルネットワーク演算回路及び動作方法
CN107748914A (zh) * 2017-10-19 2018-03-02 珠海格力电器股份有限公司 人工神经网络运算电路
EP3685316B1 (en) * 2017-10-27 2023-08-09 Google LLC Capsule neural networks
JP6794336B2 (ja) * 2017-11-17 2020-12-02 株式会社東芝 ニューラルネットワーク装置
US11195079B2 (en) * 2017-11-22 2021-12-07 Intel Corporation Reconfigurable neuro-synaptic cores for spiking neural network
JP6569755B1 (ja) 2018-03-06 2019-09-04 Tdk株式会社 ニューラルネットワーク装置、信号生成方法およびプログラム
KR20190110737A (ko) 2018-03-21 2019-10-01 에스케이하이닉스 주식회사 하나의 공통 로직 디바이스를 공유하는 다수의 시냅스 블록들을 가진 뉴로모픽 소자
US20190303740A1 (en) * 2018-03-30 2019-10-03 International Business Machines Corporation Block transfer of neuron output values through data memory for neurosynaptic processors
US20190332924A1 (en) * 2018-04-27 2019-10-31 International Business Machines Corporation Central scheduler and instruction dispatcher for a neural inference processor
US11501140B2 (en) * 2018-06-19 2022-11-15 International Business Machines Corporation Runtime reconfigurable neural network processor core
US20200117981A1 (en) * 2018-10-11 2020-04-16 International Business Machines Corporation Data representation for dynamic precision in neural network cores
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
TWI733334B (zh) 2020-02-15 2021-07-11 財團法人工業技術研究院 卷積神經網路運算裝置及其運算的方法
US11263077B1 (en) 2020-09-29 2022-03-01 Hailo Technologies Ltd. Neural network intermediate results safety mechanism in an artificial neural network processor
US11874900B2 (en) 2020-09-29 2024-01-16 Hailo Technologies Ltd. Cluster interlayer safety mechanism in an artificial neural network processor
US11221929B1 (en) 2020-09-29 2022-01-11 Hailo Technologies Ltd. Data stream fault detection mechanism in an artificial neural network processor
US11811421B2 (en) 2020-09-29 2023-11-07 Hailo Technologies Ltd. Weights safety mechanism in an artificial neural network processor
US11237894B1 (en) 2020-09-29 2022-02-01 Hailo Technologies Ltd. Layer control unit instruction addressing safety mechanism in an artificial neural network processor
CN112784972B (zh) * 2021-01-15 2022-10-11 之江实验室 一种面向片上神经网络的突触实现架构

Family Cites Families (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57125127A (en) 1981-01-21 1982-08-04 Chuo Seisakusho Inversion device for vessels
JP3260357B2 (ja) 1990-01-24 2002-02-25 株式会社日立製作所 情報処理装置
US5636327A (en) 1991-09-18 1997-06-03 Matsushita Electric Industrial Co., Ltd. Neural network circuit
JPH06139217A (ja) 1992-10-29 1994-05-20 Hitachi Ltd 高精度演算処理装置および方法
DE69430527T2 (de) 1994-07-28 2003-01-02 Ibm Schaltung für das Vorladen von Eingangsvektorbestandteilen in eine freie Neuronalschaltung während der Erkennungsphase
US5819245A (en) 1995-09-05 1998-10-06 Motorola, Inc. Method of organizing data into a graphically oriented format
US7089218B1 (en) 2004-01-06 2006-08-08 Neuric Technologies, Llc Method for inclusion of psychological temperament in an electronic emulation of the human brain
JPH11232244A (ja) * 1998-02-10 1999-08-27 Hitachi Ltd ニューラルネットワーク、その学習方法およびニューロ・ファジィ制御装置
GB9924310D0 (en) 1999-10-15 1999-12-15 Univ Manchester Neural network component
US6418378B1 (en) * 2000-06-26 2002-07-09 Westerngeco, L.L.C. Neural net prediction of seismic streamer shape
US6999953B2 (en) 2002-07-03 2006-02-14 Energy Conversion Devices, Inc. Analog neurons and neurosynaptic networks
US7467115B2 (en) 2004-07-15 2008-12-16 Neurosciences Research Foundation, Inc. Mobile brain-based device having a simulated nervous system based on the hippocampus
IL165096A0 (en) * 2004-11-08 2005-12-18 Eyal Cohen A method and system for diagnosis of cardiac diseases utilizing neural networks
US8443169B2 (en) 2005-03-28 2013-05-14 Gerald George Pechanek Interconnection network connecting operation-configurable nodes according to one or more levels of adjacency in multiple dimensions of communication in a multi-processor and a neural processor
US7627540B2 (en) 2005-06-28 2009-12-01 Neurosciences Research Foundation, Inc. Addressing scheme for neural modeling and brain-based devices using special purpose processor
US7533071B2 (en) 2005-06-28 2009-05-12 Neurosciences Research Foundation, Inc. Neural modeling and brain-based devices using special purpose processor
US8407429B2 (en) 2006-06-21 2013-03-26 Element Cxi, Llc Multi-context configurable memory controller
US8510244B2 (en) 2009-03-20 2013-08-13 ISC8 Inc. Apparatus comprising artificial neuronal assembly
US8250010B2 (en) 2009-05-21 2012-08-21 International Business Machines Corporation Electronic learning synapse with spike-timing dependent plasticity using unipolar memory-switching elements
CN101639901A (zh) 2009-09-03 2010-02-03 王连明 基于多核技术的前馈神经网络硬件实现方法
US8275727B2 (en) * 2009-11-13 2012-09-25 International Business Machines Corporation Hardware analog-digital neural networks
US8311965B2 (en) * 2009-11-18 2012-11-13 International Business Machines Corporation Area efficient neuromorphic circuits using field effect transistors (FET) and variable resistance material
US9063779B2 (en) 2010-01-06 2015-06-23 Mindspeed Technologies, Inc. Task list generation, parallelism templates, and memory management for multi-core systems
US8699566B2 (en) 2010-01-27 2014-04-15 International Business Machines Corporation Adaptive and integrated visualization of spatiotemporal data from large-scale simulations
JP2013529342A (ja) * 2010-05-19 2013-07-18 ザ リージェンツ オブ ザ ユニバーシティ オブ カリフォルニア ニューラル処理ユニット
US9665822B2 (en) * 2010-06-30 2017-05-30 International Business Machines Corporation Canonical spiking neuron network for spatiotemporal associative memory
US8606732B2 (en) * 2010-08-04 2013-12-10 Qualcomm Incorporated Methods and systems for reward-modulated spike-timing-dependent-plasticity
US8515885B2 (en) 2010-10-29 2013-08-20 International Business Machines Corporation Neuromorphic and synaptronic spiking neural network with synaptic weights learned using simulation
US8655813B2 (en) 2010-12-30 2014-02-18 International Business Machines Corporation Synaptic weight normalized spiking neuronal networks
US8856055B2 (en) * 2011-04-08 2014-10-07 International Business Machines Corporation Reconfigurable and customizable general-purpose circuits for neural networks
CN102193518B (zh) 2011-05-13 2013-04-24 南京理工大学 基于基底神经节的fpga仿生智能控制芯片
US8812414B2 (en) 2011-05-31 2014-08-19 International Business Machines Corporation Low-power event-driven neural computing architecture in neural networks
US8712940B2 (en) 2011-05-31 2014-04-29 International Business Machines Corporation Structural plasticity in spiking neural networks with symmetric dual of an electronic neuron
US9147156B2 (en) 2011-09-21 2015-09-29 Qualcomm Technologies Inc. Apparatus and methods for synaptic update in a pulse-coded network
US8843425B2 (en) 2011-07-29 2014-09-23 International Business Machines Corporation Hierarchical routing for two-way information flow and structural plasticity in neural networks
US9104973B2 (en) 2011-09-21 2015-08-11 Qualcomm Technologies Inc. Elementary network description for neuromorphic systems with plurality of doublets wherein doublet events rules are executed in parallel
US8738554B2 (en) 2011-09-16 2014-05-27 International Business Machines Corporation Event-driven universal neural network circuit
US8909576B2 (en) 2011-09-16 2014-12-09 International Business Machines Corporation Neuromorphic event-driven neural computing architecture in a scalable neural network
US8874498B2 (en) 2011-09-16 2014-10-28 International Business Machines Corporation Unsupervised, supervised, and reinforced learning via spiking computation
US8799199B2 (en) 2011-12-14 2014-08-05 International Business Machines Corporation Universal, online learning in multi-modal perception-action semilattices
US8626684B2 (en) 2011-12-14 2014-01-07 International Business Machines Corporation Multi-modal neural network for universal, online learning
KR20130090147A (ko) * 2012-02-03 2013-08-13 안병익 신경망 컴퓨팅 장치 및 시스템과 그 방법
US8868477B2 (en) * 2012-03-29 2014-10-21 International Business Machines Coproration Multi-compartment neurons with neural cores
CN102663497B (zh) 2012-04-05 2014-04-30 北京大学 一种自路由单元电路及其控制方法
US9224089B2 (en) 2012-08-07 2015-12-29 Qualcomm Incorporated Method and apparatus for adaptive bit-allocation in neural systems
US8990130B2 (en) 2012-11-21 2015-03-24 International Business Machines Corporation Consolidating multiple neurosynaptic cores into one memory
JP6139217B2 (ja) 2013-03-29 2017-05-31 森永乳業株式会社 D−アミノ酸の製造方法
US9852006B2 (en) 2014-03-28 2017-12-26 International Business Machines Corporation Consolidating multiple neurosynaptic core circuits into one reconfigurable memory block maintaining neuronal information for the core circuits

Also Published As

Publication number Publication date
JP2015534172A (ja) 2015-11-26
US20150379393A1 (en) 2015-12-31
US20150254551A1 (en) 2015-09-10
CN104641385A (zh) 2015-05-20
CN104641385B (zh) 2017-03-01
WO2014041443A1 (en) 2014-03-20
US10713561B2 (en) 2020-07-14
DE112013003349T5 (de) 2015-03-19
US9159020B2 (en) 2015-10-13

Similar Documents

Publication Publication Date Title
JP6250054B2 (ja) ニューラル・コア回路
US11295201B2 (en) Time-division multiplexed neurosynaptic module with implicit memory addressing for implementing a neural network
US9818058B2 (en) Time-division multiplexed neurosynaptic module with implicit memory addressing for implementing a universal substrate of adaptation
US8990130B2 (en) Consolidating multiple neurosynaptic cores into one memory
US10839287B1 (en) Globally asynchronous and locally synchronous (GALS) neuromorphic network
US11238343B2 (en) Scalable neural hardware for the noisy-OR model of Bayesian networks
US9715653B2 (en) Multi-scale spatio-temporal neural network system
US10282658B2 (en) Hardware architecture for simulating a neural network of neurons
US9852006B2 (en) Consolidating multiple neurosynaptic core circuits into one reconfigurable memory block maintaining neuronal information for the core circuits
US9020867B2 (en) Cortical simulator for object-oriented simulation of a neural network
US8924322B2 (en) Multi-processor cortical simulations with reciprocal connections with shared weights
US10198690B2 (en) Transform architecture for multiple neurosynaptic core circuits
US10318862B2 (en) Transform for a neurosynaptic core circuit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160524

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170330

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170404

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170704

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171031

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171121

R150 Certificate of patent or registration of utility model

Ref document number: 6250054

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150