(57)【要約】【課題】チップ中の欠陥を検出し報告するためのシステムを提供すること。【解決手段】本発明によれば、チップ中の１組の機能チップレットはそれぞれ、エラー状態ステージング・システムおよびトラップ状態制御システムを含む。エラー状態ステージング・システムは、１組のエラー状態を検出するエラー状態組合せロジックと、その１組のエラー状態に関連するデータを記憶する１組のエラー状態レジスタとを含む。この１組のエラー状態レジスタ中のデータは、出力マルチプレクサに伝えられ、この出力マルチプレクサは、トラップ状態制御システムから出力されるトラップ信号によって制御される。そのデータを含むエラー状態信号が出力マルチプレクサから出力され、動作チップレットがこの信号を受け取る。動作チップレットはまた、各機能チップレットに属するクロック・コントローラからクロック信号も受け取る。エラー状態信号およびクロック信号に基づいて、動作チップレットは、機能チップレット中の欠陥をホスト・プロセッサに報告する。【選択図】図２
2004280802.tif 000002
【特許請求の範囲】
【請求項１】
機能チップレット中の欠陥を検出するためのチップレット設計であって、
１組のエラー状態を検出するエラー状態組合せロジック、および前記１組のエラー状態に関連するデータを記憶する１組のエラー状態レジスタを有し、前記データが前記１組のエラー状態レジスタから出力マルチプレクサへと出力される、エラー状態ステージング・システム、
前記出力マルチプレクサを制御するトラップ信号を出力するトラップ状態制御システムを備えるチップレット設計。
【請求項２】
前記トラップ状態制御システムが、１組のトラップ状態を定義するトラップ状態組合せロジックを含む、請求項１に記載のチップレット設計。
【請求項３】
前記機能チップレットの前記欠陥をホスト・プロセッサに報告する動作チップレットをさらに備える、請求項１に記載のチップレット設計。
【請求項４】
前記動作チップレットが、
エラー状態信号を前記出力マルチプレクサから受け取るエラー状態マルチプレクサと、
前記機能チップレットに属するクロック信号を受け取るタイム・スタンプ・マルチプレクサと、
前記クロック信号を処理して、前記機能チップレットがハングしているかどうかを判定するタイム・スタンプ監視制御機構と、
前記エラー状態マルチプレクサおよび前記タイム・スタンプ監視制御機構から受け取った信号に基づいて、前記機能チップレットの前記欠陥を前記ホスト・プロセッサに報告する状態機械と
を備える、請求項３に記載のチップレット設計。
【請求項５】
前記動作チップレットが、前記トラップ状態制御システムから前記トラップ信号を受け取る入力マルチプレクサをさらに備え、前記入力マルチプレクサが前記状態機械から出力される状態機械信号によって制御される、請求項４に記載のチップレット設計。
【請求項６】
前記エラー制御マルチプレクサおよび前記タイム・スタンプ・マルチプレクサが、前記状態機械から出力される状態機械信号によって制御される、請求項４に記載のチップレット設計。
【請求項７】
前記タイム・スタンプ監視制御機構が、前記機能チップレットの現在のタイム・スタンプを前記機能チップレットの以前のタイム・スタンプと比較して、前記機能チップレットがハングしているかどうかを判定する、請求項４に記載のチップレット設計。
【請求項８】
機能チップレット中の欠陥をホスト・プロセッサに報告する動作チップレットであって、
前記機能チップレットからエラー状態信号を受け取るエラー状態マルチプレクサと、
前記機能チップレットに属するクロック信号を受け取るタイム・スタンプ・マルチプレクサと、
前記クロック信号を処理して、前記機能チップレットがハングしているかどうかを判定するタイム・スタンプ監視制御機構と、
前記エラー状態マルチプレクサおよび前記タイム・スタンプ監視制御機構から受け取った信号に基づいて、前記チップレットの前記欠陥を前記ホスト・プロセッサに報告する状態機械と
を備える、動作チップレット。
【請求項９】
前記機能チップレットのトラップ状態制御システムからトラップ信号を受け取る入力マルチプレクサをさらに備え、前記入力マルチプレクサが前記状態機械から出力される状態機械信号によって制御される、請求項８に記載の動作チップレット。
【請求項１０】
前記機能チップレットの前記トラップ状態制御システムが、１組のトラップ状態を定義するトラップ状態組合せロジックを含む、請求項９に記載の動作チップレット。
【請求項１１】
前記エラー制御マルチプレクサおよび前記タイム・スタンプ・マルチプレクサが、前記状態機械から出力される状態機械信号によって制御される、請求項８に記載の動作チップレット。
【請求項１２】
前記タイム・スタンプ監視制御機構が前記機能チップレットの現在のタイム・スタンプを前記機能チップレットの以前のタイム・スタンプと比較して、前記機能チップレットがハングしているかどうかを判定する、請求項８に記載の動作チップレット。
【請求項１３】
前記機能チップレットが、
１組のエラー状態を定義するエラー状態組合せロジックと、
前記１組のエラー状態に関連するデータを記憶する１組のエラー状態レジスタと
を備えるエラー状態ステージング・システムを含む、請求項８に記載の動作チップレット。
【請求項１４】
前記機能チップレットが、前記１組のエラー状態レジスタから前記データを受け取る出力マルチプレクサをさらに備える、請求項１３に記載の動作チップレット。
【請求項１５】
欠陥を検出しホスト・プロセッサに報告するシステムを有するチップであって、それぞれが、
１組のエラー状態を検出するエラー状態組合せロジック、および前記１組のエラー状態に関連するデータを記憶する１組のエラー状態レジスタを有し、前記データが前記１組のエラー状態レジスタから出力マルチプレクサへと出力される、エラー状態ステージング・システム、
前記出力マルチプレクサを制御するトラップ信号を出力するトラップ状態制御システム
を含む１組の機能チップレット、ならびに
前記１組の機能チップレットからのエラー状態信号、およびクロック・コントローラからのクロック信号を受け取る動作チップレットを備え、前記動作チップレットは、前記エラー状態信号および前記クロック信号を処理し、前記欠陥を前記ホスト・プロセッサに報告する、チップ。
【請求項１６】
前記トラップ状態制御システムが、前記機能チップレットに対する１組のトラップ状態を定義するトラップ状態組合せロジックを含む、請求項１５に記載のチップ。
【請求項１７】
前記動作チップレットが、
前記エラー状態信号を前記１組の機能チップレットから受け取るエラー状態マルチプレクサと、
クロック・コントローラからの前記クロック信号を受け取るタイム・スタンプ・マルチプレクサと、
前記クロック信号を処理して、前記１組の機能チップレットのどれかがハングしているかどうかを判定するタイム・スタンプ監視制御機構と、
前記エラー状態マルチプレクサおよび前記タイム・スタンプ監視制御機構から受け取った信号に基づいて、前記欠陥を前記ホスト・プロセッサに報告する状態機械と
を含む、請求項１５に記載のチップ。
【請求項１８】
前記動作チップレットが、前記トラップ状態制御システムから前記トラップ信号を受け取る入力マルチプレクサをさらに備え、前記入力マルチプレクサが、前記状態機械から出力される状態機械信号によって制御される、請求項１７に記載のチップ。
【請求項１９】
前記エラー制御マルチプレクサおよび前記タイム・スタンプ・マルチプレクサが、前記状態機械から出力される状態機械信号によって制御される、請求項１７に記載のチップ。
【請求項２０】
前記タイム・スタンプ監視制御機構が、前記１組の機能チップレットの現在のタイム・スタンプを前記１組の機能チップレットの以前のタイム・スタンプと比較して、前記機能チップレットのどれかがハングしているかどうかを判定する、請求項１７に記載のチップ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般にチップ中の欠陥（defect）を検出し報告するためのシステムに関する。詳細には、本発明は、１組の機能チップレット（functionalchiplet）と、エラーまたはハング状態（hang condition）あるいはその両方を検出しホスト・プロセッサに報告するように設計されている動作チップレット（operationalchiplet）とを有するチップを提供する。
【背景技術】
【０００２】
現況技術のコンピュータ・チップの設計では、チップ設計の検証時に見つかる欠陥（例えば、エラーまたはハング状態）は、診断し修復することが極めて難しい。欠陥が見つかった場合、欠陥は、一般に、信号をチップのＩ／Ｏ（input/output入出力）にゲートし、あるいはホスト・プロセッサを介してゲートした後、チップ自体の内部からの信号を解析することによってのみデバッグすることができる。しかし、デバッグ・プロセスでは限られた数のＩ／Ｏしか使用できないので、設計者が欠陥を診断するのに、限られた数の信号しか利用できない。スコープまたはロジック・アナライザをチップに接続し、故障動作を反復して再実行することにより、存在する信号を解析して、（可能なら）欠陥の原因を決定する。チップがハングする場合には、チップの内部ロジックがしばしば応答しなくなり、それによって内部レジスタ値をチェックすることができないようになるので、問題を解析することがかなり難しくなる。
【０００３】
これらの問題は、どのチップも複数の設計者が設計した可能性があることによって複雑なものとなる。例えば、チップは、それぞれが複数の機能を実施する１つまたは複数の「機能」チップレットを含むことがある。その限りで、各機能チップレットは、複数の設計者が設計した可能性がある。欠陥をデバッグするために、各設計者は自分の設計によって生成される信号を調べ、それが欠陥を起こしているかどうかを判定しなければならない。例えば、欠陥をデバッグするために生成された１２本の信号があると想定する。さらに、信号１〜４は設計者「Ａ」の設計に属し、信号５〜８は設計者「Ｂ」の設計に属するが、信号９〜１２は、設計者「Ｃ」の設計に属するものと想定する。一般に、各設計者は、自分の組の信号を個々に解析して、自分の設計が欠陥を起こしているかどうかを判定しなければならない。すなわち、設計者「Ａ」は通常、設計者「Ｂ」の信号を解析できないし、逆もまた同様である。また、設計者達は通常、同時にそれぞれ自分の信号を解析することもできない。したがって、欠陥のデバッギングは、利用可能な情報量が限られていることによって妨げられるだけでなく、設計者達が揃えられるかによっても妨げられることがある。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
前述のことを考慮すると、チップ中の欠陥を検出し報告するためのシステムが必要となっている。具体的には、チップ内の各機能チップレットが、欠陥を効率的に検出できるようにする設計を含む必要がある。さらに、チップが、機能チップレットと情報のやりとりをする動作チップレットを含む必要がある。さらにまた、動作チップレットが、信号を解析し、機能チップレット中に欠陥があればホスト・プロセッサに報告する必要がある。
【課題を解決するための手段】
【０００５】
一般的に、本発明は、チップ中の欠陥を検出し報告するためのシステムを提供する。具体的には、本発明によれば、チップ中の各機能チップレットは、エラー状態ステージング・システム（error condition staging system）およびトラップ状態制御システム（trap condition controlsystem）を含む。このエラー状態ステージング・システムは、１組のエラー状態を検出するエラー状態組合せロジックと、その１組のエラー状態に関連するデータを記憶する１組のエラー状態レジスタを含む。この１組のエラー状態レジスタ中のデータは、出力マルチプレクサに伝えられ、この出力マルチプレクサは、トラップ状態制御システムから出力されるトラップ信号によって制御される。そのデータを含むエラー状態信号が出力マルチプレクサから出力され、チップ上の動作チップレットがこの信号を受け取る。動作チップレットはまた、各機能チップレットに属するクロック・コントローラからクロック信号を受け取る。エラー状態信号およびクロック信号に基づいて、動作チップレットは、機能チップレット中の欠陥（例えば、エラー状態またはハング状態あるいはその両方）をホスト・プロセッサに報告する。
【０００６】
本発明の第１の態様によれば、機能チップレット中の欠陥を検出するためのチップレット設計が提供される。このチップレット設計は、（１）１組のエラー状態を検出するエラー状態組合せロジックと、その１組のエラー状態に関連するデータを記憶する１組のエラー状態レジスタとを有し、そのデータが１組のエラー状態レジスタから出力マルチプレクサに出力される、エラー状態ステージング・システム、ならびに（２）出力マルチプレクサを制御するトラップ信号を出力するトラップ状態制御システムを含む。
【０００７】
本発明の第２の態様によれば、機能チップレット中の欠陥をホスト・プロセッサに報告する動作チップレットが提供される。この動作チップレットは、（１）エラー状態信号を機能チップレットから受け取るエラー状態マルチプレクサ（error condition multiplexor）と、（２）機能チップレットに属するクロック信号を受け取るタイム・スタンプ・マルチプレクサ（timestamp multiplexor）と、（３）クロック信号を処理して、機能チップレットがハングしているかどうかを判定するタイム・スタンプ監視制御機構（timestamp monitor control）と、（４）エラー状態マルチプレクサおよびタイム・スタンプ監視制御機構から受け取った信号に基づいて、チップレットの欠陥をホスト・プロセッサに報告する状態機械（statemachine）とを備える。
【０００８】
本発明の第３の態様によれば、欠陥を検出しホスト・プロセッサに報告するシステムを有するチップが提供される。このチップは、（１）それぞれ（ａ）１組のエラー状態を検出するエラー状態組合せロジック、および１組のエラー状態に関連するデータを記憶する１組のエラー状態レジスタを有し、データが１組のエラー状態レジスタから出力マルチプレクサに出力される、エラー状態ステージング・システムと、（ｂ）出力マルチプレクサを制御するトラップ信号を出力するトラップ状態制御システムとを含む１組の機能チップレット、ならびに（２）１組の機能チップレットからのエラー状態信号およびクロック・コントローラからのクロック信号を受け取る動作チップレットを備え、動作チップレットは、エラー状態信号およびクロック信号を処理し、欠陥をホスト・プロセッサに報告する。
【０００９】
したがって、本発明は、機能チップレット中の欠陥を検出し報告するための設計を提供する。
【００１０】
本発明の上記およびその他の特徴は、本発明の様々な態様についての以下の詳細な説明を添付図面と併せ参照することにより、さらに容易に理解されよう。
【００１１】
図面は、単に概略を表現したものにすぎず、本発明の具体的なパラメータを表現するものではない。図面は、本発明の典型的な実施形態を示すためのものにすぎず、したがって、本発明の範囲を限定するものと考えるべきではない。図面では、同じ番号は、同様の要素を表す。
【発明を実施するための最良の形態】
【００１２】
以上で示したように、本発明は、チップ中の欠陥を検出し報告するためのシステムを提供する。具体的には、本発明によれば、チップ中の各機能チップレットは、エラー状態ステージング・システムおよびトラップ状態制御システムを含む。エラー状態ステージング・システムは、１組のエラー状態を検出するエラー状態組合せロジックと、その１組のエラー状態に関連するデータを記憶する１組のエラー状態レジスタとを含む。１組のエラー状態レジスタ中のデータは、出力マルチプレクサに伝えられ、この出力マルチプレクサは、トラップ状態制御システムから出力されるトラップ信号によって制御される。このデータを含むエラー状態信号は、出力マルチプレクサから出力され、チップ上の動作チップレットがそれを受け取る。動作チップレットはまた、各機能チップレットに属するクロック・コントローラからクロック信号を受け取る。エラー状態信号およびクロック信号に基づいて、動作チップレットは、機能チップレット中の欠陥（エラー状態またはハング状態あるいはその両方）をホスト・プロセッサに報告する。
【００１３】
次に図１を参照すると、デバッグ・バス１４を有するチップ１０が示されている。図に示すように、チップ１０は、機能チップレット１２Ａ〜１２Ｃ、ホスト・プロセッサ１６、オンチップ・メモリ・モジュール１８Ａ〜１８Ｃ、およびクロック・コントローラ２０を含む。チップ１０の図は、単なる例示にすぎず、他に多くの変形が存在することを理解されたい。例えば、チップ１０は、図に示されていない追加の構成要素を含むことができる。さらに、チップ１０は、異なる数の機能チップレット１２Ａ〜１２Ｃ、オンチップ・メモリ・モジュール１８Ａ〜１８Ｃなどを備えることができる。どのような場合にも、機能チップレット１２Ａ〜１２Ｃは一般に、それぞれ１つまたは複数の機能を実施することができるように設計されている。あいにく、機能チップレット１２Ａ〜１２Ｃは、検証中に発見されるエラー状態またはハング状態あるいはその両方など、欠陥を時折有している。本発明より以前、かかる欠陥を検出しデバッグする一方法は、デバッグ・バス１４を利用していた。例えば、チップ１０に欠陥があることが発見された場合、信号は、機能チップレット１２Ａ〜１２Ｃからデバッグ・バス１４上をホスト・プロセッサ１６に伝えられることになる。その場合、各設計者は、自分の設計に対応する信号を調べて、自分の設計が欠陥を起こしているかどうかを判定しようと試みる。あいにく、以上に示したように、利用可能な情報が限られているだけでなく（すなわち、数本の信号だけが機能チップレット１２Ａ〜１２Ｃから伝えられるので）、多数の設計者が機能チップレット１２Ａ〜１２Ｃの設計に関与していた可能性がある。具体的には、各機能チップレット１２Ａ〜１２Ｃは、それぞれ異なる設計者によって設計された多数の機能の「島」を有する可能性がある。したがって、欠陥のデバッグには、多数の設計者の連携が必要であった。
【００１４】
次に図２を参照すると、本発明によるチップ３０が示されている。図に示すように、チップ３０は、機能チップレット３２Ａ〜３２Ｃ、動作チップレット３４、ホスト・プロセッサ３６、オンチップ・メモリ・モジュール３８Ａ〜３８Ｃ、およびクロック・コントローラ４０を含む。本発明によれば、各機能チップレット３２Ａ〜３２Ｃは、エラー状態を検出し、動作チップレット３４に報告するように設計／プログラムされる。さらに、動作チップレット３４はまた、クロック・コントローラ４０からのクロック信号４２を（例えば連続的なポーリングなどに基づいて）受け取り、この信号を用いて、機能チップレット３２Ａ〜３２Ｃのどれかがハングしているかどうかを判定する。次いで、動作チップレット３４は、見つかった欠陥（エラーまたはハング状態）をホスト・プロセッサ３６に報告する。図１のチップ１０と同様に、チップ３０の図も、単なる例示にすぎず、他に多くの変形が存在することを理解されたい。例えば、チップ３０は、図に示していない追加の構成要素を含むことができる。さらに、チップ３０は、異なる数の機能チップレット３２Ａ〜３２Ｃ、オンチップ・メモリ・モジュール３８Ａ〜３８Ｃなどを備えることができる。
【００１５】
次に図３を参照すると、機能チップレット３２Ａのより詳細な図が示されている。図に示してはいないが、他の機能チップレット３２Ｂ〜３２Ｃも同様の構成要素および機能を含むことを理解されたい。図に示すように、機能チップレット３２Ａは、エラー状態ステージング・システム５０、トラップ状態制御システム６０、およびチップレット・エラー出力マルチプレクサ（以下「出力マルチプレクサ」）６６を含む。トラップ状態制御システム６０は、トラップ状態組合せロジック６２Ａ〜６２ＤおよびＯＲゲート６４を含む。一般的に、トラップ状態組合せロジック６２Ａ〜６２Ｄは、機能チップレット３２Ａの１組（すなわち１つまたは複数）のトラップ状態を定義する。例えば、１つのトラップ状態（例えば、組合せロジック６２Ａによって定義される状態）は、機能チップレット３２Ａが、適切に機能するには、信号「Ａ〜Ｆ」を受け取らなければならないことを示すことができる。さらに、トラップ状態組合せロジック６２Ａ〜６２Ｄの各ブロックは、（必ずしもそうである必要はないが）機能チップレット３２Ａの機能の異なる「島」に属することがあり得る。どのような場合にも、トラップ状態組合せロジック６２Ａ〜６２Ｄの各ブロックは、一般にエラー状態ステージング・システム５０内のエラー状態組合せロジック５２Ａ〜５２Ｆの１つまたは複数のブロックに関係する（例えば、状態組合せロジック５２Ａおよび５２Ｂは、両方ともトラップ状態組合せロジック６２Ａに属することがある）。具体的には、エラー状態組合せロジック５２Ａ〜５２Ｆは、１組（すなわち１つまたは複数）のエラー状態を検出し、それから、その１組のトラップ状態のより詳しい詳細レベルが得られる。例えば、トラップ状態組合せロジック６２Ａが、信号「Ａ〜Ｆ」を受け取るよう指示した場合に、エラー状態組合せロジック５２Ａは、信号「Ａ〜Ｃ」を同時に受け取るよう指示し、一方、エラー状態組合せロジック５２Ｂは、信号「Ａ〜Ｃ」を同時に受け取った後に信号Ｄ〜Ｆを次から次へと受け取るよう指示することができる。
【００１６】
どのような場合にも、エラー状態組合せロジック５２Ａ〜５２Ｆは、機能チップレット３２Ａの性能を監視し、１組（例えば１つまたは複数）のエラー状態のどれかが起こっているかどうかを検出し、その１組のエラー状態に関連するデータをエラー状態レジスタ５４Ａ〜５４Ｄに書き込む。例えば、エラー状態組合せロジック５２Ｂが、受け取った信号「Ｄ〜Ｆ」の順序が狂っていることを検出した場合、エラー状態レジスタ５４Ａ〜５４Ｄのうちの１つのあるビットを「１」（またはそれ以外のある値）にセットすることができる。その限りで、エラー状態組合せロジック５２Ａ〜５２Ｆの各ブロックは、図に示すように、少なくとも１つのエラー状態レジスタ５４Ａ〜５４Ｄと情報をやりとりする。どのような場合にも、各エラー状態レジスタ５４Ａ〜５４Ｄは、そこで書き込まれた「エラー状態」データをレジスタ信号７０を介して出力マルチプレクサ６６に伝える。次いで、出力マルチプレクサ６６は、エラー制御信号７２を動作チップレットに（以下にさらに説明するように）出力する。トラップ状態制御システム６０のＯＲゲート６４は、トラップ状態組合せロジック６２Ａ〜６２Ｄからの信号を受け取り、トラップ信号７４を出力する。このトラップ信号７４は、これを使用して出力マルチプレクサ６６を制御し、動作チップレットへと伝えられる。
【００１７】
エラー状態組合せロジック・ブロック、トラップ状態組合せロジック・ブロック、およびエラー状態レジスタの数は、例として示したものにすぎないことを理解されたい。本発明に従って構築された機能チップレットでは、これらを任意の数だけ備えることができる。
【００１８】
次に、図４を参照すると、動作チップレット３４がより詳細に示されている。一般に、動作チップレット３４は、機能チップレット３２Ａ〜３２Ｃのエラー状態に属する情報を受け取り、機能チップレット３２Ａ〜３２Ｃのどれかがハングしているかどうかを判定し、かかる欠陥をホスト・プロセッサ３６に報告する。図に示すように、動作チップレット３４は、エラー制御マルチプレクサ８０、タイム・スタンプ・マルチプレクサ８２、トラップ制御マルチプレクサ８４、タイム・スタンプ監視制御機構８６、およびエラー・ポーリング状態機械（以下「状態機械」）９４を含む。エラー制御マルチプレクサ８０は、エラー制御信号７２を機能チップレット３２Ａ〜３２Ｃの出力マルチプレクサ６６から受け取る。タイム・スタンプ・マルチプレクサ８２は、クロック信号４２をクロック・コントローラ４０（図２）から受け取る。以下にさらに説明するように、クロック信号４２を使用して、機能チップレット３２Ａ〜３２Ｃのどれかがハングしているかどうかを判定する。その限りで、動作チップレット３４が、ポーリングを連続して行う結果、クロック信号４２を受け取ることができる。トラップ制御マルチプレクサ８４は、機能チップレット３２Ａ〜３２Ｃのトラップ状態制御システム６０からトラップ信号７４を受け取る。図で、信号７２、４２、および７４の個々の線がそれぞれ、１つの機能チップレット３２Ａ、３２Ｂ、または３２Ｃから受け取る１本の信号に相当することを理解されたい。
【００１９】
図に示すように、エラー制御マルチプレクサ８０は、エラー制御マルチプレクサ信号１０８を状態機械９４に出力する。一般に、エラー制御マルチプレクサ信号１０８は、機能チップレット３２Ａ〜３２Ｃが示す１つまたは複数のエラー状態を具体的に記述する「エラー」データを含む。例えば、機能チップレット３２Ａが順序の狂った信号Ｄ〜Ｆを受け取った場合に、エラー制御マルチプレクサ信号１０８がこのエラー状態を示すことになる。タイム・スタンプ・マルチプレクサ８２は、クロック信号４２を受け取り、タイム・スタンプ・マルチプレクサ信号９６をタイム・スタンプ監視制御機構８６に出力し、このタイム・スタンプ監視制御機構８６が、機能チップレット３２Ａ〜３２Ｃのどれかがハング状態になっているかどうか、ならびに欠陥の順序を判定する。具体的には、図に示すように、タイム・スタンプ監視制御機構８６は、入力ブロック８８、ホールド・ブロック９０、およびコンパレータ９２を含む。タイム・スタンプ・マルチプレクサ信号９６に基づいて、機能チップレット（例えば３２Ａ）の現在のタイム・スタンプが決定され、入力ブロック８８中に保持される。次いで、コンパレータ９２を用いて、現在のタイム・スタンプをその機能チップレットの１つまたは複数の以前の（すなわちホールド・ブロック９０に記憶された）タイム・スタンプと比較する。現在のタイム・スタンプが以前のタイム・スタンプと一致した場合、機能チップレットはハング状態になっている。ハングが検出されなかった場合、次いでタイム・スタンプ・マルチプレクサ信号９６中の現在のタイム・スタンプが、ホールド・ブロック９０に記憶され、将来のタイム・スタンプと比較される。ハングの識別に加えて、タイム・スタンプを使用して、欠陥（エラーまたはハング状態）が起こった順序を判定することができる。例えば、タイム・スタンプを使用して、機能チップレット３２Ａが、機能チップレット３２Ｂより前に欠陥に出合ったことを判定することができる。
【００２０】
この比較動作の結果が、レギュレータ信号９８を介して、状態機械９４およびホスト・プロセッサ３６に出力される。図に示すように、状態機械９４は、１つまたは複数の状態機械信号１００および１０６を生成し、これらの信号を使用してエラー制御マルチプレクサ８０、タイム・スタンプ・マルチプレクサ８２、およびトラップ制御マルチプレクサ８４を制御する。状態機械信号１０６に基づいてトラップ制御マルチプレクサ８４は、トラップ制御マルチプレクサ信号１０４をホスト・プロセッサ３６に出力することができる。さらに、状態機械９４はまた、エラー制御マルチプレクサ信号１０８およびレギュレータ信号９８に基づいて、ホスト信号１０２も生成し、このホスト信号がホスト・プロセッサ３６に伝えられる。ホスト信号１０２は、検出された欠陥の詳細を含む。例えば、ホスト信号１０２は、機能チップレット３２Ａが受け取った信号Ｄ〜Ｆの順序が狂っていること、また機能チップレット３２Ｂがハングしていることを示すことができる。ホスト信号１０２はまた、欠陥が起こった順序を示すこともできる。したがって、機能チップレット３２Ａ〜３２Ｃの設計を改良し、動作チップレット３４を利用して結果の報告を調整する（coordinate）ことにより、本発明では、より多くの情報をより効率的にホスト・プロセッサ３６で受け取ることができるようになる。
【００２１】
本発明の好ましい実施形態についての前述の説明は、例示し説明する目的で提示したものである。これは、網羅的なものでもなく、また本発明を開示した通りの形態に限定するものでもなく、明らかに多くの変更形態および変形形態が可能である。当業者には明らかと思われる、かかる変更形態および変形形態は、添付の特許請求の範囲で定義される本発明の範囲内に含まれるものとする。
【００２２】
まとめとして、本発明の構成に関して以下の事項を開示する。
【００２３】
（１）機能チップレット中の欠陥を検出するためのチップレット設計であって、
１組のエラー状態を検出するエラー状態組合せロジック、および前記１組のエラー状態に関連するデータを記憶する１組のエラー状態レジスタを有し、前記データが前記１組のエラー状態レジスタから出力マルチプレクサへと出力される、エラー状態ステージング・システム、
前記出力マルチプレクサを制御するトラップ信号を出力するトラップ状態制御システムを備えるチップレット設計。
（２）前記トラップ状態制御システムが、１組のトラップ状態を定義するトラップ状態組合せロジックを含む、上記（１）に記載のチップレット設計。
（３）前記機能チップレットの前記欠陥をホスト・プロセッサに報告する動作チップレットをさらに備える、上記（１）に記載のチップレット設計。
（４）前記動作チップレットが、
エラー状態信号を前記出力マルチプレクサから受け取るエラー状態マルチプレクサと、
前記機能チップレットに属するクロック信号を受け取るタイム・スタンプ・マルチプレクサと、
前記クロック信号を処理して、前記機能チップレットがハングしているかどうかを判定するタイム・スタンプ監視制御機構と、
前記エラー状態マルチプレクサおよび前記タイム・スタンプ監視制御機構から受け取った信号に基づいて、前記機能チップレットの前記欠陥を前記ホスト・プロセッサに報告する状態機械と
を備える、上記（３）に記載のチップレット設計。
（５）前記動作チップレットが、前記トラップ状態制御システムから前記トラップ信号を受け取る入力マルチプレクサをさらに備え、前記入力マルチプレクサが前記状態機械から出力される状態機械信号によって制御される、上記（４）に記載のチップレット設計。
（６）前記エラー制御マルチプレクサおよび前記タイム・スタンプ・マルチプレクサが、前記状態機械から出力される状態機械信号によって制御される、上記（４）に記載のチップレット設計。
（７）前記タイム・スタンプ監視制御機構が、前記機能チップレットの現在のタイム・スタンプを前記機能チップレットの以前のタイム・スタンプと比較して、前記機能チップレットがハングしているかどうかを判定する、上記（４）に記載のチップレット設計。
（８）機能チップレット中の欠陥をホスト・プロセッサに報告する動作チップレットであって、
前記機能チップレットからエラー状態信号を受け取るエラー状態マルチプレクサと、
前記機能チップレットに属するクロック信号を受け取るタイム・スタンプ・マルチプレクサと、
前記クロック信号を処理して、前記機能チップレットがハングしているかどうかを判定するタイム・スタンプ監視制御機構と、
前記エラー状態マルチプレクサおよび前記タイム・スタンプ監視制御機構から受け取った信号に基づいて、前記チップレットの前記欠陥を前記ホスト・プロセッサに報告する状態機械と
を備える、動作チップレット。
（９）前記機能チップレットのトラップ状態制御システムからトラップ信号を受け取る入力マルチプレクサをさらに備え、前記入力マルチプレクサが前記状態機械から出力される状態機械信号によって制御される、上記（８）に記載の動作チップレット。
（１０）前記機能チップレットの前記トラップ状態制御システムが、１組のトラップ状態を定義するトラップ状態組合せロジックを含む、上記（９）に記載の動作チップレット。
（１１）前記エラー制御マルチプレクサおよび前記タイム・スタンプ・マルチプレクサが、前記状態機械から出力される状態機械信号によって制御される、上記（８）に記載の動作チップレット。
（１２）前記タイム・スタンプ監視制御機構が前記機能チップレットの現在のタイム・スタンプを前記機能チップレットの以前のタイム・スタンプと比較して、前記機能チップレットがハングしているかどうかを判定する、上記（８）に記載の動作チップレット。
（１３）前記機能チップレットが、
１組のエラー状態を定義するエラー状態組合せロジックと、
前記１組のエラー状態に関連するデータを記憶する１組のエラー状態レジスタと
を備えるエラー状態ステージング・システムを含む、上記（８）に記載の動作チップレット。
（１４）前記機能チップレットが、前記１組のエラー状態レジスタから前記データを受け取る出力マルチプレクサをさらに備える、上記（１３）に記載の動作チップレット。
（１５）欠陥を検出しホスト・プロセッサに報告するシステムを有するチップであって、それぞれが、
１組のエラー状態を検出するエラー状態組合せロジック、および前記１組のエラー状態に関連するデータを記憶する１組のエラー状態レジスタを有し、前記データが前記１組のエラー状態レジスタから出力マルチプレクサへと出力される、エラー状態ステージング・システム、
前記出力マルチプレクサを制御するトラップ信号を出力するトラップ状態制御システム
を含む１組の機能チップレット、ならびに
前記１組の機能チップレットからのエラー状態信号、およびクロック・コントローラからのクロック信号を受け取る動作チップレットを備え、前記動作チップレットは、前記エラー状態信号および前記クロック信号を処理し、前記欠陥を前記ホスト・プロセッサに報告する、チップ。
（１６）前記トラップ状態制御システムが、前記機能チップレットに対する１組のトラップ状態を定義するトラップ状態組合せロジックを含む、上記（１５）に記載のチップ。
（１７）前記動作チップレットが、
前記エラー状態信号を前記１組の機能チップレットから受け取るエラー状態マルチプレクサと、
クロック・コントローラからの前記クロック信号を受け取るタイム・スタンプ・マルチプレクサと、
前記クロック信号を処理して、前記１組の機能チップレットのどれかがハングしているかどうかを判定するタイム・スタンプ監視制御機構と、
前記エラー状態マルチプレクサおよび前記タイム・スタンプ監視制御機構から受け取った信号に基づいて、前記欠陥を前記ホスト・プロセッサに報告する状態機械と
を含む、上記（１５）に記載のチップ。
（１８）前記動作チップレットが、前記トラップ状態制御システムから前記トラップ信号を受け取る入力マルチプレクサをさらに備え、前記入力マルチプレクサが、前記状態機械から出力される状態機械信号によって制御される、上記（１７）に記載のチップ。
（１９）前記エラー制御マルチプレクサおよび前記タイム・スタンプ・マルチプレクサが、前記状態機械から出力される状態機械信号によって制御される、上記（１７）に記載のチップ。
（２０）前記タイム・スタンプ監視制御機構が、前記１組の機能チップレットの現在のタイム・スタンプを前記１組の機能チップレットの以前のタイム・スタンプと比較して、前記機能チップレットのどれかがハングしているかどうかを判定する、上記（１７）に記載のチップ。
【図面の簡単な説明】
【００２４】
【図１】チップレットの欠陥をホスト・プロセッサに報告するためのデバッグ・バスの設計を示す図である。
【図２】本発明による、機能チップレットの欠陥を検出しホスト・プロセッサに報告するための設計を示す図である。
【図３】本発明による、図２の機能チップレットの１つをより詳細に示す図である。
【図４】本発明による、図２の動作チップレットをより詳細に示す図である。
【符号の説明】
【００２５】
１０  チップ
１２Ａ〜１２Ｃ  機能チップレット
１４  デバッグ・バス
１６  ホスト・プロセッサ
１８Ａ〜１８Ｃ  オンチップ・メモリ・モジュール
２０  クロック・コントローラ
３０  チップ
３２Ａ〜３２Ｃ  機能チップレット
３４  動作チップレット
３６  ホスト・プロセッサ
３８Ａ〜３８Ｃ  オンチップ・メモリ・モジュール
４０  クロック・コントローラ
４２  クロック信号
５０  エラー状態ステージング・システム
５２Ａ〜５２Ｆ  エラー状態組合せロジック
５４Ａ〜５４Ｄ  エラー状態レジスタ
６０  トラップ状態制御システム
６２Ａ〜６２Ｄ  トラップ状態組合せロジック
６４  ＯＲゲート
６６  出力マルチプレクサ
７０  レジスタ信号
７２  エラー制御信号
７４  トラップ信号
８０  エラー制御マルチプレクサ
８２  タイム・スタンプ・マルチプレクサ
８４  トラップ制御マルチプレクサ
８６  タイム・スタンプ監視制御機構
８８  入力ブロック
９０  ホールド・ブロック
９２  コンパレータ
９４  エラー・ポーリング状態機械、状態機械
９６  タイム・スタンプ・マルチプレクサ信号
９８  レギュレータ信号
１００  状態機械信号
１０２  ホスト信号
１０４  トラップ制御マルチプレクサ信号
１０６  状態機械信号
１０８  エラー制御マルチプレクサ信号
【図１】
2004280802.tif 000003
【図２】
2004280802.tif 000004
【図３】
2004280802.tif 000005
【図４】
2004280802.tif 000006