JP2001117864A - 通信バッファのアクセス方法およびその書き込み制御装置 - Google Patents

通信バッファのアクセス方法およびその書き込み制御装置

Info

Publication number
JP2001117864A
JP2001117864A JP29547899A JP29547899A JP2001117864A JP 2001117864 A JP2001117864 A JP 2001117864A JP 29547899 A JP29547899 A JP 29547899A JP 29547899 A JP29547899 A JP 29547899A JP 2001117864 A JP2001117864 A JP 2001117864A
Authority
JP
Japan
Prior art keywords
data
communication buffer
address
buffer
communication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP29547899A
Other languages
English (en)
Inventor
Kohei Aoyanagi
公平 青柳
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.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric 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 Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Priority to JP29547899A priority Critical patent/JP2001117864A/ja
Publication of JP2001117864A publication Critical patent/JP2001117864A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Communication Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

(57)【要約】 【課題】通信バッファの容量が大きくなり、また再送な
どの場合のスループットが低下するという課題を解決す
る。 【解決手段】送信すべきデータを通信バッファの一方の
端から中央に向かって書き込み、受信データを通信バッ
ファの他方の端から中央に向かって書き込むようにし
た。通信バッファの容量が小さくても、定常的な少量の
データ通信時では送信データが壊されることがないので
再送時などでスループットが低下することがなくなり、
かつ非定常な大量データ通信にも対応することができ
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、通信バッファを
介して外部機器と通信を行う通信システムにおいて、通
信バッファを有効に利用できる通信バッファのアクセス
方法およびその書き込み装置に関するものである。
【0002】
【従来の技術】外部機器と通信を行う通信システムは、
通常送信データを通信バッファに格納してから外部機器
に送信し、また外部機器から送信された受信データを一
旦通信バッファに一時保存してから読み出すようにして
いる。このような通信システムの従来例について説明す
る。なお、通信の手順には種々の方式があるが、ここで
は通信システムをマスタとし外部機器をスレーブとし
て、マスタ側がコマンドを送信するとスレーブ側がそれ
に対してレスポンスを行う、いわゆるマスタ/スレーブ
方式について説明する。
【0003】図3にこのような通信システムの従来例の
1つを示す。図3において、1はCPUであり、システ
ム全体を統制する。2は送受信部であり、CPU1から
の送信データが格納される送信バッファ21、外部機器
から送信された受信データを格納する受信バッファ2
2、送信バッファ21に格納されたデータを通信ライン
に送信するためのバッファ23、通信ラインからデータ
を受信するためのバッファ24が含まれている。3は送
受信部2と外部機器を接続する通信ライン、4はデータ
を送受信する相手になる外部機器である。
【0004】次に、この従来例の動作を説明する。送信
すべきデータ、例えばコマンドはCPU1から送信バッ
ファ21に書きこまれた後バッファ23を介して通信ラ
イン3上に出力される。外部機器4はこの通信ライン3
上のデータを取り込み、これに対するレスポンスを同じ
通信ライン3に出力する。このレスポンスデータはバッ
ファ24を介して一旦受信バッファ22に取り込まれた
後、CPU1によって読み出される。受信パリティエラ
ーが発生したり、再送要求を受信したなどの障害があっ
たときは既に送信したデータを改めて再送信しなければ
ならないが、この送信データは送信バッファ21に保存
されているのでCPU1は改めて送信データを送信バッ
ファ21に書きこむ必要がないので、CPU1の負担が
軽くなるという特徴がある。
【0005】図4に他の従来例を示す。この従来例は送
受信バッファを兼用したものである。なお、図3と同じ
要素には同一符号を付し、説明を省略する。図4におい
て、5は送受信部であり、その内部に送受信バッファ5
1およびバッファ23、24が含まれている。CPU1
は送信すべきデータ、例えばコマンドを送受信バッファ
51に書き込み、このデータはバッファ23および通信
ライン3を介して外部機器4に送信される。外部機器4
から送信されたレスポンスデータは同じ送受信バッファ
51に上書きされる。CPU1はこの送受信バッファ5
1に上書きされたデータを受信データとして受け取る。
この従来例では、図3の従来例に比べてバッファのメモ
リサイズをおおむね半分にすることが出来るという特徴
がある。
【0006】
【発明が解決しようとする課題】しかしながら、このよ
うな通信システムには次のような問題点があった。図3
の従来例は送信バッファと受信バッファを別々に設けて
いるので、これらのバッファに割り当てるメモリのサイ
ズが大きくなるという問題点があった。使用できるメモ
リのサイズは限られているので、これらのバッファのサ
イズを大きくすることは困難である。また、データ転送
のスループットを高くするためには受信が完全に完了す
るまでは送信データが送信バッファに残っている必要が
あるので、バッファのサイズをますます大きくしなけれ
ばならない。更に、バッファに割り当てるメモリサイズ
は大量のデータを送受信する場合でも送受信データが溢
れないだけの大きさを確保しなければならないので、少
量のデータを送受信する場合は無駄が大きいという問題
点もあった。
【0007】また、図4の従来例は送信バッファと受信
バッファを兼用するのでバッファのサイズは図3の従来
例に比べておおむね半分にすることが出来るが、受信時
に送受信バッファ内の送信データが受信データで上書き
されてしまう。そのため、データを再送する場合にはC
PU1が改めて送信データを送受信バッファ51に設定
しなおさなければならないので、通信のスループットが
著しく低下するという問題点があった。従って本発明が
解決しようとする課題は、通信バッファのサイズを小さ
く出来、かつ通信時のスループットが低下することがな
い通信バッファのアクセス方法およびこの通信バッファ
の書き込み制御装置を提供することにある。
【0008】
【課題を解決するための手段】このような課題を解決す
るために本発明は、送信すべきデータと受信したデータ
を同じ通信バッファの両端から中央に向かって書き込む
ようにしたものである。このようにすることによって、
通信バッファのサイズを小さく出来、かつ通信時のスル
ープットが低下することがなくなる。
【0009】
【発明の実施の形態】以下に、図に基づいて発明を詳細
に説明する。図1は本発明に係る通信バッファのアクセ
ス方法の一実施例を説明するための構成図である。この
実施例では、図3と同様にマスタ/スレーブ方式を前提
として説明する。なお、図3と同じ要素には同一符号を
付し、説明を省略する。図1において、6は送受信部で
あり、その内部には通信バッファ61、この通信バッフ
ァ61に最後に送信データを書き込んだアドレスを保存
している送信アドレスポインタ62、および最後に受信
データを書き込んだ通信バッファ61のアドレスを保存
している受信アドレスポインタ63およびバッファ2
3、24が含まれている。送信すべきデータが発生する
と、CPU1は通信バッファ61に送信データを書き込
む。この書き込まれた送信データはバッファ23、通信
ライン3を介して外部機器4に送信される。また、外部
機器4から送信されたレスポンスデータは通信ライン
3、バッファ24を介して通信バッファ61に書き込ま
れる。CPU1は適宜通信バッファ61に書き込まれた
受信データを読み出して処理を行う。なお、本発明と直
接関係がないので図1では省略されているが、パリティ
検出や再送要求受信などの処理は送受信部6で行う。
【0010】次に、この実施例の動作を説明する。最
初、送信アドレスポインタ62のアドレスは通信バッフ
ァ61の(最上位アドレス+1)に設定され、受信アド
レスポインタ63のアドレスは通信バッファ61の(最
下位アドレスー1)に設定される。CPU1が送信すべ
きデータを通信バッファ61に書き込むと、通信バッフ
ァ61の送信アドレスポインタ62が指定するアドレス
が1減少され、そのアドレスに送信すべきデータが書き
込まれる。つまり、図1に示すように、送信すべきデー
タは通信バッファ61の最上位アドレスから下位アドレ
ス方向に向かって順番に格納される。また、データを受
信すると、通信バッファ61の受信アドレスポインタ6
3が指定するアドレスが1増加され、そのアドレスに受
信したデータが書き込まれる。つまり、受信されたデー
タは通信バッファ61の最下位アドレスから上位アドレ
ス方向に向かって順番に格納される。
【0011】このようにすることにより、受信データが
多く送信データが少ない場合は自動的に受信データのバ
ッファ領域が増加し、送信データが多い場合は逆にな
る。従って、受信データによって送信データが壊される
度合いが少なくなり、再送などの場合のスループットが
低下することがない。また、送信データが壊されたかは
送信アドレスポインタ62と受信アドレスポインタ63
のアドレスを参照することによって判断することができ
る。すなわち、送信データが増加すると送信アドレスポ
インタ62の指定するアドレスは減少し、受信データが
増加すると受信アドレスポインタ63の指定するアドレ
スが増加するので、送信アドレスポインタ62の指すア
ドレスが受信アドレスポインタ63の指すアドレスより
大きいと送信データは壊されていないことがわかる。従
って、再送するときは通信バッファ61内の送信データ
を使って再送することができる。送信アドレスポインタ
62の指すアドレスが受信アドレスポインタ63の指す
アドレスより小さいときは、受信データによって送信デ
ータが上書きされているので、このときのみCPU1は
再送用の送信データを通信バッファ61に書き込んで再
送する。そのため、スループットの低下を最小限におさ
えることができる。
【0012】図2に本発明の他の実施例を示す。なお、
図1と同じ要素には同一符号を付し、説明を省略する。
図2において、7は送受信部、72は送信アドレスポイ
ンタ、73は受信アドレスポインタである。この実施例
は、送信すべきデータを通信バッファの下位アドレスか
ら上位アドレスに向かって書き込み、受信したデータを
通信バッファの上位アドレスから下位アドレスに向かっ
て書くようにしたものである。すなわち、最初に送信ア
ドレスポインタ72に通信バッファ61の(最下位アド
レス−1)を設定し、受信アドレスポインタ73に通信
バッファ61の(最上位アドレス+1)を設定する。そ
の後、CPU1が送信すべきデータを通信バッファに書
き込むと、通信バッファ61の送信アドレスポインタ7
2で指定されたアドレスが1増加され、送信すべきデー
タがそのアドレスに書き込まれる。また、外部機器4か
らデータが受信されると、通信バッファ61の受信アド
レスポインタ73で指定されたアドレスが1減少され、
受信したデータがそのアドレスに書き込まれる。つま
り、送信すべきデータは通信バッファ61の最下位アド
レスから上位アドレス方向に向かって順番に書き込ま
れ、受信したデータは通信バッファ61の最上位アドレ
スから下位アドレス方向に順番に書き込まれる。受信ア
ドレスポインタ73の指すアドレスが送信アドレスポイ
ンタ72の指すアドレスより小さいと送信データが壊れ
ているので、この場合のみCPU1は送信データを再設
定すればよい。その他の動作は図1実施例と同様なの
で、説明を省略する。なお、これらの実施例では送信ア
ドレスポインタ、受信アドレスポインタの具体的な構成
については示さなかったが、アドレスの初期設定がで
き、かつアドレスを1(または任意の値)増減できる構
成であれば、任意のものが使用できる。例えば、カウン
タなどを用いることができる。また、これらの実施例で
は送信アドレスポインタ、受信アドレスポインタに通信
バッファに書き込んだアドレスを格納するようにした
が、アドレスそのものでなくても、アドレスに関連する
情報であればよい。
【0013】
【発明の効果】以上説明したことから明らかなように、
本発明によれば、送信データを通信バッファの一方の端
から中央に向かって書き込み、受信データを通信バッフ
ァの他方の端から中央に向かって書き込むようにした。
そのため、定常的に行われる少量データの通信では通信
バッファ内の送信データが壊されることがないので、再
送などでスループットが低下することがなくなるという
効果がある。また、設定情報などの非定常の大量データ
の通信の場合は送信バッファと受信バッファの割合が自
動的に変化し適正化されるので、小さい通信バッファ容
量で大量のデータ通信もサポートできるという効果もあ
る。
【図面の簡単な説明】
【図1】本発明の一実施例を示す構成図である。
【図2】本発明の他の実施例を示す構成図である。
【図3】従来の通信バッファのアクセス方法を説明する
ための構成図である。
【図4】従来の通信バッファのアクセス方法を説明する
ための構成図である。
【符号の説明】
1 CPU 6 送受信部 61 通信バッファ 62 送信アドレスポインタ 63 受信アドレスポインタ 7 送受信部 72 送信アドレスポインタ 73 受信アドレスポインタ

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】送信すべきデータを通信バッファに書きこ
    んでこの通信バッファを介して外部機器に送信し、外部
    機器から受信した受信データを一旦通信バッファに一時
    保存するようにした通信システムの通信バッファのアク
    セス方法において、送信すべきデータと受信したデータ
    をこの通信バッファの両端から中央に向かって順番に書
    き込むようにしたことを特徴とする通信バッファのアク
    セス方法。
  2. 【請求項2】送信すべきデータを通信バッファの最上位
    アドレスから下位アドレス方向に順番に書き込み、受信
    したデータを前記通信バッファの最下位アドレスから上
    位アドレス方向に順番に書き込むようにしたことを特徴
    とする請求項1記載の通信バッファのアクセス方法。
  3. 【請求項3】送信すべきデータを通信バッファの最下位
    アドレスから上位アドレス方向に順番に書き込み、受信
    したデータを前記通信バッファの最上位アドレスから下
    位アドレス方向に順番に書き込むようにしたことを特徴
    とする請求項1記載の通信バッファのアクセス方法。
  4. 【請求項4】通信バッファと、この通信バッファに送信
    すべきデータを書き込みまたこの通信バッファから受信
    したデータを読み込むCPUと、前記通信バッファに送
    信すべきデータを書き込む位置に関連する情報を格納す
    る送信アドレスポインタと、受信したデータを前記通信
    バッファに書き込む位置に関連する情報を格納する受信
    アドレスポインタとを有し、これらのアドレスポインタ
    を操作して前記送信すべきデータと前記受信したデータ
    を前記通信バッファの互いに異なる端から中央に向かっ
    て書き込むようにしたことを特徴とする通信バッファの
    書き込み装置。
JP29547899A 1999-10-18 1999-10-18 通信バッファのアクセス方法およびその書き込み制御装置 Pending JP2001117864A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP29547899A JP2001117864A (ja) 1999-10-18 1999-10-18 通信バッファのアクセス方法およびその書き込み制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP29547899A JP2001117864A (ja) 1999-10-18 1999-10-18 通信バッファのアクセス方法およびその書き込み制御装置

Publications (1)

Publication Number Publication Date
JP2001117864A true JP2001117864A (ja) 2001-04-27

Family

ID=17821133

Family Applications (1)

Application Number Title Priority Date Filing Date
JP29547899A Pending JP2001117864A (ja) 1999-10-18 1999-10-18 通信バッファのアクセス方法およびその書き込み制御装置

Country Status (1)

Country Link
JP (1) JP2001117864A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006270469A (ja) * 2005-03-24 2006-10-05 Fujitsu Ltd 通信データ制御装置
JP2008085467A (ja) * 2006-09-26 2008-04-10 Mitsubishi Electric Corp 遠隔監視制御装置、及びそれを備えた空気調和システム、照明システム、ホームセキュリティシステム、家庭用電化機器
JP2009010835A (ja) * 2007-06-29 2009-01-15 Mitsubishi Electric Corp 通信制御装置
JP2010252388A (ja) * 2010-06-29 2010-11-04 Mitsubishi Electric Corp 遠隔監視制御装置、及びそれを備えた空気調和システム、照明システム、ホームセキュリティシステム、家庭用電化機器

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006270469A (ja) * 2005-03-24 2006-10-05 Fujitsu Ltd 通信データ制御装置
JP4606216B2 (ja) * 2005-03-24 2011-01-05 富士通セミコンダクター株式会社 通信データ制御装置
JP2008085467A (ja) * 2006-09-26 2008-04-10 Mitsubishi Electric Corp 遠隔監視制御装置、及びそれを備えた空気調和システム、照明システム、ホームセキュリティシステム、家庭用電化機器
JP4628334B2 (ja) * 2006-09-26 2011-02-09 三菱電機株式会社 遠隔監視制御装置、及びそれを備えた空気調和システム、照明システム、ホームセキュリティシステム、家庭用電化機器
JP2009010835A (ja) * 2007-06-29 2009-01-15 Mitsubishi Electric Corp 通信制御装置
JP2010252388A (ja) * 2010-06-29 2010-11-04 Mitsubishi Electric Corp 遠隔監視制御装置、及びそれを備えた空気調和システム、照明システム、ホームセキュリティシステム、家庭用電化機器

Similar Documents

Publication Publication Date Title
US6115803A (en) Parallel computer which verifies direct data transmission between local memories with a send complete flag
US6687763B2 (en) ATAPI command receiving method
US20030167368A1 (en) Transmission control circuit, reception control circuit, communications control circuit, and communications control unit
JP2001117864A (ja) 通信バッファのアクセス方法およびその書き込み制御装置
US7921238B2 (en) USB host system and method for transferring transfer data
JPS61165170A (ja) バス制御方式
JP2715815B2 (ja) デ−タ書き込み方法
JP2522412B2 (ja) プログラマブルコントロ―ラと入出力装置の間の通信方法
JP2002008382A (ja) メモリの書き込み装置
JPH06103222A (ja) バス転送方式
JPS61165160A (ja) バス制御方式
JP2892429B2 (ja) 入出力制御装置
JP2731878B2 (ja) 通信装置
JPH0471224B2 (ja)
JPH05165733A (ja) 非運用系メモリ更新方式
JP2671743B2 (ja) マイクロコンピュータ
JP2000010758A (ja) Fifoコントローラ
JPH05298133A (ja) データ転送装置
JP3056169B2 (ja) データ送受信方式とその方法
JP3219422B2 (ja) キャッシュメモリ制御方式
JP2751879B2 (ja) プロセッサ間通信方式
JPH01158554A (ja) Dma装置を備えたデータ処理システム
JPS6388644A (ja) 中央処理装置
JPS58169398A (ja) メモリ・システム
JPH03138744A (ja) データ伝送方法及び半導体集積回路