JP2013182505A - ストレージシステムおよびその駆動方法 - Google Patents
ストレージシステムおよびその駆動方法 Download PDFInfo
- Publication number
- JP2013182505A JP2013182505A JP2012047016A JP2012047016A JP2013182505A JP 2013182505 A JP2013182505 A JP 2013182505A JP 2012047016 A JP2012047016 A JP 2012047016A JP 2012047016 A JP2012047016 A JP 2012047016A JP 2013182505 A JP2013182505 A JP 2013182505A
- Authority
- JP
- Japan
- Prior art keywords
- storage unit
- address
- storage
- logical address
- storage system
- 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
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
- Memory System (AREA)
Abstract
【課題】データ記憶容量、データ処理能力およびコストパフォーマンスに優れたストレージシステムを提供する。
【解決手段】ストレージシステムは、磁気抵抗型ランダムアクセスメモリを含む第1のストレージユニットと、NAND型フラッシュメモリを含む第2のストレージユニットとを備える。マスタコントローラは、入出力データの論理アドレスと第1および第2のストレージユニットの物理アドレスとの対応関係を示すアドレス変換テーブルを保持する。マスタコントローラは、論理アドレスへのアクセス頻度に応じて、該論理アドレスに対応するアドレス変換テーブル内の物理アドレスを第1のストレージユニットの物理アドレスと第2のストレージユニットの物理アドレスとの間で変更する。
【選択図】図1
Description
本発明による実施形態は、ストレージシステムおよびその駆動方法に関する。
近年、高速な不揮発性メモリとして磁気ランダムアクセスメモリ(MRAM(Magnetic Random Access Memory))が開発されている。また、不揮発性メモリであるNAND型フラッシュメモリを搭載したSSD(Solid State Drive)の普及が進んでいる。
MRAMは、アクセス速度および書換え可能回数においてNAND型フラッシュメモリよりも優れているという特徴を有する。一方、NAND型フラッシュメモリは、ビットコストにおいてMRAMよりも安いという特徴を有する。
ところで、今後のクラウド社会におけるサーバおよびデータセンタには、大きなデータ記憶容量および高いデータ処理能力が要求される。このため、データ記憶容量、データ処理能力およびコストパフォーマンスに優れたストレージシステムの構築が望まれる。
データ記憶容量、データ処理能力に優れ、低コストなストレージシステムを提供する。
本実施形態によるストレージシステムは、磁気抵抗型ランダムアクセスメモリを含む第1のストレージユニットと、NAND型フラッシュメモリを含む第2のストレージユニットとを備える。マスタコントローラは、入出力データの論理アドレスと第1および第2のストレージユニットの物理アドレスとの対応関係を示すアドレス変換テーブルを保持する。マスタコントローラは、論理アドレスへのアクセス頻度に応じて、該論理アドレスに対応するアドレス変換テーブル内の物理アドレスを第1のストレージユニットの物理アドレスと第2のストレージユニットの物理アドレスとの間で変更する。
以下、図面を参照して本発明に係る実施形態を説明する。本実施形態は、本発明を限定するものではない。
(第1の実施形態)
図1は、第1の実施形態によるストレージシステム10の構成を示す概念図である。ストレージシステム10は、MRAMを含む第1のストレージユニットSU1と、NAND型フラッシュメモリ(以下、NANDメモリともいう)を含む第2のストレージユニットSU2と、ハードディスクドライブ(HDD)を含む第3のストレージユニットSU3とを備えている。
図1は、第1の実施形態によるストレージシステム10の構成を示す概念図である。ストレージシステム10は、MRAMを含む第1のストレージユニットSU1と、NAND型フラッシュメモリ(以下、NANDメモリともいう)を含む第2のストレージユニットSU2と、ハードディスクドライブ(HDD)を含む第3のストレージユニットSU3とを備えている。
第1から第3のストレージユニットSU1〜SU3は、階層化されているものの、単体のストレージシステム10としてデータを格納することができる。
図2は、第1の実施形態によるストレージシステム10の構成を示すブロック図である。第1のストレージユニットSU1は、複数のMRAMチップ20と、第1のサブコントローラSUBCNT1とを備えている。第1のサブコントローラSUBCNT1は、データ読出しまたはデータ書込み動作において、複数のMRAMチップ20を制御する。図2において、第1のストレージユニットSU1の数は、1つであるが、第1のストレージユニットSU1の数はこれに限定されない。
第2のストレージユニットSU2は、複数のNAND型フラッシュメモリチップ(以下、NANDチップともいう)30と、第2のサブコントローラSUBCNT2とを備えている。第2のサブコントローラSUBCNT2は、データ読出しまたはデータ書込み動作において、複数のNANDチップ30を制御する。図2において、第2のストレージユニットSU2の数は、2つであるが、第2のストレージユニットSU2の数はこれに限定されない。
第3のストレージユニットSU3は、HDD40と、第3のサブコントローラSUBCNT3とを備えている。第3のサブコントローラSUBCNT3は、データ読出しまたはデータ書込み動作において、HDD40を制御する。図2において、第3のストレージユニットSU3の数は、3つであるが、第3のストレージユニットSU3の数はこれに限定されない。
第1から第3のサブコントローラSUBCNT1〜SUBCNT3は、それぞれ第1から第3のストレージユニットSU1〜SU3を個別に制御する。
さらに、ストレージシステム10は、第1から第3のストレージユニットSU1〜SU3のサブコントローラSUBCNT1〜SUBCNT3を制御するためにマスタコントローラMCNTを備えている。
マスタコントローラMCNTは、データ読出しまたはデータ書込み動作においてストレージシステム10にアクセスがあったときに、入出力データの論理アドレスを第1から第3のストレージユニットSU1〜SU3のいずれかの物理アドレスに変換するためにアドレス変換テーブルを保持している。アドレス変換テーブルは、入出力データの論理アドレスと第1から第3のストレージユニットSU1〜SU3の物理アドレスとの対応関係を示すテーブルである。マスタコントローラMCNTは、アドレス変換テーブルをレジスタ60内に格納している。マスタコントローラMCNTは、アクセス頻度に応じて、アドレス変換テーブルの論理アドレスと物理アドレスとの対応関係を変更することができる。
図3は、アドレス変換テーブル50の構成を示す概念図である。アドレス変換テーブル50は、論理アドレスLA0〜LAn(nは整数)の情報と、物理アドレスPA10、PA11、PA12・・・、PA20、PA21、PA22・・・、PA30、PA31、PA32・・・の情報とを有する。物理アドレスPA10、PA11、PA12・・・は、第1のストレージユニットSU1に割り当てられたアドレスである。物理アドレスPA20、PA21、PA22・・・は、第2のストレージユニットSU2に割り当てられたアドレスである。さらに、物理アドレスPA30、PA31、PA32・・・は、第3のストレージユニットSU3に割り当てられたアドレスである。
論理アドレスLA0〜LAnは、それぞれ物理アドレスPA10、PA11、PA12・・・、PA20、PA21、PA22・・・、PA30、PA31、PA32・・・のいずれかに関連付けられている。それにより、データ読出しまたはデータ書込み動作において、マスタコントローラMCNTは、論理アドレスを、該論理アドレスに関連付けられた物理アドレスに変換し、該物理アドレスに対応するストレージユニットへデータを格納することができる。例えば、論理アドレスLAk(k=0〜n)と物理アドレスPA31とが関連付けられているものとする。この場合、論理アドレスLAkを指定するアクセスがあった場合、マスタコントローラMCNTは、論理アドレスLAkを物理アドレスPA31に変換し、該物理アドレスPA31に対応する第3のストレージユニットSU3のストレージ部分へアクセスする。そして、データ読出し動作の場合、図2に示す第3のサブコントローラSUBCNT3は、物理アドレスPA31に対応する第3のストレージユニットSU3のストレージ部分からデータをストレージシステム10の外部へ読み出す。データ書込み動作の場合、第3のサブコントローラSUBCNT3は、物理アドレスPA31に対応する第3のストレージユニットSU3のストレージ部分へ書込みデータを書き込む。
図2に示すマスタコントローラMCNTのレジスタ60は、各論理アドレスLA0〜LAnおよび各物理アドレスPA10〜PA3m(mは整数)についてのデータ書換え回数および/またはデータ読出し回数も保持する。データ書込みまたはデータ読出し動作においてアクセスがあったときに、マスタコントローラMCNTは、アクセスされた論理アドレスおよび物理アドレスの書換え回数および/またはデータ読出し回数をインクリメントしてレジスタ60に保持する。
マスタコントローラMCNTは、論理アドレスLA0〜LAnおよび物理アドレスPA10〜PA3mのそれぞれデータ書換え回数および/またはデータ読出し回数によって、論理アドレスLA0〜LAnおよび物理アドレスPA10〜PA3mへのそれぞれのアクセス頻度を知ることができる。
一般に、MRAMは、ビットコストにおいてNANDメモリおよびHDDよりも高いが、アクセス速度においてNANDメモリおよびHDDよりも速く、かつ、データ書換え回数においてNANDメモリよりも非常に優れている。
HDDは、アクセス速度においてNANDメモリおよびMRAMよりも遅いが、ビットコストにおいてNANDメモリおよびMRAMのいずれよりも安い。また、HDDは、書換え可能回数においてNANDメモリよりも優れている。
NANDメモリは、書換え可能回数においてMRAMおよびHDDに比べて劣る。しかし、NANDメモリは、微細化に優れており、MRAMよりもビットコストが安い。また、NANDメモリは、アクセス速度においてMRAMより劣るが、HDDに比較すると非常に速い。これらの関係をまとめると以下の不等式が成り立つ。
ビットコスト:MRAM>NAND>HDD
アクセス速度:MRAM>NAND>HDD
書換え可能回数:HDD≒MRAM>NAND
ここで、アクセス速度は、データ読出し動作ではコマンドの入力からデータの出力完了までの時間で決定され、データ書込み動作ではコマンドの入力からデータの入力完了までの時間で決定されるものとする。
ビットコスト:MRAM>NAND>HDD
アクセス速度:MRAM>NAND>HDD
書換え可能回数:HDD≒MRAM>NAND
ここで、アクセス速度は、データ読出し動作ではコマンドの入力からデータの出力完了までの時間で決定され、データ書込み動作ではコマンドの入力からデータの入力完了までの時間で決定されるものとする。
このような関係を考慮して、本実施形態によるストレージシステム10のマスタコントローラMCNTは、アクセス頻度が高いデータをHDDからNANDメモリへ移動させ、アクセス頻度がさらに高いデータをNANDメモリからMRAMへと移動させる。逆に、マスタコントローラMCNTは、アクセス頻度が低いデータをMRAMからNANDメモリへ移動させ、アクセス頻度がさらに低いデータをNANDメモリからHDDへと移動させる。即ち、図1に示すように、アクセス頻度の高いデータD1は、第3のストレージユニットSU3から第2のストレージユニットSU2へ、第2のストレージユニットSU2から第1のストレージユニットSU1へ移動される。アクセス頻度の低いデータD2は、第1のストレージユニットSU1から第2のストレージユニットSU2へ、第2のストレージユニットSU2から第3のストレージユニットSU3へ移動される。
このようにデータの格納場所を変更するために、マスタコントローラMCNTは、或る論理アドレスLAkへのアクセス頻度に応じて、該論理アドレスLAkに対応するアドレス変換テーブル50内の物理アドレスを第1から第3のストレージユニットSU1〜SU3の間で交換する。
アクセス頻度の判断のために、例えば、マスタコントローラMCNTは、アクセス頻度に関する予め設定された第1の閾値、第1の閾値よりも低い第2の閾値、および、所定期間をレジスタ60内に格納している。尚、アクセス頻度とは、各論理アドレスに対して所定期間内に行なわれるアクセス数である。
論理アドレスLAkのアクセス頻度が第1の閾値を超えた場合、マスタコントローラMCNTは、論理アドレスLAkを第1のストレージユニットSU1のいずれかの物理アドレスPA10、PA11、PA12・・・に対応させる。
論理アドレスLAkのアクセス頻度が第1の閾値以下であり、かつ、第2の閾値よりも高い場合、マスタコントローラMCNTは、論理アドレスLAkを第2のストレージユニットSU1の物理アドレスPA20、PS21、PA22・・・のいずれかに対応させる。
さらに、マスタコントローラMCNTは、論理アドレスLAkのアクセス頻度が第2の閾値以下になった場合、論理アドレスLAkを第3のストレージユニットSU3の物理アドレスPA30、PS31、PA32・・・のいずれかに対応させる。
勿論、論理アドレスLAkに対応する物理アドレスの変更に伴い、論理アドレスLAkのデータは、論理アドレスLAkに元々対応していた物理アドレスから論理アドレスLAkに新しく対応する物理アドレスへ移動させる。
このように、マスタコントローラMCNTは、アクセス頻度に応じて、アドレス変換テーブル50の論理アドレスと物理アドレスとの対応関係を変更する。これにより、ストレージシステム10は、第1から第3のストレージユニットSU1〜SU3のストレージ階層を越えて、データをアクセス頻度に適したストレージユニットへ格納することができる。例えば、ストレージシステム10は、アクセス頻度の高いデータからアクセス頻度の低いデータを、MRAM、NAND、HDDの順番に格納するように形成され得る。その結果、本実施形態によるストレージシステム10は、全体として、データ記憶容量、データ処理能力およびコストパフォーマンスに優れたバランスの良いストレージシステムとなる。
また、ストレージシステム10は、異なる種類のメモリによって形成されているが、マスタコントローラMCNTをインタフェースとして用いることによって、ストレージシステム10の全体が仮想的に1つのストレージとして機能し得る。
アドレス変換テーブル50の変更は、例えば、一定期間ごとにストレージシステム10のバックグラウンドで自動的に実行される。より詳細には、アドレス変換テーブル50の変更は、例えば、ストレージシステム10へのアクセスの少ない夜間等に実行される。アドレス変換テーブル50の変更期間中において、データ書込みまたはデータ読出し動作期間と同様に、マスタコントローラMCNTは、アクセス禁止を示すビジー信号を外部に出力してもよい。
上記実施形態において、マスタコントローラMCNTは、アクセス頻度を判断するために、第1および第2の閾値を用いている。しかし、マスタコントローラMCNTは、アドレス変換テーブル50を更新するために、各論理アドレスLA0〜LAnのアクセス頻度を相対的に比較してもよい。例えば、マスタコントローラMCNTは、第1のストレージユニットSU1の論理アドレスのアクセス頻度と、第2のストレージユニットSU2の論理アドレスのアクセス頻度と比較する。第1のストレージユニットSU1の論理アドレスの中で、アクセス頻度が第2のストレージユニットSU2の論理アドレスのアクセス頻度よりも低いものがある場合、マスタコントローラMCNTは、アクセス頻度の低い第1のストレージユニットSU1の第1の論理アドレスおよびアクセス頻度の高い第2のストレージユニットSU2の第2の論理アドレスに関して、それらの論理アドレスと物理アドレスとの対応関係を交換すればよい。つまり、マスタコントローラMCNTは、アドレス変換テーブル50上において、第1のストレージユニットSU1の第1の論理アドレスに対応する物理アドレスと第2のストレージユニットSU2の第2の論理アドレスに対応する物理アドレスとをアクセス頻度に応じて入れ替えればよい。このような作業を繰り返すことにより、第1のストレージユニットSU1の各論理アドレスのアクセス頻度はいずれも、第2のストレージユニットSU2の各論理アドレスのアクセス頻度よりも高くなる。
マスタコントローラMCNTは、第2のストレージユニットSU2および第3のストレージユニットSU3についても同様の作業を実行する。これにより、第2のストレージユニットSU2の各論理アドレスのアクセス頻度はいずれも、第3のストレージユニットSU3の各論理アドレスのアクセス頻度よりも高くなる。
このように、各論理アドレスLA0〜LAnのアクセス頻度を相対的に比較して、アドレス変換テーブル50の論理アドレスと物理アドレスとの対応関係を変更してもよい。
また、上記実施形態によるストレージシステム10は、第1から第3のストレージユニットSU1〜SU3の3つのストレージ階層を備えている。しかし、ストレージシステム10の階層は、これに限定されない。例えば、ストレージシステム10は、第1および第2のストレージユニットSU1、SU2の2つのストレージ階層で構成されていてもよい。また、ストレージシステム10は、第1および第3のストレージユニットSU1、SU3の2つのストレージ階層で構成されていてもよい。この場合、マスタコントローラMCNTは、論理アドレスへのアクセス頻度に応じて、該論理アドレスに対応するアドレス変換テーブル内の物理アドレスを第1のストレージユニットSU1の物理アドレスと第2のストレージユニットSU2の物理アドレスとの間で変更すればよい。このような形態であっても、第1の実施形態の効果は失われない。
(第2の実施形態)
図4は、第2の実施形態に従ったストレージシステム10の構成を示すブロック図である。第2の実施形態では、ストレージシステム10は、第1のストレージユニットSU1としてMRAMと、第2のストレージユニットSU2としてNANDメモリとを備えている。尚、PBは、メモリセルアレイMCA内の読出しデータや外部からの書込みデータを一時的に格納するページバッファである。I/Oはデータの入出力回路である。
図4は、第2の実施形態に従ったストレージシステム10の構成を示すブロック図である。第2の実施形態では、ストレージシステム10は、第1のストレージユニットSU1としてMRAMと、第2のストレージユニットSU2としてNANDメモリとを備えている。尚、PBは、メモリセルアレイMCA内の読出しデータや外部からの書込みデータを一時的に格納するページバッファである。I/Oはデータの入出力回路である。
ストレージシステム10は、さらに、第1および第2のストレージユニットSU1、SU2に対して共通に設けられた共通のインタフェースコントローラIFCNTを備えている。インタフェースコントローラIFCNTは、データ読出しまたはデータ書込み動作時に第1または第2のストレージユニットSU1、SU2のいずれかを選択的に制御する。
第1および第2のストレージユニットSU1、SU2は、チップイネーブル信号CEを入力するCEピン(第1の入力部)CE1、CE2をそれぞれ個別に備えている。従って、第1および第2のストレージユニットSU1、SU2は、それぞれチップイネーブル信号を個別に受け取ることによって選択的に活性化され得る。しかし、第1および第2のストレージユニットSU1、SU2は、CEピン以外の入出力用ピンを共有しており、CEピン以外の入出力用ピンはインタフェースコントローラIFCNTに共通に接続されている。
例えば、MRAMは、NANDメモリと同様に、I/Oピン(I/O1〜I/O8)、WEピン、REピン、CLEピン、ALEピン、WPピン、RY/BYピン等を備える。I/Oピンは、データ、アドレスまたはコマンドの入出力に用いられるピンである。WEピンは、ライトイネーブル信号WEを入力するピンである。REピンは、リードイネーブル信号REを入力するピンである。CLEピンは、コマンドラッチイネーブル信号を入力するピンである。ALEピンは、アドレスラッチイネーブル信号を入力するピンである。WPピンは、ライトプロテクト信号を入力するピンである。RY/BYピンは、レディ信号またはビジー信号を出力するピンである。これらのピンは、MRAMおよびNANDメモリにおいて共通化されている。これにより、インタフェースコントローラIFCNTも第1および第2のストレージユニットSU1、SU2において共通化され得る。
インタフェースコントローラIFCNTは、第1のストレージユニットSU1を駆動させる場合、CEピンCE1を介してチップイネーブル信号を第1のストレージユニットSU1へ送信する。これにより、インタフェースコントローラIFCNTは、第2のストレージユニットSU2を停止させたまま、第1のストレージユニットSU1を駆動させることができる。この場合、インタフェースコントローラIFCNTは、I/Oピン(I/O1〜I/O8)、WEピン、REピン、CLEピン、ALEピン、WPピン、RY/BYピン等の共通ピンを介して第1のストレージユニットSU1を制御することができる。
一方、インタフェースコントローラIFCNTは、第2のストレージユニットSU2を駆動させる場合、CEピンCE2を介してチップイネーブル信号を第2のストレージユニットSU2へ送信する。これにより、インタフェースコントローラIFCNTは、第1のストレージユニットSU1を停止させたまま、第2のストレージユニットSU2を駆動させることができる。この場合、インタフェースコントローラIFCNTは、I/Oピン(I/O1〜I/O8)、WEピン、REピン、CLEピン、ALEピン、WPピン、RY/BYピン等の共通ピンを介して第2のストレージユニットSU2を制御することができる。
図5は、第2の実施形態によるストレージシステム10の構成を示すブロック図である。第1のストレージユニットSU1および第2のストレージユニットSU2は、内部データバスIDBを共有しており、内部データバスIDBを介してインタフェースコントローラIFCNTへ共通に接続されている。
インタフェースコントローラIFCNTは、シリアルATA(Advanced Technology Attachment)規格に準拠したコントローラに接続される。
第2の実施形態によるストレージシステム10は、MRAMおよびNANDメモリの両方を備えたSSD(Solid State Drive)(ハイブリッドSSD)として機能することができる。
第2の実施形態によるストレージシステム10は、MRAMとNANDメモリとにおいて多くの信号線が共通化できる。このため、ストレージシステム10全体の信号線の本数を減少させることができ、かつ、インタフェースコントローラIFCNTの設計が容易となる。
インタフェースコントローラIFCNTは、アドレス変換テーブル50を格納している。よって、第2の実施形態においても、論理アドレスへのアクセス頻度に応じて、該論理アドレスに対応するアドレス変換テーブル内の物理アドレスを第1のストレージユニットSU1の物理アドレスと第2のストレージユニットSU2の物理アドレスとの間で変更する。これにより、第2の実施形態は、書換え可能回数の多いMRAMにアクセスを集中させることで全体の信頼性を向上させることができる。また、アクセス頻度の少ないデータをNANDメモリに格納することによって、アクセス速度の向上とコスト削減の両立を図ることができる。
さらに、第1のストレージユニットSU1を第2のストレージユニットSU2のバッファ領域として用いてもよい。例えば、NANDメモリは、書換え可能回数に制限がある上、ブロック単位で消去する必要がある。従って、小容量のデータについては、当初、第1のストレージユニットSU1のMRAMに書き込み、第1のストレージユニットSU1にデータが或る程度(例えば、NANDメモリの1ブロックの容量以上)蓄積された後に、第1のストレージユニットSU1から第2のストレージユニットSU2のNANDメモリへデータを転送してもよい。これにより、NANDメモリを効率良く用いることができる。
(変形例)
第1の実施形態において、メインコントローラMCNTおよび第1から第3のストレージユニットSU1〜SU3のサブコントローラSUBCNT1〜SUBCNT3は、それぞれワーキングメモリWMを備えてもよい。また、第2の実施形態において、インタフェースコントローラIFCNTも、ワーキングメモリWMを備えてよい。ワーキングメモリWMは、MRAMで形成されており、コントローラMCNT、SUBCNT1〜SUBCNT3、IFCNTが様々な動作を実行する際のキャッシュメモリとして用いられる。ワーキングメモリWMは、第1のサブコントローラSUBCNT1、第2のサブコントローラSUBCNT2、インタフェースコントローラIFCNT、マスタコントローラMCNTの少なくとも1つに設けられていてもよい。
第1の実施形態において、メインコントローラMCNTおよび第1から第3のストレージユニットSU1〜SU3のサブコントローラSUBCNT1〜SUBCNT3は、それぞれワーキングメモリWMを備えてもよい。また、第2の実施形態において、インタフェースコントローラIFCNTも、ワーキングメモリWMを備えてよい。ワーキングメモリWMは、MRAMで形成されており、コントローラMCNT、SUBCNT1〜SUBCNT3、IFCNTが様々な動作を実行する際のキャッシュメモリとして用いられる。ワーキングメモリWMは、第1のサブコントローラSUBCNT1、第2のサブコントローラSUBCNT2、インタフェースコントローラIFCNT、マスタコントローラMCNTの少なくとも1つに設けられていてもよい。
ワーキングメモリWMは、ストレージ用のメモリと異なり、コストおよび記憶容量よりもアクセス速度の観点で選択する必要がある。従って、ワーキングメモリWMとして、高速アクセス可能なMRAMが適している。ワーキングメモリWMに用いられるMRAMは、上記第1のストレージユニットSU1に用いられるMRAMと構成において相違してもよい。ワーキングメモリWMのMRAMおよび第1のストレージユニットSU1のMRAMの構成については、後述する。
(MRAMの構成)
図6は、第1のストレージユニットSU1に用いられるMRAMの構成を示す斜視図である。第1および第2の実施形態によるMRAMは、半導体基板11と、半導体基板11上に形成されたセルトランジスタCTと、セルトランジスタCT上に形成されたMTJ素子とを備えている。半導体基板11は、例えば、シリコン基板である。
図6は、第1のストレージユニットSU1に用いられるMRAMの構成を示す斜視図である。第1および第2の実施形態によるMRAMは、半導体基板11と、半導体基板11上に形成されたセルトランジスタCTと、セルトランジスタCT上に形成されたMTJ素子とを備えている。半導体基板11は、例えば、シリコン基板である。
セルトランジスタCTは、チャネル長方向が半導体基板11の表面に対して垂直方向である縦型トランジスタである。従って、セルトランジスタCTのソース線SL、チャネル領域CHおよびドレイン領域Dは、半導体基板11の表面に対して垂直方向に積層されている。さらに、ゲート電極Gは、チャネル領域の周囲を取り囲むように形成されている。即ち、セルトランジスタCTは、いわゆる、SGT(Surrounding Gate Transistor)を用いて形成されている。
MTJ素子は、セルトランジスタCTに対応して設けられており、セルトランジスタCT上に半導体基板11の表面に対して垂直方向に積層されている。MTJは、半導体基板11の表面上方から見たときにセルトランジスタCTに重複するように設けられている。
半導体基板11上に設けられたソース線SLは、ビット線BLと同様にカラム方向に延伸している。ソース線SLは、セルトランジスタCTのソースに接続され、あるいは、そのソースとして機能する。ワード線WLは、カラム方向に対して直交するロウ方向に延伸している。ワード線WLは、セルトランジスタCTのゲート電極CGに接続され、あるいは、ゲート電極CGとして機能する。ビット線BLは、MTJ素子の上端に接続されており、カラム方向に延伸している。ビット線BLは、例えば、タングステンを用いて形成されている。セルトランジスタCTおよびMTJ素子の各ペアは、ビット線BLとソース線SLとの間に直列に接続されている。
図7は、第1および第2の実施形態のストレージシステム10に用いられるMRAMの構成を示す断面図である。
セルトランジスタCTは、半導体基板11の表面上に形成されたソース線SLと、ソース線SL上に設けられたチャネル領域CHと、チャネル領域CHの周囲に形成されたゲート絶縁膜15と、ゲート絶縁膜15上にチャネル領域を取り囲むように形成されたゲート電極CGと、チャネル領域CH上に設けられたドレイン領域Dを備える。チャネル領域CHは、例えば、柱状のp型シリコンを用いて形成されている。ソース線SLおよびドレイン領域Dは、例えば、n型シリコンを用いて形成されている。ゲート電極CGは、例えば、ポリシリコンを用いて形成されている。これにより、セルトランジスタCTは、n型SGTとして形成される。
本実施形態では、ソース線SLがMTJ素子のカラムごとに互いに分離されているため、ソース線SLの寄生容量を低減させることができる。これにより、MRAMの動作を高速化することができる。
MTJ素子は、ドレイン領域Dに上に設けられている。MTJ素子の下端は、ドレイン領域Dに電気的に接続されている。MTJ素子は、記録層Fと、固定層Pと、トンネル絶縁膜Bとを備える。記録層Fおよび固定層Pの材料は、例えば、Co、Fe、Ni、Pt、Fe、Pd、B、Ta、Dy、Tv、Cr等を含む磁性体材料である。トンネル絶縁膜Bの材料は、例えば、酸化マグネシウム、酸化アルミニウム等の非磁性絶縁膜を用いて形成されている。トンネル絶縁膜Bは記録層Fと固定層Pとの間の電流の流れを妨げないように非常に薄く形成されている。
STT(Spin Transfer Torque)型MTJ素子は、スピン偏極トンネル効果による磁気抵抗の変化によりデジタルデータを記憶する。例えば、固定層Pは、磁化の向きが固定されている層であり、記録層Fは、磁化の向きが可変であり、その磁化の向きによってデータを記憶する。MTJ素子は、2枚の強磁性層F、Pの磁化配列によって、低抵抗状態と高抵抗状態とを取り得る。例えば、低抵抗状態をデータ“0”と定義し、高抵抗状態をデータ“1”と定義すれば、MTJ素子に1ビットデータを記録することができる。もちろん、低抵抗状態をデータ“1”と定義し、高抵抗状態をデータ“0”と定義してもよい。
図6および図7のMTJ素子内に示す矢印は、各強磁性体の磁化方向を示す。即ち、本実施形態によるMTJ素子の固定層Pおよび記録層Fの磁化方向は、半導体基板11の表面に対して垂直方向である。このような垂直MTJ素子は、面内型MTJ素子に比べて高密度に配置することができる。
書込み時に矢印A1の向きに反転閾値電極以上の電流を流すと、Pin層Pの磁化の向きに対してFree層Fのそれがパラレル状態(P状態)となり、低抵抗状態(データ“0”)となる。書込み時に矢印A2の向きに反転閾値電極以上の電流を流すと、Pin層PとFree層Fとのそれぞれの磁化の向きがアンチパラレル状態(AP状態)となり、高抵抗状態(データ“1”)となる。このように、TMJ素子は、電流の方向によって異なるデータを書き込むことができる。尚、Pin層PとFree層Fとの位置関係は逆であってもよい。
本実施形態によるMRAMは、半導体基板11の表面に対して垂直方向に積層されたSGTおよび垂直MTJ素子を備える。従って、レイアウト面積が小さく、高密度なMRAMを実現することができる。例えば、図6および図7に示すMRAMの単一セルユニットのレイアウト面積は、4F2である。F(Feature Size)は、半導体製造プロセスにおいて形成可能な最小線幅を示す。
図8は、HDD、NANDおよびMRAMの性能とビットコストを比較したグラフである。図8において、NAND(SLC(Single Level Cell))は、1セルに1ビットデータを記憶するNANDメモリである。NAND(MLC(Multi Level Cell))は、1セルに複数のビットデータを記憶するNANDメモリである。
図8に示すように、セルトランジスタCTとしてSGTを備えたMRAM(以下、SGT−MRAM)は、セルトランジスタCTとして平面型トランジスタを備えたMRAM(以下、NORMAL−MRAM)に比べてアクセス速度(性能)において劣る。しかし、SGT−MRAMは、NORMAL−MRAMに比べてレイアウト面積において小さい。このため、SGT−MRAMは、NORMAL−MRAMに比べてビットコストが安い。一方、SGT−MRAMは、NANDメモリと比べると、ビットコストは高いが、アクセス速度(性能)が速い。
SGT−MRAMは、NANDメモリとNORMAL−MRAMとの中間の性能およびビットコストを有する。よって、SGT−MRAMは、或る程度高性能なストレージシステムを或る程度低コストで構築するために適していると言える。
つまり、SGT−MRAMは、高価でも非常に高速なアクセス速度が求められるワーキングメモリよりも、或る程度安価でありかつ或る程度のアクセス速度が求められるストレージとして用いるのに適している。一方、NORMAL−MRAMは、ビットコストが高くても高速アクセスが求められるワーキングメモリWMとして用いるのに適していると言える。
本実施形態によるストレージシステム10は、SGT−MRAMを第3のストレージユニットSU3として用い、かつ、NORMAL−MRAMをワーキングメモリWMとして用いているので、記憶容量、アクセス速度およびコストに関してバランスを改善させることができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
10・・・ストレージシステム、20・・・MRAM、30・・・NAND、40・・・HDD、50・・・アドレス変換テーブル、60・・・レジスタ、SU1・・・第1のストレージユニット、SU2・・・第2のストレージユニット、SU3・・・第3のストレージユニット、SUBCNT1・・・第1のサブコントローラ、SUBCNT2・・・第2のサブコントローラ、SUBCNT3・・・第3のサブコントローラ、MCNT・・・メインコントローラ、IFCNT・・・インタフェースコントローラ、BL・・・ビット線、SL・・・ソース線、WL・・・ワード線、CH・・・チャネル領域、D・・・ドレイン、MTJ・・・MTJ素子
Claims (10)
- 磁気抵抗型ランダムアクセスメモリを含む第1のストレージユニットと、
NAND型フラッシュメモリを含む第2のストレージユニットと、
入出力データの論理アドレスと前記第1および第2のストレージユニットの物理アドレスとの対応関係を示すアドレス変換テーブルを保持し、前記論理アドレスへのアクセス頻度に応じて、該論理アドレスに対応する前記アドレス変換テーブル内の物理アドレスを前記第1のストレージユニットの物理アドレスと前記第2のストレージユニットの物理アドレスとの間で変更するマスタコントローラとを備え、
前記マスタコントローラは、前記第1および前記第2のストレージユニットに対して共通に設けられており、データ読出しまたはデータ書込み動作時に前記第1または前記第2のストレージユニットのいずれかを選択的に制御し、
前記第1のストレージユニット内の前記磁気抵抗型ランダムアクセスメモリは、
半導体基板の表面上に形成され、チャネル長方向が該半導体基板の表面に対して垂直方向である縦型トランジスタと、
前記縦型トランジスタ上に前記垂直方向に積層され、前記半導体基板の表面上方から見たときに前記縦型トランジスタと重複するように設けられた磁気トンネル接合素子と、を含む複数のメモリセルを備えていることを特徴とするストレージシステム。 - 磁気抵抗型ランダムアクセスメモリを含む第1のストレージユニットと、
NAND型フラッシュメモリを含む第2のストレージユニットと、
入出力データの論理アドレスと前記第1および第2のストレージユニットの物理アドレスとの対応関係を示すアドレス変換テーブルを保持し、前記論理アドレスへのアクセス頻度に応じて、該論理アドレスに対応する前記アドレス変換テーブル内の物理アドレスを前記第1のストレージユニットの物理アドレスと前記第2のストレージユニットの物理アドレスとの間で変更するマスタコントローラとを備えたストレージシステム。 - ハードディスクドライブを含む第3のストレージユニットをさらに備え、
前記アドレス変換テーブルは、入力データの論理アドレスと前記第3のストレージユニットの物理アドレスとの対応関係をも示し、
前記マスタコントローラは、前記論理アドレスへのアクセス頻度に応じて、該論理アドレスに対応する前記アドレス変換テーブル内の物理アドレスを前記第1から前記第3のストレージユニットの物理アドレスの間で変更することを特徴とする請求項2に記載のストレージシステム。 - 前記第1および前記第2のストレージユニットに対して共通に設けられており、データ読出しまたはデータ書込み動作時に前記第1または前記第2のストレージユニットのいずれかを選択的に制御する共通コントローラをさらに備えたことを特徴とする請求項2または請求項3に記載のストレージシステム。
- 前記第1および前記第2のストレージユニットは、前記第1および前記第2のストレージユニットを起動させるチップイネーブル信号を入力する第1の入力部以外の入出力部において前記共通コントローラに共通に接続されることを特徴とする請求項4に記載のストレージシステム。
- 前記マスタコントローラは、アクセス頻度が第1の閾値よりも高い論理アドレスを前記第1のストレージユニットのいずれかの物理アドレスに対応させ、アクセス頻度が前記第1の閾値以下の論理アドレスを前記第2のストレージユニットの物理アドレスのいずれかに対応させることを特徴とする請求項2から請求項5のいずれかに記載のストレージシステム。
- 前記マスタコントローラは、前記第1のストレージユニットに対応する論理アドレスのアクセス頻度と前記第2のストレージユニットに対応する論理アドレスのアクセス頻度とを比較し、前記第1のストレージユニットに対応する第1の論理アドレスのアクセス頻度が前記第2のストレージユニットに対応する第2の論理アドレスのアクセス頻度よりも低い場合に、前記アドレス変換テーブルにおける前記第1の論理アドレスに対応する物理アドレスと前記第2の論理アドレスに対応する物理アドレスとを入れ替えることを特徴とする請求項2から請求項5のいずれかに記載のストレージシステム。
- 前記第1のサブコントローラ、前記第2のサブコントローラ、前記共通コントローラ、前記マスタコントローラの少なくとも1つは、磁気抵抗型ランダムアクセスメモリで形成されたワーキングメモリを備えていることを特徴とする請求項4または請求項5に記載のストレージシステム。
- 前記第1のストレージユニット内の前記磁気抵抗型ランダムアクセスメモリは、
半導体基板の表面上に形成され、チャネル長方向が該半導体基板の表面に対して垂直方向である縦型トランジスタと、
前記縦型トランジスタ上に前記垂直方向に積層され、前記半導体基板の表面上方から見たときに前記縦型トランジスタと重複するように設けられた磁気トンネル接合素子と、を含む複数のメモリセルを備えていることを特徴とする請求項2から請求項8のいずれかに記載のストレージシステム。 - 磁気抵抗型ランダムアクセスメモリを含む第1のストレージユニットと、NAND型フラッシュメモリを含む第2のストレージユニットと、入力データの論理アドレスと前記第1および第2のストレージユニットの物理アドレスとの対応関係を示すアドレス変換テーブルを保持し、前記論理アドレスと前記物理アドレスとの対応関係を変更することができるマスタコントローラとを備えたストレージシステムの駆動方法であって、
前記論理アドレスへのアクセス頻度に応じて、該論理アドレスに対応する前記アドレス変換テーブル内の物理アドレスを前記第1のストレージユニットの物理アドレスと前記第2のストレージユニットの物理アドレスとの間で変更することを具備したストレージシステムの駆動方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012047016A JP2013182505A (ja) | 2012-03-02 | 2012-03-02 | ストレージシステムおよびその駆動方法 |
US13/780,791 US9064590B2 (en) | 2012-03-02 | 2013-02-28 | Driving method of semiconductor storage device and semiconductor storage device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012047016A JP2013182505A (ja) | 2012-03-02 | 2012-03-02 | ストレージシステムおよびその駆動方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013182505A true JP2013182505A (ja) | 2013-09-12 |
Family
ID=49273095
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012047016A Pending JP2013182505A (ja) | 2012-03-02 | 2012-03-02 | ストレージシステムおよびその駆動方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013182505A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016170764A (ja) * | 2015-03-11 | 2016-09-23 | 株式会社東芝 | ストレージシステム |
JP6113374B1 (ja) * | 2016-01-14 | 2017-04-12 | 三菱電機株式会社 | プログラマブルロジックコントローラ |
US9905611B2 (en) | 2015-09-11 | 2018-02-27 | Toshiba Memory Corporation | Variable resistance memory |
US9905284B2 (en) | 2016-03-09 | 2018-02-27 | Toshiba Memory Corporation | Data reading procedure based on voltage values of power supplied to memory cells |
US10553276B2 (en) | 2017-08-29 | 2020-02-04 | Toshiba Memory Corporation | Semiconductor memory device |
-
2012
- 2012-03-02 JP JP2012047016A patent/JP2013182505A/ja active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016170764A (ja) * | 2015-03-11 | 2016-09-23 | 株式会社東芝 | ストレージシステム |
JP2018198087A (ja) * | 2015-03-11 | 2018-12-13 | 東芝メモリ株式会社 | 制御方法 |
US9905611B2 (en) | 2015-09-11 | 2018-02-27 | Toshiba Memory Corporation | Variable resistance memory |
JP6113374B1 (ja) * | 2016-01-14 | 2017-04-12 | 三菱電機株式会社 | プログラマブルロジックコントローラ |
WO2017122332A1 (ja) * | 2016-01-14 | 2017-07-20 | 三菱電機株式会社 | プログラマブルロジックコントローラ |
US9905284B2 (en) | 2016-03-09 | 2018-02-27 | Toshiba Memory Corporation | Data reading procedure based on voltage values of power supplied to memory cells |
US10553276B2 (en) | 2017-08-29 | 2020-02-04 | Toshiba Memory Corporation | Semiconductor memory device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9064590B2 (en) | Driving method of semiconductor storage device and semiconductor storage device | |
US9256530B2 (en) | Nonvolatile memory device and sub-block managing method thereof | |
US9678832B2 (en) | Storage module and method for on-chip copy gather | |
US20140040535A1 (en) | Nonvolatile memory device having wear-leveling control and method of operating the same | |
JP6694482B2 (ja) | 制御方法 | |
CN103403805B (zh) | 半导体存储装置及其控制方法 | |
CN103325417A (zh) | 非易失性存储器件、非易失性存储系统、及其编程方法 | |
CN108630254B (zh) | 提供降低的数据线负载的非易失性存储设备 | |
US10389380B2 (en) | Efficient data path architecture for flash devices configured to perform multi-pass programming | |
US10553285B2 (en) | Single-port memory with opportunistic writes | |
JP6829172B2 (ja) | 半導体記憶装置 | |
JP2013182505A (ja) | ストレージシステムおよびその駆動方法 | |
KR20150019306A (ko) | 열 내성 강화 고정 층을 갖는 반도체 소자 | |
KR102214272B1 (ko) | 메모리 셀의 분산된 서브-블록의 액세스를 포함하는 장치 및 방법 | |
JP6082112B2 (ja) | モノリシックマルチチャネル適合可能stt−mram | |
JP2004200641A (ja) | Nand型磁気抵抗ラム | |
US11392466B2 (en) | Storage system | |
US20170076759A1 (en) | Memory device | |
US11853178B2 (en) | Storage system | |
US20220406364A1 (en) | Hetero-Plane Data Storage Structures For Non-Volatile Memory | |
KR102126436B1 (ko) | 저장 장치 및 그것의 래치 관리 방법 |