(57)【要約】【課題】ＥＤＯ出力モードを持つ不揮発性メモリの制御に好適なコントローラを備えた記憶装置を提供する。【解決手段】コントローラ（４２）は不揮発性メモリ（１）にリード制御信号（／ＲＥ）に応答してデータを出力させる出力動作モードとしてＥＤＯ出力モードとノーマル出力モードとを設定可能である。コントローラは、ＥＤＯ出力モードを設定した不揮発性メモリがリード制御信号の周期毎に出力する異なるアドレスのデータをリード制御信号の一周期遅れの出力タイミングに同期して取り込む。コントローラはノーマル出力モードを指定した不揮発性メモリがリード制御信号の周期毎にその第１の変化に応答して出力する所定のアドレスのデータを同一周期におけるリード制御信号の第２の変化に同期して取り込む。コントローラはＥＤＯ出力モードへの対応と非対応の双方の不揮発性メモリに利用可能になる。【選択図】図１
2007115382.tif 000002
【特許請求の範囲】
【請求項１】
電気的に書換え可能な不揮発性メモリ部、前記不揮発性メモリ部との間でデータの入出力を行うことが可能なデータバッファ部、前記データバッファ部と外部との間でデータを入出力することが可能な外部インタフェース部、及び制御部を有し、
前記制御部は、外部から入力されるリード制御信号に応答して前記データバッファ部が保有するデータを前記外部インタフェース部から外部に出力する出力動作モードとして外部より第１出力動作モードと第２出力動作モードとが設定可能にされ、
前記第１出力動作モードが設定された前記制御部は、前記リード制御信号の周期毎に異なるアドレスのデータを前記外部インタフェース部から外部に出力させる出力動作を開始させ、一つのアドレスのデータ出力動作を当該周期の開始から次の周期の開始まで維持させ、
前記第２出力動作モードが設定された前記制御部は、前記リード制御信号の周期毎に、その第１の変化に応答して所定のアドレスのデータを前記外部インタフェース部から外部に出力させる出力動作を開始させ、その第２の変化に応答して前記外部インタフェース部のデータ出力を高出力インピーダンス状態に変化させる半導体集積回路。
【請求項２】
前記制御部は、外部から第１リード系コマンドが入力されることによって前記第１出力動作モードが設定され、外部から第２リード系コマンドが入力されることによって前記第２出力動作モードが設定される請求項１記載の半導体集積回路。
【請求項３】
前記第１リード系コマンドは、アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力される第１コマンドであり、
前記第２リード系コマンドは、アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力される第２コマンドである請求項２記載の半導体集積回路。
【請求項４】
前記第２リード系コマンドは、半導体集積回路のＩＤ情報の読出しを指示するＩＤリードコマンドである請求項３記載の半導体集積回路。
【請求項５】
前記制御部は、前記第１出力動作モードが設定されているとき、前記第１リード系コマンド以外のコマンドが入力されることによって第１出力動作モードを解除して第２出力動作モードを設定する請求項２記載の半導体集積回路。
【請求項６】
前記制御部は、前記第１出力動作モードが設定されているとき、外部から入力されるチップイネーブル信号がディスエーブルにされることによって前記第１出力動作モードを解除して前記第２出力動作モードを設定する請求項１記載の半導体集積回路。
【請求項７】
前記制御部はパワーオンに応答して前記出力動作モードを前記第２出力動作モードに初期設定する請求項１記載の半導体集積回路。
【請求項８】
不揮発性メモリとコントローラとを有する記憶装置であって、
前記コントローラは外部からの指示に従って前記不揮発性メモリのアクセス制御と外部インタフェース制御を行い、
前記不揮発性メモリは、前記コントローラから入力されるリード制御信号に応答してデータを前記コントローラに出力する出力動作モードとして第１出力動作モードと第２出力動作モードとを有し、
前記第１出力動作モードが指定された前記不揮発性メモリは、前記リード制御信号の周期毎に異なるアドレスのデータを前記メモリコントローラに出力させる出力動作を開始し、一つのアドレスのデータ出力動作を当該周期の開始から次の周期の開始まで維持し、
前記第２出力動作モードが指定された前記不揮発性メモリは、前記リード制御信号の周期毎に、その第１の変化に応答して所定のアドレスのデータを前記コントローラに出力させる出力動作を開始し、その第２の変化に応答してデータ出力を高出力インピーダンス状態にする記憶装置。
【請求項９】
不揮発性メモリとコントローラとを有する記憶装置であって、
前記コントローラは外部インタフェース制御と外部からの指示に応答する前記不揮発性メモリのアクセス制御とを行い、
前記コントローラは、前記不揮発性メモリにリード制御信号に応答してデータを出力させる出力動作モードとして第１出力動作モードと第２出力動作モードとを設定可能であり、
前記コントローラは、前記第１出力動作モードを設定した前記不揮発性メモリが前記リード制御信号の周期毎に出力する異なるアドレスのデータを前記リード制御信号の一周期遅れの出力タイミングに同期して取り込み、
前記コントローラは、前記第２出力動作モードを指定した前記不揮発性メモリが前記リード制御信号の周期毎にその第１の変化に応答して出力する所定のアドレスのデータを同一周期におけるリード制御信号の第２の変化に同期して取り込む記憶装置。
【請求項１０】
前記第１出力動作モードが設定された前記不揮発性メモリは、前記リード制御信号の周期毎に異なるアドレスのデータを前記メモリコントローラに出力させる出力動作を開始し、一つのアドレスのデータ出力動作を当該周期の開始から次の周期の開始まで維持し、
前記第２出力動作モードが指定された前記不揮発性メモリは、前記リード制御信号の周期毎に、その第１の変化に応答して所定のアドレスのデータを前記コントローラに出力させる出力動作を開始し、その第２の変化に応答してデータ出力を高出力インピーダンス状態にする請求項９記載の記憶装置。
【請求項１１】
前記コントローラは、前記不揮発性メモリに第１リード系コマンドを出力することによって前記第１出力動作モードを設定し、前記不揮発性メモリに第２リード系コマンドを出力することによって前記第２出力動作モードを設定する請求項９記載の記憶装置。
【請求項１２】
前記第１リード系コマンドは、アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力される第１コマンドであり、
前記第２リード系コマンドは、アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力される第２コマンドである請求項１１記載の記憶装置。
【請求項１３】
前記第２リード系コマンドは、前記不揮発性メモリのＩＤ情報の読出しを指示するＩＤリードコマンドである請求項１２記載の記憶装置。
【請求項１４】
前記コントローラは、前記第１出力動作モードを設定した後、前記不揮発性メモリに前記第１リード系コマンド以外のコマンドを出力することによって前記第１出力動作モードを解除して前記第２出力動作モードを設定する請求項９記載の記憶装置。
【請求項１５】
前記コントローラは、前記第１出力動作モードを設定した後、前記不揮発性メモリに出力するチップイネーブル信号をディスエーブルにすることによって前記第１出力動作モードを解除して前記第２出力動作モードを設定する請求項９記載の記憶装置。
【請求項１６】
前記不揮発性メモリはパワーオンに応答して前記第２出力動作モードに初期化される請求項９記載の記憶装置。
【請求項１７】
不揮発性メモリとコントローラとを有する記憶装置であって、
前記コントローラは外部インタフェース制御と外部からの要求に従った前記不揮発性メモリのアクセス制御とを行い、
前記コントローラは、前記不揮発性メモリにリード制御信号に応答してデータを出力させる出力動作モードとして第１出力動作モードと第２出力動作モードとを設定可能であり、
前記コントローラは前記不揮発性メモリが前記第１出力動作モードと前記第２出力動作モードとに対応するかを判定し、外部からの読出し要求に応答するのに前記第１出力動作モードを設定するか前記第２出力動作モードを設定するかを判定し、
前記コントローラは、前記第１出力動作モードを設定した前記不揮発性メモリが前記リード制御信号の周期毎に出力する異なるアドレスのデータを前記リード制御信号の一周期遅れの出力タイミングに同期して取り込み、
前記コントローラは、前記第２出力動作モードを指定した前記不揮発性メモリが前記リード制御信号の周期毎にその第１の変化に応答して出力する所定のアドレスのデータを同一周期におけるリード制御信号の第２の変化に同期して取り込む記憶装置。
【請求項１８】
第１出力動作モードに対応する前記不揮発性メモリは、前記第１出力動作モードが設定されると、前記リード制御信号の周期毎に、異なるアドレスのデータを前記メモリコントローラに出力させる出力動作を開始し、一つのアドレスのデータ出力動作を当該周期の開始から次の周期の開始まで維持し、
第２出力動作モードに対応する前記不揮発性メモリは、前記第２出力動作モードが指定されると、前記リード制御信号の周期毎に、その第１の変化に応答して所定のアドレスのデータを前記コントローラに出力させる出力動作を開始させ、その第２の変化に応答してデータ出力を高出力インピーダンス状態にする請求項１７記載の記憶装置。
【請求項１９】
前記不揮発性メモリはパワーオンにより前記第２出力動作モードに初期化され、
前記コントローラは、前記不揮発性メモリが前記第１出力動作モードと前記第２出力動作モードとに対応するかを、前記第２出力動作モードに初期化された前記不揮発性メモリから読み取ったＩＤ情報を参照して判定する請求項１７記載の記憶装置。
【請求項２０】
前記コントローラは、外部からの読出し要求に対して前記第１出力動作モードを設定するか前記第２出力動作モードを設定するかを、外部から直接又は間接に前記第１出力動作モードの設定が要求されているか、前記不揮発性メモリが前記第１出力動作モードに対応しているか、並びに前記リード制御信号の周波数が前記第１出力動作モードによる読出し動作に適合する動作速度であるか、に基づいて判定する請求項１９記載の記憶装置。
【請求項２１】
前記コントローラは外部からのアクセス要求速度が所定速度以上であることを以って前記第１出力動作モードの指定を間接に要求していると判定する請求項２０記載の記憶装置。
【請求項２２】
前記コントローラは、前記不揮発性メモリに第１リード系コマンドを出力することによって前記第１出力動作モードを設定し、前記不揮発性メモリに第２リード系コマンドを出力することによって前記第２出力動作モードを設定する請求項１７記載の記憶装置。
【請求項２３】
前記第１リード系コマンドは、アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力される第１コマンドであり、
前記第２リード系コマンドは、アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力される第２コマンドである請求項２２記載の記憶装置。
【請求項２４】
前記第２リード系コマンドは、前記不揮発性メモリのＩＤ情報の読出しを指示するＩＤリードコマンドである請求項２２記載の記憶装置。
【請求項２５】
前記コントローラは、前記第１出力動作モードを設定した後、前記第１リード系コマンド以外のコマンドを不揮発性メモリに出力することによって前記第１出力動作モードを解除して前記第２出力動作モードを設定する請求項１７記載の記憶装置。
【請求項２６】
前記コントローラは、前記第１出力動作モードを設定した後、前記不揮発性メモリに出力するチップイネーブル信号をディスエーブルにすることによって前記第１出力動作モードを解除して前記第２出力動作モードを設定する請求項１７記載の記憶装置。
【請求項２７】
不揮発性メモリのアクセス制御とホストとのインタフェース制御を行うメモリカードコントローラの動作を制御するための制御プログラムであって、中央処理装置が実行することによって、
パワーオンにより、不揮発性メモリが保有するＩＤ情報を参照する第１処理と、
参照したＩＤ情報に基づいて、リード制御信号に応答させて前記不揮発性メモリからデータを出力させる出力動作モードとして前記不揮発性メモリが第１出力動作モードと第２出力動作モードとに対応するかを判定する第２処理と、
ホストからの読出し要求に対して前記不揮発性メモリに前記第１出力動作モードを設定するか第２出力動作モードを設定するかを判定する第３処理と、
第１出力動作モードに対応する前記不揮発性メモリに対して当該第１出力動作モードを設定することにより、当該不揮発性メモリが前記リード制御信号の周期毎に出力する異なるアドレスのデータを前記リード制御信号の一周期遅れの出力タイミングに同期して取り込む第４処理と、
第２出力動作モードに対応する前記不揮発性メモリに対して前記第２出力動作モードを設定することにより、当該不揮発性メモリが前記リード制御信号の周期毎にその第１の変化に応答して出力する所定のアドレスのデータを同一周期におけるリード制御信号の第２の変化に同期して取り込む第５処理と、を制御する制御プログラム。
【請求項２８】
前記中央処理装置が実行することによって制御する前記第３処理は、外部から直接又は間接に第１出力動作モードの指定が要求されているか、前記不揮発性メモリが前記第１出力動作モードに対応しているか、並びに前記リード制御信号の周波数が前記第１出力動作モードによる読出し動作に適合する動作速度であるか、に基づいて判定する処理である請求項２７記載の制御プログラム。
【請求項２９】
前記中央処理装置が実行することによって制御する前記第３処理において、外部からのアクセス要求速度が所定速度以上であることを以って前記第１出力動作モードの指定を間接に要求していると判定する請求項２８記載の制御プログラム。
【請求項３０】
前記中央処理装置が実行することによって制御する前記第４処理において、前記不揮発性メモリに第１リード系コマンドを出力することによって前記第１出力動作モードを設定し、
前記中央処理装置が実行することによって制御する前記第５処理において、前記不揮発性メモリに第２リード系コマンドを出力することによって前記第２出力動作モードを設定する請求項２７記載の制御プログラム。
【請求項３１】
前記第１リード系コマンドは、アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力される第１コマンドであり、
前記第２リード系コマンドは、アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力される第２コマンドである請求項３０記載の制御プログラム。
【請求項３２】
前記中央処理装置が実行することによって制御する第６処理を更に含み、前記第６処理は、前記第１出力動作モードを指定した後、前記第１リード系コマンド以外のコマンドを不揮発性メモリに出力することによって前記第１出力動作モードを解除して前記第２出力動作モードを設定請求項２７記載の制御プログラム。
【請求項３３】
前記中央処理装置が実行することによって制御する第７処理を更に含み、前記第７処理は、前記第１出力動作モードを指定した後、前記不揮発性メモリに出力するチップイネーブル信号をディスエーブルにすることによって前記第１出力動作モードを解除して前記第２出力動作モードを設定する請求項２７記載の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電気的に書換え可能な不揮発性メモリにおけるＥＤＯ（Extended Data Out）技術に関し、例えばフラッシュメモリ等の半導体集積回路、フラッシュメモリカード等の記憶装置、更にはフラッシュメモリコントローラ用ドライバソフトウェア等の制御プログラムに適用して有効な技術に関する。
【背景技術】
【０００２】
特許文献１には非同期式メモリデバイスのＥＤＯ制御において、開始アドレスから終了アドレスまでのアクセスの終了をアドレスコンパレータで検出したとき、出力回路を高インピーダンス状態に制御する技術が記載される。このＥＤＯ制御対象とする非同期式メモリデバイスとしてＮＡＮＤ型フラッシュメモリ等が挙げられている。
【０００３】
【特許文献１】特開２００３−２７２３９４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明者はメモリカードにおけるデータ入出力の高速化への対応について検討した。例えばＭＭＣ（マルチメディアカード；登録商標）カード仕様におけるデータの最大転送速度は２．５メガバイト（ＭＢ）／秒（ｓｅｃ）、ＣＦ（コンパクトフラッシュ；登録商標）カード仕様におけるデータの最大転送速度は１６．７ＭＢ／ｓｅｃｄである。これに対し、ＭＭＣ４．０カード仕様におけるデータの最大転送速度は５２メガバイトＭＢ／ｓｅｃ、ＵＳＢ（ユニバーサルシリアルバス）２．０仕様におけるデータの最大転送速度は６０メガバイトＭＢ／ｓｅｃとされる。フラッシュメモリカードに使用されるフラッシュメモリにおいてデータ出力動作はリードイネーブル信号のパルス変化に同期して行われる。このときフラッシュメモリは、カードコントローラから出力されるリードイネーブル信号のフォールエッジに同期して出力動作を開始し、ライズエッジに同期して高出力インピーダンスに制御する。この出力動作では、前記フォールエッジからｔＲＥＡのようなアクセスタイムを経過した後、前記ライズエッジからｔＯＨのようなホールドタイムを過ぎるまで出力データの有効性を保証する。従ってカードコントローラは複数のアドレス出力データをリードイネーブル信号のライズエッジに同期して取り込むことになる。これによればデータ出力動作を高速化するにはリードイネーブル信号のクロック周波数を高くしなければならない。しかしながらアクセスタイムとホールドタイムを確保するという点においてリードイネーブル信号の周波数を高くするには限界がある。
【０００５】
そこで発明者はＥＤＯ制御による出力動作を検討した。即ち、前記リードイネーブル信号の周期毎に異なるアドレスのデータ出力動作を開始させ、一つのアドレスのデータ出力動作を当該周期の開始から次の周期の開始まで維持させる方式である。このＥＤＯ制御ではリードイネーブル信号の次のサイクルの開始まで前のサイクルのデータ出力を維持するから、リードイネーブル信号のサイクルの開始時点より前記アクセスタイムｔＲＥＡを規定し、リードイネーブル信号の次のサイクルの開始時点より当該出力サイクルの前記ホールドタイムｔOHを規定すればよくなる。これにより、前者の出力方式に比べて出力動作速度を大凡２倍に高速化することができる。
【０００６】
しかしながら、フラッシュメモリに単にＥＤＯ出力方式を採用するだけではメモリカードへの適用という点において不十分であることが本発明者によって見出された。旧来のメモリコントローラ若しくはカードコントローラとの互換性を考慮すると、全ての出力動作をＥＤＯ方式にするのは不都合である。ホストとの間のデータ転送は高速化することが望ましいが、カードコントローラとフラッシュメモリとの間のステータスリードのような動作については高速化よりも動作の確実性を優先させることが得策と考えられるからである。また、ＥＤＯ出力モード対応のカードコントローラはＥＤＯ出力モード非対応のフラッシュメモリにも対応しなければならない。ＥＤＯ方式の場合には出力データはリードイネーブル信号の次のサイクルで取り込み可能になることを考慮しなければならない。また出力を高インピーダンスにしないので、複数のフラッシュメモリのデータ出力端子をバスに共通接続し相互に排他的に出力動作させる場合にはデータコンフリクトを生じないようにする考慮が必要になる。それらを考慮してＥＤＯモードを容易に解除できるようにすることも必要である。
【０００７】
本発明の目的は電気的に書換え可能な不揮発性メモリをＥＤＯ出力モードに対応させることにある。
【０００８】
本発明の別の目的はＥＤＯ出力モードを持つ不揮発性メモリの制御に好適なコントローラを備えた記憶装置を提供することにある。
【０００９】
本発明の更に別の目的はＥＤＯ出力モードを持つ不揮発性メモリの制御に好適なコントローラのためのドライバソフトウェア等の制御プログラムを提供することにある。
【００１０】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１１】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【００１２】
〔１〕《不揮発性メモリのＥＤＯ出力モードへの対応》
本発明に係る半導体集積回路（１）は、電気的に書換え可能な不揮発性メモリ部（２）、前記不揮発性メモリ部との間でデータの入出力を行うことが可能なデータバッファ部（３）、前記データバッファ部と外部との間でデータを入出力することが可能な外部インタフェース部（４）、及び制御部（５）を有する。前記制御部は、外部から入力されるリード制御信号（／ＲＥ）に応答して前記データバッファ部が保有するデータを前記外部インタフェース部から外部に出力する出力動作モードとして外部より第１出力動作モード（ＥＤＯ出力モード）と第２出力動作モード（ノーマル出力モード）とが設定可能にされる。前記第１出力動作モードが設定された前記制御部は、前記リード制御信号の周期毎に異なるアドレスのデータを外部インタフェース部から外部に出力させる出力動作を開始させ、一つのアドレスのデータ出力動作を当該周期の開始から次の周期の開始まで維持させる。前記第１出力動作モードは所謂ＥＤＯ出力モードである。前記第２出力動作モードが設定された前記制御部は、前記リード制御信号の周期毎に、その第１の変化に応答して所定のアドレスのデータを外部インタフェース部から外部に出力させる出力動作を開始させ、その第２の変化に応答して外部インタフェース部のデータ出力を高出力インピーダンス状態に変化させる。
【００１３】
第１出力動作モードによるＥＤＯ出力動作だけでなく第２出力動作モードによる高出力インピーダンス制御可能な出力動作も選択することが可能になる。
【００１４】
本発明の一つの具体的な形態として、前記制御部は、外部から第１リード系コマンドが入力されることによって前記第１出力動作モードが設定され、外部から第２リード系コマンドが入力されることによって前記第２出力動作モードが設定される。コマンド種別によってＥＤＯ出力動作と高出力インピーダンス制御可能な出力動作を容易に使い分けることが可能になる。
【００１５】
更に具体的な形態として、前記第１リード系コマンドは、アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力される第１コマンドであり、前記第２リード系コマンドは、アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力される第２コマンドである。アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力されるコマンドの種別によってＥＤＯ出力動作と高出力インピーダンス制御可能な出力動作を使い分けることができるので、何れの場合にもコマンドシーケンスが殆ど同じになり、双方に対する制御ロジックの簡素化に資することができる。
【００１６】
更に具体的な形態として、前記第２リード系コマンドは、半導体集積回路のＩＤ情報の読出しを指示するＩＤリードコマンドである。ＩＤ情報は半導体集積回路に対する制御形態を決定するために必須の情報であることが多く、情報の取りこぼしを回避する上において得策となる。半導体集積回路のＩＤ情報はパワーオンに応答して読み出されることが多い。これを考慮すると、前記制御部はパワーオンに応答して前記出力動作モードを第２出力動作モードに初期設定してもよい。
【００１７】
本発明の別の一つの具体的な形態として、前記制御部は、前記第１出力動作モードが設定されているとき、前記第１リード系コマンド以外のコマンドが入力されることによって第１出力動作モードを解除して第２出力動作モードを設定する。また、本発明の別の一つの具体的な形態として、前記制御部は、前記第１出力動作モードが設定されているとき、外部から入力されるチップイネーブル信号がディスエーブルにされることによって第１出力動作モードを解除して第２出力動作モードを設定する。出力が高インピーダンス状態にされないＥＤＯ出力モードの解除を容易に行うことができる。ホストとの間のデータ転送は高速化することが望ましいが、カードコントローラとフラッシュメモリとの間のステータスリードのような動作については高速化よりも動作の確実性を優先させることが得策と考えられるからである。
【００１８】
〔２〕《ＥＤＯ対応不揮発性メモリを持つメモリカード》
本発明に係る記憶装置は、不揮発性メモリとコントローラとを有する。前記コントローラは外部からの指示に従って前記不揮発性メモリのアクセス制御と外部インタフェース制御を行う。前記不揮発性メモリは、前記コントローラから入力されるリード制御信号に応答してデータを前記コントローラに出力する出力動作モードとして第１出力動作モードと第２出力動作モードとを有する。前記第１出力動作モードが指定された不揮発性メモリは、前記リード制御信号の周期毎に異なるアドレスのデータを前記メモリコントローラに出力させる出力動作を開始し、一つのアドレスのデータ出力動作を当該周期の開始から次の周期の開始まで維持する。前記第２出力動作モードが指定された前記不揮発性メモリは、前記リード制御信号の周期毎に、その第１の変化に応答して所定のアドレスのデータを前記コントローラに出力させる出力動作を開始し、その第２の変化に応答してデータ出力を高出力インピーダンス状態にする。
【００１９】
コントローラはホスト等の外部よりの指示に従って第１出力動作モードによるＥＤＯ出力動作だけでなく第２出力動作モードによる高出力インピーダンス制御可能な出力動作も選択することが可能になる。
【００２０】
本発明の一つの具体的な形態として、前記不揮発性メモリは、前記コントローラから第１リード系コマンドが入力されることによって前記第１出力動作モードが指定され、前記コントローラから第２リード系コマンドが入力されることによって前記第２出力動作モードが指定される。コントローラは外部よりの指示に対しコマンド種別によってＥＤＯ出力動作と高出力インピーダンス制御可能な出力動作を容易に使い分けることが可能になる。
【００２１】
更に具体的な形態として、前記第１リード系コマンドは、アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力される第１コマンドであり、前記第２リード系コマンドは、アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力される第２コマンドである。アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力するコマンドの種別によってＥＤＯ出力動作と高出力インピーダンス制御可能な出力動作を使い分けることができるので、何れの場合にもコマンドシーケンが殆ど同じになり、双方に対する制御ロジックの簡素化に資することができる。
【００２２】
更に具体的な形態として、前記第２リード系コマンドは、半導体集積回路のＩＤ情報の読出しを指示するＩＤリードコマンドである。ＩＤ情報は半導体集積回路に対する制御形態を決定するために必須の情報であることが多く、情報の取りこぼしを回避する上において得策となる。半導体集積回路のＩＤ情報はパワーオンに応答して読み出されることが多い。これを考慮すると、前記制御部はパワーオンに応答して前記出力動作モードを第２出力動作モードに初期設定してもよい。
【００２３】
本発明の別の一つの具体的な形態として、前記不揮発性メモリは、前記第１出力動作モードが指定されているとき、前記第１リード系コマンド以外のコマンドが入力されることによって第１出力動作モードを解除する。また、本発明の別の一つの具体的な形態として、前記不揮発性メモリは、前記第１出力動作モードが指定されているとき、前記コントローラから入力されるチップイネーブル信号がディスエーブルにされることによって第１出力モードを解除する。出力が高インピーダンス状態にされないＥＤＯ出力モードの解除を容易に行うことができる。ホストとの間のデータ転送は高速化することが望ましいが、カードコントローラとフラッシュメモリとの間のステータスリードのような動作については高速化よりも動作の確実性を優先させることが得策と考えられるからである。
【００２４】
〔３〕《ＥＤＯ対応コントローラを持つメモリカード》
本発明に係る記憶装置(４０)は、不揮発性メモリとコントローラ(４２)とを有する。前記コントローラは外部インタフェース制御と外部からの指示に応答する前記不揮発性メモリのアクセス制御とを行う。前記コントローラは、前記不揮発性メモリにリード制御信号（／ＲＥ）に応答してデータを出力させる出力動作モードとして第１出力動作モード（ＥＤＯ出力モード）と第２出力動作モード（ノーマル出力モード）とを設定可能である。前記コントローラは、前記第１出力動作モードを設定した不揮発性メモリが前記リード制御信号の周期毎に出力する異なるアドレスのデータを前記リード制御信号の一周期遅れの出力タイミングに同期して取り込む。前記コントローラは、前記第２出力動作モードを指定した前記不揮発性メモリが前記リード制御信号の周期毎にその第１の変化に応答して出力する所定のアドレスのデータを同一周期におけるリード制御信号の第２の変化に同期して取り込む。
【００２５】
これにより、コントローラは第１出力動作モードによるＥＤＯ出力動作と第２出力動作モードによる高出力インピーダンス制御による出力動作との双方が可能な不揮発性メモリと、第１出力動作モードによるＥＤＯ出力動作に非対応で第２出力動作モードによる高出力インピーダンス制御による出力動作が可能な不揮発性メモリとの双方に対して対応可能になる。
【００２６】
本発明の一つの具体的な形態として、前記第１出力動作モードが設定された不揮発性メモリは、前記リード制御信号の周期毎に異なるアドレスのデータを前記メモリコントローラに出力させる出力動作を開始し、一つのアドレスのデータ出力動作を当該周期の開始から次の周期の開始まで維持する。前記第２出力動作モードが指定された前記不揮発性メモリは、前記リード制御信号の周期毎に、その第１の変化に応答して所定のアドレスのデータを前記コントローラに出力させる出力動作を開始し、その第２の変化に応答してデータ出力を高出力インピーダンス状態にする。
【００２７】
本発明の別の一つの具体的な形態として、前記コントローラは、前記不揮発性メモリに第１リード系コマンドを出力することによって前記第１出力動作モードを設定し、前記不揮発性メモリに第２リード系コマンドを出力することによって前記第２出力動作モードを設定する。コントローラは外部よりの指示に対しコマンド種別によってＥＤＯ出力動作と高出力インピーダンス制御可能な出力動作を容易に使い分けることが可能になる。
【００２８】
更に具体的な形態として、前記第１リード系コマンドは、アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力される第１コマンドであり、前記第２リード系コマンドは、アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力される第２コマンドである。アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力するコマンドの種別によってＥＤＯ出力動作と高出力インピーダンス制御可能な出力動作を使い分けることができるので、何れの場合にもコマンドシーケンが殆ど同じになり、双方に対する制御ロジックの簡素化に資することができる。
【００２９】
更に具体的な形態として、前記第２リード系コマンドは、半導体集積回路のＩＤ情報の読出しを指示するＩＤリードコマンドである。ＩＤ情報は半導体集積回路に対する制御形態を決定するために必須の情報であることが多く、情報の取りこぼしを回避する上において得策となる。半導体集積回路のＩＤ情報はパワーオンに応答して読み出されることが多い。これを考慮すると、前記制御部はパワーオンに応答して前記出力動作モードを第２出力動作モードに初期設定してもよい。
【００３０】
また半導体集積回路のＩＤ情報にＥＤＯ出力動作が可能であるか否かの情報を持つようにしても良い。前記制御部はパワーオンに応答し前記出力動作モードを前記第２出力動作モードに初期設定して前記ＩＤ情報の読み出しを行い、前記ＩＤ情報にＥＤＯ出力動作が可能であることを示す情報が含まれていることを確認した後に、前記第１出力動作モードを設定するようにしても良い。
【００３１】
本発明の別の一つの具体的な形態として、前記コントローラは、前記第１出力動作モードを設定した後、前記不揮発性メモリに前記第１リード系コマンド以外のコマンドを出力することによって第１出力動作モードを解除する。また、前記コントローラは、前記第１出力動作モードを設定した後、前記不揮発性メモリに出力するチップイネーブル信号をディスエーブルにすることによって第１出力動作モードを解除する。出力が高インピーダンス状態にされないＥＤＯ出力モードの解除を容易に行うことができる。ホストとの間のデータ転送は高速化することが望ましいが、書込みや消去動作時におけるカードコントローラとフラッシュメモリとの間のステータスリードのような動作については高速化よりも動作の確実性を優先させることが得策と考えられるからである。
【００３２】
〔４〕《ＥＤＯ対応コントローラドライバを備えたメモリカード》
本発明に係る記憶装置は不揮発性メモリとコントローラとを有する。前記コントローラは外部インタフェース制御と外部からの要求に従った前記不揮発性メモリのアクセス制御とを行う。前記コントローラは、前記不揮発性メモリにリード制御信号に応答してデータを出力させる出力動作モードとして第１出力動作モードと第２出力動作モードとを設定可能である。前記コントローラは前記不揮発性メモリが第１出力動作モードと第２出力動作モードとに対応するかを判定し(Ｓ２)、外部からの読出し要求に応答するのに前記第１出力動作モードを設定するか第２出力動作モードを設定するかを判定する（Ｓ５，S６，Ｓ７）。前記コントローラは、前記第１出力動作モードを設定した不揮発性メモリが前記リード制御信号の周期毎に出力する異なるアドレスのデータを前記リード制御信号の一周期遅れの出力タイミングに同期して取り込む。前記コントローラは、前記第２出力動作モードを指定した前記不揮発性メモリが前記リード制御信号の周期毎にその第１の変化に応答して出力する所定のアドレスのデータを同一周期におけるリード制御信号の第２の変化に同期して取り込む。
【００３３】
これによりコントローラは、第１出力動作モードによるＥＤＯ出力動作と第２出力動作モードによる高出力インピーダンス制御による出力動作との双方が可能な不揮発性メモリと、第１出力動作モードによるＥＤＯ出力動作に非対応で第２出力動作モードによる高出力インピーダンス制御による出力動作が可能な不揮発性メモリとの双方に対して自立的に対応可能になる。
【００３４】
本発明の一つの具体的な形態として、第１出力動作モードに対応する前記不揮発性メモリは、前記第１出力動作モードが設定されると、前記リード制御信号の周期毎に、異なるアドレスのデータを前記メモリコントローラに出力させる出力動作を開始し、一つのアドレスのデータ出力動作を当該周期の開始から次の周期の開始まで維持する。第２出力動作モードに対応する前記不揮発性メモリは、前記第２出力動作モードが指定されると、前記リード制御信号の周期毎に、その第１の変化に応答して所定のアドレスのデータを前記コントローラに出力させる出力動作を開始させ、その第２の変化に応答してデータ出力を高出力インピーダンス状態にする。
【００３５】
本発明の別の一つの具体的な形態として、前記不揮発性メモリはパワーオンにより前記第２出力動作モードに初期化される。前記コントローラは、前記不揮発性メモリが第１出力動作モードと第２出力動作モードとに対応するかを、第２出力動作モードに初期化された前記不揮発性メモリから読み取ったＩＤ情報を参照して判定する。ＩＤ情報は半導体集積回路に対する制御形態を決定するために必須の情報であることが多く、初期化状態で第２出力動作モードとすることは、情報の取りこぼしを回避する上において好適である。
【００３６】
更に具体的な形態として、前記コントローラは、外部からの読出し要求に対して前記第１出力動作モードを設定するか第２出力動作モードを設定するかを、外部から直接又は間接に第１出力動作モードの設定が要求されているか(Ｓ５)、不揮発性メモリが第１出力動作モードに対応しているか(Ｓ６)、並びに前記リード制御信号の周波数が第１出力動作モードによる読出し動作に適合する動作速度であるか(Ｓ７)、に基づいて判定する。例えば、前記コントローラは外部からのアクセス要求速度が所定速度以上であることを以って前記第１出力動作モードの指定を間接に要求していると判定する。上記自立的な対応が容易になる。
【００３７】
〔５〕《ＥＤＯ対応コントローラドライバ》
本発明に係る制御プログラム(５３)は、不揮発性メモリのアクセス制御とホストとのインタフェース制御を行うメモリカードコントローラ(４２)の動作を制御するものであり、中央処理装置(５２)が実行することによって、第１乃至第５処理を制御する。第１処理は、パワーオンにより、不揮発性メモリが保有するＩＤ情報を参照する処理である。第２処理は、参照したＩＤ情報に基づいて、リード制御信号に応答させて前記不揮発性メモリからデータを出力させる出力動作モードとして前記不揮発性メモリが第１出力動作モードと第２出力動作モードとに対応するかを判定する処理である。第３処理は、ホストからの読出し要求に対して前記不揮発性メモリに前記第１出力動作モードを設定するか第２出力動作モードを設定するかを判定する処理である。第４処理は、第１出力動作モードに対応する前記不揮発性メモリに対して当該第１出力動作モードを設定することにより、当該不揮発性メモリが前記リード制御信号の周期毎に出力する異なるアドレスのデータを前記リード制御信号の一周期遅れの出力タイミングに同期して取り込む処理である。第５処理は、第２出力動作モードに対応する前記不揮発性メモリに対して前記第２出力動作モードを設定することにより、当該不揮発性メモリが前記リード制御信号の周期毎にその第１の変化に応答して出力する所定のアドレスのデータを同一周期におけるリード制御信号の第２の変化に同期して取り込む処理である。
【００３８】
上記より、第１出力動作モードによるＥＤＯ出力動作と第２出力動作モードによる高出力インピーダンス制御による出力動作との双方が可能な不揮発性メモリと、第１出力動作モードによるＥＤＯ出力動作に非対応で第２出力動作モードによる高出力インピーダンス制御による出力動作が可能な不揮発性メモリとの双方に対してメモリカードコントローラの自立的な対応を可能にする。
【００３９】
本発明の一つの具体的な形態として、前記中央処理装置が実行することによって制御する前記第３処理は、外部から直接又は間接に第１出力動作モードの指定が要求されているか、不揮発性メモリが第１出力動作モードに対応しているか、並びにリード制御信号の周波数が第１出力動作モードによる読出し動作に適合する動作速度であるか、に基づいて判定する処理である。例えば、前記中央処理装置が実行することによって制御する前記第３処理において、外部からのアクセス要求速度が所定速度以上であることを以って前記第１出力動作モードの指定を間接に要求していると判定する。上記自立的な対応が容易になる。
【００４０】
本発明の別の一つの具体的な形態として、前記中央処理装置が実行することによって制御する前記第４処理において、前記不揮発性メモリに第１リード系コマンドを出力することによって前記第１出力動作モードを設定する。前記中央処理装置が実行することによって制御する前記第５処理において、前記不揮発性メモリに第２リード系コマンドを出力することによって前記第２出力動作モードを設定する。コマンド種別によってＥＤＯ出力動作と高出力インピーダンス制御可能な出力動作を容易に使い分けることが可能になる。
【００４１】
更に具体的な形態として、前記第１リード系コマンドは、アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力される第１コマンドである。前記第２リード系コマンドは、アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力される第２コマンドである。アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力するコマンドの種別によってＥＤＯ出力動作と高出力インピーダンス制御可能な出力動作を使い分けることができるので、何れの場合にもコマンドシーケンが殆ど同じになり、制御シーケンスの簡素化に資することができる。
【００４２】
本発明の更に別の一つの具体的な形態として、前記中央処理装置が実行することによって制御する第６処理を更に含む。前記第６処理は、前記第１出力動作モードを指定した後、前記第１リード系コマンド以外のコマンドを不揮発性メモリに出力することによって第１出力動作モードを解除する処理である。また、前記中央処理装置が実行することによって制御する第７処理を更に含む。前記第７処理は、前記第１出力動作モードを指定した後、前記不揮発性メモリに出力するチップイネーブル信号をディスエーブルにすることによって第１出力動作モードを解除する処理である。出力が高インピーダンス状態にされないＥＤＯ出力モードの解除を容易に行うことが可能になる。ホストとの間のデータ転送は高速化することが望ましいが、カードコントローラとフラッシュメモリとの間のステータスリードのような動作については高速化よりも動作の確実性を優先させることが得策と考えられるからである。
【発明の効果】
【００４３】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記の通りである。
【００４４】
一つの発明によれば電気的に書換え可能な不揮発性メモリをＥＤＯ出力モードに対応させることができる。
【００４５】
別の発明によれば、ＥＤＯ出力モードを持つ不揮発性メモリの制御に好適なコントローラを備えた記憶装置を得ることができる。
【００４６】
更に別の発明よれば、ＥＤＯ出力モードを持つ不揮発性メモリの制御に好適なコントローラのためのドライバソフトウェア等の制御プログラムを提供することができる。
【発明を実施するための最良の形態】
【００４７】
《フラッシュメモリ》
図１にはＥＤＯ出力モードによるデータ出力可能なフラッシュメモリが示される。同図に示されるフラッシュメモリ１は適宜の集積回路製造技術により単結晶シリコンのような１個の半導体基板に形成される。
【００４８】
フラッシュメモリ１は、電気的に書換え可能な不揮発性メモリ部２、前記不揮発性メモリ部２との間でデータの入出力を行うことが可能なデータバッファ部３、前記データバッファ部３と外部との間でデータを入出力することが可能な外部インタフェース部４、制御部５、及び電源回路（ＰＯＷＳ）６を有する。
【００４９】
不揮発性メモリ部２は不揮発性メモリアレイ（ＭＡＲＹ）１０とアドレスデコーダ（ＡＤＲＤＥＣ）１１を有する。不揮発性メモリアレイ１０は例えばマトリクス配置された複数の不揮発性メモリトランジスタを有する。不揮発性メモリトランジスタは、フローティングゲートやシリコンナイトライド等の電荷蓄積領域を有するスタックドゲート構造又はスプリットゲート構造を備える。不揮発性メモリトランジスタは例えば前記電荷蓄積領域に蓄積される負の電荷量を多くする動作（例えば書込み動作）によって閾値電圧が高くされ、負の電荷量を少なくする動作（例えば消去動作）によって閾値電圧が低くされる。閾値電圧の相違によって情報を２値或いは多値で記憶する。アドレスデコーダ１２は消去、書き込み、又は読出しを行うワード線やビット線に選択を行う。前記電源回路６は書込み、消去、及び読出しの各動作に必要な動作電圧を生成して各部に供給する。
【００５０】
データバッファ部３は、バッファメモリ（ＢＲＡＭ）１３、入力レジスタ回路（ＩＲＥＧ）１４及び出力レジスタ回路（ＯＲＥＧ）１５を備える。入力レジスタ１４は外部インタフェース部４から入力するデータ、アドレス及びコマンドを入力する。入力したアドレスＡＤＲＳはアドレスデコーダ１１に、コマンドＣＭＤは制御部５に、データＤＡＴはバッファメモリ１３に供給する。バッファメモリ１３は供給されたデータを格納し、書込み動作においてメモリアレイ１０に書込みデータを供給する。読出し動作においてメモリアレイ１０から読み出された読出しデータはバッファメモリ１３に供給される。読出しデータを外部に出力する出力動作においてバッファメモリ１３が保有する読出しデータは出力レジスタ回路１５に供給される。出力レジスタ回路１５はデータ出力ビット数単位でデータを選択し、選択されたデータＤ１〜Ｄｎは外部インタフェース回路４に与えられる。データＤ１〜Ｄｎの選択タイミングは後述するリードイネーブル信号／ＲＥのクロックサイクルに同期される。要するに、出力動作ではリードイネーブル信号／ＲＥのサイクル毎にデータＤ１〜Ｄｎが外部インタフェース回路４に与えられる。
【００５１】
制御部５は制御ロジック（ＣＯＮＴ）１７、コマンドデコーダ１８、ナンドゲート１９、及びインバータ２０を有する。制御ロジック１７は外部から供給されるアクセス制御信号として、外部への出力動作を指示するリードイネーブル信号（読出し制御信号）／ＲＥ、チップ選択を指示するチップイネーブル信号（チップ選択信号）／ＣＥ、コマンド入力を指示するコマンドラッチイネーブル信号ＣＬＥ、外部からのデータ入力動作を指示するライトイネーブル信号／ＷＥ、アドレス入力を支持するアドレスラッチイネーブル信号ＡＬＥ等を入力する。制御ロジック１７は入力されたアクセス制御信号にしたがってアドレスＡＤＲ、データＤＡＴ、コマンドＣＭＤの入出力動作を制御する。コマンドデコーダ１８は入力されたコマンドＣＭＤをデコードし、其れによって指示される、読出し、消去、又は書込み等の内部動作を制御するためのシーケンス制御回路を有する。
【００５２】
コマンドデコーダ１８は代表的に示された出力モード信号ＯＵＴ＿ＭＯＤＥを出力する。出力モード信号ＯＵＴ＿ＭＯＤＥは外部インタフェース部４による出力モードが第１出力動作モードとしてのＥＤＯ出力モードか、第２出力動作モードであるノーマル出力モードかを示す信号である。コマンドデコーダ１８にＥＤＯ出力モードが設定されているとき出力モード信号ＯＵＴ＿ＭＯＤＥはローレベルにされる。コマンドデコーダ１８にノーマル出力モードが設定されているとき出力モード信号ＯＵＴ＿ＭＯＤＥはハイレベルにされる。
【００５３】
ナンドゲート１９はリードイネーブル信号／ＲＥと出力モード信号ＯＵＴ＿ＭＯＤＥを入力し、その出力を受けるインバータ２０は出力制御信号ＯＵＴ＿ＦＵＮＣを生成する。
【００５４】
外部インタフェース部４は外部入出力端子Ｉ／Ｏ１〜Ｉ／Ｏｎのビット対応で外部入出力バッファ（ＩＯＢＵＦ））２１を有する。各々の入出力バッファ２１は入力バッファ２２と出力バッファ(ＯＢＵＦ)２３とを有する。出力バッファ２３には対応する出力データビットＤ１〜Ｄｎのうちの対応１ビット、アウトプットイネーブル信号ＯＥ、及び出力制御信号ＯＵＴ＿ＦＵＮＣが入力され、それら入力信号に応じた外部出力動作を行う。コマンドデコーダ１８はコマンドの解読によって外部への出力動作が指示されたときハイレベルにされ、出力バッファ２３の固定的な高出力インピーダンス状態を解除可能にする。出力動作を終了すると、コマンドデコーダ１８によるシーケンス制御に従って信号ＯＥはローレベルに反転され、出力バッファ２３は高出力インピーダンス状態に維持される。
【００５５】
《出力バッファ》
図２には１個の外部入出力端子Ｉ／Ｏｉに対応される１個の出力バッファ２３の詳細が例示される。出力段はｐチャンネルＭＯＳトランジスタＭｐとｎチャンネルＭＯＳトランジスタＭｎとを直列接続したＣＭＯＳ出力回路によって構成される。ＭＯＳトランジスタＭｐは３入力ノアゲート３０の出力に直列されたインバータ３１の出力によってスイッチ制御される。ＭＯＳトランジスタＭｎは３入力ナンドゲート３２の出力に直列されたインバータ３３の出力によってスイッチ制御される。インバータ３３の出力はノアゲート３０の入力に帰還され、インバータ３３１の出力はナンドゲート３２の入力に帰還される。ナンドゲート３４はデータＤｉと信号ＯＥを入力し、その出力と出力制御信号ＯＵＴ＿ＦＵＮＣがノアゲート３０に供給される。ノアゲート３５はデータＤｉと信号ＯＥの反転信号を入力し、その出力と出力制御信号ＯＵＴ＿ＦＵＮＣの反転信号がナンドゲート３２に供給される。３６，３７はインバータである。出力バッファ２３の論理構成より明らかなように、信号ＯＥがローレベルにされた状態ではＭＯＳトランジスタＭｎ、Ｍｐともにオフ状態にされ、出力バッファ２３は高インピーダンス状態に固定される。信号ＯＥがハイレベルのとき、出力制御信号ＯＵＴ＿ＦＵＮＣの変化に従ってデータＤｉを外部端子Ｉ／Ｏｉに出力する。
【００５６】
《ＥＤＯ出力動作とノーマル出力動作》
図３には出力バッファ２３によるＥＤＯ出力動作タイミングが例示される。出力バッファ２３による出力動作期間において信号ＯＥはハイレベルに固定される。ＥＤＯ出力動作モードが設定されているとき出力制御信号ＯＵＴ＿ＦＵＮＣはローレベル固定にされる。これにより、ＭＯＳトランジスタＭｐ，Ｍｎによる出力論理値はデータＤｉの論理値に従うことになる。要するに、リードイネーブル信号／ＲＥのサイクル毎にデータＤｉが変化されると、その変化に従ってＭＯＳトランジスタＭｐ，Ｍｎがスイッチ制御され、ハイレベル又はローレベルを出力する。即ち、リードイネーブル信号／ＲＥのサイクルに同期して開始されたデータの出力動作は、リードイネーブル信号／ＲＥの次のサイクルに同期する次のデータの出力動作開始まで維持される。前後のデータ出力の間には高出力インピーダンス状態は介在されない。
【００５７】
このＥＤＯ出力動作においては、リードイネーブル信号／ＲＥの次のサイクルの開始まで前のサイクルのデータ出力を維持するから、リードイネーブル信号／ＲＥのサイクルの開始時点よりアクセスタイムｔＲＥＡが規定され、リードイネーブル信号の次のサイクルの開始時点より当該出力サイクルのホールドタイムｔＯＨが規定される。出力データはリードイネーブル信号／ＲＥのフォールエッジからアクセスタイムｔＲＥＡを経過した後、リードイネーブル信号／ＲＥの次のフォールエッジからホールドタイムｔＯＨを経過するまで確定される。外部ではこの間に出力データを取り込めばよい。
【００５８】
図４には出力バッファ２３によるノーマル出力動作タイミングが例示される。出力バッファ２３による出力動作期間において信号ＯＥはハイレベルに固定される。ノーマル出力動作モードが設定されているとき出力制御信号ＯＵＴ＿ＦＵＮＣはリードイネーブル信号／ＲＥに同期してクロック変化される。これにより、ＭＯＳトランジスタＭｐ，Ｍｎは出力制御信号ＯＵＴ＿ＦＵＮＣのハイレベル期間に同期して共にオフ状態にされ、出力バッファ２３を高出力インピーダンス状態にする。ＭＯＳトランジスタＭｐ，Ｍｎは出力制御信号ＯＵＴ＿ＦＵＮＣのローレベル期間に同期してデータＤｉの論理値に従った相補スイッチ状態に制御される。要するに、リードイネーブル信号／ＲＥのサイクル毎にデータＤｉが変化されると、その変化に追従して変化する出力制御信号ＯＵＴ＿ＦＵＮＣのローレベル期間にＭＯＳトランジスタＭｐ，Ｍｎが相補スイッチ制御され、ハイレベル又はローレベルを出力する。即ち、リードイネーブル信号／ＲＥのフォールエッジに同期してデータ出力動作が開始され、リードイネーブル信号／ＲＥの当該サイクルにおけるライズエッジに同期して高出力インピーダンス状態に変化される。
【００５９】
このノーマル出力動作においては、リードイネーブル信号／ＲＥのローレベル期間に同期してデータ出力を維持するから、リードイネーブル信号／ＲＥのフォールエッジよりアクセスタイムｔＲＥＡが規定され、リードイネーブル信号の当該サイクルのライズエッジよりホールドタイムｔＯＨが規定される。
【００６０】
図３と図４を比べれば明らかのように、リードイネーブル信号／ＲＥの周波数を等しくした場合、ＥＤＯ出力動作による出力データの確定期間は、ノーマル出力動作による出力データの大凡２倍になる。従って、ノーマル出力動作において動作保証されるリードイネーブル信号／ＲＥの最高周波数に対し、ＥＤＯ出力動作では大凡その２倍の周波数のリードイネーブル信号／ＲＥを用いた高速出力動作を実現することができる。
【００６１】
《出力動作モードの設定》
フラッシュメモリ１における出力動作モードはＥＤＯ出力モードとノーマル出力モードである。ＥＤＯ出力モードが設定されると、出力制御信号ＯＵＴ＿ＦＵＮＣはローレベル固定にされ、／ＲＥに同期する出力動作は前記ＥＤＯ出力動作とされる。ノーマル出力モードが設定されると、出力制御信号ＯＵＴ＿ＦＵＮＣは／ＲＥに追従変化され、／ＲＥに同期する出力動作は前記ノーマル出力動作とされる。
【００６２】
フラッシュメモリ１に設定された出力動作モードがＥＤＯ出力モードかノーマル出力モードかに応じて、例えばコマンドデコーダ１８内部の出力動作モードフラグがセット又はリセット状態に制御される。出力動作モードフラグがセット状態であれば出力制御信号ＯＵＴ＿ＦＵＮＣはローレベル固定にされ、リセット状態であれば／ＲＥに同期して出力制御信号ＯＵＴ＿ＦＵＮＣが変化可能にされる。
【００６３】
出力動作モードフラグはフラッシュメモリ１のパワーオン時にリセット状態に初期化され、ノーマル出力モードが初期設定される。パワーオンの時にホストがＩＤリードコマンドを発行してフラッシュメモリ１のＩＤ情報を読出す場合を考慮すると、ＩＤ情報は半導体集積回路に対する制御形態を決定するために必須の情報であることが多いから、低速でＩＤ情報の読み取りを確実に行った方が情報の取りこぼしを回避する上において得策となる場合もあるからである。
【００６４】
またフラッシュメモリ１がＥＤＯ出力可能か否かの情報をＩＤ情報に含めておくことで、制御部５はフラッシュメモリ１のＩＤ情報を読み出した後においてＥＤＯ出力モードを設定することが可能となる。則ち、パワーオンリセット直後の初期状態としてノーマル出力モードが設定され、ＩＤ情報の読み出しを行う時点においてはノーマル出力モードのままであり、ＩＤ情報の読み出し完了後にＥＤＯ出力モードの設定が可能とすることができる。
【００６５】
パワーオンの後の出力動作モードの設定は例えばリード系コマンドによって可能にされる。ＩＤ情報にＥＤＯ出力可能であることを示す情報が含まれている場合に、例えば、外部から第１リード系コマンドが入力されることによって前記第１出力動作モードが設定され、外部から第２リード系コマンドが入力されることによって前記第２出力動作モードが設定される。コマンド種別によってＥＤＯ出力モードと高出力インピーダンス制御可能なノーマル出力モードとを容易に使い分けることが可能になる。前記第１リード系コマンドは、例えばアドレスイネーブルコマンド００ｈ及びカラム及びローウアドレスのようなアクセスアドレス情報に続けて入力される第１コマンドＥ１ｈである。アドレスイネーブルコマンド００ｈは、これに後続するアドレス情報で指定されるメモリデータをメモリアレイからデータバッファに読み出す動作を指示するコマンドとされる。第１コマンドＥ１ｈはデータバッファに読出されたデータを／ＲＥに同期して外部に出力動作を指示するコマンドとされる。特に第１コマンドＥ１ｈは出力動作モードをＥＤＯ出力モードに設定するコマンドとされる。従って、第１コマンドＥ１ｈによる／ＲＥ同期の外部出力動作はＥＤＯ出力動作とされる。
【００６６】
前記第２リード系コマンドは、例えばアドレスイネーブルコマンド００ｈ及びカラム及びローウアドレスのようなアクセスアドレス情報に続けて入力される第２コマンド３０ｈである。第２コマンド３０ｈはデータバッファに読出されたデータを／ＲＥに同期して外部に出力動作を指示するコマンドとされる。特に第２コマンド３０ｈは出力動作モードをノーマル出力モードに設定するコマンドとされる。従って、第２コマンド３０ｈによる／ＲＥ同期の外部出力動作はノーマル出動動作とされる。
【００６７】
アドレスイネーブルコマンド及びアクセスアドレス情報に続けて入力されるコマンドの種別によってＥＤＯ出力モードと高出力インピーダンス制御可能なノーマル出力モードを使い分けることができるので、何れの場合にもコマンドシーケンが殆ど同じになり、双方に対する制御部５の制御ロジックを簡素化することができる。
【００６８】
また、前記第２リード系コマンドとして、フラッシュメモリ１のＩＤ情報の読出しを指示するＩＤリードコマンドを割り当ててもよい。ＩＤ情報はフラッシュメモリ１に対する制御形態を決定するために必須の情報であることが多く、情報の取りこぼしを回避することが優先されるからである。フラッシュメモリ１のＩＤ情報はパワーオンに応答して読み出されることが多いから、前記第２リード系コマンドとしてＩＤリードコマンドを割り当てる場合には、前述のパワーオンに応答して前記出力動作モードをノーマルモードに初期設定しなくてもよい。
【００６９】
また、ＥＤＯ出力モードからノーマル出力モードへの切換えは、前述のように第１コマンドＥ１ｈやＩＤリードコマンドが投入されたとき、コマンドデコーダ１８がこれを解読して行えばよいが、更に、所定の事象の発生に応答して自動的にＥＤＯ出力モードを解除してノーマル出力モードへ遷移可能とする。即ち、コマンドデコーダ１８は、ＥＤＯ出力モードが設定されているとき、前記第１リード系コマンド以外のコマンドが入力されることによってＥＤＯ出力モードを解除してノーマル出力モードに変更する。更に、コマンドデコーダ１８は、ＥＤＯ出力モードが設定されているとき、外部から入力されるチップイネーブル信号／ＣＥがディスエーブルにされることによってＥＤＯ出力モードを解除してノーマル出力モードに設定変更する。これにより、出力が高インピーダンス状態にされないＥＤＯ出力モードの解除を容易に行うことができる。ホストとの間のデータ転送は高速化することが望ましいが、フラッシュメモリに対する書込み消去動作時にカードコントローラとフラッシュメモリとの間のステータスリードのような動作については高速化よりも動作の確実性を優先させることが得策と考えられるからである。
【００７０】
またＥＤＯ出力モードとノーマル出力モードとの切換については、フラッシュメモリ１に対するアクセスアドレスで決定するようにしても良い。例えば、通常のデータ格納領域とＩＤ情報格納領域とが夫々異なるアドレス領域に分けて格納される場合、通常のデータ格納領域へのアクセスを示すアドレス又はコマンドである場合はＥＤＯ出力モードに設定変更し、ＩＤ情報格納領域へのアクセスを示すアドレス又はコマンドである場合はノーマル出力モードに設定変更する。ここでいうＩＤ情報格納領域とは、フラッシュメモリのＩＤ情報のみならず、メモリカードとして必要な管理情報等を格納している領域であって良い。
【００７１】
更には、フラッシュメモリ１においてデータの書込や消去を行っている期間、書込／消去動作が完了したかを判定するため及び書き込み/消去動作でエラーが発生した場合、エラーの内容を示すステータスリード動作が行われる。このステータスリード動作ではフラッシュメモリ１の持つステイタスレジスタの内容を出力するものであり、ＥＤＯ出力モードではなくノーマル出力モードで出力したとしても特段問題を生じない。ステイタスリードコマンドの入力に応答して、ＥＤＯ出力モードは解除しない状態で該ステイタスリードコマンドに応答するステイタス出力のみノーマル出力モードで出力し、又はＥＤＯ出力モードを解除してノーマル出力モードに設定変更してステイタス出力するようにしても良い。
【００７２】
《メモリカード》
図５にはフラッシュメモリ１を用いることができるメモリカードが例示される。メモリカード４０は前記フラッシュメモリ（ＦＬＡＳＨ）１とカードコントローラ（ＣＲＤＣＮＴ）４２とを有する。カードコントローラ４１はホスト４３との間のホストインタフェース制御と、ホスト４３からの指示に応答する前記フラッシュメモリ１のアクセス制御とを行う。カードコントローラ４１によるホストインタフェース制御はメモリカードが準拠するカード仕様に応じて決定される。ＭＭＣカードであればＭＭＣカード仕様に準拠したホストインタフェース制御機能を持たなければならない。具体的なインタフェース仕様の詳細についての個々の規格に譲る。図ではカードコントローラ４２にはクロック入力バッファ４４、コアロジック（ＣＯＲＬＧＣ）４５、出力バッファ４６，４７，４８及び入力バッファ４９が代表的に図示されている。図においてコアロジック４５はクロック信号ＣＬＫを入力し、リードイネーブル信号／ＲＥ＿Ａを出力し、フラッシュメモリ１から出力されるデータＤＱ＿ＩＮを入力する。リードイネーブル信号／ＲＥ＿Ａはバッファ４７を通って前記リードイネーブル信号／ＲＥとしてフラッシュメモリ１に供給される。フラッシュメモリ1の外部入出力端子Ｉ／Ｏ１〜Ｉ／Ｏｎから出力されたデータＤＱはバッファ４９を介し、入力データＤＱ＿ＩＮとしてコアロジック４５に取り込まれる。コアロジック４５はホストインタフェース制御とフラッシュメモリ制御を行うための中央処理装置（ＣＰＵ）５２、プログラムメモリ（ＰＧＭ）５３、ワークメモリ（ＲＡＭ）５４、並びにホストインタフェース及びフラッシュメモリインタフェース回路（ＩＦ）５５等によって構成される。信号線群５０はフラッシュメモリ１とコアロジック４５との間のアドレス、コマンド、及びその他ストローブ信号の転送に利用される。
前記カードコントローラ４２は、リードイネーブル信号／ＲＥに応答してデータを出力させる出力動作モードとして前記ＥＤＯ出力モードと前記ノーマル出力モードとをフラッシュメモリ１に設定可能である。フラッシュメモリ１に対する出力動作モードの設定は前記「出力動作モードの設定」の欄で説明したコマンドによる設定や解除、チップイネーブル信号／ＣＥによるＥＤＯ出力モードの解除を行えばよい。
【００７３】
図６にはＥＤＯ出力動作のタイミングチャートが例示される。フラッシュメモリ１からのデータ出力タイミングは図３と同様であり、／ＲＥに対してアクセスタイムｔＲＥＡとホールドタイムｔＯＨによって規定されるデータ確定期間に、データＤＱが確定される。カードコントローラ４２はｓｔｒｂのタイミングで例示されるように信号／ＲＥ＿Ａのフォールエッジに同期してデータＤＱ＿ＩＮを取り込む。このとき、データＤＱ＿ＩＮの確定期間に対し、信号／ＲＥ＿Ａのフォールエッジを中心にその前後にセットアップ時間ＳＴＰＵとホールド時間ＨＬＤが確保される。セットアップ時間は例えば、ＳＴＵＰ＝ｔＲＣ−（ｔＲＥＡ＋／ＲＥ＿Ｄｅｌａｙ+Ｄｉｎ＿Ｄｅｌａｙ）＝３３．３ｎｓ−（１８ｎｓ＋３ｎｓ＋３ｎｓ）＝９．３ｎｓとなる。ホールド時間は例えば、ＨＬＤ＝ｔＯＨ＋／ＲＥ＿Ｄｅｌａｙ＋Ｄｉｎ＿Ｄｅｌａｙ＝３ｎｓ＋３ｎｓ＋３ｎｓ＝９ｎｓとなる。従ってコアロジック４５は信号／ＲＥ＿Ａのフォールエッジに同期して、一つ前のサイクルでフラッシュメモリ１から出力された確定データＤＱ＿ＩＮを、その確定期間のほぼ中央で取り込むことができる。
【００７４】
図７には前記カードコントローラ４２がＥＤＯ出力モードを設定するときの動作タイミングチャートが例示される。カードコントローラ４２が例えばアドレスイネーブルコマンド００ｈ、カラムアドレスＣＡ１，ＣＡ２、ローウアドレスＲＡ１，ＲＡ２，ＲＡ３、及び第１コマンドＥ１ｈを発行する。このコマンド発行後、時間ｔＷＨＲを経過した後、／ＲＥをクロック変化させると、フラッシュメモリ１からＥＤＯ出力動作でデータＤｏｕｔが出力される。
【００７５】
図８にはカードコントローラ４２がＥＤＯ出力モードを解除するときの動作タイミングが例示される。フラッシュメモリ１にＥＤＯ出力モードが設定されているとき、カードコントローラが前記第１コマンドＥ１ｈ以外のコマンドＣＭＤｉを発行することによってフラッシュメモリ１のＥＤＯ出力モードを解除してノーマル出力モードに変更することができる。図８の例はフラッシュメモリ１にはチップイネーブル信号／ＣＥがディスエーブルにされることによってＥＤＯ出力モードを解除してノーマル出力モードに遷移する機能は採用されていない。
【００７６】
《ＥＤＯ対応カードコントローラドライバ》
図９にはコアロジック４５による出力動作モードの設定に関する制御フローが示される。メモリカードに電源が投入されると、コアロジック４５はメモリカード上のフラッシュメモリからそのＩＤ情報を読み取る（Ｓ１）。コアロジック４５は読み取ったＩＤ情報の基づいてそのフラッシュメモリがＥＤＯ出力モードに対応するフラッシュメモリであるかを判定する（Ｓ２）。前記フラッシュメモリの場合にはＩＤ情報にＥＤＯ出力動作モード対応を示すコード情報が含まれている。ＥＤＯ出力モードとノーマル出力モードの双方に対応するフラッシュメモリであればＥＤＯ対応製品であることコアロジック４５内部のメモリ等に保持する（Ｓ３）。ＥＤＯ出力モードに対応せずノーマル出力モードに対応するフラッシュメモリであればＥＤＯ非対応製品であることコアロジック４５内部のメモリ等に保持する（Ｓ４）。ホスト４３からメモリカード４０に読出し要求があったとき、コアロジック４５はフラッシュメモリにＥＤＯ出力モードを設定すべきか否かを判定する。その判定は、ホストからの指示は間接又は直接にＥＤＯ出力動作か（Ｓ５）、対象フラッシュメモリはＥＤＯ対応製品であるか（Ｓ６）、／ＲＥの周波数がＥＤＯ出力モードに対応しているか（Ｓ７）、についての順次判定とされる。Ｓ５〜Ｓ７の全ての判定がＹＥＳであるときはＥＤＯモード処理を実行する。Ｓ５〜Ｓ７の判定が一つでもＮＯであるときはノーマルモード処理を実行する。前記Ｓ５の処理においては、ホスト４３からのアクセス要求速度が所定速度以上であることを以ってＥＤＯ出力動作の指定を間接に要求していると判定する。
【００７７】
図１０にはＥＤＯモード処理の実行手順が示される。コアロジック４５は、例えばアドレスイネーブルコマンド００ｈ、カラムアドレスＣＡ１，ＣＡ２、ローウアドレスＲＡ１，ＲＡ２，ＲＡ３、及び第１コマンドＥ１ｈを発行する（Ｓ１０〜Ｓ１６）。特に第２コマンドＥ１ｈは出力動作モードをＥＤＯ出力モードに設定するコマンドとされる。第２コマンドＥ１ｈによる／ＲＥ同期の外部出力動作はＥＤＯ出動動作とされる。コアロジック４５は、／ＲＥ＿Ａのフォールエッジに同期してリードデータを取り込むリード処理を行なう(Ｓ１７)。
【００７８】
図１１にはノーマルモード処理の実行手順が示される。コアロジック４５は、例えばアドレスイネーブルコマンド００ｈ、カラムアドレスＣＡ１，ＣＡ２、ローウアドレスＲＡ１，ＲＡ２，ＲＡ３、及び第２コマンド３０ｈを発行する（Ｓ２０〜Ｓ２６）。特に第２コマンド３０ｈは出力動作モードをノーマル出力モードに設定するコマンドとされる。第２コマンド３０ｈによる／ＲＥ同期の外部出力動作はノーマル出動動作とされる。コアロジック４５は、／ＲＥ＿Ａのライズエッジに同期してリードデータを取り込むリード処理を行なう(Ｓ２７)。
【００７９】
コアロジック４５を構成するＣＰＵ５２はプログラムメモリ５３が保有する動作プログラムであるカードコントローラドライバを実行することによって、上記図９乃至図１１に示される処理を行なう。特に図示はしないが、前記ＣＰＵ５２はカードコントローラドライバを実行することにより更に、ＥＤＯモード処理の後に前記第１リード系コマンド以外のコマンドをフラッシュメモリ１に発行してＥＤＯ出力モードを解除する処理を行なう。また、フラッシュメモリ１に出力するチップイネーブル信号／ＣＥをディスエーブルにすることによってＥＤＯ出力モードを解除する処理を行なう。
【００８０】
上記カードコントローラドライバにより、ＥＤＯ出力モードによるＥＤＯ出力動作とノーマル出力モードによる高出力インピーダンス制御による出力動作が可能なＥＤＯ対応フラッシュメモリ１と、ＥＤＯ出力モードに対応せずノーマル出力モードに対応するＥＤＯ非対応フラッシュメモリとの何れに対してもメモリカードコントローラの自立的な対応が可能になる。
【００８１】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【００８２】
例えば、不揮発性メモリはフラッシュメモリに限定されず、その他記憶形式の半導体メモリであってよい。また、第１出力動作モードと第２出力動作モードの設定はコマンドによる設定に限定されず、複数の外部端子の状態の組み合わせ等によって行ってもよい。リード制御信号の具体的な呼び名はリードイネーブル信号／ＲＥに限定されない。メモリカードの外部インタフェースは接触インタフェースであっても非接触インタフェースであってもよい。記憶装置はメモリカードに限定されず、不揮発性メモリチップとコントローラチップのマルチチップを一つのパッケージに納めたマルチチップモジュールであってもよい。メモリカードは不揮発性メモリとカードコントローラ以外に、ＩＣカード用マイクロコンピュータチップ若しくはセキュリティー用チップ等を併せて搭載してもよい。
【図面の簡単な説明】
【００８３】
【図１】ＥＤＯ出力モードによるデータ出力可能なフラッシュメモリを例示するブロック図である。
【図２】１個の外部入出力端子Ｉ／Ｏｉに対応される１個の出力バッファの詳細を例示する回路図である。
【図３】図２の出力バッファによるＥＤＯ出力動作のタイミングチャートである。
【図４】図２の出力バッファによるノーマル出力動作のタイミングチャートである。
【図５】図１のフラッシュメモリを用いることができるメモリカードを例示するブロック図である。
【図６】フラッシュメモリのＥＤＯ出力動作とカードコントローラによるデータリードのタイミングチャートである。
【図７】カードコントローラがＥＤＯ出力モードを設定するときの動作を示すタイミングチャートである。
【図８】カードコントローラがＥＤＯ出力モードを解除するときの動作を示すタイミングチャートである。
【図９】カードコントローラのコアロジックによる出力動作モードの設定に関する制御フローを例示するフローチャートである。
【図１０】カードコントローラのコアロジックによるＥＤＯモード処理の実行手順を示すフローチャートである。
【図１１】カードコントローラのコアロジックによるノーマルモード処理の実行手順を示すフローチャートである。
【符号の説明】
【００８４】
１  フラッシュメモリ
２  不揮発性メモリ部
３  データバッファ部
４  外部インタフェース部
５  制御部
６  電源回路（ＰＯＷＳ）
１０  不揮発性メモリアレイ（ＭＡＲＹ）
１１  アドレスデコーダ（ＡＤＲＤＥＣ）
１２  アドレスデコーダ
１３  バッファメモリ（ＢＲＡＭ）
１４  入力レジスタ回路（ＩＲＥＧ）
１５  出力レジスタ回路（ＯＲＥＧ）
／ＲＥ  リードイネーブル信号
１７  制御ロジック（ＣＯＮＴ）
１８  コマンドデコーダ
２１  外部入出力バッファ（ＩＯＢＵＦ））
２２入力バッファ
２３  出力バッファ(ＯＢＵＦ)
Ｄ１〜Ｄｎ  出力データビット
ＯＥ  アウトプットイネーブル信号
ＯＵＴ＿ＦＵＮＣ  出力制御信号
４０  メモリカード
４２  カードコントローラ（ＣＲＤＣＮＴ）
４３  ホスト
４４  クロック入力バッファ
４５  コアロジック（ＣＯＲＬＧＣ）
ＣＬＫ  クロック信号
／ＲＥ＿Ａ  リードイネーブル信号
ＤＱ＿ＩＮ  リードデータ
Ｉ／Ｏ１〜Ｉ／Ｏｎ  外部入出力端子
【図１】
2007115382.tif 000003
【図２】
2007115382.tif 000004
【図３】
2007115382.tif 000005
【図４】
2007115382.tif 000006
【図５】
2007115382.tif 000007
【図６】
2007115382.tif 000008
【図７】
2007115382.tif 000009
【図８】
2007115382.tif 000010
【図９】
2007115382.tif 000011
【図１０】
2007115382.tif 000012
【図１１】
2007115382.tif 000013