(57)【要約】【課題】ＯｎｅＮＡＮＤフラッシュメモリの性能を最適化させるメモリコントローラ及びそれを含んだデータ処理システムを提供する。【解決手段】ここに提供されるデータ処理システムは、ページデータを一時貯蔵するためのバッファメモリを有するＯｎｅＮＡＮＤフラッシュメモリと、前記ＯｎｅＮＡＮＤフラッシュメモリの読み出し動作を制御し、スピードアップバッファを有する第１メモリコントローラとを含み、前記バッファメモリに貯蔵されたページデータは所定の単位で前記スピードアップバッファを通じて外部に順次に出力される。【選択図】図３
2007087388.tif 000002
【特許請求の範囲】
【請求項１】
内部不揮発性メモリと、前記内部不揮発性メモリからページデータが伝達されて一時貯蔵する内部バッファメモリとを有するＯｎｅＮＡＮＤフラッシュメモリと、
スピードアップバッファを有し、前記ＯｎｅＮＡＮＤフラッシュメモリの読み出し動作を制御する第１メモリコントローラとを含み、
前記第１メモリコントローラは、前記ＯｎｅＮＡＮＤ内部バッファメモリに貯蔵された前記ページデータは前記スピードアップバッファを通じて前記ＯｎｅＮＡＮＤフラッシュメモリから外部装置に所定のデータ単位で順次に続いて出力されるように、前記制御をするものであることを特徴とするデータ処理システム。
【請求項２】
前記データ処理システムは、
ワーキングメモリと、
前記ワーキングメモリを制御する第２メモリコントローラと、
バッファを有するＤＭＡコントローラとをさらに含み、
前記スピードアップバッファから出力されたデータは、前記ＤＭＡコントローラのバッファに一時貯蔵されることを特徴とする請求項１に記載のデータ処理システム。
【請求項３】
前記ＤＭＡコントローラバッファに貯蔵された前記データは、前記第２メモリコントローラを通じて前記ワーキングメモリに貯蔵されることを特徴とする請求項２に記載のデータ処理システム。
【請求項４】
前記スピードアップバッファから前記ＤＭＡコントローラへのデータ伝送と前記ＤＭＡコントローラから前記ワーキングメモリへのデータ伝送は、前記ＯｎｅＮＡＮＤ内部バッファメモリから前記スピトアップバッファへのデータ伝送の時に実行されることを特徴とする請求項３に記載のデータ処理システム。
【請求項５】
前記スピードアップバッファと前記ＤＭＡコントローラバッファは、先入れ先出し（ＦＩＦＯ）メモリを含むことを特徴とする請求項４に記載のデータ処理システム。
【請求項６】
前記データ処理システムは、
中央処理装置（ＣＰＵ）をさらに含み、
前記第１メモリコントローラは、前記中央処理装置から提供される命令とアドレスを貯蔵するレジスタセットをさらに有することを特徴とする請求項１に記載のデータ処理システム。
【請求項７】
前記第１メモリコントローラは前記レジスタセットに貯蔵された情報によって前記ＯｎｅＮＡＮＤフラッシュメモリを制御し、前記貯蔵された情報は前記スピードアップバッファを通じて第１ページデータを伝達する間に次のページデータに対する読み出し動作が実行されるようにすることを特徴とする請求項６に記載のデータ処理システム。
【請求項８】
第１メモリコントローラは、前記外部装置と通信するＡＨＢをさらに含むことを特徴とする請求項１に記載のデータ処理システム。
【請求項９】
第１メモリコントローラは、バッファを有するＤＭＡコントローラをさらに含み、
前記スピードアップバッファから出力されたデータは、前記ＤＭＡコントローラに一時貯蔵されることを特徴とする請求項６に記載のデータトリシステム。
【請求項１０】
前記ＤＭＡコントローラバッファに貯蔵された前記データは、前記第２メモリコントローラを通じてワーキングメモリに提供されることを特徴とする請求項９に記載のデータ処理システム。
【請求項１１】
内部不揮発性メモリと、前記内部不揮発性メモリから伝達されたページデータを一時貯蔵する内部バッファメモリとを有するＯｎｅＮＡＮＤフラッシュメモリと、
前記ＯｎｅＮＡＮＤフラッシュメモリの読み出し動作を制御する制御手段とを含み、
前記制御手段は、前記ＯｎｅＮＡＮＤフラッシュメモリバッファに貯蔵された前記ページデータは前記スピトアップバッファを通じて前記ＯｎｅＮＡＮＤフラッシュメモリから外部装置に所定のデータ単位で順次に続いて出力されるように、前記制御をするものであることを特徴とするデータ処理システム。
【請求項１２】
前記データ処理システムは、バッファを有するＤＭＡコントローラをさらに含み、
前記スピードアップバッファから出力されたデータは、前記ＤＭＡコントローラバッファに一時的に貯蔵されることを特徴とする請求項１に記載のデータ処理システム。
【請求項１３】
前記スピードアップバッファと前記ＤＭＡコントローラバッファのうちの少なくとも一つは先入れ先出し（ＦＩＦＯ）メモリを含むことを特徴とする請求項４に記載のデータ処理システム。
【請求項１４】
ＯｎｅＮＡＮＤフラッシュメモリからＲＡＭ装置にデータを読み出す方法において、前記ＯｎｅＮＡＮＤフラッシュメモリは内部不揮発性メモリと内部バッファメモリとを有し、前記内部バッファメモリは前記内部不揮発性メモリから伝達されたデータのページを一時貯蔵するデータ読み出し方法において、
前記バッファメモリに貯蔵された前記ページデータは前記ＯｎｅＮＡＮＤフラッシュメモリから前記ＲＡＭ装置に所定のデータ単位で順次に出力されるように前記ＯｎｅＮＡＮＤフラッシュメモ動作を制御する段階を含み、
ここで前記全体ページデータは所定のデータごとに平均時間周期で出力され、前記平均周期は前記ＯｎｅＮＡＮＤフラッシュから所定のデータを読み出し動作する時間と前記ＲＡＭ装置に所定のデータを書き込み動作する時間を合した時間より小さいことを特徴とするデータ読み出し方法。
【請求項１５】
前記バッファメモリに貯蔵された前記ページデータは、前記ＯｎｅＮＡＮＤフラッシュメモリから前記ＲＡＭ装置に前記複数のデータユニットから続いて出力されることを特徴とする請求項１４に記載のデータ読み出し方法。
【請求項１６】
ＤＭＡコントローラのバッファに所定のデータを一時貯蔵することを特徴とする請求項１４に記載のデータ読み出し方法。
【請求項１７】
先入れ先出し（ＦＩＦＯ）メモリに所定のデータを一時貯蔵することを特徴とする請求項１４に記載のデータ読み出し方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はメモリシステムに係り、より具体的には、メモリコントローラ及びそれを含んだデータ処理システムに関する。
【背景技術】
【０００２】
市場の要求に応じて半導体装置の大きさは漸次的に小くなっている。これとともに、多様な機能を有する機能ブロックが単一のチップ上に集積するシステムオンチップの実現が市場の主な流れになっている。システムオンチップの一例はフュージョンメモリである。フュージョンメモリは基本メモリ機能に他の特性のメモリや非メモリチップなどの多様なメモリとロジックを共に入れて複合化させたメモリ製品である。システム仕様に適するソフトウェアまで同時に提供する一種のシステムメモリとして、デジタル家電製品が複合化、高性能化することに従って単純メモリ半導体だけでは不足であるため、フラッシュメモリやＳＲＡＭ及びロジックを一つのチップに集積した次世代メモリである。フュージョンメモリの一例はＯｎｅＮＡＮＤフラッシュメモリである。ＯｎｅＮＡＮＤフラッシュメモリの一例が非特許文献１に開示されている。
【０００３】
図１はＯｎｅＮＡＮＤフラッシュメモリを含んだ一般的なデータ処理システムを概略的に示すブロック図である。図１を参照すれば、一般的なデータ処理システムは、例えば、モバイルフォンであり、中央処理装置（ＣＰＵ）１０、ＤＭＡ２０、第１及び第２メモリコントローラ３０、４０、ワーキングメモリとして用いられるＤＲＡＭ５０、及びＯｎｅＮＡＮＤフラッシュメモリ６０を含む。ＤＲＡＭ５０及びＯｎｅＮＡＮＤフラッシュメモリ６０は第１メモリコントローラ３０及び第２メモリコントローラ４０によってそれぞれ制御される。
【０００４】
ＣＰＵ１０によって要求されるデータがワーキングメモリとしてＤＲＡＭ５０に存在しない場合、ＣＰＵ１０はメモリコントローラ４０に命令及びアドレスを伝達する。メモリコントローラ４０は入力された命令及びアドレスを決められたインターフェース方式に従ってＯｎｅＮＡＮＤフラッシュメモリ６０に書き込む。以後、ＯｎｅＮＡＮＤフラッシュメモリ６０は命令及びアドレスが入力される時、読み出し／書き込み動作を自動的に実行する。ＯｎｅＮＡＮＤフラッシュメモリ６０のメモリコア６１から読み出されたページデータはＯｎｅＮＡＮＤフラッシュメモリ６０の内部に存在するバッファメモリ６２に一時貯蔵される。バッファメモリ６２に貯蔵されたページデータは一定の単位でワーキングメモリとしてＤＲＡＭ５０に伝送される。要求される量のデータがＤＲＡＭ５０に伝送されれば、ＣＰＵ１０はＤＲＡＭ５０から要求されるデータを持って行く。より具体的に説明すれば、次のとおりである。
【０００５】
ＣＰＵ１０の要請に応じてＯｎｅＮＡＮＤフラッシュメモリ６０の読み出し動作が開始されれば、メモリコア６１からバッファメモリ６２へ１ページのデータ（またはページデータと呼ばれる）が伝送される。例えば、ページデータはｎＫ−ワードデータ（ｎは１またはそれより大きい定数、Ｋ＝１０２４）である。その次に、ページデータはメモリコントローラ４０の制御下に一定の単位（例えば、１６−ワード単位）でＤＭＡ２０のバッファメモリ２１に伝送される。以下、このような読み出し動作をホスト読み出し動作と称し、図２に示したように、ホスト読み出し動作は約３００ｎｓの時間Ｔ１を要する。ＤＭＡ２０のバッファメモリ２１に伝送された１６−ワードデータはワーキングメモリとしてＤＲＡＭ５０に書き込まれる。以下、このような書き込み動作をホスト書き込み動作と称し、図２に示したように、ホスト書き込み動作は約４５ｎｓの時間Ｔ２を要する。ホスト読み出し及び書き込み動作の繰り返しによってページデータがワーキングメモリ５０に全部伝送される。
【０００６】
図２から分かるように、１６−ワードデータがＯｎｅＮＡＮＤフラッシュメモリ６０からＤＭＡ２０のバッファ２１へ伝送され、ＤＭＡ２０のバッファ２１からＤＲＡＭ５０へ１６−ワードデータが全部伝送された後、次の１６−ワードデータが上述したホスト読み出し及び書き込み動作を通じてＤＲＡＭ５０に伝送される。これによって、ＯｎｅＮＡＮＤフラッシュメモリ６０からＤＲＡＭ５０へページデータを送るのに多くの時間がかかる。これとともに、ＣＰＵ１０はページデータを読み出すためにメモリコントローラ４０に命令及びアドレスを送らなければならない。すなわち、ページデータをＤＲＡＭ５０に移すためには毎度ＣＰＵ１０の介入が要求される。これはＣＰＵ１０の負担が増加することを意味する。
【非特許文献１】ＮＡＮＤ  ＦＬＡＳＨ  ＭＥＭＯＲＹ  ＆  ＳＭＡＲＴＭＥＤＩＡ，データブック，２００３年９月、ｐｐ６３５−６５２。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明の目的は、ＯｎｅＮＡＮＤフラッシュメモリの性能を最適化させることができるメモリコントローラ及びそれを含んだデータ処理システムを提供することにある。
【課題を解決するための手段】
【０００８】
上述の目的を解決するために本発明の一特徴によれば、本発明に係るデータ処理システムは、ページデータを一時貯蔵するためのバッファメモリを有するＯｎｅＮＡＮＤフラッシュメモリと、前記ＯｎｅＮＡＮＤフラッシュメモリの読み出し動作を制御し、スピードアップバッファを有する第１メモリコントローラとを含み、前記バッファメモリに貯蔵されたページデータは所定の単位で前記スピードアップバッファを通じて外部に順次に出力される。
【０００９】
この実施形態において、データ処理システムは、ワーキングメモリと、前記ワーキングメモリを制御する第２メモリコントローラと、バッファを有するＤＭＡとをさらに含み、前記スピードアップバッファから出力されたデータは前記ＤＭＡのバッファに一時貯蔵される。
【００１０】
この実施形態において、前記ＤＭＡのバッファに貯蔵されたデータは前記第２メモリコントローラを通じて前記ワーキングメモリに貯蔵される。
【００１１】
この実施形態において、前記バッファメモリから前記スピードアップバッファへのデータ伝送が行われる間、前記スピードアップバッファから前記ＤＭＡのバッファへのデータ伝送及び前記ＤＭＡのバッファから前記ワーキングメモリのデータ伝送が実行される。
【００１２】
この実施形態において、前記スピードアップバッファ及び前記ＤＭＡのバッファは先入れ先出し（ＦＩＦＯ）で構成される。
【００１３】
この実施形態において、前記第１メモリコントローラは中央処理装置から提供される命令及びアドレス情報を貯蔵するためのレジスタセットをさらに含む。
【００１４】
この実施形態において、複数のページデータが前記中央処理装置によって要求される場合、前記第１メモリコントローラは前記スピードアップバッファを通じてページデータが全部伝送される度に次のページデータに対する読み出し動作が実行されるように前記レジスタセットに貯蔵された情報に基づいて前記ＯｎｅＮＡＮＤフラッシュメモリを制御する。
【００１５】
この実施形態において、前記第１メモリコントローラは前記外部と通信するためのＡＨＢインターフェースをさらに含む。
【００１６】
この実施形態において、前記第１メモリコントローラはバッファを有するＤＭＡをさらに含み、前記スピードアップバッファから出力されたデータは前記ＤＭＡのバッファに一時貯蔵される。
【００１７】
この実施形態において、前記ＤＭＡのバッファに貯蔵されたデータは第２メモリコントローラを通じてワーキングメモリに貯蔵される。
【００１８】
上述の目的を解決するために本発明の一特徴によれば、本発明に係るデータ処理システムは、内部不揮発性メモリと前記内部不揮発性メモリから伝達されたページデータを一時貯蔵する内部バッファメモリとを有するＯｎｅＮＡＮＤフラッシュメモリと、前記ＯｎｅＮＡＮＤフラッシュメモリの読み出し動作を制御する制御手段とを含み、前記ＯｎｅＮＡＮＤフラッシュメモリバッファに貯蔵された前記ページデータは前記スピトアップバッファを通じて前記ＯｎｅＮＡＮＤフラッシュメモリから外部装置に所定のデータ単位で順次に続いて出力される。
【００１９】
この実施形態において、前記データ処理システムはバッファを有するＤＭＡコントローラをさらに含み、前記スピードアップバッファから出力されたデータは前記ＤＭＡコントローラバッファに一時貯蔵される。
【００２０】
この実施形態において、前記スピードアップバッファと前記ＤＭＡコントローラバッファのうちの少なくとも一つは先入れ先出し（ＦＩＦＯ）メモリを含む。
【００２１】
上述の目的を解決するために本発明の一特徴によれば、本発明に係るＯｎｅＮＡＮＤフラッシュメモリからＲＡＭ装置にデータを読み出す方法において、前記ＯｎｅＮＡＮＤフラッシュメモリは内部不揮発性メモリと内部バッファメモリとを有し、前記内部バッファメモリは前記内部不揮発性メモリから伝達されたデータのページを一時貯蔵するデータ読み出し方法において、前記バッファメモリに貯蔵された前記ページデータは前記ＯｎｅＮＡＮＤフラッシュメモリから前記ＲＡＭ装置に所定のデータ単位で順次に出力されるように前記ＯｎｅＮＡＮＤフラッシュメモ動作を制御する段階を含み、ここで前記全体ページデータは所定のデータごとに平均時間周期で出力され、前記平均周期は前記ＯｎｅＮＡＮＤフラッシュから所定のデータを読み出し動作する時間と前記ＲＡＭ装置に所定のデータを書き込み動作する時間を合した時間より小さい。
【００２２】
この実施形態において、前記バッファメモリに貯蔵された前記ページデータは前記ＯｎｅＮＡＮＤフラッシュメモリから前記ＲＡＭ装置に前記複数のデータユニットから続いて出力される。
【００２３】
この実施形態において、ＤＭＡコントローラのバッファに所定のデータを一時貯蔵する。
【００２４】
この実施形態において、先入れ先出し（ＦＩＦＯ）メモリに所定のデータを一時貯蔵する。
【発明の効果】
【００２５】
スピードアップバッファ１４１からバッファメモリ１２１にデータを送るのに必要な時間Ｔ２とバッファメモリ１２１からＤＲＡＭ１５０にデータを送るのに必要な時間Ｔ３がデータ伝送時間Ｔ１によってシャドウされるようにすることで、ＯｎｅＮＡＮＤフラッシュメモリの最適性能を実現するのが可能である。また、ＯｎｅＮＡＮＤフラッシュメモリ１６０のページに対するアクセスがＣＰＵ１１０から要求される時、要求されるページのアドレス情報を一回にメモリコントローラ１４０のレジスタセット１４２に設定することでＣＰＵ１１０の介入を最小化させることが可能である。
【発明を実施するための最良の形態】
【００２６】
上述の一般的な説明及び次の詳細な説明の全部が例示的であり、請求された発明の付加的な説明が提供されると見なさなければならない。
【００２７】
参照符号が本発明の望ましい実施形態に詳細に表示されており、それの例が参照図に表示されている。同一の参照番号が同一のまたは類似の部分を参照するために説明及び図面で用いられている。
【００２８】
下で、不揮発性メモリ装置としてＯｎｅＮＡＮＤフラッシュメモリ装置が本発明の特徴及び機能を説明するための一例として用いられている。しかし、この技術分野に精通した者はここに記載した内容によって本発明の他の利点及び性能を容易に理解することができるであろう。本発明は他の実施形態を通じて実現、または適用されることができるであろう。さらに、詳細な説明は本発明の範囲、技術的思想、及び他の目的から逸脱しない限度内で観点及び応用に応じて修正、または変更が可能である。
【００２９】
図３は本発明に係るデータ処理システムを示すブロック図であり、図４は図３に示したデータ処理システムにおいて、ＯｎｅＮＡＮＤフラッシュメモリからＤＲＡＭへのデータ伝送動作を説明するための図である。
【００３０】
まず、図３を参照すれば、本発明に係るデータ処理システムは、ＣＰＵ１１０、ＤＭＡ１２０、メモリコントローラ１３０、１４０、ＤＲＡＭ１５０、及びＯｎｅＮＡＮＤフラッシュメモリ１６０を含む。ＤＲＡＭ１５０及びＯｎｅＮＡＮＤフラッシュメモリ１６０はメモリコントローラ１３０、１４０によってそれぞれ制御される。メモリコントローラ１４０はＯｎｅＮＡＮＤフラッシュメモリ１６０に対するアクセスがＣＰＵ１１０またはＤＭＡ１２０によって要求される時、ＯｎｅＮＡＮＤフラッシュメモリ１６０を制御する。特に、本発明に係るメモリコントローラ１４０はＯｎｅＮＡＮＤフラッシュメモリ１６０の最適性能を実現するための構造及びプロトコルを支援するように構成され、これは以後詳細に説明する。
【００３１】
メモリコントローラ１４０はスピードアップバッファ１４１とレジスタセット１４２とを含む。レジスタセット１４２はＣＰＵ１１０から提供される各種の情報（例えば、アドレス及び命令）を貯蔵するのに用いられる。メモリコントローラ１４０はレジスタセット１４２に貯蔵された情報に応じてＯｎｅＮＡＮＤフラッシュメモリ１６０と通信する。例えば、レジスタセット１４２に読み出し命令が設定される場合、メモリコントローラ１４０は決められたタイミングに応じてＯｎｅＮＡＮＤフラッシュメモリ１６０にアドレス及び命令を出力する。ここで、アドレスはバッファアドレス、ページアドレス、ブロックアドレスなどを含む。読み出し動作が完了したことを知らせる情報がＯｎｅＮＡＮＤフラッシュメモリ１６０から入力される時、メモリコントローラ１４０はＯｎｅＮＡＮＤフラッシュメモリ１６０から一定の単位（例えば、１６−ワード単位）でデータを持って来て、持って来たデータをスピードアップバッファ１４１に一時貯蔵する。メモリコントローラ１４０はＤＭＡ１２０にスピードアップバッファ１４１にデータが貯蔵されたことを知らせる。
【００３２】
この実施形態において、メモリコントローラ１４０及びＤＭＡ１２０のバッファ１４１、１２１はよく知られた先入れ先出し（ＦＩＦＯ）メモリで構成される。
【００３３】
ＯｎｅＮＡＮＤフラッシュメモリ１６０はメモリコア１６１とバッファメモリ１６２とを含む。図示しないが、ＯｎｅＮＡＮＤフラッシュメモリ１６０にはこの分野によく知られたステートマシン、ＥＣＣ、レジスタセットなどがさらに提供される。バッファメモリ１６２はデュアルバッファリング動作を実行するように構成される。すなわち、バッファメモリ１６２は２個のＳＲＡＭバッファで構成される。ＯｎｅＮＡＮＤフラッシュメモリ１６０は多様な機能を支援する。例えば、ＯｎｅＮＡＮＤフラッシュメモリ１６０は単一ブロック消去動作(ｓｉｎｇｌｅ  ｂｌｏｃｋ  ｅｒａｓｅ)、マルチ−ブロック消去(ｍｕｌｔｉ−ｂｌｏｃｋ  ｅｒａｓｅ)、ロック／アンラック／ロック−タイト動作、コピーバック動作、ＯＴＰ及びスペーア領域アクセス動作、検証読み出し動作、パイプライン読み出し−アヘッド動作、ブロック／キャッシュ読み出し動作などを支援する。特に、ブロック読み出し動作の時、ＯｎｅＮＡＮＤフラッシュメモリ１６０はメモリコントローラ１４０から命令及びアドレスに基づいて一つのメモリブロックに貯蔵されたすべてのデータを自動的にメモリコントローラ１４０に送る。
【００３４】
ＯｎｅＮＡＮＤフラッシュメモリからＤＲＡＭへのデータ伝送動作を図３及び図４を参照して以下説明する。
【００３５】
ＣＰＵ１１０によって要求されるデータがワーキングメモリとしてＤＲＡＭ１５０に存在しない場合、ＣＰＵ１１０はメモリコントローラ１４０に命令及びアドレスを伝達する。メモリコントローラ１４０に入力された命令及びアドレスはレジスタセット１４２に貯蔵される。メモリコントローラ１４０はレジスタセット１４２にアドレス及び命令が入力されれば、決められたインターフェース方式に従ってＯｎｅＮＡＮＤフラッシュメモリ１６０にアドレス及び命令を出力する。いったん命令及びアドレスが入力される時、ＯｎｅＮＡＮＤフラッシュメモリ１６０は読み出し動作を自動的に実行する。例えば、ＯｎｅＮＡＮＤフラッシュメモリ１６０のステートマシンの制御によってメモリコア１６１からバッファメモリ１６２へページデータが伝送される。ＯｎｅＮＡＮＤフラッシュメモリ１６０はメモリコア１６１からバッファメモリ１６２へページデータが全部伝送されたことをメモリコントローラ１４０に知らせる。以後、バッファメモリ１６２に貯蔵されたページデータは一定の単位（例えば、１６−ワード単位）でワーキングメモリとしてＤＲＡＭ５０に順次に伝送される。より具体的に説明すれば、次のとおりである。
【００３６】
１６−ワードデータは、図４に示したように、Ｔ１時間（例えば、３００ｎｓ）の間ＯｎｅＮＡＮＤフラッシュメモリ１６０のバッファメモリ１６２からメモリコントローラ１４０のスピードアップバッファ１４１に伝送される。いったんメモリコントローラ１４０のスピードアップバッファ１４１に１６−ワードデータが貯蔵されれば、図４に示したように、Ｔ２時間（例えば、４５ｎｓ）の間ＤＭＡ１２０の制御に応じてスピードアップバッファ１４１からＤＭＡ１２０のバッファメモリ１２１へ１６−ワードデータが伝送される。同様に、いったんＤＭＡ１２０のバッファメモリ１２１に１６−ワードデータが貯蔵されれば、図４に示したように、Ｔ３時間（例えば、４５ｎｓ）の間メモリコントローラ１３０の制御に応じてＤＭＡ１２０のバッファメモリ１２１からＤＲＡＭ１５０へ１６−ワードデータが伝送される。図４から分かるように、スピードアップバッファ１４１からＤＭＡ１２０のバッファメモリ１２１へ１６−ワードデータが伝送されると同時に、次の１６−ワードデータはＴ１時間の間ＯｎｅＮＡＮＤフラッシュメモリ１６０のバッファメモリ１６２からメモリコントローラ１４０のスピードアップバッファ１４１に伝送され始める。以後、ＯｎｅＮＡＮＤフラッシュメモリ１６０のバッファメモリ１６２に貯蔵されたデータは上述と同一の伝送方式でスピードアップバッファ１４１及びバッファメモリ１２１を通じてＤＲＡＭ１５０に伝送される。
【００３７】
上述の説明から分かるように、ＯｎｅＮＡＮＤフラッシュメモリ１６０からメモリコントローラ１４０に連続してデータが伝送される間、スピードアップバッファ１４１からバッファメモリ１２１へのデータ伝送及びバッファメモリ１２１からＤＲＡＭ１５０へのデータ伝送が行われる。結果的に、スピードアップバッファ１４１からバッファメモリ１２１にデータを送るのに必要な時間Ｔ２とバッファメモリ１２１からＤＲＡＭ１５０にデータを送るのに必要な時間Ｔ３がデータ伝送時間Ｔ１によってシャドウされる。このようなシャドウ技法を通じてＯｎｅＮＡＮＤフラッシュメモリ１６０の最適性能を実現するのが可能である。
【００３８】
図１及び図３に示したシステムにおいて１Ｋ−ワードデータを送るのにかかる時間を比べると、図１に示したシステムは１Ｋ−ワードデータを送るため（Ｔ１＋Ｔ２）ｘ１０２４の時間を要する。一方、図３に示した本発明のシステムは１Ｋ−ワードデータを送るためにＴ１ｘ１０２４の時間を要する。したがって、デュアルバッファリング方式に従ってキャッシュ／ブロック読み出し動作を支援するＯｎｅＮＡＮＤフラッシュメモリ装置の性能を最適化するのが容易である。
【００３９】
本発明に係るメモリコントローラ１４０はＯｎｅＮＡＮＤフラッシュメモリ１６０のページに対するアクセスがＣＰＵ１１０から要求される時、ＣＰＵ１１０の介入を最小化させることができる。例えば、ＣＰＵ１１０は要求されるページのアドレス情報を一回にメモリコントローラ１４０のレジスタセット１４２に設定する。いったんメモリコントローラ１４０のレジスタ１４２にＣＰＵ１１０によって要求されるページのアドレス情報が設定されれば、メモリコントローラ１４０は１ページ分量のデータが上述の伝送方式に従ってＤＲＡＭ１５０に全部伝送される度にレジスタセット１４２に貯蔵されたアドレス情報に従って次のページに対する読み出し動作を制御する。このような制御方式によれば、要求されるページのそれぞれに対するアドレス情報をレジスタセット１４０に設定するのに必要なＣＰＵ１１０の介入を減らすことができる。すなわち、ＣＰＵ１１０の負担を減らすのが可能である。
【００４０】
図５は図３に示したメモリコントローラを概略的に示すブロック図である。
【００４１】
図５を参照すれば、本発明に係るメモリコントローラ１４０はスピードアップバッファ１４１、レジスタセット１４２、第１インターフェースとしてＡＨＢインターフェースブロック１４３、第２インターフェースとしてＯｎｅＮＡＮＤインターフェースブロック１４４、及びコマンドフォーマッタエンジン（ｃｏｍｍａｎｄ  ｆｏｒｍａｔｔｅｒ  ｅｎｇｉｎｅ）１４５を含む。スピードアップバッファ１４１はコマンドフォーマッタエンジン１４５によって制御され、ＯｎｅＮＡＮＤインターフェースブロック１４４を通じてＯｎｅＮＡＮＤフラッシュメモリ１６０から伝送されるデータ（例えば、１６−ワードデータ）を一時貯蔵する。スピードアップバッファ１４１の大きさは応用先によって可変されることができることはこの分野の通常的な知識を習得した者等に自明である。スピードアップバッファ１４１に貯蔵されたデータはＡＨＢインターフェースブロック１４３を通じてＤＭＡ１２０のバッファ１２１に伝送されるであろう。レジスタセット１４２はパラメータモジュール（ｐａｒａｍｅｔｅ  ｒｍｏｄｕｌｅ）であり、ＤＭＡ１２０またはＣＰＵ１１０から提供されるアドレス、命令などを貯蔵するのに用いられる。
【００４２】
ＡＨＢインターフェースブロック１４３はＡＭＢＡ  ＡＨＢ２．０ライトプロトコル（ＡＭＢＡ  ＡＨＢ２．０  ｌｉｔｅ  ｐｒｏｔｏｃｏｌ）のためのＡＨＢ標準バスプロトコルを実現するのに必要なすべての信号を含む。コマンドフォーマッタエンジン１４５はＯｎｅＮＡＮＤフラッシュメモリ１６０を制御するために命令及びデータをフォーマットする。コマンドフォーマッタエンジン１４５はマッピングプロトコルを実行し、アクセスタイミングを制御し、ＯｎｅＮＡＮＤフラッシュメモリ１６０に命令を出力する。上述のように、ＯｎｅＮＡＮＤフラッシュメモリ１６０のページに対するアクセスがＣＰＵ１１０から要求される時、ＣＰＵ１１０の介入を最小化するため、ＣＰＵ１１０は要求されるページのアドレス情報を一回にメモリコントローラ１４０のレジスタセット１４２に設定する。いったんレジスタセット１４２にＣＰＵ１１０によって要求されるページのアドレス情報が設定されれば、コマンドフォーマッタエンジン１４５は１ページ分量のデータが上述の伝送方式に従ってＤＲＡＭ１５０に全部伝送される度にレジスタセット１４２に貯蔵されたアドレス情報に従って次のページに対する読み出し動作を制御する。これはスピードアップバッファ１４１にロードされた１６−ワードデータをカウントすることによって行われることができる。
【００４３】
図６は本発明の他の実施形態に係るデータ処理システムを示すブロック図である。図６に示したデータ処理システムは次のような差異を除けば、図３に示したものと実質的に同一である。図６に示したように、メモリコントローラはＤＭＡを含むように構成され、メモリコントローラに含まれたＤＭＡの機能は図３に示したものと実質的に同一である。したがって、図６に示したデータ処理システムの説明は省略する。
【００４４】
本発明の範囲または技術的思想を逸脱せずに本発明の構造が多様に修正、または変更可能であることはこの分野に熟練された者等に自明である。上述した内容を考慮する時、もし本発明の修正及び変更が請求項及び同等物の範疇内に属したら、本発明はこの発明の変更及び修正を含むと見なされる。
【図面の簡単な説明】
【００４５】
【図１】ＮＡＮＤフラッシュメモリを含んだ一般的なデータ処理システムを概略的に示すブロック図である。
【図２】図１に示したデータ処理システムにおいて、ＯｎｅＮＡＮＤフラッシュメモリからＤＲＡＭへのデータ伝送動作を説明するための図である。
【図３】本発明に係るデータ処理システムを示すブロック図である。
【図４】図３に示したデータ処理システムにおいて、ＯｎｅＮＡＮＤフラッシュメモリからＤＲＡＭへのデータ伝送動作を説明するための図である。
【図５】図３に示したメモリコントローラを概略的に示すブロック図である。
【図６】本発明の他の実施形態に係るデータ処理システムを示すブロック図である。
【符号の説明】
【００４６】
１１０  ＣＰＵ                             
１２０  ＤＭＡ
１３０，１４０  メモリコントローラ             
１５０  ＤＲＡＭ
１６０  ＯｎｅＮＡＮＤフラッシュメモリ
【図１】
2007087388.tif 000003
【図２】
2007087388.tif 000004
【図３】
2007087388.tif 000005
【図４】
2007087388.tif 000006
【図５】
2007087388.tif 000007
【図６】
2007087388.tif 000008