(57)【要約】【課題】複数のファームオンフラッシュから、任意のファームオンフラッシュを選択することにより、プログラムの追加修正や変更などを行う。【解決手段】メモリカード１において、フラッシュメモリ２には、内蔵ＲＯＭ６に格納されているプログラムとは別にパッチプログラムなどの機能の追加や変更、修正などを行うプログラムであるファームオンフラッシュＦＯＦ１〜ＦＯＦ３が格納されている。そして、有効にしたいファームオンフラッシュをパラメータセクタなどによって設定し、外部ＲＡＭ７にロードしてコントロールロジック４のＣＰＵが処理を実行する。【選択図】      図１
2004258946.tif 000002
【特許請求の範囲】
【請求項１】
複数の不揮発性メモリセルを有し、所定の情報を格納可能な不揮発性半導体メモリと、
外部から発行されたコマンドに基づいて前記不揮発性半導体メモリの動作指示を行うコントローラとからなるメモリカードであって、
前記不揮発性半導体メモリは、２つ以上のファームウェアを格納可能に構成され、
前記コントローラは、
前記ファームウェアを格納する揮発性半導体メモリを備え、ファームウェア選択指示が有効になると、前記揮発性半導体メモリに格納可能な２つ以上のファームウェアから、任意の１つの前記ファームウェアを選択して前記揮発性半導体メモリに格納し、前記揮発性半導体メモリにアクセスして前記ファームウェアによる処理を実行することを特徴とするメモリカード。
【請求項２】
請求項１記載のメモリカードにおいて、前記不揮発性半導体メモリは、ある電圧レベルのしきい値を複数設定し、１ビット以上のデータを１つの前記不揮発性メモリセルに記憶する多値フラッシュメモリであることを特徴とするメモリカード。
【請求項３】
請求項１または２記載のメモリカードにおいて、前記不揮発性半導体メモリのデータ読み出し単位は、５１２バイト以上であることを特徴とするメモリカード。
【請求項４】
請求項１〜３のいずれか１項に記載のメモリカードにおいて、前記不揮発性半導体メモリに格納される２つ以上のファームウェアのうち、少なくとも１つは、セキュア機能を有したプログラムであることを特徴とするメモリカード。
【請求項５】
請求項１〜４のいずれか１項に記載のメモリカードにおいて、前記コントローラは、前記不揮発性半導体メモリのファームウェア管理領域に格納されたファームウェア識別情報を用いて前記揮発性半導体メモリに格納するファームウェアを検索することを特徴とするメモリカード。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、メモリカードに関し、特に、不揮発性メモリを用いたメモリカードの多機能化に適用して有効な技術に関するものである。
【０００２】
【従来の技術】
パーソナルコンピュータや多機能端末機などの記憶装置として、メモリカードが急速に普及している。近年の高性能化の要求に伴って、メモリカードに搭載される半導体メモリとして、たとえば、電気的に一括消去、書き換えが可能であり、大容量のデータを保持できるフラッシュメモリなどの不揮発性メモリが用いられている。
【０００３】
このようなメモリカードにおいては、制御プログラムが該メモリカードに設けられたＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）などに格納されている。また、制御プログラムに対するパッチプログラムやＲＯＭに格納された制御プログラムの機能を拡張する追加制御プログラムなどのファームウェアがフラッシュメモリに格納されている場合もある。
【０００４】
このファームウェア（以下、ファームオンフラッシュという）は、自由に何度でも書き換えが可能であり、製品となっても、変更、機能の追加などを容易に行うことができる。
【０００５】
また、マルチメディアカードなどにおいては、ファームウェアによってコマンド、データ形式の有効／無効をそれぞれ設定するものがある（たとえば、特許文献１）。
【０００６】
さらに、ＩＣカードにおいては、ＲＯＭ内のコマンドテーブルとは別にＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｙ  Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）などの不揮発性メモリ内にコマンドテーブルを設け、ＲＯＭ内のコマンドテーブルが第三者に知られたり、知られる恐れがあるときに、該不揮発性メモリ内にコマンドテーブルを用いるものがある（たとえば、特許文献２参照）。
【０００７】
【特許文献１】
特願２００１−２７８５８５号
【０００８】
【特許文献２】
特開平７−４４６７２号公報
【０００９】
【発明が解決しようとする課題】
ところが、上記のようなメモリカードにおいては、次のような問題点があることが本発明者により見い出された。
【００１０】
すなわち、ファームオンフラッシュは、メモリカードの起動時などにコントローラに設けられたＣＰＵのワークエリアとして用いられるＲＡＭ（ＲａｎｄｏｍＡｃｃｅｓｓ  Ｍｅｍｏｒｙ）に展開されることになるので、ＲＡＭに展開可能な該ファームオンフラッシュのデータ容量に制限が生じてしまうことから、１つのファームオンフラッシュのみが備えられることになる。
【００１１】
そのため、ファームオンフラッシュによる追加機能やプログラム修正なども制限を受けることになってしまい、メモリカードの利便性が損なわれてしまう恐れがある。
【００１２】
また、不揮発性メモリ内にコマンドテーブルを有するＩＣカードにおいて、該ＩＣカードでは、不揮発性メモリとコントローラとが１つの半導体チップに形成され、さらにＥＥＰＲＯＭでは通常バイト単位でのランダムアクセスが可能とされているが、メモリカードでは、不揮発性メモリとコントローラとが別の半導体チップにそれぞれ形成されており、不揮発性メモリへのアクセス単位もたとえば、５１２バイト単位などのシーケンシャルアクセスとされている。
【００１３】
よって、メモリカードの場合、不揮発性メモリにファームオンフラッシュを格納し、コントローラによって該ファームオンフラッシュを読み出す構成では、コントローラとの動作速度が異なるために、データの読み出し、およびデータ転送速度のオーバヘッドが大きくなってしまうという問題がある。
【００１４】
本発明の目的は、複数のファームオンフラッシュを有し、ファームオンフラッシュを任意に選択することにより、プログラムの追加修正や変更などを行うことのできるメモリカードを提供することにある。
【００１５】
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【００１６】
【課題を解決するための手段】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、以下のとおりである。
【００１７】
すなわち、複数の不揮発性メモリセルを有し、所定の情報を格納可能な不揮発性半導体メモリと、外部から発行されたコマンドに基づいて不揮発性半導体メモリの動作指示を行うコントローラとからなるメモリカードであって、該不揮発性半導体メモリは、２つ以上のファームウェアを格納可能とし、該コントローラは、ファームウェアを格納する揮発性半導体メモリを備え、２つ以上のファームウェアが格納されている場合にファームウェア選択指示があると、揮発性半導体メモリに格納された２つ以上のファームウェアから、任意の１つのファームウェアを選択して揮発性半導体メモリに格納し、コントローラは揮発性半導体メモリにアクセスしてファームウェアによる処理を実行するものである。
【００１８】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。
【００１９】
図１は、本発明の一実施の形態によるメモリカードのブロック図、図２は、図１のメモリカードに設けられたフラッシュメモリにおける内部構成の説明図、図３は、図２のフラッシュメモリに設けられた管理領域おける構成説明図、図４は、図１のメモリカードによるパラメータによってファームオンフラッシュを選択する際のメモリカードのフローチャート、図５は、図１のメモリカードによるファームオンフラッシュ選択用コマンドを用いてファームオンフラッシュを選択してロードする場合のフローチャート、図６は、図１のメモリカードによるプログラム実行中にファームオンフラッシュを選択する場合のフローチャート、図７は、図１のメモリカードによる選択したファームオンフラッシュを識別コードを用いて検索するフローチャート、図８は、図１のメモリカードによる選択したファームオンフラッシュを検索範囲を指定して検索するフローチャートである。
【００２０】
本実施の形態において、メモリカード１は、デジタルビデオカメラ、携帯電話、携帯音楽プレーヤやパーソナルコンピュータなどにおけるホスト機器ＨＴの外部記憶メディアとして用いられる。
【００２１】
メモリカード１は、図１に示すように、複数個のフラッシュメモリ（不揮発性半導体メモリ）２、ならびにコントローラ３から構成される。フラッシュメモリ２は、電気的にデータの書き換え、消去が可能な不揮発性半導体メモリである。ここでは、フラッシュメモリ２が複数個設けられているが、該フラッシュメモリ２は１つ以上であればよい。
【００２２】
このフラッシュメモリ２には、内蔵ＲＯＭ６に格納されているプログラムとは別にパッチプログラムなどの機能の追加や変更、修正などを行うプログラムであるファームオンフラッシュ（ファームウェア）ＦＯＦ１〜ＦＯＦ３が格納されている。
【００２３】
なお、ここでは、３つのファームオンフラッシュＦＯＦ１〜ＦＯＦ３がフラッシュメモリ２に格納されているものとするが、該フラッシュメモリ２に格納されるファームオンフラッシュの数は、３つ以上、または３つ以下のいずれかであってもよい。
【００２４】
コントローラ３は、ホスト機器ＨＴと接続されており、フラッシュメモリ２の制御を司り、フラッシュメモリ２に格納されたプログラムやデータなどを読み出してホスト機器ＨＴへ出力し、またはホスト機器ＨＴから入力されたプログラムやデータの書き込み動作指示を行う。
【００２５】
また、コントローラ３は、コントロールロジック４、内蔵ＲＡＭ（揮発性半導体メモリ）５、内蔵ＲＯＭ６、および外部ＲＡＭ７などから構成されている。コントロールロジック４は、コントローラ３におけるすべての制御を司る。
【００２６】
内蔵ＲＡＭ５は、ＳＲＡＭ（Ｓｔａｔｉｃ  ＲＡＭ）などの揮発性メモリであり、コントロールロジック４に設けられたＣＰＵのワークエリアとして用いられる。内蔵ＲＯＭ６は、コントロールロジック４を動作させる制御プログラムなどが格納されている。外部ＲＡＭ７は、フラッシュメモリ２に格納されているファームオンフラッシュＦＯＦ１〜ＦＯＦ３のいずれか１つがロードされるメモリである。
【００２７】
図２は、フラッシュメモリ２における内部構成の説明図である。
【００２８】
フラッシュメモリ２は、ユーザアクセス領域Ａ１、およびユーザアクセス不可領域Ａ２から構成されている。
【００２９】
ユーザアクセス領域Ａ１は、ユーザが使用できるデータブロック領域Ｒ１と、該データブロック領域を管理するためのデータが格納される管理領域Ｋ１とから構成されている。
【００３０】
ユーザアクセス不可領域Ａ２は、ユーザによるアクセスが不可能な領域であり、データブロック代替領域Ｒ２、ＦＯＦ領域Ｒ３、ＣＩＳ・ＩＤ・パラメータ領域Ｒ４、ならびに代替テーブル領域Ｒ５から構成されている。
【００３１】
また、これらデータブロック代替領域Ｒ２、ＦＯＦ領域Ｒ３、ＣＩＳ・ＩＤ・パラメータ領域Ｒ４、およびに代替テーブル領域Ｒ５には、管理領域Ｋ２〜Ｋ５がそれぞれ設けられている。
【００３２】
データブロック代替領域Ｒ２は、データブロック領域において不良が発生した際に代替される領域であり、管理領域Ｋ２は、データブロック代替領域Ｒ２を管理する情報を格納する。
【００３３】
ＦＯＦ領域Ｒ３は、ファームオンフラッシュＦＯＦ１〜ＦＯＦ３が格納される領域であり、管理領域（ファームウェア管理領域）Ｋ３は、ＦＯＦ領域Ｒ３を管理する情報を格納する。
【００３４】
ＣＩＳ・ＩＤ・パラメータ領域Ｒ４は、メモリカード１のドライブ情報ＩＤ（Ｉｄｅｎｔｉｆｙ  Ｄｒｉｖｅ  Ｉｎｆｏｒｍａｔｉｏｎ）、メモリカード１の名前、種類、機能などの情報とＣＩＳ（Ｃａｒｄ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｔｒｕｃｔｕｒｅ）、および各種のパラメータなどが格納される領域であり、管理領域Ｋ４は、これらＣＩＳ・ＩＤ・パラメータ領域Ｒ４を管理する情報を格納する。代替テーブル領域Ｒ５は、エリア代替領域情報を格納する領域であり、管理領域Ｋ５は、代替テーブル領域Ｒ５を管理する情報を格納する。
【００３５】
また、管理領域Ｋ３における構成について図３の構成説明図を用いて説明する。
【００３６】
図示するように、管理領域Ｋ３には、良セクタコード、ファームオンフラッシュＮｏ．、識別コード（ファームウェア識別情報）、および管理ＥＣＣ情報などが格納されている。
【００３７】
良セクタコードは、ＦＯＦ領域Ｒ３の各セクタが正常か異常かを示すコードである。ファームオンフラッシュＮｏ．は、各々のファームオンフラッシュＦＯＦ１〜ＦＯＦ３に割り付けられた番号である。
【００３８】
識別コードは、ＦＯＦ領域Ｒ３に格納された各ファームオンフラッシュＦＯＦ１〜ＦＯＦ３のブロック（以下、ＦＯＦブロック）であることを示すコードであり、ＦＯＦブロックを検索する際に用いられる。管理ＥＣＣ情報は、データ訂正を行う際に用いられるＥＣＣ（Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｎｇ  Ｃｏｄｅ）情報である。
【００３９】
次に、本実施の形態のメモリカード１における作用について説明する。
【００４０】
始めに、パラメータによってファームオンフラッシュＦＯＦ１〜ＦＯＦ３の選択指示（ファームウェア選択指示）が行われる際のメモリカード１の動作について、図４のフローチャートを用いて説明する。
【００４１】
この場合、パラメータセクタにファームオンフラッシュＦＯＦ１〜ＦＯＦ３の選択ビットを設け、該選択ビットによって選択されたファームオンフラッシュのロードはパワーオン時などのリセットシーケンスで行われる。
【００４２】
まず、リセットシーケンスにおいて、コントローラ３のＣＰＵは、フラッシュメモリ２のＣＩＳ・ＩＤ・パラメータ領域Ｒ４から必要なパラメータセクタをリードし、外部ＲＡＭ７に格納する（ステップＳ１０１）。
【００４３】
その後、リードしたパラメータセクタから、選択するファームオンフラッシュＮｏ．を取得する（ステップＳ１０２）。そして、フラッシュメモリ２の管理領域Ｋ３における識別コードを参照し、該フラッシュメモリ２にＦＯＦ領域Ｒ３があるか否かを検索する（ステップＳ１０３）。
【００４４】
このステップＳ１０３の処理において、ＦＯＦ領域Ｒ３が存在する場合には、該ＦＯＦ領域Ｒ３内のＦＯＦブロックを検索する処理を行う（ステップＳ１０４）。
【００４５】
また、ＦＯＦ領域Ｒ３が存在しない場合、ＣＰＵは内蔵ＲＯＭ６にアクセスし、該内蔵ＲＯＭ６に格納されているプログラムに基づいてメモリカード１を動作させる。
【００４６】
次に、ファームオンフラッシュ選択用コマンドを用いて、ファームオンフラッシュの選択指示が行われる場合のメモリカード１における動作について、図５のフローチャートを用いて説明する。
【００４７】
まず、ホスト機器ＨＴなどからファームオンフラッシュ選択用コマンドを受けると、ＣＰＵは、該ファームオンフラッシュ選択用コマンドをコントロールロジック４に設けられたタスクファイルレジスタにセットする（ステップＳ２０１）。このタスクファイルレジスタは、通常のコマンドと同様に、ホスト機器ＨＴとデータをやり取りするレジスタである。
【００４８】
その後、有効にしたいファームオンフラッシュＮｏ．をタスクファイルレジスタにセットする（ステップＳ２０２）。そして、フラッシュメモリ２の管理領域Ｋ３における識別コードを参照し、該フラッシュメモリ２にＦＯＦ領域Ｒ３があるか否かを検索する（ステップＳ２０３）。
【００４９】
このステップＳ２０３の処理において、ＦＯＦ領域Ｒ３が存在する場合には、該ＦＯＦ領域Ｒ３内のＦＯＦブロックを検索する処理を行う（ステップＳ２０４）。ＦＯＦ領域Ｒ３が存在しない場合、ＣＰＵは内蔵ＲＯＭ６にアクセスし、該内蔵ＲＯＭ６に格納されているプログラムに基づいてメモリカード１を動作させる。
【００５０】
次に、プログラム実行中に任意のファームオンフラッシュを選択する選択指示の場合のメモリカード１の動作について、図６のフローチャートを用いて説明する。
【００５１】
ここでは、たとえば、ファームオンフラッシュＦＯＦ１の処理中に、ファームオンフラッシュＦＯＦ２を新たに選択して実行させる場合について記載するが、内蔵ＲＯＭ６のプログラムの処理中に、ファームオンフラッシュＦＯＦ１〜ＦＯＦ３のいずれかを新たに選択して実行させる処理についても同様である。
【００５２】
ファームオンフラッシュＦＯＦ１のファームウェアに基づいて任意の処理が実行中である場合において（ステップＳ３０１）、ＣＰＵは、割り込み処理やエラー処理の発生などによって選択されていない他のファームオンフラッシュＦＯＦ２，ＦＯＦ３のいずれかの処理が必要か否かを判断する（ステップＳ３０２）。
【００５３】
選択されていない他のファームオンフラッシュＦＯＦ２，ＦＯＦ３のいずれかの処理が必要な場合、選択するファームオンフラッシュＮｏ．を設定する（ステップＳ３０３）。
【００５４】
そして、フラッシュメモリ２の管理領域Ｋ３における識別コードを参照し、該フラッシュメモリ２にＦＯＦ領域Ｒ３があるか否かを検索する（ステップＳ３０４）。
【００５５】
このステップＳ３０４の処理において、ＦＯＦ領域Ｒ３が存在する場合には、該ＦＯＦ領域Ｒ３内のＦＯＦブロックを検索する処理を行う（ステップＳ３０５）。
【００５６】
また、ＦＯＦ領域Ｒ３が存在しない場合、ＣＰＵは内蔵ＲＯＭ６にアクセスし、該内蔵ＲＯＭ６に格納されているプログラムに基づいてメモリカード１を動作させる。
【００５７】
次に、図４〜図６においてそれぞれ選択されたファームオンフラッシュの検索処理について説明する。
【００５８】
始めに、管理領域Ｋ３の識別コードを用いて検索する処理について、図７のフローチャートを用いて説明する。
【００５９】
まず、ＣＰＵは、ＦＯＦ領域Ｒ３の先頭アドレスから管理領域Ｋ３をリードし（ステップＳ４０１）、該管理領域Ｋ３の識別コードをチェックする（ステップＳ４０２）。そして、識別コードによってＦＯＦブロックであるか否かを判別する（ステップＳ４０３）。このステップＳ４０３の処理において、チェックした識別コードがＦＯＦブロック以外のブロックコードの場合には、処理が終了となる。
【００６０】
また、ステップＳ４０３の処理でＦＯＦブロックの場合には、管理領域Ｋ３のファームオンフラッシュＮｏ．をチェックし（ステップＳ４０４）、該ファームオンフラッシュＮｏ．に基づいて、ステップＳ４０３の処理におけるＦＯＦブロックが該当するファームオンフラッシュであるか否かを判断する（ステップＳ４０５）。
【００６１】
ステップＳ４０５の処理において、該当するＦＯＦブロックでなければ、ＦＯＦブロックのアドレスをインクリメント（逆順検索する際にはデクリメント）し（ステップＳ４０６）、ステップＳ４０２〜Ｓ４０５の処理を繰り返し実行する。
【００６２】
そして、ステップＳ４０５の処理において、該当するＦＯＦブロックが検索されると、そのファームオンフラッシュのファームウェアを内蔵ＲＡＭ５にロードし（ステップＳ４０７）、該ファームウェアによる処理を行う。
【００６３】
このように、ファームオンフラッシュをランダムアクセス可能な内蔵ＲＡＭ５にロードすることにより、ＣＰＵは高速処理を実行することができる。
【００６４】
次に、検索範囲を制限してＦＯＦブロックを検索する場合について、図８のフローチャートを用いて説明する。この場合、パラメータセクタにＦＯＦブロック（ＦＯＦ領域Ｒ３）の範囲を示すアドレス値を設定する。
【００６５】
まず、ＣＩＳ・ＩＤ・パラメータ領域Ｒ４のパラメータセクタから、ＦＯＦブロックの検索範囲を取得する（ステップＳ５０１）。
【００６６】
そして、ＦＯＦ領域Ｒ３の先頭アドレスが、パラメータセクタから取得した検索範囲であるか否かを判断する（ステップＳ５０２）。検索範囲内でない場合には、処理が終了となる。
【００６７】
また、検索範囲内である場合には、管理領域Ｋ３をリードし（ステップＳ５０３）、該管理領域Ｋ３のファームオンフラッシュＮｏ．をチェックする（ステップＳ５０４）。
【００６８】
そして、チェックしたファームオンフラッシュＮｏ．から、ＦＯＦブロックが該当するファームオンフラッシュであるか否かを判断する（ステップＳ５０５）。
【００６９】
ステップＳ５０５の処理において、該当するＦＯＦブロックでなければ、ＦＯＦブロックのアドレスをインクリメント（逆順検索する際にはデクリメント）し（ステップＳ５０６）、ステップＳ５０２〜Ｓ５０５の処理を繰り返し実行する。
【００７０】
ステップＳ５０５の処理において、該当するＦＯＦブロックが検索されると、そのファームオンフラッシュのファームウェアを内蔵ＲＡＭ５にロードし（ステップＳ５０７）、該ファームウェアによる処理を行う。
【００７１】
それにより、本実施の形態によれば、フラッシュメモリ２に複数のファームオンフラッシュを設定することにより、メモリカード１の多機能化を実現することができる。
【００７２】
また、複数のファームオンフラッシュによって、内蔵ＲＯＭ６に格納されたプログラムを変更することなく、プログラムの修正、変更、追加などを容易に行うことができ、フレキシブルに対応することができる。
【００７３】
さらに、本実施の形態において、ファームオンフラッシュＦＯＦ１〜ＦＯＦ３は、たとえば、セキュア機能などを有したプログラムなどのオプション機能を有するプログラムであってもよい。
【００７４】
これにより、セキュア機能が要／不要のいずれのメモリカード１であっても、内蔵ＲＯＭ６のプログラムを共通化することができるので、製品管理のコストを大幅に低減することができる。
【００７５】
以上、本発明者によってなされた発明を発明の実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【００７６】
たとえば、前記実施の形態では、メモリカードが、予めフラッシュメモリに複数のファームオンフラッシュが格納された構成としたが、ホスト機器がアップデータプログラムなどを実行することにより、新たなファームオンフラッシュの追加や書き換えなどを行うようにしてもよい。
【００７７】
新たなファームオンフラッシュを追加する場合には、たとえば、フラッシュメモリにおけるＦＯＦ領域に予備領域を備え、該予備領域に追加するファームオンフラッシュを格納したり、あるいはデータブロック代替領域などの他の領域に追加するファームオンフラッシュを格納する。
【００７８】
それにより、よりフレキシブルに、プログラムの修正、変更、追加などに対応することができる。
【００７９】
また、前記実施の形態におけるフラッシュメモリは、ある電圧レベルのしきい値を複数設定し、１ビット以上のデータを１つの不揮発性メモリセルに記憶する多値フラッシュメモリであってもよい。
【００８０】
【発明の効果】
本願によって開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば、以下のとおりである。
【００８１】
（１）メモリカードの多機能化などを実現することができるとともに、プログラムの修正や追加などにも迅速に対応することができる。
【００８２】
（２）上記（１）により、市場変化にフレキシブルに対応することができ、かつ低コストのメモリカードを提供することができる。
【図面の簡単な説明】
【図１】本発明の一実施の形態によるメモリカードのブロック図である。
【図２】図１のメモリカードに設けられたフラッシュメモリにおける内部構成の説明図である。
【図３】図２のフラッシュメモリに設けられた管理領域おける構成説明図である。
【図４】図１のメモリカードによるパラメータによってファームオンフラッシュを選択する際のメモリカードのフローチャートである。
【図５】図１のメモリカードによるファームオンフラッシュ選択用コマンドを用いてファームオンフラッシュを選択してロードする場合のフローチャートである。
【図６】図１のメモリカードによるプログラム実行中にファームオンフラッシュを選択する場合のフローチャートである。
【図７】図１のメモリカードによる選択したファームオンフラッシュを識別コードを用いて検索するフローチャートである。
【図８】図１のメモリカードによる選択したファームオンフラッシュを検索範囲を指定して検索するフローチャートである。
【符号の説明】
１  メモリカード
２  フラッシュメモリ（不揮発性半導体メモリ）
３  コントローラ
４  コントロールロジック
５  内蔵ＲＡＭ（揮発性半導体メモリ）
６  内蔵ＲＯＭ
７  外部ＲＡＭ
ＦＯＦ１〜ＦＯＦ３  ファームオンフラッシュ（ファームウェア）
Ａ１  ユーザアクセス領域
Ａ２  ユーザアクセス不可領域
Ｒ１  データブロック領域
Ｒ２  データブロック代替領域
Ｒ３  ＦＯＦ領域
Ｒ４  ＣＩＳ・ＩＤ・パラメータ領域
Ｒ５  代替テーブル領域
Ｋ１，Ｋ２  管理領域
Ｋ３  管理領域（ファームウェア管理領域）
Ｋ４，Ｋ５  管理領域
ＨＴ  ホスト機器
【図１】
2004258946.tif 000003
【図２】
2004258946.tif 000004
【図３】
2004258946.tif 000005
【図４】
2004258946.tif 000006
【図５】
2004258946.tif 000007
【図６】
2004258946.tif 000008
【図７】
2004258946.tif 000009
【図８】
2004258946.tif 000010