特許第6865819号(P6865819)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ サムスン エレクトロニクス カンパニー リミテッドの特許一覧

特許6865819メモリ・セル構造、メモリ・セル・システム、およびメモリ・セル構造を製造するための方法
<>
  • 特許6865819-メモリ・セル構造、メモリ・セル・システム、およびメモリ・セル構造を製造するための方法 図000002
  • 特許6865819-メモリ・セル構造、メモリ・セル・システム、およびメモリ・セル構造を製造するための方法 図000003
  • 特許6865819-メモリ・セル構造、メモリ・セル・システム、およびメモリ・セル構造を製造するための方法 図000004
  • 特許6865819-メモリ・セル構造、メモリ・セル・システム、およびメモリ・セル構造を製造するための方法 図000005
  • 特許6865819-メモリ・セル構造、メモリ・セル・システム、およびメモリ・セル構造を製造するための方法 図000006
  • 特許6865819-メモリ・セル構造、メモリ・セル・システム、およびメモリ・セル構造を製造するための方法 図000007
  • 特許6865819-メモリ・セル構造、メモリ・セル・システム、およびメモリ・セル構造を製造するための方法 図000008
  • 特許6865819-メモリ・セル構造、メモリ・セル・システム、およびメモリ・セル構造を製造するための方法 図000009
  • 特許6865819-メモリ・セル構造、メモリ・セル・システム、およびメモリ・セル構造を製造するための方法 図000010
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6865819
(24)【登録日】2021年4月8日
(45)【発行日】2021年4月28日
(54)【発明の名称】メモリ・セル構造、メモリ・セル・システム、およびメモリ・セル構造を製造するための方法
(51)【国際特許分類】
   G11C 11/54 20060101AFI20210419BHJP
   G06N 3/063 20060101ALI20210419BHJP
   G06G 7/60 20060101ALI20210419BHJP
【FI】
   G11C11/54
   G06N3/063
   G06G7/60
【請求項の数】11
【全頁数】16
(21)【出願番号】特願2019-521693(P2019-521693)
(86)(22)【出願日】2017年10月25日
(65)【公表番号】特表2019-537187(P2019-537187A)
(43)【公表日】2019年12月19日
(86)【国際出願番号】IB2017056618
(87)【国際公開番号】WO2018087617
(87)【国際公開日】20180517
【審査請求日】2020年2月28日
(31)【優先権主張番号】15/346,841
(32)【優先日】2016年11月9日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】503447036
【氏名又は名称】サムスン エレクトロニクス カンパニー リミテッド
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100091214
【弁理士】
【氏名又は名称】大貫 進介
(72)【発明者】
【氏名】安田 岳雄
(72)【発明者】
【氏名】細川 浩二
(72)【発明者】
【氏名】石井 正俊
【審査官】 堀田 和義
(56)【参考文献】
【文献】 特開平3−250244(JP,A)
【文献】 米国特許出願公開第2012/0133538(US,A1)
【文献】 特開平4−177699(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G11C 11/54
G06N 3/063
G06G 7/60
(57)【特許請求の範囲】
【請求項1】
メモリ・セル構造であって、
複数のセル・コンポーネントを含むシナプス・メモリ・セルであって、前記複数のセル・コンポーネントは互いに異なる数の単位セルを含む、前記シナプス・メモリ・セルと、
前記シナプス・メモリ・セルにシナプス状態を書き込むように構成された複数の書き込み線であって、前記複数の書き込み線の各々が、前記複数のセル・コンポーネントのうちの対応するセル・コンポーネントに含まれる前記単位セルの全てに同時に所定の数の状態の第2の組を書き込むことによって、前記所定の数の状態の第1の組を、前記対応するセル・コンポーネントに書き込むように構成され、前記第1の組は、前記第2の組と、前記対応するセル・コンポーネントに含まれる前記単位セルの数とに依拠する、前記複数の書き込み線と、
前記シナプス・メモリ・セルから前記シナプス状態を読み出すように構成された読み出し線であって、前記読み出し線は、前記複数のセル・コンポーネントの全てから前記所定の数の状態の前記第1の組を同時に読み出すように更に構成される、前記読み出し線と、
を備える、メモリ・セル構造。
【請求項2】
記単位セルの各々が抵抗であり、前記所定の数の状態は、前記抵抗のコンダクタンスに関する状態である、請求項1に記載のメモリ・セル構造。
【請求項3】
記単位セルの各々はコンデンサであり、前記所定の数の状態は、前記コンデンサのキャパシタンスに関する状態である、請求項1に記載のメモリ・セル構造。
【請求項4】
前記所定の数の状態の所定の数は2であり、前記複数のセル・コンポーネントのi番目のセル・コンポーネントは、2i−1個の単位セルを含み、iは自然数であり、
前記第1の組における前記所定の数の状態の各々は、前記第2の組における前記所定の数の状態のうちの対応する状態の2i−1倍である、請求項1ないし3のいずれかに記載のメモリ・セル構造。
【請求項5】
前記所定の数の状態の所定の数は3であり、
前記複数のセル・コンポーネントのi番目のセル・コンポーネントは、3i−1個の単位セルを含み、iは自然数であり、
前記第1の組における前記所定の数の状態の各々は、前記第2の組における前記所定の数の状態のうちの対応する状態の3i−1倍である、請求項1ないし4のいずれかに記載のメモリ・セル構造。
【請求項6】
メモリ・セル・システムであって、
複数のセル・コンポーネントを含むシナプス・メモリ・セルであって、前記複数のセル・コンポーネントは互いに異なる数の単位セルを含む、前記シナプス・メモリ・セルと、
シナプス状態を前記シナプス・メモリ・セルに書き込むように構成された複数の書き込みドライバであって、前記複数の書き込みドライバの各々が、前記複数のセル・コンポーネントのうちの対応するセル・コンポーネントに含まれる前記単位セルの全てに同時に所定の数の状態の第2の組を書き込むことによって、前記所定の数の状態の第1の組を、前記対応するセル・コンポーネントに書き込むように構成され、前記第1の組は、前記第2の組と、前記対応するセル・コンポーネントに含まれる前記単位セルの数とに依拠する、前記複数の書き込みドライバと、
前記シナプス・メモリ・セルから前記シナプス状態を読み出すように構成された読み出
しドライバであって、前記読み出しドライバは、前記複数のセル・コンポーネントの全てから前記所定の数の状態の前記第1の組を同時に読み出すように更に構成される、前記読み出しドライバと、
を備える、メモリ・セル・システム。
【請求項7】
記単位セルの各々が抵抗であり、前記所定の数の状態は、前記抵抗のコンダクタンスに関する状態である、請求項6に記載のメモリ・セル・システム。
【請求項8】
記単位セルの各々はコンデンサであり、前記所定の数の状態は、前記コンデンサのキャパシタンスに関する状態である、請求項6に記載のメモリ・セル・システム。
【請求項9】
前記所定の数の状態の所定の数は2であり、
前記複数のセル・コンポーネントのi番目のセル・コンポーネントは、2i−1個の単位セルを含み、iは自然数であり、
前記第1の組における前記所定の数の状態の各々は、前記第2の組における前記所定の数の状態のうちの対応する状態の2i−1倍である、請求項6ないし8のいずれかに記載のメモリ・セル・システム。
【請求項10】
前記所定の数の状態の所定の数は3であり、
前記複数のセル・コンポーネントのi番目のセル・コンポーネントは、3i−1個の単位セルを含み、iは自然数であり、
前記第1の組における前記所定の数の状態の各々は、前記第2の組における前記所定の数の状態のうちの対応する状態の3i−1倍である、請求項6ないし9のいずれかに記載のメモリ・セル・システム。
【請求項11】
メモリ・セル構造を製造するための方法であって、
複数の単位セルを準備することと、
複数のセル・コンポーネントを構成することであって、前記複数のセル・コンポーネントは、前記複数の単位セルのうち互いに異なる数の単位セルを含む、前記構成することと、
前記複数のセル・コンポーネントを含むシナプス・メモリ・セルを構成することと、
前記シナプス・メモリ・セルにシナプス状態を書き込むように構成された複数の書き込み線を配置することであって、前記複数の書き込み線の各々は、前記複数のセル・コンポーネントのうちの対応するセル・コンポーネントに含まれる前記単位セルの全てに同時に所定の数の状態の第2の組を書き込むことによって、前記所定の数の状態の第1の組を、前記対応するセル・コンポーネントに書き込むように構成され、前記第1の組は、前記第2の組と、前記対応するセル・コンポーネントに含まれる前記単位セルの数とに依拠する、前記配置することと、
前記シナプス・メモリ・セルから前記シナプス状態を読み出すように構成された読み出し線を配置することであって、前記読み出し線は、前記複数のセル・コンポーネントの全てから前記所定の数の状態の前記第1の組を同時に読み出すように更に構成される、前記配置することと、
を含む、メモリ・セル構造を製造するための方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、メモリ・セル構造に関する。
【背景技術】
【0002】
最近では、メモリ・セル構造に関する様々な技法が知られている。ニューロモーフィック・システムのハードウェア実装は、シナプス・メモリならびにニューロン動作ブロックおよび軸索接続ネットワークを含む。
【0003】
シナプス・メモリに関して、オフライン学習を用いたシステムが既知である。このモードでは、シナプス・メモリ・データは更新されない。なぜなら、メモリ書き込み動作は、オフライン学習動作モードでのみアクティベートされるためである。
【0004】
他方で、オンライン学習を用いたシステムも既知である。シナプス・メモリの性能によってシステムの性能が決まる。シナプス・メモリ・セルは、2つのタイプ、すなわち、アナログ・シナプス・セル・タイプおよびデジタル・シナプス・セル・タイプに分類される。
【0005】
双方のタイプが欠点を有する。シナプス・セルは、これらの欠点が解決される場合、はるかに簡便かつ厳密に制御されることになる。したがって、当技術分野において、上述した問題に対処することが必要とされている。
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明は、ニューロモーフィックのハードウェア実装に関連するメモリ・セル構造、メモリ・セル・システム、およびメモリ・セル構造を製造するための方法を提供する。
【課題を解決するための手段】
【0007】
第1の態様の観点から、このメモリ・セル構造は、複数のセル・コンポーネントを含むシナプス・メモリ・セルであって、複数のセル・コンポーネントの各々は少なくとも1つの単位セルを含む、シナプス・メモリ・セルと、シナプス・メモリ・セルにシナプス状態を書き込むように構成された複数の書き込み線であって、複数の書き込み線の各々が、複数のセル・コンポーネントのうちの対応するセル・コンポーネントに含まれる少なくとも1つの単位セルの全てに所定の数の状態の第2の組を書き込むことによって、所定の数の状態の第1の組を、対応するセル・コンポーネントに書き込むように構成され、第1の組は、第2の組と、対応するセル・コンポーネントに含まれる少なくとも1つの単位セルの数とに依拠する、複数の書き込み線と、シナプス・メモリ・セルからシナプス状態を読み出すように構成された読み出し線であって、読み出し線は、複数のセル・コンポーネントの全てから所定の数の状態の第1の組を同時に読み出すように更に構成される、読み出し線と、を備える。
【0008】
更なる態様の観点から、このメモリ・セル・システムは、複数のセル・コンポーネントを含むシナプス・メモリ・セルであって、複数のセル・コンポーネントの各々は少なくとも1つの単位セルを含む、シナプス・メモリ・セルと、シナプス状態をシナプス・メモリ・セルに書き込むように構成された複数の書き込みドライバであって、複数の書き込みドライバの各々が、複数のセル・コンポーネントのうちの対応するセル・コンポーネントに含まれる少なくとも1つの単位セルの全てに所定の数の状態の第2の組を書き込むことによって、所定の数の状態の第1の組を、対応するセル・コンポーネントに書き込むように構成され、第1の組は、第2の組と、対応するセル・コンポーネントに含まれる少なくとも1つの単位セルの数とに依拠する、複数の書き込みドライバと、シナプス・メモリ・セルからシナプス状態を読み出すように構成された読み出しドライバであって、読み出しドライバは、複数のセル・コンポーネントの全てから所定の数の状態の第1の組を同時に読み出すように更に構成される、読み出しドライバと、を備える。
【0009】
更なる態様の観点から、この方法は、複数の単位セルを準備することと、複数のセル・コンポーネントを構成することであって、複数のセル・コンポーネントの各々は、複数の単位セルのうちの少なくとも1つの単位セルを含む、構成することと、複数のセル・コンポーネントを含むシナプス・メモリ・セルを構成することと、シナプス・メモリ・セルにシナプス状態を書き込むように構成された複数の書き込み線を配置することであって、複数の書き込み線の各々は、複数のセル・コンポーネントのうちの対応するセル・コンポーネントに含まれる少なくとも1つの単位セルの全てに所定の数の状態の第2の組を書き込むことによって、所定の数の状態の第1の組を、対応するセル・コンポーネントに書き込むように構成され、第1の組は、第2の組と、対応するセル・コンポーネントに含まれる少なくとも1つの単位セルの数とに依拠する、配置することと、シナプス・メモリ・セルからシナプス状態を読み出すように構成された読み出し線を配置することであって、読み出し線は、複数のセル・コンポーネントの全てから所定の数の状態の第1の組を同時に読み出すように更に構成される、配置することと、を含む。
【0010】
本発明の実施形態によれば、メモリ・セル構造は、複数のセル・コンポーネントを含むシナプス・メモリ・セルを含む。複数のセル・コンポーネントの各々は少なくとも1つの単位セルを含む。メモリ・セル構造は、シナプス・メモリ・セルにシナプス状態を書き込むように配置された複数の書き込み線を更に備える。複数の書き込み線の各々が、複数のセル・コンポーネントのうちの対応するセル・コンポーネントに含まれる少なくとも1つの単位セルの全てに所定の数の状態の第2の組のうちの1つを書き込むことによって、所定の数の状態の第1の組のうちの1つを、対応するセル・コンポーネントに書き込むように構成される。第1の組は、第2の組と、対応するセル・コンポーネントに含まれる少なくとも1つの単位セルの数とに依拠する。メモリ・セル構造は、シナプス・メモリ・セルからシナプス状態を読み出すように配置された読み出し線を更に含む。読み出し線は、複数のセル・コンポーネントの全てから所定の数の状態の第1の組のうちの1つを同時に読み出すように構成される。
【0011】
本発明の別の実施形態によれば、メモリ・セル・システムは、複数のセル・コンポーネントを含むシナプス・メモリ・セルを含む。複数のセル・コンポーネントの各々は少なくとも1つの単位セルを含む。メモリ・セル・システムは、シナプス状態をシナプス・メモリ・セルに書き込むように構成された複数の書き込みドライバを更に備える。複数の書き込みドライバの各々が、複数のセル・コンポーネントのうちの対応するセル・コンポーネントに含まれる少なくとも1つの単位セルの全てに所定の数の状態の第2の組のうちの1つを書き込むことによって、所定の数の状態の第1の組のうちの1つを、対応するセル・コンポーネントに書き込むように構成される。第1の組は、第2の組と、対応するセル・コンポーネントに含まれる少なくとも1つの単位セルの数とに依拠する。メモリ・セル・システムは、シナプス・メモリ・セルからシナプス状態を読み出すように構成された読み出しドライバを更に含む。読み出しドライバは、複数のセル・コンポーネントの全てから所定の数の状態の第1の組のうちの1つを同時に読み出すように構成される。
【0012】
本発明のまた別の実施形態によれば、本方法は、複数の単位セルを準備することを含む。本方法は、各々が複数の単位セルのうちの少なくとも1つの単位セルを含む複数のセル・コンポーネントを構成することを含む。本方法は、複数のセル・コンポーネントを含むシナプス・メモリ・セルを構成することを含む。本方法は、シナプス・メモリ・セルにシナプス状態を書き込むための複数の書き込み線を配置することを更に含む。複数の書き込み線の各々は、複数のセル・コンポーネントのうちの対応するセル・コンポーネントに含まれる少なくとも1つの単位セルの全てに所定の数の状態の第2の組のうちの1つを書き込むことによって、所定の数の状態の第1の組のうちの1つを、対応するセル・コンポーネントに書き込むように構成される。第1の組は、第2の組と、対応するセル・コンポーネントに含まれる少なくとも1つの単位セルの数とに依拠する。本方法は、シナプス・メモリ・セルからシナプス状態を読み出すための読み出し線を配置することを更に含む。読み出し線は、複数のセル・コンポーネントの全てから所定の数の状態の第1の組のうちの1つを同時に読み出すように構成される。
【0013】
ここで、本発明を、単なる例として、以下の図に示されるような好ましい実施形態を参照して説明する。
【図面の簡単な説明】
【0014】
図1】本発明の好ましい実施形態を実施することができる、従来技術によるクロス・バー・アレイ構造を有するシナプス・メモリを示す。
図2】例示的な実施形態による、シナプス・メモリ・セルのセル・コンポーネントを示す。
図3】例示的な実施形態による、シナプス・メモリ・セルのセル・コンポーネントを示す。
図4】例示的な実施形態による、シナプス・メモリ・セルのセル・コンポーネントを示す。
図5】例示的な実施形態による、シナプス・メモリ・セルのセル・コンポーネントを示す。
図6】例示的な実施形態による、シナプス・メモリ・セル・システムを示す。
図7】本発明の実施形態による、書き込みドライバからの信号出力、読み出しドライバからの信号出力、およびシナプス・メモリ・セルの状態遷移のタイミングを示すタイム・チャートを示す。
図8】例示的な実施形態による、シナプス・メモリ・システム、およびシナプス・メモリ・システムにおけるデータ・フローを示す。
図9】例示的な実施形態による、シナプス・メモリ・セル・システムを製造するための方法を表すブロック/フロー図を示す。
【発明を実施するための形態】
【0015】
以下に、添付の図面を参照して本発明の例示的な実施形態を詳細に説明する。
【0016】
本発明は、以下に与える例示的な実施形態に限定されるものではなく、本発明の範囲内で様々な変更を伴って実施され得ることに留意されたい。加えて、本明細書において用いられる図面は説明を目的としており、実際の寸法を示さない場合がある。
【0017】
ニューロモーフィック・システムのハードウェア実装は、シナプス・メモリ、ならびにニューロン体(neuron body)および軸索接続ネットワークを含むことができる。図1を参照すると、クロス・バー・アレイ構造を有するシナプス・メモリ100が示されている。図1に示すように、シナプス・メモリ100は、全ての軸索20および全ての樹状突起30の全ての交点に配置された(arranged)/配置された(placed)シナプス・メモリ・セル10を含むことができる。シナプス・メモリ・セル10の各々は、シナプス状態の1つの例としてシナプス重み値を記憶することができる。シナプス重み値は、軸索20のうちの対応する軸索と、樹状突起30のうちの対応する樹状突起との間のシナプス接続の重みを示す。
【0018】
シナプス・メモリ・セル10は、2つのタイプ、すなわち、アナログ・シナプス・メモリ・セル(例えば、アナログ・セル)およびデジタル・シナプス・メモリ・セル(例えば、デジタル・セル)に分類される。
【0019】
アナログ・セルは、連続したシナプス重み値を表すことができる。しかしながら、一定の精度レベルでシナプス重み値を制御することは困難である。また、そのような精度レベル内でシナプス重み値を制御するには、複雑な周辺回路が必要である。更に、シナプス・メモリ・セル10の性能の変動は、ニューロモーフィック・システムの性能に直接影響を及ぼす。
【0020】
デジタル・セルは、シングル・レベル・セル(SLC)およびマルチ・レベル・セル(MLC)に更に分類することができる。
【0021】
SLCは、2つの状態(例えば、重状態(heavy state)および軽状態(light state))を区別するのに単一の閾値レベルを用いる。SLCは、プレ・シナプスとポスト・シナプスとの間の接続を有する状態または有しない状態のみを表すことができる。このため、SLCは、ほとんどの場合、3つ以上のシナプス重み値を表すには他のメモリを必要とする。したがって、複数のメモリへのアクセスが必要とされる。
【0022】
MLCは、複数の閾値レベルを用いる。閾値レベルの数がn(>1)であると仮定すると、MLCは、(n+1)個のシナプス重み値を表すことができる。例えば、nが7の場合、8個のシナプス重み値を1つのMLCに記憶することができる。MLCは、SLCよりも正確なシナプス重み値を表すことができる。しかしながら、シナプス重み値および上記のアナログ・セルを制御するのは困難である。更に、MLCは、シナプス重み値の読み取りおよび書き込みのために、高分解能の検知回路および複雑な符号化/復号回路を必要とする。
【0023】
シナプス・メモリ・セル10は、これらの欠点が解決される場合、より簡便かつ厳密に制御される。
【0024】
以下で説明する単純な構造を有するシナプス・メモリ・セル10は、MLCよりも正確である。このシナプス・メモリ・セル10は、高分解能の検知回路も、複雑な符号化/復号回路も必要としない。
【0025】
図2図5を参照すると、例示的な実施形態によるシナプス・メモリ・セル10のセル・コンポーネントが示されている。例示的な実施形態において、シナプス・メモリ・セル10は、複数の単位抵抗を含む抵抗変化型メモリ・セルであると仮定される。複数の単位抵抗の各々は、コンダクタンス値(例えば、抵抗値Runitの逆数)とすることができる重み値Wunitを有すると仮定される。例示的な実施形態では、複数の単位抵抗の各々は、上述したSLCを用いて実施されると仮定される。すなわち、重み値Wunitは、2つの状態、すなわち、重状態および軽状態を有すると仮定される。例えば、重み値Wunitは、重状態を有するとき、1とすることができ、軽状態を有するとき、0とすることができる。
【0026】
実施形態において、各々が2i−1個の単位抵抗からなるセル・コンポーネントを準備することができる。ここで、iは1〜nである。iが1でない場合、2i−1個の単位抵抗は、並列に接続することができる。このため、2i−1個の単位抵抗からなるセル・コンポーネントは、Wunitの2i−1倍で表される重み値(Runitの2i−1分の1(1/2i−1)で表される抵抗値)を有することができる。すなわち、2i−1個の単位抵抗からなるセル・コンポーネントは、重み値「0」または「2i−1」を有することができる。
【0027】
例えば、図2は、i=1の場合のセル・コンポーネントであるセル・コンポーネント11を示す。セル・コンポーネント11は、1つの単位抵抗111を含むことができる。このため、セル・コンポーネント11は、Wunitで表される重み値を有することができる。すなわち、セル・コンポーネント11は、重み値「0」または「1」を有することができる。重み値「0」および「1」は、所定の数の状態の第1の組の1つの例としての役割を果たす。i=1の場合の単一のセル・コンポーネントの場合、重み値「0」および「1」は、所定の数の状態の第2の組の1つの例としての役割も果たす。更に、図2は、セル・コンポーネント11の最上位ノード(TN)および最下位ノード(BN)を示す。
【0028】
図3は、i=2の場合のセル・コンポーネントであるセル・コンポーネント12を示す。セル・コンポーネント12は、並列に接続された単位抵抗121および122を含むことができる。このため、セル・コンポーネント12は、Wunitの2倍で表される重み値(Runitの2分の1(1/2)で表される抵抗値)を有することができる。すなわち、セル・コンポーネント12は、重み値「0」または「2」を有することができる。重み値「0」および「2」は、所定の数の状態の第1の組の1つの例としての役割を果たす。更に、図3は、単位抵抗121および122の最上位ノードを接続することによって形成されるTN、ならびに単位抵抗121および122の最下位ノードを接続することによって形成されるBNを示す。
【0029】
図4は、i=3の場合のセル・コンポーネントであるセル・コンポーネント13を示す。セル・コンポーネント13は、並列に接続された単位抵抗131〜134を含むことができる。このため、セル・コンポーネント13は、Wunitの4倍で表される重み値(Runitの4分の1(1/4)で表される抵抗値)を有することができる。すなわち、セル・コンポーネント13は、重み値「0」または「4」を有することができる。重み値「0」および「4」は、所定の数の状態の第1の組の1つの例としての役割を果たす。更に、図4は、単位抵抗131〜134の最上位ノードを接続することによって形成されるTN、ならびに単位抵抗131〜134の最下位ノードを接続することによって形成されるBNを示す。
【0030】
同様に、i=4〜i=n−1の場合のセル・コンポーネントを形成することができる。ここで図5を参照すると、図5は、i=nの場合のセル・コンポーネントであるセル・コンポーネント1Nを示す。セル・コンポーネント1Nは、並列に接続された2n−1個の単位抵抗を含むことができる。このため、セル・コンポーネント1Nは、Wunitの2n−1倍で表される重み値(Runitの2n−1分の1(1/2n−1)で表される抵抗値)を有することができる。すなわち、セル・コンポーネント1Nは、重み値「0」または「2n−1」を有することができる。重み値「0」および「2n−1」は、所定の数の状態の第1の組の1つの例としての役割を果たす。更に、図5は、2n−1個の単位抵抗の最上位ノードを接続することによって形成されるTN、ならびに2n−1個の単位抵抗の最下位ノードを接続することによって形成されるBNを示す。例えば、i=1〜i=3の場合のこれらのセル・コンポーネントを組み合わせることによって、シナプス重み値「0」〜「7」を表すことができる。すなわち、i=1〜i=nの場合のこれらのセル・コンポーネントを用いて、n桁バイナリ数のためのシナプス重み値を表すことができる。
【0031】
図6を参照すると、例示的な実施形態によるシナプス・メモリ・セル・システムが示されている。
【0032】
図6は、まず、それぞれi=1〜i=6の場合のセル・コンポーネントであるセル・コンポーネント11〜16を用いたシナプス・メモリ・セル10の構造を示す。図2および図6に示されているように、セル・コンポーネント11は、1(=2)個の単位抵抗を用いて実装されると仮定される。図3および図6に示されているように、セル・コンポーネント12は、2(=2)個の単位抵抗を用いて実装されると仮定される。図4および図6に示されているように、セル・コンポーネント13は、4(=2)個の単位抵抗を用いて実装されると仮定される。図5(i=4)および図6に示されているように、セル・コンポーネント14は、8(=2)個の単位抵抗を用いて実装されると仮定される。図5(i=5)および図6に示されているように、セル・コンポーネント15は、16(=2)個の単位抵抗を用いて実装されると仮定される。図5(i=6)および図6に示されているように、セル・コンポーネント16は、32(=2)個の単位抵抗を用いて実装されることが仮定される。このため、図6において、1つのシナプス・セルは、63(=2−1)個の単位抵抗を用いて実装されると仮定される。
【0033】
図6は、シナプス・メモリ・セル10のために機能する構造要素として、書き込みドライバ・アレイ40、読み出しドライバ50、電流センサ60、ニューロン体70、重み評価器80および重み符号化器90を更に示す。
【0034】
書き込みドライバ・アレイ40は、学習動作入力または認識動作入力に応答して、シナプス重み値をシナプス・メモリ・セル10に書き込むように構成することができる。特に、書き込みドライバ・アレイ40は、それぞれ、セル・コンポーネント11〜16のための書き込みドライバ41〜46を含むことができる。セル・コンポーネント11〜16の各々のTNは、書き込み線を介して、書き込みドライバ・アレイ40における書き込みドライバ41〜46のうちの対応する書き込みドライバの出力ノードに接続することができる。このため、書き込みドライバ41〜46は、対応する書き込み線を介して、セル・コンポーネント11〜16のうちの対応するセル・コンポーネントを構成する全ての単位抵抗に重み値「0」または「1」を書き込むことができる。更に、セル・コンポーネント11〜16のBNは、書き込みドライバ41〜46のDC共通ノードに共に接続することができる。
【0035】
読み出しドライバ50は、認識動作入力に応答して、シナプス・メモリ・セル10からシナプス重み値を読み出すように構成することができる。セル・コンポーネント11〜16のTNは、読み出しドライバ50の出力ノードに共に接続することができる。このため、読み出しドライバ50は、セル・コンポーネント11〜16の全てに同時に電流を印加することができる。
【0036】
また、電流センサ60は、シナプス・メモリ・セル10からシナプス重み値を読み出すように構成することもできる。セル・コンポーネント11〜16のBNは、読み出し線を介して電流センサ60に共に接続することができる。読み出しドライバ50のDC共通ノードも電流センサ60に接続することができる。このため、電流センサ60は、読み出し線を介して、セル・コンポーネント11〜16の全てからの全電流を検知することができる。
【0037】
ニューロン体70は、ニューロン動作を行うことができる。特に、ニューロン体70は、電流センサ60によって検知される全電流に基づいてシナプス重み値を取得することができる。次に、ニューロン体70は、シナプス重み値を、認識動作出力として、別のシナプス・メモリ・システムおよび重み評価器80に出力することができる。セル・コンポーネントの多数の単位抵抗が重み値「1」を有する場合、セル・コンポーネントは、大きな電流を通すことができる。他方で、セル・コンポーネントの多数の単位抵抗が重み値「0」を有する場合、セル・コンポーネントは、小さな電流を通すことができる。したがって、電流センサ60によって検知される全電流は、シナプス・メモリ・セル10に記憶されるシナプス重み値を表すことができる。
【0038】
重み評価器80は、ニューロン体70のニューロン出力信号を用いて現在のシナプス重み値を評価し、次のシナプス重み値を決定することができる。詳細には、重み評価器80は、ニューロン体70から取得されたニューロン出力信号を、学習動作入力として与えられた所望の出力信号と比較し、シナプス・メモリ・セル10に記憶された現在のシナプス重み値を更新するのに用いる次のシナプス重み値を計算することができる。
【0039】
重み符号化器90は、重み評価器80によって計算される次のシナプス重み値を符号化することができる。特に、重み符号化器90は、次のシナプス重み値を、各々が書き込みドライバ41〜46のうちの対応する書き込みドライバに供給されるバイナリ符号化値に符号化し、書き込みドライバ41〜46の各々が、バイナリ符号化値のうちの対応するバイナリ符号化値をセル・コンポーネント11〜16のうちの対応するセル・コンポーネントに書き込むことができるように、書き込みドライバ41〜46を駆動することができる。
【0040】
図7を参照すると、タイム・チャート450、550および150が示されている。タイム・チャート450は、シナプス・メモリ・セル10に書き込む際の、書き込みドライバ41〜46のうちの任意の書き込みドライバからの信号出力のタイミングを示す。タイム・チャート550は、シナプス・メモリ・セル10から読み出す際の、読み出しドライバ50からの信号出力のタイミングを示す。更に、タイム・チャート150は、シナプス・メモリ・セル10の状態遷移のタイミングを示す。
【0041】
シナプス重み値をシナプス・メモリ・セル10に書き込むために、書き込みドライバ41〜46の各々を、それぞれセットまたはリセット閾値レベルよりも高くまたは低く駆動することができる。
【0042】
第1に、書き込みドライバ41〜46の全てをアクティベートし、書き込みドライバ41〜46がセル・コンポーネント11〜16をリセット方向(例えば、リセット閾値レベルよりも低い)に駆動することができるようにすることによって、セル・コンポーネント11〜16の全てが、重み値「0」を与える軽状態にプリセットされることが仮定される。タイム・チャート450において、この動作は、タイム・チャート150の状態「Reset1」において行われる。
【0043】
次に、書き込みドライバ41〜46間の選択された書き込みドライバをアクティベートし、これらの選択された書き込みドライバが選択されたセル・コンポーネントをセット方向(例えば、セット閾値レベルよりも高い)に駆動することができるようにすることによって、セル・コンポーネント11〜16間の選択されたセル・コンポーネントのみが、重み値「1」を与える重状態にセットされることが仮定される。タイム・チャート450において、この動作は、タイム・チャート150の状態「Set1」において行われる。
【0044】
次に、選択された書き込みドライバをアクティベートし、これらの選択された書き込みドライバが選択されたセル・コンポーネントをリセット方向(例えば、リセット閾値レベルよりも低い)に駆動することができるようにすることによって、選択されたセル・コンポーネントを、重み値「0」を与える軽状態にセットすることができる。タイム・チャート450において、この動作は、タイム・チャート150の状態「Reset2」において行われる。
【0045】
シナプス・メモリ・セル10からシナプス重み値を読み出すために、読み出しドライバ50をアクティベートすることができる。タイム・チャート550において、この動作は、タイム・チャート150の状態「Read1」および「Read2」において行われる。タイミングの各々において、シナプス重みに比例した、セル・コンポーネント11〜16の全てからの全電流出力を電流センサ60によって検知することができる。
【0046】
読み出しドライバ50からの信号出力のレベルは、シナプス・メモリ・セル10に記憶されたシナプス重み値が読み出しドライバ50からの信号出力によって破壊(例えば、上書き)されないように、セット閾値レベルよりも低くすることができることに留意されたい。アナログ・セルまたはMLC構造において、単位抵抗の厳密な制御は必須である。しかしながら、この構造により、単位抵抗のそのような厳密な制御を回避することができる。この理由は、SLCのように全ての単位抵抗が2つの状態のみで制御され、MLCと異なり、ベリファイ読み出し(verify read)も追加の書き込みも必要でないためである。
【0047】
更に、駆動の競合を回避するために、書き込み(リセット/セット)および読み出しのタイミングを排他的に分離することができる。すなわち、書き込みドライバ・アレイ40および読み出しドライバ50は、同時にアクティベートされないように制御することができる。例えば、書き込みドライバ・アレイ40は、読み出しドライバ50がシナプス・メモリ・セル10を駆動している間、高インピーダンス(Hi−Z)状態に保持しておくことができ、読み出しドライバ50は、書き込みドライバ・アレイ40がシナプス・メモリ・セル10を駆動している間、高インピーダンス(Hi−Z)状態に保持しておくことができる。
【0048】
図8を参照すると、図6のシナプス・メモリ・セル・システムを含むニューロ・シナプティック・コア・システムの例が示されている。例示的な実施形態による、このシステムにおけるデータ・フローが図8に示されている。図8において、シナプス・メモリ100は、オンライン学習を用いてこのシステムを実施するために応用されることが仮定される。
【0049】
図8に示されているように、ニューロ・シナプティック・コア・システムは、シナプス・メモリ100、書き込みドライバ・アレイ400、読み出しドライバ500、電流センサ600、ニューロン体700、重み評価器800および重み符号化器900を含むことができる。
【0050】
シナプス・メモリ100は、図1に示されているような複数のシナプス・メモリ・セル10を含むことができる。
【0051】
書き込みドライバ・アレイ400は複数の書き込みドライバ・アレイを含むことができ、そのうちの1つが図6において書き込みドライバ・アレイ40として示されている。複数の書き込みドライバ・アレイの各々は、図6に示す共通構造を用いて個々のシナプス・メモリ・セル10に接続することができる。
【0052】
読み出しドライバ500は複数の読み出しドライバを含むことができ、そのうちの1つが図6において読み出しドライバ・アレイ50として示されている。複数の読み出しドライバの各々は、図6に示す共通構造を用いて個々のシナプス・メモリ・セル10に接続することができる。
【0053】
電流センサ600は複数の電流センサを含むことができ、そのうちの1つが図6において電流センサ60として示されている。電流センサの各々は、図6に示す共通構造を用いて個々のシナプス・メモリ・セル10に接続することができる。
【0054】
ニューロン体700は複数の複数のニューロン体を含むことができ、そのうちの1つが図6においてニューロン体70として示されている。ニューロン体の各々は、図6に示す共通構造を用いて個々のメモリ・セル10に結合された個々の電流センサ60に接続することができる。
【0055】
重み評価器800は複数の重み評価器を含むことができ、そのうちの1つが図6において重み評価器80として示されている。重み評価器の各々は、図6に示す共通構造を用いて個々の書き込みドライバ・アレイ40を通じて個々のシナプス・メモリ・セル10に結合された個々の重み符号化器90に接続することができる。
【0056】
重み符号化器900は複数の重み符号化器を含むことができ、そのうちの1つが図6において重み符号化器90として示されている。重み符号化器の各々は、図6に示す共通構造を用いて個々のシナプス・メモリ・セル10に結合された個々の書き込みドライバ・アレイ40に接続することができる。
【0057】
図8は、斜線矢印によって示される学習動作モードにおけるデータ・フロー、および白抜き矢印によって示された認識動作モードにおけるデータ・フローを更に示す。
【0058】
図8に示すような学習動作モードにおいて、書き込みドライバ・アレイ400のうちの1つは、認識動作入力に応答して、シナプス・メモリ100内の対応するシナプス・メモリ・セル10に電圧を印加することができる。この事例において、書き込みドライバ・アレイ400のうちの1つが、図7のリセット閾値レベルおよびセット閾値レベル間のレベルの電圧を印加する場合、シナプス・メモリ・セル10に記憶されたシナプス重み値は上書きされない。
【0059】
次に、電流センサ600のうちの1つが、シナプス・メモリ・セル10に結合された対応する樹状突起30からの全電流を検知することができる。ニューロン体700のうちの1つが、電流センサ600のうちの1つによって検知された全電流に基づいてニューロン膜電位値を計算し、重み評価器800のうちの1つにニューロン出力を供給することができる。重み評価器800のうちの1つは、ニューロン体700のうちの1つから取得したニューロン出力を、学習動作入力と比較し、比較結果に基づいて、シナプス・メモリ・セル10のコンテンツを更新するのに用いられる次のシナプス重み値を計算することができる。重み符号化器900のうちの1つは、次のシナプス重み値をバイナリ符号化値に符号化し、書き込みドライバ・アレイ400のうちの1つがバイナリ符号化値をシナプス・メモリ・セル10に書き込むことができるように、この書き込みドライバ・アレイを駆動することができる。書き込みドライバ・アレイ400のうちの1つは、シナプス・メモリ・セル10に対し、バイナリ符号化値をシナプス重み値として駆動することができる。
【0060】
認識動作モードにおいて、図8に示すように、読み出しドライバ500は、認識動作入力に応答して、シナプス・メモリ100内のシナプス・メモリ・セル10に結合された軸索20に電流を印加することができる。
【0061】
次に、電流センサ600は、シナプス・メモリ・セル10に結合された樹状突起30からの全電流を検知することができる。ニューロン体700は、電流センサ600によって検知された全電流に基づいてニューロン膜電位を計算し、ニューロン出力を認識動作出力として別のシナプス・メモリ・システムに供給することができる。
【0062】
図9を参照すると、実施形態による、書き込みドライバおよび読み出しドライバを含むシナプス・メモリ・セル・システムの製造手順を表すブロック/フロー図が示されている。
【0063】
図9に示すように、2つの重み値のうちの1つの書き込みおよび読み出しのための最小サイズの複数の単位抵抗を準備することができる(ステップ101)。例えば、2つの重み値は、重状態に対応する重み値「1」および軽状態に対応する重み値「0」とすることができる。複数の単位抵抗を並列に接続して、複数のセル・コンポーネントを構成することができる(ステップ102)。次に、二値加重された(binary weighted)数の単位抵抗を含む異なる種類のセル・コンポーネント11〜16を準備することができる(ステップ103)。異なる種類のセル・コンポーネント11〜16を組み合わせて、シナプス・メモリ・セル10を構成することができる(ステップ104)。
【0064】
その一方で、シナプス・メモリ・セル10内のセル・コンポーネント11〜16に別個であるが並列して同時に重み値を書き込むための書き込みドライバ41〜46を準備することができる(ステップ105)。すなわち、デジタル書き込みのための書き込みドライバ41〜46を準備することができる。このステップは、そのようなデジタル書き込みのために用いられる書き込み線を配置することを更に含むことができる。シナプス・メモリ・セル10においてセル・コンポーネント11〜16からシナプス重み値を同時に読み出すための読み出しドライバ50を準備することができる(ステップ106)。すなわち、アナログ読み出しのための読み出しドライバ50を準備することができる。このステップは、そのようなアナログ読み出しのために用いられる読み出し線を配置することを更に含むことができる。
【0065】
次に、代替的な例示的実施形態を説明する。
【0066】
代替的な例示的実施形態において、シナプス・メモリ・セル10は、複数の単位コンデンサを含む容量性メモリ・セルであると仮定される。例示的な実施形態における抵抗変化型メモリ・セルは、容量性メモリ・セルと置き換えることができる。なぜなら、シナプス重み値は、抵抗変化型メモリ・セルのコンダクタンス値、および容量性メモリ・セルのキャパシタンス値の双方によって同じように表すことができるためである。容量性メモリ・セルのキャパシタンス値は、抵抗変化型メモリ・セルのコンダクタンス値のように、単位コンデンサが並列に接続されているとき、2倍にすることができ、単位コンデンサが直列に接続されているとき、半分にすることができる。代替的な例示的実施形態において、電流センサ(current sensor)60(例えば、電流センサ(current sensors)600)は、キャパシタンス・センサ(capacitance sensor)(例えば、キャパシタンス・センサ(capacitance sensors))等と置き換えることもできることに留意されたい。更に、抵抗変化型メモリ・セルのコンダクタンス値を抵抗変化型メモリ・セルに対して一般化することができるのと同様に、容量性メモリ・セルのキャパシタンス値を単位セルの状態に一般化することができる。
【0067】
続いて、別の代替的な例示的実施形態を説明する。
【0068】
第2の代替的な例示的実施形態において、重み値Wunitは、3つの状態、すなわち、重状態、中状態および軽状態を有することが仮定される。例えば、重み値Wunitは、重状態を有するとき2とすることができ、中状態を有するとき1とすることができ、軽状態を有するとき0とすることができる。
【0069】
第2の代替的な例示的実施形態において、各々が3i−1個の単位抵抗からなるセル・コンポーネントを準備することができる。ここで、iは1〜nである。iが1でない場合、3i−1個の単位抵抗を並列に接続することができる。このため、3i−1個の単位抵抗からなるセル・コンポーネントは、Wunitの3i−1倍で表される重み値(Runitの3i−1分の1(1/3i−1)で表される抵抗値)を有することができる。すなわち、3i−1個の単位抵抗からなるセル・コンポーネントは、重み値「0」、「3i−1」または「2×3i−1」を有することができる。
【0070】
例えば、i=1の場合のセル・コンポーネントは、重み値「0」、「1」または「2」を有することができる。重み値「0」、「1」および「2」は、所定の数の状態の第1の組の1つの例としての役割を果たす。i=1の場合の単一のセル・コンポーネントについて、重み値「0」、「1」および「2」は、所定の数の状態の第2の組の1つの例としての役割も果たす。i=2の場合のセル・コンポーネントは、重み値「0」、「3」または「6」を有することができる。重み値「0」、「3」および「6」は、所定の数の状態の第1の組の1つの例としての役割を果たす。i=3の場合のセル・コンポーネントは、重み値「0」、「9」または「18」を有することができる。重み値「0」、「9」および「18」は、所定の数の状態の第1の組の1つの例としての役割を果たす。i=1〜i=3の場合のこれらのセル・コンポーネントを組み合わせることによって、シナプス重み値「0」〜「26」を表すことができる。すなわち、i=1〜i=nの場合のこれらのセル・コンポーネントを用いて、n桁3進数のためのシナプス重み値を表すことができる。
図1
図2
図3
図4
図5
図6
図7
図8
図9