(57)【要約】【課題】データを書き込む時間を短縮する。【解決手段】半導体記憶装置は、メモリセルアレイ２と、第１データ幅を有する第１データと、前記第１データ幅より短い第２データ幅を有する第２データとが入力される入力回路ＤＲ１と、前記第１データ幅を単位として生成され且つ前記第１及び第２データのエラーを訂正するための符号を生成する生成回路８と、前記第１データを前記メモリセルアレイ２に書き込む第１書込回路と、前記第２データのアドレスが指定されてから前記メモリセルアレイに書き込まれるまでの時間であるレーテンシを前記第１データのレーテンシより長くし、且つ前記第２データを前記メモリセルアレイ２に書き込む第２書込回路と、前記第２データが入力された後に前記第１データが入力された場合に、前記第１データを前記第２データより先に前記メモリセルアレイ２に書き込む制御回路１１とを具備する。【選択図】      図２
2006092634.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリセルを含むメモリセルアレイと、
第１データ幅を有する第１データと、前記第１データ幅より短い第２データ幅を有する第２データとが入力される入力回路と、
前記第１データ幅を単位として生成され且つ前記第１及び第２データのエラーを訂正するための符号を生成する生成回路と、
前記第１データを前記メモリセルアレイに書き込む第１書込回路と、
前記第２データのアドレスが指定されてから前記メモリセルアレイに書き込まれるまでの時間であるレーテンシを前記第１データのレーテンシより長くし、且つ前記第２データを前記メモリセルアレイに書き込む第２書込回路と、
前記第２データが入力された後に前記第１データが入力された場合に、前記第１データを前記第２データより先に前記メモリセルアレイに書き込む制御回路と
を具備することを特徴とする半導体記憶装置。
【請求項２】
前記第２書込回路は、前記入力回路に入力された第２データを保持する保持回路と、前記第２データ幅を前記第１データ幅に変換する変換回路と
を含むことを特徴とする請求項１記載の半導体記憶装置。
【請求項３】
前記第１書込回路は、前記第１データを伝送する第１データパスを含み、
前記第２書込回路は、前記第２データを伝送する第２データパスを含み、
前記制御回路は、前記第２データが入力された場合には前記第２データパスを選択し、一方前記第１データが入力された場合には前記第１データパスを選択し且つ前記保持回路の動作を停止することを特徴とする請求項２記載の半導体記憶装置。
【請求項４】
前記制御回路は、前記保持回路に保持された第２データのアドレスと前記入力回路に入力された第１データのアドレスとが一致しているか否かを検出する検出回路を含み、且つ前記保持回路に保持された第２データのアドレスと前記入力回路に入力された第１データのアドレスとが一致している場合に、前記保持回路に保持された第２データを取り消すことを特徴とする請求項２又は３記載の半導体記憶装置。
【請求項５】
前記変換回路は、前記入力回路に入力された第２データと、前記メモリセルアレイに記憶され且つ前記入力回路に入力された第２データのアドレスに対応するデータのうち、前記第２データ幅を前記第１データ幅に変換するのに必要な第３データとを選択する選択回路を含むことを特徴とする請求項２乃至４のいずれかに記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体記憶装置に係り、特にＥＣＣ（Error Check and Correct）回路を備えた半導体記憶装置に関する。
【背景技術】
【０００２】
ＤＲＡＭ（Dynamic Random Access Memory）のメモリセルは、例えば１つのセルトランジスタと１つのセルキャパシタとから構成される。このメモリセルに記憶されたデータを読み出す場合、先ずワード線を活性化することによりセルトランジスタをオンさせる。そして、セルキャパシタに保持された電荷をビット線に付随する寄生容量とチャージシェアリングを行った後、電荷をセンスアンプにより増幅する。そして、選択されたビット線を入出力（Ｉ／Ｏ）バスへ接続することでデータを読み出す。
【０００３】
また、セルキャパシタからはリーク電流により保持した電荷が逃げていくため、リフレッシュサイクル時間ごとにメモリセルを選択して、セルキャパシタに保持されている電荷を増幅している。現在、ＤＲＡＭメモリセルのキャパシタンス容量はメモリセルサイズの縮小を受けて小さくなってきており、これまでのリフレッシュサイクル時間を適用すると、データの読み出しにおいてエラーが発生する場合がある。
【０００４】
そこで、メモリマクロに対してＳＥＣ−ＤＥＤ（Single Error Correction − Double Error Detection）方式のＥＣＣ回路を付加することで、読み出しにおいて１ビットエラーが表れない高い信頼性をもつメモリマクロが開発されている。なお、メモリマクロとは、メモリおよびロジック等を１つの半導体チップに集積したシステムＬＳＩ(Large Scale Integrated Circuit)のうちで、メモリとして機能するブロックを表す。
【０００５】
この方式のＥＣＣ回路を有するＤＲＡＭの一例を図９及び図１０に示す。図９においては、ＤＲＡＭに対してライトコマンドを発効した時の図であり、データパスを図中太線で示す。ライトコマンドが入力されると、ライトデータは、データ用のメモリセルアレイ２ａにそのまま書き込まれる。また、パリティービット生成回路８は、入力されたライトデータからパリティービットを生成し、生成されたパリティービットはコード用のメモリセルアレイ２ｂに書き込まれる。
【０００６】
一方、図１０においては、ＤＲＡＭに対してリードコマンドを発効した時の図であり、図９同様にデータパスを図中太線で示す。リードコマンドが入力されると、メモリセルアレイ２ａ及びメモリセルアレイ２ｂから、エラー訂正前のデータ及びパリティービットが読み出される。チェックビット生成回路９は、読み出した訂正前のデータ及びパリティービットからチェックビットを生成する。１ビットエラーが存在した場合、訂正回路１０は、データの訂正を行う。訂正されたデータはリードデータとして外部に出力される。
【０００７】
また、１ビットエラーが存在して訂正を行ったことを示す、あるいは２ビットエラーが存在することを示すチェックビットも外部に出力される。このように、ＥＣＣ回路が動作するのに必要なデータ幅を有するデータによる書き込み、もしくは読み出しにおいて、図９及び図１０のようなデータパスを持つことでＥＣＣ機能は実現される。また、ＥＣＣ回路が動作するのに必要なデータ幅より短いデータ幅を有するデータにおける読み出しにおいても、図１０と同様のデータパスを持ち、最後に出力データを選択することで実現される。
【０００８】
しかしながら、ＥＣＣ回路が動作するのに必要なデータ幅より短いデータ幅における書き込みにおいては、図９のようなデータパスでＥＣＣ機能は実現されない。パリティービットを生成するパリティービット生成回路８の入力において、入力の一部が“invalid”となり、正しくパリティービットが生成されないためである。
【０００９】
ＥＣＣ回路が動作するのに必要なデータ幅より短いデータ幅における書き込みを実現するＥＣＣ回路を有するＤＲＡＭの一例を図１１に示す。図１１は図９及び図１０と比べて、リードデータがマルチプレクサＭＰ２を通してライトデータと接続される回路が追加されている。また、マルチプレクサＭＰ２は、データを書き込むデータ線を全データ線から選択するマスクデータにより、リードデータを出力するか、ライトデータを出力するかを選択する。回路動作は次の通りである。
【００１０】
先ず、短いデータ幅のデータを書き込むライトコマンドが入力されると、ＤＲＡＭに対しては図１０と同様のリードコマンドが入力された状態となり、メモリセルアレイ２ａ及びメモリセルアレイ２ｂから、訂正前のデータ及びパリティービットが読み出される。そして、チェックビット生成回路９は、読み出された訂正前のデータ及びパリティービットからチェックビットを生成し、１ビットエラーが存在した場合、訂正回路１０はデータの訂正を行う。
【００１１】
ここで、マルチプレクサＭＰ２は、マスクデータに基づいて訂正されたデータが転送されるデータ線、或いはライトデータが転送されるデータ線を選択する。これにより、マスクデータにより選択されたマルチプレクサＭＰ２は、ライトデータを出力する。一方、マスクデータにより選択されていないマルチプレクサＭＰ２は、訂正されたデータを出力する。
【００１２】
そして、マスクデータにより選択されたライトデータ及びマスクデータにより選択されていないことで入力されるリードデータは、図１１中の太線で示したデータパスのように通常のライトコマンドが入力された状態とほぼ同様に、メモリセルアレイ２ａにそのまま書き込まれる。これと同時に、パリティービット生成回路８は、入力されたライトデータ及びリードデータからパリティービットを生成する。この生成されたパリティービットは、メモリセルアレイ２ｂに書き込まれる。
【００１３】
この時の入力されたコマンドとＤＲＡＭ内の回路を占めているデータとを示すタイミングチャートを図１２に示す。図１２中の“Norm.-W”及び“Mask-W”は、夫々、ノーマルライトコマンド及びマスクライトコマンドを表す。ノーマルライトコマンドは、ＥＣＣ回路が動作するのに必要なデータ幅における書き込みを表すコマンドである。マスクライトコマンドは、ＥＣＣ回路が動作するのに必要なデータ幅より短いデータ幅における書き込みを表すコマンドである。
【００１４】
また、“Prech.”は、プリチャージコマンドを表し、ワード線を非選択状態にするコマンドである。ここで、メモリセルアレイ２ａ及びメモリセルアレイ２ｂにおいては１サイクル内で読み出しと書き込みを両方行うため、読み出し用のポートを“R-port”、書き込み用のポートを“W-port”として２つのポートを用意し、互いに異なるタイミングでポートを開くものとする。
【００１５】
“Data Cell (R-port)”は、データを記憶するメモリセルアレイ２ａの読み出し用のポートを表す。“Data Cell (W-port)”は、メモリセルアレイ２ａの書き込み用のポートを表す。“Code Cell (R-port)”は、パリティービット（コード）を記憶するメモリセルアレイ２ｂの読み出し用のポートを表す。“Code Cell (W-port)”は、メモリセルアレイ２ｂの書き込み用のポートを表す。
【００１６】
“訂正回路１０（Read）”は、リード動作時に動作するチェックビット生成回路９及び訂正回路１０を表す。“生成回路８（Write）”は、ライト動作時に動作するパリティービット生成回路８を表す。また、図１２中のチャートに記した“＃”記号で表す数字はカラムアドレス(ビット線アドレス)番号を示す。
【００１７】
このように構成されたＤＲＡＭにおいて、短いデータ幅での書き込みを行う場合、通常のデータ幅での書き込みを行う場合に比べて、メモリセルからのデータの読み出し及び訂正を余分に行う必要がある。これにより、この回路動作に必要とする時間分だけ余計にレーテンシが長くなってしまう。
【００１８】
この種の関連技術として、以下のようなＥＣＣ回路を備えたＤＲＡＭが開示されている（非特許文献１参照）。
【非特許文献１】J.A.Fifield and C.H.Stapper, High-Speed On-Chip ECC for Synergistic Fault-Tolerant Memory Chips, IEEE JOURNAL OF SOLID-STATE CIRCUITS, VOL.26, NO.10, OCTOBER 1991, p.1449-1452
【発明の開示】
【発明が解決しようとする課題】
【００１９】
本発明は、メモリセルアレイにデータを書き込む時間を短縮することが可能な半導体記憶装置を提供することを目的とする。
【課題を解決するための手段】
【００２０】
本発明の一視点に係る半導体記憶装置は、複数のメモリセルを含むメモリセルアレイと、第１データ幅を有する第１データと、前記第１データ幅より短い第２データ幅を有する第２データとが入力される入力回路と、前記第１データ幅を単位として生成され且つ前記第１及び第２データのエラーを訂正するための符号を生成する生成回路と、前記第１データを前記メモリセルアレイに書き込む第１書込回路と、前記第２データのアドレスが指定されてから前記メモリセルアレイに書き込まれるまでの時間であるレーテンシを前記第１データのレーテンシより長くし、且つ前記第２データを前記メモリセルアレイに書き込む第２書込回路と、前記第２データが入力された後に前記第１データが入力された場合に、前記第１データを前記第２データより先に前記メモリセルアレイに書き込む制御回路とを具備する。
【発明の効果】
【００２１】
本発明によれば、メモリセルアレイにデータを書き込む時間を短縮することが可能な半導体記憶装置を提供することができる。
【発明を実施するための最良の形態】
【００２２】
本発明者等は、本発明の開発の過程において、以下に示すようなＤＲＡＭを開発した。その結果、本発明者等は、以下に述べるような知見を得た。
【００２３】
例えばＤＲＡＭにおいて、短いデータ幅での書き込みを行う場合、所定のサイクル数だけ遅らせてメモリセルに書き込むレイトライト（Late Write）方式を採ることが考えられる。このレイトライトは、レーテンシは長くなるものの、１サイクルに必要とする時間を短くすることができる。なお、レーテンシとは、データを書き込むためのコマンドが発行されてから（或いは、アドレスが指定されてから）、実際にメモリセルにデータが書き込まれるまでの時間をいうものとする。
【００２４】
そのような方式の一例として、図１１のデータパスに２段のフリップフロップ（Ｆ／Ｆ）を挿入したＤＲＡＭ１の構成例を図１３に示す。また、コマンドとＤＲＡＭ１内の回路を占めているデータとを示すタイミングチャートを図１４に示す。
【００２５】
まず、“Norm.-W ＃０”コマンドが入力されると、アドレス＃０のライトデータはライトデータ線ＷＤＬに挿入された初段のＦ／Ｆ１にラッチされる。次に、“Mask-Write ＃１”コマンドが入力されると、アドレス＃０のライトデータは次段のＦ／Ｆ２に、アドレス＃１のライトデータは初段のＦ／Ｆ１にラッチされる。また、メモリセルアレイ２ａ及びメモリセルアレイ２ｂからアドレス＃１の訂正前のデータ及びパリティービットが読み出され、リードデータ線ＲＤＬ及びパリティービット線ＲＰＬに挿入された初段のＦ／Ｆ３にラッチされる。
【００２６】
次に、“Mask-Write ＃２”コマンドが入力されると、アドレス＃０のライトデータはメモリセルアレイ２ａに書き込まれ、また、パリティービット生成回路８は、入力されたアドレス＃０のライトデータからアドレス＃０のパリティービットを生成する。このパリティービットは、メモリセルアレイ２ｂに書き込まれる。また、アドレス＃１のライトデータは次段のＦ／Ｆ２に、アドレス＃２のライトデータは初段のＦ／Ｆ１にラッチされる。
【００２７】
また、チェックビット生成回路９は、アドレス＃１の訂正前のデータ及びパリティービットからチェックビットを生成する。訂正回路１０は、１ビットエラーが存在した時に訂正を行う。訂正されたデータ及びチェックビットは、夫々、リードデータ線ＲＤＬ及びチェックビット線ＣＢＬに挿入された次段のＦ／Ｆ４にラッチされる。そして、メモリセルアレイ２ａ及び２ｂからアドレス＃２の訂正前のデータ及びパリティービットが読み出され、リードデータ線ＲＤＬ及びパリティービット線ＲＰＬに挿入された初段のＦ／Ｆ３にラッチされる。
【００２８】
次に、“Mask-Write ＃３”コマンドが入力されると、マルチプレクサＭＰ２には、“Mask-Write ＃１”コマンドと共に入力されたマスクデータが入力される。マスクデータは、全ライトデータ線ＷＤＬから通常のデータ幅より短いデータ幅を有するデータが伝送されるライトデータ線ＷＤＬを選択する。マスクデータにより選択されたマルチプレクサＭＰ２は、アドレス＃１のライトデータを選択する。マスクデータにより選択されていないマルチプレクサＭＰ２は、訂正されたデータ（リードデータ線ＲＤＬのデータ）を選択する。アドレス＃１のライトデータ及び訂正されたデータは、メモリセルアレイ２ａに書き込まれる。
【００２９】
また、パリティービット生成回路８は、アドレス＃１のライトデータ及び訂正されたデータからアドレス＃１のパリティービットを生成する。このパリティービットは、メモリセルアレイ２ｂに書き込まれる。また、アドレス＃２のライトデータは次段のＦ／Ｆ２に、アドレス＃３のライトデータは初段のＦ／Ｆ１にラッチされる。
【００３０】
また、チェックビット生成回路９は、アドレス＃２の訂正前のデータ及びパリティービットからチェックビットを生成する。訂正回路１０は、１ビットエラーが存在した時に訂正を行う。訂正されたデータ及びチェックビットは、夫々、リードデータ線ＲＤＬの次段のＦ／Ｆ４にラッチされる。そして、メモリセルアレイ２ａ及びメモリセルアレイ２ｂからアドレス＃３の訂正前のデータ及びパリティービットが読み出され、リードデータ線ＲＤＬの初段のＦ／Ｆ３にラッチされる。
【００３１】
最後に、“Norm.-Write ＃４”コマンドが入力されると、ライトデータ線ＷＤＬの次段のＦ／Ｆ２に保持されているアドレス＃２のライトデータ、及びリードデータ線ＲＤＬの次段のＦ／Ｆ４に保持されている、同じくアドレス＃２の訂正されたデータは、“Mask-Write ＃２”コマンドと共に入力されたマスクデータにより接続を選択するマルチプレクサＭＰ２を通して選択され、夫々メモリセルアレイ２ａに書き込まれる。また、パリティービット生成回路８は、アドレス＃２のライトデータ及び訂正されたデータからアドレス＃２のパリティービットを生成し、生成されたアドレス＃２のパリティービットはメモリセルアレイ２ｂに書き込まれる。
【００３２】
アドレス＃３のライトデータは、次段のＦ／Ｆ２に、アドレス＃４のライトデータは初段のＦ／Ｆ１にラッチされる。また、チェックビット生成回路９は、リードデータ線ＲＤＬ及びパリティービット線ＲＰＬの初段のＦ／Ｆ３に保持されているアドレス＃３の訂正前のデータ及びパリティービットからチェックビットを生成する。１ビットエラーが存在した場合、訂正回路１０は、訂正を行う。訂正されたデータ及びチェックビットは、夫々、リードデータ線ＲＤＬ及びチェックビット線ＣＢＬに挿入された次段のＦ／Ｆ４にラッチされる。
【００３３】
図１４の例ではユーザが発効したコマンドはこの“Norm.-Write ＃４”コマンドまでであるが、最後の２サイクルに発効された“Mask-Write ＃３”コマンドと“Norm.-Write ＃４”コマンドとのライトデータ及びパリティービットはメモリセルアレイ２ａ及び２ｂへの書き込みが終了しておらず、回路内のＦ／Ｆに保持されている。
【００３４】
そこで、ノーオペレーションコマンド（“NOP”コマンド）が発効されている間、回路内のＦ／Ｆにライトデータが保持されている場合に書き込み動作が引き続き行われる。なお、“NOP”コマンドとは、ＤＲＡＭ１に対して何の動作も実行させないコマンドである。この例においては、ライトデータ線ＷＤＬの次段のＦ／Ｆ２に保持されているアドレス＃３のライトデータ、及びリードデータ線ＲＤＬの次段のＦ／Ｆ４に保持されている、同じくアドレス＃３の訂正されたデータは、“Mask-Write ＃３”コマンドと共に入力されたマスクデータにより接続を選択するマルチプレクサＭＰ２を通して選択され、夫々、メモリセルアレイ２ａに書き込まれる。
【００３５】
また、パリティービット生成回路８は、アドレス＃３のライトデータ及び訂正されたデータからアドレス＃３のパリティービットを生成し、生成されたパリティービットはメモリセルアレイ２ｂに書き込まれる。アドレス＃４のライトデータはライトデータ線ＷＤＬの次段のＦ／Ｆ２に保持される。そして、次の最後のサイクルにおいて、アドレス＃４のライトデータはメモリセルアレイ２ａに書き込まれる。また、パリティービット生成回路８は、入力されたアドレス＃４のライトデータからアドレス＃４のパリティービットを生成し、生成されたパリティービットはメモリセルアレイ２ｂに書き込まれる。
【００３６】
ここで初めて全てのライトデータ及びパリティービットのメモリセルアレイへの書き込みが終了するので、次のサイクル以降において、ユーザはプリチャージコマンドを発効し、ワード線ＷＬを非選択にすることができる。
【００３７】
しかしながら、この方式を採った場合、“Mask-Write”コマンド発効時の長くなるレーテンシに合わせて、“Norm.-Write”コマンド発効時のレーテンシも長くなる。図１４のチャートにおいては、“Mask-Write”コマンドと“Norm.-Write”コマンドとに関係なく、プリチャージコマンドを常に２サイクル後に発効する必要がある。つまり、ライトリカバリータイム（Write Recovery Time : tWR）が２サイクル増加する。
【００３８】
以下、このような知見に基づいて構成された本発明の実施の形態について図面を参照して説明する。なお、以下の説明において、同一の機能及び構成を有する要素については、同一符号を付し、重複説明は必要な場合にのみ行う。
【００３９】
（第１の実施形態）
図１は、本発明の第１の実施形態に係るＤＲＡＭ１の構成を示すブロック図である。ＤＲＡＭ１は、メモリセルアレイ２と、データ線回路３と、ワード線回路４と、メモリ制御回路５とを有している。ＤＲＡＭ１は、例えばメモリマクロからなる。
【００４０】
メモリセルアレイ２は、メモリセルがマトリックス状に配置されて構成されている。メモリセルは、１つのセルトランジスタＣＴと１つのセルキャパシタＣＣとにより構成されている。すなわち、メモリセルアレイ２は、複数のダイナミック型メモリセルを有している。
【００４１】
メモリセルアレイ２には、複数のビット線ＢＬと複数のワード線ＷＬとが配設されている。複数のビット線ＢＬと複数のワード線ＷＬとの交点には、それぞれメモリセルが配置されている。ビット線ＢＬは、セルトランジスタＣＴを介してセルキャパシタＣＣの一方の電極に接続されている。ワード線ＷＬは、セルトランジスタＣＴのゲート電極に接続されている。セルキャパシタＣＣの他方の電極には、例えばイコライズ電圧が供給されている。
【００４２】
データ線回路３には、外部回路からライトデータが入力される。データ線回路３は、このライトデータをメモリセルアレイ２に書き込む。また、データ線回路３は、メモリセルアレイ２からリードデータを読み出す。データ線回路３は、このリードデータを外部回路に出力する。
【００４３】
また、データ線回路３には、外部回路からマスクデータが入力される。このマスクデータは、通常のデータ幅より短いデータ幅を有するライトデータが入力された場合に、全ライトデータ線ＲＤＬから短いデータ幅に対応するライトデータ線ＲＤＬを選択する。このマスクデータは、マスクライトコマンド（Mask-W）と共に外部回路から入力される。
【００４４】
さらに、データ線回路３は、ＥＣＣ回路を有している。データ線回路３の具体的な構成は、後述する。
【００４５】
ワード線回路４は、外部回路から入力されるアドレス信号に基づいてワード線ＷＬの選択を行う。メモリ制御回路５には、外部回路からコマンドとアドレスとクロック信号ＣＬＫとが入力されている。メモリ制御回路５は、このコマンドに基づいてデータ線回路３及びワード線回路４の制御を行う。すなわち、メモリ制御回路５は、コマンドに基づいてライトデータの書き込み動作、及びリードデータの読み出し動作を制御する。
【００４６】
図２は、メモリセルアレイ２及びデータ線回路３の構成を示す回路ブロック図である。メモリセルアレイ２は、データを記憶するメモリセルアレイ２ａと、ＥＣＣ回路により生成されたパリティービットを記憶するメモリセルアレイ２ｂとにより構成されている。
【００４７】
ＥＣＣ回路は、所定のデータ幅を有するデータに対してエラー訂正を行う。ＥＣＣ回路は、パリティービット生成回路８と、チェックビット生成回路９と、訂正回路１０とを含む。なお、ＤＲＡＭ１は、ＳＥＣ−ＤＥＤ方式のＥＣＣ回路を備えている。パリティービット生成回路８は、ライトデータに基づいてエラーを訂正するためのパリティービットを生成する。この生成されたパリティービットは、メモリセルアレイ２ｂに書き込まれる。
【００４８】
チェックビット生成回路９は、メモリセルアレイ２ａから読み出された訂正前のデータと、メモリセルアレイ２ｂから読み出されたパリティービットとに基づいてチェックビットを生成する。チェックビットにより１ビットエラーが存在した場合、訂正回路１０は、チェックビットに基づいてデータの訂正を行う。訂正されたデータはリードデータとして外部回路に出力される。また、チェックビットも外部回路に出力される。
【００４９】
ＤＲＡＭ１は、ＥＣＣ回路が動作するのに必要なデータ幅（以後、通常のデータ幅と称す）を有するデータと、通常のデータ幅より短いデータ幅を有するデータとの書き込みを行うことができる。ＤＲＡＭ１（具体的には、メモリ制御回路５）には、ノーマルライトコマンドと、マスクライトコマンドとが外部回路から入力される。ノーマルライトコマンドは、通常のデータ幅を有するデータの書き込みを表すコマンドである。マスクライトコマンドは、通常のデータ幅より短いデータ幅を有するデータの書き込みを表すコマンドである。
【００５０】
ライトデータを伝送するライトデータ線ＷＤＬには、Ｆ／Ｆを迂回するためのデータパスＤＰ２が設けられている。リードデータ線ＲＤＬ、パリティービット線ＲＰＬ及びチェックビット線ＣＢＬにも、ライトデータ線ＷＤＬと同様に、Ｆ／Ｆを迂回するためのデータパスＤＰ２が設けられている。また、ＤＲＡＭ１は、Ｆ／Ｆを経由するデータパスＤＰ１とデータパスＤＰ２とを選択するためのマルチプレクサＭＰ１，ＭＰ３，ＭＰ４を備えている。マルチプレクサＭＰ１，ＭＰ３，ＭＰ４は、マスクライトコマンドに基づいて、データパスＤＰ１とデータパスＤＰ２との選択を行う。  マスクデータを伝送するマスクデータ線ＭＤＬには、２つのフリップフロップＦ／Ｆ５，Ｆ／Ｆ６が設けられている。このフリップフロップＦ／Ｆ５，Ｆ／Ｆ６は、レイトライトのためにライトデータ線ＷＤＬに２つのフリップフロップを挿入したことに対応して設けられている。これにより、マルチプレクサＭＰ２には、ライトデータのアドレスに対応したマスクデータが供給される。
【００５１】
図３は、マルチプレクサとフリップフロップとの動作を制御する制御回路１１の構成を示す回路図である。制御回路１１は、図１で示したメモリ制御回路５に含まれる。制御回路１１には、マスクライトコマンド（Mask-W）とクロック信号ＣＬＫとが入力されている。制御回路１１は、ＡＮＤ回路１１ａを有している。
【００５２】
制御回路１１は、マスクライトコマンドが入力されると、ハイレベルの制御信号Ｃ１を出力する。制御信号Ｃ１は、マルチプレクサＭＰ１に供給される。マルチプレクサＭＰ１は、インバータ回路ＩＮＶと、トランスミッションゲートＴＧ１，ＴＧ２とを有している。制御信号Ｃ１は、マルチプレクサＭＰ３とＭＰ４とにも供給されている。マルチプレクサＭＰ３，ＭＰ４は、マルチプレクサＭＰ１と同じ構成を有する。
【００５３】
また、制御回路１１は、マスクライトコマンドが入力された場合に、クロック信号ＣＬＫに対応する制御信号Ｃ２を出力する。この制御信号Ｃ２は、Ｆ／Ｆ２のクロック端子に供給される。すなわち、Ｆ／Ｆ２は、マスクライトコマンドが入力された場合に、クロック信号ＣＬＫに同期して入力データをラッチする。マスクライトコマンドが入力されない場合、Ｆ／Ｆ２は、入力データのラッチを行わない。なお、制御信号Ｃ２は、Ｆ／Ｆ１、Ｆ／Ｆ３、Ｆ／Ｆ４、Ｆ／Ｆ５及びＦ／Ｆ６にも供給されている。Ｆ／Ｆ１、Ｆ／Ｆ３、Ｆ／Ｆ４、Ｆ／Ｆ５及びＦ／Ｆ６は、Ｆ／Ｆ２と同様の動作を行う。
【００５４】
このように構成されたＤＲＡＭ１の動作について説明する。先ず、ノーマルライトコマンドが連続して入力された場合のＤＲＡＭ１の動作について説明する。入力回路としてのドライバ回路ＤＲ１は、外部から入力されたライトデータを受け取る。ドライバ回路ＤＲ１から出力されたライトデータは、データパスＤＰ２を介してマルチプレクサＭＰ１に入力される。
【００５５】
マルチプレクサＭＰ１は、データパスＤＰ２のライトデータを出力する。マルチプレクサＭＰ１から出力されたライトデータは、マルチプレクサＭＰ２に入力される。マルチプレクサＭＰ２から出力されたライトデータは、ドライバ回路ＤＲ２を介してカラム選択回路７ａに入力される。カラム選択回路７ａは、カラムアドレス信号に基づいてライトデータ線ＷＤＬとビット線ＢＬとを接続する。これにより、ライトデータは、メモリセルアレイ２ａに書き込まれる。
【００５６】
また、マルチプレクサＭＰ２から出力されたライトデータは、パリティービット生成回路８に入力される。パリティービット生成回路８により生成されたパリティービットは、ドライバ回路ＤＲ２を介してカラム選択回路７ｂに入力される。カラム選択回路７ｂは、カラムアドレス信号に基づいてパリティービット線ＷＰＬとビット線ＢＬとを接続する。これにより、パリティービットは、メモリセルアレイ２ｂに書き込まれる。
【００５７】
なお、ドライバ回路ＤＲ１，ＤＲ４と、フリップフロップＦ／Ｆ１，Ｆ／Ｆ２と、マルチプレクサＭＰ１，ＭＰ２とは、通常のデータ幅に対応する数分が設けられている。ドライバ回路ＤＲ２，ＤＲ３と、フリップフロップＦ／Ｆ３，Ｆ／Ｆ４と、マルチプレクサＭＰ３，ＭＰ４とは、通常のデータ幅に対応する数分と、パリティービットのデータ幅に対応する数分とが設けられている。ドライバ回路ＤＲ５は、パリティービットのデータ幅に対応する数分が設けられている。
【００５８】
図４は、ノーマルライトコマンドが連続して入力された場合におけるコマンドとＤＲＡＭ１内の回路を占めているデータとを示すタイミングチャートである。なお、図４中の表記は、図１２で説明した表記と同じである。ノーマルライトコマンドが連続して入力された場合は、図４に示すように１ロウサイクル内で全ての回路動作が行われる。
【００５９】
なお、１ロウサイクルとは、データをメモリセルに書き込むためにワード線のプリチャージを解除してから、データがメモリセルに書き込まれたのちにワード線をプリチャージするまでのサイクルをいう。具体的には、１ロウサイクルは、データを書き込むためのバンクを選択するバンクアクティブコマンドが入力されてから、プリチャージコマンドが入力されるまでのサイクルである。バンクアクティブコマンドが入力されると、ワード線ＷＬが活性化される。プリチャージコマンドが入力されると、ワード線ＷＬが非活性化される。図４では省略しているが、“Norm.-W ＃０”コマンドの前に、ＤＲＡＭ１にはバンクアクティブコマンドが入力されている。
【００６０】
次に、マスクライトコマンドが連続して入力された場合におけるＤＲＡＭ１の動作について説明する。図５は、マスクライトコマンドが連続して入力された場合におけるコマンドとＤＲＡＭ１内の回路を占めているデータとを示すタイミングチャートである。
【００６１】
この場合、ライトデータは、データパスＤＰ１を介してメモリセルアレイ２ａに書き込まれる。マスクライトコマンドが連続して入力された場合のＤＲＡＭ１の動作は、図１４で説明した動作と同様である。よって、図２に示したパイプライン構造により、ライトデータ及びパリティービットは、２サイクル後にメモリセルアレイ２ａ及び２ｂに夫々書き込まれる。
【００６２】
次に、ノーマルライトコマンドとマスクライトコマンドとが混在して入力された場合におけるＤＲＡＭ１の動作について説明する。図６は、この場合におけるコマンドとＤＲＡＭ１内の回路を占めているデータを示すタイミングチャートである。
【００６３】
まず、“Norm.-W ＃０”コマンドが入力されると、アドレス＃０のライトデータはメモリセルアレイ２ａに書き込まれる。また、パリティービット生成回路８は、入力されたアドレス＃０のライトデータからアドレス＃０のパリティービットを生成し、生成されたパリティービットはメモリセルアレイ２ｂに書き込まれる。
【００６４】
次に、“Mask-W ＃１”コマンドが入力されると、アドレス＃１のライトデータは、ライトデータ線ＷＤＬの初段のＦ／Ｆ１にラッチされる。また、メモリセルアレイ２ａ及び２ｂからアドレス＃１の訂正前のデータ及びパリティービットが読み出され、リードデータ線ＲＤＬ及びパリティービット線ＲＰＬに挿入された初段のＦ／Ｆ３にラッチされる。
【００６５】
次に、“Mask-W ＃２”コマンドが入力されると、アドレス＃１のライトデータはライトデータ線ＷＤＬの次段のＦ／Ｆ２に、アドレス＃２のライトデータは初段のＦ／Ｆ１にラッチされる。また、チェックビット生成回路９は、アドレス＃１の訂正前のデータ及びパリティービットからチェックビットを生成する。訂正回路１０は、１ビットエラーが存在した時に訂正を行う。
【００６６】
訂正されたデータ及びチェックビットは、夫々、リードデータ線ＲＤＬ及びチェックビット線ＣＢＬに挿入された次段のＦ／Ｆ４にラッチされる。そして、メモリセルアレイ２ａ及び２ｂからアドレス＃２のデータ及びパリティービットが読み出され、リードデータ線ＲＤＬ及びパリティービット線ＲＰＬに挿入された初段のＦ／Ｆ３にラッチされる。
【００６７】
次に、“Mask-W ＃３”コマンドが入力されると、アドレス＃１のライトデータ及び訂正されたデータは、マルチプレクサＭＰ２を通してメモリセルアレイ２ａに書き込まれる。すなわち、“Mask-W ＃１”コマンドと共に入力されたマスクデータにより選択されたマルチプレクサＭＰ２は、アドレス＃１のライトデータを選択する。マスクデータにより選択されていないマルチプレクサＭＰ２は、訂正されたデータ（リードデータ線ＲＤＬのデータ）を選択する。
【００６８】
パリティービット生成回路８は、アドレス＃１のライトデータ及び訂正されたデータからアドレス＃１のパリティービットを生成し、この生成されたパリティービットはメモリセルアレイ２ｂに書き込まれる。アドレス＃２のライトデータはライトデータ線ＷＤＬの次段のＦ／Ｆ２に、アドレス＃３のライトデータはライトデータ線ＷＤＬの初段のＦ／Ｆ１にラッチされる。
【００６９】
また、チェックビット生成回路９は、リードデータ線ＲＤＬ及びパリティービット線ＲＰＬの初段のＦ／Ｆ３に保持されているアドレス＃２の訂正前のデータ及びパリティービットからチェックビットを生成する。訂正回路１０は、１ビットエラーが存在した時に訂正を行う。訂正されたデータ及びチェックビットは、夫々、リードデータ線ＲＤＬ及びチェックビット線ＣＢＬに挿入された次段のＦ／Ｆ４にラッチされる。そして、メモリセルアレイ２ａ及び２ｂからアドレス＃３のデータ及びパリティービットが読み出され、リードデータ線ＲＤＬ及びパリティービット線ＲＰＬに挿入された初段のＦ／Ｆ３にラッチされる。
【００７０】
最後に、“Norm.-W ＃４”コマンドが入力されると、ライトデータ線ＷＤＬのＦ／Ｆ２に保持されているアドレス＃２のライトデータ、ライトデータ線ＷＤＬのＦ／Ｆ１に保持されているアドレス＃３のライトデータ、リードデータ線ＲＤＬ及びチェックビット線ＣＢＬのＦ／Ｆ４に保持されているアドレス＃２の訂正されたデータ及びチェックビット、及び、リードデータ線ＲＤＬ及びパリティービット線ＲＰＬのＦ／Ｆ３に保持されているアドレス＃３の訂正前のデータ及びチェックビットは、そのまま保持される。この制御は、前述したように、制御回路１１により行われる。
【００７１】
そして、アドレス＃４のライトデータは、先にメモリセルアレイ２ａに書き込まれる。また、パリティービット生成回路８は、アドレス＃４のライトデータからアドレス＃４のパリティービットを生成し、生成されたアドレス＃４のパリティービットはメモリセルアレイ２ｂに書き込まれる。
【００７２】
その次の“NOP”コマンドが発効されたサイクルにおいて、ライトデータ線ＷＤＬの次段のＦ／Ｆ２に保持されているアドレス＃２のライトデータ、及び、リードデータ線ＲＤＬの次段のＦ／Ｆ４に保持されている、同じくアドレス＃２の訂正されたデータは、“Mask-W ＃２”コマンドと共に入力されたマスクデータにより接続を選択するマルチプレクサＭＰ２を通して選択され、夫々、メモリセルアレイ２ａに書き込まれる。
【００７３】
パリティービット生成回路８は、アドレス＃２のライトデータ及び訂正されたデータからアドレス＃２のパリティービットを生成し、生成されたアドレス＃２のパリティービットはメモリセルアレイ２ｂに書き込まれる。
【００７４】
また、チェックビット生成回路９は、リードデータ線ＲＤＬ及びパリティービット線ＲＰＬの初段のＦ／Ｆ３に保持されているアドレス＃３の訂正前のデータ及びパリティービットからチェックビットを生成する。訂正回路１０は、１ビットエラーが存在した時に訂正を行う。訂正されたデータ及びチェックビットは、夫々、リードデータ線ＲＤＬ及びチェックビット線ＣＢＬの次段のＦ／Ｆ４にラッチされる。アドレス＃３のライトデータは、ライトデータ線ＷＤＬの次段のＦ／Ｆ２に保持される。
【００７５】
そして、次の“NOP”コマンドが発効された最後のサイクルにおいて、アドレス＃３のライトデータは、メモリセルアレイ２ａに書き込まれる。また、パリティービット生成回路８は、アドレス＃３のライトデータ及び訂正されたデータからアドレス＃３のパリティービットを生成し、生成されたアドレス＃３のパリティービットはメモリセルアレイ２ｂに書き込まれる。
【００７６】
ここで初めて全てのライトデータ及びパリティービットのメモリセルアレイへの書き込みが終了するので、次のサイクル以降において、プリチャージコマンドが入力されることで、ワード線ＷＬを非選択にすることができる。
【００７７】
以上詳述したように本実施形態では、ＤＲＡＭ１は、ＥＣＣ回路が動作するのに必要な通常のデータ幅を有するデータと、通常のデータ幅より短いデータ幅を有するデータとの書き込みを行う。そして、ＤＲＡＭ１は、短いデータ幅を有するデータを伝送するデータパスＤＰ１を迂回するデータパスＤＰ２を備える。そして、通常のデータ幅を有するデータを、データパスＤＰ２を介してメモリセルアレイに書き込むようにしている。
【００７８】
したがって本実施形態によれば、１ロウサイクル中に少なくとも１回のマスクライトコマンドが発効された時のみライトリカバリータイム（tWR）が２サイクル増加するので、１ロウサイクル中にマスクライトコマンドが発効されない場合は、ライトリカバリータイム（tWR）が増加しない。これにより、マスクライトコマンドが発効されない場合の書き込み時間を短縮することができる。
【００７９】
なお、本実施形態において、Ｆ／Ｆ１とＦ／Ｆ２との夫々に対して迂回するデータパスＤＰ２とマルチプレクサとを設けても同様に実施できる。
【００８０】
また、本実施形態では、レイトライトを行うためのＦ／Ｆを２段挿入している。しかし、これに限定されるものではなく、１段であってもよいし、或いは３段以上であってもよい。
【００８１】
（第２の実施形態）
第２の実施形態は、Ｆ／Ｆに保持されているデータと同じアドレスのデータが入力された場合における書き込み時間を、第１の実施形態に比べて短縮するようにしたものである。
【００８２】
図７は、本発明の第２の実施形態に係るＤＲＡＭ１の要部を示す回路図である。ＤＲＡＭ１は、Ｆ／Ｆ１とＦ／Ｆ２との夫々に対して、フリップフロップを迂回するデータパスＤＰ２とマルチプレクサとを備えている。すなわち、ＤＲＡＭ１は、Ｆ／Ｆ２を迂回するために、データパスＤＰ２とマルチプレクサＭＰ１とを備えている。また、ＤＲＡＭ１は、Ｆ／Ｆ１を迂回するために、データパスＤＰ２とマルチプレクサＭＰ５とを備えている。
【００８３】
ＤＲＡＭ１は、Ｆ／Ｆ２とマルチプレクサＭＰ１とを制御する制御回路１３を備えている。また、ＤＲＡＭ１は、Ｆ／Ｆ１とマルチプレクサＭＰ５とを制御する制御回路１２を備えている。
【００８４】
制御回路１２は、Ｆ／Ｆ１２ａと、排他的論理和（ＸＯＲ）回路１２ｂと、ＮＯＲ回路１２ｃと、ＯＲ回路１２ｄと、ＡＮＤ回路１２ｅと、ＯＲ回路１２ｆとを備えている。制御回路１２には、マスクライトコマンド（Mask-W）と、クロック信号ＣＬＫと、ノーマルライトコマンド時のアドレス（アドレス（ノーマルライト））と、マスクライトコマンド時のアドレス（アドレス（マスクライト））とが入力されている。なお、Ｆ／Ｆ１２ａとＸＯＲ回路１２ｂとは、夫々、アドレス数に対応した数分設けられている。
【００８５】
アドレス（ノーマルライト）は、ＸＯＲ回路１２ｂに供給されている。アドレス（マスクライト）は、Ｆ／Ｆ１２ａに供給されている。Ｆ／Ｆ１２ａの出力部は、ＸＯＲ回路１２ｂに接続されている。ＸＯＲ回路１２ｂの出力部は、ＮＯＲ回路１２ｃに接続されている。Ｆ／Ｆ１２ａとＸＯＲ回路１２ｂとＮＯＲ回路１２ｃとは、アドレス（ノーマルライト）とアドレス（マスクライト）との一致及び不一致を検出している。ＮＯＲ回路１２ｃは、アドレスが一致した場合、ハイレベルのアドレス一致信号ＡＭＳ１を出力する。
【００８６】
ＮＯＲ回路１２ｃの出力部は、ＯＲ回路１２ｄに接続されている。マスクライトコマンド（Mask-W）は、ＯＲ回路１２ｄとＯＲ回路１２ｆとに供給されている。ＯＲ回路１２ｄの出力部は、ＡＮＤ回路１２ｅに接続されている。ＯＲ回路１２ｆの出力部は、マルチプレクサＭＰ５に接続されている。クロック信号ＣＬＫは、ＡＮＤ回路１２ｅに供給されている。ＡＮＤ回路１２ｅの出力部は、Ｆ／Ｆ１とＦ／Ｆ１２ａとのクロック端子に接続されている。Ｆ／Ｆ１とＦ／Ｆ１２ａとは、夫々、ＡＮＤ回路１２ｅの出力に基づいてデータのラッチを行う。
【００８７】
制御回路１３は、Ｆ／Ｆ１３ａと、排他的論理和（ＸＯＲ）回路１３ｂと、ＮＯＲ回路１３ｃと、ＯＲ回路１３ｄと、ＡＮＤ回路１３ｅとを備えている。制御回路１３には、マスクライトコマンド（Mask-W）と、クロック信号ＣＬＫと、アドレス（ノーマルライト）とが入力されている。
【００８８】
アドレス（ノーマルライト）は、ＸＯＲ回路１３ｂに供給されている。Ｆ／Ｆ１３ａの入力部は、Ｆ／Ｆ１２ａの出力部に接続されている。Ｆ／Ｆ１３ａの出力部は、ＸＯＲ回路１３ｂに接続されている。ＸＯＲ回路１３ｂの出力部は、ＮＯＲ回路１３ｃに接続されている。Ｆ／Ｆ１３ａとＸＯＲ回路１３ｂとは、夫々、アドレス数に対応する数分設けられている。Ｆ／Ｆ１３ａとＸＯＲ回路１３ｂとＮＯＲ回路１３ｃとは、アドレス（ノーマルライト）とアドレス（マスクライト）との一致及び不一致を検出している。ＮＯＲ回路１３ｃは、アドレスが一致した場合、ハイレベルのアドレス一致信号ＡＭＳ２を出力する。
【００８９】
ＮＯＲ回路１３ｃの出力部は、ＯＲ回路１３ｄに接続されている。マスクライトコマンドは、ＯＲ回路１３ｄとマルチプレクサＭＰ１とに供給されている。ＯＲ回路１３ｄの出力部は、ＡＮＤ回路１３ｅに接続されている。クロック信号ＣＬＫは、ＡＮＤ回路１３ｅに供給されている。ＡＮＤ回路１３ｅの出力部は、Ｆ／Ｆ２とＦ／Ｆ１３ａとのクロック端子に接続されている。
【００９０】
ＮＯＲ回路１３ｃの出力部は、ＯＲ回路１２ｄとＯＲ回路１２ｆとの入力部に接続されている。すなわち、制御回路１３から出力されるアドレス一致信号ＡＭＳ２（ＮＯＲ回路１３ｃの出力）は、制御回路１２に供給されている。
【００９１】
このように構成された制御回路１２，１３の動作について説明する。制御回路１２は、“Mask-W”コマンドが入力された場合、クロック信号ＣＬＫのゲーティングを解除し、Ｆ／Ｆ１を動作させる。この時、Ｆ／Ｆ１２ａも動作し、Ｆ／Ｆ１２ａはアドレス（マスクライト）をラッチする。これにより、Ｆ／Ｆ１２ａは、Ｆ／Ｆ１に保持されたデータに対応するアドレスを保持している。
【００９２】
“Norm.-W”コマンドが入力され、且つその“Norm.-W”コマンドと共に入力されたアドレスが、Ｆ／Ｆ１２ａに保持されているアドレスと同一アドレスである場合、制御回路１２のアドレス一致信号ＡＭＳ１がハイレベルになる。これにより、制御回路１２は、Ｆ／Ｆ１を動作させる。このとき、Ｆ／Ｆ１２ａも動作する。すなわち、
制御回路１３は、“Mask-W”コマンドが入力された場合、クロック信号ＣＬＫのゲーティングを解除し、Ｆ／Ｆ２を動作させる。これにより、Ｆ／Ｆ２は、Ｆ／Ｆ１が保持していたデータをラッチする。この時、Ｆ／Ｆ１３ａも動作し、Ｆ／Ｆ１３ａはＦ／Ｆ１２ａが保持していたアドレス（マスクライト）をラッチする。これにより、Ｆ／Ｆ１３ａは、Ｆ／Ｆ２に保持されたデータに対応するアドレスを保持している。
【００９３】
“Norm.-W”コマンドが入力され、且つその“Norm.-W”コマンドと共に入力されたアドレスが、Ｆ／Ｆ１３ａに保持されているアドレスと異なるアドレスである場合、制御回路１３はＦ／Ｆ２を動作させない。
【００９４】
“Norm.-W”コマンドが入力され、且つその“Norm.-W”コマンドと共に入力されたアドレスが、Ｆ／Ｆ１３ａに保持されているアドレスと同一アドレスである場合、制御回路１３のアドレス一致信号ＡＭＳ２がハイレベルになる。これにより、制御回路１３は、Ｆ／Ｆ２を動作させる。このとき、Ｆ／Ｆ１３ａも動作する。
【００９５】
さらに、アドレス一致信号ＡＭＳ２は、制御回路１２にも供給されている。よって、制御回路１２は、Ｆ／Ｆ１を動作させる。このとき、Ｆ／Ｆ１２ａも動作する。
【００９６】
“Norm.-W”コマンドが入力され、且つその“Norm.-W”コマンドと共に入力されたアドレスが、Ｆ／Ｆ１２ａに保持されているアドレスと異なるアドレスである場合において、制御回路１３から供給される信号ＡＭＳ２がハイレベルの場合、制御回路１２はＦ／Ｆ１を動作させる。
【００９７】
“Norm.-W”コマンドが入力され、且つその“Norm.-W”コマンドと共に入力されたアドレスが、Ｆ／Ｆ１２ａに保持されているアドレスと異なるアドレスである場合において、制御回路１３から供給される信号ＡＭＳ２がローレベルの場合、制御回路１２は、Ｆ／Ｆ１を動作させない。すなわち、制御回路１２は、クロック信号ＣＬＫをゲーティングする。
【００９８】
また、制御回路１２は、リードデータ線ＲＤＬ及びパリティービット線ＲＰＬに挿入された初段のＦ／Ｆ３及びマルチプレクサＭＰ３にも接続されている。制御回路１３は、リードデータ線ＲＤＬ及びチェックビット線ＣＢＬに挿入された次段のＦ／Ｆ４及びマルチプレクサＭＰ４にも接続されている。よって、Ｆ／Ｆ３及びマルチプレクサＭＰ３は、夫々Ｆ／Ｆ１及びマルチプレクサＭＰ５と同じように動作する。また、Ｆ／Ｆ４及びマルチプレクサＭＰ４は、夫々Ｆ／Ｆ２及びマルチプレクサＭＰ１と同じように動作する。
【００９９】
次に、このように構成されたＤＲＡＭ１の動作について説明する。コマンド入力の様子とＤＲＡＭ１内の回路を占めているデータとを示すタイミングチャートは、“Norm.-W”コマンドが連続して入力された場合は、図４と同様になる。“Mask-W”コマンドが連続して入力された場合は、図５と同様になる。“Norm.-W”コマンドと“Mask-W”コマンドとが混在して入力された場合は、図６と同様になる。
【０１００】
そして、“Norm.-W”コマンドと“Mask-W”コマンドとが混在して入力され、その入力された“Norm.-W”コマンドのアドレスが、Ｆ／Ｆに保持しているアドレスと同一アドレスである場合を図８にて説明する。まず、“Mask-W ＃３”コマンドが入力されるまでは図６の場合と同様である。その後、“Norm.-W ＃２”コマンドが入力されると、２サイクル前に入力された“Mask-W ＃２”コマンドのアドレスと同一となるため、図６の場合と少し異なる。
【０１０１】
このサイクルにおいては、“Norm.-W ＃２”コマンド入力時の動作は図６と同様であるが、この時、ライトデータ線ＷＤＬの次段のＦ／Ｆ２に保持されているアドレス＃２のライトデータ、及びリードデータ線ＲＤＬの次段のＦ／Ｆ４に保持されている、同じくアドレス＃２の訂正されたデータ及びチェックビットは失われる。そして、先に、チェックビット生成回路９はアドレス＃３の訂正前のデータ及びパリティービットからチェックビットを生成し、１ビットエラーが存在した時に訂正回路１０は訂正を行う。訂正されたデータ及びチェックビットは、夫々、リードデータ線ＲＤＬ及びチェックビット線ＣＢＬに挿入された次段のＦ／Ｆ４にラッチされる。
【０１０２】
そして、次の最後のサイクルにおいて、アドレス＃３のライトデータはメモリセルアレイ２ａに書き込まれ、また、パリティービット生成回路８は、入力されたアドレス＃３のライトデータ及び訂正されたデータからアドレス＃３のパリティービットを生成し、生成されたパリティービットはメモリセルアレイ２ｂに書き込まれる。
【０１０３】
ここで初めて全てのライトデータ及びパリティービットのメモリセルへの書き込みが終了するので、次のサイクル以降において、プリチャージコマンドが入力されることで、ワード線ＷＬを非選択にすることができる。
【０１０４】
以上詳述したように本実施形態によれば、１ロウサイクルに少なくとも１回マスクライトコマンドが入力される場合、１ロウサイクル内で入力されたノーマルライトコマンドのアドレスが、通算して２コマンド前までに入力されたマスクライトコマンドのアドレスと同一である場合は、ライトリカバリータイム（tWR）を第１の実施形態に比べて１サイクル減少させることができる。よって、この場合のライトリカバリータイム（tWR）は、１サイクルの増加ですむことになる。
【０１０５】
また、本実施形態では、レイトライトを行うためのＦ／Ｆを２段挿入している。しかし、これに限定されるものではなく、１段であってもよいし、或いは３段以上であってもよい。
【０１０６】
この発明は、上記実施形態に限定されるものではなく、その他、本発明の要旨を変更しない範囲において種々変形して実施可能である。
【図面の簡単な説明】
【０１０７】
【図１】本発明の第１の実施形態に係るＤＲＡＭ１の構成を示すブロック図。
【図２】メモリセルアレイ２及びデータ線回路３の構成を示す回路ブロック図。
【図３】マルチプレクサとフリップフロップとの動作を制御する制御回路１１の構成を示す回路図。
【図４】ノーマルライトコマンドが連続して入力された場合におけるコマンドとＤＲＡＭ１内の回路を占めているデータとを示すタイミングチャート。
【図５】マスクライトコマンドが連続して入力された場合におけるコマンドとＤＲＡＭ１内の回路を占めているデータとを示すタイミングチャート。
【図６】ノーマルライトコマンドとマスクライトコマンドとが混在して入力された場合におけるコマンドとＤＲＡＭ１内の回路を占めているデータを示すタイミングチャート。
【図７】本発明の第２の実施形態に係るＤＲＡＭ１の要部を示す回路図。
【図８】ノーマルライトコマンドのアドレスがＦ／Ｆに保持しているアドレスと同一アドレスである場合におけるコマンドとＤＲＡＭ１内の回路を占めているデータを示すタイミングチャート。
【図９】ＥＣＣ回路を有するＤＲＡＭの一例を示す回路ブロック図。
【図１０】ＥＣＣ回路を有するＤＲＡＭの一例を示す回路ブロック図。
【図１１】ＥＣＣ回路が動作するのに必要なデータ幅より短いデータ幅における書き込みを実現するＥＣＣ回路を有するＤＲＡＭの一例を示す回路ブロック図。
【図１２】コマンドとＤＲＡＭ内の回路を占めているデータとを示すタイミングチャート。
【図１３】図１１のデータパスに２段のフリップフロップを挿入したＤＲＡＭ１の構成例を示す回路ブロック図。
【図１４】コマンドとＤＲＡＭ１内の回路を占めているデータとを示すタイミングチャート。
【符号の説明】
【０１０８】
ＷＤＬ…ライトデータ線、ＲＤＬ…リードデータ線、ＲＰＬ…パリティービット線、ＷＰＬ…パリティービット線、ＣＢＬ…チェックビット線、ＤＰ１，ＤＰ２…データパス、Ｆ／Ｆ１，Ｆ／Ｆ２，Ｆ／Ｆ３，Ｆ／Ｆ４，Ｆ／Ｆ５，Ｆ／Ｆ６，１２ａ，１３ａ…フリップフロップ、ＭＰ１，ＭＰ２，ＭＰ３，ＭＰ４，ＭＰ５…マルチプレクサ、ＤＲ１，ＤＲ２，ＤＲ３，ＤＲ４，ＤＲ５…ドライバ回路、ＩＮＶ…インバータ回路、ＴＧ１，ＴＧ２…トランスミッションゲート、１…ＤＲＡＭ、２…メモリセルアレイ、２ａ…データ用メモリセルアレイ、２ｂ…コード用メモリセルアレイ、３…データ線回路、４…ワード線回路、５…メモリ制御回路、７ａ，７ｂ…カラム選択回路、８…パリティービット生成回路、９…チェックビット生成回路、１０…訂正回路、１１，１２，１３…制御回路、１１ａ，１２ｅ，１３ｅ…ＡＮＤ回路、１２ｂ，１３ｂ…排他的論理和回路、１２ｃ，１３ｃ…ＮＯＲ回路、１２ｄ，１２ｆ，１３ｄ…ＯＲ回路。
【図１】
2006092634.tif 000003
【図２】
2006092634.tif 000004
【図３】
2006092634.tif 000005
【図４】
2006092634.tif 000006
【図５】
2006092634.tif 000007
【図６】
2006092634.tif 000008
【図７】
2006092634.tif 000009
【図８】
2006092634.tif 000010
【図９】
2006092634.tif 000011
【図１０】
2006092634.tif 000012
【図１１】
2006092634.tif 000013
【図１２】
2006092634.tif 000014
【図１３】
2006092634.tif 000015
【図１４】
2006092634.tif 000016