(57)【特許請求の範囲】
【請求項１】
メモリセルの複数の行および列を含むメモリアレイと，
行アドレスに応答してアクセスするためにセルの行を選択する行アドレスデコーダと，
対応するセルの行をアクセスための行アドレスを発生し，各アドレスが複数のアドレスビットを含む，アドレス発生回路と，
再プログラム可能な連合メモリであり，前記アドレス発生回路から受け取られ，セルの欠陥行をアドレス指定するアドレスを修正し，前記行の一つの動作行をアドレス指定する新たなアドレスを得，実質的に，前記新たなアドレスの全体が前記連合メモリから前記行アドレスデコーダに渡されるようにし，
前記アドレス発生回路から受け取られ，前記行の一つの動作行をアドレス指定する前記アドレスを，未修正で前記行アドレスデコーダに渡す，前記再プログラム可能な連合メモリと，
を含む，データ処理システム。
【請求項２】
前記動作行が前記アレイの第２スペース内にあり，欠陥行が前記アレイの第１スペース内にある，請求項１記載のシステム。
【請求項３】
前記第１スペースが，前記アレイ内のフレームバッファスペースを含む，請求項２記載のシステム。
【請求項４】
前記連合メモリをプログラムするためのプログラミング回路をさらに含み，該プログラミング回路が，
前記アレイ内の第１の前記行を前記第１アドレスによってアドレス指定し，
前記第１行をテストして，前記第１行が少なくとも１つの前記欠陥行を含むことを決定し，
前記第２アドレスを発生し，
前記第１アドレスが入力された時，前記第２アドレスを出力するように前記連合メモリをプログラムし，
前記第１アドレスを前記連合メモリシステムへ供給し，
前記アレイ内の第２の前記行を，前記第１アドレスの前記供給に応答して前記連合メモリから出力される前記第２アドレスによりアドレス指定し，
前記第２行をテストして，前記第２行が動作性のものであることを保証する，動作を行いうる，請求項１記載のシステム。
【請求項５】
前記プログラミング回路が状態マシンを含む，請求項４記載のシステム。
【請求項６】
前記プログラミング回路がマイクロコントローラを含む，請求項４記載のシステム。
【請求項７】
関連するメモリをアクセスするためのアドレスを発生するアドレス発生回路を含む制御装置と，
行および列をなして配列されたメモリセルのアレイと，受取った前記アドレスに応答して前記行および列を選択するデコーディング回路と，を含むメモリシステムと，
前記制御装置から受け取られ，前記アレイの第１スペース内の前記行の欠陥行をアドレス指定しているアドレスを，前記アレイの第２スペース内の前記行の対応する動作行をアドレス指定する新しいアドレスに翻訳する動作を行い得る再プログラム可能な連合メモリ回路であり，実質的に，前記新しいアドレスのそれぞれのすべてのビットが前記連合メモリから前記でコーディング回路に渡され，前記連合メモリが更に，前記制御装置から受け取られ，前記第１スペースの前記行の動作行をアドレス指定する各アドレスのすべてのビットを実質的に未修正で前記でコーディング回路に渡すように動作可能な前記再プログラム可能な連合メモリ回路と，
を含む，データ処理システム。
【請求項８】
前記制御装置がディスプレイ制御装置を含む，請求項７記載の処理システム。
【請求項９】
前記制御装置がVGA制御装置を含む，請求項７記載の処理システム。
【請求項１０】
前記制御装置が，前記翻訳を実行するように前記連合メモリ回路をプログラムする動作を行いうる回路を含む，請求項７記載の処理システム。
【請求項１１】
前記制御装置が，
第１の前記行に対するアドレスを第１カウンタ内へロードし，
第２の前記行に対するアドレスを第２カウンタ内へロードし，
前記第１行を欠陥セルに関しアクセスしてテストし，
もし前記第１行が欠陥セルを含まなければ，第１新アドレスを得るために前記第１カウンタを増加させ，
もし前記第１行が少なくとも１つの欠陥セルを含めば，
第２新アドレスを得るために前記第２カウンタを減少させ，
前記第１アドレスが入力された時，前記第２新アドレスを出力するように前記連合メモリシステムをプログラムし，
前記第１アドレスを前記連合メモリシステムへ供給し，
前記アレイ内の第２の前記行を，前記第１アドレスの前記供給に応答しての前記連合メモリからの前記第２新アドレス出力によりアドレス指定し，
前記第２行をテストして，前記第２行が動作性のものであることを保証する，
動作を行いうる，請求項10記載の処理システム。
【請求項１２】
前記制御装置が，
第１カウンタ内に保持されている第１アドレスに応答して，欠陥セルに関し前記第１行をアクセスしてテストし，
もし前記第１行が欠陥セルを含まなければ，
第１新アドレスを得るために前記第１カウンタ内の前記第１アドレスを増加させ，
もし前記第１新アドレスが，第２カウンタ内に保持されているアドレスに等しければ，前記第１アドレスを得るために前記第１カウンタを減少させて停止し，
もし前記第１新アドレスが，前記第２カウンタ内の前記アドレスに等しくなければ，前記第１新アドレスに対応する前記行を欠陥セルに関してテストし，
もし前記第１行が少なくとも１つの欠陥セルを含んでいれば，
第２新アドレスを得るために前記第２カウンタを減少させ，
もし前記第２新アドレスが，前記第１カウンタ内の前記アドレスに等しければ，前記第１アドレスを得るために前記第１カウンタを減少させて停止し，
もし前記第２新アドレスが，前記第１カウンタ内の前記アドレスに等しくなければ，
前記第１アドレスが入力された時，前記第２新アドレスを出力するように前記連合メモリシステムをプログラムし，
前記第１アドレスを前記連合メモリシステムへ供給し，
前記アレイ内の第２の前記行を，前記第１アドレスの前記供給に応答して前記連合メモリから出力される前記第２新アドレスによりアドレス指定し，
前記第２行をテストして，前記第２行が動作性のものであることを保証する，
動作を行いうる，請求項10記載の処理システム。
【請求項１３】
前記メモリシステムが，前記翻訳を実行するように前記連合メモリ回路をプログラムする動作を行いうるプログラミング回路を含む，請求項７記載の処理システム。
【請求項１４】
前記プログラミング回路が，
第１の前記行に対するアドレスを第１の前記カウンタ内へロードし，
第２の前記行に対するアドレスを第２の前記カウンタ内へロードし，
前記第１行を欠陥セルに関しアクセスしてテストし，
もし前記第１行が欠陥セルを含まなければ，第１新アドレスを得るために前記第１カウンタを増加させ，
もし前記第１行が少なくとも１つの欠陥セルを含めば，
第２新アドレスを得るために前記第２カウンタを減少させ，
前記第１アドレスが入力された時，前記第２新アドレスを出力するように前記連合メモリシステムをプログラムし，
前記第１アドレスを前記連合メモリシステムへ供給し，
前記アレイ内の第２の前記行を，前記第１アドレスの前記供給に応答しての前記連合メモリからの前記第２新アドレス出力によりアドレス指定し，
前記第２行をテストして，前記第２行が動作性のものであることを保証する，
動作を行いうる，請求項13記載の処理システム。
【請求項１５】
行および列をなして配列されたメモリセルのアレイを含むメモリと，
列アドレスに応答してアクセスのために列を選択する列アドレスデコーダと，前記列の対応するものをアクセスするための前記アドレスを発生するアドレス発生回路と，
前記アドレス発生回路に結合せしめられた再プログラム可能な連合メモリであって，前記アドレス発生回路から受け取られ，前記列の欠陥列をアドレス指定している第１のアドレスを，前記列の動作列をアドレス指定する第２のアドレスに翻訳し，実質的に，前記第２のアドレスのすべてのビットが前記連合メモリから前記デコーダに渡され，前記関連するデコーダが，制御装置から受け取られ，前記行の動作列をアドレス指定する各アドレスのすべてを未修正で実質的に前記デコーディング回路に渡す，前記再プログラム可能な連合メモリと，
を含む，処理システム。
【請求項１６】
前記翻訳を実行するように前記連合メモリをプログラムするプログラミング回路をさらに含む，請求項15記載の処理システム。
【請求項１７】
前記プログラミング回路が，
第１の前記列に対するアドレスを第１カウンタ内へロードし，
第２の前記列に対するアドレスを第２カウンタ内へロードし，
前記第１列を欠陥セルに関しアクセスしてテストし，
もし前記第１列が欠陥セルを含まなければ，第１新アドレスを得るために前記第１カウンタを増加させ，
もし前記第１列が少なくとも１つの欠陥セルを含めば，
第２新アドレスを得るために前記第２カウンタを減少させ，
前記第１アドレスが入力された時，前記第２新アドレスを出力するように前記連合メモリシステムをプログラムし，
前記第１アドレスを前記連合メモリシステムへ供給し，
前記アレイ内の第２の前記列を，前記第１アドレスの前記供給に応答しての前記連合メモリからの前記第２新アドレス出力によりアドレス指定し，
前記第２列をテストして，前記第２列が動作性のものであることを保証する，
動作を行いうる，請求項16記載の処理システム。
【請求項１８】
前記プログラミング回路が，
第１カウンタ内に保持されている第１アドレスに応答して，欠陥セルに関し前記第１列をアクセスしてテストし，
もし前記第１列が欠陥セルを含まなければ，
第１新アドレスを得るために前記第１カウンタ内の前記第１アドレスを増加させ，
もし前記第１新アドレスが，第２カウンタ内に保持されているアドレスに等しければ，前記第１アドレスを得るために前記第１カウンタを減少させて停止し，
もし前記第１新アドレスが，前記第２カウンタ内の前記アドレスに等しくなければ，前記第１新アドレスに対応する前記列を欠陥セルに関してテストし，
もし前記第１列が少なくとも１つの欠陥セルを含んでいれば，
第２新アドレスを得るために前記第２カウンタを減少させ，
もし前記第２新アドレスが，前記第１カウンタ内の前記アドレスに等しければ，前記第１アドレスを得るために前記第１カウンタを減少させて停止し，
もし前記第２新アドレスが，前記第１カウンタ内の前記アドレスに等しくなければ，
前記第１アドレスが入力された時，前記第２新アドレスを出力するように前記連合メモリシステムをプログラムし，
前記第１アドレスを前記連合メモリシステムへ供給し，
前記アレイ内の第２の前記列を，前記第１アドレスの前記供給に応答して前記連合メモリから出力される前記第２新アドレスによりアドレス指定し，
前記第２列をテストして，前記第２列が動作性のものであることを保証する，
動作を行いうる，請求項16記載の処理システム。
【請求項１９】
前記連合メモリシステムがスタティックランダムアクセスメモリを含む，請求項15記載のシステム。
【請求項２０】
行および列をなして配列されたメモリセルのアレイ内の欠陥セルをワークアラウンドする方法において，
再プログラム可能な連合メモリをプログラムするステップであって，該プログラムするステップが，
前記アレイ内の第１行を第１アドレスによりアドレス指定するサブステップと，
前記第１行をテストして，該第１行が少なくとも１つの欠陥セルを含むことを決定するサブステップと，
前記アレイ内の第２の動作行の利用可能度を決定するサブステップと，
前記アレイ内の前記第２行に対する第２アドレスを発生するサブステップと，
前記第１アドレスが入力された時，前記第２アドレスが出力されるように，前記第１および第２アドレスを前記連合メモリ内に記憶するサブステップと，
前記第１アドレスを前記連合メモリへ供給するサブステップと，
前記アレイ内の前記第２行を，前記第１アドレスの前記供給に応答して前記連合メモリから出力される前記第２アドレスによりアドレス指定するサブステップと，
前記第２行をテストして，前記第２行が動作性のものであることを保証するサブステップと，
を含む，前記連合メモリをプログラムするステップと，
前記アレイの選択された行の少なくとも１つのセルをアクセスするために，前記連合メモリへアドレスを入力するステップと，
もし前記選択された行に対する前記アドレスが，前記アレイ内の欠陥行に対するアドレスに一致していれば，対応する動作行の前記アドレスを前記メモリへ出力するステップと，
を含む，前記方法。
【請求項２１】
前記プログラムするステップが，前記記憶するサブステップの前に，メモリスペースがワークアラウンドのために利用可能であるかどうかを決定するため前記第１および第２アドレスを比較するサブステップをさらに含む，請求項20記載の方法。
【請求項２２】
行および列をなして配列されたメモリセルのアレイ内の欠陥セルをワークアラウンドする方法において，
再プログラム可能な連合メモリをプログラムするステップであって，該プログラムするステップが，
前記アレイ内の第１列を第１アドレスによりアドレス指定するサブステップと，
前記第１列をテストして，該第１列が少なくとも１つの欠陥セルを含むことを決定するサブステップと，
前記アレイ内の第２の動作列の利用可能度を決定するサブステップと，
前記アレイ内の前記第２列に対する第２アドレスを発生するサブステップと，
前記第１アドレスが入力された時，前記第２アドレスが出力されるように，前記第１および第２アドレスを前記連合メモリ内に記憶するサブステップと，
前記第１アドレスを前記連合メモリへ供給するサブステップと，
前記アレイ内の前記第２列を，前記第１アドレスの前記供給に応答して前記連合メモリから出力される前記第２アドレスによりアドレス指定するサブステップと，
前記第２列をテストして，前記第２列が動作性のものであることを保証するサブステップと，
を含む，前記連合メモリをプログラムするステップと，
前記アレイの選択された列の少なくとも１つのセルをアクセスするために，前記連合メモリへアドレスを入力するステップと，
もし前記選択された列に対する前記アドレスが，前記アレイ内の欠陥列に対するアドレスに一致していれば，対応する動作列の前記アドレスを前記連合メモリから出力するステップと，
を含む，前記方法。
【請求項２３】
前記プログラムするステップが，前記記憶するサブステップの前に，メモリスペースがワークアラウンドのために利用可能であるかどうかを決定するため前記第１および第２アドレスを比較するサブステップをさらに含む，請求項22記載の方法。
【発明の詳細な説明】
発明の分野
本発明は一般的には電子メモリに関し、特に、メモリ素子内の欠陥セルに対処する回路、システム、および方法に関する。
発明の背景
２つまたはそれ以上の回路ブロックを単一集積回路内に集積する時、１つの主要な関心事は、高い集積歩留り（すなわち、集積回路全体の製造歩留り）である。集積歩留りは、集積される回路の諸ブロックが異なる生産設計のものであり、かつ／または、異なる処理規則のもとに製造されなければならない時に、特に関心事となる。特定の集積回路の集積歩留りは、それぞれの非集積歩留り（すなわち、それぞれのさまざまなタイプの回路ブロックのそれぞれの歩留り）の関数であり、チップ上に製造されるそれぞれのタイプの回路の歩留りを最大化することが重要となる。
集積歩留りが重要な因子となる１つの特定の場合は、ダイナミックランダムアクセスメモリ（DRAM）回路が、論理回路と共に単一チップ内へ集積される時である。第１に、論理回路とDRAM回路との間の歩留りの差が、それらの回路自体の実際の設計の差から生じる。第２に、これら２つのタイプの回路間の歩留りの差が、典型的に、論理回路およびDRAM回路が実質的に異なるプロセスを用いて製造される事実から生じる。
集積回路の全体的歩留りを増大させる１つの方法は、DRAMセルアレイ内の欠陥メモリセルを「修理」することにより、DRAM回路の歩留りを増大させることである。典型的には、DRAMメモリ素子は、指定されたよりも10％ほど多くのメモリセルの「予備」行を有する。製造中に、欠陥セルを含む行を識別するために、ウエハテストが行われる。少なくとも１つの欠陥セルを含むことが判明した行は、その後、そのアレイ内の予備行から選択された動作行により「置換」される。この置換は、例えば、ヒューズを飛ばすことにより、または回路を別の方法で物理的に変更することにより、行われうる。この技術は、不利なことに、それぞれのセルアレイをテストし、チップを変えることにより不良行を優良行で置換するという、時間のかかる諸ステップを含む、いくつかの製造ステップを要する。要約すれば、そのような技術はDRAMメモリアレイの歩留り、従ってチップの集積歩留り、をかなり増大させうるが、それはまた、不利なことに、製造時間および素子コストをも増大させる。欠陥の数に依存するある点に達すると、与えられたメモリアレイを修理するために要する時間および経費が、余りにも時間がかかりすぎ、かつ／または、余りにも経費がかかりすぎるようになるので、素子は単に放棄される。
従って、DRAM素子の歩留りの増大を可能ならしめる回路および方法への要求が生じた。特に、そのような回路および方法は、DRAMメモリアレイの歩留りを増大させることにより、論理回路およびDRAM回路を共に含む集積回路の集積歩留りを増大させるべきである。都合良くは、そのような回路および方法は、セルの不良行を、セルの優良行で置換するために、チップを物理的に変更するのに現在必要とされている時間および経費をなくすのに役立つべきである。
発明の要約
本発明の原理によれば、メモリセルアレイ内の不良行および／または列を「ワークアラウンド（work  around）する」ために、連合メモリシステムが用いられる。例えば、メモリセルアレイ内のセルの欠陥行へのアクセスを要求するアドレスが発生せしめられた時、そのアドレスは、アレイ内のセルの動作行に対応するアドレスへ翻訳される。同様にして、メモリアレイ内のセルの欠陥列は、そのような欠陥列をアクセスするためのいずれのリクエストをも、同じアレイ内の動作列へ送ることにより、効果的に「置換」されうる。実施例においては、連合メモリは、メモリアレイと同じ集積回路上に、そのアレイを欠陥セルの存在に関してテストする回路、およびその連合メモリをプログラムするためのプログラミング回路、と共に形成される。
本発明の第１実施例によれば、行および列をなして配列されたメモリセルのアレイを含むデータ処理システムが提供され、それぞれの行はアドレスによりアドレス指定可能である。対応する行をアクセスするためのアドレスを発生する、アドレス発生回路が備えられる。連合メモリが、該アドレス発生回路に結合せしめられ、該アドレス発生回路から受取られ１つの欠陥行をアドレス指定する第１アドレスを、１つの動作行をアドレス指定する第２アドレスに翻訳し、該第２アドレスはメモリへ送られる。
本発明の第２実施例によれば、関連するメモリをアクセスするためのアドレスを発生するアドレス発生回路を有する制御装置を含むデータ処理システムが提供される。行および列をなして配列されたメモリセルのアレイと、受取られた前記アドレスに応答して該行および列を選択するデコーディング回路と、を含むメモリシステムが備えられる。前記データ処理システムは、前記制御装置から受取った、前記アレイの第１スペース内の行の欠陥行をアドレス指定するアドレスを、前記アレイの第２スペース内の対応する動作行をアドレス指定するアドレスへ、翻訳する動作を行いうる連合メモリ回路をさらに含む。
本発明の第３実施例によれば、行および列をなして配列されたメモリセルのアレイを有するメモリを含む処理システムが提供され、それぞれの列は列アドレスによりアドレス指定可能である。対応する選択された列をアクセスするためのアドレスを発生する、アドレス発生回路も備えられる。連合メモリが、該アドレス発生回路に結合せしめられ、該アドレス発生回路から受取られ１つの欠陥列をアドレス指定する第１アドレスを、動作列をアドレス指定する第２アドレスに翻訳し、該第２アドレスはメモリへ供給される。
本発明の原理はまた、行および列をなして配列されたメモリセルのアレイ内のセルの欠陥行をワークアラウンドする方法において具体化される。まず、連合メモリがプログラムされる。前記メモリのアレイ内の第１行がアドレス指定され、かつテストされて、該第１行が少なくとも１つの欠陥セルを含むことが決定される。アレイ内の第２行をアドレス指定するための、第２アドレスが発生せしめられる。次に、第１および第２アドレスは連合メモリ内に、第１アドレスの入力時に第２アドレスが連合メモリから出力されるように、記憶される。次に、第１アドレスは連合メモリへ、第２アドレスがそこから出力されてメモリアレイをアドレス指定するように供給される。次に、メモリアレイの第２行がテストされて、該第２行が動作性のものであることが保証される。次に、アレイの選択された行の少なくとも１つのセルをアクセスするために、アドレスが連合メモリへ入力される。もし選択された行に対するアドレスが、アレイ内の欠陥行に対するアドレスに一致していれば、対応する動作行が、メモリアレイへ出力される。
本発明の原理はさらに、行および列をなして配列されたメモリセルのアレイ内の欠陥セルの列をワークアラウンドする方法を提供する。まず、連合メモリがプログラムされる。とりわけ、メモリアレイ内の第１列は、第１アドレスによりアドレス指定される。その第１アドレスはテストされ、第１列が少なくとも１つの欠陥セルを含むことが決定される。アレイ内の第２列をアドレス指定するための、第２アドレスが発生せしめられる。次に、第１および第２アドレスは連合メモリ内に、第１アドレスの連合メモリへの入力時に第２アドレスが出力されるように、記憶される。次に、第１アドレスは連合メモリへ、第２アドレスが出力されてアレイ内の第２列へのアクセスを可能ならしめるように、供給される。次に、第２列はテストされて、該第２列が動作性のものであることが保証される。次に、プログラムの諸ステップが完了した時、アレイの選択された列の少なくとも１つのセルをアクセスするために、連合メモリへのアドレスが入力されうる。次に、もし選択された行に対するアドレスが、アレイ内の欠陥行に対するアドレスに一致していれば、対応する動作行のアドレスが連合メモリから、メモリアレイへ出力される。
本発明の実施例は、従来技術より優れた実質的利点を有する。とりわけ、本発明の回路、システム、および方法は、セルの欠陥行および列を置換するための、メモリセルのアレイの経費および時間のかかる物理的変更の必要をなくす。さらに、すべてのテストがチップ上において行われるので、セルのアレイのテスト効率が増大する。さらに、本発明の原理が、単一チップ上にメモリ回路および論理回路の双方を集積する素子に適用される時、チップの集積歩留りは実質的に増大せしめられうる。
この場合、メモリ部分の完全な機能性は、常に起動されている必要はない。本発明の原理は、たとえメモリが完全に無欠陥でなくても、素子全体を使用可能にする十分な機能性メモリを提供するために、適用されうる。例えば、もしメモリの50％の機能性を達成しうれば、素子全体は縮減された構成により使用可能でありえ、または、もしメモリの90％の機能性を達成しうれば、素子全体は完全に使用可能となりうる。最後に、好ましくはメモリアレイは、チップのそれぞれのパワーアップによりテストされるので、たとえ欠陥セルが製造の後に生じても、メモリアレイの完全性は維持されうる。
以上においては、以下の本発明の詳細な説明を一層良く理解しうるように、本発明の特徴および技術的利点を、どちらかというとおおざっぱに略述した。本発明の他の特徴および利点は、以下に説明され、それらは本発明の請求の範囲の主体をなす。当業者は、開示されている概念および特定の実施例が、本発明の同じ目的を達成するための他の構造を改変または設計する基礎として、容易に利用されうることを認識すべきである。当業者はまた、そのような等価の構成が、添付の請求の範囲に記載されている本発明の精神および範囲から逸脱しないことを理解すべきである。
【図面の簡単な説明】
本発明およびその利点をさらに完全に理解するためには、ここで添付図面と共に以下の説明を参照すべきであり、添付図面において、
第１図は、グラフィックス／ビデオデータ処理システムの高レベル機能ブロック図であり、
第2A図および第2B図は、本発明の２つの実施例による、第１図に示されているディスプレイ制御装置とフレームバッファとの、より詳細な機能ブロック図であり、
第３図は、本発明の原理による欠陥行のワークアラウンドを実現するための、第2A図および第2B図に示されている連合メモリシステムのオンボードプログラミングを説明するフローチャートであり、
第４図は、本発明の原理による欠陥列のワークアラウンドを実現するための、第2A図および第2B図に示されている連合メモリシステムのオンボードプログラミングを説明するフローチャートである。
発明の詳細な説明
本発明の原理およびその利点は、図面の第１図から第４図までに示されている実施例を参照することにより最も良く理解され、第１図から第４図までにおいては、同じ番号は同じ部品を指示する。さらに、本発明の原理はグラフィックス／ビデオ処理システムとの関連において図示されるが、この原理によるブロック転送回路、システム、および方法は、多くの処理アプリケーションのいずれにおいても用いられうる。
第１図は、グラフィックスおよび／またはビデオデータのディスプレイを制御する処理システム100の一部の、高レベル機能ブロック図である。システム100は、中央処理装置101と、システムバス102と、ディスプレイ制御装置103と、フレームバッファ104と、ディジタルアナログ変換器（DAC）105と、ディスプレイ装置106と、を含む。
CPU101は、システム100の全体的動作を制御し、ユーザの指令のもとにディスプレイ装置106上にディスプレイされるべきグラフィックスデータの内容を決定し、またさまざまなデータ処理機能を行う。CPU101は、例えば、市販のパーソナルコンピュータに用いられている汎用マイクロプロセッサでありうる。CPU101は、例えば、ローカルバス、ISAバス、またはPCIバスでありうるシステムバス102を経て、システム100の残りの部分と通信する。DAC105は、制御装置103からディジタルデータを受け、それに応答して、ディスプレイ106を駆動するのに必要なアナログデータを出力する。システム100の特定の具体化に依存して、DAC105は、いくつかのオプションを実現するための、カラーパレット、YUVないしRGBフォーマットの諸回路、および／または、ｘおよびｙズーム回路を含みうる。
ディスプレイ106は、例えば、CRTユニット、液晶ディスプレイ、エレクトロルミネセントディスプレイ（ELD）、プラズマディスプレイ（PLD）、または他のタイプのディスプレイ装置でありえ、複数のピクセルとしてのディスプレイ画面上に画像をディスプレイする。
図示されている実施例においては、システム100は、640列×480行のピクセルを有する、ディスプレイ106のディスプレイ画面を駆動する、VGAシステムである。また、説明の目的上、それぞれのピクセルは、24ビットのRGBデータ（すなわち、赤、緑、および青に対しそれぞれ８ビット）により定められるものと仮定する。従って、フレームバッファ104の物理メモリの絶対的最大サイズは、640列×480行×24ビット毎ピクセル、すなわち約１メガバイトとなる。ディスプレイ画面上の「可視ピクセル」は、選択されたメモリフォーマッティングに依存して、フレームバッファ104の物理メモリ内の記憶場所へ正確にマップされ、またはされないことに注意すべきである。さらに、それぞれのピクセルを定める24ビットのカラーデータは、物理メモリの順次記憶場所内に物理的に記憶され（この場合には、24ビットの全てがDRAMまたはVRAMの与えられたページ内に記憶されうる）、またはフレームバッファ104の物理メモリの３つの異なるバンクまたは行内に記憶されうる。
第2A図は、ディスプレイ制御装置103およびフレームバッファ104のさらに詳細な機能ブロック図であり、本発明の原理を具体化する回路の１つの実施例を強調している。第2A図に示されているように、ディスプレイ制御装置103は、グラフィックス／ビデオ制御装置論理回路201と、アドレス発生器202と、連合メモリシステム203と、を含む。フレームバッファ104は、Ｍ行Ｎ列をなして配列されたメモリセルのアレイ204を含む。アレイ204の行は、関連する行デコーダ205により制御（選択）され、アレイ204の列は、関連する列デコーダ／センスアンプ回路206に結合せしめられている。行デコーダ205は、メモリ入出力回路207を経て受取った行アドレスに応答して、メモリアクセス（読取りまたは書込み）に際し、アレイ204内の与えられた行を選択する。同様にして、列デコーダ／センスアンプ回路206の列デコーダは、メモリ入出力回路207を経て受取った列アドレスに応答して、選択された行に沿った１つまたはそれ以上のメモリセルへの選択的アクセスを可能ならしめる。データは、グラフィックス／ビデオ制御装置論理回路201と、メモリアレイ204との間で、メモリ入出力回路207および列デコーダ／センスアンプ回路206を経て交換される。
図示の実施例においては、グラフィックス／ビデオ制御装置論理回路201は、後述されるように、改変され、またはプログラムされた、多数の公知の制御装置の任意の１つでありえ、それは、グラフィックスおよび／またはビデオデータのディスプレイを制御する。例えば、グラフィックス／ビデオ制御装置論理回路201は、標準VGA制御装置回路により実現されうる。同様にして、アドレス発生器202は、制御装置201が行デコーダ205および列デコーダ／センスアンプ回路206を経てメモリアレイ204内の記憶場所を適切にアクセスすることを可能にする、アドレスを発生する、多数の公知のアドレス発生器設計を有するものの任意の１つでありうる。実施例においては、メモリアレイ204は、ダイナミックランダムアクセスメモリ（DRAM）セルのアレイであり、連合メモリは、スタティックランダムアクセスメモリ（SRAM）セルにより実現される。同様にして、行デコーダ205と、列デコーダ／センスアンプ206と、入出力回路207とは、従来の設計のものである。
本発明の原理によれば、連合メモリシステム203は、アレイ204内の欠陥メモリセルまたは欠陥メモリセルのグループの「ワークアラウンド」を行う。さらに後述されるように、本発明の原理は、第１実施例において、１つまたはそれ以上の欠陥セルを含むセル行の全体を、完全な動作性の別の「スペア」セル行により置換する対処を行う。第２実施例においては、１つまたはそれ以上の欠陥セルを含む、「バイワン（by  one）」メモリのセルアレイ内に与えられた列が、欠陥セルを含まない「スペア」セル列により置換されうる。
最初の事情として、典型的なDRAM素子は、指定されたよりも10％程多いセル行を含むことを再び認識すべきである。さらに、システム100のようなグラフィックス／ビデオ処理システムにおいては、フレームバッファメモリ（例えば、フレームバッファ104）の全利用可能記憶空間は、典型的には、「フレームバッファ」として用いるために必要とされる（しばしば、残りの「予備」メモリスペースのある部分は、CPUおよび／またはディスプレイ制御装置により必要とされる他のタイプのデータの記憶のために用いられる）。例えば、それぞれのピクセルが「真の色」のための24ビットのデータにより定められる、640列480行のピクセルの「ディスプレイフレーム」としてのディスプレイ画面上に、データをディスプレイするVGAシステムにおいては、１メガバイトのフレームバッファが典型的に用いられる。このシステムは、それぞれのディスプレイフレームを記憶するのに921,600バイトの容量を必要とするのみであるので、１メガバイトのメモリの約10％は、使用されないままになっている。利用可能な予備メモリスペースのそのような実質的な量により、欠陥メモリセルまたはセルグループを「ワークアラランド」する能力は、理論的には可能となる。フレームバッファスペースが利用可能にされた後に得られる「予備」スペースは、なお他の処理動作のためにも用いられうる。
実施例においては、アレイ204の「フレームバッファスペース」は、「低位」アドレススペースに割当てられる。残りの「高位」行アドレススペースは、欠陥セルの「ワークアラウンド」の目的のために指定される。別の実施例においては、フレームバッファスペースおよびワークアラウンドスペースの指定は、アレイ204内の異なるアドレススペースに対応しうることに注意すべきである。例えば、フレームバッファスペースは、「高位」行アドレススペースに対応し、一方ワークアラウンドスペースは、アレイ204の「低位」行アドレススペースに対応しうる。とにかく、アレイ107のアドレススペースは、フレームバッファスペースと、ワークアラウンドスペースとに、いくつかの方法のいずれかにより区分されうる。
本発明の行置換の実施例においては、制御装置201は、アレイ204のフレームバッファスペース内のセル行をテストする状態マシンまたはマイクロプロセッサを含み、欠陥行が発見された時は、連合メモリシステム203をプログラムして、フレームバッファスペース内の欠陥行に対するアドレスを、ワークアラウンドスペース内の動作行のアドレスにマップする。アレイ204のテストは、好ましくはディスプレイ制御装置103内の回路により行われるが、別の実施例においては、このテストは、フレームバッファ103内に配置されたテスト回路により行われうることを認識すべきである。
従って、グラフィックス／ビデオ制御装置201が、フレームバッファスペース内の欠陥行へのアクセスを試みる時、対応する受取られたアドレスは、連合メモリシステム203により翻訳され、動作行に対する連合アドレスがメモリに対して出力される。次に、ワークアラウンドスペース内の対応する動作行に対し、実際のアクセスが行われる。
第３図には、状態マシンの実施例が示されている。この状態マシンの動作は、ディスプレイ制御装置107の電力により、ステップ300において開始される。それぞれのパワーアップサイクルによる、メモリアレイ204の再テストと、連合メモリシステム203のプログラミングとは、メモリの完全性の継続的維持を可能にする。ステップ301においては、アレイ204のフレームバッファスペース内の第１行のアドレスが、カウンタR1内へロードされる。上述のように、この実施例においては、このアドレスは、アレイ204のアドレススペース内の最低位アドレス（すなわち、アドレス０）である。ステップ302においては、（フレームバッファスペースおよびワークアラウンドスペースを含む）メモリアレイ204に対する最終アドレスと１との和が、第２カウンタR2内へロードされる。上述のように、この実施例においては、R2内へロードされるこのアドレスは、アレイ204に対する最高位アドレスである。ステップ303において、連合メモリシステム203は、それに対して与えられる（入力される）アドレスが翻訳されずに単に通過するようにリセットされる。
ステップ304においては、アドレス指定された行のセルのテストが開始される。ステップ304は、例えば、従来の行テストを行うことにより実行され、その場合、グラフィックス／ビデオ制御装置201は、行デコーダ205および列デコーダ206を用い、データのパターンをアドレス指定された行内へ書込み、行デコーダ205および列デコーダ／センスアンプ回路206を用い、前記アドレス指定された行から逆に前記パターンを読取り、次に、その読取られたデータを、初めにアドレス行へ書込まれたデータと比較する。アレイ204に対する行アドレスは、連合が行われないために翻訳は行われないが、連合メモリシステム204を通過せしめられることに注意すべきである。もしフレームバッファスペースのテストされた行が良好なものであれば、次にステップ306において、カウンタR1内のアドレスが増大せしめられる。次に、ステップ306においては、利用可能なフレームバッファスペースの終わりに到達したかどうかを決定するためのテストが行われる。この実施例においては、カウンタR1およびR2内のアドレスに関し、比較が行われる。これら２つのアドレスが等しい時は、フレームバッファスペースおよびワークアラウンドスペースは、互いに到達され終わっており、いずれの目的のためにも、さらなるメモリスペースは利用可能でない。もし利用可能なフレームバッファスペースの終わりに実際に到達していれば、次にステップ310において、カウンタR1内のアドレスは減少せしめられ、ステップ311においてテストプログラミングプロセスは完了する。しかし、もしステップ307において、利用可能なフレームバッファスペースの終わりにまだ到達していないことが決定されれば、次にステップ304においてプロセスは継続され、カウンタR1内のアドレスによりアドレス指定された新しい行が、欠陥セルに関してテストされる。このプロセスは、ステップ305において上述のように継続される。
もしステップ305において、１つまたはそれ以上の欠陥セルが検出されれば、次にステップ308において、カウンタR2内のカウントが減少せしめられる（カウンタR2内へロードされた最初のカウントは、最高の利用可能アドレスと１との和であるから、ステップ308の最初の動作において、カウンタR2内のアドレスは、アレイ204にとって利用可能な最高のアドレスまで減少せしめられる）。ステップ309においては、ワークアラウンドスペースが利用可能であるかどうかを決定するテストが行われる。この実施例においては、R1およびR2内のカウントが再び比較される。もし両カウントが等しければ、その時はメモリ内の利用可能なスペースが使い尽くされており、処理は再びステップ310および311へ進む。
もしステップ309において、カウンタR1内のカウント（アドレス）が、カウンタR2内のカウント（アドレス）に等しくなければ、次にステップ312において、連合メモリシステムは、カウンタR1内のアドレスから、カウンタR2内のアドレスを連合するように（すなわち、R1におけるアドレスの入力が、カウンタR2におけるアドレスの出力を生じるように）プログラムされる。
プログラミングステップ312の後、カウンタR1内のアドレスは、連合メモリ203からの連合されたアドレス出力によりアドレス指定された行自体が、ステップ304においてテストされうるように、再び連合メモリ203へ供給される。このテストは、ステップ305において、カウンタR1内のアドレスが、アレイ204内の動作行に対するアドレスに関連せしめられるまで続けられ、関連せしめられた時は、処理はステップ306において次の行へ移動し、そうでない時は、利用可能な全メモリスペースがステップ311において使用され終わるまで続けられる。
連合メモリシステム203がプログラムされ終わると、グラフィックス／ビデオ制御装置201は、従来のようにしてグラフィックスまたはビデオデータを処理する準備を完了する。制御装置201（および関連するアドレス発生器）が、アレイ204のフレームバッファスペース内の欠陥行にアクセスすることを試みるアドレスを発生する時はいつでも、連合メモリシステム203内において一致が起こり、そのアドレスは、ワークアラウンドスペース内の対応する行のアドレスと置換される。
第2B図は、本発明の別の実施例を示す。第2B図に示されているシステムにおいては、連合メモリシステム203は、ディスプレイ制御装置103内ではなく、フレームバッファシステム104内に実現される。１つの選択として、アレイ204をテストするために必要とされる回路もまた、例えば、連合メモリシステム203自体の一部として、フレームバッファ204内に配置されうる。もう１つの選択として、アレイ204のテストは、上述されたように、制御装置103内の回路により行われる。第2B図の実施例は、第2A図の実施例よりも優れた利点を有する。第2A図の実施例においては、グラフィックス／ビデオ制御装置201、アドレス発生器202は、従来の処理動作のために必要とされるフレームバッファスペースをアドレス指定するのに十分なアドレスビットを発生しえなければならないのみでなく、メモリアレイ204のワークアラウンドスペースに対するアクセスを行うための追加のアドレスビットをも発生しえなければならない。テスト回路が連合メモリシステム203内に配置された第2B図の実施例においては、制御装置201の介入なしに、メモリアレイ204のテストが行われ、連合メモリがプログラムされる。いずれの必要な追加のアドレスビットも、連合メモリ内において発生せしめられる。従って、制御装置201は、フレームバッファスペースをアクセスするために最初に必要とされた数の行アドレスビットの発生を続ける必要があるのみである。この場合には、ワークアラウンドが行われる時、制御装置201からのそれぞれのアドレスが、より長いアドレスワードにマップされうることに注意すべきである。
本発明の原理はまた、アレイ204内のメモリセルの欠陥列をワークアラウンドするためにも応用しうる。この場合には、従来の列および／または行テストを行う動作をしうるマイクロプロセッサまたはマイクロコントローラは、好ましくは、第2A図の実施例におけるグラフィックス／ビデオ制御装置201内、または第2B図の実施例の連合メモリシステム／メモリテスト回路203内に、備えられる。列テストの場合には、それぞれの列アドレスを連合メモリシステム203を経て通過させることにより、メモリアレイ204内に備えられた使用しない列、すなわち冗長列が、フレームバッファスペース内の不良列を、ワークアラウンドするために用いられる。連合メモリのプログラミングプロシージャは、第３図のそれと同様であり、第４図に示されている。
本発明およびその利点を詳述したが、さまざまな変化、置換、および変更が、添付の請求の範囲により定められる本発明の精神および範囲から逸脱することなく、行われうることを理解すべきである。
【図１】
0003647040.tif 000002
【図３】
0003647040.tif 000003
【図２Ａ】
0003647040.tif 000004
【図２Ｂ】
0003647040.tif 000005
【図４】
0003647040.tif 000006