JPH0779344B2 - 半2重通信路ドライバ制御方法 - Google Patents
半2重通信路ドライバ制御方法Info
- Publication number
- JPH0779344B2 JPH0779344B2 JP63116029A JP11602988A JPH0779344B2 JP H0779344 B2 JPH0779344 B2 JP H0779344B2 JP 63116029 A JP63116029 A JP 63116029A JP 11602988 A JP11602988 A JP 11602988A JP H0779344 B2 JPH0779344 B2 JP H0779344B2
- Authority
- JP
- Japan
- Prior art keywords
- transmission
- driver
- communication
- duplex communication
- control method
- 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 - Lifetime
Links
- 238000004891 communication Methods 0.000 title claims description 56
- 238000000034 method Methods 0.000 title claims description 18
- 230000005540 biological transmission Effects 0.000 claims description 52
- 230000000694 effects Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
Landscapes
- Small-Scale Networks (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、半2重通信路で使用される通信機器のドライ
バ制御方法に関し、特に、送信用ドライバのディスイネ
ーブル方法に関するものである。
バ制御方法に関し、特に、送信用ドライバのディスイネ
ーブル方法に関するものである。
送信側と受信側とで線路が分離されていないため同時に
は1台しか送信することのできない通信路(以下「半2
重通信路」という)を使用する通信機器は、同時に複数
の通信機器が半2重通信路を電気的にドライブしようと
することを防止するために、自身が送信するとき以外は
送信用ドライバをディスイネーブルにしておかねばなら
ない。
は1台しか送信することのできない通信路(以下「半2
重通信路」という)を使用する通信機器は、同時に複数
の通信機器が半2重通信路を電気的にドライブしようと
することを防止するために、自身が送信するとき以外は
送信用ドライバをディスイネーブルにしておかねばなら
ない。
半2重通信路を使用する一般的な通信システムを第3図
に示す。同図において、1〜3は通信機器、4は半2重
通信路、11,21,31はマイクロプロセッサ、12,22,32は通
信コントローラ、13,23,33は送信ドライバ、14,24,34は
受信レシーバであり、a1〜a3は制御信号である。
に示す。同図において、1〜3は通信機器、4は半2重
通信路、11,21,31はマイクロプロセッサ、12,22,32は通
信コントローラ、13,23,33は送信ドライバ、14,24,34は
受信レシーバであり、a1〜a3は制御信号である。
上述したように、第3図において、通信機器1が送信し
ているときには、通信機器2と3とは半2重通信路4を
ドライブしてはいけない。すなわち、通信機器1のみが
送信用ドライバ13をイネーブルにし、他は送信用ドライ
バ23,33をディスイネーブルにしておかねばならない。
ているときには、通信機器2と3とは半2重通信路4を
ドライブしてはいけない。すなわち、通信機器1のみが
送信用ドライバ13をイネーブルにし、他は送信用ドライ
バ23,33をディスイネーブルにしておかねばならない。
従って、各通信機器は送信を始める前に送信用ドライバ
をイネーブルにし、送信が完了した後で送信用ドライバ
をディスイネーブルにすることになる。そのために送信
ドライバをディスイネーブルにするタイミングが分から
ねばならない。すなわち、第4図に示すように、通信機
器1の通信コントローラ12に最後のデータを書き込んで
から送信ドライバ13をディスイネーブルにするまでの待
ち時間T1を設け(第4図(a),(b)参照)、通信機
器1は最後のデータDE送出後の時間T2で送信ドライバ13
をディスイネーブルにしなければならない(第4図
(d),(b)参照)。また、通信機器1は、通信機器
2の送信ドライバ23がイネーブルになる前の時間T3に送
信ドライバ13をディスイネーブルにしなければならない
(第4図(c)参照)。
をイネーブルにし、送信が完了した後で送信用ドライバ
をディスイネーブルにすることになる。そのために送信
ドライバをディスイネーブルにするタイミングが分から
ねばならない。すなわち、第4図に示すように、通信機
器1の通信コントローラ12に最後のデータを書き込んで
から送信ドライバ13をディスイネーブルにするまでの待
ち時間T1を設け(第4図(a),(b)参照)、通信機
器1は最後のデータDE送出後の時間T2で送信ドライバ13
をディスイネーブルにしなければならない(第4図
(d),(b)参照)。また、通信機器1は、通信機器
2の送信ドライバ23がイネーブルになる前の時間T3に送
信ドライバ13をディスイネーブルにしなければならない
(第4図(c)参照)。
通常通信コントローラには専用のIC(LSI)が使用さ
れ、マイクロプロセッサは送信データをバイト(8ビッ
ト)単位もしくは数バイトまとめて通信コントローラに
書き込むことができる。よって、マイクロプロセッサ
は、書き込んだデータがシリアルデータに変換されて全
て通信路上に送出されるまで待って、送信完了を確認し
てから、送信ドライバをディスイネーブルにすることに
なる。
れ、マイクロプロセッサは送信データをバイト(8ビッ
ト)単位もしくは数バイトまとめて通信コントローラに
書き込むことができる。よって、マイクロプロセッサ
は、書き込んだデータがシリアルデータに変換されて全
て通信路上に送出されるまで待って、送信完了を確認し
てから、送信ドライバをディスイネーブルにすることに
なる。
しかしながら、安価な通信コントローラの中には送出完
了を確認することのできないものもあり、そのような通
信コントローラを使用せざるをえない場合には従来以下
のような方法がとられていた。
了を確認することのできないものもあり、そのような通
信コントローラを使用せざるをえない場合には従来以下
のような方法がとられていた。
マイクロプロセッサがプログラムでループを組んで時
間をカウントする。
間をカウントする。
通信コントローラとは別にタイマをハードウェアとし
て持って、時間をカウントする。
て持って、時間をカウントする。
上記の方法はコストアップにはならないが、送出完了
の時間カウントをする間マイクロプロセッサは他の処理
をすることができなくなり、ソフトウェア構成の大きな
制約となる。
の時間カウントをする間マイクロプロセッサは他の処理
をすることができなくなり、ソフトウェア構成の大きな
制約となる。
上記の方法は、タイマがカウントする間マイクロプロ
セッサは他の処理をすることができるため、ソフトウェ
ア構成上の制約にはならないが、コストアップになる。
セッサは他の処理をすることができるため、ソフトウェ
ア構成上の制約にはならないが、コストアップになる。
さらに、上記,の両方法ともに、通信コントローラ
自身が送出完了を検出するのとは異なり、余裕を見込ま
なければならないため、送出完了から送信ドライバのデ
ィスイネーブルまでの時間を必要最小時間よりも長くせ
ざるをえない。従って、その分時間ロスとなり、通信全
体のスループットを落とす要因となる。
自身が送出完了を検出するのとは異なり、余裕を見込ま
なければならないため、送出完了から送信ドライバのデ
ィスイネーブルまでの時間を必要最小時間よりも長くせ
ざるをえない。従って、その分時間ロスとなり、通信全
体のスループットを落とす要因となる。
本発明はこのような点に鑑みてなされたものであり、そ
の目的とするところは、半2重通信路において送出完了
の確認ができない通信コントローラを使用した場合で
も、ソフトウェア構成に制約を加えることなく、ハード
ウェアタイマの追加を必要とせず、通信路のスループッ
トを落とす時間ロスもない送出完了の確認方法を提供す
ることにある。
の目的とするところは、半2重通信路において送出完了
の確認ができない通信コントローラを使用した場合で
も、ソフトウェア構成に制約を加えることなく、ハード
ウェアタイマの追加を必要とせず、通信路のスループッ
トを落とす時間ロスもない送出完了の確認方法を提供す
ることにある。
このような目的を達成するために本発明による半2重通
信路ドライバ制御方法は、送信完了後の送信用ドライバ
をディスイネーブルにするタイミングを折り返し受信か
ら検出するようにしたものである。
信路ドライバ制御方法は、送信完了後の送信用ドライバ
をディスイネーブルにするタイミングを折り返し受信か
ら検出するようにしたものである。
本発明による半2重通信路ドライバ制御方法において
は、受信データが最後の送信データと一致したときに送
信用ドライバがディスイネーブルにされる。
は、受信データが最後の送信データと一致したときに送
信用ドライバがディスイネーブルにされる。
半2重通信路の場合には、送信ドライバと受信レシーバ
とが通信路上でワイヤードオアされているため、送信と
同時に送信データの折り返し受信が可能であり、通信コ
ントローラに書き込まれた送信データが折り返し受信に
より受信されたならば、その送信データは通信路上への
送出が完了したことを意味する。一般に、送信完了の確
認ができない通信コントローラも受信済データ有無は確
認することができる。つまり、受信時に割り込み要求を
出したり、受信データの有無をプログラムで読み出すこ
とができる。従って、送信メッセージの最後のデータを
通信コントローラに書き込んだ後、折り返し受信を監視
し、最後の送信データが受信された時に送信用ドライバ
をディスイネーブルにすればよい。これを第1図および
第2図に示す。
とが通信路上でワイヤードオアされているため、送信と
同時に送信データの折り返し受信が可能であり、通信コ
ントローラに書き込まれた送信データが折り返し受信に
より受信されたならば、その送信データは通信路上への
送出が完了したことを意味する。一般に、送信完了の確
認ができない通信コントローラも受信済データ有無は確
認することができる。つまり、受信時に割り込み要求を
出したり、受信データの有無をプログラムで読み出すこ
とができる。従って、送信メッセージの最後のデータを
通信コントローラに書き込んだ後、折り返し受信を監視
し、最後の送信データが受信された時に送信用ドライバ
をディスイネーブルにすればよい。これを第1図および
第2図に示す。
第1図は割り込みを使用しない場合の送出完了判定方法
を示すフローチャート、第2図は割り込みを使用する場
合の送出完了判定方法を示すフローチャートである。
を示すフローチャート、第2図は割り込みを使用する場
合の送出完了判定方法を示すフローチャートである。
第1図において、通信コントローラに最後の送信データ
を書き込んだ後、受信データの有無をテストする(ステ
ップ51,52)。受信データが無い場合は待機状態とな
り、有る場合は受信データを読み込む(ステップ53)。
次に、最後の送信データと一致しているか否かを判定し
(ステップ54)、一致している場合には送信完了と判定
され、送信用ドライバをディスイネーブルにする(ステ
ップ55)。一致していない場合にはステップ52に戻り、
再度受信データの有無をテストする。
を書き込んだ後、受信データの有無をテストする(ステ
ップ51,52)。受信データが無い場合は待機状態とな
り、有る場合は受信データを読み込む(ステップ53)。
次に、最後の送信データと一致しているか否かを判定し
(ステップ54)、一致している場合には送信完了と判定
され、送信用ドライバをディスイネーブルにする(ステ
ップ55)。一致していない場合にはステップ52に戻り、
再度受信データの有無をテストする。
第2図に示す動作は、第1図に示す動作とほぼ同様であ
るが、割り込み処理が行なわれる点が異なる。すなわ
ち、ステップ51と同一内容のステップ61は送信側ルーチ
ンの一部であり、送信側ルーチンの処理において矢印IR
Iで示す受信割り込みが発生した場合、ステップ62〜64
の受信割り込みルーチンの処理を行なう。まず、受信デ
ータを読み込み(ステップ62)、受信データが最後の送
信データと一致しているか否かを判断し(ステップ6
3)、一致している場合には送信完了と判定され、送信
用ドライバをディスイネーブルにする(ステップ64)。
一致していない場合には矢印IR2で示すように送信側ル
ーチンに復帰リターンする。
るが、割り込み処理が行なわれる点が異なる。すなわ
ち、ステップ51と同一内容のステップ61は送信側ルーチ
ンの一部であり、送信側ルーチンの処理において矢印IR
Iで示す受信割り込みが発生した場合、ステップ62〜64
の受信割り込みルーチンの処理を行なう。まず、受信デ
ータを読み込み(ステップ62)、受信データが最後の送
信データと一致しているか否かを判断し(ステップ6
3)、一致している場合には送信完了と判定され、送信
用ドライバをディスイネーブルにする(ステップ64)。
一致していない場合には矢印IR2で示すように送信側ル
ーチンに復帰リターンする。
〔発明の効果〕 以上説明したように本発明による半2重通信路ドライバ
制御方法は、送信完了後の送信用ドライバをディスイネ
ーブルにするタイミングを折り返し受信から検出するこ
とにより、プログラムでループを組んで時間をカウント
する必要がなく、またハードウェアタイマを持つ必要も
ないので、半2重通信路において送出完了の確認ができ
ない通信コントローラを使用した場合でも、ソフトウェ
ア構成に制約を加えることなく、ハードウェアタイマを
追加を必要とせず、通信路のスループットを落とす時間
ロスもない送出完了の確認方法を得ることができる効果
がある。
制御方法は、送信完了後の送信用ドライバをディスイネ
ーブルにするタイミングを折り返し受信から検出するこ
とにより、プログラムでループを組んで時間をカウント
する必要がなく、またハードウェアタイマを持つ必要も
ないので、半2重通信路において送出完了の確認ができ
ない通信コントローラを使用した場合でも、ソフトウェ
ア構成に制約を加えることなく、ハードウェアタイマを
追加を必要とせず、通信路のスループットを落とす時間
ロスもない送出完了の確認方法を得ることができる効果
がある。
第1図は本発明に係わる半2重通信路ドライバ制御方法
の一実施例を説明するためのフローチャート、第2図は
その第2の実施例を説明するためのフローチャート、第
3図は一般的な半2重通信路の通信システムを示す系統
図、第4図はイネーブルおよびディスイネーブルのタイ
ミングを示すタイムチャートである。 1,2,3……通信機器、4……半2重通信路、11,21,31…
…マイクロプロセッサ、12,22,32……通信コントロー
ラ、13,23,33……送信用ドライバ、14,24,34……受信用
レシーバ。
の一実施例を説明するためのフローチャート、第2図は
その第2の実施例を説明するためのフローチャート、第
3図は一般的な半2重通信路の通信システムを示す系統
図、第4図はイネーブルおよびディスイネーブルのタイ
ミングを示すタイムチャートである。 1,2,3……通信機器、4……半2重通信路、11,21,31…
…マイクロプロセッサ、12,22,32……通信コントロー
ラ、13,23,33……送信用ドライバ、14,24,34……受信用
レシーバ。
Claims (1)
- 【請求項1】半2重通信路上への送出完了を確認できな
い通信コントローラを使用する通信機器における半2重
通信路ドライバ制御方法において、送信完了後の送信用
ドライバをディスイネーブルにするタイミングを折り返
し受信から検出することを特徴とする半2重通信路ドラ
イバ制御方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63116029A JPH0779344B2 (ja) | 1988-05-13 | 1988-05-13 | 半2重通信路ドライバ制御方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63116029A JPH0779344B2 (ja) | 1988-05-13 | 1988-05-13 | 半2重通信路ドライバ制御方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH01286648A JPH01286648A (ja) | 1989-11-17 |
| JPH0779344B2 true JPH0779344B2 (ja) | 1995-08-23 |
Family
ID=14676995
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63116029A Expired - Lifetime JPH0779344B2 (ja) | 1988-05-13 | 1988-05-13 | 半2重通信路ドライバ制御方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0779344B2 (ja) |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5779747A (en) * | 1980-11-06 | 1982-05-19 | Toshiba Corp | Coupling circuit |
| EP0281888B1 (de) * | 1987-03-09 | 1992-10-07 | Siemens Aktiengesellschaft | Schaltungsanordnung für Teilnehmeranschlussschaltungen einer digitalen Zeitmultiplex-Fernmelde-Vermittlungsstelle |
-
1988
- 1988-05-13 JP JP63116029A patent/JPH0779344B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPH01286648A (ja) | 1989-11-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5740174A (en) | Method and apparatus for performing collision detection and arbitration within an expansion bus having multiple transmission repeater units | |
| US7039734B2 (en) | System and method of mastering a serial bus | |
| JP3340738B2 (ja) | 並行パケットバスに関する方法及び装置 | |
| CA1263759A (en) | Arrangement for on-line diagnostic testing of an off- line standby processor in a duplicated processor configuration | |
| US4760571A (en) | Ring network for communication between one chip processors | |
| US6591322B1 (en) | Method and apparatus for connecting single master devices to a multimaster wired-and bus environment | |
| CN113886297B (zh) | 一种基于dma的spi并发通讯se装置及方法 | |
| EP0288650B1 (en) | Protocol and apparatus for a control link between a control unit and several devices | |
| EP0064818A1 (en) | Data collision avoidance method | |
| JPH0779344B2 (ja) | 半2重通信路ドライバ制御方法 | |
| US6775717B1 (en) | Method and apparatus for reducing latency due to set up time between DMA transfers | |
| US20050228915A1 (en) | Pipelined stop, start, address byte, and data byte technique and circuit for I2C logic system | |
| US6880027B1 (en) | System and method of evaluating universal serial bus function | |
| JP2000269988A (ja) | 同報通信データ転送システム | |
| JP2578773B2 (ja) | シリアルデ−タ転送装置 | |
| EP0288191B1 (en) | Method and apparatus for data transfer handshake pipelining | |
| WO1997032308A1 (en) | Method and apparatus for reducing latency time on an interface by overlapping transmitted packets | |
| US20080256273A1 (en) | Serial communication method and serial communication system | |
| JPH047620B2 (ja) | ||
| KR20240125476A (ko) | 데이터 교환을 위한 방법 | |
| JPS61182152A (ja) | ダイレクトメモリアクセス式ブロツク送信装置 | |
| JPS6117425B2 (ja) | ||
| JPH0525214B2 (ja) | ||
| JP2945123B2 (ja) | 通信システム | |
| JPS6027253A (ja) | デ−タ伝送制御方式 |