JP2005535978A - メモリモジュールの自己テストおよび修復するためのシステムおよび方法 - Google Patents

メモリモジュールの自己テストおよび修復するためのシステムおよび方法 Download PDF

Info

Publication number
JP2005535978A
JP2005535978A JP2004529260A JP2004529260A JP2005535978A JP 2005535978 A JP2005535978 A JP 2005535978A JP 2004529260 A JP2004529260 A JP 2004529260A JP 2004529260 A JP2004529260 A JP 2004529260A JP 2005535978 A JP2005535978 A JP 2005535978A
Authority
JP
Japan
Prior art keywords
memory
module
memory device
location
defective
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2004529260A
Other languages
English (en)
Other versions
JP4431977B2 (ja
Inventor
ジョセフ エム. ジェッデロー,
Original Assignee
マイクロン テクノロジー,インコーポレイティド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by マイクロン テクノロジー,インコーポレイティド filed Critical マイクロン テクノロジー,インコーポレイティド
Publication of JP2005535978A publication Critical patent/JP2005535978A/ja
Application granted granted Critical
Publication of JP4431977B2 publication Critical patent/JP4431977B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/76Masking faults in memories by using spares or by reconfiguring using address translation or modifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • G11C29/4401Indication or identification of errors, e.g. for repair for self repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/48Arrangements in static stores specially adapted for testing by means external to the store, e.g. using direct memory access [DMA] or using auxiliary access paths
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/56External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
    • G11C2029/5606Error catch memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Dot-Matrix Printers And Others (AREA)
  • Pens And Brushes (AREA)

Abstract

メモリモジュール上にあるメモリ装置の不良メモリ部分をテストおよび修復するために用いられるコンピュータシステムおよび方法である。コンピュータシステムは、複数のメモリモジュールに結合されたメモリハブコントローラを含み、各メモリモジュールは、メモリハブと、複数のメモリ装置とを含む。メモリハブは、メモリ装置の不良メモリ箇所の位置を決定する自己テストモジュールを備える。同じくメモリハブに含まれる修復モジュールは、不良メモリ部分の位置を用いて、再マッピングテーブルを作成する。再マッピングテーブルは、メモリ装置の不良箇所に対するアクセスを、不良でないメモリ箇所へ向け直す。メモリハブがメモリアクセス装置からのメモリ要求を受信する度に、メモリハブは、アクセスが向けられたメモリ箇所をチェックして、必要であれば、メモリアクセスを不良でない箇所に向け直す。

Description

本発明は、コンピュータシステムに関し、より特定的には、メモリハブが数個のメモリ装置をプロセッサまたは他のメモリアクセス装置に結合しているメモリモジュールを有するコンピュータシステムに関する。
発明の背景
コンピュータシステムは、ダイナミックランダムアクセスメモリ(「DRAM」)装置などのメモリ装置を用いて、プロセッサによってアクセスされる命令およびデータを記憶する。これらのメモリ装置は、通常、コンピュータシステムにおけるシステムメモリとして用いられる。典型的なコンピュータシステムにおいて、プロセッサは、プロセッサバスおよびメモリコントローラを介してシステムメモリと通信を行う。プロセッサは、読み出しコマンドなどのメモリコマンドを含むメモリ要求と、データまたは命令が読み出されるべき箇所を指定するアドレスとを発行する。メモリコントローラは、コマンドおよびアドレスを用いて、適切なコマンド信号と、システムメモリに適用される行および列アドレスとを生成する。コマンドおよびアドレスに応答して、データがシステムメモリおよびプロセッサ間で転送される。メモリコントローラは、システムコントローラの一部であることが多く、また、プロセッサバスをPCIバスなどの拡張バスに結合させるためのバスブリッジ回路を含む。
メモリ装置の動作速度が連続して上昇しても、動作速度のこの上昇は、プロセッサの動作速度の上昇と一致していたわけではない。それどころか、プロセッサをメモリ装置に結合させるメモリコントローラの動作速度の上昇は、より遅かった。メモリコントローラおよびメモリ装置の比較的遅い速度により、プロセッサおよびメモリ装置間のデータ帯域幅が制限される。
プロセッサおよびメモリ装置間のデータ帯域幅が制限されていることに加えて、コンピュータシステムの性能は、システムメモリ装置からデータを読み出すのに必要な時間を増加させる待ち時間の問題によっても制限される。より具体的には、メモリ装置読み出しコマンドが同期DRAM(「SDRAM」)装置などのシステムメモリ装置につながれる場合、読み出しデータがSDRAM装置から出力されるのは、数クロック期間遅れた後である。したがって、SDRAM装置がバーストデータを高いデータ速度で同期出力できても、最初にデータを与える際の遅れが、そのようなSDRAM装置を用いるコンピュータシステムの動作速度を大幅に遅らせることがある。
メモリ待ち時間問題を緩和する取り組みとして、メモリハブを介してプロセッサに結合された複数のメモリ装置を用いることが挙げられる。メモリハブアーキテクチャにおいて、システムコントローラまたはメモリハブコントローラがいくつかのメモリモジュールに結合され、各メモリモジュールは、いくつかのメモリ装置に結合されたメモリハブを含む。メモリハブは、コントローラおよびメモリ装置間のメモリ要求および応答を効率的に経路設定する。このアーキテクチャを用いるコンピュータシステムは、より高い大域幅を有することができる。なぜなら、プロセッサは、あるメモリ装置に対するアクセスを、他のメモリ装置が以前のメモリアクセスに応答している間に行うことができるからである。例えば、プロセッサは、書き込みデータをシステム内のメモリ装置のうちの1つに出力することを、システム内の他のメモリ装置が読み出しデータをプロセッサに提供する準備をしている間に行うことができる。メモリハブアーキテクチャを用いるコンピュータシステムの動作効率によって、コンピュータシステムにおけるメモリ容量の大幅な増加をより実用化することができる。
メモリ装置にアクセスするためのメモリハブを用いる利点にもかかわらず、メモリ装置による半導体技術は、不良メモリ箇所を生じさせることが多く、それにより、メモリ装置の信頼性が失われている。メモリ装置における不良箇所がそのような装置を用いるコンピュータシステムの性能を低下させる程度は、コンピュータシステムの性質およびそれが実行しているアプリケーションに依存する。コンピュータシステムは、電話の留守番録音装置に含まれているような単純なコンピュータから、複雑な科学プロジェクト用に用いられる非常に複雑なスーパーコンピュータまで様々であろう。例えば、電話の留守番録音装置用に用いられる単純なコンピュータにおいて、メモリの1つ以上のメモリ箇所におけるエラーは、致命的でないかもしれない。例えば、電話の留守番録音装置のメモリにおける誤りは、メモリに記憶された合成音声をわずかに変えるだけであると考えられる。しかしながら、科学的計算を実行するために用いられるコンピュータのメモリにおける1つ以上の不良メモリ箇所は、重要な問題を生じさせることがある。
現在の生産技術により、不良メモリ箇所の数は大幅に減少しているが、コンピュータメモリは、いまだそのような不良メモリ箇所の影響を受けやすい。そのような不良メモリ箇所は、メモリチップの製造中に取られる数多くのあらゆるステップ、半導体結晶不良、電気コネクタの不連続性などによって生じうる。そのような不良メモリ箇所を有するメモリチップは、典型的には、生産されるメモリチップの総合計のうちの小さな部分(1%未満)を占めるものの、そのような不良メモリチップの実際の数は、かなりある。
過去においては、「冗長行」として知られるメモリセルの追加行を設けて、不良なメモリセルを有する行を交換していた。冗長行の利用は、ともすれば不良メモリチップとなるチップを救出するのには成功を収めているが、交換可能な不良行の数は、メモリチップ上に設けられる冗長行の数に限定される。不良行の数は、時には、利用可能な冗長行の数を上回るので、不良行の中には修復されないものもある。場合によっては、そのような不良メモリチップが、電話の留守番録音装置などの、完全なメモリを必要としないアプリケーション用として、非常に低価格で販売されることもある。しかしながら、そのようなメモリチップを、パーソナルコンピュータにおけるような、より重要なアプリケーションにおいて用いることができれば、有益であろう。
そのような不良メモリチップをパーソナルコンピュータに搭載することができるようにするやり方として、誤り訂正方法を用いて、不良メモリ箇所を補償することが挙げられる。誤り訂正方法は、データワード内に誤りデータビットがある場合に、データワードを再構成することを可能にする複数の誤り訂正ビットを各データワードに追加する。しかしながら、そのような先行技術の誤り訂正方法は、典型的には、データワードの単一のビットのみに誤りがある場合に、データを再構成するだけである。さらに、そのような誤り訂正方法は、数個の追加のデータビットを各データワードに追加することによって、高いメモリオーバヘッドを生じさせる。加えて、そのような誤り訂正方法を拡張して、複数の誤りデータビットを検出するようにすることができるが、生じるであろうメモリオーバヘッドは許容できない。
不良メモリビットの他の訂正方法は、再マッピング方法として一般に知られるものを通して行われる。再マッピングは、あらかじめ定義されたエラーマップおよび再マッピングテーブルを用いて、不良メモリ箇所を向け直す。エラーマップは、通常、メモリブロックのどのメモリ箇所が不良であるかを決定する周知のテストに基づいて工場において作成される。これらの再マッピング方法は、二重ビットエラー問題および高いメモリオーバヘッドに対応しているが、様々な欠点がある。例えば、エラーマップを向上で作成すると、将来の不良箇所を修正することができず、生産処理に余分な時間および資金が加わる。システムコントローラにおけるエラーマップを作成することは、各コンピュータ生産者に対して、コンピュータシステムによってアクセスされるメモリ装置の各型毎の独自のテストシステムを開発することを要求する。
用いられるメモリ修復または修正手法の型に関わらず、不良メモリセルの箇所を検出することが通常必要である。不良メモリセルの検出は、一般に、1および0のチェッカー盤のパターンなどの既知のデータのパターンをメモリセルのアレイに書き込み、その後メモリセルからデータを読み出して、読み出しデータが書き込みデータと一致するかどうかを決定することによって行われる。このほう名やり方によるメモリ装置のテストは、通常、メモリ装置の生産中のいくつかの段階において、コンピュータおよびメモリ装置を用いる他のシステムによって行われる。例えば、コンピュータシステムは、通常、コンピュータシステムのパワーアップ時において、システムメモリ装置をテストし、システムメモリ装置は、通常、ダイナミックランダムアクセス(「DRAM」)メモリ装置である。
既知のデータをメモリ装置に書き込み、メモリ装置からデータを読み出し、読み出しデータを書き込みデータと比較することによってメモリ装置をテストするために用いられる時間は、主にメモリ装置の記憶容量の関数となる。例えば、メモリ装置のメモリセルの数を2倍にすると、通常、メモリ装置をテストする時間が2倍となる。従来のメモリアーキテクチャにおいて用いられるメモリ装置をテストするのに必要な時間は、許容できるほど短いものの、他のアーキテクチャを用いるメモリ装置をテストするのに必要な時間は、許容できないほどに長い。例えば、メモリハブアーキテクチャが提供可能な極めて大きなメモリ容量によって、メモリハブアーキテクチャシステムにおけるメモリ装置をプロセッサがテスト時間が許容できないほど長くなってしまうことがある。
読み出しデータを書き込みデータと比較することによってメモリ装置をテストするのに必要な時間を削減するやり方として、メモリ装置における自己テスト回路を組み込むことによって、「チップ上での」のメモリテスト機能を移動させることが挙げられる。このやり方は、メモリ装置をテストするのに必要な時間を削減できるものの、それにもかかわらず、各メモリ装置の合否状態をプロセッサまたは他のメモリアクセス装置に対して報告しなければならない。多くの数のメモリ装置を用いるメモリハブアーキテクチャにおいては、すべてのメモリ装置が自身の合否状態を報告するのにかなりの時間を必要とするであろう。
したがって、メモリハブアーキテクチャの利点をメモリモジュール上のメモリ装置をテストおよび修復する利点と組み合わせるメモリモジュールが必要とされている。
発明の概要
本発明は、メモリモジュール上にあるメモリ装置の不良メモリ箇所をテストおよび修復するために用いられるコンピュータシステムおよび方法に向けられている。コンピュータシステムは、メモリハブコントローラに結合された複数のメモリモジュールを含む。各メモリモジュールは、複数のメモリ装置と、メモリハブとを含む。メモリハブは、自己テストモジュールと、修復モジュールとを含む。自己テストモジュールは、メモリ装置に結合されて、メモリ装置をテストする要求に応答して、自己テストモジュールは、1つ以上の自己テストルーチンを実行する。自己テストルーチンは、メモリ装置上の不良メモリの箇所を決定する。修復モジュールは、不良メモリの箇所を用いて、再マッピングテーブルを作成する。再マッピングテーブルは、メモリ装置の不良メモリ箇所を、メモリ装置内またはメモリハブ内にあるキャッシュメモリまたはスクラッチメモリ内などのメモリモジュール上にあるメモリの不良でないメモリ箇所に向け直す。
明らかなように、本発明は、本発明の精神および範囲から逸脱せずに、様々な自明の局面において修正を施すことが可能である。したがって、図面および詳細な説明は、その性質上、例示的であり、限定的なものではないとみなされるべきである。
発明の詳細な説明
本実施形態の一実施形態に係るコンピュータシステム100を図1に示す。コンピュータシステム100は、特定のソフトウェアを実行して特定の計算またはタスクを行うなどの、様々な計算機能を行うためのプロセッサ104を含む。プロセッサ104は、アドレスバス、コントロールバス、およびデータバスを通常含むプロセッサバス106を含む。プロセッサバス106は、典型的にはキャッシュメモリ108に結合され、キャッシュメモリ108は、典型的には静的ランダムアクセスメモリ(「SRAM」)である。最後に、プロセッサバス106は、システムコントローラ110に結合され、システムコントローラ110は、時には「ノースブリッジ」または「メモリコントローラ」と呼ばれることもある。
システムコントローラ110は、様々な他の構成要素に対して、プロセッサ104への通信路としての役割を果たす。より特定的には、システムコントローラ110は、典型的にはグラフィックスコントローラ112に結合されたグラフィックスポートを含み、グラフィックスコントローラ112は、さらにビデオ端子114に結合されている。また、システムコントローラ110は、キーボードまたはマウスなどの1つ以上の入力装置118に結合されて、オペレータがコンピュータシステム100に接続できるようにする。典型的には、また、コンピュータシステム100は、システムコントローラ110を通じてプロセッサ104に結合されたプリンタなどの1つ以上の出力装置120を含む。また、1つ以上のデータ記憶装置124が、典型的にはシステムコントローラ110を通じてプロセッサ104に結合され、内外の記憶媒体(図示せず)からのデータをプロセッサ104が記憶または取り出すことができるようにしている。典型的な記憶装置124の例には、ハードおよびフロッピー(登録商標)ディスク、テープカセット、およびコンパクトディスク読み出し専用メモリ(CD−ROM)がある。
システムコントローラ110は、コンピュータシステム100のためのシステムメモリとしての役割を果たす数個のメモリモジュール130a,b…nに結合されたメモリハブコントローラ128を含む。メモリモジュール130は、好ましくは、光または電気通信路または他の種類の通信路などの高速リンク134を通じてメモリハブコントローラ128に結合されている。高速リンク134が光通信路によって実施される場合には、光通信路は、1つ以上の光ファイバの形態であってもよい。そのような場合、メモリハブコントローラ128およびメモリモジュールは、光通信路に結合された入出力ポートまたは別個の入力および出力ポートを含むであろう。メモリモジュール130は、メモリハブコントローラ128に結合されて、単一の高速リンク134がメモリモジュール130のすべてに結合されているようなマルチドロップ配置であるように示されている。しかしながら、別の高速リンク(図示せず)を用いて各メモリモジュール130をメモリハブコントローラ128に結合させる、二地点間結合配置などの他の配置を用いてもよいことが理解されるであろう。また、メモリハブコントローラ128がスイッチ(図示せず)を介して各メモリモジュール130に選択的に結合される、切り替え配列を用いてもよい。用いられうる他の配列は、当業者にとっては明らかであろう。
各メモリモジュール130は、図1に示す例においては同期ダイナミックランダムアクセスメモリ(「SDRAM」)装置である6つのメモリ装置148に対するアクセスを制御するためのメモリハブ140を含む。しかしながら、それより少ないまたは多い数のメモリ装置148を用いてもよく、また、SDRAM装置以外のメモリ装置を用いてもよい。メモリハブ140は、各システムメモリ装置148にバスシステム150を介して結合され、バスシステム150は、通常、コントロールバス、アドレスバス、およびデータバスを含む。
図1のメモリモジュール130において用いられうるメモリハブ140の一例を図2に示す。メモリハブ140は、好ましくは、メモリコントローラ152と、リンクインターフェイス154と、およびメモリ装置インターフェイス156とを含むが、それに限定されない。リンクインターフェイス154は、アドレス、コマンド、および書き込みデータ信号をメモリハブコントローラ128(図1)から受信し、読み出しデータ信号をメモリハブコントローラ128へ送信するための高速リンク134に結合されている。リンクインターフェイス154の性質は、高速リンク134の特性に依存するであろう。例えば、高速リンク134が光通信路を用いて実施される場合には、リンクインターフェイス154は、光入出力ポートを含み、光通信路を介して入力される光信号を電気信号に変換するであろう。いずれの場合も、リンクインターフェイス154は、好ましくは、先入れ先出しバッファ160などの、高速リンク134を介して受信されるメモリ要求を受信および記憶するためのバッファを含む。メモリ要求は、メモリハブ140によって処理できるまでは、バッファ160に記憶される。
メモリハブ140がメモリ要求を処理可能である場合、バッファ160に記憶されたメモリ要求のうちの1つがメモリコントローラ152へ転送される。メモリコントローラ152は、メモリ要求をメモリハブコントローラ128から出力されたフォーマットからメモリ装置148によって用いられうるフォーマットへ変換するシーケンサ158を含んでもよい。これらの再フォーマットされた要求信号は、通常、メモリ要求に含まれるメモリコマンドから派生するメモリコマンド信号と、メモリ要求に含まれるアドレスから派生する行および列アドレス信号とを含む。メモリ要求のうちの1つが書き込みメモリ要求である場合、再フォーマットされた要求信号は、通常、メモリハブ140によって受信されたメモリ要求に含まれる書き込みコマンドから派生する書き込みデータ信号を含む。例えば、メモリ装置148は、従来のDRAM装置である場合には、メモリシーケンサ158は、行アドレス信号と、行アドレスストローブ(「RAS」)信号と、ハイでアクティブとなる書き込みおよびローでアクティブとなる読み出し信号(「W/R*」)と、列アドレス信号と、列アドレスストローブ(「CAS」)とを出力するであろう。
シーケンサ158は、再フォーマットされたメモリ要求の信号を、メモリ装置148によって要求されたシーケンスにおけるメモリ装置インターフェイス156に対して適用する。メモリ装置インターフェイス156の性質は、メモリ装置148の特性に依存するであろう。例えば、シーケンサ158は、行アドレス信号、続いてRAS信号、続いて列アドレス信号、続いてCAS信号を、メモリ装置インターフェイスに適用してもよい。いずれの場合も、メモリ装置インターフェイス156は、好ましくは、1つ以上のメモリ要求を受信して、シーケンサ158から受信するように記憶する、先入れ先出し(FIFO)バッファ162などのバッファを含む。メモリ要求は、メモリ装置148によって処理できるまでは、バッファ162に記憶される。メモリ装置インターフェイス156が数個のメモリ要求を記憶する場合に、メモリ装置インターフェイス156は、メモリ装置148に対して他の順番で適用されるメモリ要求を整理し直してもよい。
メモリ要求は、メモリ装置148に対して適用されるメモリ要求のフォーマットとは異なるフォーマットで、メモリハブ140によって受信されるものとして上述した。しかしながら、代わりに、メモリハブコントローラ128は、プロセッサ104からのメモリ要求を、メモリ装置148によって用いられうるフォーマットへ再フォーマットしてもよい。その後、シーケンサ158は、メモリ装置148によって用いるのに必要な順番で、再フォーマットされた要求信号に対して、単にスケジュール設定を行う。その後、1つ以上のメモリ要求のためのメモリ要求信号は、メモリ装置インターフェイス156に転送され、後にメモリ装置148に対して適用することができるようになる。
図2をさらに参照して、メモリハブ140は、自己テストモジュール164と、修復モジュール166とをさらに含む。自己テストモジュール164は、シーケンサ168を含み、修復モジュール166は、エラーマップ174と、再マッピングテーブル176とを含む。また、図示していないが、メモリモジュール140は、上述のように、メモリハブコントローラ128およびメモリ装置148のインターフェイスとなるための他の構成要素を含んでもよい。
上述したように、メモリモジュールの問題として、不良メモリの存在がある。メモリモジュールの信頼性を保証するためには、追加の時間と資金とを費やして、工場およびオンボードでのコンピュータのいずれかにおいて各モジュールをテストおよび/または修復する。しかしながら、工場でのメモリのテストおよび修復は、将来生じるかもしれないメモリ不良を解決するものではない。同様に、オンボードでのコンピュータでのメモリのテストは、コンピュータに電源を投入する度にコンピュータがテストルーチンを実行する時間を必要とする。メモリハブアーキテクチャを有するメモリを用いるコンピュータシステムでは、各電源投入中にメモリ装置をテストするのに必要な時間は、許容できないほど長くなりうる。さらに、コンピュータシステムにインストールした後のメモリ装置のテストでは、メモリ不良の存在を識別するだけである。一般的に、上述の手法を用いてこのような不良を修復することなどによっては、このような不良をどうすることもできない。
図2に示すメモリモジュール130は、メモリモジュール130に実装される自己テストおよび修復の能力を提供する。よって、メモリモジュール130は、コンピュータシステム100または他のシステムにインストールされた後に、継続的に自身をテストおよび修復することができる。テストおよび修復システムは、メモリモジュール130に必須の部分であり、メモリモジュール130に実装されたメモリ装置148の型のために特に設計される。これにより、コンピュータシステムによって用いられるメモリ装置148の各型用に特化されたテストおよび修復システムを各コンピュータ製造者が開発する必要がなくなる。加えて、自己テストモジュール164および修復モジュール166をメモリハブ140上に置くことによって、メモリモジュール130は、メモリハブコントローラ128およびメモリ装置148間のメモリ要求および応答を効率的に経路設定するメモリハブの能力といった、メモリハブ140のメモリ取り扱い能力を利用する。これにより、メモリモジュール130は、自身をより一貫して即座にテストおよび修復することができる。
図2に示す自己テストモジュール164は、シーケンサ168を通じて直接メモリ装置148にアクセスする自己テストシステムを提供する。テストモジュール164は、自己テストモジュール164は、メモリモジュール130のメモリ装置148を試験するための数多くの組み込み自己テスト(BIST)ルーチン(図示せず)を実行してもよい。自己テストルーチンは、論理回路またはプログラムされたプロセッサで実行されてもよい。自己テストルーチンは、自己テストモジュール164に記憶されてもよいし、メモリモジュール130の不揮発性メモリまたはその他の場所に記憶されてもよく、その後、必要に応じて、自己テストモジュール164にロードされる。自己テストルーチンは、一連のメモリ装置テストを実行し、不良メモリ箇所を識別する。例えば、あるルーチンは、メモリ装置148のメモリ箇所にデータを書き込み、その後、メモリ装置148からデータを読み出そうとしてもよい。メモリ箇所からの読み出したデータがメモリ箇所へ書き込まれたデータと一致しない場合には、メモリ箇所は不良であると判断される。自己テストルーチンは、すべてのメモリ箇所をテストして、不良かどうかを判断してもよく、その場合、エラータグが不良メモリ箇所に作成される。代わりに、自己テストルーチンは、メモリ箇所の4キロバイトのグループなどの、より大きなメモリ箇所をテストして、4キロバイトのメモリ箇所が不良かどうかを判断してもよい。
図2に示す実施形態において、シーケンサ168は、自己テストモジュール164に内蔵されている。シーケンサ168は、自己テストモジュール164がメモリ装置インターフェイス156を通じて各メモリ装置148にアクセスすることを可能にする。自己テストモジュール164の自己テストルーチンは、一連のメモリ要求をシーケンサ168に送ることによって実行される。シーケンサ168は、メモリ要求を、自己テストモジュール164から出力されたフォーマットから、メモリ装置148によって用いることが可能なフォーマットを有するメモリ要求に変換する。シーケンサ168は、再フォーマットされたメモリ要求をメモリ装置インターフェイス156に適用する。
自己テストモジュール164の自己テストルーチンの起動には、多くのやり方がある。図2に示すように、テスト信号170は自己テストモジュール164につながれて、自己テストモジュール164のテスト手順を起動する。この信号は、テスト手順がコンピュータシステムの電源投入時にいつも実行されるように、コンピュータシステム100に電源が投入される度に与えられてもよい。また、電源投入検出回路(図示せず)が、メモリモジュール130上に設置されてもよく、コンピュータシステム100に電源投入される度に、電源投入検出回路が電源投入を検出して、自己テストモジュール164の自己テストルーチンを起動するようにしてもよい。加えて、自己テストルーチンは、プロセッサ104がテスト信号170を提供することによって起動されてもよいし、高速リンク134から起動されてもよい。より特定的には、高速リンク134を用いて、自己テストモジュール116の自己テストルーチンを起動する信号を提供してもよい。テスト手順の起動は、本技術で一般的に理解される他の方法によって行われることもでき、上述のものに限らない。
メモリテストの結果を用いて、メモリ装置148の不良メモリ箇所を識別および好ましくは修復する。結果は、プロセッサ104またはコンピュータシステム100の他のメモリアクセス装置に直接に報告されてもよい。図2に示すように、結果は、テスト結果リンク172Aまたはリンクデータ出力134を介して送られてもよい。これにより、各メモリアクセス装置は、不良メモリ箇所を個別に扱うことができる。しかしながら、結果は、修復モジュール166によって、オンボードでメモリハブ140で用いられるのが好ましい。図2に示すように、結果は、テスト結果リンク172Bを介して、修復モジュール166に送られる。
メモリ装置148の不良メモリ箇所の識別は、組み合わされてエラーマップ174に記憶される。エラーマップ174は、自己テストモジュール164によって作成されてから、修復モジュール166に転送されてもよく、または、代わりに、エラーマップ174が修復モジュール166によって作成されるように、自己テストルーチンの結果を修復モジュール166に転送してもよい。好適な実施形態においては、エラーマップ174は修復モジュール166に記憶されるが、エラーマップ174は、自己テストモジュール164によって記憶およびアクセスされるか、またはメモリハブ140またはメモリ装置148などによって他の箇所に記憶されてもよい。エラーマップ174を記憶するために用いられるメモリの種類は、典型的には、不揮発性メモリである。不揮発性メモリに対するアクセスは、典型的には揮発性メモリに対するアクセスよりも遅いので、エラーマップ174は、不揮発性メモリに記憶されてから、揮発性メモリに転送されて、修復モジュール166によるより高速のアクセスが行われてもよい。
エラーマップ174は、メモリ装置148の各不良揮発性メモリ箇所についてのエラータグを含む。好ましくは、エラーマップ174は、不良揮発性メモリ部分にエラータグを関連付け、不良でない揮発性メモリ部分に非エラータグを関連付けることによって実施される。例えば、エラータグは、メモリ部分が不良であれば、0などの第1の論理値のタグビットであってもよく、非エラータグは、メモリ部分が不良でなければ、1などの第2の論理値のタグビットであってもよい。代わりに、エラーマップ174は、不良メモリ箇所のアドレスを単に含んでもよく、列挙されていないアドレスは不良でないとされる。
修復モジュール166は、メモリモジュール130上にあるメモリを用いて、メモリ装置148の不良メモリ箇所を再マッピングする。一旦メモリマップ174が作成されると、修復モジュール164は再マッピングテーブル176を作成する。再マッピングテーブル176は、メモリ装置148の各不良メモリ箇所を、不良でないとして知られるメモリ装置148の部分に向け直す。言い換えれば、メモリ装置148の各不良部分について、再マッピングテーブル176は、メモリ装置148の不良でない部分を示す指標を含む。不良メモリ箇所がマッピングされている箇所は、プロセッサ104によって直接アクセスできないように、メモリモジュール130のメモリ装置148の予備領域にあるのが好ましい。プロセッサ104による直接のアクセスから予備のメモリ領域を保護することによって、コンピュータシステム100は、不良箇所がマッピングされメモリ箇所によって占められた箇所をプロセッサ104が上書きしてしまうと生じるであろうメモリアクセス衝突を防止する。再マッピングテーブル176は、不良メモリ箇所を、メモリハブ140上にあるキャッシュメモリおよびスクラッチメモリなどのメモリモジュール130上の他の不良でない箇所に向け直すことができる。
エラーマップ174と同様に、再マッピングテーブル176は、多くのメモリ箇所に記憶されてもよい。コンピュータシステム100に電源が投入される度に再マッピングテーブルが再作成される場合には、再マッピングテーブル176はメモリ装置148にあってもよい。しかしながら、再マッピングテーブル176は、不揮発性メモリに記憶されてもよい。例えば、再マッピングテーブル176が周期的に作成されるだけである場合には、再マッピングテーブル176は不揮発性メモリに記憶されるのが好ましい。再マッピングテーブル176が不揮発性メモリに記憶される場合には、再マッピングテーブル176に対するアクセス時間は、テーブル176を揮発性メモリに転送することによって、増加することがある。図2に示すように、再マッピングテーブル176は、修復モジュール166上にあるメモリに記憶されるが、この箇所に限定されないものではない。再マッピングテーブル176は、メモリハブ140上の他のメモリにあってもよい。再マッピングテーブルは、メモリ装置148に格納されるのが好ましい。なぜならば、修復モジュール166またはメモリハブ140において利用可能なメモリ量は限られていることがあり、一方、メモリ装置148では、より多くの空間が利用可能であろうからである。再マッピングテーブル176がメモリ装置148に記憶される場合には、予備のメモリ領域に記憶されるのが好ましい。
エラーマップ174および再マッピングテーブル176がメモリ内の適切な箇所に記憶された後に、メモリモジュール130は、メモリ装置148に対するアクセスのためのメモリ要求を受信する準備が整う。メモリハブ140のリンクインターフェイス154は、メモリ装置148の1つ以上のアドレス指定された箇所に対するアクセスのための各メモリ要求をメモリハブコントローラ128から受信する。リンクインターフェイス154は、メモリハブ140のメモリコントローラ152にメモリ要求をつなぐ。メモリコントローラ152は、修復モジュール164にアクセスすることによって応答して、メモリのアドレス指定された箇所が不良かどうかをエラーマップ176から決定する。アドレス指定されたメモリ箇所が不良でないとエラーマップ176が示す場合には、メモリコントローラ152は、メモリ装置インターフェイス156を介して、単にメモリ要求をメモリ装置148のアドレス指定された箇所につなぐ。アドレス指定されたメモリ箇所が不良であるとエラーマップ176が示す場合には、メモリ修復モジュール164が再マッピングテーブル176にアクセスする。その後、メモリコントローラ152は、再マッピングテーブル176から決定された不良でないメモリ箇所にメモリ要求をつなぎ、メモリ装置インターフェイス156を介して、メモリ装置148にメモリ要求をつなぐ。その後、メモリ装置インターフェイス156は、メモリ要求によって要求された機能を実行する。例えば、メモリアクセス要求が、アドレス指定されたメモリ箇所からデータを読み出す要求であった場合には、メモリ装置インターフェイス156は、アドレス指定されたメモリ箇所がマッピングされた不良でないメモリ箇所からデータを読み出し、メモリハブ140は、高速リンク134を介して、データをメモリハブコントローラ128に返す。
図3は、図1のメモリハブ140の第2の実施形態である。本実施形態において、メモリハブ140は、図2の自己テストモジュール164と修復モジュール166とを含む。修復モジュール166は、同様に、エラーマップ174と、再マッピングテーブル176とを含む。簡潔化のために、そのような共通の構成要素には同一の参照番号が付されており、その動作説明は繰り返さない。
図3におけるメモリハブ140は、エラーマップ174のコピーであるエラーマップ180と、再マッピングテーブル176のコピーである再マッピングテーブル182とを含むメモリコントローラ178を用いる点で、図2に示すメモリハブ140と異なっている。また、図3のメモリハブ140は、メモリコントローラ178がシーケンサ184を含み、自己テストモジュール164が図2の実施形態で用いられたシーケンサ168を含まないという点でも、図2に示すメモリハブと異なっている。その結果、自己テストモジュール164は、図2のオンボードのシーケンサ168からメモリ装置148に対して直接アクセスしないが、その代わりに、メモリコントローラ178上にあるシーケンサ184を通じてメモリ装置にアクセスする。エラーマップ180および再マッピングテーブル182をメモリコントローラ178に置くことによって、メモリコントローラ178は、メモリ要求毎に修復モジュール164をアクセスする必要なく、不良メモリ箇所を識別および修復することが可能となる。メモリコントローラ178内のシーケンサ184を用いてメモリ装置148にアクセスすることによって、図3のメモリハブ140は、メモリコントローラ178の既存の昨日を用いてメモリ装置148にアクセスすることができる。
好ましくは、新たなマップ174およびテーブル176が作成されるたびに、メモリコントローラ178は、エラーマップ174および再マッピングテーブル176をメモリコントローラ178に転送する。代わりに、エラーマップ174および再マッピングテーブル176が、それぞれエラーマップ180および再マッピングテーブル182に送られる必要なく直接アクセス可能であるように、修復モジュール164をメモリコントローラ178に置いてもよい。図2および3に示す実施形態で用いた構成と異なるメモリハブ140の構成要素の構成を用いてもよい。
メモリ装置148の不良メモリ箇所のテストおよび修復の処理全体は、メモリハブコントローラ128、またはより特定的には、プロセッサ104および他のメモリアクセス装置には透過的である。その結果、ソフトウェアをプロセッサ104によって実行させるか、またはメモリハブコントローラ128の機能を修正して、メモリモジュール130のメモリ装置148と組み合わせて動作させるようにする必要はない。よって、メモリハブコントローラ128は、メモリ装置148をテストする必要も、不良メモリ箇所を修復する必要もないが、その代わりに、従来の方法でメモリハブ140と通信できる。
本発明を好適な実施形態を参照して説明してきたが、本発明の精神および範囲から逸脱せずに、形式および詳細を変更してもよいことを当業者は理解するであろう。したがって、本発明は、添付の請求項による以外は制限されない。
図1は、メモリハブが複数のメモリモジュールにそれぞれ含まれている、本発明の一実施形態のコンピュータシステムのブロック図である。 図2は、図1のコンピュータシステムに用いられるメモリモジュールの一実施形態のブロック図である。 図3は、図2のメモリモジュールに用いられるメモリハブの一実施形態のブロック図である。

Claims (55)

  1. メモリモジュールであって、
    複数のメモリ装置と、
    メモリハブとを備え、メモリハブは、
    少なくとも1つのメモリ装置に結合された自己テストモジュールであって、少なくとも1つのメモリ装置をテストするための要求に応答し、さらにメモリ装置の不良メモリ箇所を識別するように動作可能である自己テストモジュールと、
    自己テストモジュールおよび少なくとも1つのメモリ装置に結合された修復モジュールであって、メモリ装置の不良メモリ箇所に対するメモリ要求に応答して、当該メモリ要求をメモリ装置の不良でないメモリ箇所に向け直す修復モジュールとを備える、メモリモジュール。
  2. 自己テストモジュールは、メモリ装置にアクセスするためのシーケンサをさらに備え、シーケンサは、自己テストモジュールからのメモリ要求に含まれる、メモリ装置のメモリ箇所をアクセスするためのアドレスを出力するように動作可能である、請求項1に記載のメモリモジュール。
  3. メモリモジュールは、
    少なくとも1つのメモリ装置に対するメモリ要求を受信するためのリンクインターフェイスと、
    メモリ装置に結合されたメモリ装置インターフェイスであって、メモリ要求をメモリ装置につなぐように動作可能なメモリ装置インターフェイスと、
    リンクインターフェイスおよびメモリ装置インターフェイスに結合されたメモリコントローラであって、修復モジュールを用いることによって、メモリ要求を生成してリンクインターフェイスからメモリ装置インターフェイスへつないで、メモリ装置の不良箇所に対するメモリ要求をメモリ装置の不良でない箇所に向け直すメモリコントローラとをさらに備える、請求項1に記載のメモリモジュール。
  4. メモリコントローラは、メモリ装置にアクセスするためのシーケンサをさらに備え、シーケンサは、自己テストルーチンからのメモリ要求に含まれる、メモリ装置のメモリ箇所をアクセスするためのアドレスを出力するように動作可能である、請求項3に記載のメモリモジュール。
  5. メモリ装置インターフェイスは、メモリコントローラから受信されたメモリ要求を受信および記憶して、記憶されたメモリ要求を受信した順で少なくとも1つのメモリ装置に対して転送するように動作可能な先入れ先出しバッファをさらに備える、請求項3に記載のメモリモジュール。
  6. リンクインターフェイスは、メモリコントローラから受信されたメモリ要求を受信および記憶して、記憶されたメモリ要求を受信した順でメモリコントローラに対して転送するように動作可能な先入れ先出しバッファをさらに備える、請求項3に記載のメモリモジュール。
  7. メモリ装置の不良メモリ箇所を識別する情報が、自己テストモジュールから修復モジュールへ転送される、請求項1に記載のメモリモジュール。
  8. 自己テストモジュールは、少なくとも1つのメモリアクセス装置に結合され、メモリ装置の不良メモリの箇所は、少なくとも1つのメモリアクセス装置に転送される、請求項1に記載のメモリモジュール。
  9. 修復モジュールは、メモリ装置の不良メモリの箇所を記憶するエラーマップをさらに備え、修復モジュールは、エラーマップを用いて、メモリ要求がメモリ装置の不良メモリ箇所に対するものかどうかを判断する、請求項1に記載のメモリモジュール。
  10. 修復モジュールは、エラーマップを用いてメモリ装置の不良メモリ箇所をメモリモジュール上にあるメモリの不良でないメモリ箇所に対して割り当てる再マッピングテーブルをさらに備え、修復モジュールは、再マッピングテーブルを用いて、メモリ装置の不良メモリ箇所に対するメモリ要求をメモリ装置の不良でないメモリ箇所に向け直す、請求項9に記載のメモリモジュール。
  11. メモリ装置は、ダイナミックランダムアクセスメモリ装置を備える、請求項1に記載のメモリモジュール。
  12. メモリモジュールであって、
    複数のメモリ装置と、
    メモリハブとを備え、メモリハブは、
    少なくとも1つのメモリ装置に結合されたメモリコントローラであって、メモリ装置に対するメモリ要求に応答するメモリコントローラと、
    メモリコントローラに結合された自己テストモジュールであって、少なくとも1つのメモリ装置をテストするための要求に応答し、さらにメモリ装置の不良メモリ箇所を識別するように動作可能である自己テストモジュールと、
    メモリコントローラに結合された修復モジュールであって、メモリ装置の不良メモリ箇所に対するメモリ要求に応答して、当該メモリ要求をメモリ装置の不良でないメモリ箇所に向け直す修復モジュールとを備える、メモリモジュール。
  13. メモリコントローラは、メモリ装置にアクセスするためのシーケンサをさらに備え、シーケンサは、自己テストモジュールからのメモリ要求に含まれる、メモリ装置のメモリ箇所をアクセスするためのアドレスを出力するように動作可能である、請求項12に記載のメモリモジュール。
  14. メモリモジュールは、
    メモリコントローラに結合され、少なくとも1つのメモリ装置に対するメモリ要求を受信するためのリンクインターフェイスと、
    メモリコントローラおよびメモリ装置に結合されたメモリ装置インターフェイスであって、メモリ要求をメモリ装置につなぐように動作可能なメモリ装置インターフェイスとをさらに備える、請求項12に記載のメモリモジュール。
  15. メモリコントローラは、修復モジュールを用いることによって、メモリ要求を生成してリンクインターフェイスからメモリ装置インターフェイスへつないで、メモリ装置の不良箇所に対するメモリ要求をメモリ装置の不良でない箇所に向け直す、請求項14に記載のメモリモジュール。
  16. メモリ装置インターフェイスは、メモリコントローラから受信されたメモリ要求を受信および記憶して、記憶されたメモリ要求を受信した順で少なくとも1つのメモリ装置に対して転送するように動作可能な先入れ先出しバッファをさらに備える、請求項14に記載のメモリモジュール。
  17. リンクインターフェイスは、メモリコントローラから受信されたメモリ要求を受信および記憶して、記憶されたメモリ要求を受信した順でメモリコントローラに対して転送するように動作可能な先入れ先出しバッファをさらに備える、請求項14に記載のメモリモジュール。
  18. メモリ装置の不良メモリ箇所を識別する情報が、自己テストモジュールから修復モジュールへ転送される、請求項12に記載のメモリモジュール。
  19. 自己テストモジュールは、少なくとも1つのメモリアクセス装置に結合され、メモリ装置の不良メモリの箇所は、少なくとも1つのメモリアクセス装置に転送される、請求項12に記載のメモリモジュール。
  20. 修復モジュールは、メモリ装置の不良メモリの箇所を記憶するエラーマップをさらに備え、修復モジュールは、エラーマップを用いて、メモリ要求がメモリ装置の不良メモリ箇所に対するものかどうかを判断する、請求項12に記載のメモリモジュール。
  21. 修復モジュールは、エラーマップを用いてメモリ装置の不良メモリ箇所をメモリモジュール上にあるメモリの不良でないメモリ箇所に対して割り当てる再マッピングテーブルをさらに備え、修復モジュールは、再マッピングテーブルを用いて、メモリ装置の不良メモリ箇所に対するメモリ要求をメモリ装置の不良でないメモリ箇所に向け直す、請求項20に記載のメモリモジュール。
  22. 修復モジュールのエラーマップをさらに備え、エラーマップは、メモリ要求がメモリ装置の不良メモリ箇所に対するものかどうかを判断するように動作可能である、請求項21に記載のメモリモジュール。
  23. メモリコントローラは、修復モジュールの再マッピングテーブルをさらに備え、再マッピングテーブルは、メモリ装置の不良メモリ箇所に対するメモリ要求をメモリ装置の不良でないメモリ箇所に向け直すように動作可能である、請求項22に記載のメモリモジュール。
  24. メモリ装置は、ダイナミックランダムアクセスメモリ装置を備える、請求項12に記載のメモリモジュール。
  25. コンピュータシステムであって、
    中央処理装置(「CPU」)と、
    CPUに結合され、入力ポートおよび出力ポートを有するシステムコントローラと、
    システムコントローラを介してCPUに結合された入力装置と、
    システムコントローラを介してCPUに結合された出力装置と、
    システムコントローラを介してCPUに結合された記憶装置と、
    複数のメモリモジュールとを備え、各メモリモジュールは、
    複数のメモリ装置と、
    メモリハブとを備え、メモリハブは、
    少なくとも1つのメモリ装置に結合された自己テストモジュールであって、少なくとも1つのメモリ装置をテストするための要求に応答し、メモリ装置の不良メモリ箇所を識別するようにさらに動作可能な自己テストモジュールと、
    自己テストモジュールおよび少なくとも1つのメモリ装置に結合された修復モジュールであって、メモリ装置の不良メモリ箇所に対するメモリ要求に応答して、当該メモリ要求をメモリ装置の不良でないメモリ箇所へ向け直す修復モジュールと、
    各メモリモジュールにおけるメモリハブの入力ポートにシステムコントローラの出力ポートをつなぎ、各メモリモジュールにおけるメモリハブの出力ポートにシステムコントローラの入力ポートをつなぐ通信リンクとを備える、コンピュータシステム。
  26. 自己テストモジュールは、メモリ装置にアクセスするためのシーケンサをさらに備え、シーケンサは、自己テストモジュールからのメモリ要求に含まれる、メモリ装置のメモリ箇所をアクセスするためのアドレスを出力するように動作可能である、請求項25に記載のコンピュータシステム。
  27. メモリモジュールは、
    少なくとも1つのメモリ装置に対するメモリ要求を受信するためのリンクインターフェイスと
    メモリ装置に結合され、メモリ要求をメモリ装置につなぐように動作可能なメモリ装置インターフェイスと、
    リンクインターフェイスおよび修復モジュールに結合され、修復モジュールを用いることによって、リンクインターフェイスからのメモリ要求を生成してメモリ装置インターフェイスにつないで、メモリ装置の不良箇所に対するメモリ要求をメモリ装置の不良でない箇所に向け直すように動作可能であるメモリコントローラとをさらに備える、請求項25に記載のコンピュータシステム。
  28. メモリコントローラは、メモリ装置にアクセスするためのシーケンサをさらに備え、シーケンサは、自己テストルーチンからのメモリ要求に含まれる、メモリ装置のメモリ箇所をアクセスするためのアドレスを出力するように動作可能である、請求項27に記載のコンピュータシステム。
  29. メモリ装置インターフェイスは、メモリコントローラから受信されたメモリ要求を受信および記憶して、記憶されたメモリ要求を受信した順で少なくとも1つのメモリ装置に対して転送するように動作可能な先入れ先出しバッファをさらに備える、請求項27に記載のコンピュータシステム。
  30. リンクインターフェイスは、メモリコントローラから受信されたメモリ要求を受信および記憶して、記憶されたメモリ要求を受信した順でメモリコントローラに対して転送するように動作可能な先入れ先出しバッファをさらに備える、請求項27に記載のコンピュータシステム。
  31. メモリ装置の不良メモリ箇所を識別する情報が、自己テストモジュールから修復モジュールへ転送される、請求項25に記載のコンピュータシステム。
  32. 自己テストモジュールは、少なくとも1つのメモリアクセス装置に結合され、メモリ装置の不良メモリの箇所は、少なくとも1つのメモリアクセス装置に転送される、請求項25に記載のコンピュータシステム。
  33. 修復モジュールは、メモリ装置の不良メモリの箇所を記憶するエラーマップをさらに備え、修復モジュールは、エラーマップを用いて、メモリ要求がメモリ装置の不良メモリ箇所に対するものかどうかを判断する、請求項25に記載のコンピュータシステム。
  34. 修復モジュールは、エラーマップを用いてメモリ装置の不良メモリ箇所をメモリモジュール上にあるメモリの不良でないメモリ箇所に対して割り当てる再マッピングテーブルをさらに備え、修復モジュールは、再マッピングテーブルを用いて、メモリ装置の不良メモリ箇所に対するメモリ要求をメモリ装置の不良でないメモリ箇所に向け直す、請求項33に記載のコンピュータシステム。
  35. メモリ装置は、ダイナミックランダムアクセスメモリ装置を備える、請求項25に記載のコンピュータシステム。
  36. メモリハブコントローラの入力および出力ポートは、通信リンクに結合された複合入出力ポートを備え、各メモリハブの入力および出力ポートは、通信リンクに結合された複合入出力ポートを備える、請求項25に記載のコンピュータシステム。
  37. 通信リンクは、光学通信リンクであって、メモリハブコントローラの入力および出力ポートは、光学通信リンクに結合された光学入出力ポートを備え、各メモリハブの入出力ポートは、光学通信リンクに結合された各光学入出力ポートを備える、請求項36に記載のコンピュータシステム。
  38. コンピュータシステムであって、
    中央処理装置(CPU)と、
    CPUに結合され、入力ポートおよび出力ポートを有するシステムコントローラと、
    システムコントローラを介してCPUに結合された入力装置と、
    システムコントローラを介してCPUに結合された出力装置と、
    システムコントローラを介してCPUに結合された記憶装置と、
    複数のメモリモジュールとを備え、各メモリモジュールは、
    複数のメモリ装置と、
    メモリハブとを備え、メモリハブは、
    少なくとも1つのメモリ装置に結合され、メモリ装置に対するメモリ要求に応答するメモリコントローラと、
    メモリコントローラに結合された自己テストモジュールであって、少なくとも1つのメモリ装置をテストするための要求に応答し、モリ装置の不良メモリ箇所を識別するようにさらに動作可能な自己テストモジュールと、
    メモリコントローラに結合された修復モジュールであって、メモリ装置の不良メモリ箇所に対するメモリ要求に応答して、当該メモリ要求をメモリ装置の不良でないメモリ箇所へ向け直す修復モジュールと、
    各メモリモジュールにおけるメモリハブの入力ポートにシステムコントローラの出力ポートをつなぎ、各メモリモジュールにおけるメモリハブの出力ポートにシステムコントローラの入力ポートをつなぐ通信リンクとを備える、コンピュータシステム。
  39. メモリコントローラは、メモリ装置にアクセスするためのシーケンサをさらに備え、シーケンサは、自己テストモジュールからのメモリ要求に含まれる、メモリ装置のメモリ箇所をアクセスするためのアドレスを出力するように動作可能である、請求項38に記載のコンピュータシステム。
  40. メモリモジュールは、
    メモリコントローラに結合され、少なくとも1つのメモリ装置に対するメモリ要求を受信するためのリンクインターフェイスと、
    メモリコントローラおよびメモリ装置に結合されたメモリ装置インターフェイスであって、メモリ要求をメモリ装置につなぐように動作可能なメモリ装置インターフェイスとをさらに備える、請求項38に記載のコンピュータシステム。
  41. メモリコントローラは、修復モジュールを用いることによって、メモリ要求を生成してリンクインターフェイスからメモリ装置インターフェイスへつないで、メモリ装置の不良箇所に対するメモリ要求をメモリ装置の不良でない箇所に向け直す、請求項40に記載のコンピュータシステム。
  42. メモリ装置インターフェイスは、メモリコントローラから受信されたメモリ要求を受信および記憶して、記憶されたメモリ要求を受信した順で少なくとも1つのメモリ装置に対して転送するように動作可能な先入れ先出しバッファをさらに備える、請求項40に記載のコンピュータシステム。
  43. リンクインターフェイスは、メモリコントローラから受信されたメモリ要求を受信および記憶して、記憶されたメモリ要求を受信した順でメモリコントローラに対して転送するように動作可能な先入れ先出しバッファをさらに備える、請求項40に記載のコンピュータシステム。
  44. メモリ装置の不良メモリ箇所を識別する情報が、自己テストモジュールから修復モジュールへ転送される、請求項38に記載のコンピュータシステム。
  45. 自己テストモジュールは、少なくとも1つのメモリアクセス装置に結合され、メモリ装置の不良メモリの箇所は、少なくとも1つのメモリアクセス装置に転送される請求項38に記載のコンピュータシステム。
  46. 修復モジュールは、メモリ装置の不良メモリの箇所を記憶するエラーマップをさらに備え、修復モジュールは、エラーマップを用いて、メモリ要求がメモリ装置の不良メモリ箇所に対するものかどうかを判断する、請求項38に記載のコンピュータシステム。
  47. 修復モジュールは、エラーマップを用いてメモリ装置の不良メモリ箇所をメモリモジュール上にあるメモリの不良でないメモリ箇所に対して割り当てる再マッピングテーブルをさらに備え、修復モジュールは、再マッピングテーブルを用いて、メモリ装置の不良メモリ箇所に対するメモリ要求をメモリ装置の不良でないメモリ箇所に向け直す、請求項46に記載のコンピュータシステム。
  48. メモリコントローラは、修復モジュールのエラーマップをさらに備え、エラーマップは、メモリ要求がメモリ装置の不良メモリ箇所に対するものかどうかを判断するように動作可能である、請求項47に記載のコンピュータシステム。
  49. メモリコントローラは、修復モジュールの再マッピングテーブルをさらに備え、再マッピングテーブルは、メモリ装置の不良メモリ箇所に対するメモリ要求をメモリ装置の不良でないメモリ箇所に向け直すように動作可能である、請求項48に記載のコンピュータシステム。
  50. メモリ装置は、ダイナミックランダムアクセスメモリ装置を備える、請求項38に記載のコンピュータシステム。
  51. メモリハブコントローラの入力および出力ポートは、通信リンクに結合された複合入出力ポートを備え、各メモリハブの入力および出力ポートは、通信リンクに結合された複合入出力ポートを備える請求項38に記載のコンピュータシステム。
  52. 通信リンクは、光学通信リンクであって、メモリハブコントローラの入力および出力ポートは、光学通信リンクに結合された光学入出力ポートを備え、各メモリハブの入出力ポートは、光学通信リンクに結合された各光学入出力ポートを備える、請求項51に記載のコンピュータシステム。
  53. メモリハブをそれぞれ有する各複数のメモリモジュール上の複数のメモリ装置をテストおよび修復する方法であって、
    少なくとも1つのメモリモジュールにおけるメモリハブを用いて、自己テストルーチンを生成し、
    生成された自己テストルーチンを用いて、メモリモジュールにおける少なくとも1つのメモリ装置をテストして、当該少なくとも1つのメモリ装置の不良メモリ箇所を識別し、
    メモリ要求をメモリハブにおいて受信して、少なくとも1つのメモリ装置にアクセスし、
    メモリハブにおいて、受信されたメモリ要求が不良メモリ箇所であると識別されたメモリ箇所に向けられているかどうかを判断し、
    受信されたメモリ要求が不良メモリ箇所であると識別されたメモリ箇所に向けられている場合、メモリモジュール上のメモリの不良箇所に対するメモリ要求を向けなおし、
    受信されたメモリ要求が不良メモリ箇所であると識別されなかったメモリ箇所に向けられている場合、当該少なくとも1つのメモリ装置におけるメモリ要求が向けられていた箇所にアクセスする、方法。
  54. メモリ装置の不良メモリ箇所を識別する情報をメモリマップに記憶することをさらに備える、請求項53に記載の方法。
  55. メモリ装置の不良メモリ箇所をメモリ装置の不良でないメモリ箇所に割り当てるエラーマップから再マッピングテーブルを作成することをさらに含み、再マッピングテーブルは、メモリ装置の不良メモリ箇所に向けられたメモリ要求をメモリ装置の不良でないメモリ箇所に向け直すために用いられる、請求項54に記載の方法。
JP2004529260A 2002-08-16 2003-08-05 メモリモジュールの自己テストおよび修復するためのシステムおよび方法 Expired - Fee Related JP4431977B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/222,393 US6754117B2 (en) 2002-08-16 2002-08-16 System and method for self-testing and repair of memory modules
PCT/US2003/024605 WO2004017162A2 (en) 2002-08-16 2003-08-05 System and method for self-testing and repair of memory modules

Publications (2)

Publication Number Publication Date
JP2005535978A true JP2005535978A (ja) 2005-11-24
JP4431977B2 JP4431977B2 (ja) 2010-03-17

Family

ID=31714947

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004529260A Expired - Fee Related JP4431977B2 (ja) 2002-08-16 2003-08-05 メモリモジュールの自己テストおよび修復するためのシステムおよび方法

Country Status (10)

Country Link
US (1) US6754117B2 (ja)
EP (1) EP1535131B1 (ja)
JP (1) JP4431977B2 (ja)
KR (1) KR100848254B1 (ja)
CN (1) CN100578656C (ja)
AT (1) ATE426897T1 (ja)
AU (1) AU2003258104A1 (ja)
DE (1) DE60326854D1 (ja)
TW (1) TWI242780B (ja)
WO (1) WO2004017162A2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015515061A (ja) * 2012-03-30 2015-05-21 インテル・コーポレーション 積層メモリアーキテクチャのためのビルトインセルフテスト
JP2018524648A (ja) * 2015-06-26 2018-08-30 インテル・コーポレーション 埋込みプログラマブルデータチェック機能を備えた不揮発性システムメモリコンピューティングシステムにおける即時再起動

Families Citing this family (108)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5526320A (en) * 1994-12-23 1996-06-11 Micron Technology Inc. Burst EDO memory device
US7010642B2 (en) * 2000-01-05 2006-03-07 Rambus Inc. System featuring a controller device and a memory module that includes an integrated circuit buffer device and a plurality of integrated circuit memory devices
US7028213B2 (en) * 2001-09-28 2006-04-11 Hewlett-Packard Development Company, L.P. Error indication in a raid memory system
US6836438B2 (en) * 2002-01-11 2004-12-28 Macronix International Co., Ltd. Method and apparatus for dynamically hiding a defect in an embedded memory
US7133972B2 (en) 2002-06-07 2006-11-07 Micron Technology, Inc. Memory hub with internal cache and/or memory access prediction
GB2405724B (en) * 2002-06-24 2006-02-08 Samsung Electronics Co Ltd Memory module having a path for transmitting high-speed data and a path for transmitting low-speed data and memory system having the memory module
US7117316B2 (en) 2002-08-05 2006-10-03 Micron Technology, Inc. Memory hub and access method having internal row caching
US7149874B2 (en) * 2002-08-16 2006-12-12 Micron Technology, Inc. Memory hub bypass circuit and method
US7836252B2 (en) 2002-08-29 2010-11-16 Micron Technology, Inc. System and method for optimizing interconnections of memory devices in a multichip module
US6820181B2 (en) * 2002-08-29 2004-11-16 Micron Technology, Inc. Method and system for controlling memory accesses to memory modules having a memory hub architecture
US7102907B2 (en) * 2002-09-09 2006-09-05 Micron Technology, Inc. Wavelength division multiplexed memory module, memory system and method
US7007211B1 (en) * 2002-10-04 2006-02-28 Cisco Technology, Inc. Testing self-repairing memory of a device
US7111213B1 (en) * 2002-12-10 2006-09-19 Altera Corporation Failure isolation and repair techniques for integrated circuits
US6934199B2 (en) * 2002-12-11 2005-08-23 Micron Technology, Inc. Memory device and method having low-power, high write latency mode and high-power, low write latency mode and/or independently selectable write latency
US6961259B2 (en) * 2003-01-23 2005-11-01 Micron Technology, Inc. Apparatus and methods for optically-coupled memory systems
US7184916B2 (en) * 2003-05-20 2007-02-27 Cray Inc. Apparatus and method for testing memory cards
US7320100B2 (en) 2003-05-20 2008-01-15 Cray Inc. Apparatus and method for memory with bit swapping on the fly and testing
US20040243769A1 (en) * 2003-05-30 2004-12-02 Frame David W. Tree based memory structure
US7245145B2 (en) 2003-06-11 2007-07-17 Micron Technology, Inc. Memory module and method having improved signal routing topology
US7120727B2 (en) 2003-06-19 2006-10-10 Micron Technology, Inc. Reconfigurable memory module and method
US7260685B2 (en) 2003-06-20 2007-08-21 Micron Technology, Inc. Memory hub and access method having internal prefetch buffers
US7107415B2 (en) * 2003-06-20 2006-09-12 Micron Technology, Inc. Posted write buffers and methods of posting write requests in memory modules
KR100500454B1 (ko) * 2003-07-28 2005-07-12 삼성전자주식회사 메모리 모듈 테스트 시스템 및 메모리 모듈 평가 시스템
DE10335708B4 (de) * 2003-08-05 2009-02-26 Qimonda Ag Hub-Baustein zum Anschließen von einem oder mehreren Speicherbausteinen
DE10335978B4 (de) * 2003-08-06 2006-02-16 Infineon Technologies Ag Hub-Baustein zum Anschließen von einem oder mehreren Speicherbausteinen
US7210059B2 (en) * 2003-08-19 2007-04-24 Micron Technology, Inc. System and method for on-board diagnostics of memory modules
US7133991B2 (en) * 2003-08-20 2006-11-07 Micron Technology, Inc. Method and system for capturing and bypassing memory transactions in a hub-based memory system
US7310752B2 (en) 2003-09-12 2007-12-18 Micron Technology, Inc. System and method for on-board timing margin testing of memory modules
US7120743B2 (en) 2003-10-20 2006-10-10 Micron Technology, Inc. Arbitration system and method for memory responses in a hub-based memory system
US6996749B1 (en) * 2003-11-13 2006-02-07 Intel Coporation Method and apparatus for providing debug functionality in a buffered memory channel
US20050138302A1 (en) * 2003-12-23 2005-06-23 Intel Corporation (A Delaware Corporation) Method and apparatus for logic analyzer observability of buffered memory module links
US7216196B2 (en) * 2003-12-29 2007-05-08 Micron Technology, Inc. Memory hub and method for memory system performance monitoring
US7330992B2 (en) * 2003-12-29 2008-02-12 Micron Technology, Inc. System and method for read synchronization of memory modules
US7188219B2 (en) * 2004-01-30 2007-03-06 Micron Technology, Inc. Buffer control system and method for a memory system having outstanding read and write request buffers
US7366864B2 (en) 2004-03-08 2008-04-29 Micron Technology, Inc. Memory hub architecture having programmable lane widths
US7082075B2 (en) * 2004-03-18 2006-07-25 Micron Technology, Inc. Memory device and method having banks of different sizes
US7120723B2 (en) * 2004-03-25 2006-10-10 Micron Technology, Inc. System and method for memory hub-based expansion bus
US7590797B2 (en) 2004-04-08 2009-09-15 Micron Technology, Inc. System and method for optimizing interconnections of components in a multichip memory module
US7162567B2 (en) * 2004-05-14 2007-01-09 Micron Technology, Inc. Memory hub and method for memory sequencing
US7222213B2 (en) * 2004-05-17 2007-05-22 Micron Technology, Inc. System and method for communicating the synchronization status of memory modules during initialization of the memory modules
US7310748B2 (en) 2004-06-04 2007-12-18 Micron Technology, Inc. Memory hub tester interface and method for use thereof
US7519788B2 (en) 2004-06-04 2009-04-14 Micron Technology, Inc. System and method for an asynchronous data buffer having buffer write and read pointers
KR100624576B1 (ko) * 2004-06-11 2006-09-19 삼성전자주식회사 허브를 갖는 메모리 모듈을 테스트하는 방법 및 이를수행하기 위한 메모리 모듈의 허브
CN100337285C (zh) * 2004-07-13 2007-09-12 海信集团有限公司 一种对NAND flash存储器进行物理损坏模拟的系统及其方法
DE102004039393B4 (de) * 2004-08-13 2008-04-17 Qimonda Ag Verfahren zum Testen einer Speichervorrichtung und Speichervorrichtung zur Durchführung des Verfahrens
US7392331B2 (en) 2004-08-31 2008-06-24 Micron Technology, Inc. System and method for transmitting data packets in a computer system having a memory hub architecture
DE102004042074A1 (de) * 2004-08-31 2006-03-09 Infineon Technologies Ag Verfahren zum Testen eines Speichers mittels externem Testchip und Vorrichtung zur Durchführung des Verfahrens
KR100565889B1 (ko) * 2004-11-03 2006-03-31 삼성전자주식회사 메모리 테스트 방법, 메모리 모듈의 허브 및 이를 가지는풀리 버퍼드 듀얼인라인 메모리 모듈
KR100557221B1 (ko) * 2004-11-04 2006-03-07 삼성전자주식회사 메모리 모듈에서의 신호 무결성 테스트 방법 및 이를 위한메모리 모듈의 버퍼
US7409623B2 (en) 2004-11-04 2008-08-05 Sigmatel, Inc. System and method of reading non-volatile computer memory
US7523364B2 (en) * 2005-02-09 2009-04-21 International Business Machines Corporation Double DRAM bit steering for multiple error corrections
US7262354B2 (en) * 2005-03-04 2007-08-28 Orred Gregory D Stringed practice device and method
KR100666612B1 (ko) * 2005-05-27 2007-01-09 삼성전자주식회사 리던던시 코드 체크 기능을 가지는 반도체 메모리 장치 및그것을 구비한 메모리 시스템
US7328381B2 (en) * 2005-08-01 2008-02-05 Micron Technology, Inc. Testing system and method for memory modules having a memory hub architecture
US7319340B2 (en) * 2005-08-01 2008-01-15 Micron Technology, Inc. Integrated circuit load board and method having on-board test circuit
US7765424B2 (en) * 2005-08-19 2010-07-27 Micron Technology, Inc. System and method for injecting phase jitter into integrated circuit test signals
US7562271B2 (en) * 2005-09-26 2009-07-14 Rambus Inc. Memory system topologies including a buffer device and an integrated circuit memory device
US7464225B2 (en) * 2005-09-26 2008-12-09 Rambus Inc. Memory module including a plurality of integrated circuit memory devices and a plurality of buffer devices in a matrix topology
US11328764B2 (en) 2005-09-26 2022-05-10 Rambus Inc. Memory system topologies including a memory die stack
US20070118778A1 (en) * 2005-11-10 2007-05-24 Via Telecom Co., Ltd. Method and/or apparatus to detect and handle defects in a memory
US7284169B2 (en) * 2005-12-08 2007-10-16 Micron Technology, Inc. System and method for testing write strobe timing margins in memory devices
US7355387B2 (en) * 2005-12-08 2008-04-08 Micron Technology, Inc. System and method for testing integrated circuit timing margins
US7539912B2 (en) 2005-12-15 2009-05-26 King Tiger Technology, Inc. Method and apparatus for testing a fully buffered memory module
US7478285B2 (en) * 2005-12-30 2009-01-13 Silicon Graphics, Inc. Generation and use of system level defect tables for main memory
US7471538B2 (en) * 2006-03-30 2008-12-30 Micron Technology, Inc. Memory module, system and method of making same
US7277337B1 (en) 2006-09-25 2007-10-02 Kingston Technology Corp. Memory module with a defective memory chip having defective blocks disabled by non-multiplexed address lines to the defective chip
US7856576B2 (en) * 2007-04-25 2010-12-21 Hewlett-Packard Development Company, L.P. Method and system for managing memory transactions for memory repair
US7620861B2 (en) * 2007-05-31 2009-11-17 Kingtiger Technology (Canada) Inc. Method and apparatus for testing integrated circuits by employing test vector patterns that satisfy passband requirements imposed by communication channels
US7945815B2 (en) 2007-08-14 2011-05-17 Dell Products L.P. System and method for managing memory errors in an information handling system
US7694195B2 (en) 2007-08-14 2010-04-06 Dell Products L.P. System and method for using a memory mapping function to map memory defects
US7949913B2 (en) * 2007-08-14 2011-05-24 Dell Products L.P. Method for creating a memory defect map and optimizing performance using the memory defect map
US9373362B2 (en) * 2007-08-14 2016-06-21 Dell Products L.P. System and method for implementing a memory defect map
US7757144B2 (en) * 2007-11-01 2010-07-13 Kingtiger Technology (Canada) Inc. System and method for testing integrated circuit modules comprising a plurality of integrated circuit devices
TW200921691A (en) * 2007-11-14 2009-05-16 Etron Technology Inc Method for controlling a dram
US8090935B2 (en) * 2008-01-24 2012-01-03 Mentor Graphics Corporation Direct register access for host simulation
US9229887B2 (en) * 2008-02-19 2016-01-05 Micron Technology, Inc. Memory device with network on chip methods, apparatus, and systems
US8001434B1 (en) 2008-04-14 2011-08-16 Netlist, Inc. Memory board with self-testing capability
US7848899B2 (en) * 2008-06-09 2010-12-07 Kingtiger Technology (Canada) Inc. Systems and methods for testing integrated circuit devices
US7978721B2 (en) 2008-07-02 2011-07-12 Micron Technology Inc. Multi-serial interface stacked-die memory architecture
US8086913B2 (en) 2008-09-11 2011-12-27 Micron Technology, Inc. Methods, apparatus, and systems to repair memory
US20100169729A1 (en) * 2008-12-30 2010-07-01 Datta Shamanna M Enabling an integrated memory controller to transparently work with defective memory devices
TWI409820B (zh) * 2009-02-18 2013-09-21 King Yuan Electronics Co Ltd Semiconductor Test System with Self - Test for Memory Repair Analysis
EP2502234B1 (en) 2009-11-20 2019-01-09 Rambus Inc. Bit-replacement technique for dram error correction
US8356215B2 (en) * 2010-01-19 2013-01-15 Kingtiger Technology (Canada) Inc. Testing apparatus and method for analyzing a memory module operating within an application system
US9123552B2 (en) 2010-03-30 2015-09-01 Micron Technology, Inc. Apparatuses enabling concurrent communication between an interface die and a plurality of dice stacks, interleaved conductive paths in stacked devices, and methods for forming and operating the same
TWI398656B (zh) * 2010-03-31 2013-06-11 Rdc Semiconductor Co Ltd 用於驗證一中央處理器之裝置及其方法
JP5559616B2 (ja) * 2010-06-17 2014-07-23 ラピスセミコンダクタ株式会社 半導体メモリ装置
US8918686B2 (en) 2010-08-18 2014-12-23 Kingtiger Technology (Canada) Inc. Determining data valid windows in a system and method for testing an integrated circuit device
CN101950263A (zh) * 2010-09-27 2011-01-19 深圳市江波龙电子有限公司 一种存储设备的修复方法、系统及存储设备
CN102610280B (zh) * 2011-01-20 2015-05-27 北京兆易创新科技股份有限公司 修复存储芯片的方法和装置、存储芯片
CN102841832B (zh) * 2011-06-24 2017-05-24 佛山慧捷电子科技有限公司 出错内存条定位方法
US9003256B2 (en) 2011-09-06 2015-04-07 Kingtiger Technology (Canada) Inc. System and method for testing integrated circuits by determining the solid timing window
US8724408B2 (en) 2011-11-29 2014-05-13 Kingtiger Technology (Canada) Inc. Systems and methods for testing and assembling memory modules
US9411678B1 (en) 2012-08-01 2016-08-09 Rambus Inc. DRAM retention monitoring method for dynamic error correction
US9117552B2 (en) 2012-08-28 2015-08-25 Kingtiger Technology(Canada), Inc. Systems and methods for testing memory
WO2014074390A1 (en) 2012-11-06 2014-05-15 Rambus Inc. Memory repair using external tags
TWI497511B (zh) * 2012-11-08 2015-08-21 Ind Tech Res Inst 具嵌入式非揮發性記憶體之晶片及其測試方法
US10042750B2 (en) 2013-03-15 2018-08-07 Micron Technology, Inc. Apparatuses and methods for adaptive control of memory using an adaptive memory controller with a memory management hypervisor
CN104063234B (zh) * 2013-03-19 2017-06-27 华为技术有限公司 一种兼容方法及装置
CN104750535B (zh) * 2013-12-26 2018-08-07 珠海全志科技股份有限公司 NAND Flash仿真控制器及控制调试方法
US10387209B2 (en) * 2015-09-28 2019-08-20 International Business Machines Corporation Dynamic transparent provisioning of resources for application specific resources
US10725933B2 (en) * 2016-12-30 2020-07-28 Intel Corporation Method and apparatus for redirecting memory access commands sent to unusable memory partitions
CN108511029B (zh) * 2017-02-23 2022-04-05 上海复旦微电子集团股份有限公司 一种fpga中双端口sram阵列的内建自测和修复系统及其方法
US10713136B2 (en) * 2017-09-22 2020-07-14 Qualcomm Incorporated Memory repair enablement
US11087857B2 (en) * 2017-11-15 2021-08-10 Texas Instruments Incorporated Enabling high at-speed test coverage of functional memory interface logic by selective usage of test paths
CN113778915B (zh) 2020-06-09 2023-10-10 慧荣科技股份有限公司 生产固态硬盘的方法及计算机可读取存储介质及装置
TWI745997B (zh) * 2020-06-09 2021-11-11 慧榮科技股份有限公司 生產固態硬碟的方法及裝置以及電腦程式產品
CN112397135A (zh) * 2020-11-06 2021-02-23 润昇系统测试(深圳)有限公司 测试及修复装置以及测试及修复方法

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5450578A (en) * 1993-12-23 1995-09-12 Unisys Corporation Method and apparatus for automatically routing around faults within an interconnect system
US5875352A (en) 1995-11-03 1999-02-23 Sun Microsystems, Inc. Method and apparatus for multiple channel direct memory access control
US5818844A (en) 1996-06-06 1998-10-06 Advanced Micro Devices, Inc. Address generation and data path arbitration to and from SRAM to accommodate multiple transmitted packets
US6167486A (en) 1996-11-18 2000-12-26 Nec Electronics, Inc. Parallel access virtual channel memory system with cacheable channels
US7024518B2 (en) 1998-02-13 2006-04-04 Intel Corporation Dual-port buffer-to-memory interface
US6301637B1 (en) 1998-06-08 2001-10-09 Storage Technology Corporation High performance data paths
JP3178423B2 (ja) 1998-07-03 2001-06-18 日本電気株式会社 バーチャルチャネルsdram
US6272609B1 (en) 1998-07-31 2001-08-07 Micron Electronics, Inc. Pipelined memory controller
US6587912B2 (en) 1998-09-30 2003-07-01 Intel Corporation Method and apparatus for implementing multiple memory buses on a memory module
US6434639B1 (en) 1998-11-13 2002-08-13 Intel Corporation System for combining requests associated with one or more memory locations that are collectively associated with a single cache line to furnish a single memory operation
US6463059B1 (en) 1998-12-04 2002-10-08 Koninklijke Philips Electronics N.V. Direct memory access execution engine with indirect addressing of circular queues in addition to direct memory addressing
US6349363B2 (en) 1998-12-08 2002-02-19 Intel Corporation Multi-section cache with different attributes for each section
US6067262A (en) * 1998-12-11 2000-05-23 Lsi Logic Corporation Redundancy analysis for embedded memories with built-in self test and built-in self repair
US6496909B1 (en) 1999-04-06 2002-12-17 Silicon Graphics, Inc. Method for managing concurrent access to virtual memory data structures
US6359858B1 (en) * 1999-06-03 2002-03-19 Fujitsu Network Communications, Inc. Switching redundancy control
US6477592B1 (en) 1999-08-06 2002-11-05 Integrated Memory Logic, Inc. System for I/O interfacing for semiconductor chip utilizing addition of reference element to each data element in first data stream and interpret to recover data elements of second data stream
US6539490B1 (en) 1999-08-30 2003-03-25 Micron Technology, Inc. Clock distribution without clock delay or skew
US6552564B1 (en) 1999-08-30 2003-04-22 Micron Technology, Inc. Technique to reduce reflections and ringing on CMOS interconnections
US6594713B1 (en) 1999-09-10 2003-07-15 Texas Instruments Incorporated Hub interface unit and application unit interfaces for expanded direct memory access processor
US6421744B1 (en) 1999-10-25 2002-07-16 Motorola, Inc. Direct memory access controller and method therefor
JP3546788B2 (ja) 1999-12-20 2004-07-28 日本電気株式会社 メモリ制御回路
JP2002014875A (ja) * 2000-06-30 2002-01-18 Mitsubishi Electric Corp 半導体集積回路、半導体集積回路のメモリリペア方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
US6523093B1 (en) 2000-09-29 2003-02-18 Intel Corporation Prefetch buffer allocation and filtering system
US6523092B1 (en) 2000-09-29 2003-02-18 Intel Corporation Cache line replacement policy enhancement to avoid memory page thrashing
US6631440B2 (en) 2000-11-30 2003-10-07 Hewlett-Packard Development Company Method and apparatus for scheduling memory calibrations based on transactions
US6622227B2 (en) 2000-12-27 2003-09-16 Intel Corporation Method and apparatus for utilizing write buffers in memory control/interface
DE10110469A1 (de) * 2001-03-05 2002-09-26 Infineon Technologies Ag Integrierter Speicher und Verfahren zum Testen und Reparieren desselben
US6904499B2 (en) 2001-03-30 2005-06-07 Intel Corporation Controlling cache memory in external chipset using processor
US6920533B2 (en) 2001-06-27 2005-07-19 Intel Corporation System boot time reduction method
US7941056B2 (en) 2001-08-30 2011-05-10 Micron Technology, Inc. Optical interconnect in high-speed memory systems
US7133972B2 (en) 2002-06-07 2006-11-07 Micron Technology, Inc. Memory hub with internal cache and/or memory access prediction
JP2008000002A (ja) * 2004-09-30 2008-01-10 Sysmex Corp リブロース2リン酸カルボキシラーゼスモールチェーン1A(RBCS−1A)遺伝子及び/又は該遺伝子のmRNAを検出するための核酸増幅用プライマ、及び内部標準として該遺伝子及び/又は該遺伝子のmRNAを用いた検査方法。
JP5025113B2 (ja) * 2005-09-29 2012-09-12 三洋電機株式会社 回路装置
JP2007097002A (ja) * 2005-09-30 2007-04-12 Orion Denki Kk デジタル放送受信装置
JP2008002006A (ja) * 2006-06-21 2008-01-10 Toray Ind Inc 合成繊維の溶融紡糸装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015515061A (ja) * 2012-03-30 2015-05-21 インテル・コーポレーション 積層メモリアーキテクチャのためのビルトインセルフテスト
US9298573B2 (en) 2012-03-30 2016-03-29 Intel Corporation Built-in self-test for stacked memory architecture
JP2018524648A (ja) * 2015-06-26 2018-08-30 インテル・コーポレーション 埋込みプログラマブルデータチェック機能を備えた不揮発性システムメモリコンピューティングシステムにおける即時再起動

Also Published As

Publication number Publication date
CN1703755A (zh) 2005-11-30
JP4431977B2 (ja) 2010-03-17
KR20050061459A (ko) 2005-06-22
EP1535131A2 (en) 2005-06-01
DE60326854D1 (de) 2009-05-07
KR100848254B1 (ko) 2008-07-25
TWI242780B (en) 2005-11-01
ATE426897T1 (de) 2009-04-15
EP1535131A4 (en) 2006-02-22
CN100578656C (zh) 2010-01-06
WO2004017162A3 (en) 2004-05-27
US6754117B2 (en) 2004-06-22
EP1535131B1 (en) 2009-03-25
WO2004017162A2 (en) 2004-02-26
US20040034825A1 (en) 2004-02-19
AU2003258104A1 (en) 2004-03-03
AU2003258104A8 (en) 2004-03-03
TW200414219A (en) 2004-08-01

Similar Documents

Publication Publication Date Title
JP4431977B2 (ja) メモリモジュールの自己テストおよび修復するためのシステムおよび方法
US6052798A (en) System and method for remapping defective memory locations
US5961660A (en) Method and apparatus for optimizing ECC memory performance
US5199033A (en) Solid state memory array using address block bit substitution to compensate for non-functional storage cells
JP5874119B2 (ja) Dramをスタックする方法及び装置
US8892942B2 (en) Rank sparing system and method
US6754858B2 (en) SDRAM address error detection method and apparatus
US5509132A (en) Semiconductor memory device having an SRAM as a cache memory integrated on the same chip and operating method thereof
US5745673A (en) Memory architecture for solid state discs
US6097644A (en) Redundant row topology circuit, and memory device and test system using same
JP3107240B2 (ja) メモリモジュール及びその不良ビットテーブル設定方法
US10754724B2 (en) Memory device for detecting a defective memory chip
US7107493B2 (en) System and method for testing for memory errors in a computer system
KR20010017413A (ko) 파이프 라인상의 고속동작을 구현하는 ecc 회로를 구비하는동기식 반도체 메모리장치 및 이 동기식 반도체 메모리장치의 에러 체크 및 정정방법
US9262284B2 (en) Single channel memory mirror
KR20210041656A (ko) 온-다이 미러링 기능을 갖는 메모리 칩 및 그것을 테스트하는 방법
KR100429095B1 (ko) 집적회로의랜덤액세스메모리및이를테스트하는방법
JP2993099B2 (ja) 二重化メモリ装置
JP2000305858A (ja) 半導体装置及び半導体システム
JPH0296255A (ja) 記憶装置制御方式
JPH02143348A (ja) 情報処理装置
JPH0312757A (ja) メモリカード

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060619

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20070628

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070813

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20070907

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081118

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20090218

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090218

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20090218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090728

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20091023

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091023

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091201

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091209

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130108

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130108

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees