(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-03-24
(54)【発明の名称】4ゲート不揮発性メモリセルのアレイを使用するニューラルネットワーク分類器
(51)【国際特許分類】
G06N 3/063 20060101AFI20220316BHJP
H01L 27/11521 20170101ALI20220316BHJP
H01L 21/336 20060101ALI20220316BHJP
G11C 11/54 20060101ALI20220316BHJP
G06G 7/60 20060101ALI20220316BHJP
【FI】
G06N3/063
H01L27/11521
H01L29/78 371
G11C11/54
G06G7/60
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2021544165
(86)(22)【出願日】2019-08-29
(85)【翻訳文提出日】2021-09-17
(86)【国際出願番号】 US2019048929
(87)【国際公開番号】W WO2020159579
(87)【国際公開日】2020-08-06
(32)【優先日】2019-01-29
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2019-04-11
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】500147506
【氏名又は名称】シリコン ストーリッジ テクノロージー インコーポレイテッド
【氏名又は名称原語表記】SILICON STORAGE TECHNOLOGY, INC.
(74)【代理人】
【識別番号】110000626
【氏名又は名称】特許業務法人英知国際特許事務所
(72)【発明者】
【氏名】トラン、ヒュー、バン
(72)【発明者】
【氏名】レムケ、スティーブン
(72)【発明者】
【氏名】ティワリ、ビピン
(72)【発明者】
【氏名】ドー、ナン
(72)【発明者】
【氏名】レイテン、マーク
【テーマコード(参考)】
5F083
5F101
【Fターム(参考)】
5F083EP02
5F083EP22
5F083EP23
5F083EP30
5F083EP32
5F083ER09
5F083ER14
5F083ER18
5F083ER21
5F083LA12
5F083LA16
5F083LA20
5F101BA02
5F101BB02
5F101BB05
5F101BB09
5F101BC01
5F101BC11
5F101BD22
5F101BE07
(57)【要約】
チャネル領域の第1及び第2の部分の上方にある浮遊ゲート及び第1のゲートと、浮遊ゲートの上方及びソース領域の上方にある第2及び第3のゲートとをそれぞれ有するメモリセルを有するシナプスを備えるニューラルネットワークデバイス。第1の線はそれぞれ、メモリセル行のうちの1つにおいて第1のゲートを電気的に接続し、第2の線はそれぞれ、メモリセル行のうちの1つにおいて第2のゲートを電気的に接続し、第3の線はそれぞれ、メモリセル行のうちの1つにおいて第3のゲートを電気的に接続し、第4の線はそれぞれ、メモリセル行のうちの1つにおいてソース領域を電気的に接続し、第5の線はそれぞれ、メモリセル列のうちの1つにおいてドレイン領域を電気的に接続する。シナプスは、第1、第2又は第3の線において第1の複数の入力を電圧として受信し、第5の線において第1の複数の出力を電流として提供する。
【選択図】
図15
【特許請求の範囲】
【請求項1】
ニューラルネットワークデバイスであって、該ニューラルネットワークデバイスは、
第1の複数の入力を受信するように、かつ前記第1の複数の入力から第1の複数の出力を生成するように構成された、第1の複数のシナプスを備え、前記第1の複数のシナプスは、
複数のメモリセルであって、前記メモリセルのそれぞれは、半導体基板内に形成され、間にチャネル領域が延在する離間したソース領域及びドレイン領域と、前記チャネル領域の第1の部分の上方に配設され、前記チャネル領域の前記第1の部分から絶縁された浮遊ゲートと、前記チャネル領域の第2の部分の上方に配設され、前記チャネル領域の前記第2の部分から絶縁された第1のゲートと、前記浮遊ゲートの上方に配設され、前記浮遊ゲートから絶縁された第2のゲートと、前記ソース領域の上方に配設され、前記ソース領域から絶縁された第3のゲートと、を含み、
前記複数のメモリセルのそれぞれは、前記浮遊ゲートの多くの電子に対応する重み値を格納するように構成され、
前記複数のメモリセルは、前記第1の複数の入力及び格納された前記重み値に基づいて、前記第1の複数の出力を生成するように構成された、複数のメモリセルを含み、
前記第1の複数のシナプスの前記メモリセルは、行及び列に配置され、前記第1の複数のシナプスは、
前記メモリセルの前記行のうちの1つにおいて前記第1のゲートをそれぞれ電気的に接続する複数の第1の線と、
前記メモリセルの前記行のうちの1つにおいて前記第2のゲートをそれぞれ電気的に接続する複数の第2の線と、
前記メモリセルの前記行のうちの1つにおいて前記第3のゲートをそれぞれ電気的に接続する複数の第3の線と、
前記メモリセルの前記行のうちの1つにおいて前記ソース領域をそれぞれ電気的に接続する複数の第4の線と、
前記メモリセルの前記列のうちの1つにおいて前記ドレイン領域をそれぞれ電気的に接続する複数の第5の線と、を含み、
前記第1の複数のシナプスは、前記複数の第2の線において、又は前記複数の第3の線若しくは前記複数の第4の線において前記第1の複数の入力を電圧として受信するように、かつ前記複数の第5の線において前記第1の複数の出力を電流として提供するように構成された、ニューラルネットワークデバイス。
【請求項2】
前記第1の複数のシナプスは、前記複数の第2の線において前記第1の複数の入力を電圧として受信するように構成された、請求項1に記載のニューラルネットワークデバイス。
【請求項3】
前記第1の複数のシナプスは、前記複数の第3の線において前記第1の複数の入力を電圧として受信するように構成された、請求項1に記載のニューラルネットワークデバイス。
【請求項4】
前記第1の複数のシナプスは、前記複数の第4の線において前記第1の複数の入力を電圧として受信するように構成された、請求項1に記載のニューラルネットワークデバイス。
【請求項5】
前記第1の複数の出力を受信するように構成された第1の複数のニューロンを更に含む、請求項1に記載のニューラルネットワークデバイス。
【請求項6】
前記第1の複数のニューロンから第2の複数の入力を受信するように、かつ前記第2の複数の入力から第2の複数の出力を生成するように構成された第2の複数のシナプスを更に備え、前記第2の複数のシナプスは、
複数の第2のメモリセルであって、前記第2のメモリセルのそれぞれは、半導体基板内に形成され、間に第2のチャネル領域が延在する離間した第2のソース領域及び第2のドレイン領域と、前記第2のチャネル領域の第1の部分の上方に配設され、前記第2のチャネル領域の前記第1の部分から絶縁された第2の浮遊ゲートと、前記第2のチャネル領域の第2の部分の上方に配設され、前記チャネル領域の前記第2の部分から絶縁された第4のゲートと、前記第2の浮遊ゲートの上方に配設され、前記第2の浮遊ゲートから絶縁された第5のゲートと、前記第2のソース領域の上方に配設され、前記第2のソース領域から絶縁された第6のゲートと、を含み、
前記複数の第2のメモリセルのそれぞれは、前記第2の浮遊ゲートの多くの電子に対応する第2の重み値を格納するように構成され、
前記複数の第2のメモリセルは、前記第2の複数の入力及び格納された前記第2の重み値に基づいて、前記第2の複数の出力を生成するように構成された、複数の第2のメモリセルを含み、
前記第2の複数のシナプスの前記第2のメモリセルは、行及び列に配置され、前記第2の複数のシナプスは、
前記第2のメモリセルの前記行のうちの1つにおいて前記第4のゲートをそれぞれ電気的に接続する複数の第6の線と、
前記第2のメモリセルの前記行のうちの1つにおいて前記第5のゲートをそれぞれ電気的に接続する複数の第7の線と、
前記第2のメモリセルの前記行のうちの1つにおいて前記第6のゲートをそれぞれ電気的に接続する複数の第8の線と、
前記第2のメモリセルの前記行のうちの1つにおいて前記第2のソース領域をそれぞれ電気的に接続する複数の第9の線と、
前記第2のメモリセルの前記列のうちの1つにおいて前記第2のドレイン領域をそれぞれ電気的に接続する複数の第10の線と、を含み、
前記第2の複数のシナプスは、前記複数の第7の線において又は前記複数の第8の線において又は前記複数の第9の線において前記第2の複数の入力を電圧として受信するように、かつ前記複数の第10の線において前記第2の複数の出力を電流として提供するように構成された、請求項5に記載のニューラルネットワークデバイス。
【請求項7】
前記第2の複数のシナプスは、前記複数の第7の線において前記第2の複数の入力を電圧として受信するように構成された、請求項6に記載のニューラルネットワークデバイス。
【請求項8】
前記第2の複数のシナプスは、前記複数の第8の線において前記第2の複数の入力を電圧として受信するように構成された、請求項6に記載のニューラルネットワークデバイス。
【請求項9】
前記第2の複数のシナプスは、前記複数の第9の線において前記第2の複数の入力を電圧として受信するように構成された、請求項6に記載のニューラルネットワークデバイス。
【請求項10】
前記第2の複数の出力を受信するように構成された第2の複数のニューロンを更に含む、請求項6に記載のニューラルネットワークデバイス。
【請求項11】
ニューラルネットワークデバイスであって、該ニューラルネットワークデバイスは、
第1の複数の入力を受信するように、かつ前記第1の複数の入力から第1の複数の出力を生成するように構成された、第1の複数のシナプスを備え、前記第1の複数のシナプスは、
複数のメモリセルであって、前記メモリセルのそれぞれは、半導体基板内に形成され、間にチャネル領域が延在する離間したソース領域及びドレイン領域と、前記チャネル領域の第1の部分の上方に配設され、前記チャネル領域の前記第1の部分から絶縁された浮遊ゲートと、前記チャネル領域の第2の部分の上方に配設され、前記チャネル領域の前記第2の部分から絶縁された第1のゲートと、前記浮遊ゲートの上方に配設され、前記浮遊ゲートから絶縁された第2のゲートと、前記ソース領域の上方に配設され、前記ソース領域から絶縁された第3のゲートと、を含み、
前記複数のメモリセルのそれぞれは、前記浮遊ゲートの多くの電子に対応する重み値を格納するように構成され、
前記複数のメモリセルは、前記第1の複数の入力及び格納された前記重み値に基づいて前記第1の複数の出力を生成するように構成された、複数のメモリセルを含み、
前記第1の複数のシナプスの前記メモリセルは、行及び列に配置され、前記第1の複数のシナプスは、
前記メモリセルの前記行のうちの1つにおいて前記第1のゲートをそれぞれ電気的に接続する複数の第1の線と、
前記メモリセルの前記列のうちの1つにおいて前記第2のゲートをそれぞれ電気的に接続する複数の第2の線と、
前記メモリセルの前記行のうちの1つにおいて前記第3のゲートをそれぞれ電気的に接続する複数の第3の線と、
前記メモリセルの前記行のうちの1つにおいて前記ソース領域をそれぞれ電気的に接続する複数の第4の線と、
前記メモリセルの前記列のうちの1つにおいて前記ドレイン領域をそれぞれ電気的に接続する複数の第5の線と、を含み、
前記第1の複数のシナプスは、前記複数の第5の線において前記第1の複数の入力を電圧として受信するように、かつ前記複数の第4の線において前記第1の複数の出力を電流として提供するように構成された、ニューラルネットワークデバイス。
【請求項12】
前記第1の複数の出力を受信するように構成された第1の複数のニューロンを更に含む、請求項11に記載のニューラルネットワークデバイス。
【請求項13】
前記第1の複数のニューロンから第2の複数の入力を受信するように、かつ前記第2の複数の入力から第2の複数の出力を生成するように構成された第2の複数のシナプスを更に備え、前記第2の複数のシナプスは、
複数の第2のメモリセルであって、前記第2のメモリセルのそれぞれは、半導体基板内に形成され、間に第2のチャネル領域が延在する離間した第2のソース領域及び第2のドレイン領域と、前記第2のチャネル領域の第1の部分の上方に配設され、前記第2のチャネル領域の前記第1の部分から絶縁された第2の浮遊ゲートと、前記第2のチャネル領域の第2の部分の上方に配設され、前記第2のチャネル領域の前記第2の部分から絶縁された第4のゲートと、前記第2の浮遊ゲートの上方に配設され、前記第2の浮遊ゲートから絶縁された第5のゲートと、前記第2のソース領域の上方に配設され、前記第2のソース領域から絶縁された第6のゲートと、を含み、
前記複数の第2のメモリセルのそれぞれは、前記第2の浮遊ゲートの多くの電子に対応する第2の重み値を格納するように構成され、
前記複数の第2のメモリセルは、前記第2の複数の入力及び格納された前記第2の重み値に基づいて前記第2の複数の出力を生成するように構成された、複数の第2のメモリセルを含み、
前記第2の複数のシナプスの前記第2のメモリセルは、行及び列に配置され、前記第2の複数のシナプスは、
前記第2のメモリセルの前記行のうちの1つにおいて前記第4のゲートをそれぞれ電気的に接続する複数の第6の線と、
前記第2のメモリセルの前記列のうちの1つにおいて前記第5のゲートをそれぞれ電気的に接続する複数の第7の線と、
前記第2のメモリセルの前記行のうちの1つにおいて前記第6のゲートをそれぞれ電気的に接続する複数の第8の線と、
前記第2のメモリセルの前記行のうちの1つにおいて前記第2のソース領域をそれぞれ電気的に接続する複数の第9の線と、
前記第2のメモリセルの前記列のうちの1つにおいて前記第2のドレイン領域をそれぞれ電気的に接続する複数の第10の線と、を含み、
前記第2の複数のシナプスは、前記複数の第10の線において前記第2の複数の入力を電圧として受信するように、かつ前記複数の第9の線において前記第2の複数の出力を電流として提供するように構成された、請求項12に記載のニューラルネットワークデバイス。
【請求項14】
前記第2の複数の出力を受信するように構成された第2の複数のニューロンを更に含む、請求項13に記載のニューラルネットワークデバイス。
【請求項15】
ニューラルネットワークデバイスであって、該ニューラルネットワークデバイスは、
第1の複数の入力を受信するように、かつ前記第1の複数の入力から第1の複数の出力を生成するように構成された、第1の複数のシナプスを備え、前記第1の複数のシナプスは、
複数のメモリセルであって、前記メモリセルのそれぞれは、半導体基板内に形成され、間にチャネル領域が延在する離間したソース領域及びドレイン領域と、前記チャネル領域の第1の部分の上方に配設され、前記チャネル領域の前記第1の部分から絶縁された浮遊ゲートと、前記チャネル領域の第2の部分の上方に配設され、前記チャネル領域の前記第2の部分から絶縁された第1のゲートと、前記浮遊ゲートの上方に配設され、前記浮遊ゲートから絶縁された第2のゲートと、前記ソース領域の上方に配設され、前記ソース領域から絶縁された第3のゲートと、を含み、
前記複数のメモリセルのそれぞれは、前記浮遊ゲートの多くの電子に対応する重み値を格納するように構成され、
前記複数のメモリセルは、前記第1の複数の入力及び格納された前記重み値に基づいて前記第1の複数の出力を生成するように構成された、複数のメモリセルを含み、
前記第1の複数のシナプスの前記メモリセルは、行及び列に配置され、前記第1の複数のシナプスは、
前記メモリセルの前記行のうちの1つにおいて前記第1のゲートをそれぞれ電気的に接続する複数の第1の線と、
前記メモリセルの前記行のうちの1つにおいて前記第2のゲートをそれぞれ電気的に接続する複数の第2の線と、
前記メモリセルの前記行のうちの1つにおいて前記第3のゲートをそれぞれ電気的に接続する複数の第3の線と、
前記メモリセルの前記行のうちの1つにおいて前記ソース領域をそれぞれ電気的に接続する複数の第4の線と、
前記メモリセルの前記列のうちの1つにおいて前記ドレイン領域をそれぞれ電気的に接続する複数の第5の線と、
前記第5の線のうちの1つとそれぞれ電気的に直列接続された複数のトランジスタと、を含み、
前記第1の複数のシナプスは、前記複数のトランジスタのゲートにおいて前記第1の複数の入力を電圧として受信するように、かつ前記複数の第4の線において前記第1の複数の出力を電流として提供するように構成された、ニューラルネットワークデバイス。
【請求項16】
前記第1の複数の出力を受信するように構成された第1の複数のニューロンを更に含む、請求項15に記載のニューラルネットワークデバイス。
【請求項17】
前記第1の複数のニューロンから第2の複数の入力を受信するように、かつ前記第2の複数の入力から第2の複数の出力を生成するように構成された第2の複数のシナプスを更に備え、前記第2の複数のシナプスは、
複数の第2のメモリセルであって、前記第2のメモリセルのそれぞれは、半導体基板内に形成され、間に第2のチャネル領域が延在する離間した第2のソース領域及び第2のドレイン領域と、前記第2のチャネル領域の第1の部分の上方に配設され、前記第2のチャネル領域の前記第1の部分から絶縁された第2の浮遊ゲートと、前記第2のチャネル領域の第2の部分の上方に配設され、前記第2のチャネル領域の前記第2の部分から絶縁された第4のゲートと、前記第2の浮遊ゲートの上方に配設され、前記第2の浮遊ゲートから絶縁された第5のゲートと、前記第2のソース領域の上方に配設され、前記第2のソース領域から絶縁された第6のゲートと、を含み、
前記複数の第2のメモリセルのそれぞれは、前記第2の浮遊ゲートの多くの電子に対応する第2の重み値を格納するように構成され、
前記複数の第2のメモリセルは、前記第2の複数の入力及び格納された前記第2の重み値に基づいて前記第2の複数の出力を生成するように構成された、複数の第2のメモリセルを含み、
前記第2の複数のシナプスの前記第2のメモリセルは、行及び列に配置され、前記第2の複数のシナプスは、
前記第2のメモリセルの前記行のうちの1つにおいて前記第4のゲートをそれぞれ電気的に接続する複数の第6の線と、
前記第2のメモリセルの前記行のうちの1つにおいて前記第5のゲートをそれぞれ電気的に接続する複数の第7の線と、
前記第2のメモリセルの前記行のうちの1つにおいて前記第6のゲートをそれぞれ電気的に接続する複数の第8の線と、
前記第2のメモリセルの前記行のうちの1つにおいて前記第2のソース領域をそれぞれ電気的に接続する複数の第9の線と、
前記第2のメモリセルの前記列のうちの1つにおいて前記第2のドレイン領域をそれぞれ電気的に接続する複数の第10の線と、
前記第10の線のうちの1つとそれぞれ電気的に直列接続された第2の複数のトランジスタと、を含み、
前記第2の複数のシナプスは、前記第2の複数のトランジスタのゲートにおいて前記第2の複数の入力を電圧として受信するように、かつ前記複数の第9の線において前記第2の複数の出力を電流として提供するように構成された、請求項16に記載のニューラルネットワークデバイス。
【請求項18】
前記第2の複数の出力を受信するように構成された第2の複数のニューロンを更に含む、請求項17に記載のニューラルネットワークデバイス。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願)
本出願は、2019年4月11日出願の米国特許出願第16/382,034号の利益を主張し、該出願は、2019年1月29日出願の米国仮特許出願第62/798,417号の優先権を主張するものである。
【0002】
(発明の分野)
本発明は、ニューラルネットワークに関する。
【背景技術】
【0003】
人工ニューラルネットワークは、多数の入力により得る機能を推定又は近似するために使用され、概ね既知である生物学的ニューラルネットワーク(動物の中枢神経系、特に脳)によく似ている。人工ニューラルネットワークは、概して、メッセージを交換する相互接続した「ニューロン」の層を含む。
図1は、人工ニューラルネットワークを図示しており、ここで円は、入力又はニューロンの層を表す。接続(シナプスと呼ばれる)は、矢印によって表され、経験に基づいて調整され得る数値の重みを有する。これは、ニューラルネットが入力に適応できるようにし、学習できるようにする。典型的には、ニューラルネットワークは、複数の入力の層を含む。典型的には、1つ以上のニューロンの中間層、及びニューラルネットワークの出力を提供するニューロンの出力層が存在する。それぞれのレベルでニューロンは、シナプスから受信したデータに基づいて個々に又は合わせて決定を行う。
【0004】
高性能情報処理用の人工ニューラルネットワークの開発における主要な課題の1つは、適切なハードウェア技術の欠如である。実際には、実用ニューラルネットワークは、非常に多数のシナプスに依拠しており、これによりニューロン間の高い接続性、すなわち、非常に高度な計算処理の並列化が可能となる。原理的には、このような複雑性は、デジタルスーパーコンピュータ又は専用GPU(グラフィックプロセッシングユニット)クラスタによって実現が可能である。しかしながら、高コストに加え、これらのアプローチはまた、生物学的ネットワークが主として低精度のアナログ計算を実施するのではるかに少ないエネルギーしか消費しないのと比較して、エネルギー効率が劣っていることに悩まされている。人工ニューラルネットワークにはCMOSアナログ回路が使用されてきたが、ほとんどのCMOS実装シナプスは、多数のニューロン及びシナプスを前提とすると、嵩高過ぎていた。
【発明の概要】
【0005】
上述の問題及び要求は、第1の複数の入力を受信するように、かつ前記第1の複数の入力から第1の複数の出力を生成するように構成された第1の複数のシナプスを含むニューラルネットワークデバイスによって対処される。前記第1の複数のシナプスは、複数のメモリセルを含み、前記メモリセルのそれぞれは、半導体基板内に形成され、間にチャネル領域が延在する離間したソース領域及びドレイン領域と、前記チャネル領域の第1の部分の上方に配設され、前記チャネル領域の前記第1の部分から絶縁された浮遊ゲートと、前記チャネル領域の第2の部分の上方に配設され、前記チャネル領域の前記第2の部分から絶縁された第1のゲートと、前記浮遊ゲートの上方に配設され、前記浮遊ゲートから絶縁された第2のゲートと、前記ソース領域の上方に配設され、前記ソース領域から絶縁された第3のゲートと、を含む。前記複数のメモリセルのそれぞれは、前記浮遊ゲートの多くの電子に対応する重み値を格納するように構成されている。前記複数のメモリセルは、前記第1の複数の入力及び格納された前記重み値に基づいて前記第1の複数の出力を生成するように構成されている。前記第1の複数のシナプスの前記メモリセルは、行及び列に配置される。前記第1の複数のシナプスは、前記メモリセルの前記行のうちの1つにおいて前記第1のゲートをそれぞれ電気的に接続する複数の第1の線と、前記メモリセルの前記行のうちの1つにおいて前記第2のゲートをそれぞれ電気的に接続する複数の第2の線と、前記メモリセルの前記行のうちの1つにおいて前記第3のゲートをそれぞれ電気的に接続する複数の第3の線と、前記メモリセルの前記行のうちの1つにおいて前記ソース領域をそれぞれ電気的に接続する複数の第4の線と、前記メモリセルの前記列のうちの1つにおいて前記ドレイン領域をそれぞれ電気的に接続する複数の第5の線と、を含む。前記第1の複数のシナプスは、前記複数の第2の線において、又は前記複数の第3の線若しくは前記複数の第4の線において前記第1の複数の入力を電圧として受信するように、かつ前記複数の第5の線において前記第1の複数の出力を電流として提供するように構成されている。
【0006】
ニューラルネットワークデバイスは、第1の複数の入力を受信するように、かつ第1の複数の出力を前記第1の複数の入力から生成するように構成された第1の複数のシナプスを含み得る。前記第1の複数のシナプスは、複数のメモリセルを含み、前記メモリセルのそれぞれは、半導体基板内に形成され、間にチャネル領域が延在する離間したソース領域及びドレイン領域と、チャネル領域の第1の部分の上方に配設され、前記チャネル領域の前記第1の部分から絶縁された浮遊ゲートと、前記チャネル領域の第2の部分の上方に配設され、前記チャネル領域の前記第2の部分から絶縁された第1のゲートと、前記浮遊ゲートの上方に配設され、前記浮遊ゲートから絶縁された第2のゲートと、前記ソース領域の上方に配設され、前記ソース領域から絶縁された第3のゲートと、を含む。前記複数のメモリセルのそれぞれは、前記浮遊ゲートの多くの電子に対応する重み値を格納するように構成されている。前記複数のメモリセルは、前記第1の複数の入力及び格納された前記重み値に基づいて前記第1の複数の出力を生成するように構成されている。前記第1の複数のシナプスの前記メモリセルは、行及び列に配置される。前記第1の複数のシナプスは、前記メモリセルの前記行のうちの1つにおいて前記第1のゲートをそれぞれ電気的に接続する複数の第1の線と、前記メモリセルの前記列のうちの1つにおいて前記第2のゲートをそれぞれ電気的に接続する複数の第2の線と、前記メモリセルの前記行のうちの1つにおいて前記第3のゲートをそれぞれ電気的に接続する複数の第3の線と、前記メモリセルの前記行のうちの1つにおいて前記ソース領域をそれぞれ電気的に接続する複数の第4の線と、前記メモリセルの前記列のうちの1つにおいて前記ドレイン領域をそれぞれ電気的に接続する複数の第5の線と、を含む。前記第1の複数のシナプスは、前記複数の第5の線において前記第1の複数の入力を電圧として受信するように、かつ前記複数の第4の線において前記第1の複数の出力を電流として提供するように構成されている。
【0007】
ニューラルネットワークデバイスは、第1の複数の入力を受信するように、かつ第1の複数の出力を前記第1の複数の入力から生成するように構成された第1の複数のシナプスを含み得る。前記第1の複数のシナプスは、複数のメモリセルを含み、前記メモリセルのそれぞれは、半導体基板内に形成され、間にチャネル領域が延在する離間したソース領域及びドレイン領域と、前記チャネル領域の第1の部分の上方に配設され、前記チャネル領域の前記第1の部分から絶縁された浮遊ゲートと、前記チャネル領域の第2の部分の上方に配設され、前記チャネル領域の前記第2の部分から絶縁された第1のゲートと、前記浮遊ゲートの上方に配設され、前記浮遊ゲートから絶縁された第2のゲートと、前記ソース領域の上方に配設され、前記ソース領域から絶縁された第3のゲートと、を含む。前記複数のメモリセルのそれぞれは、前記浮遊ゲートの多くの電子に対応する重み値を格納するように構成されている。前記複数のメモリセルは、前記第1の複数の入力及び格納された前記重み値に基づいて第1の複数の出力を生成するように構成されている。前記第1の複数のシナプスの前記メモリセルは、行及び列に配置される。前記第1の複数のシナプスは、前記メモリセルの前記行のうちの1つにおいて前記第1のゲートをそれぞれ電気的に接続する複数の第1の線と、前記メモリセルの前記行のうちの1つにおいて前記第2のゲートをそれぞれ電気的に接続する複数の第2の線と、前記メモリセルの前記行のうちの1つにおいて前記第3のゲートをそれぞれ電気的に接続する複数の第3の線と、前記メモリセルの前記行のうちの1つにおいて前記ソース領域をそれぞれ電気的に接続する複数の第4の線と、前記メモリセルの前記列のうちの1つにおいて前記ドレイン領域をそれぞれ電気的に接続する複数の第5の線と、前記第5の線のうちの1つとそれぞれ電気的に直列接続された複数のトランジスタと、を含む。前記第1の複数のシナプスは、前記複数のトランジスタのゲートにおいて前記第1の複数の入力を電圧として受信するように、かつ前記複数の第4の線において前記第1の複数の出力を電流として提供するように構成されている。
【0008】
本発明の他の目的及び特徴は、明細書、特許請求の範囲、添付図面を精読することによって明らかになるであろう。
【0009】
【0010】
【0011】
【0012】
【0013】
【0014】
【0015】
【0016】
【0017】
【0018】
【0019】
【0020】
【0021】
【0022】
【0023】
【0024】
【0025】
【0026】
【0027】
【0028】
【0029】
【0030】
【0031】
【図面の簡単な説明】
【0032】
【
図1】人工ニューラルネットワークを示す図である。
【
図2】従来の2ゲート不揮発性メモリセルの横断面図である。
【
図3】
図2のメモリセルに対する従来のアレイアーキテクチャを示す図である。
【
図4】従来の2ゲート不揮発性メモリセルの横断面図である。
【
図5】
図4のメモリセルに対する従来のアレイアーキテクチャを示す図である。
【
図6】従来の4ゲート不揮発性メモリセルの横断面図である。
【
図7】
図6のメモリセルに対する従来のアレイアーキテクチャを示す図である。
【
図8A】均等な間隔であるニューラルネットワークの重みレベルの割り当てを示す図である。
【
図8B】不均等な間隔であるニューラルネットワークの重みレベルの割り当てを示す図である。
【
図9】双方向調整アルゴリズムを示すフローチャートである。
【
図10】電流比較を使用した重みマッピングを示すブロック図である。
【
図11】電圧比較を使用した重みマッピングを示すブロック図である。
【
図12】不揮発性メモリアレイを利用する異なるレベルの例示のニューラルネットワークを示す図である。
【
図13】ベクトル乗算器マトリックスを示すブロック図である。
【
図14】様々なレベルのベクトル乗算器マトリックスを示すブロック図である。
【
図15】ドレイン加算マトリックス乗算器として配置された4ゲートのメモリセルのアレイの第1のアーキテクチャを示す概略図である。
【
図16】4ゲートのメモリセルを使用する電流電圧変換器を示す概略図である。
【
図17】ドレイン加算マトリックス乗算器として配置された4ゲートのメモリセルのアレイの第2のアーキテクチャを示す概略図である。
【
図18】ドレイン加算マトリックス乗算器として配置された4ゲートのメモリセルのアレイの第3のアーキテクチャを示す概略図である。
【
図19】ドレイン加算マトリックス乗算器として配置された4ゲートのメモリセルのアレイの第4のアーキテクチャを示す概略図である。
【
図20】ソース加算マトリックス乗算器として配置された4ゲートのメモリセルのアレイの第5のアーキテクチャを示す概略図である。
【
図21】ソース加算マトリックス乗算器として配置された4ゲートのメモリセルのアレイの第6のアーキテクチャを示す概略図である。
【
図22】ソース加算マトリックス乗算器として配置された4ゲートのメモリセルのアレイの第7のアーキテクチャを示す概略図である。
【
図23】メモリアレイと同じチップにある、メモリアレイの動作を実装するためのコントローラを示す図である。
【発明を実施するための形態】
【0033】
本発明の人工ニューラルネットワークは、CMOS技術及び不揮発性メモリアレイの組み合わせを利用する。デジタル不揮発性メモリは、周知である。例えば、米国特許第5,029,130号(「’130特許」)は、分割ゲート不揮発性メモリセルのアレイを開示する。’130特許に開示されているメモリセルは、
図2にメモリセル10として示される。各メモリセル10は、半導体基板12に形成されたソース領域及びドレイン領域14/16を含み、それらの間にチャネル領域18を有する。浮遊ゲート20は、チャネル領域18の第1の部分の上方に形成され、そこから絶縁されており(かつその伝導率を制御し)、かつドレイン領域16の一部分の上方に形成されている。制御ゲート22(すなわち、第2のチャネル制御ゲート)は、チャネル領域18の第2の部分の上方に配設され
、そこから絶縁された(かつその伝導率を制御する)第1の部分22bと、浮遊ゲート20の上方に延在する第2の部分22cと、を有する。浮遊ゲート20及び制御ゲート22は、ゲート酸化物26によって基板12から絶縁されている。
【0034】
メモリセル10は、制御ゲート22に高圧正電圧をかけることによって消去され(ここで電子は、浮遊ゲート20から除去される)、それにより、ファウラーノルドハイムトンネリングによって浮遊ゲート20から制御ゲート22まで中間絶縁体24を通って浮遊ゲート20の電子をトンネリングさせる。
【0035】
メモリセル10は、制御ゲート22に正電圧をかけ、かつドレイン16に正電圧をかけることによってプログラムされる(ここで電子は、浮遊ゲート20に印加される)。電子流は、ソース14からドレイン16に向かって流れることになる。電子は、制御ゲート22と浮遊ゲート20との間の間隙に達すると、加速し加熱されることになる。熱せられた電子のいくらかは、浮遊ゲート20からの静電引力に起因してゲート酸化物26を通って浮遊ゲート20に注入される。
【0036】
メモリセル10は、ドレイン16及び制御ゲート22に正の読み出し電圧をかけることによって読み出される(制御ゲートの下方のチャネル領域の部分をオンにする)。浮遊ゲート20が正に帯電する(すなわち、電子を消去し、ドレイン16の正電圧に容量結合される)と、浮遊ゲート20の下方のチャネル領域18の部分も同様にオンになり、電流は、チャネル領域18を流れ、これは、消去された状態つまり「1」の状態として検知される。浮遊ゲート20が負に帯電する(すなわち、電子でプログラムされる)と、浮遊ゲート20の下方のチャネル領域18の部分はほとんど又は完全にオフになり、電流はチャネル領域18を流れず(又はほとんど流れず)、これは、プログラムされた状態つまり「0」の状態として検出される。
【0037】
メモリセル10に対する従来のアレイアーキテクチャのアーキテクチャを
図3に示す。メモリセル10は、行及び列に配置される。各列において、メモリセルは、ミラー方式にエンドツーエンドで配置され、その結果、それらのメモリセルは、それぞれが共通ソース領域14(source、S)を共有するメモリセルのペアとして形成され、メモリセルペアの隣接するセットはそれぞれ共通ドレイン領域16(drain、D)を共有する。任意の所与のメモリセルの行のソース領域14は全て、ソース線14aによって電気的に接続される。任意の所与のメモリセルの列のドレイン領域16は全て、ビット線16aによって電気的に接続される。任意の所与のメモリセルの行の制御ゲート22は全て、制御ゲート線22aによって電気的に接続される。したがって、メモリセルを個々にプログラミング及び読み出しすることができる一方、メモリセル消去は1行ずつ実行される(メモリセルの各行は、制御ゲート線22aへの高電圧の適用によって一緒に消去される)。特定のメモリセルを消去する場合は、同じ行にある全てのメモリセルもまた消去される。
【0038】
当業者には、ソース及びドレインに互換性があり得ることが理解され、ここで浮遊ゲート20は、
図4に示されるように、ドレイン16の代わりにソース14の上方に部分的に延在し得る。
図5は、メモリセル10、ソース線14a、ビット線16a、及び制御ゲート線22aを含む対応するメモリセルアーキテクチャを最も良く示している。図から明らかなように、同じ行のメモリセル10は、同じソース線14a及び同じ制御ゲート線22aを共有し、一方同じ列の全てのセルのドレイン領域は、同じビット線16aに電気的に接続されている。アレイの設計は、デジタルアプリケーション用に最適化されており、例えば、1.6V及び7.6Vを選択した制御ゲート線22a及びソース線14aにそれぞれ印加し、選択したビット線16aを接地することによるなど、選択したセルの個々のプログラミングを可能にする。同じペア内の選択されていないメモリセルを擾乱することは、選択されていないビット線16aに2ボルト超の電圧を印加し、残りの線を接地することによって回避される。消去に関与しているプロセス(浮遊ゲート20から制御ゲート22までの電子のファウラーノルドハイムトンネリング)は、ドレイン電圧(すなわち、同じソース線14aを共有する行方向で2つの隣接するセルにより異なり得る電圧のみ)に弱く影響を受けるだけであるので、メモリセル10を個々に消去することはできない。動作電圧の非限定例としては、以下を挙げることができる。
表1
【表1】
読み出し1は、セル電流がビット線に出る読み出しモードである。読み出し2は、セル電流がソース線に出る読み出しモードである。
【0039】
3つ以上のゲートを有する分割ゲートメモリセルもまた既知である。例えば、
図6に示されるように、ソース領域14、ドレイン領域16、チャネル領域18の第1の部分の上方の浮遊ゲート20、チャネル領域18の第2の部分の上方の選択ゲート28(すなわち、第2のチャネル制御ゲート)、浮遊ゲート20の上方の制御ゲート22、及びソース領域14の上方の消去ゲート30を有するメモリセルが知られている(例えば、米国特許第6,747,310号を参照されたい)。ここで、全てのゲートは、浮遊ゲート20を除いて、非浮遊ゲートであり、つまり、それらは電圧源又は電流源に電気的に接続される又は接続可能である。プログラミングは、浮遊ゲート20にそれ自体を注入するチャネル領域18からの熱せられた電子によって示される。消去は、浮遊ゲート20から消去ゲート30へトンネリングする電子によって示される。
【0040】
4ゲートのメモリセルアレイのアーキテクチャは、
図7に示されるように構成され得る。この実施形態では、それぞれの水平の選択ゲート線28aは、メモリセルのその行の選択ゲート28全てを電気的に一緒に接続する。それぞれの水平の制御ゲート線22aは、メモリセルのその行の制御ゲート22全てを電気的に一緒に接続する。それぞれの水平のソース線14aは、ソース領域14を共有するメモリセルの2つの行に対するソース領域14全てを電気的に一緒に接続する。それぞれのビット線16aは、メモリセルのその列のドレイン領域16全てを電気的に一緒に接続する。それぞれの消去ゲート線30aは、消去ゲート30を共有するメモリセルの2つの行に対する消去ゲート30全てを電気的に一緒に接続する。以前のアーキテクチャと同様に、個々のメモリセルは、独立してプログラミング及び読み出しを行うことができる。しかしながら、メモリセルを個々に消去する方法はない。消去は、消去ゲート線30a上に高圧正電圧を印加することによって実行され、このことは同じ消去ゲート線30aを共有するメモリセルの両方の行の同時消去をもたらす。例示的な、非限定的な動作電圧としては、下の表2の動作電圧を挙げることができる(この実施形態では、選択ゲート線28aは、ワード線WLと呼ばれることがある)。
表2
【表2】
読み出し1は、セル電流がビット線に出る読み出しモードである。読み出し2は、セル電流がソース線に出る読み出しモードである。
【0041】
上述の不揮発性メモリアレイをニューラルネットワークで利用するために、2つの改変がなされ得る。第1に、線は、以下に更に説明されるように、アレイ内の他のメモリセルのメモリ状態に悪影響を与えずに各メモリセルを個々にプログラム、消去、及び読み出しすることができるように再構成され得る。第2に、メモリセルの連続(アナログ)プログラミングが提供され得る。具体的には、アレイ内の各メモリセルのメモリ状態又はプログラム状態(すなわち、浮遊ゲートにある電子の数を表す浮遊ゲートの電荷)は、独立して、かつ他のメモリセルの擾乱を最小にして、完全に消去された状態から完全にプログラムされた状態にまで連続的に変えることができ、逆もまた同様である。このことは、セル格納がアナログであるか、又は多数の別個の値のうちの1つを最低限格納することができ、それは、メモリアレイ内の全てのセルに対する非常に正確、かつ個々の調整を可能にし、またメモリアレイを格納に理想的にし、ニューラルネットワークのシナプシスの重みに微調整を加えることを意味する。
メモリセルのプログラミング及び格納
【0042】
メモリセル内に格納されるニューラルネットワークの重みレベルの割り当ては、
図8Aに示されるような均等な間隔、又は
図8Bに示されるような不均等な間隔であり得る。不揮発性メモリセルのプログラミングは、
図9に示されるものなど双方向調整アルゴリズムを使用して実装され得る。Icellは、プログラミングされる標的セルの読み出し電流であり、Itargetは、セルが理想的にプログラミングされる際の所望の読み出し電流である。標的セル読み出し電流Icellを読み出し(工程1)、標的読み出し電流Itargetと比較する(工程2)。標的セル読み出し電流Icellが、標的読み出し電流Itargetより大きい場合は、プログラミング調整プロセスを実行して(工程3)浮遊ゲート20の電子の数を増大させ(ルックアップテーブル又はシリコンに基づいた近似関数を使用して制御ゲート22の所望の初期及び増分プログラミング電圧VCGが決定され得る)(工程3a~3b)、これは、必要に応じて繰り返すことができる(工程3c)。標的セル読み出し電流Icellが、標的読み出し電流Itargetより小さい場合は、消去調整プロセスを実行して(工程4)浮遊ゲート20の電子の数を減少させ(ルックアップテーブル又はシリコンに基づいた近似関数を使用して制御ゲート30の所望の初期及び増分消去電圧VEGが決定され得る)(工程4a~4b)、これは、必要に応じて繰り返すことができる(工程4c)。プログラミング調整プロセスが標的読み出し電流を通り過ぎると、(許容できるデルタ値内で)標的読み出し電流を達成するまで次に消去調整プロセスを実行し(工程3d及び工程4aで始まる)、逆もまた同様である(工程4d及び工程3aで始まる)。
【0043】
不揮発性メモリセルのプログラミングは、プログラミング調整を使用して一方向の調整アルゴリズムを使用して代わりに実装され得る。このアルゴリズムを使用して、メモリセル10を最初に完全に消去し、次に標的メモリセル10の読み出し電流が標的閾値に達するまで
図9のプログラミング調整工程3a~3cを実行する。あるいは、不揮発性メモリセルの調整は、消去調整を使用して一方向の調整アルゴリズムを使用して実装され得る。このアプローチでは、メモリセルを最初に完全にプログラムし、次に標的メモリセルの読み出し電流が標的閾値に達するまで
図9の消去調整工程4a~4cを実行する。
【0044】
図10は、電流比較を使用した重みマッピングを示す図である。重みデジタルビット(例えば、各シナプシスに対して5ビットの重み、メモリセルの標的デジタル重みを表す)は、デジタルアナログ変換器(digital-to-analog converter、DAC)40に入力され、DAC40はビットを電圧Vout(例えば、64電圧レベル-5ビット)に変換する。Voutは、電圧電流変換器V/I Conv42によって電流Iout(例えば、64電流レベル-5ビット)に変換される。電流Ioutは、電流比較器IComp44に供給される。プログラム又は消去アルゴリズムの有効化は、メモリセル10に入力される(例えば、消去:EG電圧をインクリメント、又はプログラム:CG電圧をインクリメント)。出力メモリセル電流Icellout(すなわち、読み出し動作から)は、電流比較器IComp44に供給される。電流比較器IComp44は、メモリセル電流Icelloutを重みデジタルビット由来の電流Ioutと比較してメモリセル10に格納された重みを示す信号を生成する。
【0045】
図11は、電圧比較を使用した重みマッピングを示す図である。重みデジタルビット(例えば、各シナプシスに対して5ビットの重み)は、デジタルアナログ変換器(DAC)40に入力され、DAC40はビットを電圧Vout(例えば、64電圧レベル-5ビット)に変換する。Voutは、電圧比較器VComp46に供給される。プログラム又は消去アルゴリズムの有効化は、メモリセル10に入力される(例えば、消去:EG電圧をインクリメント、又はプログラム:CG電圧をインクリメント)。出力メモリセル電流Icelloutは、電圧V2outへの変換(例えば、64電圧レベル-5ビット)のために電流電圧変換器I/V Conv48に供給される。電圧V2outは、電圧比較器VComp46に供給される。電圧比較器VComp46は、電圧Vout及びV2outを比較してメモリセル10に格納された重みを示す信号を生成する。
【0046】
重みマッピング比較の別の実施形態は、入力重み及び/又はメモリセルの出力に対して可変パルス幅(すなわち、パルス幅は、重みの値に比例するか、又は反比例する)を使用する。重みマッピング比較の更に別の実施形態では、デジタルパルス(例えば、パルスの数が重みの値に比例するか、又は反比例する、クロックから生成されるパルス)が入力重み及び/又はメモリセルの出力に対して使用される。
不揮発性メモリセルアレイを使用するニューラルネットワーク
【0047】
図12は、不揮発性メモリアレイを利用するニューラルネットワークの非限定例を概念的に図示する。この例は、顔認識アプリケーションのために不揮発性メモリアレイニューラルネットを使用するが、不揮発性メモリアレイベースのニューラルネットワークを使用して他の任意の適切なアプリケーションを実施することができる。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フィルタは次に右側に1ピクセルだけシフトされ(すなわち、3ピクセルの列を右側に追加し、左側で3ピクセルの列をドロップする)、これにより、この新しく位置付けられたフィルタの9個のピクセル値がシナプスCB1に提供され、これにより、それらに同じ重みが乗算され、第2の単一の出力値が、関連するシナプスによって決定される。このプロセスを、3×3フィルタが32×32ピクセル画像全体にわたって3色全て及び全てのビットについてスキャンするまで続ける(精度値)。プロセスは次に、層C1の特徴マップ全てが計算されるまで、異なる重みのセットを使用して繰り返されて、C1の異なる特徴マップを生成する。
【0048】
本例では、層C1において、それぞれ30×30ピクセルを有する16個の特徴マップが存在する。各ピクセルは、入力とカーネルとの乗算から抽出された新しい特徴ピクセルであり、したがって、各特徴マップは、2次元アレイであり、したがってこの例では、シナプスCB1は、2次元アレイの16層を構成する(本明細書で言及されるニューロン層及びアレイは、必ずしも物理的関係ではなく論理的な関係であり、すなわち、アレイは必ずしも物理的な2次元アレイに配向されないことに留意する)。16個の特徴マップの各々は、フィルタスキャンに適用される16個の異なるシナプス重みのセットの1つによって生成される。C1特徴マップは全て、境界同定など、同じ画像特徴の異なる態様を対象とすることができる。例えば、第1のマップ(この第1のマップを生成するのに使用される全てのスキャンに共有される第1の重みセットを使用して生成される)は、円形エッジを識別することができ、第2のマップ(第1の重みセットと異なる第2の重みセットを使用して生成される)は、方形エッジ又は特定の特徴のアスペクト比などを識別することができる。
【0049】
層C1から層S1へ行く前には、各特徴マップ内の重なり合わずに連続する2×2領域からの値をプールする活性化関数P1(プーリング)が適用される。プーリング段階の目的は、平均して近隣の位置にすること(又はmax関数もまた使用され得る)、例えばエッジ位置の依存を低減すること、及び次の段階に行く前にデータサイズを低減することである。層S1において、16個の15×15特徴マップ(すなわち、それぞれ15×15ピクセルの異なるアレイ16個)が存在する。層S1から層C2へ行くCB2内のシナプス及び関連するニューロンは、S1内のマップを1ピクセルのフィルタシフトを使用して4×4フィルタでスキャンする。層C2において、22個の12×12特徴マップが存在する。層C2から層S2へ行く前には、各特徴マップ内の重なり合わずに連続する2×2領域からの値をプールする活性化関数P2(プーリング)が適用される。層S2において、22個の6×6特徴マップが存在する。活性化関数は、層S2から層C3へ行くシナプスCB3で適用され、ここで層C3内の全てのニューロンは層S2内の全てのマップに接続する。層C3において、64個のニューロンが存在する。層C3から出力層S3へ行くシナプスCB4は、S3をC3と完全に接続する。層S3における出力は、10個のニューロンを含み、ここで出力が最も高いニューロンが、クラスを決定する。この出力は、例えば、元の画像の内容の同定又は分類を示すことができる。
【0050】
シナプスの各レベルは、不揮発性メモリセルのアレイ又はアレイの一部を使用して実行される。
図13は、不揮発性メモリセルを含み、入力層と次の層との間のシナプスとして利用されるベクトルとマトリックスとの乗算(vector-by-matrix multiplication、VMM)アレイのブロック図である。具体的には、VMMアレイ32は、不揮発性メモリセルのアレイ33、消去ゲート及びワード線ゲートデコーダ34、制御ゲートデコーダ35、ビット線デコーダ36、並びにソース線デコーダ37を含み、それらのデコーダはメモリセルアレイ33に対する入力をデコードする。この例におけるソース線デコーダ37はまた、メモリセルアレイ33の出力をデコードする。あるいは、ビット線デコーダ36が、不揮発性メモリセルアレイ33の出力をデコードすることができる。メモリアレイは、2つの目的を果たす。第1に、VMMアレイ32によって使用される重みを格納する。第2に、メモリセルアレイは、メモリセルアレイに格納された重みを入力に対して有効に乗算し、結果を各出力線に沿って合算して出力を生成し、この出力は次の層への入力又は最後の層への入力になる。乗算及び加算の関数を実行することによって、メモリアレイは、別個の乗算及び加算の論理回路の必要性をなくし、また、その場でのメモリ計算により電力効率も良い。
【0051】
メモリセルアレイの出力は、メモリセルアレイの出力を合計してその畳み込み用の単一の値を生成する単一又は差動加算回路38に供給される。合計された出力値は、次に出力を整流する活性化関数回路39に供給される。活性化関数は、シグモイド関数、tanh関数、又はReLu関数とすることができる。回路39からの整流された出力値は、次の層(例えば上の説明ではC1)として特徴マップの要素になり、次いで、次のシナプスに適用されて次の特徴マップ層又は最後の層を生成する。したがって、この例では、メモリセルアレイ33は、複数のシナプスを構成し(ニューロンの前の層から、又は画像データベースなどの入力層から、入力を受信する)、加算回路38及び活性化関数回路39は、複数のニューロンを構成する。
【0052】
図14は、図中でVMMアレイ32a、32b、32c、32d及び32eとして標示されたVMMアレイ32の多数の層の使用を示すブロック図である。
図14に示されるように、入力(Inputxで示される)は、デジタルアナログ変換器31によってデジタルからアナログに変換され、入力VMMアレイ32aに提供される。入力VMMアレイ32aによって生成された出力は、次に、次のVMMアレイ(隠しレベル1)32bへの入力として提供され、次に、次のVMMアレイ(隠しレベル2)32cへの入力として提供される出力を生成する、などとなる。VMMアレイ32の様々な層は、畳み込みニューラルネットワーク(convolutional neural network、CNN)のシナプス及びニューロンの各層として機能する。VMMアレイ32a、32b、32c、32d及び32eはそれぞれスタンドアローンの物理的不揮発性メモリアレイとすることができ、又は複数のVMMアレイは、同じ物理的不揮発性メモリアレイの異なる部分を利用することができ、又は複数のVMMアレイは、同じ物理的不揮発性メモリアレイの重なり合う部分を利用することができる。
図14に示される例は、5つの層(32a、32b、32c、32d、32e)、すなわち、1つの入力層(32a)、2つの隠れ層(32b、32c)、及び2つの完全に接続された層(32d、32e)を含む。当業者であれば、これは単なる例示であり、代わりにシステムが2つを超える隠れ層及び2つを超える完全に接続された層を含み得ることを理解するであろう。
【0053】
図15は、ドレイン(ビット線)加算マトリックス乗算器として配置された、
図6の4ゲートのメモリセル10のアレイの構成を示す。
図15のアレイの様々なゲート線及び領域線は、
図7のアレイのものと同じである(対応する構造には同じ要素番号が付けられている)。そのセルに適切な重み値を使用してメモリセルのそれぞれがプログラミングされた後で、アレイは、ドレイン加算マトリックス乗算器として作動する。マトリックス電圧入力は、Vin0~Vin3であり、選択ゲート線28aに印加される。マトリックス電流出力Iout0...Ioutnは、ビット線16aに生成される。各出力Ioutは、列内の全てのセルについて入力電流Iに、セルに格納された重みWを乗じた値の合計である。
Iout=Σ(Ii
*Wij)
式中、「i」は行を表し、「j」はメモリセルが存在する列を表す。入力電圧が入力電流の代わりに印加される場合、
図15にVin0~Vin3として示されるように、各出力Ioutは、列内の全てのセルに対して、セル内に格納された重みWを入力電圧に乗じて合計した値に比例する。
Iout α Σ(Vi
*Wij)
【0054】
各メモリセル列は、その列内のメモリセルに格納された重み値の合計によって決まる出力電流Ioutとして表される合計された重み値を有する単一のニューロンとして作動する。任意の所与のニューロンの出力は電流の形態であり、これは、次の後続のVMMアレイ段のための活性化関数回路による調整後に入力電流Iinとして使用することができる。
【0055】
図15において、入力は電圧で、出力は電流であるとすると、第1の段後の各後続VMM段は、好ましくは、前のVMM段からの入来電流を、入力電圧Vinとして使用される電圧に変換するための回路機構を含む。
図16は、そのような電流電圧変換回路機構の例を示しているが、これは、後続の段に印加するために入来電流Iin0...IinNを入力電圧Vin0...VinNにログ変換する改変されたメモリセルの行である。本明細書に記載されたメモリセルは、弱反転にバイアスされる。
Ids=Io
*e
(Vg-Vth)/kVt=w
*Io
*e
(Vg)/kVt
式中、w=e
(-Vth)/kVtである。
入力電流を入力電圧に変換するためのメモリセルを使用するIーVログ変換器について:
Vg=k
*Vt
*log[Ids/wp
*Io]
式中、wpは、基準又は周辺メモリセルのwである。ベクトルマトリックス乗算器VMMとして使用されるメモリアレイについて、出力電流は以下である:
Iout=wa
*Io
*e
(Vg)/kVt、すなわち
Iout=(wa/wp)
*Iin=W
*Iin
W=e
(Vthp-Vtha)/kVt
式中、メモリアレイの各メモリセルのwa=wである。選択ゲート線28aは、入力電圧用のメモリセルのための入力として使用することができ、これは、電流から電圧への変換中に閉じられるスイッチBLRによってビット線16aに接続される。
【0056】
あるいは、本明細書に記載されたVMMアレイの不揮発性メモリセルは、線形領域で動作するように構成することができる。
Ids=β*(Vgs-Vth)*Vds;β=u*Cox*Wt/L
式中、Wt及びLは、それぞれ、トランジスタの幅及び長さである。
W α(Vgs-Vth)であり、これは、重みWが(Vgs-Vth)に比例することを意味する。
【0057】
選択ゲート線28a、又は制御ゲート線22a若しくはビット線16a若しくはソース線14aは、線形領域で動作させられるメモリセルのための入力として使用することができる。ビット線又はソース線は、出力ニューロンのための出力として使用することができる。
【0058】
I-V線形変換器用に、線形領域で動作するメモリセル(基準メモリセル又は周辺メモリセルなど)若しくはトランジスタ、又は抵抗器を使用して、入出力電流を入出力電圧に線形変換することができる。あるいは、本明細書に記載されたVMMアレイの不揮発性メモリセルは、飽和領域で動作するように構成することができる。
Ids=α1/2*β*(Vgs-Vth)2;β=u*Cox*Wt/L
W α(Vgs-Vth)2であり、これは、重みWが(Vgs-Vth)2に比例することを意味する。
【0059】
選択ゲート線又は制御ゲート線は、飽和領域で動作させられるメモリセルのための入力として使用することができる。ビット線又はソース線は、出力ニューロンのための出力として使用することができる。あるいは、本明細書に記載されるVMMアレイの不揮発性メモリセルは、全ての領域又はそれら(サブスレッショルド、線形、又は飽和)の組み合わせで使用することができる。任意の上述の電流電圧変換回路又は技術は、電流の形態の任意の所与のニューロンからの電流出力が、次の後続のVMMアレイ段のための活性化関数回路による調整後に入力として使用できるように、本明細書に記載の実施形態のいずれかと共に使用できる。
【0060】
図17は、ドレイン加算マトリックス乗算器として配置された、
図6の4ゲートのメモリセル10のアレイの別の構成を示す。
図17のアレイの線は、
図7のアレイ内のものと同じである。そのセルに適切な重み値を使用してメモリセルのそれぞれがプログラミングされた後で、アレイは、ドレイン加算マトリックス乗算器として作動する。マトリックス電圧入力は、Vin0~Vin3であり、制御ゲート線22aに印加される。マトリックス電流出力Iout0...Ioutnは、ビット線16aに生成される。各出力Ioutは、列内の全てのセルについて、セルに格納された重みWに比例するセル電流を合計したものである。前の実施形態と同様に、任意の所与のニューロンの出力は電流の形態であり、これは、次の後続のVMMアレイ段のための活性化関数回路による調整後に入力として使用することができる。
【0061】
図18は、ドレイン加算マトリックス乗算器として配置された、
図6の4ゲートのメモリセル10のアレイの別の構成を示す。
図18のアレイの線は、
図7のアレイ内のものと同じである。そのセルに適切な重み値を使用してメモリセルのそれぞれがプログラミングされた後で、アレイは、ドレイン加算マトリックス乗算器として作動する。マトリックス電圧入力は、Vin0~Vin1であり、消去ゲート線30aに印加される。マトリックス電流出力Iout0...Ioutnは、ビット線16aに生成される。各出力Ioutは、列内の全てのセルについて、セルに格納された重みWに比例するセル電流を合計したものである。前の実施形態と同様に、任意の所与のニューロンの出力は電流の形態であり、これは、次の後続のVMMアレイ段のための活性化関数回路による調整後に入力として使用することができる。
【0062】
図19は、ドレイン加算マトリックス乗算器として配置された、
図6の4ゲートのメモリセル10のアレイの別の構成を示す。
図19のアレイの線は、
図7のアレイ内のものと同じである。そのセルに適切な重み値を使用してメモリセルのそれぞれがプログラミングされた後で、アレイは、ドレイン加算マトリックス乗算器として作動する。マトリックス電圧入力は、Vin0~Vin1であり、ソース線14aに印加される。マトリックス電流出力Iout0...Ioutnは、ビット線16aに生成される。各出力Ioutは、列内の全てのセルについて、セルに格納された重みWに比例するセル電流を合計したものである。前の実施形態と同様に、任意の所与のニューロンの出力は電流の形態であり、これは、次の後続のVMMアレイ段のための活性化関数回路による調整後に入力として使用することができる。
【0063】
図20は、ソース加算マトリックス乗算器として配置された、
図6の4ゲートのメモリセル10のアレイの別の構成を示す。
図20のアレイの線は、各メモリセルを独立してプログラム、消去、及び読み出すことができるように、制御ゲート線22aが水平ではなく垂直に延びていることを除いて、
図7のアレイと同じである。具体的には、メモリセルの各列は、その列内のメモリセルの制御ゲート22を全て接続する制御ゲート線22a含む。マトリックス電圧入力Vin0...VinNは、制御ゲート線22aに提供され、マトリックス電流出力Iout0...Iout1は、ソース線14aに生成される。各出力Ioutは、行内の全てのセルについて、セルに格納された重みWに比例するセル電流を合計したものである。前の実施形態と同様に、任意の所与のニューロンの出力は電流の形態であり、これは、次の後続のVMMアレイ段のための活性化関数回路による調整後に入力として使用することができる。
【0064】
図21は、ソース加算マトリックス乗算器として配置された、
図6の4ゲートのメモリセル10のアレイの別の構成を示す。
図21のアレイの線は、
図20のアレイと同じである。マトリックス電圧入力Vin0...VinNは、ビット線16aに提供され、マトリックス電流出力Iout0...Iout1は、ソース線14aに生成される。各出力Ioutは、行内の全てのセルについて、セルに格納された重みWに比例するセル電流を合計したものである。前の実施形態と同様に、任意の所与のニューロンの出力は電流の形態であり、これは、次の後続のVMMアレイ段のための活性化関数回路による調整後に入力として使用することができる。
【0065】
図22は、ソース加算マトリックス乗算器として配置された、
図6の4ゲートのメモリセル10のアレイの別の構成を示す。
図22のアレイの線は、各ビット線が、そのビット線と直列に接続されたビット線バッファトランジスタ60を含む(すなわち、ビット線の任意の電流は、このトランジスタのソースードレイン間を通って流れる)ことを除いて、
図7のアレイと同じである。トランジスタは、トランジスタのゲート端子の入力電圧が増加するにつれてビット線を選択的にかつ徐々にオンにする段階的なスイッチとして作動する(すなわち、トランジスタはビット線をその電流源又は電圧源に結合する)。マトリックス電圧入力Vin0...VinNは、トランジスタ60のゲートに提供され、マトリックス電流出力Iout0...Iout1は、ソース線14aに提供される。この構成の利点は、入力を電圧の形態でビット線に直接供給する代わりに、マトリックス入力を(トランジスタ60を動作させる)電圧として供給できることである。これにより、ビット線を動作させる定電圧源を使用することが可能になり、トランジスタ60を使用して、これらの定電圧源を、トランジスタのゲートに供給される入力電圧Vinに応じてビット線に徐々に結合することができるようになり、その結果、メモリアレイに電圧入力を供給することが不要になる。前の実施形態と同様に、任意の所与のニューロンの出力は電流の形態であり、これは、次の後続のVMMアレイ段のための活性化関数回路による調整後に入力として使用することができる。
【0066】
上記の機能の全ては、コントローラ100の制御下で実行することができ、このコントローラは、ニューラルネット機能に使用される上述のメモリセル10のメモリアレイに接続される。
図23に示すように、コントローラ100は、好ましくは、メモリアレイ(複数可)120と同じ半導体チップ又は基板110にある。しかしながら、コントローラ100はまた、別個の半導体チップ又は基板に配置されてもよく、半導体チップ若しくは基板110に又はそれから離れて異なる場所に配設された複数のコントローラの集合体であってもよい。
【0067】
本発明は、本明細書に図示された上記実施形態(複数可)に限定されるものではなく、任意の特許請求の範囲の範疇に収まるあらゆる変形例を包含することが理解されよう。例えば、本明細書で本発明に言及することは、任意の特許請求項又は特許請求項の用語の範囲を限定することを意図しておらず、その代わり、単に、1つ以上の特許請求項によって網羅され得る1つ以上の特徴に言及するものである。上記で説明した材料、プロセス、及び数値の実施例は、単に例示的なものであり、特許請求の範囲を限定するものとみなされるべきではない。単一の材料層は、かかる又は類似の材料から構成される多数の層として形成することができ、そして、逆もまた同様である。各メモリセルアレイの出力は、次のニューロン層に送られる前にフィルタコンデンセーションによって操作されるが、そうである必要はない。最後に、上述したマトリックス乗算器アレイの実施形態のそれぞれについて、入力電圧又は出力電流に使用されていない任意の線に関しては、その構成のメモリセルについて本明細書の表に開示される公称読み出し電圧をそれらの線に動作中に印加することができる(ただし必須ではない)。
【0068】
本明細書で使用される、用語「の上方に(over)」及び「に(on)」は共に、「上に直接」(中間材料、要素、又は間隙がそれらの間に配設されていない)及び「上に間接的に」(中間材料、要素、又は間隙がそれらの間に配設されている)を包括的に含むことに留意されるべきである。同様に、「隣接した」という用語は、「直接隣接した」(中間材料、要素、又は間隙がそれらの間に配設されていない)、及び「間接的に隣接した」(中間材料、要素、又は間隙がそれらの間に配設されている)を含み、「に取り付けられた」は、「に直接取り付けられた」(中間材料、要素、又は間隙がそれらの間に配設されていない)、及び「に間接的に取り付けられた」(中間材料、要素、又は間隙がそれらの間に配設されている)を含み、「電気的に結合された」は、「直接電気的に結合された」(中間材料又は要素がそれらの間で要素を電気的に連結していない)、及び「間接的に電気的に結合された」(中間材料又は要素がそれらの間で要素を電気的に連結している)を含む。例えば、「基板の上方に」要素を形成することは、中間材料/要素が介在せずに直接基板にその要素を形成することも、1つ以上の中間材料/要素が介在して間接的に基板にその要素を形成することも含み得る。
【国際調査報告】