(57)【要約】【課題】安価なＮＡＮＤ型フラッシュメモリを使用しつつも、読み出し命令に対するレイテンシをＮＯＲ型フラッシュメモリと同程度に抑制することが可能なメモリシステムを得る。【解決手段】メモリモジュール１のＰＯＲ時に、ページＰ１〜Ｐｎの第１部分Ｐ１ａ〜ＰｎａがＮＡＮＤ型フラッシュメモリ３から読み出され、エラー訂正部７によって所定のエラー訂正処理が行われた後、バッファメモリ６に書き込まれる。コントローラ２がホストシステム８からページの読み出し命令を受けると、制御部４は、ＮＡＮＤ型フラッシュメモリ３の比較的大きいレイテンシに起因してＮＡＮＤ型フラッシュメモリ３が待機状態となっている間に、バッファメモリ６からページＰ１〜Ｐｎの第１部分Ｐ１ａ〜Ｐｎａを読み出して、ホストシステム８へデータ転送する。【選択図】図１
2008052622.tif 000002
【特許請求の範囲】
【請求項１】
第1の記憶部と、
読み出し命令に対するレイテンシが前記第１の記憶部のそれよりも小さい、第２の記憶部と、
前記第１及び第２の記憶部を制御する制御部と
を備え、
前記制御部は、前記第1の記憶部に記憶されているデータ列のうち、前記第１の記憶部の前記レイテンシに対応する第１部分を、前記第２の記憶部に予めコピーし、前記データ列を読み出す際には、前記第１の記憶部から前記データ列のうちの残余部分である第２部分の読み出しを開始するとともに、前記第２の記憶部から前記第１部分を読み出す、メモリシステム。
【請求項２】
前記第１の記憶部から読み出して前記第２の記憶部に書き込むべき前記第１部分に対するエラー訂正処理と、前記第１の記憶部から読み出した前記第２部分に対するエラー訂正処理とを行うためのエラー訂正部をさらに備える、請求項１に記載のメモリシステム。
【請求項３】
前記第１の記憶部は、ＮＡＮＤ型のフラッシュメモリである、請求項１又は２に記載のメモリシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリシステムに関し、特に、フラッシュメモリを用いたメモリシステムに関する。
【背景技術】
【０００２】
フラッシュメモリのタイプにはＮＯＲ型とＮＡＮＤ型とがあり、利用の目的や態様に応じて適切なタイプのフラッシュメモリが選択されて使用されている。
【０００３】
なお、ＮＡＮＤ型フラッシュメモリを用いたメモリシステムに関連する技術が、例えば下記特許文献１，２に開示されている。
【０００４】
【特許文献１】特許第３７４７２１３号公報
【特許文献２】特表２００４−５２７０４０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ＮＯＲ型フラッシュメモリはＮＡＮＤ型フラッシュメモリよりも高価である。従って、高価なＮＯＲ型フラッシュメモリを安価なＮＡＮＤ型フラッシュメモリに置き換えることは、コスト削減の観点からは望ましい。しかし、ＮＡＮＤ型フラッシュメモリはＮＯＲ型フラッシュメモリよりも読み出し命令に対するレイテンシが大きいため、単にＮＯＲ型フラッシュメモリをＮＡＮＤ型フラッシュメモリに置き換えたのでは、レイテンシが大きくなってユーザが違和感を感じる等の不都合がある。
【０００６】
本発明はかかる事情に鑑みて成されたものであり、安価なＮＡＮＤ型フラッシュメモリを使用しつつも、読み出し命令に対するレイテンシをＮＯＲ型フラッシュメモリと同程度に抑制することが可能なメモリシステムを得ることを目的とする。
【課題を解決するための手段】
【０００７】
第１の発明に係るメモリシステムは、第1の記憶部と、読み出し命令に対するレイテンシが前記第１の記憶部のそれよりも小さい、第２の記憶部と、前記第１及び第２の記憶部を制御する制御部とを備え、前記制御部は、前記第1の記憶部に記憶されているデータ列のうち、前記第１の記憶部の前記レイテンシに対応する第１部分を、前記第２の記憶部に予めコピーし、前記データ列を読み出す際には、前記第１の記憶部から前記データ列のうちの残余部分である第２部分の読み出しを開始するとともに、前記第２の記憶部から前記第１部分を読み出すことを特徴とする。
【０００８】
第２の発明に係るメモリシステムは、第１の発明に係るメモリシステムにおいて特に、前記第１の記憶部から読み出して前記第２の記憶部に書き込むべき前記第１部分に対するエラー訂正処理と、前記第１の記憶部から読み出した前記第２部分に対するエラー訂正処理とを行うためのエラー訂正部をさらに備えることを特徴とする。
【０００９】
第３の発明に係るメモリシステムは、第１又は第２の発明に係るメモリシステムにおいて特に、前記第１の記憶部は、ＮＡＮＤ型のフラッシュメモリであることを特徴とする。
【発明の効果】
【００１０】
第１の発明に係るメモリシステムによれば、第１の記憶部のレイテンシに起因して第１の記憶部が待機状態となっている間に、第２の記憶部からデータ列の第１部分を読み出すことができるため、第１の記憶部のみを有するメモリシステムと比較すると、システム全体のレイテンシを抑制することができる。従って、第１の記憶部としてのＮＯＲ型フラッシュメモリをＮＡＮＤ型フラッシュメモリに置き換えた場合であっても、ユーザの違和感を解消することができる。
【００１１】
第２の発明に係るメモリシステムによれば、第１の記憶部としてのＮＯＲ型フラッシュメモリをＮＡＮＤ型フラッシュメモリに置き換えた場合であっても、エラー訂正部によってデータ列に対するエラー訂正処理を行うことができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。なお、異なる図面において同一の符号を付した要素は、同一又は相応する要素を示すものとする。
【００１３】
図１は、本発明の実施の形態に係るメモリモジュール１の構成を示すブロック図である。図１に示すように、本実施の形態に係るメモリモジュール１は、コントローラ２とＮＡＮＤ型フラッシュメモリ３とを備えている。コントローラ２は、ＣＰＵ等の制御部４と、インタフェース部５と、ＳＲＡＭ又はＳＤＲＡＭ等のバッファメモリ６と、エラー訂正部７とを有している。ＮＡＮＤ型フラッシュメモリ３、インタフェース部５、バッファメモリ６、及びエラー訂正部７の各動作は、いずれも制御部４によって制御される。読み出し命令に対するレイテンシは、ＮＡＮＤ型フラッシュメモリ３よりもバッファメモリ６のほうが小さい。
【００１４】
コントローラ２には、メモリモジュール１に対してデータを読み書きするホストシステム８が接続される。ホストシステム８とメモリモジュール１との間のデータの授受は、コントローラ２のインタフェース部５によって実行される。
【００１５】
図２は、図１に示したＮＡＮＤ型フラッシュメモリ３及びバッファメモリ６のアドレス空間を示す図である。ＮＡＮＤ型フラッシュメモリ３は、例えば２ＫＢｙｔｅのページ単位で、複数のデータ列を記憶する。図２では、ページＰ１〜Ｐｎのｎ個（ｎは自然数で、例えば１２８Ｋである）のデータ列がＮＡＮＤ型フラッシュメモリ３に記憶されている。本実施の形態の例では、ＮＡＮＤ型フラッシュメモリ３の記憶容量は２ＧＢｉｔである。
【００１６】
図１に示したコントローラ２は、各ページＰ１〜Ｐｎの先頭アドレスにランダムにアクセス可能であり、また、各ページＰ１〜Ｐｎ内では先頭アドレスから順にシーケンシャルにアクセス可能である。つまり、ページ間ではランダムアクセスが可能であり、ページ内ではシーケンシャルアクセスが可能である。
【００１７】
各ページＰ１〜Ｐｎは、便宜上、先頭アドレスを含む第１部分Ｐ１ａ〜Ｐｎａと、残余の第２部分Ｐ１ｂ〜Ｐｎｂとに分割されている。第１部分Ｐ１ａ〜Ｐｎａの各データ容量は、読み出し命令に対するＮＡＮＤ型フラッシュメモリ３のレイテンシの大きさに対応して定められる。例えば、ＮＡＮＤ型フラッシュメモリ３のレイテンシが２５μｓｅｃであり、１６Ｂｉｔバス幅かつ１００ｎｓｅｃサイクルでアクセスされる条件では、第１部分Ｐ１ａ〜Ｐｎａの各データ容量は５１２Ｂｙｔｅに設定される。
【００１８】
バッファメモリ６には、ＮＡＮＤ型フラッシュメモリ３に記憶されているページＰ１〜Ｐｎの第１部分Ｐ１ａ〜Ｐｎａが、コピーして記憶されている。具体的には、メモリモジュール１のＰＯＲ（Power On Reset）時に、ページＰ１〜Ｐｎの第１部分Ｐ１ａ〜ＰｎａがＮＡＮＤ型フラッシュメモリ３から読み出され、図１に示したエラー訂正部７によってチェックサム等を用いた所定のエラー訂正処理が行われた後、バッファメモリ６に書き込まれる。本実施の形態の例では、バッファメモリ６の記憶容量は５１２ＭＢｉｔであり、ＮＡＮＤ型フラッシュメモリ３の記憶容量の概ね１／４である。
【００１９】
図３は、メモリモジュール１からのデータ列の読み出し動作を示すタイミングチャートである。図３では、一例として、メモリモジュール１からページＰ３を読み出す例を示している。上記の通り、ページＰ３はＮＡＮＤ型フラッシュメモリ３に記憶されており、また、ページＰ３の第１部分Ｐ３ａは、ＰＯＲ時にＮＡＮＤ型フラッシュメモリ３から読み出されてバッファメモリ６に書き込まれている。
【００２０】
図１，３を参照して、コントローラ２がホストシステム８からページＰ３の読み出し命令を受けると、コントローラ２の制御部４は、時刻ｔ１において、バッファメモリ６から第１部分Ｐ３ａの読み出しを開始する。バッファメモリ６のレイテンシは非常に小さいので、バッファメモリ６からホストシステム８への第１部分Ｐ３ａのデータ転送は直ちに開始される。また、制御部４は、時刻ｔ１において、ＮＡＮＤ型フラッシュメモリ３に対して第２部分Ｐ３ｂの読み出し動作の開始を命令する。ＮＡＮＤ型フラッシュメモリ３のレイテンシは比較的大きいため、ＮＡＮＤ型フラッシュメモリ３からの第２部分Ｐ３ｂのデータ出力は、この時点では開始されない。
【００２１】
時刻ｔ２において、バッファメモリ６からの第１部分Ｐ３ａの読み出しが完了する。また、時刻ｔ２において、ＮＡＮＤ型フラッシュメモリ３からの第２部分Ｐ３ｂのデータ出力が開始される。但し、第１部分Ｐ３ａの読み出しの完了タイミングと、第２部分Ｐ３ｂのデータ出力の開始タイミングとは、必ずしも厳密に一致する必要はない。ＮＡＮＤ型フラッシュメモリ３から読み出された第２部分Ｐ３ｂは、エラー訂正部７によってチェックサム等を用いた所定のエラー訂正処理が行われた後、ホストシステム８へデータ転送される。
【００２２】
時刻ｔ３において、ＮＡＮＤ型フラッシュメモリ３からの第２部分Ｐ３ｂの読み出しが完了し、メモリモジュール１からホストシステム８へのページＰ３のデータ転送が完了する。
【００２３】
このように本実施の形態に係るメモリモジュール１によれば、ＮＡＮＤ型フラッシュメモリ３の比較的大きいレイテンシに起因してＮＡＮＤ型フラッシュメモリ３が待機状態となっている間に、バッファメモリ６からページＰ１〜Ｐｎの第１部分Ｐ１ａ〜Ｐｎａが読み出されて、ホストシステム８へデータ転送される。そのため、バッファメモリ６を有さずにＮＡＮＤ型フラッシュメモリ３のみを有するメモリモジュールと比較すると、メモリモジュール全体のレイテンシを抑制することができる。従って、既存のＮＯＲ型フラッシュメモリを安価なＮＡＮＤ型フラッシュメモリ３に置き換えた場合であっても、レイテンシに関するユーザの違和感を解消することができる。
【００２４】
なお、以上の説明では、記憶容量が５１２ＭＢｉｔのバッファメモリ６を用意することにより、ＮＡＮＤ型フラッシュメモリ３のレイテンシを完全に隠蔽する場合の例について説明したが、この例よりも記憶容量の少ないバッファメモリ６を使用することもできる。この場合は、ＮＡＮＤ型フラッシュメモリ３のレイテンシを完全には隠蔽できないため、ＮＡＮＤ型フラッシュメモリ３が待機状態である期間は、メモリモジュール１からホストシステム８へＲｅａｄｙ信号又はＢｕｓｙ信号を出力することにより、ＮＡＮＤ型フラッシュメモリ３が待機状態である旨をホストシステム８に報知する。
【図面の簡単な説明】
【００２５】
【図１】本発明の実施の形態に係るメモリモジュールの構成を示すブロック図である。
【図２】図１に示したＮＡＮＤ型フラッシュメモリ及びバッファメモリのアドレス空間を示す図である。
【図３】メモリモジュールからのデータ列の読み出し動作を示すタイミングチャートである。
【符号の説明】
【００２６】
１  メモリモジュール
２  コントローラ
３  ＮＡＮＤ型フラッシュメモリ
４  制御部
６  バッファメモリ
７  エラー訂正部
【図１】
2008052622.tif 000003
【図２】
2008052622.tif 000004
【図３】
2008052622.tif 000005