JP3589058B2 - 信号通信装置および多重バス制御装置 - Google Patents
信号通信装置および多重バス制御装置 Download PDFInfo
- Publication number
- JP3589058B2 JP3589058B2 JP37022498A JP37022498A JP3589058B2 JP 3589058 B2 JP3589058 B2 JP 3589058B2 JP 37022498 A JP37022498 A JP 37022498A JP 37022498 A JP37022498 A JP 37022498A JP 3589058 B2 JP3589058 B2 JP 3589058B2
- Authority
- JP
- Japan
- Prior art keywords
- communication
- module
- signal
- communication request
- modules
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1652—Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Multi Processors (AREA)
- Small-Scale Networks (AREA)
Description
本発明は、信号が伝送されるチャネルを複数有する多重バスと、その多重バスを経由して信号を送受信する複数のモジュールとを備えた信号通信装置、および、それら複数のモジュール間の、多重バスを経由する通信の要求を調停する多重バス制御装置に関する。
【0002】
【従来の技術】
近年半導体集積化技術の向上により、LSIのデータ処理速度が飛躍的に速くなってきた。これに伴い、半導体集積回路を実装する配線基板に対して、信号伝送能力向上が求められている。
【0003】
特に最近ではパーソナルコンピュータにおいても、上位機種にあたるサーバタイプのシステムにおいては高速CPUチップを複数備える、いわゆる並列処理アーキテクチャが採用されている。並列処理アーキテクチャ技術の分類に関して、例えば「天野英晴、並列コンピュータ、昭晃堂、pp.6−13」に記載されている。これによると、CPUなどデータ処理を行うモジュールを複数含むシステムを構成する場合、モジュール間の結合方法はバス結合型、スイッチ結合型、結合網型に分類される。このうちバス結合型は、多数のモジュールの結合には適さないが、他に比べて構造がシンプルであり、ハードウェア量が少ない、拡張性にも優れるといったメリットがある。このバス結合型は、パーソナルコンピュータを始めとする商用の計算機や、計算機応用製品において多く用いられている。
【0004】
バス結合においては、接続されるモジュールの処理速度および個数に比例した通信性能が要求される。そこでバス自体を多重化して通信性能の向上を図る多重バスシステムが数多く提案されている。並列処理システムの場合、複数のモジュールが各バスに対してアクセス可能であるため、アクセス競合を解決する手段が必要である。これに関して、例えば特開平5−282242号公報が開示されている。この特開平5−282242号公報においてはアクセス競合を調停するバスアービタを備えており、各バスマスタはバスアービタに対して転送要求を出力する。これに対してバスアービタはまず空いているバス信号線を検索し、バス信号線の使用を許可するバスマスタを決定し、各バスマスタに対して使用許可/不許可を表す信号を送信する。
【0005】
多重バスシステムにおけるバスアービタの具体的な構成例は、例えば「B.ウイルキンソン著、高橋義造監訳、計算機設計技法第2版マルチプロセッサシステム論、プレンティスホール/トッパン、pp.295−297」に記載されている。これを図1を参照して説明を行う。
【0006】
図1は、従来の多重バス制御装置の一例を示す図である。
【0007】
多重バスにおいてはバス競合だけでなく、メモリのような通信先へのアクセス競合が起こる。そこで図1のように2段階のアービタによりこれを解決する。第1段は通信先のアービタ(この例ではメモリアービタ301a,301b)であり、これにより各メモリ302a,302bへのアクセス権が複数のCPU303a,…,303zのうち1つに決定される。メモリアービタはメモリの数だけ必要である。第2段は通常のバスアービタ304であるが、CPUに対してではなく各メモリアービタ301a,301bの出力に対して、バスの使用権を与える。最終的に、各メモリおよび各バスの使用権を持つCPUが決定される。
【0008】
また、並列処理システムのモジュール間結合部の実装においては、多数の接続コネクタと配線を必要とするため、配線の多層化や微細化による通信能力や配線密度の向上が図られてきた。しかし、配線間容量や接続配線抵抗に起因する信号遅延や伝送波形の歪みにより、限界に達しつつある。また動作速度の上昇により電磁ノイズ(EMI:Electromagnetic Interference)も大きな問題となる。
【0009】
このようにデータ処理装置の処理能力は、しばしば配線基板のバスの伝送能力によって制限されるようになってきた。そこで電気式バスの限界を打破するために、光インターコネクションと呼ばれる、システム内光接続技術を用いることが検討されている。光インターコネクション技術に関しては、「内田禎二、第9回回路実装学術講演大会、15C01,pp.201〜202」や「H.Tomimuro, et al., “Packaging Technology for Optical Interconnects”, IEEE Tokyo, No.33, pp.81〜86, 1994」、「和田修、エレクトロニクス1993年4月号、pp.52〜55」に記載されている様に、システムの構成内容により様々な形態が提案されている。この光インターコネクション技術は、電気式以上の高周波動作が可能でありながら電磁ノイズが低減できること、波長・振幅等を用いた多重化により伝送バンド幅を拡張できること、また同時双方向通信が可能である、といったメリットがある。
【0010】
特に空間光伝送技術は、多ポート間の同時通信を可能とし、かつバス信号線の物理的な結線が不要となるため、上述の多重バスシステムとの整合がよい。これに類似した技術が、例えば特開平4−305757号公報に開示されている。特開平4−305757号公報は、空間光伝送ではなく無線伝送によって複数のCPU、メモリ、I/O等のモジュールを結合する技術に関するものであるが、電気式バスに比べると、空間光伝送と同様に、多ポート間の同時通信可能、バス信号線の物理結線不要といったメリットを備えている。特開平4−305757号公報に開示された技術はスペクトル拡散方式によってモジュール間の通信を実現するシステムに関するものであり、バスアービタが任意の2つのモジュール間を接続する機能をもつ。
【0011】
同様に空間光伝送により多ポート間の同時ブロードキャスト通信を実現とする技術が、特開平10−123374号公報に開示されている。平板型の導光路の端面に設置されたポート間での光通信を実現するものであり、入射信号光を屈折作用により分岐して対向する端面に伝送し、ブロードキャストを実現する。
【0012】
図2は、指向伝播特性を有する光信号の伝送の様子を示す模式図である。
【0013】
図2に示すように、ここでの光信号は方向伝播性をもっており、入射光は対向する端面のポートにのみ伝送される。これを電気回路によって等価的に表現したものを図3に示す。この方向伝搬性により、双方向伝搬性を持つ場合は1チャネルしか設定できないような同一の波長、同一の通信帯域等を用いて、相反する方向についてそれぞれ別々のチャネルを設定してそれら相反する方向についての同時通信機能が実現される。
【0014】
【発明が解決しようとする課題】
前述した特開平5−282242号公報に開示されているような従来の多重バスシステムでは、モジュール間での1対1通信の多重実行、もしくはブロードキャスト通信を実現すべくアクセス制御が行われている。しかし各モジュールが全く独立したタスクを実行するマルチタスク環境においては、更に多様な組合せによる通信機能が要求される。この例を図4を参照して説明する。図4は2台のCPUと2台のメモリモジュール間での、各々のアドレス信号線(実線)とデータ信号線(点線)の組合せによる通信バリエーションの例を示す図である。ここでは、以下の(1)〜(5)の通信バリエーションが考えられる。
【0015】
(1)1対1通信による並列アクセス(図4(a))
(2)アドレス、データともマルチキャスト(=1対多)通信により、1CPUから複数メモリに同時書込(図4(b))
(3)アドレスのみ1CPUがマルチキャストし、データは1対1通信で並列アクセス(図4(c))
(4)アドレスのみ1CPUが1メモリに送信し、読み出されたデータを複数CPUにマルチキャスト(図4(d))
(5)アドレスのみ1対1通信により各CPUが各メモリに送信し、データは特定の1CPUが複数メモリに同時書込(図4(e))
またこれら(1)〜(5)が同時に要求されることもある。
【0016】
これらの要求に対し、なるべくバスが遊休しないようなアクセス制御を実現するためには、既に述べたように伝送チャネルへのアクセス競合と同時に、通信先へのアクセス競合も解決する必要がある。特にパイプラインアクセスが可能な高速メモリからの読出を行う場合、CPUからのアドレス送信とメモリからのデータ返信を同時に行うことができる効率良いパイプラインアクセスを実現するためには、あらかじめアドレスの送信先とデータの返信先が他のアクセスと競合しないように各伝送チャネルを割当てておかねばならない。
【0017】
ところが、前述した特開平5−282242号公報においては、通信先へのアクセス競合の解決手段を備えていない。例えば通信相手モジュールがビジーである場合、相手がフリーになるまで待機する必要があり、バスの遊休が生じる。これを防ぐために分割トランザクション法が提案されている。この方法では、相手モジュールがビジーの場合には一旦通信を中断してバス信号線を開放し、相手がフリーとなった後にバス調停からやり直す方法が用いられる。しかしこの方法は相手側もバス要求を行う必要があり、例えばメモリのようなモジュールもバスマスタとするためのインタフェース回路を付加せねばならず、ハードウェア規模が大きくなるという問題がある。
【0018】
これに対し既に説明した図1の調停方法は、通信先のアクセス競合とバス競合の両方の問題に対応したものである。しかしながら各メモリアービタが独立に各メモリへのアクセス権を決定するため、マルチキャスト通信のように複数メモリへのアクセス権を取得することはできない。
【0019】
また、前掲の特開平4−305757号公報はモジュール間の通信が1対1通信に限定されており、上記(2)〜(5)を実現することができない。また通信要求や調停といったアクセス制御を具体的に実現する方法が明らかでない。
【0020】
更に、前掲の特開平10−123374号公報のような、方向伝播性をもつ信号による伝送装置においては、各方向毎にチャネルを割当てることによって稼働率が向上する。上記(1)〜(5)に示したCPUとメモリモジュール間の通信において、例えばメモリへの書込であればCPU→メモリ方向へのチャネルのみにより実現でき、それと相反するメモリ→CPU方向へのチャネルは別の通信に利用できるからである。しかしながら従来の多重バス制御装置においては、伝播方向ごとに独立したチャネルの調停、および各伝播方向先へのアクセス競合の回避といった機能を実現できないという問題がある。
【0021】
更に以上の問題を解決すべく、送信方向先のアクセス競合を検出するためには、通信を要求する時点でアクセス先のアドレスを得る必要がある。従来のバスシステムのバス要求においては、1ポート当り要求を表す信号が1ビットあれば十分であったが、更に送信先のアドレスや返信先のアドレス信号が必要となる。しかもマルチキャストのように、同時に任意の複数宛先指定を可能とすると、さらに信号量が増大する。この結果、アクセス制御をLSIチップにより実現する際、各ポートからの通信要求信号のための入力ピンが著しく増加するという問題がある。
【0022】
本発明は、以上の各種の問題に鑑み、多様なモジュール間通信を実現し、方向伝播性をもつ信号によるアクセス制御にも適用可能な多重バス制御装置、および、多様なモジュール間通信が実現された信号通信装置を提供することを目的とする。
【0023】
【課題を解決するための手段】
上記目的を達成する本発明の信号通信装置は、
信号が伝送されるチャネルを複数有する多重バスと、前記多重バスを経由して信号を送受信する複数のモジュールと、
前記複数のモジュールによる前記多重バスの使用権を調停する調停部とを備え、
前記複数のモジュールそれぞれは、自分が他の1つ以上のモジュールとの間で通信を行なおうとするにあたり、1つ以上の通信相手のモジュールを指定する通信要求情報を前記調停部に送信することにより、該調停部に対し通信要求を行なうものであり、
前記調停部は、受信した通信要求情報に基づいて、該通信要求情報により指定される通信相手のうちの一部の通信相手のみが新たな通信が可能な空き状態にある場合に、先ずは、該通信要求情報を送信したモジュールと、該通信要求情報により指定される通信相手のモジュールのうちの空き状態にあるモジュールとの間の通信を許可し、該通信要求情報を送信したモジュールと、該通信要求情報により指定される通信相手のモジュールのうちの、新たな通信が不能なビジィ状態にあったモジュールとの間の通信は、該モジュールのビジィ状態が解除された後で改めて許可するものであることを特徴とする。
【0024】
また、上記目的を達成する本発明の多重バス制御装置は、信号が伝送されるチャネルを複数有する多重バスを利用して信号を送受信する複数のモジュールそれぞれからの、1つ以上の通信相手のモジュールを指定する通信要求情報を受信することにより、各モジュールからの通信要求を受け付ける通信要求受付部と、
前記通信要求受付部により受信された通信要求情報に基づいて、該通信要求情報により指定される通信相手のうちの一部の通信相手のみが新たな通信が可能な空き状態にある場合に、先ずは、該通信要求情報を送信したモジュールと、該通信要求情報により指定される通信相手のモジュールのうちの空き状態にあるモジュールとの間の通信を許可し、該通信要求情報を送信したモジュールと、該通信要求情報により指定される通信柑手のモジュールのうちの、新たな通信が不能なビジィ状態にあったモジュールとの間の通信は、該モジュールのビジィ状態が解除された後で改めて許可するものであることを特徴とする調停部とを備えたことを特徴とする。
【0026】
【発明の実施の形態】
以下、本発明の実施形態について説明する。
【0027】
本発明の特徴は多重バス制御装置の構成にあるが、以下では先ず全体を把握するために、本発明の信号通信装置の各種実施形態から先に説明する。それら各種実施形態中の多重バス制御装置は本発明の信号通信装置にいう調停部に相当するものである。信号通信装置の実施形態の説明においてはこの多重バス制御装置の内部構成については触れず、本発明の多重バス制御装置の実施形態の説明に譲る。
【0028】
図5は本発明の信号通信装置の第1の実施形態を表すブロック図である。
【0029】
本実施形態は、複数の伝送チャネル501(伝送チャネル501a,501b,…,501c;以下、例えば501と501a,501b,…,501cのように、a,b,…,c等の添字を付した符号によりあらわされる複数の要素を総称して指し示すとき、あるいはそれらの複数の要素のうちの任意の1つを指し示すときは、それらの添字を省いた符号を用いる。)から成る多重バス、複数のモジュール51、複数の送信デマルチプレクサ52、複数の受信マルチプレクサ53、多重バス制御装置50より構成される。多重バス制御装置50については後述する。
【0030】
多重バスは複数の伝送チャネル501から構成され、各伝送チャネルにおいて独立に通信を行うことができる。この多重バスは、電気信号線により実装されたバスを複数備えたものでもよいし、光伝送や無線伝送における波長多重、空間多重、振幅多重、方向多重、時分割多重、偏光多重(光伝送のみ)など、任意の多重方式による多重通信媒体を用いることができる。
【0031】
モジュール51はデータ送信用の信号線502と、データ受信用の信号線503とを介してモジュール間通信を行う。ここでモジュールとはCPU、メモリ、I/Oインタフェースなど、一般にバスに接続可能な装置を全て含む。
【0032】
送信デマルチプレクサ52は、伝送チャネル501のうち1つを多重バス制御装置50から指示される送信チャネル番号110に従って選択し、モジュール51からの送信用の信号線502と接続する。
【0033】
受信マルチプレクサ53は、伝送チャネル501のうち1つを多重バス制御装置50から指示される受信チャネル番号111に従って選択し、その選択した伝送チャネルをモジュール51の受信用の信号線503と接続する。
【0034】
通信を起動する場合、まずモジュール51から通信要求信号100が多重バス制御装置50に送信されると調停が開始される。調停結果は通信許可信号101、送信チャネル番号110、受信チャネル番号111であり、各々がモジュール51、送信デマルチプレクサ52、受信マルチプレクサ53に入力される。通信許可信号101により通信許可を受けた各モジュール51は、送信デマルチプレクサ52と受信マルチプレクサ53により各々選択された伝送チャネルを用いて、次のサイクルからデータ転送を開始することができる。この図5に示す信号通信装置によれば、図4に示したような複数の送信先と返信先との同時通信が、多重バス上で実現される。
【0035】
図6は本発明の信号通信装置の第2の実施形態を表すブロック図である。
【0036】
本実施形態は、光伝送媒体64、複数のモジュール51、複数の発光装置62、複数の受光装置63、多重バス制御装置50より構成される。多重バス制御装置50については後述する。また、モジュール51については本発明の信号通信装置の第1の実施形態(図5参照)の場合と同様であるため、説明を省略する。
【0037】
光伝送媒体64は、信号光を入射または出射するためのアクセスポートを複数備えており、媒体内部を光信号を伝送させて多重通信を行う。この光伝送媒体64としては、例えば導光路のような空間光伝送媒体が用いられる。多重通信方法として波長多重、空間多重、振幅多重、偏光多重、時分割多重などを適用できる。
【0038】
発光装置62は複数備えられており、それぞれ対応する光伝送媒体64に接続される。光伝送媒体64において使用可能な伝送チャネルより少なくとも1つを発光チャネルとして選択し、光伝送媒体64に対して信号光を入射する。ここでの信号光量は、モジュール51からの送信用の信号602から決定する。具体的には発光ダイオード等の光電変換デバイスを用いることができる。
【0039】
受光装置63も複数備えられており、それぞれ対応する光伝送媒体64に接続される。光伝送媒体64からの出射光のうち、少なくとも1チャネルを受光チャネルとして選択して取り込む。出力される信号603の値は、選択された受光チャネルにおける受光量から決定する。具体的にはフォトダイオード、CCD等の電光変換デバイスを用いることができる。
【0040】
モジュール51は発光装置62と受光装置63のうち、少なくとも1つに接続する。
【0041】
通信を起動する場合、まずモジュール51から通信要求信号100が多重バス制御装置50に送信されると調停が開始される。調停結果は通信許可信号101、送信チャネル番号110、受信チャネル番号111であり、各々がモジュール51、発光装置62、受光装置63に入力される。発光装置62と受光装置63により各々選択された伝送チャネルを用いて、通信許可を受けた各モジュール51は次のサイクルからデータ転送を開始することができる。この図6に示す第2の実施形態では、図4に示したような複数の送信先と返信先との同時通信が、光伝送媒体64上で実現される。
【0042】
図7は本発明の信号通信装置の第3の実施形態を表すブロック図である。
【0043】
本実施形態は、複数の伝送チャネル510から成る多重リングバス、複数のモジュール51、複数の送信デマルチプレクサ52、複数の受信マルチプレクサ53、多重バス制御装置50より構成される。多重バス制御装置50については後述する。また、モジュール51と送信デマルチプレクサ52と受信マルチプレクサ53については、図5を参照して説明した、本発明の信号通信装置の第1の実施形態と同様であるため、説明を省略する。
【0044】
多重リングバスは複数の伝送チャネル510から構成され、各伝送チャネルにおいて独立に通信を行うことができる。この多重リングバスは、電気信号線により実装されたバスを複数備えたものでもよいし、光伝送や無線伝送における波長多重、空間多重、振幅多重、時分割多重、偏光多重(光伝送のみ)などの多重通信媒体を用いたものでもよい。図5における伝送チャネル500との違いは、指向伝播性を備えた信号線により、複数の送信デマルチプレクサ52と受信マルチプレクサ53がトーラス状に接続されている点である。
【0045】
通信を起動する場合、まずモジュール51から通信要求信号100が多重バス制御装置50に送信されると調停が開始される。調停結果は通信許可信号101、送信チャネル番号110、受信チャネル番号111であり、各々がモジュール51、送信デマルチプレクサ52、受信マルチプレクサ53に入力される。送信デマルチプレクサ52と受信マルチプレクサ53により各々選択された伝送チャネルを用いて、各モジュール51は次のサイクルからデータ転送を開始することができる。この図7に示す第3の実施形態では、図4に示したような複数の送信先と返信先との同時通信が、指向伝播性をもつ多重リングバス上で実現される。
【0046】
図8は本発明の信号通信装置の第4の実施形態を表すブロック図である。
【0047】
本実施形態は、複数の伝送チャネル900から成る第1の多重送信バス、同じく複数の伝送チャネル901から成る第2の多重送信バス、第1のモジュール群51a〜51bと第2のモジュール群51c〜51d、複数の送信デマルチプレクサ52、複数の受信マルチプレクサ53、多重バス制御装置50より構成される。多重バス制御装置50については後述する。またモジュール51については本発明の信号通信装置の第1の実施形態(図5参照)と同様であるため、説明を省略する。
【0048】
第1の多重送信バスは複数の伝送チャネル900から構成され、各伝送チャネルにおいて独立に送信を行うことができる。この第1の多重送信バスを構成する複数の伝送チャネルは、いずれも信号を一方向にのみ伝送するものとする。電気信号線により実装されたバスを複数備えたもの、または光伝送や無線伝送における波長多重、空間多重、振幅多重、時分割多重、偏光多重(光伝送のみ)などを用いた多重通信媒体を用いることができる。第2の多重送信バスも第1の多重送信バスと同じ機能を備える。すなわち、本実施形態では、複数の伝送チャネル900,901は、それぞれが信号伝送方向について指向性を持っている。
【0049】
複数のモジュール51の各々は第1のモジュール群と第2のモジュール群のいずれかに属し、両モジュール群間の通信のみを行う。即ち、両モジュール群は第1の多重送信バスおよび第2の多重送信バスを介して相互結合されている。第1のモジュール群51a〜51bは、送信用に第1の多重送信バス、受信用に第2の多重送信バスを使用する。これに対し第2のモジュール群51c〜51dは、送信用に第2の多重送信バス、受信用に第1の多重送信バスを使用する。
【0050】
送信デマルチプレクサ52a〜52bは、第1のモジュール群51a〜51bの送信用の信号502a〜502bを各々入力し、伝送チャネル900a〜900bより1つを選択して接続する。ここでの選択は多重バス制御装置50から指示される送信チャネル番号110a〜110bに従って実行される。
【0051】
送信デマルチプレクサ52c〜52dは、第2のモジュール群51c〜51dの送信用の信号502c〜502dを各々入力し、伝送チャネル901a〜901bより1つを選択して接続する。ここでの選択は多重バス制御装置50から指示される送信チャネル番号110c〜110dに従って実行される。
【0052】
受信マルチプレクサ53a〜53bは、伝送チャネル901a〜901bより1つを選択し、第1のモジュール群51a〜51bの受信用の信号503a〜503bと各々接続する。ここでの選択は多重バス制御装置50から指示される送信チャネル番号111a〜111bに従って実行される。
【0053】
受信マルチプレクサ53c〜53dは、伝送チャネル900a〜900bより1つを選択し、第2のモジュール群51c〜51dの受信用の信号503a〜503bと各々接続する。ここでの選択は多重バス制御装置50から指示される送信チャネル番号111c〜111dに従って実行される。
【0054】
通信を起動する場合、まずモジュール51から通信要求信号100が多重バス制御装置50に送信されると調停が開始される。調停結果は通信許可信号101、送信チャネル番号110、受信チャネル番号111であり、各々がモジュール51、送信デマルチプレクサ52、受信マルチプレクサ53に入力される。送信デマルチプレクサ52と受信マルチプレクサ53により各々選択された伝送チャネルを用いて、各モジュール51は次のサイクルからデータ転送を開始することができる。この図8に示す第4実施形態では、図4に示したような複数の送信先および返信先との同時通信が、指向伝播性をもつ多重バスによる相互結合網上で実現される。
【0055】
図9は本発明の信号通信装置の第5の実施形態を表すブロック図である。
【0056】
本実施形態は、光伝送媒体65、複数のモジュール51、複数の発光装置62、複数の受光装置63、多重バス制御装置50より構成される。多重バス制御装置50については後述する。モジュール51については本発明の信号通信装置の第1の実施形態(図5参照)と同様であり、発光装置62と受光装置63については本発明の信号通信装置の第2の実施形態(図6参照)と同様であるため、いずれも説明を省略する。
【0057】
光伝送媒体65は、信号光を入射または出射するためのアクセスポートを複数備えており、各アクセスポートは第1のアクセスポート群と第2のアクセスポート群のいずれかに属する。図9においては、発光装置62a〜62b、受光装置63a〜63bが接続されているのが第1のアクセスポート群、発光装置62c〜62d、受光装置63c〜63dが接続されているのが第2のアクセスポート群であるとする。媒体内部に光信号を伝送することにより、両アクセスポート群間の多重通信を行う。即ち、両アクセスポート群は光伝送媒体65を介して相互結合されている。この光伝送媒体65は具体的には例えば平板導光路であって、相対する端面に設けられたアクセスポート間で通信可能な空間光伝送媒体が用いられている。多重通信方法としては波長多重、空間多重、振幅多重、偏光多重、時分割多重、およびそれらの組合せなどを用いることができる。
【0058】
通信を起動する場合、まずモジュール51から通信要求信号100が多重バス制御装置50に送信されると調停が開始される。調停結果は通信許可信号101、送信チャネル番号110、受信チャネル番号111であり、各々がモジュール51、発光装置62、受光装置63に入力される。発光装置62と受光装置63により各々選択された伝送チャネルを用いて、各モジュール51は次のサイクルからデータ転送を開始することができる。この図9に示す第5実施形態においては、図4に示したような複数の送信先と返信先との同時通信が、指向伝播性をもつ光伝送媒体による多重バス上で実現される。
【0059】
次に、図5〜図9に示した本発明の信号通信装置の各種実施形態における多重バス制御装置50の実施形態、すなわち本発明の多重バス制御装置の実施形態について説明する。
【0060】
図10は本発明の多重バス制御装置の第1の実施形態を表すブロック図である。
【0061】
本実施形態は、通信要求レジスタ10、レジスタ更新部11、リソースレジスタ12、調停結果レジスタ13、通信先競合判定部14、最優先要求選択部15、チャネル割当部16、および制御部17より構成される。これらのうち、通信要求レジスタ10は、本発明の多重バス制御装置にいう通信要求受付部の一例に相当し、その通信要求レジスタ10を除く各要素の複合体が、本発明の多重バス制御装置にいう調停部の一例に相当する。この図10に示す実施形態では、多重バスに接続される各モジュールからの通信要求信号100を入力とし、各通信同士のチャネル競合および通信先の競合が起こらないように通信許可信号101、送信チャネル番号110、受信チャネル番号111を生成して出力する。ここでモジュールとはCPU、メモリ、入出力インタフェースなど、一般にバスに接続可能な装置を全て含む。
【0062】
図11は、本実施形態の入力信号である通信要求信号100の内訳を示す図である。この通信要求信号100は通信要求レジスタ10に格納される。各行が各モジュールから送信されてきた通信要求信号100を表しており、要求の有無を表す要求フラグ、信号を送信したい送信先モジュールを表す送信先モジュール番号、その送信先モジュールから送信された信号を受信してそれに対する返信を行う返信元モジュールを表す返信先モジュール番号、その返信元モジュールからの返信を受信する返信先モジュールを表す返信先モジュール番号、優先度、そして通信終了を表す終了フラグより構成される。
【0063】
要求フラグは、各モジュールが通信要求する際に必ず有効とする。図11では値1が有効、0が無効を表しているが、各値の設定は逆であっても構わない。図11は1番と2番のモジュールのみが通信要求を行った例である。例えばN番のモジュールは通信要求を行っていないため要求フラグは0であり、そのN番のモジュールに関する他の信号は無効(図のドントケア)となる。
【0064】
送信先と返信先は、いずれも複数モジュールを指定することができ、これによりマルチキャスト通信を指定できる。図11では、送信先のモジュールのうちビットが1であるものに対して通信要求が行われているが、ビットの値の設定は逆でも構わない。返信先に関しても同様である。返信元モジュールは必ず1つであり、かつ送信先モジュールとして指定されたものに限定される。
【0065】
優先度は調停処理において通信要求を選択する基準となるものである。本実施形態では値が大きいものを優先順位が高いものとして説明を行うが、逆に値が小さいものを優先順位が高いと定義しても構わない。優先度の設定方法としては、例えば次の方法がある。
【0066】
(1)オペレーティングシステムが管理しているタスクの優先度を用いる。例えばユーザプログラムのタスクよりも、オペレーティングシステムが実行するタスクにおける通信の優先度を高く設定し、緊急性の高いタスクを優先処理する。
【0067】
(2)各タスクの処理終了締切までの時間を予め算出しておき、短いものほど高い優先度を設定する。
【0068】
(3)例えば動画のような、一般に転送量の多いデータ通信を行うタスクほど高い優先度を設定する。
また以上の方法を組合せた設定も可能である。
【0069】
図11を見るとわかるように、モジュール1番はモジュール2番との通信を要求しているが、これと同時にモジュール2番はモジュール1番とモジュールN番へのマルチキャスト通信を要求し、これらを同時に実行することは不可能である。この場合、モジュール1番からの要求の優先度は“2”であるが、モジュール2番からの要求の優先度は“1”であるため、モジュール1番からの通信要求のみが許可される。これが図10に示す調停結果信号122によって表現されている。調停結果信号122については後述する。
【0070】
終了フラグは、各モジュールが通信を終了したら有効とする。図11では値1が有効、0が無効を表しているが、各値の設定は逆であっても構わない。
【0071】
図12は、本実施形態の出力信号である通信許可信号101、送信チャネル番号110、受信チャネル番号111の内訳を示す図である。各行が各モジュールからの通信要求に対する調停結果と、次サイクルからの各モジュールの送信可否と受信可否、更に使用できる送信チャネル番号と受信チャネル番号を表わす。送信チャネル番号と受信チャネル番号は複数を指定することも可能である。これは1モジュールによる複数のチャネル使用を表わしており、可変バンド幅バスを実現することができる。もちろん同時には1チャネルのみ指定する方法でも構わない。調停結果のビットは1が可、0が不可を表しているが、逆であっても構わない。
【0072】
図12の送信チャネル番号と受信チャネル番号は、図12におけるモジュール1番の通信要求に対応して設定される。即ちモジュール1番からモジュール2番への送信用にチャネル1、それに対するモジュール2番からモジュール1番への返信用にチャネル2を用いるように指定されている。
【0073】
注意すべきこととして、モジュール2番の調停結果は不可(0)であるが送信可否は可(1)となっている。これは、モジュール2番がモジュール1番からの通信要求の返信元として指定されているためである。このように、通信要求が不可となったモジュールであっても、次サイクルにおいて送信や受信を行うことがあり得る。
【0074】
再び図10を参照して説明を行う。
【0075】
通信要求レジスタ10は、通信を行う各モジュールから送信されてきた通信要求信号100を入力して保持し、通信先モジュール番号125、優先度信号127、要求開始終了信号120を各々出力する(図11参照)。通信先モジュール番号125は、送信先、送信先、返信元、および返信先の各モジュール番号から構成される信号である。優先度信号127は各通信要求の優先度を表す信号である。要求開始終了信号120は要求フラグと終了フラグから構成される信号である。
【0076】
リソースレジスタ12は、レジスタ更新部11より出力された信号121を格納する。信号121は伝送チャネルのうち未使用であるものの番号と、現時点において通信可能であるモジュールの番号を表し、リソースレジスタ12はこれらを保持して信号123として出力する。
【0077】
調停結果レジスタ13は、レジスタ更新部11より出力される調停結果信号122を格納し保持する。
【0078】
図13は調停結果レジスタ13に保持される調停結果信号の内訳を示す図である。図13では各行が各モジュールからの通信要求の有無を表す要求フラグと、その調停の結果を表す許可フラグから成る。図13の要求フラグは、図11の要求フラグがレジスタ更新部11によりコピーされたものである。各々値1が有効、0が無効を表しているが、各値の設定は逆になっていても構わない。
【0079】
再び図10を参照して説明を行う。
【0080】
通信先競合判定部14は、リソースレジスタ12の出力信号123、調停結果レジスタ13の出力信号124、通信要求レジスタ10から出力される通信先モジュール番号125を照合した結果を、競合フラグ126として出力する。競合フラグ126は各送信元モジュール毎に1ビットずつ設けられおり、通信先競合がある場合に値1、ない場合に値0をとるものとする。すなわち、各モジュールに対応して、そのモジュール(自分)が通信要求を行ない、その通信要求において通信相手として指定したモジュールが他の通信と競合していたときに自分に対応して値1となる。尚、ここでの各値の設定は逆になっていても構わない。
【0081】
具体的には、まず信号124(図10参照)より要求フラグが1であるが許可フラグが0である通信要求を選択し、対応する通信先を通信先モジュール番号125(図11参照)から選択する。次に、各々の送信先と返信先の各モジュール番号を信号123と照合して競合判定を行い、通信不可能な通信要求に対応する競合フラグを1、それ以外を0とし信号126として出力する。
【0082】
最優先要求選択部15は、競合フラグ126と優先度信号127を入力し、競合フラグが0であるものから優先度の値が最大である通信要求を1つ求め、最優先要求信号128として出力する。
【0083】
図14は、最優先要求選択部15の構成例を表す図であり、以下図14を参照して説明を行う。
【0084】
選択部73は、各モジュールから与えられた優先度を示す優先度信号127のうち、競合フラグ126が0である通信要求に対応したものを選び、信号171として出力する。競合フラグ126が1に対応したモジュールに関しては、信号171は値を0として出力する。
【0085】
最大値検出部74は信号171より最大値を求め、その最大値に対応するインデックスを信号128として出力する。このインデックスは優先度最大である通信要求を行ったモジュール番号である。
【0086】
再び図10を参照して説明を行う。
【0087】
チャネル割当部16は、最優先要求信号128と通信先モジュール番号125を入力し、最優先要求信号128に対応する送信元モジュールと送信先モジュール、返信元モジュールと返信先モジュールに対して各々空き伝送チャネル番号を割り当て、その結果を外部に出力する。具体的には、図12に示す信号101、110、111を作成する。また、それに伴うリソースレジスタ12と調停結果レジスタ13の更新を、信号129によってレジスタ更新部11に対して指示する。
【0088】
レジスタ更新部11は、通信要求レジスタ10とチャネル割当部16の各出力信号に従って、リソースレジスタ12と調停結果レジスタ13の各内容を更新する。すなわち、レジスタ更新部11は、チャネル割当部16によって新規に割り当てられたチャネル番号と各モジュール番号を信号129により入力し、リソースレジスタ12の更新を信号121により行う。さらに、このレジスタ更新部11は、チャネル割当部16により新規に通信を許可された通信要求に対応する調停結果レジスタ13のアドレスを信号129より入力し、信号122によって調停結果レジスタ13の対応する許可フラグ(図13)を1とする。更にレジスタ更新部11は、通信開始終了信号120により通信要求レジスタ10を定期的に監視するとともに、信号122により調停結果レジスタ13の内容を読み出して、それらの比較を行い、新規の通信要求および通信終了の有無を検出する。もし通信終了が検出されたならば、その通信で用いられていたチャネル番号と各モジュール番号をビジーからフリーに変更すべく、信号121によりリソースレジスタ12を更新するとともに、信号122により、調停結果レジスタ13の対応する許可フラグおよび要求フラグの値を0とする。
【0089】
また通信開始終了信号120より新規の通信要求が検出された場合、信号122によって要求フラグ(図11)の値を調停結果レジスタ13にコピーする。
【0090】
制御部17は、要求開始終了信号120により新規の通信要求の有無を判定し、新規の通信要求がなかった場合、チャネル割当部16の出力信号を更新しないように、信号131により指示を行う。
【0091】
またリソースレジスタ12に保持された信号123と調停結果レジスタ13に保持された信号124より、更にチャネル割当が可能かどうかを判定する。例えば以下の条件のいずれか1つでも満たせば、新規のチャネル割当は不可能と判定される。この場合もチャネル割当部16の出力信号を更新しないように、信号131により指示を行う。
【0092】
(1)リソースレジスタ12の出力信号123を参照し、空いている伝送チャネルは無いと判定される。
【0093】
(2)調停結果レジスタ13の出力信号124を参照し、要求フラグが1で許可フラグが0である通信要求は無いと判定される。
【0094】
もし(1)と(2)のいずれも満たしていないのであれば、制御部17は信号130と信号131により調停処理を再度指示する。
【0095】
図15は本発明の多重バス制御装置の第2の実施形態を表すブロック図である。
【0096】
本実施形態は、第2の通信要求レジスタ70と通信先アドレスレジスタファイル71を含んで構成される。これら以外の構成要素は第1の実施形態と同様であるため、説明を省略する。
【0097】
本実施形態は、多重バスに接続される各モジュールからの第2の通信要求信号700を入力とし、各通信同士のチャネル競合および通信先の競合が起こらないように通信許可信号101、送信チャネル番号110、受信チャネル番号111を生成して出力する。
【0098】
ここで、この図15に示す多重バス制御装置を図5〜図9に示す信号通信装置の各実施形態の多重バス制御装置50として採用したときは、各モジュール51からは、多重バス制御装置50に向けて、図10,図11を参照して説明した通信要求信号100に代わり、以下に説明する第2の通信要求信号700が入力される。
【0099】
図16は、本実施形態の入力信号である第2の通信要求信号700の内訳を示す図、図17は、通信先アドレスレジスタファイル71の内訳を示す図である。以下図16,図17を参照し、本実施形態の入力信号と通信先アドレスレジスタファイル71の説明を行う。
【0100】
図16の各行が各モジュールから個々に与えられる第2の通信要求信号700を表しており、通信先アドレスレジスタファイル71の読み出しアドレス、要求の有無を表す要求フラグ、終了フラグより構成される。要求フラグと終了フラグに関しては図11と同様であるため、説明を省略する。通信先アドレスレジスタファイルアドレスによって、通信先アドレスレジスタファイル71がアクセスされ、各モジュールの通信先アドレスが並列に読み出される。
【0101】
図17に示す通信先アドレスレジスタファイル71の内容は図11に示した通信要求信号100のうち、送信先、返信元、返信先、優先度のフィールドを取り出したものに相当する。図10を参照して説明した第1の実施形態においては、これらは通信要求信号100に含まれており、通信要求時に各モジュールから与えられるのに対し、本実施形態においては通信要求の前に予め通信先アドレスレジスタファイル71に格納しておく点が異なる。この信先アドレスレジスタファイル71は、本発明にいう、対応テーブルを記憶しておく記憶部の一例に相当する。この場合、特定の通信先に対して頻繁に通信する場合において、通信要求に必要な信号量が削減される。
【0102】
再び図15を参照して説明を行う。
【0103】
第2の通信要求レジスタ70は第2の通信要求信号700を入力して保持し、要求フラグと終了フラグを要求開始終了信号120として出力するとともに、通信先アドレスレジスタファイル71の読み出しアドレスを信号701として出力する。要求開始終了信号120は第1の実施形態(図10参照)の場合と同じである。
【0104】
通信先アドレスレジスタファイル71は信号701をアドレスとしてアクセスされ、各モジュールの通信先アドレスと優先度を並列に読み出し、それぞれ信号125と信号127に出力する。信号125と信号127についても第1の実施形態の場合と同じである。
【0105】
図18は本発明の多重バス制御装置の第3の実施形態を表すブロック図である。本実施形態は、図15に示す第2の実施形態における最優先要求選択部15に代わり、第2の最優先要求選択部72が備えられている点以外は第2の実施形態と同様である。
第2の最優先要求選択部72は、競合フラグ126、優先度信号127、および調停結果レジスタ13の出力信号124を入力し、競合フラグが0であるものから優先度の値が最大となる通信要求を1つ求め、最優先要求信号128として出力する。
【0106】
図19は、第2の最優先要求選択部72の構成例を表すブロック図である。本構成例は、カウンタ75以外の構成要素は、第1の実施形態(図10参照)における最優先要求選択部15の、図14に示す構成例と同様であるため、説明を省略する。
【0107】
カウンタ75は、通信要求を行う全てのモジュールそれぞれに対応して設けられる。これらのカウンタ75は、選択部73から出力される信号171の値を初期値としてロードした値、もしくは現在の値をインクリメントした値を信号172に出力する。これらのカウンタ75では、信号124と信号173より次のようにロード、インクリメント、状態維持が選択される。
【0108】
(1)要求フラグ=1、かつ、許可フラグ=0、かつ、最大値検出部74で選ばれなかった(信号173より判定する)→ インクリメント
(2)要求フラグが0から1に変化→ ロード
(3)それ以外→ 状態維持
(1)は要求が許可されていない状態、(2)は新規要求を行った状態に各々対応する。
【0109】
通信要求を行ったが他の通信要求との競合により通信不可となった場合、その通信要求と、後から投入される新規通信要求との間で再び調停が行われる。しかし次の調停においては前回の調停で通信不可となった通信要求は優先度の値がインクリメントされて高くなるため、競合に勝って伝送チャネルを取得する確率が高まる。こうすることにより、特定のモジュールの通信要求のみが受け入れられるという事態を避けることができ、デッドロックを起こすことを防ぐことができ、全モジュールがほぼ均等に多重バスを利用することができる。
【0110】
図20は本発明の多重バス制御装置の第4の実施形態を表すブロック図である。本実施形態は、バス制御を行うCPU30、メモリ31、第2の通信要求レジスタ70、チャネル割当レジスタ33より構成され、各々は専用のバス300により相互に結合されている。この図20に示す多重バス制御装置は、LSIで実現されており、この多重バス制御装置は本発明の多重バス制御用LSIの一実施形態に相当する。
【0111】
第2の通信要求レジスタ70は、入力端子310を経由して入力される各モジュールからの第2の通信要求信号700を入力して保持し、バス300に対して出力する。
【0112】
チャネル割当レジスタ33は、図15に示す第2の実施形態におけるチャネル割当部16に相当するものであり、バス300より書き込まれる調停結果を保持し、出力端子311を経由して通信許可信号101、送信チャネル番号110、受信チャネル番号111を出力する。
【0113】
メモリ31には通信先テーブル、リソーステーブル、調停結果テーブルが格納されている。各々の内容は、図15に示す第2の実施形態における通信先アドレスレジスタファイル71、リソースレジスタ12、調停結果レジスタ13の各内容と同様である。
【0114】
CPU30は、バス300を介してメモリ31、通信要求レジスタ32、チャネル割当レジスタ33へのアクセスを行い、図21に示すフローチャートに従って処理を行う。図21に示すフローチャート中の許可フラグ、要求フラグ、競合フラグは図10,図15,図18に示す各実施形態に含まれるものと同様である。
【0115】
本実施形態では、多重バスの制御をLSIチップ内で動作するソフトウェアにより実現することができる。
【0116】
以下、図21に示すフローチャートについて説明する。この図21に示すフローチャートは、図15に示す第2の実施形態と同様の機能をソフトウェアで実現したものであり、その機能自体は、前述の説明と重複するため、ここでは、この図21のフローチャートについては簡単な説明にとどめる。
【0117】
図20に示す第2の通信要求レジスタ70は、各モジュールからの第2の通信要求信号70を随時受け付けてその内部に保存する。
【0118】
図21に示すフローチャートのステップ(a)では、その通信要求レジスタ70の内容(図16参照)をこのソフトウェア内部に読み込み、ステップ(b)において、新たに終了した通信が存在するか否かが判定される。新たな通信終了が存在しなかったときはステップ(e)に進む。
【0119】
新たな通信終了があったときは、ステップ(c)に進み、リソーステーブルが更新される。具体的には、今回終了した通信で用いられていたチャネルおよびモジュールを空きチャネル、および空きモジュールとして登録する。次いでステップ(d)において調停結果テーブル(図13参照)の対応する要求フラグ、許可フラグが値0に更新される。
【0120】
ステップ(e)では通信要求レジスタの内容から通信要求の有無が判定される。新規の通信要求がなかったときはステップ(l)に進み、これまでのチャネル割当結果をそのまま保持する。
【0121】
ステップ(e)において新規の通信要求が有ると判定されると、ステップ(f)に進み、要求フラグ=1、かつ許可フラグ=0の要求が有るか否か判定される。要求フラグ=1、かつ許可フラグ=0とは、未だ通信許可になっていない通信要求であることを意味する。このような要求がないときは、ステップ(l)に進む。一方、このような要求があった時は、次にステップ(g)に進み、空きチャネルの有無が判定される。空きチャネルが存在しなかったときはに進む。空きチャネルが存在していたときは、ステップ(h)において通信先テーブルを照合して通信先競合をチェックし、ステップ(i)において競合する通信要求に対応する競合フラグを値1とし、ステップ(j)において競合フラグ=0かつ許可フラグ=0かつ要求フラグ=1の通信要求の中から1つを選択し、ステップ(k)において、選択された通信要求に空きチャネルを割り当てて、リソーステーブルを更新し、さらに調停結果テーブルを更新する。ステップ(l)では、今回の新たなチャネル割当結果をチャネル割当レジスタ33(図2参照)に書き込んで全モジュールにその新たなチャネル割当結果を通知する。
【0122】
図22は、図20に示す多重バス制御用LSIの信号入力部分の模式図、図23は、図10に示す多重バス制御装置をLSIで実現したことを考えた場合の、そのLSIの信号入力部分を示す模式図である。
【0123】
ここでは、入力端子310を構成する入力ピンの本数について検討する。ここでは、以下のような前提を置く(図11と図16を参照)。
【0124】
(1)例えば図9に示すように、モジュール51が2つのモジュール群51a〜51b;51c〜51dに分けられ、相手の群とのみ通信が可能なように構成され、各モジュール群にはそれぞれ4つのモジュールが存在する(合計8ポート)。
【0125】
(2)要求フラグは、ポート当り1ビットで計8ビット。
【0126】
(3)優先度は、ポート当り2ビットで計16ビット。
【0127】
(4)通信先アドレスは、ポート当り送信先4ビット、返信元2ビット、返信先4ビットで計80ビット。
【0128】
(5)通信先アドレスRF(=レジスタファイル)アドレスは、ポート当り1ビットで計8ビット。
【0129】
このような前提を置いたとき、入力端子310を構成する入力ピンの本数は、図22の場合は、(2)+(5)=16ピン、図23の場合は、(2)+(3)+(4)=104ピンとなり、通信先アドレスレジスタファイル71を備えた、本発明の多重バス制御用LSIの実施形態の方が、入力ピンの数を大幅に削減できることがわかる。
【0130】
図24は、本発明の多重バス制御装置の第5実施形態を表すブロック図、図25は、本実施形態の出力信号である通信許可信号101、送信チャネル番号110、受信チャネル番号111の内訳を示す図、図26は、調停結果レジスタ13に保持される調停結果信号の内訳を示す図である。図25,図26は、図10〜図14を参照して説明した第1実施形態における、それぞれ図12,図13にっ相当する図である。
【0131】
図11〜図14を参照して説明した第1実施形態は、受信した通信要求情報に基づいて、その通信要求情報により指定される通信相手全てが新たな通信が可能な空き状態にある場合に、その通信要求情報を送信したモジュールと、その通信要求情報により指定される通信相手のモジュールとの間の通信を許可するものであるが、ここで説明する第5実施形態は、受信した通信要求情報に基づいて、その通信要求情報により指定される通信相相手のうちの一部の通信相手のみが新たな通信が可能な空き情報にある場合に、先ずは、その通信要求情報を送信したモジュールと、その通信要求情報により指定される通信相手のモジュールのうちの空き状態にあるモジュールとの間の通信を許可し、その通信要求情報を送信したモジュールと、その通信要求情報により指定される通信相手のモジュールのうちの、新たな通信が不能なビジィ状態にあったモジュールとの間の通信は、そのモジュールのビジィ状態が解除された後で改めて許可することを可能とした実施形態である。
【0132】
ここでは、第1実施形態との相違点について説明する。
【0133】
図24におけるチャネル割当部16から出力される通信許可信号101には、図25に示すように、未送受信先、すなわち本来通信に参加すべきであったが参加できなかったモジュールの有無をあらわす情報が付加されている。図25では、未送受信先の欄は全て値0となっているが、この値0は未送受信先が存在しないことを表し、値1が未送受信先が存在することを表している。
【0134】
値1と値0は逆であっても構わない。
【0135】
また、図26に示す調停結果信号には、未送受信フラグの欄が設けられている。この未送受信フラグが値1のときは未送受信先が存在することを示しており、値0は未送信先が存在しないことを示している。
【0136】
レジスタ更新部11は、未送受信フラグが1である通信の通信終了を検知したら、許可フラグを再び0として再調停を行なう。
【0137】
また、通信先競合判定部18は、新規の通信要求があると、制御部17からの指示により、通信先モジュール番号125を未送受信レジスタ19にコピーする。
【0138】
信号124により、要求フラグが1であるが許可フラグが0である通信要求を選択し、対応する通信先を未送信レジスタ19から選択する。次に、各々の送信先と返信先の各モジュール番号を信号123と照合して競合判定を行ない、
(1)全ての通信先が通信不可能である通信要求;
競合フラグを値‘11’とする
(2)全ての通信先が通信可能である通信要求;
競合フラグを値‘00’とする
(3)一部の通信先のみ通信可能、他の通信先は通信不可能である通信要求;
競合フラグを値‘10’とする
として信号126により出力する。競合フラグ=‘10’に対応する通信要求に関しては、通信可能なモジュールのモジュール番号と通信不可能なモジュールのモジュール番号を各々未送信レジスタ19に書き込む。
【0139】
また、チャネル割当部16では、図10に示す第1実施形態においては通信先モジュール番号125を取得したが、ここでは、それに代わり、未送信レジスタ19からの信号141により通信先を取得する。競合フラグ=‘10’である通信要求が選択された場合、図25のように、未送受信フラグ=‘1’を含めて、通信許可信号101を出力する。この場合、全通信先のうちの一部に対して通信が行なわれる。未送受信フラグは、信号129を通じてレジスタ更新部11に送られ、更に信号122により調停結果レジスタ13の未送受信フラグに書き込まれる。
【0140】
ここで、当初の通信要求の際に図25に示す受信チャネル番号として複数のモジュールを指定し、そのうちの一部のモジュールが他の通信でビジィであった場合そのモジュールの通信はあとまわしにされるが、その通信において返信元が存在する場合、先にビジィであった残りのモジュールに対する後の通信においても同じ返信元が再指定され、その返信元から残りのモジュール(残りの返信先)に返信が届くように考慮される。
【0141】
また、当初の通信要求を複数回に分けて通信を行なうにあたり、それら複数回の通信どうしの間に間が空いてしまわないよう以下の工夫を採用することが好ましい。すなわち、調停結果レジスタに未送受信フラグ=‘1’のものがあった場合は、通信先競合判定部18では対応する通信先(未送受信フラグ=‘1’の通信であってその通信に未参加であった通信先)への新規通信を禁止して、新規通信は全ての通信先が未送受信フラグ=‘1’の通信とは競合せず、かつ全ての通信先がビジーでないもののみに限定し、最優先要求選択部15では未送受信フラグ=‘1’の通信要求を他の通信要求よりも優先して選択する。こうすることにより、当初一回の通信要求でありながら複数回に分かれた通信を連続して行なうことができる。
【0142】
【発明の効果】
以上説明したように、本発明によれば、伝送チャネルの競合と通信先の競合とを有効に解決し、かつ伝送チャネルの稼動率を向上させつつ多様なモジュール間通信を実現することができる。また、本発明は、方向伝播性を持つ信号によるアクセス制御にも適用することができる。
【図面の簡単な説明】
【図1】従来の多重バス制御装置の一例を示す図である。
【図2】指向伝播特性を有する光信号の伝送の様子を示す模式図である。
【図3】図2に示す指向伝播特性を電気回路によって等価的に表現した図である。
【図4】2台のCPUと2台のメモリモジュール間で、各々のアドレス信号線(実線)とデータ信号線(点線)の組合せによる通信バリエーションの例を示す図である。
【図5】本発明の信号通信装置の第1の実施形態を表すブロック図である。
【図6】本発明の信号通信装置の第2の実施形態を表すブロック図である。
【図7】本発明の信号通信装置の第3の実施形態を表すブロック図である。
【図8】本発明の信号通信装置の第4の実施形態を表すブロック図である。
【図9】本発明の信号通信装置の第5の実施形態を表すブロック図である。
【図10】本発明の多重バス制御装置の第1の実施形態を表すブロック図である。
【図11】図10に示す実施形態の入力信号である通信要求信号の内訳を示す図である。
【図12】図10に示す実施形態の出力信号である通信許可信号、送信チャネル番号、受信チャネル番号の内訳を示す図である。
【図13】調停結果レジスタに保持される調停結果信号の内訳を示す図である。
【図14】最優先要求選択部の構成例を表す図である。
【図15】本発明の多重バス制御装置の第2の実施形態を表すブロック図である。
【図16】図15に示す実施形態の入力信号である第2の通信要求信号の内訳を示す図である。
【図17】通信先アドレスレジスタファイルの内訳を示す図である。
【図18】本発明の多重バス制御装置の第3の実施形態を表すブロック図である。
【図19】第2の最優先要求選択部の構成例を表すブロック図である。
【図20】本発明の多重バス制御装置(多重バス制御用LSI)の第4の実施形態を表すブロック図である。
【図21】図20に示す多重バス制御装置内で実行されるソフトウェアのフローチャートである。
【図22】図20に示す多重バス制御用LSIの信号入力部分の模式図である。
【図23】図10に示す多重バス制御装置をLSIで実現したことを考えた場合の、そのLSIの信号入力部分を示す模式図である。
【図24】本発明の多重バス制御装置の第5実施形態を表すブロック図である。
【図25】図24に示す実施形態の出力信号である通信許可信号、送信チャネル番号、受信チャネル番号の内訳を示す図である。
【図26】図24に示す実施形態における調停結果レジスタに保持される調停結果信号の内訳を示す図である。
【符号の説明】
10,70 通信要求レジスタ
11 レジスタ更新部
12 リソースレジスタ
13 調停結果レジスタ
14,18 通信先競合判定部
15,72 最優先要求選択部
16 チャネル割当部
17 制御部
19 未送受信レジスタ
30,303a,303b CPU
31,302a,302b メモリ
33 チャネル割当レジスタ
50 多重バス制御装置
51a,51b,51c,51d モジュール
52a,52b,52c,52d 送信デマルチプレクサ
53a,53b,53c,53d 受信マルチプレクサ
62a,62b,62c,62d 発光装置
63a,63b,63c,63d 受光装置
64,65 光伝送媒体
71 通信先アドレスレジスタファイル
73 選択部
74 最大値検出部
75a,75b カウンタ
80 バス調停部
81a,81b,81c,81d バススイッチ
84a,84b メモリ調停部
310 入力端子
311 出力端子
Claims (6)
- 信号が伝送されるチャネルを複数有する多重バスと、
前記多重バスを経由して信号を送受信する複数のモジュールと、
前記複数のモジュールによる前記多重バスの使用権を調停する調停部とを備え、
前記複数のモジュールそれぞれは、自分が他の1つ以上のモジュールとの間で通信を行なおうとするにあたり、1つ以上の通信相手のモジュールを指定する通信要求情報を前記調停部に送信することにより、該調停部に対し通信要求を行なうものであり、
前記調停部は、受信した通信要求情報に基づいて、該通信要求情報により指定される通信相手のうちの一部の通信相手のみが新たな通信が可能な空き状態にある場合に、先ずは、該通信要求情報を送信したモジュールと、該通信要求情報により指定される通信相手のモジュールのうちの空き状態にあるモジュールとの間の通信を許可し、該通信要求情報を送信したモジュールと、該通信要求情報により指定される通信相手のモジュールのうちの、新たな通信が不能なビジィ状態にあったモジュールとの間の通信は、該モジュールのビジィ状態が解除された後で改めて許可するものであることを特徴とする信号通信装置。 - 前記多重バスを構成する複数のチャネルは、それぞれが信号伝送方向について指向性を持つものであることを特徴とする請求項1記載の信号通信装置。
- 前記多重バスは、光信号を伝送するものであることを特徴とする請求項1又は2記載の信号通信装置。
- 前記多重バスは、平板導光路であることを特徴とする請求項3記載の信号通信装置。
- 前記調停部は、前記複数のモジュールそれぞれと、各モジュールからの通信要求において指定される1つ以上の通信相手のモジュールとの対応テーブルを記憶しておく記憶部を備え、
前記複数のモジュールそれぞれは、自分が他の1つ以上のモジュールとの間で通信を行なおうとするにあたり、前記テーブルのアドレスを指定することにより間接的に1つ以上の通信相手のモジュールを指定する通信要求情報を前記調停部に送信するものであることを特徴とする請求項1から4のうちいずれか1項記載の信号通信装置。 - 信号が伝送されるチャネルを複数有する多重バスを利用して信号を送受信する複数のモジュールそれぞれからの、1つ以上の通信相手のモジュールを指定する通信要求情報を受信することにより、各モジュールからの通信要求を受け付ける通信要求受付部と、
前記通信要求受付部により受信された通信要求情報に基づいて、該通信要求情報により指定される通信相手のうちの一部の通信相手のみが新たな通信が可能な空き状態にある場合に、先ずは、該通信要求情報を送信したモジュールと、該通信要求情報により指定される通信相手のモジュールのうちの空き状態にあるモジュールとの間の通信を許可し、該通信要求情報を送信したモジュールと、該通信要求情報により指定される通信柑手のモジュールのうちの、新たな通信が不能なビジィ状態にあったモジュールとの間の通信は、該モジュールのビジィ状態が解除された後で改めて許可するものであることを特徴とする調停部とを備えたことを特徴とする多重バス制御装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP37022498A JP3589058B2 (ja) | 1998-12-25 | 1998-12-25 | 信号通信装置および多重バス制御装置 |
US09/454,858 US6493784B1 (en) | 1998-12-25 | 1999-12-07 | Communication device, multiple bus control device and LSI for controlling multiple bus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP37022498A JP3589058B2 (ja) | 1998-12-25 | 1998-12-25 | 信号通信装置および多重バス制御装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004174314A Division JP3925510B2 (ja) | 2004-06-11 | 2004-06-11 | 信号通信装置および多重バス制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000194682A JP2000194682A (ja) | 2000-07-14 |
JP3589058B2 true JP3589058B2 (ja) | 2004-11-17 |
Family
ID=18496375
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP37022498A Expired - Fee Related JP3589058B2 (ja) | 1998-12-25 | 1998-12-25 | 信号通信装置および多重バス制御装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6493784B1 (ja) |
JP (1) | JP3589058B2 (ja) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000268006A (ja) * | 1999-03-15 | 2000-09-29 | Fuji Xerox Co Ltd | マルチプロセッサシステム |
KR100477641B1 (ko) * | 2002-01-15 | 2005-03-23 | 삼성전자주식회사 | 버스 시스템 및 그 데이터 전송경로 결정방법 |
DE10231424B4 (de) * | 2002-07-11 | 2006-11-09 | Pro Design Electronic & Cad-Layout Gmbh | Vorrichtung und Verfahren zur Datenkommunikation |
US7254331B2 (en) * | 2002-08-09 | 2007-08-07 | Micron Technology, Inc. | System and method for multiple bit optical data transmission in memory systems |
US7836252B2 (en) | 2002-08-29 | 2010-11-16 | Micron Technology, Inc. | System and method for optimizing interconnections of memory devices in a multichip module |
US7245145B2 (en) | 2003-06-11 | 2007-07-17 | Micron Technology, Inc. | Memory module and method having improved signal routing topology |
US7120743B2 (en) | 2003-10-20 | 2006-10-10 | Micron Technology, Inc. | Arbitration system and method for memory responses in a hub-based memory system |
US7366864B2 (en) | 2004-03-08 | 2008-04-29 | Micron Technology, Inc. | Memory hub architecture having programmable lane widths |
US7120723B2 (en) | 2004-03-25 | 2006-10-10 | Micron Technology, Inc. | System and method for memory hub-based expansion bus |
US7590797B2 (en) | 2004-04-08 | 2009-09-15 | Micron Technology, Inc. | System and method for optimizing interconnections of components in a multichip memory module |
US7392331B2 (en) | 2004-08-31 | 2008-06-24 | Micron Technology, Inc. | System and method for transmitting data packets in a computer system having a memory hub architecture |
US7865897B2 (en) * | 2006-02-03 | 2011-01-04 | Freescale Semiconductor, Inc. | Selective transaction request processing at an interconnect during a lockout |
US7809874B2 (en) * | 2006-06-21 | 2010-10-05 | International Business Machines Corporation | Method for resource sharing in a multiple pipeline environment |
WO2008038770A1 (fr) | 2006-09-29 | 2008-04-03 | Fujitsu Ten Limited | Appareil, système et procédé de simulation |
JP4823929B2 (ja) * | 2007-01-25 | 2011-11-24 | シャープ株式会社 | 多重バスインタフェースモジュールおよび多重バスシステム |
US8090789B1 (en) * | 2007-06-28 | 2012-01-03 | Emc Corporation | Method of operating a data storage system having plural data pipes |
ATE535870T1 (de) * | 2008-03-03 | 2011-12-15 | Nec Corp | Steuervorrichtung für schnellen datenaustausch zwischen verarbeitungseinheiten in einer prozessorarchitektur mit verarbeitungseinheiten verschiedener bandbreitenverbindung mit einem pipeline-ring-bus |
JP2012242942A (ja) * | 2011-05-17 | 2012-12-10 | Panasonic Corp | Hub装置の制御方法およびhub装置 |
US8737233B2 (en) * | 2011-09-19 | 2014-05-27 | International Business Machines Corporation | Increasing throughput of multiplexed electrical bus in pipe-lined architecture |
JP6003607B2 (ja) * | 2012-12-14 | 2016-10-05 | 富士通株式会社 | サーバ装置 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5195089A (en) * | 1990-12-31 | 1993-03-16 | Sun Microsystems, Inc. | Apparatus and method for a synchronous, high speed, packet-switched bus |
JPH04305757A (ja) | 1991-04-02 | 1992-10-28 | Ricoh Co Ltd | マルチプロセッサーシステム |
JP2692418B2 (ja) * | 1991-05-17 | 1997-12-17 | 日本電気株式会社 | 無線チャネル割当方式 |
JPH05282242A (ja) | 1992-04-02 | 1993-10-29 | Toshiba Corp | バス制御方式 |
JPH06259343A (ja) * | 1993-03-10 | 1994-09-16 | Hitachi Ltd | 多重バス制御方式及びそれを用いたシステム |
DE4421936A1 (de) | 1994-06-23 | 1996-01-04 | Basf Ag | Verfahren zur Herstellung von in Wasser klar löslichen, restmonomerenarmen Copolymerisaten aus N-Vinylpyrrolidon und Vinylacetat |
JPH0863443A (ja) | 1994-08-18 | 1996-03-08 | Hitachi Ltd | データ転送方法および相互接続スイッチ装置 |
JP3360547B2 (ja) | 1996-10-24 | 2002-12-24 | 富士ゼロックス株式会社 | 光バスおよび信号処理装置 |
US5872937A (en) * | 1997-04-17 | 1999-02-16 | Vlsi Technology, Inc. | System for optimizing bus arbitration latency and method therefor |
US6230219B1 (en) * | 1997-11-10 | 2001-05-08 | International Business Machines Corporation | High performance multichannel DMA controller for a PCI host bridge with a built-in cache |
US5936953A (en) * | 1997-12-18 | 1999-08-10 | Raytheon Company | Multi-mode, multi-channel communication bus |
US6185221B1 (en) * | 1998-11-09 | 2001-02-06 | Cabletron Systems, Inc. | Method and apparatus for fair and efficient scheduling of variable-size data packets in an input-buffered multipoint switch |
-
1998
- 1998-12-25 JP JP37022498A patent/JP3589058B2/ja not_active Expired - Fee Related
-
1999
- 1999-12-07 US US09/454,858 patent/US6493784B1/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000194682A (ja) | 2000-07-14 |
US6493784B1 (en) | 2002-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3589058B2 (ja) | 信号通信装置および多重バス制御装置 | |
JP5036120B2 (ja) | 非ブロック化共有インターフェイスを持つ通信システム及び方法 | |
JP4083987B2 (ja) | 多重レベル接続識別を備えた通信システム | |
US6826640B1 (en) | Bus bandwidth control system | |
JPH0713945A (ja) | 演算処理部および制御・記憶部分離型マルチプロセッサ ・システムのバス構造 | |
JPH10507023A (ja) | 共用メモリシステム | |
EP1653370B1 (en) | Bus controller | |
JPH07141312A (ja) | 情報処理装置 | |
US5958031A (en) | Data transmitting/receiving device of a multiprocessor system and method therefor | |
KR100477641B1 (ko) | 버스 시스템 및 그 데이터 전송경로 결정방법 | |
EP1439467B1 (en) | System and method for allocating a plurality of sources to a plurality of channels | |
US5526495A (en) | Bus control system in a multi-processor system | |
JPH05241947A (ja) | 分散クロスバー・スイッチ・アーキテクチャにおける交換接続の配列。 | |
JPH07143136A (ja) | 情報処理装置、及び情報処理装置のアービトレーション方法 | |
JP3925510B2 (ja) | 信号通信装置および多重バス制御装置 | |
KR20200032642A (ko) | 버스 제어회로 | |
JP3747020B2 (ja) | クロスバー調停システム | |
CA2228342C (en) | System bus control system in a multi-processor system | |
EP1459191B1 (en) | Communication bus system | |
JPH11353286A (ja) | マルチプロセッサおよびそのバス使用権の決定方法 | |
JPH06214946A (ja) | 多段バスのバス使用権調停方式 | |
JP2001306494A (ja) | 多重バス制御装置 | |
JPH1115779A (ja) | バス制御システム | |
JPH05191424A (ja) | リングア−ビタおよびその制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20040413 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040611 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20040617 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040727 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040809 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070827 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080827 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090827 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100827 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110827 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120827 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120827 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130827 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |