WO2023112646A1 - 情報処理装置、及び情報処理装置の制御方法 - Google Patents

情報処理装置、及び情報処理装置の制御方法 Download PDF

Info

Publication number
WO2023112646A1
WO2023112646A1 PCT/JP2022/043678 JP2022043678W WO2023112646A1 WO 2023112646 A1 WO2023112646 A1 WO 2023112646A1 JP 2022043678 W JP2022043678 W JP 2022043678W WO 2023112646 A1 WO2023112646 A1 WO 2023112646A1
Authority
WO
WIPO (PCT)
Prior art keywords
information processing
fabric
devices
iou
pci express
Prior art date
Application number
PCT/JP2022/043678
Other languages
English (en)
French (fr)
Inventor
紀圭 馬場
Original Assignee
日本電気株式会社
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 日本電気株式会社 filed Critical 日本電気株式会社
Publication of WO2023112646A1 publication Critical patent/WO2023112646A1/ja

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/10Program control for peripheral devices
    • 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
    • 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
    • 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/42Bus transfer protocol, e.g. handshake; Synchronisation

Abstract

特殊なソフトウェアを用意することなく、認識できるデバイスの数を増加させることができる情報処理装置、及び情報処理装置の制御方法を提供する。情報処理装置は、中央処理装置と、PCI Express規格に沿ったI/O(Input/Output)デバイスがファブリックに接続されるホストバスアダプタと、を有する情報処理装置であって、上記ホストバスアダプタは、PCI Express規格の入出力インターフェースであり、少なくとも1つの上記I/Oデバイスを含むIOU(Input/Output Unit)とファブリック通信機能で通信するものであり、上記ホストバスアダプタは、PCI Express規格に沿った複数のファンクションを含む機能部と、上記機能部のファンクションと上記ファブリックに接続される外部のI/Oデバイスとを対応付けてマッピングするマッピングテーブルと、を含む。

Description

情報処理装置、及び情報処理装置の制御方法
 本発明は、情報処理装置、及び情報処理装置の制御方法に関し、特にネットワーク機器やストレージ機器に代表される外部機器が接続される情報処理装置、及び情報処理装置の制御方法に関する。
 情報処理装置には、ネットワーク機器やストレージ機器に代表される外部機器が接続されるI/O(Input/Output)インターフェースとして、例えばHBA(Host Bus Adapter)が設けられている。このようなI/Oインターフェースの一例として、PCI Express(Peripheral Component Interconnect Express)(登録商標)がある。なお、この明細書では以下、PCI ExpressをPCIeと略称する場合がある。PCIeは、PCI-SIG(PCI Special Interest Group)により策定された拡張バスの一種であって、計算機で使用されるものである。PCIeは、シリアル転送インターフェースと全二重通信方式とを採用している。
 PCIeでは、接続される外部機器をBDF(Bus、Device、Function)という3つの番号で識別する。PCIeでは、バス番号が8bitで定義されている。
 特許文献1は、PCIeファブリックの拡張に関するものである。特許文献1では、PCIeデバイスは、ホストルートコンプレックスを含むホストPCIeファブリックを備えること、ホストPCIeファブリックは、ホストCPU上に、バス番号の第1のセットと、第1のメモリマップト入力/出力(MMIO)空間を有すること、が提案されている。また特許文献1では、PCIeファブリックは、ホストPCIeファブリックのエンドポイントの一部として、ルートコンプレックスエンドポイント(RCEP)を含むこと、が提案されている。また特許文献1では、PCIeファブリックは、バス番号の第1のセットおよび第1のMMIO空間からそれぞれ別けられたバス番号の第2のセットおよび第2のMMIO空間を有すること、が提案されている。
 特許文献2は、複数の計算機と複数のI/OデバイスとをPCIeスイッチを介して接続するといった計算機システムに関するものである。特許文献2では、I/OコントローラにPCIeスイッチを多段に接続し、末端のPCIeスイッチにI/Oデバイスを接続した構成の場合に、PCI-PCIブリッジの接続の対応付けを変更することが提案されている。特許文献2では、このPCI-PCIブリッジの接続の対応付けを変更することによって、バス番号をI/Oデバイスに柔軟に割り当てて、接続可能なI/Oデバイスの数が減少するのを防止することが提案されている。
 特許文献3は、Express Etherネットワークを制御する通信システムに関するものである。特許文献3には、Express Etherは、“PCI Express over Ether”を実現する技術であることが記載されている。なお、“PCI Express over Ether”は、PCI ExpressバスをEthernet(登録商標)上に拡張するものである。また特許文献3には、Express Etherでは、PCI expressの仕様で規定されたTLP(Transaction Layer Packet)がカプセル化され、ネットワークを経由して送受信されることが記載されている。
特開2018-125028号公報 国際公開第2012/073304号 特開2016-144142号公報
 しかしながら、I/OインターフェースをPCIeとした情報処理装置では、PCIeの仕様上、バス番号が8bitで定義されているため、1つの情報処理装置に256デバイスまでしか認識実装できないという課題がある。
 1つのデバイス内に仮想的に複数のファンクションを実装するSR-IOV(Single Root-I/O Virtualization)という技術が、PCIeで規定されている。この技術では、1つのバス番号で、複数のデバイスであるかのようにシステムに認識させることが可能である。しかしながら、SR-IOVに対応していないデバイスは、複数に見せることができない。このためSR-IOVに対応していないデバイスであっても、1つの情報処理装置で257以上のデバイスを認識できる技術が望まれる。
 特許文献2や特許文献3では、このようなPCIeの仕様を越える数のデバイスを認識できるようにする実現手段は、提案されていない。特許文献2の場合、PCIeスイッチ内でバス番号が消費されるのを防止することを提案するのみであり、1つの情報処理装置で257以上のデバイスを認識できるようにする実現手段を提案するものではない。
 特許文献1では、第1レベルPCIeファブリックのPCIeコンフィグレーション空間は256MBまでしか使えない。そのため、拡張PCIeファブリックを第1レベルPCIeファブリックと別の空間にアサインしてアクセスするためには、特殊なソフトウェアが必要になる。
 本発明の目的は、上述した課題を鑑み、特殊なソフトウェアを用意することなく、認識できるデバイスの数を増加させることができる情報処理装置、及び情報処理装置の制御方法を提供することにある。
 前記目的を達成するため、本発明に係る情報処理装置は、中央処理装置と、PCI Express規格に沿ったI/O(Input/Output)デバイスがファブリックに接続されるホストバスアダプタと、を有する情報処理装置であって、
 上記ホストバスアダプタは、PCI Express規格の入出力インターフェースであり、少なくとも1つの上記I/Oデバイスを含むIOU(Input/Output Unit)とファブリック通信機能で通信するものであり、
 上記ホストバスアダプタは、PCI Express規格に沿った複数のファンクションを含む機能部と、上記機能部のファンクションと上記ファブリックに接続される外部のI/Oデバイスとを対応付けてマッピングするマッピングテーブルと、を含む。
 本発明に係る情報処理装置の制御方法は、中央処理装置と、PCI Express規格に沿ったI/O(Input/Output)デバイスがファブリックに接続されるホストバスアダプタと、を有する情報処理装置の制御方法であって、
 上記ホストバスアダプタは、PCI Express規格の入出力インターフェースであり、
 上記ホストバスアダプタは、PCI Express規格に沿った複数のファンクションと上記ファブリックに接続される外部のI/Oデバイスとを対応付けたマッピングテーブルを参照して、少なくとも1つの上記I/Oデバイスを含むIOU(Input/Output Unit)とファブリック通信機能で通信する。
 本発明によれば、特殊なソフトウェアを用意することなく、認識できるデバイスの数を増加させることができる情報処理装置、及び情報処理装置の制御方法を提供することができる。
本発明の上位概念の実施形態による情報処理装置の一例を説明するためのブロック図である。 本発明の一実施形態による情報処理装置を説明するためのブロック図である。 図2の主要部分の詳細構成を説明するためのブロック図である。 図3のマッピングテーブル22の一例を示す概念図である。 ルーティングテーブルの一例を示す概念図である。 一実施形態による情報処理装置の動作を説明するためのシーケンスチャートである。 一実施形態による情報処理装置の動作を説明するためのシーケンスチャートである。 一実施形態による情報処理装置の動作を説明するためのシーケンスチャートである。
 (実施形態の概要)
 本発明の実施形態による情報処理装置は、例えば、Express EtherのようなPCI Express(PCIe)をファブリックに拡張できる技術をベースとした情報処理システムである。そして情報処理装置側に搭載するHBA(Host Bus Adapter)において、PCIeをマルチファンクションに対応したエンドポイントとして終端させる。そして、ファブリックの先に接続したI/OデバイスをHBA内のマルチファンクションにマッピングさせる。これによって、情報処理システムに257以上のI/Oデバイス(PCIe規格)を認識させることを可能とする。
 〔上位概念の実施形態〕
 本発明の具体的な実施形態について説明する前に、本発明の上位概念の実施形態による情報処理装置、及び情報処理装置の制御方法について、説明する。図1は、本発明の上位概念の実施形態による情報処理装置の一例を説明するためのブロック図である。
 図1の情報処理装置は、図示しない中央処理装置と、PCI Express規格に沿ったI/O(Input/Output)デバイス111とがファブリックに接続されるホストバスアダプタ100とを有する。図1の情報処理装置の上記ホストバスアダプタ100は、PCI Express規格の入出力インターフェースであり、少なくとも1つの上記I/Oデバイス111を含むIOU(Input/Output Unit)110とファブリック通信機能で通信する。
 上記ホストバスアダプタ100は、機能部101と、外部のI/Oデバイス111とを対応付けてマッピングするマッピングテーブル102と、を含む。ここで、機能部101は、PCI Express規格に沿った複数のファンクションを含む。外部のI/Oデバイス111は、機能部101のファンクションと上記ファブリックに接続される。ホストバスアダプタ100のマッピングテーブル102では、機能部101のファンクションと、ファブリック通信機能で接続したI/Oデバイス111とのマッピングを管理する。
 図1の情報処理装置では、機能部101のファンクションと上記ファブリックに接続される外部のI/Oデバイス111とを対応付けてマッピングするマッピングテーブル102を参照する。ファブリックの先に接続したI/OデバイスをHBA内のマルチファンクションにマッピングさせる。これによって、特殊なソフトウェアを用意することなく、認識できるデバイスの数を増加させることができる。これにより、257以上のI/Oデバイス(PCIe規格)を認識させることを可能とする。以下、より具体的な実施形態について、図面を参照しながら詳細に説明する。
 〔一実施形態〕
 次に、本発明の一実施形態による情報処理装置、及び情報処理装置の制御方法について、説明する。図2は、本発明の一実施形態による情報処理装置を説明するためのブロック図である。図3は、図2の主要部分の詳細構成を説明するためのブロック図である。図4は、図3のマッピングテーブル22の一例を示す概念図である。図5は、ルーティングテーブルの一例を示す概念図である。
 (実施形態の構成)
 図2の情報処理装置は、CPU(Central Processing Unit)10と、HBA(Host Bus Adapter)20とを含む。図2の情報処理装置には、ファブリック25を経由してIOU(Input/Output Unit)30が接続される。図2では、複数のIOUが接続される場合を示しており、IOU30と、IOU30と、IOU30とが接続される場合を一例として示している。なおここでkとnは一例として、1<k<nを満たすような整数である。図2では、さらに複数のI/Oデバイスが接続される場合を示しており、I/Oデバイス40がIOU30と接続され、I/Oデバイス40がIOU30と接続され、I/Oデバイス40がIOU30と接続される場合を一例として示している。なおここでkとmは一例として、1<k<256<mを満たすような整数である。
 図3には、図2の情報処理装置の詳細構成として、図2のHBA20と、複数のIOU30の一例としてIOU30及びIOU30を含む場合を示している。図3のHBA20は、複数のファンクション部の一例として複数のファンクション部(Func#0~Func#255)と、マッピングテーブル22と、ファブリック通信機能部23とを含む。複数のファンクション部(Func#0~Func#255)については、以下では複数のファンクション部21と称したり、ファンクション部21~21255と称したりする場合がある。なおここで図3では、ファンクション部21の数が0~255の合計256個の場合を示しているが、本発明の実施形態で複数のファンクション部の数はこれに限られず、これより多くてもよい。
 図3のHBA20と接続されるIOU30は、ファブリック通信機能部31と、仮想Root Port32と、1又は複数のI/Oデバイス40とを含む。図3では、IOU30は、ファブリック通信機能部31と、仮想Root Port32と、I/Oデバイス40とを含んでいる。また図3では、IOU30は、ファブリック通信機能部31と、仮想Root Port32と、複数のI/Oデバイス(I/Oデバイス40及びI/Oデバイス40)とを含んでいる。
 HBA20の複数のファンクション部21は、PCIeの規格に沿ったファンクションであり、マルチファンクションデバイスとして定義する。マルチファンクションを示す箇所以外のコンフィグレーションレジスタ等については、マッピングされるI/Oデバイス40のものをそのまま使用する。このため、マルチファンクションを示す箇所以外のコンフィグレーションレジスタ等については、ファンクション部21には実装しない。図3では、ファンクション部21の数が0~255の合計256個としているが、実装する数は任意である。
 マッピングテーブル22は、ファンクション部21とI/Oデバイス40とのマッピングを管理する。マッピングテーブル22が管理する情報を図4に示す。図4の「Func番号」は、ファンクション部21の番号を表す。図4の「IOU番号」は、IOU30の番号を表しており、このIOU30の番号は、ファンクション部21にマッピングされたI/Oデバイス40が搭載されているIOU30の番号である。なお図3のIOU30に示すように、1つのIOUに複数のI/Oデバイス(例えば、I/Oデバイス40及びI/Oデバイス40)が搭載されることもありえる。図4の「IOU MAC」は、該当するIOU30がファブリックで通信する際に使用するMAC(Media Access Control)アドレスを表す。これにより、ファンクション部21に対してアクセスがあった際、ファブリック通信機能を経由して、どのIOU宛にパケットを送信すればよいかが判定可能である。
 ファブリック通信機能部23、31は、HBA20とIOU30間での接続を管理する機能を持つ。ファブリック通信機能部23、31によるファブリック通信機能は、接続している機器間で情報を共有する機能を含んでいる。この共有する情報は、どのHBAとどのIOUを論理的に接続するのか、および/または、接続先のMACアドレスが何かである。情報共有は、Express Etherのように定期的なパケット送信やグループ管理機能によって行う。ここで得られるMACアドレスはマッピングテーブル22に用いられる。マッピングテーブル22の情報は、ファブリック通信機能を通してHBA20とIOU30との間で共有される。
 各IOU30の仮想RootPort32は、ルーティングテーブルを含むと共に、RootPortとして配下にあるI/Oデバイス40に対して、仮想的なバス番号を設定する機能を持つ。設定したバス番号は、ルーティングテーブルによって管理される。ルーティングテーブルの一例を、図5に示す。
 図3のI/Oデバイス40(40、40や40)は、PCIeの規格に沿った一般的なI/Oデバイスである。
 次に、情報処理装置と、IOUとを含む情報処理システム50としての動作について、記載する。情報処理システム50が起動すると、一般的にPCIエニュメレーションソフトウェアによって、PCIバス番号、BAR空間が、情報処理システム50を構成するデバイスに割り当てられる。
 本実施形態による情報処理システム50では、PCIエニュメレーションソフトウェアが動作する前に、ファブリック通信機能によってHBA20とIOU30は接続されているものとする。さらに、PCIエニュメレーションソフトウェアが動作する前に、マッピングテーブル22にはFunc番号、IOU番号、IOU MACが登録済みであり、ルーティングテーブルには「I/Oデバイス番号」、「仮想バス番号」、「割当Func番号」が登録済みであるものとする。
 次に、PCIエニュメレーションソフトウェアが動作することによって、デバイスにPCIバス番号、BAR空間が割り当てられる。本実施形態による情報処理システム50では、システムによって割り当てられるPCIバス番号はHBA20の1つのみである。BAR空間は、ファンクションごとにファンクションが要求する分だけ割り当てられる。この時、PCIエニュメレーションソフトウェアは、ファンクションが要求するBARサイズを、ファンクションが持つコンフィグレーションレジスタから取得する。
 本実施形態による情報処理システム50では、PCIエニュメレーションソフトウェアからのコンフィグレーションレジスタへのアクセスをマッピングテーブル22の情報を用いてI/Oデバイスにルーティングする。このマッピングテーブル22の情報を用いたルーティングによって、I/Oデバイスが要求するBARサイズを取得する。これにより情報処理システム50において、I/Oデバイス40がファンクションとして認識される。取得したBAR空間はマッピングテーブルとルーティングテーブルに、図4や図5に示すような「Mem範囲」、「IO範囲」として登録される。次に、実際のアクセスでの手順について、順番に説明する。
 (CPUからI/Oデバイスに対してのアクセス)
 図6Aのシーケンスチャートを参照しながら、CPU10からI/Oデバイス40に対するアクセスについて説明する。CPU10からHBA20に届いたパケットに対して、HBA20はマッピングテーブル22を参照することによって、接続先のIOUを判定する(S11)。さらにHBA20は、S11で判定されたIOUへ向けてこのパケットをファブリック通信機能で送信する。
 パケットを受信したIOU30は、その仮想Root Port32のルーティングテーブルを参照する(S12)。IOU30は、さらにルーティングテーブルの参照結果に基づいて、受信したパケットをI/Oデバイス40に転送する。この時、バス番号を使ったIDルーティングを用いるパケットの場合、IOU30は、ルーティングテーブルにある仮想バス番号にバス番号を変換して、変換後のバス番号(仮想バス番号)をI/Oデバイスに転送する。これらの手順によって、CPU10はI/Oデバイス40にアクセスすることができる。
 (I/OデバイスからCPUに対してのアクセス)
 図6Bのシーケンスチャートを参照しながら、I/Oデバイス40からCPU10に対するアクセスについて説明する。IOU30は、I/Oデバイス40から届いたパケットについて、その仮想Root Port32のルーティングテーブルを参照する(S21)。ルーティングテーブルを参照した結果、届いたパケットがCPU10宛であると判定したときには、IOU30はこのパケットをファブリック通信機能でHBA20へ送信する。
 ファブリック通信機能経由でパケットを受信したHBA20は、マッピングテーブル22に基づいてファンクション部21にこのパケットを転送する。
 ファンクション部21は、パケットを自身のバス番号等(BDF[Bus、Device、Function]番号)に付け替えてCPU10に送信する。これらの手順によって、I/Oデバイス40はCPU10にアクセスすることができる。
 (I/OデバイスからI/Oデバイスに対してのアクセス)
 図6Cのシーケンスチャートを参照しながら、I/Oデバイス40から他のI/Oデバイス40に対するアクセスについて説明する。I/Oデバイス40から届いたパケットに対して、このI/Oデバイス40を含むIOU30は、仮想Root Port32のルーティングテーブルを参照する(S31)。
 ルーティングテーブルを参照した結果、届いたパケットがI/Oデバイス40宛であると判定したときには、IOU30は、HBA20から共有されているマッピングテーブルから対象I/Oデバイス40が接続されているIOU30を判定する(S32)。さらにIOU30は、ファブリック通信機能経由でIOU30間でパケットを直接送信する。
 ファブリック通信機能経由でパケットを受信したIOU30は、その仮想Root Port32のルーティングテーブルを参照し、ルーティングテーブルの参照結果に基づいて、受信したパケットをI/Oデバイス40に転送する。この時、バス番号を使ったIDルーティングを用いるパケットの場合、ルーティングテーブルにある仮想バス番号に変換してI/Oデバイスに転送する。これらの手順によって、I/Oデバイス40は他のI/Oデバイス(I/Oデバイス40)にアクセスすることができる。
 (実施形態の効果)
 本実施形態の情報処理装置によれば、PCI Express規格のバス番号による数を越えて、PCI Express規格に沿ったI/Oデバイスを1つの情報処理システムに接続することができる。具体的には、PCI Express規格に沿ったI/Oデバイスを、1つの情報処理システムに257以上接続することができる。補足すると、バス番号が8bitで定義されているPCI Express規格の仕様上の上限の数(256デバイス)を越えて、1つの情報処理システムに257以上のデバイスを接続することができる。これにより、様々なシステムが構築可能となる。
 図2や図3に示される情報処理システム50では、HBA20が、マッピングテーブル22を有しており、アクセスの際にマッピングテーブル22を参照する。マッピングテーブル22では、複数のファンクション部21のファンクション(Func#0~Func#255)とファブリックに接続されるI/Oデバイス40とを対応付けてマッピングしている。言い換えると、マッピングテーブル22は、ファブリックの先に接続したI/Oデバイス40を、HBA20内のマルチファンクションにマッピングさせている。これによって、特殊なソフトウェアを用意することなく、認識できるデバイスの数を増加させることができる。その結果、図2や図3に示される情報処理システム50では、257以上のI/Oデバイス(PCIe規格)を認識させることができる。
 〔その他の実施形態〕
 以上、本発明の好ましい実施形態を説明したが、本発明はこれに限定されるものではない。図3の情報処理装置の詳細構成では0~255のファンクション部21(21~21255)を有する場合を示しているが、複数のファンクション部21の数はこれに限られず、ファンクション部21を実装する数は任意である。また、図2の情報処理装置において、ファブリック25の先にあるIOU30(30、…、30、…、30)の数や、IOU30の配下にあるI/Oデバイス40(40、…、40、…、40)の数も任意である。
 本発明の上述した実施形態を用いると、1つのバス番号に対して最大で256デバイスを接続可能となる。そのため、60,000以上のデバイスをシステムに接続できるが、システムソフトウェアがそのような構成に対応できない場合もありえる。その場合、システムソフトウェアが対応できる上限を想定し、想定された上限までのファンクション数に制限する等も考えられる。請求の範囲に記載した発明の範囲内で、種々の変形が可能であり、それらも本発明の範囲に含まれることはいうまでもない。
 上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)中央処理装置と、PCI Express規格に沿ったI/O(Input/Output)デバイスがファブリックに接続されるホストバスアダプタと、を有する情報処理装置であって、
 前記ホストバスアダプタは、PCI Express規格の入出力インターフェースであり、少なくとも1つの前記I/Oデバイスを含むIOU(Input/Output Unit)とファブリック通信機能で通信するものであり、
 前記ホストバスアダプタは、PCI Express規格に沿った複数のファンクションを含む機能部と、前記機能部のファンクションと前記ファブリックに接続される外部のI/Oデバイスとを対応付けてマッピングするマッピングテーブルと、を含む
情報処理装置。
(付記2)少なくとも1つの前記I/Oデバイスを含むIOUが、仮想Root Portを含む、
付記1に記載の情報処理装置。
(付記3)前記仮想Root Portは、ルーティングテーブルを含み、
 前記仮想Root Portは、前記ファブリック通信機能を経由して受信したパケットを、前記ルーティングテーブルに基づいて対応するI/Oデバイスに転送する、
付記2に記載の情報処理装置。
(付記4)中央処理装置と、PCI Express規格に沿ったI/O(Input/Output)デバイスがファブリックに接続されるホストバスアダプタと、を有する情報処理装置の制御方法であって、
 前記ホストバスアダプタは、PCI Express規格の入出力インターフェースであり、
 前記ホストバスアダプタは、PCI Express規格に沿った複数のファンクションと前記ファブリックに接続される外部のI/Oデバイスとを対応付けたマッピングテーブルを参照して、少なくとも1つの前記I/Oデバイスを含むIOU(Input/Output Unit)とファブリック通信機能で通信する、
情報処理装置の制御方法。
 この出願は、2021年12月16日に出願された日本出願特願2021-204359を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 10  CPU
 20  HBA
 21、21~21255  ファンクション部
 22  マッピングテーブル
 23  ファブリック通信機能部
 25  ファブリック
 30、30~30、30  IOU
 31  ファブリック通信機能部
 32  仮想Root Port
 40、40~40、40  I/Oデバイス
 50  情報処理システム
 100  ホストバスアダプタ
 101  機能部
 102  マッピングテーブル
 110  IOU
 111  I/Oデバイス

Claims (4)

  1.  中央処理装置と、PCI Express規格に沿ったI/O(Input/Output)デバイスがファブリックに接続されるホストバスアダプタと、を有する情報処理装置であって、
     前記ホストバスアダプタは、PCI Express規格の入出力インターフェースであり、少なくとも1つの前記I/Oデバイスを含むIOU(Input/Output Unit)とファブリック通信機能で通信するものであり、
     前記ホストバスアダプタは、PCI Express規格に沿った複数のファンクションを含む機能部と、前記機能部のファンクションと前記ファブリックに接続される外部のI/Oデバイスとを対応付けてマッピングするマッピングテーブルと、を含む
    情報処理装置。
  2.  少なくとも1つの前記I/Oデバイスを含むIOUが、仮想Root Portを含む、
    請求項1に記載の情報処理装置。
  3.  前記仮想Root Portは、ルーティングテーブルを含み、
     前記仮想Root Portは、前記ファブリック通信機能を経由して受信したパケットを、前記ルーティングテーブルに基づいて対応するI/Oデバイスに転送する、
    請求項2に記載の情報処理装置。
  4.  中央処理装置と、PCI Express規格に沿ったI/O(Input/Output)デバイスがファブリックに接続されるホストバスアダプタと、を有する情報処理装置の制御方法であって、
     前記ホストバスアダプタは、PCI Express規格の入出力インターフェースであり、
     前記ホストバスアダプタは、PCI Express規格に沿った複数のファンクションと前記ファブリックに接続される外部のI/Oデバイスとを対応付けたマッピングテーブルを参照して、少なくとも1つの前記I/Oデバイスを含むIOU(Input/Output Unit)とファブリック通信機能で通信する、
    情報処理装置の制御方法。
PCT/JP2022/043678 2021-12-16 2022-11-28 情報処理装置、及び情報処理装置の制御方法 WO2023112646A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021204359 2021-12-16
JP2021-204359 2021-12-16

Publications (1)

Publication Number Publication Date
WO2023112646A1 true WO2023112646A1 (ja) 2023-06-22

Family

ID=86774107

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/043678 WO2023112646A1 (ja) 2021-12-16 2022-11-28 情報処理装置、及び情報処理装置の制御方法

Country Status (1)

Country Link
WO (1) WO2023112646A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11288400A (ja) * 1998-04-03 1999-10-19 Nec Shizuoka Ltd Pciブリッジデバイス
US20090006710A1 (en) * 2007-04-20 2009-01-01 Daniel David A Virtualization of a host computer's native I/O system architecture via the internet and LANs
JP2012059064A (ja) * 2010-09-09 2012-03-22 Fujitsu Ltd スイッチ装置
JP2018160163A (ja) * 2017-03-23 2018-10-11 日本電気株式会社 変換装置、ホスト装置、入出力スイッチシステム、情報処理システム、方法およびプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11288400A (ja) * 1998-04-03 1999-10-19 Nec Shizuoka Ltd Pciブリッジデバイス
US20090006710A1 (en) * 2007-04-20 2009-01-01 Daniel David A Virtualization of a host computer's native I/O system architecture via the internet and LANs
JP2012059064A (ja) * 2010-09-09 2012-03-22 Fujitsu Ltd スイッチ装置
JP2018160163A (ja) * 2017-03-23 2018-10-11 日本電気株式会社 変換装置、ホスト装置、入出力スイッチシステム、情報処理システム、方法およびプログラム

Similar Documents

Publication Publication Date Title
US8223745B2 (en) Adding packet routing information without ECRC recalculation
EP2997483B1 (en) System and method for extended peripheral component interconnect express fabrics
US7293129B2 (en) Flexible routing and addressing
US7565463B2 (en) Scalable routing and addressing
US7574536B2 (en) Routing direct memory access requests using doorbell addresses
US7620741B2 (en) Proxy-based device sharing
US7603508B2 (en) Scalable distributed memory and I/O multiprocessor systems and associated methods
US7934033B2 (en) PCI-express function proxy
US20060253619A1 (en) Virtualization for device sharing
US20130151750A1 (en) Multi-root input output virtualization aware switch
JP5660053B2 (ja) ネットワーク装置、ネットワーク構成方法及びネットワーク装置のプログラムを記録したプログラム記録媒体
EP2570913A1 (en) Method and system for accessing storage device
US11609866B2 (en) PCIe peripheral sharing
GB2455347A (en) Control path I/O virtualisation
US11836105B2 (en) Communication device, information processing system, and communication method
WO2023112646A1 (ja) 情報処理装置、及び情報処理装置の制御方法
US10509751B2 (en) Information processing apparatus that converts an address and requester ID on a local host to an address and requester ID on a system host
US10565147B2 (en) Information processing apparatus for data transfer between a system host and a local device
US20200341928A1 (en) Information processing system
JP2012083979A (ja) 通信制御装置、ネットワーク、及びネットワークシステム
US20230350824A1 (en) Peripheral component interconnect express device and operating method thereof
US20230318606A1 (en) Interface device and method of operating the same
WO2015015652A1 (ja) サーバ間通信機構を備えるサーバシステムおよびその複数サーバ間における通信方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22907176

Country of ref document: EP

Kind code of ref document: A1