JP2019028569A - メモリシステム、半導体記憶装置及び信号処理システム - Google Patents

メモリシステム、半導体記憶装置及び信号処理システム Download PDF

Info

Publication number
JP2019028569A
JP2019028569A JP2017144840A JP2017144840A JP2019028569A JP 2019028569 A JP2019028569 A JP 2019028569A JP 2017144840 A JP2017144840 A JP 2017144840A JP 2017144840 A JP2017144840 A JP 2017144840A JP 2019028569 A JP2019028569 A JP 2019028569A
Authority
JP
Japan
Prior art keywords
weight
memory
write voltage
memory cell
unit
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.)
Pending
Application number
JP2017144840A
Other languages
English (en)
Inventor
大輔 才田
Daisuke Saida
大輔 才田
洋介 礒脇
Yosuke Isowaki
洋介 礒脇
ミカエル アルノ カンサ
Arno Kantha Michael
ミカエル アルノ カンサ
山田 健一郎
Kenichiro Yamada
健一郎 山田
光介 辰村
Kosuke Tatsumura
光介 辰村
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2017144840A priority Critical patent/JP2019028569A/ja
Priority to US15/911,211 priority patent/US10388350B2/en
Publication of JP2019028569A publication Critical patent/JP2019028569A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1675Writing or programming circuits or methods
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/161Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect details concerning the memory cell structure, e.g. the layers of the ferromagnetic memory cell
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1673Reading or sensing circuits or methods
    • 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/047Probabilistic or stochastic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Neurology (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Algebra (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Read Only Memory (AREA)
  • Semiconductor Memories (AREA)
  • Hall/Mr Elements (AREA)
  • Mram Or Spin Memory Techniques (AREA)
  • Detection And Correction Of Errors (AREA)
  • Memory System (AREA)

Abstract


【課題】データの書き込み時の反転確率の変化をデータ記憶に利用する。
【解決手段】メモリシステムは、読み書きが可能な複数のメモリセルを有する不揮発メモリと、信号処理経路又は信号処理ノードの重みに応じて、不揮発メモリの書込み電圧の電圧値またはパルス幅の少なくとも一方を制御する書込み電圧制御部と、書込み電圧制御部で制御された書込み電圧を用いて、複数のメモリセルのうち2以上のメモリセル群にデータを書き込む書込み部と、書込み部にてデータを書き込んだときに、メモリセル群の反転確率を検出する反転確率検出部と、検出された反転確率を重みに変換する重み変換部と、を備える。
【選択図】図1

Description

本発明の実施形態は、メモリシステム、半導体記憶装置及び信号処理システムに関する。
最近、人工知能(AI:Artificial Intelligence)が注目されているが、数多くのデータを用いた学習と、学習結果を用いた演算処理とを行う必要があり、処理量が膨大になる。特に、AIの学習と学習結果の利用の過程では、信号処理経路又は信号処理ノードの重みを用いた演算を多数回行う必要がある。また、ニューラルネットワークなどでは、積和演算も多数回行う必要があり、多数の重みの演算や積和演算等を高速かつ低消費電力で行うハードウェアが求められている。
多数の重みの演算や積和演算等を高速かつ低消費電力で行うには、低消費電力で高速アクセス可能なメモリが必要となる。この種のメモリの候補として、MRAM(Magnetoresistive Random Access Memory)が注目されている。MRAMは高い書き換え耐性と、高速に読出しと書込みを行う動作性能と、高集積可能な小セル面積の3つの特徴を同時に満たしうるメモリである。特に、MRAMの中でも、MTJ(Magnetoresistive Tunnel Junction)素子を用いたSTT−MRAM(Spin Transfer Torque MRAM)と呼ばれる垂直磁気のスピン注入を用いた方式は、書き込み電流と書き込み遅延が非常に小さく、高速動作が可能なため、幅広い応用が期待されている。
特開2016−62463号公報
本発明が解決しようとする課題は、データの書き込み時の反転確率の変化をデータ記憶に利用するメモリシステム、半導体記憶装置及び信号処理システムを提供するものである。
本実施形態によるメモリシステムは、不揮発メモリと、書込み電圧制御部と、書込み部と、反転確率検出部と、重み変換部とを備えている。不揮発メモリは、読み書きが可能な複数のメモリセルを有する。書込み電圧制御部は、信号処理経路又は信号処理ノードの重みに応じて、前記不揮発メモリの書込み電圧の電圧値またはパルス幅の少なくとも一方を制御する。書込み部は、前記書込み電圧制御部で制御された前記書込み電圧を用いて、前記複数のメモリセルのうち2以上のメモリセル群にデータを書き込む。反転確率検出部は、前記書込み部にてデータを書き込んだときに、前記メモリセル群の反転確率を検出する。重み変換部は、前記検出された反転確率を重みに変換する。
一実施形態による信号処理システム1の概略構成を示すブロック図。 不揮発メモリ3及びメモリシステム10の内部構成を示すブロック図。 コントローラ12の内部構成の一例を示すブロック図。 36本のワード線と20本のビット線対を有するメモリセル領域を示す図。 ビット線の書込み電圧Vと反転確率Pswとの対応関係を示すグラフ。 3×3マス目にて3種類の文字Iを表現する例を示す図。 3×3マス目にて3種類の文字Cを表現する例を示す図。 3×3マス目にて3種類の文字Tを表現する例を示す図。 図6A〜図6Cの重みの和を計算する処理を示す図。 36個のシナプスの反転確率の実験結果を示す図。 図8から36個のシナプスの反転確率の平均値を求めて、その平均値を16階調の重みに割り当てた重み変換図。 重みの確認結果を示すグラフ。 図10Aにおける文字の認識結果を示す図。 重みを1回更新した後の重みの確認結果を示すグラフ。 図11Aにおける文字の認識結果を示す図。 図10A及び図10Bとは異なる欠陥のある重みの確認結果を示すグラフ。 図12Aにおける文字の認識結果を示す図。 η=0.2の重み更新結果を示す図。 η=0.25の重み更新結果を示す図。 η=0.5の重み更新結果を示す図。 η=0.8の重み更新結果を示す図。 ビット線の立ち上がりタイミングの検証に利用した回路図。 シミュレーション結果を示す波形図。 重みをデジタル値でメモリセル領域に記憶する第1例を示す図。 重みをデジタル値でメモリセル領域に記憶する第2例を示す図。 重みをアナログ値、第1例のデジタル値、第2例のデジタル値でそれぞれ記憶する場合の特徴をまとめた図。 重みをアナログ値で書き込む場合と第2例のデジタル値で書き込む場合とを比較した図。 積和演算を行う積和演算部23の構成の一例を示す図。 キャパシタ26とカレントミラー回路29を用いた読み出し方式を示す図。 信号処理システム1の処理手順の一例を示すフローチャート。 図20のステップS5とS6の処理を行う際の動作タイミング図。 反転確率が変化する様子を示す実験結果の図。 図20のステップS10の重み更新処理を説明する図。 非学習時の処理手順の一例を示すフローチャート。 非学習時のデータの流れを示す回路図。 deep neural networkの学習過程の処理手順の一例を示すフローチャート。 メモリセル領域内に重みをアナログ値として記憶する領域とデジタル値として記憶する領域とを設ける例を示す図。 アナログ値で記憶した2つの重みのデータを、一つのワード線にてデジタル値で記憶する例を示す図。 フォワード処理とバックワード処理の両方にアナログ値の重みを使用する例を示す図。 フォワード処理では重みをデジタル値として記憶し、バックワード処理では重みをアナログ値として記憶する例を示す図。 ビット線バーを共通電位に設定する図。 ビット線とビット線バーの間に、複数のメモリセル16を直列接続した図。 パルス幅を制御してメモリセルへの書込みを行う場合のメモリセルの特性を示す図。 電圧値を制御してメモリセルへの書込みを行う場合のメモリセルの特性を示す図。 クロスバー構成のメモリセルアレイを示す図。 1本のワード線に接続された16本のビット線で一つのシナプスを記憶する例を示す図。 複数のシナプスを記憶する例を示す図。 1本のワード線に繋がる複数のメモリセルにて複数のシナプスを記憶することが可能なメモリセル領域を示す図。 1つのワード線の中に複数のシナプスの重みが含まれる第1具体例を示す図。 一度の読み出し動作で一つのシナプスの重みを得る例を示す図。 センスアンプの回路構成の一例を示す図。 センスアンプの後段側の構成を示す図。 図40の一変形例を示す図。 信号処理システムを内蔵するPCの外観を示す図。 STT−MRAMの断面構造を示す図。 SOT−MRAMの断面構造を示す図。 磁壁移動型メモリの積層体を表す模式図。 磁壁移動型メモリの積層体を表す模式図。
以下、図面を参照して実施の形態について説明する。なお、本件明細書と添付図面においては、理解のしやすさと図示の便宜上、一部の構成部分を省略、変更または簡易化して説明および図示しているが、同様の機能を期待し得る程度の技術内容も、本実施の形態に含めて解釈することとする。
図1は一実施形態による信号処理システム1の概略構成を示すブロック図である。図1の信号処理システム1は、ネットワーク構築部2と、不揮発メモリ3と、情報処理部4とを備えている。
ネットワーク構築部2は、信号処理経路又は信号処理ノードの重みを含む種々の信号処理ネットワークを構築する。信号処理ネットワークの具体的な形態は問わない。信号処理ネットワークに含まれる信号処理経路又は信号処理ノードは、シナプスとも呼ばれる。信号処理ネットワークには、複数のシナプスと、各シナプスの固有の重みとが含まれている。重みは、2段階以上の階調で表される値である。階調とは、重みの種類であり、重みの取り得る各値がそれぞれ異なる階調になる。
信号処理ネットワークの代表的な一例は、ニューラルネットワークである。ニューラルネットワークは、人間の神経回路を模擬した数学モデルである。ニューラルネットワークには、Hopfield modelやLocally competitive algorithmなどによるFull-connect型のネットワークが含まれている。また、ニューラルネットワークには、Convolutional neural network、Reccurent neural network、binary neutral network、ternary neutral network等のDeep neural networkも含まれている。
このように、本実施形態による信号処理ネットワークには、種々のニューラルネットワークが適用可能である。また、本実施形態による信号処理ネットワークには、ising modelなどのニューラルネットワーク以外のネットワークも適用可能である。
不揮発メモリ3は、読み書きが可能な複数のメモリセル(不揮発メモリセル)を有する。本実施形態では、各メモリセルを、信号処理ネットワーク上の重みを記憶するために使用する。不揮発メモリ3を使用する理由は、信号処理システム1の電源をオフにしても、重みの情報を不揮発メモリ3に保持しておくためである。これにより、その後に電源をオンにしたときに、電源をオフにする直前に有効であった重みを使用して、信号処理ネットワークを用いた演算処理を継続して実施することができる。
複数のメモリセルは、後述するように、複数のワード線と複数のビット線の方向に沿って二次元配列されている。これらメモリセルが二次元配列された領域は、メモリセルアレイ(不揮発メモリセルアレイ)あるいはメモリセル領域と呼ばれる。
各メモリセルは、例えばSTT−MRAM(Spin-Transfer Torque Magnetic Tunnel Junction MRAM)である。STT−MRAMは、電子のスピン(自転)による磁気モーメントを利用して磁化反転を起こすスピン注入メモリであり、書込み電力や書込み遅延がこれまで研究開発されてきた不揮発性メモリに対し極めて小さいことを特徴とする。STT−MRAMは、SRAMに匹敵する高速動作(アクセス速度が10ns以下)と高い書き換え耐性(1015以上)を有し、低電力向けのCMOSロジックプロセスとの高い親和性があり、キャッシュ用途などに適している。不揮発メモリ3の詳細については、後述する。
情報処理部4は、不揮発メモリ3から重みを読み出して、読み出した重みを信号処理ネットワークに適応させて、信号処理ネットワークに応じた演算処理を行う。これにより、信号処理ネットワークの処理を少なくとも一部はハードウェアを利用して実行でき、すべてをソフトウェア処理で実行するよりも、短時間で煩雑な演算処理結果を得ることができる。
図2は不揮発メモリ3及びメモリシステム10の内部構成を示すブロック図である。図2は、不揮発メモリ3及びメモリシステム10内の要部のブロック構成を示している。図2では、本実施形態の動作に関係のないブロックの図示を省略している。
図2の不揮発メモリ3及びメモリシステム10は、メモリセルアレイ11と、コントローラ12と、コマンドデコーダ13と、アドレスレジスタ14と、I/Oバッファ15とを備えている。図2のすべての構成部分がワンチップ化される場合には、不揮発メモリ3とメモリシステム10は同一構成となる。図2のメモリセルアレイ11とその周辺の一部が不揮発メモリ3としてワンチップ化され、その他の構成部分が別チップとなる場合は、不揮発メモリ3のチップと別チップを合わせたものがメモリシステム10になる。
メモリセルアレイ11は、複数のワード線(第1配線)と、各ワード線に交差する複数のビット線(第2配線)とに沿って二次元配列された複数のメモリセル(不揮発メモリセル)16を有する。各メモリセル16は、例えば、トランジスタ16aと抵抗変化型素子16bとを有する。なお、メモリセル16の内部構成は任意である。
ワード線の駆動は、ロウデコーダ17とワード線ドライバ18によって行われる。ビット線にはセンスアンプ19が接続され、センスアンプ19でセンスされたデータはデータラッチ20でいったんラッチされた後にコントローラ12に送られる。また、任意のメモリセル16に書き込むべきデータは、カラムデコーダ21を介してビット線に供給される。
なお、センスアンプ19を用いてメモリセル16のデータを読み出す以外に、後述するように、電流和回路などを用いて読み出してもよい。本実施形態では、メモリセル16のデータをビット線を介して読み出す回路を総称して読み出し部22と呼ぶ。
読み出し部22は、複数のビット線の電圧または複数のビット線を流れる電流を積算して、その積算値によって、反転確率の値を判別してもよい。あるいは、各ビット線が0か1かを判別して、0のビットの数と1のビットの数との比較により、反転確率を判別してもよい。
読み出し部22には、積和演算部23が接続されていてもよい。積和演算部23は、後述するように、読み出し部22で読み出したデータを用いて積和演算処理を行う。積和演算部23が積和演算処理をした結果は、例えばコントローラ12に送られる。
図2において、ビット線のセンスアンプ19とは反対側には、書込み部24が設けられている。書込み部24は、後述するコントローラ12で電圧値及びパルス幅の少なくとも一方を制御した書込み電圧を、対応するビット線に供給してビット線を駆動する。本実施形態は、2本以上のビット線に対して、同一電圧レベルの書込み電圧を同時に供給して、複数のビット線を同時に駆動する。
不揮発メモリ3は、不図示のプロセッサからのアクセス要求に従って、データの書き込み又は読み出しを行う。不図示のプロセッサが発行したコマンド、アドレス及びデータは、I/Oバッファ15に入力される。I/Oバッファ15を経由したプロセッサからのコマンドはコマンドデコーダ13でデコードされた後にコントローラ12に入力される。I/Oバッファ15を経由したプロセッサからのアドレスはアドレスレジスタ14に入力される。アドレスレジスタ14は、ロウアドレスをロウデコーダ17に送り、カラムアドレスをカラムデコーダ21に送る。I/Oバッファ15を経由したデータ(書込みデータ)は書込み部24に送られる。
コントローラ12は、メモリシステム10内の各部の制御を行う。図3はコントローラ12の内部構成の一例を示すブロック図である。図3に示すように、コントローラ12は、書込み電圧制御部31と、反転確率検出部32と、重み変換部33と、差分検出部34と、重み更新部35と、重み和計算部36とを有する。
書込み電圧制御部31は、信号処理経路又は信号処理ノードの重みに応じて、不揮発メモリ3の書込み電圧の電圧値及びパルス幅の少なくとも一方を制御する。反転確率検出部32は、書込み電圧制御部31にてデータを書き込んだときに、一群のメモリセル16のうち論理が反転したメモリセル16の個数の割合を表す反転確率を検出する。重み変換部33は、検出された反転確率を重みに変換する。
書込み電圧制御部31、反転確率検出部32及び重み変換部33は、必須の構成部分であるのに対し、差分検出部34と重み更新部35は、重みの更新を行う場合に必要となるものである。
差分検出部34は、重み変換部33で変換された重みと、書込み電圧制御部31が書込みパルスを制御するのに用いた重みとの差分を検出する。重み更新部35は、差分に基づいて、書込み電圧制御部31が書込みパルスを制御するのに用いる重みを更新する。
重み和計算部36は、複数の重みの和を計算する。重み和計算部36は、複数の重みを合成した重みを不揮発メモリ3に記憶する際に必要となる。この場合、書込み電圧制御部31は、重み和計算部36にて計算された重みに応じて、書込み電圧の電圧値及びパルス幅の少なくとも一方を制御する。
次に、縦横3×3マス目内の文字を連想するための信号処理ネットワークとして、Hopfield modelを利用する例を説明する。Hopfield modelは、各信号処理ノードが他のすべての信号処理ノードとの信号処理経路(シナプス)を有し、各信号処理経路に固有の重みが設定されているネットワークモデルである。ここでは、図4に示すように、36本のワード線WL0〜WO35と、20本のビット線対BL0、/BL0〜BL19、/BL19とを含む不揮発メモリ3内のメモリセル領域を使用するものとする。メモリセル16は、例えば垂直磁化方式のMTJ素子を含んでいる。MTJ素子は、書換耐性と書込みの高速性に優れたSTT−MRAMである。なお、メモリセル16はMTJ素子以外のセル構造であってもよい。
図4における各ワード線に接続された20個のメモリセル16は、一つのシナプスの重みを記憶する。よって、図4のメモリセル領域は、36個のシナプスの重みを記憶することになる。
図2に示すロウデコーダ17は、36本のワード線のうち任意の1つのワード線を駆動する。このとき、ワード線の駆動電位は、予め定めた電位に設定される。また、駆動状態のワード線に接続された全メモリセル16に接続された少なくとも一部のビット線には、対応するシナプスの重みの値に応じた電圧値およびパルス幅の少なくとも一方の書込み電圧が供給される。
駆動するビット線の種類は、カラムデコーダ21によって選択される。後述するように、図4に示すメモリセル領域にアナログ値で重みを書き込む場合には、カラムデコーダ21は20本のビット線のすべてを選択する。そして、書込み部24は、20本のビット線を同一電圧に同時に駆動して、このワード線に接続された20個のメモリセル16に同時にデータ書込みを行う。書込み部24が20本のビット線に供給する書込み電圧は、重みの値(階調)に依存した電圧である。あるいは、書込み部24は、20本のビット線に供給する書込み電圧を共通の電圧レベルにして、書込み電圧のパルス幅、すなわち各ビット線に書込み電圧を供給する時間を重みの値に応じて可変させてもよい。
本実施形態では、20個のメモリセル16のうち、データが正しく書き込まれて論理が反転したメモリセル16の個数の割合を反転確率と定義する。この反転確率は、対応するシナプスの重みに関連づけられている。20個のメモリセル16があるため、反転確率は20通り存在することになり、重みは20階調で表現することができる。書込み電圧が高いほど、反転確率は上昇する。例えば、重みが大きいほど書込み電圧を高くすることで、重みに応じて反転確率を可変させることができる。
図5はビット線の書込み電圧Vと反転確率Pswとの対応関係を示すグラフである。図5のグラフは、重み及び反転確率Pswが最大及び最小付近では非線形な特性であるが、それ以外は線形な特性である。非線形な特性の領域では、書込み電圧を変えても、それほど重みや反転確率が変化しないため、本実施形態では、線形な特性の領域を用いて、書込み電圧を、重み及び反転確率に対応づける。重みの階調数は例えば16階調とし、各階調に応じた書込み電圧を設定する。この場合、反転確率は16個のメモリセル16内の割合として求められるため、各メモリセル16が持つばらつきが平均化され、ばらつきの影響を受けにくくなる。
Hopfield modelでは、信号処理ネットワーク全体のエネルギEを以下の(1)式のように定義する。
Wijは、信号処理ノードiからjへの信号処理経路(シナプス)の重みである。信号処理ノードi=jの場合の重みWij=0である。iとjが異なる場合、Wij=Wjiである。xiは+1か−1であり、(Xi)2は常に1である。よって、(1)式のエネルギ関数を最小にする重みは、以下の(2)式で表される。
Wij=XiXj …(2)
図6A、図6B及び図6Cは3×3マス目にて3種類の文字I、C、Tを表現する例を示している。これらの図では、3×3マス目内で各文字を特徴づけるマス目を+1、それ以外のマス目を−1としている。各文字を表現するには、3×3マス目内の特定の一つのマス目と、それ以外の8つのマス目との対応関係をそれぞれ重みで表せばよい。図6A〜図6Cの各右側には、各3×3マス目内の任意の2つのマス目の対応関係の重みを示す表が記載されている。これらの表では、同じマス目同士の重みをゼロとし、マス目iとマス目jの重みWijが、マス目jとマス目iの重みWjiに等しいとしているため、有効な重みは36個存在する。各重みは、(2)式に示すように、対応づけられる2つの領域の値同士の乗算で求められる。
各文字の36個の重みは、36本のワード線を用いて図4に示すメモリセル領域に記憶することができる。3つの文字を別々のメモリセル領域に記憶してもよいが、その場合、36×3=108本のワード線を必要とする。
3つの文字を表す各36個の重みを合成してからメモリセル領域に記憶することも可能である。図7は図6A〜図6Cの重みの和を計算する処理を示す図である。図7では、3つの文字を表す各36個の重みを、各重みごとに足し合わせた結果を示している。この結果、図7に示すように、重みWi=−3が5回、重みWi=−1が11回、重みWi=+1が15回、重みWi=+3が5回それぞれ出現する。
このように、3種類の文字I、C、Tを正しく表現する重みWiは、−3,−1,+1,+3の4種類となり、重みの更新まで含めて考えると、重みを表す値の範囲は−4〜+4である。文字を精度よく表現するには、0.5ステップの重みを設けるのが望ましい。
図8は36個のシナプスの反転確率の実験結果を示す図である。図8の横軸はワード線とビット線を立ち上げた時にMTJ素子に印加される電圧Vmtj、縦軸は反転確率Pswである。図8の実験は、図4に示すように、36本のワード線のそれぞれに20個のメモリセル16が接続されており、各メモリセル16としてMTJ素子を用いた例を示している。図8は、ワード線電圧を変化させたときの各メモリセル16の反転確率のばらつき具合を示している。
図9は、図8から36個のシナプスの反転確率の平均値を求めて、その平均値を16階調の重みに割り当てた重み変換図である。図9の横軸は反転確率Psw、縦軸は重みWjである。例えば0.5Vで書込みを行うと、36個のシナプスの反転確率の平均値は0.8となる。図9では、反転確率0.8は重みの1.5に対応させている。重み変換部33は、図9のような重み変換図に基づいて、反転確率を重みに変換する。
各重みに対応するビット線電圧にて、図7の各重みを36本のワード線に繋がる各メモリセル領域に書き込んだ後に、各メモリセル16の記憶データを読み出して、図9の重み変換図に従って、反転確率を重みに変換した上で、その重みを確認した。図10A及び図10Bは重みの確認結果を示す図である。図10Aは横軸が反転確率Psw、縦軸が頻度を示している。理想的には、上述したように、重みWi=−3が5回、重みWi=−1が11回、重みWi=+1が15回、重みWi=+3が5回それぞれ出現するはずであるが、実際には、違う値の重みも出現しており、頻度も理想的な回数とは異なっている。
図10Bは各メモリセル16から読み出したデータを用いて3×3マス目内に文字を表現させた図である。文字Iは正しく表現できたが、文字CとTは一部のマス目の値が異なっているために、正しく表現できなかった。
そこで、正しい重みと現在記憶されている重みとの差分を算出し、算出した差分に更新係数ηを乗じた重みを再びメモリセル16に記憶するのに必要な書込み電圧を求めて、その書込み電圧を対応するビット線に供給して、記憶されている重みを更新した。そして、重み更新後の各メモリセル16の記憶データを再度読み出して、重みを確認した。
図11A及び図11Bは重みを1回更新した後の重みの確認結果を示す図である。図11Aの薄色の棒グラフは更新前の重みの値と頻度を示し、濃色の棒グラフは更新後の重みの値と頻度を示している。重みWi=−1と+1の頻度が増加しており、理想的な重みの値に近づいたことがわかる。
図11Bは各メモリセル16から読み出したデータを用いて3×3マス目内に文字を表現させた図である。文字I、C、Tのいずれも正しく表現できている。
図12A及び図12Bは、図10A及び図10Bとは異なる欠陥のある重みが記憶されたメモリセル領域に対して、重みの更新を1回行った後に、各メモリセル16の記憶データを再度読み出して、重みの確認を行った結果を示す図である。図12Aに示すように、重みの値と頻度は理想的な値に近づき、図12Bに示すように3×3マス目にも正しく文字を表現できている。
このように、本実施形態による不揮発メモリ3を用いれば、重みの値と頻度は、理想的な値には完全には一致しなくても、ロバスト性をもって文字連想ができることがわかる。
重みを更新する際に用いる更新係数ηは、重みの階調数に依存する。例えば、重みの階調が0.5ステップである場合、更新係数ηは重みの更新値が四捨五入して桁上がりができる値以上であることが必要である。図13A〜図13Dは更新係数ηの値を種々に変更した例を示している。更新係数η=0.2の場合は、図13Aに示すように、重みの更新前後で重みの値と頻度はほとんど変わっておらず、重みの更新に失敗している。一方、更新係数ηが0.25以上では、図13A〜図13Dに示すように、程度に差はあるものの、重みの更新に成功している。更新係数ηが小さいほど、重みの更新幅はわずかであるが、文字は正しく表現できていた。このように、更新係数ηが0.25以上であれば、1回の重みの更新で、文字の連想に成功した。これは、本メモリシステム10がロバスト性を有することを意味している。
上述したように、本実施形態では、ワード線を駆動する前後に、20本のビット線に同じ電圧値からなる書込み電圧を供給して、20個のメモリセル領域に同時に同じデータを書き込んでいる。この場合、ビット線電圧が低下するなどの不具合が予想される。この不具合を検証するために、ワード線とビット線に配線容量を付加し、図14Aに示すビット線BL1、BL10、BL20の立ち上がりのタイミングに遅延が生じるか否かをシミュレーションで検証した。
図14Bはシミュレーション結果を示す波形図である。図14Bの横軸は時間、縦軸はビット線BL1、BL10、BL20の電圧である。図14Bによれば、これら3つのビット線の波形が重なっており、各ビット線の電圧が立ち上がるタイミングにずれがないことがわかる。
このように、本実施形態では、ワード線を駆動する前後に、複数のビット線に同じ電圧値の書込み電圧を供給して、複数のメモリセル16に同時に同じデータを書き込むが、このような書込み方式を採用しても、各メモリセル16への書込みタイミングがずれるおそれはないし、書込み電圧の低下も生じない。また、本実施形態によれば、同一のワード線上に接続された複数のメモリセル16に同時にデータを書き込めるため、重みの記憶および更新を高速に行うことができる。
上述した例では、重みをアナログ値でメモリセル領域に記憶したが、本実施形態によるメモリシステム10は、重みを、アナログ値よりもビット数の少ないデジタル値でメモリセル領域に記憶することもできる。
図15Aは重みをデジタル値でメモリセル領域に記憶する第1例を示す図である。第1例では、16階調の重みを4ビットのデジタル値で表現する。第1例のデジタル値は、図15Aに示すように、0000〜1111までの計16通りある。第1例では、共通のワード線に接続された4つのメモリセル16を用いて16階調の重みを記憶する。上述したアナログ値で重みを記憶する場合には、20本のビット線を用いて16階調の重みを記憶したが、第1例のデジタル値は、わずか4本のビット線を用いて16階調の重みを記憶できる。
図15Bは重みをデジタル値でメモリセル領域に記憶する第2例を示す図である。第2例では、16階調の重みを16ビットのデジタル値で表現する。各階調毎に、16ビット中の値0と値1の数が一つずつ変化する。第2例では、共通のワード線に接続された16個のメモリセル16を用いて16階調の重みを記憶する。
図16は、重みをアナログ値、第1例のデジタル値、第2例のデジタル値でそれぞれ記憶する場合の特徴をまとめた図である。重みをアナログ値で書き込む場合は、20メモリセル×36ワード線=720個のメモリセル16が必要となる。重みを第1例のデジタル値で書き込む場合は、4メモリセル×36ワード線=144個のメモリセル16が必要となる。重みを第2例のデジタル値で書き込む場合は、16メモリセル×36ワード線=576個のメモリセル16が必要となる。このように、第1例のデジタル値の重みが最も面積効率がよく、次に第2例のデジタル値の重みが面積効率がよく、アナログ値の重みが最も面積効率が悪い。
重みをアナログ値で記憶する場合、上述したように、16階調の重みを20個のメモリセル16に記憶し、反転確率が0.1〜0.9の範囲内の値となるような書込み電圧を主に用いることになる。この場合、反転確率が0.5の前後に分布するようになる。反転確率が0.5となる電圧が閾値電圧Vcである。閾値電圧Vcは、重みをアナログ値で記憶する場合の平均的な動作点であるとも言える。よって、重みをアナログ値で記憶する場合には、ワード線電圧を低く抑えることができ、消費電力を削減できる。
第1例のデジタル値の場合、4ビットしかなく、重みの記憶に用いるメモリセル領域の面積を、アナログ値で重みを記憶するよりも大幅に削減できる。しかしながら、例えば4ビットのうち1ビットの値が正しく記憶されない場合には、読み出された重みは大きく異なる値になる。このため、第1例のデジタル値の場合は、ビット線に供給する書込み電圧の電圧値を大きくするか、書込みパルス幅を長くして、誤書込みが起きないようにする必要がある。ところが、書込み電圧の電圧値を大きくしたり、書込みパルス幅を長くすると、消費電力が増大する要因になる。あるいは、エラー訂正(ECC)を設けて、書込み後にベリファイを行う方法もあるが、この工程を書込みの度に設ける必要がある。これは動作速度を低減させる要因となる。また、ECCでエラー訂正を行う回路を設けることとなり、回路面積の観点、並びに回路へアクセスするためのレイテンシーの観点でオーバーヘッドとなる。
第2例のデジタル値は16ビットあり、16ビットのうち1ビットの値が正しく記憶されない場合には、重みが1段階ずれるだけであり、誤書込みの許容度は広くなる。しかしながら、重みをアナログ値で書き込む場合よりは、書込み電圧の電圧値を大きくしたり、書込みパルス幅を長くする必要があるため、消費電力は約30%増となりうる。その代わり、第2例のデジタル値で重みを書き込む場合は、アナログ値で重みを書き込む場合よりも、メモリセル領域の面積を約20%削減できる。
一方、重みをアナログ値で書き込む場合は、第1例又は第2例のデジタル値で書き込む場合よりも、書込み時の消費電力を平均的に下げることができる。これは、書込み耐性が改善することを意味し、メモリセル16が破壊しにくくなってロバスト性が向上するとともに、冗長回路を削減できる。第2例のデジタル値で書き込む場合は、アナログ値で書き込む場合よりも約20%のメモリセル領域を削減できるが、冗長回路が余計に必要となるため、実質的な面積効率は同程度になりうる。
図17は重みをアナログ値で書き込む場合と第2例のデジタル値で書き込む場合とを比較した図である。図17は書込み電圧の電圧値を制御してメモリセル16に重みを書き込む例を示している。重みをアナログ値で書き込む場合の平均的な書込み電圧は0.5Vであるのに対して、第2例のデジタル値で書き込む場合の書込み電圧は、0.5Vの1.6倍以上の電圧値になる。これは、第2例のデジタル値で重みを書き込む場合の動作点は、反転確率が1になるときの書込み電圧となるためである。このように、重みをアナログ値で書き込む場合には、書込み電圧を平均的に下げられるため、書込み耐性が向上し、冗長回路も削減できる。
以上では、Full-connect型のHopfield modelを用いた信号処理ネットワークの例を示したが、deep neural networkにおける重みを上述した手法でメモリセル領域に記憶することもできる。deep neural networkでは、重みを用いた積和演算が行われる。
図18は積和演算を行う積和演算部23の構成の一例を示す図である。図18は、カラム方向に例えば10個のメモリセル16を配置し、重みを10階調で表現する例を示している。図18におけるワード線方向のシナプス数は例えば40とする。特定のシナプスの重みを読み出した場合は、その重みWiをトランジスタ25のドレイン(又はソース)に入力し、このトランジスタ25のゲート電圧をXiとする。ゲート電圧Xiは、2値のデジタル値である。これにより、トランジスタ25のソース(又はドレイン)からは、重みWiとXiを乗算した値Wi*Xiが出力される。なお、トランジスタ25のドレイン(又はソース)に入力される重みがアナログ値の場合には、トランジスタ25は一個でよいが、読み出した10階調の重みをアナログ値に変換するD/A変換器をトランジスタ25の前段側に設ける等の構成が考えられる。一方、トランジスタ25のドレイン(又はソース)に入力される重みがデジタル値の場合には、D/A変換器は不要であるが、重みの階調数分のトランジスタ25を設ける等の構成が考えられる。
メモリセル領域に記憶された重みを読み出す読み出し部22の読み出し方は任意であり、例えばセンスアンプ19方式や電流和回路を用いてもよい。センスアンプ19方式の場合、メモリセル領域内の各ビット線とセンスアンプ19の間に不図示のスイッチ回路を設けて、スイッチ回路をオン/オフすることで、読み出すビット線を順次つなぎ替えてもよい。あるいは、ビット線が並ぶ方向に複数のセンスアンプ19を設けて、各センスアンプ19が並列に読み出し動作を行ってもよい。
図19はキャパシタ26とカレントミラー回路29を用いた読み出し方式を示す図である。図19のキャパシタ26は、各ビット線から順に読み出したデータに応じた電荷を蓄積する。キャパシタ26の接地側には、スイッチ回路27と、抵抗28と、カレントミラー回路29が接続されている。スイッチ回路27は、キャパシタ26の電荷蓄積が完了した状態でオンする。これにより、キャパシタ26の蓄積電荷に応じた電流が抵抗を介してカレントミラー回路29に流れる。カレントミラー回路29は、一対のトランジスタ29a、29bを有し、これらトランジスタ29a、29bのサイズを変えることで、電流増幅を行うことができる。また、キャパシタ26が実質的にD/A変換動作を行うため、D/A変換器を省略できる。このように、図19の読み出し方式によれば、電力効率と面積効率を向上できる。
図20はHopfield model等のFull-connect型のネットワークにおける重みをメモリセル領域に記憶する際の信号処理システム1の処理手順の一例を示すフローチャートである。まず、例えば(1)式に示すエネルギ関数を最小とする重みを計算する(ステップS1)。次に、合成するべき他の重みがあるか否かを判定する(ステップS2)。他の重みがある場合には、ステップS1〜S2の処理を繰り返す。
すべての重みについて、ステップS1の処理が終了した場合には、すべての重みの和を計算する(ステップS3)。次に、計算した重みの和に応じて、書込み電圧の電圧値及びパルス幅の少なくとも一方を制御する(ステップS4)。
次に、各シナプスの重みをメモリセル領域に書き込む(ステップS5)。例えば重みをアナログ値で書き込む場合には、ワード線を駆動する前後に、ステップS4で制御した書込み電圧をメモリセル領域内の全ビット線に供給して、各ビット線を同時に駆動する。一方、重みをデジタル値で書き込む場合には、ワード線を駆動する前後に、ステップS4で制御した書込み電圧を、デジタル値の書込みに使用する全ビット線に供給して、これらビット線を駆動する。
メモリセル領域への重みの記憶が完了すると、次に、メモリセル領域に記憶した重みを順に読み出す(ステップS6)。このとき、全ビット線を所定の電圧にプリチャージした状態で、シナプスに対応するワード線を順に駆動して、ビット線方向の全メモリセル16のデータを読み出す。
次に、読み出したデータを重みに変換する(ステップS7)。次に、メモリセル領域に記憶する前の重みWiと読み出した重みWi-readとの差分を計算し、差分に更新係数ηを乗じる(ステップS8)。そして、ステップS8で計算した値に応じて、書込み電圧の電圧値及びパルス幅の少なくとも一方を制御し(ステップS9)、この書込み電圧を各ビット線に供給して、メモリセル領域内の重みデータを更新する(ステップS10)。
なお、重みをメモリセル領域に書き込む際に、先にワード線を駆動した後に、ビット線に重みに応じた書込み電圧を供給してもよいし、ビット線に重みに応じた書込み電圧を供給した後に、ワード線を駆動してもよい。
図21は図20のステップS5とS6の処理を行う際の動作タイミング図である。図21は、ワード線の駆動期間を7nsに設定する例を示している。図21では、ステップS5とS6の双方とも、ビット線に書込み電圧あるいはプリチャージ電圧を供給した後に、ワード線を駆動する例を示している。ビット線のプリチャージ電圧は、ワード線に接続された全メモリセル16の全ビット線において同一である。図21とは逆に、ワード線を駆動してから、ビット線に書込み電圧やプリチャージ電圧を供給してもよい。なお、図21とは逆に、ワード線電圧を駆動した後に、ビット線電圧を駆動してもよい。
上述したように、重みの値に応じて、書込み電圧の電圧値を制御してもよいし、書込み電圧のパルス幅を制御してもよい。図22は、書込み電圧を0.45V固定として、パルス幅を3〜16nsの範囲内で変化させた場合に反転確率が変化する様子を示す実験結果の図である。図22の横軸は書込み電圧のパルス幅[ns]、縦軸は反転確率Pswである。図22には、複数の曲線が描かれているが、各曲線は、36個のシナプスを表している。各シナプスは構成されるMTJ素子のバラつきを反映して分布している。図示のように、パルス幅により、反転確率が変化するのがわかる。よって、書込み電圧の電圧値を制御する代わりに、パルス幅を制御してもよい。あるいは、書込み電圧の電圧値とパルス幅の両方を制御してもよい。
図20のステップS6においてメモリセル領域からデータを読み出す方式は、上述したように、全ビット線のデータを同時に読み出して、読み出したデータに応じた電荷をキャパシタに蓄積して、カレントミラー回路で読み出してもよい。あるいは、全ビット線のデータを同時に読み出して、電流の和を積算する回路を用いて読み出してもよい。あるいは、各ビット線とセンスアンプ19との間にスイッチ群を設けて、スイッチ群を順次に切り替えて、各ビット線のデータを順次に読み出してセンスアンプ19でセンスしてもよい。
図23は図20のステップS10の重み更新処理を説明する図である。図20のステップS8で計算された更新値に基づいて、ビット線に供給されるべき書込み電圧の電圧値及びパルス幅の少なくとも一方を制御する。そして、制御した書込み電圧にて全ビット線をプリチャージした状態で、ワード線に所定の電圧を供給してワード線を駆動して、このワード線に接続された全メモリセル16へのデータ書込みを行う。これが図23の重みの割当に該当する。次に、全ビット線をプリチャージした状態で、対応するワード線を所定の読み出し電圧に設定して、メモリセル16に記憶したデータを読み出す。図23は、センスアンプ19で各ビット線を流れる電流の和を求めて、電圧に変換して重みの階調をアナログ値で得る手法を示している。
Deep neural networkには、適した推論や連想等を行えるようにシナプスに重みを学習させる段階と、推論や連想等を行う段階、すなわち非学習時とがある。図24は非学習時の処理手順の一例を示すフローチャート、図25は非学習時のデータの流れを示す回路図である。
まず、重みの初期値をシナプスに割り当てる(ステップS11)。ここで、初期値とは、ランダムな値であってもよい。また、初期値は、教師データありの学習のように、訓練データを用いて予め導出された重みであってもよい。
次に、ビット線をプリチャージし(ステップS12)、特定のワード線を所定の読み出し電圧に設定して、このワード線を駆動する(ステップS13)。これにより、メモリセル領域に記憶された重みに応じたデータがセンスアンプ19や電流和回路等を介して、最終的にアナログ電圧値として読み出される。
読み出されたアナログ電圧値は、図25に示すように、積和演算部23内のトランジスタのドレイン(又はソース)に入力される(ステップS14)。図25では、読み出したデータに応じた電荷をいったんキャパシタ26に蓄積し、キャパシタ26の両端間のアナログ電圧値をトランジスタ25のドレイン(又はソース)に入力する例を示している。
なお、キャパシタ26と抵抗を設けずに、メモリセル領域から読み出したデータをトランジスタのドレイン(又はソース)に直接入力してもよい。
次に、トランジスタのゲート電圧Xiを0または1に設定するか、あるいはゲート電圧をアナログ階調電圧に設定することで、重みとトランジスタのゲート電圧との積和演算WiXiを行った結果がトランジスタのソース(又はドレイン)から得られる(ステップS15)。
図26はdeep neural networkの学習過程の処理手順の一例を示すフローチャートである。入力のニューロンに与えられた信号にシナプスを作用させて出力を得る処理過程はフォワードプロセスと呼ばれることがある。フォワードプロセスでは、重みをアナログ値として作用する場合と、デジタル値として作用する場合がある。デジタル値で作用する場合は、電流和回路やセンスアンプ19回路の出力の際に2値化させる。図26のステップS21〜S25は図24のステップS11〜S15と基本的には同じである。ステップS21では例えば、deep neural networkの入力層から出力層に至るまでのすべての信号経路での重みを初期として不揮発メモリ3に記憶しておく。入力層から出力層にかけての各信号処理経路において、ステップS22〜S25の処理を順に繰り返す。例えば、ステップS24とS25では、各信号処理経路ごとに、不揮発メモリ3から読み出した重みを用いて積和演算を行う。ステップS25で積和演算処理が終了すると、出力層から出力が得られたか否かを判定する(ステップS26)。S22からS25の処理を繰り返すのは,例えば中間層(隠れ層)が複数ある場合である。まだ、出力層から出力が得られていなければ、ステップS22に戻って、次の信号処理経路について、ステップS22〜S26の処理を繰り返す。
ステップS26にて、出力層から出力が得られたと判定された場合は、出力層の出力を教師データと比較する(ステップS27)。比較をした結果、重みの更新が必要か否かを判定する(ステップS28)。ここでは、出力層の出力と教師データとがかけ離れていれば、重みの更新が必要であると判断する。重みの更新が必要であると判定された場合は、バックプロパゲーションなどの処理を行って、出力層から入力層まで逆の信号経路に沿って重みの更新に関する演算を行うことで、重みを更新し(ステップS29)、その後、ステップS21以降の処理を繰り返す。一方、ステップS28で重みの更新が必要ないと判定された場合は、出力層の出力が有効であると判断して、図26のフローチャートの処理を終了する。ステップS29で重みを更新する際には、上述したように、アナログ値とデジタル値のいずれをメモリセル領域に記憶してもよい。
図17に示したように、重みをアナログ値として記憶する場合とデジタル値で記憶する場合は、それぞれ長所と短所を有する。そこで、図27に示すように、メモリセル領域内に重みをアナログ値として記憶する領域とデジタル値として記憶する領域とを設けてもよい。
図27の例では、各ワード線ごとに、重みをアナログ値として記憶するか、デジタル値として記憶するかを分けている。図15Aに示すように、第1例のデジタル値の場合、重みが2の4乗で表されるとすると、4ビットだけで重みを記憶できる。また、第2例のデジタル値の場合、重みが2の4乗で表されるとすると、図15Bに示すように、0000000000000001〜1111111111111111の16ビットで重みを記憶できる。重みをアナログ値で記憶する場合は、上述したように20本のビット線を必要とするため、デジタル値で記憶する方がビット線を削減できる。デジタル値で記憶したメモリセル領域からデータを読み出す場合には、データが記憶されたビット線だけを読み出すようにして、消費電力の削減を図ることができる。
第1例のデジタル値の場合、16階調の重みをわずか4ビットで記憶できるため、例えば20個のメモリセル16が接続された一つのワード線の中に、アナログ値で記憶した2つの重みの情報を記憶することができる。図28は、重みを第1例のデジタル値で記憶したワード線の両側に、別々の重みW1、W2をアナログ値で記憶したワード線を配置し、これらのアナログ値で記憶した2つの重みW1、W2のデータを、一つのワード線にてデジタル値で記憶する例を示している。
このように、重みをデジタル値で記憶することで、記憶に使用するメモリセル領域を削減できる。よって、一つのワード線に接続されたメモリセル領域に、複数の重みのデータを記憶することも可能となる。
また、重みをデジタル値で記憶する場合、アナログ階調の重みそのものをデジタル表現して記憶する場合と、アナログ階調の重みを0か1に2値(binary)化したり、−1、0、+1に3値(ternary)化する場合がある。これにより、ビット数をさらに削減できる。
なお、図17に示したように、重みをデジタル値で記憶する場合は、アナログ値で記憶する場合よりも、誤り発生確率を低くする対応が必要となる。特に、第1例のデジタル値の場合、1ビットでも誤ると、重みの値が著しく異なったものになりかねない。よって、重みの学習段階では、重みをアナログ値で記憶するのが望ましい。一方、重みの学習段階が終了して、重みを読み出して積和演算に使用する非学習段階では、重みを読み出すビット線の本数が少ないほど消費電力を削減できる。よって、重みの学習段階が終了した段階で、アナログ値で記憶した重みのデータをデジタル値に変換して、別のワード線に接続されたメモリセル領域に記憶し、重みのデジタル値を読み出して非学習処理に用いてもよい。
例えば、図29は、ニューラルネットワークにおける重みを学習する際のフォワード処理とバックワード処理の両方にアナログ値の重みを使用する例を示している。ニューラルネットワークの入力層41から隠れ層42への重みは、例えば図27のワード線WL1に接続されたメモリセル領域にアナログ値として記憶される。また、隠れ層42から出力層43への重みは、図27のワード線WL3に接続されたメモリセル領域にアナログ値として記憶される。学習段階のフォワード処理とバックワード処理のいずれにおいても、図27のワード線WL1,WL3に重みがアナログ値として記憶される。
一方、図30は、ニューラルネットワークにおける重みを学習する際のフォワード処理では重みをデジタル値として記憶し、バックワード処理では重みをアナログ値として記憶する例を示している。重みをアナログ値として表現する場合、例えば16階調で表示される。一方、重みをデジタル値として表現する場合、例えば2階調(1か0、あるいは1か−1)で表現されるか、3階調(1、0、−1)で表現される。このように、重みのアナログ値をデジタル値に変換する際には、アナログ値を間引く処理が行われる。ニューラルネットワークでは、各層間の重みを間引いても間引かなくても、精度がそれほど落ちないことが知られている。一方、重みを更新する際には、間引いた重みで更新すると、正しい情報は得られないことがある。そこで、図30では、フォワード処理では重みのデジタル値を用いて、バックワード処理では重みのアナログ値を使用している。これにより、ニューラルネットワークのフォワード処理では、メモリセル領域から読み出すべきビット数を削減でき、消費電力を削減できる。
本実施形態で用いるメモリセル領域は、ワード線が延在されている方向をロウ方向とし、ビット線が延在されている方向をカラム方向としている。また、各ビット線は、互いに論理が反転しているビット線対で構成されているが、そのうちの一本(以下では、ビット線バー/BLと呼ぶ)は図31Aに示すように、共通の電位(例えば、接地電位)に設定されていてもよい。ビット線バーが共通電位であっても、ロウ方向に配置された各メモリセル16には別々のビット線が接続されるため、各ビット線の電位に応じたデータを各メモリセル16は記憶する。このように、ビット線バー/BLを共通電位にすることで、配線数を削減でき、面積効率が向上し、配線遅延も低減できる。
また、図31Bに示すように、ビット線BLとビット線バー/BLの間に、複数のメモリセル16を直列接続してもよい。図31Bの場合、3つのMTJ素子16bが直列接続されており、これらMTJ素子16bのうち何個のMTJ素子の論理が反転したかによって、状態を記憶できる。図31Bの場合、ビット線バー/BLだけでなく、ビット線BLの数も削減できるため、図31Aよりも面積効率がよくなる。
図32Aは、書込み電圧の電圧値を一定にして、パルス幅を制御してメモリセル16への書込みを行う場合のメモリセル16の特性を示す図である。図32Aに示すように、書込み電圧のパルス幅tpを変えることで、ほぼ線形に反転確率Pswを可変させることができる。書き込み時のパルス幅を制御するには、例えば、ワード線を所定の電圧に駆動した状態で、書込みを行うべきメモリセル16に接続されたビット線の駆動時間を可変させることで、このメモリセル16に記憶される重みを可変させることができる。この場合、記憶される重みは、ビット線を駆動するクロックサイクルで制御できるため、制御性が向上する。また、書込み電圧のパルス幅と反転確率がほぼ線形な関係になるため、重み変換部33で反転確率を重みに変換する処理も容易になる。
一方、図32Bは、書込み電圧のパルス幅を一定にして、電圧値を制御してメモリセル16への書込みを行う場合のメモリセル16の特性を示す図である。重みに応じて書込み電圧の電圧値を制御する場合、反転確率Pswが非線形に変化する。よって、重み変換部33にて、反転確率Pswを重みWiに変換する処理も非線形な処理を行う必要がある。
重みが記憶されるメモリセルアレイ11は、図33に示すようなクロスバー構成であってもよい。図33のメモリセルアレイ11は、ワード線とビット線との各交差点付近に、各メモリセル16が配置されている。各ワード線ごとに、一つの重みが記憶される。各ワード線とビット線の間には、抵抗変化型メモリとトランジスタとが配置される場合、抵抗変化型メモリとセレクタとが配置される場合があり、どちらを採用してもよい。クロスバー構成では、ワード線とビット線に与えられるパルスのパルス幅、あるいはパルス電位がXiに対応する。これにより、積和WiXiの演算処理を簡易な構成で行うことができる。
上述した実施形態では、1本のワード線に繋がる複数のメモリセルにて、一つのシナプス(重み)を記憶する例を説明したが、この例の場合、各ワード線に別々のシナプスが記憶されるため、シナプスの数が多い場合には、すべてのシナプスの読み出しに時間がかかってしまう。例えば、図34に示すように、1本のワード線に接続された16本のビット線で一つのシナプスを記憶し、総計36個のシナプスを記憶する場合を考える。あるいは、図35に示すように、1本のワード線に接続された16本のビット線で一つのシナプスを記憶し、同一のワード線に複数のシナプスを記憶させる場合を考える。読み出し部22がセンスアンプ方式で、各ビット線の電位を順に読み出す場合、1本のビット線の読み出しに50nsを要し、センスするビット線の切り替えに10ns要するとすると、1個のシナプスの読み出しには、50×16=800nsの時間を要する。ワード線は順次に駆動されるため、36個のシナプスを読み出すには、図34のアレイ構成の場合,36×800ns=28800nsもの時間を要する。なお、図34及び図35の読み出し部22は、複数のセンスアンプ22bと複数のスイッチマトリクス22aを有する例を示している。
シナプスの読み出し時間を短縮する一手法として、1本のワード線に繋がる複数のメモリセルにて複数のシナプスを記憶してもよい。図36は1本のワード線に繋がる複数のメモリセルにて複数のシナプスを記憶することが可能なメモリセル領域を示す図である。ワード線の延在方向に沿って、複数の読み出し部22が設けられている。各読み出し部22は、センスアンプ方式にて、各ビット線の電位を順次に読み出す。読み出し部22の数は例えば16個であり、この場合、図36のn=15となる。各読み出し部22には、例えば18本のビット線対が接続されている。各読み出し部22に18本のビット線対を接続した理由は、上述した実施形態にて、36本のワード線を用いて16階調の重み(総計36個の重み)をメモリセル領域に記憶したことに対応づけたものである。図36では、2本のワード線を用いて、16階調の重み(総計36個の重み)を記憶することができる。
図36における16個の読み出し部22は同時に動作し、各読み出し部22は18本のビット線の電位を順に読み出す。よって、あるタイミングでは、16個の読み出し部22が総計16本のビット線の電位を同時に読み出すことになる。そこで、図36の例では、各タイミングごとに同時に読み出される16本のビット線の電位が一つのシナプス(重み)を表すことにしている。具体的には、各読み出し部22によって同時に読み出される18本ごとの16本のビット線に繋がるメモリセルに一つの重みを記憶する。各読み出し部22には、18本のビット線対が接続されているため、18回に分けて各ビット線の電位を読み出すことになり、一つのワード線にて18個の重みを読み出すことができる。図36には、2本のワード線が接続されているため、総計36個の16階調の重みのデータを読み出すことができる。
1本のビット線の読み出しに50nsを要するとすると、1本のワード線に接続された18個の重みの読み出しには、50ns×18=900nsの時間を要する。よって、36個の重みの読み出しには、900ns×2=1800nsとなり、図4のメモリセル領域に記憶された重みを読み出す場合よりも、はるかに重みの高速読み出しが可能となる。
このように、図36のメモリセル領域では、1本のワード線の駆動で、複数(例えば16個)のシナプス(重み)のデータを記憶及び読み出しできるため、重みを記憶するメモリセル領域内のワード線の本数を大幅に削減でき、多数の重みを迅速に読み出すことができる。
上述した重みを記憶するためのメモリセル領域は、図34のメモリセルアレイ11のように,少なくとも一部に設けられればよい。したがって、メモリセルアレイ11の一部を、重みを記憶するためのメモリセル領域として使用し、残りのメモリセル領域を不図示のプロセッサが種々の目的で使用する記憶領域としてもよい。また、重みの階調を可変できるようにして、重みを記憶するためのメモリセル領域のメモリサイズを必要に応じて可変させてもよい。
図36では、一つの読み出し部22に18本のビット線対を接続したが、これは一例であり、一つの読み出し部22に何本のビット線対を接続するかは任意である。また、図36では、ワード線を2本だけ図示しているが、ワード線の本数も任意である。図37は,1つのワード線の中に複数のシナプスの重みが含まれる第1具体例を示す図である。図37では、16個のセル毎にセンスアンプ22bが1つ接続されている。すなわち、一つのセンスアンプ22bに16本のビット線対が接続されている。スイッチマトリックスは、センスアンプ22bと接続されるビット線およびビット線バーを切り替える役割を担う。図37では、一例としてセンスアンプ22bの一つに対して16個のセルが接続され、センスアンプ22bは16個配置されるアレイ構成となっている。ビット線BL1、ビット線BL17・・・ビット線BL257は同時にプリチャージされる。その後、ワード線WL1がアクティブとなると、センスアンプ1−16から各セルの記憶状態が同時に読みだされる。
ここで、図38に示すように、ビット線BL1、ビット線BL17、ビット線BL257に接続されたメモリセルが同一のシナプスの重みの階調を担うとすると、一度の読み出し動作で一つのシナプスの重みを得ることができる。すなわち、一つのシナプスの読み出しは50nsの時間を要する。シナプスの数が36個である場合、36×50=1800nsの時間で読み出しが可能となる。図34や図35のメモリセル領域に記憶された重みを読みだす場合よりも、はるかに高速な読み出しが可能となる。
センスアンプ22bは例えば図39のような構成であっても良い。図39のセンスアンプ22bは、PMOSトランジスタQ1,Q2と、NMOSトランジスタQ3,Q4,Q5とを有する。トランジスタQ1,Q3はカスコード接続され、トランジスタQ2,Q4はカスコード接続されている。トランジスタQ1,Q3の各ゲートは、トランジスタQ2,Q4の各ドレインとビット線バー/BLに接続されている。トランジスタQ2,Q4の各ゲートは、トランジスタQ1,Q3の各ドレインとビット線BLに接続されている。トランジスタQ5のゲートにはイネーブル信号ENが入力されている。トランジスタQ5のドレインは、トランジスタQ3,Q4のソースに接続されている。
なお、本実施形態におけるセンスアンプ22bの回路構成は、図39に限定されるものではなく、種々の回路構成のセンスアンプが適用可能である。例えば、重みの更新の際にはシナプスの階調を担うセルのビット線を同時にプリチャージし、ワード線をアクティブとすることで同一電圧、同一パルス長で書き込みがされる構成であっても良い。
センスアンプ22bを介して出力される信号は0か1、あるいはHighかLowとなる。この出力を図40のようなキャパシタ26に入力することで、重みのアナログ値を識別することできる。この電圧をそのまま次の入力としても良いし、あるいはカレントミラー回路29で増幅して次の入力としても良い。
センスアンプ22bを介して出力される信号は0か1、あるいはHighかLowとなる。この出力を図41のようなカウンタ45で数え、その値に応じて電圧値を変える、あるいはパルス幅を変える制御部46で次の段のセルアレイを駆動しても良い。
上述した本実施形態による信号処理システム1は、例えば図42のような汎用のパーソナルコンピュータ(以下、PC)40に実装してもよいし、あるいは、専用のハードウェア機器を用いてシステムを構築してもよい。図42のPC40に信号処理システム1を実装する場合には、本実施形態によるメモリシステム10をPC40内部のメモリ基板に実装すればよい。また、図1のネットワーク構築部2と情報処理部4はPC40のプロセッサがソフトウェア処理により実行してもよい。あるいは、ネットワーク構築部2と情報処理部4に対応するハードウェアをPC40内部に実装してもよい。
また、本実施形態による信号処理システム1は、一つまたは複数の半導体チップに実装してもよい。例えば、信号処理システム1を一つの半導体チップに実装する場合は、この半導体チップの内部に、図1の不揮発メモリ3を含む図2のメモリシステム10が内蔵されることになる。
ここで、本実施形態における抵抗変化型メモリとは、STT−MRAM、SOT−MRAM、電圧駆動型MRAM、ReRAM、CB−RAM、PC−RAMなどである。ReRAMとは、金属と酸化物が積層された構造で、電圧を印加することで酸化物中に導電パスが形成されたり、導電パスが切れたりする素子である。電圧を印加することで、磁化の歳差運動が起き、周期的に発振するスピントルクオシレータや、還流磁区(vortex、スキルミオン)が生じる現象を利用した抵抗変化型素子16bであっても良い。
次に、本実施形態による信号処理システム1及びメモリシステム10内の不揮発メモリ3の具体例について説明する。
(STT−MRAMを用いる例)
不揮発メモリは、STT−MRAM(Spin-Transfer Torque Magnetic Tunnel Junction MRAM)である。STT−MRAMは動作電流によって磁化反転の速度が変わることが知られている。STT−MRAMはmagnetic tunnel junction(MTJ)素子とセルトランジスタで構成される。例えば、直径20nmのあるMTJ素子16bでは、パルス幅5nsの電流では、20uA(マイクロアンペア)の大きさで磁化反転が起きる。パルス幅3nsの電流では、30uAの大きさで磁化反転が起きる。パルス幅2nsの電流では、50uAの大きさで磁化反転が起きる。ここで、3nsで20uAの大きさの電流を流すと、磁化反転は確率的に起きることとなる。このように、パルス幅、あるいはパルス電圧の大きさに応じて、磁化反転が確率的に変化する性質を有する。MTJ素子16bはセルトランジスタ16aのソース、あるいはドレインに接続されている。上述したように、MTJ素子16bを流れる電流値は、ビット線電圧Vddを変える方法、基板バイアスを変える方法、ゲート電圧を変える方法などがある。例えば、セルトランジスタ16aを流れる電流を半分にする場合、ゲート電圧を30%程度小さくすれば良い。この際、セルトランジスタ16aの特性が飽和領域にあれば、ゲート電圧を変えてトランジスタの抵抗値が変わっても、目的の電流値をMTJ素子16bに流すことが可能である。
図43はSTT−MRAMの断面構造を示す図である。STT−MRAMは、第1導電層61、第1強磁性層62、第1非磁性層63、第2強磁性層64および第2導電層65を順に積層した構造を有する。第1強磁性層62とは、磁化の方向が固定された参照層である。第2強磁性層64とは、磁化の方向が可変である記憶層である。第1強磁性層62と第2強磁性層64の間に、第1非磁性層63(スペーサー層)がある。第2強磁性層64は第一部と第二部がある構成でも良いし、分かれていない構成でも良い。
第1強磁性層62と第2強磁性層64のどちらかは、第1導電層61に直接、あるいは間接的に接続されている。また、第1強磁性層62と第2強磁性層64のどちらかは、第2導電層65に直接、あるいは間接的に接続されている。
以下では、第1導電層61、第1強磁性層62、第1非磁性層63、第2強磁性層64、第2導電層65の積層体を積層体SB1と名付ける。第1強磁性層62の膜厚は0.5〜15nmであり、典型的には2〜10nmである。第2強磁性層64の膜厚は0.5〜10nmであり、典型的には0.8〜3nmである。
第1強磁性層62及び第2強磁性層64には、例えば、鉄(Fe)、コバルト(Co)、ニッケル(Ni)、マンガン(Mn)及びクロム(Cr)よりなる群から選択された少なくともいずれかの元素を含む金属材料を用いることができる。さらに、上記の群から選択された少なくともいずれかと、白金(Pt)、パラジウム(Pd)、イリジウム(Ir)、ルテニウム(Ru)及びロジウム(Rh)、ガリウム(Ga)、ゲルマニウム(Ge)よりなる群から選択された少なくともいずれかの金属を含む合金を用いることができる。
第1強磁性層62及び第2強磁性層64において、含まれる磁性材料の組成や熱処理の条件などを調整する。これにより、第1強磁性層62及び第2強磁性層64において、例えば、磁化量や磁気異方性などの特性を調整することができる。例えば、第2強磁性層64において、第1部分66と第2部分67とを形成することができる。また、第1強磁性層62及び第2強磁性層64には、例えば、TbFeCo及びGdFeCoなどの希土類−遷移金属のアモルファス合金を用いることができる。第1強磁性層62及び第2強磁性層64には、例えば、Co/Pt、Co/Pd及びCo/Niなどの積層構造を用いてもよい。Co/Ru、Fe/Au、及び、Ni/Cu等は、下地層との組み合わせで垂直磁化膜となる。膜の結晶配向方向を制御することで、Co/Ru、Fe/Au、または、Ni/Cu等を、第1強磁性層62及び第2強磁性層64として用いることができる。第1強磁性層62及び第2強磁性層64は、例えば、アルミニウム(Al)、ゲルマニウム(Ge)、窒素(N)、リン(P)、砒素(As)、ボロン(B)、及び、シリコン(Si)などの添加物を含んでもよい。
第1部分66及び第2部分67の少なくともいずれかには、例えば、ホイスラー合金を用いてもよい。ホイスラー合金は、例えば、L2構造を有し、XYZの様な組成を有する合金である。この場合、第1部分66第2部分67の少なくともいずれかは、例えば、Co、Mn、Fe、Ni、Cu、Rh、Ru及びPdの少なくともいずれか1つを含むホイスラー合金を含む。
例えば、第1部分66及び第2部分67は、第1ホイスラー合金を含む。第1ホイスラー合金は、CoFeSi、CoFeAl、CoFeGa、CoMnGe、CoMnSn、CoMnSi、CoMnGa、CoMnAl、CoMnSb、CoCrGa、NiMnIn、NiMnGa、NiMnSn、NiMnSb、NiFeGa、PdMnSb、PdMnSn、CuMnAl、CuMnSn、CuMnIn、RhMnGe、RhMnPb、RhMnSn、PdMnGe、RhFeSn、RuFeSn、及びRhFeSbの少なくともいずれか1つを含む。
第2部分67に上記の第1ホイスラー合金を用いることで、例えば、第2部分67の飽和磁化Msを大きくすることができる。
例えば、第1部分66及び第2部分67は、第2ホイスラー合金を含んでもよい。第2ホイスラー合金は、CoHfSn、CoZrSn、CoHfAl、CoZrAl、CoHfGa、CoTiSi、CoTiGe、CoTiSn、CoTiGa、CoTiAl、CoVGa、CoVAl、CoTaAl、CoNbGa、CoNbAl、CoVSn、CoNbSn、CoCrAl、RhNiSn、RhNiGe、MnWSn、FeMnSi、及びFeMnAlの少なくともいずれか1つを含む。
第1部分66に用いられる上記の第2ホイスラー合金は、比較的飽和磁化Msが小さい。例えばMs<400emu/ccとすることができる。これにより、例えば、隣接する磁気記憶素子への漏洩磁界を低減することができる。
本実施形態においては、第1部分66及び第2部分67のいずれかに、上述のホイスラー合金を用いてもよいし、第1部分66及び第2部分67の双方に、上述のホイスラー合金を用いてもよい。第1部分66には、第2ホイスラー合金を用いることが望ましい。これにより、例えば、周辺素子への漏洩磁界を抑制することができる。第2部分67には、第1ホイスラー合金を用いることが望ましい。
第1非磁性層63には、例えば、非磁性トンネルバリア層として機能する絶縁材料を用いることができる。具体的には、例えば、アルミニウム(Al)、チタン(Ti)、亜鉛(Zn)、ジルコニウム(Zr)、タンタル(Ta)、コバルト(Co)、ニッケル(Ni)、シリコン(Si)、マグネシウム(Mg)及び鉄(Fe)よりなる群から選択された少なくともいずれかの元素を含む、酸化物、窒化物又は弗化物を用いることができる。非磁性トンネルバリア層とは、例えば、絶縁体を含み、電圧を印加したときに、トンネル効果による電流(トンネル電流)の流れる非磁性の層である。非磁性トンネルバリア層の厚さは、例えば、2nm以下である。これにより、電圧を印加したときに、非磁性トンネルバリア層にトンネル電流が流れる。
第1非磁性層63には、例えば、Al、SiO、MgO、AlN、Ta−O、Al−Zr−O、Bi、MgF、CaF、SrTiO、AlLaO、Al−N−O、または、Si−N−O等を用いることができる。第1非磁性層63には、例えば、非磁性半導体(ZnOx、InMn、GaN、GaAs、TiOx、Zn、Te、または、これらに遷移金属がドープされたもの)などを用いることができる。
第1非磁性層63の厚さは、約0.2ナノメートル(nm)以上2.0nm以下程度の範囲の値とすることが望ましい。これにより、例えば、絶縁膜の均一性を確保しつつ、抵抗が過度に高くなることが抑制される。
第1導電層61及び第2導電層65には、例えば、導電性の磁性材料または導電性の非磁性材料が用いられる。導電性の磁性材料としては、例えば、鉄(Fe)、コバルト(Co)、ニッケル(Ni)、マンガン(Mn)及びクロム(Cr)よりなる群から選択された少なくともいずれかの元素を含む磁性金属を用いることができる。さらに、上記の群から選択された少なくともいずれかと、白金(Pt)、パラジウム(Pd)、イリジウム(Ir)、ルテニウム(Ru)及びロジウム(Rh)よりなる群から選択された少なくともいずれかの元素と、を含む合金を用いてもよい。
第1導電層61及び第2導電層65に用いられる導電性の非磁性材料には、例えば、金(Au)、銅(Cu)、クロム(Cr)、亜鉛(Zn)、ガリウム(Ga)、ニオブ(Nb)、モリブデン(Mo)、ルテニウム(Ru)、パラジウム(Pd)、銀(Ag)、ハフニウム(Hf)、タンタル(Ta)、チタン(Ti)、タングステン(W)、白金(Pt)、ビスマス(Bi)及びアルミニウム(Al)よりなる群から選択されたいずれかの金属、または、上記の群から選択された2つ以上の金属を含む合金を用いることができる。
さらに、第1導電層61及び第2導電層65に用いられる導電性の非磁性材料は、上記の群から選択された少なくともいずれかの元素を含む、導電性窒化物、導電性酸化物及び導電性弗化物の少なくともいずれかでもよい。第1導電層61及び第2導電層65に用いられる導電性の非磁性材料は、カーボンナノチューブ、カーボンナノワイヤ及びグラフェンなどでもよい。
第1導電層61及び第2導電層65に導電性の保護膜を設けてもよい。この場合、保護膜には、例えば、タンタル(Ta)、ルテニウム(Ru)、銅(Cu)、銅(Cu)、金(Au)、銀(Ag)及びアルミニウム(Al)よりなる群から選択された少なくともいずれかの元素を含む合金、または、グラフェンなどの材料を用いることができる。エレクトロマグレーション耐性及び低抵抗であることを考慮すると、保護膜には、銅(Cu)及びアルミニウム(Al)よりなる群から選択されたいずれかの元素、または、これらを含む合金を用いることが望ましい。
第1導電層61及び第2導電層65の少なくともいずれかに、トランジスタが直接または間接に接続される場合がある。このときには、第1導電層61及び第2導電層65の上記の少なくともいずれかには、例えば、そのトランジスタのソース部またはドレイン部が用いられても良い。また、このときには、第1導電層61及び第2導電層65の上記の少なくともいずれかには、例えば、そのトランジスタのソース部またはドレイン部に接続されるコンタクト部が用いられても良い。
積層体SB1の積層方向SD1に対して平行な方向をZ軸方向とする。Z軸に対して垂直な1つの軸をX軸とする。X軸とZ軸とに対して垂直な軸をY軸とする。積層体SB1に含まれる層の膜面は、X−Y平面に対して平行である。例えば、主面10aは、X−Y平面に対して平行である。
MTJ素子16bにおいては、積層方向SD1に積層体SB1に電流を流すことによりスピン偏極した電子を第2強磁性層64に作用させる。これにより、第2強磁性層64の第1部分66の磁化の方向及び第2部分67の磁化の方向が、電流の向きに応じた方向に決定される。
<垂直磁化MTJ>
第1強磁性層62は、例えば、第1の磁化固定層として機能する。第1強磁性層62においては、例えば、磁化が膜面に対して略垂直方向に固定されている。第1強磁性層62の磁化の方向は、積層方向SD1と略平行である。第一部と第二部は、磁化が例えばシンセティックアンチフェロ(反強磁性結合)である。すなわち、磁化方向が互いに逆方向を向いている場合がある。また、別の例では磁化方向が同一方向を向いている場合がある。この場合、磁化は静磁結合、あるいは強磁性結合をしている。
第2強磁性層64は、例えば、磁気記憶層として機能する。また、第2強磁性層64が第1部分と第2部分を有する場合においては、例えば、第1部分66の磁化の方向は、膜面に対して略垂直方向で、積層方向SD1と略平行である。第1部分は第1非磁性層63側にある。第1部分66の磁化は、反転可能である。第1部分66は、磁化反転の際のスピン注入効率を上げる役割をもつ。第2部分は第2導電層65側にある。
第2強磁性層64の第2部分67においては、例えば、第2部分67の磁化の方向は、膜面に対して略垂直方向で、積層方向SD1と略平行である。第2部分67の磁化は、反転可能である。第2部分はデータを記憶する役割をもつ。
<面内磁化MTJ>
第1強磁性層62は、例えば、第1の磁化固定層として機能する。第1強磁性層62においては、例えば、磁化が膜面に対して略平行方向に固定されている。第1強磁性層62の磁化の方向は、積層方向SD1と略垂直である。
第2強磁性層64は、例えば、磁気記憶層として機能する。また、第2強磁性層64が第1部分と第2部分を有する場合においては、例えば、第1部分66の磁化の方向は、膜面に対して略平行方向で、積層方向SD1と略垂直である。第1部分は第1非磁性層63側にある。第1部分66の磁化は、反転可能である。第1部分66は、磁化反転の際のスピン注入効率を上げる役割をもつ。第2部分は第2導電層65側にある。第一部と第二部は、磁化が例えばシンセティックアンチフェロ(反強磁性結合)である。すなわち、磁化方向が互いに逆方向を向いている場合がある。また、別の例では磁化方向が同一方向を向いている場合がある。この場合、磁化は静磁結合、あるいは強磁性結合をしている。
第2強磁性層64の第2部分67においては、例えば、第2部分67の磁化の方向は、膜面に対して略平行方向で、積層方向SD1と略垂直である。第2部分67の磁化は、反転可能である。第2部分はデータを記憶する役割をもつ。
<MTJの断面形状>
X−Y平面に投影したときの積層体SB1の形状は任意である。X−Y平面に投影したときの積層体SB1の形状は、例えば、円形、楕円形、扁平円、及び、多角形などである。多角形とする場合には、四角形や六角形などの3つ以上の角を有することが好ましい。また、多角形は、角丸状でもよい。
Z軸に対して平行な平面(例えばZ−X平面やZ−Y平面)に投影したときの積層体SB1の形状は任意である。Z軸に対して平行な平面に投影したときの積層体SB1の形状(膜面に対して垂直な面で切断した形状)は、例えば、テーパ形状または逆テーパ形状を有することができる。
<磁気シールド>
積層体SB1の側面SS1の少なくとも一部が磁気シールドで覆われていても良い。換言すれば、磁気シールドは、積層体SB1の側面の少なくとも一部と対向する。X−Y平面に投影した磁気シールドの形状は、例えば、積層体SB1を囲む環状である。
磁気記憶素子は、積層体SB1の側面と磁気シールドとの間に設けられた保護層をさらに含む。保護層の厚さは、例えば、2nm以上30nm以下であることが望ましい。
例えば、積層体SB1の側面が、SiNやAlなどの保護層を介して、パーマロイ(Py)などの磁気シールドにより覆われる。これにより、例えば、複数の磁気記憶素子が並べられた場合において、隣の磁気記憶素子からの漏洩磁界が、積層体SB1の動作に悪影響を与えることが抑制される。例えば、各記憶セル(積層体SB1)において、積層体SB1に作用する有効磁界が実質的に同じであるため、ビット間の反転電流のばらつきが抑制される。また、積層体SB1からの漏洩磁界が、隣の磁気記憶素子に作用することを抑制することができる。その結果、複数の磁気記憶素子どうしを近接して配置することができ、集積度を向上することができる。例えば、不揮発性記憶装置の記憶密度を向上させることができる。
磁気シールドには、例えば、鉄(Fe)、コバルト(Co)、ニッケル(Ni)、マンガン(Mn)及びクロム(Cr)よりなる群から選択されたいずれかの金属、または、この群から選択された2つ以上の金属を含む合金が用いられる。磁気シールドは、例えば、鉄(Fe)、コバルト(Co)、ニッケル(Ni)、マンガン(Mn)及びクロム(Cr)よりなる群から選択された少なくともいずれかの金属と、白金(Pt)、パラジウム(Pd)、イリジウム(Ir)、ルテニウム(Ru)及びロジウム(Rh)、ガリウム(Ga)、ゲルマニウム(Ge)よりなる群から選択された少なくともいずれかの金属と、を含む合金でもよい。
磁気シールドに含まれる磁性材料の組成や熱処理の条件を調整することにより、磁気シールドの特性を調整することができる。磁気シールドは、例えば、TbFeCo及びGdFeCoなどの希土類−遷移金属のアモルファス合金でもよい。また、磁気シールドには、Co/Pt、Co/Pd及びCo/Niなどの積層構造を用いてもよい。
保護層には、例えば、アルミニウム(Al)、チタン(Ti)、亜鉛(Zn)、ジルコニウム(Zr)、タンタル(Ta)、コバルト(Co)、ニッケル(Ni)、シリコン(Si)、マグネシウム(Mg)及び鉄(Fe)よりなる群から選択された少なくともいずれかの元素を含む、酸化物、窒化物または弗化物を用いることができる。保護層には、例えば、SiNが用いられる。
(SOT−MRAMを用いる例)
単一階層メモリ7を構成する不揮発メモリは、SOT−MRAM(Spin-Orbit Torque Magnetic Tunnel Junction MRAM)でもよい。図44はSOT−MRAMの断面構造を示す図である。SOT−MRAMは、第1導電層71、第1強磁性層72、第1非磁性層73、第2強磁性層74および第2導電層75を順に積層した構造を有する。
第1強磁性層72とは、磁化の方向が固定された参照層である。第2強磁性層74とは、磁化の方向が可変である記憶層である。第1強磁性層72と第2強磁性層74の間に、第1非磁性層73(スペーサー層)がある。
第1強磁性層72と第1導電層71は直接、あるいは間接的に接続されている。また、第2強磁性層74と第2導電層75は、直接、あるいは間接的に接続されている。第1導電層71、第1強磁性層72、第1非磁性層73、第2強磁性層74、第2導電層75の積層体を積層体SB1と名付ける。
第2導電層75に後述するスピン軌道相互作用が強い材料を用いて、電流(JSOT)を流すとスピン軌道フィールドHsoが生成される。スピン軌道フィールドは、第2強磁性層74の磁化に作用するスピン軌道トルクTsoともなり得る。これを用いると、第2強磁性層74の磁化方向を直接反転させることができ得る。また、電流(JSOT)を流してスピン軌道フィールドHsoを第2強磁性層74に作用させつつ、電流(JSTT)を流して第2強磁性層74の磁化方向を反転させても良い。いずれにしても、電流(JSOT)の大きさを変えると、第2強磁性層74の磁化反転に要する時間を変えることができる。例えば、ある電流(JSTT)で、第2強磁性層74の磁化方向を0.5ns以下の時間で変えることが可能である。またそれより大きい電流(JSTT)では、第2強磁性層74の磁化方向を0.2ns以下の時間で変えることが可能である。このように、パルス幅が短いほど、磁化反転に必要な電流値が大きくなる。
第1強磁性層72の膜厚は0.5〜15nmであり、典型的には2〜10nmである。第2強磁性層74の膜厚は0.1〜5nmであり、望ましくは2nm以下が良い。
第1強磁性層72及び第2強磁性層74には、例えば、鉄(Fe)、コバルト(Co)、ニッケル(Ni)、マンガン(Mn)及びクロム(Cr)よりなる群から選択された少なくともいずれかの元素を含む金属材料を用いることができる。さらに、上記の群から選択された少なくともいずれかと、白金(Pt)、パラジウム(Pd)、イリジウム(Ir)、ルテニウム(Ru)及びロジウム(Rh)、ガリウム(Ga)、ゲルマニウム(Ge)よりなる群から選択された少なくともいずれかの金属を含む合金を用いることができる。
第1強磁性層72及び第2強磁性層74において、含まれる磁性材料の組成や熱処理の条件などを調整する。これにより、第1強磁性層72及び第2強磁性層74において、例えば、磁化量や磁気異方性などの特性を調整することができる。例えば、第2強磁性層74は、第1部分と第2部分とに分かれていてもよい。また、第1強磁性層72及び第2強磁性層74には、例えば、TbFeCo及びGdFeCoなどの希土類−遷移金属のアモルファス合金を用いることができる。第1強磁性層72及び第2強磁性層74には、例えば、Co/Pt、Co/Pd及びCo/Niなどの積層構造を用いてもよい。Co/Ru、Fe/Au、及び、Ni/Cu等は、下地層との組み合わせで垂直磁化膜となる。膜の結晶配向方向を制御することで、Co/Ru、Fe/Au、または、Ni/Cu等を、第1強磁性層72及び第2強磁性層74として用いることができる。第1強磁性層72及び第2強磁性層74は、例えば、アルミニウム(Al)、ゲルマニウム(Ge)、窒素(N)、リン(P)、砒素(As)、ボロン(B)、及び、シリコン(Si)などの添加物を含んでもよい。
第1強磁性層72及び第2強磁性層74は、例えば、ホイスラー合金を用いてもよい。ホイスラー合金は、例えば、L2構造を有し、XYZの様な組成を有する合金である。この場合、第1部分76第2部分77の少なくともいずれかは、例えば、Co、Mn、Fe、Ni、Cu、Rh、Ru及びPdの少なくともいずれか1つを含むホイスラー合金を含む。
第1強磁性層72及び第2強磁性層74は、例えば、第1ホイスラー合金を含む。第1ホイスラー合金は、CoFeSi、CoFeAl、CoFeGa、CoMnGe、CoMnSn、CoMnSi、CoMnGa、CoMnAl、CoMnSb、CoCrGa、NiMnIn、NiMnGa、NiMnSn、NiMnSb、NiFeGa、PdMnSb、PdMnSn、CuMnAl、CuMnSn、CuMnIn、RhMnGe、RhMnPb、RhMnSn、PdMnGe、RhFeSn、RuFeSn、及びRhFeSbの少なくともいずれか1つを含む。
上記の第1ホイスラー合金を用いることで、例えば、第2部分77の飽和磁化Msを大きくすることができる。
第1強磁性層72及び第2強磁性層74は、例えば、第2ホイスラー合金を含む。第2ホイスラー合金は、CoHfSn、CoZrSn、CoHfAl、CoZrAl、CoHfGa、CoTiSi、CoTiGe、CoTiSn、CoTiGa、CoTiAl、CoVGa、CoVAl、CoTaAl、CoNbGa、CoNbAl、CoVSn、CoNbSn、CoCrAl、RhNiSn、RhNiGe、MnWSn、FeMnSi、及びFeMnAlの少なくともいずれか1つを含む。
上記の第2ホイスラー合金は、比較的飽和磁化Msが小さい。例えばMs<400emu/ccとすることができる。これにより、例えば、隣接する磁気記憶素子への漏洩磁界を低減することができる。
本実施形態においては、第1強磁性層72及び第2強磁性層74のいずれかに、上述のホイスラー合金を用いてもよいし、第1強磁性層72及び第2強磁性層74の双方に、上述のホイスラー合金を用いてもよい。第2強磁性層74には、第2ホイスラー合金を用いることが望ましい。これにより、例えば、周辺素子への漏洩磁界を抑制することができる。第2部分77には、第1ホイスラー合金を用いることが望ましい。
第1非磁性層73には、例えば、非磁性トンネルバリア層として機能する絶縁材料を用いることができる。具体的には、例えば、アルミニウム(Al)、チタン(Ti)、亜鉛(Zn)、ジルコニウム(Zr)、タンタル(Ta)、コバルト(Co)、ニッケル(Ni)、シリコン(Si)、マグネシウム(Mg)及び鉄(Fe)よりなる群から選択された少なくともいずれかの元素を含む、酸化物、窒化物又は弗化物を用いることができる。非磁性トンネルバリア層とは、例えば、絶縁体を含み、電圧を印加したときに、トンネル効果による電流(トンネル電流)の流れる非磁性の層である。非磁性トンネルバリア層の厚さは、例えば、2nm以下である。これにより、電圧を印加したときに、非磁性トンネルバリア層にトンネル電流が流れる。
第1非磁性層73には、例えば、Al、SiO、MgO、AlN、Ta−O、Al−Zr−O、Bi、MgF、CaF、SrTiO、AlLaO、Al−N−O、または、Si−N−O等を用いることができる。第1非磁性層73には、例えば、非磁性半導体(ZnOx、InMn、GaN、GaAs、TiOx、Zn、Te、または、これらに遷移金属がドープされたもの)などを用いることができる。
第1非磁性層73の厚さは、約0.2ナノメートル(nm)以上2.0nm以下程度の範囲の値とすることが望ましい。これにより、例えば、絶縁膜の均一性を確保しつつ、抵抗が過度に高くなることが抑制される。
第1導電層71には、例えば、導電性の磁性材料または導電性の非磁性材料が用いられる。導電性の磁性材料としては、例えば、鉄(Fe)、コバルト(Co)、ニッケル(Ni)、マンガン(Mn)及びクロム(Cr)よりなる群から選択された少なくともいずれかの元素を含む磁性金属を用いることができる。さらに、上記の群から選択された少なくともいずれかと、白金(Pt)、パラジウム(Pd)、イリジウム(Ir)、ルテニウム(Ru)及びロジウム(Rh)よりなる群から選択された少なくともいずれかの元素と、を含む合金を用いてもよい。
第1導電層71に用いられる導電性の非磁性材料には、例えば、金(Au)、銅(Cu)、クロム(Cr)、亜鉛(Zn)、ガリウム(Ga)、ニオブ(Nb)、モリブデン(Mo)、ルテニウム(Ru)、パラジウム(Pd)、銀(Ag)、ハフニウム(Hf)、タンタル(Ta)、チタン(Ti)、タングステン(W)、白金(Pt)、ビスマス(Bi)及びアルミニウム(Al)よりなる群から選択されたいずれかの金属、または、上記の群から選択された2つ以上の金属を含む合金を用いることができる。
さらに、第1導電層71に用いられる導電性の非磁性材料は、上記の群から選択された少なくともいずれかの元素を含む、導電性窒化物、導電性酸化物及び導電性弗化物の少なくともいずれかでもよい。第1導電層71に用いられる導電性の非磁性材料は、カーボンナノチューブ、カーボンナノワイヤ及びグラフェンなどでもよい。
第2導電層75は、第2強磁性層74(記憶層)の磁気モーメントをスイッチングするのに使用され得る強いスピン軌道相互作用を有する膜である。第2導電層75は、スピン軌道フィールドHsoを生成するのに利用され得る。スピン軌道フィールドは、第2強磁性層74の磁化に作用するスピン軌道トルクTsoともなり得る。本案では、スピン軌道相互作用が強い材料を第2導電層75に用いる。このような材料において、スピン軌道相互作用はスピンホール効果とラシュバ効果とを両方を包含するが、2つの中で1つが支配的である。結果的に、スピンホール効果とラシュバ効果とは以下に記述される。スピンホール効果は一般的に本体(bulk)効果として見なす。しばしばスピンホール効果を示す物質は、重い金属又は重い金属がドーピングされた物質を含む。例えば、そのような物質は、A及びBがドーピングされたMから選択され得る。AはY、Zr、Nb、Mo、Tc、Ru、Rh、Pd、Cd、In、Sb、Te、Hf、Ta(高い抵抗性非晶質のβ−Taを含む)、W、Re、Os、Ir、Pt、Au、Hg、Tl、Pb、Bi、Po、At、及び/又はそれらの組み合わせを含み、MはAl、Ti、V、Cr、Mn、Cu、Zn、Ag、Hf、Ta、W、Re、Pt、Au、Hg、Pb、Si、Ga、GaMn、又はGaAsの中の少なくとも1つを含み、BはV、Cr、Mn、Fe、Co、Ni、P、S、Zn、Ga、Ge、As、Se、Y、Zr、Nb、Mo、Tc、Ru、Rh、Pd、Ag、Cd、InSb、Te、I、Lu、Hf、Ta、W、Re、Os、Ir、Pt、Au、Hg、Tl、Pb、Bi、Po、At、La、Ce、Pr、Nd、Pm、Sm、Eu、Gd、Tb、Dy、Ho、Er、Tm、Ybの中の少なくとも1つを含む。例えば、Ta、 Pd、Cd、Cu、Au、Bi、Ir、Ru、Wなどは、そのまま用いられても良い。例えば、IrがドーピングされたCu及び/又はBiがドーピングされたCuで構成されるか、或いはこれを包含することができる。
別のスピン軌道相互作用が強い材料として、スピン軌道フィールドHsoが発生する起源は、界面でのスピン軌道相互作用と関連される。界面での強いスピン軌道効果は界面方向と垂直方向への結晶フィールドの勾配(grandient)と関連され、しばしばラシュバ効果として言及される。ここでは、これに限定されず、ラシュバ効果は界面でのスピン軌道相互作用を言う。少なくとも所定の実施形態で、相当な大きさのラシュバ効果を得るために、第2導電層75のための界面は異ならなければならない。例えば、第2導電層75としてPt膜、第2強磁性層74としてCo膜、第1非磁性層73としてMgOを用いた場合、ラシュバ効果が発生し得る。第2導電層75は、合金であっても良い。例えば、Cu、Zn、Ga、Ge、As、Se、Y、Zr、Nb、Mo、Tc、Ru、Rh、Pd、Ag、Cd、In、Sn、Sb、Te、I、Lu、Hf、Ta、W、Re、Os、Ir、Pt、Au、Hg、Tl、Pb、Bi、Po、At、La、Ce、Pr、Nd、Pm、Sm、Eu、Gd、Tb、Dy、Ho、Er、Tm、Yb、及び/又はそれらの組み合わせの中で少なくとも1つを包含することができる。他の実施形態で、第2導電層75は、A/Bの表面合金(例えば、主な物質であるBの(111)表面に配置されたAの原子)を包含するが、上部の原子層はAとBの混合物である。AはCu、Zn、Ga、Ge、As、Se、Y、Zr、Nb、Mo、Tc、Ru、Rh、Pd、Ag、Cd、In、Sn、Sb、Te、I、Lu、Hf、Ta、W、Re、Os、Ir、Pt、Au、Hg、Tl、Pb、Bi、Po、At、La、Ce、Pr、Nd、Pm、Sm、Eu、Gd、Tb、Dy、Ho、Er、Tm、Ybの中の少なくとも1つを含み、BはSi、Zn、Cu、Ag、Au、W、Zn、Cr、Pt、Pdの中の少なくとも1つを含む。多くの実施形態で、Aは2つ又は3つの他の物質を含む。
第2導電層75の膜厚は、0.5〜100nmであり、典型的には0.5〜10nmである。望ましくは5nm以下である。
第1導電層71及び第2導電層75に導電性の保護膜を設けてもよい。この場合、保護膜には、例えば、タンタル(Ta)、ルテニウム(Ru)、銅(Cu)、銅(Cu)、金(Au)、銀(Ag)及びアルミニウム(Al)よりなる群から選択された少なくともいずれかの元素を含む合金、または、グラフェンなどの材料を用いることができる。エレクトロマグレーション耐性及び低抵抗であることを考慮すると、保護膜には、銅(Cu)及びアルミニウム(Al)よりなる群から選択されたいずれかの元素、または、これらを含む合金を用いることが望ましい。
第2導電層75に後述するスピン軌道相互作用が強い材料を用いて、電流(JSOT)を流すとスピン軌道フィールドHsoが生成される。スピン軌道フィールドは、第2強磁性層74の磁化に作用するスピン軌道トルクTsoともなり得る。これを用いると、第2強磁性層74の磁化方向を直接反転させることができ得る。また、電流(JSOT)を流してスピン軌道フィールドHsoを第2強磁性層74に作用させつつ、電流(JSTT)を流して第2強磁性層74の磁化方向を反転させても良い。いずれにしても、電流(JSOT)の大きさを変えると、第2強磁性層74の磁化反転に要する時間を変えることができる。JSTT =0の場合、ある電流(JSOT)で、第2強磁性層74の磁化方向を0.5ns以下の時間で変えることが可能である。またそれより大きい電流(JSOT)では、第2強磁性層74の磁化方向を0.2ns以下の時間で変えることが可能である。また別の例として有限値としてJSOTが与えられた場合、ある電流(JSTT)で、第2強磁性層74の磁化方向を0.5ns以下の時間で変えることが可能である。またそれより大きい電流(JSTT)では、第2強磁性層74の磁化方向を0.2ns以下の時間で変えることが可能である。このように、パルス幅が短いほど、磁化反転に必要な電流値が大きくなる。
第1強磁性層72の膜厚は0.5〜15nmであり、典型的には2〜10nmである。第2強磁性層74の膜厚は0.1〜5nmであり、望ましくは3 nm以下が良い。
第2導電層75の膜厚は、0.5〜100nmであり、典型的には0.5〜10nmである。望ましくは5nm以下である。
第2導電層75の膜厚が薄いほど、第2強磁性層74の磁化が反転するために必要な電流が小さくできるため好ましい。
第1強磁性層72と第2強磁性層74を垂直磁化とした場合、微細化に適する。その結果、メモリセルアレイ11の集積度を高めることができる。これは配線長が短くなるので、アクセスサイクルが短くなり、処理性能が上がる。
外部から磁界を印加しても良い。その印加方向は、主成分がxy平面にあることが望ましい。例えば、面内磁界である。
第1強磁性層72と第2強磁性層74を面内磁化とした場合、MTJの断面形状を扁平にしても良い。これにより、面内磁化状態が保たれやすくなる。面内磁化の場合、スピン軌道フィールドを作用させやすいため、MTJのサイズをある程度大きくしても磁化反転させることができる。その結果、MTJは熱擾乱に対して記憶した情報が失われにくくなる。
第2強磁性層74にとってシフト磁界をキャンセルするように、外部から磁界を印加しても良い。その印加方向は、主成分がxy平面にあることが望ましい。例えば、面内磁界である。
<垂直磁化MTJ>
第1強磁性層72は、例えば、第1の磁化固定層として機能する。第1強磁性層72においては、例えば、磁化が膜面に対して略垂直方向に固定されている。第1強磁性層72の磁化の方向は、積層方向SD1と略平行である。
第2強磁性層74は、例えば、磁気記憶層として機能する。磁化の方向は、膜面に対して略垂直方向で、積層方向SD1と略平行である。磁化の方向は、反転可能である。第1強磁性層72と第2強磁性層74を垂直磁化とした場合、微細化に適する。その結果、メモリセルアレイ11の集積度を高めることができる。これは配線長が短くなるので、アクセスサイクルが短くなり、処理性能が上がる。外部から磁界を印加しても良い。 その場合、主成分をxy平面に有することが望ましい。
<面内磁化MTJ>
第1強磁性層72は、例えば、第1の磁化固定層として機能する。第1強磁性層72においては、例えば、磁化が膜面に対して略平行方向に固定されている。第1強磁性層72の磁化の方向は、積層方向SD1と略垂直である。
第2強磁性層74は、例えば、磁気記憶層として機能する。磁化の方向は、膜面に対して略平行方向で、積層方向SD1と略垂直である。磁化の方向は、反転可能である。
第1強磁性層72と第2強磁性層74を面内磁化とした場合、MTJの断面形状を扁平にしても良い。これにより、面内磁化状態が保たれやすくなる。面内磁化の場合、スピン軌道フィールドを作用させやすいため、MTJのサイズをある程度大きくしても磁化反転させることができる。その結果、MTJは熱擾乱に対して記憶した情報が失われにくくなる。外部から磁界を印加しても良い。その場合、主成分をxy平面に有することが望ましい。
(電圧印加による異方性変化型MRAMを用いる例)
不揮発メモリとして、磁気抵抗効果型メモリ(電圧印加による異方性変化型MRAM)を用いる場合について説明する。第1強磁性層とは、磁化の方向が固定された参照層である。第2強磁性層とは、磁化の方向が可変である記憶層である。第1強磁性層と第2強磁性層の間に、第1非磁性層(スペーサー層)がある。
第1強磁性層と第2強磁性層のどちらかは、第1導電層に直接、あるいは間接的に接続されている。また、第1強磁性層と第2強磁性層のどちらかは、第2導電層に直接、あるいは間接的に接続されている。
第1導電層、第1強磁性層、第1非磁性層、第2強磁性層、第2導電層の積層体を積層体SB1と名付ける。
ここで、第1強磁性層と第2強磁性層を構成する材料は、前記STT−MRAMの場合と同様である。また、第1非磁性層、第1導電層、第2導電層を構成する材料においても、前記STT−MRAMの場合と同様である。
ここで、積層体SB1を含む磁気記憶素子と、積層方向に対して垂直な第1面内方向の成分を含む磁界を前記第2強磁性層に印加する磁界印加部と、を含む記憶部と、前記磁気記憶素子と電気的に接続され、前記磁気記憶素子の前記第1強磁性層と前記第2強磁性層との間の電圧を第1設定電圧から第2設定電圧に変化させる設定動作を実施する制御部と、を備え、前記第1設定電圧から前記第2設定電圧に変化させたときの前記第2強磁性層の異方性磁界の前記積層方向の成分の変化をΔH(エルステッド)とし、前記第2強磁性層の異方性磁界の前記積層方向の成分をH(エルステッド)とし、前記磁界印加部の印加する前記磁界の前記第1面内方向の成分をHext(エルステッド)とし、前記第2強磁性層の異方性磁界の前記第1面内方向の成分をHdx(エルステッド)とするとき、前記磁界印加部の印加する前記磁界は、以下の(1)式で表される条件を満足する不揮発性記憶装置である場合、電圧を印加することで第2強磁性層の磁気異方性が変化して磁化反転を起こす。この場合、第2設定電圧の大きさによって、磁化反転の速度が変化するため、電圧でメモリ特性を変更することが可能である。
また、別の例においては下記であっても良い。第1強磁性層とは、磁化の方向が固定された参照層である。第2強磁性層とは、磁化の方向が可変である記憶層である。第1強磁性層と第2強磁性層の間に、第1非磁性層(スペーサー層)がある。
第1強磁性層と第2強磁性層のどちらかは、第1導電層に直接、あるいは間接的に接続されている。また、第1強磁性層と第2強磁性層のどちらかは、第2導電層に直接、あるいは間接的に接続されている。
第1導電層、第1強磁性層、第1非磁性層、第2強磁性層、第2導電層の積層体を積層体SB1と名付ける。
ここで、第1強磁性層と第2強磁性層を構成する材料は、前記STT−MRAMの場合と同様である。また、第1非磁性層、第1導電層、第2導電層を構成する材料においても、前記STT−MRAMの場合と同様である。
積層体SB1は、第2強磁性層部分の一部分以上が第三導電層で取り囲まれたような構造である。第三導電層と積層体SB1は、前記STT−MRAMで記述した保護層を介して接していて、両者の間に導通はない。第三導電層には電圧を印加することができる。この場合、第2強磁性層に対する書き込み動作を行う際に、第三導電層に対して同時(あるいは先)に電圧を印加すると、第2強磁性層の磁気異方性が変化して、ある電流に対する磁化反転を速めることが可能である。磁化反転の速度が変化するため、電圧でメモリ特性を変更することが可能である。
(磁壁移動型メモリを用いる例)
不揮発メモリとして、磁壁移動型メモリ(磁壁移動型MRAM)を用いる場合について説明する。第1強磁性層とは、磁化の方向が固定された参照層である。第2強磁性層とは、磁化の方向が可変である記憶層である。第2強磁性層は、磁壁を含む。第1強磁性層と第2強磁性層の間に、第1非磁性層(スペーサー層)がある。
第1強磁性層と第2強磁性層のどちらかは、第1導電層に直接、あるいは間接的に接続されている。また、第1強磁性層と第2強磁性層のどちらかは、第2導電層に直接、あるいは間接的に接続されている。
第1導電層、第1強磁性層、第1非磁性層、第2強磁性層、第2導電層の積層体を積層体SB1と名付ける。図45は積層体SB1を表した模式図である。簡略化のため、ここでは第2導電層が描いていない。
ここで、第1強磁性層と第2強磁性層を構成する材料は、前記STT−MRAMの場合と同様である。また、第1非磁性層、第1導電層、第2導電層を構成する材料においても、前記STT−MRAMの場合と同様である。JMD1は書き込み時の電流を表し、JMD2は読み出し時に用いる電流を表す。
<垂直磁化MTJ>
第1強磁性層72は、例えば、第1の磁化固定層として機能する。第1強磁性層72においては、例えば、磁化が膜面に対して略垂直方向に固定されている。第1強磁性層72の磁化の方向は、積層方向SD1と略平行である。
第2強磁性層74は、例えば、磁気記憶層として機能する。第2強磁性層の磁化の向きは、膜面に対して略垂直方向で、積層方向SD1と略平行である。
第2強磁性層は、磁化が上向きの領域と下向きの領域を含む。すなわち、磁壁を含む。磁壁の境界は電流JMD1によってx方向に移動することが可能である。例えば、図46のように、第一強磁性層の磁化の向きが下向きであり、図面上、第一強磁性層の下に位置する領域において第2強磁性層の磁化の向きが上向きの場合、積層体SB1は磁化が反平行状態であることを意味する。この場合、読み出し電流JMD2を流すと、高抵抗として観測される。
図46において、書き込み電流JMD1を流すと、磁壁の位置がx方向に移動する。これにより、図面上、第一強磁性層の下に位置する領域において、第2強磁性層の磁化の向きが下向きとなると、積層体SB1は磁化が平行状態となる。この場合、読み出し電流JMD2を流すと、低抵抗として観察される。
<面内磁化MTJ>
第1強磁性層72は、例えば、第1の磁化固定層として機能する。第1強磁性層72においては、例えば、磁化が膜面に対して略平行方向に固定されている。第1強磁性層72の磁化の方向は、積層方向SD1と略垂直である。
第2強磁性層74は、例えば、磁気記憶層として機能する。第2強磁性層の磁化の方向は、膜面に対して略平行方向で、積層方向SD1と略垂直である。第2強磁性層は、磁化が右向きの領域と左向きの領域を含む。すなわち、磁壁を含む。磁壁の移動方法や抵抗状態は、上述した垂直磁化MTJの場合と同じである。
特にMnSi、FeGe、CuOSeO、BaFe12−xSc19、La2−xSr1+xMn、Fe1−xCoSi、Mn1−xFeGe、Mn1−xFeSi、Ba(Fe1-x-0.05ScMg0.051219などの材料を用いた場合に、磁性体中にスピン渦構造(Skyrmion、スキルミオン)を作る場合がある。MnSiやFeGeのように、B20型構造など反転対称性を持たないカイラルな結晶構造をもつ材料を第2強磁性層64に用いて薄膜化するとスキルミオンが形成されやすいので、上述した材料に限らずスキルミオンを形成する材料であれば、本案の第2強磁性層64として用いることができる。スキルミオンは、トポロジカルな安定性に加え、磁壁に比べて低い電流密度で駆動させることができる。例えば、JMD1を磁壁の場合よりも小さくすることができる。
<面内磁化と垂直磁化が混在したMTJ>
図43において、第1強磁性層62は、例えば、第1の磁化固定層として機能する。第1強磁性層62においては、例えば、磁化が膜面に対して略垂直方向に固定されている。第1強磁性層62の磁化の方向は、積層方向SD1と略平行である。第2強磁性層64は、例えば、磁気記憶層として機能する。第2強磁性層の磁化の方向は、膜面に対して略平行方向で、積層方向SD1と略垂直である。
この場合、第二強磁性層は電流が流れた時に周期的な回転運動をする。これを発振と呼ぶ場合がある。この場合、第三強磁性層をさらに積層方向に設け、その磁化方向を膜面に対して略平行方向とし、且つ、その向きを固着させる。これは電流を流して磁化状態を読みだす際のレファレンス層として機能する。すると、第二強磁性層に電流を流す時間によって、磁化の向きを変えることができることができる。また、このような素子をスピントルクオシレーターと呼ぶこともある。
図43において、第1強磁性層62は、例えば、第1の磁化固定層として機能する。第1強磁性層62においては、例えば、磁化が膜面に対して略平行方向に固定されている。第1強磁性層62の磁化の方向は、積層方向SD1と略垂直である。第2強磁性層64は、例えば、磁気記憶層として機能する。第2強磁性層の磁化の方向は、膜面に対して略垂直方向で、積層方向SD1と略平行である。
この場合、第二強磁性層は電流が流れた時に周期的な回転運動をする。これを発振と呼ぶ場合がある。この場合、第三強磁性層をさらに積層方向に設け、その磁化方向を膜面に対して略垂直方向とし、且つ、その向きを固着させる。これは電流を流して磁化状態を読みだす際のレファレンス層として機能する。すると、第二強磁性層に電流を流す時間によって、磁化の向きを変えることができることができる。また、このような素子をスピントルクオシレーターと呼ぶこともある。
(抵抗変化型メモリを用いる例)
不揮発メモリとして、抵抗変化型メモリを用いる場合について記述する。抵抗変化型メモリは、第1の電極と、第2の電極と、第1及び第2の電極間に接続され、第1及び第2の抵抗状態間を可逆的に変化可能な抵抗変化膜とを備える。第1及び第2の電極の上下関係は、特に限定されない。例えば、第2の電極が第1の電極の上部に存在していてもよいし、第1の電極が第2の電極の上部に存在していてもよい。また、第1及び第2の電極、及び、抵抗変化膜は、それぞれ、単層構造であってもよいし、複数層を備える多層構造であってもよい。さらに、第1及び第2の電極、及び、抵抗変化膜を備える抵抗変化素子に、ダイオードを直列接続してもよい。第1及び第2の電極は、Ni、Pt、Au、Ag、Cu、Ru、Ir、Co、Ti、Al、Rh、Nb、Wなどの金属、不純物がドープされたポリシリコンなどの導電性半導体、又は、これら金属と導電性半導体のシリサイドを備える。また、第1及び第2の電極は、TiAlN、SrRuO、RuN、TiN、TaN、LaNiO、PtIrO、PtRhO、TaAlN、InSnOなどの化合物を備えていてもよい。抵抗変化膜は、HfO、SiO、Ta、ZnO、TiO、NiO、WOx、Nb、CuO、Al、CoO、Fe、SrTiO、SrZrO、(BaSr)TiO、などの金属酸化物を備える。抵抗変化膜は、少なくとも2つの抵抗状態を可逆的に変化可能である。
この場合も、メモリに加える電圧値を変えると、状態変化に必要な時間はSTT−MRAMと同様に変化する。
(位相変化型メモリを用いる例)
不揮発メモリとして、位相変化型メモリを用いる場合について記述する。位相変化型メモリは、第1の電極と、第2の電極と、第1及び第2の電極間に接続され、第1及び第2の抵抗状態間を可逆的に変化可能な抵抗変化膜とを備える。第1及び第2の電極の上下関係は、特に限定されない。例えば、第2の電極が第1の電極の上部に存在していてもよいし、第1の電極が第2の電極の上部に存在していてもよい。また、第1及び第2の電極、及び、抵抗変化膜は、それぞれ、単層構造であってもよいし、複数層を備える多層構造であってもよい。さらに、第1及び第2の電極、及び、抵抗変化膜を備える抵抗変化素子に、ダイオードを直列接続してもよい。第1及び第2の電極は、Ni、Pt、Au、Ag、Cu、Ru、Ir、Co、Ti、Al、Rh、Nb、Wなどの金属、不純物がドープされたポリシリコンなどの導電性半導体、又は、これら金属と導電性半導体のシリサイドを備える。また、第1及び第2の電極は、TiAlN、SrRuO、RuN、TiN、TaN、LaNiO、PtIrO、PtRhO、TaAlN、InSnOなどの化合物を備えていてもよい。抵抗変化膜は、カルコゲナイド(Chalcogenide)をベースとした材料とその他の材料を含んでいて良い。例えば、カルコゲナイドは、周期表VIA族のO(oxygen)、S(sulfur)、Se(Selenium)、Te(tellurium)などを含んでいても良い。カルコゲナイドはIVA族のGe(germanium)、Sn(tin)などを含んでも良い。カルコゲナイドは、Sb(antimony)、Ga(gallium)、In(indium)、Ag(silver)を含んでも良い。これ以外にも、Ga/Sb、In/Sb、In/Se、Sb/Te、Ge/Te、Ge/Sb/Te、In/Sb/Te、Ga/Se/Te、Sn/Sb/Te、In/Sb/Ge、Ag/In/Sb/Te、Ge/Sn/Sb/Te/、Ge/Sb/Se/Te、Te/Ge/Sb/Sなどの化合物で形成されていても良い。例えば、Ge/Sb/Teを例にとると、TeGeSb100−(a+b)という化合物が例に挙げられる。この他の例としては、GeSbTe、GeSbTe、GeSbTeなどが挙げられる。抵抗変化膜は、Cr(chromium)、Fe(iron)、Ni(nickel)、Nb(niobium)、Pd(palladium)、Pt(platinum)などの遷移金属を含んでいても良い。これらは、先のGe/Sb/Teと混合物や化合物を形成しても良い。
この場合も、メモリに加える電圧値を変えると、状態変化に必要な時間はSTT−MRAMと同様に変化する。
以上に説明した本実施形態によるメモリシステムは、読み書きが可能な複数のメモリセルを有する不揮発メモリと、信号処理経路又は信号処理ノードの重みに応じて、前記不揮発メモリの書込み電圧の電圧値またはパルス幅の少なくとも一方を制御する書込み電圧制御部と、前記書込み電圧制御部で制御された前記書込み電圧を用いて、前記複数のメモリセルのうち2以上のメモリセル群にデータを書き込む書込み部と、前記書込み部にてデータを書き込んだときに、前記メモリセル群の反転確率を検出する反転確率検出部と、前記検出された反転確率を重みに変換する重み変換部と、を備える。
書込み部は、書込み電圧制御部で制御された書込み電圧を用いて、複数のメモリセルのうち2以上のメモリセル群に一括してデータを書き込んでもよい。反転確率とは、メモリセル群のうち論理が反転したメモリセルの個数の割合を表している。
前記重み変換部で変換された重みと、前記書込み電圧制御部が前記書込み電圧を制御するのに用いた重みと、の差分を検出する差分検出部と、前記差分に基づいて、前記書込み電圧制御部が前記書込み電圧を制御するのに用いる重みを更新する重み更新部と、を備え、前記書込み電圧制御部は、前記重み更新部で更新された重みに応じて、前記書込み電圧の電圧値及びパルス幅の少なくとも一方を制御してもよい。
前記重み更新部は、前記差分に所定の更新係数を乗じた値に基づいて、前記書込み電圧制御部が前記書込み電圧を制御するのに用いる重みを更新してもよい。
前記書込み電圧制御部は、信号処理経路又は信号処理ノードに重みが割り当てられた所定の信号処理ネットワークで演算処理を行う場合のエネルギーが最小となる重みに応じて、前記書込み電圧の電圧値及びパルス幅の少なくとも一方を制御してもよい。
複数の重みの和を計算する重み和計算部を備え、前記書込み電圧制御部は、前記重み和計算部にて計算された重みに応じて、前記書込み電圧の電圧値及びパルス幅の少なくとも一方を制御してもよい。
前記メモリセル群は、重みをアナログ値として書き込むのに必要な個数設けられ、前記メモリセル群には、前記書込み電圧制御部にて制御された前記書込み電圧にて、一括して同じデータが書き込まれてもよい。
前記メモリセル群は、重みを2進数で表したビット列のビット数分設けられ、前記メモリセル群には、前記書込み電圧制御部にて制御された前記書込み電圧にて、前記ビット列分の各配線にデータが一括して書き込まれてもよい。
前記メモリセル群は、重みの種類の数だけ設けられ、前記メモリセル群には、前記書込み電圧制御部にて制御された前記書込み電圧にて、前記重みの種類の数分の各配線にデータが一括して書き込まれてもよい。
前記不揮発メモリは、重みをアナログ値として書き込むのに必要な個数分の第1群のメモリセルと、重みを2進数で表したビット列分のビット数分の第2群のメモリセルと、を有し、前記書込み部は、前記第1群のメモリセルを用いて前記反転確率の更新が完了すると、完了時の前記反転確率に対応する重みの情報を前記第2群のメモリセルに書き込んでもよい。
前記不揮発メモリは、前記第1群のメモリセルとは別の領域に設けられ、重みをアナログ値として書き込むのに必要な個数分の第3群のメモリセルを有し、前記書込み部は、前記第1群のメモリセル及び前記第3群のメモリセルを用いた、それぞれ異なる重みに対応する前記反転確率の更新が完了すると、完了時の前記第1群のメモリセル及び前記第3群のメモリセルの前記反転確率に対応する重みの情報を前記第2群のメモリセルに書き込んでもよい。
前記不揮発メモリにおける前記反転確率の更新が完了した後に、前記メモリセル群に記憶されたデータを一括して、又は順次に読み出す読み出し部を備えてもよい。
前記読み出し部にて読み出したデータに含まれる前記反転確率に応じた重みに所定の信号を乗じる積和演算処理を行う積和演算部を備えてもよい。
前記読み出し部は、前記第1群のメモリセルに記憶されたデータを順次に読み出すセンスアンプ、又は前記第1群のメモリセルに記憶されたデータに応じた電流の和を検出する電流和回路を有してもよい。
前記メモリセル群を含むメモリセル領域は、それぞれ別個の重みに対応する、第1方向に配列された複数の第1配線と、前記第1方向に交差する第2方向に配列され、重みの値を記憶または読み出すための複数の第2配線と、を有し、前記書込み部は、前記複数の第1配線のうちいずれかの第1配線が駆動される際には、前記複数の第2配線の一部又は全部に同一の前記書込み電圧を供給してもよい。
前記メモリセル群を含むメモリセル領域は、それぞれ別個の複数の重みに対応する、第1方向に配列された複数の第1配線と、前記第1方向に交差する第2方向に配列され、重みの値を記憶または読み出すための複数の第2配線と、前記複数の第2配線のうち2以上の第2配線の群ごとに設けられる複数の読み出し部と、を有し、前記書込み部は、前記複数の読み出し部のそれぞれに対応する前記第2配線の群の中から一つずつを一括して選択して、一括して選択した複数の第2配線を一括して駆動して複数のメモリセルのそれぞれに重みのデータを書き込む処理を、前記第2配線の群の中のすべての第2配線を選択するまで繰り返し行い、前記複数の読み出し部のそれぞれは、前記第2配線の群の中から一つずつを一括して選択して、一括して選択した複数の第2配線に接続された複数のメモリセルから一括して重みのデータを読み出す処理を、前記第2配線の群の中のすべての第2配線を選択するまで繰り返し行ってもよい。
前記複数の第2配線のそれぞれは、論理が互いに逆の一対の配線を有し、前記複数の第2配線のそれぞれが有する前記一対の配線のうち一方は、共通の電位に設定されてもよい。
本実施形態による半導体記憶装置は、読み書きが可能な複数のメモリセルを有する不揮発メモリセルアレイと、信号処理経路又は信号処理ノードの重みに応じて、前記不揮発メモリセルアレイの書込み電圧の電圧値及びパルス幅の少なくとも一方を制御する書込み電圧制御部と、前記書込み電圧制御部で制御された前記書込み電圧にて、前記複数のメモリセルのうち2以上のメモリセル群に一括してデータを書き込む書込み部と、前記書込み部にてデータを書き込んだときに、前記メモリセル群のうち論理が反転したメモリセルの個数の割合を表す反転確率を検出する反転確率検出部と、を備える。
本実施形態による信号処理システムは、信号処理経路又は信号処理ノードの重みを含む信号処理ネットワークを構築するネットワーク構築部と、前記重みを記憶する不揮発メモリと、前記不揮発メモリから前記重みを読み出して、前記信号処理ネットワークに従って演算処理を行う情報処理部と、を備え、前記不揮発メモリは、読み書きが可能な複数のメモリセルと、前記信号処理ネットワークの重みに応じて、前記不揮発メモリの書込み電圧の電圧値及びパルス幅の少なくとも一方を制御する書込み電圧制御部と、前記書込み電圧制御部で制御された前記書込み電圧にて、前記複数のメモリセルのうち2以上のメモリセル群に一括してデータを書き込む書込み部と、前記書込み部にてデータを書き込んだときに、前記メモリセル群のうち論理が反転したメモリセルの個数の割合を表す反転確率を検出する反転確率検出部と、を有する。
このように、本実施形態では、信号処理経路又は信号処理ノードの重みに応じて、不揮発メモリの書込み電圧を制御して不揮発メモリへの書込みを行い、不揮発メモリから読み出したデータの反転確率を重みに変換して信号処理に利用するため、不揮発メモリを重みの記憶に用いることができる。
ニューラルネットワーク等の信号処理ネットワークでは、信号処理の過程で、多数の重みを用いた演算を高速に行う必要があるが、本実施形態では、書込み電圧の制御により反転確率が変化する不揮発メモリを積極的に用いて、反転確率の違いを利用して、重みのデータを不揮発メモリに記憶できる。例えば、MTJ素子16bに代表されるMRAMは、書込み耐性に優れるという特徴があるものの、書込み電圧の電圧値やパルス幅により反転確率が変化する特性を有するが、この特性を利用して、重みの記憶に用いることができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1 信号処理システム、2 ネットワーク構築部、3 不揮発メモリ、4 情報処理部、10 メモリシステム、11 メモリセルアレイ、12 コントローラ、13 コマンドデコーダ、14 アドレスデコーダ、15 I/Oバッファ、16 メモリセル、17 ロウデコーダ、18 ワード線ドライバ、19 センスアンプ、20 データラッチ、21 カラムデコーダ、22 読み出し部、23 積和演算部、24 書込み部、31 書込み電圧制御部、32 反転確率検出部、33 重み変換部、34 差分検出部、35 重み更新部、36 重み和計算部、40 PC

Claims (9)

  1. 読み書きが可能な複数のメモリセルを有する不揮発メモリと、
    信号処理経路又は信号処理ノードの重みに応じて、前記不揮発メモリの書込み電圧の電圧値またはパルス幅の少なくとも一方を制御する書込み電圧制御部と、
    前記書込み電圧制御部で制御された前記書込み電圧を用いて、前記複数のメモリセルのうち2以上のメモリセル群にデータを書き込む書込み部と、
    前記書込み部にてデータを書き込んだときに、前記メモリセル群の反転確率を検出する反転確率検出部と、
    前記検出された反転確率を重みに変換する重み変換部と、を備える、メモリシステム。
  2. 前記重み変換部で変換された重みと、前記書込み電圧制御部が前記書込み電圧を制御するのに用いた重みと、の差分を検出する差分検出部と、
    前記差分に基づいて、前記書込み電圧制御部が前記書込み電圧を制御するのに用いる重みを更新する重み更新部と、を備え、
    前記書込み電圧制御部は、前記重み更新部で更新された重みに応じて、前記書込み電圧の電圧値及びパルス幅の少なくとも一方を制御する、請求項1に記載のメモリシステム。
  3. 複数の重みの和を計算する重み和計算部を備え、
    前記書込み電圧制御部は、前記重み和計算部にて計算された重みに応じて、前記書込み電圧の電圧値及びパルス幅の少なくとも一方を制御する、請求項1または2に記載のメモリシステム。
  4. 前記不揮発メモリにおける前記反転確率の更新が完了した後に、前記メモリセル群に記憶されたデータを一括して、又は順次に読み出す読み出し部を備える、請求項1乃至3のいずれか一項に記載のメモリシステム。
  5. 前記読み出し部にて読み出したデータに含まれる前記反転確率に応じた重みに所定の信号を乗じる積和演算処理を行う積和演算部を備える、請求項1乃至4のいずれか一項に記載のメモリシステム。
  6. 前記メモリセル群を含むメモリセル領域は、
    それぞれ別個の重みに対応する、第1方向に配列された複数の第1配線と、
    前記第1方向に交差する第2方向に配列され、重みの値を記憶または読み出すための複数の第2配線と、を有し、
    前記書込み部は、前記複数の第1配線のうちいずれかの第1配線が駆動される際には、前記複数の第2配線の一部又は全部に同一の前記書込み電圧を供給する、請求項1乃至5のいずれか一項に記載のメモリシステム。
  7. 前記メモリセル群を含むメモリセル領域は、
    それぞれ別個の複数の重みに対応する、第1方向に配列された複数の第1配線と、
    前記第1方向に交差する第2方向に配列され、重みの値を記憶または読み出すための複数の第2配線と、
    前記複数の第2配線のうち2以上の第2配線の群ごとに設けられる複数の読み出し部と、を有し、
    前記書込み部は、前記複数の読み出し部のそれぞれに対応する前記第2配線の群の中から一つずつを一括して選択して、一括して選択した複数の第2配線を一括して駆動して複数のメモリセルのそれぞれに重みのデータを書き込む処理を、前記第2配線の群の中のすべての第2配線を選択するまで繰り返し行い、
    前記複数の読み出し部のそれぞれは、前記第2配線の群の中から一つずつを一括して選択して、一括して選択した複数の第2配線に接続された複数のメモリセルから一括して重みのデータを読み出す処理を、前記第2配線の群の中のすべての第2配線を選択するまで繰り返し行う、請求項1乃至3のいずれか一項に記載のメモリシステム。
  8. 読み書きが可能な複数のメモリセルを有する不揮発メモリセルアレイと、
    信号処理経路又は信号処理ノードの重みに応じて、前記不揮発メモリセルアレイの書込み電圧の電圧値及びパルス幅の少なくとも一方を制御する書込み電圧制御部と、
    前記書込み電圧制御部で制御された前記書込み電圧にて、前記複数のメモリセルのうち2以上のメモリセル群に一括してデータを書き込む書込み部と、
    前記書込み部にてデータを書き込んだときに、前記メモリセル群のうち論理が反転したメモリセルの個数の割合を表す反転確率を検出する反転確率検出部と、を備える、半導体記憶装置。
  9. 信号処理経路又は信号処理ノードの重みを含む信号処理ネットワークを構築するネットワーク構築部と、
    前記重みを記憶する不揮発メモリと、
    前記不揮発メモリから前記重みを読み出して、前記信号処理ネットワークに従って演算処理を行う情報処理部と、を備え、
    前記不揮発メモリは、
    読み書きが可能な複数のメモリセルと、
    前記信号処理ネットワークの重みに応じて、前記不揮発メモリの書込み電圧の電圧値及びパルス幅の少なくとも一方を制御する書込み電圧制御部と、
    前記書込み電圧制御部で制御された前記書込み電圧にて、前記複数のメモリセルのうち2以上のメモリセル群に一括してデータを書き込む書込み部と、
    前記書込み部にてデータを書き込んだときに、前記メモリセル群のうち論理が反転したメモリセルの個数の割合を表す反転確率を検出する反転確率検出部と、を有する、信号処理システム。
JP2017144840A 2017-07-26 2017-07-26 メモリシステム、半導体記憶装置及び信号処理システム Pending JP2019028569A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017144840A JP2019028569A (ja) 2017-07-26 2017-07-26 メモリシステム、半導体記憶装置及び信号処理システム
US15/911,211 US10388350B2 (en) 2017-07-26 2018-03-05 Memory system, semiconductor storage device, and signal processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017144840A JP2019028569A (ja) 2017-07-26 2017-07-26 メモリシステム、半導体記憶装置及び信号処理システム

Publications (1)

Publication Number Publication Date
JP2019028569A true JP2019028569A (ja) 2019-02-21

Family

ID=65039045

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017144840A Pending JP2019028569A (ja) 2017-07-26 2017-07-26 メモリシステム、半導体記憶装置及び信号処理システム

Country Status (2)

Country Link
US (1) US10388350B2 (ja)
JP (1) JP2019028569A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022102430A1 (ja) * 2020-11-13 2022-05-19 ソニーグループ株式会社 半導体装置
JP2022531766A (ja) * 2019-05-02 2022-07-11 シリコン ストーリッジ テクノロージー インコーポレイテッド 深層学習人工ニューラルネットワークにおけるアナログニューラルメモリ用の出力アレイニューロンの変換及び較正
WO2022153366A1 (ja) * 2021-01-12 2022-07-21 Tdk株式会社 磁気アレイ、磁気アレイの制御方法及び磁気アレイの制御プログラム
JP2022538845A (ja) * 2019-06-26 2022-09-06 マイクロン テクノロジー,インク. 積層人工ニューラルネットワーク
KR20220133005A (ko) * 2021-03-24 2022-10-04 광운대학교 산학협력단 인공 신경망 소자 및 이의 동작 방법

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10957392B2 (en) 2018-01-17 2021-03-23 Macronix International Co., Ltd. 2D and 3D sum-of-products array for neuromorphic computing system
WO2019171715A1 (ja) 2018-03-08 2019-09-12 Tdk株式会社 スピン素子及び磁気メモリ
US10452472B1 (en) * 2018-06-04 2019-10-22 Hewlett Packard Enterprise Development Lp Tunable and dynamically adjustable error correction for memristor crossbars
US10381551B1 (en) 2018-06-29 2019-08-13 Sandisk Technologies Llc Spin orbit torque magnetoresistive random access memory containing shielding element and method of making thereof
US10553783B2 (en) * 2018-06-29 2020-02-04 Sandisk Technologies Llc Spin orbit torque magnetoresistive random access memory containing shielding element and method of making thereof
US11138497B2 (en) 2018-07-17 2021-10-05 Macronix International Co., Ltd In-memory computing devices for neural networks
US10528862B1 (en) * 2018-07-26 2020-01-07 Macronix International Co., Ltd. Neural network system and method for controlling the same
JP2020035502A (ja) * 2018-08-28 2020-03-05 キオクシア株式会社 半導体集積回路
US11056185B2 (en) * 2018-10-12 2021-07-06 International Business Machines Corporation Apparatus for deep learning operations on resistive crossbar array
US11636325B2 (en) 2018-10-24 2023-04-25 Macronix International Co., Ltd. In-memory data pooling for machine learning
US11562229B2 (en) 2018-11-30 2023-01-24 Macronix International Co., Ltd. Convolution accelerator using in-memory computation
US10573364B1 (en) * 2018-12-13 2020-02-25 Nxp Usa, Inc. Magnetic disturb diagnostic system for MRAM
US11934480B2 (en) 2018-12-18 2024-03-19 Macronix International Co., Ltd. NAND block architecture for in-memory multiply-and-accumulate operations
US11119674B2 (en) 2019-02-19 2021-09-14 Macronix International Co., Ltd. Memory devices and methods for operating the same
CN109902822B (zh) * 2019-03-07 2021-04-06 北京航空航天大学合肥创新研究院 基于斯格明子赛道存储器的内存计算系统及方法
US11132176B2 (en) * 2019-03-20 2021-09-28 Macronix International Co., Ltd. Non-volatile computing method in flash memory
US20200320373A1 (en) * 2019-04-03 2020-10-08 Realtek Semiconductor Corp. Mixed-signal neurons for neuromorphic computing and method thereof
US11693657B2 (en) 2019-09-05 2023-07-04 Micron Technology, Inc. Methods for performing fused-multiply-add operations on serially allocated data within a processing-in-memory capable memory device, and related memory devices and systems
US11829729B2 (en) 2019-09-05 2023-11-28 Micron Technology, Inc. Spatiotemporal fused-multiply-add, and related systems, methods and devices
US11934824B2 (en) 2019-09-05 2024-03-19 Micron Technology, Inc. Methods for performing processing-in-memory operations, and related memory devices and systems
KR102198771B1 (ko) * 2019-09-09 2021-01-06 주식회사 메타씨앤아이 메모리 장치 및 메모리를 구동하는 방법
EP3813135A1 (en) * 2019-10-23 2021-04-28 Merck Patent GmbH Two bit memory device and method for operating the two-bit memory device and electronic component
KR20210075542A (ko) 2019-12-13 2021-06-23 삼성전자주식회사 스위칭 소자와 저항 소자를 포함하는 3차원 뉴로모픽 장치
JP2021144771A (ja) * 2020-03-12 2021-09-24 キオクシア株式会社 半導体記憶装置及びメモリシステム
US11537861B2 (en) * 2020-06-23 2022-12-27 Micron Technology, Inc. Methods of performing processing-in-memory operations, and related devices and systems
CN111785828B (zh) * 2020-07-03 2022-09-09 北京航空航天大学 基于斯格明子的人工突触器件
US11244718B1 (en) * 2020-09-08 2022-02-08 Alibaba Group Holding Limited Control of NAND flash memory for al applications
CN113450851B (zh) * 2021-03-08 2022-08-12 北京航空航天大学 多比特存储单元、模数转换器、设备及方法
CN113010145B (zh) * 2021-03-22 2024-02-20 香港中文大学(深圳) 数位运算组件、数位计算器及电子设备

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3344313B2 (ja) * 1998-03-25 2002-11-11 日本電気株式会社 不揮発性半導体メモリ装置
WO2004010582A1 (ja) 2002-07-22 2004-01-29 Matsushita Electric Industrial Co., Ltd. 確率的演算素子、その駆動方法及びこれを用いた認識処理装置
US7710793B2 (en) * 2007-08-14 2010-05-04 Samsung Electronics Co., Ltd. Write voltage generating circuit and method
JP5138836B2 (ja) * 2011-04-13 2013-02-06 パナソニック株式会社 参照セル回路とそれを用いた抵抗変化型不揮発性記憶装置
JP2016062463A (ja) 2014-09-19 2016-04-25 株式会社東芝 メモリシステム、誤り訂正装置、および誤り訂正方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022531766A (ja) * 2019-05-02 2022-07-11 シリコン ストーリッジ テクノロージー インコーポレイテッド 深層学習人工ニューラルネットワークにおけるアナログニューラルメモリ用の出力アレイニューロンの変換及び較正
JP2022538845A (ja) * 2019-06-26 2022-09-06 マイクロン テクノロジー,インク. 積層人工ニューラルネットワーク
WO2022102430A1 (ja) * 2020-11-13 2022-05-19 ソニーグループ株式会社 半導体装置
WO2022153366A1 (ja) * 2021-01-12 2022-07-21 Tdk株式会社 磁気アレイ、磁気アレイの制御方法及び磁気アレイの制御プログラム
JP7143968B1 (ja) * 2021-01-12 2022-09-29 Tdk株式会社 磁気アレイ、磁気アレイの制御方法及び磁気アレイの制御プログラム
KR20220133005A (ko) * 2021-03-24 2022-10-04 광운대학교 산학협력단 인공 신경망 소자 및 이의 동작 방법
KR102612011B1 (ko) 2021-03-24 2023-12-07 광운대학교 산학협력단 인공 신경망 소자 및 이의 동작 방법

Also Published As

Publication number Publication date
US10388350B2 (en) 2019-08-20
US20190035449A1 (en) 2019-01-31

Similar Documents

Publication Publication Date Title
US10388350B2 (en) Memory system, semiconductor storage device, and signal processing system
Slesazeck et al. Nanoscale resistive switching memory devices: a review
US10622550B2 (en) Magnetoresistance effect element including a recording layer with perpendicular anisotropy and a bias layer comprised of an antiferromagnetic material, magnetic memory device, manufacturing method, operation method, and integrated circuit
KR100728586B1 (ko) 메모리 셀, 기억장치 및 메모리 셀의 제조방법
TWI396198B (zh) 使用相變材料記憶元件的非揮發性內容可定址記憶體
Li et al. An overview of non-volatile memory technology and the implication for tools and architectures
JP7216436B2 (ja) ニューラルネットワーク回路装置
US10885960B2 (en) Spin device, and operating method therefor and manufacturing method therefor
US8014219B2 (en) Semiconductor memory device
US20120243297A1 (en) Resistance change type memory
JP2007115956A (ja) 半導体記憶装置
Si et al. Overview and outlook of emerging non-volatile memories
US20080310215A1 (en) Magnetic random access memory and write method of the same
US20230197150A1 (en) Methods of controlling pcram devices in single-level-cell (slc) and multi-level-cell (mlc) modes and a controller for performing the same methods
US7511992B2 (en) Magnetic memory device
US20220044103A1 (en) Matrix-vector multiplication using sot-based non-volatile memory cells
Wang et al. Multi-level neuromorphic devices built on emerging ferroic materials: A review
KR20180045328A (ko) 스핀 뉴런 소자 및 이의 동작방법
Lee et al. Review of candidate devices for neuromorphic applications
Pedretti et al. Computing with nonvolatile memories for artificial intelligence
Lee et al. A dual-data line read scheme for high-speed low-energy resistive nonvolatile memories
Levisse et al. High density emerging resistive memories: What are the limits?
WO2021066100A1 (ja) シナプス回路の駆動方法
TWI840758B (zh) 記憶體裝置
KR102571118B1 (ko) 뉴로모픽 장치