JPH05308364A - 多重プロセッサ通信システムにおけるデータ衝突検出方法および装置 - Google Patents
多重プロセッサ通信システムにおけるデータ衝突検出方法および装置Info
- Publication number
- JPH05308364A JPH05308364A JP4299263A JP29926392A JPH05308364A JP H05308364 A JPH05308364 A JP H05308364A JP 4299263 A JP4299263 A JP 4299263A JP 29926392 A JP29926392 A JP 29926392A JP H05308364 A JPH05308364 A JP H05308364A
- Authority
- JP
- Japan
- Prior art keywords
- processor
- processors
- message
- bus
- data collision
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004891 communication Methods 0.000 title claims abstract description 29
- 238000000034 method Methods 0.000 title claims abstract description 9
- 230000005540 biological transmission Effects 0.000 claims description 13
- 238000001514 detection method Methods 0.000 claims description 9
- 238000009432 framing Methods 0.000 description 10
- 238000012360 testing method Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 230000015654 memory Effects 0.000 description 5
- 238000005070 sampling Methods 0.000 description 5
- WABPQHHGFIMREM-UHFFFAOYSA-N lead(0) Chemical compound [Pb] WABPQHHGFIMREM-UHFFFAOYSA-N 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 101100172132 Mus musculus Eif3a gene Proteins 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000010348 incorporation Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012913 prioritisation Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
- H04L12/40013—Details regarding a bus controller
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/407—Bus networks with decentralised control
- H04L12/413—Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multi Processors (AREA)
- Small-Scale Networks (AREA)
- Debugging And Monitoring (AREA)
- Bus Control (AREA)
- Information Transfer Systems (AREA)
Abstract
(57)【要約】
【目的】 多重プロセッサ通信システム内でデータ衝突
を検出および解消する方法と装置とを提供する。 【構成】 本システムには、共通バス9を介して結合さ
れた複数のプロセッサ1,2,3,4,5,6,7,8
が含まれる。あるプロセッサが他のプロセッサと通信を
行うことが求められると、第1プロセッサは、データ衝
突フラッグが設定されているか否かを判定する。次に該
プロセッサは、複数の指標をチェックして、送信プロセ
ッサの識別子が、予測されたものであるか否か判定す
る。データ衝突が検出されると、該プロセッサは、選択
時間を待ってから、メッセージ30を送る。次に該プロ
セッサは、データ衝突のチェックを繰り返し、データ衝
突が検出されなければ他のプロセッサにメッセージを送
る。待機する時間は、プロセッサの識別子に依存し、表
に準拠する。
を検出および解消する方法と装置とを提供する。 【構成】 本システムには、共通バス9を介して結合さ
れた複数のプロセッサ1,2,3,4,5,6,7,8
が含まれる。あるプロセッサが他のプロセッサと通信を
行うことが求められると、第1プロセッサは、データ衝
突フラッグが設定されているか否かを判定する。次に該
プロセッサは、複数の指標をチェックして、送信プロセ
ッサの識別子が、予測されたものであるか否か判定す
る。データ衝突が検出されると、該プロセッサは、選択
時間を待ってから、メッセージ30を送る。次に該プロ
セッサは、データ衝突のチェックを繰り返し、データ衝
突が検出されなければ他のプロセッサにメッセージを送
る。待機する時間は、プロセッサの識別子に依存し、表
に準拠する。
Description
【0001】
【産業上の利用分野】本発明は、プロセッサ間の通信に
関する。さらに詳しくは多重プロセッサ通信システムに
おけるデータ衝突の検出と回復の方法に関する。
関する。さらに詳しくは多重プロセッサ通信システムに
おけるデータ衝突の検出と回復の方法に関する。
【0002】
【従来の技術】分散型制御システムにおいては、複数の
プロセッサが、たとえば電話などの機能単位の全体的な
動作の一部を実行する。現在の電話機は、機密保護など
のいくつかの機能をもつ高度な装置である。さらに、こ
のような電話機は、ファクシミリ装置,コピー装置,そ
の他の通信機器とのインタフェースを行うことができ
る。これらの異なる機能を制御するプロセッサは、互い
に通信を行わねばならない。通常、これらのプロセッサ
は、1本のバスにより相互接続されている。このバスは
シリアル・バスで、衝突検出機能を持つ搬送波検知多重
アクセス(CarrierSense Multiple Access with Collis
ion Detection:CSMA/CD)バス・プロトコルを
採用することができる。
プロセッサが、たとえば電話などの機能単位の全体的な
動作の一部を実行する。現在の電話機は、機密保護など
のいくつかの機能をもつ高度な装置である。さらに、こ
のような電話機は、ファクシミリ装置,コピー装置,そ
の他の通信機器とのインタフェースを行うことができ
る。これらの異なる機能を制御するプロセッサは、互い
に通信を行わねばならない。通常、これらのプロセッサ
は、1本のバスにより相互接続されている。このバスは
シリアル・バスで、衝突検出機能を持つ搬送波検知多重
アクセス(CarrierSense Multiple Access with Collis
ion Detection:CSMA/CD)バス・プロトコルを
採用することができる。
【0003】
【発明が解決しようとする課題】これらの多重プロセッ
サ通信システムは、あらゆる条件下でバス上のデータ衝
突を検出するわけではない。さらに、このようなシステ
ムはデータ衝突に関与するプロセッサ間の衝突を解決す
る効果的な装置を持たない。
サ通信システムは、あらゆる条件下でバス上のデータ衝
突を検出するわけではない。さらに、このようなシステ
ムはデータ衝突に関与するプロセッサ間の衝突を解決す
る効果的な装置を持たない。
【0004】従って、あらゆる条件下でデータの衝突を
検出し、プロセッサが優先順位を付けて通信を効果的に
行うことができるようにすることにより衝突を解決する
多重プロセッサ通信システムを提供することが非常に望
ましい。
検出し、プロセッサが優先順位を付けて通信を効果的に
行うことができるようにすることにより衝突を解決する
多重プロセッサ通信システムを提供することが非常に望
ましい。
【0005】
【課題を解決するための手段】本発明により、データの
衝突を検出するための新規の多重プロセッサ通信システ
ムが提供される。
衝突を検出するための新規の多重プロセッサ通信システ
ムが提供される。
【0006】バスにより結合された複数のプロセッサを
持つ多重プロセッサ通信システムにおける、データ衝突
の検出と解決の方法は、まず、あるプロセッサにより、
別のプロセッサとの通信が必要とされているか否かを判
定する。そのプロセッサは、前にデータ衝突が起こった
か否かを判定する。プロセッサは各々、メッセージ内の
複数の発信元指標(source indicators)をチェックし
て、データ衝突が起こったか否かを調べる。データ衝突
が起こっていれば、プロセッサはある選択時間を待機す
る。次にプロセッサは、データ衝突が前に起こったか否
かを判定する段階と、データ衝突を検出するためのチェ
ックを行う段階と、もしデータ衝突が観測されれば、選
択時間を待機する段階とを繰り返す。その後、データの
衝突が起こっていない場合は、プロセッサは、メッセー
ジを少なくとも1台の他のプロセッサに送る。
持つ多重プロセッサ通信システムにおける、データ衝突
の検出と解決の方法は、まず、あるプロセッサにより、
別のプロセッサとの通信が必要とされているか否かを判
定する。そのプロセッサは、前にデータ衝突が起こった
か否かを判定する。プロセッサは各々、メッセージ内の
複数の発信元指標(source indicators)をチェックし
て、データ衝突が起こったか否かを調べる。データ衝突
が起こっていれば、プロセッサはある選択時間を待機す
る。次にプロセッサは、データ衝突が前に起こったか否
かを判定する段階と、データ衝突を検出するためのチェ
ックを行う段階と、もしデータ衝突が観測されれば、選
択時間を待機する段階とを繰り返す。その後、データの
衝突が起こっていない場合は、プロセッサは、メッセー
ジを少なくとも1台の他のプロセッサに送る。
【0007】多重プロセッサ通信システムには、1本の
バスにより結合された複数のプロセッサが含まれる。デ
ータ衝突検出装置は、該バスに結合された複数の送信機
を有する。各送信機は、プロセッサ群のうち対応する1
台のプロセッサに結合される。各送信機は、発信元のプ
ロセッサからのメッセージを、少なくとも1台の目的地
のプロセッサに送る。データ衝突検出装置は、また、該
バスに結合された複数の受信機をも有する。この複数の
受信機は各々、プロセッサ群のうち対応する1台のプロ
セッサに結合される。受信機は、バスを介して送信され
たメッセージを受信する。プロセッサは各々、メッセー
ジの発信元プロセッサの指標を調べることにより、デー
タの衝突が起こったか否かを判定する。データの衝突が
起こった場合は、発信元プロセッサはある選択時間を待
機する。データの衝突が起こらなかった場合は、各送信
機は、メッセージの送信を引続き行うように動作する。
バスにより結合された複数のプロセッサが含まれる。デ
ータ衝突検出装置は、該バスに結合された複数の送信機
を有する。各送信機は、プロセッサ群のうち対応する1
台のプロセッサに結合される。各送信機は、発信元のプ
ロセッサからのメッセージを、少なくとも1台の目的地
のプロセッサに送る。データ衝突検出装置は、また、該
バスに結合された複数の受信機をも有する。この複数の
受信機は各々、プロセッサ群のうち対応する1台のプロ
セッサに結合される。受信機は、バスを介して送信され
たメッセージを受信する。プロセッサは各々、メッセー
ジの発信元プロセッサの指標を調べることにより、デー
タの衝突が起こったか否かを判定する。データの衝突が
起こった場合は、発信元プロセッサはある選択時間を待
機する。データの衝突が起こらなかった場合は、各送信
機は、メッセージの送信を引続き行うように動作する。
【0008】
【実施例】図1は、多重プロセッサ通信装置のブロック
図である。図1に示されるプロセッサ装置は、機密電話
ターミナル(secure telephone terminals) に組み込む
のに適している。このような機密電話ターミナルには、
モトローラ製のスーパー・エコノミック・ターミナルま
たはSETがある。図1に示されるように、プロセッサ
1−8はバス9を介して互いに接続されている。プロセ
ッサ1−4と8とが示されている。省略されている部分
は、プロセッサ5−7を表すが、これらは簡潔性を図る
ために図示されていない。プロセッサ1−8は、互いに
メッセージを送ることにより通信する。
図である。図1に示されるプロセッサ装置は、機密電話
ターミナル(secure telephone terminals) に組み込む
のに適している。このような機密電話ターミナルには、
モトローラ製のスーパー・エコノミック・ターミナルま
たはSETがある。図1に示されるように、プロセッサ
1−8はバス9を介して互いに接続されている。プロセ
ッサ1−4と8とが示されている。省略されている部分
は、プロセッサ5−7を表すが、これらは簡潔性を図る
ために図示されていない。プロセッサ1−8は、互いに
メッセージを送ることにより通信する。
【0009】データ・プロセッサ1,2は、通信ネット
ワーク(図示せず)を介して、プロセッサ1−8を備え
たSETターミナルと他のSETターミナル(図示せ
ず)との間で共通の通信機能を行う。データ・プロセッ
サ1,2は、機密電話ターミナルに用いる場合には、赤
と黒のプロセッサでもよい。ディスプレイ・プロセッサ
3は、機密電話ターミナルに接続されるディスプレイ・
ユニット(図示せず)を制御する。テスト・プロセッサ
4は、機密電話ターミナルの試験と保守とを行う。アダ
プタ・プロセッサ8とその他のプロセッサ群(図示せ
ず)は、ファクシミリやコピー機などの、電話の外部装
置との相互接続や通信を行う。バス9を介するプロセッ
サ1−8のこのような相互接続により、コマンド型情報
のプロセッサ間通信が容易になる。このようなプロセッ
サ構造(architecture) は、分散型制御構造である。す
なわち、マスタ制御プロセッサが存在しない。分散型制
御処理により、図1に示されるターミナル内で各プロセ
ッサが完全に非同期に動作することができる。
ワーク(図示せず)を介して、プロセッサ1−8を備え
たSETターミナルと他のSETターミナル(図示せ
ず)との間で共通の通信機能を行う。データ・プロセッ
サ1,2は、機密電話ターミナルに用いる場合には、赤
と黒のプロセッサでもよい。ディスプレイ・プロセッサ
3は、機密電話ターミナルに接続されるディスプレイ・
ユニット(図示せず)を制御する。テスト・プロセッサ
4は、機密電話ターミナルの試験と保守とを行う。アダ
プタ・プロセッサ8とその他のプロセッサ群(図示せ
ず)は、ファクシミリやコピー機などの、電話の外部装
置との相互接続や通信を行う。バス9を介するプロセッ
サ1−8のこのような相互接続により、コマンド型情報
のプロセッサ間通信が容易になる。このようなプロセッ
サ構造(architecture) は、分散型制御構造である。す
なわち、マスタ制御プロセッサが存在しない。分散型制
御処理により、図1に示されるターミナル内で各プロセ
ッサが完全に非同期に動作することができる。
【0010】バス9は、ゼロ支配(zero dominant)バス
である。プロセッサ1−8は各々、半二重構造を介して
通信を行う。このようなプロセッサとしては、モトロー
ラ製のDSP6001 型または68HC11型などがある。バスは、
各プロセッサが接続される単リード線オープン・コレク
タ経路をもつ。バス9は、DSP56001型および68HC11型プ
ロセッサの11ビット多重ドロップ・モード(multi-dr
op mode)に準拠する。
である。プロセッサ1−8は各々、半二重構造を介して
通信を行う。このようなプロセッサとしては、モトロー
ラ製のDSP6001 型または68HC11型などがある。バスは、
各プロセッサが接続される単リード線オープン・コレク
タ経路をもつ。バス9は、DSP56001型および68HC11型プ
ロセッサの11ビット多重ドロップ・モード(multi-dr
op mode)に準拠する。
【0011】バス・プロトコルは、プロセッサ間のすべ
てのメッセージ転送に、衝突検出機能の付いた搬送波検
知多重アクセス(Carrier Sense Multiple Access with
Collision Detection:CSMA/CD)を用いる。あ
るプロセッサがメッセージを送る必要があるときは、そ
のプロセッサは、まずバスが現在使用中でないことを確
認するためにバスを調べなければならない(搬送波検
知)。バスが使用可能な状態であれば、プロセッサは送
信を始めることができる。2台以上のプロセッサが同時
に送信を始めると、データの衝突が起こる。バスに接続
されたすべてのプロセッサは、衝突を検出する。衝突を
検出するためには、各プロセッサは、フレーミング・エ
ラーとパターン違反のために最初の2文字を受け取り、
解釈する。最初の2文字を正確に受け取ったときは、そ
の送信は衝突なしに進行していることを示す。衝突が起
こると、送信元のプロセッサはその送信を中断して、一
定の時間バスを「バックオフ」してから、再度メッセー
ジの送信を試みる。メッセージの再送信を行うまで待機
する閾値時間限度を設定することができる。ここで説明
される機密電話ターミナルに関しては、最大3回までの
再試行が許される。4回衝突が起こると、バスの障害が
あることを示し、送信元プロセッサは、プロセッサがリ
セットされるまでメッセージの送信を試みることはな
い。そのときプロセッサは、自身で障害を宣言する。
てのメッセージ転送に、衝突検出機能の付いた搬送波検
知多重アクセス(Carrier Sense Multiple Access with
Collision Detection:CSMA/CD)を用いる。あ
るプロセッサがメッセージを送る必要があるときは、そ
のプロセッサは、まずバスが現在使用中でないことを確
認するためにバスを調べなければならない(搬送波検
知)。バスが使用可能な状態であれば、プロセッサは送
信を始めることができる。2台以上のプロセッサが同時
に送信を始めると、データの衝突が起こる。バスに接続
されたすべてのプロセッサは、衝突を検出する。衝突を
検出するためには、各プロセッサは、フレーミング・エ
ラーとパターン違反のために最初の2文字を受け取り、
解釈する。最初の2文字を正確に受け取ったときは、そ
の送信は衝突なしに進行していることを示す。衝突が起
こると、送信元のプロセッサはその送信を中断して、一
定の時間バスを「バックオフ」してから、再度メッセー
ジの送信を試みる。メッセージの再送信を行うまで待機
する閾値時間限度を設定することができる。ここで説明
される機密電話ターミナルに関しては、最大3回までの
再試行が許される。4回衝突が起こると、バスの障害が
あることを示し、送信元プロセッサは、プロセッサがリ
セットされるまでメッセージの送信を試みることはな
い。そのときプロセッサは、自身で障害を宣言する。
【0012】図2は、図1のプロセッサ装置のより詳細
な図である。2台のプロセッサ10,20が示されてい
る。プロセッサ10,20は、図1に示されるプロセッ
サのうちの2台に相当する。その他のプロセッサは、説
明を簡単にするために省略する。プロセッサ10には、
UART(Universal Asynchronous Receiver Transmit
ter :汎用非同期受信機送信機)13に接続されるプロ
セッサ11が含まれる。プロセッサ11はメモリ16に
接続される。クロック15もまた、UART13に接続
される。UART13は、受信リード線17と、送信リ
ード線19とを介してバス9に接続されている。
な図である。2台のプロセッサ10,20が示されてい
る。プロセッサ10,20は、図1に示されるプロセッ
サのうちの2台に相当する。その他のプロセッサは、説
明を簡単にするために省略する。プロセッサ10には、
UART(Universal Asynchronous Receiver Transmit
ter :汎用非同期受信機送信機)13に接続されるプロ
セッサ11が含まれる。プロセッサ11はメモリ16に
接続される。クロック15もまた、UART13に接続
される。UART13は、受信リード線17と、送信リ
ード線19とを介してバス9に接続されている。
【0013】同様に、プロセッサ装置20には、UAR
T23に接続されるプロセッサ21が含まれる。プロセ
ッサ21は、メモリ26にも接続される。クロック25
もまた、UART23に接続される。UART23は、
受信リード線27と送信リード線29とを介してバス9
に接続される。同様の方法で、最大6台まで他のプロセ
ッサを接続することができる。前述のように、プロセッ
サ群は、DSP56001型または68HC11型などの異なるプロセ
ッサでもよい。異なるUART群を用いることもでき
る。使用される各UARTは、11ビットのキャラクタ
・フォーマットを持たなければならない。クロック1
5,25と、別のプロセッサ装置に対応する他のクロッ
クとはすべて、各UARTに対して±2パーセントの変
動で、同一の周波数を送る。
T23に接続されるプロセッサ21が含まれる。プロセ
ッサ21は、メモリ26にも接続される。クロック25
もまた、UART23に接続される。UART23は、
受信リード線27と送信リード線29とを介してバス9
に接続される。同様の方法で、最大6台まで他のプロセ
ッサを接続することができる。前述のように、プロセッ
サ群は、DSP56001型または68HC11型などの異なるプロセ
ッサでもよい。異なるUART群を用いることもでき
る。使用される各UARTは、11ビットのキャラクタ
・フォーマットを持たなければならない。クロック1
5,25と、別のプロセッサ装置に対応する他のクロッ
クとはすべて、各UARTに対して±2パーセントの変
動で、同一の周波数を送る。
【0014】図3は、バス9を介してプロセッサ1−8
間で送信されるメッセージのキャラクタ・フォーマット
を示す。キャラクタ(バイト)のフォーマットには、1
個のスタート・ビットと、それに続く8個のデータ・ビ
ットD0−D7と、それに続く2個のストップ・ビット
とが含まれる。バス9はゼロ支配バスであるので、通常
は論理1にある。そのため、スタート・ビットは、論理
1から論理0への遷移を行う。データ・ビットD0−D
7は、論理1あるいは論理0の値をとる。2個のストッ
プ・ビットは、各々論理1の値にある。そのため、連続
したキャラクタ上では、新しいキャラクタが送信される
場合、遷移は常に論理1から論理0へと行われる。
間で送信されるメッセージのキャラクタ・フォーマット
を示す。キャラクタ(バイト)のフォーマットには、1
個のスタート・ビットと、それに続く8個のデータ・ビ
ットD0−D7と、それに続く2個のストップ・ビット
とが含まれる。バス9はゼロ支配バスであるので、通常
は論理1にある。そのため、スタート・ビットは、論理
1から論理0への遷移を行う。データ・ビットD0−D
7は、論理1あるいは論理0の値をとる。2個のストッ
プ・ビットは、各々論理1の値にある。そのため、連続
したキャラクタ上では、新しいキャラクタが送信される
場合、遷移は常に論理1から論理0へと行われる。
【0015】図4は、典型的なメッセージ30を示す。
あるプロセッサから他のプロセッサへと送られるメッセ
ージ30には、ソース・バイト31と、それに続く(バ
イト31と)同じものであるソース・バイト32と、そ
れに続く目的地バイト33とが含まれる。次にいくつか
のデータ・バイト34が続く。最後にアイドル・バイト
35でメッセージ30は終る。
あるプロセッサから他のプロセッサへと送られるメッセ
ージ30には、ソース・バイト31と、それに続く(バ
イト31と)同じものであるソース・バイト32と、そ
れに続く目的地バイト33とが含まれる。次にいくつか
のデータ・バイト34が続く。最後にアイドル・バイト
35でメッセージ30は終る。
【0016】ソース・バイト31,32は、メッセージ
を送信するプロセッサの識別子である。目的地バイト3
3は、メッセージを受け取るプロセッサの識別子であ
る。プロセッサ1−8の各々を識別するソース・バイト
31,32および目的地バイト33の値を、以下の表1
に示す。表1はメモリ16,26とその他のメモリ(図
示せず)に記憶されている。アドレス・フィールド・バ
イト31,32,33には、ビットD0−D7が含ま
れ、D0が低次で、D7が最高次のビットである。プロ
セッサ1−8の各々に関して、アドレス・フィールド・
バイト内のある特定のビットが論理1に設定されてい
る。たとえば、プロセッサ1に関しては、D0が論理1
に設定される。プロセッサ2に関しては、D1が論理1
に設定され、以下同様に設定される。すべてゼロのアド
レス・フィールド・バイトは違法アドレスである。フレ
ーミング・エラーまたは違法アドレスをもつソース・バ
イト31または32を受け取ったプロセッサは、バス9
上にデータの衝突があることを示す。
を送信するプロセッサの識別子である。目的地バイト3
3は、メッセージを受け取るプロセッサの識別子であ
る。プロセッサ1−8の各々を識別するソース・バイト
31,32および目的地バイト33の値を、以下の表1
に示す。表1はメモリ16,26とその他のメモリ(図
示せず)に記憶されている。アドレス・フィールド・バ
イト31,32,33には、ビットD0−D7が含ま
れ、D0が低次で、D7が最高次のビットである。プロ
セッサ1−8の各々に関して、アドレス・フィールド・
バイト内のある特定のビットが論理1に設定されてい
る。たとえば、プロセッサ1に関しては、D0が論理1
に設定される。プロセッサ2に関しては、D1が論理1
に設定され、以下同様に設定される。すべてゼロのアド
レス・フィールド・バイトは違法アドレスである。フレ
ーミング・エラーまたは違法アドレスをもつソース・バ
イト31または32を受け取ったプロセッサは、バス9
上にデータの衝突があることを示す。
【0017】
【表1】
【0018】バス9上の各プロセッサは、送信される各
メッセージをチェックする。このように、各プロセッサ
は、メッセージがそのプロセッサに向けられているもの
であるのか否か、データの衝突が起きているか否かを判
定する。データの衝突が起きている場合、各プロセッサ
は自身のローカル・データ衝突フラッグを設定する。
メッセージをチェックする。このように、各プロセッサ
は、メッセージがそのプロセッサに向けられているもの
であるのか否か、データの衝突が起きているか否かを判
定する。データの衝突が起きている場合、各プロセッサ
は自身のローカル・データ衝突フラッグを設定する。
【0019】図5には、あるプロセッサから他のプロセ
ッサへとメッセージを送信する処理を示す。この処理
は、プロセッサ1−8の各々が、他のプロセッサにメッ
セージを送信する必要があると判断したときに、プロセ
ッサ1−8の各々により実行される。あるプロセッサが
データ送信が必要であると判定すると、ブロック40に
入る。ブロック40は、ブロック42に制御を渡す。ブ
ロック42で、プロセッサ1−8を相互接続するバス9
がアイドル状態であるか否かを判定する。バス9が使用
中の場合は、ブロック42はバス9がアイドルになるま
で、バス9がアイドルであるか否かのテストを繰り返
す。バス9がアイドルのときは、ブロック42は、イエ
ス(YES)経路を介してブロック44に制御を渡す。ブロ
ック52のバス試験は、さまざまな方法で実行すること
ができる。この特定の実行法は、後述する。
ッサへとメッセージを送信する処理を示す。この処理
は、プロセッサ1−8の各々が、他のプロセッサにメッ
セージを送信する必要があると判断したときに、プロセ
ッサ1−8の各々により実行される。あるプロセッサが
データ送信が必要であると判定すると、ブロック40に
入る。ブロック40は、ブロック42に制御を渡す。ブ
ロック42で、プロセッサ1−8を相互接続するバス9
がアイドル状態であるか否かを判定する。バス9が使用
中の場合は、ブロック42はバス9がアイドルになるま
で、バス9がアイドルであるか否かのテストを繰り返
す。バス9がアイドルのときは、ブロック42は、イエ
ス(YES)経路を介してブロック44に制御を渡す。ブロ
ック52のバス試験は、さまざまな方法で実行すること
ができる。この特定の実行法は、後述する。
【0020】次に、各プロセッサは、自身のローカル衝
突フラッグをチェックして、それが設定されているか否
かを判定する。プロセッサのローカル衝突フラッグが設
定されていると、ブロック44は、イエス経路を介して
ブロック46に制御を渡す。これは、データの衝突が起
きたときに、他のプロセッサがメッセージを送信してい
たことを示す。次にブロック46は、バスをバックオフ
する(所定の最大時間待ってから、再度送信を試み
る)。ブロック46は、待機した後、制御をブロック4
2に渡して、バスがアイドルであるか否かを判定する。
突フラッグをチェックして、それが設定されているか否
かを判定する。プロセッサのローカル衝突フラッグが設
定されていると、ブロック44は、イエス経路を介して
ブロック46に制御を渡す。これは、データの衝突が起
きたときに、他のプロセッサがメッセージを送信してい
たことを示す。次にブロック46は、バスをバックオフ
する(所定の最大時間待ってから、再度送信を試み
る)。ブロック46は、待機した後、制御をブロック4
2に渡して、バスがアイドルであるか否かを判定する。
【0021】衝突フラッグが設定されていない場合は、
ブロック44は、ノー(NO)経路を介してブロック48に
制御を渡す。ブロック48は、図4に示されるプロトコ
ルにより、データ送信を開始する。UART(汎用非同
期受信機送信機)は、バス上でデータの送信を始める。
UARTの受信機部分は、図4のソース・バイト31,
32を含む被送信データを読み込む(ブロック50)。
ブロック51で、ソース・バイトの各々に1ビットのみ
が設定されているか否かを判定する。前述のように、ソ
ース・バイトは、データを送信しているプロセッサを識
別する。表1に各プロセッサに関する有効なソース・バ
イトが示されている。フレーミング・エラーまたは違法
アドレスが検出されたときは、データ衝突が起こったこ
とを示す。データ衝突の場合、ブロック51は、ノー経
路を介して制御をブロック58に渡す。各ソース・バイ
トに1ビットのみが設定されている場合、ブロック51
は、イエス経路を介してブロック52に制御を渡す。あ
るいは、ブロック52でソース・バイト31,32の各
々に関して同じビットが設定されているか否か判定す
る。同じビットが設定されていない場合は、ブロック5
2はノー経路を介してブロック58に制御を渡す。ブロ
ック58は、表2に従い、バスをバックオフする(所定
時間待つ)。ブロック46によって用いられる最大時間
を含む、各プロセッサに関して表2に設定されている時
間は、最大時間であるN9が他のバックオフ時間N8−
N1のどれよりも大きくなるように構成されている。N
8はN7よりも大きく、N7はN6よりも大きく、以下
同様である。その結果、ブロック51とブロック52
が、この試験に関してノーの結果を検出したときは、そ
のプロセッサが他のプロセッサとデータの衝突を起こし
ていることを表す。関連するプロセッサの各々は、表2
に従い所定の時間バックオフして、再送信を試みる。こ
のように、プロセッサ1には、他のすべてのプロセッサ
に対して優先権が与えられている。プロセッサ2にはプ
ロセッサ1以外のすべての他のプロセッサに対して優先
権が与えられ、以下同様である。さらに、表2を動的に
変更して、特定のプロセッサに、他のプロセッサ群に対
する優先権を与えることができる。また、最大時間N9
を動的により長くあるいは短く変更することもできる
が、これは他の時間N1−N8よりは大きい。
ブロック44は、ノー(NO)経路を介してブロック48に
制御を渡す。ブロック48は、図4に示されるプロトコ
ルにより、データ送信を開始する。UART(汎用非同
期受信機送信機)は、バス上でデータの送信を始める。
UARTの受信機部分は、図4のソース・バイト31,
32を含む被送信データを読み込む(ブロック50)。
ブロック51で、ソース・バイトの各々に1ビットのみ
が設定されているか否かを判定する。前述のように、ソ
ース・バイトは、データを送信しているプロセッサを識
別する。表1に各プロセッサに関する有効なソース・バ
イトが示されている。フレーミング・エラーまたは違法
アドレスが検出されたときは、データ衝突が起こったこ
とを示す。データ衝突の場合、ブロック51は、ノー経
路を介して制御をブロック58に渡す。各ソース・バイ
トに1ビットのみが設定されている場合、ブロック51
は、イエス経路を介してブロック52に制御を渡す。あ
るいは、ブロック52でソース・バイト31,32の各
々に関して同じビットが設定されているか否か判定す
る。同じビットが設定されていない場合は、ブロック5
2はノー経路を介してブロック58に制御を渡す。ブロ
ック58は、表2に従い、バスをバックオフする(所定
時間待つ)。ブロック46によって用いられる最大時間
を含む、各プロセッサに関して表2に設定されている時
間は、最大時間であるN9が他のバックオフ時間N8−
N1のどれよりも大きくなるように構成されている。N
8はN7よりも大きく、N7はN6よりも大きく、以下
同様である。その結果、ブロック51とブロック52
が、この試験に関してノーの結果を検出したときは、そ
のプロセッサが他のプロセッサとデータの衝突を起こし
ていることを表す。関連するプロセッサの各々は、表2
に従い所定の時間バックオフして、再送信を試みる。こ
のように、プロセッサ1には、他のすべてのプロセッサ
に対して優先権が与えられている。プロセッサ2にはプ
ロセッサ1以外のすべての他のプロセッサに対して優先
権が与えられ、以下同様である。さらに、表2を動的に
変更して、特定のプロセッサに、他のプロセッサ群に対
する優先権を与えることができる。また、最大時間N9
を動的により長くあるいは短く変更することもできる
が、これは他の時間N1−N8よりは大きい。
【0022】
【表2】
【0023】1ビットのみが各ソース・バイトに設定さ
れ、それが両ソース・バイト31,32に関して設定さ
れたものと同一のビットである場合、ブロック51は、
イエス経路を介してブロック54に制御を渡す。データ
衝突が検出されていないので、ブロック54は、図4に
示されるプロトコルのメッセージ送信を継続する。これ
で処理は終るが、これがブロック56である。
れ、それが両ソース・バイト31,32に関して設定さ
れたものと同一のビットである場合、ブロック51は、
イエス経路を介してブロック54に制御を渡す。データ
衝突が検出されていないので、ブロック54は、図4に
示されるプロトコルのメッセージ送信を継続する。これ
で処理は終るが、これがブロック56である。
【0024】図6は、図5のブロック42のバス・アイ
ドル試験の詳細を示す。バス・アイドル試験が始まる
と、ブロック60はブロック61に制御を渡す。この試
験により、アイドル受信指標をもつUARTでも、もた
ないUARTでもシステム設計に採用することができ
る。ブロック61で、このプロセッサに関連するUAR
Tがアイドル受信指標をもつか否かが判定される(ブロ
ック61)。その特定のUARTが、アイドル受信指標
をもっているときは、ブロック61はイエス経路を介し
てブロック62に制御を渡す。その後プロセッサは、U
ARTから指標を読み込む(ブロック62)。ブロック
63で、指標をテストして、それが設定されているか否
かを判定する。指標が設定されているときは、ブロック
63は、ノー経路を介してブロック64に制御を渡す。
ブロック64は、処理を続ける。すなわち、図5に示さ
れるように、ブロック44に制御が渡される。指標が設
定されているときは、ブロック63は、イエス経路を介
してブロック61に制御を渡して、バスがアイドルにな
るまで、バス・アイドル動作を繰り返す。
ドル試験の詳細を示す。バス・アイドル試験が始まる
と、ブロック60はブロック61に制御を渡す。この試
験により、アイドル受信指標をもつUARTでも、もた
ないUARTでもシステム設計に採用することができ
る。ブロック61で、このプロセッサに関連するUAR
Tがアイドル受信指標をもつか否かが判定される(ブロ
ック61)。その特定のUARTが、アイドル受信指標
をもっているときは、ブロック61はイエス経路を介し
てブロック62に制御を渡す。その後プロセッサは、U
ARTから指標を読み込む(ブロック62)。ブロック
63で、指標をテストして、それが設定されているか否
かを判定する。指標が設定されているときは、ブロック
63は、ノー経路を介してブロック64に制御を渡す。
ブロック64は、処理を続ける。すなわち、図5に示さ
れるように、ブロック44に制御が渡される。指標が設
定されているときは、ブロック63は、イエス経路を介
してブロック61に制御を渡して、バスがアイドルにな
るまで、バス・アイドル動作を繰り返す。
【0025】UARTが受信指標を持たなかった場合、
ブロック61はノー経路を介してブロック66に制御を
渡す。ブロック66は、論理1の連続ビット時間が11
あるか否かを判定する。プロセッサが通信中でない場
合、バスは論理1にあるので、論理1の連続ビット時間
が11個あると、バスがアイドルであることを示す。論
理1の連続ビット時間が11個あると、ブロック66
は、イエス経路を介してブロック67に制御を渡し、動
作は継続される。これは図5のブロック42からブロッ
ク44への移動に対応する。バスが使用中の場合、11
個の論理1の連続ビット時間は見られず、ブロック66
は、ノー経路を介してブロック61に制御を渡す。バス
のアイドル状態は、バスがアイドルになるまで再度チェ
ックされる。これは図5のブロック42のノー経路に対
応する。
ブロック61はノー経路を介してブロック66に制御を
渡す。ブロック66は、論理1の連続ビット時間が11
あるか否かを判定する。プロセッサが通信中でない場
合、バスは論理1にあるので、論理1の連続ビット時間
が11個あると、バスがアイドルであることを示す。論
理1の連続ビット時間が11個あると、ブロック66
は、イエス経路を介してブロック67に制御を渡し、動
作は継続される。これは図5のブロック42からブロッ
ク44への移動に対応する。バスが使用中の場合、11
個の論理1の連続ビット時間は見られず、ブロック66
は、ノー経路を介してブロック61に制御を渡す。バス
のアイドル状態は、バスがアイドルになるまで再度チェ
ックされる。これは図5のブロック42のノー経路に対
応する。
【0026】バス上のデータ衝突は以下のシステム設計
により影響を受ける。第1に、すべてのプロセッサは、
他のプロセッサと非同期に送受信することができる。第
2に、送信および受信ビット・クロックは、2台の送信
プロセッサ間で±2パーセント、すなわち最悪の場合4
パーセント変動することがある。第3に、プロセッサ群
は、11ビットのキャラクタのスタート・ビットを検出
して、スタート・ビットの立ち下がり端に関して中間ビ
ット点のデータ・ビットをサンプリングすることによ
り、バス上のデータをサンプリングする。
により影響を受ける。第1に、すべてのプロセッサは、
他のプロセッサと非同期に送受信することができる。第
2に、送信および受信ビット・クロックは、2台の送信
プロセッサ間で±2パーセント、すなわち最悪の場合4
パーセント変動することがある。第3に、プロセッサ群
は、11ビットのキャラクタのスタート・ビットを検出
して、スタート・ビットの立ち下がり端に関して中間ビ
ット点のデータ・ビットをサンプリングすることによ
り、バス上のデータをサンプリングする。
【0027】クロック・スキュー(クロック速度の差)
がないとき、中間ビットのサンプリングによりデータ衝
突が検出される。上記のシステム設計で最大4パーセン
トのクロック・スキューを想定して、データ衝突を検出
する(第1送信プロセッサのスタート・ビットの立ち下
がりエッジを基準点として)ためには、解析しなければ
ならない条件が3つある。その条件とは:(1)基準エ
ッジから(ビット時間の)ゼロないし50パーセント内
で始まる送信;(2)基準エッジから(ビット時間の)
86パーセント後に始まる送信;および(3)基準エッ
ジから(ビット時間の)51ないし86パーセントから
始まる送信である。第1条件(ゼロないし50パーセン
ト)に関しては、各プロセッサが第1キャラクタ内で無
効のソース・バイトを検出する。これは、たとえば、す
べてゼロのソース・バイトを検出して、これをデータ衝
突と解釈する中間ビット・サンプリング法によるもので
ある。
がないとき、中間ビットのサンプリングによりデータ衝
突が検出される。上記のシステム設計で最大4パーセン
トのクロック・スキューを想定して、データ衝突を検出
する(第1送信プロセッサのスタート・ビットの立ち下
がりエッジを基準点として)ためには、解析しなければ
ならない条件が3つある。その条件とは:(1)基準エ
ッジから(ビット時間の)ゼロないし50パーセント内
で始まる送信;(2)基準エッジから(ビット時間の)
86パーセント後に始まる送信;および(3)基準エッ
ジから(ビット時間の)51ないし86パーセントから
始まる送信である。第1条件(ゼロないし50パーセン
ト)に関しては、各プロセッサが第1キャラクタ内で無
効のソース・バイトを検出する。これは、たとえば、す
べてゼロのソース・バイトを検出して、これをデータ衝
突と解釈する中間ビット・サンプリング法によるもので
ある。
【0028】第2条件(送信において基準端から86パ
ーセント以上ずれている)に関しては、データ衝突は第
1キャラクタ内の無効ソース・バイトまたはフレーミン
グ・エラーとして検出される。第1キャラクタ内のフレ
ーミング・エラーが起こるのは、ソース・バイトの第1
キャラクタのビット2−10の2個の基準クロック間に
ある4パーセントの変動によって両プロセッサのビット
10の前縁(leadingedge) が、互いの36パーセント
(9ビット+4パーセント/ビット)以内に入るためで
ある。フレーミング・エラーを検出するには、1台のプ
ロセッサのビット10の前縁が、ビット10の50パー
セント点にある中間ビット・サンプリング点と交差しな
ければならない。そのため、あるプロセッサが、基準点
から87パーセント過ぎた地点で送信を開始して、36
パーセント進んだクロックを持っていたとすると、最終
エッジは、第1キャラクタのビット10内の51パーセ
ント(87−36)になる。そのため、すべてのプロセ
ッサ受信機は、それらに関連するUARTからフレーミ
ング・エラーを検出することになる。フレーミング・エ
ラーが確実に起こるようにするためには、各々が論理1
である2個のストップ・ビットを図3に示されるように
用いている。
ーセント以上ずれている)に関しては、データ衝突は第
1キャラクタ内の無効ソース・バイトまたはフレーミン
グ・エラーとして検出される。第1キャラクタ内のフレ
ーミング・エラーが起こるのは、ソース・バイトの第1
キャラクタのビット2−10の2個の基準クロック間に
ある4パーセントの変動によって両プロセッサのビット
10の前縁(leadingedge) が、互いの36パーセント
(9ビット+4パーセント/ビット)以内に入るためで
ある。フレーミング・エラーを検出するには、1台のプ
ロセッサのビット10の前縁が、ビット10の50パー
セント点にある中間ビット・サンプリング点と交差しな
ければならない。そのため、あるプロセッサが、基準点
から87パーセント過ぎた地点で送信を開始して、36
パーセント進んだクロックを持っていたとすると、最終
エッジは、第1キャラクタのビット10内の51パーセ
ント(87−36)になる。そのため、すべてのプロセ
ッサ受信機は、それらに関連するUARTからフレーミ
ング・エラーを検出することになる。フレーミング・エ
ラーが確実に起こるようにするためには、各々が論理1
である2個のストップ・ビットを図3に示されるように
用いている。
【0029】前述の第3条件(スタート・ビットの51
ないし81パーセント内のデータ衝突)に関しては、デ
ータ衝突は、そのバイトの第1キャラクタ内の無効ソー
ス・バイトまたはフレーミング・エラーとしては検出さ
れない。次の例を考える。各キャラクタのビット10,
11は常に論理1に設定されることになる。そのため3
6パーセントの変動(drift)が、9ビットにわたり起こ
りうる(ビット時間当り4パーセントの9ビット分)。
この36パーセントの変動は、ビット10の前に起こり
うる。あるプロセッサが他のプロセッサの基準点から5
1ないし86パーセント過ぎた時点で送信を開始して、
第1プロセッサがより速いクロックによって36パーセ
ントの差を作り出すとすると、各プロセッサの送信され
るビット10は、互いに15(51−36)ないし50
パーセント(81−36)になる。各ビットはサンプリ
ングされた中間ビット(ビット内の50パーセント)で
あるので、各プロセッサはビット10を有効ストップ・
ビットと見なし、フレーミング・エラーは検出されな
い。第2プロセッサが第1プロセッサの基準点から51
ないし86パーセント過ぎた時点で送信を開始して、2
台のプロセッサが2個の隣接するビットのソース・バイ
ト識別子を持つ場合、すべての受信プロセッサは有効ソ
ース・バイトを発見する。このデータ衝突は検出されな
い。バス上のすべてのプロセッサは、第1プロセッサの
スタート・ビットに関して中間ビット時間でデータのサ
ンプリングを開始する。9ビット後に、プロセッサA,
Bは追いつき(caught up)、ビット当り最大4パーセン
トの変動となる。ビット10に関しては、2台のプロセ
ッサ間の差はビット時間の50パーセントになる。その
結果、すべてのプロセッサは、ビット10を有効ストッ
プ・ビットとしてサンプリングして、データ衝突は検出
されない。第3の条件の問題を克服するためには、各プ
ロセッサを独自に識別するソース・バイトを、図4に示
されるバイト32のように各プロセッサにより繰り返
す。ここでも1ビット当り4パーセントの最大変動をも
たせると、各プロセッサにより送信される第2キャラク
タはその差が33パーセント未満(81−48)の前縁
(第12番目の被送信ビット)を持つ。このエラー条件
は、前述の第1条件のように検出される。
ないし81パーセント内のデータ衝突)に関しては、デ
ータ衝突は、そのバイトの第1キャラクタ内の無効ソー
ス・バイトまたはフレーミング・エラーとしては検出さ
れない。次の例を考える。各キャラクタのビット10,
11は常に論理1に設定されることになる。そのため3
6パーセントの変動(drift)が、9ビットにわたり起こ
りうる(ビット時間当り4パーセントの9ビット分)。
この36パーセントの変動は、ビット10の前に起こり
うる。あるプロセッサが他のプロセッサの基準点から5
1ないし86パーセント過ぎた時点で送信を開始して、
第1プロセッサがより速いクロックによって36パーセ
ントの差を作り出すとすると、各プロセッサの送信され
るビット10は、互いに15(51−36)ないし50
パーセント(81−36)になる。各ビットはサンプリ
ングされた中間ビット(ビット内の50パーセント)で
あるので、各プロセッサはビット10を有効ストップ・
ビットと見なし、フレーミング・エラーは検出されな
い。第2プロセッサが第1プロセッサの基準点から51
ないし86パーセント過ぎた時点で送信を開始して、2
台のプロセッサが2個の隣接するビットのソース・バイ
ト識別子を持つ場合、すべての受信プロセッサは有効ソ
ース・バイトを発見する。このデータ衝突は検出されな
い。バス上のすべてのプロセッサは、第1プロセッサの
スタート・ビットに関して中間ビット時間でデータのサ
ンプリングを開始する。9ビット後に、プロセッサA,
Bは追いつき(caught up)、ビット当り最大4パーセン
トの変動となる。ビット10に関しては、2台のプロセ
ッサ間の差はビット時間の50パーセントになる。その
結果、すべてのプロセッサは、ビット10を有効ストッ
プ・ビットとしてサンプリングして、データ衝突は検出
されない。第3の条件の問題を克服するためには、各プ
ロセッサを独自に識別するソース・バイトを、図4に示
されるバイト32のように各プロセッサにより繰り返
す。ここでも1ビット当り4パーセントの最大変動をも
たせると、各プロセッサにより送信される第2キャラク
タはその差が33パーセント未満(81−48)の前縁
(第12番目の被送信ビット)を持つ。このエラー条件
は、前述の第1条件のように検出される。
【0030】
【発明の効果】以上の説明からわかるように、データ衝
突を検出し、システム・データ・バスに対して優先順位
を付けたアクセスを行う多重プロセッサ通信システムが
示される。この通信システムは、表に基づいて動的に変
更することのできる構成によって、プロセッサ間のその
後の通信に優先権を与える。さらに、このシステムによ
り、直接データ衝突に関わらないプロセッサに、他のプ
ロセッサ間のデータ衝突が解消しないうちは、システム
・バスに対するアクセスのリクエストを行わせないよう
にする。これは衝突を起こしていないプロセッサを最大
限の時間待たせて、その後でメッセージの送信を試みる
ようにさせることにより実行する。この構成により、デ
ータ衝突が迅速に検出され、プロセッサ間の通信が優先
順位を付けて行われる多重プロセッサ通信システムが提
供される。優先順位を付ける構成は、いくつかのプロセ
ッサがそれぞれ、システムの全体的な機能のうち専門の
部分を実行している場合に特に有用である。本発明の好
適な実施例が図示され、詳細に説明されたが、本発明の
精神から逸脱することなく、あるいは添付の請求項の範
囲から逸脱することなく多くの修正が可能であること
は、当業者には明白であろう。
突を検出し、システム・データ・バスに対して優先順位
を付けたアクセスを行う多重プロセッサ通信システムが
示される。この通信システムは、表に基づいて動的に変
更することのできる構成によって、プロセッサ間のその
後の通信に優先権を与える。さらに、このシステムによ
り、直接データ衝突に関わらないプロセッサに、他のプ
ロセッサ間のデータ衝突が解消しないうちは、システム
・バスに対するアクセスのリクエストを行わせないよう
にする。これは衝突を起こしていないプロセッサを最大
限の時間待たせて、その後でメッセージの送信を試みる
ようにさせることにより実行する。この構成により、デ
ータ衝突が迅速に検出され、プロセッサ間の通信が優先
順位を付けて行われる多重プロセッサ通信システムが提
供される。優先順位を付ける構成は、いくつかのプロセ
ッサがそれぞれ、システムの全体的な機能のうち専門の
部分を実行している場合に特に有用である。本発明の好
適な実施例が図示され、詳細に説明されたが、本発明の
精神から逸脱することなく、あるいは添付の請求項の範
囲から逸脱することなく多くの修正が可能であること
は、当業者には明白であろう。
【図1】本発明による多重プロセッサ通信システムのブ
ロック図である。
ロック図である。
【図2】本発明による図1の多重プロセッサ構成のブロ
ック図である。
ック図である。
【図3】本発明による多重プロセッサ通信システムのキ
ャラクタ・フォーマットを示す説明図である。
ャラクタ・フォーマットを示す説明図である。
【図4】本発明によるバス・プロトコルのデータ・レイ
アウトを示す説明図である。
アウトを示す説明図である。
【図5】本発明による衝突検出方法の流れ図である。
【図6】本発明によるバス・アイドル検出機構の流れ図
である。
である。
9 バス 10,20 プロセッサ装置 11,21 プロセッサ 13,23 汎用非同期受信機通信機(UART) 15,25 クロック 16,26 メモリ 17,27 受信リード線 19,29 送信リード線
フロントページの続き (51)Int.Cl.5 識別記号 庁内整理番号 FI 技術表示箇所 G06F 15/16 460 Z 9190−5L
Claims (3)
- 【請求項1】 バス(9)により結合された複数のプロ
セッサ(1,2,3,4,5,6,7,8)を含む多重
プロセッサ通信システムにおいてデータ衝突を検出し解
消する方法であって:前記の複数のプロセッサ(1,
2,3,4,5,6,7,8)のうちのある1台のプロ
セッサ(1,2,3,4,5,6,7または8)によ
り、メッセージ(30)を介して前記の複数のプロセッ
サ(1,2,3,4,5,6,7,8)のうちの少なく
とも1台の他のプロセッサ(1,2,3,4,5,6,
7または8)との通信が必要とされることを判定する第
1決定(40)段階;前記1台のプロセッサ(1,2,
3,4,5,6,7または8)により、データ衝突フラ
ッグが前にデータ衝突が起きたことを示しているか否か
を判定する第2決定(44,46)段階;前記の複数の
プロセッサ(1,2,3,4,5,6,7,8)の各々
により、前記メッセージ(30)の複数の発信元指標
(31,32)をチェックして(50,51,52)デ
ータ衝突を発見する段階であって、前記発信元指標(3
1,32)は、前記メッセージ(30)を送信するプロ
セッサ(1,2,3,4,5,6,7または8)の識別
子を表示するものである前記段階;前記データ検出が発
見された場合、ある選択時間を待機する(58)段階;
前記データ衝突が発見された場合、第2決定段階(4
4,46)と、チェック段階(50,51,52)と、
待機段階(58)とを繰り返す段階;およびデータ衝突
が発見されなければ、前記メッセージ(30)を前記の
少なくとも1台の他のプロセッサ(1,2,3,4,
5,6,7または8)に送信する(54)段階;を具備
することを特徴とする方法。 - 【請求項2】 バス(9)により結合された複数のプロ
セッサ(1,2,3,4,5,6,7,8)を含む多重
プロセッサ通信システムにおけるデータ衝突検出装置で
あって:前記バス(9)に結合された複数の送信手段
(13,23)であって、前記の複数の送信手段(1
3,23)の各々は前記の複数のプロセッサ(1,2,
3,4,5,6,7,8)のうちの対応する1台に結合
されており、前記送信手段(13,23)の各々が、発
信元プロセッサ(1,2,3,4,5,6,7または
8)から、前記の複数のプロセッサ(1,2,3,4,
5,6,7,8)のうちの少なくとも1台の目的地プロ
セッサ(1,2,3,4,5,6,7または8)にメッ
セージ(30)を送るもの;前記バス(9)に結合され
た複数の受信手段(13,23)であって、前記の複数
の受信手段(13,23)の各々は前記プロセッサのう
ちの対応する1台(1,2,3,4,5,6,7または
8)に結合され、前記受信手段(13,23)は前記バ
ス(9)を介して前記の被送信メッセージ(30)を受
け取るもの;前記プロセッサ(1,2,3,4,5,
6,7,8)の各々により、前記メッセージ(30)の
発信元プロセッサ指標(31,32)を調べることによ
り、データ衝突が起きたか否かを決定する手段(50,
51,52);データ衝突が判定されたときに、前記発
信元プロセッサの各々(1,2,3,4,5,6,7ま
たは8)により、ある選択時間を待機する手段(5
8);およびデータ衝突が判定されなかった場合に、前
記メッセージ(30)の送信(54)を継続するように
動作する各々の前記送信手段(13,23);を具備す
ることを特徴とする装置。 - 【請求項3】 バス(9)を介して結合された複数のプ
ロセッサ(1,2,3,4,5,6,7,8)を含み、
前記バス(9)を介して前記の複数のプロセッサ(1,
2,3,4,5,6,7,8)間でメッセージ(30)
を送信する多重プロセッサ通信システムにおけるメッセ
ージ・フォーマット(30)であって:前記の複数のプ
ロセッサ(1,2,3,4,5,6,7,8)のうちの
1台を、前記メッセージ(30)の発信元プロセッサ
(1,2,3,4,5,6,7または8)として識別す
るための、少なくとも2個の連続したソース・ワード
(31,32);前記メッセージ(30)を受け取るた
めに、複数のプロセッサ(1,2,3,4,5,6,
7,8)のうちの、少なくとも1台の目的地プロセッサ
(1,2,3,4,5,6,7または8)を表わす目的
地ワード(33)であって、前記の少なくとも2個のソ
ース・ワード(31,32)の直後に続くもの;前記発
信元プロセッサ(1,2,3,4,5,6,7または
8)と、前記目的地プロセッサ(1,2,3,4,5,
6,7または8)との間で情報を送信する少なくとも1
個のデータ・ワード(34)であって、前記目的地ワー
ド(33)の後に続くもの;および前記バス(9)がア
イドルであることを示す少なくとも1個のアイドル・ワ
ード(35)であって、前記の少なくとも1個のデータ
・ワード(34)の後に続くもの;を具備することを特
徴とするメッセージ・フォーマット。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US78512491A | 1991-10-30 | 1991-10-30 | |
US785,124 | 1991-10-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05308364A true JPH05308364A (ja) | 1993-11-19 |
Family
ID=25134513
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4299263A Pending JPH05308364A (ja) | 1991-10-30 | 1992-10-12 | 多重プロセッサ通信システムにおけるデータ衝突検出方法および装置 |
Country Status (8)
Country | Link |
---|---|
US (1) | US5383185A (ja) |
EP (1) | EP0539796A3 (ja) |
JP (1) | JPH05308364A (ja) |
KR (1) | KR100258398B1 (ja) |
AU (1) | AU655303B2 (ja) |
IE (1) | IE922611A1 (ja) |
NO (1) | NO923372L (ja) |
TW (1) | TW250608B (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000124951A (ja) * | 1998-10-13 | 2000-04-28 | Hitachi Ltd | ネットワーク帯域管理方式 |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
USRE39879E1 (en) * | 1992-03-06 | 2007-10-09 | Rambus, Inc. | Method of transferring data by transmitting lower order and upper order memory address bits in separate words with respective op codes and start information |
US5715407A (en) * | 1992-03-06 | 1998-02-03 | Rambus, Inc. | Process and apparatus for collision detection on a parallel bus by monitoring a first line of the bus during even bus cycles for indications of overlapping packets |
FI96158C (fi) * | 1992-11-27 | 1996-05-10 | Nokia Telecommunications Oy | Puhelunmuodostusmenetelmä sekä transmission trunking-tyyppinen radiojärjestelmä |
CN1144584A (zh) * | 1994-04-04 | 1997-03-05 | 摩托罗拉公司 | 无线电通信系统中检测和处理碰撞的方法和装置 |
US7991347B1 (en) | 1994-04-07 | 2011-08-02 | Data Innovation Llc | System and method for accessing set of digital data at a remote site |
US6473860B1 (en) | 1994-04-07 | 2002-10-29 | Hark C. Chan | Information distribution and processing system |
US5751974A (en) * | 1994-07-21 | 1998-05-12 | Motorola, Inc. | Contention resolution for a shared access bus |
US7181758B1 (en) * | 1994-07-25 | 2007-02-20 | Data Innovation, L.L.C. | Information distribution and processing system |
CA2171456A1 (en) * | 1994-08-03 | 1996-02-15 | David Earl Wilder | Advanced communication system architecture |
KR0136472B1 (ko) * | 1994-12-14 | 1999-05-15 | 구자홍 | 오디오 비디오 시스템의 공동 통신장치 |
FI955200A (fi) * | 1995-10-31 | 1997-05-01 | Nokia Mobile Phones Ltd | Yhteiskäytäntö half-duplex -liikennöintiä varten |
US5754799A (en) * | 1996-02-28 | 1998-05-19 | Paradyne Corporation | System and method for bus contention resolution |
US5768543A (en) * | 1996-02-28 | 1998-06-16 | Paradyne Corporation | Slot-token protocol |
US5940400A (en) * | 1996-11-06 | 1999-08-17 | Motorola, Inc. | Method, device, wireless transceiver and computer for providing collision detection in wireless carrier sense multiple access systems |
US5822538A (en) * | 1996-11-20 | 1998-10-13 | Advanced Micro Devices, Inc. | Method and apparatus for prioritizing traffic in half-duplex networks by selecting delay intervals from fixed ranges |
US6078591A (en) * | 1997-07-17 | 2000-06-20 | Advanced Micro Devices, Inc. | Apparatus and method for selectively modifying collision delay intervals based on a detected capture effect in half-duplex network |
US6625162B2 (en) * | 1997-12-17 | 2003-09-23 | Canon Kabushiki Kaisha | Method and apparatus for data transmission with control over access to a transmission medium |
KR100297590B1 (ko) * | 1998-09-18 | 2001-08-07 | 서평원 | 교환기에서 스위치 네트워크의 경로 시험 방법 |
TW420911B (en) | 1999-03-15 | 2001-02-01 | Actpro Internat Hk Ltd | Mixed mode transceiver digital control network and collision-free communication method |
JP2008118548A (ja) * | 2006-11-07 | 2008-05-22 | Sharp Corp | 通信装置および通信装置としてコンピュータを機能させるためのプログラム |
US7657650B2 (en) * | 2006-12-01 | 2010-02-02 | Lsi Corporation | Reliable and efficient data transfer over serial port |
KR101562799B1 (ko) | 2013-10-30 | 2015-10-26 | 삼성에스디에스 주식회사 | 프로세스 간 통신 방법 및 그 컴퓨팅 장치 |
CN109995632B (zh) * | 2019-05-16 | 2021-11-02 | 阳光电源股份有限公司 | 多机通信系统的通信方法、装置及系统 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0087664B1 (en) * | 1980-02-04 | 1985-09-11 | Xerox Corporation | Phase decoder for data communication systems |
US4583161A (en) * | 1981-04-16 | 1986-04-15 | Ncr Corporation | Data processing system wherein all subsystems check for message errors |
US4332027A (en) * | 1981-10-01 | 1982-05-25 | Burroughs Corporation | Local area contention network data communication system |
US4539677A (en) * | 1983-07-28 | 1985-09-03 | International Business Machines Corp. | Multiple access data communication system |
US4751701A (en) * | 1985-11-14 | 1988-06-14 | Hughes Network Systems, Inc. | TDM collision detector |
US4785396A (en) * | 1986-01-28 | 1988-11-15 | Intel Corporation | Push-pull serial bus coupled to a plurality of devices each having collision detection circuit and arbitration circuit |
US4701909A (en) * | 1986-07-24 | 1987-10-20 | American Telephone And Telegraph Company, At&T Bell Laboratories | Collision detection technique for an optical passive star local area network using CSMA/CD |
US4807222A (en) * | 1986-08-25 | 1989-02-21 | American Telephone And Telegraph Company At&T Bell Laboratories | Cordless accessed high-speed high-capacity local area networks |
US4707829A (en) * | 1986-09-25 | 1987-11-17 | Racal Data Communications Inc. | CSMA-CD with channel capture |
US4888763A (en) * | 1988-03-11 | 1989-12-19 | Codenoll Technology Corporation | Method and apparatus for detecting the collision of data packets utilizing a preassigned transceiver code in the preamble |
-
1992
- 1992-08-26 IE IE261192A patent/IE922611A1/en not_active IP Right Cessation
- 1992-08-28 NO NO92923372A patent/NO923372L/no not_active Application Discontinuation
- 1992-09-01 AU AU22019/92A patent/AU655303B2/en not_active Ceased
- 1992-09-22 TW TW081107464A patent/TW250608B/zh active
- 1992-10-12 JP JP4299263A patent/JPH05308364A/ja active Pending
- 1992-10-14 EP EP9292117505A patent/EP0539796A3/en not_active Ceased
- 1992-10-16 KR KR1019920019145A patent/KR100258398B1/ko not_active IP Right Cessation
-
1993
- 1993-09-20 US US08/124,418 patent/US5383185A/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000124951A (ja) * | 1998-10-13 | 2000-04-28 | Hitachi Ltd | ネットワーク帯域管理方式 |
Also Published As
Publication number | Publication date |
---|---|
KR930009284A (ko) | 1993-05-22 |
AU2201992A (en) | 1993-05-06 |
IE922611A1 (en) | 1993-05-05 |
AU655303B2 (en) | 1994-12-15 |
KR100258398B1 (ko) | 2000-06-01 |
NO923372L (no) | 1993-05-03 |
NO923372D0 (no) | 1992-08-28 |
US5383185A (en) | 1995-01-17 |
EP0539796A2 (en) | 1993-05-05 |
TW250608B (ja) | 1995-07-01 |
EP0539796A3 (en) | 1994-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH05308364A (ja) | 多重プロセッサ通信システムにおけるデータ衝突検出方法および装置 | |
JP3340738B2 (ja) | 並行パケットバスに関する方法及び装置 | |
US5802048A (en) | Method and apparatus for accelerating arbitration in a serial bus by detection of acknowledge packets | |
US5001642A (en) | Method for operating a data processing system | |
US4641307A (en) | Data packet transmission using shared channel | |
EP0094180B1 (en) | Dual-count, round-robin distributed arbitration technique for serial buses | |
US4785396A (en) | Push-pull serial bus coupled to a plurality of devices each having collision detection circuit and arbitration circuit | |
EP0196911A2 (en) | Local area networks | |
JPH0752877B2 (ja) | インタ−モジユ−ルデ−タ通信用シリアルデ−タバス | |
JPH09107373A (ja) | ローカル通信システム | |
JPS60148249A (ja) | メツセ−ジ除去方法 | |
JPS63149939A (ja) | 通信回路網のためのトークン通過方法及び通信回路網 | |
EP3772839B1 (en) | Security module for a serial communications device | |
KR0145080B1 (ko) | 다중 스테이션 통신 버스 시스템 및 스테이션 | |
JPH0793273A (ja) | 障害監視機構を具備したマルチcpuシステム | |
EP0237839B1 (en) | Serial data bus for intermodule data communications and method of data arbitration and collision detection on a data bus | |
EP0076401A2 (en) | Self adjusting, distributed control, access method for a multiplexed single signal data bus | |
JPS5986940A (ja) | マルチドロツプ方式の情報伝送方式 | |
EP0482828B1 (en) | Message-oriented bank controller interface | |
CN111490919A (zh) | 一种主从机系统、设备终端及其通信校验方法 | |
JP3217397B2 (ja) | 通信制御装置のデータ送信方法 | |
Livani | SHARE: A transparent approach to fault-tolerant broadcast in CAN | |
KR950009583B1 (ko) | 엠에스엑스 컴퓨터 네트웍에서 전송라인의 상태를 검사하여 충돌을 인식하는 방법 | |
WO1993003563A1 (en) | Automatically deactivated no-owner frame removal mechanism for token ring networks | |
JPH0863407A (ja) | 情報転送制御装置 |