(57)【要約】【課題】  本発明の方法及び装置は、単一コンピュータチップ（100）上の多重プロセッサコア（105〜108）と関連する多重メモリメモリアレーの試験を可能にする。【解決手段】  本発明は、メモリ障害が各メモリ混載アレー（110〜113）の何処に生じているかを示すマップを生成する。試験プロセスが、メモリ混載アレーを修理することができないと判断した場合、メモリ混載アレーは修理不能であることを示す信号を、また欠陥を修理することができると判断した場合、メモリ混載アレーは修理可能であることを示す信号を外部試験装置へ直接与える。障害が見つからなかった場合、メモリ混載アレーは障害を含まないことを示す信号を外部試験装置に与える。これらの状態信号に基づいて、外部試験装置は、どのデータセットを各メモリ混載アレーからロードすべきか、無視すべきかを判断することができ、それによりデバイスに対するメモリ試験時間を減少する。【選択図】          図１
2004233350.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータチップ上にある複数のメモリ混載サイトを試験するための方法であって、
前記コンピュータチップ上にあるデータフロー制御装置において試験プログラムを受取るステップ、
前記コンピュータチップ上の複数のメモリ混載サイトの各々に前記試験プログラムを送るステップ、
コンピュータプロセッサの各々において前記試験プログラムを実行するステップ、前記試験プログラムは、メモリサイトの合格、不合格、または修理を判断し、修理可能なメモリサイトの各々に対して修理ソリューションを生成し、
前記メモリサイトの各々に相当するメモリ状態インジケータを与えるステップ、前記メモリ状態インジケータは、前記メモリサイトの合格、不合格、または修理の状態を示し、
修理の状態を示す前記メモリサイトの各々に対して、メモリサイトに対する修理ソリューションに相当するメモリの第１のブロックを回復するステップ、及び
前記回復された修理ソリューションの各々を試験装置に与えるステップ、
を有することを特徴とする方法。
【請求項２】
複数のメモリ混載サイトの自己試験を同時に行うように動作可能な集積回路であって、
メモリの試験プログラムを実行するために同時に動作可能な複数の混載プロセッサ、
複数のメモリ混載サイト、それらの各々は、前記コンサイプロセッサの１つに対応し、
前記メモリ混載サイトの各々に接続され、外部試験装置からメモリ試験プログラムを受取り、前記メモリ試験プログラムをメモリ混載サイトの各々に与えるように動作可能なデータフロー制御装置、
複数のプロセッサ状態インジケータ、それらの各々は、メモリ混載サイトの１つに対応し、前記プロセッサ状態インジケータの各々は、前記メモリ試験プログラムの一部を実行した結果に基づいて対応するメモリ混載サイトの合格、不合格、または修理の状態を与えるように動作可能であり、
前記データフロー制御装置は、修理の状態を示すメモリ混載サイトの各々からメモリ試験プログラムによって生成される修理ソリューションを回復するように動作可能であることを特徴とする集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
マルチプロセッサコアを有するデバイス上のメモリ混載用のプロセッサベースの試験方法及び装置に関する。
本願は、２００３年１月３１日の出願日を有する「マルチプロセッサコアを有するデバイス上のメモリ混載のためのプロセッサベースの試験方法］である仮特許出願番号60/443,943の優先権を主張し、レファレンスによって本願の明細書に組み込まれる。
【背景技術】
【０００２】
集積回路産業界は、集積回路上の素子のサイズを減少し、単一チップ上に集積されることができるデバイスの数を増加させるという要望を何時も受けている。これらの市場の力は、ムーアの法則(Moore's Law)として産業界に知られているものと結び付けて考えられている。ムーアの法則は、集積回路上に製造されるトランジスタの数は１８年から２０年ごとにほぼ倍になることを示唆している。ムーアの法則は、単に経験的及び歴史的データに基づいているけれども、集積回路産業界における傾向の信頼できる指標であることが証明されている。
【０００３】
これらの市場の力は、システムオンチップ(a System on a Chip: “SoC”)として知られているものを発展するために産業界に多くのものを導いている。システムオンチップにおいては、1つのチップが全システムの機能を達成することができるように、マルチプロセッサ、メモリ回路、レジスタ及び他の素子が単一のコンピュータチップ上に集積されている。ディジタル信号処理(Digital Signal Processing: "DSP")チップは、一般に単一チップ上にマルチプロセッサを有し、いろいろな数学上の集中的な機能を同時に行なう。この分野において従来知られているように、メモリキャッシュは、チップ上に各プロセッサを伴っている。このメモリキャッシュは、チップ外にあるメモリ位置からデータを取り出すのに必要な時間を減少することによって、プロセッサが最大効率で動作するようにする。プロセッサと関連したメモリキャッシュは、一般に、スタティック・ランダム・アクセス・メモリ(“SRAM”)デバイスのアレーである。
【０００４】
メモリデバイスは非常に小さな形状を利用するので、これらのデバイスの製造に関連する１つの問題は、それらが粒子、リソグラフのミスアライメント（不整合）、スクラッチ（研磨傷）及びその他の製造エラーからの損傷を容易に受け易いことである。これらの問題を解決するために、メモリアレーは、しばしば、障害のあるロー又はカラムを置換するために活性化することができる冗長なロー及びカラムと共に作られている。製造プロセス中に、メモリアレーは、一般に試験され、デバイスがパッケージされ、輸送される前に、冗長なロー及びカラムが活性化される。メモリアレーを修理することができないことが決まったら、そのデバイスは、費用と時間を浪費するバックエンドプロセス（すなわち、パッケージング）が行なわれる前に、廃棄される。
【０００５】
単一コンピュータプロセッサと関連するキャッシュにおけるメモリアレーを試験し、修理する方法が特許文献１に記載されており、レファレンスによってここに取り込まれる。
単一コンピュータチップ上のプロセッサコアと関連したメモリに対して試験をする時間を減少するために、この出願において開示されたプロセスは、チップ上のプロセッサで実行するために設計されたコンピュータプログラムをロードする。このプログラムはメモリキャッシュを試験し、メモリアレーの冗長なロー及びカラムの１つ以上を活性化するための修理ソリューションを生成する。この修理ソリューションが生成された後、レーザで溶かす方法、或いは電気で溶かす方法が修理ソリューションを実現することができるように、コンピュータチップからオフロード（アンロード）される。
【０００６】
【特許文献１】２００２年４月３０日に出願された米国特許出願番号10/136,818の"Processor-Based System and Method for Testing Embedded Memory"
【発明の開示】
【発明が解決しようとする課題】
【０００７】
この方法は、単一のコア（すなわち、プロセッサ）チップに対してうまく動作するけれども、多重（マルチプル）コアチップ上でのその実行は、非常に複雑になる。その結果として、単一チップ上のマルチコンピュータプロセッサと関連するメモリアレーを試験するための方法および装置に対する必要性がある。
【課題を解決するための手段】
【０００８】
複数のプロセッサコアを有するコンピュータチップにおいてメモリ混載アレーを試験するための方法および装置が提供される。この分野で知られた原理に従って、ビルトインプロセッサがメモリ混載アレーを試験するために利用され、そのメモリアレーに対するメモリ修理ソリューション解決法を生成する。本発明の方法および装置によって、多重プロセッサコアと関連するマルチメモリ混載アレーが単一コンピュータチップ上で同時に試験されるようにすることができる。
【０００９】
１つの特徴によれば、本発明の方法および装置は、ディスエーブルされる必要のあるメモリ混載アレー内にあるロー及びカラムを識別し、且つ作動化されるべきメモリ混載アレーにおける冗長なロー及びカラムを識別する。
【００１０】
他の特徴によれば、本発明の方法および装置は、メモリ障害の各々がメモリ混載アレーの何処に生じているかを示すマップを生成する。もし、試験プロセスがメモリ混載アレーを修理することができないと判断したならば、メモリ混載アレーが修理することができないことを示す信号が外部試験装置に与えられる。同様に、もし、試験プロセスが、メモリ混載アレーにおける障害は修理可能であると判断したならば、メモリ混載アレーは修理可能であることを示す信号が外部の試験装置に与えられる。最後に、メモリ混載アレーに障害が見つからなかったら、メモリ混載アレーは障害を含まないことを示す信号が外部試験装置に与えられる。
【００１１】
これらの状態信号に基づいて、外部の試験装置は、データのどの組（すなわち、修理データおよび/又は障害マップデータ）をメモリ混載デバイスからオフロードするか、及びデータのどの組を無視するかを判断することができ、それにより、デバイスに対するメモリ試験時間を減少する。
【００１２】
本発明の方法および装置の他の特徴は、メモリ混載アレーの各々への入力および出力データの流れ（フロー）を制御するデータフロー制御装置である。この装置は、試験プログラムをメモリ混載アレーに同時に送り、それにより、多重メモリ混載アレーの同時試験を可能にする。
【００１３】
本発明の方法および装置の更に他の特徴は、メモリ混載アレー内の何処にメモリ障害があるかを示すためのショートハンドノーテーション(shorthand notation）である。このショートハンドノーテーションを用いることによって、メモリ障害のマップをオフロードするのに必要な時間が大幅に減少される。これらの特徴は、多くの他の特徴と同様に、以下の発明を実施するための最良の形態で更に詳細に説明される。
【発明を実施するための最良の形態】
【００１４】
図１は、本発明の方法および装置と共に使用するのに適したコンピュータチップのブロック図を示す。図１において、コンピュータチップ１００は、４つの分離したプロセッサ１０５、１０６、１０７、１０８からなっている。これらのプロセッサの各々は、メモリ混載キャッシュ１１０、１１１、１１２、１１３と関連している。また、図１にはデータフロー制御装置１１５が示されている。このデータフロー制御装置１１５は、外部試験装置から情報を受取り、その情報をメモリ混載キャッシュ１１０、１１１、１１２、１１３の各々へ与える。これを行うために、データフロー制御装置１１５は、データバス１２０を通してメモリ混載キャッシュ１１０、１１１、１１２、１１３の各々に接続されている。また、図１には、４つのプロセッサ状態インジケータ１２５、１２６、１２７、１２８が示されている。
【００１５】
１つの実施例によると、プロセッサ状態インジケータの各々は、各々の対応するプロセッサと関連するメモリ混載キャッシュの合格、不合格、又は修理の状態を示す２ビット信号ラインを有する。プロセッサ状態インジケータ１２５、１２６、１２７、１２８は、外部試験装置によって直接アクセスすることができるボンドパッドに直接設けられる。例えば、ブロードカスト信号ライン１３０、読取り/書込み信号ライン１３５、アドレスラインまたはアドレスバス１４０、データバス１４５、及びチップから生じるストローブ信号１５０を含むいろいろな信号がデータフロー制御装置１１５に与えられ、それによって受信される。これらの信号ラインの各々は、データフロー制御装置１１５を介してコンピュータチップへのデータの入力及び出力を制御するために用いることができる。
【００１６】
前述したように、関連したメモリキャッシュの試験を行うために、メモリ混載キャッシュと関連したプロセッサを利用するのが望ましい。図１に示されたチップ１００のように多重プロセッサコアを有するコンピュータチップに対して、単一チップ上の多重プロセッサコアの存在は試験プロセスを複雑にする。特に、これらのマルチプロセッサコア１０５、１０６、１０７、１０８の各々が同時にメモリ試験を行なうならば、外部の試験装置への試験結果や修理ソリューションの信号が入力/出力エラー及びバス衝突を生じる。これらの問題を軽減するために、データフロー制御装置１１５がコンピュータチップ１００上に組込まれ、マルチプロセッサコア１０５、１０６、１０７、１０８へのデータの入出力を制御する。１つの実施例によれば、データフロー制御装置１１５は、例えば、外部の試験装置のようなホストプロセッサが多重プロセッサコア１０５、１０６、１０７、１０８と通信をすることができるスレーブサイド周辺機器であるホストポートインタフェース（ＨＰＩ）を有する。
【００１７】
試験プログラムがプロセッサチップへロードされるプロセスは以下に説明される。先ず、外部試験装置がデータフロー制御装置１１５と直接通信することができるように、外部試験装置はコンピュータチップのボンドパッドにインタフェースされる。次に、外部試験装置は、読取り−書込み信号ライン１３５に適した読取り−書込み信号及びアドレスライン/バス１４０に適したアドレス情報と共に、試験プログラムをデータバス１４５を通してデータフロー制御装置１１５に提供する。更に、外部試験装置は、情報が各々のメモリ混載キャッシュ１１０、１１１、１１２、１１３のメモリロケーションに直接、同時にロードされるように、ブロードキャスト信号をブロードキャストライン１３０へ与える。
【００１８】
この試験プログラムは、一般にメモリ混載キャッシュに対応するプロセッサ上で実行するように設計されたアッセンブリ言語プログラムを有する。試験プログラムがメモリ混載キャッシュ１１０、１１１、１１２、１１３にロードされた後、対応するプロセッサ１０５、１０６、１０７、１０８は、対応するメモリ混載キャッシュに障害があるか否かを判断するために試験プログラムを実行する。この試験プログラムの結果は、プロセッサ状態インジケータ１２５、１２６、１２７、１２８を介して外部試験装置へ直接与えられる。
【００１９】
前述したように、このプロセッサ状態インジケータ１２５、１２６、１２７、１２８は、メモリ混載デバイスの各々の合格、不合格、または修理の状態を示す２ビット信号ラインを有する。１つの実施例によれば、この試験プログラムは、障害のあるメモリ混載デバイスを修理するための修理ソリューションを発生することもできる。この修理ソリューションは、メモリ混載キャッシュのどのローおよびカラムがディスエーブルされる必要があるのか、及びメモリ混載キャッシュのどの冗長なローおよびカラムが活性化される必要があるのかを表示する。１つの実施例によれば、修理ソリューションは、以下のフォーマットを利用する：ローの修理（修理可能なローの値、またはローの修理が必要ないならば、−１のようなあるセンチネル（監視文字）の値）；カラムの修理（修理可能なカラムの値、またはカラムの修理が必要ないならば、−１のようなあるセンチネルの値）。
【００２０】
修理ソリューションに加えて、試験プログラムは、メモリ混載キャッシュにおける障害位置のマップを生成することもできる。これら２つの情報アイテムは、それらが適当な時間に試験装置にオフロードされるように、メモリ混載キャッシュにストアされる。メモリ混載キャッシュの試験が完了した後、外部試験装置はプロセッサ状態インジケータ１２５、１２６、１２７、１２８を使用して、どのメモリキャッシュがオフロードされる必要がある修理ソリューションを有するかを判断する。例えば、プロセッサ１（１０５）が修理するには多すぎる障害を有していると判断されるならば、外部試験装置は、修理ソリューションをオフロードしないし、障害メモリのマップをオフロードしない。何故ならば、このプロセッサ／メモリ混載キャッシュの組み合わせは修理可能でないからである。他方、プロセッサ２（１０６）は、それが関連するメモリキャッシュにおける修理可能な障害を含んでいることを示すことができる。従って、外部試験装置は、そのプロセッサ／メモリ混載キャッシュのための修理ソリューション及び不合格情報のマップをオフロードする。
【００２１】
最後に、プロセッサ３（１０７）は、メモリ障害は発見されず、メモリ障害の位置の修理ソリューション及びマップは必要でなかったことを示すことができた。どのプロセッサがオフロードされる必要のある修理または障害情報を有するかを判断した後に、外部試験装置は、データフロー制御装置１１５にメモリ混載キャッシュ１１０、１１１、１１２、１１３の１つ以上から適切なデータセットを回復するように指令する。チップ１００からオフロードされる必要がある情報量を制限することによって、試験時間は大幅に減少される。
【００２２】
試験プロセス中にコンピュータチップ１００からオフロードされなければならない情報量を更に減少するために、障害がメモリアレー内の何処に発生しているかを示すために、速記記号法を用いることができる。１つの実施例によると、ショートハンド・ノーテーションは、メモリデバイス上のいろいろな障害位置のビットレベルのマップに相当する。本発明の方法及び装置と共に使用するのに適したショートハンドの１例が図２に示されている。
【００２３】
図２において、複数のメモリブロック２０２を有するメモリアレー２０２、２０４、２０６、２０８、２１０、２１２、２１４、２１６が示されている。また、図２には、冗長なロー２２０及び冗長なカラム２２５のセットが示されている。冗長なロー２２０及び冗長なカラム２２５は、図２のメモリアレーの主な部分の外側に配置されているように示されているけれども、他の実施例は、本発明の方法及び装置と共に利用されることができる。更に詳細には、冗長なロー２２０及び冗長なカラム２２５は、メモリブロック２０２〜２１６の各々に隣接して配置することができる。
【００２４】
第１のメモリブロック２０２について、複数のロー及び複数のワード（すなわち、１６ビットの情報のグループ）を示すグリッド（網目部分）が図示されている。メモリ障害を有するワードに相当する５つの位置にはＸが示されている。特に、メモリブロック１（２０２）の第１のローはメモリ障害を含む３つのワード（ワード２、ワード３及びワード７）を有している。更に、第５ローの第４ワード及び第７ローの第５ワードは、これらのワードにおける障害に相当するＸによってマークされている。これらのメモリ障害を表わすためのショートハンド・ノーテーションが図２の下半分に示されている。
【００２５】
メモリアレー２００のブロック１（２０２）に示されたメモリ障害を説明するために用いられるショートハンド・ノーテーションは、アレー２５０〜２７２に示されている。これらのアレーは、３つのサブグループＩＤｓ２５０、２６０、２７０からなっており、各サブグループＩＤは、メモリ障害を含むメモリブロック２０２のローに相当する。サブグループＩＤにおける各ビットは、メモリブロック２０２のワードに相当する。例えば、サブグループＩＤ１（２５０）において、第２、第３及び第７ビットは活性化されている。これらのビットは、メモリブロック２０２の第１ローの第２、第３及び第７ワードの障害に相当する。
【００２６】
障害を含むサブグループＩＤの各ワードに対して、その不合格ワードにおける全てのビットを示すサブグループも設けられる。例えば、サブグループ２、３及び７（２５２、２５４、及び２５６）は、サブグループＩＤ１（２５０）から第２、第３及び第７ワードに含まれる不合格及び合格ビットの各々を示している。サブグループ２５２、２５４及び２５６の各々は、第２、第４、第６及び第８ビットに不合格ビットを有する。従って、この技術を用いることによって、メモリアレー２００における各々の不合格ビットの位置が非常に効率的な方法で記録されることができる。この技術は、メモリアレー内に各不合格ビットの位置を保存するので、これは、メモリアレーにおける障害が量的に評価されるように追加の故障検査や診断試験（テスト）を提供する。例えば、メモリブロック１（２０２）の第５ローにおける第４ワードに関連する故障は、そのワードの各ビットが不合格であることを示す。
【００２７】
このような障害パターンは、特定のローにおけるメモリセルの全てに影響を与えるスクラッチまたはホトリソグラフのミスアライメントを示す。他方、サブグループＩＤ７（２７０）のサブグループ４に見られる障害パターンは、このワードの第８ビットのみが不合格であることを示し、従って、例えば粒子のような単発的なエラーを示している。
【００２８】
本発明の方法及び装置を具現化することができるプロセスが図３に示されている。このプロセスは、データフロー制御装置で試験プログラムを受信する（３１０）ことによって開始する（３０５）。データフロー制御装置１１５が試験プログラムを受信した後、それは、データフロー制御装置１１５からチップ上のメモリ混載サイト（場所）の各々へ送られる（ブロードカスト）される（３１５）。試験プログラムがメモリ混載サイトへロードされた後、メモリアレーのどのメモリブロックが障害を有し、どのメモリブロックが障害を有していないかを判断するために、プログラムは、先ず、各々のメモリ混載サイト上で“go/no-go”（継続か中止かを決定する）試験を行なう。
【００２９】
この“go/no-go”試験は、修理するには多すぎるメモリ障害を有するデバイスを素早く識別するために用いられることができる。例えば、メモリアレー内の最初の２つのメモリブロックが共に障害を有しているならば、多分、残りのメモリブロックの全てを修理するのに充分な冗長なロー及びカラムがないであろう。従って、全体のメモリアレーは、修理不能としてリスとされる。
【００３０】
他の実施例によると、本発明プロセスと関連するメモリ修理、障害マッピング、およびメモリ試験動作を行うためには、メモリアレーに少なくとも３のエラーのないメモリブロックが必要とされる。もし、メモリアレーの３つの障害のないブロックが利用可能でないなら、メモリ混載サイトは、修理不能としてマークされる。もし、充分な数のメモリブロックが“go/no-go”試験に合格することができなかったと判断されたら、そのメモリアレーと関連するプロセッサは、プロセッサ状態インジケータ上にメモリの不合格表示を行なう（３３０）。しかし、もし、充分な数のメモリブロックにエラーのないことが判ったなら、メモリアレーの試験を続行する。
【００３１】
試験プログラムを実行するために充分な数のメモリアレーが利用可能であると判断された後、試験プログラムは、各々のメモリ混載サイト上で完全な試験を行なう（３３５）。もし、全体のメモリ混載サイトを完全に試験した後に、メモリサイトは修理を必要としないと判断されたなら、関連プロセッサは、合格メモリ混載アレーに相当するメモリの合格インジケータ信号を出す（３４５）。
【００３２】
他方、メモリ混載サイトが修理を必要とすると判断されたなら、試験プログラムは、メモリサイトのための修理ソリューションを生成する（３５０）。特定のメモリ混載サイトのための修理ソリューションは、メモリアレーのあるローまたはカラムを不活性化し、及びメモリアレーのある冗長なローまたはカラムを活性化する命令を有している。従って、修理ソリューションは、一般に、不活性化または活性化されるこれらのロー及びカラムの一覧表（リスティング）である。修理ソリューションを生成した後、プログラムは、メモリ混載アレーの不合格メモリロケーションのマップも生成する（３５５）。
【００３３】
１つの実施例によると、このマップは、図２に示され、説明されたショートハンド・ノーテーションを使用する。修理ソリューション及びメモリロケーションの不合格のマップが生成された後、この情報は、メモリアレーからデータフロー制御装置を介してオフロードされる（３６０）。また、プロセッサは、修理される必要があるメモリアレーに相当するメモリ修理インジケータ信号を与える。このメモリアレーインジケータ信号は、メモリサイトが修理を必要とすることが明らかであったら直ちに与えるか、或いは修理ソリューション及び不合格メモリロケーションのマップが生成された後に与えることができる。
【００３４】
修理ソリューション及び不合格メモリロケーションのマップが生成されるプロセスを図４に示す。このプロセスは、先ず、障害のないメモリ混載サイトにおいて３つのメモリブロックを識別する（４１０）ことによって開始する（４０５）。この後、プログラムは、メモリサイトの残りにあるメモリ障害のロケーションに基づいて修理ソリューションを生成する（４１５）。その後、この修理ソリューションは、障害のないものとして識別された第１のメモリブロックにストアされる（４２０）。
【００３５】
メモリアレー内にある不合格メモリサイトの位置のショートハンド・ノーテーションを生成するために、プログラムは、各修理可能なメモリブロックに対して以下のステップを行なう（４２５）。先ず、修理可能なメモリブロックがメモリ障害のないものとして識別された第３のメモリブロックにコピーされる（４３０）。その後、修理可能なメモリブロックのこの“イメージ”は、特定のメモリ障害のロケーションに対するショートハンド・ノーテーションを生成するために用いられる。
【００３６】
修理可能なメモリブロックにおける各々のローに対して、以下のステップが行なわれる。先ず、新しいローのタグがメモリ障害をもたないものとして識別された第２のメモリブロックにおいて開始される（４４０）。次に、ワードが第３のメモリサイト（別名“イメージ”）において現在のローから読取られる（４４５）。もし、ワード内に障害がないならば（４５０）、プロセスはローにおける次のワードへ進む（４５５）。しかし、障害がワードにおいて検出されるならば、第２のメモリブロックにおけるメモリ障害のロケーションに相当するサブグループＩＤにおけるビットが活性化される（４６０）。
【００３７】
この後、プロセスは、ローにおける次のワードへ進む（４５５）。プロセスがローにおける最後のワードに達すると（４６５）、プロセスは、いま処理されたローに障害が見つかったかどうかを判断する（４７０）。もし、障害が現在のローにおいて見つかったならば、プロセスは、図４（Ａ）に示された動作へ進む（４７５）。障害が現在のローにおいて見つからなかったならば、現在のローのタグは、第２のメモリブロックから除去され（４８０）、プロセスは、メモリブロックの次のローへ進む（４８５）。
【００３８】
もし、障害がそのローにおいて見つかったならば、プロセスは、図４（Ａ）に示されたステップを開始する。このプロセスは、サブグループＩＤからビットを読取ることによって始まる（４８７）。もし、ビットがメモリ障害を示すならば（４８９）、第３のブロック（すなわち、“イメージ”）から対応するワードが回復される（４９１）。この後、回復されたワードは、第２のメモリブロックへ書き込まれる（４９３）。しかし、ビットがメモリ障害を示さないならば（４８９）、これらのステップ（４９１、４９３）は、バイパスされる。この後、プロセスは、サブグループＩＤの次のビットへ進む（４９５）。サブグループＩＤの最後のビットに達すると（４９７）、プロセスは、図４に示されたステップ（４８５）へ戻る。
【００３９】
以上の記載に関連して、以下の各項を開示する。
（１）コンピュータチップ上にある複数のメモリ混載サイトを試験するための方法であって、
前記コンピュータチップ上にあるデータフロー制御装置において試験プログラムを受取るステップ、
前記コンピュータチップ上の複数のメモリ混載サイトの各々に前記試験プログラムを送るステップ、
コンピュータプロセッサの各々において前記試験プログラムを実行するステップ、前記試験プログラムは、メモリサイトの合格、不合格、または修理を判断し、修理可能なメモリサイトの各々に対して修理ソリューションを生成し、
前記メモリサイトの各々に相当するメモリ状態インジケータを与えるステップ、前記メモリ状態インジケータは、前記メモリサイトの合格、不合格、または修理の状態を示し、
修理の状態を示す前記メモリサイトの各々に対して、メモリサイトに対する修理ソリューションに相当するメモリの第１のブロックを回復するステップ、及び
前記回復された修理ソリューションの各々を試験装置に与えるステップ、
を有することを特徴とする方法。
【００４０】
（２）前記試験プログラムを実行するステップは、更に、不合格または修理の状態を示すメモリサイトの各々に対して不合格メモリロケーションのマップを生成するステップを有し、
前記方法は、更に、修理または不合格の状態を示すメモリサイトの各々に対して、不合格メモリロケーションの前記マップに相当するメモリの第２のブロックを回復するステプ、及び、
不合格メモリロケーションの回復したマップの各々に試験するための外部デバイスに与えるステップ、
を有することを特徴とする前記（１）に記載の方法。
【００４１】
（３）前記試験プログラムを実行する方法は、
前記コンピュータプロセッサの各々において前記試験プログラムの第１の部分を実行するステップ、前記試験プログラムの第１の部分は、対応するメモリ混載サイトにおける前記メモリブロックの各々上で“go/no-go”試験を実行し、
もし、少なくとも３つのメモリブロックがメモリ混載サイトにおける“go/no-go”試験に合格したことが判ったなら、対応するメモリサイトにおいて以下のステップを実行するステップ、
対応するコンピュータプロセッサにおいて前記試験プログラムの第２の部分を実行するステップ、前記試験プログラムの第２の部分は、対応するメモリサイトの合格、不合格または修理の状態を判断し、
もし、前記メモリサイトが修理の状態を示すなら、対応するコンピュータプロセッサにおいて試験プログラムの第３の部分を実行するステップ、試験プログラムの第３の部分は、対応するメモリ混載サイトに対して修理ソリューションを生成し、且つ前記修理ソリューションを合格メモリの第１ブロックにストアし、
もし、前記メモリサイトが修理または不合格の状態を示すなら、対応するコンピュータプロセッサにおいて前記試験プログラムの第４の部分を実行するステップ、前記試験プログラムの第４の部分は、前記合格メモリの第３のブロックを利用して、不合格メモリのロケーションのマップを生成し、前記マップを合格メモリの第２のブロックにストアすることを特徴とする前記（２）に記載の方法。
【００４２】
（４）前記“go/no-go”試験が、もし、対応するメモリ混載サイトにおける前記最初の２つのメモリブロックが障害を含むなら、対応するメモリ混載サイトに対して不合格の状態を示すステップを有することを特徴とする前記（３）に記載の方法。
【００４３】
（５）更に、修理の状態を示すメモリサイトの各々に対して、ある冗長なメモリセルを活性化し、障害のあるメモリセルを非活性化するステップによって、対応する修理ソリューションを実現するステップを有することを特徴とする前記（１）に記載の方法。
【００４４】
（６）メモリセルを活性化及び非活性化するステップは、フューズプロセスを利用することを特徴とする前記５に記載の方法。
【００４５】
（７）複数のメモリ混載サイトの自己試験を同時に行うように動作可能な集積回路であって、
メモリの試験プログラムを実行するために同時に動作可能な複数の混載（組込み）プロセッサ、
複数のメモリ混載サイト、それらの各々は、前記コンサイプロセッサの１つに対応し、
前記メモリ混載サイトの各々に接続され、外部試験装置からメモリ試験プログラムを受取り、前記メモリ試験プログラムをメモリ混載サイトの各々に与えるように動作可能なデータフロー制御装置、
複数のプロセッサ状態インジケータ、それらの各々は、メモリ混載サイトの１つに対応し、前記プロセッサ状態インジケータの各々は、前記メモリ試験プログラムの一部を実行した結果に基づいて対応するメモリ混載サイトの合格、不合格、または修理の状態を与えるように動作可能であり、
前記データフロー制御装置は、修理の状態を示すメモリ混載サイトの各々からメモリ試験プログラムによって生成される修理ソリューションを回復するように動作可能であることを特徴とする集積回路。
【００４６】
（８）前記データフロー制御装置は、更に、修理または不合格の状態を示すメモリ混載サイトの各々からメモリ試験プログラムによって生成される不合格メモリロケーションのマップを回復するように動作することを特徴とする前記（７）に記載の集積回路。
【００４７】
（９）前記データフロー制御装置は、更に、前記外部の試験装置が前記混載プロセッサの各々と通信するのを可能にするホストポートインタフェースを有することを特徴とする前記（７）に記載の集積回路。
【００４８】
（10）前記データフロー制御装置は、更に、メモリ混載サイトから外部試験装置へのデータの転送を同期するためのストローブ発生器及びストロー部出力を有することを特徴とする前記（７）に記載の集積回路。
【００４９】
（11）本発明の方法及び装置は、単一コンピュータチップ（100）上の多重プロセッサコア（105〜108）と関連する多重メモリ混載アレーの試験を可能にする。一つの特徴によると、本発明の方法及び装置は、ディエーブルされる必要のあるメモリ混載アレー（110〜113）の各々内のあるロー及びカラムを識別し、また、活性化されるべきメモリ混載アレーにおけるある冗長なロー及びカラムを識別する。本発明の他の特徴によると、本発明の方法及び装置は、メモリ障害の各々が各メモリ混載アレー（110〜113）の何処に生じているかを示すマップを生成する。試験プロセスが、メモリ混載アレーを修理することができないと判断した場合、メモリ混載アレーは修理不能であることを示す信号を外部試験装置へ直接与える。同様に、試験プロセスが、メモリ混載アレーにおける障害を修理することができると判断した場合、メモリ混載アレーは修理可能であることを示す信号を外部試験装置へ直接与える。最後に、メモリ混載アレーに障害が見つからなかった場合、メモリ混載アレーは障害を含まないことを示す信号を外部試験装置に与える。これらの状態信号に基づいて、外部試験装置は、どのデータセット（すなわち、修理データ及び/または障害データマップ）を各メモリ混載アレーからロードすべきか、及びどのデータセットを無視すべきかを判断することができ、それによりデバイスに対するメモリ試験時間を減少する。本発明の方法及び装置の他の特徴は、メモリ混載アレーの各々への、入力及び出力データの流れを制御するデータフロー制御装置である。この装置は、試験プログラムを同時にメモリ混載アレーの各々へ送り、それにより多重メモリ混載アレーの同時試験を可能にする。更に、本発明の方法及び装置の他の特徴は、メモリ障害がメモリ混載アレー内の何処に発生しているかを示すためのショートハンド・ノーテーションである。
【図面の簡単な説明】
【００５０】
【図１】本願発明の方法及び装置の１つの特徴を有し、使用するのに適したマルチコアコンピュータチップを表すブロック図である。
【図２】メモリアレーを表すブロック図及びメモリアレー内にメモリ障害のロケーションを示すためのショートハンド・ノーテーションである。
【図３】マルチプロセッサコアに関連したメモリ混載アレーを試験するための代表的なプロセスを示すプロセスフロー図である。
【図４】メモリ混載内のメモリ障害のマップが生成される代表的なプロセスを示すプロセスフロー図である。
【図４（Ａ）】メモリ混載内のメモリ障害のマップが生成される代表的なプロセスの一つの特徴を示すプロセスフロー図である。
【図１】
2004233350.tif 000003
【図２】
2004233350.tif 000004
【図３】
2004233350.tif 000005
【図４】
2004233350.tif 000006
【図４（Ａ）】
2004233350.tif 000007