(57)【特許請求の範囲】
【請求項１】
ゲート制御により入力されるデータを第１のバッファにバッファリングするためのデータ取り込みゲートと、
ゲート制御により前記第１のバッファのデータを入力して第２のバッファにバッファリングするためのデータ転送ゲートと、
ゲート制御により前記第２のバッファのデータをデータバスに出力するためのデータライトゲートと、
前記データバス上のデータをライトして記憶するためのメモリセルと、
データマスク信号によりマスクされると前記データバスを前記メモリセルに接続せず、データマスク信号によりマスク解除されると前記データバスを前記メモリセルに接続するためのセレクタと、
ライトイネーブル信号及びデータマスク信号に応じて、第１のサイクルで前記データ取り込みゲートを制御して前記第１のバッファにデータを入力し、前記第１のサイクルの次サイクルで前記データ転送ゲートを制御して前記第１のバッファのデータを前記第２のバッファに入力し前記データライトゲートを制御して前記第２のバッファのデータを前記データバスに出力する制御回路とを有し、
前記制御回路は、
前記ライトイネーブル信号が活性化してから前記データマスク信号がマスクを指定する状態に変化するまでの間の時間が第１の時間である第１動作モードの場合には、第１のサイクルにおいて、前記データ取り込みゲートの制御により前記第１のバッファにデータを入力せず、かつ前記データ転送ゲートの制御により前記第２のバッファにデータを入力し、かつ前記データライトゲートの制御により前記第２のバッファのデータを前記データバスに出力せず、前記第１のサイクルの次のサイクルにおいて、前記データライトゲートの制御により前記第２のバッファのデータを前記データバスに出力し、
前記ライトイネーブル信号が活性化してから前記データマスク信号がマスクを指定する状態に変化するまでの間の時間が前記第１の時間よりも長い第２動作モードの場合には、第１のサイクルにおいて、前記データ取り込みゲートの制御により前記第１のバッファにデータを入力せず、かつ前記データ転送ゲートの制御により前記第２のバッファにデータを入力し、かつ前記データライトゲートの制御により前記第２のバッファのデータを前記データバスに出力し、前記第１のサイクルの次のサイクルにおいて、前記セレクタが前記データバスを前記メモリセルに接続しないようにするメモリ装置。
【請求項２】
前記ライトイネーブル信号及び前記データマスク信号に応じた第１の信号を生成し、その第１の信号が非活性化から活性化に変化する変化点を第１の遅延時間遅延させた信号を第１の遅延信号として出力するための第１のディレイ回路と、
前記第１の信号が非活性化から活性化に変化する変化点を前記第１の遅延時間よりも長い第２の遅延時間遅延させた信号を第２の遅延信号として出力するための第２のディレイ回路とを有し、
前記制御回路は、前記第１の遅延信号が非活性化から活性化へ変化する変化点において前記データ転送ゲートをパルス制御して前記第２のバッファにデータを入力し、前記第２の遅延信号が活性化から非活性化へ変化する変化点において前記データ取り込みゲートをパルス制御して前記第１のバッファにデータを入力する請求項１記載のメモリ装置。
【請求項３】
前記第１のディレイ回路は、前記ライトイネーブル信号が活性化しておりかつ前記データマスク信号がマスク解除である期間を規定する第１の信号を生成し、その第１の信号が非活性化から活性化に変化する変化点を第１の遅延時間遅延させた信号を第１の遅延信号として出力し、
前記第２のディレイ回路は、前記第１の信号が非活性化から活性化に変化する変化点を前記第１の遅延時間よりも長い第２の遅延時間遅延させた信号を第２の遅延信号として出力し、
前記制御回路は、前記第１の遅延信号が非活性化から活性化へ変化する変化点において前記データ転送ゲートをパルス制御して前記第２のバッファにデータを入力し、前記第２の遅延信号が活性化から非活性化へ変化する変化点において前記データ取り込みゲートをパルス制御して前記第１のバッファにデータを入力する請求項２記載のメモリ装置。
【請求項４】
さらに、ゲート制御により入力されるデータマスク信号を第１のマスクバッファにバッファリングするためのマスク取り込みゲートと、
ゲート制御により前記第１のマスクバッファのデータマスク信号を入力して第２のマスクバッファにバッファリングするためのマスク転送ゲートと、
ゲート制御により前記第２のマスクバッファのデータマスク信号を前記セレクタに出力するためのマスクライトゲートとを有する請求項１記載のメモリ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリ装置に関し、特にライトイネーブル信号及びデータマスク信号に応じてメモリセルにデータをライトするメモリ装置に関する。
【背景技術】
【０００２】
メモリ装置には、ライトイネーブル信号及びデータマスク信号に応じてメモリセルにデータをライトするものがある。ライトイネーブル信号及びデータマスク信号に応じて、現サイクルでデータをバッファに取り込み、次サイクルでそのデータを転送してライトする。
【０００３】
そのようなメモリ装置では、ライトの誤動作によるデータ誤書き込みを防止する必要がある。また、ライト動作の遅延を防止する必要がある。
【０００４】
半導体記憶装置でライト動作をするかしないかというぎりぎりの状態で外部からのライト指示があった場合、（１）ライト動作をしない、（２）ライト動作を行い、データやマスク状態を正しく取り込む、のいずれかである必要がある。ライト動作を行う場合に遷移中の意図しないマスク情報を取り込んだり、データを取り込んでないのに前のデータを使って別のアドレスに書き込んでしまったりという誤書き込みは避けなければならない。ただライトコマンドを発生しにくくするという手段ではライト動作が遅くなり、ライトサイクルも遅くなる。
【０００５】
【特許文献１】特開平１１−７７７０号公報
【特許文献２】特開２００３−７０６０号公報
【特許文献３】特開２００１−３５１３７７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明の目的は、ライト動作を遅らせることなくデータ破壊を防止することができるメモリ装置を提供することである。
【課題を解決するための手段】
【０００７】
本発明の一観点によれば、ゲート制御により入力されるデータを第１のバッファにバッファリングするためのデータ取り込みゲートと、ゲート制御により前記第１のバッファのデータを入力して第２のバッファにバッファリングするためのデータ転送ゲートと、ゲート制御により前記第２のバッファのデータをデータバスに出力するためのデータライトゲートと、前記データバス上のデータをライトして記憶するためのメモリセルと、データマスク信号によりマスクされると前記データバスを前記メモリセルに接続せず、データマスク信号によりマスク解除されると前記データバスを前記メモリセルに接続するためのセレクタと、ライトイネーブル信号及びデータマスク信号に応じて、第１のサイクルで前記データ取り込みゲートを制御して前記第１のバッファにデータを入力し、前記第１のサイクルの次サイクルで前記データ転送ゲートを制御して前記第１のバッファのデータを前記第２のバッファに入力し前記データライトゲートを制御して前記第２のバッファのデータを前記データバスに出力する制御回路とを有し、前記制御回路は、前記ライトイネーブル信号が活性化してから前記データマスク信号がマスクを指定する状態に変化するまでの間の時間が第１の時間である第１動作モードの場合には、第１のサイクルにおいて、前記データ取り込みゲートの制御により前記第１のバッファにデータを入力せず、かつ前記データ転送ゲートの制御により前記第２のバッファにデータを入力し、かつ前記データライトゲートの制御により前記第２のバッファのデータを前記データバスに出力せず、前記第１のサイクルの次のサイクルにおいて、前記データライトゲートの制御により前記第２のバッファのデータを前記データバスに出力し、前記ライトイネーブル信号が活性化してから前記データマスク信号がマスクを指定する状態に変化するまでの間の時間が前記第１の時間よりも長い第２動作モードの場合には、第１のサイクルにおいて、前記データ取り込みゲートの制御により前記第１のバッファにデータを入力せず、かつ前記データ転送ゲートの制御により前記第２のバッファにデータを入力し、かつ前記データライトゲートの制御により前記第２のバッファのデータを前記データバスに出力し、前記第１のサイクルの次のサイクルにおいて、前記セレクタが前記データバスを前記メモリセルに接続しないようにするメモリ装置が提供される。
【発明の効果】
【０００８】
ライトイネーブル信号が活性化してからデータマスク信号が変化する場合、その間の時間に応じて、データ取り込みゲートの制御により第１のバッファにデータを入力せず、かつデータ転送ゲートの制御により第２のバッファにデータを入力する。これにより、データ転送時間とデータ取り込み時間が一部重なって、現データを第２のバッファに入力しなければならない場合に、誤って次データがデータ取り込みゲート及びデータ転送ゲートを介して第２のバッファに入力されてしまうデータ破壊を防止できる。この場合、サイクル内でのライト動作を遅らせることなく、データ破壊を防止できる。
【発明を実施するための最良の形態】
【０００９】
図１は、本発明の実施形態による半導体記憶装置（メモリ装置）の構成例を示すブロック図である。メモリコア１２０は、ワードラインセレクタ１２１、センスアンプセレクタ１２２、メモリセル１２３、センスアンプ１２４及びカラムラインセレクタ１２５を有する。
【００１０】
アドレスＡＤＤは、アドレス入力回路１０１を介してアドレスデコーダ１０２に供給される。アドレスデコーダ１０２は、アドレスＡＤＤを基にデコードし、セレクタ１２１、１２２及び１２５に制御信号を出力する。
【００１１】
セルフリフレッシュタイマ１０３は、定期的にリフレッシュコマンドｒｅｆｐｚをアービタ１０４に出力する。チップイネーブル信号／ＣＥ１、アウトプットイネーブル信号／ＯＥ及びライトイネーブル信号／ＷＥは、コマンド入力回路１０５を介してコマンドコントローラ１０６に供給される。上位バイトマスク信号／ＵＢは、マスク解除により上位バイトを有効にし、マスクにより上位バイトを無効にする。下位バイトマスク信号／ＬＢは、マスク解除により下位バイトを有効にし、マスクにより下位バイトを無効にする。コマンドコントローラ１０６は、信号／ＣＥ１，／ＯＥ，／ＷＥ，／ＵＢ，／ＬＢを基に、リードコマンドｒｄｐｚ又はライトコマンドｗｒｐｚをアービタ１０４に出力する。
【００１２】
リードコマンドｒｄｐｚは、メモリセル１２３からデータをリードするためのコマンドである。ライトコマンドｗｒｐｚは、メモリセル１２３にデータをライトするためのコマンドである。リフレッシュコマンドｒｅｆｐｚは、メモリセル１２３をリフレッシュするためのコマンドである。
【００１３】
リフレッシュは、ＤＲＡＭの記憶が失われないように電荷を補充する動作である。半導体記憶装置の一種であるＤＲＡＭは、メモリセル１２３内にコンデンサを有し、コンデンサに電荷を蓄えることによってデータを保持する。この電荷は時間とともに減少するため、放っておくと一定時間で放電しきって情報を失ってしまう。これを防ぐため、ＤＲＡＭには一定時間ごとに再び電荷を注入するリフレッシュ動作を行う必要がある。
【００１４】
リフレッシュ中には、リード及びライトを行うことができない。逆に、リード又はライト中に、リフレッシュを行うことができない。したがって、リフレッシュ中に、リードコマンドｒｄｐｚ又はライトコマンドｗｒｐｚが発生すると、リード又はライト動作は待機させられる。逆に、リード又はライト中に、リフレッシュコマンドｒｅｆｐｚが発生すると、リフレッシュ動作は待機させられる。アービタ１０４は、リフレッシュコマンドｒｅｆｐｚ、リードコマンドｒｄｐｚ及びライトコマンドｗｒｐｚを発生順に応じてタイミングコントローラ１０７に出力する。
【００１５】
タイミングコントローラ１０７は、リフレッシュコマンドｒｅｆｐｚ、リードコマンドｒｄｐｚ及びライトコマンドｗｒｐｚに応じて、ワードラインセレクタ１２１、センスアンプセレクタ１２２及びカラムラインセレクタ１２５に制御信号ｍｗｌｏｎｚ，ｍｓａｅｚ等を出力する。制御信号ｍｗｌｏｎｚはワードラインセレクタ１２１に供給され、制御信号ｍｓａｅｚはセンスアンプセレクタ１２２に供給される。
【００１６】
上位バイトマスク信号／ＵＢ及び下位バイトマスク信号／ＬＢは、バイトマスク入力回路１０８を介してバイトマスクコントローラ１０９に供給される。バイトマスクコントローラ１０９は、その信号に応じてカラムラインセレクタ１２５に制御信号を出力する。
【００１７】
２次元配列されたメモリセル１２３は、ワードライン及びカラムラインにより特定される。ワードラインセレクタ１２１は、制御信号に応じて、ワードラインを選択して活性化する。カラムラインセレクタ１２５は、制御信号に応じて、カラムラインを選択する。ライトコマンドｗｒｐｚが発生すると、特定されたメモリセル１２３にデータをライトして記憶することができる。リードコマンドｒｄｐｚが発生すると、特定されたメモリセル１２３からデータをリードすることができる。メモリセル１２３は、リードコマンドｒｄｐｚ又はライトコマンドｗｒｐｚに応じてデータアクセスされる。センスアンプセレクタ１２２は、制御信号に応じて、センスアンプ１２４を活性化する。センスアンプ１２４は、メモリセル１２３のビットライン上の信号（データ）を増幅する。
【００１８】
リードコマンドｒｄｐｚが発生した場合、リードデータコントローラ１１２は、カラムラインセレクタ１２５を介してメモリセル１２３からデータをリードし、データＩ／Ｏ回路１１０を介して外部にデータＤＱを出力する。
【００１９】
ライトコマンドｗｒｐｚが発生した場合、ライトデータコントローラ１１１は、データＤＱをデータＩ／Ｏ回路１１０を介して入力し、カラムラインセレクタ１２５を介してメモリセル１２３にデータをライトする。
【００２０】
図２は、図１のバイトマスク入力回路１０８、バイトマスクコントローラ１０９、データＩ／Ｏ回路１１０、ライトデータコントローラ１１１及びカラムラインセレクタ１２５の構成例を示す。
【００２１】
コマンドジェネレータ２０１は、ライトイネーブル信号／ＷＥを基にライトコマンド信号ｗｒｐｘを出力する。ライトコマンド信号ｗｒｐｘは、ライトイネーブル信号／ＷＥの立ち下がりを遅延させた時点で発生するパルス信号である。タイミングディレイ回路２０４は、ライトコマンド信号ｗｒｐｘを遅延させてタイミング調整したライトコマンド信号ｂｗｒｐｚを出力する。
【００２２】
マスク入力制御回路２０２は、データバイトマスク信号／ＵＢ，／ＬＢを基に信号ｄｍｌｐｚを生成する。マスク入力回路２０５は、信号／ＬＢ，／ＵＢ，ｄｍｌｐｚ，ｗｒｐｘ，ｂｗｒｐｚを基に信号ｄｍｘ（／ＵＢ）及びｄｍｘ（／ＬＢ）を出力する。マスク入力回路２０５の詳細は、後に図３（Ｂ）を参照しながら説明する。カラムライン制御回路２０６は、信号ｄｍｘ（／ＵＢ）及びｄｍｘ（／ＬＢ）を基に信号ｃｌｚ（／ＵＢ）及びｃｌｚ（／ＬＢ）を出力する。
【００２３】
データ入力制御回路２０３は、ライトイネーブル信号／ＷＥ及びデータバイトマスク信号／ＵＢ，／ＬＢを基に上位バイト信号ｗｄｌｕｐｚ，ｐｗｄｌｕｐｚ及び下位バイト信号ｗｄｌｌｐｚ，ｐｗｄｌｌｐｚを出力する。
【００２４】
上位バイトデータ入力回路２０７Ｕは、信号／ＵＢ，ｐｗｄｌｕｚｐ，ｗｄｌｕｐｚ，ｗｄｌｌｐｚ，ｂｗｒｐｚに応じて、上位バイトデータＤＱ（／ＵＢ）を入力して上位バイトデータｃｄｂｚ（／ＵＢ）を出力する。下位バイトデータ入力回路２０７Ｌは、信号／ＬＢ，ｐｗｄｌｌｚｐ，ｗｄｌｕｐｚ，ｗｄｌｌｐｚ，ｂｗｒｐｚに応じて、下位バイトデータＤＱ（／ＬＢ）を入力して下位バイトデータｃｄｂｚ（／ＬＢ）を出力する。データ入力回路２０７Ｕ，２０７Ｌの詳細は、後に図３（Ａ）を参照しながら説明する。
【００２５】
上位バイトカラムライン選択回路２０８Ｕは、信号ｃｌｚ（／ＵＢ）に応じて、データｃｄｂｚ（／ＵＢ）を入力してビットライン信号ｂｌ（／ＵＢ）及び／ｂｌ（／ＵＢ）を出力する。下位バイトカラムライン選択回路２０８Ｌは、信号ｃｌｚ（／ＬＢ）に応じて、データｃｄｂｚ（／ＬＢ）を入力してビットライン信号ｂｌ（／ＬＢ）及び／ｂｌ（／ＬＢ）を出力する。具体的には、カラムライン選択回路２０８Ｕ，２０８Ｌは、データバス（信号ｃｄｂｚ）とメモリセル１２４のビットライン（信号ｂｌ，／ｂｌ）とを選択的に接続する。
【００２６】
図３（Ａ）は、図２のデータ入力回路２０７Ｕ及び２０７Ｌの構成例を示す。まず、上位バイトデータ入力回路２０７Ｕの構成例を説明する。データ取り込みゲート３０１Ｕは、信号ｐｗｄｌｕｐｚのゲート制御により、入力される上位バイトデータＤＱ（／ＵＢ）をバッファ３０２Ｕにバッファリングする。データ転送ゲート３０３Ｕは、信号ｗｄｌｕｐｚ又はｗｄｌｌｐｚの論理和信号のゲート制御により、バッファ３０２Ｕのデータを入力してバッファ３０４Ｕにバッファリングする。データライトゲート３０５Ｕは、信号ｂｗｒｐｚのゲート制御により、バッファ３０４Ｕのデータをデータバスに信号ｃｄｂｚ（／ＵＢ）として出力する。
【００２７】
次に、下位バイトデータ入力回路２０７Ｌの構成例を説明する。データ取り込みゲート３０１Ｌは、信号ｐｗｄｌｌｐｚのゲート制御により、入力される下位バイトデータＤＱ（／ＬＢ）をバッファ３０２Ｌにバッファリングする。データ転送ゲート３０３Ｌは、信号ｗｄｌｕｐｚ又はｗｄｌｌｐｚの論理和信号のゲート制御により、バッファ３０２Ｌのデータを入力してバッファ３０４Ｌにバッファリングする。データライトゲート３０５Ｌは、信号ｂｗｒｐｚのゲート制御により、バッファ３０４Ｌのデータをデータバスに信号ｃｄｂｚ（／ＬＢ）として出力する。
【００２８】
以下、データ取り込みゲート３０１Ｕ，３０１Ｌを総称してデータ取り込みゲートＧＤ１、データ転送ゲート３０３Ｕ，３０３Ｌを総称してデータ転送ゲートＧＤ２、データライトゲート３０５Ｕ，３０５Ｌを総称してデータライトゲートＧＤ３という。
【００２９】
図３（Ｂ）は、図２のマスク入力回路２０５の構成例を示す。まず、上位バイトマスク信号／ＵＢの回路について説明する。マスク取り込みゲート３１１Ｕは、信号ｄｍｌｐｚのゲート制御により、入力される上位バイトマスク信号／ＵＢをバッファ３１２Ｕにバッファリングする。マスク転送ゲート３１３Ｕは、信号ｂｗｒｐｚのゲート制御により、バッファ３１２Ｕのマスク信号を入力してバッファ３１４Ｕにバッファリングする。マスクライトゲート３１５Ｕは、信号ｗｒｐｘのゲート制御により、バッファ３１４Ｕのマスク信号を信号ｄｍｘ（／ＵＢ）として出力する。
【００３０】
次に、下位バイトマスク信号／ＬＢの回路について説明する。マスク取り込みゲート３１１Ｌは、信号ｄｍｌｐｚのゲート制御により、入力される下位バイトマスク信号／ＬＢをバッファ３１２Ｌにバッファリングする。マスク転送ゲート３１３Ｌは、信号ｂｗｒｐｚのゲート制御により、バッファ３１２Ｌのマスク信号を入力してバッファ３１４Ｌにバッファリングする。マスクライトゲート３１５Ｌは、信号ｗｒｐｘのゲート制御により、バッファ３１４Ｌのマスク信号を信号ｄｍｘ（／ＬＢ）として出力する。
【００３１】
以下、マスク取り込みゲート３１１Ｕ，３１１Ｌを総称してマスク取り込みゲートＧＭ１、マスク転送ゲート３１３Ｕ，３１３Ｌを総称してマスク転送ゲートＧＭ２、マスクライトゲート３１５Ｕ，３１５Ｌを総称してマスクライトゲートＧＭ３という。
【００３２】
図４は、図２のデータ入力制御回路２０３及びデータ入力回路２０７Ｕの参考例による構成例を示す。図４は、上位バイトの回路の構成を示すが、下位バイトの回路の構成も同様である。図５は、図４の回路の動作を説明するためのタイミングチャートである。図５において、ライトのサイクルＣ１及びサイクルＣ２は、アドレスＡＤＤ（図１）の切り替えに応じて決まる。第１のサイクルＣ１は第１のライト動作ＷＲ１のサイクル、第２のサイクルＣ２は第２のライト動作ＷＲ２のサイクルである。
【００３３】
ＣＤＩＮＢＵＦ回路４０１は、データＤＱ（／ＵＢ）をバッファリングしてデータＤＱ１を出力する。ＣＤＩＮＬＡＴ回路４０２は、信号ｗｄｌｕｚの制御に応じて、データＤＱ１を入力し、セットアップ／ホールドのタイミング調整してデータＤＱ２を出力する。
【００３４】
ＣＷＤＬＧＥＮ（／ＵＢ）回路４０３は、ライトイネーブル信号／ＷＥ、チップイネーブル信号／ＣＥ１及び上位バイトマスク信号／ＵＢを入力し、信号ｗｄｌｕｚを出力する。具体的には、ＣＷＤＬＧＥＮ（／ＵＢ）回路４０３は、チップイネーブル信号／ＣＥ１及びライトイネーブル信号／ＷＥが活性化（ローレベル）しておりかつ上位バイトマスク信号／ＵＢがマスク解除（ローレベル）である期間を活性化（ローレベル）させる第１の信号（破線で示す信号ｗｄｌｕｚ）を生成し、その第１の信号が非活性化（ハイレベル）から活性化（ローレベル）に変化する変化点を遅延させた信号を第１の遅延信号ｗｄｌｕｚとして出力する。
【００３５】
ＣＷＤＬＰＧＥＮ（／ＵＢ）回路４０４は、信号ｗｄｌｕｚを入力し、信号ｐｗｄｌｕｐｚ及びｗｄｌｕｐｚを出力する。信号ｗｄｌｕｐｚは、信号ｗｄｌｕｚがハイレベルからローレベルに変化する変化点においてパルスが生成されるデータ転送ゲートパルス信号である。信号ｐｗｄｌｕｐｚは、信号ｗｄｌｕｚがローレベルからハイレベルへ変化する変化点においてパルスが生成されるデータ取り込みゲートパルス信号である。
【００３６】
ＣＷＤＢＳＷ回路４０５は、図３（Ａ）の回路に対応し、信号ｂｗｒｐｚ，ｐｗｄｌｕｐｚ，ｗｄｌｕｐｚ，ｗｄｌｌｐｚの制御に応じて、データＤＱ２を入力し、データｃｄｂｚを出力する。信号ｂｗｒｐｚは、ライトイネーブル信号／ＷＥの立ち下がり点を遅延させた点でパルスが生成される。図３（Ａ）に示すように、データ取り込みゲートＧＤ１は、信号ｐｗｄｌｕｐｚのゲート制御に応じて、データＤＱ２をバッファ３０２Ｕに入力する。データ転送ゲートＧＤ２は、信号ｗｄｌｕｐｚ及びｗｄｌｌｐｚの論理和信号のゲート制御に応じて、バッファ３０４Ｕにデータを入力する。データライトゲートＧＤ３は、信号ｂｗｒｐｚの制御に応じて、バッファ３０４Ｕのデータをデータバスに出力する。
【００３７】
以上のように、ＣＤＩＮＢＵＦ回路４０１で入力データＤＱ（／ＵＢ）のハイレベル／ローレベル判定を行い、ＣＤＩＮＬＡＴ回路４０２でセットアップ／ホールドのタイミング調整を行い、ＣＷＤＢＳＷ回路４０５でデータバスへのデータ転送を行う。ＣＷＤＢＳＷ回路４０５では、信号ｐｗｄｌｕｐｚで上位バイトデータＤＱ２をバッファ３０２Ｕに取り込み、信号ｗｄｌｕｐｚ又はｗｄｌｌｐｚでバッファ３０４Ｕへデータの転送を行う。データバスへのデータ転送は、データライトの実行時に信号ｂｗｒｐｚでデータバスに転送することでタイミング調整を行っている。これらの取り込み及び転送制御を行っているのがＣＷＤＬＧＥＮ回路４０３及びＣＷＤＬＰＧＥＮ回路４０４であり、ＣＷＤＬＧＥＮ回路４０３でライト動作を行うべきか、ライトせずに待つかを判定するためのフィルタを構成しており、その出力信号ｗｄｌｕｚの立ち下がり及び立ち上がりそれぞれのエッジからデータ転送パルス信号ｗｄｌｕｐｚ及びデータ取り込みパルス信号ｐｗｄｌｕｐｚを生成している。このため、ライト動作をしない場合にデータの取り込みでデータ破壊を行わないようにするとデータの転送もされなくなるので、ライト動作の実行の有無の境界とデータの取り込み及びデータ転送の有無を高精度に調整する必要がある。
【００３８】
本来であれば、ライトイネーブル信号／ＷＥが立ち下がる以前に、バイトマスク信号／ＵＢ，／ＬＢが変化して確定している必要がある。しかし、電源電圧のばらつき変動や素子のばらつき変動等により、図５に示すように、バイトマスク信号／ＵＢ，／ＬＢの変化がライトイネーブル信号／ＷＥの立ち下がりよりも遅れてしまうことがある。この場合に、誤動作が生じないように制御する必要がある。
【００３９】
正常な場合には、ライトイネーブル信号／ＷＥの立ち下がりとバイトマスク信号／ＵＢ，／ＬＢの変化点が同じである。この場合は、例えば、サイクルＣ１において、データ取り込みゲート信号ｐｗｄｌｕｐｚによりバッファ３０２Ｕにデータを取り込む。そして、その次のサイクルＣ２において、データ転送信号ｗｄｌｕｐｚ又はｗｄｌｌｐｚによりそのデータをバッファ３０４Ｕに転送し、かつその後のデータライト信号ｂｗｒｐｚによりそのデータをデータバスに出力してメモリセルにライトする。これがライトサイクルである。
【００４０】
バイトマスク信号／ＵＢ，／ＬＢの切り替えがライトイネーブル信号／ＷＥの立ち下がりより遅れてしまったような場合、ライトの初期にマスクすべきバイト（例えば下位バイト）へのライト状態が回路内部に発生してしまう。そのため、本来はライトＷＲ１で下位バイトマスク信号／ＬＢの立ち上がり時点のデータを取り込んではいけないが、現サイクルＣ１において、データ取り込みゲート信号ｐｗｄｌｌｐｚのパルス５０１で下位バイトデータＤＱ（／ＬＢ）を取り込んでしまい、次サイクルＣ２において、データ転送ゲート信号ｗｄｌｌｐｚのパルス５０２でデータを転送し、データライトゲート信号ｂｗｒｐｚのパルス５０３でデータバスへデータが出力されてしまう。パルス５０３以降でライト動作を行ってメモリセルにデータを書き込んでしまうため、データが破壊される。すなわち、パルス５０１の時点では、下位バイトデータＤＱ（／ＬＢ）が供給されていないので、パルス５０１により取り込んだデータは不定（不正）データである。そのデータをメモリセルを書き込んでしまうために、データ破壊が生じる。下記の本実施形態では、上記の問題点を解決することができる。
【００４１】
図６は、図２のデータ入力制御回路２０３及びデータ入力回路２０７Ｕの本実施形態による構成例を示す。図６は、上位バイトの回路の構成を示すが、下位バイトの回路の構成も同様である。図７は、図６の回路の動作を説明するためのタイミングチャートである。図７において、ライトのサイクルＣ１及びサイクルＣ２は、アドレスＡＤＤ（図１）の切り替えに応じて決まる。第１のサイクルＣ１は第１のライト動作ＷＲ１のサイクル、第２のサイクルＣ２は第２のライト動作ＷＲ２のサイクルである。
【００４２】
図６の回路が図４の回路に比べて異なる点を説明する。ＣＷＤＬＧＥＮ（／ＵＢ）回路６０３及びＣＷＤＬＰＧＥＮ（／ＵＢ）回路６０４は、図４のＣＷＤＬＧＥＮ回路（／ＵＢ）４０３及びＣＷＤＬＰＧＥＮ（／ＵＢ）回路４０４の代わりに設けられる。
【００４３】
ＣＷＤＬＧＥＮ（／ＵＢ）回路６０３は、ライトイネーブル信号／ＷＥ、チップイネーブル信号／ＣＥ１及び上位バイトマスク信号／ＵＢを入力し、信号ｗｄｌｕｚ及びｐｗｄｌｕｚを出力する。具体的には、ＣＷＤＬＧＥＮ（／ＵＢ）回路６０３は、チップイネーブル信号／ＣＥ１及びライトイネーブル信号／ＷＥが活性化（ローレベル）しておりかつ上位バイトマスク信号／ＵＢがマスク解除（ローレベル）である期間を活性化（ローレベル）させる第１の信号（破線で示す信号ｗｄｌｕｚ）を生成し、その第１の信号が非活性化（ハイレベル）から活性化（ローレベル）に変化する変化点を第１の遅延時間遅延させた信号を第１の遅延信号ｗｄｌｕｚとして出力する。また、ＣＷＤＬＧＥＮ（／ＵＢ）回路６０３は、上記の第１の信号（破線で示す信号ｐｗｄｌｕｚ）が非活性化（ハイレベル）から活性化（ローレベル）に変化する変化点を上記第１の遅延時間より長い第２の遅延時間遅延させた信号を第２の遅延信号ｐｗｄｌｕｚとして出力する。
【００４４】
ＣＷＤＬＰＧＥＮ（／ＵＢ）回路６０４は、信号ｗｄｌｕｚ及びｐｗｄｌｕｚを入力し、信号ｐｗｄｌｕｐｚ及びｗｄｌｕｐｚを出力する。信号ｗｄｌｕｐｚは、信号ｗｄｌｕｚがハイレベルからローレベルに変化する変化点においてパルスが生成されるデータ転送ゲートパルス信号である。信号ｐｗｄｌｕｐｚは、信号ｐｗｄｌｕｚがローレベルからハイレベルへ変化する変化点においてパルスが生成されるデータ取り込みゲートパルス信号である。
【００４５】
本実施形態では、ＣＷＤＬＧＥＮ回路６０３のフィルタをデータ取り込み信号とデータ転送信号で個別に用意する。そのため、データの転送（信号ｗｄｌｌｐｚ）を行うがデータの取り込み（信号ｐｗｄｌｌｐｚ）を行わないという状態を実現することができる。このため、図４及び図５の参考例のように次データがデータバスへスルーしてしまいデータ破壊が発生するという現象を防止することができる。その詳細は、後に図８（Ａ）〜（Ｃ）を参照しながら説明する。
【００４６】
図７において、サイクルＣ１では、下位バイトマスク信号がハイレベル（マスク状態）であり、下位バイトデータＤＱ（／ＬＢ）が供給されていない。下位バイトデータ取り込みパルス７０１が発生しないので、不定（不正）データを取り込んでメモリセルにライトすることを防止できる。具体的には、次のサイクルＣ２でデータ転送パルス７０２及びデータライトパルス７０３が発生し、データバスに前のデータが供給されるが、下位バイトマスク信号／ＬＢがハイレベルとしてカラムライン選択回路２０８Ｌ（図２）に供給されているので、データバスはメモリセルに接続されない。結果的に、メモリセルへのライトは行われず、データ破壊は生じない。
【００４７】
そして、下位バイト取り込みゲート信号ｐｗｄｌｌｐｚは、サイクルＣ２において、パルスが発生し、下位バイトデータＤＱ（／ＬＢ）が取り込まれる。そして、さらに次のサイクルにおいて、そのデータがデータ転送ゲート信号により転送され、データライトゲート信号によりデータバスに供給される。そして、下位バイトマスク信号／ＬＢがローレベルとしてカラムライン選択回路２０８Ｌ（図２）に供給され、データバスはメモリセルに接続される。結果的に、メモリセルへ正常なデータをライトすることができる。
【００４８】
以上のように、サイクルＣ２において、下位バイトのデータ転送が行われ、マスク信号のハイレベルが取り込めればデータバスはメモリセルに接続されずにデータを実際にメモリセルに書き込むことはないのでデータ破壊が生じない。そのため、ライトコマンドの発生自体の制限を緩くしてもデータ破壊を起こさず、ライトサイクル動作の鈍化を防止することが可能である。
【００４９】
このように、マスク取り込み、データ取り込み、データライト、データ転送の優先順位を適切なものとすることによってライトコマンドが発生してもデータ破壊が発生しないため、ライト動作の遅延を防止することができる。
【００５０】
図８（Ａ）〜（Ｃ）は、ライト動作例を示す。サイクル毎に、ライト動作ＷＲ０，ＷＲ１，ＷＲ２が順に行われる例を説明する。
【００５１】
図８（Ａ）は、基本のライト動作例を示す。ライトイネーブル信号／ＷＥにおいて、ライト動作ＷＲ１及びＷＲ２のローレベル期間が十分に長い場合の正常動作を示す。
【００５２】
ライトイネーブル信号／ＷＥがライト動作ＷＲ１のために立ち下がると、ライト動作ＷＲ０のデータ転送ＧＤ２［０］が行われ、ライト動作ＷＲ１のマスク取り込みＧＭ１［１］が行われる。次に、ライト動作ＷＲ０のマスクライトＧＭ３［０］が行われる。次に、ライト動作ＷＲ０のデータライトＧＤ３［０］が行われ、ライト動作ＷＲ１のマスク転送ＧＭ２［１］が行われる。その後、ライト動作ＷＲ０のライトコマンドＷＲ［０］によりメモリセルにデータがライトされる。また、ライトイネーブル信号／ＷＥが立ち上がると、ライト動作ＷＲ１のデータ取り込みＧＤ１［１］が行われる。
【００５３】
次に、ライトイネーブル信号／ＷＥがライト動作ＷＲ２のために立ち下がると、ライト動作ＷＲ１のデータ転送ＧＤ２［１］が行われ、ライト動作ＷＲ２のマスク取り込みＧＭ１［２］が行われる。次に、ライト動作ＷＲ１のマスクライトＧＭ３［１］が行われる。次に、ライト動作ＷＲ１のデータライトＧＤ３［１］が行われ、ライト動作ＷＲ２のマスク転送ＧＭ２［２］が行われる。その後、ライト動作ＷＲ１のライトコマンドＷＲ［１］によりメモリセルにデータがライトされる。また、ライトイネーブル信号／ＷＥが立ち上がると、ライト動作ＷＲ２のデータ取り込みＧＤ１［２］が行われる。
【００５４】
図８（Ｂ）は、図４の参考例のメモリ装置のライト動作例を示す。ライトイネーブル信号／ＷＥにおいて、ライト動作ＷＲ１のローレベル期間が短い場合の誤動作を示す。この場合、ライトイネーブル信号／ＷＥがライト動作ＷＲ１のために立ち下がると、ライト動作ＷＲ０のデータ転送ＧＤ２［０］が行われ、それに重なるようにライト動作ＷＲ１のデータ取り込みＧＤ１［１］が行われる。データ転送ゲート信号ｗｄｌｕｐｚのパルスとデータ取り込みゲート信号ｐｗｄｌｕｐｚのパルスとが時間的に一部重なってしまい、図３（Ａ）のデータ転送ゲートＧＤ２及びデータ取り込みゲートＧＤ１が同時に開いてしまう。その結果、バッファ３０４Ｕには、本来ライト動作ＷＲ０のデータが格納されなければならないのに、エラーによりライト動作ＷＲ１のデータが格納されてしまう。そして、次のデータライトＧＤ３［０］及びライトコマンドＷＲ［０］では、そのライト動作ＷＲ１のデータがメモリセルにライトされてしまい、誤動作になる。これは、図５において、データ転送ゲート信号ｗｄｌｕｐｚ及びデータ取り込みゲート信号ｐｗｄｌｕｐｚが共に同じ信号ｗｄｌｕｚの立ち下がり及び立ち上がりを基に生成されるためである。すなわち、データ転送ゲート信号ｗｄｌｕｐｚのパルスが生成されたときには、必ずデータ取り込みゲート信号ｐｗｄｌｕｐｚのパルスも生成されてしまい、ライトイネーブル信号／ＷＥのローレベル期間が短くなると、その両者のパルスが重なってしまうためである。
【００５５】
図８（Ｃ）は、図６の本実施形態のメモリ装置のライト動作例を示す。ライトイネーブル信号／ＷＥにおいて、ライト動作ＷＲ１のローレベル期間が短い場合に誤動作を防止できることを説明する。この場合、ライトイネーブル信号／ＷＥがライト動作ＷＲ１のために立ち下がると、ライト動作ＷＲ０のデータ転送ＧＤ２［０］が行われる。しかし、ライトイネーブル信号／ＷＥのローレベル期間が短いためにライト動作ＷＲ１のデータ取り込みＧＤ１［１］が行われない。すなわち、ライトイネーブル信号／ＷＥのローレベル期間が短い場合には、図７において、遅延時間が短い信号ｗｄｌｕｚはローレベル期間が生じ、遅延時間が長い信号ｐｗｄｌｕｚはローレベル期間が生じない。その結果、データ転送ゲート信号ｗｄｌｕｐｚのパルスが発生してデータ転送ＧＤ２［０］を行い、データ取り込みゲート信号ｐｗｄｌｕｐｚのパルスが発生せずにデータ取り込みＧＤ１［１］が行われない。これにより、データ転送ゲートＧＤ２が開き、データ取り込みゲートＧＤ１が閉じるので、バッファ３０４Ｕにはライト動作ＷＲ０の正常なデータが格納され、データライトＧＤ３［０］及びライトコマンドＷＲ［０］によりそのデータがメモリセルに書き込まれ、正常な動作が保証される。
【００５６】
図９は、ｔＢＳスペック及びｔＢＷスペックを説明するための図である。上記のように、ライトイネーブル信号／ＷＥの立ち下がり時又はそれよりも前にバイトマスク信号／ＵＢ及び／ＬＢが変化して確定していれば、正常なライト動作が行われる。ライトイネーブル信号／ＷＥの立ち下がりの後にバイトマスク信号／ＵＢ，／ＬＢが変化したときには、誤動作を防止する必要がある。この際、時間ｔＢＳ［０］は、ライトイネーブル信号／ＷＥが活性化（ローレベル）してからバイトマスク信号／ＵＢ，／ＬＢが変化するまでの間の負の時間である。時間ｔＢＷ［１］は、バイトマスク信号／ＵＢ，／ＬＢが変化してからライトイネーブル信号／ＷＥが非活性化（ハイレベル）するまでの間の時間である。
【００５７】
図１０（Ａ）及び（Ｂ）は、図４の参考例のメモリ装置の動作モードを示す。データ転送ＧＤ２及びデータ取り込みＧＤ１は、両方行うか又は両方行わないかである。横軸は時間ｔＢＳ［ｎｓ］を示し、０よりも左側が負値を示す。
【００５８】
図１０（Ａ）は、データライトＧＤ３をデータ転送ＧＤ２及びデータ取り込みＧＤ１よりも優先させる場合を示す。動作モード１、２ａ、３ａ、４、５の順に、時間ｔＢＳ（負値）が小さくなる。
【００５９】
動作モード１では、そのサイクルにおいて、データライトＧＤ３、データ転送ＧＤ２及びデータ取り込みＧＤ１を行わず、マスク取り込みＧＭ１はマスク信号／ＵＢとしてハイレベルを取り込む。この結果、メモリセルへの書き込みは行なわれず、誤動作（データ破壊）はない。
【００６０】
動作モード２ａでは、そのサイクルにおいて、データライトＧＤ３を行い、データ転送ＧＤ２及びデータ取り込みＧＤ１を行わず、マスク取り込みＧＭ１はマスク信号／ＵＢとしてハイレベルを取り込む。この際、データ転送ＧＤ２が行われずに、データライトＧＤ３が行われるため、正しいデータがメモリセルに書き込まれず、データ破壊が生じることがある。
【００６１】
動作モード３ａでは、そのサイクルにおいて、データライトＧＤ３、データ転送ＧＤ２及びデータ取り込みＧＤ１を行い、マスク取り込みＧＭ１はマスク信号／ＵＢとしてハイレベルを取り込む。この際、図８（Ｂ）のように、データ転送ＧＤ２及びデータ取り込みＧＤ１が時間的に重なることがあり、誤ったデータをメモリセルにライトしてしまい、データ破壊してしまうことがある。
【００６２】
動作モード４では、そのサイクルにおいて、データライトＧＤ３、データ転送ＧＤ２及びデータ取り込みＧＤ１を行い、マスク取り込みＧＭ１はマスク信号／ＵＢとして不定値を取り込む。マスク信号／ＵＢとして不定値が取り込まれるので、正しいマスク制御（カラムライン選択）が保証されず、データ破壊が生じることがある。動作モード４は、マスク信号／ＵＢのハイレベル（動作モード１〜３ａ）とローレベル（動作モード５）の境界であるので、マスク信号／ＵＢが不定値になる。
【００６３】
動作モード５では、そのサイクルにおいて、データライトＧＤ３、データ転送ＧＤ２及びデータ取り込みＧＤ１を行い、マスク取り込みＧＭ１はマスク信号／ＵＢとしてローレベルを取り込む。この場合は、正常なライト動作が行われる。
【００６４】
図１０（Ｂ）は、データ転送ＧＤ２及びデータ取り込みＧＤ１をデータライトＧＤ３よりも優先させる場合を示す。動作モード１、２ｂ、３ｂ、４、５の順に、時間ｔＢＳ（負値）が小さくなる。動作モード１、４及び５は、図１０（Ａ）のものと同じである。また、動作モード３ｂは、図１０（Ａ）の動作モード３ａと同様のデータ破壊の可能性がある。
【００６５】
動作モード２ｂでは、そのサイクルにおいて、データライトＧＤ３を行わず、データ転送ＧＤ２及びデータ取り込みＧＤ１を行い、マスク取り込みＧＭ１はマスク信号／ＵＢとしてハイレベルを取り込む。この際、データ取り込みＧＤ１及びデータ転送ＧＤ２が行われ、データライトＧＤ３が行われないため、バッファ３０４Ｕにデータが上書きされてしまい、データ破壊が生じることがある。
【００６６】
図１１は、図１２〜図１５、図１７及び図１８を説明するためのライト動作例を示す。ライトイネーブル信号／ＷＥは、ライト動作ＷＲ１、ＷＲ２及びＷＲ３の順にローレベル期間が生じる。この間、マスク信号／ＬＢはハイレベルであるとする。ライト動作ＷＲ１では、マスク信号／ＵＢとしてＭ１、データＤＱとしてＤ１が供給される。ライト動作ＷＲ２では、マスク信号／ＵＢとしてＭ２、データＤＱとしてＤ２が供給される。ライト動作ＷＲ３では、マスク信号／ＵＢとしてＭ３、データＤＱとしてＤ３が供給される。
【００６７】
図１２は、動作モード５のデータ制御及びマスク制御例を示す。ライトイネーブル信号／ＷＥ（ライト動作ＷＲ１〜ＷＲ３）のローレベル期間が十分に長い場合を示す。
【００６８】
ライトイネーブル信号／ＷＥの立ち下がりによりライト動作ＷＲ１が指示されると、データ転送ゲートＧＤ２のスイッチが閉じデータＤ０がバッファ３０４Ｕに格納され、マスク取り込みゲートＧＭ１のスイッチが閉じマスク信号Ｍ１がバッファ３１２Ｕに格納される。次に、データライトゲートＧＤ３のスイッチが閉じデータＤ０がデータバスに出力され、マスクライトゲートＧＭ３のスイッチが閉じマスク信号Ｍ０が出力される。次に、マスク転送ゲートＧＭ２のスイッチが閉じマスク信号Ｍ１がバッファ３１４Ｕに格納される。次に、データ取り込みゲートＧＤ１のスイッチが閉じデータＤ１がバッファ３０２Ｕに格納される。ライト動作ＷＲ０（データＤ０）は、正常に行われる。
【００６９】
ライトイネーブル信号／ＷＥの立ち下がりによりライト動作ＷＲ２が指示されると、データ転送ゲートＧＤ２のスイッチが閉じデータＤ１がバッファ３０４Ｕに格納され、マスク取り込みゲートＧＭ１のスイッチが閉じマスク信号Ｍ２がバッファ３１２Ｕに格納される。次に、データライトゲートＧＤ３のスイッチが閉じデータＤ１がデータバスに出力され、マスクライトゲートＧＭ３のスイッチが閉じマスク信号Ｍ１が出力される。次に、マスク転送ゲートＧＭ２のスイッチが閉じマスク信号Ｍ２がバッファ３１４Ｕに格納される。次に、データ取り込みゲートＧＤ１のスイッチが閉じデータＤ２がバッファ３０２Ｕに格納される。ライト動作ＷＲ１（データＤ１）は、正常に行われる。
【００７０】
ライトイネーブル信号／ＷＥの立ち下がりによりライト動作ＷＲ３が指示されると、データ転送ゲートＧＤ２のスイッチが閉じデータＤ２がバッファ３０４Ｕに格納され、マスク取り込みゲートＧＭ１のスイッチが閉じマスク信号Ｍ３がバッファ３１２Ｕに格納される。次に、データライトゲートＧＤ３のスイッチが閉じデータＤ２がデータバスに出力され、マスクライトゲートＧＭ３のスイッチが閉じマスク信号Ｍ２が出力される。次に、マスク転送ゲートＧＭ２のスイッチが閉じマスク信号Ｍ３がバッファ３１４Ｕに格納される。次に、データ取り込みゲートＧＤ１のスイッチが閉じデータＤ３がバッファ３０２Ｕに格納される。ライト動作ＷＲ２（データＤ２）は、正常に行われる。
【００７１】
図１３は、動作モード１のデータ制御及びマスク制御例を示す。基本的には、図１２と同じであり、異なる点を説明する。ライトイネーブル信号／ＷＥ（ライト動作ＷＲ２）のローレベル期間が短い場合を示す。
【００７２】
ライトイネーブル信号／ＷＥの立ち下がりによりライト動作ＷＲ２が指示されると、データ転送ゲートＧＤ２のスイッチが開いたままで、マスク取り込みゲートＧＭ１のスイッチが閉じマスク信号Ｍ２がバッファ３１２Ｕに格納される。次に、データライトゲートＧＤ３のスイッチが開いたままで、マスクライトゲートＧＭ３のスイッチが開いたままである。次に、マスク転送ゲートＧＭ２のスイッチが開いたままである。次に、データ取り込みゲートＧＤ１のスイッチが開いたままである。このサイクルではライト動作ＷＲ１（データＤ１）が行われず、次のサイクルでライト動作ＷＲ１（データＤ１）が行われる。
【００７３】
図１４は、動作モード２ａのデータ制御及びマスク制御例を示す。基本的には、図１２と同じであり、異なる点を説明する。ライトイネーブル信号／ＷＥ（ライト動作ＷＲ２）のローレベル期間が中間値付近の場合を示す。
【００７４】
ライトイネーブル信号／ＷＥの立ち下がりによりライト動作ＷＲ２が指示されると、データ転送ゲートＧＤ２のスイッチが開いたままで、マスク取り込みゲートＧＭ１のスイッチが閉じマスク信号Ｍ２がバッファ３１２Ｕに格納される。次に、データライトゲートＧＤ３のスイッチが閉じデータＤ０がデータバスに出力され、マスクライトゲートＧＭ３のスイッチが閉じマスク信号Ｍ１が出力される。次に、マスク転送ゲートＧＭ２のスイッチが閉じマスク信号Ｍ２がバッファ３１４Ｕに格納される。次に、データ取り込みゲートＧＤ１のスイッチが開いたままである。
【００７５】
このサイクルでは、誤ったデータＤ０をマスク信号Ｍ１でライトし、データ破壊が生じる。この次のサイクルでは、マスク信号がハイレベルであり、データＤ１のデータバスがメモリセルに接続されないので、メモリセルへのライトは行われない。したがって、データＤ１のライトが実行されず、データが破壊される。
【００７６】
図１５は、動作モード２ｂのデータ制御及びマスク制御例を示す。基本的には、図１２と同じであり、異なる点を説明する。ライトイネーブル信号／ＷＥ（ライト動作ＷＲ２）のローレベル期間が中間値付近の場合を示す。
【００７７】
ライトイネーブル信号／ＷＥの立ち下がりによりライト動作ＷＲ２が指示されると、データ転送ゲートＧＤ２のスイッチが閉じデータＤ１がバッファ３０４Ｕに格納され、マスク取り込みゲートＧＭ１のスイッチが閉じマスク信号Ｍ２がバッファ３１２Ｕに格納される。次に、データライトゲートＧＤ３のスイッチが開いたままで、マスクライトゲートＧＭ３のスイッチが開いたままである。次に、マスク転送ゲートＧＭ２のスイッチが開いたままである。次に、データ取り込みゲートＧＤ１のスイッチが閉じデータＤ２がバッファ３０２Ｕに格納される。
【００７８】
このサイクルでは、データライトゲートＧＤ３のスイッチが開いたままで、データＤ０が更新され、新たなデータ書き込みは行われない。次のサイクルでは、データＤ２がメモリセルに書き込まれる。この結果、ライト動作ＷＲ１（データＤ１）がスキップされたことになり、データ破壊が生じる。
【００７９】
以上のように、図１０（Ａ）において、データライトＧＤ３が開始する動作モード２ａの状態ではデータ転送ＧＤ２が行われないのでデータが破壊される。動作モード３ａの領域では、動作モード２ａと３ａの境界でデータ取り込みパルスとデータ転送パルスが同時に発生することで次サイクルのデータがスルーしてしまい、バッファ３０４Ｕのデータを破壊する。動作モード４では、マスク取り込みＧＭ１が不安定で意図したライト動作が実現できない。動作モード５ではマスク取り込みＧＭ１、データ取り込みＧＤ１、データ転送ＧＤ２が正常に実行でき、意図したライト動作が実行される。
【００８０】
図１６は、図６の本実施形態のメモリ装置の動作モードを示す。データ取り込みＧＤ１、データライトＧＤ３及びデータ転送ＧＤ２の順に、発生優先度が高くなっていく。横軸は時間ｔＢＳ［ｎｓ］を示し、０よりも左側が負値を示す。動作モード１、２ｃ、２ｄ、３、４、５の順に、時間ｔＢＳ（負値）が小さくなる。動作モード１、３、４及び５は、図１０（Ａ）のものと同じである。
【００８１】
動作モード２ｃでは、そのサイクルにおいて、データ転送ＧＤ２を行い、データライトＧＤ３及びデータ取り込みＧＤ１を行わず、マスク取り込みＧＭ１はマスク信号／ＵＢとしてハイレベルを取り込む。この詳細は、後に図１７を参照しながら説明する。
【００８２】
動作モード２ｄでは、そのサイクルにおいて、データライトＧＤ３及びデータ転送ＧＤ２を行い、データ取り込みＧＤ１を行わず、マスク取り込みＧＭ１はマスク信号／ＵＢとしてハイレベルを取り込む。この詳細は、後に図１８を参照しながら説明する。
【００８３】
動作モード３では、図８（Ｂ）のように、データ転送ＧＤ２［０］及びデータ取り込みＧＤ１［１］が重なってデータ破壊することはない。その場合は、図８（Ｃ）に示すように、データ取り込みＧＤ１［１］が発生せず、動作モード２ｄとなる。動作モード３では、データ転送ＧＤ２［０］及びデータ取り込みＧＤ１［１］が重ならないで実行されるので、データ破壊は生じない。
【００８４】
図１７は、動作モード２ｃのデータ制御及びマスク制御例を示す。基本的には、図１２と同じであり、異なる点を説明する。ライトイネーブル信号／ＷＥ（ライト動作ＷＲ２）のローレベル期間が中間値付近の場合を示す。
【００８５】
ライトイネーブル信号／ＷＥの立ち下がりによりライト動作ＷＲ２が指示されると、データ転送ゲートＧＤ２のスイッチが閉じデータＤ１がバッファ３０４Ｕに格納され、マスク取り込みゲートＧＭ１のスイッチが閉じマスク信号Ｍ２がバッファ３１２Ｕに格納される。次に、データライトゲートＧＤ３のスイッチが開いたままで、マスクライトゲートＧＭ３のスイッチが開いたままである。次に、マスク転送ゲートＧＭ２のスイッチが開いたままである。次に、データ取り込みゲートＧＤ１のスイッチが開いたままである。このサイクルではライト動作ＷＲ１（データＤ１）が行われず、次のサイクルでライト動作ＷＲ１（データＤ１）が行われる。
【００８６】
図１８は、動作モード２ｄのデータ制御及びマスク制御例を示す。基本的には、図１２と同じであり、異なる点を説明する。ライトイネーブル信号／ＷＥ（ライト動作ＷＲ２）のローレベル期間が中間値付近の場合を示す。
【００８７】
ライトイネーブル信号／ＷＥの立ち下がりによりライト動作ＷＲ２が指示されると、データ転送ゲートＧＤ２のスイッチが閉じデータＤ１がバッファ３０４Ｕに格納され、マスク取り込みゲートＧＭ１のスイッチが閉じマスク信号Ｍ２がバッファ３１２Ｕに格納される。次に、データライトゲートＧＤ３のスイッチが閉じデータＤ１がデータバスに出力され、マスクライトゲートＧＭ３のスイッチが閉じマスク信号Ｍ１が出力される。次に、マスク転送ゲートＧＭ２のスイッチが閉じマスク信号Ｍ２がバッファ３１４Ｕに格納される。次に、データ取り込みゲートＧＤ１のスイッチが開いたままである。
【００８８】
このサイクルでは、ライト動作ＷＲ１（データＤ１）は、正常に行われる。次のサイクルでは、マスク信号がハイレベルになり、データバス及びメモリセルが接続されないので、データＤ１はメモリセルにライトされない。結果として、データＤ０及びＤ１を正常にライトすることができる。
【００８９】
以上のように、本実施形態において、動作モード１は、データライトＧＤ３を行わず、データ転送ＧＤ２も行わない。動作モード２ｃは、データライトＧＤ３は行わないが、次のライトに備えてデータ転送ＧＤ２を行う。動作モード２ｄは、マスク信号がハイレベルでライトコマンドは認識するが実際の書き込みは行わない。その際、バイトマスク信号の立ち上がり時のデータは取り込まない。動作モード３は、マスク信号がハイレベルでライトコマンドは認識するが実際の書き込みは行わない。その際、バイトマスク信号の立ち上がり時のデータは取り込む。動作モード４は、不定値のマスク信号の誤取り込みでライト動作を行うためにデータ破壊が生じる。動作モード５は、バイトマスク信号のローレベルに対応するデータを取り込み、ライト動作を実行する。
【００９０】
データ破壊を行うのは動作モード４であるが、電源電圧変動等によりタイミングが変動することにより、マスク取り込みＧＭ１のタイミングが変動する。そのため、条件によってはライトなし（Ｎｏ ＷＲ）となったり、ライト（ＷＲ）となったり挙動が不安定となる。ライトなし（Ｎｏ ＷＲ）の場合にはマスク信号としてハイレベルが取り込めていれば、データを取り込んでしまったとしても、実際にはデータの書き込みは行われない。ライト（ＷＲ）の場合にはデータが取り込めていることが保障されていることからマスク信号のローレベルに相当するデータの書き込みが行われる。
【００９１】
つまり、ライト動作を行わない場合には半導体記憶装置内部のデータは状態を維持し、ライト動作を行う場合にはライトコマンドとして認識された場合に相当するデータの書き込みが行われる。データの取り込みや転送を行っていないにも関わらずライト動作をしてしまうということを防ぐことができる。
【００９２】
図１０（Ａ）では動作モード５のマスク取り込みのタイミングのみばらつくような図となっているが、実際にはデータ転送ＧＤ２（動作モード１〜２ａ間）、データライトＧＤ３（動作モード２ａ〜３ａ間）、データ取り込みＧＤ１（動作モード３ａ〜４間）も変動する。しかし、これらの位置が変動しても、ライトなし（Ｎｏ ＷＲ）がライト（ＷＲ）となったり、ライト（ＷＲ）がライトなし（Ｎｏ ＷＲ）となることはなく、マスク取り込みタイミングの変動（動作モード５）の分だけに誤動作の生じる期間を抑えることが可能となる。図１６の場合も同様である。
【００９３】
図１６において、もし、データ取り込みＧＤ１のタイミング境界がマスク取り込みＧＭ１と同程度ばらつき、さらに動作モード４の領域に設定されているとすると、変動によってデータ取り込みＧＤ１のばらつきは動作モード５の領域にも食い込むことになるが、するとライト動作で書き込まれるデータが不安定となることからデータ破壊が動作モード５の領域に食い込むこととなる。これは、動作モード２ｃ〜２ｄ間に設定されているデータライトＧＤ３のタイミング境界が動作モード４の領域に設定された場合も同様であり、動作モード１〜２ｃ間に設定されているデータ転送ＧＤ２のタイミング境界が動作モード４の領域に設定された場合も同様である。
【００９４】
したがって、誤書き込みを行ってしまうようなタイミングを最小限に抑えるために、データライトＧＤ３を行う場合でも適切なマスク制御を行うことによりデータ破壊を抑制し、ライトコマンドの発生を遅らせるというライトサイクル動作の遅延を防止することができる。
【００９５】
図１９（Ａ）は、アドレス、チップイネーブル信号／ＣＥ１、ライトイネーブル信号／ＷＥ、上位バイトマスク信号／ＵＢ及び下位バイトマスク信号／ＬＢを示す。サイクルＣ１及びＣ２等は、アドレスの切り替えにより決まる。
【００９６】
図１９（Ｂ）は、図１９（Ａ）に対応し、図４の参考例のメモリ装置のライト動作例を示す。ライトイネーブル信号／ＷＥの立ち下がりを遅延させた信号ｗｅｂｄｚの立ち下がりエッジから信号ｗｒｐｚのパルスを発生する。参考例では、データ破壊を発生させないようにするために、信号ｗｅｂｄｚの立ち下がりエッジの遅延を大きくする必要がある。すると、ライト動作の開始が遅延するので、コア動作を示す信号ｒａｓｚの終了も遅くなり、ライト動作サイクルが遅くなる。
【００９７】
このように、ライトなし（Ｎｏ ＷＲ）によってデータ破壊の発生を防止する場合、参考例ではデータライトコマンドを発生しにくくする必要があった。しかし、ライト動作の発生を遅らせるとライトサイクルタイムが延びてしまうというデメリットを持っていた。
【００９８】
図１９（Ｃ）は、図１９（Ａ）に対応し、図６の本実施形態のメモリ装置のライト動作例を示す。ライトイネーブル信号／ＷＥの立ち下がりを遅延させた信号ｗｅｂｄｚの立ち下がりエッジから信号ｗｒｐｚのパルスを発生する。ただし、この遅延時間は短いものにすることができる。遅延時間を短くすることにより、ライト動作の開始を早くすることができ、コア動作を示す信号ｒａｓｚの終了が早くなり、ライト動作サイクルが速くなる。本実施形態によれば、ライト動作を遅らせなくても、データ破壊を防止できる。
【００９９】
図２０は、本実施形態のライト動作の処理例を示すフローチャートである。このフローチャートは、ｔＢＷスペック違反の状態（図９のｔＢＳが負値の状態）の入力があった場合の処理である。
【０１００】
ステップＳ２００１では、データライトＧＤ３を実行するか否かをチェックする。実行する場合にはステップＳ２００２へ進み、実行しない場合にはステップＳ２００６へ進む。ステップＳ２００２では、データ転送ＧＤ２を実行するか否かをチェックする。実行する場合にはステップＳ２００３へ進み、実行しない場合には前回のデータを使い回すことになるのでデータ破壊となる。すなわち、データライトＧＤ３を行う場合には、常に、同じサイクル内のその前にデータ転送ＧＤ２を行う必要がある。
【０１０１】
ステップＳ２００３では、違反バイトのマスク取り込みＧＭ１がハイレベル又はローレベルのいずれであるかをチェックする。ハイレベルの場合にはメモリセルへのライトは行われないのでステップＳ２００４へ進み、ローレベルの場合には誤ったデータがメモリセルにライトされてしまうのでデータ破壊が生じてしまう。
【０１０２】
ステップＳ２００４では、データ取り込みＧＤ１を実行するか否かをチェックする。実行する場合もしない場合もステップＳ２００５へ進み、次のサイクルで違反バイトをマスクしてライト動作を行う。すなわち、データ取り込みＧＤ１の有無はどちらでもよい。マスクされているので、データバスのデータは何でもよいことになる。
【０１０３】
ステップＳ２００６では、データ転送ＧＤ２を実行するか否かをチェックする。実行する場合にもしない場合にもステップＳ２００７へ進む。すなわち、データ転送ＧＤ２は実行してもしなくてもよい。
【０１０４】
ステップＳ２００７では、マスク取り込みＧＭ１を実行するか否かをチェックする。実行しない場合にはステップＳ２００８へ進み、実行する場合にはバッファ内のマスク信号が破壊され、データ破壊となる。
【０１０５】
ステップＳ２００８では、データ取り込みＧＤ１を実行するか否かをチェックする。実行しない場合にはステップＳ２００９へ進み、実行する場合にはバッファ内のデータが破壊され、データ破壊となる。
【０１０６】
ステップＳ２００９では、正しいライト情報を維持することができる。
【０１０７】
以上のように、（１）データライトＧＤ３を行わなくてもデータ転送ＧＤ２ができること、（２）データライトＧＤ３を行わないならばデータ取り込みＧＤ１を行わないこと、（３）マスク信号はローレベルの状態を取り込まないこと、以上の３点のいずれかを違反するとデータを破壊してしまう。本実施形態では、これらの違反をしないようにすることにより、データ破壊を防止できる。
【０１０８】
データライト、マスク取り込み、データ取り込み、データ転送の優先順位を細かく設定した設計を行うことにより、誤書き込みを行う可能性を大幅に減少させることが可能である。これにより、ライトコマンドの発生を遅らせるというライトサイクルに悪影響のある手法は使用する必要がない。
【０１０９】
データ取り込みとデータ転送の制御に優先順位をつけることでデータ破壊を起こしにくくする。マスク制御により正規の長さに満たないライトコマンドが投入された場合でも、ライト動作を遅らせることやデータが破壊されることを防止できる。
【０１１０】
半導体記憶装置内部に対して正規の長さに満たないライトコマンドが投入された時、データライト、マスク取り込み、データ取り込み、データ転送のパルスの発生しやすさに順位を付けて制御を行うことによりサイクル時間を延ばすことなく誤書き込みによるデータ破壊が発生することを防止することができる。
【０１１１】
ライト動作は、ライトイネーブル信号/ＷＥ（ライト基本信号）とバイトマスク信号／ＵＢ，／ＬＢの合成によって実行され、立ち上がり及び立ち下がりそれぞれのエッジパルスでデータの取り込みとデータの転送を行う。
【０１１２】
ライトコマンドパルスとマスクの取り込みパルスは、信号／ＷＥ，／ＵＢ，／ＬＢの合成信号の立ち下がりを基に発生する。ライト動作は、データ取り込みの次のサイクルの信号／ＷＥ，／ＵＢ，／ＬＢの合成信号の立ち下がりでメモリセルに書き込まれるレイトライトのアーキテクチャである。データライトパルスは、データ転送パルスよりも発生しにくく、データライトが実行される場合には必ずデータ転送パルスが発生することが保障されることでデータ破壊を防止する。正規の長さに満たないライトコマンドが投入された場合、データ取り込みパルスが発生してもマスクがハイレベルとなることでデータ破壊が発生することを防止する。
【０１１３】
正規の長さに満たないライトコマンドが投入された場合、データ取り込みパルスとデータ転送パルスが同一のタイミングで発生することによるデータ破壊が生じないようにデータ取り込みパルスをデータ転送パルスよりも発生しにくく制御する。
【０１１４】
マスク信号を用いたデータ破壊の防止により、正規の長さに満たないライトコマンドが投入された場合でもデータライトパルスが発生するだけではデータが破壊されないので、データライトパルスを発生しやすくすることができ、ライト動作の開始やライト動作サイクルを短縮することが可能である。
【０１１５】
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【０１１６】
本発明の実施形態は、例えば以下のように種々の適用が可能である。
【０１１７】
（付記１）
ゲート制御により入力されるデータを第１のバッファにバッファリングするためのデータ取り込みゲートと、
ゲート制御により前記第１のバッファのデータを入力して第２のバッファにバッファリングするためのデータ転送ゲートと、
ゲート制御により前記第２のバッファのデータをデータバスに出力するためのデータライトゲートと、
前記データバス上のデータをライトして記憶するためのメモリセルと、
データマスク信号によりマスクされると前記データバスを前記メモリセルに接続せず、データマスク信号によりマスク解除されると前記データバスを前記メモリセルに接続するためのセレクタと、
ライトイネーブル信号及びデータマスク信号に応じて、現サイクルで前記データ取り込みゲートを制御して前記第１のバッファにデータを入力し、次サイクルで前記データ転送ゲートを制御して前記第１のバッファのデータを前記第２のバッファに入力し前記データライトゲートを制御して前記第２のバッファのデータを前記データバスに出力する制御回路とを有し、
前記制御回路は、前記ライトイネーブル信号が活性化してから前記データマスク信号が変化するまでの間の時間に応じて、そのサイクルにおいて、前記データ取り込みゲートの制御により前記第１のバッファにデータを入力せず、かつ前記データ転送ゲートの制御により前記第２のバッファにデータを入力するメモリ装置。
（付記２）
前記制御回路は、前記サイクルにおいて、前記データ取り込みゲートの制御により前記第１のバッファにデータを入力せず、かつ前記データ転送ゲートの制御により前記第２のバッファにデータを入力し、かつ前記データライトゲートの制御により前記第２のバッファのデータを前記データバスに出力する付記１記載のメモリ装置。
（付記３）
前記制御回路は、前記サイクルにおいて、前記データ取り込みゲートの制御により前記第１のバッファにデータを入力せず、かつ前記データ転送ゲートの制御により前記第２のバッファにデータを入力し、かつ前記データライトゲートの制御により前記第２のバッファのデータを前記データバスに出力しない付記１記載のメモリ装置。
（付記４）
前記制御回路が、前記サイクルにおいて、前記データ取り込みゲートの制御により前記第１のバッファにデータを入力せず、かつ前記データ転送ゲートの制御により前記第２のバッファにデータを入力する時、前記セレクタは、その次のサイクルにおいて、前記データバスを前記メモリセルに接続しない付記１記載のメモリ装置。
（付記５）
前記制御回路は、前記データライトゲートの制御により前記第２のバッファのデータを前記データバスに出力するときは、常に、そのサイクル内でかつ前記データライトゲートの制御の前に、前記データ転送ゲートの制御により前記第２のバッファにデータを入力する付記１記載のメモリ装置。
（付記６）
前記制御回路は、前記ライトイネーブル信号が活性化してから前記データマスク信号が変化するまでの間の時間に応じて、そのサイクルにおいて、前記データ転送ゲートの制御により前記第２のバッファにデータを入力し、かつ前記データライトゲートの制御により前記データバスにデータを出力しない付記５記載のメモリ装置。
（付記７）
前記ライトイネーブル信号及び前記データマスク信号に応じた第１の信号を生成し、その第１の信号が非活性化から活性化に変化する変化点を第１の遅延時間遅延させた信号を第１の遅延信号として出力するための第１のディレイ回路と、
前記第１の信号が非活性化から活性化に変化する変化点を前記第１の遅延時間よりも長い第２の遅延時間遅延させた信号を第２の遅延信号として出力するための第２のディレイ回路とを有し、
前記制御回路は、前記第１の遅延信号が非活性化から活性化へ変化する変化点において前記データ転送ゲートをパルス制御して前記第２のバッファにデータを入力し、前記第２の遅延信号が活性化から非活性化へ変化する変化点において前記データ取り込みゲートをパルス制御して前記第１のバッファにデータを入力する付記１記載のメモリ装置。
（付記８）
前記第１のディレイ回路は、前記ライトイネーブル信号が活性化しておりかつ前記データマスク信号がマスク解除である期間を活性化させる第１の信号を生成し、その第１の信号が非活性化から活性化に変化する変化点を第１の遅延時間遅延させた信号を第１の遅延信号として出力し、
前記第２のディレイ回路は、前記第１の信号が非活性化から活性化に変化する変化点を前記第１の遅延時間よりも長い第２の遅延時間遅延させた信号を第２の遅延信号として出力し、
前記制御回路は、前記第１の遅延信号が非活性化から活性化へ変化する変化点において前記データ転送ゲートをパルス制御して前記第２のバッファにデータを入力し、前記第２の遅延信号が活性化から非活性化へ変化する変化点において前記データ取り込みゲートをパルス制御して前記第１のバッファにデータを入力する付記７記載のメモリ装置。
（付記９）
前記制御回路は、前記ライトイネーブル信号の活性化期間が短いときには、そのサイクルにおいて、前記データ転送ゲートの制御により前記第２のバッファにデータを入力し、かつ前記データ取り込みゲートの制御により前記第１のバッファにデータを入力しない付記１記載のメモリ装置。
（付記１０）
さらに、ゲート制御により入力されるデータマスク信号を第１のマスクバッファにバッファリングするためのマスク取り込みゲートと、
ゲート制御により前記第１のマスクバッファのデータマスク信号を入力して第２のマスクバッファにバッファリングするためのマスク転送ゲートと、
ゲート制御により前記第２のマスクバッファのデータマスク信号を前記セレクタに出力するためのマスクライトゲートとを有する付記１記載のメモリ装置。
（付記１１）
前記データマスク信号は、上位バイトマスク信号及び下位バイトマスク信号を含む付記１記載のメモリ装置。
（付記１２）
前記制御回路は、前記サイクルにおいて、前記データ取り込みゲートの制御により前記第１のバッファにデータを入力せず、かつ前記データ転送ゲートの制御により前記第２のバッファにデータを入力し、かつ前記データライトゲートの制御により前記第２のバッファのデータを前記データバスに出力する付記４記載のメモリ装置。
（付記１３）
前記制御回路は、前記サイクルにおいて、前記データ取り込みゲートの制御により前記第１のバッファにデータを入力せず、かつ前記データ転送ゲートの制御により前記第２のバッファにデータを入力し、かつ前記データライトゲートの制御により前記第２のバッファのデータを前記データバスに出力しない付記１２記載のメモリ装置。
（付記１４）
前記制御回路は、前記データライトゲートの制御により前記第２のバッファのデータを前記データバスに出力するときは、常に、そのサイクル内でかつ前記データライトゲートの制御の前に、前記データ転送ゲートの制御により前記第２のバッファにデータを入力する付記１３記載のメモリ装置。
（付記１５）
前記制御回路は、前記ライトイネーブル信号が活性化してから前記データマスク信号が変化するまでの間の時間に応じて、そのサイクルにおいて、前記データ転送ゲートの制御により前記第２のバッファにデータを入力し、かつ前記データライトゲートの制御により前記データバスにデータを出力しない付記１４記載のメモリ装置。
（付記１６）
前記ライトイネーブル信号及び前記データマスク信号に応じた第１の信号を生成し、その第１の信号が非活性化から活性化に変化する変化点を第１の遅延時間遅延させた信号を第１の遅延信号として出力するための第１のディレイ回路と、
前記第１の信号が非活性化から活性化に変化する変化点を前記第１の遅延時間よりも長い第２の遅延時間遅延させた信号を第２の遅延信号として出力するための第２のディレイ回路とを有し、
前記制御回路は、前記第１の遅延信号が非活性化から活性化へ変化する変化点において前記データ転送ゲートをパルス制御して前記第２のバッファにデータを入力し、前記第２の遅延信号が活性化から非活性化への変化点において前記データ取り込みゲートをパルス制御して前記第１のバッファにデータを入力する付記１５記載のメモリ装置。
（付記１７）
前記第１のディレイ回路は、前記ライトイネーブル信号が活性化しておりかつ前記データマスク信号がマスク解除である期間を活性化させる第１の信号を生成し、その第１の信号が非活性化から活性化に変化する変化点を第１の遅延時間遅延させた信号を第１の遅延信号として出力し、
前記第２のディレイ回路は、前記第１の信号が非活性化から活性化に変化する変化点を前記第１の遅延時間よりも長い第２の遅延時間遅延させた信号を第２の遅延信号として出力し、
前記制御回路は、前記第１の遅延信号が非活性化から活性化へ変化する変化点において前記データ転送ゲートをパルス制御して前記第２のバッファにデータを入力し、前記第２の遅延信号が活性化から非活性化へ変化する変化点において前記データ取り込みゲートをパルス制御して前記第１のバッファにデータを入力する付記１６記載のメモリ装置。
（付記１８）
前記制御回路は、前記ライトイネーブル信号の活性化期間が短いときには、そのサイクルにおいて、前記データ転送ゲートの制御により前記第２のバッファにデータを入力し、かつ前記データ取り込みゲートの制御により前記第１のバッファにデータを入力しない付記１７記載のメモリ装置。
（付記１９）
さらに、ゲート制御により入力されるデータマスク信号を第１のマスクバッファにバッファリングするためのマスク取り込みゲートと、
ゲート制御により前記第１のマスクバッファのデータマスク信号を入力して第２のマスクバッファにバッファリングするためのマスク転送ゲートと、
ゲート制御により前記第２のマスクバッファのデータマスク信号を前記セレクタに出力するためのマスクライトゲートとを有する付記１８載のメモリ装置。
（付記２０）
前記データマスク信号は、上位バイトマスク信号及び下位バイトマスク信号を含む付記１９記載のメモリ装置。
【図面の簡単な説明】
【０１１８】
【図１】本発明の実施形態による半導体記憶装置（メモリ装置）の構成例を示すブロック図である。
【図２】図１のバイトマスク入力回路、バイトマスクコントローラ、データＩ／Ｏ回路、ライトデータコントローラ及びカラムラインセレクタの構成例を示すブロック図である。
【図３】図３（Ａ）は図２のデータ入力回路の構成例を示す図、図３（Ｂ）は図２のマスク入力回路の構成例を示す図である。
【図４】図２のデータ入力制御回路及びデータ入力回路の参考例による構成例を示す図である。
【図５】図４の回路の動作を説明するためのタイミングチャートである。
【図６】図２のデータ入力制御回路及びデータ入力回路の本実施形態による構成例を示す図である。
【図７】図６の回路の動作を説明するためのタイミングチャートである。
【図８】図８（Ａ）〜（Ｃ）はライト動作例を示す図である。
【図９】ｔＢＳスペック及びｔＢＷスペックを説明するための図である。
【図１０】図１０（Ａ）及び（Ｂ）は図４の参考例のメモリ装置の動作モードを示す図である。
【図１１】ライト動作例を示すタイミングチャートである。
【図１２】動作モード５のデータ制御及びマスク制御例を示す図である。
【図１３】動作モード１のデータ制御及びマスク制御例を示す図である。
【図１４】動作モード２ａのデータ制御及びマスク制御例を示す図である。
【図１５】動作モード２ｂのデータ制御及びマスク制御例を示す図である。
【図１６】図６の本実施形態のメモリ装置の動作モードを示す図である。
【図１７】動作モード２ｃのデータ制御及びマスク制御例を示す図である。
【図１８】動作モード２ｄのデータ制御及びマスク制御例を示す図である。
【図１９】図１９（Ａ）〜（Ｃ）はライト動作例を示すタイミングチャートである。
【図２０】本実施形態のライト動作の処理例を示すフローチャートである。
【符号の説明】
【０１１９】
１０１  アドレス入力回路
１０２  アドレスデコーダ
１０３  セルフリフレッシュタイマ
１０４  アービタ
１０５  コマンド入力回路
１０６  コマンドコントローラ
１０７  タイミングコントローラ
１０８  バイトマスク入力回路
１０９  バイトマスクコントローラ
１１０  データＩ／Ｏ回路
１１１  ライトデータコントローラ
１１２  リードデータコントローラ
１２０  メモリコア
１２１  ワードラインセレクタ
１２２  センスアンプセレクタ
１２３  メモリセル
１２４  センスアンプ
１２５  カラムラインセレクタ
２０１  コマンドジェネレータ
２０２  マスク入力制御回路
２０３  データ入力制御回路
２０４  タイミングジェネレータ
２０５  マスク入力回路
２０６  カラムライン制御回路
２０７Ｕ  上位バイトデータ入力回路
２０７Ｌ  下位バイトデータ入力回路
２０８Ｕ  上位バイトカラムライン選択回路
２０８Ｌ  下位バイトカラムライン選択回路
３０１Ｕ，３０１Ｌ，ＧＤ１  データ取り込みゲート
３０２Ｕ，３０２Ｌ  バッファ
３０３Ｕ，３０３Ｌ，ＧＤ２  データ転送ゲート
３０４Ｕ，３０４Ｌ  バッファ
３０５Ｕ，３０５Ｌ，ＧＤ３  データライトゲート
３１１Ｕ，３１１Ｌ，ＧＭ１  マスク取り込みゲート
３１２Ｕ，３１２Ｌ  バッファ
３１３Ｕ，３１３Ｌ，ＧＭ２  マスク転送ゲート
３１４Ｕ，３１４Ｌ  バッファ
３１５Ｕ，３１５Ｌ，ＧＭ３  マスクライトゲート
【図１】
0004768221.tif 000002
【図２】
0004768221.tif 000003
【図３】
0004768221.tif 000004
【図４】
0004768221.tif 000005
【図５】
0004768221.tif 000006
【図６】
0004768221.tif 000007
【図７】
0004768221.tif 000008
【図８】
0004768221.tif 000009
【図９】
0004768221.tif 000010
【図１０】
0004768221.tif 000011
【図１１】
0004768221.tif 000012
【図１２】
0004768221.tif 000013
【図１３】
0004768221.tif 000014
【図１４】
0004768221.tif 000015
【図１５】
0004768221.tif 000016
【図１６】
0004768221.tif 000017
【図１７】
0004768221.tif 000018
【図１８】
0004768221.tif 000019
【図１９】
0004768221.tif 000020
【図２０】
0004768221.tif 000021