(57)【要約】【課題】不揮発性メモリを内蔵したカード型記憶装置における互換性を保証しつつデータ転送の高速化を達成するための技術を提供する。【解決手段】不揮発性メモリ（１１０）を内蔵したカード型記憶装置において、データ端子（１３１，１３７〜１４３）を複数個設けるとともにインタフェース部（１２２）にはデータ端子のレベルを判別する回路（２２１）を設け、上記複数のデータ端子のすべてもしくは幾つかを電源電圧にプルアップするプルアップ抵抗（Ｒ０〜Ｒ７）を接続し、上記判別回路がプルアップ抵抗が接続されたデータ端子がオープン状態にあると判定し場合にはデータのバス幅（ビット数）を切り替えるように構成した。【選択図】  図２
2004240795.tif 000002
【特許請求の範囲】
【請求項１】
複数の外部端子とコントローラと不揮発性メモリとを有し、前記コントローラが前記複数の外部端子のいずれかから入力された制御情報に応じて、他の外部端子から入力されたデータを上記不揮発性メモリの指定した領域に格納動作制御する不揮発性記憶装置であって、
データ信号が入力される複数の外部データ端子と、これらの外部データ端子を電源電圧にプルアップするプルアップ手段と、前記外部データ端子の電位を検出するレベル検出手段と、前記複数の外部データ端子に入力されたデータ信号を選択的に取り込んで所定のバス幅のデータとして内部回路に転送するデータ転送回路とを備え、前記レベル検出手段は前記制御情報の入力時に前記複数の外部データ端子のうち所定のものの電位を検出し、前記データ転送回路は前記所定の外部データ端子の電位の組合わせに応じて前記バス幅を決定することを特徴とする不揮発性記憶装置。
【請求項２】
前記外部データ端子は８個であり、このうち前記レベル検出手段により電位が検出される外部データ端子は４個であることを特徴とする請求項１に記載の不揮発性記憶装置。
【請求項３】
前記レベル検出手段により前記４個の外部データ端子の電位がすべて所定の電位よりも高いことが検出された場合に、前記データ転送回路は前記所定の外部データ端子のいずれか１つの端子に入力されているデータ信号を取り込んで内部回路へ転送することを特徴とする請求項２に記載の不揮発性記憶装置。
【請求項４】
前記レベル検出手段により前記４個の外部データ端子の電位のうちいずれか１つが所定の電位よりも低いことが検出された場合に、前記データ転送回路は前記所定の外部データ端子のいずれか１つの端子に入力されているデータ信号を、前記４個の外部データ端子の電位がすべて所定の電位よりも高い場合よりも高速で取り込んで内部回路へ転送することを特徴とする請求項３に記載の不揮発性記憶装置。
【請求項５】
前記レベル検出手段により前記４個の外部データ端子の電位のうちいずれか他の１つが所定の電位よりも低いことが検出された場合に、前記データ転送回路は前記所定の外部データ端子以外の４個の外部データ端子に入力されているデータ信号を取り込んで内部回路へ転送することを特徴とする請求項４に記載の不揮発性記憶装置。
【請求項６】
前記レベル検出手段により前記４個の外部データ端子の電位のうちさらにいずれか他の１つが所定の電位よりも低いことが検出された場合に、前記データ転送回路は前記８個の外部データ端子のすべてに入力されているデータ信号を取り込んで内部回路へ転送することを特徴とする請求項５に記載の不揮発性記憶装置。
【請求項７】
前記８個の外部データ端子のうち１つは制御信号が入力される端子を兼用するように構成されていることを特徴とする請求項６に記載の不揮発性記憶装置。
【請求項８】
前記プルアップ手段は前記コントローラが形成されている半導体チップ上に形成されていることを特徴とする請求項１〜７のいずれかに記載の不揮発性記憶装置。
【請求項９】
前記外部データ端子より取り込まれ前記データ転送手段により転送されたデータを前記不揮発性メモリへ書き込む前に記憶する揮発性メモリをさらに有することを特徴とする請求項１〜８のいずれかに記載の不揮発性記憶装置。
【請求項１０】
前記制御情報の入力を検出して前記レベル検出回路における検出タイミングを知らせるタイミング生成回路をさらに備えることを特徴とする請求項１〜９のいずれかに記載の不揮発性記憶装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、不揮発性記憶装置に適用して有効な技術に関し、例えばフラッシュメモリのような不揮発性半導体メモリを内蔵したカード型記憶装置に利用して有効な技術に関する。
【０００２】
【従来の技術】
近年、デジタルカメラなどの携帯用電子機器のデータ記憶媒体として、電源電圧を遮断しても記憶データを保持できるフラッシュメモリなどの不揮発性メモリを内蔵したメモリカードと呼ばれるカード型記憶装置が広く利用されるようになって来ている。
【０００３】
ところで、従来のカードメモリメモリカードは、マルチメディアカード（ＭｕｌｔｉＭｅｄｉａＣａｒｄ（登録商標））に代表されるようにカードとカードを読取る装置との間でデータをシリアルに入出力する方式が一般的であった。これは、メモリカードの大きさは小さい（切手程度）ため、充分な数の外部端子を設けることが製造上困難であったことと、端子数が多いと端子間隔が狭くなりカードとカードを読取る装置との電気的接続を図るのが困難になるためである。
【０００４】
【発明が解決しようとする課題】
しかしながら、近年、製造技術の進展に伴いメモリカードに設けることが可能な端子数が増加しつつある。そこで、本発明者等は、メモリカードに設けるデータ端子数を増やしてデータをパラレルに入出力させることでデータ転送の高速化を図ることについて検討を行なった。
その結果、端子数を増加させることは可能であるが、互換性を考慮しないで単に端子数の多いメモリカードを提供したのでは、既存のカード読取り装置にカードを挿入した時にデータのリード／ライトを行なうことができないという課題があることが明らかになった。
【０００５】
この発明の目的は、不揮発性メモリを内蔵したカード型記憶装置における互換性を保証しつつデータ転送の高速化を達成することが可能な技術を提供することにある。
この発明の前記ならびにそのほかの目的と新規な特徴については、本明細書の記述および添付図面から明らかになるであろう。
【０００６】
【課題を解決するための手段】
本願において開示される発明のうち代表的なものの概要を説明すれば、下記のとおりである。
すなわち、不揮発性メモリを内蔵したカード型記憶装置において、データ端子を複数個（例えば８個）設けるとともにインタフェース部にはデータ端子のレベルを判別する回路を設け、上記複数のデータ端子のすべてもしくは幾つか（例えば４個）を電源電圧にプルアップするプルアップ抵抗を設け、プルアップ抵抗が接続されたデータ端子がオープン状態にあると上記判別回路が判定した場合にはデータ転送速度もしくはデータ転送のバス幅（並列ビット数）を切り替えるように構成したものである。
【０００７】
上記した手段によれば、既存のカード読取り装置はデータ端子を複数個有するカード型記憶装置の新たに追加されたデータ端子には信号を入力することができないため、プルアップ抵抗が接続され信号が入力されないデータ端子は電源電圧にプルアップされたままになるので、上記判別回路がデータ端子のレベルを検出することでオープン状態にあると判定することができる。この判定結果に基づいてデータ転送速度もしくはデータ転送のバス幅を決定することにより、従来の記憶装置との互換性を保証することができる。
【０００８】
また、カード読取り装置がデータ端子を複数個有する記憶装置に対応可能なものである場合には、データ転送速度を上昇もしくはデータ転送のバス幅を広げることにより単位時間内のデータの転送量を増加させて高速化を達成することができる。ここで、上記判別回路によるデータ端子のレベルの判定は、外部からコマンドが入力されたタイミングで行なうようにするのが望ましい。これにより、プルアップ抵抗が接続されたデータ端子のレベルを変化させる時間を短くして消費電力の増加を回避することができる。
【０００９】
ここで、望ましくは、外部データ端子のうち１つは制御信号が入力される端子を兼用するように構成する。これによって、所望のビット数のデータを入出力可能にするためにカード型記憶装置に設けるべき外部端子数を少なくすることができる。さらに、望ましくは、前記プルアップ抵抗は前記コントローラが形成されている半導体チップ上に形成する。これによって、実装する部品点数を減らしカード型記憶装置の実装密度を高めることができる。
【００１０】
【発明の実施の形態】
以下、本発明の好適な実施例を図面に基づいて説明する。
図１は、本発明が適用される不揮発性メモリを内蔵したメモリカードの第１の実施例を示す。
この実施例のメモリカード１００は、特に制限されないが、所定の単位でデータを電気的に一括消去することが可能なフラッシュメモリ（ＦＬＡＳＨ）１１０と、外部から供給されるコマンドに基づいて上記フラッシュメモリ１１０に対するデータの書込みや読出しを行なうコントローラ１２０とからなる。フラッシュメモリ１１０とコントローラ１２０は、それぞれ別個の半導体チップ上に半導体集積回路として形成されており、これら２つの半導体チップが図示しない基板上に実装され全体が樹脂でモールドもしくはセラミックパッケージ等に収納されてカードとして構成されている。
【００１１】
また、カードの一側には、外部の装置のカードスロットに挿入されたときに外部装置側の回路と電気的に接続され、外部の装置からメモリカード１００に対して電源を供給したり信号の入出力を行なうための外部端子群１３０が設けられ、これらの外部端子は上記基板上に形成されたプリント配線もしくはボンディングワイヤによって上記コントローラ１２０の外部端子としてのパッドに接続される。フラッシュメモリ１１０とコントローラ１２０との間はプリント配線によって接続してもよいし、コントローラ１２０の上にとフラッシュメモリ１１０とをいずれか一方の上に他方を搭載してボンディングワイヤによって接続するようにしてもよい。
【００１２】
コントローラ１２０は、データ転送などカード内部全体の制御を行なうマイクロプロセッサ（ＭＰＵ）１２１と、外部の装置との間の信号のやり取りを行なうホストインタフェース部１２２と、フラッシュメモリ１２０との間の信号のやり取りを行なうメモリインタフェース部１２３と、外部から入力されたコマンドや書込みデータ、フラッシュメモリ１１０から読み出された読出しデータを一次保持するＲＡＭ（ランダムアクセスメモリ）などからなるバッファメモリ１２４と、該バッファメモリ１２４に対するデータの書込み読出しの制御を行なうバッファ制御部１２５などから構成されている。バッファ制御部１２５には、フラッシュメモリ１１０への書込みデータに対するエラー訂正符号の生成およびエラー訂正符号に基づく読出しデータのチェックと訂正の機能を有するエラー訂正符号生成＆エラー訂正回路を設けることも可能である。
【００１３】
フラッシュメモリ１１０はフローティングゲートを有する絶縁ゲート型電界効果トランジスタからなる不揮発性メモリセルがマトリックス状に配設されたメモリアレイや、外部より入力されたアドレス信号をデコードしてメモリアレイ内の対応するワード線を選択レベルにするワードデコーダ、メモリアレイ内のビット線に接続され読み出しデータおよび書き込みデータを保持するデータラッチ、書込み消去に必要な高電圧を発生する昇圧回路などから構成されている。このフラッシュメモリ１１０は、ＭＰＵ１２１からの指示（コマンド）に従ってデータの書込み、読出しの制御を行なういわゆるフラッシュコントローラを内蔵したものであってもよいし、フラッシュコントローラを内蔵しないフラッシュメモリの場合にはフラッシュコントローラの機能をバッファ制御部１２５もしくはＭＰＵ１２１に持たせることも可能である。
【００１４】
また、フラッシュメモリ１１０は、コマンドと制御信号に基づいて動作するように構成されている。フラッシュメモリに有効なコマンドとしては、リードコマンドの他、ライトコマンド、消去コマンド等がある。さらに、フラッシュメモリ１１０へ入力される制御信号としては、チップ選択信号ＣＥやリードかライトかを示す書き込み制御信号ＷＥ、出力タイミングを与える出力制御信号ＯＥ、システムクロックＳＣ、コマンド入力かアドレス入力かを示すためのコマンドイネーブル信号ＣＤＥなどがある。これらのコマンドや制御信号は、ＭＰＵ１２１等から与えられる。
【００１５】
図１には、便宜上、従来のマルチメディアカードと呼ばれるカードメモリに設けられる外部端子を示した。本実施例のメモリカードに設けられる外部端子の詳細は、図２に示されている。これについては後で説明する。
図１に示されているように、従来のマルチメディアカード（以下、ＭＭＣと記す）と呼ばれるカードメモリに設けられる外部端子は、カードが選択状態もしくはイネーブル状態にあることを知らせるための端子１３１と、外部装置からカードに対して与えられるコマンドが入力されるコマンド端子１３２と、接地電位Ｖｓｓ１，Ｖｓｓ２を受ける２つの接地端子１３３，１３６と、電源電圧Ｖｃｃを受ける電源端子１３４と、タイミングを与えるクロック信号ＣＫを受けるクロック端子１３５と、外部装置からカードに対して与えられるライトデータが入力されるとともにカードから読み出されたリードデータをホストＣＰＵに対して出力するデータ端子１３７の７本である。このようにデータ端子が１つの場合には、データの入出力はシリアルに行なわれる。
【００１６】
一方、本実施例のメモリカードには、図２に示されているように、従来のマルチメディアカードに設けられる外部端子１３１〜１３７の他に、データを入出力するための６本の外部端子１３８〜１４３が設けられている。また、カードが選択状態もしくはイネーブル状態にあることを知らせるための端子１３１はデータの入出力端子と兼用されている。従って、本実施例のメモリカードに設けられているデータを入出力可能な外部端子は１３１と１３７と１３８〜１４３の全部で８本である。これにより、本実施例のメモリカードは、最大８ビットのデータをパラレルに入出力することが可能となる。
【００１７】
図２には、ホストインタフェース部１２２に設けられている回路のうち本発明に関連する素子と回路ブロックが示されている。
図２に示されているように、本実施例のメモリカードのデータ入出力端子１３１，１３７〜１４３には、電源電圧Ｖｃｃとの間にプルアップ抵抗Ｒ０〜Ｒ７が接続されているとともに、外部端子のレベルを検出するためのレベル検出回路２２１と、検出タイミングを与えるタイミング生成回路２２２と、レベル検出回路２２１からの制御信号に応じてデータのバス幅を切り替えてデータの転送を行なうデータ転送回路２２３とが設けられている。レベル検出回路２２１は、適当な論理しきい値を有するインバータのような論理ゲート回路もしくは参照電圧と入力電圧とを比較するコンパレータなどにより構成することができる。
【００１８】
上記レベル検出回路２２１には、プルアップ抵抗Ｒ０〜Ｒ７が接続された外部端子１３１，１３７〜１４３のうち端子１４０〜１４３の４つの端子の電位が入力されており、レベル検出回路２２１はタイミング生成回路２２２から供給される信号のタイミングで端子１４０〜１４３の電位がハイレベルかロウレベルかを検出しその状態に応じた制御信号を生成してデータ転送回路２２３へ供給する。
【００１９】
タイミング生成回路２２２は、ワンショットパルス生成回路などで構成されており、外部の装置から端子１３２へコマンドが入力されると制御パルスＣＭＤ＿ＰＵＬＳＥを生成してレベル検出回路２２１に供給する。他の外部端子１３１，１３７〜１３９に入力された信号は、データ転送回路２２３へ直接供給される。外部端子１３２に入力されたコマンドＣＭＤは、ＭＰＵ１２１へも供給される。
【００２０】
ここで、外部の装置からカードに入力されるコマンドには、例えばカードからのデータの読出しを指示するリードコマンド、カードへのデータの書込みを指示するライトコマンド、カード内部が初期状態になるように指示するリセットコマンド等がある。この実施例では、タイミング生成回路２２２は、いずれのコマンドが入力された場合にも制御パルスＣＭＤ＿ＰＵＬＳＥを生成するように構成されているが、例えばリードコマンドやライトコマンドのような所定のコマンドが入力された場合にのみ制御パルスＣＭＤ＿ＰＵＬＳＥを生成するように構成してもよい。上記プルアップ抵抗Ｒ０〜Ｒ７は外付け素子としても良いが、本実施例ではコントローラチップ１２０内に設けられている。これにより、カードの実装密度が高くなる。
【００２１】
レベル検出回路２２１は、ワンショットパルスＣＭＤ＿ＰＵＬＳＥを受けるとそのときの外部端子１４０〜１４３の電位状態に応じて、データ転送回路２２３に対してライトデータまたはリードデータを１ビット扱い（シリアルデータ転送）とするか、４ビットのデータ扱い（４ビットパラレルデータ転送）とするか、４ビット８ビットのデータ扱い（４ビットパラレルデータ８ビットパラレルデータ転送）とするか指示する制御信号を出力する。４ビットのデータの場合、データは外部端子１３１，１３７〜１３９を介して入出力され、８ビットのデータの場合、データは外部端子１３１，１３７〜１４３を介して入出力される。
【００２２】
レベル検出回路２２１からデータ転送回路２２３に供給される制御信号は、特に制限されるものでないが、本実施例では、モード選択信号ＭＤＳＬＴとバス幅を指示するイネーブル信号ＭＭＣ１ＥＮ，ＭＭＣ４ＥＮ，ＭＭＣ８ＥＮの４つとされている。
【００２３】
データ転送回路２２３は、データラッチ回路とシリアル−パラレル変換回路などで構成されており、レベル検出回路２２１からの制御信号に応じて動作する。データラッチ回路とシリアル−パラレル変換回路の代わりにデータセレクタのような回路を設けるようにしても良い。データ転送回路２２３には、ＭＰＵ１２１から入力されたコマンドに応じてデータの転送方向すなわち外部端子からのライトデータの取込みかフラッシュメモリ１１０から読み出されたリードデータの出力かを示す信号Ｗ／Ｒが供給される。
なお、データ転送回路２２３には、内部のバスの構成に応じて入力された４ビットまたは８ビットのデータを１６ビットや３２ビットのようなデータに変換してバッファ制御部１２５へ転送またはその逆の変換を行なう機能を持たせるようにしても良い。つまり、内部バスは８ビットに限定されるものでない。
【００２４】
表１には、上記外部端子１４０〜１４３の状態とレベル検出回路２２１により判定される動作モードおよびデータ転送回路２２３において設定されるデータのバス幅との関係の一例を示す。
【００２５】
【表１】
2004240795.tif 000003
【００２６】
表１に示されているように、外部端子１４０〜１４３の電位が全てハイレベルのときレベル検出回路２２１は従来タイプのＭＭＣモードと判定しデータ転送回路２２３に対して外部端子１３７のみからのデータ信号の取込みを指示する制御信号を出力する。具体的には、モード選択信号ＭＤＳＬＴをハイレベルとし、イネーブル信号ＭＭＣ１ＥＮ，ＭＭＣ４ＥＮ，ＭＭＣ８ＥＮをすべてロウレベルとする。
【００２７】
また、外部端子１４０〜１４３の電位が全てロウレベルのときレベル検出回路２２１は高速版のＭＭＣモードと判定しデータ転送回路２２３に対して外部端子１３７のみからのデータ信号の高速取込みを指示する制御信号を出力する。具体的には、モード選択信号ＭＤＳＬＴとイネーブル信号ＭＭＣ１ＥＮをハイレベルとし、イネーブル信号ＭＭＣ４ＥＮとＭＭＣ８ＥＮをロウレベルとする。
【００２８】
また、外部端子１４０〜１４３のうち端子１４２（ＤＡＴ６）の電位がハイレベルのときレベル検出回路２２１は高速版の４ビットＭＭＣモードと判定しデータ転送回路２２３に対して外部端子１３１，１３７〜１３９からの４ビットのデータ信号の並列取込みを指示する制御信号を出力する。具体的には、モード選択信号ＭＤＳＬＴとイネーブル信号ＭＭＣ４ＥＮをハイレベルとし、イネーブル信号ＭＭＣ１ＥＮとＭＭＣ８ＥＮをロウレベルとする。
【００２９】
さらに、外部端子１４０〜１４３のうち端子１４３（ＤＡＴ７）の電位がハイレベルのときレベル検出回路２２１は高速版の８ビットＭＭＣモードと判定しデータ転送回路２２３に対して外部端子１３１，１３７〜１４３からの８ビットのデータ信号の並列取込みを指示する制御信号を出力する。具体的には、モード選択信号ＭＤＳＬＴとイネーブル信号ＭＭＣ８ＥＮをハイレベルとし、イネーブル信号ＭＭＣ１ＥＮとＭＭＣ４ＥＮをロウレベルとする。
【００３０】
なお、上記表１は一例であって、外部端子１４０（ＤＡＴ４）または１４１（ＤＡＴ５）の電位がハイレベルのときにレベル検出回路２２１が高速版の８ビットＭＭＣモードまたは高速版の４ビットＭＭＣモードと判定するようにしてもよい。また、外部端子１４０（ＤＡＴ４）〜１４３（ＤＡＴ７）のうちいずれか２つまたは３つの電位がハイレベルのときにレベル検出回路２２１が高速版の８ビットＭＭＣモードまたは高速版の４ビットＭＭＣモードと判定するようにしてもよい。要するに、外部端子１４０（ＤＡＴ４）〜１４３（ＤＡＴ７）の電位の組合わせとモードとの関係は、従来タイプのＭＭＣモードを除き自由に設定することができる。
【００３１】
次に、上記のように構成された第１の実施例のメモリカードの動作を、図３〜図６のタイミングチャートを用いて説明する。
メモリカードが外部装置のカードスロットに挿入され、外部装置からカードの外部端子１３２にコマンドが入力されると、図３に示すように、制御パルスＣＭＤ＿ＰＵＬＳＥが生成される（タイミングｔ１）。メモリカードが挿入された外部装置のカードスロットが、図１に示されているように７本の外部端子しか有しない従来タイプのＭＭＣに対応した装置である場合、外部端子１３８〜１４３は未接続にされるため、プルアップ抵抗Ｒ１〜Ｒ７によってハイレベル（電源電圧Ｖｃｃ）の状態にされる。
【００３２】
そのため、レベル検出回路２２１は、外部端子１４０〜１４３の電位が全てハイレベルであることを検出し、接続された装置が従来タイプのＭＭＣ対応の外部装置であると判定してデータ転送回路２２３に対して供給される信号ＭＤＳＬＴとＭＭＣ１ＥＮ〜ＭＭＣ８ＥＮのうちＭＤＳＬＴのみがロウレベルからハイレベルに変化される（図３のタイミングｔ２）。
【００３３】
そして、接続された外部装置から入力されたコマンドがライトコマンドの場合、これを受けてデータ転送回路２２３は外部端子１３７からシリアルに入力されるデータ（ＤＡＴ０）の取込みを開始する（タイミングｔ３）。また、接続された外部装置から入力されたコマンドがリードコマンドであった場合、フラッシュメモリ１１０から読み出されたデータをシリアルデータとして端子１３１へ出力させる。このとき、データの入出力は外部端子１３５に入力されているクロック信号ＣＬＫに基づいて行なわれる。
【００３４】
次に、メモリカードが挿入された外部装置のスロットが、従来タイプのＭＭＣに設けられている７本の外部端子の他に外部端子１３８〜１４３を有するカードに対応したものであり、外部装置から外部端子１４０〜１４３のすべてにロウレベルの電位が入力された状態でコマンドが入力されると、レベル検出回路２２１は、外部端子１４０〜１４３の電位がロウレベルであることを検出し、高速版ＭＭＣ対応の外部装置であると判定してデータ転送回路２２３に対して供給される信号ＭＤＳＬＴとＭＭＣ１ＥＮ〜ＭＭＣ８ＥＮのうちＭＤＳＬＴとＭＭＣ１ＥＮがロウレベルからハイレベルに変化される（図４のタイミングｔ１２）。
【００３５】
これを受けてデータ転送回路２２３は外部端子１３７からシリアルに入力されるデータ（ＤＡＴ０）の取込みまたは出力を開始する（タイミングｔ１３）。このときのデータ取込みまたは出力は、図３と図４の期間Ｔ１を参照すると分かるように、従来タイプのＭＭＣのデータ取込みまたは出力よりも高速で行なわれる。
【００３６】
次に、メモリカードが挿入された外部装置のスロットが、従来タイプのカードに設けられている７本の外部端子の他に外部端子１３８〜１４３を有するカードに対応したものであり、外部装置から外部端子１４０〜１４３のうち１４０と１４１，１４３にロウレベルの電位を入力してきた場合、プルアップ抵抗Ｒ６によって端子１４２の電位のみがハイレベル（電源電圧Ｖｃｃ）の状態にされる。
【００３７】
この状態で外部装置からコマンドが入力されると、レベル検出回路２２１は、外部端子１４２の電位がハイレベルで、外部端子１４０と１４１，１４３の電位がロウレベルであることを検出し、高速版４ビットＭＭＣ対応の外部装置であると判定してデータ転送回路２２３に対して供給される信号ＭＤＳＬＴとＭＭＣ１ＥＮ〜ＭＭＣ８ＥＮのうちＭＤＳＬＴとＭＭＣ４ＥＮがロウレベルからハイレベルに変化される（図５のタイミングｔ２２）。
【００３８】
そして、接続された外部装置から入力されたコマンドがライトコマンドの場合、これを受けてデータ転送回路２２３は外部端子１３１と１３７〜１３９から４ビットのパラレルデータの取込みを開始する（タイミングｔ２３）。また、入力されたコマンドがリードコマンドであった場合、フラッシュメモリ１１０から読み出されたデータは４ビットのパラレルデータとして端子１３１および１３７〜１３９へ出力される。
【００３９】
次に、メモリカードが挿入された外部装置のスロットが、従来タイプのカードに設けられている７本の外部端子の他に外部端子１３８〜１４３を有するカードに対応したものであり、外部装置から外部端子１４０〜１４３のうち１４０〜１４２にロウレベルの電位を入力してきた場合、プルアップ抵抗Ｒ７によって端子１４３の電位のみがハイレベル（電源電圧Ｖｃｃ）の状態にされる。
【００４０】
この状態で外部装置からコマンドが入力されると、レベル検出回路２２１は、外部端子１４３の電位がハイレベルで、外部端子１４０と１４１，１４２の電位がロウレベルであることを検出し、高速版８ビットＭＭＣ対応の外部装置であると判定してデータ転送回路２２３に対して供給される信号ＭＤＳＬＴとＭＭＣ１ＥＮ〜ＭＭＣ８ＥＮのうちＭＤＳＬＴとＭＭＣ８ＥＮがロウレベルからハイレベルに変化される（図６のタイミングｔ３２）。
【００４１】
そして、接続された外部装置から入力されたコマンドがライトコマンドの場合、これを受けてデータ転送回路２２３は外部端子１３１と１３７〜１４３から８ビットのパラレルデータの取込みを開始する（タイミングｔ３３）。また、入力されたコマンドがリードコマンドであった場合、フラッシュメモリ１１０から読み出されたデータは８ビットのパラレルデータとして端子１３１および１３７〜１４３へ出力される。
【００４２】
次に、本発明に係るメモリカードの第２の実施例について、図７および図８を用いて説明する。
第２の実施例と第１の実施例の相違は、第１の実施例ではレベル検出回路２２１が４つの外部端子１４０〜１４３の状態から動作モードを判定するのに対し、第２の実施例ではレベル検出回路２２１が８つの外部端子１３１および１３７〜１４３の状態から動作モードを判定する点にある。そのため、第２の実施例では、外部端子１４０〜１４３の電位のほかに外部端子１３１および１３７〜１３９の電位もレベル検出回路２２１に入力されるように構成されている。また、これらの端子の状態に応じてレベル検出回路２２１からはいずれの端子の入力を有効とするか示す８種類の信号ＤＡＴ７ＥＮ〜ＤＡＴ０ＥＮを生成してデータ転送回路２２３へ供給するように構成されている。
【００４３】
これによって、この第２の実施例のメモリカードでは、シリアルデータ転送、４ビットパラレル転送および８ビットパラレル転送の他に、２ビットパラレル転送や３ビットパラレル転送、６ビットパラレル転送など任意のビット数のデータ転送が可能であるとともに、データを入出力する端子も端子１３１および１３７〜１４３の中から任意に決定することができるという利点がある。
【００４４】
図８は、上記のように構成された第２の実施例のメモリカードの端子１３１および１３７〜１３９の電位がロウレベルにされ、端子１４０〜１４３がハイレベルにされたときの動作のタイミングを示す。この実施例においても、レベル検出回路２２１による外部装置のタイプの判定は、コマンドが入力されたときの外部端子１３１および１３７〜１４３の電位の状態を検出することで行なわれる。
【００４５】
図８に示されているように、コマンドが入力されたときの外部端子１３１および１３７〜１４３の電位ＤＡＴ０〜ＤＡＴ７のうちＤＡＴ０〜ＤＡＴ３がロウレベルでＤＡＴ４〜ＤＡＴ７の電位がハイレベルの場合、レベル検出回路２２１はデータ転送回路２２３に対する信号ＤＡＴ７ＥＮ〜ＤＡＴ０ＥＮのうちＤＡＴ３ＥＮ〜ＤＡＴ０ＥＮのみを有効レベル（例えばハイベル）に変化させて、端子１３１および１３７〜１３９のデータＤＡＴ０〜ＤＡＴ３は有効であり、端子１４０〜１４３のデータＤＡＴ４〜ＤＡＴ７は無効であることをデータ転送回路２２３に知らせる。
【００４６】
すると、データ転送回路２２３は、入力されたコマンドがライトコマンドであった場合、データＤＡＴ０〜ＤＡＴ３のみ取り込んでバッファ制御部１２３へ転送する。また、入力されたコマンドがリードコマンドであった場合、フラッシュメモリ１１０から読み出されたデータは４ビットのパラレルデータとして端子１３１および１３７〜１３９へ出力される。
【００４７】
以上本発明者によってなされた発明を実施例に基づき具体的に説明したが、本発明は上記実施例に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば実施例では、マルチメディアカード（ＭＭＣ）に適用した場合を説明したが、同様の仕様を有し例えば音楽コンテンツのような著作物の不正コピーを防止するためのセキュリティを向上させたＳＭＣ（Ｓｅｃｕｒｅ  Ｍｏｂｉｌｅ  Ｃａｒｄ）と呼ばれるメモリカードや他の規格のメモリカードに対しても本発明を適用することができる。また、コントローラチップ１２０の構成は図１のものに限定されるものでなく、例えばバッファメモリ１２４およびバッファ制御部１２５を有していなくてもよい。
【００４８】
以上の説明では主として本発明者によってなされた発明をその背景となった利用分野であるフラッシュメモリを内蔵したメモリカードに適用した場合について説明したが、この発明はそれに限定されるものでなく、ＥＥＰＲＯＭチップその他の不揮発性メモリチップを内蔵したメモリカードあるいは複数の不揮発性メモリとコントロールＬＳＩをプリント配線基板上に搭載してなるメモリモジュールなどにも利用することができる。
【００４９】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
すなわち、本発明に従うと、不揮発性メモリを内蔵したカード型記憶装置の互換性を保証しつつデータ転送の高速化を達成することができるという効果がある。
【図面の簡単な説明】
【図１】本発明が適用される不揮発性メモリを内蔵したメモリカードの構成例を示すブロック図である。
【図２】図１のメモリカードのホストインタフェース部の第１の実施例を示すブロック図である。
【図３】カードが挿入された装置が従来タイプのＭＭＣに対応した装置である場合における第１の実施例のメモリカードのホストインタフェース部の動作を示すタイミングチャートである。
【図４】カードが挿入された装置が高速版シリアルＭＭＣに対応した装置である場合における第１の実施例のメモリカードのホストインタフェース部の動作を示すタイミングチャートである。
【図５】カードが挿入された装置が高速版４ビットＭＭＣに対応した装置である場合における第１の実施例のメモリカードのホストインタフェース部の動作を示すタイミングチャートである。
【図６】カードが挿入された装置が高速版８ビットのＭＭＣに対応した装置である場合における第１の実施例のメモリカードのホストインタフェース部の動作を示すタイミングチャートである。
【図７】本発明を適用したメモリカードのホストインタフェース部の第２の実施例を示すブロック図である。
【図８】カードが挿入された装置が高速版４ビットＭＭＣに対応した装置である場合における第２の実施例のメモリカードのホストインタフェース部の動作を示すタイミングチャートである。
【符号の説明】
１００  メモリカード
１１０  フラッシュメモリ
１２０  コントローラ
１２１  マイクロプロセッサ（ＭＰＵ）
１２２  ホストインタフェース部
１２３  メモリインタフェース部
１２４  バッファメモリ
１２５  バッファ制御部
１３０  外部端子群
１３１〜１４３  外部端子
２２１  レベル検出回路
２２２  タイミング生成回路
２２３  データ転送回路
Ｒ０〜Ｒ７  プルアップ抵抗
【図１】
2004240795.tif 000004
【図２】
2004240795.tif 000005
【図３】
2004240795.tif 000006
【図４】
2004240795.tif 000007
【図５】
2004240795.tif 000008
【図６】
2004240795.tif 000009
【図７】
2004240795.tif 000010
【図８】
2004240795.tif 000011