JP2021536623A - 深層学習ニューラルネットワークで使用されるアナログニューラルメモリシステムのメモリセルに対する温度補償及び漏れ補償 - Google Patents

深層学習ニューラルネットワークで使用されるアナログニューラルメモリシステムのメモリセルに対する温度補償及び漏れ補償 Download PDF

Info

Publication number
JP2021536623A
JP2021536623A JP2021510952A JP2021510952A JP2021536623A JP 2021536623 A JP2021536623 A JP 2021536623A JP 2021510952 A JP2021510952 A JP 2021510952A JP 2021510952 A JP2021510952 A JP 2021510952A JP 2021536623 A JP2021536623 A JP 2021536623A
Authority
JP
Japan
Prior art keywords
memory cell
flash memory
array
voltage
current
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.)
Granted
Application number
JP2021510952A
Other languages
English (en)
Other versions
JP7281535B2 (ja
JPWO2020046495A5 (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.)
Silicon Storage Technology Inc
Original Assignee
Silicon Storage Technology Inc
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 Silicon Storage Technology Inc filed Critical Silicon Storage Technology Inc
Publication of JP2021536623A publication Critical patent/JP2021536623A/ja
Publication of JPWO2020046495A5 publication Critical patent/JPWO2020046495A5/ja
Application granted granted Critical
Publication of JP7281535B2 publication Critical patent/JP7281535B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/54Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using elements simulating biological cells, e.g. neuron
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • 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/044Recurrent networks, e.g. Hopfield networks
    • 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/045Combinations of networks
    • 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/048Activation functions
    • 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
    • G06N3/065Analogue means
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0408Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors
    • G11C16/0425Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors comprising cells containing a merged floating gate and select transistor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2216/00Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
    • G11C2216/02Structural aspects of erasable programmable read-only memories
    • G11C2216/04Nonvolatile memory cell provided with a separate control gate for erasing the cells, i.e. erase gate, independent of the normal read control gate
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/04Arrangements for writing information into, or reading information out from, a digital store with means for avoiding disturbances due to temperature effects

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Neurology (AREA)
  • Databases & Information Systems (AREA)
  • Algebra (AREA)
  • Computer Hardware Design (AREA)
  • Non-Volatile Memory (AREA)
  • Read Only Memory (AREA)
  • Complex Calculations (AREA)

Abstract

深層学習ニューラルネットワークで使用されるアナログニューロモーフィックメモリシステムに対する温度補償及び漏れ補償を提供するための多数の実施形態が開示される。温度補償を提供するための実施形態は、デバイス、基準メモリセル、又はメモリシステムの選択されたメモリセルに対する慎重な又は連続的な適応的傾き補償及び繰り込みを実装する。メモリシステムのメモリセルで漏れ補償を提供するための実施形態は、適応的消去ゲート結合、又は制御ゲート端子への負バイアス、ワード線端子への負バイアス、若しくはソース線端子へのバイアスの印加を実装する。【選択図】図6

Description

(優先権の主張)
本出願は、2018年8月27日に出願された米国特許仮出願第62/723,398号、発明の名称「Temperature And Leakage Compensation For Memory Cells in an Analog Neural Memory System Used in a Deep Learning Neural Network」及び2018年11月7日に出願された米国特許出願第16/183,250号、発明の名称「Temperature And Leakage Compensation For Memory Cells In An Analog Neural Memory System Used In A Deep Learning Neural Network」の優先権を主張する。
(発明の分野)
深層学習ニューラルネットワークで使用されるアナログニューロモーフィックメモリシステムのメモリセルに対する温度補償及び漏れ補償を提供するための多数の実施形態が開示される。
人工ニューラルネットワークは、生物学的ニューラルネットワーク(動物の中枢神経系、特に脳)を模倣しており、多数の入力に依存し得、かつ、一般的に未知である機能を推定する又は近似するために使用される。人工ニューラルネットワークは、概して、メッセージを交換する相互接続した「ニューロン」の層を含む。
図1は、人工ニューラルネットワークを図示しており、ここで円は、入力又はニューロンの層を表す。接続(シナプスと呼ばれる)は、矢印によって表され、経験に基づいて調整され得る数値の重みを有する。これは、ニューラルネットワークが入力に適応できるようにし、学習できるようにする。典型的には、ニューラルネットワークは、複数の入力の層を含む。典型的には、1つ以上のニューロンの中間層、及びニューラルネットワークの出力を提供するニューロンの出力層が存在する。各レベルでニューロンは、シナプスから受信されたデータに基づいて個々に又は合わせて決定を行う。
高性能情報処理用の人工ニューラルネットワークの開発における主要な課題の1つは、適切なハードウェア技術の欠如である。実際には、実用ニューラルネットワークは、非常に多数のシナプスに頼り、ニューロン間の高い接続性、すなわち、非常に高度な計算的並行処理を可能にする。原理的には、このような複雑性は、デジタルスーパーコンピュータ又は専門化したグラフィック処理ユニットクラスタによって実現され得る。しかしながら、高いコストに加え、これらのアプローチはまた、主として低い精度のアナログ計算を実行するのではるかに少ないエネルギーしか消費しない生物学的ネットワークに比べてあまり良くないエネルギー効率に悩まされている。CMOSアナログ回路は、人工ニューラルネットワークに使用されてきたが、ほとんどのCMOS実装シナプス(CMOS-implemented synapses)は、多数のニューロン及びシナプスを考えると嵩高すぎていた。
出願人は以前に、参照により組み込まれる米国特許出願第15/594,439号において、シナプスとして1つ以上の不揮発性メモリアレイを利用する人工(アナログ)ニューラルネットワークを開示した。不揮発性メモリアレイは、アナログニューロモーフィックメモリとして動作する。ニューラルネットワークデバイスは、第1の複数の入力を受信するように、かつそれから第1の複数の出力を生成するように構成されている第1の複数のシナプス、及び第1の複数の出力を受信するように構成された第1の複数のニューロンを含む。第1の複数のシナプスは、半導体基板に形成された、間にチャネル領域が延在している離間したソース領域及びドレイン領域と、チャネル領域の第1の部分の上方に配設され、チャネル領域の第1の部分から絶縁された浮遊ゲートと、チャネル領域の第2の部分の上方に配設され、チャネル領域の第2の部分から絶縁された非浮遊ゲートと、を各々が含む複数のメモリセルを含む。複数のメモリセルの各々は、浮遊ゲートの多くの電子に対応する重み値を格納するように構成されている。複数のメモリセルは、第1の複数の入力に、格納された重み値を乗算して第1の複数の出力を生成するように構成されている。
アナログニューロモーフィックメモリシステムに使用される各不揮発性メモリセルは、消去され、浮遊ゲートに非常に特異的かつ正確な量の電荷、すなわち電子の数、を保持するようにプログラムされなければならない。例えば、各浮遊ゲートはN個の異なる値のうちの1つを保持しなければならず、ここで、Nは、各セルによって示され得る異なる重みの数である。Nの例としては、16、32、64、128及び256が挙げられる。
アナログニューロメモリシステムの実装の1つの課題は、各セルの消去動作、プログラム動作、及び読み出し動作に極めて高い精度が要求されることである。これは、各セルの各浮遊ゲートがN個の値のうちの1つを保持することを要求され得るためであり、Nは従来のフラッシュメモリシステムで使用される従来の値である2より大きい。しかしながら、各デバイスの電流電圧応答特性曲線など、各デバイスの特性は、その動作温度が変化するにつれて変化することになる。加えて、デバイスの漏れは、その特性に更に影響を及ぼす。
必要とされるのは、セルの動作温度が変化するにつれて各メモリセルの動作において精度及び正確度を確実に維持するために、深層学習ニューラルネットワークで使用されるアナログニューラルメモリシステムのメモリセルに対する温度補償及び漏れ補償を提供するためのシステムである。
深層学習ニューラルネットワークで使用されるアナログニューラルメモリシステムに対する温度補償及び漏れ補償を提供するための多数の実施形態が開示される。温度補償を提供するための実施形態は、慎重な又は連続的な適応的傾き補償及び繰り込みを含む。漏れ補償を提供するための実施形態は、適応的消去ゲート結合、制御ゲート端子への負バイアス、ワード線端子への負バイアス、及びソース線端子へのバイアスを含む。
先行技術の人工ニューラルネットワークを示す図である。 従来の2ゲート不揮発性メモリセルの横断面図である。 従来の4ゲート不揮発性メモリセルの横断面図である。 従来の3ゲート不揮発性メモリセルの横断面図である。 別の従来の2ゲート不揮発性メモリセルの横断面図である。 不揮発性メモリアレイを利用する異なるレベルの例示的な人工ニューラルネットワークを示す図である。 ベクトル乗算器マトリックスを示すブロック図である。 様々なレベルのベクトル乗算器マトリックスを示すブロック図である。 ベクトル乗算器マトリックスの別の実施形態を示す。 ベクトル乗算器マトリックスの別の実施形態を示す。 ベクトル乗算器マトリックスの別の実施形態を示す。 ベクトル乗算器マトリックスの別の実施形態を示す。 ベクトル乗算器マトリックスの別の実施形態を示す。 先行技術の長・短期メモリシステムを示す。 先行技術の長・短期メモリシステム中の例示的なセルを示す。 図15の長・短期メモリシステム中の例示的なセルの実装形態を示す。 図15の長・短期メモリシステム中の別の例示的なセルの実装形態を示す。 先行技術のゲート付き回帰型ユニットシステムを示す。 先行技術のゲート付き回帰型ユニットシステム中の例示的なセルを示す。 図19のゲート付き回帰型ユニットシステム中の例示的なセルの実装形態を示す。 図19のゲート付き回帰型ユニットシステム中の別の例示的なセルの実施形態を示す。 デバイスの動作温度が変化するにつれてデバイスの電流電圧特性曲線がどのように変化するかの一例を示すグラフを示す。 デバイスの電流電圧特性曲線の傾きを調整するための温度補償の一例を示すグラフを示す。 不連続的な温度補償システムの一実施形態を示す。 不連続的な温度補償システムの一実施形態を示す。 不連続的な温度補償システムの一実施形態を示す。 不連続的な温度補償システムの一実施形態を示す。 1つ以上の調整可能な電流源を使用した温度補償の一例を示す。 1つ以上の調整可能な電流源を使用した温度補償の一例を示す。 フラッシュメモリデバイスの制御ゲートにバイアス電圧を印加する、連続的な温度補償システムの別の実施形態を示す。 フラッシュメモリデバイスの制御ゲートにバイアス電圧を印加する、連続的な温度補償システムの別の実施形態を示す。 フラッシュメモリデバイスの消去ゲートにバイアス電圧を印加する、連続的な温度補償システムの別の実施形態を示す。 フラッシュメモリデバイスの消去ゲートにバイアス電圧を印加する、連続的な温度補償システムの別の実施形態を示す。 フラッシュメモリデバイスのソース線端子にバイアス電圧を印加する、連続的な温度補償システムの一実施形態を示す。 フラッシュメモリデバイスのソース線端子にバイアス電圧を印加する、連続的な温度補償システムの一実施形態を示す。 特定の構成のトランジスタを示す。 特定の構成のメモリセルを示す。 特定の構成のメモリセルを示す。 基準メモリセル及び選択されたメモリセルなど、システムの2つのデバイスの電流電圧特性曲線の傾きの差を補償するシステムを示す。 傾き補償システムの一実施形態を示す。 傾き補償システムの別の実施形態を示す。 フラッシュメモリデバイスの制御ゲートにバイアス電圧を印加する、漏れ低減システムの一実施形態を示す。 線形領域で動作するメモリセルに好適なアレイアーキテクチャを示す。 傾き差を補償するために使用されるルックアップテーブルに格納されたデータを示す。
本発明の人工ニューラルネットワークは、CMOS技術及び不揮発性メモリアレイの組み合わせを利用する。
不揮発性メモリセル
デジタル不揮発性メモリは、周知である。例えば、参照により本明細書に組み込まれる、米国特許第5,029,130号(「’130号特許」)は、フラッシュメモリセルの一種である、スプリットゲート不揮発性メモリセルのアレイを開示する。このようなメモリセル210を図2に示す。各メモリセル210は、半導体基板12に形成され、チャネル領域18をその間に有するソース領域14とドレイン領域16と、を含む。浮遊ゲート20は、チャネル領域18の第1の部分の上方に形成され、この第1の部分から絶縁されて(かつチャネル領域18の第1の部分の伝導率を制御して)おり、またソース領域14の一部分の上方に形成されている。ワード線端子22(典型的には、ワード線に結合される)は、チャネル領域18の第2の部分の上方に配設され、チャネル領域18の第2の部分から絶縁され、(かつチャネル領域18の第2の部分の伝導率を制御する)第1の部分と、浮遊ゲート20の上方で上方向にに延在する第2の部分と、を有する。浮遊ゲート20及びワード線端子22は、ゲート酸化物によって基板12から絶縁される。ビット線24はドレイン領域16に結合される。
メモリセル210は、ワード線端子22に高い正電圧を印加することによって消去され(ここで電子は、浮遊ゲートから除去される)、それにより、ファウラーノルドハイムトンネリングによって浮遊ゲート20からワード線端子22まで中間絶縁体を通って浮遊ゲート20の電子をトンネリングさせる。
メモリセル210は、ワード線端子22に正電圧、及びソース領域14に正電圧を印加することによってプログラムされる(ここで電子は、浮遊ゲートに加えられる)。電子電流は、ソース領域14からドレイン領域16に向かって流れることになる。電子は、ワード線端子22と浮遊ゲート20との間の間隙に達すると、加速し発熱する。熱せられた電子の一部が、浮遊ゲート20からの静電引力に起因して、浮遊ゲート20にゲート酸化物を介して注入される。
ドレイン領域16及びワード線端子22に正の読み出し電圧を印加する(ワード線端子下のチャネル領域18の部分をターンオンする)ことによって、メモリセル210が読み出される。浮遊ゲート20が正に帯電する(すなわち、電子を消去する)場合、浮遊ゲート20下のチャネル領域18の部分は、次に同様にオンになり、電流は、チャネル領域18を流れ、これは、消去された状態又は「1」の状態として検知される。浮遊ゲート20が負に帯電する(すなわち、電子でプログラムされる)場合、次に浮遊ゲート20下のチャネル領域の部分は、ほとんど又は完全にオフになり、電流は、チャネル領域18を流れず(又はわずかに流れる)、プログラムされた状態又は「0」の状態として検知される。
表1は、読み出し動作、消去動作、及びプログラム動作を実行するためのメモリセル110の端子に印加され得る典型的な電圧範囲を示す。
表1:図3のフラッシュメモリセル210の動作
Figure 2021536623
他の種類のフラッシュメモリセルである、他のスプリットゲートメモリセル構成が知られている。例えば、図3は、ソース領域14と、ドレイン領域16と、チャネル領域18の第1の部分の上方にある浮遊ゲート20と、チャネル領域18の第2の部分の上方にある選択ゲート22(典型的には、ワード線、WL、に結合される)と、浮遊ゲート20の上方にある制御ゲート28と、及びソース領域14の上方にある消去ゲート30と、を備える4ゲートメモリセル310を示す。この構成は、あらゆる目的のため参照により本明細書に組み込まれる、米国特許第6,747,310号に記載されている。ここで、全てのゲートは、浮遊ゲート20を除いて、非浮遊ゲートであり、それらは電圧源に電気的に接続されている又は接続可能であることを意味する。プログラミングは、浮遊ゲート20にそれ自体を注入するチャネル領域18からの熱せられた電子によって実行される。消去は、浮遊ゲート20から消去ゲート30へトンネリングする電子によって実行される。
表2は、読み出し動作、消去動作、及びプログラム動作を実行するためのメモリセル310の端子に印加され得る典型的な電圧範囲を示す。
表2:図3のフラッシュメモリセル310の動作
Figure 2021536623
図4は、別の種類のフラッシュメモリセルである、3ゲートメモリセル410を示す。メモリセル410は、メモリセル410が別個の制御ゲートを有しないことを除いて、図3のメモリセル310と同一である。消去動作(消去ゲートの使用を通して消去が起こる)及び読み出し動作は、制御ゲートバイアスが印加されないことを除いて、図3のものと同様である。プログラミング動作もまた、制御ゲートバイアスなしで行われるため、結果として、プログラム動作中は、制御ゲートバイアスの不足を補償するため、より高い電圧がソース線に印加されなければならない。
表3は、読み出し動作、消去動作、及びプログラム動作を実行するためのメモリセル410の端子に印加され得る典型的な電圧範囲を示す。
表3:図4のフラッシュメモリセル410の動作
Figure 2021536623
図5は、別の種類のフラッシュメモリセルである、積層ゲートメモリセル510を示す。メモリセル510は、浮遊ゲート20がチャネル領域18全体にわたって延在し、制御ゲート22(ここではワード線に結合される)が絶縁層(図示せず)によって分離された浮遊ゲート20の上方に延在することを除いて、図2のメモリセル210と同様である。消去動作、プログラミング動作、及び読み出し動作は、メモリセル210について前述したものと同様の方法で動作する。
表4は、読み出し動作、消去動作、及びプログラム動作を実行するためのメモリセル510及び基板12の端子に印加され得る典型的な電圧範囲を示す。
表4:図5のフラッシュメモリセル510の動作
Figure 2021536623
上記の人工ニューラルネットワークにおける不揮発性メモリセルの種類のうちの1つを含むメモリアレイを利用するために、2つの修正が行われる。第1に、以下に更に説明されるように、アレイの他のメモリセルのメモリ状態に悪影響を与えずに各メモリセルを個々にプログラム、消去、及び読み出しすることができるように線を構成する。第2に、メモリセルの連続(アナログ)プログラミングを提供する。
具体的には、アレイの各メモリセルのメモリ状態(すなわち、浮遊ゲートの電荷)を、完全に消去された状態から完全にプログラムされた状態へ、独立して、かつ他のメモリセルの異常が最小で連続的に変えることができる。別の実施形態では、アレイの各メモリセルのメモリ状態(すなわち、浮遊ゲートの電荷)を、完全にプログラムされた状態から完全に消去された状態へ、及び逆もまた同様に、独立して、かつ他のメモリセルの異常が最小で連続的に変えることができる。このことは、セル格納がアナログであるか、又は多数の不連続値(16又は64の異なる値など)のうちの1つを最低限格納することができ、これにより、メモリアレイの全てのセルの非常に正確、かつ個々の調整を可能にし、またメモリアレイを格納に対して理想的にし、ニューラルネットワークのシナプシスの重みに微調整を加えることを意味する。
不揮発性メモリセルアレイを使用するニューラルネットワーク
図6は、本実施形態の不揮発性メモリアレイを利用するニューラルネットワークの非限定実施例を概念的に示す。この例は、顔認識アプリケーションのために不揮発性メモリアレイニューラルネットワークを使用するが、不揮発性メモリアレイベースのニューラルネットワークを使用して他の任意の適切なアプリケーションを実装することができる。
S0は入力層であり、この例では、5ビット精度の32×32ピクセルRGB画像である(すなわち、各色R、G、及びBにつき1つずつの3つの32×32ピクセルアレイ、各ピクセルが5ビット精度である)。入力層S0から層C1に行くシナプスCB1は、ある事例では、異なる重みのセットが適用され、別の事例では、共有される重みが適用され、入力画像を3×3ピクセルの重なり合うフィルタでスキャンし(カーネル)、1ピクセル(又はモデルによって決まるように2ピクセル以上)ずつフィルタをシフトする。具体的には、画像の3×3部分における9ピクセルの値(すなわち、フィルタ又はカーネルと呼ばれる)は、シナプスCB1に提供され、これらの9個の入力値に適切な重みを乗算し、その乗算の出力の合計後、単一の出力値が決定され、特徴マップC1の層の1つのピクセルを生成するためにCB1の第1のシナプスによって与えられる。3×3フィルタは次に、入力層S0内部の右側に1ピクセルだけシフトされ(すなわち、3ピクセルの列を右側に追加し、左側で3ピクセルの列をドロップする)、この新しく位置づけられたフィルタの9ピクセル値が、シナプスCB1に提供されるため、それらに同じ重みを乗算し、関連するシナプスによって第2の単一の出力値を決定する。このプロセスを、3×3フィルタが入力層S0の32×32ピクセル画像全体にわたって3色全て及び全てのビットについてスキャンするまで続ける(精度値)。プロセスは次に、層C1の特徴マップ全てが計算されるまで、異なる重みのセットを使用して繰り返されて、C1の異なる特徴マップを生成する。
層C1において、本例では、各々30×30ピクセルを有する16個の特徴マップが存在する。各ピクセルは、入力とカーネルとの乗算から抽出された新しい特徴ピクセルであり、したがって、各特徴マップは、2次元アレイであり、したがってこの例では、層C1は、2次元アレイの16層を構成する(本明細書で言及される層及びアレイは、必ずしも物理的関係ではなく論理的な関係であり、すなわち、アレイは必ずしも物理的な2次元アレイに配向されないことに留意する)。層C1の16個の特徴マップの各々は、フィルタスキャンに適用される16個の異なるシナプス重みのセットの1つによって生成される。C1特徴マップは全て、境界同定など同じ画像特徴の異なる態様を対象とすることができる。例えば、第1のマップ(この第1のマップを生成するのに使用される全てのスキャンに共有される第1の重みセットを使用して生成される)は、円形エッジを識別することができ、第2のマップ(第1の重みセットと異なる第2の重みセットを使用して生成される)は、方形エッジ又は特定の特徴のアスペクト比などを識別することができる。
各特徴マップ中の連続する、重なり合わない2×2領域からの値をプールする活性化関数P1(プーリング)は、層C1から層S1へ行く前に適用される。プーリング機能の目的は、平均して近隣の位置にすること(又はmax関数もまた使用され得る)、例えばエッジ位置の依存を低減すること、及び次の段階に行く前にデータサイズを低減することである。層S1において、16個の15×15特徴マップ(すなわち、各々15×15ピクセルの16個異なるアレイ)が存在する。層S1から層C2に行くシナプスCB2は、S1のマップを1ピクセルのフィルタシフトを使用して4×4フィルタでスキャンする。層C2において、22個の12×12特徴マップが存在する。各特徴マップ中の連続する、重なり合わない2×2領域からの値をプールする活性化関数P2(プーリング)は、層C2から層S2へ行く前に適用される。層S2において、22個の6×6特徴マップが存在する。活性化関数(プーリング)は、層S2から層C3へ行くシナプスCB3で適用され、ここで層C3の全てのニューロンは、CB3のそれぞれのシナプスを介して層S2の全てのマップに接続する。層C3において、64個のニューロンが存在する。層C3から出力層S3へと行くシナプスCB4は、C3〜S3を完全に接続し、すなわち、層C3の全てのニューロンは、層S3の全てのニューロンに接続される。S3における出力は、10個のニューロンを含み、ここで最も高い出力ニューロンは、クラスを決定する。この出力は、例えば、元の画像の内容の同定又は分類を示すことができる。
シナプスの各層は、不揮発性メモリセルのアレイ又はアレイの一部を使用して実装される。
図7は、その目的のために使用され得るアレイのブロック図である。ベクトルマトリックス乗算(Vector-by-matrix multiplication、VMM)アレイ32は、不揮発性メモリセルを含み、ある層と次の層との間のシナプス(図6のCB1、CB2、CB3、及びCB4など)として利用される。具体的には、VMMアレイ32は、不揮発性メモリセルのアレイ33、消去ゲート及びワード線ゲートデコーダ34、制御ゲートデコーダ35、ビット線デコーダ36、並びにソース線デコーダ37を含み、それらのデコーダは不揮発性メモリセルアレイ33に対するそれぞれの入力をデコードする。VMMアレイ32への入力は、消去ゲート及びワード線ゲートデコーダ34から、又は制御ゲートデコーダ35からとされ得る。この例におけるソース線デコーダ37はまた、不揮発性メモリセルアレイ33の出力をデコードする。あるいは、ビット線デコーダ36が、不揮発性メモリセルアレイ33の出力をデコードすることができる。
不揮発性メモリセルアレイ33は、2つの目的を果たす。第1に、VMMアレイ32により使用される重みを格納する。第2に、不揮発性メモリセルアレイ33は、不揮発性メモリセルアレイ33に格納された重みによって、入力を有効に乗算して、それらを出力線(ソース線又はビット線)ごとに加算して、次の層への入力又は最後の層への入力になる、出力を生成する。乗算及び加算の関数を実行することによって、不揮発性メモリセルアレイ33は、別個の乗算及び加算の論理回路の必要性をなくし、また、その現場でのメモリ計算により電力効率も良い。
不揮発性メモリセルアレイ33の出力は、不揮発性メモリセルアレイ33の出力を合計してその畳み込み用の単一の値を作成する、差動加算器(加算オペアンプ又は加算電流ミラーなど)38に供給される。差動加算器38は、正の重み及び負の重みの総和を実行するように配置される。
差動加算器38の合計された出力値は、次に出力を整流する活性化関数回路39に供給される。活性化関数回路39は、シグモイド、tanh、又はReLU関数を提供し得る。活性化関数回路39の整流された出力値は、次の層(例えば図6のC1)として特徴マップの要素になり、次いで、次のシナプスに適用されて次の特徴マップ層又は最後の層を生成する。したがって、この例では、不揮発性メモリセルアレイ33は、複数のシナプスを構成し(ニューロンの前の層から、又は画像データベースなどの入力層から入力を受信する)、加算オペアンプ38及び活性化関数回路39は、複数のニューロンを構成する。
図7のVMMアレイ32への入力(WLx、EGx、CGx、及び任意選択的にBLx及びSLx)は、アナログレベル、バイナリレベル、又はデジタルビット(この場合、DACは、デジタルビットを適切な入力アナログレベルに変換するために提供される)であり得、出力は、アナログレベル、バイナリレベル、又はデジタルビットであり得る(この場合、出力ADCは出力アナログレベルをデジタルビットに変換するために提供される)。
図8は、ここでVMMアレイ32a、32b、32c、32d及び32eとして標示されたVMMアレイ32の多数の層の使用を示すブロック図である。図8に示されるように、Inputxで示される、入力は、デジタルアナログ変換器31によってデジタルからアナログに変換され、入力VMMアレイ32aに提供される。変換されたアナログ入力は、電圧又は電流であり得る。第1の層の入力D/A変換は、入力VMMアレイ32aのマトリックス乗算器の適切なアナログレベルに入力Inputxをマッピングする関数又はLUT(ルックアップテーブル)を使用することによって行うことができる。入力変換はまた、外部アナログ入力を入力VMMアレイ32aへのマッピングされたアナログ入力に変換するために、アナログ−アナログ(A/A)変換器によって行うこともできる。
入力VMMアレイ32aによって生成された出力は、次に、入力VMMアレイ(隠しレベル2)32cへの入力として提供される出力を生成する次のVMMアレイ(隠しレベル1)32bへの入力として提供される、などとなる。VMMアレイ32の様々な層は、畳み込みニューラルネットワーク(convolutional neural network、CNN)のシナプス及びニューロンの異なる層として機能する。各VMMアレイ32a、32b、32c、32d及び32eは、スタンドアローンの物理的不揮発性メモリアレイであり得、又は複数のVMMアレイは、同じ物理的不揮発性メモリアレイの異なる部分を利用することができ、又は複数のVMMアレイは、同じ物理的不揮発性メモリアレイの重なり合う部分を利用することができる。図8に示される例は、5つの層(32a、32b、32c、32d、32e)、すなわち、1つの入力層(32a)、2つの隠れ層(32b、32c)、及び2つの完全に接続された層(32d、32e)を含む。当業者であれば、これは単なる例示であり、代わりにシステムが2つを超える隠れ層及び2つを超える完全に接続された層を含み得ることを理解するであろう。
ベクトルマトリックス乗算(VMM)アレイ
図9は、図3に示されるメモリセル310に特に適したニューロンVMMアレイ900を示し、入力層と次の層との間でシナプス及びニューロンの一部として利用される。VMMアレイ900は、不揮発性メモリセルのメモリアレイ901、及び不揮発性基準メモリセルの基準アレイ902(アレイの頂部で)を備える。あるいは、別の基準アレイが底部に位置することができる。
VMMアレイ900では、制御ゲート線903などの制御ゲート線が垂直方向に延びており(したがって、行方向の基準アレイ902が、制御ゲート線903に直交する)、消去ゲート線904などの消去ゲート線が水平方向に延びている。ここで、VMMアレイ900への入力は、制御ゲート線(CG0、CG1、CG2、CG3)に提供され、VMMアレイ900の出力はソース線(SL0、SL1)に現れる。一実施形態では、偶数行のみが使用され、別の実施形態では、奇数行のみが使用される。各ソース線(SL0、SL1、それぞれに)の電流は、その特定のソース線に接続されたメモリセルからの全ての電流の合計関数を実行する。
ニューラルネットワークについて本明細書に記載されているように、VMMアレイ900の不揮発性メモリセル、すなわちVMMアレイ900のフラッシュメモリは、サブスレッショルド領域で動作するように構成されることが好ましい。
本明細書に記載される不揮発性基準メモリセル及び不揮発性メモリセルは、以下のように弱い反転でバイアスされ:
Ids=Io*(Vg-Vth)/kVt=w*Io*(Vg)/kVt
ここで、w=e(-Vth)/kVtである。
メモリセル(基準メモリセル又は周辺メモリセルなど)又はトランジスタを使用して入力電流を入力電圧に変換するI−Vログ変換器を使用した場合:
Vg=k*Vt*log[Ids/wp*Io]
ここで、wpは、基準又は周辺メモリセルのwである。
ベクトルマトリックス乗算器VMMアレイとして使用されるメモリアレイについて、出力電流は以下である:
Iout=wa*Io*(Vg)/kVt、すなわち
Iout=(wa/wp)*Iin=W*Iin
W=e(Vthp-Vtha)/kVt
ここで、メモリアレイの各メモリセルのwa=wである。
ワード線又は制御ゲートは、入力電圧のためのメモリセルの入力として使用することができる。
あるいは、本明細書に記載されたVMMアレイのフラッシュメモリセルは、線形領域で動作するように構成することができる。
Ids=β*(Vgs−Vth)*Vds;β=u*Cox*W/L
W=α(Vgs−Vth)
ワード線又は制御ゲート又はビット線又はソース線は、入力電圧のための線形領域内で動作するメモリセルの入力として使用することができる。
I−V線形変換器では、線形領域で動作するメモリセル(基準メモリセル又は周辺メモリセルなど)又はトランジスタを、入出力電流を入出力電圧に線形変換するために使用することができる。
図7のVMMアレイ32のための他の実施形態は、参照により本明細書に組み込まれる米国特許出願第15/826,345号に記載されているとおりである。上記出願に記載されているように、ソース線又はビット線は、ニューロン出力(電流和出力)として使用することができる。
図10は、図2に示されるメモリセル210に特に適したニューロンVMMアレイ1000を示し、入力層と次の層との間のシナプスとして利用される。VMMアレイ1000は、不揮発性メモリセルのメモリアレイ1003、第1の不揮発性基準メモリセルの基準アレイ1001、及び第2の不揮発性基準メモリセルの基準アレイ1002を備える。アレイの列方向に配置された基準アレイ1001及び1002は、端子BLR0、BLR1、BLR2、及びBLR3に流入する電流入力を電圧入力WL0、WL1、WL2、及びWL3に変換するように機能する。実際には、第1及び第2の不揮発性基準メモリセルは、電流入力が流入する状態で、マルチプレクサ1014(一部のみ示す)を通してダイオード接続される。基準セルは、標的基準レベルに調整(例えば、プログラム)される。標的基準レベルは、基準ミニアレイマトリックス(図示せず)によって提供される。
メモリアレイ1003は、2つの目的を果たす。第1に、VMMアレイ1000により使用される重みを、それぞれのメモリセルに格納する。第2に、メモリアレイ1003は、メモリアレイ1003に格納された重みによって、入力を(すなわち、端子BLR0、BLR1、BLR2、及びBLR3に提供された電流入力であり、これにより基準アレイ1001及び1002がワード線WL0、WL1、WL2、及びWL3に供給するための入力電圧に変換される)有効に乗算して、次いで、全ての結果(メモリセル電流)を加算して、次の層への入力又は最後の層への入力となる、それぞれのビット線(BL0〜BLN)の出力を生成する。乗算及び加算の関数を実行することによって、メモリアレイ1003は、別個の乗算及び加算の論理回路の必要性をなくし、また、電力効率も良い。ここで、電圧入力はワード線WL0、WL1、WL2、及びWL3に提供され、出力は、読み出し(推論)動作中にそれぞれのビット線BL0〜BLNに現れる。ビット線BL0〜BLNの各々の電流は、その特定のビット線に接続された全ての不揮発性メモリセルからの電流の合計関数を実行する。
表5は、VMMアレイ1000の動作電圧を示す。表中の列は、選択セルのワード線、非選択セルのワード線、選択セルのビット線、非選択セルのビット線、選択セルのソース線、及び非選択セルのソース線の電圧を示す。行は、読み出し、消去、及びプログラムの動作を示す。
表5:図10のVMMアレイ1000の動作
Figure 2021536623
図11は、図2に示されるメモリセル210に特に適したニューロンVMMアレイ1100を示し、入力層と次の層との間でシナプス及びニューロンの一部として利用される。VMMアレイ1100は、不揮発性メモリセルのメモリアレイ1103、第1の不揮発性基準メモリセルの基準アレイ1101、及び第2の不揮発性基準メモリセルの基準アレイ1102を備える。基準アレイ1101及び1102は、VMMアレイ1100の行方向に延びる。VMMアレイは、VMMアレイ1100においてワード線が垂直方向に延びることを除いて、VMM1000と同様である。ここで、入力はワード線(WLA0、WLB0、WLA1、WLB2、WLA2、WLB2、WLA3、WLB3)に提供され、出力は、読み出し動作中にソース線(SL0、SL1)に現れる。各ソース線の電流は、その特定のソース線に接続されたメモリセルからの全ての電流の合計関数を実行する。
表6は、VMMアレイ1100の動作電圧を示す。表中の列は、選択セルのワード線、非選択セルのワード線、選択セルのビット線、非選択セルのビット線、選択セルのソース線、及び非選択セルのソース線の電圧を示す。行は、読み出し、消去、及びプログラムの動作を示す。
表6:図11のVMMアレイ1100の動作
Figure 2021536623
図12は、図3に示されるメモリセル310に特に適したニューロンVMMアレイ1200を示し、入力層と次の層との間でシナプス及びニューロンの一部として利用される。VMMアレイ1200は、不揮発性メモリセルのメモリアレイ1203、第1の不揮発性基準メモリセルの基準アレイ1201、及び第2の不揮発性基準メモリセルの基準アレイ1202を備える。基準アレイ1201及び1202は、端子BLR0、BLR1、BLR2、及びBLR3に流入する電流入力を電圧入力CG0、CG1、CG2、及びCG3に変換するように機能する。実際には、第1及び第2の不揮発性基準メモリセルは、電流入力がBLR0、BLR1、BLR2、及びBLR3を通って流入する状態で、マルチプレクサ1212(一部のみ示す)を通してダイオード接続される。マルチプレクサ1212は、読み出し動作中に第1及び第2の不揮発性基準メモリセルの各々のビット線(BLR0など)の一定電圧を確実にするために、それぞれのマルチプレクサ1205及びカスコーディングトランジスタ1204を各々含む。基準セルは、標的基準レベルに調整される。
メモリアレイ1203は、2つの目的を果たす。第1に、VMMアレイ1200により使用される重みを格納する。第2に、メモリアレイ1203は、メモリアレイに格納された重みによって、入力を(端子BLR0、BLR1、BLR2、及びBLR3へ提供された電流入力であり、基準アレイ1201及び1202は、これらの電流入力を制御ゲート(CG0、CG1、CG2、及びCG3)に供給するための入力電圧に変換する)有効に乗算して、次いで、全ての結果(セル電流)を加算して、BL0〜BLNに出現し、かつ次の層への入力又は最後の層への入力となる、出力を生成する。乗算及び加算の関数を実行することによって、メモリアレイは、別個の乗算及び加算の論理回路の必要性をなくし、また、電力効率も良い。ここで、入力は制御ゲート線(CG0、CG1、CG2、及びCG3)に提供され、出力は、読み出し動作中にビット線(BL0〜BLN)に現れる。各ビット線の電流は、その特定のビット線に接続されたメモリセルからの全ての電流の合計関数を実行する。
VMMアレイ1200は、メモリアレイ1203の不揮発性メモリセルの一方向調整を実装する。すなわち、各不揮発性メモリセルは消去され、次いで、浮遊ゲートの所望の電荷に達するまで部分的にプログラムされる。これは、例えば、以下に記載される新規の精密プログラミング技術を使用して実行することができる。過度に多くの電荷が浮遊ゲートに加わる場合(誤った値がセルに格納されるなど)、セルは消去されなければならず、一連の部分的なプログラミング動作をやり直さなければならい。示されるように、同じ消去ゲート(EG0又はEG1など)を共有する2つの行は、一緒に消去される必要があり(ページ消去として知られる)、その後、各セルは、浮遊ゲートの所望の電荷に達するまで部分的にプログラムされる。
表7は、VMMアレイ1200の動作電圧を示す。表中の列は、選択セルのワード線、非選択セルのワード線、選択セルのビット線、非選択セルのビット線、選択セルの制御ゲート、選択セルと同じセクタの非選択セルの制御ゲート、選択セルとは異なるセクタの非選択セルの制御ゲート、選択セルの消去ゲート、非選択セルの消去ゲート、選択セルのソース線、及び非選択セルのソース線の電圧を示す。行は、読み出し、消去、及びプログラムの動作を示す。
表7:図12のVMMアレイ1200の動作
Figure 2021536623
図13は、図3に示されるメモリセル310に特に適したニューロンVMMアレイ1300を示し、入力層と次の層との間でシナプス及びニューロンの一部として利用される。VMMアレイ1300は、不揮発性メモリセルのメモリアレイ1303、基準アレイ1301又は第1の不揮発性基準メモリセル、及び第2の不揮発性基準メモリセルの基準アレイ1302を備える。EG線EGR0、EG0、EG1、及びEGR1は垂直に延び、CG線CG0、CG1、CG2、及びCG3並びにSL線WL0、WL1、WL2、及びWL3は水平に延びる。VMMアレイ1300は、VMMアレイ1300が双方向調整を実装することを除いてVMMアレイ1400と同様であり、各個々のセルは、個別のEG線の使用により、浮遊ゲートの所望の電荷量に達するために、完全に消去され、部分的にプログラムされ、必要に応じて部分的に消去され得る。示されるように、基準アレイ1301及び1302は、端子BLR0、BLR1、BLR2及びBLR3の入力電流を制御ゲート電圧CG0、CG1、CG2及びCG3に変換し(マルチプレクサ1314を介したダイオード接続された基準セルのアクションを通じて)、行方向でメモリセルに印加される。電流出力(ニューロン)は、ビット線BL0〜BLN中にあり、各ビット線は、その特定のビット線に接続された不揮発性メモリセルからの全ての電流を合計する。
図8は、VMMアレイ1300の動作電圧を示す。表中の列は、選択セルのワード線、非選択セルのワード線、選択セルのビット線、非選択セルのビット線、選択セルの制御ゲート、選択セルと同じセクタの非選択セルの制御ゲート、選択セルとは異なるセクタの非選択セルの制御ゲート、選択セルの消去ゲート、非選択セルの消去ゲート、選択セルのソース線、及び非選択セルのソース線の電圧を示す。行は、読み出し、消去、及びプログラムの動作を示す。
表8:図13のVMMアレイ1300の動作
Figure 2021536623
長・短期メモリ
先行技術は、長・短期メモリ(long short-term memory、LSTM)として知られる概念を含む。LSTMユニットは、しばしば、ニューラルネットワークで使用される。LSTMは、ニューラルネットワークが、所定の任意の時間間隔にわたって情報を記憶することを可能にし、後続の動作においてその情報を使用することを可能にする。従来のLSTMユニットは、セル、入力ゲート、出力ゲート、及びフォーゲットゲートを含む。3つのゲートは、セル内及びセル外への情報の流れ、及び情報がLSTMで記憶される時間間隔を調整する。VMMは、LSTMユニットにおいて特に有用である。
図14は、例示的なLSTM1400を示す。この例におけるLSTM1400は、セル1401、1402、1403及び1404を含む。セル1401は入力ベクトルx0を受け取り、出力ベクトルh0及びセル状態ベクトルc0を生成する。セル1402は、入力ベクトルx1と、セル1401から出力ベクトル(隠れた状態)h0と、セル1401からセル状態ベクトルc0とを受け取り、出力ベクトルh1とセル状態ベクトルc1とを生成する。セル1403は、入力ベクトルx2と、セル1402から出力ベクトル(隠れた状態)h1と、セル1402からセル状態ベクトルc1とを受け取り、出力ベクトルh2とセル状態ベクトルc2とを生成する。セル1404は、入力ベクトルx3と、セル1403から出力ベクトル(隠れた状態)h2と、セル1403からセル状態ベクトルc2とを受け取り、出力ベクトルh3を生成する。追加のセルを使用することができ、4つのセルを有するLSTMは単なる例である。
図15は、図14のセル1401、1402、1403及び1404に使用することができる、LSTMセル1500の例示的な実装形態を示す。LSTMセル1500は、先行するセルから入力ベクトルx(t)、セル状態ベクトルc(t−1)を受け取り、先行するセルから出力ベクトルh(t−1)を受け取り、セル状態ベクトルc(t)及び出力ベクトルh(t)を生成する。
LSTMセル1500は、シグモイド関数デバイス1501、1502、1503を備え、各々が、入力ベクトルの各構成要素のうちどれだけの量が出力ベクトルを通して許容されるかを制御するために、0〜1の数を適用する。LSTMセル1500はまた、入力ベクトルに双曲線tanh関数を適用するためのtanhデバイス1504及び1505と、2つのベクトルを一緒に乗算するための乗算器デバイス1506、1507及び1508と、2つのベクトルを一緒に加算するための加算器デバイス1509とを備える。出力ベクトルh(t)は、システムの次のLSTMセルに提供することができ、又は他の目的でアクセスすることができる。
図16は、LSTMセル1500の一実装形態であるLSTMセル1600を示す。読者の便宜のために、LSTMセル1500からの同じ採番方法が、LSTMセル1600で使用される。シグモイド関数デバイス1501、1502及び1503及びtanhデバイス1504は各々、複数のVMMアレイ1601及び活性化回路ブロック1602を備える。したがって、VMMアレイは、特定のニューラルネットワークシステムで使用されるLSTMセルにおいて特に有用であることが分かり得る。
LSTMセル1600の代替例(及びLSTMセル1500の実装形態の別の例)を図17に示す。図17では、シグモイド関数デバイス1501、1502、及び1503、並びにtanhデバイス1504は、同じ物理ハードウェア(VMMアレイ1701及び活性化関数ブロック1702)を、時分割多重化された方式で共有する。LSTMセル1700はまた、2つのベクトルを一緒に乗算するための乗算器デバイス1703と、2つのベクトルを一緒に加算するための加算器デバイス1708と、(活性化回路ブロック1702を備える)tanhデバイス1505と、シグモイド関数ブロック1702からi(t)が出力されたときの値i(t)を格納する、レジスタ1707と、上記値がマルチプレクサ1710を介して乗算器デバイス1703から出力されるときの値f(t)*c(t−1)を格納する、レジスタ1704と、上記値がマルチプレクサ1710を介して乗算器デバイス1703から出力されるときの値i(t)*u(t)を格納するレジスタ1705と、上記値がマルチプレクサ1710とマルチプレクサ1709を介して乗算器デバイス1703から出力されるときの値o(t)*c〜(t)を格納する、レジスタ1706とを備える。
LSTMセル1600が複数のVMMアレイ1601及びそれぞれの活性化関数ブロック1602の複数の組を含むのに対し、LSTMセル1700は、LSTMセル1700の実施形態において複数の層を表すために使用されるVMMアレイ1701及び活性化関数ブロック1702の1つの組のみを含む。LSTMセル1700は、LSTMセル1600と比較して、VMM及び活性化関数ブロックのために1/4のスペースを必要とするので、LSTMセル1700は、LSTM1600より必要なスペースが少ない。
LSTMユニットは、典型的には、複数のVMMアレイを備え、これらは各々、加算器及び活性化回路ブロック及び高電圧生成ブロックなどの、VMMアレイの外側の特定の回路ブロックによって提供される機能を必要とすることが更に理解され得る。各VMMアレイに別個の回路ブロックを提供することは、半導体デバイスにかなりの量のスペースを必要とし、幾分非効率的であろう。したがって、以下に記載される実施形態は、VMMアレイ自体の外側に必要とされる回路を最小化することを試みる。
ゲート付き回帰型ユニット
アナログVMM実装形態をゲート付き回帰型ユニット(gated recurrent unit、GRU)システムに利用することができる。GRUは、回帰型ニューラルネットワークのゲーティング機構である。GRUは、GRUセルが一般にLSTMセルより少ない構成要素を含むことを除いて、LSTMに類似している。
図18は、例示的なGRU1800を示す。この例におけるGRU1800は、セル1801、1802、1803及び1804を含む。セル1801は入力ベクトルx0を受け取り、出力ベクトルh0を生成する。セル1802は、入力ベクトルx1と、セル1801から出力ベクトルh0とを受け取り、出力ベクトルh1を生成する。セル1803は、入力ベクトルx2と、セル1802から出力ベクトル(隠れた状態)h1とを受け取り、出力ベクトルh2を生成する。セル1804は、入力ベクトルx3と、セル1803から出力ベクトル(隠れた状態)h2とを受け取り、出力ベクトルh3を生成する。追加のセルを使用することができ、4つのセルを有するGRUは単なる例である。
図19は、図18のセル1801、1802、1803及び1804に使用することができる、GRUセル1900の例示的な実装形態を示す。GRUセル1900は、先行するGRUセルから入力ベクトルx(t)及び出力ベクトルh(t−1)を受け取り、出力ベクトルh(t)を生成する。GRUセル1900は、シグモイド関数デバイス1901及び1902を備え、各々が、出力ベクトルh(t−1)及び入力ベクトルx(t)からの構成要素に0〜1の数を適用する。GRUセル1900はまた、入力ベクトルに双曲線tanh関数を適用するためのtanhデバイス1903と、2つのベクトルを一緒に乗算するための乗算器デバイス1904、1905及び1906と、2つのベクトルを一緒に加算するための加算器デバイス1907と、1からの入力を減算して出力を生成する補完デバイス1908とを備える。
図20は、GRUセル1900の一実装形態であるGRUセル2000を示す。読者の便宜のために、GRUセル1900からの同じ採番方法が、GRUセル2000で使用される。図20から分かり得るように、シグモイド関数デバイス1901及び1902、並びにtanhデバイス1903は各々、複数のVMMアレイ2001及び活性化関数ブロック2002を備える。したがって、VMMアレイは、特定のニューラルネットワークシステムで使用されるGRUセルにおいて特に使用されることが分かり得る。
GRUセル2000の代替例(及びGRUセル1900の実装形態の別の例)を図21に示す。図21において、GRUセル2100は、VMMアレイ2101及び活性化関数ブロック2102を使用しており、シグモイド関数として構成された場合には、入力ベクトルの各構成要素のうちどれだけの量が出力ベクトルを通して許容されるかを制御するために、0〜1の数を適用する。図21では、シグモイド関数デバイス1901及び1902、並びにtanhデバイス1903は、同じ物理ハードウェア(VMMアレイ2101及び活性化関数ブロック2102)を、時分割多重化された方式で共有する。GRUセル2100はまた、2つのベクトルを一緒に乗算するための乗算器デバイス2103と、2つのベクトルを一緒に加算するための加算器デバイス2105と、1からの入力を減算して出力を生成するための補完デバイス2109と、マルチプレクサ2104と、上記値がマルチプレクサ2104を介して乗算器デバイス2103から出力されるときの値h(t−1)*r(t)を保持するレジスタ2106と、上記値がマルチプレクサ2104を介して乗算器デバイス2103から出力されるときの値h(t−1)*z(t)を保持するレジスタ2107と、上記値がマルチプレクサ2104を介して乗算器デバイス2103から出力されるときの値h^(t)*(1−z((t))を保持するレジスタ2108と、を備える。
GRUセル2000が複数のVMMアレイ2001及び活性化関数ブロック2002の複数の組を含むのに対し、GRUセル2100は、GRUセル2100の実施形態において複数の層を表すために使用されるVMMアレイ2101及び活性化関数ブロック2102の1つの組のみを含む。GRUセル2100は、GRUセル2000と比較して、VMM及び活性化関数ブロックのために1/3のスペースを必要とするので、GRUセル2100は、GRUセル2000より必要なスペースが少ないであろう。
GRUシステムは、典型的には、複数のVMMアレイを備え、これらは各々、加算器及び活性化回路ブロック及び高電圧生成ブロックなどの、VMMアレイの外側の特定の回路ブロックによって提供される機能を必要とすることが更に理解され得る。各VMMアレイに別個の回路ブロックを提供することは、半導体デバイスにかなりの量のスペースを必要とし、幾分非効率的であろう。したがって、以下に記載される実施形態は、VMMアレイ自体の外側に必要とされる回路を最小化することを試みる。
VMMアレイへの入力は、アナログレベル、バイナリレベル、又はデジタルビット(この場合、デジタルビットを適切な入力アナログレベルに変換するためにDACが必要とされる)であり、出力はアナログレベル、バイナリレベル、又はデジタルビットであり得る(この場合、出力アナログレベルをデジタルビットに変換するために出力ADCが必要とされる)。
VMMアレイの各メモリセルに関して、各重みwは、単一のメモリセルによって、又は差動セルによって、又は2つのブレンドメモリセル(2つのセルの平均)によって実装することができる。差動セルの場合では、重みwを差動重み(w=w+−w−)として実装するために、2つのメモリセルが必要とされる。2つのブレンドメモリセルの場合は、2つのセルの平均として重みwを実装するために2つのメモリセルが必要とされる。
デバイスの動作温度及び電流電圧特性
図22は、例示的なトランジスタ又はメモリセルの3つの例示的な電流電圧特性曲線を示すグラフを示す。図22に示される現象は、フラッシュメモリシステムにおける典型的な基準トランジスタ、基準メモリセル、及び選択されたメモリセルの挙動を示すことが理解され得る。各曲線は、ゲートとソースとの間の電圧Vgsが変化するにつれて、デバイスを通る電流Idsがどのように変化するかを示す。各曲線は、特定の動作温度におけるデバイスの電流電圧特性を表す。したがって、デバイスの動作温度が変化するにつれて、同一のVgs値の対応するIds値は変化すると考えられ得る。温度が変化するにつれてデバイス特性がこのように変動することは問題である。これは、アナログニューロモーフィックメモリシステムが、通常のフラッシュメモリシステムと比較して、より高い精度及び正確度を必要とするためである。
本明細書に記載される実施形態は、デバイスの電流電圧特性曲線に対する傾き補償(不連続的又は連続的のいずれか)、絶対スケーリング(正規化)、及び漏れ低減を提供することによって、デバイスの動作温度の変化につれてのデバイスの挙動の変化を補償する。
図23は、温度の変化を補償するためにデバイスの電流電圧特性に適用される傾き補償の一例を示す。同一デバイスが、異なる温度において異なるサブスレッショルド電流電圧特性曲線を有するであろうことが理解され得る。
より一般的には、温度の関数として変化する変数aを導入することにより、以下の式に基づいて、傾き補償をデバイスに適用できることが理解され得る。
Ids=Ids0*exp(a*Vgs1−Vt)/(k*Vt)、式中、Vtは熱電圧である。
図24A及び図24Bは、不連続的な温度補償を示す。図24Aは、温度の関数としてaの例示的な値を示す。温度が上昇するにつれて、aは不連続的な段階で増加することが分かり得る。あるいは、線形領域又は飽和領域で作動するメモリセルなどについては、等価スケーリング定数が、温度に対して慎重な段階で減少することになる。図24Bは、例示的な温度補償ブロック2400を示す。温度センサ2401は、デバイスの温度を測定する。次いで、温度センサ2401の出力がコントローラ2402(個別論理又はソフトウェアを実行するマイクロコントローラであり得る)に提供され、コントローラ2402は、制御ビット2403a、...、2403iを生成する。範囲a〜iは、kの例示的な個別レベルの数を表す。より広い範囲又はより小さい範囲を使用できることが理解されるであろう。制御ビット2403の各々は、当該制御ビットに割り当てられた特定の温度範囲の間にアサートされる。したがって、温度が上昇するにつれて、各個別レベルの温度の達すると、異なる制御ビット2403がアサートされる。次いで、制御ビット2403は、スイッチ2405に(同じく、2405a、...、2405iの番号)適用される。各スイッチ2405は、閉じたときに、電流源2404(同じく、2404a、...、2404iの番号)をレジスタ2406の一端に適用する。ここで、各電流源2404は、前述の温度範囲でスイッチによって起動された電流源2404とは異なる量の電流を生成する。その結果、当該ノードにおける電圧Vtcは、温度が上昇するにつれて変化する。Vtcは、トランジスタのゲート、メモリセル210として図2に示される種類のメモリセルのワード線、メモリセル310として図3に示される種類のメモリセルの制御ゲート、メモリセル410として図4に示される種類のメモリセルのソースゲート、又はメモリセル510として図5に示される種類のメモリセルの制御ゲートに印加され得る、温度補償バイアス電圧である。このようにVtcを加えることにより、各ゲート電圧値が本質的に量Vtcだけシフトされるため、デバイスの電圧特性曲線は修正されることになる。
図25は、温度補償ブロック2500を示す。温度補償ブロック2500は、演算増幅器2501及び2505と、調整可能なレジスタブロック2506と、温度センサ2401と、コントローラ2502と、を備える。調整可能なレジスタブロック2506は、スイッチ2508a、...、2508nのうちの1つにそれぞれ結合されたレジスタ2507a、...、2507nを備える。
図24のように、温度センサ2401は、デバイスの温度を測定する。次いで、温度センサ2401の出力がコントローラ2502(個別論理又はソフトウェアを実行するマイクロコントローラであり得る)に提供され、コントローラ2502は、制御ビット2509a、...、2509nを生成する。範囲a〜nは、aの例示的な個別レベルの数を表す。より広い範囲又はより小さい範囲を使用できることが理解されるであろう。温度センサ2301によって検知された温度に応じて、制御ビット2509a、...、2509nの間で異なる制御ビットがアサートされる。次いで、制御ビット2509は、スイッチ2508に(同じく、2508a、...、2508nの番号)適用される。各スイッチ2508は、閉じたときに、それぞれのレジスタ2507(同じく、2507a、...、2507nの番号)をフィードバックレジスタとして演算増幅器2505に適用する。その結果、演算増幅器2505の出力電圧Vgs_tcは、温度が上昇するにつれて増加する。
Vgs_tcは、トランジスタのゲート、メモリセル210/310/410として図2/3/4に示される種類のメモリセルのワード線、メモリセル310/510として図3/5に示される種類のメモリセルの制御ゲート、メモリセル210/310/410/510として図2/3/4/5に示される種類のメモリセルのソースゲート、又はメモリセル310/510として図3/5に示される種類のメモリセルの制御ゲートに印加され得る、温度補償バイアス電圧である。このようにVgs_tcを修正することにより、各Vgs値が本質的にVgs_tcの量だけシフトされるため、デバイスの電圧特性曲線は修正されることになる。
図26A及び図26Bは、正の温度補償電流の場合は補償電流itcpn、itcpを、負の温度補償電流の場合は補償電流itcnを加えることによって、デバイスの電流電圧特性曲線を調整するための実施形態を示す。図26Aは、各種類のデバイスの温度変化につれての補完デバイスの3つ(4つ以上であってもよい)の例示的な曲線を示す。補償電流itcpnを注入することにより、デバイスの電流電圧特性曲線の傾きは修正され得る。
図26Bは、温度補償ブロック2600の一実施形態を示す。温度補償ブロック2600は、デバイスの温度を測定する温度センサ2401と、コントローラ2605(論理又はソフトウェアを実行しているマイクロコントローラであり得る)とを備える。コントローラ2605は、1つ以上の制御信号2606を生成する。
温度補償ブロック2600は、補償電流itcpnを提供する電流源2603によって表される電流を一緒に生成する、調整可能な電流源2601Itcp及び2602Itcnを更に備える。調整可能な電流源2601及び2602は、制御信号2606によって調整される。調整可能な電流源2601及び2602の一方又は両方は、制御信号2606によってデバイスの温度が変化するにつれて、提供される補償電流itcpnの量を変化させるように調整され得る。電流itcpnはレジスタ2604に印加され、電流源2603とレジスタ2604との間のノードにおいて電圧Vtcを生じさせる。
Vtcは、トランジスタのゲート、メモリセル210/310/410/510として図2/3/4/5に示される種類のメモリセルのワード線、メモリセル310/510として図3/5に示される種類のメモリセルの制御ゲート、メモリセル210/310/410/510として図2/3/4/5に示される種類のメモリセルのソースゲート、又はメモリセル310/410として図3/4に示される種類のメモリセルの消去ゲートに印加され得る、温度補償バイアス電圧である。このようにVtcを加えることにより、各Vgs値が本質的に量Vtcだけシフトされるため、デバイスの電圧特性曲線は修正されることになる。
図27A及び図27Bは、電流itcpnによって生成されたバイアス電圧をデバイスの制御ゲートで加えることによって、デバイスの電流電圧特性曲線を調整するための一実施形態を示す。図27Aは、デバイスの動作温度が上昇するにつれて特定の動作を実行するために制御ゲートに印加される必要がある、必須の制御ゲート電圧Vcgの3つの例示的な曲線を示す。
図27Bは、温度補償ブロック2700の一実施形態を示す。温度補償ブロック2700は、デバイスの温度を測定する温度センサ2401と、コントローラ2705(論理又はソフトウェアを実行しているマイクロコントローラであり得る)とを備える。コントローラ2705は、1つ以上の制御信号2706を生成する。
温度補償ブロック2700は、補償電流ipcnを生成する、調整可能な電流源2701と、調整可能なレジスタ2702とを更に備える。調整可能な電流源2701及び調整可能なレジスタ2702は、制御信号2706によって調整される。電圧Vtcは、調整可能な電流源2701と調整可能なレジスタ2702との間のノードにおいて生成される。
Vtcは、メモリセル310として図3に示される種類のメモリセルの制御ゲート、又はメモリセル510として図5に示される種類のメモリセルの制御ゲートに印加され得る温度補償バイアス電圧である。このようにVtcを加えることにより、各Vgs値が本質的に量Vtcだけシフトされるため、デバイスの電圧特性曲線は修正されることになる。
図28A及び図28Bは、電流itcpnによって生成されたバイアス電圧をデバイスの消去ゲートで加えることによって、デバイスの電流電圧特性曲線を調整するための一実施形態を示す。図28Aは、デバイスの動作温度が上昇するにつれて特定の動作を実行するために消去ゲートに印加される必要がある、必須の制御ゲート電圧Vegの3つの例示的な曲線を示す。
図28Bは、多数の特性曲線を示しており、各曲線は、アレイ読み取り(ベクトルマトリックス乗算器)動作を実行するためにVegの各値に必要なVegを示し、各曲線は、特定の温度又は温度範囲におけるデバイスの特性を表す。
図28Cは、温度補償ブロック2800の一実施形態を示す。温度補償ブロック2800は、デバイスの温度を測定する温度センサ2401と、コントローラ2805(論理又はソフトウェアを実行しているマイクロコントローラであり得る)とを備える。コントローラ2805は、1つ以上の制御信号2806を生成する。
温度補償ブロック2800は、補償電流itcpnを生成する、調整可能な電流源2801と、調整可能なレジスタ2802とを備える。調整可能な電流源2801及び調整可能な電流レジスタ2802は、デバイスの温度が変化するにつれて、制御信号2806によって調整される。電圧Vtcは、電流源2803とレジスタ2804との間のノードにおいて生成される。
Vtcは、メモリセル310として図3に示される種類のメモリセルの消去ゲート、又はメモリセル410として図4に示される種類のメモリセルの消去ゲートに印加され得る温度補償バイアス電圧である。このようにVtcを加えることにより、各Vgs値が本質的に量Vtcだけシフトされるため、デバイスの電圧特性曲線は修正されることになる。
図29A及び図29Bは、電流itcpnによって生成されたバイアス電圧をデバイスのソース線端子で加えることによって、デバイスの電流電圧特性曲線を調整するための一実施形態を示す。図29Aは、温度が上昇するにつれて特定の動作を実行するために必要とされる、必須のソース線端子電圧の3つの例示的な曲線を示す。
図29Bは、温度補償ブロック2900の一実施形態を示す。温度補償ブロック2900は、デバイスの温度を測定する温度センサ2401と、コントローラ2905(論理又はソフトウェアを実行しているマイクロコントローラであり得る)とを備える。コントローラ2905は、1つ以上の制御信号2906を生成する。
温度補償ブロック2900は、補償電流itcpnを生成する、調整可能な電流源2901と、調整可能なレジスタ2902とを更に備える。調整可能な電流源2901及び調整可能なレジスタ2902は、デバイスの温度が変化するにつれて、デバイスの制御ゲートに印加される負バイアスの量を変化させるように制御信号2906によって調整され得る。電圧Vtcは、電流源2901とレジスタ2902との間のノードにおいて生成される。
Vtcは、メモリセル210として図2に示される種類のメモリセルのソース線端子、メモリセル310として図3に示される種類のメモリセルのソース線端子、メモリセル410として図4に示される種類のメモリセルのソース線端子、又はメモリセル410として図4に示される種類のメモリセルの消去ゲート、又はメモリセル510として図5に示される種類のメモリセルのソース線端子に印加され得る温度補償バイアス電圧である。このようにVtcを加えることにより、各Vgs値が本質的に量Vtcだけシフトされるため、デバイスの電圧特性曲線は修正されることになる。
電流電圧特性曲線の差は、異なるデバイス及び異なる構成の類似のデバイスに対して存在することが更に理解され得る。
図30は、特定の構成を有する、例示的な基準トランジスタ3000を示す。
図31は、別の構成(ワード線がビット線に結合されている)を有する、例示的な基準メモリセル3100を示す。
図32は、別の構成(浮遊ゲートFGがビット線に結合されている)を有する、別の例示的な基準メモリセル3200を示す。これらのデバイスの各々は、異なる電流電圧特性曲線を有し得ることが理解され得る。
本明細書に記載される実施形態は、基準トランジスタ、基準メモリセル、及び/又は選択されたメモリセルの電流電圧特性曲線の傾きにおける差を補償する。
異なるサブスレッショルド電流電圧特性曲線を有する2つのデバイスを有するシステムでは、第1のデバイスを通るドレインソース電流は、
Ids1=Ids0*exp(Vgs1−Vt)/k1*Utである。
第2のデバイスを通るドレインソース電流は、
Ids2=Ids0*exp(Vgs2−Vt)/k2*Utである。
各例では、傾きは〜1/kに比例することが分かり得る。
以下の実施形態のうちのいくつかにおいて、傾き正規化は、
Vgs1=k*Vgs2の第1のデバイスのゲートソース電圧を使用することによって実装される。
これは、Ids1及びIdsが、傾き正規化後に同じ傾きを有することを意味する。
これは、図33に図式的に示され、Vgs1=a*Vgs2の電圧がデバイス1に印加され、これにより、第1のデバイスの電流電圧特性曲線の傾きを第2のデバイスの電流電圧特性曲線の傾きに近似させる。
ここで、異なるデバイス間で傾き正規化を実行するための実施形態について説明する。
図34は、基準トランジスタ3401と、選択されたメモリセル3402と、ゲートドライバ3403と、絶対正規化回路3404とを備える傾き正規化システム3400を示す。ゲートドライバ3403は、入力電圧Vgsを受信し、その入力電圧にaを乗算して、基準トランジスタ3401のゲートに印加される出力電圧Vgsintを生成する。絶対正規化回路3404は、トリミング可能な電流ミラー(基準トランジスタ3401からの電流とメモリセル3402からの出力電流との間の比を調整するための電流ミラー回路)であり得、トリミングプロセスは、基準トランジスタ若しくはアレイトランジスタによって、又はI−V傾きの不整合によって引き起こされる不一致を調整することができる。選択されたメモリセル3402は、メモリセルのアレイのメモリセルのうちの1つである。
図35は、基準トランジスタ3501と、選択されたメモリセル3502と、ドライバ3503とを備える傾き正規化システム3500を示す。ドライバ3503は、電圧Vgsを受信し、それにaを乗算し、Vgs’の出力電圧をもたらす。このため、基準トランジスタ3501及び選択されたメモリセル3502は、異なる電圧を受信することになり、差は、傾きの差に相当する。
図38は、動作温度の変化によるデバイスの電流電圧特性曲線3800の変化を補償するためにルックアップテーブル3801を利用する一実施形態を示す。これらのデバイスは、トランジスタ、基準メモリセル、及び選択されたメモリセルを含み得る。この実施形態では、曲線3800のデータは、ルックアップテーブル3801に格納され、動作中、kは、数式を介するのではなく、ルックアップテーブル3801から判定される。ルックアップテーブル3801は、様々な動作温度における各入力電圧に対して異なる所望の出力電流を含むことができる。このデータは、製造プロセス又は試験プロセス中にルックアップテーブル3801に追加され得る。
実施形態はまた、漏れ低減を提供することができる。具体的には、トランジスタ又はメモリセルの漏れは、制御ゲート端子に負電圧(−0.1V〜−0.4Vの電圧など)を、ワード線端子に負電圧(−0.1V〜−0.4Vの電圧など)を、消去ゲート端子に負電圧(−0.1V〜−0.4Vの電圧など)を、より高い温度においてビット線により小さい電圧を、より高い温度においてバルク端子(基板)により小さい電圧を、又はソース線端子にバイアス電圧を印加することによって低減され得る。
図36は、デバイスの制御ゲート端子への電圧の印加による漏れ電流の低減を示す図を提供する。この実施形態では、制御ゲートバイアス電圧は、I−lk=n*I−min/列数となるように選択される。アレイが256行×512列を含む場合、256*I−lkg<I−minの例となるだろう。例えば、I−minは約500pAであってよく、Ilkgは約2pAであってよい。これは、制御ゲートバイアス電圧が約2V超であろうことを意味する。
温度補償のための別の実施形態では、逆の基板電圧(例えば、負電圧)が印加されるか、又はソース線電圧がバイアスされて、浮遊ゲートスレッショルド電圧VtFGを上昇させることによってサブスレッショルド動作電圧範囲を拡大する。
図37は、線形領域で動作するメモリセルに好適なアレイアーキテクチャを示す。システム3700は、入力ブロック3701と、出力ブロック3702と、メモリセルのアレイ3703とを備える。入力ブロック3701は、アレイ3703のメモリセルのドレイン(ソース線)に結合され、出力ブロック3702は、アレイ3703のメモリセルのビット線に結合される。あるいは、入力ブロック3701は、アレイ3703のメモリセルのワード線に結合され、出力ブロック3702は、アレイ3703のメモリセルのビット線に結合される。
システム3700がLSTM又はGRUを実装するために使用される場合、出力ブロック3702及び/又は入力ブロック3701は、LSTM/GRUアーキテクチャに必要とされるように、乗算器ブロック、加算器ブロック、減算器(出力=1−入力)ブロックを含み得、任意選択的に、アナログサンプルアンドホールド回路又はデジタルサンプルアンドホールド回路(例えば、レジスタ又はSRAM)を必要に応じて含むことができる。
本明細書で使用される場合、「の上方に」及び「に」という用語は両方とも、「に直接」(中間材料、要素、又は空間がそれらの間に何ら配設されない)、及び「に間接的に」(中間材料、要素、又は空間がそれらの間に配設される)を包括的に含むことに留意するべきである。同様に、「隣接した」という用語は、「直接隣接した」(中間材料、要素、又は空間がそれらの間に何ら配設されない)、及び「間接的に隣接した」(中間材料、要素、又は空間がそれらの間に配設される)を含み、「に取り付けられた」は、「に直接取り付けられた」(中間材料、要素、又は空間がそれらの間に何ら配設されない)、及び「に間接的に取り付けられた」(中間材料、要素、又は空間がそれらの間に配設される)を含み、「電気的に結合された」は、「に直接電気的に結合された」(要素を一緒に電気的に接続する中間材料又は要素がそれらの間にない)、及び「間接的に電気的に結合された」(要素を一緒に電気的に接続する中間材料又は要素がそれらの間にある)を含む。例えば、要素を「基板の上方に」形成することは、その要素を基板に直接、中間材料/要素をそれらの間に何ら伴わずに、形成すること、並びにその要素を基板に間接的に、1つ以上の中間材料/要素をそれらの間に伴って、形成することを含み得る。

Claims (50)

  1. アナログニューロモーフィックメモリシステムであって、
    複数のベクトルマトリックス乗算アレイであって、各ベクトルマトリックス乗算アレイはメモリセルのアレイを備える、複数のベクトルマトリックス乗算アレイと、
    前記メモリセルの前記アレイのメモリセルの動作温度が変化するにつれて、前記メモリセルの前記アレイの前記メモリセルの電流電圧特性曲線の傾きを連続的に修正するための温度補償ブロックであって、前記温度補償ブロックは、
    動作温度を示す出力を生成するための温度センサと、
    前記温度センサの前記出力に応答して1つ以上の制御信号を生成するためのコントローラと、
    前記1つ以上の制御信号に応答して温度補償電圧を生成するための1つ以上の調整可能なデバイスと、を備える温度補償ブロックと、を備える、アナログニューロモーフィックメモリシステム。
  2. ベクトルマトリックス乗算システムにおける重みは、メモリセルによって実現される、請求項1に記載のシステム。
  3. ベクトルマトリックス乗算システムにおける重みは、差動セルによって実現される、請求項1に記載のシステム。
  4. ベクトルマトリックス乗算システムにおける重みは、1対のブレンドメモリセルによって実現される、請求項1に記載のシステム。
  5. 前記メモリセルの前記アレイの前記メモリセルのそれぞれはフラッシュメモリセルであり、前記1つ以上の調整可能なデバイスは、1つ以上の調整可能な電流源を備え、前記1つ以上の調整可能な電流源の各々は、前記1つ以上の制御信号のうちの1つによって調整され、かつレジスタに結合されており、前記温度補償電圧は、前記1つ以上の調整可能な電流源と前記レジスタとの間のノードにおいて生成され、前記フラッシュメモリセルに印加されて、前記フラッシュメモリセルの電流電圧特性曲線の傾きを修正する、請求項1に記載のシステム。
  6. 前記温度補償電圧は、前記フラッシュメモリセルの制御ゲート端子に印加される、請求項5に記載のシステム。
  7. 前記温度補償電圧は、前記フラッシュメモリセルの消去ゲート端子に印加される、請求項5に記載のシステム。
  8. 前記温度補償電圧は、前記フラッシュメモリセルのソース線端子に印加される、請求項5に記載のシステム。
  9. 前記温度補償電圧は、前記フラッシュメモリセルのビット線端子に印加される、請求項5に記載のシステム。
  10. 前記フラッシュメモリセルは、スプリットゲートフラッシュメモリセルである、請求項5に記載のシステム。
  11. 前記フラッシュメモリセルは、積層ゲートフラッシュメモリセルである、請求項5に記載のシステム。
  12. 前記メモリセルの前記アレイのメモリセルの動作温度が変化するにつれて漏れを低減させるために、前記メモリセルの前記アレイの前記メモリセルの端子に印加されたバイアス電圧を修正するための漏れ低減ブロックを更に備える、請求項1に記載のシステム。
  13. アナログニューロモーフィックメモリシステムであって、
    複数のベクトルマトリックス乗算システムであって、各ベクトルマトリックス乗算システムはメモリセルのアレイを備える、複数のベクトルマトリックス乗算システムと、
    前記メモリセルの前記アレイのメモリセルの動作温度のレベルが変化するにつれて、前記メモリセルの前記アレイの前記メモリセルの電流電圧特性曲線を不連続的に修正するための温度補償ブロックと、を備える、アナログニューロモーフィックメモリシステム。
  14. ベクトルマトリックス乗算システムにおける重みは、メモリセルによって実現される、請求項13に記載のシステム。
  15. ベクトルマトリックス乗算システムにおける重みは、差動セルによって実現される、請求項13に記載のシステム。
  16. ベクトルマトリックス乗算システムにおける重みは、ブレンドメモリセルによって実現される、請求項13に記載のシステム。
  17. 前記メモリセルの前記アレイの前記メモリセルの各々はフラッシュメモリセルであり、前記温度補償ブロックは、
    動作温度を示す出力を生成するための温度センサと、
    前記温度センサの前記出力に応答して1つ以上の制御ビットを生成するためのコントローラと、
    複数の電流源であって、各電流源は、スイッチを介してレジスタに選択的に結合され、各スイッチは、前記制御ビットのうちの1つによって制御された、複数の電流源と、を備え、
    前記レジスタの一端において生成された電圧は、前記フラッシュメモリセルに印加されて、前記フラッシュメモリセルの電流電圧特性曲線の傾きを修正する、請求項13に記載のシステム。
  18. 前記修正することは、フラッシュメモリセルの電流電圧特性曲線の傾きを修正することを含む、請求項13に記載のシステム。
  19. 前記フラッシュメモリセルは、スプリットゲートフラッシュメモリセルである、請求項13に記載のシステム。
  20. 前記フラッシュメモリセルは、積層ゲートフラッシュメモリセルである、請求項13に記載のシステム。
  21. 前記温度補償ブロックは、
    動作温度を示す出力を生成するための温度センサと、
    前記温度センサの前記出力に応答して1つ以上の制御ビットを生成するためのコントローラと、
    複数のレジスタを備える増幅回路であって、各レジスタは、スイッチを介して前記増幅器に選択的に結合されており、各スイッチは、前記制御ビットのうちの1つによって制御される、複数の増幅回路と、を備え、
    前記増幅器の出力において生成された電圧は、前記フラッシュメモリセルに印加されて、前記フラッシュメモリセルの電流電圧特性曲線の傾きを修正する、請求項13に記載のシステム。
  22. 前記傾きを修正することは、あるフラッシュメモリセルの電流電圧特性曲線の傾きを修正することを含む、請求項21に記載のシステム。
  23. 前記フラッシュメモリセルは、スプリットゲートフラッシュメモリセルである、請求項21に記載のシステム。
  24. 前記フラッシュメモリセルは、積層ゲートフラッシュメモリセルである、請求項21に記載のシステム。
  25. 前記メモリセルの前記アレイのメモリセルの動作温度が変化するにつれて漏れを低減させるために、前記メモリセルの前記アレイの前記メモリセルの端子に印加されたバイアス電圧を修正するための漏れ低減ブロック
    を更に備える、請求項13に記載のシステム。
  26. 複数のベクトルマトリックス乗算アレイを備えるアナログニューロモーフィックメモリシステムにおいて温度補償を実行する方法であって、各ベクトルマトリックス乗算アレイはメモリセルのアレイを備え、前記方法は、
    前記メモリセルの前記アレイのメモリセルの動作温度が変化するにつれて、前記メモリセルの前記アレイの前記メモリセルの電流電圧特性曲線の傾きを、温度補償ブロックによって連続的に修正するステップであって、前記温度補償ブロックは、動作温度を示す出力を生成するための温度センサと、前記温度センサの前記出力に応答して1つ以上の制御信号を生成するためのコントローラと、前記1つ以上の制御信号に応答して温度補償電圧を生成するための1つ以上の調整可能なデバイスと、を備える、修正するステップを含む、方法。
  27. ベクトルマトリックス乗算方法における重みは、メモリセルによって実現される、請求項26に記載の方法。
  28. ベクトルマトリックス乗算方法における重みは、差動セルによって実現される、請求項26に記載の方法。
  29. ベクトルマトリックス乗算方法における重みは、1対のブレンドメモリセルによって実現される、請求項26に記載の方法。
  30. 前記メモリセルの前記アレイの前記メモリセルのそれぞれはフラッシュメモリセルであり、前記1つ以上の調整可能なデバイスは、1つ以上の調整可能な電流源を備え、前記1つ以上の調整可能な電流源の各々は、前記1つ以上の制御信号のうちの1つによって調整され、かつレジスタに結合され、前記温度補償電圧は、前記1つ以上の調整可能な電流源と前記レジスタとの間のノードにおいて生成され、前記フラッシュメモリセルに印加されて、前記フラッシュメモリセルの電流電圧特性曲線の傾きを修正する、請求項26に記載の方法。
  31. 前記温度補償電圧は、前記フラッシュメモリセルの制御ゲート端子に印加される、請求項30に記載の方法。
  32. 前記温度補償電圧は、前記フラッシュメモリセルの消去ゲート端子に印加される、請求項30に記載の方法。
  33. 前記温度補償電圧は、前記フラッシュメモリセルのソース線端子に印加される、請求項30に記載の方法。
  34. 前記温度補償電圧は、前記フラッシュメモリセルのビット線端子に印加される、請求項30に記載の方法。
  35. 前記フラッシュメモリセルは、スプリットゲートフラッシュメモリセルである、請求項30に記載の方法。
  36. 前記フラッシュメモリセルは、積層ゲートフラッシュメモリセルである、請求項30に記載の方法。
  37. 前記メモリセルの前記アレイのメモリセルの動作温度が変化するにつれて漏れを低減させるために、前記メモリセルの前記アレイの前記メモリセルの端子に印加されたバイアス電圧を修正するステップを更に含む、請求項26に記載の方法。
  38. 複数のベクトルマトリックス乗算システムを備えるアナログニューロモーフィックメモリシステムにおいて温度補償を実行する方法であって、各ベクトルマトリックス乗算システムはメモリセルのアレイを備え、前記方法は、
    前記メモリセルの前記アレイのメモリセルの動作温度のレベルが変化するにつれて、前記メモリセルの前記アレイの前記メモリセルの電流電圧特性曲線のために温度補償ブロックによって不連続的に修正するステップを含む、方法。
  39. ベクトルマトリックス乗算方法における重みは、メモリセルによって実現される、請求項38に記載の方法。
  40. ベクトルマトリックス乗算方法における重みは、差動セルによって実現される、請求項38に記載の方法。
  41. ベクトルマトリックス乗算方法における重みは、ブレンドメモリセルによって実現される、請求項38に記載の方法。
  42. 前記メモリセルの前記アレイの前記メモリセルの各々はフラッシュメモリセルであり、前記温度補償ブロックは、動作温度を示す出力を生成するための温度センサと、前記温度センサの前記出力に応答して1つ以上の制御ビットを生成するためのコントローラと、複数の電流源であって、各電流源は、スイッチを介してレジスタに選択的に結合され、各スイッチは、前記制御ビットのうちの1つによって制御された、複数の電流源と、を備え、前記レジスタの一端において生成された電圧は、前記フラッシュメモリセルに印加されて、前記フラッシュメモリセルの電流電圧特性曲線の傾きを修正する、請求項38に記載の方法。
  43. 前記修正するステップは、フラッシュメモリセルの電流電圧特性曲線の傾きを修正するステップを含む、請求項38に記載のシステム。
  44. 前記フラッシュメモリセルは、スプリットゲートフラッシュメモリセルである、請求項38に記載の方法。
  45. 前記フラッシュメモリセルは、積層ゲートフラッシュメモリセルである、請求項38に記載の方法。
  46. 前記温度補償ブロックは、動作温度を示す出力を生成するための温度センサと、前記温度センサの前記出力に応答して1つ以上の制御ビットを生成するためのコントローラと、複数のレジスタを備える増幅回路であって、各レジスタは、スイッチを介して前記増幅器に選択的に結合され、各スイッチは、前記制御ビットのうちの1つによって制御された、複数の増幅回路と、を備え、前記増幅器の出力において生成された電圧は、前記フラッシュメモリセルに印加されて、前記フラッシュメモリセルの電流電圧特性曲線の傾きを修正する、請求項38に記載の方法。
  47. 前記修正するステップは、フラッシュメモリセルの電流電圧特性曲線の傾きを修正するステップを含む、請求項45に記載の方法。
  48. 前記フラッシュメモリセルは、スプリットゲートフラッシュメモリセルである、請求項45に記載の方法。
  49. 前記フラッシュメモリセルは、積層ゲートフラッシュメモリセルである、請求項45に記載の方法。
  50. 前記メモリセルの前記アレイのメモリセルの動作温度が変化するにつれて漏れを低減させるために、前記メモリセルの前記アレイの前記メモリセルの端子に印加されたバイアス電圧を修正するための漏れ低減ブロック
    を更に備える、請求項38に記載の方法。
JP2021510952A 2018-08-27 2019-07-23 深層学習ニューラルネットワークで使用されるアナログニューラルメモリシステムのメモリセルに対する温度補償及び漏れ補償 Active JP7281535B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201862723398P 2018-08-27 2018-08-27
US62/723,398 2018-08-27
US16/183,250 2018-11-07
US16/183,250 US10755783B2 (en) 2018-08-27 2018-11-07 Temperature and leakage compensation for memory cells in an analog neural memory system used in a deep learning neural network
PCT/US2019/043101 WO2020046495A1 (en) 2018-08-27 2019-07-23 Temperature and leakage compensation for memory cells in an analog neural memory system used in a deep learning neural network

Publications (3)

Publication Number Publication Date
JP2021536623A true JP2021536623A (ja) 2021-12-27
JPWO2020046495A5 JPWO2020046495A5 (ja) 2022-08-01
JP7281535B2 JP7281535B2 (ja) 2023-05-25

Family

ID=69586480

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021510952A Active JP7281535B2 (ja) 2018-08-27 2019-07-23 深層学習ニューラルネットワークで使用されるアナログニューラルメモリシステムのメモリセルに対する温度補償及び漏れ補償

Country Status (7)

Country Link
US (3) US10755783B2 (ja)
EP (2) EP3844680B1 (ja)
JP (1) JP7281535B2 (ja)
KR (1) KR102457394B1 (ja)
CN (1) CN112602095B (ja)
TW (1) TWI754162B (ja)
WO (1) WO2020046495A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020068048A (ja) * 2018-10-18 2020-04-30 株式会社デンソー 人工ニューラルネットワーク回路及び人工ニューラルネットワーク回路における学習値切替方法
JP2022045335A (ja) * 2020-09-08 2022-03-18 旺宏電子股▲ふん▼有限公司 メモリデバイス及びその動作方法
JP2022045333A (ja) * 2020-09-08 2022-03-18 旺宏電子股▲ふん▼有限公司 メモリデバイスおよびその動作方法

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10755783B2 (en) * 2018-08-27 2020-08-25 Silicon Storage Technology Temperature and leakage compensation for memory cells in an analog neural memory system used in a deep learning neural network
US11513797B2 (en) * 2018-09-12 2022-11-29 Mentium Technologies Inc. Systems and methods for analog vector by matrix multiplier
US11507641B2 (en) * 2019-05-31 2022-11-22 Advanced Micro Devices, Inc. Temperature-based adjustments for in-memory matrix multiplication
US11074976B2 (en) * 2019-08-26 2021-07-27 Sandisk Technologies Llc Temperature dependent impedance mitigation in non-volatile memory
US11875852B2 (en) * 2020-07-06 2024-01-16 Silicon Storage Technology, Inc. Adaptive bias decoder to provide a voltage to a control gate line in an analog neural memory array in artificial neural network
US11630002B2 (en) * 2021-02-08 2023-04-18 Macronix International Co., Ltd. Method for sensing temperature in memory die, memory die and memory with temperature sensing function
KR102553403B1 (ko) * 2021-02-23 2023-07-11 한국과학기술원 우수한 선형성 특성을 갖는 뉴로모픽 시냅스 소자 및 그 동작 방법
US11380373B1 (en) * 2021-05-12 2022-07-05 Globalfoundries U.S. Inc. Memory with read circuit for current-to-voltage slope characteristic-based sensing and method
US11716089B1 (en) * 2022-03-16 2023-08-01 Xilinx, Inc. Delay-tracking biasing for voltage-to-time conversion
US11955193B1 (en) * 2023-12-05 2024-04-09 Aspinity, Inc. Compute-in-memory array multi-range temperature compensation

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021531609A (ja) * 2018-07-11 2021-11-18 シリコン ストーリッジ テクノロージー インコーポレイテッドSilicon Storage Technology, Inc. ディープラーニング人工ニューラルネットワークにおけるアナログニューロメモリ内の基準トランジスタ及びメモリセルに対する補償

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3668440A (en) 1970-10-16 1972-06-06 Motorola Inc Temperature stable monolithic multiplier circuit
US5029130A (en) 1990-01-22 1991-07-02 Silicon Storage Technology, Inc. Single transistor non-valatile electrically alterable semiconductor memory device
US6359499B1 (en) 2000-06-23 2002-03-19 Marvell International Ltd. Temperature and process independent CMOS circuit
US6560152B1 (en) * 2001-11-02 2003-05-06 Sandisk Corporation Non-volatile memory with temperature-compensated data read
US6747310B2 (en) 2002-10-07 2004-06-08 Actrans System Inc. Flash memory cells with separated self-aligned select and erase gates, and process of fabrication
JP2007059024A (ja) * 2005-08-26 2007-03-08 Micron Technol Inc 温度補償された読み出し・検証動作をフラッシュ・メモリにおいて生成するための方法及び装置
JP2007164960A (ja) * 2005-11-15 2007-06-28 Nec Electronics Corp 半導体集積回路装置
US8102201B2 (en) * 2006-09-25 2012-01-24 Analog Devices, Inc. Reference circuit and method for providing a reference
ITRM20060652A1 (it) * 2006-12-06 2008-06-07 Micron Technology Inc Compensazione di temperatura di segnali di memoria impiegando segnali digitali
US7889575B2 (en) * 2008-09-22 2011-02-15 Sandisk Corporation On-chip bias voltage temperature coefficient self-calibration mechanism
KR101868332B1 (ko) * 2010-11-25 2018-06-20 삼성전자주식회사 플래시 메모리 장치 및 그것을 포함한 데이터 저장 장치
CN102684683B (zh) * 2012-05-14 2014-07-02 常熟银海集成电路有限公司 任意项全系数高精度温度补偿晶体振荡器
US8873316B2 (en) * 2012-07-25 2014-10-28 Freescale Semiconductor, Inc. Methods and systems for adjusting NVM cell bias conditions based upon operating temperature to reduce performance degradation
KR102215204B1 (ko) * 2013-11-29 2021-02-16 삼성디스플레이 주식회사 표시 장치, 그 보상 데이터 산출 방법 및 그 구동 방법
US9330790B2 (en) * 2014-04-25 2016-05-03 Seagate Technology Llc Temperature tracking to manage threshold voltages in a memory
DE102015112276B3 (de) * 2015-07-28 2016-06-30 Océ Printing Systems GmbH & Co. KG Verfahren und Vorrichtung zur Verbesserung des Tonertransfers in einem elektrographischen Digitaldrucker
US9899450B2 (en) * 2015-09-15 2018-02-20 The Regents Of The University Of California Memristors and method for fabricating memristors
US10564900B2 (en) * 2016-03-04 2020-02-18 Western Digital Technologies, Inc. Temperature variation compensation
CN107533668B (zh) * 2016-03-11 2021-01-26 慧与发展有限责任合伙企业 用于计算神经网络的节点值的硬件加速器和方法
JP6833873B2 (ja) * 2016-05-17 2021-02-24 シリコン ストーリッジ テクノロージー インコーポレイテッドSilicon Storage Technology, Inc. 不揮発性メモリアレイを使用したディープラーニングニューラルネットワーク分類器
US10269440B2 (en) * 2016-05-17 2019-04-23 Silicon Storage Technology, Inc. Flash memory array with individual memory cell read, program and erase
US20200006567A1 (en) * 2017-02-15 2020-01-02 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device
US10748630B2 (en) 2017-11-29 2020-08-18 Silicon Storage Technology, Inc. High precision and highly efficient tuning mechanisms and algorithms for analog neuromorphic memory in artificial neural networks
US10528643B1 (en) * 2018-08-01 2020-01-07 Sandisk Technologies Llc Vector-matrix multiplication using non-volatile memory cells
US10755783B2 (en) * 2018-08-27 2020-08-25 Silicon Storage Technology Temperature and leakage compensation for memory cells in an analog neural memory system used in a deep learning neural network

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021531609A (ja) * 2018-07-11 2021-11-18 シリコン ストーリッジ テクノロージー インコーポレイテッドSilicon Storage Technology, Inc. ディープラーニング人工ニューラルネットワークにおけるアナログニューロメモリ内の基準トランジスタ及びメモリセルに対する補償

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
GUO, X ほか: "Temperature-Insensitive Analog Vector-by-Matrix Multiplier Based on 55 nm NOR Flash Memory Cells", ARXIV[ONLINE], JPN6022045595, 10 November 2016 (2016-11-10), ISSN: 0004910906 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020068048A (ja) * 2018-10-18 2020-04-30 株式会社デンソー 人工ニューラルネットワーク回路及び人工ニューラルネットワーク回路における学習値切替方法
JP7196803B2 (ja) 2018-10-18 2022-12-27 株式会社デンソー 人工ニューラルネットワーク回路及び人工ニューラルネットワーク回路における学習値切替方法
JP2022045335A (ja) * 2020-09-08 2022-03-18 旺宏電子股▲ふん▼有限公司 メモリデバイス及びその動作方法
JP2022045333A (ja) * 2020-09-08 2022-03-18 旺宏電子股▲ふん▼有限公司 メモリデバイスおよびその動作方法
JP7255068B2 (ja) 2020-09-08 2023-04-11 旺宏電子股▲ふん▼有限公司 メモリデバイス及びその動作方法
JP7279293B2 (ja) 2020-09-08 2023-05-23 旺宏電子股▲ふん▼有限公司 メモリデバイスおよびその動作方法

Also Published As

Publication number Publication date
TWI754162B (zh) 2022-02-01
US10755783B2 (en) 2020-08-25
WO2020046495A1 (en) 2020-03-05
KR102457394B1 (ko) 2022-10-21
KR20210032538A (ko) 2021-03-24
TW202026955A (zh) 2020-07-16
CN112602095A (zh) 2021-04-02
US11158374B2 (en) 2021-10-26
US11521682B2 (en) 2022-12-06
JP7281535B2 (ja) 2023-05-25
US20200350015A1 (en) 2020-11-05
EP3844680B1 (en) 2022-11-23
EP3844680A1 (en) 2021-07-07
EP4138079B1 (en) 2024-08-28
US20210090654A1 (en) 2021-03-25
CN112602095B (zh) 2022-05-27
US20200066345A1 (en) 2020-02-27
EP4138079A1 (en) 2023-02-22

Similar Documents

Publication Publication Date Title
KR102457394B1 (ko) 딥 러닝 신경 네트워크에서 사용되는 아날로그 신경 메모리 시스템 내의 메모리 셀들에 대한 온도 및 누설 보상
JP7399153B2 (ja) 複数のベクトルマトリックス乗算アレイ及び共有構成要素を備える、深層学習ニューラルネットワーク用のアナログニューラルメモリシステム
JP7288461B2 (ja) 深層学習人工ニューラルネットワークにおけるアナログニューラルメモリの高電圧生成のための方法及び装置
JP7253563B2 (ja) 深層学習人工ニューラルネットワークにおけるアナログニューラルメモリ用のデコーダ
KR102616977B1 (ko) 딥 러닝 인공 신경망에서의 아날로그 신경 메모리 내의 기준 트랜지스터들 및 메모리 셀들에 대한 보상
JP7153802B2 (ja) 深層学習人工ニューラルネットワークのアナログニューラルメモリにおいて不揮発性メモリセルのプログラミング動作中に格納された値を検証するためのアルゴリズム及び回路
JP2021536614A (ja) 深層学習ニューラルネットワーク用の構成可能なアナログニューラルメモリシステム
JP7523674B2 (ja) アナログニューラルメモリにおける書き込みと検証との同時動作
JP7561203B2 (ja) 人工ニューラルネットワークにおけるアナログニューラルメモリアレイのための不揮発性メモリセルのページ又はワードの精密チューニング及び関連する高電圧回路
JP2023520255A (ja) 深層学習人工ニューラルネットワークにおけるアナログニューラルメモリのためのワード線及び制御ゲート線タンデムデコーダ
JP2023525771A (ja) 論理セル及び改善されたプログラミング機構を備える人工ニューラルネットワーク内のアナログニューラルメモリアレイ
CN115968495A (zh) 用于人工神经网络中的模拟神经存储器阵列的自适应偏置解码器
US20240265951A1 (en) Current-to-voltage converter comprising common mode circuit
WO2024162979A1 (en) Current-to-voltage converter comprising common mode circuit
TW202324211A (zh) 可配置為以類比形式或數位形式儲存神經記憶體權重資料的混合記憶體系統
TW202418146A (zh) 人工神經網路陣列中的多列程式化操作
WO2024162978A1 (en) Multiplexors for neural network array
TW202433468A (zh) 神經網路陣列的多工器

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220722

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220722

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20220722

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220725

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221101

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230130

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: 20230425

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230515

R150 Certificate of patent or registration of utility model

Ref document number: 7281535

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150