JPH0736807A - 通信制御方法 - Google Patents
通信制御方法Info
- Publication number
- JPH0736807A JPH0736807A JP5202616A JP20261693A JPH0736807A JP H0736807 A JPH0736807 A JP H0736807A JP 5202616 A JP5202616 A JP 5202616A JP 20261693 A JP20261693 A JP 20261693A JP H0736807 A JPH0736807 A JP H0736807A
- Authority
- JP
- Japan
- Prior art keywords
- data
- transfer
- dma
- information
- 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
Links
- 238000004891 communication Methods 0.000 title claims abstract description 146
- 238000000034 method Methods 0.000 title claims description 39
- 230000010365 information processing Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 230000004044 response Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 102100036409 Activated CDC42 kinase 1 Human genes 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 101710140250 Activated CDC42 kinase 1 Proteins 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
Landscapes
- Computer And Data Communications (AREA)
Abstract
(57)【要約】
【構成】 通信データの先頭には、通信データの情報量
を示す長さ情報が付加されている。このような通信デー
タを受信した場合は、先ず、割込みによるデータ転送を
行い、プロセッサ10が、長さ情報から受信される通信
データの情報量を判定する。その後はDMA制御回路7
1の指示に基づき、通信制御回路72が受信データを次
格納部にDMA転送する。 【効果】 データ転送時のプロセッサの負担が軽減さ
れ、その結果、通信制御部を多重化することも容易とな
る。
を示す長さ情報が付加されている。このような通信デー
タを受信した場合は、先ず、割込みによるデータ転送を
行い、プロセッサ10が、長さ情報から受信される通信
データの情報量を判定する。その後はDMA制御回路7
1の指示に基づき、通信制御回路72が受信データを次
格納部にDMA転送する。 【効果】 データ転送時のプロセッサの負担が軽減さ
れ、その結果、通信制御部を多重化することも容易とな
る。
Description
【0001】
【産業上の利用分野】本発明は受信した通信データをメ
モリ等の次格納部に転送する通信制御方法に関する。
モリ等の次格納部に転送する通信制御方法に関する。
【0002】
【従来の技術】通信制御における送信・受信のデータ転
送は、一般に、プログラム割込みにより実行する方法
と、DMA(ダイレクトメモリアクセス)制御を利用し
て実行する方法の2通りの方法がある。先ず、プログラ
ム割込みによるデータ転送では、通信プログラムを実行
するプロセッサが、データの送受信を行う通信制御部を
直接制御する。例えば、データを外部装置より受信した
場合、その受信を行う通信制御部からプロセッサに対し
て割込み信号を送出し、プロセッサは、この割込み信号
によって、受信データを通信制御部から次のデータ格納
部に対してデータ転送するよう制御を行う。即ち、プロ
グラム割込みによるデータ転送は、プロセッサが直接デ
ータ転送を行う方法である。
送は、一般に、プログラム割込みにより実行する方法
と、DMA(ダイレクトメモリアクセス)制御を利用し
て実行する方法の2通りの方法がある。先ず、プログラ
ム割込みによるデータ転送では、通信プログラムを実行
するプロセッサが、データの送受信を行う通信制御部を
直接制御する。例えば、データを外部装置より受信した
場合、その受信を行う通信制御部からプロセッサに対し
て割込み信号を送出し、プロセッサは、この割込み信号
によって、受信データを通信制御部から次のデータ格納
部に対してデータ転送するよう制御を行う。即ち、プロ
グラム割込みによるデータ転送は、プロセッサが直接デ
ータ転送を行う方法である。
【0003】一方、DMA制御を利用してデータ転送を
行う方法は、DMA制御回路がデータ転送を行う方法で
あり、次にこれを説明する。図2は、このような通信制
御方法を説明するための通信制御部を主体とした情報処
理システムのブロック図である。図のシステムは、CP
U(プロセッサ)10、通信制御部20、主記憶装置3
0、バス40、外部装置50、通信回線60の構成を示
している。
行う方法は、DMA制御回路がデータ転送を行う方法で
あり、次にこれを説明する。図2は、このような通信制
御方法を説明するための通信制御部を主体とした情報処
理システムのブロック図である。図のシステムは、CP
U(プロセッサ)10、通信制御部20、主記憶装置3
0、バス40、外部装置50、通信回線60の構成を示
している。
【0004】プロセッサ10は、通信制御等、各種の制
御を行う中央処理装置である。通信制御部20は、プロ
セッサ10からの指示により、外部装置40と主記憶装
置30等との間の通信データの送受信制御を行う装置で
あり、DMA制御回路21と、通信制御回路22とで構
成されている。DMA制御回路21は、DMA転送制御
を行う機能を有し、通信制御回路22は、外部装置50
からの通信データをバッファに受信し、DMA転送を行
う機能を有している。
御を行う中央処理装置である。通信制御部20は、プロ
セッサ10からの指示により、外部装置40と主記憶装
置30等との間の通信データの送受信制御を行う装置で
あり、DMA制御回路21と、通信制御回路22とで構
成されている。DMA制御回路21は、DMA転送制御
を行う機能を有し、通信制御回路22は、外部装置50
からの通信データをバッファに受信し、DMA転送を行
う機能を有している。
【0005】主記憶装置30は、プロセッサ10の実行
するプログラム等を格納すると共に、通信制御回路22
のバッファに一時格納された通信データを、バス40を
介して受け取り、これを格納する通信データの次格納部
を構成している。また、バス40は、プロセッサ10と
通信制御部20および主記憶装置30を接続し、これら
の間でデータ転送等を行うためのシステムバスである。
外部装置50は、パーソナルコンピュータやモデム等か
らなり、通信データを通信回線60を介して通信制御回
路22に送信したり、通信制御回路22から通信データ
を受信したりする機能を有している。また、通信回線6
0は、外部装置50と通信制御部20を接続するデータ
転送路であり、シリアルデータを転送するよう構成され
ている。
するプログラム等を格納すると共に、通信制御回路22
のバッファに一時格納された通信データを、バス40を
介して受け取り、これを格納する通信データの次格納部
を構成している。また、バス40は、プロセッサ10と
通信制御部20および主記憶装置30を接続し、これら
の間でデータ転送等を行うためのシステムバスである。
外部装置50は、パーソナルコンピュータやモデム等か
らなり、通信データを通信回線60を介して通信制御回
路22に送信したり、通信制御回路22から通信データ
を受信したりする機能を有している。また、通信回線6
0は、外部装置50と通信制御部20を接続するデータ
転送路であり、シリアルデータを転送するよう構成され
ている。
【0006】次に、このように構成された情報処理シス
テムにおける通信制御動作を説明する。通信プログラム
を実行するプロセッサ10が、通信制御部20の通信制
御回路22をデータ転送可能な状態に設定し、この状態
でデータの転送要求が発生すると、通信制御回路22
は、データ転送要求信号REQ−2をDMA制御回路2
1に送出する。
テムにおける通信制御動作を説明する。通信プログラム
を実行するプロセッサ10が、通信制御部20の通信制
御回路22をデータ転送可能な状態に設定し、この状態
でデータの転送要求が発生すると、通信制御回路22
は、データ転送要求信号REQ−2をDMA制御回路2
1に送出する。
【0007】DMA制御回路21は、このデータ転送要
求信号REQ−2を受けて、プロセッサ10に対し、デ
ータ転送要求信号REQ−1を送出する。プロセッサ1
0は、DMA転送が可能な場合は、応答信号ACK−1
を返し、DMA制御回路21は、この応答信号ACK−
1により、通信制御回路22に対し、応答信号ACK−
2を返す。このようなデータ転送のハンドシェークによ
り、通信制御回路22は、データ送信であれば、データ
転送元からのパラレルデータをバス40を介して受け取
り、これをシリアルデータとして外部装置50に送出
し、受信であれば、外部装置50からのデータをバス4
0を介してデータ転送先に送出する。
求信号REQ−2を受けて、プロセッサ10に対し、デ
ータ転送要求信号REQ−1を送出する。プロセッサ1
0は、DMA転送が可能な場合は、応答信号ACK−1
を返し、DMA制御回路21は、この応答信号ACK−
1により、通信制御回路22に対し、応答信号ACK−
2を返す。このようなデータ転送のハンドシェークによ
り、通信制御回路22は、データ送信であれば、データ
転送元からのパラレルデータをバス40を介して受け取
り、これをシリアルデータとして外部装置50に送出
し、受信であれば、外部装置50からのデータをバス4
0を介してデータ転送先に送出する。
【0008】
【発明が解決しようとする課題】ところで、今日では、
複数の外部装置50との通信制御、即ち通信制御の多重
化を行うことが行われている。このような場合、通信制
御部20がその多重化された数だけ備えられ、各自の通
信制御部20が自分の受け持つ通信制御を行っている。
しかしながら、このように通信制御部20が複数備えら
れていた場合に、上記のプログラム転送を行うことを考
えた場合、プロセッサ10への負担が大きく、通信処理
のオーバヘッドが生じ、その結果、通信制御以外の入出
力処理等への妨げとなることから、装置全体の性能低下
となってしまっていた。
複数の外部装置50との通信制御、即ち通信制御の多重
化を行うことが行われている。このような場合、通信制
御部20がその多重化された数だけ備えられ、各自の通
信制御部20が自分の受け持つ通信制御を行っている。
しかしながら、このように通信制御部20が複数備えら
れていた場合に、上記のプログラム転送を行うことを考
えた場合、プロセッサ10への負担が大きく、通信処理
のオーバヘッドが生じ、その結果、通信制御以外の入出
力処理等への妨げとなることから、装置全体の性能低下
となってしまっていた。
【0009】一方、DMA転送による方法では、受信動
作を実行している間は、相手先からのデータ量がどの程
度の大きさかを判断する手段がなく、従って、DMA転
送も無駄な余裕時間を必要とし、その結果、この方法で
も通信制御部の多重化は困難であった。
作を実行している間は、相手先からのデータ量がどの程
度の大きさかを判断する手段がなく、従って、DMA転
送も無駄な余裕時間を必要とし、その結果、この方法で
も通信制御部の多重化は困難であった。
【0010】即ち、通常、外部装置50からのデータは
調歩同期方式で受信を行っており、この場合は、一般の
通信プロトコルでは転送の終結が不明である。そのた
め、従来の通信制御方法では、受信データを確実に受け
取れるよう、そのシステム毎に予めDMA転送時間を設
定し、この設定時間はDMA転送を行うよう構成してい
た。従って、通常はこの設定時間と実際のデータ転送時
間には本来は無断な余裕時間が存在する。そして、この
ようなDMA転送を行っている時間はバス40が占有さ
れるため、通信制御部20を多重化した場合、一つの通
信制御部20がDMA転送を行っている間は他の通信制
御部20や通信制御以外のアクセス元は処理を行うこと
ができない。その結果、システムとしての性能低下を招
き、上記のように、通信制御部の多重化を行うことは困
難であった。
調歩同期方式で受信を行っており、この場合は、一般の
通信プロトコルでは転送の終結が不明である。そのた
め、従来の通信制御方法では、受信データを確実に受け
取れるよう、そのシステム毎に予めDMA転送時間を設
定し、この設定時間はDMA転送を行うよう構成してい
た。従って、通常はこの設定時間と実際のデータ転送時
間には本来は無断な余裕時間が存在する。そして、この
ようなDMA転送を行っている時間はバス40が占有さ
れるため、通信制御部20を多重化した場合、一つの通
信制御部20がDMA転送を行っている間は他の通信制
御部20や通信制御以外のアクセス元は処理を行うこと
ができない。その結果、システムとしての性能低下を招
き、上記のように、通信制御部の多重化を行うことは困
難であった。
【0011】本発明は、上記従来の問題点を解決するた
めになされたもので、通信制御部を多重化した場合のシ
ステムの性能低下を防止することのできる通信制御方法
を提供することを目的とする。
めになされたもので、通信制御部を多重化した場合のシ
ステムの性能低下を防止することのできる通信制御方法
を提供することを目的とする。
【0012】
【課題を解決するための手段】第1発明の通信制御方法
は、通信データの先頭に、当該通信データの情報量を示
す長さ情報を付加し、前記通信データを受信した場合、
先ず、前記長さ情報をプロセッサが読込んで、当該通信
データの情報量を判定し、その後は、前記判定した情報
量に基づき、前記通信データを、次格納部にダイレクト
メモリアクセス転送することを特徴とするものである。
は、通信データの先頭に、当該通信データの情報量を示
す長さ情報を付加し、前記通信データを受信した場合、
先ず、前記長さ情報をプロセッサが読込んで、当該通信
データの情報量を判定し、その後は、前記判定した情報
量に基づき、前記通信データを、次格納部にダイレクト
メモリアクセス転送することを特徴とするものである。
【0013】第2発明の通信制御方法は、通信データの
先頭に、当該通信データの情報量を示す長さ情報を付加
し、前記通信データを受信した場合、前記長さ情報デー
タを含む当該通信データの全てを前記受信部より次格納
部にダイレクトメモリアクセス転送すると共に、前記長
さ情報データを前記次格納部に格納した時点でプロセッ
サに対して割込みを発生する割込み発生回路を設け、前
記割込み発生回路から割込みが発生した場合、前記プロ
セッサは、次格納部より前記長さ情報データを読込むと
共に、当該通信データの情報量から前記割込み発生時よ
り前記通信データのダイレクトメモリアクセス転送終了
時までの転送時間を算出し、前記転送時間に基づき、前
記通信データのダイレクトメモリアクセス転送終了を判
定することを特徴とするものである。
先頭に、当該通信データの情報量を示す長さ情報を付加
し、前記通信データを受信した場合、前記長さ情報デー
タを含む当該通信データの全てを前記受信部より次格納
部にダイレクトメモリアクセス転送すると共に、前記長
さ情報データを前記次格納部に格納した時点でプロセッ
サに対して割込みを発生する割込み発生回路を設け、前
記割込み発生回路から割込みが発生した場合、前記プロ
セッサは、次格納部より前記長さ情報データを読込むと
共に、当該通信データの情報量から前記割込み発生時よ
り前記通信データのダイレクトメモリアクセス転送終了
時までの転送時間を算出し、前記転送時間に基づき、前
記通信データのダイレクトメモリアクセス転送終了を判
定することを特徴とするものである。
【0014】第3発明の通信制御方法は、第2発明にお
いて、長さ情報から算出した転送時間が経過した場合、
プロセッサは、当該長さ情報から読取った転送データの
情報量と、実際に転送した情報量とを照合し、前記長さ
情報から読取った転送データの情報量より実際に転送し
た情報量が不足する場合は、その不足分に対応した転送
時間を算出し、再度、この転送時間で不足分の転送デー
タをダイレクトメモリアクセス転送することを特徴とす
るものである。
いて、長さ情報から算出した転送時間が経過した場合、
プロセッサは、当該長さ情報から読取った転送データの
情報量と、実際に転送した情報量とを照合し、前記長さ
情報から読取った転送データの情報量より実際に転送し
た情報量が不足する場合は、その不足分に対応した転送
時間を算出し、再度、この転送時間で不足分の転送デー
タをダイレクトメモリアクセス転送することを特徴とす
るものである。
【0015】
【作用】第1発明の通信制御方法においては、通信デー
タを外部装置より受信した場合、その受信データは通信
制御回路のバッファに一時格納される。そして、受信デ
ータの、例えば先頭の1バイト目で割込みを発生させ、
これによりプロセッサは割込みによるデータ転送を行
い、受信される通信データの情報量を判定し、その値を
DMA制御回路のカウンタにセットする。その後は、通
信制御回路が受信された通信データをDMA転送し、カ
ウンタが所定の値となった時点で転送終了と判断する。
タを外部装置より受信した場合、その受信データは通信
制御回路のバッファに一時格納される。そして、受信デ
ータの、例えば先頭の1バイト目で割込みを発生させ、
これによりプロセッサは割込みによるデータ転送を行
い、受信される通信データの情報量を判定し、その値を
DMA制御回路のカウンタにセットする。その後は、通
信制御回路が受信された通信データをDMA転送し、カ
ウンタが所定の値となった時点で転送終了と判断する。
【0016】また、第2発明の通信制御方法において
は、通信データを外部装置より受信した場合は、上記第
1発明と同様に、その受信データは通信制御回路のバッ
ファに一時格納される。そして、受信データは最初から
DMA転送されて主記憶装置等の次格納部に格納され
る。また、長さ情報が転送されて時点で割込み発生回路
から割込みが発生する。これにより、プロセッサは次格
納部をアクセスし、その長さ情報を読込むと共にソフト
タイマを起動する。そして、長さ情報に基づき転送時間
を算出し、この転送時間をソフトタイマで計測する。所
定の転送時間が経過すると、プロセッサは受信した通信
データのDMA転送が終了したと判断する。
は、通信データを外部装置より受信した場合は、上記第
1発明と同様に、その受信データは通信制御回路のバッ
ファに一時格納される。そして、受信データは最初から
DMA転送されて主記憶装置等の次格納部に格納され
る。また、長さ情報が転送されて時点で割込み発生回路
から割込みが発生する。これにより、プロセッサは次格
納部をアクセスし、その長さ情報を読込むと共にソフト
タイマを起動する。そして、長さ情報に基づき転送時間
を算出し、この転送時間をソフトタイマで計測する。所
定の転送時間が経過すると、プロセッサは受信した通信
データのDMA転送が終了したと判断する。
【0017】第3発明の通信制御方法においては、上記
第2発明でソフトタイマによる所定の転送時間が経過し
た場合、プロセッサは長さ情報から判定した情報量と、
実際に転送した情報量とを照合する。そして、この照合
で、実際に転送した情報量が不足した場合は、その不足
分に対応する転送時間を算出し、この転送時間に基づ
き、再度不足分の通信データのDMA転送を行う。
第2発明でソフトタイマによる所定の転送時間が経過し
た場合、プロセッサは長さ情報から判定した情報量と、
実際に転送した情報量とを照合する。そして、この照合
で、実際に転送した情報量が不足した場合は、その不足
分に対応する転送時間を算出し、この転送時間に基づ
き、再度不足分の通信データのDMA転送を行う。
【0018】
【実施例】以下、本発明の実施例を図面を用いて詳細に
説明する。図1は本発明の通信制御方法を説明するため
のシーケンスチャートであるが、この説明に先立ち、本
発明の通信制御方法を適用する情報処理システムの説明
を行う。
説明する。図1は本発明の通信制御方法を説明するため
のシーケンスチャートであるが、この説明に先立ち、本
発明の通信制御方法を適用する情報処理システムの説明
を行う。
【0019】図3は、その情報処理システムのブロック
図である。図のシステムは、CPU(プロセッサ)1
0、主記憶装置30、バス40、外部装置50、通信回
線60、通信制御部70の構成を示しており、プロセッ
サ10〜通信回線60の構成は従来と同様であるため、
ここでの説明は省略する。通信制御部70は、従来と同
様に、DMA制御回路71と、通信制御回路72とで構
成されている。また、DMA制御回路71には、DMA
転送量をカウントするためのカウンタ71aが設けら
れ、通信制御回路72には、外部装置50からのデータ
を受信するためのバッファ72aと、後述する受信デー
タにおける長さ情報の受信時に割込みを発生させる割込
み発生部72bを備えている。
図である。図のシステムは、CPU(プロセッサ)1
0、主記憶装置30、バス40、外部装置50、通信回
線60、通信制御部70の構成を示しており、プロセッ
サ10〜通信回線60の構成は従来と同様であるため、
ここでの説明は省略する。通信制御部70は、従来と同
様に、DMA制御回路71と、通信制御回路72とで構
成されている。また、DMA制御回路71には、DMA
転送量をカウントするためのカウンタ71aが設けら
れ、通信制御回路72には、外部装置50からのデータ
を受信するためのバッファ72aと、後述する受信デー
タにおける長さ情報の受信時に割込みを発生させる割込
み発生部72bを備えている。
【0020】次に、本実施例の通信制御方法の前提とな
る受信データのフォーマットを説明する。図4に、その
受信フォーマットを示す。即ち、本実施例では、外部装
置50から受信するデータには、予めその先頭の2バイ
トは、受信データの情報量を示す長さ情報を示すプロト
コルとなっている。尚、この長さ情報は、実際には、全
受信データから長さ情報の2バイトを引いた値のバイト
数が示されている。本実施例では、受信データはこのよ
うなプロトコルとなっており、このようなデータを受信
した場合の情報処理装置の動作を図1を参照して次に説
明する。
る受信データのフォーマットを説明する。図4に、その
受信フォーマットを示す。即ち、本実施例では、外部装
置50から受信するデータには、予めその先頭の2バイ
トは、受信データの情報量を示す長さ情報を示すプロト
コルとなっている。尚、この長さ情報は、実際には、全
受信データから長さ情報の2バイトを引いた値のバイト
数が示されている。本実施例では、受信データはこのよ
うなプロトコルとなっており、このようなデータを受信
した場合の情報処理装置の動作を図1を参照して次に説
明する。
【0021】先ず、プロセッサ10により、DMA制御
回路71を設定する。この設定は、システムの初期設定
動作であり、DMA転送モードか割込みによる転送モー
ドかを設定するといった処理を指している。ここでは、
DMA制御回路71に対してDMAモードを設定する。
但し、ここでは、まだDMA制御回路71から出力され
るリクエスト信号をマスクするよう設定し、プロセッサ
10へのDMAリクエストを禁止しておく。尚、この理
由は、ノイズ等によってDMA制御回路71が誤動作
し、その結果、DMAリクエストが開始されないように
するためである。
回路71を設定する。この設定は、システムの初期設定
動作であり、DMA転送モードか割込みによる転送モー
ドかを設定するといった処理を指している。ここでは、
DMA制御回路71に対してDMAモードを設定する。
但し、ここでは、まだDMA制御回路71から出力され
るリクエスト信号をマスクするよう設定し、プロセッサ
10へのDMAリクエストを禁止しておく。尚、この理
由は、ノイズ等によってDMA制御回路71が誤動作
し、その結果、DMAリクエストが開始されないように
するためである。
【0022】次に、プロセッサ10は通信制御回路72
の設定を行う。この設定もシステムとしての初期設定で
あり、ここでもモード設定はDMAモードに設定する。
また、プロセッサ10は、通信制御回路72を受信可能
とし(図1中、RX Enable)、更に、バッファ
72aに受信データが格納された場合、割込み発生部7
2bから最初の2バイト分は割込みを発生させ、3バイ
ト目以降は、DMA制御回路71に対してリクエスト信
号を発生させるよう設定する
の設定を行う。この設定もシステムとしての初期設定で
あり、ここでもモード設定はDMAモードに設定する。
また、プロセッサ10は、通信制御回路72を受信可能
とし(図1中、RX Enable)、更に、バッファ
72aに受信データが格納された場合、割込み発生部7
2bから最初の2バイト分は割込みを発生させ、3バイ
ト目以降は、DMA制御回路71に対してリクエスト信
号を発生させるよう設定する
【0023】このような設定により、通信制御回路72
は、受信データを受けた場合、最初の1バイト受信で割
込み発生部72bからプロセッサ10に対して割込み信
号が発生し(RX INT)、プロセッサ10は、この
割込みに基づき、バッファ72aに格納されている長さ
情報の読込みを行う(RX READ)。そして、次の
2バイト目でも、割込み発生部72bは割込みを発生し
(RX INT)、これによりプロセッサ10は、上記
の場合と同様に、その受信データの読込みを行う(RX
READ)。尚、ここで、2バイトの長さ情報を1バ
イトずつ処理するのは、プロセッサ10の処理が1バイ
トずつ行われるからである。
は、受信データを受けた場合、最初の1バイト受信で割
込み発生部72bからプロセッサ10に対して割込み信
号が発生し(RX INT)、プロセッサ10は、この
割込みに基づき、バッファ72aに格納されている長さ
情報の読込みを行う(RX READ)。そして、次の
2バイト目でも、割込み発生部72bは割込みを発生し
(RX INT)、これによりプロセッサ10は、上記
の場合と同様に、その受信データの読込みを行う(RX
READ)。尚、ここで、2バイトの長さ情報を1バ
イトずつ処理するのは、プロセッサ10の処理が1バイ
トずつ行われるからである。
【0024】そして、プロセッサ10は、読み込んだ2
バイトの長さ情報から、それ以降のデータ量が判明する
ため、その転送バイト数をDMA制御回路71のカウン
タ71aにセットする。その後、プロセッサ10は、D
MA制御回路71のDMAリクエスト禁止を解除し(D
MA Enable)、DMA制御回路71は、通信制
御回路72からのリクエスト信号(REQ RX)に対
して、応答信号(ACK RX)を返し、それ以降のデ
ータを主記憶装置30に対してDMA転送する。
バイトの長さ情報から、それ以降のデータ量が判明する
ため、その転送バイト数をDMA制御回路71のカウン
タ71aにセットする。その後、プロセッサ10は、D
MA制御回路71のDMAリクエスト禁止を解除し(D
MA Enable)、DMA制御回路71は、通信制
御回路72からのリクエスト信号(REQ RX)に対
して、応答信号(ACK RX)を返し、それ以降のデ
ータを主記憶装置30に対してDMA転送する。
【0025】また、DMA制御回路71のカウンタ71
aは、通信制御回路72からのリクエスト信号に基づ
き、セットされたカウント値からカウントダウンを行
い、カウント値が“0”になった時点で、通信制御回路
72に対してカウンタ割込みを発生させる(カウンタ
IPT)。通信制御回路72は、このカウンタ割込みに
より、DMAデータ転送を終了し、割込み発生部72b
は、プロセッサ10に対してDMA転送終了の割込みを
発生させる(INT)。これにより、プロセッサ10
は、通信制御回路72に対して受信禁止状態とする(R
X Disable)と共に、DMA制御回路71に対
しても、DMA動作禁止状態とする(DMA Disa
ble)。
aは、通信制御回路72からのリクエスト信号に基づ
き、セットされたカウント値からカウントダウンを行
い、カウント値が“0”になった時点で、通信制御回路
72に対してカウンタ割込みを発生させる(カウンタ
IPT)。通信制御回路72は、このカウンタ割込みに
より、DMAデータ転送を終了し、割込み発生部72b
は、プロセッサ10に対してDMA転送終了の割込みを
発生させる(INT)。これにより、プロセッサ10
は、通信制御回路72に対して受信禁止状態とする(R
X Disable)と共に、DMA制御回路71に対
しても、DMA動作禁止状態とする(DMA Disa
ble)。
【0026】このように、上記第1実施例では、受信デ
ータの先頭に含まれる長さ情報から受信されるデータの
情報量を判定し、その情報量に基づき、その後のデータ
をDMA転送するようにしたので、受信データのDMA
転送を無駄な余裕時間なしに、最短時間で終了させるこ
とができる。その結果、DMA転送によるバスの占有時
間を短くすることができるため、通信制御部70の多重
化も容易に達成することができる。
ータの先頭に含まれる長さ情報から受信されるデータの
情報量を判定し、その情報量に基づき、その後のデータ
をDMA転送するようにしたので、受信データのDMA
転送を無駄な余裕時間なしに、最短時間で終了させるこ
とができる。その結果、DMA転送によるバスの占有時
間を短くすることができるため、通信制御部70の多重
化も容易に達成することができる。
【0027】次に、第2の実施例を説明する。図5は、
第2実施例の通信制御方法を実施するための情報処理シ
ステムのブロック図である。図のシステムは、CPU
(プロセッサ)10、主記憶装置30、バス40、外部
装置50、通信回線60、通信制御部80の構成を示し
ており、プロセッサ10〜通信回線60の構成は上記第
1の実施例および従来と同様であるため、ここでの説明
は省略する。
第2実施例の通信制御方法を実施するための情報処理シ
ステムのブロック図である。図のシステムは、CPU
(プロセッサ)10、主記憶装置30、バス40、外部
装置50、通信回線60、通信制御部80の構成を示し
ており、プロセッサ10〜通信回線60の構成は上記第
1の実施例および従来と同様であるため、ここでの説明
は省略する。
【0028】通信制御部80は、DMA制御回路81
と、通信制御回路82と、割込み発生回路83とで構成
されている。また、DMA制御回路81には、DMA転
送量をカウントするためのカウンタ81aが設けられ、
通信制御回路82には、外部装置50からのデータを受
信するためのバッファ82aが設けられている。そし
て、割込み発生回路83は、受信データの先頭に位置す
る長さ情報を主記憶装置30に転送した時点で、プロセ
ッサ10に対して割込みを発生させる機能を備えてい
る。尚、この第2の実施例においても、その受信データ
の先頭の2バイトは長さ情報が位置するよう通信プロト
コルに設定されており、これは上記第1の実施例と同様
であるため、ここでの説明は省略する。
と、通信制御回路82と、割込み発生回路83とで構成
されている。また、DMA制御回路81には、DMA転
送量をカウントするためのカウンタ81aが設けられ、
通信制御回路82には、外部装置50からのデータを受
信するためのバッファ82aが設けられている。そし
て、割込み発生回路83は、受信データの先頭に位置す
る長さ情報を主記憶装置30に転送した時点で、プロセ
ッサ10に対して割込みを発生させる機能を備えてい
る。尚、この第2の実施例においても、その受信データ
の先頭の2バイトは長さ情報が位置するよう通信プロト
コルに設定されており、これは上記第1の実施例と同様
であるため、ここでの説明は省略する。
【0029】更に、プロセッサ10は、割込み発生回路
83からの割込みを受け付けた場合に、タイマ動作を行
うためのソフトタイマ10aを備えている。尚、このソ
フトタイマ10aは、プログラム等で構成されているも
のである。
83からの割込みを受け付けた場合に、タイマ動作を行
うためのソフトタイマ10aを備えている。尚、このソ
フトタイマ10aは、プログラム等で構成されているも
のである。
【0030】次に、上記システムにおける通信制御方法
を説明する。図6は、そのシーケンスチャートである。
先ず、本実施例においても、その受信データは図4に示
すように、先頭の2バイトがデータ量を表す長さ情報と
なっている。
を説明する。図6は、そのシーケンスチャートである。
先ず、本実施例においても、その受信データは図4に示
すように、先頭の2バイトがデータ量を表す長さ情報と
なっている。
【0031】このようなデータを受信する場合、プロセ
ッサ10は、DMA制御回路81をDMAモードにセッ
トし、更に、カウンタ81aには、設定可能な最大カウ
ント数をセットする。そして、DMA制御回路81およ
び通信制御回路82をイネーブルとする。その後、通信
制御回路82は、DMA制御回路81に対してリクエス
ト信号を送出し(REQ RX)、DMA制御回路81
から応答信号が返されると(ACK RX)、バッファ
82aから主記憶装置30にDMA転送を開始する。
ッサ10は、DMA制御回路81をDMAモードにセッ
トし、更に、カウンタ81aには、設定可能な最大カウ
ント数をセットする。そして、DMA制御回路81およ
び通信制御回路82をイネーブルとする。その後、通信
制御回路82は、DMA制御回路81に対してリクエス
ト信号を送出し(REQ RX)、DMA制御回路81
から応答信号が返されると(ACK RX)、バッファ
82aから主記憶装置30にDMA転送を開始する。
【0032】そして、受信データの長さ情報である2バ
イトが転送されると、カウンタ81aの値により、DM
A制御回路81は、割込み発生回路83に対して、割込
み信号を発生するよう指示し、割込み発生回路83は、
これに基づきプロセッサ10に対して割込み信号(IN
T)を送出する。尚、この時点でも、受信データのDM
A転送は継続して行われている。プロセッサ10は、こ
の割込み信号に基づき、主記憶装置30をアクセスして
転送されている受信データの長さ情報を読込み、そのデ
ータ内容に基づき、その後転送されるデータ量を判定
し、このデータ量と転送速度に基づいて転送終了までの
時間を算出し、この時間でソフトタイマ10aをセット
し、起動する。
イトが転送されると、カウンタ81aの値により、DM
A制御回路81は、割込み発生回路83に対して、割込
み信号を発生するよう指示し、割込み発生回路83は、
これに基づきプロセッサ10に対して割込み信号(IN
T)を送出する。尚、この時点でも、受信データのDM
A転送は継続して行われている。プロセッサ10は、こ
の割込み信号に基づき、主記憶装置30をアクセスして
転送されている受信データの長さ情報を読込み、そのデ
ータ内容に基づき、その後転送されるデータ量を判定
し、このデータ量と転送速度に基づいて転送終了までの
時間を算出し、この時間でソフトタイマ10aをセット
し、起動する。
【0033】ソフトタイマ10aの設定時間が経過する
と(ステップS1)、プロセッサ10は、DMA転送が
終了したと判定し、DMA制御回路81のカウンタ81
aの値をリードし、転送前に設定した値より、示してい
る値を引き算し、実際に行われた転送バイト数を計算す
る(ステップS2)。そして、その計算結果の値と、最
初の長さ情報の値とを比較し(ステップS3)、一致し
ていた場合のみデータ転送終了とみなし、受信動作を終
了させる。即ち、通信制御回路82の受信動作を禁止す
る(RX Disable)と共に、DMA制御回路8
1に対してDMAモードを解除する。
と(ステップS1)、プロセッサ10は、DMA転送が
終了したと判定し、DMA制御回路81のカウンタ81
aの値をリードし、転送前に設定した値より、示してい
る値を引き算し、実際に行われた転送バイト数を計算す
る(ステップS2)。そして、その計算結果の値と、最
初の長さ情報の値とを比較し(ステップS3)、一致し
ていた場合のみデータ転送終了とみなし、受信動作を終
了させる。即ち、通信制御回路82の受信動作を禁止す
る(RX Disable)と共に、DMA制御回路8
1に対してDMAモードを解除する。
【0034】一方、ステップS3において、長さ情報に
より算出したバイト数とカウンタ81aでのバイト数が
不足していた場合、プロセッサ10は、再度DMA転送
を行う(ステップS4)。即ち、上記の動作を繰り返
す。そして、ステップS2に戻って、再度実際の転送バ
イト数を算出し、データが一致するまで、この動作を繰
り返す。
より算出したバイト数とカウンタ81aでのバイト数が
不足していた場合、プロセッサ10は、再度DMA転送
を行う(ステップS4)。即ち、上記の動作を繰り返
す。そして、ステップS2に戻って、再度実際の転送バ
イト数を算出し、データが一致するまで、この動作を繰
り返す。
【0035】このように、上記第2の実施例では、受信
データを全てDMA転送し、かつ、その転送を行いなが
ら転送時間を算出し、この算出した転送時間に基づき転
送終了を判定するようにしたので、例えば、プロセッサ
10への割込みが発生した場合に、その割込み処理がリ
アルタイムに実行されないシステムでも適用可能であ
る。即ち、割込み処理が若干遅れた場合でも、その間受
信データの転送処理は行われているため、転送終了まで
の時間には影響がないものである。
データを全てDMA転送し、かつ、その転送を行いなが
ら転送時間を算出し、この算出した転送時間に基づき転
送終了を判定するようにしたので、例えば、プロセッサ
10への割込みが発生した場合に、その割込み処理がリ
アルタイムに実行されないシステムでも適用可能であ
る。即ち、割込み処理が若干遅れた場合でも、その間受
信データの転送処理は行われているため、転送終了まで
の時間には影響がないものである。
【0036】尚、上記各実施例では、受信データの先頭
2バイトを長さ情報としたが、この値に限定されるもの
ではなく、受信データのデータ量を表せる値であれば、
そのバイト数には特に限定はないものである。また、上
記第2実施例では転送時間の計測にソフトタイマ10a
を用いたが、このタイマに限定されるものではなく、転
送時間の経過が判定できるものであれば、どんなもので
も適用可能である。更に、上記各実施例では、次格納部
として主記憶装置30の場合を説明したが、この他に
も、外部記憶装置等、種々の転送先であっても同様の効
果を奏する。
2バイトを長さ情報としたが、この値に限定されるもの
ではなく、受信データのデータ量を表せる値であれば、
そのバイト数には特に限定はないものである。また、上
記第2実施例では転送時間の計測にソフトタイマ10a
を用いたが、このタイマに限定されるものではなく、転
送時間の経過が判定できるものであれば、どんなもので
も適用可能である。更に、上記各実施例では、次格納部
として主記憶装置30の場合を説明したが、この他に
も、外部記憶装置等、種々の転送先であっても同様の効
果を奏する。
【0037】
【発明の効果】以上説明したように、第1発明の通信制
御方法によれば、通信データの先頭に、その通信データ
の情報量を示す長さ情報を付加し、当該通信データを受
信した場合は、長さ情報を割込みによるデータ転送を行
って、転送する情報量を判定し、それ以降は判定した情
報量に基づきDMA転送を行うようにしたので、受信デ
ータの転送を最短時間で行うことができ、従って、プロ
セッサの負担も最小限抑えることができる。その結果、
通信制御部の多重化を容易に実現することができる。
御方法によれば、通信データの先頭に、その通信データ
の情報量を示す長さ情報を付加し、当該通信データを受
信した場合は、長さ情報を割込みによるデータ転送を行
って、転送する情報量を判定し、それ以降は判定した情
報量に基づきDMA転送を行うようにしたので、受信デ
ータの転送を最短時間で行うことができ、従って、プロ
セッサの負担も最小限抑えることができる。その結果、
通信制御部の多重化を容易に実現することができる。
【0038】第2発明の通信制御方法によれば、通信デ
ータの先頭に、通信データの長さ情報を付加し、この通
信データを受信した場合、その全てのデータを次格納部
にDMA転送すると共に、長さ情報を転送した時点で割
込みを行い、プロセッサはその割込みに基づいて次格納
部から長さ情報を読込み、その情報量から転送時間を算
出し、この転送時間に基づきデータ転送終了を判定する
ようにしたので、上記第1発明と同様に、プロセッサの
負担を軽減し、通信制御部の多重化を容易に実現するこ
とができると共に、割込み処理がリアルタイムに行われ
ないシステムであっても適用可能である。
ータの先頭に、通信データの長さ情報を付加し、この通
信データを受信した場合、その全てのデータを次格納部
にDMA転送すると共に、長さ情報を転送した時点で割
込みを行い、プロセッサはその割込みに基づいて次格納
部から長さ情報を読込み、その情報量から転送時間を算
出し、この転送時間に基づきデータ転送終了を判定する
ようにしたので、上記第1発明と同様に、プロセッサの
負担を軽減し、通信制御部の多重化を容易に実現するこ
とができると共に、割込み処理がリアルタイムに行われ
ないシステムであっても適用可能である。
【0039】第3発明の通信制御方法によれば、上記第
2発明において、プロセッサは長さ情報から判定した情
報量と、実際に転送した情報量とを照合し、実際に転送
した情報量が不足した場合は、その不足分に対応する転
送時間を算出し、再度、不足分のDMA転送を行うよう
にしたので、上記第2発明の効果に加えて、何らかの原
因により算出した転送時間内にデータ転送が終了しなか
った場合等でも確実にデータ転送を行うことができる。
2発明において、プロセッサは長さ情報から判定した情
報量と、実際に転送した情報量とを照合し、実際に転送
した情報量が不足した場合は、その不足分に対応する転
送時間を算出し、再度、不足分のDMA転送を行うよう
にしたので、上記第2発明の効果に加えて、何らかの原
因により算出した転送時間内にデータ転送が終了しなか
った場合等でも確実にデータ転送を行うことができる。
【図1】本発明の通信制御方法における第1実施例のシ
ーケンスチャートである。
ーケンスチャートである。
【図2】従来の通信制御方法を実施するための情報処理
システムの要部ブロック図である。
システムの要部ブロック図である。
【図3】本発明の通信制御方法における第1実施例を実
施するための情報処理システムの要部ブロック図であ
る。
施するための情報処理システムの要部ブロック図であ
る。
【図4】本発明の通信制御方法における通信データの受
信フォーマットを示す説明図である。
信フォーマットを示す説明図である。
【図5】本発明の通信制御方法における第2実施例を実
施するための情報処理システムの要部ブロック図であ
る。
施するための情報処理システムの要部ブロック図であ
る。
【図6】本発明の通信制御方法における第2実施例のシ
ーケンスチャートである。
ーケンスチャートである。
10 プロセッサ(CPU) 10a ソフトタイマ 71、81 DMA制御回路 72、82 通信制御回路 83 割込み発生回路
Claims (3)
- 【請求項1】 通信データの先頭に、当該通信データの
情報量を示す長さ情報を付加し、 前記通信データを受信した場合、先ず、前記長さ情報を
プロセッサが読込んで、当該通信データの情報量を判定
し、 その後は、前記判定した情報量に基づき、前記通信デー
タを、次格納部にダイレクトメモリアクセス転送するこ
とを特徴とする通信制御方法。 - 【請求項2】 通信データの先頭に、当該通信データの
情報量を示す長さ情報を付加し、 前記通信データを受信した場合、前記長さ情報データを
含む当該通信データの全てを前記受信部より次格納部に
ダイレクトメモリアクセス転送すると共に、 前記長さ情報データを前記次格納部に格納した時点でプ
ロセッサに対して割込みを発生する割込み発生回路を設
け、 前記割込み発生回路から割込みが発生した場合、前記プ
ロセッサは、次格納部より前記長さ情報データを読込む
と共に、当該通信データの情報量から前記割込み発生時
より前記通信データのダイレクトメモリアクセス転送終
了時までの転送時間を算出し、 前記転送時間に基づき、前記通信データのダイレクトメ
モリアクセス転送終了を判定することを特徴とする通信
制御方法。 - 【請求項3】 長さ情報から算出した転送時間が経過し
た場合、プロセッサは、当該長さ情報から読取った転送
データの情報量と、実際に転送した情報量とを照合し、 前記長さ情報から読取った転送データの情報量より実際
に転送した情報量が不足する場合は、その不足分に対応
した転送時間を算出し、 再度、この転送時間で不足分の転送データをダイレクト
メモリアクセス転送することを特徴とする請求項2記載
の通信制御方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5202616A JPH0736807A (ja) | 1993-07-23 | 1993-07-23 | 通信制御方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5202616A JPH0736807A (ja) | 1993-07-23 | 1993-07-23 | 通信制御方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0736807A true JPH0736807A (ja) | 1995-02-07 |
Family
ID=16460338
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP5202616A Pending JPH0736807A (ja) | 1993-07-23 | 1993-07-23 | 通信制御方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0736807A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7062579B2 (en) | 1997-02-14 | 2006-06-13 | Canon Kabushiki Kaisha | Data transmission apparatus, system and method, and image processing apparatus |
-
1993
- 1993-07-23 JP JP5202616A patent/JPH0736807A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7062579B2 (en) | 1997-02-14 | 2006-06-13 | Canon Kabushiki Kaisha | Data transmission apparatus, system and method, and image processing apparatus |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6038607A (en) | Method and apparatus in a computer system having plural computers which cause the initiation of functions in each other using information contained in packets transferred between the computers | |
| JP3127523B2 (ja) | 通信制御装置およびデータ送信方法 | |
| KR101001074B1 (ko) | 버스 상에 데이터를 전송하기 위한 방법 | |
| US5142628A (en) | Microcomputer system for communication | |
| JPH0736807A (ja) | 通信制御方法 | |
| JPS6359042A (ja) | 通信インタ−フエイス装置 | |
| JP3512278B2 (ja) | シリアル通信処理装置 | |
| JP2560476B2 (ja) | 通信制御装置 | |
| JP3753622B2 (ja) | パケット送受信装置 | |
| JPH1049344A (ja) | バッファのビジー制御方式 | |
| JP2821053B2 (ja) | ネットワークシステム | |
| EP0829807A2 (en) | Data transmission system for transmitting data between plural microcomputer application instruments | |
| JPH10312360A (ja) | 受信処理方法および受信装置 | |
| JPH11289357A (ja) | 受信データ処理方式 | |
| JP3266789B2 (ja) | 通信制御装置 | |
| JP3146864B2 (ja) | 単方向ループ型伝送回路 | |
| JP2842639B2 (ja) | データ転送方式 | |
| JPH0417492B2 (ja) | ||
| JPS62250746A (ja) | Hdlc送信装置 | |
| JPH0728730A (ja) | 通信制御装置 | |
| JPH1021178A (ja) | データ伝送装置 | |
| JP2000307611A (ja) | 情報処理装置およびバスシステム | |
| JPS6294042A (ja) | 通信制御装置 | |
| JPH0525216B2 (ja) | ||
| JPH09284815A (ja) | 資源割り当て解放方法 |