(57)【要約】【課題】演算回路における演算処理の高速化及び低消費電力化が可能な半導体記憶装置を提供する。【解決手段】実施形態の半導体記憶装置は、不揮発性メモリ１０と、不揮発性メモリ１０からデータを読み出す読出回路アレイ２０と、読出回路アレイ２０からデータを受け取る積和演算器アレイ３０と、読出回路アレイ２０と積和演算器アレイ３０との間に接続され、第１ビット幅を持つバスＢＵ１と、積和演算器アレイ３０と電気的に接続された演算コントローラ６０と、演算コントローラ６０に接続され、前記第１ビット幅より小さい第２ビット幅を持つバスＢＵ２とを備える。【選択図】図２
2019057053.tif 000002
【特許請求の範囲】
【請求項１】
データを不揮発に記憶する不揮発性メモリと、
前記不揮発性メモリからデータを読み出す読出回路と、
前記読出回路からデータを受け取る演算回路と、
前記読出回路と前記演算回路との間に接続され、第１ビット幅を持つ第１バスと、
前記演算回路と電気的に接続されたコントローラと、
前記コントローラに接続され、前記第１ビット幅より小さい第２ビット幅を持つ第２バスと、
を具備する半導体記憶装置。
【請求項２】
前記読出回路は、前記第１バスにより前記演算回路に直接接続される請求項１に記載の半導体記憶装置。
【請求項３】
前記演算回路は、前記読出回路から前記第１バスにより伝送された第１データと、前記コントローラから供給された第２データとで演算処理を行い、第３データを出力し、
前記コントローラは、前記第３データを受け取り、前記第３データを前記第２バスにより出力する請求項１または２に記載の半導体記憶装置。
【請求項４】
前記読出回路と前記演算回路との間の前記第１バスに接続されたデータ分配回路をさらに具備し、
前記データ分配回路は、前記第１バスにより伝送されたデータを、前記データに対応する前記演算回路に分配する請求項１または２に記載の半導体記憶装置。
【請求項５】
前記第１バスが持つ前記第１ビット幅は、前記不揮発性メモリが有するページ単位のビット数に対応する請求項１乃至４のいずれかに記載の半導体記憶装置。
【請求項６】
前記不揮発性メモリ、前記読出回路、前記演算回路、及び前記コントローラのうちの少なくとも何れかは、同一の半導体チップまたは同一のパッケージに配置されている請求項１乃至５のいずれかに記載の半導体記憶装置。
【請求項７】
前記演算回路は、積和演算を行う積和演算器を含む請求項１乃至６のいずれかに記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
実施形態は、不揮発性メモリを有する半導体記憶装置に関するものである。
【背景技術】
【０００２】
例えば、ディープラーニング等が画像処理、音声認識等、様々な分野で成果を上げており、ディープラーニングで処理される多量なデータの演算処理を高効率で実行できるハードウェアへの期待が高まっている。このような多量なデータの演算処理を実行する装置では、メモリセルアレイからデータが読み出され、読み出されたデータが演算回路に供給されて、演算処理が行われる場合が多い。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−０１６７２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
演算回路における演算処理の高速化及び低消費電力化が可能な半導体記憶装置を提供する。
【課題を解決するための手段】
【０００５】
実施形態の半導体記憶装置は、データを不揮発に記憶する不揮発性メモリと、前記不揮発性メモリからデータを読み出す読出回路と、前記読出回路からデータを受け取る演算回路と、前記読出回路と前記演算回路との間に接続され、第１ビット幅を持つ第１バスと、
前記演算回路と電気的に接続されたコントローラと、前記コントローラに接続され、前記第１ビット幅より小さい第２ビット幅を持つ第２バスとを具備する。
【図面の簡単な説明】
【０００６】
【図１】第１実施形態の半導体記憶装置の構成を示す回路図である。
【図２】図１に示した不揮発性メモリ、読出回路アレイ、積和演算器アレイ及び演算コントローラの回路接続を示す図である。
【図３】第１実施形態の半導体記憶装置における積和演算器の構成を示す図である。
【図４】第１実施形態の半導体記憶装置における不揮発性メモリのメモリセルアレイの回路図である。
【図５】第１実施形態の変形例の半導体記憶装置の構成を示す回路図である。
【図６】第２実施形態の半導体記憶装置の構成を示す回路図である。
【図７】第２実施形態の半導体記憶装置の構造を示す断面図である。
【発明を実施するための形態】
【０００７】
以下、図面を参照して実施形態について説明する。以下の説明において、同一の機能及び構成を有する構成要素については同一符号を付す。また、以下に示す各実施形態は、この実施形態の技術的思想を具体化するための装置や方法を例示するものであって、構成部品の材質、形状、構造、配置等を下記のものに特定するものではない。
【０００８】
各機能ブロックは、ハードウェア、コンピュータソフトウェアのいずれかまたは両者を組み合わせたものとして実現することができる。各機能ブロックが以下の例のように区別されていることは必須ではない。例えば、一部の機能が例示の機能ブロックとは別の機能ブロックによって実行されてもよい。さらに、例示の機能ブロックがさらに細かい機能サブブロックに分割されていてもよい。
【０００９】
［１］第１実施形態
第１実施形態の半導体記憶装置について説明する。
【００１０】
［１−１］半導体記憶装置の構成
まず、第１実施形態の半導体記憶装置の構成について説明する。図１は、第１実施形態の半導体記憶装置の構成を示す回路図である。
【００１１】
図示するように、半導体記憶装置１００は、不揮発性メモリ１０、読出回路アレイ２０、積和演算器アレイ３０、入力バッファ４０、出力バッファ５０、演算コントローラ６０、パラレル変換回路７０、及びメモリコントローラ８０を備える。演算コントローラ６０及びメモリコントローラ８０は、外部のホストデバイス２００、例えば種々のコンピュータ等に接続される。
【００１２】
不揮発性メモリ１０は、例えば、ＮＡＮＤ型フラッシュメモリを含む。ＮＡＮＤ型フラッシュメモリは、メモリセルに不揮発にデータを記憶する。ＮＡＮＤ型フラッシュメモリでは、ページ単位（例えば、数千ビット）で書き込み及び読み出しが行われる。ＮＡＮＤ型フラッシュメモリのメモリセルアレイについては後で詳述する。
【００１３】
読出回路アレイ２０は、アレイ状に配置されたセンスアンプを有する。センスアンプは、不揮発性メモリ１０のメモリセルに記憶されたデータをページ単位あるいはページ単位より小さいビット数で読み出す。以下、読出回路アレイ２０により読み出されたデータをリードデータと記す。
【００１４】
読出回路アレイ２０と積和演算器アレイ３０との間は、第１ビット幅（例えば、ページ単位のビット数）を持つバスＢＵ１で接続される。積和演算器アレイ３０は、アレイ状に配置された積和演算器を有する。積和演算器は、不揮発性メモリ１０から読出回路アレイ２０により読み出されたリードデータと、入力バッファ４０から供給された入力データとの積和演算を行い、演算結果（以下、演算データ）を出力する。
【００１５】
入力バッファ４０は、演算コントローラ６０から受け取った入力データを一時的に記憶する。さらに、出力バッファ５０は、積和演算器アレイ３０から受け取った演算データを一時的に記憶する。
【００１６】
演算コントローラ６０とホストデバイス２００との間は、第１ビット幅より小さい（あるいは狭い）第２ビット幅を持つバスＢＵ２で接続される。言い換えると、バスＢＵ２のバス幅（第２ビット幅）は、バスＢＵ１のバス幅（第１ビット幅）より小さい。演算コントローラ６０は、ホストデバイス２００から供給される命令に従い、積和演算器アレイ３０を制御する。演算コントローラ６０は、ホストデバイス２００から受け取った入力データを、入力バッファ４０を介して積和演算器アレイ３０に供給する。演算コントローラ６０は、また積和演算器アレイ３０から出力された演算データを、出力バッファ５０を介して受け取る。そして、演算コントローラ６０は、バスＢＵ２を用いて演算データをホストデバイス２００に出力する。
【００１７】
また、読出回路アレイ２０とパラレル変換回路７０との間は、積和演算器アレイ３０と同様に、第１ビット幅を持つバスＢＵ１で接続される。パラレル変換回路７０とメモリコントローラ８０との間は、第３のビット幅を持つバスＢＵ３で接続される。パラレル変換回路７０は、読出回路アレイ２０から第１ビット幅を持つバスＢＵ１で伝送されたリードデータを、第１ビット幅より小さい第３ビット幅（例えば、８ビット）のデータに変換する。第３ビット幅は、第２ビット幅と同じであってもよいし、あるいは異なっていてもよい。以下、パラレル変換回路７０により変換されたデータを変換データと記す。パラレル変換回路７０は、バスＢＵ３を用いて変換データをメモリコントローラ８０に出力する。
【００１８】
メモリコントローラ８０とホストデバイス２００との間は、第４ビット幅を持つバスＢＵ４で接続される。第４ビット幅は、第３ビット幅と同じであってもよいし、あるいは異なっていてもよい。メモリコントローラ８０は、ホストデバイス２００から供給される命令に従い、不揮発性メモリ１０、読出回路アレイ２０、及びパラレル変換回路７０を制御する。メモリコントローラ８０は、またＥＣＣ回路を有する。ＥＣＣ回路は、データの誤り訂正（ＥＣＣ：Error Checking and Correcting）処理を実行する。すなわちＥＣＣ回路は、データの書き込み時には書き込みデータに基づいてパリティを生成し、読み出し時にはパリティからシンドロームを生成して誤りを検出し、この誤りを訂正する。メモリコントローラ８０は、パラレル変換回路７０から受け取った変換データに対してＥＣＣ処理を行い、訂正したデータを、バスＢＵ４を用いてホストデバイス２００に出力する。
【００１９】
半導体記憶装置１００では、同一の半導体チップ（シリコン基板）上あるいは同一のパッケージ内に、不揮発性メモリ１０、読出回路アレイ２０、積和演算器アレイ３０、入力バッファ４０、出力バッファ５０、演算コントローラ６０、及びパラレル変換回路７０が配置される。また、同一の半導体チップ（シリコン基板）上あるいは同一のパッケージ内に、メモリコントローラ８０が配置される。なお、同一の半導体チップ上（同一のパッケージ内）にどの回路を配置するかは任意である。
【００２０】
次に、不揮発性メモリ１０、読出回路アレイ２０、積和演算器アレイ３０、及び演算コントローラ６０の詳細な構成を説明する。図２は、図１に示した不揮発性メモリ、読出回路アレイ、積和演算器アレイ、及び演算コントローラの回路接続を示す図である。
【００２１】
不揮発性メモリ１０には、重み付けされたデータ（以下、パラメータと記す）が記憶される。パラメータは、積和演算器アレイ３０において演算処理に使用される。具体的には、不揮発性メモリ１０は、記憶領域Ｒ１、Ｒ２、…、Ｒｎを有する。ｎは１以上の自然数である。記憶領域Ｒ１、Ｒ２、…、Ｒｎには、パラメータＤ１、Ｄ２、…、Ｄｎがそれぞれ記憶されている。
【００２２】
記憶領域Ｒ１、Ｒ２、…、Ｒｎ内のメモリセルには、ビット線ＢＬ１、ＢＬ２、…、ＢＬｎがそれぞれ接続される。ビット線ＢＬ１〜ＢＬｎは、例えばページ単位の本数からなり、読み出しまたは書き込みにおいて記憶領域Ｒ１〜Ｒｎのページ単位の信号を伝送する。
【００２３】
読出回路アレイ２０は、ビット線ＢＬ１、ＢＬ２、…、ＢＬｎにそれぞれ対応するセンスアンプＳ１、Ｓ２、…、Ｓｎを有する。ビット線ＢＬ１、ＢＬ２、…、ＢＬｎは、センスアンプＳ１、Ｓ２、…、Ｓｎにそれぞれ接続される。センスアンプＳ１〜Ｓｎは、ビット線ＢＬ１〜ＢＬｎにて伝送される信号からページ単位のリードデータを読み出す。なお、ビット線は、１ビットのデータを伝送する構成を有してもよいし、８ビット、１６ビット、３２ビットあるいは６４ビットを伝送する構成を有してもよい。
【００２４】
積和演算器アレイ３０は、センスアンプＳ１、Ｓ２、…、Ｓｎ（あるいは記憶領域Ｒ１、Ｒ２、…、Ｒｎ）にそれぞれ対応する積和演算器Ｐ１、Ｐ２、…、Ｐｎを有する。センスアンプＳ１、Ｓ２、…、Ｓｎと、積和演算器Ｐ１、Ｐ２、…、Ｐｎとの間には、第１ビット幅を持つバスＢＵ１が接続される。バスＢＵ１は、データ線ＤＬ１、ＤＬ２、…、ＤＬｎを有する。すなわち、センスアンプＳ１、Ｓ２、…、Ｓｎは、それぞれデータ線ＤＬ１、ＤＬ２、…、ＤＬｎにより積和演算器Ｐ１、Ｐ２、…、Ｐｎに接続される。
【００２５】
バスＢＵ１のデータ線ＤＬ１〜ＤＬｎの本数は、ビット線ＢＬ１〜ＢＬｎと同じ本数に設定される。なお、これに限るわけではなく、データ線ＤＬ１〜ＤＬｎの本数（第１ビット幅）は、ビット線より少ない本数で、かつバスＢＵ２が持つ第２ビット幅のビット数より大きく設定されてもよい。
【００２６】
また、積和演算回路アレイ３０は、入力バッファ４０及び出力バッファ５０に接続される。入力バッファ４０に記憶された入力データＤＩは積和演算器アレイ３０に供給される。積和演算器アレイ３０から出力された演算データＤＯは出力バッファ５０に記憶される。
【００２７】
演算コントローラ６０とホストデバイス２００との間には、第２ビット幅を持つバスＢＵ２が接続される。バスＢＵ２は、例えば外部入出力線ＥＬ１、ＥＬ２、…、ＥＬ８を有する。すなわち、演算コントローラ６０は、外部入出力線ＥＬ１、ＥＬ２、…、ＥＬ８によりホストデバイス２００に接続される。外部入出力線ＥＬ１〜ＥＬ８は、演算コントローラ６０とホストデバイス２００との間で入出力データを伝送する。バスＢＵ２が持つ第２ビット幅（バス幅）は、バスＢＵ１が持つ第１ビット幅より小さく、例えば８ビットである。
【００２８】
次に、積和演算器アレイ３０内の積和演算器Ｐｎの詳細な構成を説明する。図３は、積和演算器Ｐｎの構成を示す図である。
【００２９】
積和演算器Ｐｎは、レジスタ３１，３２，３５、乗算器３３、及び加算器３４を含む。積和演算器の動作は以下のようになる。レジスタ３１は、読出回路アレイ２０内のセンスアンプＳｎから供給されたパラメータＤｎを記憶する。レジスタ３２は、入力バッファ４０から供給された入力データＤＩを記憶する。乗算器３３は、パラメータＤｎと入力データＤＩを受け取り、パラメータＤｎと入力データＤＩを乗算する。加算器３４は、乗算されたデータＤＰと、レジスタ３５からフィードバックされたデータＤＯとを加算し、加算されたデータをレジスタ３５に出力する。レジスタ３５は、加算されたデータを記憶すると共に、データＤＯとして出力バッファ５０に出力する。
【００３０】
次に、不揮発性メモリ１０の一例としてＮＡＮＤ型フラッシュメモリのメモリセルアレイについて説明する。ＮＡＮＤ型フラッシュメモリは、メモリセルアレイ内に複数のブロックＢＬＫを有する。図４は、ＮＡＮＤ型フラッシュメモリが備えるメモリセルアレイ内のブロックＢＬＫの回路図である。
【００３１】
図４に示すように、ブロックＢＬＫは、例えば４つのストリングユニットＳＵ０，ＳＵ１，ＳＵ２，ＳＵ３を含む。さらに、ストリングユニットの各々は、複数のＮＡＮＤストリングＮＳを含む。なお、１ブロックＢＬＫ内のストリングユニットＳＵの数や、１ストリングユニットＳＵ内のＮＡＮＤストリングＮＳの数は任意である。以降、ストリングユニットＳＵと記した場合、複数のストリングユニットＳＵ０〜ＳＵ３の各々を示すものとする。
【００３２】
ＮＡＮＤストリングＮＳの各々は、例えば８個のメモリセルトランジスタＭＴ０，ＭＴ１，…，ＭＴ７と、選択トランジスタＳＴ１，ＳＴ２とを含んでいる。なお、メモリセルトランジスタＭＴ０と選択トランジスタＳＴ２との間、及びメモリセルトランジスタＭＴ７と選択トランジスタＳＴ１との間にダミートランジスタを設けてもよい。以降、メモリセルトランジスタＭＴと記した場合、メモリセルトランジスタＭＴ０〜ＭＴ７の各々を示し、選択トランジスタＳＴと記した場合、選択トランジスタＳＴ１，ＳＴ２の各々を示すものとする。
【００３３】
メモリセルトランジスタＭＴは、制御ゲートと電荷蓄積層とを含む積層ゲートを備え、データを不揮発に保持する。なお、メモリセルトランジスタＭＴは、電荷蓄積層に絶縁膜を用いたＭＯＮＯＳ（Metal-Oxide-Nitride-Oxide-Silicon）型であってもよいし、電荷蓄積層に導電膜を用いたＦＧ（Floating Gate）型であってもよい。本実施形態では、メモリセルトランジスタＭＴがＭＯＮＯＳ型である例を示す。さらに、メモリセルトランジスタＭＴの個数は８個に限られず、１６個や３２個、６４個、１２８個等であってもよく、その数は限定されるものではない。さらに、選択トランジスタＳＴ１及びＳＴ２の個数は任意である。
【００３４】
メモリセルトランジスタＭＴ０〜ＭＴ７は、選択トランジスタＳＴ１，ＳＴ２間に、そのソースまたはドレインが直列に接続されている。この直列接続の一端側のメモリセルトランジスタＭＴ７のドレインは、選択トランジスタＳＴ１のソースに接続され、他端側のメモリセルトランジスタＭＴ０のソースは、選択トランジスタＳＴ２のドレインに接続されている。
【００３５】
ストリングユニットＳＵ０〜ＳＵ３の選択トランジスタＳＴ１のゲートは、選択ゲート線ＳＧＤ０，ＳＧＤ１，ＳＧＤ２，ＳＧＤ３にそれぞれ接続される。以降、選択ゲート線ＳＧＤと記した場合、選択ゲート線ＳＧＤ０〜ＳＧＤ３の各々を示すものとする。同一のストリングユニットＳＵ内にある選択トランジスタＳＴ１のゲートは、同一の選択ゲート線ＳＧＤに共通に接続される。
【００３６】
ストリングユニットＳＵ０〜ＳＵ３の選択トランジスタＳＴ２のゲートは、選択ゲート線ＳＧＳに接続される。同一のストリングユニットＳＵ内にある選択トランジスタＳＴ２のゲートは、同一の選択ゲート線ＳＧＳに共通に接続される。
【００３７】
同一のブロックＢＬＫ内にあるメモリセルトランジスタＭＴ０〜ＭＴ７の制御ゲートはそれぞれワード線ＷＬ０〜ＷＬ７に共通に接続される。
【００３８】
すなわち、ワード線ＷＬ０〜ＷＬ７は同一ブロックＢＬＫ内の複数のストリングユニットＳＵ間で共通に接続されているのに対し、選択ゲート線ＳＧＤ，ＳＧＳは、同一ブロックであってもストリングユニットＳＵ毎に独立している。
【００３９】
また、メモリセルアレイ内でマトリクス状に配置されたＮＡＮＤストリングＮＳのうち、同一行にあるＮＡＮＤストリングＮＳの選択トランジスタＳＴ１のドレインは、ビット線ＢＬ０，ＢＬ１，…，ＢＬ（ｎ−１）のいずれかに共通に接続される。なお、ｎは１以上の自然数である。図４では、始まりのビット線をＢＬ０としている。以降、ビット線ＢＬと記した場合、ビット線ＢＬ０〜ＢＬ（ｎ−１）の各々を示すものとする。すなわち、ビット線ＢＬは、複数のストリングユニットＳＵ間でＮＡＮＤストリングＮＳに共通に接続されている。
【００４０】
また、ストリングユニットＳＵ０〜ＳＵ３内のＮＡＮＤストリングＮＳの選択トランジスタＳＴ２のソースは、ソース線ＳＬに共通に接続されている。
【００４１】
データの読み出し及び書き込みは、いずれかのブロックＢＬＫのいずれかのストリングユニットＳＵにおける、いずれかのワード線ＷＬに共通に接続された複数のメモリセルトランジスタＭＴに対して、一括して行われる。この単位を「ページ」と呼ぶ。
【００４２】
また、データの消去範囲は、１つのブロックＢＬＫに限定されず、複数のブロックが一括して消去されてもよく、１つのブロックＢＬＫ内の一部の領域が一括して消去されてもよい。
【００４３】
［１−２］半導体記憶装置の動作
次に、第１実施形態の半導体記憶装置の動作について説明する。不揮発性メモリ１０は記憶領域Ｒ１、Ｒ２、…、Ｒｎを有し、記憶領域Ｒ１、Ｒ２、…、Ｒｎに重み付けされたデータ（パラメータ）Ｄ０〜Ｄｎを記憶している。
【００４４】
読出回路アレイ２０内のセンスアンプＳ１〜Ｓｎは、記憶領域Ｒ１〜Ｒｎからパラメータを読み出す。
【００４５】
積和演算器アレイ３０内の積和演算器Ｐ１〜Ｐｎは、センスアンプＳ１〜Ｓｎにより読み出されたパラメータＤ１〜Ｄｎを、データ線ＤＬ１〜ＤＬｎを介してそれぞれ受け取る。すなわち、パラメータＤ１〜Ｄｎは、センスアンプＳ１〜Ｓｎから積和演算器Ｐ１〜Ｐｎに、第１ビット幅を持つバスＢＵ１（データ線ＤＬ１〜ＤＬｎ）を用いて伝送される。第１ビット幅は、ページ単位のビット数に対応する。あるいは、第１ビット幅は、ページ単位より小さく、バスＢＵ２の第２ビット幅より大きいビット数に対応する。また、積和演算器Ｐ１〜Ｐｎは、入力バッファ４０から入力データＤＩをそれぞれ受け取る。積和演算器Ｐ１〜Ｐｎは、パラメータＤ１〜Ｄｎと入力データＤＩとで積和演算を行い、演算データＤＯを出力する。
【００４６】
このように、積和演算器Ｐ１〜Ｐｎは、読出回路アレイ２０による一度の読み出し動作で得られるパラメータＤ１〜Ｄｎを受け取り、パラメータＤ１〜Ｄｎを用いて積和演算を実行できる。これにより、積和演算器アレイ３０における積和演算の処理速度を向上させることができる。
【００４７】
出力バッファ５０は、積和演算器アレイ３０から出力された演算データＤＯを記憶すると共に、演算データＤＯを演算コントローラ６０に出力する。
【００４８】
演算コントローラ６０は、受け取った演算データＤＯを、外部入出力線ＥＬ１〜ＥＬ８を介してホストデバイス２００に出力する。すなわち、演算データＤＯは、演算コントローラ６０からホストデバイス２００に、第２ビット幅を持つバスＢＵ２（外部入出力線ＥＬ１〜ＥＬ８）を用いて伝送される。第２ビット幅は、例えば８ビットである。
【００４９】
［１−３］第１実施形態の変形例
前述した第１実施形態では、読出回路アレイ２０と積和演算器アレイ３０が直接接続され、記憶領域Ｒｎと積和演算器Ｐｎが対応付けられている例を示した。この変形例では、データ分配回路を備え、読出回路アレイ２０内のセンスアンプＳｎから供給されたパラメータＤｎを、データ分配回路がそのパラメータＤｎに対応する積和演算器Ｐｎに分配する例を説明する。変形例では、第１実施形態と異なる点について主に説明する。
【００５０】
図５は、第１実施形態の変形例の半導体記憶装置の構成を示す回路図である。図示するように、変形例の半導体記憶装置１１０は、読出回路アレイ２０と積和演算器アレイ３０との間にデータ分配回路９０を備える。
【００５１】
読出回路アレイ２０とデータ分配回路９０との間は、積和演算器アレイ３０と同様に、第１ビット幅を持つバスＢＵ１で接続される。データ分配回路９０と積和演算器アレイ３０との間は、同様に、第１ビット幅を持つバスＢＵ５で接続される。データ分配回路９０は、読出回路アレイ２０内のセンスアンプＳｎから供給されたパラメータＤｎを、それらパラメータＤｎに対応する積和演算器Ｐｎに分配する。
【００５２】
変形例では、データ分配回路９０により、パラメータＤｎに対応する積和演算器ＰｎにパラメータＤｎを分配する。このため、記憶領域Ｒｎに関連付けられたパラメータＤｎを予め記憶して置く必要がない。その他の構成は、前述した第１実施形態と同様である。
【００５３】
［１−４］第１実施形態の効果
本実施形態よれば、演算処理における高速化及び低消費電力化が可能な半導体記憶装置を提供することができる。
【００５４】
第１実施形態では、不揮発性メモリ１０から読出回路アレイ２０にて読み出されたリードデータが、積和演算器アレイ３０にそのまま供給される。リードデータが積和演算器アレイ３０に供給される前に、例えばリードデータのビット幅を調整したりする必要がない。これにより、積和演算器アレイ３０における積和演算の処理速度を向上させることができると共に、消費電力を低減できる。
【００５５】
また、変形例では、データ分配回路９０により、積和演算器Ｐｎに対応するデータ（パラメータＤｎ）を分配することができるため、不揮発性メモリに記憶領域Ｒｎに関連付けられたデータを記憶して置く必要がなく、不揮発性メモリの構成の自由度が向上する。その他の効果は、前述した第１実施形態と同様である。
【００５６】
また、リードデータに誤りがある場合でも、誤りが許容できる記憶容量の不揮発性メモリ１０を用いることにより、言い換えると、エラー発生率が許容できる不揮発性メモリを用いることにより、ＥＣＣ回路を省くことが可能である。
【００５７】
［２］第２実施形態
前述した第１実施形態では、同一の半導体チップ上に、不揮発性メモリ１０と積和演算器アレイ３０を配置したが、この第２実施形態では、不揮発性メモリ１０と積和演算器アレイ３０とを別々の半導体チップ上に配置し、それらをＴＳＶ（Through Silicon Via）で接続する例を説明する。第２実施形態では、第１実施形態と異なる点について主に説明する。
【００５８】
［２−１］半導体記憶装置の構成
図６は、第２実施形態の半導体記憶装置の構成を示す回路図である。図示するように、パッケージ３００は、半導体チップ３１０，３２０を備える。半導体チップ３１０と半導体チップ３２０との端子間は、ＴＳＶ３３０で接続されている。
【００５９】
半導体チップ３１０には、不揮発性メモリ１０及び読出回路アレイ２０が配置される。半導体チップ３２０には、積和演算器アレイ３０、入力バッファ４０、出力バッファ５０、及び演算コントローラ６０が配置される。半導体チップ３１０内の読出回路アレイ２０と、半導体チップ３２０内の積和演算器アレイ３０との間は、ＴＳＶ３３０により電気的に接続される。
【００６０】
図７を用いて、パッケージ３００の構造について説明する。図７は、パッケージ３００の構造を示す断面図である。パッケージ３００は、パッケージ基板３４０上に半導体チップ３２０及び半導体チップ３１０が積層されてパッケージ化される。半導体チップ３２０、３１０が積層される方式として、ＴＳＶ方式を用いている。
【００６１】
以下に、パッケージ３００の構造を詳述する。パッケージ基板３４０の上面上に、半導体チップ３２０が配置され、さらに半導体チップ３２０上に半導体チップ３１０が配置される。
【００６２】
半導体チップ３２０，３１０には、その上面から下面に達するＴＳＶ（貫通電極）３２１、３３０がそれぞれ設けられる。ＴＳＶ３２１、３３０は、各半導体チップの上面から下面まで電気的に導通したビアである。ＴＳＶ３２１、３３０間にはバンプ３３１が設けられる。ＴＳＶ３２１、３３０及びバンプ３３１は、半導体チップ３２０、３１０間を電気的に接続する。
【００６３】
半導体チップ３２０の下面上に、電極３２２が設けられる。この電極３２２とパッケージ基板３４０との間に、バンプ３２３が設けられる。例えば、半導体チップ３２０は、ＴＳＶ３２１、電極３２２及びバンプ３２３を介してパッケージ基板３４０に電気的に接続される。また、半導体チップ３１０は、ＴＳＶ３３０、バンプ３３１、ＴＳＶ３２１、電極３２２及びバンプ３２３を介してパッケージ基板３４０に電気的に接続される。
【００６４】
パッケージ基板３４０の下面上にバンプ３４２が設けられる。パッケージ３００がＢＧＡパッケージの場合、バンプ３４２はハンダボールである。パッケージ基板３４０は、バンプ３４２を介して外部、例えばホストデバイス２００に電気的に接続される。
【００６５】
なお、第２実施形態は、パッケージ３００が演算処理の専用集積回路として構成された場合を示した。例えば、前述したパラレル変換回路７０及びメモリコントローラ８０等を追加すれば、汎用の不揮発性メモリとして構成することも可能である。
【００６６】
第２実施形態のその他の構成及び動作は、前述した第１実施形態と同様である。
【００６７】
［２−２］第２実施形態の効果
第２実施形態では、不揮発性メモリ１０と積和演算器アレイ３０とを別々の半導体チップ上に配置し、それらをＴＳＶで接続する。このような構成とすれば、不揮発性メモリ１０と積和演算器アレイ３０を同一の半導体チップ上に配置できない場合でも、読出回路アレイ２０と積和演算器アレイ３０をＴＳＶ３３０により接続できるため、演算処理を高速化でき、さらに消費電力を低減することも可能である。その他の効果は、前述した第１実施形態と同様である。
【００６８】
［３］その他変形例等
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００６９】
１０…不揮発性メモリ、２０…読出回路アレイ、３０…積和演算器アレイ、４０…入力バッファ、５０…出力バッファ、６０…演算コントローラ、７０…パラレル変換回路、８０…メモリコントローラ、９０…データ分配回路、１００…半導体記憶装置、２００…ホストデバイス、３００…パッケージ、３１０，３２０…半導体チップ、３３０…ＴＳＶ（Through Silicon Via）、３４０…パッケージ基板、ＢＵ１，ＢＵ２，ＢＵ３，ＢＵ４，ＢＵ５…バス、Ｐ１〜Ｐｎ…積和演算器、Ｒ１〜Ｒｎ…記憶領域、Ｓ１〜Ｓｎ…センスアンプ。
【図１】
2019057053.tif 000003
【図２】
2019057053.tif 000004
【図３】
2019057053.tif 000005
【図４】
2019057053.tif 000006
【図５】
2019057053.tif 000007
【図６】
2019057053.tif 000008
【図７】
2019057053.tif 000009