(57)【特許請求の範囲】
【請求項１】
マスタと、少なくとも１つのスレーブが接続されたバスの間に設けられたアクセス遮断回路であって、
前記マスタの異常を検出する異常検出部と、
前記異常検出部により前記マスタの異常が検出されたとき、異常が検出された前記マスタのアクセスを遮断するアクセス遮断部と、
アクセスが遮断された前記マスタによるプロトコルを補正して、前記スレーブをアイドル状態に保持するプロトコル補正部と、を有し、
前記異常検出部は、
前記マスタおよび前記スレーブ間のデータ転送レートが、前記バスの規格に基づく値よりも閾値以上異なっているかどうかをモニタする第１モニタ部と、
前記第１モニタ部の出力を受け取って、前記マスタおよび前記スレーブ間の異常を検出するステータス受信部と、を含む、
ことを特徴とするアクセス遮断回路。
【請求項２】
前記異常検出部は、さらに、
前記マスタおよび前記スレーブ間における前記バスの転送状態をモニタする第２モニタ部を含み、
前記ステータス受信部は、前記第１モニタ部および前記第２モニタ部の出力を受け取って、前記マスタおよび前記スレーブ間の異常を検出する、
ことを特徴とする請求項１に記載のアクセス遮断回路。
【請求項３】
さらに、
システムコントローラと信号の遣り取りを行い、前記アクセス遮断部を制御するシステムＩＦ部を有し、
システムを復旧するとき、前記システムコントローラは、アクセスが遮断された前記マスタのみを初期化する、
ことを特徴とする請求項１または請求項２に記載のアクセス遮断回路。
【請求項４】
さらに、
前記アクセス遮断部を制御すると共に、システムを復旧するとき、アクセスが遮断された前記マスタのみを初期化するマスタリセット信号を生成するリセット信号生成部を有する、
ことを特徴とする請求項３に記載のアクセス遮断回路。
【請求項５】
前記マスタは複数設けられ、それぞれの前記マスタおよび前記バス間には、請求項１乃至請求項４のいずれか１項に記載のアクセス遮断回路が設けられている、
ことを特徴とする半導体集積回路。
【請求項６】
マスタと、少なくとも１つのスレーブが接続されたバスの間のアクセスを遮断するアクセス遮断方法であって、
前記マスタと、少なくとも１つの前記スレーブが接続されたバスの間に設けられたアクセス遮断回路が、
前記マスタの異常を検出し、
異常が検出された前記マスタのアクセスを遮断し、
アクセスが遮断された前記マスタによるプロトコルを補正して、前記スレーブをアイドル状態に保持し、
前記マスタの異常検出は、前記アクセス遮断回路が、
前記マスタおよび前記スレーブ間のデータ転送レートが、前記バスの規格に基づく値よりも閾値以上異なっているかどうかをモニタし、
前記マスタおよび前記スレーブ間のデータ転送レートのモニタ結果に基づいて、前記マスタの異常を検出する、
ことを特徴とするアクセス遮断方法。
【請求項７】
前記マスタの異常検出は、前記アクセス遮断回路が、さらに、
前記マスタおよび前記スレーブ間における前記バスの転送状態をモニタし、
前記バスの転送状態のモニタ結果、および、前記マスタおよび前記スレーブ間のデータ転送レートのモニタ結果に基づいて、前記マスタの異常を検出する、
ことを特徴とする請求項６に記載のアクセス遮断方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書で言及する実施例は、アクセス遮断回路、半導体集積回路およびアクセス遮断方法に関する。
【背景技術】
【０００２】
近年、システムは、一層複雑化しており、それに伴って、搭載するモジュールの数は、膨大なものとなっている。その中で、プログラムミスや対向機器の不具合等が原因となって、システム内の一部モジュールが制御不能に陥ることがある。
【０００３】
また、近年、ＳｏＣ(System-On-a-Chip)等のシステムＬＳＩ(半導体集積回路)の内部において、各種ブロックを結合するために使用されるバス規格として、例えば、ＡＭＢＡ（登録商標）(Advanced Microcontroller Bus Architecture)が知られている。
【０００４】
さらに、ＡＭＢＡ（登録商標）では、ＡＸＩ（登録商標）(Advanced eXtensible Interface)、ＡＨＢ（登録商標）(Advanced High-performance Bus)、および、ＡＰＢ（登録商標）(Advanced Peripheral Bus)等の複数のバス規格が定義されている。
【０００５】
なお、後述する本実施例は、上記ＡＭＢＡ（登録商標）の各バス規格に限定されるものではなく、例えば、ＯＣＰ(Open Core Protocol)を始めとして、様々なバス規格を用いた半導体集積回路に適用することができる。さらに、本実施例の適用は、半導体集積回路に限定されるものではなく、複数の半導体集積回路によるシステムやサーバ等に対して幅広く適用することができる。
【０００６】
ところで、従来、システム内の一部モジュールが制御不能に陥った場合の対応策としては、様々な提案がなされている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１３−２０５９６１号公報
【特許文献２】特開２００２−３１２３３３号公報
【特許文献３】特開平０５−０２０２９０号公報
【特許文献４】特開２００４−３４８７１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上述したように、従来、システム内の一部モジュールが制御不能に陥った場合の対応策としては、様々な提案がなされている。また、ＡＭＢＡ（登録商標）等のバス規格に基づいたデータ転送は、マスタ／スレーブの関係で、転送命令に対して応答が求められるハンドシェイク形式で行われる。
【０００９】
そのため、例えば、プログラムミスや対向機器の不具合等が原因となって、或るマスタが制御不能になった場合、そのマスタの暴走によってバス経路が占有若しくはロックされ、他のマスタからのアクセスが滞ってシステム全体がハングアップ状態になる。すなわち、システム内の１つのモジュールの暴走でも、その影響は、システム全体に及ぶことになる。
【００１０】
また、例えば、ハンドシェイクを伴うプロトコルの場合、単純にマスタとバス間のアクセスを即時遮断するだけでは不十分であり、転送中のデータは、ハンドシェイクを完了させることが求められる。
【課題を解決するための手段】
【００１１】
一実施形態によれば、マスタと、少なくとも１つのスレーブが接続されたバスの間に設けられたアクセス遮断回路であって、異常検出部と、アクセス遮断部と、プロトコル補正部と、を有するアクセス遮断回路が提供される。
【００１２】
前記異常検出部は、前記マスタの異常を検出し、前記アクセス遮断部は、前記異常検出部により前記マスタの異常が検出されたとき、異常が検出された前記マスタのアクセスを遮断する。前記プロトコル補正部は、アクセスが遮断された前記マスタによるプロトコルを補正して、前記スレーブをアイドル状態に保持する。前記異常検出部は、前記マスタおよび前記スレーブ間のデータ転送レートが、前記バスの規格に基づく値よりも閾値以上異なっているかどうかをモニタする第１モニタ部と、前記第１モニタ部の出力を受け取って、前記マスタおよび前記スレーブ間の異常を検出するステータス受信部と、を含む。
【発明の効果】
【００１３】
開示のアクセス遮断回路、半導体集積回路およびアクセス遮断方法は、システム全体がハングアップ状態になるのを防ぐことができるという効果を奏する。さらに、開示のアクセス遮断回路、半導体集積回路およびアクセス遮断方法によれば、システム全体を初期化することなく、制御不能になったマスタのみ初期化すればよいことになる。
【図面の簡単な説明】
【００１４】
【図１】図１は、システム内の一部モジュールが制御不能に陥った場合を説明するための図である。
【図２】図２は、図１に示すシステムの動作の一例を説明するためのフローチャートである。
【図３】図３は、アクセス遮断回路の第１実施例が適用されるシステムを模式的に示すブロック図である。
【図４】図４は、図３に示すシステムの動作の一例を説明するためのフローチャートである。
【図５】図５は、図３に示すシステムにおいて、読み出しデータチャネルが完了していない場合の処理の一例を説明するためのタイミングチャートである。
【図６】図６は、図３に示すシステムにおいて、書き込み応答チャネルが完了していない場合の処理の一例を説明するためのタイミングチャートである。
【図７】図７は、図３に示すシステムにおいて、書き込みアドレスチャネルは完了しているが、書き込みデータチャネルが完了していない場合の処理の一例を説明するためのタイミングチャートである。
【図８】図８は、図３に示すシステムにおいて、書き込みデータチャネルは完了しているが、書き込みアドレスチャネルが完了していない場合の処理の一例を説明するためのタイミングチャートである。
【図９】図９は、図３に示すシステムにおける第１実施例のアクセス遮断回路を示すブロック図である。
【図１０】図１０は、図９に示すアクセス遮断回路の状態遷移を説明するための図(その１)である。
【図１１】図１１は、図９に示すアクセス遮断回路の状態遷移を説明するための図(その２)である。
【図１２】図１２は、アクセス遮断回路の第２実施例が適用されるシステムを模式的に示すブロック図である。
【図１３】図１３は、図１２に示すシステムにおける第２実施例のアクセス遮断回路を示すブロック図である。
【図１４】図１４は、図１３に示すアクセス遮断回路の状態遷移を説明するための図(その１)である。
【図１５】図１５は、図１３に示すアクセス遮断回路の状態遷移を説明するための図(その２)である。
【発明を実施するための形態】
【００１５】
まず、本実施例のアクセス遮断回路、半導体集積回路およびアクセス遮断方法を詳述する前に、図１および図２を参照して、システム内の一部モジュールが制御不能に陥った場合およびその問題点を説明する。
【００１６】
図１は、システム内の一部モジュールが制御不能に陥った場合を説明するための図であり、システムＬＳＩ(半導体集積回路)100におけるマスタ111が制御不能に陥った場合を示す。
【００１７】
図１において、参照符号111〜113は、例えば、ＣＰＵ(Central Processing Unit)やＤＭＡ(Direct Memory Access)等のマスタ(バスマスタ)を示し、103は、内部バス(バス)、そして、121，122は、例えば、メモリ等のスレーブ(バススレーブ)を示す。
【００１８】
図１に示されるように、ＬＳＩ100は、マスタ111〜113、バス103およびスレーブ121，122を含み、ＬＳＩの外部に設けられた対向機器200との間でデータを遣り取りして所定の処理を行う。
【００１９】
ところで、ＬＳＩ100において、例えば、ＡＭＢＡ（登録商標）等のバス規格に基づいたデータ転送は、マスタ／スレーブの関係で、転送命令に対して応答が求められるハンドシェイク形式で行われる。
【００２０】
そのため、例えば、プログラムミスや対向機器200の不具合等が原因となって、或るマスタ111が制御不能になった場合、そのマスタの暴走によってバス経路が占有若しくはロックされ、他のマスタからのアクセスが滞ってシステム全体がハングアップ状態になる。
【００２１】
図２は、図１に示すシステムの動作の一例を説明するためのフローチャートである。まず、図２に示されるように、例えば、ステップＳＴ１１において、ウォッチドッグタイマ(ＷＤＴ：Watch Dog Timer)を起動し、ステップＳＴ１２に進んで、ソフトウエア上で、定期的にＷＤＴを初期化する。なお、ＷＤＴは、ノイズ等の原因によりＣＰＵ(例えば、マスタ111)が誤動作(暴走)を始めた場合、これを検出して正常な状態に戻すためのものである。
【００２２】
ステップＳＴ１２において、ＷＤＴの初期化が不可(ＳＴ１２：Ｎｏ)と判定すると、ステップＳＴ１３に進んで、システム全体をリセットし、さらに、ステップＳＴ１４に進んで、初期化ルーチンを起動して処理を終了する。なお、ステップＳＴ１２において、ＷＤＴを初期化できる(ＳＴ１２：Ｎｏ)と判定すると、ＷＤＴの初期化が不可と判定するまで処理を継続する。
【００２３】
ここで、ステップＳＴ１３におけるシステム全体のリセット処理、並びに、ステップＳＴ１４における初期化ルーチンの起動処理は、システムの性能に大きな影響を与えることになる。
【００２４】
すなわち、システム内の一部モジュール(例えば、マスタ111)が暴走(制御不能)すると、システム全体をリセットし、初期化シーケンスからやり直すことになり、システム内の１つのモジュールの暴走でも、その影響は、システム全体に及ぶことになる。
【００２５】
また、例えば、ハンドシェイクを伴うプロトコルの場合、単純にマスタとバス間のアクセスを即時遮断するだけでは不十分である。すなわち、転送中のデータは、ハンドシェイクを完了させることが求められ、特に、バス側のインターフェース(ＩＦ)は、アイドル(IDLE)状態を保証することが求められる。
【００２６】
以下、アクセス遮断回路、半導体集積回路およびアクセス遮断方法の実施例を、添付図面を参照して詳述する。なお、以下の記載では、主として、ＡＭＢＡ（登録商標）のＡＸＩ（登録商標）を使用した半導体集積回路を例として説明するが、本実施例の適用は、このＡＸＩ（登録商標）を使用した半導体集積回路に限定されるものではない。
【００２７】
すなわち、本実施例の適用は、例えば、前述したＡＭＢＡ（登録商標）のＡＨＢ（登録商標）やＡＰＢ（登録商標）、或いは、ＡＭＢＡ（登録商標）のＡＣＥ(AXI Coherency Extensions)を使用した半導体集積回路であってもよい。
【００２８】
さらに、本実施例の適用は、半導体集積回路(システムＬＳＩ，ＳｏＣ)に限定されるものではなく、複数の半導体集積回路によるシステムやサーバ等に対しても、幅広く適用することができる。なお、例えば、後述するプロトコル補正回路の実装方法や疑似転送方法については、各バスの規格(バスプロトコル)に依存することになる。
【００２９】
図３は、アクセス遮断回路の第１実施例が適用されるシステムを模式的に示すブロック図である。図３において、参照符号１はシステムＬＳＩ(半導体集積回路)、１１〜１３はマスタ、２１，２２はスレーブ、３は内部バス(バス)、４１〜４３はアクセス遮断回路、そして、５はシステムコントローラ(ＣＰＵ等)を示す。
【００３０】
図３と上述した図１の比較から明らかなように、第１実施例では、各マスタ１１〜１３と、スレーブ２１，２２が接続されたバス３との間には、それぞれアクセス遮断回路４１〜４３が設けられている。なお、マスタ１１〜１３は、例えば、ＣＰＵやＤＭＡ等であり、また、スレーブ２１，２２は、例えば、メモリ等である。
【００３１】
アクセス遮断回路４１〜４３は、例えば、システムコントローラ５により制御される。ここで、システムコントローラ５は、例えば、クロックリセットジェネレータやパワーマネージメントユニット等に代表されるＳｏＣ(半導体集積回路)内のシステム制御機能を有したモジュールである。
【００３２】
また、システムコントローラ５は、マスタ１１〜１３を制御する上位の演算処理装置、或いは、複数のマスタ１１〜１３のいずれかが直接役割を担うようにすることも可能である。
【００３３】
システムコントローラ５は、各アクセス遮断回路４１〜４３からのアクセス遮断要求信号ABRSおよびアクセス遮断完了(リセット許可)信号ABCSを受け取り、各アクセス遮断回路４１〜４３に対して、アクセス遮断許可信号ABPSを出力する。また、システムコントローラ５は、各マスタ１１〜１３に対して、それぞれのマスタ１１〜１３を個別にリセットする個別リセット信号ＩＲＳＴを出力する。
【００３４】
ここで、例えば、マスタ１１からスレーブ２１への転送中に、意図しない要因によってマスタ１１が暴走すると、マスタ１１とスレーブ２１の転送路が、暴走アクセスにより占有され続けてしまうことになる。
【００３５】
このような場合、前述した図１に示す半導体集積回路100では、他のマスタ(例えば、マスタ112)からのアクセスは、延々と待たされることになり、前述したように、ＷＤＴ等を用いてシステム全体のリセット処理を行って復旧する。
【００３６】
これに対して、本第１実施例の半導体集積回路１では、例えば、アクセス遮断回路４１により、マスタ１１からの暴走アクセスを一時遮断することが可能であり、その状態で、マスタ１１のみをリセットする。
【００３７】
その後、アクセス遮断回路４１を通常状態に設定することで、マスタ１１による通常アクセスが可能となる。これにより、システム全体をリセットすることなく、復旧させることができるようになっている。
【００３８】
図４は、図３に示すシステムの動作の一例を説明するためのフローチャートである。まず、図４に示されるように、例えば、ステップＳＴ２１において、アクセス遮断回路４１が例外ケース(通常動作ではない状態)を検出すると、ステップＳＴ２２に進む。
【００３９】
ステップＳＴ２２では、(a)バスのハンドシェイク要因、および、(b)転送性能要因の判定を行う。ステップＳＴ２２において、例えば、アクセス遮断回路４１は、バス(内部バス)３を介したスレーブ２１との間の転送をモニタし、(a)バスのハンドシェイクの異常を検出(判定)すれば、ステップＳＴ２３に進む。例えば、ステップＳＴ２２において、バス３を介したスレーブ２１との間のハンドシェイクが完了していないと判定すると、ステップＳＴ２３に進む。
【００４０】
また、ステップＳＴ２２において、例えば、ハンドシェイクは完了しているが、(b)転送性能の異常、例えば、データの転送レートが、バス３の規格から予め定められた閾値以上異なっている等の異常を検出すれば、ステップＳＴ２７に進む。
【００４１】
ステップＳＴ２７では、例えば、設定回数およびサンプリング結果に変化がない、すなわち、本来の転送性能(通常の動作)から逸脱している(ＳＴ２７：Ｙｅｓ)と判定すると、ステップＳＴ２３に進む。なお、ステップＳＴ２７において、設定回数およびサンプリング結果に変化がある、すなわち、通常の動作である(ＳＴ２７：Ｎｏ)と判定すると、ステップＳＴ２１に戻る。
【００４２】
ステップＳＴ２３では、マスタ１１のアクセスを遮断し、さらに、ステップＳＴ２４に進んで、未完了ハンドシェイクが無いかどうかを判定する。ステップＳＴ２４において、未完了ハンドシェイクが有る(ＳＴ２４：Ｎｏ)と判定すると、ステップＳＴ２８に進んで、疑似転送を行ってからステップＳＴ２５に進む。
【００４３】
また、ステップＳＴ２４において、未完了ハンドシェイクが無い(ＳＴ２４：Ｙｅｓ)と判定すると、そのままステップＳＴ２５に進む。ステップＳＴ２５では、対象マスタ(例えば、マスタ１１)の初期化を行い、さらに、ステップＳＴ２６に進んで、アクセス遮断の解除を行って処理を終了する。
【００４４】
このように、本第１実施例によれば、例えば、マスタ１１が暴走(制御不能)の場合、マスタ１１のみを遮断して初期化し、例えば、バス３およびスレーブ２１を開放してアイドル状態にすることができ、システム全体に影響が及ぶのを避けることができる。
【００４５】
次に、本実施例を適用した場合の動作シーケンスを、ＡＭＢＡ（登録商標）のＡＸＩ（登録商標）プロトコル(バス規格)を例として説明する。ここで、アクセスの遮断が求められる場合(マスタの暴走)を判定するには、例えば、バスプロトコルから判断できる要因、並びに、転送レートから判断できる要因が考えられる。
【００４６】
まず、バスプロトコルから判断できる要因は、例えば、ＡＸＩ（登録商標）プロトコルにおいて、マスタがプロトコルで規定されているハンドシェイクの処理が不可の場合((a)バスのハンドシェイク要因)である。
【００４７】
また、転送レートから判断できる要因は、マスタの転送性能はシステムシミュレーション等の結果から予め規定可能であり、マスタが規定された転送レートから大きく外れた振る舞いをする場合((b)転送性能要因)である。
【００４８】
以下の説明において、使用する信号名および用語(略語)は、次の内容(意味)を表している。まず、図５〜図８における略語(ARch，Rch，RVALID等)が表す意味は、次の通りである。
【００４９】
ARch(Read address channel)は、読み出しアドレスチャネルを示し、Rch(Read data channel)は、読み出しデータチャネルを示し、AWch(Write address channel)は、書き込みアドレスチャネルを示す。また、Wch(Write data channel)は、書き込みデータチャネルを示し、Bch(Write response channel)は、書き込み応答チャネルを示す。
【００５０】
次に、信号名RVALID，RREADY，BVALID等は、ＡＭＢＡ（登録商標）のＡＸＩ（登録商標）プロトコルで定義された信号名であり、それぞれ下記の意味を示している。RVALIDは、読み出しが有効であることを示し、RREADYは、読み出しの準備が整っていることを示し、BVALIDは、書き込み応答が有効であることを示し、BREADYは、書き込み応答の準備が整っていることを示し、WVALIDは、書き込みデータが有効であることを示す。
【００５１】
また、WIDは、書き込みデータのＩＤタグを示し、WSTRBは、書き込みデータのストローブを示し、AWVALIDは、書き込みアドレスが有効であることを示し、AWIDは、書き込みアドレスのＩＤタグを示す。さらに、AWLENは、書き込みデータの転送回数(バースト長)を示し、AWADDRは、書き込みアドレスを示す。
【００５２】
まず、バスプロトコルから判断できる要因を、ＡＭＢＡ（登録商標）のＡＸＩ（登録商標）プロトコル(バス規格)を例として説明する。マスタがプロトコルで規定されているハンドシェイクの処理が不可の場合、例えば、バス(スレーブ)からのVALIDに対して、マスタから任意の時間内にREADYを返せない場合やAWVALIDとWVALIDの相関関係が崩れる場合がこれに当たる。これは、以下のような４つのケース(Ｐ１)〜(Ｐ４)が考えられる。
【００５３】
(Ｐ１)は、Rch(読み出しデータチャネル)が完了しない場合であり、(Ｐ２)は、Bch(書き込み応答チャネル)が完了しない場合である。また、(Ｐ３)は、AWch(書き込みアドレスチャネル)は完了しているが、Wch(書き込みデータチャネル)が完了しない場合である。さらに、(Ｐ４)は、Wch(書き込みデータチャネル)は完了しているが、AWch(書き込みアドレスチャネル)が完了しない場合である。
【００５４】
これらの(Ｐ１)〜(Ｐ４)の場合は、バス３のデッドロック要因になるため、検出したら直ちにアクセスを遮断し、対象マスタをリセット処理するのが好ましい。ただし、アクセス遮断時には、上述したように、アクセス遮断回路４１〜４３からバス３(スレーブ２１，２２)に対する所定数のREADYやVALIDをマスタ１１〜１３の代わりに疑似転送し、アイドル状態に遷移させた後にリセット制御に移ることになる。
【００５５】
図５は、図３に示すシステムにおいて、読み出しデータチャネルが完了していない場合の処理(Ｐ１)の一例を説明するためのタイミングチャートであり、例えば、マスタ１１が、スレーブ(例えば、メモリ)２１からデータを読み出す場合を示すものである。
【００５６】
図５に示されるように、マスタ１１がメモリ２１から所定アドレスのデータを読み出す場合、例えば、マスタ１１は、メモリ２１に対して読み出しアドレスチャネル(読み出し命令)ARchを出力する。
【００５７】
メモリ２１は、アクセス遮断回路４１およびバス３を介してARchを受け取り、マスタ１１に対して、読み出しデータチャネルRchの読み出しが有効であることを示すRVALIDのアサートを開始する。ここで、マスタ１１が暴走して制御不能になっていると、例えば、マスタ１１は、RVALIDを受け取っても、読み出しの準備が整っていることを示すRREADYを返さない。
【００５８】
このとき、アクセス遮断回路４１は、例えば、マスタ１１が、RVALIDを受け取ってからRREADYを返さない設定サイクル数の経過(予め設定されたクロック数のカウント)により、マスタ１１が暴走していると判定してアクセスを遮断する。
【００５９】
さらに、アクセス遮断回路４１は、マスタ１１の代わりに、メモリ２１に対してRREADYをアサート(疑似アサート：疑似転送)する。すなわち、Ｐ１の場合、アクセス遮断回路４１は、バス３(メモリ２１)からのRVALIDに対してのRREADYを疑似アサートする。そして、アクセス遮断回路４１は、例えば、制御不能となったマスタ１１のみを初期化し、その後、マスタ１１とバス３の接続を有効にする。
【００６０】
図６は、図３に示すシステムにおいて、書き込み応答チャネルが完了していない場合の処理(Ｐ２)の一例を説明するためのタイミングチャートであり、例えば、マスタ１１が、メモリ２１に対してデータを書き込む場合を示すものである。
【００６１】
図６に示されるように、マスタ１１がメモリ２１の所定アドレスに対してデータを書き込む場合、例えば、マスタ１１は、メモリ２１に対して、書き込みアドレスチャネル(書き込み命令)AWchおよび書き込みデータチャネルWchを出力する。
【００６２】
メモリ２１は、アクセス遮断回路４１およびバス３を介してAWchおよびWchを受け取り、マスタ１１に対して、書き込み応答チャネルBchの書き込み応答が有効であることを示すBVALIDのアサートを開始する。ここで、マスタ１１が暴走して制御不能になっていると、例えば、マスタ１１は、BALIDを受け取っても、書き込み応答の準備が整っていることを示すBREADYを返さない。
【００６３】
このとき、アクセス遮断回路４１は、例えば、マスタ１１が、BALIDを受け取ってからBEADYを返さない設定サイクル数の経過により、マスタ１１が暴走していると判定してアクセスを遮断する。
【００６４】
さらに、アクセス遮断回路４１は、マスタ１１の代わりに、メモリ２１に対してBREADYを疑似アサートする。すなわち、Ｐ２の場合、アクセス遮断回路４１は、バス３(メモリ２１)からのBVALIDに対してのBREADYを疑似アサートする。そして、アクセス遮断回路４１は、例えば、制御不能となったマスタ１１のみを初期化し、その後、マスタ１１とバス３の接続を有効にする。
【００６５】
図７は、図３に示すシステムにおいて、書き込みアドレスチャネルは完了しているが、書き込みデータチャネルが完了していない場合の処理(Ｐ３)の一例を説明するためのタイミングチャートである。
【００６６】
図７に示されるように、マスタ１１がメモリ２１の所定アドレスに対してデータを書き込む場合、例えば、マスタ１１は、メモリ２１に対して、AWch(書き込みアドレスのＩＤタグAWID-1)および書き込みデータのＩＤタグWIDを出力する。
【００６７】
ここで、マスタ１１が、Wchの書き込みデータが有効であることを示すWVALIDを出力しないとき、アクセス遮断回路４１は、WVALIDが出力されない設定サイクル数の経過により、マスタ１１が暴走していると判定してアクセスを遮断する。
【００６８】
さらに、アクセス遮断回路４１は、マスタ１１の代わりに、メモリ２１に対してWVALIDを疑似アサートし、書き込みデータのストローブWSTRBを『０』として、メモリ２１にデータを書き込まないようにする。そして、アクセス遮断回路４１は、Bchの書き込み応答の準備が整っていることを示すBREADYを疑似アサートする。
【００６９】
すなわち、Ｐ３の場合、完了済のAWchのAWID(AWID-1)と等価のＩＤ値をWIDとしたWSTRBを『０』として疑似Wchをハンドシェイクする。さらに、その後のBchに備えて、BREADYを疑似アサートし続ける。そして、アクセス遮断回路４１は、例えば、制御不能となったマスタ１１のみを初期化し、その後、マスタ１１とバス(内部バス)３の接続を有効にする。
【００７０】
図８は、図３に示すシステムにおいて、書き込みデータチャネルは完了しているが、書き込みアドレスチャネルが完了していない場合の処理(Ｐ４)の一例を説明するためのタイミングチャートである。
【００７１】
図８に示されるように、マスタ１１がメモリ２１の所定アドレスに対してデータを書き込む場合、例えば、マスタ１１は、メモリ２１に対して、AWchのAWIDおよび書き込みデータのバースト長AWLENを出力する。さらに、マスタ１１は、メモリ２１に対して、AWchの書き込みアドレスAWADDRおよびWchの書き込みデータのＩＤタグWID(WID-2，WID-2)を出力する。
【００７２】
ここで、マスタ１１が、AWchの書き込みアドレスが有効であることを示すAWVALIDを出力しないとき、アクセス遮断回路４１は、AWVALIDが出力されない設定サイクル数の経過により、マスタ１１が暴走していると判定してアクセスを遮断する。
【００７３】
さらに、アクセス遮断回路４１は、マスタ１１の代わりに、メモリ２１に対してAWVALIDを疑似アサートし、AWADDRにより設定された予約領域にデータ書き込みを行う。
【００７４】
すなわち、Ｐ４の場合、完了済のWchのWID(WID-2)と等価のＩＤ値をAWIDとした疑似AWchをハンドシェイクする。その際のアドレス値は、AWADDRにより設定された予約領域に対して発行する。そして、上述したＰ３と同様に、アクセス遮断回路４１は、その後のBchに備えて、BREADYを疑似アサートし続ける。そして、アクセス遮断回路４１は、例えば、制御不能となったマスタ１１のみを初期化し、その後、マスタ１１とバス３の接続を有効にする。
【００７５】
以上、バスプロトコルから判断できる要因を、ＡＭＢＡ（登録商標）のＡＸＩ（登録商標）プロトコルに基づいて、Ｐ１〜Ｐ４として説明したが、次に、転送レートから判断できる要因を説明する。
【００７６】
まず、マスタ１１〜１３の転送性能は、例えば、システムシミュレーションの結果等から予め認識することができる。従って、マスタが、予め認識された転送レートから大きく外れた振る舞いをする場合、例えば、そのマスタが暴走して制御不能となっていると判定する。
【００７７】
ただし、想定される転送レートから一時的に大きく外れたとしても、転送性能に対してのオーバーシュートやアンダーシュートも考えられるため、何度かサンプリングを行った後に、現象が改善しない場合はアクセスを遮断してマスタを初期化するのが好ましい。
【００７８】
この場合は、例えば、転送プロトコルの切れ目を検出し、バス３(スレーブ２１，２２)をプロトコル違反とならない状態にした後に、アクセスを遮断してリセット制御(マスタの初期化)に移るのが好ましい。
【００７９】
なお、いずれの場合も、本第１実施例のように、アクセス遮断要因信号(割り込み信号等を含む)をシステムコントローラ(ＣＰＵ等)５に発行することで、ソフトウエア経由でアクセス遮断処理を行うことが可能である。
【００８０】
或いは、後に、図１２〜図１５を参照して説明する第２実施例のように、アクセス遮断回路(４１’)が単独でアクセスを遮断し、マスタ(１１)に対してリセットを発生することも可能である。
【００８１】
図９は、図３に示すシステムにおける第１実施例のアクセス遮断回路を示すブロック図である。図９において、参照符号Ｐ１１〜Ｐ１７およびＰ１１’は、図１０および図１１を参照して説明するアクセス遮断回路４０の処理における信号(情報，処理)に対応している。
【００８２】
図９に示されるように、アクセス遮断回路４０(４１〜４３)は、システムＩＦ部401、アクセス遮断部402、プロトコル補正部403、ステータス受信部404、プロトコルモニタ部405およびパフォーマンスモニタ部406を含む。ここで、ステータス受信部404、プロトコルモニタ部405およびパフォーマンスモニタ部406は、マスタの異常を検出する異常検出部として機能する。
【００８３】
システムＩＦ部401は、例えば、システムコントローラ５に対してアクセス遮断要求信号ABRSおよびアクセス遮断完了(リセット許可)信号ABCSを出力すると共に、システムコントローラ５からのアクセス遮断許可信号ABPSを受け取る。また、システムＩＦ部401は、プロトコル補正部403からの信号(処理)Ｐ１６およびステータス受信部404からの信号Ｐ１２も受け取る。
【００８４】
アクセス遮断部402は、マスタ側に設けられ、システムＩＦ部401からの信号Ｐ１３，Ｐ１７を受け取り、プロトコル補正部403に信号Ｐ１４を出力する。プロトコル補正部403は、スレーブ(バス)側に設けられ、アクセス遮断部402からの信号Ｐ１４と共に、ステータス受信部404からの信号Ｐ１５を受け取る。
【００８５】
ステータス受信部404は、プロトコルモニタ部405からの信号Ｐ１１およびパフォーマンスモニタ部406からの信号(要因情報)Ｐ１１’を受け取り、システムＩＦ部401に対して、信号(遮断要求信号の通知)Ｐ１２を出力する。また、ステータス受信部404は、プロトコル補正部403に対して、信号(対象信号，各種出力ＩＤおよびアクセス先アドレス等の補正情報)Ｐ１５を出力する。
【００８６】
プロトコルモニタ部405は、バス３を常にモニタしてプロトコルを監視し続け、プロトコルを逸脱した振る舞いを検出した場合や、VALIDとREADYのハンドシェイクタイミングが予め設定したサイクル数をオーバーした場合等の要因(マスタの暴走)を検出する。
【００８７】
パフォーマンスモニタ部406は、転送性能を常に計測し続け、予め設定した想定値と比較して要因(マスタの暴走)を検出する。なお、上述した各モジュール機能は、例えば、プロトコルモニタ部405およびパフォーマンスモニタ部406の内部に包含することも可能である。
【００８８】
図１０および図１１は、図９に示すアクセス遮断回路の状態遷移を説明するための図である。なお、図１１は、図１０におけるアクセス遮断処理を説明するためのものである。
【００８９】
図１０に示されるように、図９に示すアクセス遮断回路４０の処理が開始すると、ステップＳＴ３１において、プロトコルモニタ部405がバス３の転送状態をモニタし、バスのプロトコルに準拠しているかを判定する。そして、バス３の転送状態がプロトコルを逸脱した場合には、プロトコル要因を検出した(Ｐ１１)として、ステップＳＴ３３に進む。
【００９０】
また、ステップＳＴ３２において、パフォーマンスモニタ部406がバス３の転送性能を計測し、性能閾値の範囲内かどうかを判定する。そして、バス３の転送性能が性能閾値を逸脱した場合には、性能閾値逸脱(Ｐ１１’)として、ステップＳＴ３３に進む。
【００９１】
ステップＳＴ３３では、ステータス受信部404が遮断要因(Ｐ１１，Ｐ１１’)を受信し、ステップＳＴ３４に進んで、システムＩＦ部401に対して遮断要求信号(Ｐ１２)を送信し、ステップＳＴ３５に進む。
【００９２】
ステップＳＴ３５では、システムコントローラ５からアクセス遮断許可信号(ABPS)を受信したかどうかを判定し、ABPSを受信したと判定すると、アクセス遮断部402に対して信号Ｐ１３を出力し、ステップＳＴ３６に進む。すなわち、ステップＳＴ３６において、アクセス遮断部402は、図１１に示すアクセス遮断処理を行う。
【００９３】
図１１に示されるように、アクセス遮断処理が開始すると、アクセス遮断部402は、マスタ(１１：１１〜１３)のアクセスを遮断し、アクセス遮断完了信号(Ｐ１４)を出力し、ステップＳＴ６１に進む。
【００９４】
ステップＳＴ６１では、ステータス受信部404が遮断要因を更新し、更新された情報(Ｐ１５)を出力してステップＳＴ６２に進む。ここで、ステップＳＴ６２〜ＳＴ６７，ＳＴ６２’およびＳＴ６７’は、プロトコル補正部403によるプロトコル処理を示す。
【００９５】
ステップＳＴ６２において、転送が未完了かどうかを判定し、転送が未完了である(Ｙｅｓ)と判定した場合には、ステップＳＴ６２’に進んで、図５〜図８を参照して上述したＰ１〜Ｐ４の場合分けを行う。
【００９６】
すなわち、Rchが完了しないＰ１の場合には、ステップＳＴ６３に進んで、RREADYをマスタの代わりに疑似アサートし、Bchが完了しないＰ２の場合には、ステップＳＴ６４に進んで、BREADYをマスタの代わりに疑似アサートし、ステップＳＴ６７’に進む。
【００９７】
さらに、AWchは完了しているが、Wchが完了しないＰ３の場合には、ステップＳＴ６５に進んで、規定の(完了済AWIDに従った)WIDでWSTROB＝０の疑似Wchをハンドシェイクし、ステップＳＴ６７に進む。
【００９８】
そして、Wchは完了しているが、AWchが完了しないＰ４の場合には、ステップＳＴ６６に進んで、予め設定された予約領域のアドレスに対し、規定の(完了済WIDに従った)AWIDで疑似AWchをハンドシェイクし、ステップＳＴ６７に進む。
【００９９】
ステップＳＴ６７では、続くBchに備えて、BREADYを疑似アサートし、ステップＳＴ６７’に進む。このように、ステップＳＴ６２’によりＰ１〜Ｐ４に場合分けされ、それぞれ対応する処理が行われた後、ステップＳＴ６７’に進む。
【０１００】
ステップＳＴ６７’では、上述したステップＳＴ６３〜ＳＴ６７により、例えば、暴走したマスタ１１を遮断して、スレーブ２１，２２(バス３)をアイドル状態に遷移させ、転送完了信号(Ｐ１６)を出力して、ステップＳＴ６８に進む。
【０１０１】
なお、ステップＳＴ６７’において、未完了の転送があると判定されると、ステップＳＴ６１に戻って、同様の処理を繰り返す。また、ステップＳＴ６２において、転送が未完了ではない(Ｎｏ)，すなわち、転送が完了していると判定した場合には、そのままステップＳＴ６８に進む。
【０１０２】
ステップＳＴ６８において、システムＩＦ部401は、アクセス遮断完了信号ABCSをアサートし、ステップＳＴ６９に進む。すなわち、システムコントローラ５は、アクセス遮断回路４０(例えば、４１)からのABCSを受け取り、例えば、対象となるマスタ１１を初期化する。
【０１０３】
ここで、例えば、暴走したマスタ１１は、対応するアクセス遮断回路４１によりバス３およびスレーブ２１，２２から切り離されているため、他のマスタ１２，１３およびスレーブ２１，２３等に影響を与えることなく、そのまま初期化することができる。
【０１０４】
なお、暴走したマスタ１１の初期化は、例えば、システムＩＦ部401からの信号Ｐ１７により、アクセス遮断部402に対して伝えられる。以上により、例えば、暴走したマスタ(１１)のアクセス遮断および初期化が完了すると、アクセス遮断回路４０(４１)によるアクセス遮断が解除されることになる。
【０１０５】
図１２は、アクセス遮断回路の第２実施例が適用されるシステムを模式的に示すブロック図であり、システムコントローラ(ＣＰＵ等)５を介さずに、アクセス遮断回路４１’〜４３’単独でアクセスの遮断やマスタ１１〜１３の初期化を行うものを示している。
【０１０６】
図１２と、前述した図３の比較から明らかなように、本第２実施例では、各アクセス遮断回路４１’〜４３’は、対応するマスタ１１〜１３を初期化するためのマスタリセット信号MRSTを出力する。
【０１０７】
各アクセス遮断回路４１’〜４３’から出力されたMRSTは、例えば、それぞれシステムリセット信号SRSTと所定の論理を取って対応するマスタ１１〜１３を制御するようになっている。
【０１０８】
図１３は、図１２に示すシステムにおける第２実施例のアクセス遮断回路を示すブロック図である。図１３と、前述した図９の比較から明らかなように、本第２実施例のアクセス遮断回路４０’(４１’〜４３’)は、第１実施例のアクセス遮断回路４０におけるシステムＩＦ部401の代わりにリセット信号生成部407が設けられている。
【０１０９】
すなわち、第２実施例のアクセス遮断回路４０’は、システムコントローラ５に対するアクセス遮断要求信号ABRSやアクセス遮断完了信号ABCSを生成する代わりに、マスタを初期化するためのリセット信号を生成するリセット信号生成部407を内蔵したものである。
【０１１０】
ステータス受信部404は、プロトコルモニタ部405およびパフォーマンスモニタ部406から要因情報Ｐ２１，Ｐ２１’を受け取り、アクセス遮断部402'に対する遮断通知Ｐ２２およびプロトコル補正部403に対する補正情報Ｐ２４を出力する。ここで、ステータス受信部404、プロトコルモニタ部405およびパフォーマンスモニタ部406は、マスタの異常を検出する異常検出部として機能する。
【０１１１】
リセット信号生成部407は、プロトコル補正部403からの信号Ｐ２５を受け取り、自身のアクセス遮断回路４０’に対応するマスタを初期化するためのマスタリセット信号MRSTを生成して出力する。なお、図１３において、信号(処理，情報)Ｐ２１，Ｐ２１’およびＰ２３〜Ｐ２５は、図９におけるＰ１１，Ｐ１１’およびＰ１４〜Ｐ１６に対応する。
【０１１２】
図１４および図１５は、図１３に示すアクセス遮断回路の状態遷移を説明するための図である。なお、図１５は、図１４におけるアクセス遮断処理を説明するためのものである。以下の説明では、主として、図１０および図１１を参照して説明した第１実施例と異なる処理に注目して説明を行う。
【０１１３】
図１４と、図１０の比較から明らかなように、図１４に示す第２実施例は、図１０に示す第１実施例におけるステップＳＴ３４およびＳＴ３５が省略されたものとなっている。すなわち、図１３に示すアクセス遮断回路４０’の処理が開始すると、ステップＳＴ３１によるプロトコル要因(Ｐ２１)およびステップＳＴ３２による性能閾値逸脱(Ｐ２１’)が、ステップＳＴ３３において、ステータス受信部404により処理される。
【０１１４】
ステップＳＴ３３では、ステータス受信部404が遮断要因(Ｐ２１，Ｐ２１’)を受信し、アクセス遮断部402に対して遮断要求信号(Ｐ２２)を送信し、ステップＳＴ３７に進む。すなわち、ステップＳＴ３７において、アクセス遮断部402は、図１５に示すアクセス遮断処理を行う。
【０１１５】
図１５に示されるように、アクセス遮断処理が開始すると、アクセス遮断部402は、マスタのアクセスを遮断し、アクセス遮断完了信号(Ｐ２３)を出力し、ステップＳＴ７１に進む。
【０１１６】
ここで、図１５と、前述した図１１の比較から明らかなように、図１５におけるステップＳＴ７１〜ＳＴ７７(ＳＴ７２’，ＳＴ７７’)は、図１１におけるステップＳＴ６１〜ＳＴ６７(ＳＴ６２’，ＳＴ６７’)に対応し、それらの説明は省略する。
【０１１７】
図１５に示されるように、ステップＳＴ７２’によりＰ１〜Ｐ４に場合分けされ、それぞれステップＳＴ７３〜ＳＴ７７により対応する処理が行われた後、ステップＳＴ７７’に進む。
【０１１８】
ステップＳＴ７７’では、例えば、暴走したマスタ１１を遮断して、スレーブ２１，２２(バス３)をアイドル状態に遷移させ、転送完了信号(Ｐ２５)を出力して、ステップＳＴ７８に進む。なお、ステップＳＴ７７’において、未完了の転送があると判定されると、ステップＳＴ７１に戻って、同様の処理を繰り返す。
【０１１９】
ステップＳＴ７８において、リセット信号生成部407は、マスタリセット信号MRSTをアサートし、ステップＳＴ７９に進み、自身のアクセス遮断回路４０’が設けられた対象となるマスタを初期化する。
【０１２０】
ここで、例えば、暴走したマスタ１１は、対応するアクセス遮断回路４１によりバス３およびスレーブ２１，２２から切り離されているため、他のマスタ１２，１３およびスレーブ２１，２３等に影響を与えることなく、そのまま初期化することができる。
【０１２１】
なお、暴走したマスタ１１の初期化は、例えば、リセット信号生成部407からの信号Ｐ２６により、アクセス遮断部402'に対して伝えられる。以上により、例えば、暴走したマスタ(１１)のアクセス遮断および初期化が完了すると、アクセス遮断回路４０’(４１’)によるアクセス遮断が解除されることになる。
【０１２２】
以上、詳述したように、第１および第２実施例のアクセス遮断回路によれば、例えば、マスタ暴走時には、マスタと内部バス(スレーブ)間のアクセスを遮断し、復旧時には、暴走したマスタのみを初期化することでシステムを復旧させることが可能になる。そして、マスタのアクセス遮断時には、下流の内部バス(スレーブ)に対してプロトコル補正を行い、アイドル状態を保持する。
【０１２３】
なお、前述したように、本実施例は、主として、ＡＭＢＡ（登録商標）のＡＸＩ（登録商標）プロトコルを例として説明したが、本実施例は、これに限定されるものではない。本実施例は、例えば、前述したＡＭＢＡ（登録商標）のＡＸＩ（登録商標）、ＡＨＢ（登録商標）およびＡＰＢ（登録商標）を始めとして、さらに、ＡＭＢＡ（登録商標）のＡＣＥ（登録商標）(AXI（登録商標）Coherency Extensions)等に適用することができる。
【０１２４】
また、本実施例は、ＯＣＰ(Open Core Protocol)やＰＩＦ(Xtensa Processor Interface Protocol)等のＡＭＢＡ（登録商標）以外のバス規格を用いた半導体集積回路に適用することができる。さらに、本実施例の適用は、半導体集積回路に限定されるものではなく、複数の半導体集積回路によるシステムやサーバ等に対して幅広く適用することができる。なお、プロトコル補正回路の実装方法や疑似転送方法については、各バスプロトコル(バス規格)に依存する。
【０１２５】
以上、実施形態を説明したが、ここに記載したすべての例や条件は、発明および技術に適用する発明の概念の理解を助ける目的で記載されたものであり、特に記載された例や条件は発明の範囲を制限することを意図するものではない。また、明細書のそのような記載は、発明の利点および欠点を示すものでもない。発明の実施形態を詳細に記載したが、各種の変更、置き換え、変形が発明の精神および範囲を逸脱することなく行えることが理解されるべきである。
【０１２６】
以上の実施例を含む実施形態に関し、さらに、以下の付記を開示する。
（付記１）
マスタと、少なくとも１つのスレーブが接続されたバスの間に設けられたアクセス遮断回路であって、
前記マスタの異常を検出する異常検出部と、
前記異常検出部により前記マスタの異常が検出されたとき、異常が検出された前記マスタのアクセスを遮断するアクセス遮断部と、
アクセスが遮断された前記マスタによるプロトコルを補正して、前記スレーブをアイドル状態に保持するプロトコル補正部と、を有する、
ことを特徴とするアクセス遮断回路。
【０１２７】
（付記２）
前記異常検出部は、
前記マスタおよび前記スレーブ間における前記バスの転送状態をモニタする第１モニタ部と、
前記マスタおよび前記スレーブ間における前記バスの転送性能をモニタする第２モニタ部と、
前記第１モニタ部および前記第２モニタ部の出力を受け取って、前記マスタおよび前記スレーブ間の異常を検出するステータス受信部と、を含む、
ことを特徴とする付記１に記載のアクセス遮断回路。
【０１２８】
（付記３）
さらに、
システムコントローラと信号の遣り取りを行い、前記アクセス遮断部を制御するシステムＩＦ部を有し、
システムを復旧するとき、前記システムコントローラは、アクセスが遮断された前記マスタのみを初期化する、
ことを特徴とする付記２に記載のアクセス遮断回路。
【０１２９】
（付記４）
前記システムＩＦ部は、
前記システムコントローラに対して、アクセス遮断を要求するアクセス遮断要求信号、および、アクセス遮断が完了したことを示すアクセス遮断完了信号を出力し、
前記前記システムコントローラから、アクセス遮断の許可を示すアクセス遮断許可信号を受け取る、
ことを特徴とする付記３に記載のアクセス遮断回路。
【０１３０】
（付記５）
さらに、
前記アクセス遮断部を制御すると共に、システムを復旧するとき、アクセスが遮断された前記マスタのみを初期化するマスタリセット信号を生成するリセット信号生成部を有する、
ことを特徴とする付記３に記載のアクセス遮断回路。
【０１３１】
（付記６）
前記第１モニタ部は、
前記バスの規格に基づいて、前記マスタおよび前記スレーブ間のハンドシェイクが予め設定されたサイクル数だけ経過しても完了しないかどうかをモニタする、
ことを特徴とする付記２乃至付記５のいずれか１項に記載のアクセス遮断回路。
【０１３２】
（付記７）
前記第２モニタ部は、
前記マスタおよび前記スレーブ間のデータ転送レートが、前記バスの規格に基づく値よりも閾値以上異なっているかどうかをモニタする、
ことを特徴とする付記２乃至付記６のいずれか１項に記載のアクセス遮断回路。
【０１３３】
（付記８）
前記マスタは複数設けられ、それぞれの前記マスタおよび前記バス間には、付記１乃至付記７のいずれか１項に記載のアクセス遮断回路が設けられている、
ことを特徴とする半導体集積回路。
【０１３４】
（付記９）
マスタと、少なくとも１つのスレーブが接続されたバスの間のアクセスを遮断するアクセス遮断方法であって、
前記マスタの異常を検出し、
異常が検出された前記マスタのアクセスを遮断し、
アクセスが遮断された前記マスタによるプロトコルを補正して、前記スレーブをアイドル状態に保持する、
ことを特徴とするアクセス遮断方法。
【０１３５】
（付記１０）
前記マスタの異常検出は、
前記マスタおよび前記スレーブ間における前記バスの転送状態をモニタし、
前記マスタおよび前記スレーブ間における前記バスの転送性能をモニタし、
前記バスの転送状態のモニタ結果、および、前記バスの転送性能のモニタ結果に基づいて、前記マスタの異常を検出する、
ことを特徴とする付記９に記載のアクセス遮断方法。
【０１３６】
（付記１１）
さらに、
システムコントローラと信号の遣り取りを行って、前記マスタのアクセス遮断を制御し、
システムを復旧するとき、前記システムコントローラにより、アクセスが遮断された前記マスタのみを初期化する、
ことを特徴とする付記１０に記載のアクセス遮断方法。
【０１３７】
（付記１２）
前記マスタのアクセス遮断の制御は、
前記システムコントローラに対して、アクセス遮断を要求するアクセス遮断要求信号、および、アクセス遮断が完了したことを示すアクセス遮断完了信号を出力し、
前記前記システムコントローラから、アクセス遮断の許可を示すアクセス遮断許可信号を受け取って行う、
ことを特徴とする付記１１に記載のアクセス遮断方法。
【０１３８】
（付記１３）
さらに、
前記マスタのアクセス遮断を制御し、
システムを復旧するとき、アクセスが遮断された前記マスタのみを初期化するマスタリセット信号を生成する、
ことを特徴とする付記１０に記載のアクセス遮断方法。
【０１３９】
（付記１４）
前記バスの転送状態のモニタは、
前記バスの規格に基づいて、前記マスタおよび前記スレーブ間のハンドシェイクが予め設定されたサイクル数だけ経過しても完了しないかどうかをモニタする、
ことを特徴とする付記１０乃至付記１３のいずれか１項に記載のアクセス遮断方法。
【０１４０】
（付記１５）
前記バスの転送性能のモニタは、
前記マスタおよび前記スレーブ間のデータ転送レートが、前記バスの規格に基づく値よりも閾値以上異なっているかどうかをモニタする、
ことを特徴とする付記１０乃至付記１４のいずれか１項に記載のアクセス遮断方法。
【符号の説明】
【０１４１】
１，100    システムＬＳＩ(半導体集積回路)
３，103    内部バス(バス)
５    システムコントローラ
１１〜１３，111〜113    マスタ
２１，２２，121，122    スレーブ
４０，４１〜４３，４０’，４１’〜４３’    アクセス遮断回路
200    対向機器
401    システムＩＦ部
402，402'    アクセス遮断部
403    プロトコル補正部
404    ステータス受信部
405    プロトコルモニタ部
406    パフォーマンスモニタ部
407    リセット信号生成部
【図１】
0006586765.tif 000002
【図２】
0006586765.tif 000003
【図３】
0006586765.tif 000004
【図４】
0006586765.tif 000005
【図５】
0006586765.tif 000006
【図６】
0006586765.tif 000007
【図７】
0006586765.tif 000008
【図８】
0006586765.tif 000009
【図９】
0006586765.tif 000010
【図１０】
0006586765.tif 000011
【図１１】
0006586765.tif 000012
【図１２】
0006586765.tif 000013
【図１３】
0006586765.tif 000014
【図１４】
0006586765.tif 000015
【図１５】
0006586765.tif 000016