JP2011128826A5 - 記憶装置、システムlsi及びデータ処理方法 - Google Patents
記憶装置、システムlsi及びデータ処理方法 Download PDFInfo
- Publication number
- JP2011128826A5 JP2011128826A5 JP2009285909A JP2009285909A JP2011128826A5 JP 2011128826 A5 JP2011128826 A5 JP 2011128826A5 JP 2009285909 A JP2009285909 A JP 2009285909A JP 2009285909 A JP2009285909 A JP 2009285909A JP 2011128826 A5 JP2011128826 A5 JP 2011128826A5
- Authority
- JP
- Japan
- Prior art keywords
- unit
- data
- memory
- host
- semiconductor
- 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
Description
図9において、ホスト側ではSSDに対する論理アドレス空間(HLBA)は、1セクタ(512B)を最小単位として全容量分をリニアに(順次)並べて先頭アドレス0から最終アドレスmaxまで複数の区分(区画0〜区画n)に分割管理するよう設定される。これに対応してSSD側では、不揮発性メモリの全領域のうちシステム領域を除いて、複数の区分(区画0〜区画n)に分割管理する。1つの区画は、例えば区画0に例示されているように不揮発性メモリの消去単位群に対応して、LPBA0〜LPBAYで構成される。
この1つの区画は、それぞれ複数の消去単位群で構成され、この複数の消去単位群はホストからのデータ書き込み用領域として割り当てられる消去単位群(図において「割当分」と表示。)と未使用分として設けられた消去単位群(図において「未使用」と表示。)とで構成される。各消去単位はデータ書き込みが行われたときは未書き込みページがあっても一括して消去される単位記憶領域として扱われる。未使用分は、フリー部分と代替(不良救済)として設けられている。上記割当分と未使用分の境界は、固定ではなく矢印で示したフリー検索(未使用(フリー)の消去単位(LPBA)を検索すること。)で既存割当LPBAがフリーLPBAに、新しく割当られたフリーLPBAが割当分に動的に交換される。1つの消去単位(LPBA)は、複数のNANDフラッシュメモリチップから構成され、ページ0(PAGE0)から最終ページ(max)までをデータ領域(論理アドレス割当分)とランダムキャッシュ領域(アドレス重複分)に区分されている。これらの区分の境界は固定で扱われる。
ホスト論理アドレス空間において特定のアドレスを割り当てることで区分される区画0〜nは、不揮発性メモリ上の物理アドレス空間において特定のアドレスを割り当てることで区分される区画0〜nに一対一に対応しており、ホスト論理アドレス空間の特定の区画に書き換えデータが集中すると、前記のようにライトアクセス時間が遅くなる問題に加え、さらに、対応する区画を構成する特定の不揮発性メモリが比較的短い期間内で書き換え回数の制限に達してしまうという問題が生じる。
図1には、この発明に係る記憶装置SSD(Solid State Drive)の一実施例のブロック図が示されている。この実施例の記憶装置は、HDD互換記憶装置として、特に制限されないが、半導体不揮発性メモリ(NANDフラッシュメモリ)FL0〜FL9と、半導体揮発性メモリSDRAM及び太い点線で示されたコントローラ部としてのシステムLSI、インターフェイスチップS−ATA(Serial Advanced Technology Attachment) を1つのパッケージの中に搭載して、約32Gバイトのような記憶容量を持つような記憶装置SSDとされる。S−ATA(Serial Advanced Technology Attachment) は、パソコンにハードディスクや光ドライブを接続するためのインターフェイス規格である。
同図で点線で示したホストHOSTと、半導体不揮発性メモリFL0〜FL9との間のデータのやりとりは、上記インターフェイスチップS−ATA及び制御論理回路としてのシステムLSIを介して行われる。システムLSIは、上記インターフェイスS−ATAに対応して設けられたシリアル/パラレル変換等を行う入出力回路P−ATAと、コントローラATACを介して入出力回路P−ATAに接続される点線で示された信号経路切替回路RCを含む。信号経路切替回路RCは、ECC回路との間での信号伝達を行うセレクタS1、上記入出力回路P−ATAとの間で信号伝達を行うセレクタS2、ライトバッファWB0,WB1との間で信号伝達を行うセレクタS4、半導体不揮発性メモリFL0〜FL9に設けられたフラッシュ入出力部FICとの間で信号伝達を行うセレクタS5及び半導体揮発性メモリSDRAMに対応してメモリ制御回路SDRAMCとの間で信号伝達を行うセレクタS3を有しており、以下に説明するメモリ動作に対応して各回路ブロック間での信号伝達を行う。
図2には、この発明に係る記憶装置SSDの記憶方法を説明するための一実施例のメモリマップ図が示されている。ホスト側論理アドレスHLBAは、0からmaxまでのアドレス空間を有し、各論理アドレスにより1セクタ(512B)のデータを指定する。これに対して、前記図1で説明したように記憶装置SSDを構成する半導体不揮発性メモリFL0〜FL9のそれぞれにおける1回の書き込みによる最大書き込みデータ数は8kBである。これらのことを前提とし、ホスト側から半導体不揮発性メモリFL0〜FL9に対してランダムライトアクセスを効率よく高速に行うようにするため、SSD側においてはホスト側論理アドレスの10個(10セクタ)分に対応したデータ512B×10(=5kB(キロバイト))を最小管理単位に設定する。つまり、SSD側では、ホスト側における論理アドレス0、10、20、30、40……(10進法表記)のように10個毎の論理アドレス(即ち10個ずつのセクタ)に対応するデータをSSD側での最小管理単位として扱う。
SSD側では、上記1つの最小管理単位を構成する10個のセクタのそれぞれの論理アドレスは、(10進法表記において)順に並ぶ論理アドレス0〜9、10〜19、20〜29、・・・・のように、各セクタにおいて論理アドレス最下位桁0〜9の順序を保持したままとして扱う。前記のように半導体不揮発性メモリFL0〜FL9のように10チャネル分の入出力部を持つために、1回の書き込みで80kBのデータの書き込みが可能である。そこで、ライトバッファWB0,WB1は、前記のようにそれぞれ80kBの記憶容量を持つようにされる。したがって、ライトバッファWB0,WB1は、それぞれが5kBを最小管理単位として16個分を記憶することができる。
同図に例示されているような5kBのライトデータWD1,WD2,WD3が論理アドレス順とは無関係にランダムに入力されると、最初のライトデータWD1はライトバッファWB0の先頭に格納され、第2番目のライトデータWD2は上記ライトデータWD1の次に格納され、第3番目のライトデータWD3は上記ライトデータWD2の次に格納される。このように、16個分のライトデータWD1〜WD16(図示せず)が論理アドレスの順序とは無関係にされてライトバッファWB0に入力順に従って書き込まれ、16個目に引き続き17個目以上のライトデータが入力されると、ライトバッファWB1に前記同様に格納される。
ライトバッファWB1へのライトデータの入力と並行して、ライトバッファWB0に格納された80kBのデータは、1ページ(PAGE)分データとして不揮発性メモリFL0〜FL9に書き込まれる。この書き込みの準備動作として、ライトバッファWB0からは前記のように32ビット(4B)の単位で順次にデータが出力されるので、フラッシュ入出力部FICでセクタ毎にデータの分配が行われる。例えば、フラッシュインターフェイスライトデータWD1の10進法での最下位桁0に対応した論理アドレスのセクタがチャンネル0に対応した不揮発性メモリFL0に、同様な最下位桁1に対応した論理アドレスのセクタがチャンネル1に対応した不揮発性メモリFL1に、以下同様に最下位桁9に対応した論理アドレスのセクタがチャンネル9に対応した不揮発性メモリFL9にそれぞれ入力される。ライトデータWD2,WD3においても、前記ライトデータWD1と同様にして不揮発性メモリFL0〜9に入力される。なお、チャンネル0〜9は図1に図示される10本の信号線D11にそれぞれ対応する。
この実施例では、不揮発性メモリの物理アドレスBidxは、0〜maxまでのアドレス空間を有し、各物理アドレスにより1ページ(PAGE)分のデータを指定する。通常メモリアドレスは、2進のアドレス信号により指定される。したがって、SSDの最小管理単位も4セクタや8セクタのように2進の重みに対応して設定することが考えられる。例えば、不揮発メモリ側で8チャンネルの不揮発性メモリFL0〜7を用いて1ページ(PAGE)書き込み可能に構成すると、上述したように各チャンネルの不揮発メモリはそれぞれ最大8kBのデータ書き込みが可能に構成されているので、1ページあたり64kB(128セクタ)のデータ書き込みを可能にすることもできる。即ち、ホスト側の論理アドレスで指定される8セクタ(4kB)を最小管理単位とするデータ書き込みが前記バッファメモリ(WB0又はWB1)に順次行われ、前記バッファメモリに格納される16個の最小管理単位のデータを不揮発メモリ側の1ページ分として書き込み可能となる。この場合には、ホスト論理アドレス空間に対して物理アドレス空間は、前記最小管理単位により1/8(3ビット分)に縮小され、16個の最小管理単位により1ページが構成されるので更に1/16(4ビット分)に縮小されることになる。この結果、ホスト論理アドレス空間と不揮発性メモリの物理アドレス空間とを縮小された形態で一致させることができるので、前記図9の場合に比べ不揮発性メモリの物理アドレス空間の効率的使用が可能となり、アドレス空間縮小で節約される記憶領域をランダムライトアクセスのためのフリー部分や代替(不良救済)を設けるための拡張ビットとして使用することが可能となる。
上述したように、前記バッファメモリに格納される16個の最小管理単位のデータを不揮発メモリ側の1ページ分として書き込む構成としたことによって、10チャネルの不揮発性メモリFL0〜9で構成される1ページ当たりのセクタ数を最大10×16=160個のように増加させることができる。例えば上述実施例のように、8チャネルの不揮発性メモリFL0〜7で1ページを構成する場合、1ページあたりのセクタ数は8×16=128セクタと設定することができるので、ホスト側の論理アドレスで指定される前記8セクタ(4kB)を最小管理単位とするデータの16個分が不揮発メモリの物理アドレス空間の1ページ内に格納することが可能となる。このように不揮発メモリの物理アドレス空間が増加するので、ホスト論理アドレス空間に格納される全データを記憶することができる記憶領域の他に余分の記憶領域を設けることができる。この記憶領域は、前記ランダムライトアクセスのためのフリー部分や代替分(不良救済)とシステム検索領域(図3に図示される管理テーブルを格納する領域)として使用される。すなわち、この実施例の物理アドレス空間は、ページ0(PAGE0)から最終ページ(max)までがシステム検索領域、初期割当領域、初期未使用領域及び代替分が割り当てられる。初期割当領域は、前記データ領域(論理アドレス割当分)であり、ホスト論理アドレス空間の全データが格納可能な記憶容量を持つ。そして、前記のような最小管理単位により生成した記憶領域が、上記初期未使用領域及び代替分に振り分けられる。
ホスト側からはライトデータの任意の先頭論理アドレスとセクタ数Nが入力される。したがって、ライトバッァWB0等には、最小管理単位の持つ前記0〜9のアドレスのうち、上記先頭の論理アドレスに対応した0〜9のうちいずれか1つを指定して上記セクタ数に対応して9まで順次に書き込まれる。セクタ数Nが当該最小管理単位を超えるときには、次の最小管理単位に残りのセクタが0から順に入力される。この結果、ライトバッァWB0等においては、前記のようなランダムライトアクセスによって最小管理単位に無効データ(無効セクタ)が含まれるものが発生する。このため、フラッシュメモリへの1ページ分の書き込みの際に、当該最小管理単位の以前の記憶情報(10セクタ分)をフラッシュメモリから読み出し、上記ランダムライトアクセスによって入力された更新データを除いた無効データ部分に対応したセクタデータがコピーされる。このような置き換えによって、ライトバッァWB0等には最小管理単位毎に常に最新データ(更新データ)が格納され、前記のような現書込先とされるフラッシュメモリに書き込まれる。このような書き込み動作に対応して上記フラッシュメモリにおける以前のコピー元の最小管理単位は無効にされる。
図3には、この発明に係る記憶装置SSDにおけるアドレス変換テーブルの一実施例である管理テーブルの説明図が示されている。この実施例の管理テーブルは、次のように5種類から構成される。PAPATは、ページアドレス物理アドレステーブルであり、ホスト論理アドレス(HLBA)に対応するアドレス変換テーブルの格納先を示す。PAPATは、ホスト論理アドレス640kB分(5kB×128)の物理格納先を4Bで示す。このPAPATは、不揮発性メモリ(フラッシュメモリに)に格納せず、起動時にPATとBSTから揮発性メモリSDRAMに構築し、動作中は揮発性メモリSDRAMにて最新情報を常時管理する。
PATは、ページアドレステーブルであり、ホスト側に構成される論理アドレスに対応する不揮発メモリ上の物理アドレスが格納されている。このPATは、不揮発性メモリ(フラッシュメモリに)格納され、必要に応じて揮発性メモリSDRAMにリードされる。
図3において、変換対象のホスト論理アドレスHLBAxは、最小管理単位(5kB)×128のホストページアドレスHPAxに変換される。揮発性メモリに全展開されているPAPATのHPAxで指定されたアドレスには、BSTインデックスが格納されており、これを参照するとPATの物理格納先情報(ページ情報とBSTインデックス)を取得することができる。揮発性メモリに全展開されているPAPATのBSTインデックス(BSTのアドレス)により指定されたアドレス参照データから、PAT格納先の不揮発性メモリのブロック状態(物理ブロック情報)が取得できる。前記PATの物理格納先情報から不揮発性メモリのPAT(512B)をPAT(バッファ)にリードし、PAT内の128個のテーブルより、HPAxに対応するユーザデータ格納先の不揮発性メモリの物理ブロックアドレスを取得できる。物理ブロックアドレスより、BSTインデックスを計算し、BSTを参照してユーザデータ格納先の不揮発性メモリのブロック状態の情報(物理ブロック情報)を取得する。揮発性メモリに全展開されているPAPATのBSTインデックスを参照すると、データ格納先の不揮発性メモリの物理アドレス及びブロック状態の情報(物理ブロック情報)を取得でき、不揮発性メモリのユーザデータに至る。このようなアドレス変換により、ホスト側から目的の1つのユーザデータをリードできる。
Claims (18)
- ホストに接続して使用される記憶装置であって、
前記記憶装置は、コントローラ部と、前記ホストとの間でハーディスク互換仕様でデータ伝達を行う入出力インターフェイスと、ブロック単位で一括消去される構成の半導体不揮発性メモリの複数個で構成された半導体不揮発性メモリ部と、前記半導体不揮発性メモリの複数個と前記コントローラ部との間を接続する前記半導体不揮発性メモリの前記複数個に対応する数のチャンネルで構成されるチャンネル部と、を有し、前記半導体不揮発性メモリ部は前記チャンネルの複数を介して転送されるデータがページ書き込みされるように接続されており、
前記コントローラ部は、
前記入出力インターフェイスを介して前記ホストとの間で行われるデータ伝達を制御する第1入出力制御部と、前記半導体不揮発性メモリの複数個に対する前記チャンネルを介してデータ伝達を制御する第2入出力制御部と、バッファメモリ部と、前記第1入出力制御部、前記バッファメモリ部及び前記第2入出力制御部のそれぞれに接続されデータ伝達を制御する信号経路切替回路と、を有し、
前記ホストから論理アドレスの順序とは無関係に入力されるセクタ単位のデータを前記バッファメモリ部に順次格納する処理と、
前記バッファメモリ部に格納されたデータを前記セクタ単位の複数個を管理単位として前記信号経路切替回路を介して前記第2入出力部にデータ転送する処理と、
前記管理単位のデータを前記ページ書き込みに設定された数のチャンネルを介して前記半導体不揮発性メモリ部にページ単位でデータを書き込む処理とを実行制御するように構成されてなる記憶装置。 - 請求項1において、
前記バッファメモリ部は、複数のバッファメモリで構成され、それぞれのメモリ容量が前記管理単位のメモリ容量を有するように構成されており、
前記コントローラ部は、
前記ホストから入力されるセクタ単位で入力されるデータをバッファメモリのそれぞれに順次格納する処理と、
格納データ量が前記管理単位に達したバッファメモリから当該データを読み出し前記信号経路切替回路を介して前記第2入出力部にデータ転送する処理とをさらに実行することで前記管理単位のデータを1ページとして前記半導体不揮発性メモリ部にページ書き込みされるように構成されてなる記憶装置。 - 請求項1または2において、
前記チャンネル部は10個のチャンネルで構成され、前記フラッシュメモリ部における前記管理単位が前記ホスト側セクタの16個に相当するメモリ容量となるように設定されており、前記半導体不揮発性メモリ部は1ページあたり最大で前記ホスト側セクタ数160個に相当するデータを格納可能に構成されてなる記憶装置。 - 請求項3において
前記バッファメモリ部に格納される前記管理単位のデータを1ページとして、前記複数個より少ない数のチャンネルに接続される不揮発性メモリに転送し、前記少ない数のチャンネルに接続された前記半導体不揮発メモリに前記ホストの論理アドレス空間の全てに対応するデータが格納可能に構成され、残りのチャンネルに接続される不揮発性メモリにその他のデータが格納されるように構成されてなる記憶装置。 - 請求項4において
前記チャンネル部が10個のチャンネルで構成される場合、前記少ない数のチャンネルは8個のチャンネルであり、前記8個のチャンネルに接続された前記半導体不揮発性メモリに前記ホストの論理アドレス空間の全てに対応するデータが格納可能に構成され、残りの2チャンネルに接続される不揮発性メモリにその他のデータが格納されるように構成されてなる記憶装置。 - ホストに接続して使用される記憶装置であって、
前記記憶装置は、コントローラ部と、前記ホストとの間でハーディスク互換仕様でデータ伝達を行う入出力インターフェイスと、ブロック単位で一括消去される構成の半導体不揮発性メモリの複数個でに構成された半導体不揮発性メモリ部と、前記半導体不揮発性メモリの複数個と前記コントローラ部との間を接続する前記半導体不揮発性メモリの複数個に対応する数のチャンネルで構成されるチャンネル部と、半導体揮発性メモリと、を有し、前記半導体不揮発性メモリ部は前記チャンネルの複数を介して転送されるデータがページ書き込みされるように接続されており、
前記半導体不揮発性メモリ部は、システム検索領域と、ホスト側からの全ライト状態に対応した割当領域と、未使用領域とを有し、前記システム検索領域、割当領域及び未使用領域の各領域は、それぞれ複数の消去単位を有し、
前記コントローラ部は、
前記入出力インターフェイスを介して前記ホストとの間で行われるデータ伝達を制御する第1入出力制御部と、前記半導体不揮発性メモリの複数個に対する前記チャンネルを介してのデータ伝達を制御する第2入出力制御部と、バッファメモリと、前記第1入出力制御部、前記バッファメモリ及び前記第2入出力制御部に接続されデータ伝達を制御する信号経路切替回路と、を有し、起動時に、ホスト側論理アドレスと前記半導体不揮発性メモリ側の物理アドレスとの変換情報を生成して前記半導体揮発性メモリに記憶させる第1動作と、
前記ホストから論理アドレスの順序とは無関係に入力されるセクタ単位の書き込みデータを前記バッファメモリに順次格納する第2動作と、
前記バッファメモリに格納されたデータを前記セクタ単位の複数個を管理単位として前記信号経路切替回路を介して前記第2入出力制御部にデータ転送し、前記半導体不揮発性メモリにおける予め割当られた第1の消去単位の未書き込み領域に順次に書き込む第3動作と、
前記第1動作乃至第3動作の繰り返しにより、前記第1の消去単位の未書込領域がなくなると、未書き込みの消去単位が2以上無いことを条件として前記半導体不揮発性メモリの前記割当領域及び未使用領域の中から検索された最も有効データの少ない第2の消去単位におけるかかる有効データを予め準備されている消去済又は未使用の第3の消去単位に書き込んで前記変換情報を更新し、かかる第3の消去単位を前記第1の消去単位に置き換える第4動作と、
前記第2の消去単位を一括消去して消去済とされた前記第3の消去単位を準備するとともに、かかる第2の消去単位の消去動作と並行して前記割当領域及び未使用領域を検索して新しい前記第2の消去単位の用意する第5動作の実行制御を行うように構成されてなる記憶装置。 - 請求項6において、
前記半導体不揮発性メモリは、NAND型フラッシュメモリであり、
前記コントローラ部は、CPUを含むシステムLSIであり、
前記コントローラ部のバッファメモリは、第1バッファメモリと第2バッファメモリとで構成され、かかる第1バッファメモリと第2バッファメモリは、前記第2動作と第3動作において、一方のバッファメモリを用いて前記第2動作が行われるとき他方のバッファメモリを用いて前記第3動作が同時並行して行われることが可能とされ、
前記第4動作において、一方のバッファメモリを用いて前記第2の消去単位における有効データを予め準備されている第3の消去単位に書き込むとき、他方のバッファメモリを用いて前記第2の消去単位における次の有効データの読み込みを行う、
記憶装置。 - 請求項6及び7のいずれかにおいて、
前記半導体不揮発性メモリ部が10個の前記半導体不揮発性メモリで構成され、前記複数個を管理単位とするデータを前記半導体不揮発性メモリ部に転送する前記チャンネル部が10個のチャンネルで構成され、前記チャンネルのそれぞれに対応して配置された前記半導体不揮発メモリのそれぞれは複数のフラッシュメモリ半導体チップで構成される、
記憶装置。 - 請求項6乃至8のいずれかにおいて、
前記複数個より少ない数のチャンネルに接続される前記半導体不揮発性メモリを用いて1ページ書き込み可能に設定し、前記少ない数のチャンネルに接続された前記半導体不揮発メモリに前記ホストの論理アドレス空間の全てに対応するデータが格納可能に構成することで前記ホスト論理アドレス空間と不揮発性メモリの物理アドレス空間とを縮小した形態で一致させ、残りのチャンネルに接続された前記半導体不揮発性メモリを拡張記憶領域として使用する構成の記憶装置。 - 請求項6において、
ホスト側の論理アドレスに対応した記憶データが格納された前記半導体不揮発性メモリの物理アドレスを記憶するアドレス変換情報は、
ホスト側論理アドレスに対応するアドレス変換テーブルの格納先を示す第1情報と、
ホスト側論理アドレスの物理アドレスを示す第2情報と、
前記半導体不揮発性メモリの消去単位を管理する第3情報とを含む、
記憶装置。 - 請求項6ないし10のいずれかにおいて、
前記記憶装置は、電源検出回路と、電圧保持回路とを更に有し、
前記コントローラ部は、
前記ホストにおける電源遮断時において、前記電源検出回路で検出される電源遮断検出信号により、前記コントローラ部、半導体揮発性メモリ及び半導体不揮発性メモリに対する動作電圧を前記電圧保持回路の保持電圧に切り替え、前記バッファメモリと前記半導体揮発性メモリの退避対象データを読み出して前記半導体不揮発性メモリに書き込み、
ホストにおける電源投入時において、前記電源検出回路で検出される電源投入検出信号により、ホストからの電源電圧を前記電圧保持回路の入力電圧、前記コントローラ部、半導体揮発性メモリ及び半導体不揮発性メモリの動作電圧として供給し、前記半導体不揮発性メモリに保持された退避対象データを読み出して前記バッファメモリと半導体揮発性メモリに書き込みを行う、
記憶装置。 - ホストに接続して使用される記憶装置に組み込んで使用されるコントローラ部を構成するシステムLSIであって、
前記記憶装置は、ブロック単位で一括消去される構成の半導体不揮発性メモリの複数個で構成された半導体不揮発性メモリ部と、前記ホストとの間でハーディスク互換仕様でデータ伝達を行う入出力インターフェイスと、前記コントローラ部と、前記半導体不揮発性メモリの複数個と前記コントローラ部との間を接続する前記半導体不揮発性メモリの前記複数個に対応する数のチャンネルで構成されるチャンネル部と、を含んで構成されるものであり、
前記コントローラ部を構成するシステムLSIは、
前記入出力インターフェイスを介して前記ホストとの間で行われるデータ伝達を制御する第1入出力制御部と、
前記半導体不揮発性メモリの複数個に対する前記チャンネルを介してのデータ伝達を制御する第2入出力制御部と、
バッファメモリ部と、
前記第1入出力制御部、前記バッファメモリ部及び前記第2入出力制御部のそれぞれに接続されデータ伝達を制御する信号経路切替回路と、
前記第1入出力制御部、前記バッファメモリ、前記第2入出力制御部及び信号経路切替回路の動作を制御するCPUとを含み、
前記コントローラ部は、
前記ホストから論理アドレスの順序とは無関係に入力されるセクタ単位のデータを前記バッファメモリ部に順次格納する処理と、
前記バッファメモリ部に格納されたデータを前記セクタ単位の複数個を管理単位として前記信号経路切替回路を介して前記第2入出力部にデータ転送する処理と、
前記管理単位のデータを前記ページ書き込みに設定された数のチャンネルを介して前記半導体不揮発性メモリ部にページ単位でデータを書き込む処理とを実行制御するように構成されてなるシステムLSI。 - 請求項12において、
前記バッファメモリ部は、複数のバッファメモリで構成され、それぞれのメモリ容量が前記管理単位のメモリ容量を有するように構成されており、
前記コントローラ部は、
前記ホストから入力されるセクタ単位で入力されるデータをバッファメモリのそれぞれに順次格納する処理と、
格納データ量が前記管理単位に達したバッファメモリから当該データを読み出し前記信号経路切替回路を介して前記第2入出力部にデータ転送する処理とをさらに実行するように構成されてなるシステムLSI。 - 請求項13において、
前記チャンネルは10個のチャンネルで構成され、前記フラッシュメモリにおける前記管理単位が前記ホスト側セクタの16個に対応するメモリ容量となるように構成され、前記16個のセクタに対応するデータが前記管理単位として前記チャンネル部を介して前記半導体不揮発性メモリ部にページ書き込みされる構成とすることで、前記半導体不揮発性メモリ部は1ページあたり最大で前記ホスト側セクタ数160個に相当するデータを格納可能とする構成のシステムLSI。 - 請求項12乃至14のいずれかにおいて、
前記バッファメモリに格納される前記管理単位のデータを1ページとして前記複数個より少ない数のチャンネルに接続される不揮発性メモリに転送する構成とすることで、前記少ない数のチャンネルに接続された前記半導体不揮発メモリに前記ホストの論理アドレス空間の全てに対応するデータが格納可能とし、残りのチャンネルに接続される不揮発性メモリにその他のデータを格納する拡張記憶領域として使用可能とする構成のシステムLSI。 - 半導体不揮発性メモリを用いた記憶装置に組み込まれたコントローラ部で実行されるデータ処理方法であって、
前記記憶装置は、前記コントローラ部と、ホストとの間でハーディスク互換仕様でデータ伝達を行う入出力インターフェイスと、ブロック単位で一括消去される構成の半導体不揮発性メモリの複数個で構成された半導体不揮発性メモリ部と、ダイナミックメモリと、前記半導体不揮発性メモリの複数個と前記コントローラ部との間を接続する前記半導体不揮発性メモリの複数個に対応する数のチャンネルで構成されるチャンネル部と、を含み、前記半導体不揮発性メモリ部は前記チャンネルの複数を介して転送されるデータがページ書き込みされるように接続されており、前記半導体不揮発性メモリの記憶領域は、システム検索領域と、ホスト側からの全ライト状態に対応した割当領域と、未使用領域とに分けられ、前記システム検索領域、割当領域及び未使用領域の各領域は、それぞれ複数の消去単位が設けられているものであり、
前記コントローラ部は、前記入出力インターフェイスを介して前記ホストとの間で行われるデータ伝達を制御する第1入出力制御部と、前記半導体不揮発性メモリの複数個に対する前記チャンネルを介してのデータ伝達を制御する第2入出力制御部と、バッファメモリと、前記第1入出力制御部、前記バッファメモリ及び前記第2入出力制御部に接続されデータ伝達を制御する信号経路切替回路と、を有し、
前記コントローラ部によって実行される処理は、
起動時に、ホスト側論理アドレスと前記半導体不揮発性メモリ側の物理アドレスとのアドレスの変換情報を生成して前記ダイナミックメモリに記憶する第1制御動作と、
前記ホストから論理アドレスの順序とは無関係に入力されるセクタ単位のデータを前記バッファメモリに順次格納する第2制御動作と、
前記バッファメモリに格納されたデータを前記セクタ単位の複数個を管理単位として前記信号経路切替回路を介して前記第2入出力制御部にデータ転送し、前記半導体不揮発性メモリにおける前記書き込み予定の第1の消去単位の未書き込み領域に順次に書き込む第3制御動作と、
前記第1制御動作乃至第3制御動作の繰り返しにより、前記第1の消去単位の未書込領域がなくなると、未書き込みの消去単位が2以上無いことを条件として前記半導体不揮発性メモリの前記割当領域及び未使用領域の中から検索された最も有効データの少ない第2の消去単位におけるかかる有効データを予め準備されている消去済又は未使用の第3の消去単位に書き込んで前記変換情報を更新し、かかる第3の消去単位を前記第1の消去単位に置き換える第4制御動作と、
前記第2の消去単位を一括消去して消去済とされた前記第3の消去単位を準備するとともに、かかる第2の消去単位の消去動作と並行して前記割当領域及び未使用領域を検索して新しい前記第2の消去単位を用意する第5制御動作とを含むデータ処理方法。 - 請求項16において、
前記半導体不揮発性メモリ部が10個の前記半導体不揮発性メモリで構成され、前記複数個を管理単位とするデータを前記半導体不揮発性メモリ部に転送する前記チャンネル部が10個のチャンネルで構成され、前記チャンネルのそれぞれに対応して配置された前記半導体不揮発メモリのそれぞれは複数のフラッシュメモリ半導体チップで構成されるデータ処理方法。 - 請求項16または17のいずれかにおいて、
前記複数個より少ない数のチャンネルに接続される前記半導体不揮発性メモリを用いて1ページ書き込み可能に設定し、前記少ない数のチャンネルに接続された前記半導体不揮発メモリに前記ホストの論理アドレス空間の全てに対応するデータが格納可能に構成することで前記ホスト論理アドレス空間と不揮発性メモリの物理アドレス空間とを縮小した形態で一致させ、残りのチャンネルに接続された前記半導体不揮発性メモリを拡張記憶領域として使用するデータ処理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009285909A JP2011128826A (ja) | 2009-12-17 | 2009-12-17 | 記憶装置と半導体不揮発性メモリの記憶方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009285909A JP2011128826A (ja) | 2009-12-17 | 2009-12-17 | 記憶装置と半導体不揮発性メモリの記憶方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011128826A JP2011128826A (ja) | 2011-06-30 |
JP2011128826A5 true JP2011128826A5 (ja) | 2013-01-24 |
Family
ID=44291365
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009285909A Pending JP2011128826A (ja) | 2009-12-17 | 2009-12-17 | 記憶装置と半導体不揮発性メモリの記憶方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011128826A (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10261897B2 (en) | 2017-01-20 | 2019-04-16 | Samsung Electronics Co., Ltd. | Tail latency aware foreground garbage collection algorithm |
KR20200016075A (ko) * | 2018-08-06 | 2020-02-14 | 에스케이하이닉스 주식회사 | 메모리 시스템에서의 유효 데이터 탐색 방법 및 장치 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09218754A (ja) * | 1996-02-13 | 1997-08-19 | Ekushingu:Kk | データ記憶システム |
JP4711531B2 (ja) * | 2001-03-23 | 2011-06-29 | ルネサスエレクトロニクス株式会社 | 半導体記憶装置 |
JP2006252535A (ja) * | 2005-02-09 | 2006-09-21 | Hitachi Ulsi Systems Co Ltd | 記憶装置 |
JP5162846B2 (ja) * | 2005-07-29 | 2013-03-13 | ソニー株式会社 | 記憶装置、コンピュータシステム、および記憶システム |
WO2007105688A1 (ja) * | 2006-03-16 | 2007-09-20 | Matsushita Electric Industrial Co., Ltd. | メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム |
US7711923B2 (en) * | 2006-06-23 | 2010-05-04 | Microsoft Corporation | Persistent flash memory mapping table |
-
2009
- 2009-12-17 JP JP2009285909A patent/JP2011128826A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7366795B2 (ja) | メモリシステムおよび制御方法 | |
US11301373B2 (en) | Reconstruction of address mapping in a host of a storage system | |
CN109240938B (zh) | 存储系统以及控制非易失性存储器的控制方法 | |
JP5728672B2 (ja) | ハイブリッドメモリ管理 | |
US10802733B2 (en) | Methods and apparatus for configuring storage tiers within SSDs | |
KR101300657B1 (ko) | 비휘발성 메모리 및 버퍼 메모리를 포함하는 메모리 시스템및 그것의 데이터 읽기 방법 | |
US8055873B2 (en) | Data writing method for flash memory, and controller and system using the same | |
KR100946286B1 (ko) | 플래시 파일 시스템에서 가상-물리 주소 변환 방법 및 시스템 | |
JP7353934B2 (ja) | メモリシステムおよび制御方法 | |
US20150032949A1 (en) | Semiconductor Device and Method of Controlling Non-Volatile Memory Device | |
JP2013242908A (ja) | ソリッドステートメモリ、それを含むコンピュータシステム及びその動作方法 | |
US20150052329A1 (en) | Memory control device, host computer, information processing system and method of controlling memory control device | |
JP7234144B2 (ja) | Nandバッファを有するnandフラッシュストレージデバイス | |
US11334272B2 (en) | Memory system and operating method thereof | |
KR20100094241A (ko) | 예비 블록을 포함하지 않는 불휘발성 메모리 장치 | |
JP2018101411A (ja) | データストレージデバイスおよびその操作方法 | |
US11422930B2 (en) | Controller, memory system and data processing system | |
US20170262177A1 (en) | Storage device having dual access procedures | |
JP2011070365A (ja) | メモリシステム | |
US20240231663A1 (en) | Storage device and method of operating the same | |
JP2023044135A (ja) | メモリシステムおよび制御方法 | |
JP2019148913A (ja) | メモリシステム | |
JP2023012773A (ja) | メモリシステムおよび制御方法 | |
JPWO2007105688A1 (ja) | メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム | |
JP2010108385A (ja) | 記憶装置 |