JP2007241904A - ブリッジ、情報処理装置およびアクセス制御方法 - Google Patents

ブリッジ、情報処理装置およびアクセス制御方法 Download PDF

Info

Publication number
JP2007241904A
JP2007241904A JP2006066789A JP2006066789A JP2007241904A JP 2007241904 A JP2007241904 A JP 2007241904A JP 2006066789 A JP2006066789 A JP 2006066789A JP 2006066789 A JP2006066789 A JP 2006066789A JP 2007241904 A JP2007241904 A JP 2007241904A
Authority
JP
Japan
Prior art keywords
peripheral device
access
downstream
memory
channel
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
JP2006066789A
Other languages
English (en)
Other versions
JP5074697B2 (ja
Inventor
Takeshi Yamazaki
剛 山崎
Hideyuki Saito
英幸 斎藤
Yuji Takahashi
祐治 高橋
Hideki Mitsuhayashi
秀樹 三林
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.)
Sony Interactive Entertainment Inc
Sony Corp
Original Assignee
Sony Corp
Sony Computer Entertainment Inc
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 Sony Corp, Sony Computer Entertainment Inc filed Critical Sony Corp
Priority to JP2006066789A priority Critical patent/JP5074697B2/ja
Priority to PCT/JP2006/323948 priority patent/WO2007105343A1/ja
Priority to US12/282,393 priority patent/US8095718B2/en
Publication of JP2007241904A publication Critical patent/JP2007241904A/ja
Application granted granted Critical
Publication of JP5074697B2 publication Critical patent/JP5074697B2/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
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0024Peripheral component interconnect [PCI]

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)
  • Bus Control (AREA)

Abstract

【課題】周辺デバイスからプロセッサのメモリへのアクセスにおいて、効率向上を図る。
【解決手段】プロセッサユニットと周辺デバイスを接続するブリッジ20の下流ポート22は、周辺デバイスとの間に提供されるバーチャルチャネルであって、周辺デバイスがそのいずれかを利用してプロセッサユニットのメモリにアクセスするための複数の下流チャネルのいずれかを介して、周辺デバイスからのアクセスを受け付ける。中継部24は、このアクセスを、プロセッサユニットによりサポートされる複数のバーチャルチャネルであって、各チャネルについてメモリへアクセスする際に使用可能なメモリ帯域がそれぞれ割り当てられた上流チャネルへ中継する。その際、下流チャネルの識別子と上流チャネルの識別子とを対応付けて記憶したテーブルを参照して、周辺デバイスからのアクセスに応じて、該周辺デバイスが用いる下流チャネルに対応する上流チャネルを割り当てる。
【選択図】図2

Description

本発明は、プロセッサユニットに接続された周辺デバイスから、プロセッサユニットへのアクセス技術に関する。
パーソナルコンピュータやサーバには、IOIF(IO インターフェイス)や、バスたとえばPCI(Peripheral Component Interconnect)バスを介して各種の周辺デバイスが接続され、情報処理システムが構成される。
周辺デバイスからプロセッサのメモリへアクセスする際に、プロセッサの負担を減らすために、DMA(ダイレクト・メモリ・アクセス)アーキテクチャを用いることが考えられる。こうすることによって、周辺デバイスは、プロセッサのメモリに直接アクセスすることができる。
しかし、周辺デバイスの種類によって、要求されるアクセス速度が異なる。たとえば、グラフィックカードは他の周辺デバイスより高速なアクセスが要求される。効率の良いアクセスを実現するためには、周辺デバイスから、プロセッサのメモリへのアクセスの制御に工夫が要求される。
本発明は、上記事情に鑑みてなされたものであり、その目的は、周辺デバイスからプロセッサのメモリへのアクセスにおいて、良い効率を図ることができる技術を提供することにある。
本発明のある態様は、ブリッジである。このブリッジは、プロセッサユニットと周辺デバイスを接続するブリッジであって、下流ポートと中継部を有する。
下流ポートは、周辺デバイスと接続し、周辺デバイスとの間に提供されるバーチャルチャネルであって、周辺デバイスがそのいずれかを利用してプロセッサユニットのメモリへのアクセスを行うための複数の下流チャネルをサポートする。
中継部は、周辺デバイスが下流ポートを介してプロセッサユニットのメモリへのアクセスを、プロセッサユニットによりサポートされる複数のバーチャルチャネルであって、各チャネルについてメモリへアクセスする際に使用可能なメモリ帯域がそれぞれ割り当てられた上流チャネルへ中継する。
この中継部は、下流チャネルの識別子と上流チャネルの識別子とを対応付けて記憶したテーブルを有し、該テーブルを参照して、周辺デバイスからのアクセスに応じて、該周辺デバイスが用いる下流チャネルに対応する上流チャネルを該周辺デバイスに割り当てる。
また、中継部が複数の内部バスを有する場合において、テーブルを、下流チャネルの識別子と内部バスの識別子とを対応付けて記憶した第1のテーブルと、内部バスの識別子と上流チャネルの識別子とを対応付けて記憶した第2のテーブルとを用いて構成するようにしてもよい。この場合、中継部は、周辺デバイスからのアクセスに応じて、第1のテーブルを参照して、該周辺デバイスが用いる下流チャネルに対応する内部バスを周辺デバイスに割り当て、第2のテーブルを参照して、周辺デバイスに割り当てられた内部バスに対応する上流チャネルを周辺デバイスに割り当てる。
さらに、第2のテーブルは、各内部バスにそれぞれ割り当てられた、ブリッジ内部におけるリソース帯域を、内部バスの識別子に対応付けて記憶しており、中継部は、該第2のテーブルを参照して、アクセスを行う周辺デバイスが使用するリソース帯域をさらに割り当てるようにしてもよい。
本発明の別の態様は、情報処理装置である。この情報処理装置は、プロセッサユニット、周辺デバイス、プロセッサユニットと周辺デバイスを接続するブリッジを備える。
ブリッジとしては、上述した態様のブリッジを適用することができる。プロセッサユニットは、ブリッジにより、いずれかの上流チャネルが割り当てられたアクセスを、該上流チャネルに対して割り当てられたメモリ帯域でプロセッサユニットのメモリに中継するアクセス制御部を有する。
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、コンピュータプログラムを記憶した記憶媒体などの間で相互に置換したものもまた、本発明の態様として有効である。
本発明は、プロセッサユニットに接続された周辺デバイスから、プロセッサユニットのメモリへのアクセスにおいて、効率の向上を図ることができる。
本発明の実施の形態の詳細を説明する前に、まず、本発明者が提案する技術の概要を説明する。
図1に示す情報処理システムについて考える。この情報処理システムは、プロセッサユニット10と、複数ここでは例として2つの周辺デバイス30を有し、プロセッサユニット10と周辺デバイス30は、ブリッジ20により接続される。プロセッサユニット10は、単一のプロセッサを有するシングルプロセッサシステムであってもよいし、複数のプロセッサを含むマルチプロセッサシステムであってもよい。なお、プロセッサユニット10は、図示しないメモリを備え、マルチプロセッサシステムの場合においては、このメモリは、各プロセッサからアクセス可能な共有メモリである。
図2は、ブリッジ20を示す。ブリッジ20は、周辺デバイス30と接続する下流ポート22と、プロセッサユニット10と接続する上流ポート28と、中継部24を備える。 下流ポート22は、周辺デバイス30が、プロセッサユニット10のメモリへアクセスするための複数のバーチャルチャネル(以下下流VCという)21をサポートし、周辺デバイス30は、いずれか1つまたは複数の下流VC21を用いてアクセスを行う。
周辺デバイス30は、プロセッサユニット10のメモリにアクセスするのに当たり、アクセス要求パケットを発行する。このアクセス要求パケットは、周辺デバイス30のアクセス先のメモリ領域のアドレスを指定可能なものであり、この周辺デバイス30が使用する下流VC21の識別子を含む。図3の上部は、周辺デバイス30が発行したアクセス要求パケット(以下入力パケットという)の例を示す。図中の下流VCIDは、該アクセスを行う周辺デバイス30が使用する下流VCの識別子であり、アドレスは、アクセス先のメモリ領域内の所定の位置を示しうるものである。
中継部24は、下流ポート22が受信した入力パケットを、図3の下部に示す出力パケットに変換し、この出力パケットは、上流ポート28によりプロセッサユニット10に出力される。
図3の下部に示すように、出力パケットは、上流VCIDとアドレスを有する。ここで、上流VCIDを説明する。
上流ポート28は、プロセッサユニット10のメモリへアクセス可能な複数のバーチャルチャネル(以下、上流VCという)29をサポートし、これらの上流VC29はまた、プロセッサユニット10によりサポートされている。上流VCIDは、上流VC29の識別子である。
各上流VC29は、プロセッサユニット10のメモリへアクセスする際に使用するメモリ帯域をそれぞれ割り当てられている。すなわち、上流ポート28から出力された出力パケットは、それに含まれる上流VCIDによっていずれの上流VC29を指定し、これによりメモリ帯域を指定することができる。
なお、「上流VC29がメモリ帯域を割り当てられている」とは、上流VC29とメモリ帯域が所定の対応関係を決められていればよく、直接に割り当てられているのはもちろん、間接に割り当てられているのもよい。たとえば、プロセッサユニット10の、上流ポート28と接続するIOIFが、メモリ帯域がそれぞれ割り当てられた複数のバーチャルチャネルをサポートし、上流VC29は、IOIFがサポートするバーチャルチャネルに割り当てられている場合において、上流VC29は、間接にメモリ帯域を割り当てられていると言える。
ブリッジ20の中継部24は、下流VC21を指定した入力パケットを、上流VC29を指定する出力パケットに変換する際に、たとえば図4に示すテーブルを用いる。このテーブルは、下流VC21の識別子(下流VCID)と、上流VC29の識別子(上流VCID)とを対応付けて記憶している。中継部24は、このテーブルを参照して、入力パケットに含まれる下流VCIDを、この下流VCIDに対応する上流VCIDに変換して出力パケットを得る。
プロセッサユニット10は、図示しないアクセス制御部を有する。このアクセス制御部は、出力パケットに含まれる上流VCIDを読み出し、それによって指定された上流VCに対応するメモリ帯域を割り当てアクセスを中継することによって、このアクセスのためのメモリ帯域の予約を実現する。
このように、本発明者が提案したこの技術によれば、周辺デバイス30毎に、プロセッサユニット10のメモリへアクセスする際に使用可能なメモリ帯域を制御することができる。これによって、周辺デバイスの種類に応じてメモリ帯域を予約することができ、たとえばリアルタイムデータなどのためのメモリ帯域を保証することができる。
また、メモリ帯域の予約は、プロセッサユニット10のCPUを介さずに、ブリッジ20とプロセッサユニット10のアクセス制御部との協働によって直接行われるので、オーバーヘッドを防ぐことができる。
次いで、ブリッジ20内において、下流ポート22から上流ポート28へのデータ転送を担う内部バス(図示せず)が複数ある場合について考える。この場合において、ブリッジ20の中継部24は、図5に示すテーブルを用いることができる。
図5に示すテーブルは、第1のテーブルと第2のテーブルを有する。第1のテーブルは、下流VCIDと、内部バスの識別子とを対応付けて記憶している。第2のテーブルは、内部バスの識別子と、上流VCIDとを対応付けて記憶している。なお、第2のテーブルは、内部バスの識別子と、上流VCIDに対応して、リソース割合も記憶しており、その詳細については後述する。
ブリッジ20の中継部24は、まず、第1のテーブルを参照して、周辺デバイス30から受信した入力パケットに含まれる下流VCIDに対応する内部バスの識別子を得、この識別子により示される内部バスを、このアクセスに割り当てる。この際、入力パケットに含まれる下流VCIDを、割り当てられた内部バスの識別子に変換する。以下、この変換されたパケットを内部パケットといい、図6はそれを示している。なお、図6において、内部バスIDは、内部バスの識別子である。
図6に示す内部パケットは、それに割り当てられた内部バス、すなわちこの内部パケットに含まれる内部バスIDにより示される内部バスによって上流ポート28へ転送される。中継部24は、内部パケットが上流ポート28により出力される前に、さらに内部パケットを出力パケットに変換する。具体的には、図5に示す第2のテーブルを参照し、内部パケットに含まれる内部バスIDを、この内部バスIDに対応する上流VCIDに変換する。
このように、下流VC21に応じて内部バスを割り当て、内部バスに応じて上流VC29を割り当てる。2つのテーブルを用いてパケットの変換すなわち割当を行い、テーブルの組み合わせによって柔軟な設定が可能となる。
さらに、本発明者は、ブリッジ20内部において、コマンドやデータなどを一時的に記憶するバッファなどのリソース(図示せず)を内部バス毎に設定可能にすることを提案する。具体的には、たとえば図5の第2のテーブルに示すように、内部バス毎に、この内部バスに割り当てられたリソースの割合が設定されている。なお、ここでリソースの割合を内部バス毎に設定しているが、エントリ数などを設定してもよい。
中継部24は、第2のテーブルを参照して内部パケットを出力パケットに変換する際に、内部パケットに含まれる内部バスIDに対応するリソースの割合も取得する。これによって、内部バス毎に使用可能なリソースを制御することができ、結果的には内部バス毎に出力可能な出力パケット数も制御することができる。
以下、本発明の実施の形態について、以上の概要を具現化してシステムを説明する。
図7は、本発明にかかる実施の形態による情報処理システムの構成を示す。この情報処理システムは、複数の周辺デバイス、マルチコアプロセッサ120、メインメモリ180、PCIデバイス100とマルチコアプロセッサ120とを接続するブリッジ110を有する。マルチコアプロセッサ120とメインメモリ180は、1つのプロセッサユニットを構成する。複数の周辺デバイスは、IOIF104を介して接続するデバイスや、PCIデバイス100などを含む。
PCIデバイス100の接続インターフェイスとして、PCIバスを用いる。ここで、PCIバスは、PCI、PCIX、PCI Express(登録商標)のいずれの仕様によるものでもよい。
ブリッジ110は、周辺デバイスとの間において複数のバーチャルチャネルすなわち下流VCを提供する。周辺デバイスは、いずれか1つまたは複数の下流VCを用いてアクセス要求パケットすなわち入力パケットをブリッジ110に発行する。
また、マルチコアプロセッサ120のIOIF160は、ブリッジ110との間において複数のバーチャルチャネルすなわち上流VCを提供する。ブリッジ110は、周辺デバイスからの入力パケットを変換してからいずれかの上流VCに中継する。入力パケットの変換については後述する。
さらに、マルチコアプロセッサ120のメモリコントローラ170は、IOIF160との間において複数のバーチャルチャネル(以下内部VCという)を提供する。各内部VCについて、メインメモリ180へアクセスするメモリ帯域が割り当てられている。
マルチコアプロセッサ120は、ワンチップで形成されており、主処理ユニットPPE(Power Processing Element)140と、複数、図示の例では8つのサブ処理ユニットSPE(Synergistic Processing Element)130と、IOIF160と、メモリコントローラ170とを有し、これらは、リングバス150によって接続される。
メインメモリ180は、マルチコアプロセッサ120の各処理ユニットの共有メモリであり、メモリコントローラ170と接続されている。
メモリコントローラ170は、メインメモリ180へのアクセスを制御する。なお、図7に示す例では、メインメモリ180はマルチコアプロセッサ120の外部に設けられているが、マルチコアプロセッサ120内に含まれるように設けられてもよい。
IOIF160は、図示しないIOEFバスによってブリッジ110と接続され、ブリッジ110と協働して、周辺デバイスからメインメモリ180へのアクセスを可能にする。IOIF160には、IOコントローラ164が含まれている。
SPE130は、コア132と、ローカルメモリ134と、メモリフローコントローラ(以下MFCという)136とを備え、MFC136には、DMAC(ダイレクトメモリアクセスコントローラ)138が含まれている。なお、ローカルメモリ134は、従来のハードウェアキャッシュメモリではないことが望ましく、それには、ハードウェアキャッシュメモリ機能を実現するための、チップ内蔵またはチップ外に置かれたハードウェアキャッシュ回路、キャッシュレジスタ、キャッシュメモリコントローラなどが無い。
PPE140は、コア142と、L1キャッシュ144と、L2キャッシュ145と、MFC146とを備え、MFC146には、DMAC148が含まれている。
通常、マルチコアプロセッサ120のオペレーティングシステム(以下OSともいう)は、PPE140において動作し、OSの基本処理に基づいて、各SPE130で動作するプログラムが決定される。また、SPE130で動作するプログラムは、OSの機能の一部をなすようなプログラム(たとえばデバイスドライバや、システムプログラムの一部など)であってもよい。なお、PPE140とSPE130の命令セットアーキテクチャは、異なる命令セットを有する。
図7に示す情報処理システムの初期化時において、マルチコアプロセッサ120のPPE140は、IOIF160内の変換テーブル(図示せず)を設定する。図8は、この変換テーブルの例を示す。図中上流VCIDは、IOIF160とブリッジ110の間に提供されるバーチャルチャネル(上流VC)の識別子であり、内部VCIDは、メモリコントローラ170が提供するバーチャルチャネル(内部VC)の識別子である。メモリコントローラ170は、内部VCを用いてメインメモリ180へのアクセスを中継する。なお、初期化時において、各内部VCに対して、メモリ帯域の割当も行われる。
周辺デバイスは、メインメモリ180にアクセスするのにあたり、アクセス要求パケットを発行する。ここで、このアクセス要求パケットとして、図3に示す入力パケットを用いる。本実施例において、入力パケットに含まれるアドレスは、実効アドレスである。
実効アドレスはメインメモリ180の実効アドレス空間内の所定の位置を示すアドレスである。また、実効アドレス空間は、メインメモリ180から部分的に切り取られたメモリ空間の一部同士を集合させ、結合したものである。マルチコアプロセッサ120は、実効メモリ空間をワークメモリとして使用する。実効メモリ空間の内部構成を最適化することにより、マルチコアプロセッサ120は最大パフォーマンスで動作できる。
図9は、ブリッジ110の構成を示す。ブリッジ110は、第1の入出力部112、ブリッジコントローラ114、複数(図示の例では4つ)の内部バス115、バッファ116、第2の入出力部118を有する。
第1の入出力部112は、周辺デバイスにより発行された入力パケットを、該入力パケットに含まれる下流VCを介して受け取る。ブリッジコントローラ114は、この入力パケットを、内部バス115上を転送される内部パケットに変換するとともに、内部バス115により転送された内部パケットを、第2の入出力部118に渡す出力パケットに変換する。ここで、内部パケットと出力パケットのフォーマットとして、図6と図3に示すものをそれぞれ使用する。
なお、内部パケットは、第2の入出力部118により出力される前にバッファ116に一時記憶されるようにすることができる。第2の入出力部118は、内部バス115により転送され、ブリッジコントローラ114により変換されたパケットを、このパケットに含まれる上流VCIDに対応する上流VCを介して、マルチコアプロセッサ120のIOIF160に出力する。
ブリッジコントローラ114は、図示しない2つの変換テーブルを有し、この2つの変換テーブルを用いて、入力パケットを内部パケットへの変換、および内部パケットを出力パケットへの変換を行う。ここで、入力パケットと出力パケット変換テーブルとして、図5に示すテーブルを用いる。なお、図5に示す第2のテーブルにおける「リソース割合」は、ここではバッファ116の割合に相当する。
IOIF160のIOコントローラ164は、ブリッジ110から渡された出力パケットをさらにメモリコントローラ170へ出力する。出力に際して、2つの変換を行う。1つは、図8に示すテーブルを参照して、出力パケットに含まれる上流VCIDを、対応する内部VCIDへの変換である。もう1つは、出力パケットに含まれる実効アドレスを、メインメモリ180における物理アドレスへの変換である。この変換によって得られたパケットを、以下IOIFコマンドという。図10には、IOIFコマンドを示している。
メモリコントローラ170、渡されたIOIFコマンドにしたがってメインメモリ180へのアクセスを中継する。ここで、メモリコントローラ170は、システムの初期化時において設定された、図11に示すテーブルを用いる。図11に示すテーブルは、内部VCの識別子(内部VCID)と、該内部VCIDにより示される内部VCに割り当てられたメモリ帯域とを対応付けて記憶している。メモリコントローラ170は、このテーブルを参照して、IOIFコマンドに含まれる内部VCIDに対応するメモリ帯域でアクセスを中継し、アクセス先として、メインメモリ180における、このIOIFコマンドに含まれる物理アドレスにより示される位置である。
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
たとえば、図7に示す情報処理システムにおいて、周辺デバイスとなるPCIデバイス100について、PCI規格以外の周辺デバイスを用いてもよい。
本発明の概要の説明に用いた情報処理システムを示す図である。 図1に示す情報処理システムにおけるブリッジを示す図である。 入力パケットと出力パケットを示す図である。 入力パケットを出力パケットに変換するためのテーブルの例(その1)を示す図である。 入力パケットを出力パケットに変換するためのテーブルの例(その2)を示す図である。 ブリッジ20の内部バス上を転送される内部パケットを示す図である。 本発明にかかる実施の形態による情報処理システムの構成を示す図である。 上流VCIDを内部VCIDに変換するためのテーブルの例を示す図である。 図7に示す情報処理システムにおけるブリッジの構成例を示す図である。 IOIFコマンドの例を示す図である。 内部VCIDとメモリ帯域を対応づけたテーブルである。
符号の説明
10 プロセッサユニット、 20 ブリッジ、 21 下流VC、 22 下流ポート、 24 中継部、 28 上流ポート、 29 上流VC、 30 周辺デバイス、 100 PCIデバイス、 102 IOIF、 110 ブリッジ、 112 第1の入出力部、 114 ブリッジコントローラ、 115 内部バス、 116 バッファ、 118 第2の入出力部、 120 マルチコアプロセッサ、 130 SPE、 132 コア、 134 ローカルメモリ、 136 MFC、 138 DMAC、 140 PPE、 142 コア、 144 L1キャッシュ、 145 L2キャッシュ、 146 MFC、 148 DMAC、 150 リングバス、 160 IOIF、 164 IOコントローラ、 170 メモリコントローラ、 180 メインメモリ。

Claims (7)

  1. プロセッサユニットと周辺デバイスを接続するブリッジであって、
    前記周辺デバイスと接続する下流ポートと、
    前記周辺デバイスが前記下流ポートを介して前記プロセッサユニットのメモリへのアクセスを、前記プロセッサユニットによりサポートされる複数のバーチャルチャネルであって、各チャネルについて前記プロセッサユニットのメモリへアクセスする際に使用可能なメモリ帯域がそれぞれ割り当てられた上流チャネルへ中継する中継部とを備え、
    前記下流ポートは、前記周辺デバイスとの間に提供されるバーチャルチャネルであって、前記周辺デバイスがそのいずれかを利用して前記アクセスを行うための複数の下流チャネルをサポートし、
    前記中継部は、前記下流チャネルの識別子と前記上流チャネルの識別子とを対応付けて記憶したテーブルを有し、
    該テーブルを参照して、前記周辺デバイスからの前記アクセスに応じて、該周辺デバイスが用いる下流チャネルに対応する上流チャネルを前記周辺デバイスに割り当てることを特徴とするブリッジ。
  2. 前記中継部は、複数の内部バスを有し、
    前記テーブルは、下流チャネルの識別子と内部バスの識別子とを対応付けて記憶した第1のテーブルと、
    内部バスの識別子と上流チャネルの識別子とを対応付けて記憶した第2のテーブルとを有し、
    前記中継部は、前記周辺デバイスからの前記アクセスに応じて、前記第1のテーブルを参照して、該周辺デバイスが用いる下流チャネルに対応する内部バスを前記周辺デバイスに割り当て、
    前記第2のテーブルを参照して、前記周辺デバイスに割り当てられた前記内部バスに対応する上流チャネルを前記周辺デバイスに割り当てることを特徴とする請求項1に記載のブリッジ。
  3. 前記第2のテーブルは、さらに、各内部バスにそれぞれ割り当てられた、ブリッジ内部におけるリソース帯域を、前記内部バスの識別子に対応付けて記憶しており、
    前記中継部は、該第2のテーブルを参照して、前記アクセスを行う周辺デバイスが使用する前記リソース帯域をさらに割り当てることを特徴とする請求項2に記載のブリッジ。
  4. プロセッサユニットと、
    周辺デバイスと、
    前記プロセッサユニットと前記周辺デバイスを接続するブリッジとを備える情報処理装置であって、
    前記ブリッジは、前記周辺デバイスと接続する下流ポートと、
    前記周辺デバイスが前記下流ポートを介して前記プロセッサユニットのメモリへのアクセスを、前記プロセッサユニットによりサポートされる複数のバーチャルチャネルであって、各チャネルについて前記プロセッサユニットのメモリへアクセスする際に使用可能なメモリ帯域がそれぞれ割り当てられた上流チャネルへ中継する中継部とを備え、
    前記下流ポートは、前記周辺デバイスとの間に提供されるバーチャルチャネルであって、前記周辺デバイスがそのいずれかを利用して前記アクセスを行うための複数の下流チャネルをサポートし、
    前記中継部は、前記下流チャネルの識別子と前記上流チャネルの識別子とを対応付けて記憶したテーブルを有し、
    該テーブルを参照して、前記周辺デバイスからの前記アクセスに応じて、該周辺デバイスが用いる下流チャネルに対応する上流チャネルを前記周辺デバイスに割り当て、
    前記プロセッサユニットは、いずれかの前記上流チャネルが割り当てられた前記アクセスを、該上流チャネルに対して割り当てられたメモリ帯域で前記メモリに中継するアクセス制御部を有することを特徴とする情報処理装置。
  5. 前記中継部は、複数の内部バスを有し、
    前記テーブルは、下流チャネルの識別子と内部バスの識別子とを対応付けて記憶した第1のテーブルと、
    内部バスの識別子と上流チャネルの識別子とを対応付けて記憶した第2のテーブルとを有し、
    前記中継部は、前記周辺デバイスからの前記アクセスに応じて、前記第1のテーブルを参照して、該周辺デバイスが用いる下流チャネルに対応する内部バスを前記周辺デバイスに割り当て、
    前記第2のテーブルを参照して、前記周辺デバイスに割り当てられた前記内部バスに対応する上流チャネルを前記周辺デバイスに割り当てることを特徴とする請求項4に記載の情報処理装置。
  6. 前記第2のテーブルは、さらに、各内部バスにそれぞれ割り当てられた、ブリッジ内部におけるリソース帯域を、前記内部バスの識別子に対応付けて記憶しており、
    前記中継部は、該第2のテーブルを参照して、前記アクセスを行う周辺デバイスが使用する前記リソース帯域をさらに割り当てることを特徴とする請求項5に記載の情報処理装置。
  7. プロセッサユニットと周辺デバイスとを接続するブリッジを用いたアクセス制御方法であって、
    前記ブリッジと前記周辺デバイスとの間に提供されるバーチャルチャネルであって、前記周辺デバイスがそれを利用して前記プロセッサユニットのメモリにアクセスするための複数の下流チャネルのいずれかを介して、前記周辺デバイスからの前記アクセスを受け付けるステップと、
    該アクセスを、前記プロセッサユニットによりサポートされる複数のバーチャルチャネルであって、各チャネルについて前記プロセッサユニットのメモリへアクセスする際に使用可能なメモリ帯域がそれぞれ割り当てられた上流チャネルへ中継するステップとを有し、
    前記中継をするステップは、前記下流チャネルの識別子と前記上流チャネルの識別子とを対応付けて記憶したテーブルを参照して、前記周辺デバイスからの前記アクセスに応じて、該周辺デバイスが用いる下流チャネルに対応する上流チャネルを前記周辺デバイスに割り当てるステップを有することを特徴とするアクセス制御方法。
JP2006066789A 2006-03-10 2006-03-10 ブリッジ、情報処理装置およびアクセス制御方法 Expired - Fee Related JP5074697B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006066789A JP5074697B2 (ja) 2006-03-10 2006-03-10 ブリッジ、情報処理装置およびアクセス制御方法
PCT/JP2006/323948 WO2007105343A1 (ja) 2006-03-10 2006-11-30 ブリッジ、情報処理装置およびアクセス制御方法
US12/282,393 US8095718B2 (en) 2006-03-10 2006-11-30 Bridge, information processor, and access control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006066789A JP5074697B2 (ja) 2006-03-10 2006-03-10 ブリッジ、情報処理装置およびアクセス制御方法

Publications (2)

Publication Number Publication Date
JP2007241904A true JP2007241904A (ja) 2007-09-20
JP5074697B2 JP5074697B2 (ja) 2012-11-14

Family

ID=38509187

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006066789A Expired - Fee Related JP5074697B2 (ja) 2006-03-10 2006-03-10 ブリッジ、情報処理装置およびアクセス制御方法

Country Status (3)

Country Link
US (1) US8095718B2 (ja)
JP (1) JP5074697B2 (ja)
WO (1) WO2007105343A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009151447A1 (en) * 2008-06-10 2009-12-17 Hewlett-Packard Development Company, L.P. Presenting multi-function devices behind a switch hierarchy as a single function device
JP5687959B2 (ja) * 2011-06-20 2015-03-25 株式会社日立製作所 I/oデバイス共有方法、および装置
US10164835B2 (en) * 2016-06-17 2018-12-25 Vmware, Inc. Accessing peripheral devices from a container within virtual machines running on different host computing systems

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09107354A (ja) * 1995-07-12 1997-04-22 Compaq Computer Corp データ通信システム及び方法
JPH09162918A (ja) * 1995-12-12 1997-06-20 Hitachi Cable Ltd リピーティングハブ
JPH1131118A (ja) * 1997-07-10 1999-02-02 Nec Eng Ltd 情報処理装置のシステム再構成回路及びそのシステム再構成方法並びにシステム再構成制御プログラムを記憶した記憶媒体
JP2001156822A (ja) * 1999-11-25 2001-06-08 Nec Corp ハブ装置
JP2005332372A (ja) * 2004-04-23 2005-12-02 Ricoh Co Ltd 画像処理装置及び画像形成装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020073431A1 (en) * 2000-12-11 2002-06-13 Adc Telecommunications, Inc. Supporting multiple data channels in a cable modem termination system
US7426744B2 (en) * 2001-09-27 2008-09-16 Broadcom Corporation Method and system for flexible channel association
US7380018B2 (en) * 2003-05-15 2008-05-27 Broadcom Corporation Peripheral bus transaction routing using primary and node ID routing information
US7155553B2 (en) * 2003-08-14 2006-12-26 Texas Instruments Incorporated PCI express to PCI translation bridge
US7096308B2 (en) * 2003-08-29 2006-08-22 Texas Instruments Incorporated LPC transaction bridging across a PCI—express docking connection
US7613864B2 (en) * 2005-04-22 2009-11-03 Sun Microsystems, Inc. Device sharing
US7966402B2 (en) * 2005-06-28 2011-06-21 Hewlett-Packard Development Company, L.P. Switch to selectively couple any of a plurality of video modules to any of a plurality of blades
US7903558B1 (en) * 2007-09-28 2011-03-08 Qlogic, Corporation Method and system for monitoring a network link in network systems

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09107354A (ja) * 1995-07-12 1997-04-22 Compaq Computer Corp データ通信システム及び方法
JPH09162918A (ja) * 1995-12-12 1997-06-20 Hitachi Cable Ltd リピーティングハブ
JPH1131118A (ja) * 1997-07-10 1999-02-02 Nec Eng Ltd 情報処理装置のシステム再構成回路及びそのシステム再構成方法並びにシステム再構成制御プログラムを記憶した記憶媒体
JP2001156822A (ja) * 1999-11-25 2001-06-08 Nec Corp ハブ装置
JP2005332372A (ja) * 2004-04-23 2005-12-02 Ricoh Co Ltd 画像処理装置及び画像形成装置

Also Published As

Publication number Publication date
US20090222610A1 (en) 2009-09-03
WO2007105343A1 (ja) 2007-09-20
US8095718B2 (en) 2012-01-10
JP5074697B2 (ja) 2012-11-14

Similar Documents

Publication Publication Date Title
US10693781B2 (en) In NIC flow switching
JP4805314B2 (ja) 入出力(i/o)仮想化動作のプロセッサへのオフロード
JP4469010B2 (ja) ブリッジ、情報処理システムおよびアクセス制御方法
JP4219964B2 (ja) ブリッジ、プロセッサユニット、情報処理装置およびアクセス制御方法
US7603508B2 (en) Scalable distributed memory and I/O multiprocessor systems and associated methods
JP4895183B2 (ja) メモリコントローラ
JP2005309553A (ja) 計算機
US20050228930A1 (en) Programmable inter-virtual channel and intra-virtual channel instructions issuing rules for an I/O bus of a system-on-a-chip processor
KR101003102B1 (ko) 멀티 프로세싱 유닛에 대한 메모리 매핑방법, 및 장치
US20110153875A1 (en) Opportunistic dma header insertion
US20140344485A1 (en) Communication system for interfacing a plurality of transmission circuits with an interconnection network, and corresponding integrated circuit
US20120183001A1 (en) Network apparatus, network configuration method and program recording medium which records a network apparatus program
CN115357416B (zh) 一种跨系统进行数据处理的方法及装置
WO2007080718A1 (ja) ブリッジ、情報処理装置、情報処理システムおよびグローバルアドレス管理方法
JP5074697B2 (ja) ブリッジ、情報処理装置およびアクセス制御方法
CN101178697B (zh) 一种pcie设备通信方法及系统
TW200407712A (en) Configurable multi-port multi-protocol network interface to support packet processing
JP2008065478A (ja) 情報処理装置、データ転送方法及びプログラム
JP2016139256A (ja) 入出力制御装置、入出力制御システム、入出力制御方法、および、プログラム
US20190286606A1 (en) Network-on-chip and computer system including the same
JP6294732B2 (ja) データ転送制御装置及びメモリ内蔵装置
JP2007087177A (ja) 情報処理装置
US20140372655A1 (en) System and Method for Symmetrical Direct Memory Access (SDMA)
KR100581196B1 (ko) 다중 채널을 제공하는 에스오씨 버스 구조
CN112867998B (zh) 运算加速器、交换器、任务调度方法及处理系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090305

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20101126

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101214

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20110127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110517

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110715

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120406

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 5074697

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150831

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

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees