JP2012063971A - I/oブリッジ装置、応答通知方法、及びプログラム - Google Patents

I/oブリッジ装置、応答通知方法、及びプログラム Download PDF

Info

Publication number
JP2012063971A
JP2012063971A JP2010207542A JP2010207542A JP2012063971A JP 2012063971 A JP2012063971 A JP 2012063971A JP 2010207542 A JP2010207542 A JP 2010207542A JP 2010207542 A JP2010207542 A JP 2010207542A JP 2012063971 A JP2012063971 A JP 2012063971A
Authority
JP
Japan
Prior art keywords
command
unit
control unit
transaction
packet
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
JP2010207542A
Other languages
English (en)
Other versions
JP5316502B2 (ja
Inventor
Toshio Ohira
敏男 大比良
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2010207542A priority Critical patent/JP5316502B2/ja
Priority to US13/232,669 priority patent/US8799548B2/en
Publication of JP2012063971A publication Critical patent/JP2012063971A/ja
Application granted granted Critical
Publication of JP5316502B2 publication Critical patent/JP5316502B2/ja
Active 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

Abstract

【課題】周辺機器にエラーの内容を通知する。
【解決手段】PCIeインタフェース制御部110は、PCIeデバイスからトランザクションを受信する。次に、トランザクション制御部140は、受信したトランザクションを、当該トランザクションが示す命令とIDとを含む命令パケットに変換する。メモリコントローラインタフェース制御部170は、命令パケットをメモリコントローラに送信し、当該命令パケットに含まれるIDを含む、命令パケットに対する応答パケットをメモリコントローラから受信する。そして、PCIeインタフェース制御部110は、受信した応答パケットに含まれるIDによって特定されるトランザクションの送信元のPCIeデバイスに、受信した応答パケットの内容を内蔵メモリに書き込む命令を示すメモリ・ライト・トランザクションを送信する。
【選択図】図2

Description

本発明は、主記憶装置に対する処理を行うメモリコントローラと周辺機器との間で命令の伝達を行うI/Oブリッジ装置、応答通知方法、及びプログラムに関する。
近年、高速シリアルインタフェース技術としてPCI Express(Peripheral Component Interconnect Express:以降『PCIe』と称す)の利用が拡大している。PCIeは、2.5Gbpsのシリアル信号伝送、point−to−pointのバス構造を持たず分岐しない信号接続経路、プロトコルを使用したデータ通信、ソフトウェアとPCI互換性などを特徴とする規格であり、PCIに続くインタフェース規格と位置付けられている。
PCIeは、通常の通信機能だけでなく、エラー処理に関しても、PCIを拡張した機能を有する。PCIでは、エラーをパリティ・エラーとシステムエラーの2種類に分類していた。これ対し、PCIeでは、エラーを「回復可能なエラー」、「重大で回復不可能なエラー」、「重大では無いが回復不可能なエラー」の3種類に分類している。これらのエラー種別は、規定されたエラーメッセージによりルートコンプレックス(I/Oブリッジ装置)に通知される。ルートコンプレックスとは、1つまたは複数のPCIeポートを有し、PCIe規格の周辺機器とCPUやメモリ(主記憶装置)との通信を中継する装置である。
また、PCIeの基本的なエラー処理機能のみを用いた場合、取得しうる情報はエラーの種類に止まるが、拡張エラー通知『Advanced Error Reporting』を用いることで、エラーが発生したときに発生原因など、詳細な情報を記録し、詳細なエラー解析を行うことができる。
このようにPCIeのエラー処理は、PCIと比較して拡張されている。
また、PCIeで取り扱うトランザクションの種類として、「ポステッド・トランザクション(posted transaction)」、「ノンポステッド・トランザクション(non−posted transaction)」、「コンプリーション・トランザクション(completion transaction)」の3種類が規定されている。ポステッド・トランザクションとは、メモリ・ライト・トランザクションなどの応答を必要としないトランザクションである。ノンポステッド・トランザクションとは、メモリ・リード・トランザクションなどの応答を必要とするトランザクションである。コンプリーション・トランザクションとは、ノンポステッド・トランザクションに対する応答のトランザクションである。
なお、本明細書において、「トランザクション」という文言は、PCIe規格の周辺機器とルートコンプレックスとの間の通信に用いるデータを送信する単位(PDU:Protocol Data Unit)のことを示すものとする。
ところで、特許文献1には、ルートコンプレックスが障害により停止した場合にも、運用を継続する方法が開示されている。
特許文献1によれば、周辺機器またはCPUがルートコンプレックスにノンポステッド・トランザクションを送信し、その応答であるコンプリーション・トランザクションが周辺機器またはCPUに到達する前にI/Oブリッジ装置が停止した場合に、ルートコンプレックスに備えられたエラーリプライ生成回路がルートコンプレックスに代わってエラーリプライを示すノンポステッド・トランザクションを送信する。
特開2005−208972号公報
上述したように、ルートコンプレックスは、PCIeのエラー処理機能により、エラーの発生を知ることができ、このタイミングで発生原因などの細かな情報を取得することができる。しかし、CPUや周辺機器が送信したトランザクションがポステッド・トランザクションである場合、トランザクションの送信元の装置は、エラーの通知を受けることができない。
つまり、周辺機器がメモリ・ライト・トランザクション等のポステッド・トランザクションを発行し、そのトランザクション処理でエラーが発生したとしても、その周辺機器はエラーの発生を知ることができず、動作を継続してしまうこととなる。
たとえ、エラー通知を受けたルートコンプレックスが、障害情報を取得・解析し、対象となる周辺機器にエラーの発生を伝えたとしても、エラーが発生した時刻からのタイムラグが発生することとなる。そのため、周辺機器はやはりエラーとなったトランザクションに対する障害処理として処理することが出来ない。
上記の様なPCIeのエラー処理の課題があるが、通常、PCIeデバイスからのメモリへのデータ書込み等の処理は、パフォーマンスを優先させる為にポステッド・トランザクションにより行われる。そのため、周辺機器は、処理結果の応答を受信することはなく、トランザクションの発行元はそのトランザクションの処理状態を知ることができない。
このため、PCIeデバイスが発行したメモリ・ライト・トランザクションの処理にてエラーが発生した場合、「重大で回復不可能なエラー」として処理され、システムダウン等の重大な障害を引き起してしまう惧れがある。
パーソナルコンピュータ等の比較的小規模なコンピュータシステムならば、このようなエラー処理でも問題にならないかもしれないが、可能な限り運用を継続することが望まれる大規模なコンピュータシステム(メインフレームや大型サーバ等で常時運用するシステムなど)では、システムの運用停止は致命的であり、避けなければならない。
また、特許文献1に開示された方法を用いたとしても、ノンポステッド・トランザクションに対する応答は得られても、ポステッド・トランザクションに対する応答を得ることはできない。
本発明は上記の課題を解決するためになされたものであり、主記憶装置に対する処理を行うメモリコントローラと周辺機器との間で命令の伝達を行うI/Oブリッジ装置であって、前記周辺機器から前記メモリコントローラに対する命令を示す命令信号を受信する命令受信部と、前記命令受信部が受信した命令信号を、前記命令信号が示す命令と前記命令受信部が受信した命令信号を特定する識別情報とを含む命令パケットに変換する変換部と、前記変換部が変換した命令パケットを前記メモリコントローラに送信する命令送信部と、前記命令送信部が送信した命令パケットに含まれる識別情報を含む、前記命令送信部が送信した命令パケットに対する応答パケットを前記メモリコントローラから受信する応答受信部と、前記応答受信部が受信した応答パケットに含まれる識別情報が示す命令信号の送信元の周辺機器に、前記応答受信部が受信した応答パケットの内容を内蔵メモリに書き込む命令を示す書込命令信号を送信する書込命令送信部とを備えることを特徴とする。
また、本発明は、主記憶装置に対する処理を行うメモリコントローラと周辺機器との間で命令の伝達を行うI/Oブリッジ装置を用いた応答通知方法であって、命令受信部は、前記周辺機器から前記メモリコントローラに対する命令を示す命令信号を受信し、変換部は、前記命令受信部が受信した命令信号を、前記命令信号が示す命令と前記命令受信部が受信した命令信号を特定する識別情報とを含む命令パケットに変換し、命令送信部は、前記変換部が変換した命令パケットを前記メモリコントローラに送信し、応答受信部は、前記命令送信部が送信した命令パケットに含まれる識別情報を含む、前記命令送信部が送信した命令パケットに対する応答パケットを前記メモリコントローラから受信し、書込命令送信部は、前記応答受信部が受信した応答パケットに含まれる識別情報が示す命令信号の送信元の周辺機器に、前記応答受信部が受信した応答パケットの内容を内蔵メモリに書き込む命令を示す書込命令信号を送信することを特徴とする。
また、本発明は、主記憶装置に対する処理を行うメモリコントローラと周辺機器との間で命令の伝達を行うI/Oブリッジ装置を、前記周辺機器から前記メモリコントローラに対する命令を示す命令信号を受信する命令受信部、前記命令受信部が受信した命令信号を、前記命令信号が示す命令と前記命令受信部が受信した命令信号を特定する識別情報とを含む命令パケットに変換する変換部、前記変換部が変換した命令パケットを前記メモリコントローラに送信する命令送信部、前記命令送信部が送信した命令パケットに含まれる識別情報を含む、前記命令送信部が送信した命令パケットに対する応答パケットを前記メモリコントローラから受信する応答受信部、前記応答受信部が受信した応答パケットに含まれる識別情報が示す命令信号の送信元の周辺機器に、前記応答受信部が受信した応答パケットの内容を内蔵メモリに書き込む命令を示す書込命令信号を送信する書込命令送信部として機能させるためのプログラムである。
本発明によれば、I/Oブリッジ装置は、メモリコントローラから応答パケットを受信すると、当該応答パケットの内容を、命令信号の送信元の周辺機器の内蔵メモリに書き込む。これにより、周辺機器は、内蔵メモリに書き込まれた情報を参照することでエラーの内容を取得することができる。
本発明の第1の実施形態によるI/Oブリッジ装置を備えるコンピュータシステムの構成を示す概略ブロック図である。 本発明の第1の実施形態によるI/Oブリッジ装置の構成を示す概略ブロック図である。 メモリライト処理が正常に行われた場合の動作を示すフローチャートである。 メモリコントローラからの応答パケットがエラーを示していた場合の動作を示すフローチャートである。 I/Oブリッジ装置の内部に障害が発生した場合の動作を示すフローチャートである。 メモリ・ライト・トランザクションがI/Oブリッジ装置に到達する前にエラーを検出していた場合の動作を示すフローチャートである。 本発明の第2の実施形態によるI/Oブリッジ装置の構成を示す概略ブロック図である。 メモリ・ライト・トランザクションのフォーマットを示す図である。 特種フラグ及び特種エントリとリプライ方法との関係を示す表である。
以下、図面を参照しながら本発明の実施形態について詳しく説明する。
《第1の実施形態》
図1は、本発明の第1の実施形態によるI/Oブリッジ装置100を備えるコンピュータシステムの構成を示す概略ブロック図である。
コンピュータシステムは、CPU300、メモリ400(主記憶装置)、メモリコントローラ200、I/Oブリッジ装置100、PCIeスイッチ装置500、及び複数のPCIeデバイス600(周辺機器)を備える。
メモリコントローラ200は、CPU300、メモリ400、I/Oブリッジ装置100に接続される。また、メモリコントローラ200は、CPU300及びメモリ400とI/Oブリッジ装置100との通信を中継する。
I/Oブリッジ装置100は、PCIeスイッチ装置500とPCIeスイッチ装置500に接続される。また、I/Oブリッジ装置100は、ルートコンプレックスであり、PCIeスイッチ装置500とPCIeデバイス600との通信を中継する。
PCIeスイッチ装置500は、複数のPCIeデバイス600とI/Oブリッジ装置100とに接続される。また、PCIeスイッチ装置500は、PCIeデバイス600とI/Oブリッジ装置100との通信を中継する。
PCIeデバイス600は、PCIeスイッチ装置500を介してI/Oブリッジ装置100に、CPU300やメモリ400に対するトランザクションを送信する。また、PCIeデバイス600は、エラー情報を格納するための内蔵メモリ601を有する。
図2は、本発明の第1の実施形態によるI/Oブリッジ装置100の構成を示す概略ブロック図である。
I/Oブリッジ装置100は、PCIeインタフェース制御部110(命令受信部、書込命令送信部)、受信バッファ制御部120、送信バッファ制御部130、トランザクション制御部140(変換部)、Inbound制御部150、Outbound制御部160、メモリコントローラインタフェース制御部170(命令送信部、応答受信部)、診断制御部180(内部エラー検出部、障害通知部)、リプライ制御部190(記録部、送信元情報読出部)を備える。
PCIeインタフェース制御部110は、接続されたPCIeスイッチ装置500とのトランザクション(命令信号)の送受信処理を行う。また、PCIeインタフェース制御部110は、PCIeスイッチ装置500から受信したトランザクションを受信バッファ制御部120に出力する。また、PCIeインタフェース制御部110は、送信バッファ制御部130から入力したトランザクションをPCIeスイッチ装置500に送信する。
受信バッファ制御部120は、PCIeインタフェース部110から入力したトランザクションを格納するための受信バッファを複数備え、PCIeインタフェース制御部110から入力したトランザクションを、空いている受信バッファに格納する。また、受信バッファ制御部120は、PCIeインタフェース制御部110から入力したトランザクションのヘッダと、当該トランザクションを格納した受信バッファの識別情報であるバッファ番号をリプライ制御部190に出力する。つまり、当該バッファ番号を参照することで、トランザクションを特定することができる。
送信バッファ制御部130は、トランザクション制御部140から入力したトランザクションを格納するための送信バッファを複数備え、トランザクション制御部140から入力したトランザクションをリプライ制御部190から指定されたバッファ番号の送信バッファに格納する。また、送信バッファ制御部130は、送信バッファに格納したトランザクションをPCIeインタフェース制御部110に送信する。
トランザクション制御部140は、受信バッファ制御部120の受信バッファに格納されたトランザクションを取り出し、当該トランザクションが示す処理内容(命令)とユニークなIDとを含む命令パケットに変換する。ここで、「取り出す」とは、バッファから情報を読み出し、当該情報をバッファから削除する処理のことである。また、トランザクション制御部140は、取り出したトランザクションが格納されていた受信バッファのバッファ番号と、変換した命令パケットのIDとを関連付けて内部メモリに記録する。
また、トランザクション制御部140は、変換した命令パケットをInbound制御部150に出力し、当該命令パケットに対する応答パケットをOutbound制御部160から入力する。また、トランザクション制御部140は、Outbound制御部160から受け取った応答パケットのIDに関連付けられたバッファ番号を内部メモリから読み出し、当該バッファ番号と応答パケットを共にリプライ制御部190に出力する。
Inbound制御部150は、メモリコントローラ200に送信するパケットを格納するためのバッファを備え、トランザクション制御部140から入力した命令パケットをバッファに格納する。また、Inbound制御部150は、バッファに格納した命令パケットをメモリコントローラインタフェース制御部170に出力する。
Outbound制御部160は、メモリコントローラ200から受信したパケットを格納するためのバッファを備え、メモリコントローラインタフェース制御部170から受け取った応答パケットをバッファに格納する。また、Outbound制御部160は、バッファに格納した応答パケットをトランザクション制御部140に出力する機能を有する。
メモリコントローラインタフェース制御部170は、Inbound制御部150から入力した命令パケットをメモリコントローラ200へ送信する。また、メモリコントローラ200から応答パケットを受信し、受信した応答パケットをOutbound制御部160に出力する。
診断制御部180は、他の処理部から障害が発生したことを通知された場合に、障害インジケータ181を点灯させ、自装置内部に障害が発生したことを外部に通知する。また、診断制御部180は、他の処理部から障害が発生したことを通知された場合に障害の発生をPCIeインタフェース制御部110、受信バッファ制御部120、送信バッファ制御部130、トランザクション制御部140、Inbound制御部150、Outbound制御部160、メモリコントローラインタフェース制御部170、リプライ制御部190それぞれに通知する。
リプライ制御部190は、トランザクションのヘッダと当該トランザクションを格納していた受信バッファのバッファ番号を関連付けて記憶する記憶部191を備え、受信バッファ制御部120から入力したトランザクションのヘッダ及びバッファ番号を当該記憶部191に記録する。また、リプライ制御部190は、トランザクション制御部140から応答パケットに含まれるIDに関連付けられたバッファ番号を入力し、当該バッファ番号に関連付けられたトランザクションのヘッダを読み出す。また、リプライ制御部190は、トランザクション制御部140から応答パケットを入力し、当該応答パケットを元にPCIeデバイス600への応答となるトランザクションを生成し、当該トランザクションをバッファ番号と共に送信バッファ制御部130に出力する。なお、応答となるトランザクションとは、応答パケットの内容をPCIeデバイス600の内蔵メモリ601に書き込むメモリ・ライト・トランザクション(書込命令信号)である。
また、PCIeインタフェース制御部110、受信バッファ制御部120、送信バッファ制御部130、トランザクション制御部140、Inbound制御部150、Outbound制御部160、メモリコントローラインタフェース制御部170、及びリプライ制御部190は、処理中に何らかの障害(パリティーエラー、ECCエラー、制御矛盾等)を検出した場合、障害の発生を診断制御部180180に通知する。
そして、このような構成を備えることで、I/Oブリッジ装置100は、以下に示す処理を行う。即ち、PCIeインタフェース制御部110は、PCIeデバイス600からメモリコントローラ200に対する命令を示すトランザクションを受信する。次に、トランザクション制御部140は、PCIeインタフェース制御部110が受信したトランザクションを、当該トランザクションが示す命令とIDとを含む命令パケットに変換する。なお、当該IDは、上述したようにバッファ番号に関連付けられており、PCIeインタフェース制御部110が受信したトランザクションを特定することができる。
メモリコントローラインタフェース制御部170は、トランザクション制御部140が変換した命令パケットをメモリコントローラ200に送信し、当該命令パケットに含まれるIDを含む、命令パケットに対する応答パケットをメモリコントローラ200から受信する。そして、PCIeインタフェース制御部110は、メモリコントローラインタフェース制御部170が受信した応答パケットに含まれるIDによって特定されるトランザクションの送信元のPCIeデバイス600に、メモリコントローラインタフェース制御部170が受信した応答パケットの内容を内蔵メモリ601に書き込む命令を示すメモリ・ライト・トランザクションを送信する。
これにより、PCIeデバイス600は、内蔵メモリ601に書き込まれた情報を参照することでエラーの内容を取得することができる。
次に、本実施形態によるI/Oブリッジ装置100の動作を説明する。ここでは、PCIeデバイス600がメモリ・ライト・トランザクションを送信する場合を例に説明を行う。
まず、メモリライト処理が正常に行われた場合の動作を説明する。
図3は、メモリライト処理が正常に行われた場合の動作を示すフローチャートである。
PCIeデバイス600が送信したメモリ・ライト・トランザクションは、PCIeスイッチ装置500を経由して、I/Oブリッジ装置100のPCIeインタフェース制御部110が受信する(ステップS1)。受信したメモリ・ライト・トランザクションは、受信バッファ制御部120に受け渡され、空いている受信バッファに格納される(ステップS2)。
受信バッファ制御部120は、受信バッファに格納されたメモリ・ライト・トランザクションを読み出し、格納されていたバッファを特定するバッファ番号とメモリ・ライト・トランザクションのヘッダとをリプライ制御部190に出力する。リプライ制御部190は、受信バッファ制御部120から入力したバッファ番号とヘッダとを関連付けて記憶部191に保持し(ステップS3)、当該バッファ番号に対する問い合わせを待機する。
また、受信バッファ制御部120は、受信バッファから読みだしメモリ・ライト・トランザクションを、格納されていた受信バッファのバッファ番号と共にトランザクション制御部140に出力する。トランザクション制御部140は、受信バッファ制御部120から入力したメモリ・ライト・トランザクションを、メモリ・ライト・パケット(命令パケット)に変換し(ステップS4)、Inbound制御部150のバッファに格納する。
なお、トランザクション制御部140は、メモリ・ライト・トランザクションをメモリ・ライト・パケットに変換する際に、メモリ・ライト・パケットにユニークなIDを設定し、当該メモリ・ライト・パケットに格納する。また、トランザクション制御部140は、設定したIDをバッファ番号に関連付けて内部メモリに記録する(ステップS5)。当該IDはメモリコントローラ200が送信する応答パケットにも反映されるため、トランザクション制御部140が、当該IDを用いてパケットとを管理することにより、応答のタイムアウトやパケットのロストを検出することができる。
Inbound制御部150は、バッファに格納されたメモリ・ライト・パケットをメモリコントローラインタフェース制御部170を介して、メモリコントローラ200に送信する(ステップS6)。
メモリコントローラ200は、受信したメモリ・ライト・パケットに含まれるデータを該当するメモリアドレスに格納し、その応答パケット(正常終了)をI/Oブリッジ装置100に送信する。
メモリコントローラ200が応答パケットを送信すると、I/Oブリッジ装置100のメモリコントローラインタフェース制御部170は、メモリコントローラ200からの応答パケットを受信し(ステップS7)、Outbound制御部160のバッファに格納する。
次に、Outbound制御部160は、格納された応答パケットを読み出してトランザクション制御部140に出力する。次に、トランザクション制御部140は、応答パケットに含まれるIDを読み出し、内部メモリから当該IDに関連付けられたバッファ番号を読み出す(ステップS8)。次に、トランザクション制御部140は、応答パケットの内容(正常終了)をバッファ番号と共にリプライ制御部190に出力する。
次に、リプライ制御部190は、トランザクション制御部140から入力したバッファ番号に関連付けられたヘッダを、記憶部191から読み出す(ステップS9)。そして、リプライ制御部190は、当該ヘッダからトランザクションの送信元のPCIeデバイス600を特定し、当該PCIeデバイス600宛てのメモリ・ライト・トランザクションを生成する(ステップS10)。このとき、リプライ制御部190は、トランザクション制御部140140から入力した応答パケットの内容(正常終了)をメモリ・ライト・トランザクションに反映する。次に、リプライ制御部190は、生成したメモリ・ライト・トランザクションを、送信バッファ制御部130の送信バッファに格納する。
そして、送信バッファ制御部130は、送信バッファに格納されたメモリ・ライト・トランザクションを読み出し、PCIeインタフェース制御部110を介して、当該メモリ・ライト・トランザクションをPCIeスイッチ装置500へ送信する(ステップS11)。
PCIeスイッチ装置500は、受信したメモリ・ライト・トランザクションを該当するPCIeデバイス600に転送する。そして、メモリ・ライト・トランザクションを受信したPCIeデバイス600は、メモリ・ライト・トランザクションに含まれるライトデータ(即ち、応答パケットの内容)を内蔵メモリ601に格納する。
これにより、PCIeデバイス600は、内蔵メモリ601に書き込まれた情報を参照することで、トランザクションが正常に終了したことを認識することができる。
次に、メモリコントローラ200からの応答パケットがエラーを示していた場合の動作を説明する。なお、上述したメモリライト処理が正常に行われた場合の動作と同一の処理については、同じ符号を用いて説明する。
図4は、メモリコントローラ200からの応答パケットがエラーを示していた場合の動作を示すフローチャートである。
PCIeデバイス600が送信したメモリ・ライト・トランザクションは、PCIeスイッチ装置500を経由して、I/Oブリッジ装置100のPCIeインタフェース制御部110が受信する(ステップS1)。受信したメモリ・ライト・トランザクションは、受信バッファ制御部120に受け渡され、空いている受信バッファに格納される(ステップS2)。
受信バッファ制御部120は、受信バッファに格納されたメモリ・ライト・トランザクションを読み出し、格納されていたバッファを特定するバッファ番号とメモリ・ライト・トランザクションのヘッダとをリプライ制御部190に出力する。リプライ制御部190は、受信バッファ制御部120から入力したバッファ番号とヘッダとを関連付けて記憶部191に保持し(ステップS3)、当該バッファ番号に対する問い合わせを待機する。
また、受信バッファ制御部120は、受信バッファから読みだしメモリ・ライト・トランザクションを、格納されていた受信バッファのバッファ番号と共にトランザクション制御部140に出力する。トランザクション制御部140は、受信バッファ制御部120から入力したメモリ・ライト・トランザクションを、メモリ・ライト・パケットに変換し(ステップS4)、Inbound制御部150のバッファに格納する。
なお、トランザクション制御部140は、メモリ・ライト・トランザクションをメモリ・ライト・パケットに変換する際に、メモリ・ライト・パケットにユニークなIDを設定し、当該メモリ・ライト・パケットに格納する。また、トランザクション制御部140は、設定したIDをバッファ番号に関連付けて内部メモリに記録する(ステップS5)。
Inbound制御部150は、バッファに格納されたメモリ・ライト・パケットをメモリコントローラインタフェース制御部170を介して、メモリコントローラ200に送信する(ステップS6)。
メモリコントローラ200は、受信したメモリ・ライト・パケットに含まれるデータを該当するメモリアドレスに格納する際に何らかのエラーを検出した場合、その応答パケット(異常終了)をI/Oブリッジ装置100に送信する。
メモリコントローラ200が応答パケットを送信すると、I/Oブリッジ装置100のメモリコントローラインタフェース制御部170は、メモリコントローラ200からの応答パケットを受信し(ステップS12)、Outbound制御部160のバッファに格納する。
次に、Outbound制御部160は、格納された応答パケットを読み出してトランザクション制御部140に出力する。次に、トランザクション制御部140は、応答パケットに含まれるIDを読み出し、内部メモリから当該IDに関連付けられたバッファ番号を読み出す(ステップS13)。次に、トランザクション制御部140は、応答パケットの内容(異常終了)をバッファ番号と共にリプライ制御部190に出力する。
次に、リプライ制御部190は、トランザクション制御部140から入力したバッファ番号に関連付けられたヘッダを、記憶部191から読み出す(ステップS14)。そして、リプライ制御部190は、当該ヘッダからトランザクションの送信元のPCIeデバイス600を特定し、当該PCIeデバイス600宛てのメモリ・ライト・トランザクションを生成する(ステップS15)。このとき、リプライ制御部190は、トランザクション制御部140140から入力した応答パケットの内容(異常終了)をメモリ・ライト・トランザクションに反映する。次に、リプライ制御部190は、生成したメモリ・ライト・トランザクションを、送信バッファ制御部130の送信バッファに格納する。
そして、送信バッファ制御部130は、送信バッファに格納されたメモリ・ライト・トランザクションを読み出し、PCIeインタフェース制御部110を介して、当該メモリ・ライト・トランザクションをPCIeスイッチ装置500へ送信する(ステップS16)。
PCIeスイッチ装置500は、受信したメモリ・ライト・トランザクションを該当するPCIeデバイス600に転送する。そして、メモリ・ライト・トランザクションを受信したPCIeデバイス600は、メモリ・ライト・トランザクションに含まれるライトデータを内蔵メモリ601に格納する。
これにより、PCIeデバイス600は、内蔵メモリ601に書き込まれた情報を参照することで、メモリライト処理にて異常が発生したことを確認し、障害処理を実行することができる。
次に、I/Oブリッジ装置100の内部に障害が発生した場合の動作を説明する。なお、上述したメモリライト処理が正常に行われた場合の動作と同一の処理については、同じ符号を用いて説明する。
図5は、I/Oブリッジ装置100の内部に障害が発生した場合の動作を示すフローチャートである。
PCIeデバイス600が送信したメモリ・ライト・トランザクションは、PCIeスイッチ装置500を経由して、I/Oブリッジ装置100のPCIeインタフェース制御部110が受信する(ステップS1)。受信したメモリ・ライト・トランザクションは、受信バッファ制御部120に受け渡され、空いている受信バッファに格納される(ステップS2)。
受信バッファ制御部120は、受信バッファに格納されたメモリ・ライト・トランザクションを読み出し、格納されていたバッファを特定するバッファ番号とメモリ・ライト・トランザクションのヘッダとをリプライ制御部190に出力する。リプライ制御部190は、受信バッファ制御部120から入力したバッファ番号とヘッダとを関連付けて記憶部191に保持し(ステップS3)、当該バッファ番号に対する問い合わせを待機する。
また、受信バッファ制御部120は、受信バッファから読みだしメモリ・ライト・トランザクションを、格納されていた受信バッファのバッファ番号と共にトランザクション制御部140に出力する。トランザクション制御部140は、受信バッファ制御部120から入力したメモリ・ライト・トランザクションを、メモリ・ライト・パケットに変換し(ステップS4)、Inbound制御部150のバッファに格納する。
なお、トランザクション制御部140は、メモリ・ライト・トランザクションをメモリ・ライト・パケットに変換する際に、メモリ・ライト・パケットにユニークなIDを設定し、当該メモリ・ライト・パケットに格納する。また、トランザクション制御部140は、設定したIDをバッファ番号に関連付けて内部メモリに記録する(ステップS5)。
ここで、Inbound制御部150は、バッファに格納されたメモリ・ライト・パケットに異常があることを検出した場合、診断制御部180に障害を検出したことを通知する(ステップS17)。診断制御部180は、Inbound制御部150からの障害を検出したことを示す通知を受けると、障害インジケータ181を点灯させ、I/Oブリッジ装置100の内部に障害が発生したことを通知する(ステップS18)。また、診断制御部180は、I/Oブリッジ装置100の内部に障害が発生したことを他の処理部に通知する。
リプライ制御部190は、診断制御部180から障害が発生したことを示す通知を受けると、記憶部191が記憶するヘッダを読み出す(ステップS19)。そして、リプライ制御部190は、当該ヘッダからトランザクションの送信元のPCIeデバイス600を特定し、当該PCIeデバイス600宛てのメモリ・ライト・トランザクションを生成する(ステップS20)。このとき、リプライ制御部190は、I/Oブリッジ装置100の内部に障害が発生したことを示す情報をメモリ・ライト・トランザクションに反映する。次に、リプライ制御部190は、生成したメモリ・ライト・トランザクションを、送信バッファ制御部130の送信バッファに格納する。
そして、送信バッファ制御部130は、送信バッファに格納されたメモリ・ライト・トランザクションを読み出し、PCIeインタフェース制御部110を介して、当該メモリ・ライト・トランザクションをPCIeスイッチ装置500へ送信する(ステップS21)。
PCIeスイッチ装置500は、受信したメモリ・ライト・トランザクションを該当するPCIeデバイス600に転送する。そして、メモリ・ライト・トランザクションを受信したPCIeデバイス600は、メモリ・ライト・トランザクションに含まれるライトデータを内蔵メモリ601に格納する。
これにより、PCIeデバイス600は、内蔵メモリ601に書き込まれた情報を参照することで、I/Oブリッジ装置100の内部に障害が発生したことを確認し、障害処理を実行することができる。
次に、メモリ・ライト・トランザクションがI/Oブリッジ装置100に到達する前にエラーを検出していた場合の動作を説明する。なお、上述したメモリライト処理が正常に行われた場合の動作と同一の処理については、同じ符号を用いて説明する。
図6は、メモリ・ライト・トランザクションがI/Oブリッジ装置100に到達する前にエラーを検出していた場合の動作を示すフローチャートである。
PCIeデバイス600が送信したメモリ・ライト・トランザクションは、PCIeスイッチ装置500を経由して、I/Oブリッジ装置100に送信される。PCIeスイッチ装置500は、I/Oブリッジ装置100にメモリ・ライト・トランザクションを転送する前に、当該メモリ・ライト・トランザクションにエラーがあるか否かを判定する。そして、PCIeスイッチ装置500は、メモリ・ライト・トランザクションにエラーがあると判定した場合、当該メモリ・ライト・トランザクションにエラーポイズンド状態を示すEPフィールドに、エラー検出を示す値(EP=1)を設定する。
PCIeスイッチ装置500から転送されたメモリ・ライト・トランザクションは、I/Oブリッジ装置100のPCIeインタフェース制御部110が受信する(ステップS1)。受信したメモリ・ライト・トランザクションは、受信バッファ制御部120に受け渡され、空いている受信バッファに格納される(ステップS2)。
受信バッファ制御部120は、受信バッファに格納されたメモリ・ライト・トランザクションを読み出し、格納されていたバッファを特定するバッファ番号とメモリ・ライト・トランザクションのヘッダとをリプライ制御部190に出力する。リプライ制御部190は、受信バッファ制御部120から入力したバッファ番号とヘッダとを関連付けて記憶部191に保持する(ステップS3)。
次に、受信バッファ制御部120は、読み出したメモリ・ライト・トランザクションがエラーポイズンド状態であると判定した場合、当該メモリ・ライト・トランザクションをトランザクション制御部140140に受け渡さずに破棄する(ステップS22)。
次に、リプライ制御部190190は、記憶部191からヘッダ情報を読み出し(ステップS23)、、当該ヘッダからトランザクションの送信元のPCIeデバイス600を特定し、当該PCIeデバイス600宛てのメモリ・ライト・トランザクションを生成する(ステップS24)。このとき、リプライ制御部190は、エラーポイズンドを示す情報をメモリ・ライト・トランザクションに反映する。次に、リプライ制御部190は、生成したメモリ・ライト・トランザクションを、送信バッファ制御部130の送信バッファに格納する。
そして、送信バッファ制御部130は、送信バッファに格納されたメモリ・ライト・トランザクションを読み出し、PCIeインタフェース制御部110を介して、当該メモリ・ライト・トランザクションをPCIeスイッチ装置500へ送信する(ステップS25)。
PCIeスイッチ装置500は、受信したメモリ・ライト・トランザクションを該当するPCIeデバイス600に転送する。そして、メモリ・ライト・トランザクションを受信したPCIeデバイス600は、メモリ・ライト・トランザクションに含まれるライトデータを内蔵メモリ601に格納する。
これにより、PCIeデバイス600は、内蔵メモリ601に書き込まれた情報を参照することで、メモリ・ライト・トランザクションにエラーポイズンド状態であることを確認し、障害処理を実行することができる。
このように、本実施形態によれば、I/Oブリッジ装置100は、メモリコントローラ200から応答パケットを受信すると、当該応答パケットの内容を、トランザクションの送信元のPCIeデバイス600の内蔵メモリ601に書き込むためのメモリ・ライト・トランザクションを生成する。これにより、PCIeデバイス600は、内蔵メモリ601に書き込まれた情報を参照することでエラーの内容を取得することができる。
また、本実施形態によれば、ハードウェアで構成されるI/Oブリッジ装置100のリプライ制御部190によって通知処理を行うため、PCIeデバイス600のデバイスドライバによるCPU処理を介在して処理状態の確認を行う必要が無い。これにより、メモリ・ライト・トランザクションによるデータ転送性能を、通知処理を行わないI/Oブリッジのそれと同程度の速度とすることができる。
《第2の実施形態》
次に、本発明の第2の実施形態について詳細に説明する。なお、第2の実施形態において、第1の実施形態と同様の構成要素については、同一の符号を付して詳細な説明を省略する。
図7は、本発明の第2の実施形態によるI/Oブリッジ装置100の構成を示す概略ブロック図である。
第2の実施形態によるI/Oブリッジ装置100の受信バッファ制御部120は、特種フラグ解析部121を備える。特種フラグ解析部121は、トランザクションに含まれる特種フラグ及び特種エントリの情報を読み取り、当該情報に従って、リプライ方法を決定する。
図8は、メモリ・ライト・トランザクションのフォーマットを示す図である。
本実施形態によるメモリ・ライト・トランザクションのフォーマットは、PCIeの仕様に準じたフォーマットに加え、ADDRESS[54:52]に特殊フラグを設定するエントリ(3bit)と、ADDRESS[43:40]に特殊コマンドを設定するエントリ (4bit)とを追加したものである。
図9は、特種フラグ及び特種エントリとリプライ方法との関係を示す表である。
図9を参照すると、特殊フラグが「000」を示す場合、I/Oブリッジ装置100は、通常のメモリ・ライト・トランザクション処理と同様にポステッド処理を実行する。また、特殊フラグが「010」を示し、特殊コマンドが「0000」を示す場合、I/Oブリッジ装置100は、第1の実施形態と同様のメモリ・ライト・トランザクション処理による応答を実行する。また、特殊フラグが「010」を示し、特殊コマンドが「0001」を示す場合、I/Oブリッジ装置100は、メモリライト処理の完了を待たずに応答のみを通知する処理を実行する。
具体的には、特種フラグ解析部121は、受信バッファ部が受信バッファから読み出したトランザクションの特殊フラグが「000」を示す場合、読み出したメモリ・ライト・トランザクションのヘッダを、リプライ制御部190に出力しないように受信バッファ部を制御する。これにより、リプライ制御部190は、トランザクション制御部140140から応答パケットを受け取っても、応答通知用のトランザクションを生成せず、応答通知を発行しない。結果として、I/Oブリッジ装置100にポステッド処理と同じ動作を行わせることができる。
また、特種フラグ解析部121は、特殊フラグが「010」を示し、特殊コマンドが「0000」を示す場合、特に処理を行わない。これにより、第1の実施形態で説明したメモリ・ライト・トランザクション処理による応答を行うため、メモリライト処理状態を該当PCIeデバイス600に通知する事ができる。
そして、特殊フラグが「010」を示し、特殊コマンドが「0001」を示す場合、受信バッファ部が受信バッファから読み出したトランザクションのヘッダ部を、リプライ制御部190に通知すると同時に、リプライ制御部190に対してリプライ実行を指示する。
リプライ実行を指示されたリプライ制御部190は、受け取ったメモリ・ライト・トランザクションのヘッダに基づいて、応答用のトランザクションを生成し、送信バッファ制御部130の送信バッファに格納する。これにより、I/Oブリッジ装置100は、メモリライト処理完了の応答パケットを待たずに該当PCIeデバイス600へ応答を通知することができる。
第2の実施形態では、メモリ・ライト・トランザクションのアドレス空間に完了通知機能の使用有無フラグ(特種フラグ・特種コマンド)を設けるため、通常のPCIeデバイス600をも、本発明のI/Oブリッジ装置100に接続できる。これによりシステム構築の拡張性を確保出来るという新たな効果を有する。さらに、特殊フラグと特殊コマンドエントリの組合せで、その他のメモリアクセスの方法(例えば、Test&Set、同期化など)を指定することもでき、デバイス機能の拡張も容易に行うことができる。
以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
例えば、本実施形態では、リプライ制御部190が、受信バッファ制御部120の受信バッファのバッファ番号とトランザクションのヘッダとを関連付けて記憶する場合を説明したが、これに限られない。例えば、リプライ制御部190がトランザクション制御部140が生成したパケットのIDを入力し、当該IDとヘッダとを関連付けて記憶するようにしても良い。
また、本実施形態では、I/Oブリッジ装置100の各処理部をハードウェアにて構成する場合を説明したが、これに限られない。例えば、I/Oブリッジ装置100が内部に、コンピュータシステムを有しており、上述した各処理部の動作は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われるようにしても良い。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、CD−ROM、DVD−ROM、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
100…I/Oブリッジ装置 110…PCIeインタフェース制御部 120…受信バッファ制御部 121…特種フラグ解析部 130…送信バッファ制御部 140…トランザクション制御部 150…Inbound制御部 160…Outbound制御部 170…メモリコントローラインタフェース制御部 180…診断制御部 181…診断インジケータ 190…リプライ制御部 191…記憶部 200…メモリコントローラ 300…CPU 400…メモリ 500…PCIeスイッチ装置 600…PCIeデバイス 601…内蔵メモリ

Claims (7)

  1. 主記憶装置に対する処理を行うメモリコントローラと周辺機器との間で命令の伝達を行うI/Oブリッジ装置であって、
    前記周辺機器から前記メモリコントローラに対する命令を示す命令信号を受信する命令受信部と、
    前記命令受信部が受信した命令信号を、前記命令信号が示す命令と前記命令受信部が受信した命令信号を特定する識別情報とを含む命令パケットに変換する変換部と、
    前記変換部が変換した命令パケットを前記メモリコントローラに送信する命令送信部と、
    前記命令送信部が送信した命令パケットに含まれる識別情報を含む、前記命令送信部が送信した命令パケットに対する応答パケットを前記メモリコントローラから受信する応答受信部と、
    前記応答受信部が受信した応答パケットに含まれる識別情報が示す命令信号の送信元の周辺機器に、前記応答受信部が受信した応答パケットの内容を内蔵メモリに書き込む命令を示す書込命令信号を送信する書込命令送信部と
    を備えることを特徴とするI/Oブリッジ装置。
  2. 前記命令受信部が受信した命令信号を特定する識別情報と前記命令受信部が受信した命令信号の送信元の周辺機器を示す送信元情報とを関連付けて記憶部に記録する記録部と、
    前記応答受信部が受信した応答パケットに含まれる識別情報に関連付けられた送信元情報を前記記憶部から読み出す送信元情報読出部と
    を備え、
    前記書込命令送信部は、前記送信元情報読出部が読み出した送信元情報が示す周辺機器に、前記書込命令信号を送信する
    ことを特徴とする請求項1に記載のI/Oブリッジ装置。
  3. 自装置の内部エラーを検出する内部エラー検出部を備え、
    前記内部エラー検出部が自装置の内部にエラーがあると判定した場合、
    前記送信元情報読出部は、前記記憶部が記憶する送信元情報を読み出し、
    前記書込命令送信部は、自装置内部に障害が発生していることを示す情報を内蔵メモリに書き込むメモリ書込命令を、前記送信元情報読出部が読み出した送信元情報が示す周辺機器に送信する
    ことを特徴とする請求項1または請求項2に記載のI/Oブリッジ装置。
  4. 前記命令異常判定部が前記命令パケットに異常があると判定した場合に、自装置内部に障害が発生していることを外部に通知する障害通知部
    を備えることを特徴とする請求項3に記載のI/Oブリッジ装置。
  5. 前記命令受信部が受信した命令信号に、当該命令信号にエラーがあることを示すエラー情報が付加されている場合、
    前記書込命令送信部は、自装置に到達する前に命令信号にエラーが発生していることを示す情報を内蔵メモリに書き込むメモリ書込命令を、前記命令信号の送信元の周辺機器に送信する
    ことを特徴とする請求項1から請求項4の何れか1項に記載のI/Oブリッジ装置。
  6. 主記憶装置に対する処理を行うメモリコントローラと周辺機器との間で命令の伝達を行うI/Oブリッジ装置を用いた応答通知方法であって、
    命令受信部は、前記周辺機器から前記メモリコントローラに対する命令を示す命令信号を受信し、
    変換部は、前記命令受信部が受信した命令信号を、前記命令信号が示す命令と前記命令受信部が受信した命令信号を特定する識別情報とを含む命令パケットに変換し、
    命令送信部は、前記変換部が変換した命令パケットを前記メモリコントローラに送信し、
    応答受信部は、前記命令送信部が送信した命令パケットに含まれる識別情報を含む、前記命令送信部が送信した命令パケットに対する応答パケットを前記メモリコントローラから受信し、
    書込命令送信部は、前記応答受信部が受信した応答パケットに含まれる識別情報が示す命令信号の送信元の周辺機器に、前記応答受信部が受信した応答パケットの内容を内蔵メモリに書き込む命令を示す書込命令信号を送信する
    ことを特徴とする応答通知方法。
  7. 主記憶装置に対する処理を行うメモリコントローラと周辺機器との間で命令の伝達を行うI/Oブリッジ装置を、
    前記周辺機器から前記メモリコントローラに対する命令を示す命令信号を受信する命令受信部、
    前記命令受信部が受信した命令信号を、前記命令信号が示す命令と前記命令受信部が受信した命令信号を特定する識別情報とを含む命令パケットに変換する変換部、
    前記変換部が変換した命令パケットを前記メモリコントローラに送信する命令送信部、
    前記命令送信部が送信した命令パケットに含まれる識別情報を含む、前記命令送信部が送信した命令パケットに対する応答パケットを前記メモリコントローラから受信する応答受信部、
    前記応答受信部が受信した応答パケットに含まれる識別情報が示す命令信号の送信元の周辺機器に、前記応答受信部が受信した応答パケットの内容を内蔵メモリに書き込む命令を示す書込命令信号を送信する書込命令送信部
    として機能させるためのプログラム。
JP2010207542A 2010-09-16 2010-09-16 I/oブリッジ装置、応答通知方法、及びプログラム Active JP5316502B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010207542A JP5316502B2 (ja) 2010-09-16 2010-09-16 I/oブリッジ装置、応答通知方法、及びプログラム
US13/232,669 US8799548B2 (en) 2010-09-16 2011-09-14 I/O bridge device, response-reporting method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010207542A JP5316502B2 (ja) 2010-09-16 2010-09-16 I/oブリッジ装置、応答通知方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2012063971A true JP2012063971A (ja) 2012-03-29
JP5316502B2 JP5316502B2 (ja) 2013-10-16

Family

ID=45818757

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010207542A Active JP5316502B2 (ja) 2010-09-16 2010-09-16 I/oブリッジ装置、応答通知方法、及びプログラム

Country Status (2)

Country Link
US (1) US8799548B2 (ja)
JP (1) JP5316502B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015056372A1 (ja) * 2013-10-18 2015-04-23 三菱電機株式会社 データ転送装置及びデータ転送方法
JP2015524122A (ja) * 2013-05-20 2015-08-20 華為技術有限公司Huawei Technologies Co.,Ltd. ピーシーアイエクスプレスのエンドポイントデバイスにアクセスするための方法、コンピューターシステム、および、装置

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IN2013KN03842A (ja) 2012-10-27 2015-05-01 Huawei Tech Co Ltd
US20190042155A1 (en) * 2018-05-14 2019-02-07 Intel Corporation Overloading memory address fields while maintaining address boundary constraint compliance

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05233528A (ja) * 1992-02-18 1993-09-10 Hitachi Ltd バス制御方式及びコンピュータシステム
JPH08314854A (ja) * 1995-05-17 1996-11-29 Hitachi Ltd データ転送システムおよびこれに関連する装置
JPH0944443A (ja) * 1995-07-31 1997-02-14 Nec Eng Ltd バスインタフェース制御装置
JPH0981502A (ja) * 1995-09-08 1997-03-28 Toshiba Corp コンピュータシステム
JP2003018240A (ja) * 2001-07-04 2003-01-17 Mitsubishi Electric Corp 通信監視システム
JP2005182536A (ja) * 2003-12-19 2005-07-07 Toshiba Corp バスブリッジ回路
JP2005208972A (ja) * 2004-01-23 2005-08-04 Nec Corp コンピュータ装置及びシステム
JP2009199428A (ja) * 2008-02-22 2009-09-03 Hitachi Ltd ストレージ装置及びアクセス命令送信方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050289278A1 (en) * 2004-06-24 2005-12-29 Tan Thian A Apparatus and method for programmable completion tracking logic to support multiple virtual channels
US7676617B2 (en) * 2008-03-31 2010-03-09 Lsi Corporation Posted memory write verification
US8140922B2 (en) * 2008-05-20 2012-03-20 International Business Machines Corporation Method for correlating an error message from a PCI express endpoint
US7685352B2 (en) * 2008-07-31 2010-03-23 International Business Machines Corporation System and method for loose ordering write completion for PCI express
US8161221B2 (en) * 2008-11-25 2012-04-17 Hitachi, Ltd. Storage system provided with function for detecting write completion
US20100306442A1 (en) * 2009-06-02 2010-12-02 International Business Machines Corporation Detecting lost and out of order posted write packets in a peripheral component interconnect (pci) express network
US8615622B2 (en) * 2010-06-23 2013-12-24 International Business Machines Corporation Non-standard I/O adapters in a standardized I/O architecture

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05233528A (ja) * 1992-02-18 1993-09-10 Hitachi Ltd バス制御方式及びコンピュータシステム
JPH08314854A (ja) * 1995-05-17 1996-11-29 Hitachi Ltd データ転送システムおよびこれに関連する装置
JPH0944443A (ja) * 1995-07-31 1997-02-14 Nec Eng Ltd バスインタフェース制御装置
JPH0981502A (ja) * 1995-09-08 1997-03-28 Toshiba Corp コンピュータシステム
JP2003018240A (ja) * 2001-07-04 2003-01-17 Mitsubishi Electric Corp 通信監視システム
JP2005182536A (ja) * 2003-12-19 2005-07-07 Toshiba Corp バスブリッジ回路
JP2005208972A (ja) * 2004-01-23 2005-08-04 Nec Corp コンピュータ装置及びシステム
JP2009199428A (ja) * 2008-02-22 2009-09-03 Hitachi Ltd ストレージ装置及びアクセス命令送信方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015524122A (ja) * 2013-05-20 2015-08-20 華為技術有限公司Huawei Technologies Co.,Ltd. ピーシーアイエクスプレスのエンドポイントデバイスにアクセスするための方法、コンピューターシステム、および、装置
US9323635B2 (en) 2013-05-20 2016-04-26 Huawei Technologies Co., Ltd. Method, computer system, and apparatus for accessing peripheral component interconnect express endpoint device
US9384110B2 (en) 2013-05-20 2016-07-05 Huawei Technologies Co., Ltd. Method, computer system, and apparatus for accessing peripheral component interconnect express endpoint device
WO2015056372A1 (ja) * 2013-10-18 2015-04-23 三菱電機株式会社 データ転送装置及びデータ転送方法
JP6026001B2 (ja) * 2013-10-18 2016-11-16 三菱電機株式会社 データ転送装置及びデータ転送方法

Also Published As

Publication number Publication date
US20120072637A1 (en) 2012-03-22
JP5316502B2 (ja) 2013-10-16
US8799548B2 (en) 2014-08-05

Similar Documents

Publication Publication Date Title
JP4658122B2 (ja) Dmaコントローラ、ノード、データ転送制御方法、及びプログラム
US7633856B2 (en) Multi-node system, internodal crossbar switch, node and medium embodying program
JP2008090375A (ja) 割込み制御システム、およびこれを利用した記憶制御システム
US20150301886A1 (en) Information processing apparatus, system, and information processing method
JP5962260B2 (ja) ストレージ装置および書込完了通知方法
US8250260B2 (en) Method, arrangement, data processing program and computer program product for exchanging message data in a distributed computer system
JP5316502B2 (ja) I/oブリッジ装置、応答通知方法、及びプログラム
US8244930B1 (en) Mechanisms for synchronizing data transfers between non-uniform memory architecture computers
US6604161B1 (en) Translation of PCI level interrupts into packet based messages for edge event drive microprocessors
JP5151500B2 (ja) コンピュータシステム、障害処理方法および障害処理プログラム
JP2010211322A (ja) ネットワークプロセッサ、受信コントローラ、及びデータ受信処理方法
CN114448780B (zh) 一种基于pcie接口的以太网控制器异常处理系统和方法
JP5930469B2 (ja) エラー検出に応答するためのシステム及び方法
CN110134638B (zh) 一种双处理器数据交换方法
JP2014038438A (ja) 演算処理装置、情報処理装置及び割込制御方法
JP2006285872A (ja) マルチcpuシステム
US11704208B2 (en) Storage system and information processing method
JP2006338533A (ja) Ecc回路を有するマルチレイヤバスシステム
JP6384359B2 (ja) 分散共有メモリを有する情報処理装置、方法、および、プログラム
JP6126259B1 (ja) 監視装置、監視方法、及びプログラム
JP4439295B2 (ja) データ転送制御装置
US20180309663A1 (en) Information processing apparatus, information processing system, and information processing method
JP5811544B2 (ja) 集積装置、情報処理システム、および、処理方法
JPH09325919A (ja) スプリット転送エラー監視装置
JPH01228242A (ja) マトリクススイッチにおける迂回方式

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120807

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120808

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121004

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130402

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130624

R150 Certificate of patent or registration of utility model

Ref document number: 5316502

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350