(57)【要約】【課題】デバイス情報を予め記憶する必要のないメモリコントローラ、当該メモリコントローラを備えるフラッシュメモリシステム及びフラッシュメモリの制御方法を提供する。【解決手段】  フラッシュメモリを記憶媒体として利用するホストシステムからの命令に応答してフラッシュメモリを制御することにより、前記フラッシュメモリへのアクセスを実行するメモリコントローラであって、設定されたデバイス情報により定められる仕様で、前記フラッシュメモリへのアクセスを実行する、フラッシュメモリインターフェース手段と、メモリコントローラの起動時にデバイス情報を取得して出力する、デバイス情報取得手段と、前記デバイス情報取得手段が出力するデバイス情報を受け取り、当該デバイス情報をフラッシュメモリインターフェース手段に設定するデバイス情報設定手段と、から構成される。【選択図】図３
2006331233.tif 000002
【特許請求の範囲】
【請求項１】
フラッシュメモリを記憶媒体として利用するホストシステムからの命令に応答して前記フラッシュメモリを制御することにより、前記フラッシュメモリへのアクセスを実行するメモリコントローラであって、
設定されたデバイス情報により定められる仕様で、前記フラッシュメモリへのアクセスを実行する、フラッシュメモリインターフェース手段と、
前記メモリコントローラの起動時に前記デバイス情報を取得して出力する、デバイス情報取得手段と、
前記デバイス情報取得手段が出力する前記デバイス情報を受け取り、当該デバイス情報を前記フラッシュメモリインターフェース手段に設定するデバイス情報設定手段と、から構成される、
ことを特徴とするメモリコントローラ。
【請求項２】
前記デバイス情報取得手段は、複数の入力端子を備え、当該入力端子に供給される設定信号により定義される前記デバイス情報を、前記メモリコントローラの起動時に取得し、当該取得したデバイス情報を前記デバイス情報設定手段に供給する、
ことを特徴とする請求項１に記載のメモリコントローラ。
【請求項３】
前記デバイス情報取得手段の入力端子に供給される前記設定信号は、前記フラッシュメモリにアクセスするための仕様を定義する前記デバイス情報のうち、最小限のデバイス情報である必須デバイス情報を定めるものであり、
前記フラッシュメモリは、前記デバイス情報のうち、前記必須デバイス情報に含まれない任意デバイス情報を、所定のメモリ領域に記憶し、
前記フラッシュメモリインターフェース手段は、前記デバイス情報設定手段によって設定される前記必須デバイス情報により定められる仕様で前記フラッシュメモリへアクセスし、前記フラッシュメモリの所定のメモリ領域から前記任意デバイス情報を読み出して前記デバイス情報設定手段に供給し、
前記デバイス情報設定手段は、前記フラッシュメモリインターフェース手段により読み出された前記任意デバイス情報を前記フラッシュメモリインターフェース手段に設定する、
ことを特徴とする請求項２に記載のメモリコントローラ。
【請求項４】
前記デバイス情報取得手段は、前記メモリコントローラの起動時に、前記フラッシュメモリにアクセスするための仕様を定義する前記デバイス情報を格納する外部記憶媒体から当該デバイス情報を取得し、当該取得したデバイス情報を前記デバイス情報設定手段に供給する、
ことを特徴とする請求項１に記載のメモリコントローラ。
【請求項５】
前記外部記憶媒体は、前記フラッシュメモリにアクセスするための仕様を定義する前記デバイス情報のうち、最小限のデバイス情報である必須デバイス情報を格納し、
前記フラッシュメモリは、前記デバイス情報のうち、前記必須デバイス情報に含まれない任意デバイス情報を、所定のメモリ領域に記憶し、
前記フラッシュメモリインターフェース手段は、前記デバイス情報設定手段によって設定される前記必須デバイス情報により定められる仕様で前記フラッシュメモリへアクセスし、前記フラッシュメモリの所定のメモリ領域から前記任意デバイス情報を読み出して前記デバイス情報設定手段に供給し、
前記デバイス情報設定手段は、前記フラッシュメモリインターフェース手段により読み出された前記任意デバイス情報を前記フラッシュメモリインターフェース手段に設定する、
ことを特徴とする請求項４に記載のメモリコントローラ。
【請求項６】
前記必須デバイス情報は、ブロックサイズと、データ幅と、セル構造と、である、
ことを特徴とする請求項３又は５に記載のメモリコントローラ。
【請求項７】
請求項１から６のいずれか１項に記載のメモリコントローラと、フラッシュメモリと、を備えることを特徴とするフラッシュメモリシステム。
【請求項８】
フラッシュメモリにアクセスするための仕様を定義するデバイス情報のうち最小限のデバイス情報である必須デバイス情報を取得する、必須デバイス情報取得ステップと、
前記必須デバイス情報取得ステップで取得した必須デバイス情報に基づき、前記フラッシュメモリにアクセスし、前記フラッシュメモリの所定のメモリ領域に格納されたデバイス情報のうち前記必須デバイス情報に含まれない任意デバイス情報を読み出して取得する任意デバイス情報取得ステップと、から構成される、
ことを特徴とするフラッシュメモリの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリコントローラ、当該メモリコントローラを備えるフラッシュメモリシステム及びフラッシュメモリの制御方法に関する。
【背景技術】
【０００２】
近年、不揮発性の記録媒体であるフラッシュメモリの開発が盛んに行われ、デジタルカメラ等の情報機器の記憶媒体として普及している。
【０００３】
このような機器によるフラッシュメモリへのアクセスを制御するために、メモリコントローラが用いられる。フラッシュメモリは、品種によってアクセスの際の仕様（容量、ブロックサイズ、データ幅、セル構造、読み出しスピード等）が異なるため、各品種の仕様に対応したメモリコントローラが必要となる。
【０００４】
これに対応して、フラッシュメモリの品種毎に、別々にメモリコントローラを開発するのでは、フラッシュメモリの多様化にメモリコントローラの開発が追いつかないという状況が生じる。
【０００５】
このため、フラッシュメモリの品種を識別して、品種に対応した仕様でフラッシュメモリへのアクセスを制御できるメモリコントローラが提案されている（例えば特許文献１を参照）。このようなメモリコントローラは、多くの場合、フラッシュメモリが有する識別情報を読み出す。そして、内部ＲＯＭ（Read Only Memory）に格納されたデバイス情報の中から当該フラッシュメモリの識別情報に対応するデバイス情報を取得し、取得したデバイス情報に応じた仕様でフラッシュメモリへのアクセスを制御する。
【特許文献１】特開平１０−３３６５６２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記のような手法では、新たに開発された品種のフラッシュメモリや、識別情報をメモリコントローラに供給しない品種のフラッシュメモリ等を制御しようとする場合、その品種に対応したデバイス情報がメモリコントローラの内部ＲＯＭに格納されていない。このため、適切なデバイス情報を設定することができない事態が生じる。
【０００７】
本発明は上記の実情に鑑みてなされたもので、デバイス情報を予め記憶する必要のないメモリコントローラ、当該メモリコントローラを備えるフラッシュメモリシステム、及び、フラッシュメモリの制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の第１の観点に係るメモリコントローラは、フラッシュメモリを記憶媒体として利用するホストシステムからの命令に応答して前記フラッシュメモリを制御することにより、前記フラッシュメモリへのアクセスを実行するメモリコントローラであって、設定されたデバイス情報により定められる仕様で、前記フラッシュメモリへのアクセスを実行する、フラッシュメモリインターフェース手段と、前記メモリコントローラの起動時に前記デバイス情報を取得して出力する、デバイス情報取得手段と、前記デバイス情報取得手段が出力する前記デバイス情報を受け取り、当該デバイス情報を前記フラッシュメモリインターフェース手段に設定するデバイス情報設定手段と、から構成される、ことを特徴とする。
【０００９】
前記デバイス情報取得手段は、複数の入力端子を備え、当該入力端子に供給される設定信号により定義される前記デバイス情報を、前記メモリコントローラの起動時に取得し、当該取得したデバイス情報を前記デバイス情報設定手段に供給してもよい。
【００１０】
前記デバイス情報取得手段の入力端子に供給される前記設定信号は、前記フラッシュメモリにアクセスするための仕様を定義する前記デバイス情報のうち、最小限のデバイス情報である必須デバイス情報を定めるものであり、前記フラッシュメモリは、前記デバイス情報のうち、前記必須デバイス情報に含まれない任意デバイス情報を、所定のメモリ領域に記憶し、前記フラッシュメモリインターフェース手段は、前記デバイス情報設定手段によって設定される前記必須デバイス情報により定められる仕様で前記フラッシュメモリへアクセスし、前記フラッシュメモリの所定のメモリ領域から前記任意デバイス情報を読み出して前記デバイス情報設定手段に供給し、前記デバイス情報設定手段は、前記フラッシュメモリインターフェース手段により読み出された前記任意デバイス情報を前記フラッシュメモリインターフェース手段に設定してもよい。
【００１１】
前記デバイス情報取得手段は、前記メモリコントローラの起動時に、前記フラッシュメモリにアクセスするための仕様を定義する前記デバイス情報を格納する外部記憶媒体から当該デバイス情報を取得し、当該取得したデバイス情報を前記デバイス情報設定手段に供給してもよい。
【００１２】
前記外部記憶媒体は、前記フラッシュメモリにアクセスするための仕様を定義する前記デバイス情報のうち、最小限のデバイス情報である必須デバイス情報を格納し、前記フラッシュメモリは、前記デバイス情報のうち、前記必須デバイス情報に含まれない任意デバイス情報を、所定のメモリ領域に記憶し、前記フラッシュメモリインターフェース手段は、前記デバイス情報設定手段によって設定される前記必須デバイス情報により定められる仕様で前記フラッシュメモリへアクセスし、前記フラッシュメモリの所定のメモリ領域から前記任意デバイス情報を読み出して前記デバイス情報設定手段に供給し、前記デバイス情報設定手段は、前記フラッシュメモリインターフェース手段により読み出された前記任意デバイス情報を前記フラッシュメモリインターフェース手段に設定してもよい。
【００１３】
前記必須デバイス情報は、ブロックサイズと、データ幅と、セル構造と、であってもよい。
【００１４】
本発明の第２の観点に係るフラッシュメモリシステムは、上記の特徴うち少なくともいずれか一つを有するメモリコントローラと、フラッシュメモリとを備えることを特徴とする。
【００１５】
本発明の第３の観点に係るフラッシュメモリの制御方法は、フラッシュメモリにアクセスするための仕様を定義するデバイス情報のうち最小限のデバイス情報である必須デバイス情報を取得する、必須デバイス情報取得ステップと、前記必須デバイス情報取得ステップで取得した必須デバイス情報に基づき、前記フラッシュメモリにアクセスし、前記フラッシュメモリの所定のメモリ領域に格納されたデバイス情報のうち前記必須デバイス情報に含まれない任意デバイス情報を読み出して取得する任意デバイス情報取得ステップと、から構成される、ことを特徴とする。
【発明の効果】
【００１６】
本発明に係るメモリコントローラ、当該メモリコントローラを備えるフラッシュメモリシステム、及び、フラッシュメモリの制御方法は、デバイス情報をメモリコントローラの外部から設定する。このため、デバイス情報を予め記憶することなく、様々な品種のフラッシュメモリに対応した制御をすることができる。
【発明を実施するための最良の形態】
【００１７】
（第１の実施の形態）
以下、図面を参照して、本発明の第１の実施の形態について詳細に説明する。
【００１８】
図１は、本発明に係るフラッシュメモリシステム１を概略的に示すブロック図である。図１に示したようにフラッシュメモリシステム１は、フラッシュメモリ２と、それを制御するコントローラ３と、フラッシュメモリ２にアクセスする際の仕様を定義するデバイス情報を格納する外部ＲＯＭ５と、から構成されている。
【００１９】
なお、フラッシュメモリシステム１は、外部バス１３を介してホストシステム４と接続される。ホストシステム４は、ホストシステム４の全体の動作を制御するためのＣＰＵ（Central Processing Unit）、フラッシュメモリシステム１との情報の授受を担うコンパニオンチップ等から構成される。ホストシステム４は、例えば、文字、音声、あるいは画像情報等の種々の情報を処理するパーソナルコンピュータやデジタルスチルカメラをはじめとする各種情報処理装置であってもよい。
【００２０】
コントローラ３は、マイクロプロセッサ６と、ホストインターフェースブロック７と、ワークエリア８と、バッファ９と、フラッシュメモリインターフェースブロック１０と、ＥＣＣ（エラー・コレクション・コード）ブロック１１と、内部ＲＯＭ（Read Only Memory）１２と、外部ＲＯＭインターフェースブロック１５と、から構成される。これら機能ブロックによって構成されるコントローラ３は、一つの半導体チップ上に集積される。以下に各機能ブロックについて説明する。
【００２１】
マイクロプロセッサ６は、内部ＲＯＭ１２に記録されたプログラムに従って、コントローラ３の全体の動作を制御する。マイクロプロセッサ６は、例えば、フラッシュメモリシステム１の起動時にフラッシュメモリ２の品種に対応したデバイス情報を設定するための、デバイス情報設定処理を実行するように各部を制御する。
【００２２】
ホストインターフェースブロック７は、ホストシステム４とデータ、アドレス情報、ステータス情報、外部コマンド情報等の授受を行なう。すなわち、フラッシュメモリシステム１とホストシステム４は、外部バス１３を介して相互に接続される。かかる状態において、ホストシステム４よりフラッシュメモリシステム１に供給されるデータ等は、ホストインターフェースブロック７を入口としてコントローラ３の内部に取り込まれ、フラッシュメモリシステム１からホストシステム４に供給されるデータ等は、ホストインターフェースブロック７を出口としてホストシステム４に供給される。
【００２３】
より詳細には、ホストインターフェースブロック７は、ホストシステム４より供給されるホストアドレス及び外部コマンドを一時的に格納するコマンドレジスタ、書き込み又は読み出しを行うデータのサイズを格納するセクタ数レジスタ、書き込み又は読み出しを行うデータのアドレスを格納するＬＢＡ（Logical Block Addressing）レジスタ、等を有する。そして、これらのレジスタを介してホストシステム４との情報の授受を行う。
【００２４】
ワークエリア８は、フラッシュメモリ２の制御に必要なデータが一時的に格納される作業領域であり、複数のＳＲＡＭ（Static Random Access Memory）セルによって構成される。
【００２５】
バッファ９は、フラッシュメモリ２から読出したデータ及びフラッシュメモリ２に書込むデータを一時的に保持する。
【００２６】
フラッシュメモリインターフェースブロック１０は、内部バス１４を介して、フラッシュメモリ２とデータ、アドレス情報、ステータス情報、内部コマンド情報等の授受を行う。フラッシュメモリインターフェースブロック１０は、ブロックサイズ、データ幅、セル構造、読み出しスピード、記録容量等のデバイス情報が設定されることによって、様々な品種のフラッシュメモリ２へのアクセスに対応することを可能とする。
【００２７】
以下、デバイス情報について、簡単に説明する。
ブロックサイズは、フラッシュメモリ２におけるデータの消去単位であるブロックのサイズを定義するデバイス情報で、例えば、スモールブロック（Ｓ）とラージブロック（Ｌ）とが設定可能とされる。
データ幅は、フラッシュメモリ２が内部バス１４を介して送受信できるデータのビット数を定義するデバイス情報で、例えば、８ビットと１６ビットとが設定可能とされる。
セル構造は、フラッシュメモリ２を構成するメモリセルの構造を定義するデバイス情報で、例えば、シングルレベルセル（ＳＬ）とマルチレベルセル（ＭＬ）とが設定可能とされる。
読み出しスピードは、フラッシュメモリ２に書き込まれているデータを読み出す際のスピード（より具体的にはリードイネーブル信号のパルス周期）を定義するデバイス情報である。読み出しスピードは、例えば、３０ｎｓ、５０ｎｓ等が設定可能とされる。
記録容量は、フラッシュメモリ２の記録容量を定義するデバイス情報で、例えば、３２Ｍｂ、６４Ｍｂ、１２８Ｍｂ等が設定可能とされる。
【００２８】
ＥＣＣブロック１１は、フラッシュメモリ２に書込むデータに付加されるエラーコレクションコードを生成するとともに、読出しデータに付加されたエラーコレクションコードに基づいて、読出したデータに含まれる誤りを検出・訂正する。
【００２９】
内部ＲＯＭ１２は、不揮発性の記憶素子で、格納したデータを書き換えることができない。内部ＲＯＭ１２は、マイクロプロセッサ６による処理の手順を定義するプログラムを格納する。内部ＲＯＭ１２は、例えば、後述するデバイス情報設定処理の手順を定義するプログラムを格納する。
【００３０】
外部ＲＯＭインターフェースブロック１５は、外部ＲＯＭ５に格納された、フラッシュメモリ２にアクセスするために必要な最小限のデバイス情報（すなわち、ブロックサイズ、データ幅、及び、セル構造、以下では必須デバイス情報と呼ぶ）を、当該外部ＲＯＭ５から取得し、フラッシュメモリインターフェースブロック１０に設定する。
【００３１】
図２は、フラッシュメモリ２のメモリ構造を概略的に示す図である。図２に示したように、フラッシュメモリ２はデータの読出し及び書込みにおける処理単位であるページと、データの消去単位であるブロックで構成されている。
【００３２】
上記ページは、例えば、５１２バイトのユーザ領域２５と、１６バイトの冗長領域２６によって構成される。ユーザ領域２５は、主に、ホストシステム４から供給されるデータが格納される領域であり、冗長領域２６は、エラーコレクションコード、ブロックステータス等の付加情報が格納される領域である。
なお、フラッシュメモリ２には、通常、デバイスＩＤが書き込まれている。このデバイスＩＤは、１バイト目のメーカーコード、２バイト目のデバイスコード、３バイト目以降の拡張コードで構成されている。拡張コードには、上述のブロックサイズ、データ幅、アクセス時間等が含まれているが、拡張コードの記述方法はメーカーや品種によって異なっている。従って、上述のデバイス情報の設定では、通常、この拡張コードは用いられない。
【００３３】
エラーコレクションコードは、ユーザ領域２５に格納されたデータに含まれる誤りを訂正するための付加情報であり、ＥＣＣブロック１１によって生成される。このエラーコレクションコードに基づき、ユーザ領域２５に格納されたデータに含まれる誤りが所定数以下であれば、その誤りが訂正される。
【００３４】
ブロックステータスは、そのブロックが不良ブロック（正常にデータの書込み等を行なうことができないブロック）であるか否かを示すフラグであり、そのブロックが不良ブロックであると判断された場合には、不良ブロックであることを示すフラグが設定される。
【００３５】
また、フラッシュメモリ２は、必須デバイス情報以外のデバイス情報（本実施の形態では、記憶容量と読み出しスピード、以下では任意デバイス情報と呼ぶ）を特定のページに格納する。任意デバイス情報は、フラッシュメモリシステム１の起動時に実行されるデバイス情報設定処理においてコントローラ３によって読み出される。
【００３６】
外部ＲＯＭ５は、不揮発性かつ読み出し専用の記憶素子である。外部ＲＯＭ５は、必須デバイス情報（すなわち、ブロックサイズ、データ幅、及び、セル構造）を格納し、フラッシュメモリシステム１の起動時に当該最小限のデバイス情報をコントローラ３に供給する。
【００３７】
ここで、必須デバイス情報のみが既知である場合、これに含まれない任意デバイス情報である記憶容量と読み出しスピードについては、以下のような仮の値を設定すれば、フラッシュメモリ２へのアクセスが可能となる。すなわち、記憶容量には最小の容量値を設定し、読み出しスピードには最低速の読み出しスピードを設定する。このとき、コントローラ３がアクセス可能なメモリ空間は、フラッシュメモリ２の有するメモリ空間のうち、最小の容量値に対応するメモリ空間となる。また、より高速な読み出しが可能な品種のフラッシュメモリ２が接続された場合でも、最低速の読み出しスピードとなる。
【００３８】
次に、このように構成されるフラッシュメモリシステム１の動作について、説明する。
【００３９】
フラッシュメモリシステム１の起動時に、コントローラ３は、フラッシュメモリ２の品種に対応したデバイス情報を設定するための、デバイス情報設定処理を実行する。
【００４０】
以下、デバイス情報設定処理の手順について、図３に示すフローチャートを参照して説明する。
デバイス情報設定処理は、フラッシュメモリシステム１に電源が投入されることにより開始される。
【００４１】
デバイス情報設定処理が開始されると、コントローラ３のマイクロプロセッサ６は、外部ＲＯＭインターフェースブロック１５を介して、外部ＲＯＭ５に格納された必須デバイス情報（ブロックサイズ、データ幅、及び、セル構造）を読み出して取得する（ステップＳ１００）。
【００４２】
次に、マイクロプロセッサ６は、取得した必須デバイス情報を、フラッシュメモリインターフェースブロック１０に設定する（ステップＳ１１０）。また、必須デバイス情報に含まれていない任意デバイス情報として仮の設定値を設定する。すなわち、読み出しスピードを最低速度の読み出しスピードとなるように設定し、記録容量を最小の記録容量に設定する（ステップＳ１２０）。
【００４３】
次に、マイクロプロセッサ６は、フラッシュメモリインターフェースブロック１０及び内部バス１４を介して、フラッシュメモリ２の所定のページから、任意デバイス情報（読み出しスピード及び記録容量）を読み出す（ステップＳ１３０）。そして、マイクロプロセッサ６は、読み出したデバイス情報をフラッシュメモリインターフェースブロック１０に再設定して（ステップＳ１４０）、デバイス情報設定処理を終了する。
【００４４】
上記のデバイス情報設定処理によって、デバイス情報が適切に設定されると、コントローラ３は、設定されたデバイス情報に基づいてフラッシュメモリ２への以後のアクセスを実行する。
【００４５】
以上で説明したように、本実施の形態のフラッシュメモリシステム１は、必須デバイス情報がコントローラ３の外部に設けられた外部ＲＯＭ５からコントローラ３に供給され、任意デバイス情報は、コントローラ３がフラッシュメモリ２の特定のページから読み出す。このため、内部ＲＯＭ１２にデバイス情報を記録したテーブルを格納する必要がなく、新規な品種のフラッシュメモリ２にも容易に対応できる。
【００４６】
また、本実施の形態のフラッシュメモリシステム１は、外部ＲＯＭ５に記憶されるデバイス情報を必須デバイス情報に限り、任意デバイス情報はフラッシュメモリ２の特定のページから読み出される。このため、外部ＲＯＭ５の記録容量を最小限度に抑制することができる。
【００４７】
（第２の実施の形態）
上記第１の実施の形態では、外部ＲＯＭ５に予め記録された必須デバイス情報を、外部ＲＯＭインターフェースブロック１５を介して起動時に読み出した。
【００４８】
しかし、このような構成によらなくとも、本発明の目的は達成され得る。例えば、以下で説明する第２の実施の形態のフラッシュメモリシステム１のように、コントローラ３が有する所定の入力端子に供給される情報（論理値）に基づいて、必須デバイス情報をコントローラ３に設定するようにしてもよい。
【００４９】
本発明の第２の実施の形態におけるフラッシュメモリシステム１は、フラッシュメモリ２と、それを制御するコントローラ３と、から構成されている。
【００５０】
コントローラ３は、図４に示すように、マイクロプロセッサ６と、ホストインターフェースブロック７と、ワークエリア８と、バッファ９と、フラッシュメモリインターフェースブロック１０と、ＥＣＣ（エラー・コレクション・コード）ブロック１１と、内部ＲＯＭ（Read Only Memory）１２と、設定端子部１６と、から構成される。これら機能ブロックによって構成されるコントローラ３は、一つの半導体チップ上に集積される。各機能ブロックのうち、設定端子部１６を除く部分については、第１の実施の形態におけるものと同一であるので説明を省略し、設定端子部１６についてのみ説明する。
【００５１】
設定端子部１６は、複数の入力端子を備える。設定端子部１６は、各端子に印加される電圧値に基づいて定められる必須デバイス情報を、マイクロプロセッサ６に供給する。
【００５２】
このように構成されるフラッシュメモリシステム１は、起動時に、第１の実施の形態と同様に、図３に示すデバイス情報設定処理を実行する。
【００５３】
デバイス情報設定処理が開始されると、コントローラ３のマイクロプロセッサ６は、設定端子部１６に設定された必須デバイス情報（ブロックサイズ、データ幅、及び、セル構造）を取得する（ステップＳ１００）。
【００５４】
次に、マイクロプロセッサ６は、取得した必須デバイス情報を、フラッシュメモリインターフェースブロック１０に設定する（ステップＳ１１０）。また、任意デバイス情報として仮の設定値を設定する。すなわち、読み出しスピードを最低速度の読み出しスピードとなるように設定し、記録容量を最小の記録容量に設定する（ステップＳ１２０）。
【００５５】
次に、マイクロプロセッサ６は、フラッシュメモリインターフェースブロック１０及び内部バス１４を介して、フラッシュメモリ２の所定のページから、任意デバイス情報（読み出しスピード及び記録容量）を読み出す（ステップＳ１３０）。そして、マイクロプロセッサ６は、読み出したデバイス情報をフラッシュメモリインターフェースブロック１０に再設定して（ステップＳ１４０）、デバイス情報設定処理を終了する。
【００５６】
上記のデバイス情報設定処理によって、デバイス情報が適切に設定されると、コントローラ３は、設定されたデバイス情報に基づいてフラッシュメモリ２への以後のアクセスを実行する。
【００５７】
以上で説明したように、本実施の形態のフラッシュメモリシステム１は、コントローラ３の設定端子部１６に必須デバイス情報が設定され、任意デバイス情報はフラッシュメモリ２の特定のページから読み出される。このため、第１の実施形態におけるフラッシュメモリシステム１と同様、内部ＲＯＭ１２にデバイス情報を記録したテーブルを格納する必要がなく、新規な品種のフラッシュメモリ２にも容易に対応できる。
【００５８】
上記各実施の形態では、外部ＲＯＭ５や設定端子部１６により必須デバイス情報のみが供給される場合を例に説明したが、任意デバイス情報も外部ＲＯＭ５や設定端子部１６から供給されるようにしてもよい。この場合、フラッシュメモリ２の特定のページから任意デバイス情報を取得する手順を省略できる。
【００５９】
上記各実施の形態では、起動時に外部ＲＯＭ５や設定端子部１６により必須デバイス情報が供給される場合を例に説明したが、起動時に必須デバイス情報をコントローラに供給するのは、これらに限らない。例えば、起動時に、ホストシステムから必須デバイス情報が与えられるようにしてもよい。
【図面の簡単な説明】
【００６０】
【図１】本発明の第１の実施の形態に係るフラッシュメモリシステムを概略的に示すブロック図である。
【図２】フラッシュメモリのアドレス空間の構造を概略的に示す図である。
【図３】デバイス情報設定処理の手順を説明するためのフローチャートである。
【図４】本発明の第２の実施の形態に係るフラッシュメモリシステムを概略的に示すブロック図である。
【符号の説明】
【００６１】
１    フラッシュメモリシステム
２    フラッシュメモリ
３    コントローラ
４    ホストシステム
５    外部ＲＯＭ
６    マイクロプロセッサ
７    ホストインターフェースブロック
８    ワークエリア
９    バッファ
１０  フラッシュメモリインターフェースブロック
１１  ＥＣＣブロック
１２  内部ＲＯＭ
１３  外部バス
１４  内部バス
１５  外部ＲＯＭインターフェースブロック
１６  設定端子部
２５  ユーザ領域
２６  冗長領域
【図１】
2006331233.tif 000003
【図２】
2006331233.tif 000004
【図３】
2006331233.tif 000005
【図４】
2006331233.tif 000006