JPS60500117A - バス競合の解決のための方法と装置 - Google Patents

バス競合の解決のための方法と装置

Info

Publication number
JPS60500117A
JPS60500117A JP84500447A JP50044784A JPS60500117A JP S60500117 A JPS60500117 A JP S60500117A JP 84500447 A JP84500447 A JP 84500447A JP 50044784 A JP50044784 A JP 50044784A JP S60500117 A JPS60500117 A JP S60500117A
Authority
JP
Japan
Prior art keywords
bus
communication
communication controller
register
controller
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.)
Granted
Application number
JP84500447A
Other languages
English (en)
Other versions
JPH0695676B2 (ja
Inventor
ベツカー,マーク ウイリアム
スター,トーマス ジヨナサン ジエレミー
Original Assignee
エイ・ティ・アンド・ティ・コーポレーション
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 エイ・ティ・アンド・ティ・コーポレーション filed Critical エイ・ティ・アンド・ティ・コーポレーション
Publication of JPS60500117A publication Critical patent/JPS60500117A/ja
Publication of JPH0695676B2 publication Critical patent/JPH0695676B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/403Bus networks with centralised control, e.g. polling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • H04L12/413Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection (CSMA-CD)

Abstract

(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。

Description

【発明の詳細な説明】 バス競合の解決のための方法と装置 本発明はディジタル通信方式、特に多数の送信機が共用バスへのアクセスを競合 しなければならないようなシステムに関する。
発明の背景 半導体技術の発展によって問題解決のためにコンピュータに依存することはます ます多くなって来ている。特にマイクロプロセッサのような小型で安価なコンピ ュータの普及の結果として、多数のコンピュータとコンピュータの端末がコンピ ュータ通信ネットワークによって相互接続できるようにすることが、1す才す重 要になって来ている。この問題を実現するひとつの手法は種々のコンピュータ装 置をデータ送信機およびデータ受信機を経由して単一のバスに接続する方法であ る。この方法によるひとつのシステムは1977年12月13日のR,W。
メトキャルフの米国特許4,063.220に示されている。このシステムでは 、ひとつの送信機は一時にはひとつのデータを送信することを許され、送信され るデータの一部によって宛先の受信機のアドレスが規定される。
相互接続されたコンピュータが大量データ転送や信号のような多様な機能を頻々 実行する。第2のコンピュータが大量データの転送を完了するまで比較的短い期 間の信号メツセージに使用される第1のコンピュータに対してバスアクセスを禁 止することは望1しくない。従って、優先方式でバスに対してアクセスできるよ うにする何かの手段が必要である。
周知の優先データ取扱いシステムのあるものにおいては、通信回線に接続された 複数の遠方の通信ステーションの各々が一義的な優先アクセス番号を持っている 。中央制御からの信号もまたそのチャネルに接続されたときに、チャネルアクセ スを望む各々の遠隔ステーションがその優先アクセス番号の送信を開始する。各 々の遠方のステーションはそれが送信するビットとチャネルで伝送されるビット の間に差が検出されなかったときだけその優先アクセス番号の送信を継続する。
各々の遠隔ステーションは一義的な優先アクセス番号を持つから、ひとつのステ ーションだけがその番号の送信を完了することができ、これによってチャネルへ のアクセスができることになる。このようなシステムでは中央制御がアクセスの 調整をしなければならないようになっているために、その設計と実現は不必要に 複雑で高価なものになる。さらに、このようなシステムではそれによって遠方の ステーションが低優先のステーションの送信を中断させるための手段が存在しな い。従って、当業者に認識されている問題は中央制御の調整によることなく優先 方式で共用バスにプリエンブチイブなアクセスを提供する方法である。
発明の概要 本発明に従えば、バスで伝送される各フレームは優先フィールドを含み、各ステ ーションによってバスが監視され、ステーションはそれがより送信の優先順の高 いフレームを持つときだけ特殊キャラクタを送信することによって、バスに対す る優先アクセスを行なうようにし、ハスニアクセスしようとしている二つのステ ーションの間の競合は中央制御による調整を要することなく解決されるような共 用バスに対する競合解決のための方法と装置によって以上の問題は有利に解決さ れる。さらに、バスに対するプリエンブチイブのアクセスはデータの再送を必要 とすることなく優先方式で実現される。すなわち、中断されたフレームは優先し たフレームの送信のあと中断された点から継続される。
本発明に従うシステムはバスを通して複数のユーザ装置の間での通信を行なうの に使用され多数の通信コントローラを必要とする。各通信コントローラは送信機 を持ち、これがユーザ装置の少くともひとつをバスに選択的に結合し、情報をフ レーム形式で送信し、各フレームは優先フィールドを持つようになっている。各 通信コントローラはさらに受信機を持ち、これはバスを監視していて、これがバ ス上を伝送される優先フィールドを記憶するようになっている。第1の通信コン トローラの送信機はさら例第1のユーザ装置からの要求と第1の通信コントロー ラの受信機によって蓄積された優先フィールドに応動して第1の通信コントロー ラの受信機によって記憶された優先フィールドによって示された優先順より高い 優先度を持つフレームを送信するようにバスに対して第1のユーザ装置を結合す る回路を含んでいる。
本発明のよシ完全なる理解は以下の図面を参照した説明を考察することにより得 られるものである。
第1図は本発明に従う通信システムのブロック図:第2図乃至第4図1−1:第 5図に示すように配置され第1図のシステムに含まれる通信コントローラの詳細 なブロック図: 第6図および第7図は第8図に示すように配置され、第2図乃至第4図の通信コ ントローラで使用される第1のフレームチェックシーケンスシフトレジスタの詳 細な図: 第9図および第10図は第11図に示すように配置され、第2図乃至第4図の通 信コントローラで使用される第2のフレームチェックシーケンスシフトレジスタ の詳細な図; 第12図および第13図は第2図乃至第4図の通信コントローラに含捷れる回路 て関連する状態図;第14図は第2図乃至第4図の通信コントローラで使用され る受信機の状態フィールドのエンコーディングを示す表; 第15図は第1図のシステムで使用されるフレーム形式の図; 第16図は第1図のシステムのフレームの円滑なプリエンブト動作を示す図; 第17図および第18図は第2図乃至第4図の通信コントローラに含まれるレジ スタのビット割当表:第19図および第21図は第1図のシステムの動作をさら に図示する例に関連する図である。
全体的説明 第1図は本発明に従う通信システムのブロック図であり、ここでは16個のユー ザ装置10−0乃至10−15が共用された直列バス100を経由して相互に通 信するようになっている。16個のユーザ装置10−0乃至10−15は16個 の本質的に同様な通信コントローラ300−0乃至3000−15の関連するも のを通してバス100に結合されている。ユーザ装置10−0乃至1o−isは テレターミナル、プリンタ、アラームあるいはコンピュータのような多様な装置 の任意のものを表わしている。第1図の例においては、各通信コントローラはオ ープンコレクタのインバータ、例えば通信コントローラ3000−0のインバー タ3500を経由してバス100に対してデータを送信する。バス1ooはプル アンプ抵抗Rを通して正の電圧+Vに接続されている。
通信コントローラ3000−0乃至3000−15のいずれかのインバータ35 00の入力端子に高電圧の信号が送られると、他の通信コントローラのインバー タ3500の入力端子に送られる信号に関係すく、バス100には低電圧の信号 が与えられる。各通信コントローラは通信コントローラ3000−0のインバー タ3600のようなインバータを経由してバス100からデータを受信する。バ ス100には負論理の信号が与えられる。すなわち論理111 //は低電圧信 号で表わされ、論理90“は高電圧信号で表わされる。しかし、通信コントロー ラの内部では正論理が適用される。すなわち、論理91 〃は高電圧信号で表わ され、論理SS □ “は低電圧信号で表わされる。従って、バス100の特性 は論理VX1 //の信号が通信コントローラ3000−0乃至3ooO−15 のいずれかのインバータ3500の入力端子に対して送信されたときに、他の通 信コントローラのインバータ3500の入力端子に対して送信されている信号と は無関係に論理へ1 〃の信号がバス100に伝送されるようになっている。空 きの期間では、通信コントローラがいずれもアクティブに通信を行なっておらず 、バス100は論理lゝ0〃の値に留まることになる。クロック発生器54は通 信コントローラ3000−0乃至3000−15の動作を同期するためにクロッ ク線53を経由してクロック信号を与える。
第15図に示した予め定められたフレーム形式に従って、データは可変長のフレ ームを形成してバス100に伝送される。フレームの開始は8ビツトのプリエン ブトキャラクタ11111110があり、これに8ビツトのフレームキャラクタ 01111110が付く。フラグキャラクタのあとには8ビツトのアドレスフィ ールドがある。この実施例においては、アドレスフィールドはこのフレームの情 報源ユーザ装置を規定する4ビツトの情報源サブフィールドと、そのフレームの 宛先ユーザ装置を規定する4ビツトの宛先サブフィールドとを含んでいる。
サブフィールドはそれが与えられたユーザ装置の宛先の第2の部分の2進信号を 含むときに与えられたユーザ装置を規定する。例えば、第15図のフレームの情 報源は信号源サブフィールド0001によって規定されるようにユーザ装置10 −1であり、フレームの宛先は宛先サブフィールド1100で規定されるように ユーザ装置10−12である。アドレスフィールドの後には可変のデータフィー ルドがちシ、これは通信されるべきデータを含んでいる。この実施例においては 、データフィールドは少くとも8ビツトを含み、これは予め定められた制御フィ ールドと情報フィールドを含んでもよいが、その詳細はここでは関係ない。デー タフィールドのあとには誤り検査に用いられる16ビツトのフレーム検査シーケ ンス(Fe2)のフィールドがある。フレームの終りには01111110のフ ラグキャラクタがある。データフィールドは可変長であるから、アドレスフィー ルドの位置は各フレームのフラグに関して定められ、FCSフィールドの位置は 終了フラグに関して定められる。データの透過性を実現する周知の方法に従えば 、開始フラグと終了フラグの間で5個の連続した“1 “が生ずるたびにダミー の10 〃が挿入されて、その間に01111110のキャラクタが生じないこ とを保証する。従って受信されたフレームからはO削除を行ない、5個の連続し たゝ11 “に続くNO〃は削除しなければならない。
本例の周知の誤り検査方法に従えば、FCSフィールドに挿入される16ビツト のシーケンスは(a)X (X s十X14+X13+・、X2+X+1 )を 生成多項式x16+X 12 + X ’ +1で除した(モジュロ2)剰余( ここでkは開始フラグの最終ビットとFe2の第1ビツトを含まないその間の挿 入されたダミービットを除いたフレーム中のビットの数である)と(bl開始フ ラグの最終ビットとFe2の最初のビットを含まないその間のフレームの内容で 挿入されたダミービットを含まないものをX16で乗じて、生成多項式X”+X 12+X’ +1で除した(モジュロ2)ものの和の1の補数である。
各々の通信コントローラ3000−0乃至3000−15はフォーマツダインタ フェース3010を含み、これは関連するユーザ装置からデータを受信・蓄積し 、またフォーマツダインタフェース3010からプロセッサインタフェース32 00を通して送信機3300に対して8ビツトバイトのデータの転送を制御する プロセッサ3001を含んでいる。送信機3300は予め定められた第15図の フレームフォーマットで誘導されたFCSフィールドと共にデータを挿入し、結 果として得られたフレームをインバータ3500を経由してバス100に送出す る。各々の通信コントローラ3000−0乃至3000−15はまた受信機34 00を含み、これはインバータ3600を経由してバス100からフレームを受 信する。各々の受信機は二つの機能を実行する。第1に、これはバス100を連 続的に監視してバス100が三つの状態、空き、未知あるいは既知のいずれにあ るかを判定する。バス100は初期にはそれに対して7ビントの論理11 “の プリエンブトキャラクタが伝送されるまで、空き状態にあると定義される。バス 100はそのあとフレーム開始フラグのあと少くとも24のフラグ以外 のビッ ト(ダミーのゝV□ //ビットを除く)が伝送されるまで未知であると定義さ れ、そのあとで、既知の状態になり、通信コントローラ3000−0乃至300 0−15の各々の受信機3400I′i、伝送されるフレームのアドレスフィー ルドを記憶することになる。フレーム終了フラグが伝送されたあとて、バス10 0は再び空き状態になり、連続した論理9o“が伝送される。
例えば通信コントローラ300n−0のような与えられた通信コントローラの受 信機3400の第2の機能はフレーム宛先サブフィールドが通信コントローラ3 000−0に関連したユーザ装置10−0のような与えられた通信コントローラ に関するユーザ装置を規定したときにだけ実行される。その場合には、受信機3 40oは受信フレームのデータフィールドを抽出し、このようなデータを8ビツ トのハイドの形でプロセッサインタフェース3200を経由してフォーマツダイ ンタフェース3010に転送し、これが次にデータをユーザ装置1〇−〇に送信 する。受信機340oばまたプロセッサインタフェース3200を経由してプロ セッサ3001に対して受信されたFCSフィールドが正しいかどうかの表示を 送信する。
通信コントローラ3000−0乃至3000−15は全体のフレームの再送をプ リエンブトされたデバイスに対して要求することなくバス100に接続された他 のユーザ装置からの伝送を与えられたユーザ装置が円滑にプリエンブトできるよ うにする。例2(第16図)としてここに示した例ておいて、ユーザ装置70− 1がバス100を経由してユーザ装置10−12に対して長いフレームを送信し ていたと仮定しよう。(第16図には三つのデータの流れを図示している。通信 コントローラ3000−1の送信機3300によって送信されたデータの流れ、 通信コントローラ3000−3の送信機330oによって送信されたデータの流 れ、それにバス100によって伝送されるデータの流れである。)プリエンブト キャラクタの後、通信コントローラ3000−1からのフレームの開始フラグ、 アドレスフィールドおよび少くとも16個のフラグ以外のビット(ダミーのW  O//ビットを除く)が伝送されると、通信コントローラ3000−3はユーザ 装置1o−3からのデータの受信を開始し、このデータがユーザ装置10−13 に対して伝送されることになる。通信コントローラ3000−3においてはプロ セッサ3001はプロセッサインタフェース3200を経由して送信機3300 に対してデータを送信したいという要求を知らせる。送信機3300は受信機3 400内のレポートバス33o3、レジスタ3470および3471 (第4図 )を通してこれを読み取り、バス10oの状態が現在既知の状態であり、バスは 現在通信コントローラ3000−1によって占有されていることを判定する。与 えられた通信コントローラがフレームアドレスフィールドを送信してしまうと、 それはそれがプリエンブトされるがあるいはフレームが完了するまでバス100 を占有することになる。この実施例に従えば、16個の区別できる優先レベルが 存在し、それが各ユーザ装置1n−o乃至1n−isの各々に割当てられており 、ユーザ装置の名前がそのユーザ装置の優先レベルを示すようになっている。ユ ーザ装置1o−15は最高位の優先順位を有し、ユーザ装置10−14は次に高 い優先順位を有し、以下固嵌になっている。従って、通信コントローラ3000 −3の送信機は通信コントローラ3QQQ−3が現在のバスの占有者である通信 コントローラ3000−1より高い優先順を持つことを判定する。各送信機33 00はレポートバス33o3を経由して受信機3400内の導体3451 (第 4図)を監視することによりバス100上を伝送されるビットを監視し、バス1 00上を伝送される連続した論理11 “のビットの数N、を定義する内部ステ ータス変数を維持する。通信コントローラ3000−3の送信機33000′i このステータス変数を使用してプリエンブトキャラクタ11111110の送信 を完成する。例2に従えば、(第16図のプリエンブトフレーム)、N5を規定 する状態変数は三つの連続した論理ゝ1 “のビットがバス100を伝送された ことを示している。従って、プリエンブトキャラクタ11111110の伝送の ためには、通信コントローラ3000−3の送信機3300は4個の連続した論 理91 “のらとに論理NO“のビットを送信する。各々の通信コントローラは 排他的ORゲート3700を含み、その第1の入力端子はインバータ3500に 接続されておシ、その第2の入力端子はインバータ3600の出力端子に接続さ れている。バス100上を伝送される論理値が送信機3300によってインバー タ3500に対して送信される論理値と異るときには、排他的ORゲート370 0は送信機3300に対して論理“1“の信号を送る。例2(第16図)に従え ば、通信コントローラ3000−3の送信機3300がプリエンブトキャラクタ 11111110の論理ゝ1 “信号のゝゝ1 “を送信し、論理ゝ1 〃の信 号がバス100に伝送された時間と同一の時間に論理ゝゝ 1 “信号を送信し たときに通信コントローラ3000−1の排他的ORゲート3γ00はビットの 差を検出し、ここで差信号と呼ばれる論理11″の信号を送信する。これに応動 して通信コントローラ3000−1の送信機3300はその送信を中断し、さら にこれは集合的に送信機3300の現在のステータスを規定するステータス変数 の第1の集合の値を記憶する。例2(第16図)に従えば、通信コントローラ3 000−3の送信機330oはプリエンブトキャラクタの送信を完了した後で、 次に開始フラグ、アドレス、データおよびFCSフィールドとプリエンブトした フレームの終了フラグを送信する。
通信コントローラ3000−0乃至3000−15の各々の受信機3400はプ リエンブトキャラクタの検出と、プリエンブトしたフレームの開始フラグに応動 して、その受信機3400の現在のステータスを集合的に規定するステータス変 数の第2の集合の値を保存し、次にプリエンブトしたフレームの残りを受信する 。通信コントローラ3000−13だけでは受信機3400はデータを8ピント バイトの形式でプロセッサインタフェース3200ヲ通してフォーマツダインタ フェース3010に与え、そのデータは次にユーザ装置10−13に与えられ、 これはプリエンブトしたフレームの宛先である。
通信コントローラ3000−0乃至3000−15の各々の受信機34001′ tプリエンブトしたフレームの終了フラグを検出すると、その受信機3400を プリエンブトしたフレームの開始フラグが検出されたときのステータスに戻すた めにステータス変数の第2の集合の保存された値を使用する。各受信機3400 の中のレジスタ3470および3471 (第4図)はバス100の状態を再び 既知の状態に再び定義するために回復され、バス100の占有者は通信コントロ ーラ30001となる。
通信コントローラ3000−1においては送信機3300は受信機3400のレ ジスタ3470と3t71(第4図)をレポートバス3303を通して読み、通 信コントローラ3000−1が再びバスを占有していることを判定、シ、次にそ の送信機3300をそれが割込1れたときのステータスに戻すためにステータス 変数の第1の集合の保存された値を使用する。通信コントローラ3000−1の 送信機3300はN5を規定するステータス変数の保存された値を使用してN、 =1の連続した“1 “のビットを送信し、このあとで論理NO“のビット(第 16図のプリエンブトされたフレーム)を送信し、プリエンブトしたフレームの プリエンブトキャラクタがバス100に伝送されたときに送信されたビットを置 換する。与えられた送信機33oOはそれが論理S O//を送信し、論理91 〃がバス10oに運ばれたときだけ割゛込まれるから、論理“0“の前に与えら れた送信機3300によって送信された連続した論理V11〃の数はバス100 に伝送される連続した論理91′′の数より小である。例2(第16図)に従え ば、通信コントローラ3000−1の送信機330oは中断なしにプリエンブト されたフレームの残りを送信する。通信コントローラ3000−0乃至3000 −15の各々の受信機3400はプリエンブトされたフレームの残りを受信する 。通信コントローラ3000−12においては、受信機3400はプロセッサイ ンタフェースを経由してフォーマツダインタフェース3010に対する8ビツト バイトのデータの転送を再開し、次にデータはプリエンブトされたフレームの宛 先であるユーザ装置10−12に対して送信される。通信コントローラの受信機 3400またプロセッサインタフェース3200を経由してプロセッサ3000 1に対してプリエンブトされたフレームのFCSフィールドが正しいかどうかの 表示を送信する。
FCSフィールドはプリエンブトされたフレーム全体にもとすく。第16図は単 一ブリエンプションについてしか図示していないが、多重ブリエンプション、す なわち、プリエンブトしたフレーム内部で他の通信コントローラによってプリエ ンブトすることも可能である。しかし、この実施例においては、与えられたユー ザ装置はそれ自身をプリエンブトすることはできないようになっている。
各通信コントローラ3000−0乃至3000−15は1だアポートキャラクタ 11111111を送信することによってバス100上のフレームの送信を終了 することができる。しかし、その場合には、状態変数は保存されず、中断された フレームは全体として再送しなければ第5図に従って配列される第2図乃至第4 図に詳細に示すように、通信コントローラ3000−0はユーザ装置1o−oに 接続されたフォーマットインタフェース3010、例えばモトローラ6309の ようなプロセッサ3001、それに関連したクロック3002、プロセッサイン タフェース320口、インバータ3500を通してバス100に接続された送信 機3300およびインバータ3600を通してバス100に接続された受信機3 400を含んでいる。以下の機能的説明においては本質的に同一である16個の 通信コントローラ3000−0乃至3000−15の任意のものを代表するもの として通信コントローラ3000−0を参照する。
プロセッサ3001はプロセッサインタフェース3200のコマンドレジスタ3 220に予め定められた種々のビットを記入することによって送信機3300と 受信機3400の動作を制御する。レジスタ3220のビット割当は第17図に 図示されている。プロセッサ3001はレポートレジスタ3230の予め定めら れたビットを読むことによって送信機3300内のある種の事象の発生もしくは ステータスを知る。レジスタ3230のビット割当は第18図に図示されている 。プロセッサ3001とフォーマツダインタフェース3010はプロセッサ30 01の制御下に、送信データレジスタ3240に8ビツトバイトの情報を書くこ とによって、バス100で送信されるべきデータを送信機3300に与える。さ らにバス100を通して受信機3400によって受信されたデータは受信データ レジスタ3250を経由して8ビツトのバイトの形式でプロセッサ3001すな わちフォーマツダイン外フェース3010に伝送される。これらのバイトは宛先 のユーザ装置に関連した通信コントローラのフォーマツタインタフェース301 0にだけ与えられることを想起されたい。
送信機3300の内部の動作は送信制御回路3301によって制御される。回路 3301はコントローラ(図示せず)を含み、これはプログラマブル論理アレイ もしくはプロセッサを用いて有利に実現きれる。送信制御回路3301の状態図 は第12図に示される。送信制御回路3301は制御バス3302e経由して8 ビツト送信シフトレジスタ3305と16ビツトFCSレジスタ3306の付勢 とシフトを制御する。クロック線53上にクロック発生器54によって送信され たクロック信号はANDゲート3310の第1の入力端子で受信され、送信制御 回路3301が制御バス3302を経由してANDゲート3310の第2の入力 端子に対して論理ゝ11〃を送信したときに、送信機3300内で要求によって 分配される。マルチプレクサ3307はまた制御バス3302を経由して送信制 御回路3301によって制御されるが、送信シフトレジスタ3305.Sるいは FCSシフトレジスタ3306あるいは予め定められた論理ゝ1“あるいは論理 “0“を選択してバス100によって送信する。例えば、送信制御回路3301 はマルチプレクサ3307が第1に論理(10//のピントを選択し、次に6ビ ツトの連続した論理へ1 〃のビットを選択し、最後に論理−xO“のビットを 選択してバス100に送信するように、マルチプレクサ3307に対して信号を 送ることによってフラグキャラクタ0111110の伝送を実行する。アドレス フィールドとデータフィールドを形成する情報は送信データレジスタ3340か ら並列に送信シフトレジスタ3305に対して8ビツトのバイトを伝送し、次に 導体3351およびマルチプレクサ3307全通してバス100に対して直列に シフトすることによって伝送される。送信シフトレジスタ3305から導体33 51に送信されるビットはまたFCSシフトレジスタ3306に入り、これは直 列に動作して上述した16ビツトのFCSフィールドを発生する。FCSシフト レジスタ3306の動作は任意の与えられた時点において、これがそのときまで に送信シフトレジスタ3305によって送信されたフレームのすべてのビットか ら誘導されたFCSフィールドを含むようになっている。FCSシフトレジスタ 3306については後に詳述する。送信制御回路3301がデータフィールドの 最後のバイトがバス100に対して送信されたと判定したときに、これはFCS シフトレジスタ3306によって導体3352とマルチプレクサ3307を通し てのFCSフィールドの送信を実行する。送信制御回路3301はレポートバス 3303を経由してマルチプレクサ3307によって送信されたビットを監視し て、伝送された連続的な論理(S 1 //の数である内部ステータス変数N2 を維持する。5個の連続した論理”] “が伝送されたときて1回路3301は マルチプレクサ3307を通してダミーの論理110 //のビットの伝送を実 行する。マルチプレクサ3307は送信シフトレジスタ3305あるいはFCS シフトレジスタ3306によって伝送されるビット以外にプリエンブト、アポー トおよびフラグのキャラクタを送信するから、これらのキャラクタにはダミーの 論理ゝO“のビットは挿入されない。送信シフトレジスタ1305とFCSシフ トレジスタ1306のシフト動作はマルチプレクサ1307がダミーの論理90 “のビットを送信したときに1ビツトの時間だけ消勢される。送信制御回路33 01は任意の与えられた時点でそれまでにシフトされて出力された送信シフトレ ジスタ3305に与えられたバイトの数N、を規定する第2の内部状態変数を維 持する。上述したように、送信制御回路3301はバス10口を通して伝送され た連続的論理ゝ1“の数N5を規定する第3の内部状態変数を維持する。送信制 御回路3301はまた回路3301の前述した第12図の状態を規定する第4の 内部ステータス変数Xを維持する。排他的ORゲート3700がレポートバス3 303を経由して送信制御回路3301に対して論理“1 “信号を送信し、イ ンバータ3500に対して送信されたビットとバス100で伝送されたビットの 差を表示したときに、送信制御回路3301はプリエンブト動作が生じたと判定 する。送信制御回路3301は状態レジスタ3304中に4個の上述したステー タス変数の値を記憶する。送信制御回路3301は次に制御バス3302を通し てANDゲート3310に対して論理“0〃信号を送信し、これによってクロッ ク発生器54からのクロック信号の送信機3300中の分配を消勢する。送信デ ータレジスタ3240、状態レジスタ3304、送信シフトレジスタ3305お よびFCSシフトレジスタ3306の内容は集合的にここではステータス変数の 第1の集合と呼ばれるが、これらはこれらのレジスタに保存される。送信制御回 路3301によってプレエンブトされたフレームの送信を再開して良いことが判 定されると、これはステータス変数の保存された値を使用して、ブリエンプショ ンの時点で第12図の状態と同一の状態に戻す。(唯一の例外は後述する。)送 信制御回路3301はバス100で伝送された連続的論理111 //の数N5 を規定する保存された値を使用してN5−1の連続的論理ゝゝ1 “のビットの あとに論理ゝ0〃のビットをバス100に送信し、プリエンブトフレームキャラ クタ1.1111110がバス100に伝送されたときに伝送されたビットに置 換する。送信制御回路はプリエンブト動作の時点でマルチプレクサ330γによ って送信された連続的論理(11//ビットの数N2の保存された値を使用して 、プリエンブトされたフレームに関するダミー(S O//挿入機能を再開する 。送信制御回路3301は送信シフトレジスタ33o5によってシフトされて出 力された与えられたバイトのビットの数を規定する状態変数N、の保存された値 を使用して、与えられたバイトの残金の適切な伝送を実行する。
受信機3400の内部の動作は受信制御回路によって制御される。回路3401 はコントローラ(図示せず)を含み、これはプログラマブル論理アレイあるいは プロセッサによって実現するのが有利である。受信制御回路3401の状態図は 第13図に示されている。受信制御回路3401は8ピント制御シフトレジスタ 3406.16ピツトFCSシフトレジスタ3408.16ビツトFC8保持レ ジスタ3409および8ビツト受信シフトレジスタ3410の付勢とシフトを制 御バス34o2を経由して制御する。キャラクタ検出器34o7は制御シフトレ ジスタ3406内のフラグキャラクタ01111110、アポートキャラクタ1 11 ]、 11 ilおよびプリエンブトキャラクタ1111 ]、 1 ]  0を検出し、レポートバス3403を経由してこのような検出を受信制御回路 34o1に知らせる。これに応動して受信制御回路3401は次の8ビツトをバ ス100がら制御シフトレジスタ3406にシフトする。しかし、フラグ、アポ ートあるいはプリエンブトを形成するビットはレジスタ3408.3409およ び341oにはシフトされない。キャラクタ検出器34o1はまた7個の連続し た91 “が受信されたときに受信制御回路3451にこれを知らせ、回路34 01はこれに応動して制御/<ス3402を経由して2ビツトのバス状態レジス タ3471にフィールドBS=11を書き込み、これによって現在のバス100 の状態を未知であると定める。/<ス100の状態が未知であるときには、ブリ エンプションは許容されない。受信制御回路3401はレポート1<ス3403 を経由して制御シフトレジスタ3406によって送信されるビットの流れを監視 し、制御シフトレジスタ3406によって送出された連続した論理91 “のビ ットの数を定める内部ステータス変数N、を維持する。
N、の値を定める変数によって、5個の連続した“1“が制御シフトレジスタ3 406により送出されたこと力;わかると、受信制御回路3401はレジスタ3 408.3409および3410の動作を実行して、5個の連続した論理“1“ に続くダミーの“0〃のビットがこれらのレジスタ3408.3409および3 410に入らないようにする。制御シフトレジスタ3406によって送信された ビットはまず導体3452を経由してFC3保持レジスタ3409にシフトされ 、次に導体3453を経由して受信シフトレジスタ3410にシフトされる。
データの8ビツトのバイトは次に受信シフトレジスタ3410から並列に経路3 251を経由して受信データレジスタ3250に運ばれ、ここでこれはプロセン サ3001によっであるいはプロセッサ3001の制御によってフォーマツダイ ンタフェース3010によって読み取られる。受信制御回路3401は1バイト が受信データレジスタ3250から最後に伝送されてから受信シフトレジスタ3 410によって受信されたビットの数を規定する他の内部ステータス変数N3を 維持する。フラグ以外の24ビツトが開始フラグの検出のあと制御シフトレジス タ3406によって送信されたときに、受信制御回路3401はビットカウント にもとすいて、フレームアドレスレジスタ3410にフレームアドレスフィール ドが存在することを判定し、アドレスフィールドを8ビツトのバス占有レジスタ 34TOに記憶するように制御する。受信制御回路3401がレポートバス34 03を経由してユーザ装置10−0をフレーム宛先として規定するバス占有レジ スタ3470の宛先サブフィールドを読み取ったとき、受信制御回路3401は レポートレジスタ3230 (第18図)にデータ宛先(DD)ビットの論理“ 1 〃を書く。受信制御回路3401は経路3211を通して4ビツトのIDレ ジスタ3210を読むことによって、どのユーザ装置が通信コントローラ300 0−0に関連しているかを判定する。通信コントローラ3000−0のIDレジ スタ3210はユーザ装[10−0を規定するフィールド0000を含んでいる 。
他の過言コントローラのIDレジスタ3210の各々はその通信コントローラに 関連するユーザ装置の宛先の第2の部分を2進表示したものを含んでいる。通信 コントローラ3000−0における回路3401はまた制御バス3402を経由 してフィールドBS=10をバス状態レジスタ3471に書き、これによって現 在のバス100の状態を既知であると定める。バス100の状態が既知であると きには、もし与えられた通信コントローラが現在のバス占有者より高い優先度を 持つときにプリエンブト動作が許される。レポートバス3303を通してバス占 有レジスタ3470とバス状態レジスタ3471を読むことによって、送信機3 300はプリエンブト動作が許されているかどうかを判定する。制御シフトレジ スタ3406によって送信されたビットはまたFCSシフトレジスタ3408に 入り、これは順次にそこから上述した16ビツトのFCSフィールドを発生する 。FCSシフトレジスタ3408については後に詳述する。キャラクタ検出器3 407がフレームの終了フラグを検出したときに、そのフレームのFCSフィー ルドはすでにFCSシフトレジスタ3408とFC3保持レジスタ3409にシ フトされている。FC8保持レジスタ3409は受信機3400に含1れていて 、フレームのFCSフィールドが受信データレジスタ3250に転送されないよ うにする。FCSシフトレジスタ3408によって発生されたFCSフィールド は定数フィールドと比較され、受信されたフレームが誤りを含むかどうかが判定 されて1、結果はレポートバス3403を通して受信制御回路3401に与えら れる。受信制御回路3401は3ビツトの受信状態フィールド(R8F )をレ ポートレジスタ323G (第18図)に書くことによって、プロセッサ300 1に対して受信機3400に関するこのような情報を知らせる。
キャラクタ検出器3407が制御シフトレジスタ3406におけるプリエンブト キャラクタ11i11110の存在をまず検出し、次にフラグキャラクタ011 11110の存在を検出したときに、これはレポートバス3403を経由してこ のような検出の各々を受信制御回路3401に知らせる。これに応動して、受信 制御回路3401はN3とN4を規定する内部状態変数の現在の値を状態レジス タ3404に送信する。受信制御回路3401は次に占有レジスタ3404、バ ス状態レジスタ3471、状態レジスタ3404、受信シフトレジスタ3410 、FC3保持レジスタ3409およびFCSシフトレジスタ3408の内容をス タックメモリー3420に保存するために伝送する。これらの内容は全体として ここではステータス変数の第2の集合と呼ばれる。スタックメモリー3420は 、例えばフェアチャイルド4706Bである。スタックメモリー3420の各位 置は4ビツトの幅を持っているから、ステータス変数の第2の集合を形成するビ ットはスタック制御回路3422の制御下にマルチプレクサ/デマルチプレクサ 3421を経由して予め定められた記憶3420の位置に格納される。プリエン ブトしたフレームが受信されると、フレームアドレスフィールドはバス占有レジ スタ3470に記憶されて、バス100の状態が既知であることを示すフィール ドBS=10が再びバス状態レジスタに記憶される。通信コントローラ3000 −0においては受信制御回路3401がバス占有レジスタ3470の宛先サブフ ィールドを読んで、論理ゝ1 “のDDビットをレポートレジスタ3230に書 いたときにだけ、送信データレジスタ3240からのデータがユーザ装置10− 0に伝送されることを想起されたい。
キャラクタ検出器3407がプリエンブトしたフレームの終了フラグを検出した とき、スタックメモリー3420に保存されていたステータス変数の第2の集合 の値がマルチプレクサ/デマルチプレクサ3421を通して、レジスタ3470 .3471.3404.3410.3409および3408の予め定められたビ ット位置に送られる。受信制御回路3401は経路3431を通して状態レジス タ3404の内容を読み、その内部ステータス変数をそれが円滑にプリエンブト された点における値に戻す。キャラクタ検出器3407がプリエンブトされたフ レームの終了フラグを検出した後で、バス100から受信された次の8ビツトは 制御シフトレジスタ3406にシフトされる。受信制御回路3401は制御シフ トレジスタ3406によって送出された連続的論理91 〃のビットの数N4を 定める内部ステータス変数の値を使用して、プリエンブトされたフレームに関す るO削除機能をそれが円滑ブリエンプションによって中断された時点から正確に 再開する。、受信データレジスタ3250に対して転送すべき完全な8ビツトの バイトが何時利用できるようになるかを判定するために、受信制御回路3401 に受信シフトレジスタ3410に対してシフトされたビットの数N3を定める内 部ステータス変数の値を利用する。プリエンブトされたフレームの残りの部分の 受信も、このあと上述した方法で継続する。
送信機3300と受信機3400はレポートバス3303によって相互に接続さ れている。送信機3300の送信制御回路3301は受信機3400内のレポー トバス3303を経由して監視することによって、バス100で伝送された連続 的論理(S 1 “のビットの数N、を定義するその内部ステータス変数を維持 する。送信機3300がブリエンプションによって中断されたときに、送信制御 回路3301は受信機3400のバス占有レジスタ3470とバス状態レジスタ 3471の内容をレポートバス3303を通して監視することによって、何時伝 送を再開すべきかを判定する。バス状態レジスタ3471がフィールドBS=1 0を含み、バス100の状態が既知の状態であることを示し、バス占有レジスタ に含まれた信号源サブフィールドが再びIDレジスタ3210に記憶された4ビ ツトのフィールドに等しくなれば、送信制御回路3301はプリエンブトされた フレームの送信を再開すべきことを判定する。送信制御回路3301はまたバス 占有レジスタ3470の信号源サブフィールドとIDレジスタ3210に記憶さ れたフィールドを比較し、いつ与えられたブリエンプションが許容されるかを判 定する。IDレジスタ3210のフィールドがバス占有レジスタ3470の信号 源サブフィールドによって規定されるユーザ装置より高い優先順を持つユーザ装 置を規定しているときに、プリエンプションが許される。
詳細な説明 通信コントローラ3000−0乃至3000−15の動作について、以下二つの 例によって詳細に説明する。
例−1(第15図)においては、バス100を通して単一のフレームがユーザ装 置10−1からユーザ装置10−12に送られる。例−2(第16図)において は、ユーザ装置10−3はユーザ装置10−1からの伝送を円滑にプリエンブト して、ユーザ装置10−13に対して、プリエンブトされたフレームを送出する 。プリエンブトされたフレームが伝送されたあとで、ユーザ装置1〇−12に対 するプリエンブトされたフレームの伝送が再開される。以下の説明はfll−1 と例−2の両方についてバス100に対する情報の送信についてまず説明し、次 に両方の別についてバス100からの清報の受信を説明する。
バス100への情報の送信 各通信コントローラ3000−0乃至3000−15の各々の内部で、プロセッ サ3001は8導体の両方向性データバス3001−DBによってフォーマツダ インタフェース3010とプロセッサインタフェース3200のコマンドレジス タ3220、レポートレジスタ3230、送信データレジスタ3240および受 信データレジスタ3250に接続される。プロセッサ3001はデコーダ320 1に対して導体3001−R7上の論理“1 “信号と経路3001−R8EL 上の与えられたレジスタを指示するレジスタ選択信号を送信することによってレ ジスタ3220.3230.3240および3250の与えられたひとつの内容 の読み出しを制御する。デコーダ3201は次に与えられたレジスタに行く4本 の経路3202.3203.3204および3205の適切な1本に信号を与え る。
これに応動して、与えられたレジスタの内容はプロセッサ30016るいはフォ ーマツタインタフェース3010でデータバス3001−DBで読み取るために 利用できるようになる。プロセッサ3001はまたレジスタ3220.3230 .3240および3250の書き込みを制御する。プロセッサ3001がデコー ダ3201に対して導体3001−RWを通して論理“0〃信号を、経路30Q 1−R3ELを通して与えられたレジスタを規定するレジスタ選択信号を送シ、 デコ−ダ3201は与えられたレジスタへの経路3202.3203.3204 および3205の内の適切なものに対して信号を送出する。プロセッサ3001 あるいはフォーマツダインタフェース3010によってデータバス3001−D B上に送出されたバイトあるいはその一部は次に与えられたレジスタに記憶され る。各プロセッサインタフェース3200Hまた4ビツトのIDレジスタ321 0を含み、これは不実施例においては、プロセッサインタフェース3200に関 連したユーザ装置を規定する予め定められた4ビツトのフィールドを含んでいる 。
プロセッサインタフェース3200はプロセッサ3001がデータバス3001 −DBを通して変化した優先順を反映してIDレジスタ3210に異る4ビツト のフィールドを書き込むことができるように改造できることを理解されるであろ う。
各通信コントローラ3000−0乃至3000−15において、コマンドレジス タ3220 (第17図)に送信機リセット(TRES)ビットの論理N1“を 書いたときに、送信機3300は初期化される。送信機3300に含まれた送信 制御回路3301は経路3221を経由してTHESビットを検出し、これに応 動して、リセット状態301(第12図)に入る。論理“0“の’l’REsビ ットはプロセッサ3001によって次にコマンドレジスタ3220に書き込まれ る。(プロセッサ3001から送信制御回路3301に来るすべてのコマンドは 、プロセッサ3001によってコマンドレジスタ3220に論理ゝゝ1〃のビッ トを書き、その論理ゝゝ1〃のビットが送信制御回路3301によって検出され る時間の後、そのコマンドレジスタ3220のビット位置には論理“0〃のビッ トが書き込まれる。リセット状態301では送信制御回路3301は経路322 1を経由してコマンドレジスタ3220(第17図)内の送信付勢(TEN)ビ ットを監視する。プロセッサ3001がコマンドレジスタ3220中の論理“1  “のTENビットを書き込んだときに、このTENビットは回路3301によ って検出され、回路3301は空き状態302(第12図)に入る。空き状態3 02においては回路3301は制御バス3202全通してANDゲート3310 に対して論理(S 1 ”の信号を送信することによって、クロック発生器54 からのクロック信号を送信機3300の内部に分配するように付勢する。回路3 301はまた制御バス33o2を経由してマルチプレ’7す3307に対して信 号を送出し、マルチプレクサ3307が導体3353、D型同期フリップフロッ プ3308およびインバータ3500を通してバス100に対して論理ゝ\0〃 のビットを繰返して送出するようにする。同期フリップフロップ3308は各々 の1ビツトの時間の間ではバス100に送信される信号が変化しないことを保障 する。フリップフロップ33o8の出方端子はインバータ350oに接続されて いるが、ANDゲート3310を通してクロック発生器54から送られたクロッ ク信号の前縁でビットを記憶する。空き状態302においては、回路3301は 経路3221を通してコマンドレジスタ3220(第17図)の送信アドレスビ ット(TAB )を監視する。この時点までは、通信コントローラ3000−0 乃至3000−15の谷々の動作は同様である。
例−1に従えば(第15図)、ユーザ装置10−1は通信コントローラ3000 −1のフォーマツダインタフェース3010に対してデータの送信を開始し、フ ォーマツタインタフェースは、必要に応じて、このようなデータをバッファメモ リー(図示せず)に一時的に記憶する。この実施例においては、フォーマツダイ ンタフェース3010のバッファメモリーはバス100に対して送信された最大 長のフレームのデータフィールド全体を記憶するのに充分な容量を有している。
フォーマツダインタフェース3010は所望のプロセッサ3001に対してここ で要求信号と呼ばれる信号をバス100を通して制御バス3001−CBに送出 することによってユーザ装置10−12にデータを送出することを知らせる。こ れに応動して、プロセッサ3001はコマンドレジスタ3220に論理“1 “ のTABビットを書き、ユーザ装置10−1をフレームの信号源であると指定す る信号源サブフィールド0001とユーザ装置10−12をフレームの宛先であ ると指定する信号源サブフィールド1100を持つアドレスバイトを送信データ レジスタ3240に書き込む。送信制御回路3301はTABビットを検出し、 これに応動して待ち状態303(第12図)に入る。待ち状態303において、 送信制御回路3301はレポートバス3303を通して受信機3400のバス占 有レジスタ3470とバス状態レジスタ3471の自答を読む。バス状態レジス タ3471がフィールドB S=OOを含み、バス100が空き状態にあるか、 あるいはバス状態レジスタ3471がフィールドBS=10を含みバス100が 既知の状態にあってバス占有レジスタ3470がバス100は現在低い優先順を 持つ通信コントローラによって占有されていることが示されると、送信制御回路 3301は開始状態304に入る。例−1に従えば、バス状態レジスタ3471 はフィールドBS=OOを含み、バス100が空き状態にあることを示し、従っ て送信制御回路3301は開始状態304に入る。開始状態304においては、 回路3301は制御バス3302を通して信号をマルチプレクサ3307に送り 、マルチプレクサ3307がまずバス100にプリエンブトキャラクタ1111 1110を送信し、次にフラグキャラクタ01111110を送出するようにす る。回路3301はまたFCSシフトレジスタ3306に信号を送り、これに応 動してレジスタ3306は16個の論理ゝ1“のビットを持つように初期化され る。さらに回路3 ’301 u送信シフトレジスタ3305に信号を送り、こ れはそれに応動して並列路3241全通して送信データレジスタ3240からア ドレスバイトを読み取る。アドレスバイトがレジスタ3240からレジスタ33 05に送られると、送信制御回路3301は経路3231を通してレポートレジ スタ3230 (第18図)の論理ゝ\1〃の送信データレジスタ空t (TD RE )ビットを書き、アドレス状態305(第12図)に入る。アドレス状態 305においては、回路3301は制御バス33o2全通して送信シフトレジス タ3305とマルチプレクサ33o7に対して信号を送り、アドレスバイトが送 信シフトレジスタ3305から導体3351、マルチプレクサ3307、導体3 353、同期フリップフロップ3308およびインバータ3500を通してバス 100に与えられるようにする。回路3301はまた信号を制御バス33o2を 通しテシフトレジスタ3306に送信し、送信シフトレジスタ3306から導体 3351に送出されたバイトがまたFCSシフトレジスタ3306にシフトされ るようにする。回路3301は導体3353を伝送されるビットの流れをレポー トバス3303を経由して監視し、伝送された連続的ゝゝ1〃のビットの数N2 を規定する内部ステータス変数を維持する。N2を規定するステータス変数が5 個の連続した論理11 〃のビットが送信されたことを示したときには、回路3 3o1は送信シフトレジスタ3305およびFCSシフトレジスタ3306のビ ットのシフトを中断し、マルチプレクサ33o7によるダミー ノ論fM ’  O“のビットの伝送を実行する。アドレス状態305においては、回路33o1 は経路3221を通してコマンドレジスタ322o中の第1あるいは中間バイト 送信(TFIE)ビットを監視する。
送信制御回路3301はレポートレジスタ323oに論理ゝゝ1“のTDREビ ットを記憶して送信データレジスタ3240の内容が送信シフトレジスタ33o 5に記憶されたことを示すことを想起されたい。TDREビットは経路3209 を通して割込み発生器322oによって監視され、論理ゝV1“のTDREビッ トの記憶に応動して、導体3001−Iを経由してプロセッサ3001に対して 割込み信号を送信する。割込み信号に応動して、プロセッサ30o1は制御バス 3001−CBを通してフォーマツダインタフェース3010に対して信号を送 シ、フォーマツタインタフェース3010から第1のデータバイトをデータバス 3001−OBを通して送信データレジスタ324oに与える。プロセッサ30 01は次に論理N1“のTFIBビットをコマンドレジスタ3220に書き、こ れに応動して送信制御回路33o1はデータ状態306(第12図)に入る。デ ータ状態306においては、送信制御回路33o1は送信データレジスタ324 oがらの第1のデータバイトの送受シフトレジスタ3305による蓄積とこれに 続いてのFCSシフトレジスタ3306によるそのバイトの送信を制御し、これ もマルチプレクサ330Tを通してバス1o。
に対して行なわれる。回路33o1は再び論理へ1”のTDREビットをレポー トレジスタ3230に書き、これに応動して割込み発生器3290はプロセッサ 3001に対して割込み信号を送る。プロセッサ3001はフォーマツダインタ フェース301oから送信データレジスタ3240への第2のデータバイトの伝 送を行ない、コマンドレジスタ322oに再び論理111 “のTFIBビット を書く。論理“1“のTFIBビットに応動して、回路3301はデータ状態3 06に留り、第2のデータバイトのFCSシフトレジスタとバス100への伝送 を制御する。データ状態306にある間に、回路3301はTFIBビットを監 視し、さらにコマンドレジスタ3220 (第17図)内の最終バイト伝送ビッ ト(TLB)を監視する。フォーマツタインタフェース3010からバス100 にすべての中間のバイトが転送される間、このプロセスは繰返される。フォーマ ツダインタフェース3010によってフレームの最終のデータバイトが利用でき ると判定されたときには、これはプロセッサ30o1に対して、制御バス300 1−CBを通して完了信号と呼ばれる信号を送出し、そのバイトが送信データレ ジスタ3240に書き込まれたあと、プロセッサ3001はコマンドレジスタに 論理(11//のTLBビットを書き込む。送信データレジスタ324゜に対す る論理“l〃のTLBビットの書き込みは、ここで終了信号の送出と呼ばれる。
論理ts 1 “のTLBビットに応動して、回路3301はFC8状態3o7 (第12図)に入り、ここで最後のデータバイトがバス100に送出され、FC Sシフトレジスタ3306の16ビツトの内容はその直後にマルチプレクサ33 07全通してバス100に直列に送出される。回路3301は次にエンドフラグ 状態308(第12図)に入シ、バス100に対してひとつのフラグキャラクタ 01111110をマルチプレクサ3307を通して伝送し、次に空き状態30 2に戻る。ここでマルチプレクサ1307はバス100に対してくりかえし論理 ゝゝ0“を送出する。これによってユーザ装置1O−1(第15図)からのひと つのフレームの伝送が完了する。他の通信コントローラ3000−0および30 00−2乃至3000−15の各々においては送信制御回路3301は例−1の 間中を通して空き状態のままである。通信コントローラ3000−1の回路33 01が開始状態304、アドレヌ状態305データ状態306、FC8状態、あ るいはエンドフラグ状態308にある間のフレームの伝送中にフレームを放棄す べきであると判断されたときには、これは論理N1 “のアポートキャラクタ送 信(TAC)ビットをコマンドレジスタ3220(i17図)に書き、回路33 o1はこれに応動してアポート状態309(第12図)に入る。アポート状態3 09では回路3301はマルチプレクサ3307によってバス100に対してア ボートキャラクタ11111111を伝送し、空き状態302に戻る。
例−2(第16図)に従えば、バス100に対する開始フラグと、アドレスフィ ールドとユーザ装置10−1からのフレームの少くとも16ビツトのフレーム以 外のビット(ダミーの“0“ビットを除く)の送信のあと、ユーザ装置10−3 は通信コントローラ3000−3のフォーマツタインタフェース3010に対し てデータの送信を開始する。通信コントローラ3000−3の送信制御回路33 01は空き状態302にある。ユーザ装置10−3からのデータを受信すると、 フォーマツダインタフェース3010は制御バス3001−CBを経由して、バ ス100を通してユーザ装置1G−13に対してデータを伝送したいという要求 をプロセッサ3001に知らせる。これに応動してプロセッサ3001は論理ゝ λ1 〃のTABビットをコマンドレジスタ3220、信号源ユーザ装置10− 3と宛先ユーザ装置10−13を指定するアドレスバイト00111101を送 信データレジスタ3240に書き込む。TABビットに応動して送信制御回路3 301は待ち状態303(第12図)に入る。待ち状態303においては、送信 制御回路3301はレポートバス3303を経由して1通信コントローラ300 0−3の受信機3400のバス占有レジスタ3470とバス状態レジスタ347 1の内容を読む。
例−2に従えば、バス状態レジスタ3471はバス100が既知の状態にあるこ とを示すフィールドBS=10を含み、バス占有レジスタ34γ0は通信コント ローラ3000−1が現在バス100を占有していることを示す信号源サブフィ ールド0OO1を含んでいる。通信コントローラ3000−3の送信制御回路3 3011iまたユーザ装置10−3を指定するIDレジスタ3210中の4ビツ トのフィールド0011を経路3211を通して読む。ユーザ装置10−3はユ ーザ装置10−1より高い優先順を持っているから、通信コントローラ3000 −3の送信制御回路3301は開始状態304に入る。送信制御回路3301は バス100を伝送された連続的論理\11 〃の数N5を規定する内部ステータ ス変数N5を維持していることを想起されたい。
現在の例(でおいては、N5=3と通信コントローラ3000−3の送信制御回 路3301はマルチプレクサ3307によって4個の論理“1 “のビットを送 信し、このあとで論理“O〃のビットを続けてプリエンブトキャラクタ1111 1110を完成する。
このとき、通信コントローラ3000−1の送信制御回路3301はデータ状態 306にある。通信コントローラ3000−3が4個の論理91“のビットの内 の第1のものを送出したときに、通信コントローラ3000−1の排他的ORゲ ート3700は通信コントローラ3000−1の送信機3300によって送出さ れた論理”0“とバス100を伝送される論理91 “の間のビットの差を検出 する。従って、排他的ORゲート310GはD形同期フリップ−フロップ330 9とレポートバス3303を通して送信制御回路3301に対して論理“1 “ の信号を送出する。ANDゲート3310を経由してクロック発生器54から送 信されたクロック信号の後縁でフリップフロップ3309はその出力端子にビッ トを記憶する。論理91 〃の信号に応動して、送信制御回路3301は保持状 態310(第12図)に入る。回路3301はN、 、N2およびN、を定める 内部ステータス変数と先の第12図の状態を規定する内部ステータス変数Xを維 持していることを想起されたい。この例ではXはデータ状態306を規定してい る。送信制御回路3301が保持状態310に入ったときに、これは経路333 0を通してN1、N2およびN、を規定する変数と変数Xの値を状態レジスタ3 304に送ってここに保存する。送信制御回路はまた制御バス3302を経由し てANDゲート3310に対して論理90“の信号を送出し、これによってクロ ック発生器54からのクロック信号の送信機3300の内部における分配を消勢 する。
従って、レジスタ3240.3304.3305および3306の内容はステー タス変数の第1の集合と呼ばれるが、これらのレジスタに保存される。保持状態 310においては、送信制御回路3301はレポートバス3303を通してバス 占有レジスタ3470とバス状態レジスタ3471を監視し、通信コントローラ 3000−1が何時バスの占有権(RBO)をとるかを判定する開始状態304 に入った後、通信コントローラ3000−3の送信制御回路3301はプリエン ブトキャラクタ11111110を完成するためにマルチプレクサ3307によ る送信を制御していることを想起されたい。次に送信制御回路3301はフラグ キャラクタ01111110のマルチプレクサ3307による伝送を制御する。
プリエンブトキャラクタのあとでフラグキャラクタと伝送することはここではブ リエンブション開始信号と呼ばれる。例−2に従えば、通信コントローラ300 0−3の送信制御回路3301は次に通信コントローラ30CIO−3によって 完全なプリエンブトフレームが中断なく送信されたときにアドレス状態305、 データ状態306、FC8状態307、エンドフラグ状態308を通って空き状 態に戻る。
ここでブリエンプション終了信号と為呼ばれるプリエンブト終了フラグが通信コ ントローラ3000−1の受信機3400によって受信され、後述するようにバ ス占有レジスタ3470とバス状態レジスタ3471に信号源サブフィールドと フィールドBS=10が再び記憶されたときに通信コントローラ3000−1は 再びバスの占有1(RBO)を得る。通信コントローラ3000−1の送信制御 回路3301は経路3331を通して状態レジスタ3304’iz読み、N1、 N2およびN、を規定するステータス変数をその割込み時の値に戻し、ステータ ス変数Xがデータ状態306を示すようにする。変数Xにもとすいて、回路33 o1はデータ状態306に戻る。もし送信制御回路33o1がFC8状態307 あるいはエンドフラグ状態308で割込まれたのであれば、送信制御回路330 1はそれぞれFC8状態387あるいけエンドフラグ状態3Q8に戻ることに注 意していたりeりl、−、。しかし、もし回路33a1がアドレス状態305に ある間゛に割込まれたのであれば、これは開始状態304に戻る。回路33o1 がデータ状態306に戻ったあとで、これは状態変数べ5の値を使用してマルチ プレクサ33oγにょるN5−1個の連続した論理ゝゝ1 〃の伝送を制御し、 このあとで論理ゝ\o〃を送って、バス100上でプリエンブトキャラクタ11 111110が伝送された間て伝送されたビットを置換する。例−2においては 、通信コントローラ3ooo−iが割込まれたときに、バス100には4個の連 続ゝ1“が伝送されているから、通信コントローラ3000−1のN、の値はN 、=4である。従って送信制御回路33o1は制御バス3302を経由してA  N、 Dゲート331oに対して論理ゝゝ1″の信号を送信し、クロック源54 がらのクロック信号の送信機330oの内部知おける分配が再開される。プリエ ンブトされたフレームの残りが中断なく通信コントローラ3000−1によって 送信されると、送信制御回路33jl−IHFC3状態、エンドフラグ状態30 8に入り、次に空き状態302に戻る。
バス100からの情報の受信 次にバス100からの情報の受信について、例−1(第15図)および例−2( 第16図)&参照して詳細に述べる。各通信コントローラの受信機3400は連 続的に動作して、バス100上の伝送を監視する。データは受信された宛先サブ フィールドによって規定される宛先ユーザ装置にだけ転送されるが、その動作l ′i関連したユーザ装置に対するデータの転送についてだけ異っている。
各通信コントローラ3000−0乃至3000−15において、プロセッサ30 01がプロセッサインタフェース3200のコマンドレジスタ3220 (第1 7図)に論理(S 1 //の浸信機リセット(RRES )ビットを書いて受 信機3400をリセットしたときに、動作が開始される。受信機制御回路340 1は経路3221を経由してこのよりなRRESビットを検出したときに、リセ ット状態401(第13図)に入る。リセット状態401においては、受信制御 回路3401は経路3221を通してコマンドレジスタ3220の受信機付勢( REN)ビットを監視する。プロセッサ30o1が受信機3400を付勢するた めにコマンドレジスタ3220に論理N1 “のRENビットを書いたときに、 受信制御回路3401はこのようなRENビットを検出してハント状態402( 第13図)に入る。バス100で受信された各ビットはインバータ3600XD 形同期フリップフロップ3405、導体3451を通して8ビツトの制御シフト レジスタ3406に伝送される。同期フリップフロップ3405はバス100が 適切な時点でサンプルされることを保証する。フリップフロップ3405はクロ ック発生器54によって送られたクロック信号の後縁で導体3451に接続され た出力端子にビットを記憶する。キャラクタ検出器3407は制御レジスタ34 06の内容を監視し、フラグキャラクタ01111110、アポートキャラクタ 11111111およびプリエンブトキャラクタ11111110の存在を調べ 、もしこのようなキャラクタが検出されれば、これをレポートバス3403を通 して受信制御回路に知らせる。キャラクタ検出器340γはまたレポートバス3 403を通して受信制御回路3401に対して、制御シフトレジスタ3406に よって7個の連続的111〃が受信されたときにこれを知らせる。例−1(第1 図)では7個の連続“1 〃のプリエンブトキャラクタ11111110が受信 されて、受信制御回路3401にそれが知らされたときに、回路3401は制御 バス3402を通してバス状態レジスタ3471にフィールドBS=11を書き 、現在のバス100の状態が未知の状態であることを示す。制御シフトレジスタ 3406中でキャラクタ検出器3407によって第1のプリエンブトキャラクタ 11111110と次の開始フラグが検出されたときに、受信制御回路3401 は同期状態403(第13図)に入る。レポートレジスタ3230 (第18図 )はプロセッサ3001に受信機3400内の事象を知らせるのに使用される受 信状態、フィールド(R8F)の3ビツトを含んでいる。受信制御回路3401 が同期状態403に入ったとき、これはレポートレジスタ3230にフィールド R3F=000tl−記憶し、開始フラグが検出されたことを示す(第14図) 。
バス100から受信された続きのビットは制御シフトレジスタ3406にシフト され、次に導体3450cm通して16ビツトのFC8保持レジスタに入り、さ らに導体3453全通して8ビツトの受信シフトレジスタ3410に行く。制御 シフトレジスタ3406によって伝送されたビットはまた16ビツトのFCSシ フトレジスタ3408にシフトされ、これは、16個の論理111 〃のビット のFCSフィールドを持つように初期化されたあと、順次に上述のFCSフィー ルドを発生するようになっている。プリエンブト、アボートあるいはフラグキャ ラクタを形成するビットはレジスタ3408.3409および3410にはシフ トされないことを想起されたい。受信制御回路3401は制御シフトレジスタ3 406によって送信されたビットの流れを監視し、制御シフトレジスタ3406 によって送信された連続した91 “のビットの数N、を定義する内部ステータ ス変数を維持する。内部ステータス変数N4が5個の連続した91“のビットが 制御シフトレジスタ3406によって送信されたことを示すと、受信制御回路3 401は制御バス3402全通してレジスタ3408.3409および3410 を制御して、挿入されたダミーの0ビツトであるはずの制御シフトレジスタ34 06によって送信された次のビットがこれらのレジスタ3408.3409およ び3410にシフトされないよってする。開始フラグのあと、バス100から2 4ビツト(ダミーの“0“ビットを除く)が受信されたとき、受信制御回路34 01ばそのビットの数に従って受信シフトレジスタ3410がフレームのアドレ スフィールド(M2S図)を含むことを判定し、受信制御回路3401は次にア ドレス状態404(第13図)に入る。アドレス状態404においては、受信制 御回路3401は受信シフトレジスタ3410の内容を並列に経路3251を通 して受信データレジスタ3250に転送し、また経路3468を通してバス占有 レジスタ3470に送る。受信制御回路3401は制御バス3402全通してバ ス状態レジスタ3471中のフィールドBS=11を書き、現在のバスト00の 状態が既知であることを示し、またフィールドR8F=OO1とレポートレジス タ3230に論理11“の受信データレジスタ(RDRF)ビットを書き受信デ ータレジスタ3250中にアドレスバイトが利用できることを示す。例−1(第 15図)では宛先サブフィールドは1100であり、ユーザ装置10−12を指 定していることに注意していただきたい。通信コントローラ3000−12にお いてだけは、受信制御回路3401はバス占有レジスタ347oの宛先フィール ド1100とよりレジスタ3210のフィールド11oOが等しいことを検出し 、レポートレジスタ3230 (第18図)に論理“1“のDDビットを書く。
このDDビットとRDRFピントは割込み発生器3290によって経路3209 を通して監視され、割込み発生器329゜は論理N1 “のDDビットと論理ゞ ゝ1 〃のRDRFビットに応動して導体3001−Iを経由してプロセッサ3 001に対して割込み信号を送る。プロセッサ3001はデータバス3001− DBを経由してレポートレジスタ323CのR8Fフィールドを読み、これに応 動してデータバス3001−DBi経由して受信データレジスタ3250からア ドレスバイトを読む。プロセッサ30口1はアドレスバイトを解釈し、これによ って次に受信データレジスタ3250で受信されるデータバイトはデータバス3 001−DBを通してフォーマツタインタフェース3010に伝送され、次に宛 先ユーザ装置10’−12に伝送されるべきことが知らされる。通信コントロー ラの各々において、受信制御回路34o1はここでデータ状態405(第13図 )に入る。データ状態405においてはバス100から次に受信されたビットは 引き続いてレジスタ3406.34o8.34o9および341oにシフトされ る。受信制御回路34o1は最後のバイトが受信シフトレジスタ341oから受 信データレジスタ3250へ転送されてから受信シフトレジスタ3410にシフ トされたビットの数N、全定義する第2の内部ステータス変数を維持する。この ような変数によって受信シフトレジスタ3410に8ビツトがシフトされたこと が示されると、受信制御回路3401は受信シフトレジスタ3410の内容を経 路3251全通して並列に受信データレジスタ3250に転送し、レボ14図) と論理LS 1 //のRDRFビットを書き、受信データレジスタ3250で データバイトが利用できることを示す。通信コントローラ3QOQ−12だけで 、プロセッサ3001はこのようなレポートレジスタ3230の情報に応動して 受信データレジスタ3250のデータバイトのフォーマツダインタフェース30 10への伝送を制御する。このプロセスはキャラクタ検出器3407がレポート バス3403を経由して受信制御回路3401に対してフラグキャラクタ011 11110、アボートキャラクタ11111111あるいはプリエンブトキャラ クタ11111110が制御シフトレジスタに存在することを知らせるまでくり かえされ、バス100から受信されたデータビットは8ビツトのバイトの形で受 信データレジスタ325oに運ばれる。例−1(第15図)に従えば、バス1o oがら受信されるべき次のキャラクタはフレームの終了フラグである。終了フラ グを検出すると、受信制御回路34o1はFC3状態406(第13図)に入る 。FC8状態406においては、受信制御回路3401は受信シフトレジスタ3 410の内8の受信データレジスタ3250への転送を実行し、その内容はフレ ームデータフィールドの最後のバイトから成る。FC8保持レジスタ3409は このときフレームのFCSフィールドを含んでいる。フレームのFCSフィール ドはまたFCSシフトレジスタ3408にシフトされている。FCSシフトレジ スタの動作はプリエンブトキャラクタと開始フラグを除き、FCSフィールドを 含む全フレームがシフトされて入ったとき、発生された16ビツトのFCSフィ ールドは、バス100から受信されたビットに誤りが存在しなければ、定数フィ ールドに等しいようになっている。後て詳述するFCSシフトレジスタ3408 は発生されたFCSフィールドを定数フィールドと比較し、その結果をレポート バス3403′f:通して受信制御回路に知らせる。受信制御回路3401は次 にフレームが誤りなしに完了したことを示すフィールドR8F=011(第14 図)あるいはフレームが完了したが誤りがあったことを示すフィールドR8F= 111を経路3231e通してレポートレジスタ3230に書く。通信コントロ ーラ3000−12においてだけ、プロセッサ3001はこのようなR8Fフィ ールドを検出したことをフォーマツタインタフェース3070に知らせる。各通 信コントローラにおいて、受信制御回路3401は次にハント状態402に入り 、制御バス3402を経由してフィールドB S=OOをバス状態レジスタ34 71に書き現在のバス状態が空きであることを示す。例−1に従えば後続のフレ ームはすぐには来ないから、バス100からは連続した論理90“のビットが受 信される。これによって第15図のフレームの受信が完了する。受信制御回路3 401が同期状態403、アドレス状態404あるいはデータ状態405にある 間にキャラクタ検出器3407が7ポートキヤラクタ11111111を検出す れば、受信制御回路3401はハント状態402に戻ることになる。
例−2(第16図)に従えば、プリエンブトキャラクタ11111110、開始 フラグ、アドレスフィールドおよびユーザ装置10−1からのフレームの少くと も16個のフラグ以外のビットがバス100から通信コントローラ3000−0 乃至3000−15の各々の受信機3400によって受信されたあとで、プリエ ンブトキャラクタ11111110が受信される。このとき、各通信コントロー ラ3000−0乃至3000−15の各々の受信制御回路3401はデータ状態 405にある。
キャラクタ検出器3407が7個の論理“1“のプリエンブトキャラクタ111 11110を制御シフトレジスタ3406で検出したときに、これはレポートバ ス3403全通して、これを受信制御回路3401に知らせる。これに応動して 、受信制御回路3401は制御バス3402’に通してバス状態レジスタ347 1にフィールドBS=11を書き、現在のバス100の状態が未知の状態である ことを示す。キャラクタ検出器3407が第1に完全なプリエンブトキャラクタ を検出し、次に開始フラグを検出すると、これはレポートバス3403全通して これを受信制御回路3401に知らせ、これに応動して、受信制御回路3401 はプリエンブト状態407(第13図)に入り、経路3430全通してN3とN 、を定めるその内部ステータス変数を状態レジスタ3404に送シ、そこに記憶 する。次に各通信コントローラ3000−0乃至3000−15の受信制御回路 3401はステータス変数の第2の集合の現在の値を形成するレジスタ3470 .3471.3404.3410.3409および3408の内容をそれぞれ経 路3467.3469.3414.3413.3412および3411とマルチ プレクサ/デマルチプレクサ3421全通してスタックメモリー3420に送り 、その予め定められた位置に保存する。受信制御回路3401はレポートレジス タ3230の円滑なブリエンプションの検出を示すフィールドR8F=110( 第14図)を書き込む。次に受信制御回路3401はFCSシフトレジスタ34 08を16個の論理91 ”のビットのFCSフィールドに初期化し、同期状態 403ニ戻る。バス100から完全なプリエンブトフレームが中断なく受信され ると、通信コントローラ3000−0乃至3000−15の各々の受信制御回路 3401は、上述したようにアドレス状態404、データ状態405およびFC 8状態406に入る。プリエンブトしたフレームの宛先サブフィールド1101 はユーザ装置10−13を指定し、通信コントローラ3000−13だけでレポ ートレジスタ3230のDDビットが論理ゝ1 //にセットされ、データはフ ォーマツダインタフェース3010全通して伝送されることになる。通信コント ローラ3000−0乃至3000−15の各々において、スタック制御回路34 22はスタックメモリー3420が空きであるかどうかを示すビットを記憶して いる。
Fe2;フトレジスタ3408がレポートバス3403全通して受信制御回路3 401にプリエンブトしたフレームが誤っであるいは誤りなしに受信されたこと を知らせたあと、受信制御回路3401は記憶されたスタック制御回路3422 のビットを読み、これは例−2ではスタックメモリー3420が空きではないこ とを示している。これに応動して受信制御回路3401は再開状態408(第1 3図)に入る。再開状態408では受信制御回路3401はステータス変数の第 2の集合の値の伝送を実行し、その値はマルチプレクサ/デマルチプレクサ34 21と経路3467.3469.3414.3413.3412および3411 を通してそれぞれレジスタ3470.3471.3404.3410.3409 および34o8に保存される。flu−2ではアドレスフィール0001110 0がバス占有レジスタ34γ0に送られ、フィールドBS=10がバス状態レジ スタ3471に送られる。レジスタ3470と3471の内容に応動して、通信 コントローラ3000−1はバスの占有権をとり、プリエンブトされたフレーム の伝送を再開し、通信コントローラ3000−13はユーザ装置10−13への データの転送を止め、通信コントローラ3000−12はユーザ装置10−12 へのデータの転送を再開する。各通信コントローラにおいて、受信制御回路34 01は経路3431を通して状態レジスタ3404の内容を読み、その内部ステ ータス変数をそれが円滑にプリエンブトされた時点の値に戻す。受信制御回路3 401は次にプリエンブトしたフレームの終了フラグのあとの第1の8ビツトを 制御シフトレジスタ3406にシフトし、データ状態405に戻り、プリエンブ トされたフレームの残りは上述した方法で受信される。
第8図に示すように配置される第6図および第7図のFCSシフトレジスタ33 06の実施例は16個のD形フリップフロップ1801乃至1816を含み、こ れがシフトレジスタとして構成されている。フリップフロップ1801乃至18 16の各々はプリセット入力端子Pとクリア入力端子Cを持ち、この端子はプリ ップフロンプを予め定められた値に初期化するのに用いられる。論理NO“信号 と論理へ1 “信号を与えられたフリツプフロッゾのPおよびC端子に送ること によって、フリップフロップのQ出力端子に論理ゝ1“信号が現われる。同様に それぞれ論理”h 1 〃信号と論理ゝ0“信号をPおよびC端子に与えること によって、論理“0〃がQ出力端子に現われる。PおよびC端子に共に論理51 〃信号を与えることによって、D入力端子の論理信号がQ出力端子に記憶される 。送信制御回路3301(第3図)は信号を制御バス、3302全通してFCS ロードレジスタ1831に送ることによってFCSシフトレジスタ3306を初 期化し、これは応動して論理ゝ0〃の信号を16個のスリップ7077180丁 乃至1816のP端子、に、また論理\11〃の信号をC端子に与える。従って 各フリップフロップ1801乃至1816ばそのQ出力端子に論理91 〃の信 号を持つように初期化される。
FCSシフトレジスタ3306は二つのモードで動作する。発生モードではこれ は導体3351で送信シフトレジスタ3305によって送信されたビットから1 6ビツトのFCSフィールドを順次に発生する。シフトモードではフリップフロ ップ1801乃至1816の内容は導体3352全通してマルチプレクサ330 7 (第3図)に順次に送信される。送信制御回路3301はANDゲート18 33の第1の入力端子に論理+V1“の信号を送信し、FCSシフトレジスタ3 306全発生モードにする。フリップフロップ1816のQ端子はANDゲート 1833の第2の入力端子に接続されているから、FCSシフトレジスタ330 6が発生モードにあるときには、フリップフロップ1816のQ端子の送出され た論理信号はANDN−ゲート33全通して、4個の排他的ORゲート1821 乃至1824の入力端子にフィードバックされる。本実施例の特定のフレームチ ェックシーケンスを発生するためには、ゲート1821乃至1824はそれぞれ 送信シフトレジスタ3305とフリップフロップ1801、フリップフロップ1 804とフリップフロップ1805、フリップフロップ1811とフリップフロ ップ1812、フリップフロップ1815とフリップフロップ1816の間に挿 入されている。送信制御回路3301はANDゲート1834の第1の入力端子 に論理ゝゝ1 //の信号を送信することによってフリップフロップ1801乃 至1816にクロックを与え、これによってクロック発生器54によって送出さ れたクロック信号はANDゲート331oを通してANDゲート1834の第2 の入力端子に与えられ、そのあとでフリップフロップ1801乃至1816に与 えられる。従って、発生モードでは、導体3351上で送信シフトレジスタ33 05から受信された任意の与えられたビットについて、フリップフロップ180 1乃至1816のQ端子の信号はそのときの16ビツトのFCSフィールドとな る。送信制御回路33o1がANDゲート1833の第1の入力端子に論理2o “信号を与えたときに、FCSシフトレジスタ33o6はシフトモードで動作し 、このときにはANDゲート1833は各々の排他的ORゲート1821乃至1 824に論理ゝ0“信号を与え、フリップフロップ1801乃至1816の内容 は順次に導体3352e通してマルチプレクサ3307に送出される。
第11図に従って配置される第9図および第10図に図示されたFCSシフトレ ジスタは16個のD形フリップフロップ2901乃至2916.4個の排他的O Rゲ−)2921乃至2924.およびANDゲート2934から成り、これら はFCSシフトレジスタ3306のフリップフロップ1801乃至1816、排 他的ORゲート1821乃至1824およびANDゲート1834と同様に動作 してFCSフィールドを発生する。FCSシフトレジスタ3408はFCSロー ドレジスタ2931を含み、これは受信制御回路3401 (第4図)の制御下 に動作して、フリップフロップ2901乃至2916を初期化する。フリップフ ロップ2901乃至2916のQ出力端子の各々によって送出された信号がFe 2読み出しレジスタ2932に記憶される。受信制御回路3401は円滑なプリ エンブト動作が生じたことを判定すると、Fe2読み出しレジスタ2932の内 容はマルチプレクサ/デマルチプレクサ3421eAしてスタックメモリー34 20に送られ、そこに記憶される。受信制御回路3401はFCSロードレジス タ2931に信号を送り、フリップフロップ2901乃至2916を初期化して 、それがそのQ端子に論理111 “の信号を持つようにする。プリエンブトし たフレームの終了フラグが送信されたらとで、受信制御回路34o1は記憶され た16ビツトのFCSフィールドをスタックメモリー3420からFC8負荷レ ジスタ2931に送り、これは応動してフリップフロップのPおよびC端子に適 切な信号を送り、Q端子における信号が円滑なプリエンブト動作が行なわれたと きと正確に一致するようにする。
FCSシフトレジスタ3408はそのFCSフィールドを直列に送信することは 要求されないから、発生モードだけで動作し、従ってFCSシフトレジスタ34 o8に1dANDゲート1833に対応するものは必要ない。
本実施例のフレームチェックシーケンスは与えられたフレームのFCSフィール ドがFCSシフトレジスタ3408にシフトされたあと、もし誤りがなければ、 発生されたFCSフィールドが予め定められた定数となるようになっている。従 って二つの8ビツト比較器2935と2936によってフリップフロップ29o 1乃至2916のQ出力端子における信号は予め定められた定数フィールドと比 較される。比較器2935あるいは2936のいずれがで、フリップフロップの Q端子における信号と予め定められた定数の差が検出されたときには、これはO Rケート2937に対して論理ゝゝ1 “の信号を送出し、これは次にレポート バス34o3を経由58 して論理N1 “の信号を送出して、検出された誤りを受信制御回路3401に 知らせる。
例−3 第1図のシステムの有利な動作を、さらに先に空きであったバス100をほぼ同 時に二つの通信コントローラがアクセスしようとする例(例−3、第19図)に ついて説明する。例−3に従えば、通信コントローラ3000−1がプリエンブ トキャラクタ11111110の送信を開始する。バス100上を5個の連続し た)A1〃が伝送されたあと、通信コントローラ3000−3がバス100にア クセスすることを決定し、バス100はまだ空き状態にあり、5個の連続した論 理“1“が送信されているので、通信コントローラ3000−3は論理IS 1  //を2個伝送し、次に論理10”を伝送してプリエンブトキャラクタ111 11110を完成する。通信コントローラ3000−3がバス100へのアクセ スを決定する前に通信コントローラ3000−1が7個の連続した論理“1 “ を送信していれば、バス100は既知の状態となり、通信コントローラ3000 −3はアクセスすることができないことになる。例−3の説明を続ければ、両方 の通信コントローラ3000−1と3000−3が同期してフラグキャラクタ0 1111110を送信し、次にそのそれぞれの信号源サブフィールド0001と 0011を送信する。しかし通信コントローラ3000−1がその信号源サブフ ィールド0001の第3の論理90“のビットを送出したとき、これはビットの 差を検出して送信を停止する。通信コントローラ3..000−3はそのフレー ム全体を中断なく送出する。通信コントローラ3000−1がそのフレーム終了 フラグをバス100上に検出したときに、これはそのフレームを最初第1図のシ ステムの動作について次に例−4(第20図)を参照してさらに説明しよう。第 20図においては、10の意味のある事象がシンボル上1乃至tloで示されて いる。これらの事象の時点におけるバス10Gの占有状態が第21図に示されて いる。例−4に従えば、通信コントローラ3000−1はその前まで空きである (第21図の時刻1 ]、 )バス100に対してフレームの送出を開始する。
通信コントローラ3000−1が7個の連続した論理(S 1 //のビットを 送出したときに、バス100は未知の状態となる(第21図の時刻t2)。通信 コントローラ3000−1がプリエンブトキャラクタ11111110と、フラ グキャラクタ011111.10と、アドレスフィールドと、16個のフラグ以 外のビット(ダミーのOビットを除く)全送出したときに、バス100の状態は 既知の状態となシ、バス100は通信コントローラ3000−1 (第21図の 時刻t3)によって占有される仁とになる。通信コントローラ3000−1が論 理“0〃を送出し、次に単一の論理91“を送出した時点で、通信コントローラ 3000−3はそれが現在のバス100の占有者より高い優先順を持つことを知 って、バス100にアクセスすることを決定し、6個の連続した論理(S 1  //とそれに続く論理NO“を送出して、プリエンブトキャラクタ111111 10t−完成する。
通信コントローラ3000−1はビットの差を検出したときにその送信を停止す るが、そのステータス変数の第1の集合を保存し、その全体を再送することなく それがそのフレームを適切に再開できるようにする。しかし、通信コントローラ 3000−3がその6個の連続した論理ゝゝ1 “の二つだけを送信したときに 、通信コントローラ3000−2が通信コントローラ3000−3のアクセスの 試みに気付かないで、それが現在のバス100の占有者より高い優先順を持つこ とだけを知って、バス100にアクセスすることを決定する。この時点で、プリ エンブトキャラクタ11111110の3個の論理N1“がバス100に送出さ れているので、通信コントローラ3000−2は4個の連続的論理“1“を送信 し、そのあとで論理\\0〃を送信してプリエンブトキャラクタを完成する。時 刻t4でバス100に7個の連続した論理Ll 1 //が伝送されたときに、 バス100は再び未知状態となシ、他の通信コントローラによるプリエンブト動 作は再び許されないことになる。通信コントローラ3000−2と3000−3 はフラグキャラクタ01111110を同期して送出し、次にその信号源サフ゛ フィールド0010と0011をそれぞれ送出する。
通信コントローラ3000−1′iビツト差を検出し、その伝送を終了する。通 信コントローラ3000−2はその送信制御回路3301がアドレス状態305 (第12図)にあるときに中断されるから、通信コントローラ3000−2はそ れがバス100のアクセスを次に試みたときにその全フレームを再送する。通信 コントローラ3000−3がアドレスフィールドと16個のフラグ以外のビット (ダミーの90“のビットを除く)の送信を完了したときに、バス100は再び 既知の状態となるが、このときバス100は通信コントローラ3000−3に占 有されていることになる。(第21図の時刻t5)。
例−4に従えば、通信コントローラ3000−3は中断なくフレームの送信を完 了する。フレーム終了フラグがバス100で伝送されたあと、通信コントローラ 3000−1は再びバスを占有することになる。(第21図の時刻t6)。通信 コントローラ3ooo−iが先に割込みを受けたときにハス100には4個の連 続的ゝ1 “が伝送されていたことを示す保存されていた状態変数に従って、通 信コントローラ3000−1は3個の連続した論理ゝ1 〃のあとに論理90“ を伝送し、プリエンブトキャラクタ11111.110が伝送されていた間に送 信されていたヒツトを置換する。しかし時刻t6において、通信コントローラ3 000−2はこれがバス100を占有している通信コントローラ3000−1よ り高い優先度を持つことを知って、バス100ヘアクセスするためにプリエンブ トキャラクタの全体を送信する。
通信コントローラ3000−1はこのビット差を検出して再び送信を停止する。
例−4に従えば、通信コントローラ3000−2からのフレーム全体は中断なく 送信される。フレーム終了フラグがバス100を伝送されると、通信コントロー ラ3000−1は再びバスを占有し、そのフレームの残りをそれ以上の中断なし に送信する。予め定められた優先条件に従って、第1に通信コントローラ300 0−3が、次に通信コントローラ3000−2が、最後に通信コントローラ30 00−1が送信を終了することに注意していただきたい。
上述した実施例は単に本発明の原理を例示するものであシ、本発明の精神と範囲 を逸脱することなく、当業者には多くの他の実施例を工夫することができること は明らかである。例えば、ここで定義した第1および第2のステータス変数の集 合には一部の変数しか含まれていないが、通信コントローラによって実行される 機能がますます複雑テなるに従って、これらの集合に追加の変数を含めてもよい 。さらに、上述したフレームチェックシーケンスは単に例示にすぎず、ここで示 した特定の方法以外に他の誤り検査法を使用することもできる。
FIG、 5 FIG、 8 FIG、 //F/G−/2TRES F/に、 /3 FIG、 21 1)訴 貫層 @ 祠 宍

Claims (1)

    【特許請求の範囲】
  1. 1. 複数個の通信コントローラを含み、バスを経由して複数個のユーザ装置の 間で通信を行なうためのシステムにおいて、 各フレームは優先フィールドを含むようなフレームの形で情報を送信するために 該バスに対して該複数個のユーザ装置の少くともひとつを選択的に結合するため の送信機手段、及び 該バスを監視する手段と、該バス上を伝送される優先フィールドを記憶する手段 を含む受信機手段を備え、第1の通信コントローラの送信機手段はさらに第1の ユーザ装置からの要求信号と該第1の通信コントローラの受信機手段に記憶され た優先フィールドとに応動して該第1の通信コントローラの該受信機手段に記憶 された該優先フィールドによって示された優先順より高い優先順位を持つフレー ムを送信するために該第1のユーザ装置を該バスに結合することを特徴とする通 信システム。 2、請求の範囲第1項に記載の通信システムにおいて、該第1.の通信コントロ ーラの送信機手段はさらに該要求信号と該第1の通信コントローラの該受信機手 段に記憶された該使先フィ・−ルドに応動して該第1のユーザ装置が該バスに結 合されるまで該バスに対して予め定められた論理値をくりかえし送信することを 特徴とする通信システム。 3、請求の範囲第2項に記載の通信システムにおいて、該複数個の通信コントロ ーラはさらに、通信コントローラの送信機手段によって送信された論理値と該バ スによって伝送された論理値の間の差が検出されたときに差信号を発生する検出 手段を含み、第2のユーザ装置を該バスに接続する第2の通信コントローラの送 信機手段はさらに該第2の通信コントローラの検出手段によって発生された該差 信号に応動して該第2のユーザ装置を該バスから分離する手段を含むことを特徴 とする通信システム。 4− 請求の範囲第3項に記載の通信システムにおいて、該複数個の通信コント ローラにおける受信機手段は全体として該受信機手段の現在のステータスを規定 するステータス変数の第2の集合に関連しておシ、該第1の通信コントローラの 該送信機手段はさらに該要求信号と該第1の通信コントローラの該受信機手段に 記載された該優先フィールドとに応動して該バスに対してプリエンブト開始信号 を送信する手段を含み、該複数個の通信コントローラの各々の該受信機手段はさ らに該プリエンブト開始信号に応動してステータス変数の関連する第2の集合の 値を保存する手段を含むことを特徴とする通信システム。 5、請求の範囲第4項に記載の通信システムにおいて、該第1の通信コントロー ラの該送信機手段はさらに該バスに対してプリエンブト終了信号を送信する手段 を含み、 該複数の通信コントローラの各々の受信機手段はさらに該プリエンブト終了信号 に応動して該受信機手段をその受信機手段に関連したステータス変数の第2の集 合の保存された値で規定されたステータスに戻す手段を含むことを特徴とする通 信システム。 6、請求の範囲第5項に記載の通信システムにおいて、該第2の通信コントロー ラの送信機手段は該通信コントローラの該送信機手段の現在のステータスを集合 的に規定するステータス変数の第1の集合に関連しており、該第2の通信コント ローラの該送信機手段は該第2の通信コントローラの該検出手段によって発生さ れた該差信号に応動して該ステータス変数の第1の集合を保存する手段を含むこ とを特徴とする通信システムつ7、請求の範囲第6項記載の通信システムにおい て、該第2の通信コントローラ該送信機手段はさらに該ノ〈スi=ら該第2の通 信コントローラの受信機手段による該プリエンブト終了信号の受信に応動して該 第2の通信コントローラの該送信機手段を該ステータス変数の第1の集合の該保 存された値によって規定されるステータスに戻すことを特徴とする通信システム 。 8、請求の範囲第1項に記載の通信システムにおいて、該第1の通信コントロー ラの該送信機手段はさらに該バス上を伝送された予め定められた論理値を持つ連 続したビットの数N5を計数する手段と、該要求信号と該第1の通信コントロー ラの該受信手段によって記憶された該使先フィールドとに応動してN5とN6の 和が所定の数になるようにN0回だけ予め定められた該論理値を連続的に送信し 、次に該第1のユーザ装置を該バスに接続する前に優先フィールドを含むビット 系列を送信すること分特徴とする通信システム。 9、 請求の範囲第8項に記載の通信システムにおいて、該複数個の通信コント ローラはさらに、その通信コントローラの送信機手段によって送信された論理値 と該バス上を伝送される論理値の間で差が検出されたときに差信号を発生する検 出手段を含み、該第2のユーザ装置を該バスに結合する第2の通信コントローラ の送信機手段はさらに該第2の通信コントローラの該検出手段によって発生され た該差信号に応動して該第2のユーザ装置を該バスから切断する手段を含むこと を特徴とする通信システム。 10、第1および第2の通信コントローラの間で、共用されるバスに対するアク セス権を得るだめの優先順を決定する方法であって、該共用されたバスの特性は 該第1および第2の通信コントローラのいずれかが予め定められた論理値を送信 したときに、該共用されるバスは該第1および第2の通信コントローラの他方に よって送信された論理値にかかわらず、該予め定められた論理値を伝送するよう になっておシ、該方法は 該第1および第2の通信コントローラにより、該共用されたバスを監視し、 該第1の通信コントローラが該バスに対するアクセスを希望したとき、該予め定 められた論理値が該共用バス上を所定の回数だけ伝送されるような回数、該予め 定められた論理値を該第1の通信コントローラにより送信し、次に第1の予め定 められた論理値を送信し、該第2の通信コントローラが該バスに対してアクセス を希望したとき、該予め定められた論理値が該共用ノ(ス上を所定の回数だけ伝 送されるような回数、該予め定められた論理値を該第2の通信コントローラによ 匁送信し、次に第2の予め定められた論理値を送信し、該第1の通信コントロー ラによって、該第1の通信コントローラが送信した論理値と該共用バス上を伝送 される論理値の間の差を検出し、 該検出ステップで検出された誤差に応動して該第1の通信コントローラによる送 信を停止することを特徴とする通信システム。
JP59500447A 1982-12-28 1983-12-07 バス競合の解決のための方法と装置 Expired - Lifetime JPH0695676B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US453929 1982-12-28
US06/453,929 US4642630A (en) 1982-12-28 1982-12-28 Method and apparatus for bus contention resolution
PCT/US1983/001918 WO1984002629A1 (en) 1982-12-28 1983-12-07 Method and apparatus for bus contention resolution

Publications (2)

Publication Number Publication Date
JPS60500117A true JPS60500117A (ja) 1985-01-24
JPH0695676B2 JPH0695676B2 (ja) 1994-11-24

Family

ID=23802624

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59500447A Expired - Lifetime JPH0695676B2 (ja) 1982-12-28 1983-12-07 バス競合の解決のための方法と装置

Country Status (6)

Country Link
US (1) US4642630A (ja)
EP (1) EP0130206B1 (ja)
JP (1) JPH0695676B2 (ja)
CA (1) CA1199383A (ja)
DE (1) DE3376179D1 (ja)
WO (1) WO1984002629A1 (ja)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4745548A (en) * 1984-02-17 1988-05-17 American Telephone And Telegraph Company, At&T Bell Laboratories Decentralized bus arbitration using distributed arbiters having circuitry for latching lockout signals gated from higher priority arbiters
EP0187503A3 (en) * 1984-12-31 1987-08-19 Xerox Corporation Shared line communication system
DE3507343A1 (de) * 1985-03-01 1986-09-04 Siemens AG, 1000 Berlin und 8000 München Verfahren zur pegelregulierung von nachrichteninformationen
DE3636317A1 (de) * 1985-10-25 1987-04-30 Yamatake Honeywell Co Ltd Datenuebertragungssystem mit ueber eine uebertragungsschleife uebermittelten senderechtsanforderungssignalen
JPH0632518B2 (ja) * 1985-12-27 1994-04-27 株式会社東芝 情報伝送システム
GB8606217D0 (en) * 1986-03-13 1986-04-16 Univ Strathclyde Local area network priority control system
US4788543A (en) * 1986-11-05 1988-11-29 Richard Rubin Apparatus and method for broadcasting priority rated messages on a radio communications channel of a multiple transceiver system
US4855997A (en) * 1987-12-21 1989-08-08 Allied-Signal, Inc. Priority queuing technique for content induced transaction overlap (CITO) communication system
US4872163A (en) * 1988-12-22 1989-10-03 American Telephone And Telegraph Company Contention mechanism for communication networks
FR2642244B1 (fr) * 1989-01-24 1991-05-03 Peugeot Procede et dispositif d'acces hierarchise a un reseau de transmission d'informations
US5131007A (en) * 1989-06-09 1992-07-14 General Electric Company Digital voter for multiple site PST R trunking system
US5131010A (en) * 1989-10-12 1992-07-14 General Electric Company Voice guard digital voter for multiple site PST RF trunking system
US5243702A (en) * 1990-10-05 1993-09-07 Bull Hn Information Systems Inc. Minimum contention processor and system bus system
EP0625751A1 (de) * 1993-05-14 1994-11-23 Siemens Aktiengesellschaft Sicheres Informationsübertragungsverfahren für einen Bus
US6529933B1 (en) 1995-06-07 2003-03-04 International Business Machines Corporation Method and apparatus for locking and unlocking a semaphore
US6377587B1 (en) * 1996-12-26 2002-04-23 Cypress Semiconductor Corp. Data packet format and handling for serial communications with embedded reverse channel responses
US5841778A (en) * 1997-11-21 1998-11-24 Siemens Business Communication Systems, Inc. System for adaptive backoff mechanisms in CSMA/CD networks
US6397282B1 (en) * 1998-04-07 2002-05-28 Honda Giken Kogyo Kabushikikaisha Communication controller for transferring data in accordance with the data type
US6633564B1 (en) * 1999-09-22 2003-10-14 Nortel Networks Limited Method and apparatus for inserting packets into a data stream
US7305008B2 (en) * 2001-03-14 2007-12-04 Siemens Communications, Inc. Parallel bus LAN
US8667194B2 (en) * 2003-12-15 2014-03-04 Finisar Corporation Two-wire interface in which a master component monitors the data line during the preamble generation phase for synchronization with one or more slave components
US8225024B2 (en) 2004-03-05 2012-07-17 Finisar Corporation Use of a first two-wire interface communication to support the construction of a second two-wire interface communication
US7809993B2 (en) * 2006-01-17 2010-10-05 International Business Machines Corporation Apparatus, system, and method for receiving digital instructions at devices sharing an identity
CN103297090B (zh) * 2012-02-29 2015-04-08 北京爱朗格瑞科技有限公司 工频载波通讯总线的抢占方法和装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3757301A (en) * 1971-06-17 1973-09-04 Eaton Corp Single cable signaling system
US4145735A (en) * 1977-02-02 1979-03-20 Nippon Steel Corporation Monitor for priority level of task in information processing system
US4447873A (en) * 1977-09-13 1984-05-08 Westinghouse Electric Corp. Input-output buffers for a digital signal processing system
US4225919A (en) * 1978-06-30 1980-09-30 Motorola, Inc. Advanced data link controller
US4271467A (en) * 1979-01-02 1981-06-02 Honeywell Information Systems Inc. I/O Priority resolver
US4271507A (en) * 1979-06-07 1981-06-02 Ford Motor Company Communication broadcast channel interface
US4359731A (en) * 1980-08-22 1982-11-16 Phillips Petroleum Company Communication link contention resolution system
IT1144160B (it) * 1981-03-12 1986-10-29 Cselt Centro Studi Lab Telecom Sistema di accesso multiplo di terminali su una linea telefonica numerica
US4488218A (en) * 1982-01-07 1984-12-11 At&T Bell Laboratories Dynamic priority queue occupancy scheme for access to a demand-shared bus
US4472712A (en) * 1982-03-05 1984-09-18 At&T Bell Laboratories Multipoint data communication system with local arbitration

Also Published As

Publication number Publication date
DE3376179D1 (en) 1988-05-05
US4642630A (en) 1987-02-10
WO1984002629A1 (en) 1984-07-05
EP0130206B1 (en) 1988-03-30
EP0130206A1 (en) 1985-01-09
JPH0695676B2 (ja) 1994-11-24
CA1199383A (en) 1986-01-14

Similar Documents

Publication Publication Date Title
JPS60500117A (ja) バス競合の解決のための方法と装置
US4542380A (en) Method and apparatus for graceful preemption on a digital communications link
JP3532037B2 (ja) 並列計算機
JPS6346839A (ja) 改良されたト−クン受渡しネットワ−ク
JPH0319745B2 (ja)
JPH0222580B2 (ja)
JPH0630511B2 (ja) 局順可変の環状伝送システム
US7609688B2 (en) Serialized bus communication and control architecture
US5442631A (en) Communication control device
RU175049U9 (ru) УСТРОЙСТВО КОММУНИКАЦИОННЫХ ИНТЕРФЕЙСОВ SpaceWire
US4623885A (en) Method and arrangement for distribution of send permission to terminals in a telecommunication network
US5095481A (en) Technique for active synchronization of the content induced transaction overlap (CITO) communication channel
JPH0732397B2 (ja) データ伝送機能付き電子機器
JPH0736173B2 (ja) 情報処理システム内の副ステーションを初期設定する方法。
JP3764930B2 (ja) 無線通信装置
JPH10224353A (ja) ネットワークシステム及びそのバス調停方法
EP1758315A1 (en) Method for transferring data in atm communication, and system therefor
JPH0548982B2 (ja)
JPH08265314A (ja) 通信ネットワークシステム及びルーティングへのネットワークリソース反映方法
JP2000101644A (ja) 回線負荷分散手段及び回線負荷分散方法
JPH08235109A (ja) 転送制御装置
JPS6390240A (ja) バス転送制御方式
JPS589619B2 (ja) デ−タ通信システム
JPS59154875A (ja) 画像信号の不在通信方式
JPH0771099B2 (ja) トークンパッシングデータ通信方式の端末装置