(57)【特許請求の範囲】
【請求項１】
組込みテスト回路を使用したダイナミックランダムアクセスメモリ（ＤＲＡＭ）におけるデータ保持時間の検証方法であって、
複数の行のメモリセルを有するＤＲＡＭを提供する段階であって、各々の行は有効なデータを保持するために周期的にリフレッシュ動作を必要とする、前記ＤＲＡＭを提供する段階と、
前記ＤＲＡＭに結合されたリフレッシュ制御回路を提供する段階であって、該リフレッシュ制御回路は前記ＤＲＡＭのリフレッシュ動作を開始する少なくとも１つの信号を前記ＤＲＡＭに提供し、前記ＤＲＡＭは前記ＤＲＡＭのためのデータ保持時間仕様を満たすようにそれぞれの行が周期的にリフレッシュ動作を受けることを要求する、前記リフレッシュ制御回路を提供する段階と、
前記リフレッシュ制御回路および前記ＤＲＡＭに結合された組込みテスト回路を提供する段階であって、該組込みテスト回路は、データ保持の少なくとも第１の不合格に遭遇するまで可変リフレッシュレートを適用することによって前記ＤＲＡＭを試験し、前記ＤＲＡＭがリフレッシュされるメモリリフレッシュのレートを尺度変更（ｓｃａｌｉｎｇ）することにより、前記ＤＲＡＭの信頼できるデータ保持のための限界を動的に決定し、該尺度変更はリフレッシュ制御回路がリフレッシュ動作を開始するノーマルリフレッシュレートと、前記可変リフレッシュレートであって、
［１／（１＋Ｎ／Ｍ）］＊ノーマルリフレッシュレート
により表される積に等しい前記可変リフレッシュレートとの間において行われ、ＮはＭより小さくかつＮおよびＭは整数である、前記組み込みテスト回路を提供する段階と
を具備し、前記尺度変更することは、Ｎを増分して前記可変リフレッシュレートを変更することを含み、前記ＤＲＡＭの信頼できるデータ保持のための限界を動的に決定することは、前記データ保持の少なくとも第１の不合格に遭遇するまで前記尺度変更を継続し、かつ前記尺度変更の度に前記ＤＲＡＭを試験することにより、データ保持可能な最小のリフレッシュレートに対応するＮの最終値を決定することを含む、前記組込みテスト回路を使用したＤＲＡＭにおけるデータ保持時間の検証方法。
【請求項２】
前記リフレッシュ制御回路がリフレッシュ動作を行うレートを選択的に変更するために前記組込みテスト回路を提供する段階はさらに、各（Ｍ＋Ｎ）サイクルのリフレッシュ動作の内からＮについてＤＲＡＭ行リフレッシュのリフレッシュ動作を選択的に禁止する段階を具備することを特徴とする請求項１に記載の方法。
【請求項３】
前記各（Ｍ＋Ｎ）サイクルのリフレッシュ動作の内からＮについてＤＲＡＭ行リフレッシュのリフレッシュ動作を選択的に禁止する段階は、ＮおよびＭがユーザによってプログラム可能なプログラマブルカウンタを使用する段階を具備し、かつ該プログラマブルカウンタは、少なくとも部分的に、前記禁止を行うことを特徴とする請求項２に記載の方法。
【請求項４】
前記リフレッシュ制御回路がリフレッシュ動作を行うレートを選択的に変更するために組込みテスト回路を提供する段階はさらに、リフレッシュ動作の数をカウントするためにカウンタを使用する段階を具備しかつ前記ＤＲＡＭが各（Ｍ＋Ｎ）サイクルのリフレッシュ動作の内からＮについて禁止し、ＮおよびＭは整数でありかつＮはＭに等しいかまたはそれより小さいことを特徴とする請求項１に記載の方法。
【請求項５】
ＤＲＡＭのデータ保持を試験するためのメモリテスト回路であって、
前記ＤＲＡＭに提供されるデータリフレッシュ信号を電気的に監視するテスト回路であって、該テスト回路は各（Ｍ＋Ｎ）サイクルのデータリフレッシュ信号の内からＮについて選択的に無効にすることによって、前記ＤＲＡＭに
［１／（１＋Ｎ／Ｍ）］＊ノーマルリフレッシュレート
により表される積に等しい可変リフレッシュレートを提供し、ＮはＭより小さく、かつＮおよびＭは整数であり、前記テスト回路は前記ＤＲＡＭのデータ保持時間特性を検証し、前記テスト回路は前記ＤＲＡＭのデータ保持を試験するためのテストインターバル期間に影響を与えないかまたは変更しない周波数を有するクロック信号によってクロッキングされる、前記テスト回路
を具備し、前記データ保持時間特性を検証することは、データ保持の少なくとも第１の不合格に遭遇するまで、Ｎを増分して前記可変リフレッシュレートを変更することを継続し、かつ増分する度に前記ＤＲＡＭを試験することにより、データ保持可能な最小のリフレッシュレートに対応するＮの最終値を決定することを含む、前記ＤＲＡＭのデータ保持を試験するためのメモリテスト回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は一般的には、集積電子回路に関し、かつより特定的には、そのような回路を試験するための方法および装置に関する。
【０００２】
【従来の技術】
集積回路のための一般的なかつよく知られた試験方法は該集積回路が製造欠陥がないか否かを判定するため該集積回路の専用の部分を使用する組込みテスト（Ｂｕｉｌｔ−Ｉｎ  Ｔｅｓｔ：ＢＩＴ）または組込みセルフテスト（Ｂｕｉｌｔ−Ｉｎ−Ｓｅｌｆ  Ｔｅｓｔ：ＢＩＳＴ）である。ＢＩＳＴ回路はしばしば試験中の回路のための刺激または励振（ｓｔｉｍｕｌｕｓ）を発生する。試験される回路は予期される応答とＢＩＳＴ回路によって比較されるべき応答を発生する。この比較の結果は集積回路の製造者または使用者によって用いるためにＢＩＳＴ回路によって提供される。
【０００３】
ＢＩＳＴの１つの特によく適合する用途はメモリでありこれはメモリにおいてしばしば見られる反復的構造のためである。ダイナミックランダムアクセスメモリ（ＤＲＡＭ）はスタティックランダムアクセスメモリ（ＳＲＡＭ）とほとんど同じテスト要求を有するが、データ保持時間（ｄａｔａ  ｒｅｔｅｎｔｉｏｎ  ｔｉｍｅ）の仕様を試験する付加的な要求を有している。ＤＲＡＭはすべてのローまたは行（ｒｏｗｓ）がリフレッシュされなければならない最大間隔またはインターバルをもつよう仕様が決められている。特に、ＤＲＡＭはすべての読出し動作およびすべての書込み動作がアクセスされるローをリフレッシュする効果を有するという特性を有している。通常のシステム動作に対しては、この特性はデータがこれらのアクセスによって破壊されないことを保証するが、それは通常のシステム動作におけるアクセスのランダムな性質のため規則的なリフレッシュの予定を維持する必要性を少なくするものではない。ＤＲＡＭの製品または生産試験は最小の定められたレートまたは割合で提供されるリフレッシュ動作が該ＤＲＡＭが信頼性よく記憶されたすべてのデータを保持することを保証するのに十分であることを確認しなければならない。
【０００４】
以前のＢＩＳＴアーキテクチャはメモリを試験するためにテストシーケンスを発生した。一例として、該テストシーケンスはＲＯＭに記憶されかつ従ってプログラム可能である。そのような試験アーキテクチャの一例は「集積回路のための組込みセルフテスト（Ｂｕｉｌｔ−Ｉｎ  Ｓｅｌｆ  Ｔｅｓｔ  ｆｏｒ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔｓ）」と題する米国特許第５，１７３，９０６号に開示されている。他のプログラム可能な試験アーキテクチャは「メモリアレイのためのマイクロコード化組込みセルフテスト装置（Ｍｉｃｒｏ−ＣｏｄｅｄＢｕｉｌｔ−Ｉｎ  Ｓｅｌｆ  Ｔｅｓｔ  Ａｐｐａｒａｔｕｓ  ｆｏｒ  ａ  Ｍｅｍｏｒｙ  Ａｒｒａｙ）」と題する米国特許第５，２２４，１０１号に教示されている。マイクロコードはマイクロコードＲＯＭに記憶されたプログラムによって決定されるデータ保持のための遅延期間を提供するために使用される。しかしながら、この遅延インターバルまたは間隔は組込み試験回路のクロック周波数に依存しかつシーケンサのクロックレートでクロッキングされるカウンタとして実施される。
【０００５】
【発明が解決しようとする課題】
もし組込まれたＤＲＡＭのために提供される試験方法が組込みセルフテスト（ＢＩＳＴ）であれば、ＢＩＳＴ回路は一般にメモリを刺激または励振しかつ該メモリの応答を評価するために所定のシーケンスの状態（ｓｔａｔｅｓ）を実行するよう設計された有限状態マシン（ｆｉｎｉｔｅ  ｓｔａｔｅ  ｍａｃｈｉｎｅ：ＦＳＭ）であるという問題がある。所定のＢＩＳＴシーケンスにおける状態遷移は一般に１つまたはそれ以上のクロック入力と同期する。このクロッキングソースは一般にそれと共に前記組込まれたＤＲＡＭが集積される他の回路のために使用されるものと同じである。従って、もし所定のＢＩＳＴシーケンスがリフレッシュインターバルの試験を含んでいれば、ＢＩＳＴ  ＦＳＭによって生成される該リフレッシュインターバルの期間は直接ＢＩＳＴクロッキングソースの周波数に関連し、一方試験により保証されなければならない機能はＢＩＳＴクロッキング周波数に関係のない定められたデータ保持インターバルである。
【０００６】
それと共に前記組込まれたＤＲＡＭが集積される他の回路（例えば、データプロセッサ回路）は一般にある範囲のクロック周波数にわたり信頼性よく動作するよう設計されかつ使用が規定される。もしＢＩＳＴがそれと共に前記組込まれたＤＲＡＭが集積される他の回路と同じ範囲の周波数にわたり動作すべきであれば、特に最大データ保持インターバルが試験される場合に、ＢＩＳＴデータ保持インターバルがクロック周波数に依存する問題が存在する。周波数の依存性は結果として特定の期間に対するデータ保持インターバルの試験を適用する上での困難を生じる。
【０００７】
【課題を解決するための手段】
本発明の一態様では、組込みテスト回路を使用したダイナミックランダムアクセスメモリ（ＤＲＡＭ）におけるデータ保持時間の検証方法が提供され、該方法は、複数の行のメモリセルを有するＤＲＡＭを提供する段階であって、各々の行は有効なデータを保持するために周期的にリフレッシュ動作を必要とするもの、前記ＤＲＡＭに結合されたリフレッシュ制御回路を提供する段階であって、該リフレッシュ制御回路は前記ＤＲＡＭのリフレッシュ動作を開始する少なくとも１つの信号を前記ＤＲＡＭに提供し、前記ＤＲＡＭは前記ＤＲＡＭのためのデータ保持時間仕様を満たすようにそれぞれの行が周期的にリフレッシュ動作を受けることを要求するもの、そして前記リフレッシュ制御回路および前記ＤＲＡＭに結合された組込みテスト回路を提供する段階であって、該組込みテスト回路は前記ＤＲＡＭのデータ保持時間仕様より上の動作マージンを検証するために前記リフレッシュ制御回路が前記ＤＲＡＭのそれぞれの行のリフレッシュ動作を行うレートを選択的に変更するもの、を具備することを特徴とする。
【０００８】
前記リフレッシュ制御回路がリフレッシュ動作を行うレートを選択的に変更するために前記組込みテスト回路を提供する段階はさらに、（Ｍ＋Ｎ）のリフレッシュ動作の内からＮごとにＤＲＡＭ行リフレッシュのリフレッシュ動作を選択的に禁止する段階を具備すると好都合である。
【０００９】
前記（Ｍ＋Ｎ）のリフレッシュ動作の内からＮごとにＤＲＡＭ行リフレッシュのリフレッシュ動作を選択的に禁止する段階は、ＮおよびＭがユーザによってプログラム可能なプログラマブルカウンタを使用する段階を具備し、かつ該プログラマブルカウンタは、少なくとも部分的に、前記禁止を行うよう構成することもできる。
【００１０】
前記リフレッシュ制御回路がリフレッシュ動作を行うレートを選択的に変更するために組込みテスト回路を提供する段階はさらに、リフレッシュ動作の数をカウントするためにカウンタを使用する段階を具備しかつ前記ＤＲＡＭが（Ｍ＋Ｎ）のリフレッシュ動作の内からＮごとに禁止し、ＮおよびＭは整数でありかつＮはＭに等しいかまたはそれより小さいものとすることができる。
【００１１】
前記組込みテスト回路を提供する段階はさらに、前記組込みテスト回路がデータ保持の少なくとも第１の不合格に遭遇するまで可変リフレッシュレートを適用することによって前記ＤＲＡＭを試験することにより前記ＤＲＡＭの信頼できるデータ保持のための限界を動的に決定できるようにする段階、を具備すると好都合である。
【００１２】
また、前記組込みテスト回路に前記ＤＲＡＭの信頼できるデータ保持のための限界を動的に決定できるようにする段階はさらに、前記ＤＲＡＭの性能を最適化するためにリフレッシュインターバルを変更するため前記リフレッシュ制御回路のコントローラに限界を報告するために回路を提供する段階を具備するものとすることができる。
【００１３】
前記組込みテスト回路が信頼できるデータ保持のための限界を動的に決定できるようにする段階はさらに、前記ＤＲＡＭがリフレッシュされるメモリリフレッシュのレートを尺度変更（ｓｃａｌｉｎｇ）する段階であって、該尺度変更はリフレッシュ制御回路がリフレッシュ動作を開始する通常のレートと
【数３】
［１／（１＋Ｎ／Ｍ）］＊ノーマルリフレッシュレート
の積に等しいレートとの間にあり、ＮはＭより小さくかつＮおよびＭは整数であるもの、を具備するよう構成してもよい。
【００１４】
本発明の別の態様ではＤＲＡＭのデータ保持を試験するためのメモリテスト回路が提供され、該回路は、前記ＤＲＡＭに提供されるデータリフレッシュ信号を電気的に監視するテスト回路であって、該テスト回路は（Ｍ＋Ｎ）のデータリフレッシュ信号の内でＮごとに選択的に無効にし、ＮはＭより小さく、かつＮおよびＭは整数であり、前記テスト回路は前記ＤＲＡＭのデータ保持時間仕様より上の動作マージンを検証し、前記テスト回路は前記ＤＲＡＭのデータ保持を試験するためのテストインターバル期間に影響を与えないかまたは変更しない周波数を有するクロック信号によってクロッキングされるもの、を具備することを特徴とする。
【００１５】
前記テスト回路はさらに、ユーザがＮの値をプログラムできるようにするためのプログラマブル回路、を具備すると好都合である。
【００１６】
前記テスト回路はさらに、ゼロから（Ｍ−１）までのＮの複数の値を提供することにより、前記メモリテスト回路が前記ＤＲＡＭの信頼できるデータ保持の限界を特徴づけることができるようにする特徴づけ回路、を具備するよう構成することもできる。
【００１７】
【発明の実施の形態】
本発明の特徴および利点は添付の図面と共に以下の詳細な説明からさらに明瞭に理解されるであろう。図面においては同じ参照数字は各図にわたり同じまたは対応する部分を示している。
【００１８】
図１は、本発明に従って構成されたメモリシステム１００のブロック図を示す。メモリシステム１００はダイナミックランダムアクセスメモリ（ＤＲＡＭ）制御ユニット１０２、組込みセルフテスト（ＢＩＳＴ）ユニット１０４およびＤＲＡＭ１０６を含む。ＢＩＳＴユニット１０４はＤＲＡＭ１０６のデータ読出し可能性（ｄａｔａ  ｒｅａｄａｂｉｌｉｔｙ）、データ書込み可能性（ｄａｔａ  ｗｒｉｔａｂｉｌｉｔｙ）、およびデータ保持特性を自動的にテストする。そのようなテストはＤＲＡＭ１０６およびメモリシステム１００が正しく動作することを保証する。ＢＩＳＴユニット１０４はＤＲＡＭ１０６のデータ保持特性が定められたまたは規定された（ｓｐｅｃｉｆｉｅｄ）最小時間に適合することを確認することができる。さらに、ＢＩＳＴユニット１０４はそれが特定のメモリシステムの実際のデータ保持特性を決定することができる第２のモードの動作を導入する。次に、ＢＩＳＴユニット１０４または関連するデータプロセッサはＤＲＡＭのリフレッシュ時間を増大して特定のＤＲＡＭの特性が与えられた場合に電力消費を最小にしかつ帯域幅を最大にすることができる。ＢＩＳＴユニット１０４はＢＩＳＴユニット１０４を制御するクロックの周波数とは独立に関連するＤＲＡＭアレイのデータ保持時間をテストすることができる。ＢＩＳＴユニット１０４はＤＲＡＭ制御ユニット１０２の通常のリフレッシュ機能に依存する。ＢＩＳＴユニット１０４は強力ではあるが、それは伝統的なＤＲＡＭコントローラと伝統的なＤＲＡＭとの間のインタフェースを変えない。その結果、ＢＩＳＴユニット１０４は容易に現存するアーキテクチャにおよびモジュール方式の設計方法に導入することができる。ＢＩＳＴユニット１０４はメモリが直接ユーザにとってアクセス可能でない組込みの用途に十分適している。
【００１９】
＜メモリシステムの接続＞
図１によって説明を続けると、ＤＲＡＭ制御ユニット１０２はＤＲＡＭコントローラ１０８およびＤＲＡＭパラメータレジスタ１１０を具備する。ＤＲＡＭコントローラ１０８は外部装置から入力「アクセスデコード（ＡＣＣＥＳＳ  ＤＥＣＯＤＥ）」を受けかつＤＲＡＭパラメータレジスタ１１０の内容を受ける。ＤＲＡＭコントローラ１０８は出力ローアドレスストローブ（ＲＡＳ）、コラムアドレスストローブ（ＣＡＳ）、および「ＤＲＡＭレジスタ読出し／書込み（ＤＲＡＭ  ＲＥＧＩＳＴＥＲ  ＲＥＡＤ／ＷＲＩＴＥ：Ｒ／Ｗ）を発生する。ＤＲＡＭパラメータレジスタ１１０はデータ入力「ノーマルデータ入力（ＮＯＲＭＡＬＤＡＴＡ  ＩＮ）」にかつ制御信号「ＤＲＡＭレジスタＲ／Ｗ」に結合されている。ＤＲＡＭパラメータレジスタ１１０は図２に関して後に説明する。
【００２０】
ＢＩＳＴユニット１０４はＢＩＳＴコントローラ１１２、リフレッシュ制御レジスタ（ＲＣＲ）１１４、比較器１１６、および７個の２：１マルチプレクサ（ＭＵＸ）１１８，１２０，１２２，１２４，１２６，１２８および１３０を具備する。ＢＩＳＴコントローラ１１２は概略的にＤＲＡＭ１０６を刺激または励振し（ｓｔｉｍｕｌａｔｅ）かつＤＲＡＭ１０６の応答を評価するために所定のシーケンスの状態を実行するよう設計された有限状態マシン（ＦＳＭ）である。ＢＩＳＴコントローラ１１２はそれ自体２つのカウンタ、すなわちＮ：Ｍカウンタおよびロー（ＲＯＷ）カウンタを具備する。Ｎ：Ｍカウンタは「ノーマルＲＡＳ（ＮＯＲＭＡＬ  ＲＡＳ）」制御信号によってクロッキングされる。ローカウンタはＤＲＡＭ１０６の出力、ＭＳＢ、によってクロッキングされる。ＢＩＳＴユニット１０４はデータプロセッサ、マイクコントローラ、デジタル信号プロセッサ、その他から入力として種々の「ＢＩＳＴ制御（ＢＩＳＴ  ＣＯＮＴＲＯＬ）」信号、すなわち「ＢＩＳＴイネーブル（ＢＩＳＴ  ＥＮＡＢＬＥ）」および「ＢＩＳＴレジスタ選択（ＢＩＳＴ  ＲＥＧＩＳＴＥＲ  ＳＥＬＥＣＴ）」、を受ける。ＢＩＳＴユニット１０４はデータプロセッサ、マイクロコントローラ、デジタル信号プロセッサ、その他に出力される種々の「ＢＩＳＴステータス（ＢＩＳＴ  ＳＴＡＴＵＳ）」信号、すなわち、「ＢＩＳＴ完了（ＢＩＳＴ  ＣＯＭＰＬＥＴＥ）」および「ＢＩＳＴパス（ＢＩＳＴ  ＰＡＳＳ）」、を発生する。ＢＩＳＴユニット１０４内で、ＢＩＳＴコントローラ１１２は制御およびデータ信号を発生し、すなわち「ＢＩＳＴ  Ｒ／Ｗ」、「ＢＩＳＴ  ＲＡＳ」、「ＢＩＳＴ  ＣＡＳ」、「ＢＩＳＴロー（ＢＩＳＴ  ＲＯＷ）」、「ＢＩＳＴコラム（ＢＩＳＴ  ＣＯＬＵＭＮ）」、「ＢＩＳＴデータ入力（ＢＩＳＴ  ＤＡＴＡ  ＩＮ）」、「ＭＵＸ制御（ＭＵＸ  ＣＯＮＴＲＯＬ）」、「予期データ（ＥＸＰＥＣＴＥＤ  ＤＡＴＡ）」、およびいくつかの「リフレッシュ制御レジスタ（ＲＣＲ）制御（ＲＥＦＲＥＳＨ  ＣＯＮＴＲＯＬ  ＲＥＧＩＳＴＥＲ（ＲＣＲ）ＣＯＮＴＲＯＬ）」信号を発生する。また、ＢＩＳＴコントローラ１１２は比較器１１６から内部制御信号「イコール（ＥＱＵＡＬ）」を受けかつ「値（ＶＡＬＵＥ）」を介してリフレッシュ制御レジスタ１１４に双方向的に結合されている。リフレッシュ制御レジスタ１１４は図２に関して後に説明する。
【００２１】
ＭＵＸ１１８，１２０，１２２，１２４，１２６，１２８および１３０の第１の入力は、それぞれ、ＢＩＳＴ  Ｒ／Ｗ、ＢＩＳＴ  ＲＡＳ、ＢＩＳＴ  ＣＡＳ、ＢＩＳＴロー、ＢＩＳＴコラム、ＢＩＳＴデータ入力、および所定の論理レベル、ＶＤＤ、に対応する電源電圧を受ける。ＭＵＸ１１８，１２０，１２２，１２４，１２６，１２８および１３０の第２の入力は、それぞれ、ノーマルＲ／Ｗ、ノーマルＲＡＳ、ノーマルＣＡＳ、ノーマルロー、ノーマルコラム、ノーマルデータ入力、およびデータ出力を受ける。ＭＵＸ１１８，１２０，１２２，１２４，１２６，１２８および１３０は、それぞれ、信号Ｒ／Ｗ、ＲＡＳ、ＣＡＳ、ロー、コラム、データ入力およびノーマルデータ出力を発生する。ＭＵＸ１１８，１２０，１２２，１２４，１２６，１２８および１３０の各々の出力は制御信号「ＭＵＸ制御」によって制御される。
【００２２】
比較器１１６は比較のために「予期データ」および「データ出力」を受けかつ比較の等しいことまたは等しくないことに応じた制御信号「イコール」を発生する。リフレッシュ制御レジスタ１１４のデータ入力およびデータ出力はそれぞれ「ノーマルデータ入力」および「ノーマルデータ出力」に結合されている。
【００２３】
ＤＲＡＭ１０６はアレイ１３２、ＭＵＸ１３４、ローデコーダ１３６、センスアンプ１３８、コラムセレクタ１４０、制御ユニット１４２、およびリフレッシュカウンタ１４４を具備する。示された実施形態では、アレイ１３２はローデコーダ１３６の出力によって選択される１２８の行またはローを具備する。ローデコーダ１３６はＭＵＸ１３４の出力を受ける。ＭＵＸ１３４はリフレッシュカウンタ１４４の出力、「リフレッシュロー（ＲＥＦＲＥＳＨ  ＲＯＷ）」、および入力「ロー（ＲＯＷ）」を受ける。ＭＵＸ１３４の出力は制御ユニット１４２によって出力される制御信号によって選択される。制御ユニット１４２はＭＵＸ１１８，１２０および１２２の出力を受けかつ制御信号「クロック（ＣＬＯＣＫ）」およびセンスイネーブルＳＥを出力する。リフレッシュカウンタ１４４は制御信号「クロック」を受ける。リフレッシュカウンタ１４４の最上位ビットはＭＳＢとして出力される。アレイ１３２の出力はセンスアンプ１３８に結合される。センスアンプ１３８の出力はコラムセレクタ１４０に結合される。コラムセレクタ１４０はまたＭＵＸ１２８の出力および制御信号ＳＥを受ける。コラムセレクタ１４０はそのデータを「データ出力」およびＭＵＸ１３０を介して外部装置に出力する。
【００２４】
＜メモリシステム動作の概要＞
動作においては、メモリシステム１００は通常またはノーマルモードの動作および試験またはテストモードの動作を有する。ノーマルモードの動作においては、データプロセッサ、マイクロコントローラ、デジタル信号プロセッサ、その他がプログラム命令に応じてデータをＤＲＡＭ１０６に書込みかつＤＲＡＭ１０６から読み出す。テストモードの動作においては、ＢＩＳＴユニット１０４は２つの総合的なクラスの試験をＤＲＡＭ１０６に対して行い、すなわちパターンテストおよびリフレッシュテストである。さらに、リフレッシュテストそれ自体は第１および第２のモードの動作を有する。
【００２５】
＜ノーマルモードの動作＞
ノーマルモードの動作の説明を続けると、ＭＵＸ１１８，１２０，１２２，１２４，１２６，１２８および１３０はそれぞれノーマルＲ／Ｗ、ノーマルＲＡＳ、ノーマルＣＡＳ、ノーマルロー、ノーマルコラム、ノーマルデータ入力、およびデータ出力を通すよう構成されている。メモリシステム１００は始めにその動作特性を規定する種々のパラメータによって構成される（ｃｏｎｆｉｇｕｒｅｄ）。インテリジェントアクタ（ｉｎｔｅｌｌｉｇｅｎｔ  ａｃｔｏｒ）はメモリシステム１００を導入したデータ処理システムがパワーアップしたときにこれらのパラメータをＤＲＡＭパラメータレジスタ１１０に記憶する。これらのパラメータは前記アクセスコード信号の特定の組合せを肯定することによりかつ所望のパラメータ値を入力「ノーマルデータ入力」に与えることによりＤＲＡＭパラメータレジスタ１１０の特定のものに書き込まれる。その後、メモリシステム１００は提供されたデータをアレイ１３２に記憶するかあるいは前に記憶したデータをアレイ１３２から出力する。それらと共に散在して、ＤＲＡＭコントローラ１０８は周期的にリフレッシュ信号をＤＲＡＭ１０６に発行して記憶されたデータが通常の電流リーケージによって時間と共に失われないことを保証する。
【００２６】
読出し動作においては、インテリジェントアクタは所望のデータアドレスをノーマルローおよびノーマルコラム信号に与え、ノーマルＲ／Ｗ信号を肯定し、かつ有効なアクセスコード信号を肯定する。制御ユニット１４２はＭＵＸ１３４を介してローデコーダ１３６に結合されるべき「ロー」を選択する。アクセスデコード信号は前記ノーマルローおよびノーマルコラム信号におけるアドレスが実際にメモリシステム１００に向けられていることを示す。典型的には、メモリシステム１００はデータ処理システムにおけるアドレス信号のすべてには接続されない。ＤＲＡＭコントローラ１０８は次にノーマルＲＡＳおよびノーマルＣＡＳに関して第１のパターンの値を発生しアレイ１３２が適切なスーパセット（ｓｕｐｅｒｓｅｔ）の所望のデータを出力するようにさせる。制御ユニット１４２は制御信号ＳＥを肯定することによりセンスアンプ１３８をイネーブルする。センスアンプ１３８は前記データのスーパセットを検知しかつ増幅し、それをコラムセレクタ１４０に出力する。コラムセレクタ１４０は前記データのスーパセットを特定された部分に解剖し（ｐａｒｓｅｓ）かつそれをデータ出力を介してインテリジェントアクタに出力する。
【００２７】
書込み動作においては、インテリジェントアクタは所望のデータおよびデスティネイションデータアドレスを前記ノーマルデータ入力、ノーマルローおよびノーマルコラム信号に与え、ノーマルＲ／Ｗ信号を否定しまたは肯定解除し（ｄｅ−ａｓｓｅｒｔｓ）、かつ有効なアクセスデコード信号を肯定する。制御ユニット１４２はＭＵＸ１３４を介してローデコーダ１３６に結合されるべき「ロー」を選択する。コラムセレクタ１４０は前記入力データをアレイ１３２内の正しいコラムへと導く。ＤＲＡＭコントローラ１０８は次にノーマルＲＡＳおよびノーマルＣＡＳ上に第１のパターンの値を発生してアレイ１３２が前記入力データをアレイ１３２に記憶するようにさせる。制御ユニット１４２は制御信号ＳＥを肯定することによりセンスアンプ１３８をイネーブルまたは作動させる。センスアンプ１３８は入力データをノーマルローおよびノーマルコラム値の交差部によって特定されるメモリセルへとドライブしかつ同じ行またはローのアクセスされないコラムの存在するデータをリストアまたは回復する。
【００２８】
リフレッシュ動作においては、ＤＲＡＭコントローラ１０８はノーマルＲＡＳおよびノーマルＣＡＳ上の第２のパターンの値を肯定してＤＲＡＭ１０６にそれがリフレッシュ動作を開始すべきことを通知する。ＤＲＡＭコントローラ１０８はＤＲＡＭパラメータレジスタ１１０の内容に応じてそのような動作または作用（ａｃｔｉｏｎ）を通知する。ＢＩＳＴコントローラ１１２はそれぞれＭＵＸ１２０および１２２を介してＲＡＳおよびＣＡＳに結合されるべきノーマルＲＡＳおよびノーマルＣＡＳを選択する。制御ユニット１４２はＭＵＸ１３４を介してローデコーダ１３６に結合されるべきリフレッシュカウンタ１４４の出力、「リフレッシュロー」を選択しかつ制御信号ＳＥを肯定する。アレイ１３２は次にリフレッシュカウンタ１４４によってインデクスされたローをセンスアンプ１３８に結合する。センスアンプ１３８はインデクスされたローに記憶された値を検知し、該値を増幅し、かつ増幅された値をインデクスされたローにドライブし戻す。制御ユニット１４２は次のリフレッシュサイクルの準備において「クロック」をパルス化またはパルス入力（ｐｕｌｓｉｎｇ）することによりリフレッシュカウンタ１４４を増分する。示された実施形態では、アレイ１３２は１２８行のメモリビットのセルを具備する。その結果、ＤＲＡＭコントローラ１０８はアレイ１３２をリフレッシュするためにある時間インターバル内でノーマルＲＡＳおよびノーマルＣＡＳ上の第２のパターンを１２８回肯定しなければならない。
【００２９】
＜テストモードの動作、パターンテスト＞
テストモードの動作の説明を続けると、ＢＩＳＴユニット１０４は典型的にはそれが始めにパワーアップされたときにアレイ１３２における各々のメモリビットセルを試験する。一般に、メモリシステム１００に関連するロジック（図示せず）が制御信号ＢＩＳＴイネーブルを肯定してパワーオンリセット（ＰＯＲ）の後のテストを開始する。しかしながら、ＢＩＳＴテストは、適切な場合には、他の時間（単数または複数）に行うことができる。ＢＩＳＴコントローラ１１２はＭＵＸ１１８，１２０，１２２，１２４，１２６，１２８および１３０が、それぞれ、ＢＩＳＴ  Ｒ／Ｗ、ＢＩＳＴ  ＲＡＳ、ＢＩＳＴ  ＣＡＳ、ＢＩＳＴロー、ＢＩＳＴコラム、ＢＩＳＴデータ入力およびＶＤＤを通すようにさせる。ＢＩＳＴコントローラ１１２は各々のメモリビットセルの機能を確認するためにテストデータによって一連のテスト読出しおよびテスト書込みを行う。
【００３０】
ＢＩＳＴコントローラ１１２はテストデータパターン、動作順序（読出し／書込みまたは書込み／読出し）、およびアドレスシーケンス（上昇方向（ａｓｃｅｎｄｉｎｇ）または下降方向（ｄｅｓｃｅｎｄｉｎｇ））を変化させてできるだけ多くの障害を検出する。本発明の１実施形態では、ＢＩＳＴコントローラ１１２はオール“１”、オール“０”、および交互の“１”および“０”のパターンによって各々のメモリエントリを試験する。他のパターンが技術的に知られている。
【００３１】
ＢＩＳＴコントローラ１１２は上で述べたノーマルまたは通常読出しおよびノーマルまたは通常書込みと同様の方法でテスト読出しおよびテスト書込みを発生する。しかしながら、この場合はＢＩＳＴコントローラ１１２は前記Ｒ／Ｗ、ＲＡＳ、ＣＡＳ、ロー、コラム、およびデータ入力の値をその出力ＢＩＳＴ  Ｒ／Ｗ、ＢＩＳＴ  ＲＡＳ、ＢＩＳＴ  ＣＡＳ、ＢＩＳＴロー、ＢＩＳＴコラム、およびＢＩＳＴデータ入力を介して提供する。本発明の１実施形態では、ＢＩＳＴコントローラ１１２はＢＩＳＴテストの種々の動作のシーケンスを行うためにカウンタ（図示せず）を含んでいる。特に、該カウンタのあるビットはどのパターンがアレイ１３２に供給されるかを制御し、該カウンタのあるビットはどの値がＢＩＳＴローに供給されるかを制御し、該カウンタのあるビットはどの値がＢＩＳＴコラムに供給されるかを制御するなどが行われる。このように、アドレス、パターン、その他のすべての必要な組合せが容易に発生できる。
【００３２】
ＢＩＳＴコントローラ１１２は比較器１１６において前記「データ出力」値を「予期データ（ＥＸＰＥＣＴＥＤ  ＤＡＴＡ）」と比較することにより各々のメモリビットセルの機能を確認する。もしこれら２つの値が等しければ、比較器１１６は制御信号「イコール」を肯定し、首尾よいテストを示す。もし２つの値が等しくなければ、比較器１１６は制御信号「イコール」を肯定解除または否定し、テストの不合格を指示する。
【００３３】
＜テストモードの動作、リフレッシュ試験、保持確認＞
ＢＩＳＴユニット１０４はアレイ１３２における各メモリビットセルのデータ保持またはリテンション特性をテストする。第１のデータ保持テストモードでは、ＢＩＳＴユニット１０４は単一の合格／不合格（ｐａｓｓ／ｆａｉｌ）テストを行うことによりＤＲＡＭ１０６が仕様を満たしているかあるいは超過しているかを判定する。１実施形態では、このデータ保持テストは上で述べたＢＩＳＴパターンテストの後に行われる。他の実施形態では、それは独自の制御信号によって別個に開始することができる。ＤＲＡＭにおいては、各々のメモリビットセルに蓄積された電荷は時間と共に放散しまたは「リーク」する傾向があり、データの値を汚染する。データ保持テストはメモリに記憶されたデータが仕様で定められた「保持時間（ｒｅｔｅｎｔｉｏｎ  ｔｉｍｅ）」期間より大きいかまたは等しい最小時間の間持ちこたえるか否かを判定する。その結果、もしそれぞれの保持期間に少なくとも１度それぞれのメモリビットセルがリフレッシュされれば、記憶された値は信頼できるものとなる。
【００３４】
始めに、ＢＩＳＴコントローラ１１２は知られた値をアレイ１３２に記憶した後に少なくとも１つのリフレッシュが行われることができるようにする。本発明の１実施形態では、ＢＩＳＴコントローラ１１２は上で述べたＢＩＳＴパターンテストにおいて発生された最後のパターンによって保持テストを開始する。ＢＩＳＴコントローラ１１２はＭＵＸ制御信号を肯定解除または否定することにより通常のまたはノーマルリフレッシュ動作が行われるようにし、ノーマルＲＡＳおよびノーマルＣＡＳ信号がＤＲＡＭ１０６に到達できるようにする。
【００３５】
次に、ＢＩＳＴコントローラ１１２はリフレッシュレートを効果的に低減するためＤＲＡＭコントローラ１０８のノーマルリフレッシュ動作を中断する。ＢＩＳＴコントローラ１１２はＭＵＸ制御信号を再び肯定することによりＤＲＡＭコントローラ１０８のノーマルリフレッシュ動作を中断しノーマルＲＡＳおよびノーマルＣＡＳ信号がＤＲＡＭ１０６に到達するのを阻止する。ＢＩＳＴコントローラ１１２はそれぞれ（Ｍ＋Ｎ）のリフレッシュにおいてＮ回ノーマルリフレッシュ動作を中断することにより有効または実効リフレッシュレートを低減し、この場合ＮおよびＭは整数である。この戦略は実効リフレッシュレートを（１＋Ｎ／Ｍ）＊ノーマル保持時間の試験される保持時間に対応して次の数式で表されるように低減する。
【数１】
［１／（１＋Ｎ／Ｍ）］＊ノーマルリフレッシュレート
【００３６】
Ｎ：Ｍカウンタの１実施形態は「プログラム可能な周期を有するカウンタおよびそのための方法（Ａ  Ｃｏｕｎｔｅｒ  Ｈａｖｉｎｇ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｐｅｒｉｏｄｓ  ａｎｄ  Ｍｅｔｈｏｄ  Ｔｈｅｒｅｆｏｒ）」と題する、係属中の米国特許出願第０８／６７４，３８１号に述べられており、この出願は参照のためここに導入される。この特定のＮ：ＭカウンタはＤＲＡＭコントローラ１０８によって発生される（Ｍ＋Ｎ）のリフレッシュ動作にわたり規則的にＮの中断または割込みを入れる。
【００３７】
アレイ１３２のそれぞれの行またはローのいくつかの数のリフレッシュの後に、ＢＩＳＴコントローラ１１２はアレイ１３２をアクセスするためにＭＵＸ制御信号を再び肯定する。ＢＩＳＴコントローラ１１２はリフレッシュカウンタ１４４によって出力される最上位ビット（ＭＳＢ）を監視することによりＤＲＡＭコントローラ１０８がアレイ１３２におけるそれぞれの行のリフレッシュ動作を完了していることを判定する。上に述べたように、リフレッシュカウンタ１４４はリフレッシュ動作が行われるたびごとに制御ユニット１４２によって１だけ増分される。従って、ＢＩＳＴコントローラ１１２におけるローカウンタはＤＲＡＭ１０６がそれぞれのローを通って循環するたびごとに増分される。他の実施形態では、ローカウンタはＢＩＳＴコントローラ１１２によってマスクされない各々のリフレッシュ動作をカウントすることができる。このカウントがアレイ１３２のローの数に等しくなったとき、それぞれのローのリフレッシュが完了することになる。ＢＩＳＴコントローラ１１２は前記「データ出力」値を上に述べたように「予期データ」値と比較する。もし「データ出力」および「予期データ」が同じであれば、有効または実効リフレッシュレートは保持時間を超えなかったことになる。もし２つの値が異なれば、実効リフレッシュレートは保持時間を超えたことになる。
【００３８】
＜テストモードの動作、リフレッシュテスト、保持特徴づけ＞
第２のデータ保持テストモードにおいては、ＢＩＳＴユニット１０４は一連の合格／不合格テストを行うことによってＤＲＡＭ１０６の実際の保持時間を決定する。１実施形態では、この第２のモードはリフレッシュ制御レジスタ１１４における特定のビットを論理“１”の値にセットすることにより選択される。この第２のモードにおいては、ＢＩＳＴコントローラ１１２は第１の値のＮおよびＭを使用して第１のデータ保持テストを行う。次に、ＢＩＳＴコントローラ１１２は前のテストが合格したかあるいは不合格であったかおよび使用されたサーチアルゴリズムに応じてＮおよび／またはＭの値を変更する。
【００３９】
１実施形態では、ＢＩＳＴコントローラ１１２はリニアサーチアルゴリズム（ｌｉｎｅａｒ  ｓｅａｒｃｈ  ａｌｇｏｒｉｔｈｍ）を使用する。リニアサーチアルゴリズムにおいては、ＢＩＳＴコントローラ１１２はＮを１に等しくかつＭをアレイ１３２の行またはローの数に等しくセットする。ＢＩＳＴコントローラ１１２は次にＮおよびＭのこれらの値によってテストを行う。もしアレイ１３２が合格すれば、次にＢＩＳＴコントローラ１１２はＮを増分しかつ再びテストを行う。このプロセスがＮがＭに等しくなるまでまたはアレイ１３２が不合格になるまで続く。このテストの終りに、ＢＩＳＴコントローラ１１２はＮの最後の値をリフレッシュ制御レジスタ１１４に書き込む。
【００４０】
他の実施形態では、ＢＩＳＴコントローラ１１２は第２のデータ保持テストモードにおいて２進サーチアルゴリズムを使用する。このアルゴリズムは図６および図７を参照して後により詳細に説明する。ＢＩＳＴコントローラ１１２はまたＮの最後の値をリフレッシュ制御レジスタ１１４に書き込む。
【００４１】
メモリシステム１００を導入したシステムのユーザはＤＲＡＭパラメータレジスタ１１０にプログラムされたリフレッシュレートを調整するためにＮの最終値を使用することができる。そのような調整はユーザがリフレッシュ動作に割り当てられた帯域幅を最小にしかつリフレッシュ動作によって消費される電力を最小にすることができるようにする。
【００４２】
テストモードの動作は図３〜図７を参照してさらに説明する。
【００４３】
図２は、図１に示されるメモリシステム１００のプログラム可能レジスタの概念的表現を示す。リフレッシュタイマレジスタ、ＲＡＳタイマレジスタ、ＣＡＳタイマレジスタ、プリチャージタイマレジスタ、およびページタイマレジスタがＤＲＡＭのパラメータレジスタ１１０に導入される。ＢＩＳＴリフレッシュ制御レジスタがリフレッシュ制御レジスタ１１４において実施される。これらのレジスタはメモリシステム１００のユーザにとって見ることができ（ｖｉｓｉｂｌｅ）かつプログラム可能である。他の実施形態では、これらのレジスタはメモリシステム１００の製造者によって永久的な値にハードワイヤ接続することができる。
【００４４】
前記リフレッシュタイマレジスタ、ＲＡＳタイマレジスタ、ＣＡＳタイマレジスタ、プリチャージタイマレジスタ、およびページタイマレジスタは技術的に一般に知られている。リフレッシュタイマレジスタに格納された値はＤＲＡＭコントローラ１０８がＤＲＡＭ１０６に対しリフレッシュ動作を開始するレートを制御する。ＲＡＳタイマレジスタに格納された値はノーマルＲＡＳ信号の最小肯定幅（ｍｉｎｉｍｕｍ  ａｓｓｅｒｔｉｏｎ  ｗｉｄｔｈ）を制御する。ＣＡＳタイマレジスタに格納された値はノーマルＣＡＳ信号の最小肯定幅を制御する。プリチャージタイマレジスタに格納された値はノーマルＲＡＳ信号の最小肯定解除または否定幅（ｍｉｎｉｍｕｍ  ｄｅ−ａｓｓｅｒｔｉｏｎ  ｗｉｄｔｈ）を制御する。ページタイマレジスタに格納された値はノーマルＲＡＳ信号の最大肯定幅を制御する。ユーザはこれらの値の各々を選択されたＤＲＡＭの設計仕様に応じて選択する。
【００４５】
前記ＢＩＳＴリフレッシュ制御レジスタ１１４は４つのフィールド、１ビットの有効フィールド（Ｖ）、１ビットのスイープフィールド（Ｓ）、７ビットのＮフィールド、および７ビットのＭフィールド、を有する１６ビットのレジスタである。Ｖがゼロに等しい場合、ＢＩＳＴコントローラ１１２は何らの保持テストも行わない。Ｖが“１”に等しい場合、ＢＩＳＴコントローラ１１２は、Ｓフィールドの値に応じて、保持テストを行う。もしＳフィールドがゼロに等しければ、ＢＩＳＴコントローラ１１２はＮおよびＭフィールドにロードされたＮおよびＭの値によって単一のデータ保持確認テストを行う。もしＳフィールドが“１”に等しければ、ＢＩＳＴコントローラ１１２はＤＲＡＭ１０６を特徴づけるために一連のデータ保持テストを行う。ＮおよびＭフィールドに格納された値は前に説明した。
【００４６】
図３は、図１に示されたＢＩＳＴコントローラ１１２の動作の流れ図３００を示す。ここでは、Ｖは“１”に等しくかつＳはゼロに等しい。その結果、ＢＩＳＴコントローラ１１２はすべてのパターンテストを行った後に単一のデータ保持テストを行うことになる。もしＶがゼロに等しければ、ＢＩＳＴコントローラ１１２は「リフレッシュテスト」と包括的に名づけられたステップを行わない。もしＳが“１”に等しければ、ＢＩＳＴコントローラ１１２は「リフレッシュテスト」と包括的に名づけられた命令の代わりに図６に示されるステップを行うことになる。
【００４７】
流れ図３００はＢＩＳＴコントローラ１１２が、ステップ３０２において、ＭＵＸ制御信号を肯定したときに始まる。ＭＵＸ制御信号の肯定はＢＩＳＴコントローラ１１２をＤＲＡＭ１０６に結合する。ＢＩＳＴコントローラ１１２は、ステップ３０４において、最初のパターンを選択する。そのようなパターンはオール０、オール１、または交互に０および１からなるものとすることができる。ＢＡＳＴコントローラ１１２は次にこのパターンをアレイ１３２に供給し、アレイ１３２を読出しかつ記憶された値が予期された値と等しいかを判定する、ステップ３０６。ＢＩＳＴコントローラ１１２は次に、ステップ３０８において、アレイ１３２に加えるべきパターンがさらにあるかを判定する。さらにアレイ１３２に加えるべきパターンがあれば、ＢＩＳＴコントローラ１１２は、ステップ３１０において、新しいパターンを選択しかつステップ３０６に戻る。
【００４８】
もしテストすべきパターンがそれ以上なければ、ＢＩＳＴコントローラ１１２はステップ３０６において記憶された最後のパターンを使用してデータ保持テストを行う、ステップ３１２。ステップ３１２は図４を参照して後に説明する。ＢＩＳＴコントローラ１１２は次に、ステップ３１４において、アレイ１３２に供給すべきパターンがさらにあるか否かを判定する。もしアレイ１３２に加えるべきパターンがさらにあれば、ＢＩＳＴコントローラ１１２は、ステップ３１６において、新しいパターンをセットしかつステップ３１２に戻る。もし試験すべきパターンがそれ以上なければ、ＢＩＳＴコントローラ１１２は、ステップ３１８においてＭＵＸ制御信号を肯定解除または否定する。ＭＵＸ制御信号の肯定解除または否定はＤＲＡＭコントローラ１０８をＤＲＡＭ１０６に再結合する。
【００４９】
ＢＩＳＴコントローラ１１２は、ステップ３２０において、エラーを報告し、流れ図３００を完了させる。ＢＩＳＴコントローラ１１２は、選択的にＢＩＳＴパス（ＢＩＳＴ  ＰＡＳＳ）を肯定することにより、その出力ＢＩＳＴ完了（ＢＩＳＴ  ＣＯＭＰＬＥＴＥ）を肯定することによりエラーを報告する。ＢＩＳＴコントローラ１１２は前の一連のテストにおいてエラーがなければＢＩＳＴパスを肯定する。
【００５０】
図４は、図３に示されたステップ３１０の流れ図４００を示す。流れ図４００においては、ＢＩＳＴコントローラ１１２は単一のデータ保持テストを行う。始めに、ＢＩＳＴコントローラ１１２は、ステップ４０２において、ＭＵＸ制御信号を肯定解除または否定することによりノーマルリフレッシュ動作を可能にする。上で述べたように、ＭＵＸ制御信号の肯定解除または否定はノーマルＲＡＳおよびノーマルＣＡＳ信号をＤＲＡＭ１０６に結合する。ＢＩＳＴコントローラ１１２は、ステップ４０４において、ＤＲＡＭコントローラ１０８からのリフレッシュ動作を待機する。ＤＲＡＭコントローラ１０８はノーマルＲＡＳを監視することによりリフレッシュ要求を検出する。（他の実施形態では、ＢＩＳＴコントローラはリフレッシュサイクルを示す他の信号を監視することができる。）ＢＩＳＴコントローラ１１２はいったんそれがリフレッシュサイクルを検出するとＮ：Ｍカウンタを増分する、ステップ４０６。
【００５１】
ＢＩＳＴコントローラ１１２は、ステップ４０８において、ローカウンタを増分する。次に、ＢＩＳＴコントローラ１１２は、ステップ４１０において、それが各々のメモリエントリが２回リフレッシュされることを許容しているか否かを判定する。もしＢＩＳＴコントローラ１１２が各メモリエントリが２回リフレッシュされるのを許容しておれば、ＢＩＳＴコントローラ１１２は、ステップ４１２において、ＤＲＡＭ１０６の制御を行うためにＭＵＸ制御信号を肯定する。いったん制御に入ると、ＢＩＳＴコントローラ１１２は記憶されたデータが予期されたデータに等しいことを確認する、ステップ４１４。データ保持テストは今や完了しかつ流れ図４００は図３に戻る。
【００５２】
もしＢＩＳＴコントローラ１１２がまだ各メモリエントリが２回リフレッシュされることを許容していなければ、それはステップ４１６に続く。ステップ４０８および４１０はＤＲＡＭ１０６に渡された各々のリフレッシュ動作をカウントするローカウンタと共に動作可能な一連のステップを示す。上で説明したように、本発明の他の実施形態ではリフレッシュカウンタ１４４のＭＳＢのみを監視する。そのような実施形態では、ステップ４０８および４１０はステップ４１２に分岐する前にＭＳＢ信号の少なくとも４つの遷移をカウントする。
【００５３】
ステップ４１６によって説明を続けると、ＢＩＳＴコントローラ１１２は、ステップ４１６において、それが次のノーマルリフレッシュサイクルを中断（ｉｎｔｅｒｒｕｐｔ）または「スキップ」すべきか否かを判定する。ＢＩＳＴコントローラ１１２はＮ：Ｍカウンタの値に基づきそれが次のノーマルリフレッシュサイクルをスキップすべきか否かを判定する。上で述べたように、Ｎ：Ｍカウンタは（Ｍ＋Ｎ）リフレッシュサイクルにわたりＮのポーズを挿入する。もしＢＩＳＴコントローラ１１２がそれが次のノーマルリフレッシュサイクルをスキップすべきことを判定すれば、ＢＩＳＴコントローラはＭＵＸ制御信号を肯定し、ＤＲＡＭコントローラ１０８をＤＲＡＭ１０６から切り離す、ステップ４１８。もしＢＩＳＴコントローラ１１２がそれが次のノーマルリフレッシュサイクルをスキップすべきでないと判定すれば、ＢＩＳＴコントローラはステップ４０４に戻る。
【００５４】
ステップ４１８から続いて、ＢＩＳＴコントローラ１１２は次に、ステップ４２０において、ＤＲＡＭコントローラ１０８から次に試みられるリフレッシュサイクルを待機する。ＢＩＳＴコントローラは次に試みられるリフレッシュサイクルの後にステップ４０２に戻る。
【００５５】
図５は、図３に示された流れ図のステップのグラフ表現を示す。図５はＢＩＳＴコントローラ１１２の説明において有用である。一般に、図５はパターンテストとこれに続くリフレッシュテストを示している。図５の左側部分はパターンテストに関連する動作を示している。図５の右側部分はデータ保持テストに関連する動作を示している。
【００５６】
パターンテストはアレイ１３２に対する一連の読出しおよび書込みから構成される。各々の一連の読出しおよび／または書込みは傾斜したラインによって表されている。正のスロープはアレイ１３２における上昇するまたはさかのぼる（ａｓｃｅｎｄｉｎｇ）アドレスに対する一連の読出しおよび／または書込みを示している。負のスロープはアレイ１３２における降下するまたは下りの（ｄｅｓｃｅｎｄｉｎｇ）アドレスに対する一連の読出しおよび／または書込みを示している。各々の傾斜するラインに関連してニーモニック（ｍｎｅｍｏｎｉｃ）がある。“Ｒ”および“Ｗ”は、それぞれ、読出しおよび書込み動作を示す。両方のイニシャルはいっしょになって同じメモリエレメントに対する２つの動作を示す。“０”および“１”は、それぞれ、データパターンおよびその２進補数を表す。一例として、ＢＩＳＴコントローラはエレメント１２７で始まりかつエレメント０で終わる各メモリエレメントに対しパターンを書き込む。次に、ＢＩＳＴコントローラ１１２は各エレメントからパターンを読み出し、その正しさを確認し、かつ相補パターンを同じアドレスに書き込む。ＢＩＳＴコントローラ１１２は再び下りの順序でアレイ１３２にアクセスする。「パターンテスト」と名づけられた図５の部分は図３に示されるステップ３０６の単一の実行を示す。
【００５７】
前記データ保持テストはアレイ１３２に対する一連の読出し、書込みおよびリフレッシュから構成される。リフレッシュシーケンスはそれらのＲ、Ｗ、その他の欠如によって識別される。リフレッシュシーケンスはアレイ１３２に対するそれらの適用に関して示されている。上に述べたように、より大きな数がＤＲＡＭコントローラ１０８によって発生される。この場合、第１のリフレッシュテストシーケンスは最後のパターンテストにおいて記憶されたデータを使用することは明らかである。前に述べたように、割込みまたは中断がリフレッシュシーケンスに配置されて実効リフレッシュレートを低減する。１実施形態では、比較的大きなギャップが一組のリフレッシュ動作におけるあるポイントの後に挿入される。他の実施形態では、いくつかの比較的小さなギャップがリフレッシュシーケンスに挿入される。いずれの場合も、それぞれの行またはローが同じデータ保持インターバルによってリフレッシュされる。各々のリフレッシュシーケンスは図３のステップ３１２の１つの実行に対応する。また、確認または検証（ｖｅｒｉｆｉｃａｔｉｏｎ）ステップ４１４および新しいパターンをセットするステップ（ｓｅｔ  ｎｅｗ  ｐａｔｔｅｒｎ  ｓｔｅｐ）３１６は第１および第２のリフレッシュパターンの間に示された単一の少しの（ａｔｏｍｉｃ）読出し−書込みライン“Ｒ０Ｗ１”によって示されている。
【００５８】
図６は、図１に示されるＢＩＳＴコントローラ１１２の動作の流れ図６００を示す。ここでは、Ｖは“１”に等しくかつＳは“１”に等しい。また、Ｍはアレイ１３２における行またはローの数にセットされる。その結果、ＢＩＳＴコントローラ１１２はＤＲＡＭ１０６の保持時間を特徴づけるために一連のデータ保持テストを行うことになる。さらに、この実施形態では、ＢＩＳＴコントローラ１１２は保持時間を迅速に決定するため２進サーチアルゴリズムを使用する。
【００５９】
流れ図６００はＮの初期値を（Ｍ／２）に等しくセットしかつ調整係数（ａｄｊｕｓｔｍｅｎｔ  ｆａｃｔｏｒ）の値Ｌを（Ｎ／２）にセットすることにより始まる、ステップ６０２。ＢＩＳＴコントローラ１１２は次に、ステップ６０４において、図４に示されるデータ保持テストを行う。ＢＩＳＴコントローラ１１２は引き続き、ステップ６０６において、同じ保持時間にテストすべきパターンがさらにあるか否かを判定する。もし同じ保持時間にテストすべきパターンがさらにあれば、ＢＩＳＴコントローラ１１２は、ステップ６０８において、この新しいパターンをアレイ１３２に書き込みかつステップ６０４に戻る。
【００６０】
もし同じ保持時間にテストすべきパターンがさらになければ、ＢＩＳＴコントローラ１１２は、ステップ６１０において、いずれかのパターンにおいて前の保持インターバルにいずれかの不合格があったか否かを判定する。もし前の保持インターバルに不合格があれば、ＢＩＳＴコントローラ１１２は、ステップ６１２において、ＮからＬを減算することにより保持インターバルを低減する。もし前の保持インターバルに不合格がなければ、ＢＩＳＴコントローラ１１２は、ステップ６１４において、ＬをＮに加えることにより保持インターバルを増大する。いずれの場合も、ＢＩＳＴコントローラ１１２は、ステップ６１６において、調整係数Ｌを半分にする。次に、ＢＩＳＴコントローラ１２は調整係数Ｌを１と比較することによりそれがその２進サーチを完了したか否かを判定する。もし調整係数が１またはそれ以上であれば、２進サーチは完了していない。ＢＩＳＴコントローラ１１２はステップ６０４に戻りかつテストを続ける。もし調整係数が１より小さければ、２進サーチは完了する。
【００６１】
図７は、図６に示される流れ図の各ステップのグラフ表現を示す。ＢＩＳＴコントローラ１１２は始めにＮを１２８の半分に等しくセットする。従って、ＢＩＳＴコントローラ１１２は始めにＤＲＡＭコントローラ１０８によって発生されたそれぞれ１９２から６４のリフレッシュサイクルを阻止する（ｂｌｏｃｋｓ）。この戦略は通常のリフレッシュレートによって提供される保持時間の１５０パーセントの保持テストインターバルを生じさせる。この例では、この最初の保持テストは合格している。ＢＩＳＴコントローラ１１２は次に３２を加えることによりＮを調整する。従って、ＢＩＳＴコントローラ１１２は第２の保持テストにおいてＤＲＡＭコントローラ１０８によって発生されたそれぞれの２２４から９６のリフレッシュサイクルを阻止する。この戦略は通常のリフレッシュレートによって提供される保持時間の１７５パーセントの保持テストインターバルを生じさせる。この例では、この第２の保持テストは不合格になる。ＢＩＳＴコントローラ１１２は次にＮを１６を減算することにより調整する。従って、ＢＩＳＴコントローラ１１２はＤＲＡＭコントローラ１０８によって発生されたそれぞれ２０８から８０のリフレッシュサイクルを阻止する。この戦略は通常のリフレッシュレートによって提供される保持時間の１６２．５パーセントの保持テストインターバルを生じさせる。このプロセスが調整係数が１より小さくなるまで続けられる。
【００６２】
【発明の効果】
以上の説明および図示は本発明に関連する数多くの利点を示している。本発明がその特定の実施形態に関して説明されかつ図示されたが、本発明はこれらの例示的な実施形態に限定されないものと考える。当業者は本発明の精神から離れることなく修正および変更を行うことができる。例えば、あるブロックは同じ回路上に集積することができる。逆に、同じ回路から生じるものとして示された機能は２つまたはそれ以上の別個の装置に分割することができる。従って、この発明は添付の特許請求の範囲に含まれるすべてのそのような変更および修正を含むことを意図している。
【図面の簡単な説明】
【図１】本発明に従って構成されたメモリシステムを示すブロック図である。
【図２】図１に示されるメモリシステムのプログラマブルレジスタを示す概念的説明図である。
【図３】図１に示される組込みセルフテストコントローラの動作を示す流れ図である。
【図４】図３に示される１つのステップを詳細に示す流れ図である。
【図５】図３に示される流れ図のステップを示すグラフ表現説明図である。
【図６】図１に示される組込みセルフテストコントローラの動作を示す流れ図である。
【図７】図６に示される流れ図のステップを示すグラフ表現説明図である。
【符号の説明】
１００  メモリシステム
１０２  ＤＲＡＭ制御ユニット
１０４  組込みセルフテスト（ＢＩＳＴ）ユニット
１０６  ＤＲＡＭ
１０８  ＤＲＡＭコントローラ
１１０  ＤＲＡＭパラメータレジスタ
１１２  ＢＩＳＴコントローラ
１１４  リフレッシュ制御レジスタ（ＲＣＲ）
１１６  比較器
１１８，１２０，１２２，１２４，１２６，１２８，１３０  マルチプレクサ
１３２  アレイ
１３４  ＭＵＸ
１３６  ローデコーダ
１３６  センスアンプ
１４０  コラムセレクタ
１４２  制御ユニット
１４４  リフレッシュカウンタ
【図１】
0004549448.tif 000002
【図２】
0004549448.tif 000003
【図３】
0004549448.tif 000004
【図４】
0004549448.tif 000005
【図５】
0004549448.tif 000006
【図６】
0004549448.tif 000007
【図７】
0004549448.tif 000008