JP2010049686A - 第2のリンクを介した内部リンクの観察 - Google Patents

第2のリンクを介した内部リンクの観察 Download PDF

Info

Publication number
JP2010049686A
JP2010049686A JP2009183652A JP2009183652A JP2010049686A JP 2010049686 A JP2010049686 A JP 2010049686A JP 2009183652 A JP2009183652 A JP 2009183652A JP 2009183652 A JP2009183652 A JP 2009183652A JP 2010049686 A JP2010049686 A JP 2010049686A
Authority
JP
Japan
Prior art keywords
data
die
multiplexer
clock rate
interface
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
JP2009183652A
Other languages
English (en)
Other versions
JP4956588B2 (ja
Inventor
Syed Islam
イスラム、サイド
James Mitchell
ミッチェル、ジェイムズ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of JP2010049686A publication Critical patent/JP2010049686A/ja
Application granted granted Critical
Publication of JP4956588B2 publication Critical patent/JP4956588B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06F11/26Functional testing
    • G06F11/27Built-in tests
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318505Test of Modular systems, e.g. Wafers, MCM's
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318505Test of Modular systems, e.g. Wafers, MCM's
    • G01R31/318513Test of Multi-Chip-Moduls
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318552Clock circuits details
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L25/00Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof
    • H01L25/03Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes
    • H01L25/04Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes the devices not having separate containers
    • H01L25/065Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes the devices not having separate containers the devices being of a type provided for in group H01L27/00
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2924/00Indexing scheme for arrangements or methods for connecting or disconnecting semiconductor or solid-state bodies as covered by H01L24/00
    • H01L2924/0001Technical content checked by a classifier
    • H01L2924/0002Not covered by any one of groups H01L24/00, H01L24/00 and H01L2224/00

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Information Transfer Systems (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

【課題】シリコンコンポーネントに集積されるようハードウェアを実装することにより、例えば、他の相互接続を介し、既存の外部インターフェースを用いてMCPからの可視性を提供する。
【解決手段】第1のクロック信号の第1のクロック周期間において、パッケージ内リンクを介し、マルチチップパッケージ(MCP)の第1のダイで受信された当該MCPの第2のダイからの第1のデータをセレクタからの出力用に選択する段階と、第2のクロック周期間において、第2のダイから第1のダイに送信される第2のデータをセレクタからの出力用に選択する段階と、第1のデータおよび第2のデータを外部リンクを介してMCPから送信する段階と、を備える。
【選択図】図1

Description

マルチチップパッケージ(MCP)は、単一のパッケージに構成される2つ以上のシリコンダイを含む。単一のパッケージ内のチップは、PCI Express(登録商標)Specification のBase Specification version 2.0(2007年1月17日公開)(以降PCIe(登録商標)Specification と呼ぶ)、または、他のこのようなプロトコルに準拠するPeripheral Component Interconnect Express(登録商標)インターコネクトのような標準的なシリアルインターフェースを用いて互いに通信する。ダイが個別にパッケージ化されている場合、これらのインターフェースは、通常外から見える(すなわち、パッケージの外側にある)。しかしながら、MCPにおいてこれらのインターフェースが外部パッケージに結合されていない場合、パッケージレベルでは、インターフェースを観測できない。1つの解決法は、パッケージに専用ピンを設けることにより、例えば、ポストシリコンデバッグのためにこれらインターフェースを外界から観測可能にすることである。これらのインターフェースの異なる性質を考慮すると、完全な可視性を得るためには、50から100もの専用ピンがパッケージに必要となる場合もある。他の方法は、パッケージの上にバンプを設けることにより、この内部リンクとの相互接続を可能にすることである。前者は、インターコネクション用のピンのルーティングを複雑にし、一方、後者は、ダイの追加層を必要とするだろう。いずれを選択しても接続量およびパッケージ面積を増やすので、コストを上げることになる。
本発明の一実施形態に係るマルチチップパッケージのブロック図である。
本発明の一実施形態に係るテストモードでの動作を示すタイミング図である。
本発明の一実施形態に係る方法のフローチャートである。
本発明の一実施形態に係るシステムのブロック図である。
実施形態は、シリコンコンポーネントに集積されるようハードウェアを実装することにより、例えば、PCIe(登録商標)または他の相互接続を介し、既存の外部インターフェースを用いてMCPからの可視性を提供する。さまざまな実施形態では、第1の内部リンクから情報を取り出し、第2の既存のインターフェースを介して外界へと転送することができる。既存のインターフェースの送信側が標準的なロジックアナライザに結合されることによって、内部インターフェースにおける内部シンボルの流れをモニタすることができる。
図1を参照すると、本発明の一実施形態に係るマルチチップパッケージ(MCP)100のブロック図が示されている。図1に示されるように、MCP100は、第1のダイ110と第2のダイ170とを有する。これら2つのダイは、内部リンク165を介して結合されてよい。一実施形態では、内部リンク165は、PCIe(登録商標)リンクであってよいが、本発明はこれに限定されない。例えば、PCIリンクは、第N世代のものであってよく、1xの対応するリンクスピードを有してよく、一実施形態においては、リンクスピードは2.5ギガビット/秒(Gbps)であってよい。それに対し、オフチップ通信は第2のリンク195を介して行われ、一実施形態では、第2のリンク195は、2xのスピードを有する、N+1などの後世代のPCIe(登録商標)リンクであってよい。
図に示すように、各ダイは、ダイの所望の機能を実行するさまざまなロジックを含んでよい。さまざまな実施形態では、ダイ110および170のいずれかまたは両方は、プロセッサ、コントローラ、メモリインターフェース、チップセットなどであってよい。一実施形態では、ダイ110は、複数のプロセッサを含むマルチコアプロセッサ、キャッシュメモリ、グラフィックエンジン、入力/出力(I/O)インターフェースなどであってよい。同じ実施形態では、ダイ170は、システムメモリ、ディスプレイ、および、1つ以上の他の周辺デバイスと通信することができるインターフェース機能を有するチップセットであってよい。図1に示すように、第1のダイ110は、プロセッサの1つ以上のコアのような専用ロジック、または、コントローラロジックなどでありうるロジック115を含んでよい。
また、第1のダイ110は、多数のインターフェースまたはプロトコルスタックを有し、それらのうちの一方はパッケージ外通信が可能であり、他方は、パッケージ内通信が可能である。特に、第1のダイ110は、トランザクション層120、共通ブロック122、および、アナログフロントエンド(AFE)124を含む第1のインターフェースを有する。第1のインターフェースは、2xのクロックスピードで動作してよい。図に示すように、これらの層またはユニットのそれぞれは、受信(RX)部分および送信(TX)部分を有する。トランザクション層120は、第1のダイ110から送信されるデータを送信方向で受信してよく、さまざまなヘッダおよび所定のプロトコルによって示される他の情報を伴うデータを含む1つ以上のトランザクション層パケット(TLP)を生成してよい。続いて、共通ブロック122は、当該データを受信して他の情報を付け加えることにより、例えば、エラー訂正情報、パリティ情報、ルーティング情報などを含むさまざまなリンクプロトコル情報のような送信の信頼性を提供する。最後に、AFE124は、デジタル情報を取得し、リンク195を介した物理的伝送のためのパケットを準備するよう動作する。一実施形態では、AFE124は、例えば、インターコネクトの所定数のレーンにおいて、共通ブロック122からリンクパケットを受信してシリアルビットを送信するドライバのような送信機回路を含んでよい。一実地形態では、AFE124は、例えば、データを送信用の低電圧差動信号(LVD)に変換するなど、リンク195を介してデータを送信用に適合させてよい。AFE124は、受信方向において、入力信号を受信し、差動信号を、共通ブロック122へ送信するためのリンクパケットに変換してよい。さらに、AFE124は、データと共に送信されたクロックをさらにリカバリするいわゆるクロックデータリカバリ(CDR)回路を受信方向に有してよい。受信方向では、共通ブロック122は、データに対してさまざまな処理を実行し、TLPをトランザクション層120に渡してよい。トランザクション層は、受信したデータを抽出し、それを例えばダイロジック115などの第1のダイ110内のさらなる回路に渡してよい。
第1のダイ110と第2のダイ170との間の通信を可能にすべく、トランザクション層130、共通ブロック132、および、AFE134を有する第1のダイ110内には第2のプロトコルスタックまたはインターフェースも存在し、第2のプロトコルスタックまたはインターフェースは、第1のインターフェースについて説明したのと同様に動作してよい。しかしながら、特定の実施形態では、当該インターフェースは、1xのクロックスピードで動作してよい。また、当該インターフェースのこれらの層またはブロックは、送信部分および受信部分に分割されてよい。
ポストシリコンデバッグまたは他のテスト動作を可能にすべく、内部リンク165に沿ったデータは、第2のリンク195を介してMCP100の外部に提供されてよい。したがって、図1に示すように、(第1のダイ110に関する)内部インターフェースの受信経路および送信経路両方からのデータは、マルチプレクサ155に提供されてよい。(第1のダイ110からの)送信データは、シンクロナイザ152を介してマルチプレクサ155と結合され、1xクロックドメインから2xクロックドメインへと渡る一方で、受信データ(すなわち第2のダイ170からの)は、エラスティックバッファ150を介してマルチプレクサ155に結合されてよいことに留意されたい。
クロックは、2つのクロックドメイン間、すなわち、1xクロックドメインから2xクロックドメインへと渡ることに留意されたい。図1における任意の破線で示されるように、外部リンク195に結合された第1のダイ110の外部インターフェースは、2xクロックドメインで動作し、一方、トランザクション層130、共通ブロック132、および、AFE134を含む内部インターフェースは、1xクロックドメインで動作してよいことを理解されたい。このように、エラスティックバッファ150およびシンクロナイザ152に書き込まれるデータは、AFE134を介して1xクロックドメインに従い、入力データから回復される。したがって、エラスティックバッファ150は、2xクロックドメインを用いて読み出されてよい。基本的に、2xクロックドメインの基準クロックは、エラスティックバッファ150に読取りポインタを提供するために用いられ、1xクロックドメインの基準クロックは、エラスティックバッファ150に書き込みポインタを提供するために用いられる。エラスティックバッファ150は、クロック間のスキューを補償するためにも用いられてよい。
再び図1を参照すると、第1のマルチプレクサ155は第2のマルチプレクサ160に結合されている。図に示すように、テストデータがマルチプレクサ160に提供されることに加え、共通ブロック122から出たデータもマルチプレクサ160に提供される。どちらのマルチプレクサもテストコントローラ140によって制御されてよく、テストコントローラ140は、それぞれのマルチプレクサに選択信号を提供する。すなわち、第1のマルチプレクサ155にはPing_Pong_Sel信号が提供され、第2のマルチプレクサ160にはTest_Mode_Sel信号が提供されてよい。AFE124は、共通ブロック122から受信したクロックに応じたクロックが入力されることに留意されたい。
テストコントローラ140は、例えば、テストアクセスポート(TAP)コントローラを介して外部からアクセス可能なレジスタセットを有してよい。テストコントローラ140は、パッケージのさまざまな動作モードをモニタするための制御能力を提供するハードウェア、ソフトウェア、または、ファームウェアをさらに含んでよい。例えば、送信側または受信側だけをモニタできるように制御してもよい。このように、テストコントローラ140は、異なるテストモードを可能にする柔軟性を提供してよい。いくつかの実施形態では、テストコントローラ140は、ロジックアナライザのような外部ソースからの限られた制御下で動作してよく、一方で、他の実施形態では、例えば、内部レジスタセットの制御を介すなど、より大きい制御が外部ソースの限られた制御下で行われてよい。一例では、パッケージ外に提供されるデータパターンが交互に配置された送信データおよび受信データを含むようにピンポンパターンが制御されてよい。
図1にさらに示されるように、第2のダイ170は、一実施形態ではインターフェース回路、コントローラ回路、メモリ制御回路、または、1つ以上のプロセッサコアなどでありうる自己専用ダイロジック175を有してよい。さらに、1xクロックドメインで動作しうる、トランザクション層180、共通ブロック185、および、AFE190を含むプロトコルスタックまたはインターフェースが存在してよい。図1には特定の実施態様が示されているが、本発明の範囲はこれに限定されない。
図2を参照すると、本発明の一実施形態に係るテストモードでの動作を示すタイミング図画示されている。図2に示すように、上述のような2つの異なるクロックドメインが存在する。当該2つのドメインのクロック信号は、図2の上から2つの行に、すなわち、1x_Clkおよび2x_Clk信号として示されている。一実施形態では、第2のダイ170は、1xクロックレートで動作してよく、第1のダイ110は、2xクロックレートで動作してよいが、これらのダイのロジックは、1xおよび2xクロック信号とは無関係なクロックに従い動作してもよい。異なるクロックドメインにより、第1のダイ110の少なくとも一部(すなわち、内部インターフェースおよびエラスティックバッファ150の書き込み制御)は、第2のダイ170からの入力データからリカバリされるクロックを用いて第2のクロックレートで動作するよう制御されてよい。このような動作を以下に詳しく説明する。
テストモードの間に出入りするデータ(すなわちデータAおよびデータB)の通信を可能とすべく、テストコントローラ140から第1のマルチプレクサ155にPing_Pong_Sel信号が提供されてよい。このような方法で、第1のマルチプレクサ155からの出力データ(Data_Out)は、第2のリンク195を介し、例えばテストロジックアナライザ199に提供されてよい。当該テストモードの間では、Test_Mode_Sel信号(図2には示されていない)によって、第2のマルチプレクサ160は、第1のマルチプレクサ155から出力されたテストデータをAFE124に提供できる。しかしながら、通常動作の間では、共通ブロック122からのデータがAFE124に提供されるよう、第2のマルチプレクサ160による反対の制御が行われる。
図1および2に示されるように、シンボルがAFE134 Tx側からAFE190 Rx側に送信されるケースでは、送信されたシンボルは、共通ブロック132とAFE134との間のインターフェースからシンボルを取り出すことによって集められる(すなわちデータA)。当該データA(1xのクロックレート)は、第1および第2のマルチプレクサによってAFE124 Tx側にプッシュされる。
シンボルがAFE190 Tx側からAFE134 Rx側に送信されるケースでは、送信されたシンボルは、AFE134と共通ブロック132との間のインターフェースからシンボルを取り出すことによって集められる。データB(1xのクロックレート)は、エラスティックバッファ150と、第1および第2のマルチプレクサとを介してAFE 124 Tx側にプッシュされる。エラスティックバッファ150は、エラスティックバッファ150への入力シンボルを計時するために用いられるAFE124におけるリカバリクロックと、エラスティックバッファ150の外のデータを計時するために用いられるローカルに生成されたクロック"afe_clk" (2x_clk)との間の軽微なクロック位相変化を調整するよう用いられる。
テストコントローラ140は、両方のマルチプレクサの選択(Ping_Pong_SelおよびTest_Mode_Sel)を制御することに留意されたい。"Ping_Pong_Sel"は、データAとデータBとの間をピンポン方式で動作するよう、あるいは、データAおよびデータBのいずれかを選択するよう制御されてよい。"Test_Mode_Sel"は、共通ブロック122およびAFE124から通常のシンボル送信を選択するか、または、"Data_Out"データ(すなわち内部PCIe(登録商標)データ)を選択する。"Test_Mode_Sel"がアサートされると、"Data_Out"は、AFE 124 Tx側を介して送信されるようになる。
このように、本発明の一実施形態を用いることにより、既存のインターフェースにピン、ポート、または、他の外部インターフェースを追加せずに内部PCIe(登録商標)インターフェースの可視性を得ることができる。このように、実施形態は、内部シリアルバス式インターフェースを観察するためにパッケージに専用のポートまたは上部の専用プローブ手段を必要としない。図1および2を特定の実施態様に関連付けて示したが、本発明の範囲はこれに限定されない。例えば、他の実施形態では、MCPは、3つ以上のダイを含んでよく、これらのダイ間の内部リンクに沿っての通信は、単一の外部リンクを介し、パッケージからすべて送信という形で行われる。
図3を参照すると、本発明の一実施形態に係る方法のフロー図が示されている。図3に示される方法200は、マルチチップパッケージの外部リンクを介し、テストモード中に内部リンクでの内部通信における送信を可能にする図1のテストコントローラ140のようなテストコントローラによって実装されてよい。図3に示されるように、方法200は、テストモード命令が受信されたかどうかから始まってよい(ひし型210)。テストモード命令などは例えばロジックアナライザのテストソフトウェアのようなソフトウェアから受信されてよいが、本発明の範囲はこれに限定されない。テストモード命令のような命令が受信されない場合、主要な外部プロトコルインターフェースからのデータが提供されることによってシステム(すなわち非テストモード)データが第2のクロックレートで出力されるように正常なシステムモード動作がイネーブルにされる(ブロック250)。上述のごとく、一実施形態では、第2のクロックレートは、この外部リンクのクロックレートであってよく、パッケージ内のマルチダイ間の内部リンクのレートより高い周波数を有してよい。
再び図3を参照すると、テストモード命令が受信されたことが決定された場合、制御はブロック220へと進み、第1のマルチプレクサから第2のクロックレートで出力されるべきテストデータが選択されてよい。当該第1のマルチプレクサは、内部リンクから送信データおよび受信データの両方を入力として受信してよく、その場合、少なくとも受信データは、第1のクロックレートを有してよい。例えばロジックアナライザによって受信されるテストモード命令および所望のテストデータに基づき、第1のマルチプレクサは、送信データおよび受信データの両方が選択されるようなピンポン方式で制御されてよく、その場合、両方のデータストリームは第1のマルチプレクサに第1のクロックレートで受信され、第1のマルチプレクサから第2のクロックレートで出力されるインターリーブ方式をとってよい。あるいは、所望のデバック動作に基づき、単一方向のデータのみが選択されてよい。
制御は、ブロック220からブロック230へと進み、第2のマルチプレクサから第2のクロックレートで出力されるテストデータが選択されてよい。このように、テストコントローラは、通常のシステムデータではなくテストデータが出力されるように第2のマルチプレクサを制御する。このように、ブロック240において、テストデータは、マルチチップパッケージの外部ポートから第2のクロックレートで出力されてよい。図3を参照して特定の実施態様を示したが、本発明の範囲はこれに限定されないことを理解されたい。
実施形態は、多くの異なるシステムタイプで実装されてよい。図4を参照すると、本発明の一実施形態に係るシステムのブロック図が示されている。システム300は、命令を個別に実行する複数のコアを有するマルチコアプロセッサであってよいプロセッサ305と、チップセット315とを有するMCP301を含む。プロセッサとチップセットとは、それぞれ別のダイであり、一実施形態では、PCIe(登録商標)リンクのようなシリアルポイントツーポイント(PtP)インターコネクトであってよいパッケージ内リンク306を介して結合されてよい。モジュール317から319の1つを介してMCP301のテストまたはデバッグが行われることにより、リンク306を介したパッケージ内通信が、モジュールの1つから、接続されたロジックアナライザまたは他のテスト機器に提供されてよい。説明を簡単にするために図示していないが、チップセット315は、図1に示されるようなテストコントローラおよび多重構造を有してよい。このように、本実施形態では、外部インターフェースを有する第1のダイ110がプロセッサデバイスでありうる第1の実施形態とは異なり、MCP301からの外部リンクは、プロセッサ305ではなくチップセット315を介する。さらに図に示すように、システム300は、チップセット315に結合されたシステムメモリ310を含む。システムメモリ310は、RAM(ランダムアクセスメモリ)、不揮発性(NV)メモリ、または、システム300内のデバイスによりアクセス可能な他のメモリのようないかなるメモリデバイスを含む。システムメモリ310は、メモリインターフェース316を介してチップセット315に結合されてよい。
チップセット315は、インターフェースの中でも特に、メモリコントローラハブ(MCH)、ノースブリッジ、入力/出力コントローラハブ(ICH)、サウスブリッジ、ルートコントローラ/ハブを含んでよい。なお、チップセット315は、シリアルリンク323を介してスイッチ/ブリッジ320に結合される。インターフェース/ポートとも呼ばれうる入力/出力モジュール317および321は、チップセット315とスイッチ320との間の通信を提供する多層プロトコルスタックを含む/実装する。一実施形態では、スイッチ320には多数のデバイスが結合されてよい。
スイッチ320は、パケット/メッセージをデバイス325から上流、すなわち、チップセット315より上の階層まで送り、かつ、下流、すなわちチップセット315より下の階層であるデバイス325へと送る。IOモジュール322および326は、シリアルリンク327を介してスイッチ320とデバイス325との間の通信を行う多層プロトコルスタックを実装する。デバイス325は、例えば、IOデバイス、ネットワークインターフェースコントローラ(NIC)、アドインカード、オーディオプロセッサ、ネットワークプロセッサ、ハードドライブ、記憶装置、モニタ、プリンタ、マウス、キーボード、ルータ、携帯記憶装置、Firewireデバイス、USB(Universal Serial Bus)デバイス、スキャナ、および、他の入力/出力デバイスなどの、電子システムに結合されるいかなる内部または外部デバイス、あるいは、コンポーネントを含む。
グラフィックアクセラレータ330もシリアルリンク332を介してチップセット315に結合されてよい。一実施形態では、グラフィックアクセラレータ330は、MCHに結合され、MCHはICHに結合される。IOモジュール331および318は、グラフィックアクセラレータ330とチップセット315との間で通信を行う多層プロトコルスタックを実装してよい。
実施形態は、コードに実装されてよく、命令を実行するようシステムをプログラムするのに用いられうる当該命令を格納した記憶媒体に格納されてよい。記憶媒体は、フロッピー(登録商標)ディスク、光ディスク、CD−ROM、CD−RW、および、光磁気ディスクを含むいかなるタイプのディスク、ROM(リードオンリーメモリ)、RAM(ランダムアクセスメモリ)、DRAM(ダイナミックRAM)、SRAM(スタティックRAM)EPROM(消去可能PROM)、EEPROM(登録商標)(電気的消去可能PROM)のような半導体デバイス、磁気または光カード、あるいは、電子命令を格納するのに適した他のいかなるタイプの媒体であってよい。
これまで本発明を限定された数の実施形態に関連して説明してきたが、そこから数多くの修正および変更がなされうることが当業者であれば理解できよう。添付の請求項は、これらの修正および変更を本発明の真の趣旨および範囲内に納まるものとして保護することが意図される。

Claims (20)

  1. パッケージを備え、前記パッケージは、
    データの演算を実行する第1のダイと、第2のダイと、を有し、
    前記第1のダイは、前記パッケージと外部リンクとの間の通信を可能にする第1のインターフェース、および、パッケージ内リンクを介して前記パッケージ内で前記第1のダイと前記第2のダイとの間の通信を可能にする第2のインターフェースを有し、
    前記第2のダイは、前記パッケージ内リンクを介し、前記第1のダイと前記第2のダイとの間の通信を可能にする第3のインターフェースを有し、
    前記第1のダイは、前記外部リンクを介し、前記パッケージから前記パッケージ内リンクに沿ったパッケージ内通信における送信を実行する、
    装置。
  2. 前記第1のダイは、前記パッケージ内通信における前記送信を可能にするテストコントローラを有する、請求項1に記載の装置。
  3. 前記第1のダイは、第1のマルチプレクサと、第2のマルチプレクサとをさらに有し、
    前記第1のマルチプレクサは、前記第2のインターフェースの送信部分に結合される第1の入力、および、前記第2のインターフェースの受信部分に結合される第2の入力を有し、
    前記第2のマルチプレクサは、前記第1のマルチプレクサの出力に結合される第1の入力、および、前記第1のインターフェースに結合される第2の入力を有し、
    前記第1のマルチプレクサおよび前記第2のマルチプレクサは、前記テストコントローラによって制御される、
    請求項2に記載の装置。
  4. 前記第1のインターフェースは、第1のクロックドメインにおいて第1のクロックレートで動作し、前記第2のインターフェースは、第2のクロックドメインにおいて第2のクロックレートで動作する、請求項3に記載の装置。
  5. 前記テストコントローラは、前記第2のクロックレートで前記第1のダイから前記第2のダイへと第1のデータが送信され、前記第2のクロックレートで前記第1のダイで受信された前記第2のダイからの第2のデータが前記外部リンクを介して前記第1のクロックレートで送信されるよう、前記第1のマルチプレクサに、前記パッケージ内通信を前記第2のクロックレートで出力させる、請求項4に記載の装置。
  6. 前記第1のデータおよび前記第2のデータは、インターリーブ方式で送信される、請求項5に記載の装置。
  7. 前記第1のデータおよび前記第2のデータは、テストモードのテストデータを含み、前記テストモードがイネーブルでない場合、前記テストコントローラは、前記第2のマルチプレクサに、前記外部リンクを介してシステムデータを送信させる、請求項5に記載の装置。
  8. 第1のクロックレートで動作する第1のクロック信号の第1のクロック周期において、パッケージ内リンクを介し、マルチチップパッケージ(MCP)の第1のダイにおいて、前記MCPの第2のダイから第2のクロックレートで受信された第1のデータを、セレクタから出力用に選択する段階と、
    前記第1のクロック信号の第2のクロック周期において、前記第2のダイから前記第1のダイに送信される第2のデータを、前記セレクタから出力用に選択する段階と、
    前記第1のデータおよび前記第2のデータを、外部リンクを介して前記MCPから前記第1のクロックレートで送信する段階と、
    を備える方法。
  9. 前記第1のデータおよび前記第2のデータを前記MCPのテストモードで送信する段階をさらに備える、請求項8に記載の方法。
  10. 前記テストモードがイネーブルでない場合、前記第1のダイのシステムデータを前記外部リンクを介して前記第1のクロックレートで送信する段階をさらに備える、請求項9に記載の方法。
  11. 前記第2のクロックレートに従い、前記第1のダイのエラスティックバッファに前記第1のデータを格納し、前記第1のクロックレートに従い、前記エラスティックバッファから前記第1のデータを読み出す段階をさらに備える、請求項8に記載の方法。
  12. 前記第1のクロックレートに従い、前記第1のデータを前記エラスティックバッファから前記セレクタに出力する段階をさらに備える、請求項11に記載の方法。
  13. 前記第1のデータおよび前記第2のデータが前記セレクタからインターリーブ方式で出力されるよう、前記セレクタを制御する段階と、
    前記第1のデータおよび前記第2のデータを前記MCPのテストモードで出力するか、または、前記第1のダイのシステムデータを出力するよう、前記セレクタに結合された第2のセレクタを制御する段階と、
    をさらに備える、請求項8に記載の方法。
  14. 前記第1のダイのテストコントローラを用いて、前記第1のデータおよび前記第2のデータを選択する段階をさらに備える、請求項8に記載の方法。
  15. 前記MCPに結合されたロジックアナライザを介して前記テストコントローラを制御する段階をさらに備える、請求項14に記載の方法。
  16. マルチチップパッケージ(MCP)と、
    前記MCPに結合されたダイナミックランダムアクセスメモリ(DRAM)とを備え、
    前記マルチチップパッケージ(MCP)は、
    個別に命令を実行する複数のコアを有し、第1のダイ上に形成されるマルチコアプロセッサと、
    前記MCPの内部リンクを介して前記マルチコアプロセッサに結合され、第2のダイ上に形成されるチップセットと、を有し、
    前記チップセットは、前記マルチコアプロセッサと前記チップセットとの間のテスト通信を可能にするテストコントローラと、前記MCPと外部リンクとの間の通信を可能にする外部インターフェースと、前記内部リンクを介しての前記マルチコアプロセッサと前記チップセットとの間の通信を可能にする内部インターフェースと、を有し、
    前記チップセットは、前記テストコントローラの制御下で、前記外部リンクを介し、前記マルチコアプロセッサと前記チップセットとの間の前記テスト通信における送信を前記MCPから行う、
    システム。
  17. 前記チップセットは、
    前記内部インターフェースの送信部分に結合された第1の入力、および、前記内部インターフェースの受信部分に結合された第2の入力を有する第1のマルチプレクサと、
    前記第1のマルチプレクサの出力に結合された第1の入力、および、前記外部インターフェースに結合された第2の入力を有する第2のマルチプレクサと、
    をさらに有し、
    前記第1のマルチプレクサと前記第2のマルチプレクサとは前記テストコントローラによって制御される、
    請求項16に記載のシステム。
  18. 前記外部インターフェースは第1のクロックレートで動作し、前記内部インターフェースは、第2のクロックレートで動作する、請求項17に記載のシステム。
  19. 前記内部インターフェースと前記第1のマルチプレクサとの間に結合されるエラスティックバッファをさらに備え、
    前記マルチコアプロセッサからの入力データは、前記第2のクロックレートに従い前記エラスティックバッファに格納され、前記第1のクロックレートに従い前記エラスティックバッファから読み出される、請求項18に記載のシステム。
  20. 前記テストコントローラは、前記マルチコアプロセッサおよび前記チップセットからのデータを交互のサイクルにおいて前記第1のクロックレートで前記第1のマルチプレクサから送信し、
    前記内部インターフェースで受信された前記マルチコアプロセッサからの前記データと、前記内部インターフェースを介して前記チップセットから送信された前記データとは、前記第2のクロックレートを有する、請求項19に記載のシステム。
JP2009183652A 2008-08-13 2009-08-06 第2のリンクを介した内部リンクの観察 Expired - Fee Related JP4956588B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/228,493 2008-08-13
US12/228,493 US7958283B2 (en) 2008-08-13 2008-08-13 Observing an internal link via a second link

Publications (2)

Publication Number Publication Date
JP2010049686A true JP2010049686A (ja) 2010-03-04
JP4956588B2 JP4956588B2 (ja) 2012-06-20

Family

ID=41129843

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009183652A Expired - Fee Related JP4956588B2 (ja) 2008-08-13 2009-08-06 第2のリンクを介した内部リンクの観察

Country Status (6)

Country Link
US (1) US7958283B2 (ja)
JP (1) JP4956588B2 (ja)
CN (1) CN101651134B (ja)
DE (1) DE102009036631B4 (ja)
GB (1) GB2462713B (ja)
TW (1) TWI400465B (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8977788B2 (en) 2008-08-13 2015-03-10 Intel Corporation Observing an internal link via an existing port for system on chip devices
EP2339475A1 (en) * 2009-12-07 2011-06-29 STMicroelectronics (Research & Development) Limited Inter-chip communication interface for a multi-chip package
EP2339476B1 (en) * 2009-12-07 2012-08-15 STMicroelectronics (Research & Development) Limited Interface connecting dies in an IC package
EP2333673B1 (en) * 2009-12-07 2014-04-16 STMicroelectronics (Research & Development) Limited Signal sampling and transfer
EP2339795B1 (en) * 2009-12-07 2013-08-14 STMicroelectronics (Research & Development) Limited Inter-chip communication interface for a multi-chip package
EP2333830B1 (en) * 2009-12-07 2014-09-03 STMicroelectronics (Research & Development) Limited a package comprising a first and a second die coupled by a multiplexed bus
EP2330514B1 (en) 2009-12-07 2018-12-05 STMicroelectronics (Research & Development) Limited An integrated circuit package
EP2408128B1 (en) * 2010-07-15 2017-06-07 Alcatel Lucent Interworking agent adapted to interact between network and Precision Time Protocol entities
US8521937B2 (en) 2011-02-16 2013-08-27 Stmicroelectronics (Grenoble 2) Sas Method and apparatus for interfacing multiple dies with mapping to modify source identity
WO2017052575A1 (en) * 2015-09-25 2017-03-30 Intel Corporation Extending multichip package link off package
CN116774020B (zh) * 2023-08-16 2023-11-14 上海燧原科技有限公司 一种芯片测试系统、方法、装置和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000057002A (ja) * 1998-08-06 2000-02-25 Oki Data Corp 集積回路
US6825683B1 (en) * 2002-04-18 2004-11-30 Cypress Semiconductor Corporation System and method for testing multiple integrated circuits that are in the same package
JP2007517334A (ja) * 2003-12-31 2007-06-28 インテル・コーポレーション ポイントツーポイントリンクを処理する非データ符号を介したバッファ管理
US20080005586A1 (en) * 2006-06-27 2008-01-03 Peter Munguia Systems and techniques for datapath security in a system-on-a-chip device

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5568492A (en) 1994-06-06 1996-10-22 Motorola, Inc. Circuit and method of JTAG testing multichip modules
JP3636506B2 (ja) * 1995-06-19 2005-04-06 株式会社アドバンテスト 半導体試験装置
US5606710A (en) * 1994-12-20 1997-02-25 National Semiconductor Corporation Multiple chip package processor having feed through paths on one die
US5796746A (en) 1995-12-22 1998-08-18 Micron Technology, Inc. Device and method for testing integrated circuit dice in an integrated circuit module
US6009488A (en) 1997-11-07 1999-12-28 Microlinc, Llc Computer having packet-based interconnect channel
US6385236B1 (en) * 1998-10-05 2002-05-07 Lsi Logic Corporation Method and Circuit for testing devices with serial data links
US7444575B2 (en) * 2000-09-21 2008-10-28 Inapac Technology, Inc. Architecture and method for testing of an integrated circuit device
US7309999B2 (en) * 2002-11-27 2007-12-18 Inapac Technology, Inc. Electronic device having an interface supported testing mode
US6826100B2 (en) * 2002-12-16 2004-11-30 Intel Corporation Push button mode automatic pattern switching for interconnect built-in self test
US7047458B2 (en) * 2002-12-16 2006-05-16 Intel Corporation Testing methodology and apparatus for interconnects
US6975954B2 (en) * 2003-06-24 2005-12-13 Intel Corporation Functional testing of logic circuits that use high-speed links
US7139957B2 (en) * 2003-06-30 2006-11-21 Intel Corporation Automatic self test of an integrated circuit component via AC I/O loopback
DE602005006524D1 (de) 2004-01-13 2008-06-19 Nxp Bv Jtag-testarchitektur für ein mehrchip-pack
US20050224942A1 (en) 2004-03-26 2005-10-13 Fan Ho Semiconductor device with a plurality of ground planes
WO2006061668A1 (en) 2004-12-07 2006-06-15 Infineon Technologies Ag Test time reduction for multi-chip modules (mcm) and for system-in-packages (sip)
US20060224815A1 (en) * 2005-03-30 2006-10-05 Koichi Yamada Virtualizing memory management unit resources
US7437643B2 (en) * 2005-06-21 2008-10-14 Intel Corporation Automated BIST execution scheme for a link
US7633877B2 (en) * 2005-11-18 2009-12-15 Intel Corporation Method and apparatus for meeting compliance for debugging and testing a multi-speed, point-to-point link
US7774590B2 (en) * 2006-03-23 2010-08-10 Intel Corporation Resiliently retaining state information of a many-core processor
US20070237527A1 (en) * 2006-03-31 2007-10-11 Sanjay Dabral Optical debug mechanism
US8245199B2 (en) * 2006-05-05 2012-08-14 International Business Machines Corporation Selectively marking and executing instrumentation code
US7500164B2 (en) * 2006-06-01 2009-03-03 International Business Machines Corporation Method for testing an integrated circuit device having elements with asynchronous clocks or dissimilar design methodologies
US7490189B2 (en) * 2006-06-14 2009-02-10 Sun Microsystems, Inc. Multi-chip switch based on proximity communication
US7724645B2 (en) * 2006-06-27 2010-05-25 Intel Corporation Method and apparatus for serial link down detection
US7525723B2 (en) 2006-06-30 2009-04-28 Intel Corporation Circuit board-to-circuit board connectors having electro-optic modulators
US20080122463A1 (en) 2006-06-30 2008-05-29 Sanjay Dabral Testing microelectronic devices using electro-optic modulator probes
US7681066B2 (en) * 2006-06-30 2010-03-16 Intel Corporation Quantifying core reliability in a multi-core system
US7814371B2 (en) * 2006-09-27 2010-10-12 Intel Corporation Apparatus and method for point-to-point interconnect testing
US7917828B2 (en) * 2006-12-28 2011-03-29 Intel Corporation Providing error correction coding for probed data
US7941631B2 (en) * 2007-12-28 2011-05-10 Intel Corporation Providing metadata in a translation lookaside buffer (TLB)

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000057002A (ja) * 1998-08-06 2000-02-25 Oki Data Corp 集積回路
US6825683B1 (en) * 2002-04-18 2004-11-30 Cypress Semiconductor Corporation System and method for testing multiple integrated circuits that are in the same package
JP2007517334A (ja) * 2003-12-31 2007-06-28 インテル・コーポレーション ポイントツーポイントリンクを処理する非データ符号を介したバッファ管理
US20080005586A1 (en) * 2006-06-27 2008-01-03 Peter Munguia Systems and techniques for datapath security in a system-on-a-chip device

Also Published As

Publication number Publication date
CN101651134B (zh) 2012-06-06
GB2462713A (en) 2010-02-24
TWI400465B (zh) 2013-07-01
DE102009036631B4 (de) 2017-05-18
TW201022696A (en) 2010-06-16
GB0913869D0 (en) 2009-09-16
GB2462713B (en) 2010-09-29
JP4956588B2 (ja) 2012-06-20
DE102009036631A1 (de) 2010-04-29
CN101651134A (zh) 2010-02-17
US7958283B2 (en) 2011-06-07
US20100042761A1 (en) 2010-02-18

Similar Documents

Publication Publication Date Title
JP4956588B2 (ja) 第2のリンクを介した内部リンクの観察
US9959236B2 (en) Observing an internal link via an existing port for system on chip devices
US8811430B2 (en) Packetized interface for coupling agents
US7536267B2 (en) Built-in self test for memory interconnect testing
CN100541442C (zh) 高性能串行总线测试方法
US7231560B2 (en) Apparatus and method for testing motherboard having PCI express devices
US6996749B1 (en) Method and apparatus for providing debug functionality in a buffered memory channel
WO2019040256A1 (en) SEMICONDUCTOR MEMORY DEVICE
US20030101376A1 (en) Built-in self-testing for double data rate input/output
JP5232019B2 (ja) 複数のプロセッサコア用の装置、システム、及び方法
US8074131B2 (en) Generic debug external connection (GDXC) for high integration integrated circuits
US9734116B2 (en) Method, apparatus and system for configuring a protocol stack of an integrated circuit chip
JP2023544288A (ja) データ処理エンジンアレイを有するマルチダイ集積回路
US6772369B2 (en) System observation bus
US9036718B2 (en) Low speed access to DRAM
US6526535B1 (en) Synchronous data adaptor
CN103592594B (zh) 电路测试系统及电路测试方法
US7853843B2 (en) Method and system for testing chips
JP3968040B2 (ja) 高速シリアルコントローラ
KR101062759B1 (ko) 반도체 메모리 장치 및 그 데이터 독출 방법
TWI676990B (zh) 內嵌式功能測試模組記憶體晶片的電路拓撲
US7269681B1 (en) Arrangement for receiving and transmitting PCI-X data according to selected data modes

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110826

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110830

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111128

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: 20120228

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: 20120316

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: 20150323

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees