JP3356129B2 - 通信機器 - Google Patents

通信機器

Info

Publication number
JP3356129B2
JP3356129B2 JP25200699A JP25200699A JP3356129B2 JP 3356129 B2 JP3356129 B2 JP 3356129B2 JP 25200699 A JP25200699 A JP 25200699A JP 25200699 A JP25200699 A JP 25200699A JP 3356129 B2 JP3356129 B2 JP 3356129B2
Authority
JP
Japan
Prior art keywords
data
transmission
communication device
bit
memory
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
Application number
JP25200699A
Other languages
English (en)
Other versions
JP2001077867A (ja
Inventor
浩之 古屋
忠 鎌田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
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 Denso Corp filed Critical Denso Corp
Priority to JP25200699A priority Critical patent/JP3356129B2/ja
Publication of JP2001077867A publication Critical patent/JP2001077867A/ja
Application granted granted Critical
Publication of JP3356129B2 publication Critical patent/JP3356129B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Small-Scale Networks (AREA)
  • Communication Control (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、LAN(ローカル
・エリア・ネットワーク)用バスとしての通信線に接続
された各通信機器(所謂ノード)が任意のタイミングで
送信者になることができるマルチマスタ式の通信システ
ムに関し、特に、その通信システムを形成するノードと
しての通信機器に関するものである。
【0002】
【従来の技術】従来より、この種のマルチマスタ式のL
AN通信システムでは、アービトレーション(通信線の
使用権の調停)が行われる。つまり、通信線に接続され
た各通信機器は、通信線の状態を監視しながら自分の送
信を行うようになっており、他の機器と送信が重なっ
て、自分が送信したデータ(通信線へ出力したビット
値)と通信線上のビット値とが異なった時には、アービ
トレーションに負けたと判断して、直ちに送信動作を中
止し、他の機器が送信したデータを受信する側に転じな
ければならない。
【0003】次に、こうしたアービトレーションについ
て、具体例を挙げて説明する。まず、図6(a)に示す
ように、LAN用バスとしての通信線2にA〜Dの4つ
のユニット(通信機器)が接続されているとする。そし
て、各ユニットA〜Dは、常に通信線2の状態をモニタ
しており、通信線2上にデータが存在していないときに
は、いつでもデータを出力することができる。更に、各
ユニットA〜Dには、それぞれ個別のアドレスが割り振
られており、各自が自分のアドレスと他ユニットのアド
レスとを予め知っている。
【0004】また、通信線2上には、データが、予め定
められたフォーマットの通信フレームという形で伝送さ
れる。図6(b)に、通信フレームの一例を示す。図6
(b)において、最初の「SOF(スタート・オブ・フ
レーム)」は、通信フレームの始まりを示すものであ
り、この例では1ビットである。
【0005】例えば、通信線2上にデータが存在してい
ない状態(アイドル状態)が“0”であるとし、SOF
が“1”であるとすると、各ユニットA〜Dは、通信線
2の状態が“0”から“1”に変化したときに、他の何
れかのユニットがこれからデータを出力するということ
を知ることとなる。
【0006】次の「マスタアドレス」は、通信フレーム
の最初のデータ領域であり、この「マスタアドレス」に
は、データを送信するユニットのアドレスが入る。そし
て、その次の「スレーブアドレス」には、通信したい相
手のアドレスが入る。尚、この例において、「マスタア
ドレス」及び「スレーブアドレス」のビット数は、夫
々、4ビットである。そして、例えば、図6(a)にお
けるユニットAが、ユニットBへデータを送信しようと
する場合、マスタアドレスには、ユニットAのアドレス
である“0111”が入り、スレーブアドレスには、ユ
ニットBのアドレスである“0100”が入る。
【0007】次の「電文長ビット」には、送信したいデ
ータの数、或いは、そのデータの長さが入り、その次
に、送信したいデータである「データ」が順次配置され
る。尚、この例において、「電文長ビット」のビット数
は4ビットであり、それに続く「データ」は、8ビット
で1つの固まりになっている。そして、この例では、
「電文長ビット」に続く「データ」が4つあり、このた
め、電文長ビットには、2進数で4を示す“0100”
が入る。
【0008】次の「CRC」は、誤りチェック用のデー
タであり、この例では8ビットである。最後の「EOF
(エンド・オブ・フレーム)」は、通信フレームの終了
を示し、この例では、2ビット長の“00”が用いられ
る。
【0009】ここで、図6のようなLAN通信システム
では、各ユニットA〜Dの何れもがデータを送信するこ
とができるため、通信線2上でデータが衝突する可能性
がある。そのため、アービトレーションが存在し、下記
(1)〜(4)のような取り決めがある。
【0010】(1)全てのユニットA〜Dは、常に通信
線2の状態を監視していなければならない。 (2)各ユニットA〜Dは、通信線2上に通信フレーム
が送信されたことを検知した場合、その通信フレームが
終了するまで、自分の通信フレームを送信してはいけな
い。
【0011】(3)通信線2上に同時に“0”と“1”
が出力された場合は、どちらかの値が優先されるような
通信線2の仕様になっている。尚、図6の例では、
“1”の方が優先される。 (4)各ユニットA〜Dは、自分が出力したビット値と
通信線2上の実際のビット値とが異なっていることを検
知した場合(即ち、2つ以上のユニットが同時に送信を
開始し、しかも、自分の方が、上記マスタアドレスによ
って決まる優先順位が低い場合)には、直ちに送信を止
めて、受信のみの動作に転じる。
【0012】上記(1)〜(4)の規定により、例え
ば、図6におけるユニットA,B,Cが同時に通信フレ
ームの送信を開始した場合には、図7のようなアービト
レーションが行われる。まず、ユニットAが、ユニット
Bに対してデータを送信したとすると、ユニットAから
出力される通信フレームのマスタアドレスには、自分の
アドレス“0111”が入り、スレーブアドレスにはユ
ニットBのアドレス“0100”が入る。同様に、ユニ
ットBがユニットCに対してデータを送信しようとし、
また、ユニットCがユニットDに対してデータを送信し
ようとしたとする。
【0013】この場合、ユニットCは、図7のの時点
において、上記取り決め(3)により、自分が出力した
“0”よりも他のユニットA,Bが出力した“1”の方
が通信線2上で優先されるため、上記取り決め(4)に
より、アービトレーションに負けたと判断し、送信を止
めて受信側にまわることとなる。そして、ユニットBに
ついても、図7のの時点で同様のことが起きる。
【0014】このため、結局、ユニットAから出力され
る通信フレームだけが通信線2上に生き残って、ユニッ
トAからユニットBへの通信が成立することとなる。ま
た、送信を止めたユニットB,Cは、ユニットAの送信
が終了した後、送信を開始することとなる。
【0015】つまり、この種のLAN通信システムで
は、通信フレームの最初のデータ領域(図6(b)のマ
スタアドレスの領域)が、通信線の使用権を調停するた
めの複数ビットからなるアービトレーション領域として
設定されており、各通信機器は、そのアービトレーショ
ン領域の送信中に、自分が通信線へ出力したビット値と
通信線上のビット値とが異なっていることを検知する
と、送信動作を止めて受信のみの動作に転じることによ
り、アービトレーション(通信線の調停)が行われるよ
うになっている。
【0016】そして、以上のようなアービトレーション
によって、通信フレームが壊されることなく、全ての通
信機器が送信を行うことができるのである。
【0017】
【発明が解決しようとする課題】ところで、従来より、
こうしたマルチマスタ式のLAN通信システムを形成す
る通信機器では、前述の如く、送信時においてアービト
レーションに負けたと判断すると、直ちに受信側にまわ
らなければならないため、図8に示す如く、通信線2と
の間でデータをやり取りするためのLAN通信装置4内
に、送信用と受信用との2つのバッファ6,8を持つ必
要があり、しかも、その各バッファ6,8として、最大
ビット数の1通信フレーム分の記憶容量のものを用意し
なければならなかった。
【0018】具体的に説明すると、従来の通信機器にお
いて、LAN通信装置4は、それと共に備えられるCP
U(図示省略)によって、送信用バッファ6に1通信フ
レーム分の送信データ(送信対象のデータ)が書き込ま
れる。そして、例えば、CPUからの送信指令を受ける
と、送信用バッファ6内のデータを通信線2へ1ビット
ずつ出力する送信動作と、通信線2上のデータを1ビッ
トずつ受信して受信用バッファ8に格納する動作とを行
い、上記アービトレーション領域の送信中に、自分が出
力したビット値と通信線2上のビット値とが異なってい
ることを検知した場合には、上記送信動作だけを止めて
受信のみの動作を継続するようにしている。このため、
アービトレーションに負けても、他の機器からの1通信
フレーム分のデータが受信用バッファ8に格納されるこ
ととなり、CPUは、適当なタイミングで、その受信用
バッファ8からデータを読み出し処理することができ
る。
【0019】しかしながら、上記従来の通信機器では、
LAN通信装置4内に2通信フレーム分のデータを記憶
するためのハードウエア資源が必要となってしまい、コ
ストアップを招いてしまう。そこで、本発明は、マルチ
マスタ式の通信システムを、より少ないハードウエア資
源で形成することができる通信機器を提供することを目
的としている。
【0020】
【課題を解決するための手段、及び発明の効果】上記目
的を達成するためになされた請求項1に記載の本発明の
通信機器は、通信線を介して他の機器と接続されること
により、その通信線上に伝送される通信フレームの最初
のデータ領域が該通信線の使用権を調停するための複数
のビットからなるアービトレーション領域として設定さ
れている通信システムを形成し、前記アービトレーショ
ン領域の送信中に、自分が通信線へ出力したビット値と
通信線上のビット値とが異なっていることを検知する
と、送信動作を止めて受信のみの動作に転じるものであ
る。
【0021】そして、本発明の通信機器は、CPUと、
該CPUによって送信対象の送信データが書き込まれる
と共に、該CPUによって受信データが読み出されるメ
モリと、通信装置とを備えており、通信装置は、データ
の記憶容量が前記通信フレームよりも小さく且つ前記ア
ービトレーション領域よりは大きいビット数Nに設定さ
れた送信データ記憶部,データの記憶容量が前記ビット
数Nに設定された受信データ記憶部,Nビットのデータ
を記憶して該データを前記通信線へ1ビットずつ出力す
る送信動作と、前記通信線上のデータを1ビットずつ受
信して記憶する受信動作とを行う送受信部,及び該送受
信部の送信動作によって前記通信線へ出力されたビット
値と前記通信線上のビット値とが異なっているか否かを
判定して、その両ビット値が異なっていることを検知す
ると前記CPUへ割込信号を出力する判定部、を有して
いる。
【0022】更に、本発明の通信機器は、前記通信装置
と前記メモリとをデータ転送可能に接続する内部バス
と、前記通信装置と前記メモリとの間のNビット毎のデ
ータ転送を制御すると共に、そのデータ転送の方向が前
記CPUによって設定されるDMA(ダイレクト・メモ
リ・アクセス)コントローラとを備えており、DMAコ
ントローラは、データ転送の方向がメモリから通信装置
への読出方向に設定されている場合には、通信装置から
DMA要求が出される毎に、メモリから前記内部バスへ
前記送信データをNビットずつ出力させ、逆に、データ
転送の方向が通信装置からメモリへの書込方向に設定さ
れている場合には、通信装置からDMA要求が出される
毎に、前記内部バス上のNビットデータをメモリに格納
させる。
【0023】そして、本発明の通信機器では、通信線へ
のデータ送信時に、CPUが、前記DMAコントローラ
によるデータ転送の方向を、メモリから通信装置への読
出方向に設定すると共に、通信装置へ送信要求を出す。
すると、通信装置は、CPUからの送信要求に伴い、D
MAコントローラへDMA要求を出して、前記内部バス
から送信データ記憶部に前記メモリ内の送信データの最
初のNビットを格納すると共に、該送信データ記憶部に
格納したNビットデータを送受信部に記憶させて、該送
受信部に前記送信動作と前記受信動作とを開始させる。
そして更に、通信装置は、判定部から前記割込信号が出
力されない場合には、送受信部が前記Nビットのデータ
を全て送信し終える前にDMAコントローラへDMA要
求を出して、前記内部バスから送信データ記憶部に前記
メモリ内の送信データの次のNビットを格納する動作
と、送受信部が前記Nビットのデータを全て送信し終え
た時に送信データ記憶部内のNビットデータ(即ち、次
のNビットデータ)を送受信部に再記憶させる動作とを
繰り返すことにより、送受信部に前記メモリ内の送信デ
ータを継続して送信させる。
【0024】つまり、DMAコントローラは、データ転
送の方向がCPUによってメモリから通信装置への読出
方向に設定されている場合、通信装置からDMA要求が
出される毎に、メモリから内部バスへ送信データをNビ
ットずつ出力させるため、通信装置は、このDMAコン
トローラへDMA要求を出すことにより、メモリ内の送
信データをNビットずつ内部バスから送信データ記憶部
へ格納すると共に、その格納したNビットデータを送受
信部に送信させる。
【0025】また特に、本発明の通信機器では、通信装
置の判定部から前記割込信号が出力されると(つまり、
送受信部の送信動作によって通信線へ出力されたビット
値と通信線上の実際のビット値とが異なった時であり、
当該通信機器がアービトレーションに負けた時)、CP
Uが、その割込信号に応じて起動される割込処理によ
り、前記DMAコントローラによるデータ転送の方向
を、通信装置からメモリへの書込方向に再設定する。
【0026】そして更に、通信装置は、判定部から前記
割込信号が出力されると、送受信部の送信動作を停止さ
せて、該送受信部が前記受信動作によりNビットの受信
を完了する毎に、そのNビットの受信データを受信デー
タ記憶部に転送すると共に、DMAコントローラへDM
A要求を出して、受信データ記憶部内のNビットデータ
を前記内部バスへ出力することにより、該データ(Nビ
ットの受信データ)を前記メモリに格納させる。
【0027】つまり、DMAコントローラは、データ転
送の方向がCPUによって通信装置からメモリへの書込
方向に設定されている場合、通信装置からDMA要求が
出される毎に、内部バス上のNビットデータをメモリに
格納させるため、通信装置は、上記動作を行うことによ
り、送信を開始してから受信した全てのデータをメモリ
に順次格納させるのである。
【0028】このような本発明の通信機器によれば、通
信装置内に設ける送信データ記憶部及び受信データ記憶
部として、1通信フレーム分の記憶容量のものを用いる
必要がなく、その記憶容量(記憶可能なビット数N)と
しては、次の条件を満たせば良い。
【0029】即ち、アービトレーション領域のビット数
をM(<N)とし、送受信部が「N−M」ビット分を受
信する時間をT1とし、判定部が割込信号を出力してか
らCPUによってDMAコントローラによるデータ転送
の方向が前記書込方向に再設定されるまでに要する時間
をT2とすると、上記ビット数Nは、「T1>T2」が
成立する値であれば良い。
【0030】つまり、このように設定すれば、仮にアー
ビトレーション領域の最終ビットでアービトレーション
負け(通信線へ出力したビット値と通信線上のビット値
とが異なること)が起こったとしても、その時点から残
りの「N−M」ビット分の受信データが送受信部によっ
て受信されるまでの間に(換言すれば、受信データをメ
モリに書き込むためのDMA要求が通信装置から出され
るまでの間に)、DMAコントローラによるデータ転送
の方向を前記読出方向から前記書込方向に確実に切り換
えることができ、延いては、送信を開始してから受信し
た全てのデータをメモリ内に確実に格納することができ
るからである。
【0031】そして、上記再設定に要する時間T2は、
一般に2,3ビット分程度の受信時間に相当するため、
本発明の通信機器によれば、通信装置内に設ける送信デ
ータ記憶部及び受信データ記憶部の記憶容量を、「M+
4」ビット程度にまで抑えることができ、従来の通信機
器に比べると格段に小さくすることができるのである。
【0032】しかも、本発明の通信機器によれば、DM
Aコントローラによるデータ転送の方向をCPUによっ
て切り換えるようにしており、メモリと通信装置との間
のデータ転送に1チャンネルのDMAしか用いないた
め、メモリと他の周辺装置とのDMAチャンネルが不足
してしまうことを防ぐことができる。特に、この種の通
信機器では、CPUの処理負荷を減らすために、メモリ
と他の周辺機器との間でもDMAによるデータ転送が行
われるが、本発明によれば、DMAチャンネルの増加を
最小限に抑えることができる。
【0033】以上のように本発明の通信機器によれば、
アービトレーションがあるマルチマスタ式の通信システ
ムを、より少ないハードウエア資源で形成することがで
きる。ところで、本発明の通信機器において、通信装置
の送信データ記憶部と受信データ記憶部は、1つずつ設
けるようにしても良いが、1つのデータバッファを両記
憶部として共用するように構成しても良い。
【0034】そこで、請求項2に記載の通信機器では、
前記通信装置が、送信データ記憶部及び受信データ記憶
部として、その両方として使用される1つのデータバッ
ファを備えている。そして、前記送受信部は、前記内部
バスから前記データバッファに格納される送信対象のN
ビットデータを記憶するため、及び前記通信線上のデー
タを1ビットずつ受信して記憶するためのシフトレジス
タを有しており、該シフトレジスタを1ビットずつシフ
ト動作させると共に、そのシフト動作に同期して前記シ
フトレジスタの先頭ビットを前記通信線へ順次出力する
ことにより、前記送信動作を行い、また、前記シフト動
作に同期して前記通信線上のデータを前記シフトレジス
タの最後尾ビットに順次格納することにより、前記受信
動作を行うように構成されている。
【0035】つまり、請求項2に記載の通信機器におい
て、通信装置は、CPUからの送信要求を受けると、D
MAコントローラへDMA要求を出して、内部バスから
上記データバッファにメモリ内の送信データの最初のN
ビットを格納すると共に、該データバッファに格納した
Nビットデータを送受信部のシフトレジスタに記憶させ
て、該送受信部に送信動作と受信動作とを開始させる。
そして更に、通信装置は、判定部から割込信号が出力さ
れない場合には、送受信部がNビットのデータを全て送
信し終える前にDMAコントローラへDMA要求を出し
て、内部バスから上記データバッファにメモリ内の送信
データの次のNビットを格納する動作と、送受信部がN
ビットのデータを全て送信し終えた時に上記データバッ
ファ内のNビットデータ(即ち、次のNビットデータ)
を送受信部のシフトレジスタに再記憶させる動作とを繰
り返すことにより、送受信部にメモリ内の送信データを
継続して送信させる。
【0036】また、通信装置は、判定部から割込信号が
出力されると、送受信部の送信動作(即ち、通信線への
データ出力動作)を停止させて、該送受信部が前記受信
動作によりNビットの受信を完了する毎(即ち、上記シ
フトレジスタにNビット分の受信データが格納される
毎)に、そのNビットの受信データを上記データバッフ
ァに転送すると共に、DMAコントローラへDMA要求
を出して、そのデータバッファ内のNビットデータを内
部バスへ出力することにより、該Nビットの受信データ
をメモリに格納させる。
【0037】このような請求項2の通信機器によれば、
データ記憶用のハードウエア資源を更に少なくすること
ができ、有利である。
【0038】
【発明の実施の形態】以下、本発明が適用された実施形
態の通信機器について、図面を用いて説明する。尚、本
実施形態の通信機器は、図6及び図7を用いて説明した
LAN通信システムのユニットA〜Dとして用いられる
ものである。つまり、本実施形態の通信機器は、図6
(a)の如く通信線2を介して他の機器(ユニット)と
接続されることにより、通信フレームの最初のデータ領
域が4ビットのアービトレーション領域(マスタアドレ
ス)として設定されているLAN通信システムを形成す
ると共に、そのアービトレーション領域としてのマスタ
アドレスの送信中に、自分が通信線2へ出力したビット
値と通信線2上の実際のビット値とが異なっていること
を検知すると、送信動作を止めて受信のみの動作に転じ
るものである。
【0039】まず図1は、第1実施形態の通信機器の構
成を表す構成図である。図1に示すように、本第1実施
形態の通信機器は、各種の演算処理を行うCPU10
と、このCPU10によってアクセス可能であると共
に、当該通信機器からのデータ送信時にCPU10によ
って送信対象の送信データが書き込まれるメモリ(本実
施形態ではRAM)12と、通信線2との間でデータを
やり取りするためのLAN通信装置14(通信装置に相
当)と、そのLAN通信装置14とメモリ12との間の
Nビット(本実施形態では8ビットであり、N=8であ
る)毎のデータ転送を制御するDMAコントローラ16
とを備えている。
【0040】そして、上記CPU10,メモリ12,L
AN通信装置14,及びDMAコントローラ16の各々
は、アドレスバス及びデータバスからなる内部バス18
によって互いにデータ転送可能に接続されている。尚、
以下の説明において、内部バス18のうちのアドレスバ
スとデータバスとを特に区別する場合には、アドレスバ
スの方を内部アドレスバス18aといい、データバスの
方を内部データバス18bという。一方、LAN通信装
置14とメモリ12は、専用の内部バス(アドレスバス
及びデータバス)によって独立に接続するように構成し
ても良い。
【0041】ここで、DMAコントローラ16は、制御
するDMAのチャンネル(DMAチャンネル)を複数持
っており、そのチャンネルのうちの1つ(本実施形態で
は第1チャンネル)によって、LAN通信装置14とメ
モリ12との間のデータ転送を制御し、他のチャンネル
によって、LAN通信装置14以外の他の周辺装置(図
示省略)とメモリ12との間のデータ転送を制御してい
る。また、DMAコントローラ16は、各DMAチャン
ネル毎に内部レジスタを備えており、その各内部レジス
タには、該当するチャンネルでのメモリ12側から見た
データ転送方向を示すフラグと、該当するチャンネルで
のデータ転送対象となるメモリ12の先頭アドレスと
が、CPU10によって書き込まれる。
【0042】そして、DMAコントローラ16は、上記
各内部レジスタのうちの第1チャンネルに対応する内部
レジスタ30に、CPU10によって読出(リード)方
向を示すフラグが書き込まれることにより、LAN通信
装置14とメモリ12との間のデータ転送の方向(即
ち、第1チャンネルのデータ転送方向)がメモリ12か
らLAN通信装置14への読出方向に設定され、逆に、
上記内部レジスタ30に、CPU10によって書込(ラ
イト)方向を示すフラグが書き込まれることにより、L
AN通信装置14とメモリ12との間のデータ転送の方
向がLAN通信装置14からメモリ12への書込方向に
設定される。
【0043】そして更に、DMAコントローラ16は、
LAN通信装置14とメモリ12との間のデータ転送の
方向が上記読出方向に設定されている場合に、図2
(a)に示す如く、LAN通信装置14からのDMA要
求信号を受けると(S110:YES)、内部バス18
が空いたタイミングを見はからって、メモリ12へ読出
信号を出力すると共に、上記内部アドレスバス18a
へ、送信対象の送信データが書き込まれているメモリ1
2のアドレスを出力することにより、メモリ12から上
記内部データバス18bへ8ビット分の送信データを出
力させる(S120)。また、これと同時に、DMAコ
ントローラ16は、LAN通信装置14へDMA許可信
号を出力することにより、メモリ12から内部データバ
ス18bへ8ビット分の送信データが出力されたこと
を、LAN通信装置14に知らせる(S130)。
【0044】尚、本実施形態において、メモリ12は、
1アドレス当たりに8ビット(1バイト)のデータが格
納されるものである。また、DMAコントローラ16の
上記内部レジスタ30には、CPU10によって、送信
データが書き込まれたメモリ12の先頭アドレスが書き
込まれるようになっている。そして、DMAコントロー
ラ16は、LAN通信装置14とメモリ12との間のデ
ータ転送の方向が読出方向に設定されてから、最初にL
AN通信装置14からのDMA要求信号を受けた場合に
は、上記内部レジスタ30内のアドレス値を内部アドレ
スバス18aへそのまま出力し、その後は、LAN通信
装置14からのDMA要求信号を受ける毎に、上記内部
レジスタ30内のアドレス値を1つずつインクリメント
して、上記内部アドレスバス18aへ出力する。
【0045】このため、DMAコントローラ16は、L
AN通信装置14とメモリ12との間のデータ転送の方
向がメモリ12からLAN通信装置14への読出方向に
設定されている場合には、LAN通信装置14からDM
A要求としてのDMA要求信号が出される毎に、メモリ
12から内部データバス18bへ送信データを8ビット
ずつ出力させると共に、LAN通信装置14へDMA許
可信号を出力することとなる。
【0046】また、DMAコントローラ16は、LAN
通信装置14とメモリ12との間のデータ転送の方向が
上記書込方向に設定されている場合に、図2(b)に示
す如く、LAN通信装置14からのDMA要求信号を受
けると(S160:YES)、内部バス18が空いたタ
イミングを見はからって、LAN通信装置14へDMA
許可信号を出力する(S170)。すると、後述するよ
うにLAN通信装置14は通信線2から受信した8ビッ
トの受信データを内部データバス18bへ出力するた
め、DMAコントローラ16は、上記DMA許可信号の
出力とほぼ同時に、メモリ12へ書込信号を出力すると
共に、受信データを格納するためのメモリ12のアドレ
スを上記内部アドレスバス18aへ出力することによ
り、LAN通信装置14から内部データバス18bへ出
力される8ビットの受信データをメモリ12に格納させ
る(S180)。
【0047】尚、DMAコントローラ16は、LAN通
信装置14とメモリ12との間のデータ転送の方向が書
込方向に設定されてから、最初にLAN通信装置14か
らのDMA要求信号を受けた場合には、上記内部レジス
タ30内のアドレス値を内部アドレスバス18aへその
まま出力し、その後は、LAN通信装置14からのDM
A要求信号を受ける毎に、上記内部レジスタ30内のア
ドレス値を1つずつインクリメントして、上記内部アド
レスバス18aへ出力する。
【0048】このため、DMAコントローラ16は、L
AN通信装置14とメモリ12との間のデータ転送の方
向がLAN通信装置14からメモリ12への書込方向に
設定されている場合には、LAN通信装置14からDM
A要求としてのDMA要求信号が出される毎に、LAN
通信装置14へDMA許可信号を出力すると共に、その
DMA許可信号に応じてLAN通信装置14から内部デ
ータバス18bへ出力される8ビットの受信データを、
メモリ12に順次格納させることとなる。
【0049】一方、CPU10は、当該通信機器から通
信線2への(他のユニットへの)送信タイミングになる
と、図3(a)に示す送信時処理を実行する。即ち、ま
ずCPU10は、最初のS210にて、送信対象である
1通信フレーム分の送信データをメモリ12に書き込
む。尚、メモリ12に書き込まれる送信データは、図6
(b)に示した通信フレームのうち、SOFとEOFと
を除いたデータであり、メモリ12へは、アービトレー
ション領域としてのマスタアドレスから順に書き込まれ
る。
【0050】そして、CPU10は、次のS220に
て、DMAコントローラ16に対し、LAN通信装置1
4とメモリ12との間のDMA転送の設定を行う(S2
20)。具体的には、DMAコントローラ16の上記内
部レジスタ30に読出方向を示すフラグを書き込むこと
により、LAN通信装置14とメモリ12との間のデー
タ転送の方向をメモリ12からLAN通信装置14への
読出方向に設定すると共に、その内部レジスタ30に、
上記S210で送信データを書き込んだメモリ12の先
頭アドレスを書き込む。
【0051】そして更に、CPU10は、次のS230
にて、LAN通信装置14へ送信要求を出し、その後、
当該送信時処理を終了して他の処理へ移る。尚、LAN
通信装置14への送信要求の出力は、LAN通信装置1
4内の後述する制御回路28に備えられているフラグ用
レジスタに、送信要求フラグを書き込むことによって行
われる。
【0052】また、CPU10は、後述するようにLA
N通信装置14から割込信号が出力されると、図3
(b)に示す割込処理を実行する。そして、その割込処
理のS310にて、DMAコントローラ16の上記内部
レジスタ30に書込方向を示すフラグを書き込むことに
より、LAN通信装置14とメモリ12との間のデータ
転送の方向をLAN通信装置14からメモリ12への書
込方向に再設定する(設定し直す)。
【0053】一方また、LAN通信装置14は、データ
の記憶容量が1通信フレーム分よりも小さく且つアービ
トレーション領域(4ビット)よりは大きい8ビットに
設定された送信データ記憶部としての送信データバッフ
ァ20tと、同じくデータの記憶容量が8ビットに設定
された受信データ記憶部としての受信データバッファ2
0rと、上記送信データバッファ20t内の8ビットデ
ータを記憶して、該データを通信線2へ1ビットずつ出
力する送信動作と通信線2上のデータを1ビットずつ受
信して記憶する受信動作とを行う送受信部21と、この
送受信部21の送信動作によって通信線2へ出力された
ビット値と通信線2上の実際のビット値とが異なってい
るか否かを判定して、その両ビット値が異なっているこ
とを検知するとCPU10へ前述の割込信号を出力す
る、判定部としての一致判定回路26と、それらを制御
すると共に、DMAコントローラ16との間でDMA要
求信号及びDMA許可信号のやり取りを行う制御回路2
8とを備えている。
【0054】送受信部21は、送信データバッファ20
t内の8ビットデータが転送される8ビットのシフトレ
ジスタ(以下、シフタという)22tと、通信線2へ送
信データのビット値を出力するための送信ドライバ24
tと、通信線2のビット値を入力するための受信ドライ
バ24rと、受信ドライバ24rを介して入力されるビ
ット値を、受信データとして順次記憶する8ビットのシ
フタ22rとを備えている。
【0055】そして、送受信部21は、制御回路28に
よる制御に従い、シフタ22tを1ビットずつシフト動
作させると共に、そのシフト動作に同期して該シフタ2
2tの先頭ビットを送信ドライバ24tから通信線2へ
順次出力することにより、1ビットずつの送信動作を行
い、また、制御回路28による制御に従い、シフタ22
rを1ビットずつシフト動作させると共に、そのシフト
動作に同期して受信ドライバ24rから出力される通信
線2のビット値を該シフタ22rへ順次格納することに
より、1ビットずつの受信動作を行う。
【0056】次に、本通信機器の送信時の動作につい
て、LAN通信装置14の動作を表す図4を中心にして
説明する。まず、前述したように、通信線2へのデータ
送信時には、CPU10が、SOFとEOFとを除いた
1通信フレーム分の送信データをメモリ12に書き込む
と共に、DMAコントローラ16に対してLAN通信装
置14とメモリ12との間のDMA転送の設定を行い、
更に、LAN通信装置14へ送信要求を出す。そして、
この時のCPU10によるDMA転送の設定により、L
AN通信装置14とメモリ12との間のデータ転送の方
向が、メモリ12からLAN通信装置14への読出方向
に設定される。
【0057】尚、この時点で、送受信部21における送
信ドライバ24tへの入力ラインには、シフタ22t内
のデータに拘わらず論理“0”の信号が与えられてお
り、その送信ドライバ24tから通信線2へは“0”が
常時出力されている。つまり、データを送信していない
無送信状態となっている。
【0058】ここで、図4に示すように、LAN通信装
置14の制御回路28は、CPU10からの送信要求を
受けると(即ち、前述したフラグ用レジスタにCPU1
0によって送信要求フラグが書き込まれると)、送信デ
ータを取得するために、DMAコントローラ16へDM
A要求信号を出力する(S410)。
【0059】すると、DMAコントローラ16は、前述
した動作により、メモリ12から内部データバス18b
へ8ビット分の送信データ(この時には、送信データの
最初の8ビット)を出力させると共に、LAN通信装置
14へDMA許可信号を出力するため、LAN通信装置
14の制御回路28は、DMAコントローラ16から上
記DMA許可信号が出力されるのを待ち(S420)、
そのDMA許可信号を受けると(S420:YES)、
内部データバス18bから送信データバッファ20t
へ、メモリ12内の送信データの最初の8ビット(即
ち、マスタアドレス及びスレーブアドレス)を格納させ
る(S430)。
【0060】次に、LAN通信装置14の制御回路28
は、通信線2がアイドル状態(何れのユニットも送信し
ていない“0”の状態)であるか否かを判定し(S44
0)、アイドル状態であれば(S440:YES)、送
受信部21の送信ドライバ24tへの入力ラインに論理
“1”の信号を与えることにより、その送信ドライバ2
4tから通信線2へSOF(1ビット長の“1”)を出
力させる(S450)。
【0061】尚、上記S440の判定では、一致判定回
路26から割込信号が出力されていない場合に、通信線
2がアイドル状態であると判定する。つまり、一致判定
回路26は、送信ドライバ24tの入力ラインと受信ド
ライバ24rの出力ラインとの両論理値が互いに異なっ
ている場合に、ハイレベルの割込信号を出力するように
なっており、また、上記S440の判定時には、送信ド
ライバ24tの入力ラインが“0”になっているためで
ある。よって仮に、他のユニットの方が先に通信線2へ
SOF(“1”)を出力したならば、受信ドライバ24
rの出力ラインだけが“1”になって一致判定回路26
から割込信号が出力されるため、制御回路28は、通信
線2がアイドル状態ではないと判定することとなる。
【0062】次に、上記S450の動作でSOFの送信
を行った後、LAN通信装置14の制御回路28は、通
信線2へ今回出力したビット値と通信線2上の実際のビ
ット値とが一致しているか否かを判定する(S46
0)。尚、この判定も、一致判定回路26の出力に基づ
き行われ、一致判定回路26から割込信号が出力されて
いない場合に、上記両ビット値が一致していると判定す
る。但し、この場合には、自分が論理“1”のSOFを
送信しており、しかも、前述した(3)の取り決めによ
り、通信線2上では“0”よりも“1”の方が優先され
るため、上記S460の判定では、通常、常に両ビット
値が一致していると判定される。
【0063】そして、上記S460の判定にて、通信線
へ出力したビット値と通信線2上の実際のビット値とが
一致していると判定すると(S460:YES)、LA
N通信装置14の制御回路28は、送信データバッファ
20t内の8ビットの送信データを送受信部21のシフ
タ22tに記憶させ(S470)、送受信部21に前述
した1ビットずつの送信動作と受信動作とを開始させる
(S480)。
【0064】すると、送受信部21は、シフタ22tの
各ビットを送信ドライバ24tから通信線2へ順次出力
すると共に、その送信動作に同期して、受信ドライバ2
4rからの受信ビット値をシフタ22rへ順次格納する
こととなる。そして以後、LAN通信装置14の制御回
路28は、下記(T−1)〜(T−3)の制御動作を行
う。
【0065】(T−1):まず、制御回路28は、送受
信部21の送信ドライバ24tから通信線2へ1ビット
のデータが出力される毎に、通信線2へ今回出力された
ビット値と通信線2上の実際のビット値とが一致してい
るか否かを、一致判定回路26の出力に基づいて判定す
る(S490)。
【0066】つまり、送受信部21は、シフト動作させ
るシフタ22tの先頭ビットを送信ドライバ24tの入
力ラインへ順次与えることにより、そのシフタ22tに
格納されたデータを1ビットずつ送信するため、仮に、
通信線2へ出力されたビット値と通信線2上の実際のビ
ット値とが異なれば、一致判定回路26から割込信号が
出力されるからである。
【0067】(T−2):また、制御回路28は、上記
S490の判定で、今回の出力ビット値と通信線2上の
ビット値とが一致していると判定した場合(即ち、一致
判定回路26から割込信号が出力されない場合)には
(S490:YES)、送受信部21がシフタ22tに
記憶された8ビットデータの内の所定ビット目(例えば
4ビット目)を送信した時点で、前述した図4のS41
0〜S430と全く同じ動作を行うことにより、内部デ
ータバス18bから送信データバッファ20tへ、メモ
リ12内の送信データの次の8ビットを格納させる。つ
まり、DMAコントローラ16は、データ転送の方向が
メモリ12からLAN通信装置14への読出方向に設定
されている場合、LAN通信装置14からDMA要求信
号が出力される毎に、メモリ12から内部データバス1
8bへ、送信データを8ビットずつ出力させるからであ
る。
【0068】更に、制御回路28は、送受信部21がシ
フタ22tに記憶された8ビットデータを全て送信し終
えた時に、送信データバッファ20t内の8ビットデー
タ(つまり、次に送信すべき8ビットデータ)を送受信
部21のシフタ22tに再記憶させる。
【0069】そして、制御回路28は、一致判定回路2
6から割込信号が出力されない場合に、上記送信データ
バッファ20tへのデータ格納動作と、上記シフタ22
rへの再記憶動作とを繰り返すことにより、送受信部2
1にメモリ12内の送信データを継続して送信させる。
【0070】(T−3):そして、制御回路28は、送
受信部21によってメモリ12内の送信データが全て送
信されると(S500:YES)、送信ドライバ24t
への入力ラインに論理“0”の信号を与えることによ
り、その送信ドライバ24tから通信線2へEOF(2
ビット長の“0”)を出力させる(S510)。
【0071】以上の動作により、当該通信機器から通信
線2への1通信フレーム分の送信が行われる。一方、L
AN通信装置14の制御回路28は、上記S460又は
S490の判定で、通信線2へ今回出力したビット値と
通信線2上の実際のビット値とが一致していない(異な
っている)と判定すると、送受信部21の送信動作を停
止させて、送信ドライバ24tを無送信状態(“0”の
出力状態)に保持させる(S520)。そして、この場
合、一致判定回路26からCPU10へ割込信号が出力
されることとなり、また、LAN通信装置14の送受信
部21は、受信動作のみを行うこととなる(S53
0)。
【0072】また、LAN通信装置14の制御回路28
は、上記S440の判定で、通信線2へ今回出力したビ
ット値と通信線2上の実際のビット値とが一致していな
いと判定すると、送信ドライバ24tからSOFを出力
させることなく、送受信部21に受信動作だけを開始さ
せる。そして、この場合にも、一致判定回路26からC
PU10へ割込信号が出力されることとなり、また、L
AN通信装置14の送受信部21は、受信動作のみを行
うこととなる(S530)。
【0073】ここで、LAN通信装置14の一致判定回
路26から割込信号が出力されると、CPU10は、前
述した図3(b)の割込処理を実行して、DMAコント
ローラ16によるLAN通信装置14とメモリ12との
間のデータ転送方向を、LAN通信装置14からメモリ
12への書込方向に設定し直すこととなる。
【0074】そして、LAN通信装置14の制御回路2
8は、一致判定回路26から割込信号が出力されると、
送受信部21に1ビットずつの受信動作だけを行わせる
と共に、以後は、下記(R−1)〜(R−3)の制御動
作を行う。 (R−1):まず、制御回路28は、送受信部21が受
信動作によって8ビットの受信を完了すると(つまり、
シフタ22rに8ビットの受信データが格納される
と)、その8ビットの受信データを受信データバッファ
20rに転送すると共に、DMAコントローラ16へD
MA要求信号を出力する。
【0075】すると、DMAコントローラ16は、この
場合、LAN通信装置14とメモリ12との間のデータ
転送方向がメモリ12への書込方向に再設定されている
ため、前述したようにLAN通信装置14へDMA許可
信号を出力する。 (R−2):そこで、制御回路28は、DMAコントロ
ーラ16からのDMA許可信号を待ち、そのDMA許可
信号を受けると、受信データバッファ20r内の8ビッ
トデータを内部データバス18bへ出力して、その8ビ
ットデータをメモリ12に格納させる。
【0076】(R−3):そして、制御回路28は、上
記(R−1)及び(R−2)の動作を、送受信部21が
8ビットの受信を完了する毎に行うことにより、通信線
2からの受信データをメモリ12に全て格納させる。つ
まり、DMAコントローラ16は、LAN通信装置14
とメモリ12との間のデータ転送方向がメモリ12への
書込方向に設定されている場合、LAN通信装置14か
らDMA要求信号が出力される毎に、内部データバス1
8b上の8ビットデータをメモリ12に順次格納させる
からである。
【0077】尚、メモリ12に格納された受信データ
は、CPU10により読み出されて処理に用いられる。
以上詳述したように、本第1実施形態の通信機器では、
通信線2へのデータ送信時に、CPU10が、DMAコ
ントローラ16によるデータ転送の方向をメモリ12か
らLAN通信装置14への読出方向に設定すると共に、
LAN通信装置14へ送信要求を出すようにしている。
【0078】そして、LAN通信装置14は、CPU1
0からの送信要求を受けると、DMAコントローラ16
へDMA要求信号を出して、内部データバス18bから
送信データバッファ20tへメモリ12内の送信データ
の最初の8ビットを格納すると共に、送信データバッフ
ァ20tに格納した8ビットデータを送受信部21のシ
フタ22tに記憶させて、該送受信部21に1ビットず
つの送信動作と受信動作とを開始させるようにしてい
る。
【0079】そして更に、LAN通信装置14は、一致
判定回路26から割込信号が出力されない場合(つま
り、通信線2への出力ビット値と通信線2からの受信ビ
ット値とが一致している場合)には、送受信部21が8
ビットのデータを全て送信し終える前にDMAコントロ
ーラ16へDMA要求信号を出して、内部データバス1
8bから送信データバッファ20tにメモリ12内の送
信データの次の8ビットを格納する動作と、送受信部2
1が8ビットのデータを全て送信し終えた時に送信デー
タバッファ20t内の8ビットデータを送受信部21の
シフタ22tに再記憶させる動作とを繰り返すことによ
り、送受信部21にメモリ12内の送信データを継続し
て送信させるようにしている。
【0080】また特に、本第1実施形態の通信機器で
は、LAN通信装置14の一致判定回路26から割込信
号が出力されると(即ち、送受信部21の送信動作によ
って通信線2へ出力されたビット値と通信線2上の実際
のビット値とが異なった時であり、当該通信機器がアー
ビトレーションに負けた時)、CPU10が、その割込
信号に応じて起動される割込処理により、DMAコント
ローラ16によるデータ転送の方向をLAN通信装置1
4からメモリ12への書込方向に再設定するようにして
いる。
【0081】そして更に、LAN通信装置14は、一致
判定回路26から割込信号が出力されると、送受信部2
1の送信動作を停止させて、以後、該送受信部21が受
信動作により8ビットの受信を完了する毎に、その8ビ
ットの受信データを受信データバッファ20rに転送す
ると共に、DMAコントローラ16へDMA要求信号を
出して、受信データバッファ20r内の8ビットデータ
を内部データバス18bへ出力することにより、そのデ
ータをメモリ12に格納させるようにしている。
【0082】このような本第1実施形態の通信機器によ
れば、LAN通信装置14内に設ける送信データバッフ
ァ20t及び受信データバッファ20rとして、その記
憶容量が1通信フレーム分よりも遙かに小さい8ビット
(アービトレーション領域のビット数+4ビット)のも
のを用いているにも拘わらず、マルチマスタ式の通信シ
ステムを形成することができる。
【0083】つまり、通信線2へのデータ送信時におい
て、仮にアービトレーション領域の最終ビット(マスタ
アドレスの4ビット目)でアービトレーション負けが起
こったとしても、その時点から残りの4ビット(8ビッ
ト−4ビット)分の受信データが受信されるまでの間に
(換言すれば、受信データをメモリ12に書き込むため
のDMA要求信号がLAN通信装置14から出されるま
での間に)、DMAコントローラ16によるデータ転送
の方向を読出方向からメモリ12への書込方向に確実に
切り換えることができ、延いては、送信を開始してから
受信した全てのデータをメモリ12内に確実に格納する
ことができるからである。
【0084】しかも、本第1実施形態の通信機器によれ
ば、DMAコントローラ16によるデータ転送の方向を
CPU10によって切り換えるようにしており、メモリ
12とLAN通信装置14との間のデータ転送に1つの
DMAチャンネルしか用いないため、メモリ12と他の
周辺装置とのDMAチャンネルが不足してしまうことを
防ぐことができ、また、DMAチャンネルの増加を最小
限に抑えることができる。
【0085】以上のように本第1実施形態の通信機器に
よれば、アービトレーションがあるマルチマスタ式の通
信システムを、より少ないハードウエア資源で形成する
ことができる。ところで、上記第1実施形態の通信機器
では、LAN通信装置14内に送信データバッファ20
tと受信データバッファ20rとを別々に設けるように
したが、それらを1つのデータバッファで兼用させるよ
うに構成しても良い。
【0086】そこで次に、そのような第2実施形態の通
信機器について、図5を用い説明する。尚、図5は、第
2実施形態の通信機器の構成を表す構成図である。そし
て、図5において、図1と同じ構成要素については同一
の符号を付しているため、詳細な説明は省略する。
【0087】図5に示すように、第2実施形態の通信機
器は、前述した第1実施形態の通信機器に対して、下記
〜の点が異なっている。 :LAN通信装置14には、送信データバッファ20
tと受信データバッファ20rとの両方として使用され
る8ビットのデータバッファ20が1つ備えられてい
る。
【0088】:また、LAN通信装置14の送受信部
21は、内部データバス18bから上記データバッファ
20に格納される送信対象の8ビットデータを記憶する
ため、及び通信線2上のデータを1ビットずつ受信して
記憶するための、8ビットのシフタ22を1つだけ有し
ている。
【0089】そして、送受信部21は、制御回路28に
よる制御に従い、上記シフタ22を1ビットずつシフト
動作させると共に、そのシフト動作に同期して該シフタ
22の先頭ビットを送信ドライバ24tから通信線2へ
順次出力することにより、1ビットずつの送信動作を行
い、また、そのシフト動作に同期して受信ドライバ24
rから出力される通信線2のビット値(通信線2上のデ
ータ)を上記シフタ22の最後尾ビットに順次格納する
ことにより、1ビットずつの受信動作を行う。
【0090】つまり、送受信部21は、1つのシフタ2
2を、第1実施形態における2つのシフタ22t,22
rとして兼用している。尚、本第2実施形態において
も、送受信部21は、シフト動作されるシフタ22の先
頭ビットを送信ドライバ24tの入力ラインへ順次与え
ることにより、そのシフタ22に格納されたデータを1
ビットずつ送信する。
【0091】:LAN通信装置14の制御回路28
は、図4のS430の動作にて、メモリ12から内部デ
ータバス18bへ出力されている8ビットの送信データ
を、データバッファ20に格納させる。そして、制御回
路28は、図4のS470の動作にて、データバッファ
20内の8ビットデータを送受信部21のシフタ22に
記憶させ、その後、送受信部21に上記1ビットずつの
送信動作と受信動作とを開始させる。
【0092】:そして同様に、LAN通信装置14の
制御回路28は、前述した(T−2)の動作において
は、送受信部21がシフタ22に記憶された8ビットデ
ータの内の所定ビット目を送信した時点で内部データバ
ス18bからデータバッファ20へ送信データの次の8
ビットを格納させる動作と、送受信部21がシフタ22
に記憶された8ビットデータを全て送信し終えた時にデ
ータバッファ20内の8ビットデータをシフタ22に再
記憶させる動作とを繰り返して、送受信部21にメモリ
12内の送信データを継続して送信させる。
【0093】:また、LAN通信装置14の制御回路
28は、前述した(R−1)の動作においては、送受信
部21が受信動作によって8ビットの受信を完了すると
(つまり、シフタ22に8ビットの受信データが格納さ
れると)、その8ビットの受信データをデータバッファ
20に転送すると共に、DMAコントローラ16へDM
A要求信号を出力する。
【0094】:そして、制御回路28は、前述した
(R−2)の動作においては、DMAコントローラ16
からのDMA許可信号を受けると、データバッファ20
内の8ビットデータを内部データバス18bへ出力し
て、その8ビットデータをメモリ12に格納させる。
【0095】つまり、本第2実施形態の通信機器におい
て、LAN通信装置14は、CPU10からの送信要求
を受けると、DMAコントローラ16へDMA要求信号
を出して、内部データバス18bからデータバッファ2
0へメモリ12内の送信データの最初の8ビットを格納
すると共に、該データバッファ20に格納した8ビット
データを送受信部21のシフタ22に記憶させて、該送
受信部21に1ビットずつの送信動作と受信動作とを開
始させるようにしており、更に、LAN通信装置14
は、一致判定回路26から割込信号が出力されない場合
には、送受信部21が8ビットのデータを全て送信し終
える前にDMAコントローラ16へDMA要求信号を出
して、内部データバス18bからデータバッファ20に
メモリ12内の送信データの次のNビットを格納する動
作と、送受信部が8ビットのデータを全て送信し終えた
時にデータバッファ20内の8ビットデータを送受信部
21のシフタ22に再記憶させる動作とを繰り返すこと
により、送受信部21にメモリ12内の送信データを継
続して送信させるようにしている。
【0096】また、LAN通信装置14は、当該通信機
器がアービトレーションに負けて一致判定回路26から
割込信号が出力されると、送受信部21の送信動作を停
止させて、以後は、送受信部21が受信動作により8ビ
ットの受信を完了する毎に、その8ビットの受信データ
をデータバッファ20に転送すると共に、DMAコント
ローラ16へDMA要求信号を出して、そのデータバッ
ファ20内の8ビットデータを内部データバス18bへ
出力することにより、そのデータをメモリ12に格納さ
せるようにしている。
【0097】そして、このような第2実施形態の通信機
器によれば、LAN通信装置14に設けるデータ記憶用
のハードウエア資源を、更に少なくすることができ有利
である。以上、本発明の一実施形態について説明した
が、本発明は、種々の形態を採り得ることは言うまでも
ない。
【0098】例えば、 上記各実施形態では、LAN通
信装置14に8ビットのデータバッファ20t,20
r,20を設けるようにしたが、そのデータバッファ2
0t,20r,20のビット数Nは、8ビットに限るも
のではなく、「課題を解決するための手段、及び発明の
効果」の欄で述べた条件(「T1>T2」)が成立する
範囲内で適宜設定することができる。
【0099】また、上記各実施形態の通信機器の構成
は、LAN通信システムの通信線に接続される車載用制
御装置(例えばナビゲーション装置)やパソコン,プリ
ンタ等の様々な機器に適用することができる。
【図面の簡単な説明】
【図1】 第1実施形態の通信機器の構成を表す構成図
である。
【図2】 DMAコントローラの動作を表すフローチャ
ートである。
【図3】 CPUで実行される処理を表すフローチャー
トである。
【図4】 LAN通信装置の動作を表すフローチャート
である。
【図5】 第2実施形態の通信機器の構成を表す構成図
である。
【図6】 マルチマスタ式のLAN通信システムを説明
する説明図である。
【図7】 アービトレーションの一例を説明するタイム
チャートである。
【図8】 従来の通信機器及びその問題を説明する説明
図である。
【符号の説明】
2…通信線 10…CPU 12…メモリ 14
…LAN通信装置 16…DMAコントローラ 18…内部バス 18
a…内部アドレスバス 18b…内部データバス 20t…送信データバッフ
ァ 20r…受信データバッファ 20…データバッファ
21…送受信部 22t,22r,22…シフタ(シフトレジスタ)
24t…送信ドライバ 24r…受信ドライバ 26…一致判定回路(判定
部) 28…制御回路
フロントページの続き (58)調査した分野(Int.Cl.7,DB名) H04L 13/08 H04L 12/40

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 通信線を介して他の機器と接続されるこ
    とにより、前記通信線上に伝送される通信フレームの最
    初のデータ領域が前記通信線の使用権を調停するための
    複数のビットからなるアービトレーション領域として設
    定されている通信システムを形成し、前記アービトレー
    ション領域の送信中に、自分が前記通信線へ出力したビ
    ット値と前記通信線上のビット値とが異なっていること
    を検知すると、送信動作を止めて受信のみの動作に転じ
    る通信機器であって、 CPUと、 該CPUによって送信対象の送信データが書き込まれる
    と共に、該CPUによって受信データが読み出されるメ
    モリと、 データの記憶容量が前記通信フレームよりも小さく且つ
    前記アービトレーション領域よりは大きいビット数Nに
    設定された送信データ記憶部、データの記憶容量が前記
    ビット数Nに設定された受信データ記憶部、Nビットの
    データを記憶して該データを前記通信線へ1ビットずつ
    出力する送信動作と、前記通信線上のデータを1ビット
    ずつ受信して記憶する受信動作とを行う送受信部、及び
    該送受信部の送信動作によって前記通信線へ出力された
    ビット値と前記通信線上のビット値とが異なっているか
    否かを判定して、その両ビット値が異なっていることを
    検知すると前記CPUへ割込信号を出力する判定部を有
    した通信装置と、 該通信装置と前記メモリとをデータ転送可能に接続する
    内部バスと、 前記通信装置と前記メモリとの間のNビット毎のデータ
    転送を制御すると共に、そのデータ転送の方向が前記C
    PUによって設定され、該データ転送の方向が前記メモ
    リから前記通信装置への読出方向に設定されている場合
    には、前記通信装置からDMA要求が出される毎に、前
    記メモリから前記内部バスへ前記送信データをNビット
    ずつ出力させ、逆に、前記データ転送の方向が前記通信
    装置から前記メモリへの書込方向に設定されている場合
    には、前記通信装置からDMA要求が出される毎に、前
    記内部バス上のNビットデータを前記メモリに格納させ
    るDMAコントローラとを備え、 前記通信線へのデータ送信時に、前記CPUが、前記D
    MAコントローラによるデータ転送の方向を前記メモリ
    から前記通信装置への読出方向に設定すると共に、前記
    通信装置へ送信要求を出し、 前記通信装置は、前記送信要求を受けると、前記DMA
    コントローラへ前記DMA要求を出して、前記内部バス
    から前記送信データ記憶部に前記メモリ内の送信データ
    の最初のNビットを格納すると共に、該送信データ記憶
    部に格納したNビットデータを前記送受信部に記憶させ
    て、該送受信部に前記送信動作と前記受信動作とを開始
    させ、更に、前記判定部から前記割込信号が出力されな
    い場合には、前記送受信部が前記Nビットのデータを全
    て送信し終える前に前記DMAコントローラへ前記DM
    A要求を出して、前記内部バスから前記送信データ記憶
    部に前記メモリ内の送信データの次のNビットを格納す
    る動作と、前記送受信部が前記Nビットのデータを全て
    送信し終えた時に前記送信データ記憶部内のNビットデ
    ータを前記送受信部に再記憶させる動作とを繰り返すこ
    とにより、前記送受信部に前記メモリ内の送信データを
    継続して送信させ、 また、前記通信装置の判定部から前記割込信号が出力さ
    れると、 前記CPUが、前記割込信号に応じて起動される割込処
    理により、前記DMAコントローラによるデータ転送の
    方向を前記通信装置から前記メモリへの書込方向に再設
    定すると共に、 前記通信装置は、前記送受信部の送信動作を停止させ
    て、該送受信部が前記受信動作によりNビットの受信を
    完了する毎に、そのNビットの受信データを前記受信デ
    ータ記憶部に転送すると共に、前記DMAコントローラ
    へ前記DMA要求を出して、前記受信データ記憶部内の
    Nビットデータを前記内部バスへ出力することにより、
    該データを前記メモリに格納させること、 を特徴とする通信機器。
  2. 【請求項2】 請求項1に記載の通信機器において、 前記通信装置は、前記送信データ記憶部及び前記受信デ
    ータ記憶部として、その両方として使用される1つのデ
    ータバッファを備えており、 前記送受信部は、前記内部バスから前記データバッファ
    に格納される送信対象のNビットデータを記憶するた
    め、及び前記通信線上のデータを1ビットずつ受信して
    記憶するためのシフトレジスタを有し、該シフトレジス
    タを1ビットずつシフト動作させると共に、そのシフト
    動作に同期して前記シフトレジスタの先頭ビットを前記
    通信線へ順次出力することにより、前記送信動作を行
    い、また、前記シフト動作に同期して前記通信線上のデ
    ータを前記シフトレジスタの最後尾ビットに順次格納す
    ることにより、前記受信動作を行うこと、を特徴とする
    通信機器。
JP25200699A 1999-09-06 1999-09-06 通信機器 Expired - Fee Related JP3356129B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP25200699A JP3356129B2 (ja) 1999-09-06 1999-09-06 通信機器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP25200699A JP3356129B2 (ja) 1999-09-06 1999-09-06 通信機器

Publications (2)

Publication Number Publication Date
JP2001077867A JP2001077867A (ja) 2001-03-23
JP3356129B2 true JP3356129B2 (ja) 2002-12-09

Family

ID=17231264

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25200699A Expired - Fee Related JP3356129B2 (ja) 1999-09-06 1999-09-06 通信機器

Country Status (1)

Country Link
JP (1) JP3356129B2 (ja)

Also Published As

Publication number Publication date
JP2001077867A (ja) 2001-03-23

Similar Documents

Publication Publication Date Title
US5919261A (en) Methods and apparatus for controlling operation of a link layer controller based upon a state of connection between multiple electronic apparatus
JP3194318B2 (ja) バス管理方法
JP2598178B2 (ja) 通信システム
US5034881A (en) Method of and system for controlling common bus
JPH10229410A (ja) データ処理装置、電子機器および通信システム
KR20010018894A (ko) 디지털 인터페이스에서의 버스 제어방법
JP2006253922A (ja) ゲートウェイ装置及びゲートウェイ装置におけるデータ転送方法
JP3356129B2 (ja) 通信機器
US8427955B2 (en) Method and apparatus for transferring data
JP4458873B2 (ja) シリアルデータ転送方法とその装置
US20210119631A1 (en) Semiconductor device including subsystem interfaces and communications method thereof
JP3194381B2 (ja) バス管理方法
JP2639248B2 (ja) 通信インターフェイス装置
KR100628177B1 (ko) 디지털 인터페이스의 버스 제어장치 및 방법
JP2538901B2 (ja) バス結合装置
JP2573790B2 (ja) 転送制御装置
JP4666369B2 (ja) Usbデバイス
JP3194382B2 (ja) バス管理方法
JP3219085B2 (ja) バス管理方法
JP2004005168A (ja) データ送信方法、通信システム、処理装置、コンピュータプログラム及び記録媒体
KR100427764B1 (ko) 서로 다른 데이터 버스를 가지는 디바이스들의 정합 장치
JPH0721018Y2 (ja) 車両制御システムにおける通信装置
JPH0461388B2 (ja)
JPH10320345A (ja) バスコントローラ
JPH10290246A (ja) 通信装置および通信方法

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081004

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091004

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101004

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101004

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111004

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121004

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121004

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131004

Year of fee payment: 11

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees