(57)【要約】      （修正有）【課題】システム・オン・チップ（ＳｏＣ）システムの場合、インタフェース規定の物理レベルとのトランザクション・レベルのミックスにより、シリコン・プロセスが変わるにつれ、構成部分の再使用がＰＣ互換性において、ＰＣ互換を可能とするシステムを提供する。【解決手段】パソコン（ＰＣ）プロトコル及び第２のプロトコルによって通信するためにアダプタを有する装置を含み、アダプタに結合された第１のインタフェースは、アダプタのアップストリームから受信されたトランザクションのアドレス変換及び配列を行い、第１のインタフェースは同様に、異種リソースに、１つ又は複数の物理装置を介して結合する。【選択図】図１
2011138521.tif 000002
【特許請求の範囲】
【請求項１】
システム・オン・チップ（ＳｏＣ）であって、
パソコン（ＰＣ）プロトコルにより、第１の構成部分と通信し、オープン・コア・プロトコル（ＯＣＰ）プロトコルに対応する第２のプロトコルにより、第１のインタフェースと通信するよう単一の半導体ダイ上に適合されたアダプタであって、前記第１のインタフェースが、前記単一の半導体ダイ上に適合され、前記アダプタに第１の相互接続によって結合され、前記第１のインタフェースは、前記第１の構成部分から受信されたトランザクションのアドレス変換及び配列を行うアダプタと、
前記第１のインタフェースと第２の相互接続との間のトランザクションを通信するため
に前記第１のインタフェースと第２の相互接続との間に結合された第１の物理装置とを備
え、
前記単一の半導体ダイ上に適合された複数の異種リソース、及び前記第１のインタフェ
ースは、前記第２の相互接続を介して結合させられるよう前記単一の半導体ダイ上に適合
され、前記複数の異種リソースはそれぞれ、知的資産（ＩＰ）コア及びｓｈｉｍを含み、
前記ｓｈｉｍは、修正なしで前記ＩＰコアが、対応するＩＰコアを前記ＳｏＣに組み入れ
ることを可能にするために前記ＩＰコアの前記ＰＣプロトコルのヘッダを実現するＳｏＣ。
【請求項２】
請求項１記載のＳｏＣであって、前記第１のインタフェースは前記ＰＣプロトコルの構
成サイクルを前記第２のプロトコルの形式に変換し、前記ＰＣプロトコルは、周辺構成部
分相互接続（ＰＣＩ）プロトコルに対応するＳｏＣ。
【請求項３】
請求項２記載のＳｏＣであって、前記第１のインタフェースは、再配置可能なＰＣＩア
ドレスをＯＣＰアドレスに変換するためのアドレス変換を行うＳｏＣ。
【請求項４】
請求項１記載のＳｏＣであって、前記第１のインタフェースは、前記複数の異種リソー
スにわたって共通の動作を行い、各ｓｈｉｍは、対応するＩＰコアに特有の動作を行うＳ
ｏＣ。
【請求項５】
請求項４記載のＳｏＣであって、前記共通の動作はアドレス変換及び配列を含み、前記
特有の動作は電力管理及びエラー処理を含むＳｏＣ。
【請求項６】
請求項１記載のＳｏＣであって、前記第２の相互接続が相互接続ファブリックを含むＳ
ｏＣ。
【請求項７】
請求項６記載のＳｏＣであって、前記複数の異種リソースのうちの対応する異種リソー
スに第２のインタフェースをそれぞれが結合させる複数の第２の物理装置を更に備えるＳ
ｏＣ。
【請求項８】
請求項２記載のＳｏＣであって、前記第１のインタフェースはＰＣＩヘッダへのアクセ
スを、対応するｓｈｉｍにルーティングし、前記ｓｈｉｍは、対応するＩＰコアのＰＣＩ
ヘッダを実現し、前記第１のインタフェースは更に、装置メモリ空間へのアクセスを、前
記対応するｓｈｉｍにルーティングするＳｏＣ。
【請求項９】
請求項８記載のＳｏＣであって、前記対応するｓｈｉｍは、前記ＰＣＩヘッダへの読出
・書込動作全てを消費し、他のトランザクションを、前記対応するＩＰコアに通信するＳｏＣ。
【請求項１０】
システムであって、
プロセッサと、
前記プロセッサに結合されたホスト・インタフェースであって、前記プロセッサをメモ
リ及びアダプタに結合させ、前記アダプタは、前記ホスト・インタフェースに結合されて
、周辺構成部分相互接続（ＰＣＩ）プロトコルによって通信し、第２のプロトコルにより、第２のインタフェースに通信し、前記第２のインタフェースは、第１の相互接続により、前記アダプタに結合され、前記第２のインタフェースは、前記プロセッサから受信されたトランザクションのアドレス変換及び配列を行うホスト・インタフェースと、
前記第２のインタフェースと第２の相互接続との間のトランザクションを通信するため
に前記第２のインタフェースと第２の相互接続との間に結合された第１の物理装置とを備
え、複数の異種リソース及び前記第２のインタフェースは、前記第２の相互接続を介して
結合させられ、前記複数の異種リソースはそれぞれ、知的資産（ＩＰ）コア及びｓｈｉｍ
を含み、前記ｓｈｉｍは、修正なしでシステムに、前記ＩＰコアが、対応するＩＰコアを
組み入れることを可能にするために前記ＩＰコアの前記ＰＣＩプロトコルのヘッダを実現
するシステム。
【請求項１１】
請求項１０記載のシステムであって、ウルトラ・モバイル・システムを備え、前記プロ
セッサは、前記ＰＣＩプロトコルを使用してＰＣオペレーティング・システムを実行する
システム。
【請求項１２】
請求項１１記載のシステムであって、前記第２のインタフェースは、前記ＰＣＩプロト
コルの構成サイクルを前記第２のプロトコルの形式に変換し、前記第２のインタフェース
は、再配置可能なＰＣＩアドレスをＯＣＰアドレスに変換するためにアドレス変換を行うシステム。
【請求項１３】
請求項１２記載のシステムであって、前記第２のインタフェースは、前記複数の異種リ
ソースにわたって共通の動作を行い、各ｓｈｉｍは、対応するＩＰコアに特有の動作を行
い、前記共通の動作は、前記アドレス変換、及び前記配列を含み、前記特有の動作は、電
力管理及びエラー処理を含むシステム。
【請求項１４】
請求項１２記載のシステムであって、前記第２のインタフェースは、ＰＣＩヘッダへの
アクセスを、対応するｓｈｉｍにルーティングし、前記ｓｈｉｍは、対応するＩＰコアの
ＰＣＩヘッダを実現し、前記第２のインタフェースは更に、装置メモリ空間へのアクセス
を、対応するｓｈｉｍにルーティングし、前記対応するｓｈｉｍは前記ＰＣＩヘッダへの
読出・書込動作全てを消費し、他のトランザクションを前記対応するＩＰコアに通信する
システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システム・オン・チップ（ＳｏＣ）用の周辺構成部分相互接続（ＰＣＩ）互換のトランザクション・レベル・プロトコルを提供する方法に関する。
【背景技術】
【０００２】
高度拡張可能インタフェース（ＡＸＩ）及びオープン・コア・プロトコル（ＯＣＰ）ベースのアーキテクチャなどの特定の半導体アーキテクチャはモジュラーであり、既存の設計からの知的資産（ＩＰ）ブロックをすばやく追加又は削除することによる迅速な普及を可能にする。前述のＩＰブロック（ＩＰとも呼ばれる）は、豊富な機能の組を提供するが、周辺構成相互接続（ＰＣＩ）互換性に必要な特定の主機能を欠くためにパソコン（ＰＣ）システムにおいて使用することが可能でない。例えば、前述のＩＰは、プラグアンドプレイを除き、固定アドレスで動作する。発見及び列挙のための機構は存在しない。ＰＣＩ型配列は実現されず、ＰＣＩ型電力管理機能は欠けている。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
ＰＣ互換システムにおいて使用する周辺装置の場合、相互接続仕様は、インタフェースの物理レベルと、トランザクション・レベルをミックスさせる。実際に、前述の仕様は外部の物理装置を包含するので、前述のレベルをともに規定する必要がある。しかし、システム・オン・チップ（ＳｏＣ）システムの場合、インタフェース規定の物理レベルとのトランザクション・レベルのミックスにより、シリコン・プロセスが変わるにつれ、構成部分の再使用が制限される。一部の外部の非ＰＣ互換システムは、そのＩＰ構成部分にトランザクションレベル・インタフェースを採用している。しかし、ＰＣ互換性に必要な種々の構成がそのインタフェースにおいて欠けているので、前述のシステムはＰＣ互換にすることが可能でない。
【課題を解決するための手段】
【０００４】
実施例は、ＩＰリソース自体に変更を何ら行うことなく、ＰＣＩベースのシステムなどのＰＣベースのシステムにおいてＡＸＩ／ＯＣＰ技術などの異種リソースの使用を可能にする手法を使用する。より具体的には、実施例は、ＰＣ互換ＳｏＣ構成部分のトランザクション・レベルのモジュラーな相互接続を提供する。すなわち、構成部分の再使用はＳｏＣ構成部分の迅速な開発における実現を支援することが可能であるので、種々の実施例では、ＳｏＣ構成部分の仕様の規定の物理レベルからトランザクション・レベルを分離することが可能である。このようにして、ＰＣＩ（又は他のバスベースの）システムをポイントツーポイント（ＰｔＰ）相互接続システムにマッピングするための機能、ターゲットベースの復号化をＰｔＰ相互接続システムに提供するための機能、及び、ＰＣ互換システムにおいて、ターゲットベースの復号化及び他のＰＣ互換機能をまだ提供していない既存の構成部分を、ロジックを介して、使用するための機能を実現することが可能である。
【０００５】
ＰＣ互換システムに組み入れられる対象のＳｏＣによって実現されるような非ＰＣＩトランザクション空間への、ＰＣ互換システムによって実現されるようなＰＣＩトランザクションのマッピングにより、問題が提起される。特に、ＰＣＩは通常、ターゲットベースの復号化システムであり、これは、プロセッサが周辺装置と通信したい場合、トランザクションを周辺装置全てに送出し、装置がそれを要求することを待つことを意味する。装置の１つによって要求されると、通信することが可能であるようにプロセッサと、対応する装置との間でチャネルが確立される。前述のシステムは、通常、ソースベースの復号化を使用して動作するＳｏＣなどのダイ上システムとうまく機能しない。その代わりに前述のシステムでは、プロセッサはアドレスを相互接続に送出し、相互接続はそのデスティネーションを求め、装置全てに送出し、応答を待つのでなく、要求によってターゲットされる特定の装置にその要求のみを送出する。
【０００６】
種々の実施例では、インタフェース又はアダプタを使用して、システム内の種々のターゲット・アドレス全てを把握し、構成情報を収集し、維持することができる。よって、周辺装置全てに要求を送出するのでなく、プロセッサが要求を送出すると、要求は、ターゲット装置に関連付けられたアダプタにのみ送出される。
【０００７】
実施例では、ＡＸＩ／ＯＣＰ  ＩＰを相互接続ファブリックにプラグインしてＰＣＩ互換システムを生成する、Ｙｕｎｉｔ及びｓｈｉｍとして本明細書及び特許請求の範囲で表す非常に細い２つのハードウェア・ブロックが提供される。以下に説明するように、一実施例では、Ｙｕｎｉｔの第１の（例えば、北の）インタフェースは、直接メディア・インタフェース（ＤＭＩ）バス、ＰＣＩバスや、周辺構成部分インタフェース・エクスプレス（ＰＣＩｅ）バスなどのＰＣＩ互換バスへインタフェースするアダプタ・ブロックに接続する。第２の（例えば、南の）インタフェースは、ＡＸＩ／ＯＣＰ相互接続などの非ＰＣ相互接続に直結する。種々の実現形態では、このバスはＯＣＰバスであり得る。
【図面の簡単な説明】
【０００８】
【図１】本発明の一実施例によるプロセッサのブロック図である。
【図２】本発明の一実施例によるシステムのブロック図である。
【発明を実施するための形態】
【０００９】
本発明の実施例によれば、２つのＰＣＩ機能を、別個のトランザクション・物理プロトコルに組み入れることができる。まず、Ｙｕｎｉｔは、要求がターゲットされた所を判定し、相互接続を介して要求が適切に供給されることを確実にするための復号化ロジックを含み得る。第２に、ｓｈｉｍは、対応する装置をオフにし、特定のメモリ領域へのアクセスを得るための制御情報などの制御レジスタ機能を含み得る。よって、ＰＣＩヘッダ機能は２つの部分に分割する（第１の部分は、装置自体における特定の機能に特に結びつけられたｓｈｉｍに分割し、第２の部分は、ＳｏＣ内のコマンドのルーティングに結びつけられているのでＹｕｎｉｔに分割する）ことができる。そういうものとして、構成部分のＰＣＩ増分機能は２つの部分（ターゲットのアドレスが分からないので、要求者に関してＹｕｎｉｔ及びＩＰコアの隣にあるｓｈｉｍ）に分割される。
【００１０】
Ｙｕｎｉｔは、ターゲットＩＰが理解することが可能なトランザクションにＰＣＩ構成サイクルを変換することにより、ＰＣＩ列挙を実現する。このユニットは、再配置可能なＰＣＩアドレスから固定ＡＸＩ／ＯＣＰアドレスへのアドレス変換も行う。Ｙｕｎｉｔは更に、生産者・消費者モデル（例えば、ＰＣＩ生産者・消費者モデル）を満たすための配列機構を実現することができる。よって、Ｙｎｉｔには、特定の要求（すなわち、復号化された要求）をＹｕｎｉｔに対して行うために周辺装置に通常、組み入れられるロジックが設けられ得、次いで、要求を復号化し、その要求にターゲット化された周辺装置がどれであるかを判定し、次いで、要求を特定の装置のみに送出する。よって、種々の実施例では、アダプタはＰＣＩ−ＰｔＰ変換を行うことができる。
【００１１】
同様に、個々のＩＰは、専用ＰＣＩｓｈｉｍを介して相互接続に接続される。各ｓｈｉｍは、対応するＩＰのＰＣＩヘッダ機能全てを実現することができるが、Ｙｕｎｉｔはアドレス復号化を行うことが可能である。そういうものとして、Ｙｕｎｉｔは、アクセス全てをＰＣＩヘッダに、かつ、装置メモリ空間をｓｈｉｍにルーティングする。ｓｈｉｍは、ヘッダ読出／書込トランザクション全てを消費し、他のトランザクションをＩＰに転送する。特定の実施例では、ｓｈｉｍは、ＩＰの電力管理関連機能も実現する。
【実施例】
【００１２】
次に図１を参照すれば、本発明の一実施例によるプロセッサのブロック図を示す。図１に示すように、プロセッサ１０は、単一の半導体ダイ上に形成することが可能なシステム・オン・チップ（ＳｏＣ）や他の集積回路であり得る。図１の実施例では、プロセッサ１０は、標準的なＰＣシグナリング機構（ＰＣＩプロトコルなど）を使用して前述の種々の異種リソースを通信し、制御するための機能を提供するためのインタフェースに結合することが可能な種々の異種リソースを含み得るが、本発明の範囲はこの点に限定されるものでない。
【００１３】
図１に示すように、一実施例では、特定のプロトコル（例えば、ＤＭＩプロトコル）によって通信することが可能な第１のインタフェースを有するＤＭＩアダプタであり得るアダプタを含み得る。しかし、他の実現形態では、アダプタ２０は、ＰＣＩ、ＰＣＩｅや、他の前述のＰＣベースの通信プロトコルにより、この第１のインタフェースを使用して通信することができる。よって、ＳｏＣの別の部分、又は、ＰＣのチップセット構成部分（例えば、入出力コントローラ・ハブ（ＩＣＨ））などの別の構成部分などのアップストリーム構成部分との通信が、特定のＰＣプロトコル（例えば、図１に示すＤＭＩプロトコル）によって行われ得る。
【００１４】
同様に、ダウンストリーム通信が、図１に示すＯＣＰプロトコルなどの非ＰＣ通信プロトコルに応じて行われ得るが、他の実現形態が確かに可能である。
【００１５】
アダプタ２０は、上記の通り、種々のＰＣＩや他の前述のＰＣベースの動作を処理することができるＹｕｎｉｔ３０と通信する。そのダウンストリーム側では、Ｙｕｎｉｔ３０は、相互接続４０に結合され得る。相互接続４０は、Ｙｕｎｉｔ３０と、別々の複数の異種リソースとの間の通信のルーティング及び相互接続を提供することができる。図１に示す実施例では、前述のリソースは、第１のリソース５０、第２のリソース６０及び第３のリソース７０を含む。それらそれぞれは、１つ又は複数の第三者の特定のＩＰブロックなどの特定の異種リソースを表し得る。各異種リソースは、１つ又は複数の専用機能を行うために違ったふうに構成することができる。
【００１６】
図１をなお参照すれば、相互接続４０は各リソース及びＹｕｎｉｔ３０に相互接続（例えば、ＯＣＰ相互接続）を介して結合することができる。図１に示すように、物理装置４５ａ−ｃ（対応するリソース及び相互接続４０、総称的に物理装置４５間にそれぞれが結合される）は、トランザクション相とのインタフェースとして機能して、物理相互接続線上で送信する対象の実際のビット及びバイトにトランザクションを変換するためのロジック、回路等を含み得る。よって、各リソースと相互接続４０との間には、トランザクション層・物理層、及び物理層・トランジション層遷移ができるための物理装置４５がある。例証を容易にするために単一のユニットとして示しているが、別個の物理装置は物理ワイヤの各端部において結合することができる。
【００１７】
各リソースは、装置を相互接続４０に接続するためのｓｈｉｍを含む。Ｓｈｉｍを使用して、リソースの個別のＩＰブロックとｓｈｉｍとの間の通信が、ＩＰブロックの下にあるプロトコルによるものであり得るように、Ｙｕｎｉｔ３０によって行われる対象の復号化機能のアドレス指定以外のＰＣＩ関連動作全てを行うことができる。よって、図１に示すように、リソース５０は、ＯＣＰベースの相互接続などの相互接続により、ＩＰブロック５８に結合されたｓｈｉｍ５５を含む。同様に、リソース６０は、ＯＣＰ相互接続により、ＩＰブロック６８に結合されたｓｈｉｍ６５を含む。図１には、ＯＣＰ相互接続により、ＩＰブロック７８に結合されたｓｈｉｍ７５を含むリソース７０も示す。図１の実施例ではこの特定の実現形態によって示しているが、本発明の範囲はこの点に限定されるものでない。
【００１８】
むしろ、モノリシック互換性ブロックである代わりに、Ｙｕｎｉｔを実現する実施例は分散アプローチをとる。ＩＰ全てにわたって共通の機能（例えば、アドレス変換及び配列）はＹｕｎｉｔにおいて実現される一方、電力管理、エラー処理などのＩＰ特有機能は、そのＩＰに合わせたｓｈｉｍにおいて実現される。
【００１９】
このようにして、新たなＩＰは、Ｙｕｎｉｔの最小の変更で追加することが可能である。例えば、一実現形態では、変更は、アドレス再配向テーブルにおける新たなエントリを追加することによって行われ得る。ｓｈｉｍはＩＰ特有である一方、特定の実現形態では、大量の機能（例えば、９０％超）が、ＩＰ全てにわたって共通である。これは、新たなＩＰの既存のｓｈｉｍの迅速な再構成を可能にする。
【００２０】
よって、実施例は、修正なしで、自動生成された相互接続ファブリックの使用も可能にする。ポイントツーポイント・バス・アーキテクチャでは、相互接続ファブリックの設計は、難しい作業であり得る。上記Ｙｕｎｉｔアプローチは、最小の努力で、かつ、業界標準ツールへの修正の必要なしで、産業エコシステムをＰＣＩシステムに使用する。
【００２１】
図２は、本発明の一実施例によるシステムのブロック図である。システム１００は、デスクトップ・システムからラップトップからウルトラモバイルＰＣに、種々のフォーム・ファクタで実現することが可能なＰＣＩベースのシステムなどのＰＣベースのシステムであり得る。図２に示すように、システム１００は、ホスト・インタフェース１１０に結合されたプロセッサ１０５を含み、ホスト・インタフェース１１０は同様に、メモリ１１５（ダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）など）に結合され、同様に、ＤＭＩアダプタ１２０に（例えば、ＤＭＩバスを介して）結合される。ＤＭＩアダプタ１２０は、図２の実施例では構成部分１３０乃至１７０として列挙された、図１に示すものなどのＳｏＣにも結合され得る。特定の実施例では、プロセッサ１０５は、ＰＣＩや他の前述のＰＣプロトコルを使用するウィンドウズ（登録商標）やリナックス（登録商標）ＯＳなどのＰＣベースのオペレーティング・システム（ＯＳ）を実行することが可能な低電力プロセッサであり得るが、システムの特定の構成部分は別のプロトコル（例えば、ＡＸＩ又はＯＣＰ）のものであり得る。
【００２２】
よって、ＰＣＩ型トランザクションをＩＰブロックにマッピングすることが可能である。ＩＰブロックはＰｔＰで相互接続することができる。よって、要求者とターゲットとの間の基本ＰｔＰ通信をサポートするＯＣＰプロトコル又はＡＸＩプロトコルに基づいた相互接続は、ＰＣＩバスヘッダ機能及びターゲットベースの復号化をサポートするよう拡張することができる。
【００２３】
更に、別々のＳｏＣ装置にわたるＩＰブロック再使用は、トランザクション・レベルを物理レベルと分離することにより、支援され得る。すなわち、トランザクション・レベルは相互接続が処理することが可能な種の要求を規定し、物理レベルはトランザクションが一点から別の点に進むやり方を表す。前述の２つのレベルを分けることにより、ＩＰは複数の世代の実現形態を超え得る。すなわち、相互接続自体は、別々の世代が、異なるサイズのトランジスタ（例えば、別々の半導体プロセスのもの）、又は、別々の実現形態（例えば、ＳｏＣから、複数のダイを含む実現形態）を有する場合に変わる可能性が高い。しかし、相互接続層が変わっている間に、トランザクション層は同じ状態に留まる。このようにして、物理層は、トランザクション層と独立して変更され得る。例えば、トランザクション層は、複数の世代にわたり、かつ、複数の物理層にわたって一貫していることがあり得る。対照的に、物理層がＩＰブロックに組み入れられた場合、世代間のかなりの変更が行われ得、それにより、効率的なＩＰブロック再使用が妨げられる。
【００２４】
実施例はコードで実現することができ、命令を行うためにシステムをプログラミングするために使用することが可能な命令を記憶させた記憶媒体上に記憶することができる。記憶媒体は、限定列挙でないが、フロッピー（登録商標）・ディスク、光ディスク、コンパクト・ディスク・リードオンリ・メモリ（ＣＤ−ＲＯＭ）、書換可能コンパクト・ディスク（ＣＤ−ＲＷ）及び光磁気ディスクなどの何れかのタイプのディスク、リードオンリ・メモリ（ＲＯＭ）、ダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）などのランダム・アクセス・メモリ（ＲＡＭ）、消去可能プログラマブル・リードオンリ・メモリ（ＥＰＲＯＭ）、フラッシュ・メモリ、電気的消去可能プログラマブル・リード・オンリ・メモリ（ＥＥＰＲＯＭ）などの半導体デバイス、磁気若しくは光カード、又は電子的命令の記憶に適した何れかの他のタイプの媒体を含み得る。
【００２５】
本発明は、限定数の実施例について説明しているが、当業者は、数多くの修正及び変形をそれらから認識するであろう。特許請求の範囲記載の請求項が、本発明の真の趣旨及び範囲の範囲内に収まる前述の修正及び変形全てを包含することが意図されている。
【符号の説明】
【００２６】
２０  ＤＭＩアダプタ
４０  相互接続
【図１】
2011138521.tif 000003
【図２】
2011138521.tif 000004