(57)【要約】【課題】  マスタが独立して動作する複数スレーブへアクセスした際、アクセス発行順でレスポンスがマスタに返されること。【解決手段】  バスシステムは、マスタと、第一スレーブと、第二スレーブと、マスタから第一と第二スレーブを接続するバスとを備え、マスタは、第一スレーブに第一アクセスを発行し、第一アクセスに対するレスポンスを受信する前に、第二スレーブに第二アクセスを発行するバスシステムにおいて、バスは、マスタから第二アクセスを受信した際、第一アクセスのレスポンスの状態に関係なく第二アクセスを第二スレーブに発行し、第一アクセスは、第二アクセスがどのスレーブに発行されるかを示す後続アクセススレーブ情報を含み、第一スレーブは、後続アクセススレーブ情報に基づき第一アクセスの状態を第二スレーブに通知し、第二スレーブは、第一アクセスの状態に基づき第二アクセスの実行可否を判断する。【選択図】  図１
2020140286.tif 000002
【特許請求の範囲】
【請求項１】
マスタと、第一のスレーブと、第二のスレーブと、前記マスタから前記第一および第二のスレーブを接続するバスとを備え、
前記マスタは、前記第一のスレーブに第一のアクセスを発行し、
前記第一のアクセスに対するレスポンスを受信する前に、前記第二のスレーブに第二のアクセスを発行するバスシステムにおいて、
前記バスは、前記マスタから前記第二のアクセスを受信した際に、前記第一のアクセスのレスポンスの状態に関係なく前記第二のアクセスを前記第二のスレーブに発行し、
前記第一のアクセスは、第二のアクセスがどのスレーブに発行されるかを示す後続アクセススレーブ情報を含み、
前記第一のスレーブは、前記後続アクセススレーブ情報に基づいて、第一のアクセスの状態を第二のスレーブに通知し、
前記第二のスレーブは、前記第一のアクセスの状態に基づいて第二のアクセスの実行可否を判断することを特徴とする
バスシステム。
【請求項２】
前記第一および第二のアクセスは、一連のアクセスであることを示す連続アクセス情報および前記マスタからの一連のアクセスの先頭・中間・最後を示すアクセス位置情報を含み、
前記第一および第二のスレーブは、
アクセスの実行を制御する制御手段と、
アクセスの状態を受信する状態受信手段と、
アクセスの状態を通知する状態通知手段を含み、
前記制御手段は、
受信したアクセスが先頭のアクセスの場合、前記アクセスの状態に関係なくアクセスを許可し、
受信したアクセスが中間または最後のアクセスの場合、前記アクセスの状態を受信するまではアクセスを保留し、
前記状態受信手段は、先行アクセススレーブからのアクセスの状態を受信したのちに前記制御手段で保留しているアクセスを許可し、
前記状態通知手段は、受信したアクセスが前記先頭もしくは中間のアクセスの場合、アクセスの状態を後続アクセススレーブに通知する
請求項１に記載のバスシステム。
【請求項３】
前記アクセスの状態には、前記第一のアクセスが完了するまでの残り時間が確定した状態と、前記残り時間が含まれ、
前記第二のスレーブは、前記アクセスの状態を受信し、少なくとも、前記残り時間から、前記第二のスレーブが第二のアクセスを実行の後、レスポンスを返送するまでにかかる時間を引いた時間が経過してから、前記第二のアクセスの保留を解除して実行する
請求項２に記載のバスシステム。
【請求項４】
前記アクセスの状態は、前記第一のアクセスが実行された状態であり、
前記第二のスレーブは、前記アクセスの状態を受信し、少なくとも、前記第一のスレーブが第一のアクセスを実行の後、レスポンスを返送するまでにかかる時間から、前記第二のスレーブが第二のアクセスを実行の後、レスポンスを返送するまでにかかる時間を引いた分の時間が経過してから、前記第二のアクセスの保留を解除して実行する
請求項２に記載のバスシステム。
【請求項５】
前記各スレーブ間の接続形態として、各スレーブ間を相互接続する
請求項１から請求項４の何れか１項に記載のバスシステム。
【請求項６】
前記各スレーブ間の接続形態として、各スレーブ間をリング状に接続する
請求項１から請求項４の何れか１項に記載のバスシステム。
【請求項７】
前記第一および前記第二のスレーブはＤＲＡＭコントローラである
請求項１から請求項６の何れか１項に記載のバスシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数スレーブへの同時アクセスを許容したバスシステムにおいて、スレーブからのレスポンスの順序を保証する技術に関する。
【背景技術】
【０００２】
近年、バスシステムにおいては、データ転送を要求するアクセスと実際のデータ転送であるレスポンスを独立して制御するスプリットトランザクションが導入されている。スプリットトランザクションでは、マスタは複数のスレーブに対して同時期にアクセスを発行することが可能になり、データの転送効率を向上させることができる。一方、同時期にアクセスを受け取った複数のスレーブは独立して動作しているため、各スレーブがマスタにレスポンスを返すタイミングは異なる。そのため、マスタがアクセスの発行順序と同じ順序でレスポンスが返されることを期待している場合、期待とは異なる順序でレスポンスが返されるおそれがある。
【０００３】
これに対し、マスタが先行して発行したアクセスとレスポンスの順序保証が必要なアクセスを異なるスレーブに発行した場合、先行アクセスに対するレスポンスがスレーブから返されるまで、異なるスレーブへのアクセス発行を保留するバスがある。しかし、先行アクセスに対するレスポンスがスレーブから返されるまで次のアクセス発行を保留するため、データの転送効率が低下してしまう。そのため、バスがバッファを持ち、期待する順序と異なる順序でスレーブから返されたレスポンスを期待する順序に並び替えるバスシステムが提案されている。（特許文献１参照）
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−７３８５１
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述の従来技術では、バスのバッファを利用してスレーブからのレスポンスを期待する順序に並び替えることで順序保証をする。しかし、近年のバスマスタは一度のアクセスで大量のデータ転送を要求することが多い。例えば、データバス幅が１２８ビットのバスシステムで２５６ビート分のリードデータを要求する場合、少なくとも４０９６バイトのバッファが必要となり、バスの回路規模が増加してしまう。
【課題を解決するための手段】
【０００６】
本発明のバスシステムは、マスタと、第一のスレーブと、第二のスレーブと、前記マスタから前記第一および第二のスレーブを接続するバスを含み、前記マスタは、前記第一のスレーブに第一のアクセスを発行し、前記第一のアクセスに対するレスポンスを受信する前に、前記第二のスレーブに第二のアクセスを発行するバスシステムにおいて、前記バスは、前記マスタから前記第二のアクセスを受信した際に、前記第一のアクセスのレスポンスの状態に関係なく前記第二のアクセスを前記第二のスレーブに発行し、前記第一のアクセスは、第二のアクセスがどのスレーブに発行されるかを示す後続アクセススレーブ情報を含み、前記第一のスレーブは、前記後続アクセススレーブ情報に基づいて、第一のアクセスの状態を第二のスレーブに通知し、前記第二のスレーブは、前記第一のアクセスの状態に基づいて第二のアクセスの実行可否を判断する。
【発明の効果】
【０００７】
本発明によれば、複数スレーブへの同時アクセスを許容したシステムにおいて、異なるスレーブからのレスポンスの順序保証を、少ない回路でデータ転送効率の低下を抑制することが可能になる。
【図面の簡単な説明】
【０００８】
【図１】実施例におけるバスシステムの構成図
【図２】実施例１におけるアクセス制御部の構成図
【図３】実施例１におけるアクセス状態受信部の構成図
【図４】実施例１におけるアクセス状態通知部の構成図
【図５】実施例１におけるバスシステムの挙動を示す波形図
【図６】実施例２におけるバスシステムの構成図
【図７】実施例２におけるアクセス状態受信部の構成図
【図８】実施例２におけるバスシステムの挙動を示す波形図
【図９】変形例における各スレーブ間を相互接続するバスシステムの構成図
【図１０】変形例における各スレーブ間をリング状に接続するバスシステムの構成図
【発明を実施するための形態】
【０００９】
［実施例１］
図１は実施例におけるバスシステム１００の構成図である。バスシステム１００は、マスタ１１０、スレーブ（Ａ）１４１、スレーブ（Ｂ）１４２がバス１２０を介して接続されている。スレーブ（Ａ）１４１とスレーブ（Ｂ）１４２はＤＲＡＭコントローラであり、それぞれはＤＲＡＭ（Ａ）１９１とＤＲＡＭ（Ｂ）１９２を制御する。本実施例では、スレーブ（Ａ）１４１とスレーブ（Ｂ）１４２はＤＲＡＭコントローラとしているが、マスタ１１０からのアクセスを処理してレスポンスを返すスレーブであればＤＲＡＭコントローラに限らない。マスタ１１０はアクセスをバス１２０に発行し、同じＩＤ情報と同じＤｉｒ情報を持つアクセスに対するレスポンスはアクセスを発行した順序で返されることを期待する。それ以外のアクセスに対するレスポンスは順不同で返されてもよい。アクセスにはアドレス情報、アクセスを識別するためのＩＤ情報、アクセスがリードかライトかを示すＤｉｒ情報、一連のアクセスであることを示す連続アクセス情報が含まれる。さらに、一連のアクセスの場合は、前記の情報以外に、一連のアクセスの先頭・中間・最後を示すアクセス位置情報と、後続アクセスがどのスレーブに発行されるかを示す後続アクセススレーブ情報が含まれる。
【００１０】
バス１２０は、マスタ１１０から受信したアクセスに含まれるアドレス情報に基づいてスレーブ（Ａ）１４１またはスレーブ（Ｂ）１４２にアクセスを転送する。スレーブ（Ａ）１４１とスレーブ（Ｂ）１４２は受信したアクセスからＤＲＡＭコマンドを生成し、ＤＲＡＭ（Ａ）１９１、ＤＲＡＭ（Ｂ）１９２に発行する。また、スレーブ（Ａ）１４１とスレーブ（Ｂ）１４２は、アクセスの処理が完了するとレスポンスをバス１２０に送信し、バス１２０は受信したレスポンスをマスタ１１０に送信する。
【００１１】
アクセス制御部２００は、マスタ１１０からアクセスを受信すると、受信したアクセスに含まれる、連続アクセス情報と、アクセス位置情報に応じで、アクセスの実行を保留するか、アクセスの実行を許可するか実行可否を決定する。
【００１２】
アクセス状態受信部２４０は、前記アクセス制御部２００が保留したアクセスに対する先行アクセスのスレーブから先行アクセスの状態を受信する。その結果、実行が許可されると判断したら、前記アクセスの保留を解除する。
【００１３】
アクセス制御部２００は、実行が許可されたアクセスをＤＲＡＭに発行する。
【００１４】
アクセス状態通知部２３０は、前記実行が許可されたアクセスの後続アクセススレーブ情報に応じて、該当するスレーブに、前記アクセスの状態を通知する。ここでは、アクセスの状態は、アクセスがレスポンスする完了までの残り時間が確定した状態であるものとする。
【００１５】
図２は実施例１におけるアクセス制御部２００の構成図である。
【００１６】
アクセス制御部２００は、アクセス保留判定部２０１と、アクセス保留部２０２と、アクセス実行部２０３を備える。
【００１７】
アクセス保留判定部２０１は、バス１２０からアクセスを受信すると、連続アクセス情報と、アクセス位置情報をデコードする。連続アクセス情報が一連のアクセスであることを示し、アクセス位置情報が中間または最後を示す場合、アクセスをアクセス保留部２０２に送信する。それ以外の場合は、アクセスをアクセス実行部２０３に送信する。
【００１８】
アクセス保留部２０２は、アクセス保留判定部２０１から受信したアクセスを保持し、保持されているアクセスのＩＤ情報、Ｄｉｒ情報をアクセス状態受信部２４０に出力する。
【００１９】
前記アクセスに対して、アクセス状態受信部２４０から保留を解除するよう指示されたら、前記アクセスをアクセス実行部２０３に送信する。
【００２０】
アクセス実行部２０３は、アクセス保留判定部２０１およびアクセス保留部２０２から送信されたアクセスを保持し、ＤＲＡＭのプロトコル仕様やタイミング仕様に従って、前記アクセスをＤＲＡＭに発行する。
【００２１】
また、アクセス実行部２０３は、前記アクセスのレスポンス完了までの残り時間が確定したタイミングで、前記連続アクセス情報、アクセス位置情報、残り時間、ＩＤ情報、Ｄｉｒ情報、後続アクセススレーブ情報をアクセス状態通知部２３０に通知する。
【００２２】
図３は、実施例１におけるアクセス状態受信部２４０の構成図である。
【００２３】
アクセス状態受信部２４０は、アクセス状態保留テーブル２４１を備える。アクセス状態保留テーブル２４１は、アクセス制御部２００がＤＲＡＭにアクセスを発行してから、レスポンスがバス１２１に返送されるまでにかかる、レスポンス時間の情報を持つ。本実施例では、レスポンス時間は８サイクルであるものとして説明する。
【００２４】
アクセス状態保留テーブル２４１は、アクセス保留部２０２から、アクセスのＤｉｒ情報、ＩＤ情報を受信する。アクセス状態保留テーブル２４１は、該当するエントリが格納されていない場合は、Ｄｉｒ情報と、ＩＤ情報を、一つのエントリとして格納し、エントリのアクセス受信フラグをアサートする。該当するエントリがすでにあり、レスポンス完了までの残り時間が、レスポンス時間より大きい場合は、該当するエントリのアクセス受信フラグをアサートする。該当するエントリがすでにあり、残り時間がレスポンス時間以下である場合は、エントリのアクセス受信フラグをアサートし、アクセス制御部２００に該当エントリのＩＤ情報、Ｄｉｒ情報を送信し、該エントリを削除する。
【００２５】
アクセス状態保留テーブル２４１は、先行アクセススレーブのアクセス制御部２００においてレスポンス完了までの残り時間が確定したタイミングで、先行アクセスのＤｉｒ情報、ＩＤ情報、残り時間を受信する。前記アクセスのエントリが既に格納されている場合、該当するエントリの残り時間を格納し、残り時間受信フラグをアサートする。前記アクセスのエントリが格納されていない場合、Ｄｉｒ情報、ＩＤ情報、残り時間を新たなエントリとして格納し、残り時間受信フラグをアサートする。アクセス状態受信部２４０は、アクセス状態保留テーブル２４１内の各エントリの残り時間を毎サイクル０になるまでデクリメントする。アクセス状態受信部２４０は、アクセス状態保留テーブル２４１に、アクセス受信フラグ、残り時間受信フラグがともにアサートされ、残り時間がレスポンス時間以下になったエントリが存在するかを判断する。存在する場合、該当するエントリのＩＤ情報、Ｄｉｒ情報をアクセス制御部２００に送信し、該エントリを削除する。
【００２６】
図４は、実施例１におけるアクセ状態通知部２３０の構成図である。
【００２７】
アクセス状態通知部２３０は、アクセス状態通知制御部２３１を備える。
【００２８】
アクセス状態通知制御部２３１は、アクセス制御部２００において、アクセスがレスポンス完了するまでの残り時間が確定したタイミングで、連続アクセス情報、アクセス位置情報、残り時間、ＩＤ情報、Ｄｉｒ情報、後続アクセススレーブ情報を受信する。そして、前記連続アクセス情報が一連のアクセスであることを示し、アクセス位置情報が先頭または中間を示す場合、前記後続アクセススレーブ情報をデコードし、該当するスレーブに前記のＩＤ情報、Ｄｉｒ情報、レスポンス完了までの残り時間を送信する。それ以外の場合は、受信した情報を破棄する。
【００２９】
図５は、実施例１におけるバスシステムの挙動を示す波形である。本波形図ではマスタ１１０がスレーブ（Ａ）１４１にリードアクセスＲＤ１を発行し、対応するレスポンスを受信する前に、スレーブ（Ｂ）１４２にリードのアクセスＲＤ２を発行した際の波形である。ＲＤ１とＲＤ２は一連のアクセスであり、同じＩＤ情報である。
【００３０】
マスタ１１０は、Ｔ２でＲＤ１を発行し、Ｔ３でＲＤ２を発行する。ＲＤ１には、スレーブ（Ｂ）を示す後続アクセススレーブ情報が含まれる。また、ＲＤ１が持つアクセス位置情報は先頭であり、ＲＤ２が持つアクセス位置情報は最後である。Ｔ３でスレーブ（Ａ）１４１は、ＲＤ１を受信する。ＲＤ１が持つ連続アクセス情報は、連続した転送の一部であることを示し、アクセス位置情報は先頭であるため、アクセス保留判定部２０１は、アクセスの状態に関係なく、ＲＤ１をアクセス実行部２０３に送信する。一方、Ｔ４でスレーブ（Ｂ）１４２は、ＲＤ２を受信する。ＲＤ２は、連続アクセス識別子が一連の転送のであることを示し、アクセス位置情報は最後であるため、アクセス保留判定部２０１は、ＲＤ２をアクセス保留部２０２に送信する。アクセス保留部２０２は、アクセス保留判定部２０１から受信したアクセスのＩＤ情報、Ｄｉｒ情報をアクセス状態受信部２４０に出力する。アクセス状態保留テーブル２４１は、Ｄｉｒ情報と、ＩＤ情報を一つのエントリとして格納し、エントリのアクセス受信フラグをアサートする。Ｔ６で、スレーブ（Ａ）１４１のアクセス実行部２０３において、ＲＤ１のレスポンス完了までの残り時間が確定したものとする。後続スレーブのスレーブ（Ｂ）１４２にＲＤ１のＩＤ情報、Ｄｉｒ情報、レスポンス完了までの残り時間を送信する。
【００３１】
Ｔ６で、スレーブ（Ｂ）１４２のアクセス状態受信部２４０は、ＲＤ１と同じＤｉｒ情報、ＩＤ情報を持つエントリがすでに登録されているため、アクセス状態保留テーブル２４１に該当エントリの残り時間のみ登録し、残り時間受信フラグをアサートする。ここでは、残り時間を１２サイクルであるとして説明する。残り時間は毎サイクルデクリメントされ、Ｔ１１に８サイクルになる。Ｔ１０で、スレーブ（Ａ）１４１は、ＤＲＡＭ（Ａ）１９１にＲＤ１を発行し、Ｔ１６およびＴ１７にデータを受信する。また、Ｔ１７およびＴ１８にバス１２０にデータを送信する。バス１２０は、Ｔ１８およびＴ１９にマスタ１１０にデータを送信する。
【００３２】
スレーブ（Ｂ）１４２は、Ｔ１１で残り時間のカウンタがレスポンス時間以下で、第二のスレーブが第二のアクセスを実行の後、レスポンスを返送するまでにかかる時間を引いた時間が経過したため、ＲＤ２の保留を解除し、アクセス実行部２０３に送信する。スレーブ（Ｂ）１４２はＤＲＡＭ（Ｂ）１９２に、ＲＤ２を発行し、Ｔ１８およびＴ１９にデータを受信する。また、Ｔ１９およびＴ２０にバス１２０にデータを送信する。バス１２０は、Ｔ２０およびＴ２１にマスタ１１０にデータを送信する。
【００３３】
これにより、マスタ１１０はＴ１８およびＴ１９でＲＤ１のアクセスに対するレスポンスであるＤ１を受信し、Ｔ２０およびＴ２１でＲＤ２のアクセスに対するレスポンスであるＤ２を受信する。バス１２０にバッファを持つことなく、マスタ１１０が期待する順序でレスポンスを受信することができる。また、従来のように、バス１２０やマスタ１１０が先行アクセスに対するレスポンスがスレーブから返されるまで次のアクセス発行を保留する場合より、早いタイミングで発行できるため、従来と比べて、データ転送効率の低下を抑制できる。
【００３４】
本実施例では、アクセスの状態を、アクセスがレスポンス完了するまでの残り時間が確定した状態として説明したが、それに限定されるものではない。アクセスの状態の別の形態として、アクセスがＤＲＡＭに実行された状態であってもよい。この場合、アクセス実行部２０３は、アクセスをＤＲＡＭに発行したタイミングでＩＤ情報、Ｄｉｒ情報、後続アクセススレーブ情報を通知する。アクセス状態通知部２３０はＩＤ情報、Ｄｉｒ情報を通知する。アクセス状態受信部２４０は、受信したＩＤ情報、Ｄｉｒ情報を直ちにアクセス制御部２００に送信する。
【００３５】
［実施例２］
実施例１では、マスタが必ずレスポンスを受信できる前提で説明をした。
【００３６】
実施例２では、マスタがレスポンスの受信を保留する場合について説明する。
【００３７】
レスポンスの受信を保留するマスタが存在し、他のマスタとレスポンスの経路をシェアしている場合、前記マスタが発行したアクセスに対するレスポンスが前記マスタに受信されるまで、それ以降のアクセスに対するレスポンスは前記他のマスタに返せなくなる。
実施例２は、これを鑑みたものである。
【００３８】
図６は、実施例２におけるバスシステムの構成である。バスシステム１００は、マスタ１１０、マスタ１１１、スレーブ（Ａ）１４３、スレーブ（Ｂ）１４４がバス１２１を介して接続されている。マスタ１１０は実施例１と同じ構成で、マスタ１１１はレスポンスの受信を保留することができる。マスタ１１１は、レスポンスを受信すると、レスポンスの送信元のスレーブに対して、レスポンス受信完了信号を発行する。バス１２１は、実施例１のバス１２０に加えて、前記レスポンス受信完了信号を該当するスレーブに発行することができる。スレーブ（Ａ）１４３、スレーブ（Ｂ）１４４は、実施例１のスレーブ（Ａ）１４１、スレーブ（Ｂ）１４２に加えて、マスタ１１１からレスポンス受信完了信号を受信するまで、後続アクセススレーブに通知することを保留する。
【００３９】
図７は、実施例２におけるアクセス状態通知部３３０の構成図である。アクセス状態通知部３３０は、保留可能マスタ情報保持部３３１、アクセス情報判定部３３２、アクセス状態通知保留テーブル３３３、通知保留制御部３３４を備える。また、アクセス状態通知部３３０は、実施例１のアクセス状態通知部２３０に加えて、レスポンス受信完了信号を受信するインタフェースを持つ。
【００４０】
保留可能マスタ情報保持部３３１は、スレーブにアクセスするマスタのうち、レスポンスの受信を保留する可能性があるマスタのＩＤ情報が予め設定される。
【００４１】
アクセス情報判定部３３２は、アクセス制御部２００から、連続アクセス情報、アクセス位置情報、アクセスがレスポンス完了するまでの残り時間、ＩＤ情報、Ｄｉｒ情報、後続アクセススレーブ情報を受信する。まず、受信したアクセスのＩＤ情報がレスポンスを保留する可能性があるマスタからのアクセスか否かを確認する。レスポンスを保留するマスタからのアクセスである場合、通知保留制御部３３４に該当マスタからのレスポンス受信完了信号を受信するまで待つよう指示する。次に、連続アクセス情報と、アクセス位置情報をデコードし、一連のアクセスでない場合や、アクセス位置が最後の場合は受信した情報を破棄する。それ以外の場合、通知保留制御部３３４が、レスポンス受信完了信号待ちであれば、アクセス状態通知保留テーブル３３３にアクセス状態を１つのエントリとして格納する。通知保留制御部３３４が、レスポンス受信完了信号待ちでなければ、該当するスレーブに前記のＩＤ情報、Ｄｉｒ情報、レスポンス完了までの残り時間を送信する。
【００４２】
アクセス状態通知保留テーブル３３３は、登録済みのエントリの残り時間を毎サイクル、デクリメントする。
【００４３】
通知保留制御部３３４はレスポンス受信完了信号を待つよう指示を受けると、該当マスタからのレスポンス受信完了信号を受信するまで、アクセス状態通知保留テーブル３３３に保留されているアクセス状態をスレーブに送信しない。レスポンス受信完了信号を受信すると、保留可能マスタ情報保持部３３１に保留する可能性があるマスタからのものか否かを確認する。レスポンスを保留できるマスタからのアクセスである場合、該当するＩＤ情報を持つエントリを取り出し、後続アクセススレーブ情報をデコードし、該当するスレーブに前記のＩＤ情報、Ｄｉｒ情報、レスポンス完了までの残り時間を送信する。
【００４４】
図８は、実施例２におけるバスシステムの挙動を示す波形図である。本波形図では、マスタ１１０は、実施例１と同様に、ＲＤ１およびＲＤ２を発行する。マスタ１１１は、マスタ１１０に先だってスレーブ（Ａ）１４３にＲＤ０を発行する。マスタ１１１はレスポンスの受信を保留することができ、レスポンスの受信を完了するとレスポンス受信完了信号を、バス１２１を通じてスレーブ（Ａ）１４３に発行する。
【００４５】
マスタ１１１は、Ｔ１でＲＤ０を発行する。マスタ１１０は、Ｔ２でＲＤ１を発行し、Ｔ３でＲＤ２を発行する。
【００４６】
スレーブ（Ａ）１４３はＴ２でＲＤ０を受信する。ＲＤ０は、一連の転送の一部ではないため、アクセス保留判定部２０１は、ＲＤ０をアクセス実行部２０３に送信する。Ｔ４で、ＲＤ０のレスポンス完了までの残り時間が確定したものとする。このとき、ＲＤ０のレスポンス完了までの残り時間が確定したことがアクセス状態通知部３３０に通知される。ＲＤ０はレスポンスの受信を保留することができるマスタからのアクセスであるため、アクセス情報判定部３３２から、通知保留制御部３３４にレスポンス受信完了信号を待つよう指示する。スレーブ（Ａ）１４３は、Ｔ８でＲＤ０をＤＲＡＭに発行し、Ｔ１４およびＴ１５にＲＤ０のレスポンスをＤＲＡＭから受信し、Ｔ１５およびＴ１６にＲＤ０のデータＤ０をバス１２１に送信する。
【００４７】
一方、スレーブ（Ａ）１４３はＴ３でＲＤ１を受信し、ＲＤ１は、一連の転送の一部であり、アクセス位置情報が先頭であるため、アクセス保留判定部２０１は、ＲＤ１をアクセス実行部２０３に送信する。Ｔ６で、ＲＤ１がレスポンス完了までの残り時間が確定したものとする。このとき、ＲＤ１のレスポンス完了までの残り時間が確定したことがアクセス状態通知部３３０に通知される。通知保留制御部３３４がレスポンス受信完了信号の待ち状態であるため、ＲＤ１はアクセス状態通知保留テーブルに格納される。スレーブ（Ａ）１４３は、Ｔ１０でＲＤ１をＤＲＡＭに発行し、Ｔ１６およびＴ１７にＲＤ１のレスポンスをＤＲＡＭから受信し、Ｔ１７およびＴ１８にＲＤ１のデータＤ１をバス１２１に送信する。
【００４８】
スレーブ（Ｂ）１４４はＴ４でＲＤ２を受信し、ＲＤ２は、一連の転送の一部であり、アクセス位置情報が最後であるため、アクセス保留判定部２０１は、ＲＤ２をアクセス保留部２０２に送信する。
【００４９】
マスタ１１１は、Ｔ１６およびＴ１７にＲＤ０のデータ０をバス１２１から受信し、Ｔ１８にレスポンス受信完了信号をスレーブ（Ａ）１４３に発行する。スレーブ（Ａ）１４３は、Ｔ１８にレスポンス受信完了信号を受信し、通知保留制御部３３４は、Ｔ１９にアクセス状態通知保留テーブル３３３からＲＤ１を取り出してＲＤ１のアクセス状態をスレーブ（Ｂ）１４４に送信する。
【００５０】
スレーブ（Ｂ）１４４は、前記アクセス状態を受信して、ＲＤ２の保留を解除する。その後の動作、実施例１と同様であり、Ｔ２４およびＴ２５にバス１２１にＲＤ２のデータＤ２を送信する。
【００５１】
これにより、マスタがレスポンスの受信を保留するバスシステムにおいても、マスタ１１０が期待する順序でレスポンスを受信することができる。
【００５２】
［変形例］
実施例１、実施例２に共通の変形例としてスレーブの接続形態について説明する。実施例１、実施例２では、スレーブが２つの構成で、一方のスレーブから他方のスレーブに通知するケースについて説明したが、スレーブ間の接続形態の構成として、他にもいくつか考えられる。
【００５３】
図９は、すべてのスレーブ間の、アクセス状態の通知の信号を相互接続するものである。この場合、スレーブ間それぞれが独立して実施例１と同様の通知を行う。
【００５４】
図１０は、スレーブ間をリング状に接続するものである。この場合、スレーブ間が一つのリングパスをシェアし、各スレーブは通知情報を送受信する通信部２５０を持つ。
【００５５】
アクセス状態通知部４３０は、アクセス制御部２００から受信したＤｉｒ情報、ＩＤ情報、残り時間、後続アクセススレーブ情報をそのまま通信部２５０に出力する。通信部２５０は、アクセス状態通知部４３０から、Ｄｉｒ情報、ＩＤ情報、残り時間、後続アクセススレーブ情報を受信すると、Ｄｉｒ情報、ＩＤ情報、残り時間、後続アクセススレーブ情報をパケット化して、通信部２５０の接続先のスレーブへ送信する。接続先スレーブの通信部２５０は、通知パケットを受信すると、パケットに含まれている後続アクセススレーブ情報をデコードする。デコードの結果、自スレーブが通知先となっている場合、通信部２５０は、Ｄｉｒ情報、ＩＤ情報、残り時間をパケットから取り出し、アクセス状態受信部２４０に送信する。デコードの結果、自スレーブが通知先となっていない場合は、通信部２５０の接続先のスレーブにパケットを送信する。
【符号の説明】
【００５６】
１００  バスシステム
１１０  マスタ
１２０  バス
１４１  スレーブ（Ａ）
１４２  スレーブ（Ｂ）
１９１  ＤＲＡＭ（Ａ）
１９２  ＤＲＡＭ（Ｂ）
２００  アクセス制御部
２０１  アクセス保留判定部
２０２  アクセス保留部
２０３  アクセス実行部
２３０  アクセス状態通知部
２３１  アクセス状態通知制御部
２４０  アクセス状態受信部
２４１  アクセス状態保留テーブル
１２１  バス
１４３  スレーブ（Ａ）
１４４  スレーブ（Ｂ）
３３０  アクセス状態通知部
３３１  保留可能マスタ情報保持部
３３２  アクセス情報判定部
３３３  アクセス状態通知保留テーブル
３３４  通知保留制御部
４３０  アクセス状態通知部
２５０  通信部
【図１】
2020140286.tif 000003
【図２】
2020140286.tif 000004
【図３】
2020140286.tif 000005
【図４】
2020140286.tif 000006
【図５】
2020140286.tif 000007
【図６】
2020140286.tif 000008
【図７】
2020140286.tif 000009
【図８】
2020140286.tif 000010
【図９】
2020140286.tif 000011
【図１０】
2020140286.tif 000012