JP2005018317A - Transaction failure recessing system - Google Patents
Transaction failure recessing system Download PDFInfo
- Publication number
- JP2005018317A JP2005018317A JP2003180654A JP2003180654A JP2005018317A JP 2005018317 A JP2005018317 A JP 2005018317A JP 2003180654 A JP2003180654 A JP 2003180654A JP 2003180654 A JP2003180654 A JP 2003180654A JP 2005018317 A JP2005018317 A JP 2005018317A
- Authority
- JP
- Japan
- Prior art keywords
- transaction
- failure
- type
- processing
- failure processing
- 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.)
- Pending
Links
Images
Abstract
Description
【0001】
【発明の属する技術分野】
この発明は、バスを経由して転送されるトランザクションの障害処理システムに関し、特に、チップセットに搭載される記憶回路を含む集積回路で構成され、所定のオペレーティングシステムが採るトランザクション障害処理に適応できるトランザクション障害処理システムに関する。
【0002】
【従来の技術】
バス制御機能を含むチップセットに、CPU、インタフェース部、メモリを接続し、チップセットを含む一部のオペレーティングシステム機能を使用可能にする専用動作モードを設けて、電源オフ状態からの通常動作モード立ち上げよりも、早いシステム立ち上げを実現している。通常の立ち上げでは、各種の機器をウェイクアップして、再開可能にするデータの設定などに時間を要する。専用動作モードでの立ち上げでは、データ参照など、短時間で特定のアクセスに対して動作モードに移行でき、立ち上げ時間を短縮する。これは、チップセットに搭載されているバス制御やメモリ制御機能が活性状態を保っているため、ウェイクアップやデータの再設定が不要になるからである。つまり、チップセットを活性状態におくことによって、オペレーティングシステムの一部機能を集積回路によって活性状態に保つからである(例えば、特許文献1)。
【0003】
デバイスを接続するプロセッサを含むシステムで、該デバイスのプロセッサアドレス空間上のアドレス及び範囲を割り当てるマッピングレジスタをデバイス対応に持たせ、それを変更することにより、デバイス選択信号の出力が有効になるアドレスを変更可能にする構成がある。そのため、該構成を集積回路化してチップセットに搭載することが行われている。その結果、デバイスに対するアドレス割り付け、占有空間が固定化でなく、適応性を持たせることができる(例えば、特許文献2)。
【0004】
加速グラフィックス・ポート(AGP)バス・デバイスと、ホスト・プロセッサ及びコンピュータシステムメモリとの間のブリッジとして機能するコア・ロジック・チップセットを有するコンピュータシステムで、該チップセットにグラフィック・アドレス・リマッピングテーブル(GARTテーブル)を置き、AGPデバイスによって参照された仮想アドレスを、コンピュータシステムのメモリにあるグラフィック情報の物理アドレスにリマップさせる。このGARTテーブルをソフトウェアで制御することによって、物理メモリのアドレスを任意に変更可能にする(例えば、特許文献3)。
【0005】
【特許文献1】
特開2002−132393号公報(段落0037,0042,図1)
【特許文献2】
特開平11−272600号公報(段落0017,0030,0031)
【特許文献3】
特開平11−167523号公報(段落0026,図13)
【0006】
【発明が解決しようとする課題】
インテルアーキテクチャをベースとした情報処理装置にあっては、ウィンドウズ(登録商標)やリナックスやユニックスなど複数のオペレーティングシステムが動作が可能である。システム立ち上げやアプリケーション走行などの通常機能に関しては、インテルアーキテクチャの範囲内にあるため、上述のオペレーティングシステムの動作に支障を来さない。
【0007】
しかし、近年、オペレーティングシステムのベンダーは、障害処理機能を充実させてきているが、仕様化の動向は不透明で、インテルアーキテクチャやその他のデファクト・スタンダードにおいても仕様策定が進展していない。この様な業界の状況下で、オペレーティングシステムの障害処理仕様の確定を待って、情報処理装置を開発するのでは、情報処理装置を市場に投入するタイミングが遅れ、ビジネスチャンスを縮小してしまう。一方、オペレーティングシステムの障害処理仕様が確定する前に情報処理装置(特にLSI)を開発すれば、作り直しになるリスクが高くなり、作り直しになった場合、余計に開発費が掛かり、ビジネス性が損なわれる。そこで、情報処理装置が、複数のオペレーティングシステムの障害処理に柔軟に適応するため、特に集積回路にオペレーティングシステムに適応性を持たせる回路設計が解決の一つの方策になる。
【0008】
そこで、バス上を転送するトランザクションの障害処理に対して、予め指定されたトランザクション種別(リードリクエスト、ライトリクエスト、リードおよびライトリクエストの完了報告)、及び障害種別に応じて、障害発生時及び障害発生以降のトランザクション障害の障害処理を変更して適応可能にするハードウェアを集積回路化して、チップセットに搭載する。これを初期化で、設定制御することによって、情報処理装置にオペレーティングシステム毎に異なるトランザクション障害の障害処理に適応する手段を持たせる。
【0009】
この発明の目的は、バスを経由して転送するトランザクションのトランザクション障害に関し、トランザクション種別と、障害種別と、に応じて、障害処理の扱いを適用するオペレーティングシステム対応に設定可能な記憶回路を含む集積回路を設けてチップセットに搭載し、複数のオペレーティングシステムの障害処理に対応できる適応性を持たせることにある。
【0010】
【課題を解決するための手段】
そのため、この発明の、発信元からバスを経由して発信先に転送するトランザクションに対して、前記トランザクションの障害を検出して障害処理するトランザクション障害処理システムにおいて、経由するバスからトランザクションを受け取る入力バッファと、前記入力バッファのトランザクションのトランザクション種別及び障害種別を判定して、適用するオペレーティングシステムにおけるトランザクション障害に対する障害処理を選択し、以後の同じトランザクション種別に対応する障害処理を選択するトランザクション処理部と、前記トランザクション処理部の判定において、トランザクション障害がないとき、前記入力バッファのトランザクションに変換を施さず、また、トランザクション障害があるとき、前記トランザクションを前記トランザクション障害処理で定まる破棄、あるいは変換を施すトランザクション変換部と、前記トランザクション変換処理部で変換を受けないトランザクション、あるいは前記トランザクション変換部で変換を受けたトランザクション、を発信先に送信する発信先出力バッファと、前記トランザクション変換部で変換して発信元に返信する発信元出力バッファと、を備えることを特徴とする。
【0011】
更に、前記トランザクション処理部は、前記入力バッファのトランザクション種別を判定するトランザクション種別判定部と、前記入力バッファのトランザクションに障害が生じているか否かと障害種別とを検出する障害検出部と、前記トランザクションの種別及び障害種別に応じて、初めて生じたトランザクション障害に対して参照する第1の障害処理テーブルと、障害履歴に記憶してあるトランザクション種別に対して参照する第2の障害処理テーブルと、を有する障害処理指定部と、トランザクションの障害履歴を記憶し、前記第1の障害処理テーブルか、あるいは前記第2の障害処理テーブルかを前記履歴によって選択参照し、トランザクション種別及び障害種別に基づいて、障害処理を選択するトランザクション処理判定部と、を有することを特徴とする。
【0012】
更に、前記トランザクションは、リードリクエストと、ライトリクエストと、リードリクエストの完了報告と、ライトリクエストの完了報告と、を種別とし、前記トランザクション自体は、ヘッダ部と、データ部と、を有し、前記ヘッダ部は、トランザクション種別を示す種別コードと、発信元を示す発信元コードと、発信先を示す発信先コードと、を含み、前記データ部は、処理対象のデータと、前記データに対するチェックコードと、を含むことを特徴とする。
【0013】
更に、前記トランザクション障害は、ヘッダエラーと、データエラーと、を障害種別とし、前記ヘッダエラーは、前記種別コード並びに前記発信元コード及び前記発信先コードが不正コードであるとき、ヘッダエラーと判定され、前記データエラーは、前記チェックコードによって検出されるエラーであるとき、データエラーと判定することを特徴とする。
【0014】
更に、前記トランザクション障害処理システムは、チップセットに搭載される記憶回路を含む集積回路で構成され、初期化設定できることを特徴とする。
【0015】
更に、前記第1の障害処理テーブルは、チップセットに搭載される記憶回路を含む集積回路え構成され、複数の適用オペレーティングシステムのトランザクション障害に対する想定障害処理と、前記トランザクション種別と、前記障害種別と、の組み合わせのセルでなるテーブルに、所定のオペレーティングシステムが採る障害処理選択子を前記セルに初期設定すること、を特徴とする。
【0016】
更に、前記第2の障害処理テーブルは、チップセットに搭載される記憶回路を含む集積回路で構成され、複数の適用オペレーティングシステムのトランザクション障害に対する想定障害処理と、前記トランザクション種別と、前記障害種別と、の組み合わせのセルでなるテーブルに、所定のオペレーティングシステムが採用する既発生のトランザクション障害に対する障害処理に選択子を前記セルに初期設定する、ことを特徴とする。
【0017】
【発明の実施の形態】
この発明について、図面を参照して説明する。この発明の実施の一形態を示す図1を参照すると、図示していないチップセットに搭載され、トランザクション障害に対して、トランザクション種別と障害種別との組み合わせで選択される障害処理を変更することができるトランザクション処理部10と、図示していないプロセッサバスなどの外部からトランザクションを受け取る入力バッファ11と、トランザクション処理部10で該トランザクション障害に指定の障害処理を選択して、該トランザクションに変換を施すトランザクション変換部16と、変換されたトランザクションを発信先に送信するPCIバスなどに接続する出力バッファ17と、変換されたトランザクションを発信元に返信するプロセッサバスなどに接続する出力バッファ18と、を備える。
【0018】
トランザクション処理部10は、入力バッファ11から受け取ったトランザクションのトランザクション種別を判定するトランザクション種別判定部12と、入力バッファ11から受け取ったトランザクションの障害種別を検出する障害検出部13と、トランザクション種別と障害種別とに対応する障害処理を指定する第1の障害処理テーブル141と第2の障害処理テーブル142とを有する障害処理指定部14と、トランザクション種別判定部12のトランザクション種別と、障害検出部13の障害種別と、該トランザクション障害が初めて発生したか、あるいは以前発生したトランザクション障害であるか否かの履歴を記憶し、該履歴によって、第1の障害処理テーブル141、あるいは第2の障害処理テーブル142を選択参照し、障害処理を選択するトランザクション処理判定部15と、を含む。
【0019】
図2を参照して、トランザクションの構成を説明すると、トランザクション20は、プロセッサバスなどの外部から入力され、トランザクション処理部10を通じてPCIバスなどの外部に出力される転送データを指し、ヘッダ21とデータ22とを有し、ヘッダ21は、トランザクション種別211と、送信元212と、送信先213と、チェックコード214と、を含み、データ22は、データ自体221と、それのチェックコード222と、を含む。
【0020】
更に、トランザクション種別211は、図3のトランザクション種別1411を援用すると、リードリクエスト(データ返信あり)と、ライトリクエスト(完了報告あり)と、ライトリクエスト(完了報告なし)と、データ付き完了報告と、データなし完了報告と、を含む。
【0021】
更に、エラー種別は、図3の障害種別1412を援用すると、ヘッダ21にエラーがある場合と、データにエラーがある場合と、に大別される。ヘッダエラーは、ヘッダーに含まれる項目の不正コードを指し、データエラーは、チェックコードで検出されるエラーを指す。
更に、トランザクション障害は、図3のトランザクション種別1411と障害種別1412とを援用すると、トランザクション種別の一つに対して、ヘッダエラーヘッダエラーとデータエラーの二つを組み合わせて定まる種別のトランザクション障害がある。
【0022】
図3を参照して、第1の障害処理テーブル141を説明すると、第1の障害処理テーブル141は、初めて発生したトランザクション障害の障害処理に適用する。トランザクション種別と障害種別との組み合わせに対して、適用を想定する複数のオペレーティングシステムが採る障害処理を配列したセル1413乃至1420とでなるテーブルである。また、トランザクション障害に対して、選択可能な障害処理と、選択不可能な障害処理と、がある。選択不可能な障害処理に対しては、選択不可識別子を、選択可能な障害処理に対しては、選択可識別子を、予め設定しておき、初期化で、所定のオペレーティングシステムが採る障害処理に相当する選択可能なセルに選択子を設定して、第1の障害処理テーブル141を個別化する。
図4を参照して、第2の障害処理テーブル142を説明すると、第2の障害処理テーブル142は、トランザクション障害の履歴に記憶されているトランザクション種別のトランザクションに適用し、所定のオペレーティングシステムのトランザクション障害に対する障害処理の一貫性を確保する。第2の障害処理テーブル142は、履歴に記憶されたトランザクション種別に対して、適用を想定する複数のオペレーティングシステムが採る障害処理を配列したセル1422乃至1429を有するテーブルである。また、トランザクション種別に対して、選択可能な障害処理と、選択不可能な障害処理と、がある。選択不可能な障害処理に対しては、選択不可識別子を、選択可能な障害処理に対しては、選択可識別子を、予め設定しておき、初期化時に、所定のオペレーティングシステムが採る障害処理に相当する選択可能なセルに選択子を設定して、第2の障害処理テーブル142を個別化する。つまり、トランザクション障害を生じたトランザクション種別は、履歴に登録された以降、一貫した障害処理が施されることになる。
【0023】
次に、この実施の形態の動作について説明する。トランザクション20は、プロセッサバスなどの外部から供給され、まず、トランザクション20を一時的に保持可能な入力バッファ11に格納される。入力バッファ11は、トランザクション種別判定部12と、障害検出部103と、に接続される。トランザクション種別判定部12は、入力バッファ11に保持されたトランザクション20の種別211を解釈し、リードリクエスト(データ返信あり)と、ライトリクエスト(完了報告あり)と、ライトリクエスト(完了報告なし)と、データ付き完了報告と、データなし完了報告と、に分類する。また、この分類結果をトランザクション処理判定部15に伝える。
【0024】
障害検出部13は、入力バッファ11に保持しているトランザクションに障害発生の有無と、障害が発生している場合は、ヘッダエラー、データエラーの障害種別を判定する。また、障害種別結果をトランザクション処理判定部15に伝える。なお、トランザクション20は、データ22がないヘッダ21のみのものと、データ22とヘッダ21とがあるものに大別されるので、障害種別1412も、ヘッダエラーとデータエラーとの2つの障害種別に大別できる。
【0025】
障害処理指定部14は、トランザクション種別および障害種別の組み合わせで、障害が初めて発生したトランザクション及び障害発生以後のトランザクションの障害処理を選択する。トランザクション障害に対して、適用する複数のオペレーティングシステムが採る障害処理には、障害ヘッダのフォワード(フォワードとは、送信先へトランザクションを送る動作を指す)1413と、エラー付きでデータフォワード(データがエラー訂正コード付きならば、エラーが発生したことを示すエラー訂正コードとデータを差し替え、またデータがエラー訂正コード付きではなく、パリティ付きならば、パリティビットを反転させ、更にヘッダなしのトランザクションは存在しないので、エラー付きデータは必ずヘッダとセットで、送信先に転送される)1414と、エラーヘッダレスポンス(レスポンスとは、送信元にトランザクションを返信する動作を指す)1415と、オール1データレスポンス1416と、エラー付きデータレスポンス(データのエラー添付方法はエラー付きデータフォワードと同じ)1417と、破棄1418と、無変換フォワード(トランザクションを何もせずそのままフォワードする)1419と、あるいは、無変換レスポンス1420と、がある。上述の障害処理の一つを選択してトランザクション処理判定部15に伝える。
【0026】
トランザクション処理判定部15は、トランザクション種別1411と、障害種別1412と、障害処理1413乃至1420との組み合わせに基づき、トランザクションの障害処理を決定する。障害処理テーブル141は、初めて発生したトランザクション障害のトランザクション(該当トランザクションそのものが障害となる)に対する障害処理の一覧表である。障害処理テーブル142は、トランザクション障害発生以降に、障害履歴に記憶されているトランザクション種別1421に対する障害処理1422乃至1429の一覧表である。
【0027】
障害処理テーブル141と障害処理テーブル142とが、トランザクション処理判定部15に具体的な障害処理を示したものである。例えば、リードリクエストのヘッダがエラーになり(ヘッダエラー)、かつ障害処理テーブル141がエラーヘッダレスポンスを選択していると、障害処理指定部14は該選択をトランザクション処理判定部105に伝え、トランザクション処理判定部105はトランザクション変換部16に対して、トランザクションをエラーヘッダレスポンスに変換するように指示する。また、トランザクション処理判定部15は、トランザクション障害を履歴として記憶しておく機能があり、初めて発生したトランザクション障害であるか、既に履歴に記憶されているトランザクション障害であるかを区別できる。例えば、トランザクション障害発生後に、完了報告ありのライトリクエストに対して、障害処理指定部14からの選択が破棄だった場合、トランザクション処理判定部105は、トランザクション変換部106に該当のトランザクションを破棄(フォワード、あるいは、レスポンスを行わず、トランザクションをトランザクション処理部10内で棄てる)するように指示する。
【0028】
トランザクション変換部16は、トランザクション処理判定部15の選択に従って、入力バッファ11に格納されているトランザクションを変換し、フォワード、レスポンス、あるいは、破棄のいずれか一つを処理する。フォワードする場合、変換後のトランザクションを出力バッファ17に格納し、最終的に送信先へトランザクションを送る。レスポンスする場合は、トランザクションを出力バッファ18に送り、最終的に送信元へトランザクションを返信する。
【0029】
次に、この実施の形態の障害処理テーブル141及び障害処理テーブル142を選択子で個別化した、図5の障害処理テーブル143と、図6の障害処理テーブル144とを参照して具体例で説明する。初期化時に初めて発生したトランザクション障害に対する障害処理の選択を障害処理テーブル143のセルに選択子を設定し、所定のオペレーティングシステムに対して個別化する。
リードリクエストがヘッダエラー時;データオール1レスポンス。
完了報告ありライトリクエストがヘッダエラー時;無変換レスポンス。
完了報告ありライトリクエストがデータエラー時;エラー付きデータフォワード。
完了報告なしライトリクエストがヘッダエラー時;破棄。
完了報告なしライトリクエストがデータエラー時;エラー付きデータフォワード。
データ付き完了報告がヘッダエラー時;破棄。
データ付き完了報告がデータエラー時;エラー付きデータフォワード。
データなし完了報告がヘッダエラー時;破棄。
【0030】
障害発生以降のトランザクション障害の障害処理を初期化時に、障害処理テーブル144のセルに選択子を設定して、所定のオペレーティングシステムに対して個別化する。トランザクション障害の履歴に記憶されているトランザクションに対しては、トランザクション種別で一貫性ある障害処理が採られる。
リードリクエストの時;データオール1レスポンス。
完了報告ありライトリクエストの時;無変換レスポンス。
完了報告なしライトリクエストの時;破棄。
データあり完了報告の時;破棄。
データなし完了報告の時;破棄。
【0031】
この障害処理テーブル143と障害処理テーブル144とを参照して具体動作について説明する。トランザクション20は、まず、入力バッファ11に格納される。入力バッファ11に格納されたトランザクション20は、トランザクション種別判定部12にて、トランザクション種別の判定が行われる。また、これと並行して、障害検出部13で、障害発生の有無と、ヘッダエラーか、あるいはデータエラーか、を判別する。入力バッファ11に格納されたトランザクション20がリードリクエストで、かつヘッダエラーであった場合、トランザクション処理判定部15は、トランザクション種別判定部12、障害検出部13、障害処理指定部14の障害処理テーブル143の選択子に従い、トランザクションをデータオール1レスポンスに変換することを判定する。
【0032】
この判定結果をトランザクション変換部16に伝え、トランザクション変換部16は、この指示で入力バッファ11に格納されているリードリクエストをデータオール1レスポンスに変換し、出力バッファ18に格納する。最終的に、出力バッファ18からデータオール1レスポンスが、送信元に返信される。もし、入力バッファ11に格納されたトランザクション20のリードリクエストに障害が発生していない場合、トランザクション変換部16で変換を行わず、出力バッファ17にそのまま格納され、送信先に送られる。また、障害発生以降、トランザクション処理判定部15は該トランザクション障害が発生したことを記憶しているので、以降のトランザクションを障害処理指定部14に格納されている障害処理テーブル144に従い、障害処理する。リードリクエストは、データオール1レスポンス1445に、終了報告ありライトリクエストは無変換レスポンス1447に、選択子が設定されているので、該レスポンスが送信元に返信される。完了報告なしライトリクエストと、データ付き完了報告と、データなし完了報告とは、いずれも破棄1447される。
【0033】
リードリクエスト以外のトランザクションに障害が発生した場合も、上述した障害処理指定部14に設定された障害発生時の障害処理テーブル144に従って、トランザクションの障害処理を行う。また、障害が発生したトランザクション種別に関わらず、障害発生以後は、入力バッファ11に格納されたトランザクション20は、障害発生以降の障害処理テーブル144に従って、障害処理が行われる。障害処理指定部14に設定する選択子を変更すれば、トランザクション処理部10は、障害発生時、および障害発生以降のトランザクションを、適用するオペレーティングシステムのトランザクション障害に対する障害処理に柔軟に適応できる。
【0034】
【発明の効果】
この発明の効果は、情報処理装置などのLSIに、オペレーティングシステムのトランザクション障害に適応する障害処理を集積回路化して組み込むことによって、オペレーティングシステム毎のトランザクション障害の障害処理仕様の違いや仕様決定の遅れに柔軟に適応できるようになり、その結果、LSIやオペレーティングシステムの開発リスクを軽減できる。
【図面の簡単な説明】
【図1】トランザクション障害処理システムの構成を示す図である。
【図2】トランザクションの構成を例示する図である。
【図3】第1の障害処理テーブルの構成を例示する図である。
【図4】第2の障害処理テーブルの構成を例示する図である。
【図5】第1の障害処理テーブルを個別化した図である。
【図6】第2の障害処理テーブルを個別化した図である。
【符号の説明】
10 トランザクション処理部
11 入力バッファ
12 トランザクション種別判定部
13 障害検出部
14 障害処理指定部
15 トランザクション処理判定部
16 トランザクション変換部
17 出力バッファ[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a failure processing system for transactions transferred via a bus, and more particularly, a transaction that is configured by an integrated circuit including a storage circuit mounted on a chipset and can be adapted to transaction failure processing adopted by a predetermined operating system. The present invention relates to a failure handling system.
[0002]
[Prior art]
The CPU, interface unit, and memory are connected to the chipset including the bus control function, and a dedicated operation mode is provided to enable use of some operating system functions including the chipset. The system has been launched faster than it was. In normal startup, it takes time to set up data that can be resumed by waking up various devices. In the start-up in the dedicated operation mode, the operation mode can be shifted to a specific access in a short time such as data reference, and the start-up time is shortened. This is because the bus control and memory control functions mounted on the chipset are kept active, so that wakeup and data resetting are not required. That is, by placing the chipset in an active state, some functions of the operating system are maintained in an active state by an integrated circuit (for example, Patent Document 1).
[0003]
In a system including a processor to which a device is connected, a mapping register for assigning an address and a range in the processor address space of the device is assigned to the device, and by changing the mapping register, an address at which the output of the device selection signal becomes valid There is a configuration that can be changed. Therefore, the configuration is integrated into an integrated circuit and mounted on a chip set. As a result, the address allocation and the occupied space for the device are not fixed but can be made adaptable (for example, Patent Document 2).
[0004]
A computer system having an accelerated graphics port (AGP) bus device and a core logic chipset that functions as a bridge between a host processor and computer system memory, with graphic address remapping to the chipset A table (GART table) is placed to remap the virtual address referenced by the AGP device to the physical address of the graphic information in the memory of the computer system. By controlling the GART table with software, the address of the physical memory can be arbitrarily changed (for example, Patent Document 3).
[0005]
[Patent Document 1]
JP 2002-132393 A (paragraphs 0037 and 0042, FIG. 1)
[Patent Document 2]
JP 11-272600 A (paragraphs 0017, 0030, 0031)
[Patent Document 3]
JP 11-167523 A (paragraph 0026, FIG. 13)
[0006]
[Problems to be solved by the invention]
In an information processing apparatus based on the Intel architecture, a plurality of operating systems such as Windows (registered trademark), Linux, and Unix can operate. Normal functions such as system startup and application running are within the Intel architecture, and thus do not hinder the operation of the above operating system.
[0007]
However, in recent years, operating system vendors have enhanced fault handling functions, but the trend of specification is unclear, and specifications are not being developed in the Intel architecture and other de facto standards. In such an industry situation, if the information processing apparatus is developed after waiting for the determination of the failure processing specification of the operating system, the timing of bringing the information processing apparatus to the market is delayed, and the business chance is reduced. On the other hand, if an information processing device (especially LSI) is developed before the failure handling specifications of the operating system are finalized, the risk of re-creation increases, and if it is re-created, additional development costs are incurred and business performance is impaired. It is. Therefore, in order for the information processing apparatus to flexibly adapt to failure processing of a plurality of operating systems, circuit design that makes the operating system adaptable to an integrated circuit is one of the solutions.
[0008]
Therefore, for failure processing of transactions that are transferred on the bus, depending on the transaction type specified in advance (read request, write request, read and write request completion report) and the failure type, when a failure occurs and when a failure occurs The hardware that can be adapted by changing the failure processing of subsequent transaction failures is integrated into an integrated circuit and mounted on the chipset. By performing setting control by initialization, the information processing apparatus is provided with means for adapting to failure processing of transaction failures that differ for each operating system.
[0009]
An object of the present invention relates to a transaction failure of a transaction transferred via a bus, and includes an integration including a storage circuit that can be set for an operating system that applies the handling of failure processing according to the transaction type and the failure type. The purpose is to provide a circuit that is mounted on a chip set and has adaptability to cope with failure processing of a plurality of operating systems.
[0010]
[Means for Solving the Problems]
Therefore, in the transaction failure processing system for detecting a failure of the transaction and processing the failure with respect to the transaction transferred from the transmission source to the transmission destination via the bus according to the present invention, the input buffer for receiving the transaction from the via bus A transaction processing unit that determines a transaction type and a failure type of the transaction in the input buffer, selects a failure process for a transaction failure in an operating system to be applied, and selects a failure process corresponding to the same transaction type thereafter; In the determination of the transaction processing unit, when there is no transaction failure, the transaction of the input buffer is not converted, and when there is a transaction failure, the transaction A destination that sends a transaction conversion unit that performs the conversion determined by the transaction failure processing and a transaction that is not converted by the transaction conversion processing unit or a transaction that is converted by the transaction conversion unit to the destination An output buffer and a transmission source output buffer that converts the response by the transaction conversion unit and sends it back to the transmission source.
[0011]
Further, the transaction processing unit includes a transaction type determination unit that determines a transaction type of the input buffer, a failure detection unit that detects whether a failure has occurred in the transaction of the input buffer, and a failure type, According to the type and the failure type, there is a first failure processing table that refers to the transaction failure that has occurred for the first time, and a second failure processing table that refers to the transaction type stored in the failure history. A failure processing designation unit and a transaction failure history are stored, the first failure processing table or the second failure processing table is selected and referred to by the history, and a failure is determined based on the transaction type and the failure type. A transaction process determination unit for selecting a process, and Characterized in that it.
[0012]
Further, the transaction is classified into a read request, a write request, a read request completion report, and a write request completion report, and the transaction itself has a header part and a data part, The header portion includes a type code indicating a transaction type, a transmission source code indicating a transmission source, and a transmission destination code indicating a transmission destination. The data portion includes data to be processed and a check code for the data. , Including.
[0013]
Further, the transaction failure is classified as a failure type including a header error and a data error, and the header error is determined as a header error when the type code and the transmission source code and the transmission destination code are illegal codes. When the data error is an error detected by the check code, it is determined that the data error is a data error.
[0014]
Further, the transaction failure processing system is constituted by an integrated circuit including a memory circuit mounted on a chip set, and can be initialized.
[0015]
Further, the first failure processing table is configured by an integrated circuit including a storage circuit mounted on a chipset, and includes assumed failure processing for transaction failures of a plurality of applicable operating systems, the transaction type, and the failure type. A failure processing selector employed by a predetermined operating system is initially set in the cell in a table including a combination of cells.
[0016]
Further, the second failure processing table is composed of an integrated circuit including a storage circuit mounted on a chipset, and includes assumed failure processing for transaction failures of a plurality of applicable operating systems, the transaction type, and the failure type. In the table composed of the combination of cells, a selector is initially set in the cell for failure processing for an existing transaction failure adopted by a predetermined operating system.
[0017]
DETAILED DESCRIPTION OF THE INVENTION
The present invention will be described with reference to the drawings. Referring to FIG. 1 showing an embodiment of the present invention, it is possible to change failure processing selected in a combination of a transaction type and a failure type for a transaction failure mounted on a chip set (not shown).
[0018]
The
[0019]
Referring to FIG. 2, the configuration of a transaction will be described. The transaction 20 indicates transfer data that is input from the outside such as a processor bus and output to the outside such as a PCI bus through the
[0020]
Further, when the
[0021]
Furthermore, the error type is roughly divided into a case where there is an error in the header 21 and a case where there is an error in data when the
Further, the transaction failure includes a transaction failure of a type determined by combining a header error header error and a data error with respect to one of the transaction types when the
[0022]
The first failure processing table 141 will be described with reference to FIG. 3. The first failure processing table 141 is applied to failure processing for a transaction failure that has occurred for the first time. This table is composed of
The second failure processing table 142 will be described with reference to FIG. 4. The second failure processing table 142 is applied to a transaction of a transaction type stored in the transaction failure history, and a transaction of a predetermined operating system. Ensure consistency in fault handling for faults. The second failure processing table 142 is a
[0023]
Next, the operation of this embodiment will be described. The transaction 20 is supplied from the outside such as a processor bus, and is first stored in the input buffer 11 that can temporarily hold the transaction 20. The input buffer 11 is connected to the transaction type determination unit 12 and the failure detection unit 103. The transaction type determination unit 12 interprets the
[0024]
The
[0025]
The failure processing designation unit 14 selects the failure processing of the transaction in which the failure has occurred for the first time and the transaction after the failure has occurred, by combining the transaction type and the failure type. For failure handling that is applied to a plurality of operating systems applied to a transaction failure, forward of the failure header (forward indicates an operation for sending a transaction to a transmission destination) 1413 and data forward with an error (data is an error) If the correction code is included, the error correction code indicating that an error has occurred is replaced with the data, and if the data is not with the error correction code but with parity, the parity bit is inverted and there is no transaction without a header. Therefore, data with an error is always transmitted as a header and a set and transferred to the transmission destination) 1414, an error header response (response indicates an operation for returning a transaction to the transmission source) 1415, an all-one
[0026]
The transaction process determination unit 15 determines the transaction failure process based on the combination of the
[0027]
The failure processing table 141 and the failure processing table 142 indicate specific failure processing to the transaction processing determination unit 15. For example, if the header of the read request has an error (header error) and the failure processing table 141 has selected an error header response, the failure processing specification unit 14 notifies the transaction processing determination unit 105 of the selection, and transaction processing The determination unit 105 instructs the
[0028]
The
[0029]
Next, a specific example will be described with reference to the failure processing table 143 of FIG. 5 and the failure processing table 144 of FIG. 6 in which the failure processing table 141 and the failure processing table 142 of this embodiment are individualized by selectors. To do. The selection of failure processing for a transaction failure that occurs for the first time at initialization is set in the cell of the failure processing table 143 and individualized for a predetermined operating system.
When read request is header error; data all 1 response.
Completion report and write request when header error; no conversion response.
When a write request with a completion report is a data error; data forward with error.
No completion report When write request is header error; Discarded.
No completion report When write request is data error; data forward with error.
When the completion report with data is a header error;
When the completion report with data is a data error; data forward with error.
When no data complete report is header error; discarded.
[0030]
When initializing fault processing for a transaction fault after the occurrence of the fault, a selector is set in the cell of the fault processing table 144 and individualized for a predetermined operating system. For transactions stored in the transaction failure history, consistent failure processing by transaction type is adopted.
When a read request is made; data all 1 response.
When there is a completion report and a write request; no conversion response.
When a write request with no completion report is made;
When reporting completion with data;
When reporting no data completion;
[0031]
A specific operation will be described with reference to the failure processing table 143 and the failure processing table 144. The transaction 20 is first stored in the input buffer 11. The transaction type of the transaction 20 stored in the input buffer 11 is determined by the transaction type determination unit 12. In parallel with this, the
[0032]
The determination result is transmitted to the
[0033]
Even when a failure occurs in a transaction other than a read request, the failure processing of the transaction is performed according to the failure processing table 144 at the time of failure occurrence set in the failure processing designation unit 14 described above. Regardless of the type of transaction in which a failure has occurred, after the failure occurs, the transaction 20 stored in the input buffer 11 is subjected to failure processing according to the failure processing table 144 after the failure has occurred. If the selector set in the failure processing specification unit 14 is changed, the
[0034]
【The invention's effect】
The effect of the present invention is that an error processing adapted to a transaction failure of an operating system is integrated into an LSI such as an information processing apparatus in an integrated circuit, so that a difference in the failure processing specification of a transaction failure for each operating system or a delay in specification determination As a result, the development risk of LSI and operating system can be reduced.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of a transaction failure processing system.
FIG. 2 is a diagram illustrating an example of a transaction configuration.
FIG. 3 is a diagram illustrating a configuration of a first failure processing table.
FIG. 4 is a diagram illustrating a configuration of a second failure processing table.
FIG. 5 is a diagram individualizing a first failure processing table.
FIG. 6 is a diagram individualizing a second failure processing table.
[Explanation of symbols]
DESCRIPTION OF
Claims (7)
経由するバスからトランザクションを受け取る入力バッファと、
前記入力バッファのトランザクションのトランザクション種別及び障害種別を判定して、適用するオペレーティングシステムにおけるトランザクション障害に対する障害処理を選択し、以後の同じトランザクション種別に対応する障害処理を選択するトランザクション処理部と、
前記トランザクション処理部の判定において、トランザクション障害がないとき、前記入力バッファのトランザクションに変換を施さず、また、トランザクション障害があるとき、前記トランザクションを前記トランザクション障害処理で定まる破棄、あるいは変換を施すトランザクション変換部と、
前記トランザクション変換処理部で変換を受けないトランザクション、あるいは前記トランザクション変換部で変換を受けたトランザクション、を発信先に送信する発信先出力バッファと、
前記トランザクション変換部で変換して発信元に返信する発信元出力バッファと、
を備えることを特徴とするトランザクション障害処理システム。In a transaction failure processing system that detects a failure of the transaction and handles the failure for a transaction that is transferred from the source to the destination via the bus,
An input buffer that receives transactions from the transit bus,
A transaction processing unit that determines a transaction type and a failure type of the transaction in the input buffer, selects a failure process for a transaction failure in the operating system to be applied, and selects a failure process corresponding to the same transaction type thereafter;
In the determination of the transaction processing unit, when there is no transaction failure, the transaction of the input buffer is not converted, and when there is a transaction failure, the transaction is discarded or converted as determined by the transaction failure processing. And
A destination output buffer that transmits a transaction that is not converted by the transaction conversion processing unit, or a transaction that is converted by the transaction conversion unit, to a destination;
A source output buffer that converts the response in the transaction conversion unit and sends it back to the source;
A transaction failure processing system comprising:
前記入力バッファのトランザクション種別を判定するトランザクション種別判定部と、
前記入力バッファのトランザクションに障害が生じているか否かと障害種別とを検出する障害検出部と、
前記トランザクションの種別及び障害種別に応じて、初めて生じたトランザクション障害に対して参照する第1の障害処理テーブルと、障害履歴に記憶してあるトランザクション種別に対して参照する第2の障害処理テーブルと、を有する障害処理指定部と、
トランザクションの障害履歴を記憶し、前記第1の障害処理テーブルか、あるいは前記第2の障害処理テーブルかを前記履歴によって選択参照し、トランザクション種別及び障害種別に基づいて、障害処理を選択するトランザクション処理判定部と、
を有することを特徴とする請求項1記載のトランザクション障害処理システム。The transaction processing unit
A transaction type determination unit for determining the transaction type of the input buffer;
A failure detection unit for detecting whether a failure has occurred in the transaction of the input buffer and a failure type;
In accordance with the transaction type and the failure type, a first failure processing table that is referred to for a transaction failure that has occurred for the first time, and a second failure processing table that is referenced to the transaction type stored in the failure history, A fault handling designation unit having
Transaction processing for storing transaction failure history, selecting and referring to the first failure processing table or the second failure processing table based on the history, and selecting failure processing based on transaction type and failure type A determination unit;
The transaction failure processing system according to claim 1, further comprising:
リードリクエストと、ライトリクエストと、リードリクエストの完了報告と、ライトリクエストの完了報告と、を種別とし、
前記トランザクション自体は、
ヘッダ部と、データ部と、を有し、
前記ヘッダ部は、
トランザクション種別を示す種別コードと、発信元を示す発信元コードと、発信先を示す発信先コードと、を含み、
前記データ部は、
処理対象のデータと、前記データに対するチェックコードと、を含むことを特徴とする請求項1及び請求項2記載のトランザクション障害処理システム。The transaction is
Read request, write request, read request completion report, and write request completion report are classified as types,
The transaction itself is
A header portion and a data portion;
The header part is
Including a type code indicating a transaction type, a source code indicating a source, and a destination code indicating a destination,
The data part is
3. The transaction failure processing system according to claim 1, further comprising: data to be processed and a check code for the data.
ヘッダエラーと、データエラーと、を障害種別とし、
前記ヘッダエラーは、
前記種別コード並びに前記発信元コード及び前記発信先コードが不正コードであるとき、ヘッダエラーと判定され、
前記データエラーは、
前記チェックコードによって検出されるエラーであるとき、データエラーと判定することを特徴とする請求項1及び請求項2記載のトランザクション障害適応処理システム。The transaction failure is
Header error and data error are fault types,
The header error is
When the type code and the transmission source code and the transmission destination code are illegal codes, it is determined as a header error,
The data error is
3. The transaction failure adaptive processing system according to claim 1, wherein when the error is detected by the check code, it is determined as a data error.
チップセットに搭載される記憶回路を含む集積回路で構成され、初期化設定できることを特徴とする請求項1及び請求項2記載のトランザクション障害きる適応処理システム。The transaction failure processing system includes:
3. An adaptive processing system capable of dealing with transaction failures according to claim 1, wherein the adaptive processing system comprises an integrated circuit including a memory circuit mounted on a chip set and can be initialized.
チップセットに搭載される記憶回路を含む集積回路え構成され、複数の適用オペレーティングシステムのトランザクション障害に対する想定障害処理と、前記トランザクション種別と、前記障害種別と、の組み合わせのセルでなるテーブルに、所定のオペレーティングシステムが採る障害処理選択子を前記セルに初期設定すること、を特徴とする請求項2記載のトランザクション障害処理システム。The first failure processing table is:
An integrated circuit including a storage circuit mounted on a chipset is configured, and a table including a combination of assumed failure processing for transaction failures of a plurality of applicable operating systems, the transaction type, and the failure type is predetermined. 3. The transaction failure processing system according to claim 2, wherein a failure processing selector adopted by the operating system is initialized in the cell.
チップセットに搭載される記憶回路を含む集積回路で構成され、複数の適用オペレーティングシステムのトランザクション障害に対する想定障害処理と、前記トランザクション種別と、前記障害種別と、の組み合わせのセルでなるテーブルに、所定のオペレーティングシステムが採用する既発生のトランザクション障害に対する障害処理に選択子を前記セルに初期設定する、ことを特徴とする請求項2記載のトランザクション障害処理システム。The second failure processing table is
It is composed of an integrated circuit including a memory circuit mounted on a chip set, and a table including a combination of assumed failure processing for a transaction failure of a plurality of applicable operating systems, the transaction type, and the failure type is predetermined. 3. The transaction fault processing system according to claim 2, wherein a selector is initially set in the cell for fault processing for an existing transaction fault adopted by said operating system.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003180654A JP2005018317A (en) | 2003-06-25 | 2003-06-25 | Transaction failure recessing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003180654A JP2005018317A (en) | 2003-06-25 | 2003-06-25 | Transaction failure recessing system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005018317A true JP2005018317A (en) | 2005-01-20 |
Family
ID=34181581
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003180654A Pending JP2005018317A (en) | 2003-06-25 | 2003-06-25 | Transaction failure recessing system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005018317A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013175017A (en) * | 2012-02-24 | 2013-09-05 | Nec Computertechno Ltd | Transaction processing device and illegal transaction detection method |
-
2003
- 2003-06-25 JP JP2003180654A patent/JP2005018317A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013175017A (en) * | 2012-02-24 | 2013-09-05 | Nec Computertechno Ltd | Transaction processing device and illegal transaction detection method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6421742B1 (en) | Method and apparatus for emulating an input/output unit when transferring data over a network | |
CN107113084B (en) | Apparatus and method for processing data errors | |
US11163719B2 (en) | Hybrid remote direct memory access | |
US9430432B2 (en) | Optimized multi-root input output virtualization aware switch | |
CN111930676B (en) | Method, device, system and storage medium for communication among multiple processors | |
EP1750202A1 (en) | Combining packets for a packetized bus | |
US20180322091A1 (en) | Using rdma for fast system recovery in virtualized environments | |
JP4658122B2 (en) | DMA controller, node, data transfer control method, and program | |
US20200081850A1 (en) | Unified address space for multiple hardware accelerators using dedicated low latency links | |
US9015380B2 (en) | Exchanging message data in a distributed computer system | |
JP2001236304A (en) | Microcomputer | |
US20070174723A1 (en) | Sub-second, zero-packet loss adapter failover | |
WO2014004192A1 (en) | Performing emulated message signaled interrupt handling | |
JP2013508833A (en) | Apparatus, method, and computer program for efficient communication between partitions in a logically partitioned system | |
US7143206B2 (en) | Method for controlling data transfer unit having channel control unit, storage device control unit, and DMA processor | |
US6640312B1 (en) | System and method for handling device retry requests on a communication medium | |
US20050080945A1 (en) | Transferring message packets from data continued in disparate areas of source memory via preloading | |
US7941568B2 (en) | Mapping a virtual address to PCI bus address | |
US7835373B2 (en) | Method and apparatus for buffer linking in bridged networks | |
JP4755050B2 (en) | Data processing apparatus, mode management apparatus, and mode management method | |
JP4034572B2 (en) | Remote interrupt signal processing method, system, and network interface system | |
GB2377138A (en) | Ring Bus Structure For System On Chip Integrated Circuits | |
CN116204214A (en) | BMC upgrading method, device and system, electronic equipment and storage medium | |
JP2005018317A (en) | Transaction failure recessing system | |
US20060129714A1 (en) | Method and apparatus for transferring data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20050314 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20070126 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071023 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080304 |