JP2004126646A - バス制御方法 - Google Patents

バス制御方法 Download PDF

Info

Publication number
JP2004126646A
JP2004126646A JP2002285578A JP2002285578A JP2004126646A JP 2004126646 A JP2004126646 A JP 2004126646A JP 2002285578 A JP2002285578 A JP 2002285578A JP 2002285578 A JP2002285578 A JP 2002285578A JP 2004126646 A JP2004126646 A JP 2004126646A
Authority
JP
Japan
Prior art keywords
transaction
master
slave
issued
signal
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.)
Withdrawn
Application number
JP2002285578A
Other languages
English (en)
Inventor
Kohei Murayama
村山 公平
Takashi Fujiwara
藤原 隆史
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2002285578A priority Critical patent/JP2004126646A/ja
Priority to US10/670,300 priority patent/US7386634B2/en
Publication of JP2004126646A publication Critical patent/JP2004126646A/ja
Withdrawn legal-status Critical Current

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/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4208Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
    • G06F13/4217Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with synchronous protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

【課題】複数のマスターモジュールとスレーブモジュールとがバスにより接続されたシステムにおける性能を向上させる。
【解決手段】複数のマスターポートと複数のスレーブポートとを持つスイッチSWを備え、前記複数のマスターポートの各々と前記複数のスレーブポートの任意のポートとを接続可能なバスYbusにおいて、アドレス及びコマンドを発行するアドレスフェーズと、ライトデータを発行するデータフェーズとを分離し、該データフェーズが終了する前に、次のトランザクションのアドレスフェーズを発行可能とした。
【選択図】    図6

Description

【0001】
【発明の属する技術分野】
本発明は情報処理装置のバス制御方法に関し、特にLSIで実現される複合機器の制御装置などにおける内部スイッチを備えたバスの制御方法に関するものである。
【0002】
【従来の技術】
従来、複合機器の制御装置をLSIで実現する際、メモリやROMその他IOデバイスに対するアクセスを行う場合、システム内には様々なCPUを含むバスマスタ、バススレーブとなるモジュールが存在する。それぞれのバスマスタは、処理を行うにあたり複数のスレーブにアクセスを行うことが多い。
【0003】
そのため、システム内に存在する各々のマスターモジュールは複数のスレーブモジュールに対してアクセスをする必要があり、それを実現するためにクロスバースイッチといったマスターからスレーブヘの接続を切り替えてアクセスを行うよう制御するといった手法が用いられる。
【0004】
従来は、あるマスターがスレーブへとアクセスを行う場合は、スイッチを接続してトランザクションを開始し、ひとつのトランザクションが終了してからそのマスタからのスイッチを解放する手法が取られる。
【0005】
【発明が解決しようとする課題】
しかしながら、従来の手法を用いた場合、あるマスターたとえばCPUが、IOデバイスのような遅いデパイスへとリードトランザクションを発行し、他のデバイスに対してライトトランザクションを発行すると言った処理を行う場合、リードトランザクションのデータリターンが返って初めてスイッチを解放し、次のデバイスに対してライトトランザクションを発行するといった手順で行われる。このため、マスターはあるトランザクションへのアクセスが終了するまで、次のトランザクションを発行することができず、また、スレーブは現在のトランザクションが終了するまで次のトランザクションを受け取ることができないという問題があった。
【0006】
【課題を解決するための手段】
本発明は上記問題点に鑑みなされたもので、あるスレーブに対するトランザクションが終了する前に次のトランザクションを発行することにより、システム性能の向上を図ることを目的とする。
【0007】
上記目的を達成するために、本発明に係るバス制御方法は、複数のマスターポートと複数のスレーブポートとを持つスイッチを備え、前記複数のマスターポートの各々と前記複数のスレーブポートの任意のポートとを接続可能なバスにおいて、アドレス及びコマンドを発行するアドレスフェーズと、ライトデータを発行するデータフェーズとを分離し、該データフェーズが終了する前に、次のトランザクションのアドレスフェーズを発行可能としたことを特徴とする。
【0008】
【発明の実施の形態】
以下、本発明の1実施形態について詳細に説明する。
【0009】
図6は、本実施形態のシステム構成を示す図である。複数のマスターモジュール(Master−0〜3)と複数のスレーブモジュール(Slave−0〜3)とがバスYbusを介して接続されている。
【0010】
バスYbusは、バスYvBus(yv0〜3)、バスYiBus(yi0〜3)及びスイッチSWで構成されており、複数のマスターモジュール(Master−0〜3)がバスYvBus(yv0〜3)を介してスイッチSWの複数のマスターポートに接続し、複数のスレーブモジュール(Slave−0〜3)がバスYiBus(yi0〜3)を介してスイッチSWの複数のスレーブポートと接続している。
【0011】
バスYBusは以下の信号で構成される。マスターモジュールからスレーブモジュールヘの信号として、トランザクション開始信号y_tsp、アドレス信号y_addrp〔31:4〕、マスターlD信号y_midp〔4:0〕、リードライトコマンド指定信号y_rd_not_wr、命令データ指定信号y_inst_not_data、アクセス長指定信号y_one_not_two、リードバイトイネーブル信号y_rd_byteenp〔15:0〕、ロック指定信号y_lockp、ライトデータ信号y_wr_datap〔127:0〕、ライトバイトイネーブル信号y_wr_byteenp〔15:0〕、スヌープマスク信号y_snoop_maskpを備え、スレーブモジュールからマスターモジュールへの信号として、スレーブレディー信号y_srdyp、リターンスタート信号y_rsp、リターンマスターID信号y_rmidp〔3:0〕、リードデー夕信号y_rd_datap〔127:0〕、リードエラー信号y_rd_errorpを備えるものとする。
【0012】
YBusはアドレスフェーズとデーターフェーズとが分離されており、アドレスフェーズとデ一夕フェ−ズのオーバーラップが可能となっている。以下に各信号の働きとバスのプロトコルを述べる。
【0013】
トランザクション開始信号y_tsp: マスターモジュールがトランザクションを開始したいときに発行する。スレーブレディー信号y_srdypが発行されるまで、発行しつづける必要がある。y_srdypが発行されたタイミングでマスターモジュールのトランザクションが発行され、本信号の発行を解除する。スレーブ側の本信号の本数は、一本でその信号が発行された場合は受け側のスレーブモジュールへのトランザクションであることを意味する。マスターモジュール側の本信号は、アクセスするスレーブモジュールの数だけ用意され、発行するスレーブモジュールに応じて適切な信号を発行する必要がある。本信号は、トランザクションの開始信号のほかに、スイッチに対するスイッチ要求信号として使用される。
【0014】
アドレス信号y_addrp〔31:4〕: アクセスアドレスを示す信号。y_tspの発行されるタイミングでアクセスアドレスが確定し、y_tspの解除後1サイクル保持する必要がある。
【0015】
マスターlD信号y_midp〔3:0〕: アクセスを行うマスターIDを示す信号。マスターモジュールには各々マスターを識別するマスターIDが割り振られており、発行するマスターのマスターIDを発行する。y_tspの発行されるタイミングでアクセスアドレスが確定し、y_tspの解除後1サイクル保持する必要がある。
【0016】
リードライトコマンド指定信号y_rd_not_wr: 発行するトランザクションのリード・ライトの種別を示す信号。y_tspの発行されるタイミングでアクセスアドレスが確定し、y_tspの解除後1サイクル保持する必要がある。1でリードアクセス。0でライトアクセスとする。
【0017】
命令データ指定信号y_inst_not_data: 発行するトランザクションが命令のフェツチであるかデータアクセスであるかを示す信号。y_tspの発行されるタイミングでアクセスアドレスが確定し、y_tspの解除後1サイクル保持する必要がある。1で命令フェッチ、0でデータアクセス。
【0018】
アクセス長指定信号y_one_not_two: アクセスデータの有効ビート数を示す。YBusにおけるアクセスビート数は128ビットの2ビート固定であり、そのうちの有効ビート数を示す。y_tspの発行されるタイミングでアクセスアドレスが確定し、y_tspの解除後1サイクル保持する必要がある。1で1ビート目のみ有効。0で2ビート有効。
【0019】
リードバイトイネーブル信号y_rd_byteenp〔15:0〕: リード時に128ビットのうちの有効バイトレーンを示す。本信号はy_one_not_twoが1ビート有効であると示したときに128ビット中のどのバイトレーンヘのリードアクセスであるかを規定する。y_tspの発行されるタイミングでアクセスアドレスが確定し、y_tspの解除後1サイクル保持する必要がある。1で有効、0で無効。y_one_not_twoで2ビートアクセスと規定された場合においては本信号はすべてのバイトレーンが有効でなければならない。
【0020】
ロック指定信号y_lockp: ロックトランザクションを示す信号。マスターモジュールが続けてトランザクションを行う場合において、この信号を発行する。この信号が発行されている間はスイッチの接続は解除されない。アクセスを行う最初のトランザクションで本信号を発行し、最後のトランザクションのy_tspを発行する直前まで発行しつづける必要がある。1でロツク発行。
【0021】
ライトデータ信号y_wr_datap〔127:0〕: ライトデータを示す信号であり、y_tspが発行された次のサイクルから2ビート連続で128ビットデータをバス上に発行する。y_one_not_twoが発行されている場合は1ビート目のみ有効となる。
【0022】
ライトバイトイネーブル信号y_wr_byteenp〔15:0〕: ライト時に128ビットのうちの有効ライトバイトレーンを示す。y_one_not_twoが1ビート有効であると示したときに128ビット中のどのバイトレーンへのライトアクセスが有効であるかを規定する。y_wr_datapと同−サイクルでライトデータの有効ビットを示す。
【0023】
スヌープマスク信号y_snoop_mask:マスターからのアクセスでスヌープを行わなくてもよいことを示す。本信号を発行することによって、発行するトランザクションがスヌープの対象外であることを示す。1で発行を示す。
【0024】
スレーブレディー信号y_srdyp: スレーブ側がマスターモジュールからのトランザクションを受け取る準備ができていることを示す信号。本信号が発行されている間は、マスターはy_tspを発行しトランザクションを発行することができ、スレーブ側はマスターからのトランザクションを必ず受け取らなければならない。スレーブ側の本信号の本数は一本であるが、マスター側にはマスターがトランザクションを発行するスレーブの本数分入力される。1で受け取り可能。
【0025】
リターンスタート信号y_rsp: スレーブからのリードリターントランザクションの開始を示す信号。スレーブ側はリードリターンの準備が出来次第本信号を発行しリードリターントランザクションを開始する。本信号はスレーブ側はいつでも発行することが可能であり、リードリクエストを発行したモジュールはリードリターントランザクションを必ず受け取らなければならない。本信号の発行期間は1サイクルである。1で発行を示す。本信号はスイッチに対するスイッチ要求信号として併せて使用される。
【0026】
リターンマスターID信号y_rmidp: リードリターントランザクションのマスターlDを示す。リードトランザクションの場合、スレーブ側ではマスターからのy_midpを保持し、リードリターントランザクシヨン時に同じIDを返す。リードリクエストを発行したマスターモジュールは本信号をデコ−ドし、リターンマスターIDが自分のマスターIDであった場合にリードリターントランザクションを受け取る。本信号はy_rspの発行と同時に確定させ、y_rspの解除後1サイクルまで保持する必要がある。
【0027】
リードデータ信号y_rd_datap〔127:0〕:リードデータを示す信号である。y_rspが発行された次のサイクルから128ビットデータを2ビート発行するy_one_not_twoで1ビートを示されたリードアクセスの場合、1ビート目のみ有効となる。
【0028】
リードエラー信号y_rd_errorp: リードアクセスにおいてエラーとなったことを示す。y_rspと同じタイミングで1サイクル発行される。1でエラーを示す。
【0029】
以下にバス調停について示す。
【0030】
バス調停はスイッチ内に設けたアービターにより行われる。トランザクションの開始はマスター発行によるy_tspによる。
【0031】
y_tspの発行によりマスターはスイッチの要求を行い、その要求に対しアクセスを受けるスレーブに対応するy_srdypが発行される。
【0032】
y_srdypは、アクセスを受けるスレーブがトランザクションを受けることが可能な状態であり、かつスイッチの接続が行われたときに発行される。
【0033】
このときにアドレスフェーズのスイッチの接続が確立され、アドレスフェーズのトランザクション、つまり、データ以外のフェーズのトランザクションが可能となる。
【0034】
マスターに入力されるy_srdypが発行されたのをマスターが確認し、トランザクションがy_tspを解除し、トランザクションが開始される。
【0035】
スイッチが次のトランザクションのバス調停を行うのは、y_tspが解除された次のサイクルである。
【0036】
データフェーズのスイッチの確立は、アドレスフェーズのスイッチの確立を受けて行われ、アドレスフェーズが確立された次のサイクルで確立される。
【0037】
アドレスフェーズは、y_tspとy_srdypの両方が発行されたサイクル、つまりアドレスフェーズのスイッチ接続の確立が行われたサイクルから次のサイクルまでの2サイクルであり、データフェーズはアドレスフェーズから1サイクル遅れた2サイクルとなっている。
【0038】
以下にトランザクションのプロトコルについて示す。トランザクションのタイブとして、リードトランザクション、ライトトランザクションとも128ビットシングルビート及び、2ビートのトランザクションのみとなる。
【0039】
シングルビートの場合、有効ビートは最初の1ビートであるが、データフェーズは2ビート固定である。シングルビートと2ビートの転送の切り替えは、マスターが発行するy_one_not_twoの発行によって行われる。
【0040】
128ビット以下のアクセスに対しては、すべてシングルトランザクションで行われ、ライト、リードそれぞれに対応するバイトイネーブル信号でアクセスバイトを制御する。トランザクションのサイズにかかわらず、アドレスに対するデータの位置は固定とする。2ビートトランザクションの場合はすべてのバイトイネーブルを有効としてアクセスする必要がある。
【0041】
またアドレスのアラインはラインにあわせてアクセスされる必要がある。
【0042】
(1)ライトトランザクション
以下にライトトランザクションのプロトコルについて示す。図1は、ライトトランザクションを行った場合のバスプロトコルを示した図である。内部に示されるサイクル数は、図1内に示されるサイクルに対応している。
【0043】
サイクル2:
マスターはトランザクションを開始する際に対応するスレーブに対してy_tspを発行する。同時に、y_one_not_two、y_rd_not_wr、y_inst_not_data、y_addrp、y_midpを確定し発行する必要がある。
【0044】
サイクル3:
アクセスを行うスレーブのy_srdypが発行されているため、サイクル2でアドレスフェ−ズのスイッチが確立され、アドレスフェーズが開始され、マスターはy_tspを解除する。y_one_not_two、y_rd_not_wr、y_inst_not_data、y_addrp、y_midpはそのまま保持する必要がある。サイクル2でアドレスフェーズが確立されているため、1サイクル後の本サイクルにおいてデータフェーズのスイッチが確立される。マスターは1ビート目のy_wr_datapとy_wr_byteenpを発行する。
【0045】
サイクル4:
アドレスフェーズのトランザクションが終了したため、アドレスフェーズのスイッチの接続が解放され、y_one_not_two、y_rd_not_wr、y_inst_not_data、y_addrp、y_midpの発行を解除する。また2ビート目のy_wr_datapとy_wr_byteenpを発行する。y_one_not_twoを発行してのトランザクションを行った場合は、本サイクルのy_wr_datapとy_wr_byteenpは無効となる。
【0046】
サイクル5:
データフェーズのトランザクションが終了し、データフェーズのスイッチの接続が解放されライトトランザクションが終了する。
【0047】
サイクル8、9:
マスターが次のトランザクションを開始するため、対応するスレーブに対しy_tspを発行してy_one_not_two、y_rd_not_wr、y_inst_not_data、y_addrp、y_midpを確定させる。スレーブ側はy_srdypが発行されていないため受け入れ状態ではなく、マスターはy_tspを発行しつづける必要がある。
【0048】
サイクル10:
サイクル9においてy_srdypが発行され、アドレスフェーズのスイッチの接続が確立されたため、トランザクションが開始される。
【0049】
サイクル11:
アドレスフェーズのスイッチの接続が解放されているため、y_srdypが発行されていれば、本サイクルで次のトランザクションのy_tspを発行しトランザクションを開始する。
【0050】
サイクル12−15:
ライトトランザクションが連続した場合で、トランザクションの間隔がもっとも狭まった状態においては、ギャップなしでトランザクションを開始することができる。
【0051】
(2)リードトランザクション
以下にリードトランザクションにおけるプロトコルを示す。図2は、リードトランザクションを行った場合のバスプロトコルを示した図である。内部に示されるサイクル数は図2に示されるサイクル数に対応している。
【0052】
サイクル2:
マスターはトランザクションを開始する際に、対応するスレーブに対してyJspを発行する。同時にy_one_not_two、y_rd_not_wr、y_inst_not_data、y_addrp、y_midp、y_rd_byteenpを確定させ発行する必要がある。
【0053】
サイクル3:
アクセスを行うスレーブのy_srdypが発行されているため、サイクル2でアドレスフェーズのスイッチが確立され、アドレスフェーズが開始され、マスターはy_tspを解除する。y_one_not_two、y_rd_not_wr、y_inst_not_data、y_addrp、y_midp、y_rd_byteenpはそのまま保持する必要がある。サイクル2でアドレスフェーズが確立されているため、1サイクル後の本サイクルにおいてデータフェーズのスイッチが確立される。
【0054】
サイクル4:
アドレスフェーズのトランザクションが終了したため、アドレスフェーズのスイッチの接続が解放され、y_one_not_two、y_rd_not_wr、y_inst_not_data、y_addrp、y_midp、y_rd_byteenpの発行を解除する。以上のサイクルで、マスターが発行するり一ドコマンドのトランザクションが終了する。
【0055】
サイクル6:
スレーブはリードリターンデータの準備ができたら、y_rspとy_rmidpを発行してリードリターントランザクションを開始する。y_rmidpはマスターが発行したy_midpを発行する。リードトランザクションがエラーであった場合、y_rd_errorpを発行する。
【0056】
サイクル7:
y_rspの発行を解除する。また、y_rd_errorpを発行した場合は、y_rd_errorpの発行を解除する。1ビート目のリードデータをy_rd_datapに発行する。
【0057】
サイクル8:
y_rmidpの発行を解除し、y_wr_datapに2ビート目のリードデータを発行する。y_one_not_twoを発行してのリードトランザクションであった場合は2ビート目のデータは無効である。
【0058】
サイクル9:
リードトランザクション終了
サイクル9,10:マスターが次のトランザクションを開始するため、対応するスレーブに対しy_tspを発行してy_one_not_two、y_rd_not_wr、y_inst_not_data、y_addrp、y_midpを確定させる。スレーブ側はy_srdypが発行されていないため受け入れ状態ではなく、マスターはy_tspを発行しつづける必要がある。
【0059】
サイクル11:
サイクル10においてy_srdypが発行され、アドレスフェーズのスイッチの接続が確立されたため、トランザクションが開始される。
【0060】
サイクル12:
アドレスフェーズのスイッチの接続が解放されているため、y_srdypが発行されていれば、本サイクルで次のトランザクションのy_tspを発行しトランザクションを開始する。リードトランザクションが連続した場合で、トランザクションの間隔がもっとも狭まった状態においては、ギャップなしでトランザクションを開始することができる。
【0061】
以上のプロトコルを用いることにより、アドレスフェーズと、データフェーズとに分離して、スイッチの接続が切り替えられ、それぞれ解放されるため、複数のマスターから同一のスレーブヘ、あるいは同一のマスターから複数のスレーブに対して、アクセスを並行して発行することができる。
【0062】
(3)複数マスタートランザクション
以下に、複数のマスターからひとつのスレーフに対してトランザクションを行う時の処理手順を、図3を用いて示す。
【0063】
図中のYvはマスター側のバスであり、Yiはスレーブ側のバスでプロトコルは同一である。YvとYiはスイッチを介して接続されている。図3に示される二つのマスターは同サイクルでy_tspを発行するが、スレーブ側からのy_srdypは一方のマスターに対してのみy_srdypを発行し、スイッチの接続を確立する。
【0064】
アクセスを行っているマスターのアドレスフェーズが終了した時点で、もう一方のマスターに対してy_srdypを発行してスイッチの接続を確立し、トランザクションが開始される。リードリターンにおいて、スレーブはy_rmidpを発行してスレーブへとデータを転送する。マスター側はスレーブから発行されるリードリターンデータのうち、そのマスターに割り当てられたマス夕一IDが発行されているリードリターンデータを取り込んで、リードトランザクションを終了する。
【0065】
スレーブ側は、同−マスターからのリードトランザクションであった場合においては、アクセスされた順序どおりにリードデータを返す必要がある。
【0066】
(4)複数スレーブアクセストランザクション
以下に、単一マスターが複数スレーブに対してアクセスを行うトランザクションの処理手順を、図4を用いて示す。
【0067】
マスター側は、アクセスするスレーブに該当するy_tspを発行することにより、スレーブを選択してトランザクションを開始する。
【0068】
マスター側は、アドレスフェーズが終了した時点でスイッチが解放されるため、次のトランザクションを発行することができ、一方のトランザクションのアドレスフェーズ終了時点で、次のアクセスするマスターに対応するy_tspを発行し、トランザクションを開始できる。
【0069】
(5)連続トランザクション
以下に、あるマスターが同一のスレーブに対して連続してトランザクションを発行する時の処理手順を、図5を用いて示す。
【0070】
あるマスターが連続してアクセスを行う場合、y_lockpを発行する。y_lockpが発行されると、スイッチ内のアービターはアドレスフェーズが終了してもスイッチを解放せずに、スイツチの接続を確立させたままの状態を維持する。したがってマスターは、スレーブ側の準備がなされていれば、次のトランザクションを開始することができる。スイッチは、y_lockpが発行されると、その発行が解除されるまでスイッチの接続を維持する。マスターは、連続トランザクションを行う場合、y_lockpを発行している間は同一スレーブに対してのみアクセスをおこなわなければならない。
【0071】
スイッチは、複数マスター、複数スレーブを接続し、マスターからスレーブへのスイッチ接続の機構と、リードリターンデータの転送経路を提供する。
【0072】
マスターからスレーブヘのスイッチ接続機構は、バス調停機構を含んでおり、マスターからのy_tspとスレーブからのy_srdypの発行を見て、スイッチ接続の確立を行う。スイッチ接続の調停は、複数マスタートランザクション、複数スレーブトランザクションで述べたように、マスターの発行するy_tspと該当するスレーブの発行するy_srdypの使用状況により、スイッチの接続の確立を制御する。
【0073】
同時に複数のマスターがスイッチの接続を要求した際には、調停機構により接続を許可するマスターを選択して、y_srdypをマスターに発行する。
【0074】
【発明の効果】
以上説明したように、本発明によれば、アドレスフェーズとデータフェーズのオーパーラップが可能となり、また、リードリクエストがマスターからのアクセスとは別にスイッチングされるため、マスターがリードリターンが戻る前に他のスレーブに対してトランザクションを開始することができる。
【0075】
これにより、複数マスター、複数スレーブとが接続される複数機器の制御装置などにおいて、マスターが複数スレーブに、また複数マスターが同一スレーブに対してトランザクションを同時に発行することが可能となる。
【0076】
従って、遅いデバイスに対してアクセスを行っている際にも、高速デバイスに対してトランザクションを発行できるため、全体の処理性能の低下をすることがなく、高いバンド幅を維持したスイッチの機構を提供することができる。
【0077】
また、シングルトランザクション、バーストトランザクションが同一のシーケンスを行うことで、ハードウェアの制御が単純化される。
【0078】
また、スイッチのリクエスト信号を、トランザクションのスタート信号として用いることにより、要求信号に対する認識信号を受け取る必要がなく、スイッチ要求に対する応答時間を早めることにより、性能の向上が得られる。
【図面の簡単な説明】
【図1】ライトトランザクションを行った場合のバスプロトコルを示した図である。
【図2】リードトランザクションを行った場合のバスプロトコルを示した図である。
【図3】複数マスターから単一スレーブでトランザクションを行った場合のバスプロトコルを示した図である。
【図4】単一マスターから複数スレーブに対してトランザクションを行った場合のバスプロトコルを示した図である。
【図5】マスターが同一スレーブに対して連続トランザクションを行った時のプロトコルを示した図である。
【図6】複数マスターと複数スレーブがスイッチを介し、バスに接続している構造を示した概念図である。

Claims (4)

  1. 複数のマスターポートと複数のスレーブポートとを持つスイッチを備え、前記複数のマスターポートの各々と前記複数のスレーブポートの任意のポートとを接続可能なバスにおいて、アドレス及びコマンドを発行するアドレスフェーズと、ライトデータを発行するデータフェーズとを分離し、該データフェーズが終了する前に、次のトランザクションのアドレスフェーズを発行可能としたことを特徴とするバス制御方法。
  2. 前記アドレス及びコマンドとは別にリードリタ−ン信号を用意して、リードリターンデータを、マスターからのアドレス及びコマンドと分離してスイッチングすることを特徴とする請求項1に記載のバス制御方法。
  3. シングルトランザクションとバーストトランザクション、あるいはリードトランザクションとライトトランザクションにおいて、同一シーケンスでトランザクションが発行されることを特徴とする請求項2に記載のバス制御方法。
  4. トランザクションのスタート信号を、前記スイッチに対するリクエスト信号としても用いることを特徴とする請求項2に記載のバス制御方法。
JP2002285578A 2002-09-30 2002-09-30 バス制御方法 Withdrawn JP2004126646A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2002285578A JP2004126646A (ja) 2002-09-30 2002-09-30 バス制御方法
US10/670,300 US7386634B2 (en) 2002-09-30 2003-09-26 Control method for bus provided with internal switch

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002285578A JP2004126646A (ja) 2002-09-30 2002-09-30 バス制御方法

Publications (1)

Publication Number Publication Date
JP2004126646A true JP2004126646A (ja) 2004-04-22

Family

ID=32278844

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002285578A Withdrawn JP2004126646A (ja) 2002-09-30 2002-09-30 バス制御方法

Country Status (2)

Country Link
US (1) US7386634B2 (ja)
JP (1) JP2004126646A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014505310A (ja) * 2011-01-28 2014-02-27 クアルコム,インコーポレイテッド バス相互接続のためのバスクロック周波数スケーリング、ならびに関係するデバイス、システム、および方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7286853B2 (en) * 2004-03-24 2007-10-23 Cisco Technology, Inc. System and method for aggregating multiple radio interfaces into a single logical bridge interface
JP2006195746A (ja) * 2005-01-13 2006-07-27 Oki Electric Ind Co Ltd マルチレイヤバスシステム
US7246188B2 (en) * 2005-02-10 2007-07-17 Qualcomm Incorporated Flow control method to improve bus utilization in a system-on-a-chip integrated circuit
DE102009027625A1 (de) * 2009-07-10 2011-01-13 Robert Bosch Gmbh Elektrische Schaltung zur Übertragung von Signalen zwischen zwei Mastern und einem oder mehreren Slaves
US20120210028A1 (en) * 2009-11-11 2012-08-16 Zte Corporation Service scheduling system and method, and control device
US8433838B2 (en) * 2010-09-17 2013-04-30 International Business Machines Corporation Remote multiplexing devices on a serial peripheral interface bus

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4979100A (en) * 1988-04-01 1990-12-18 Sprint International Communications Corp. Communication processor for a packet-switched network
DE69203525T3 (de) * 1991-04-26 2002-08-08 Pioneer Electronic Corp Datenübertragungssystem in einem Fahrzeug.
JP3579461B2 (ja) * 1993-10-15 2004-10-20 株式会社ルネサステクノロジ データ処理システム及びデータ処理装置
JP3106872B2 (ja) * 1994-09-02 2000-11-06 株式会社日立製作所 画像処理プロセッサ及びそれを用いたデータ処理システム
US5852718A (en) * 1995-07-06 1998-12-22 Sun Microsystems, Inc. Method and apparatus for hybrid packet-switched and circuit-switched flow control in a computer system
US6247101B1 (en) * 1998-07-01 2001-06-12 Lsi Logic Corporation Tagged access synchronous bus architecture
US6243770B1 (en) * 1998-07-21 2001-06-05 Micron Technology, Inc. Method for determining status of multiple interlocking FIFO buffer structures based on the position of at least one pointer of each of the multiple FIFO buffers
US6608625B1 (en) * 1998-10-14 2003-08-19 Hitachi, Ltd. Three dimensional graphic processor
JP2003186824A (ja) 2001-12-18 2003-07-04 Canon Inc バス使用権優先度調整装置およびシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014505310A (ja) * 2011-01-28 2014-02-27 クアルコム,インコーポレイテッド バス相互接続のためのバスクロック周波数スケーリング、ならびに関係するデバイス、システム、および方法
US9286257B2 (en) 2011-01-28 2016-03-15 Qualcomm Incorporated Bus clock frequency scaling for a bus interconnect and related devices, systems, and methods

Also Published As

Publication number Publication date
US7386634B2 (en) 2008-06-10
US20040123011A1 (en) 2004-06-24

Similar Documents

Publication Publication Date Title
JP2802043B2 (ja) クロック故障検出回路
RU2271566C2 (ru) Архитектура и протокол шины с учетверенной подкачкой
EP2163993B1 (en) Scalable bus structure
US6993612B2 (en) Arbitration method for a source strobed bus
US20100199010A1 (en) Device having priority upgrade mechanism capabilities and a method for updating priorities
JPH05197677A (ja) 高性能非同期バスインタフェース
JP2004126646A (ja) バス制御方法
US7093058B2 (en) Single request data transfer regardless of size and alignment
JP4178268B2 (ja) マイクロコントローラ
JP2007500402A (ja) 周辺装置アクセス保護付きデータ処理システム
US6701407B1 (en) Multiprocessor system with system modules each having processors, and a data transfer method therefor
JP3328246B2 (ja) Dma転送方法およびそのシステム
US8127108B2 (en) Apparatus, system and method for prefetching data in bus system
JP3466728B2 (ja) 情報処理システム及びその方法
US5784580A (en) System and method for communicating between devices
US7017000B2 (en) Data transfer control circuit in system LSI
JP2000285087A (ja) ノード間データ通信方法
JPH0452848A (ja) ホスト・アダプタ
JP2008532188A (ja) スケーラブルバス構造
JP2002007315A (ja) バススイッチ用バスプロトコル
JP2001282707A (ja) バス制御装置及びバス制御方法
JP2004013187A (ja) データ処理装置、およびデータ処理方法
JP2004070711A (ja) 外部バスのバス幅設定方法
JPH09120388A (ja) 情報処理方法及びシステム
JP2000020449A (ja) 演算処理機能付パケット型メモリシステムおよびその制御方法

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20060110