JP3139737B2 - データ通信システム - Google Patents

データ通信システム

Info

Publication number
JP3139737B2
JP3139737B2 JP08200874A JP20087496A JP3139737B2 JP 3139737 B2 JP3139737 B2 JP 3139737B2 JP 08200874 A JP08200874 A JP 08200874A JP 20087496 A JP20087496 A JP 20087496A JP 3139737 B2 JP3139737 B2 JP 3139737B2
Authority
JP
Japan
Prior art keywords
data
block
code
length
communication system
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
JP08200874A
Other languages
English (en)
Other versions
JPH1051509A (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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP08200874A priority Critical patent/JP3139737B2/ja
Priority to KR1019970036352A priority patent/KR100224048B1/ko
Priority to CN97115090A priority patent/CN1176548A/zh
Priority to GB9716206A priority patent/GB2315964B/en
Priority to GB9820107A priority patent/GB2338382B/en
Publication of JPH1051509A publication Critical patent/JPH1051509A/ja
Application granted granted Critical
Publication of JP3139737B2 publication Critical patent/JP3139737B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0067Rate matching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0083Formatting with frames or packets; Protocol or part of protocol for error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/08Arrangements for detecting or preventing errors in the information received by repeating transmission, e.g. Verdan system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1835Buffer management
    • H04L1/1845Combining techniques, e.g. code combining
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1848Time-out mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/188Time-out mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/324Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Communication Control (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はデータ通信システム
に関し、特に固定長ブロックを使用したシリアル通信方
式において、転送データ量に応じてブロック内を複数の
サブブロックに分割して送信するデータ通信方式に関す
る。
【0002】
【従来の技術】従来、この種のデータ通信システムは、
パーソナルコンピュータや携帯情報端末間において、有
線通信手段及び無線通信手段を利用したデータ転送及び
装置のコントロールなどに使用されている。この種のデ
ータ通信システムは、例えば、1994年10月5日に
朝日新聞社より発行の飯田隆著による「新プロトコルハ
ンドブック」p.200〜p.206に示されているよ
うに様々な方式が考案されている。
【0003】Xmodem方式は、この種のデータ通信方式に
おいてはもっとも基本的な方法であり、送信側は転送デ
ータを固定長のブロックに区切り、全転送データを数回
に分けて送信する方式である。図9にそのブロックの具
体的内容を示す。ブロックの先頭には先頭コード(SO
H)が置かれる。次にそのブロックが何番目のブロック
なのかを示す1バイトのブロック番号(BLK)及びブ
ロック番号をビット反転させたコードが置かれる。その
後ろには実際に転送されるデータが置かれる。そして、
ブロックの最後にはブロック内における誤りの有無を判
定するためのチェックサムコード(SUM)が置かれ
る。
【0004】図10にXmodem方式における具体的なデー
タ送受信の手順を示す。まずデータ受信側が1バイトの
異常受信コード(NAK)を送信し(ステップS10
1)、これを受信したデータ送信側が第1ブロックを送
信する(ステップS102)。これを受信したデータ受
信側はチェックサムコードをチェックする。
【0005】このチェックにより、誤り無しと判断され
た場合には、受信したデータを格納して1バイトの正常
受信コード(ACK)を返答し(ステップS103、ス
テップS107)、誤り有りと判断された場合には、受
信したデー夕を破棄してNAKを返答する(ステップS
105)。
【0006】データ送信側では、ACKを受信した場合
には次のブロックを送信し(ステップS104)、NA
Kを受信した場合には前回と同じブロックを再送する
(ステップS106)。
【0007】以下はこの手順の繰り返しであり、最終ブ
ロック転送後にデータ転送側は1バイトの終了コード
(EOT)を送信し(ステップS108)、これを受信
したデータ受信側がACKを返答して処理は終了する
(ステップS109)。
【0008】Xmodem以外に考案されているYmodem方式や
Zmodem方式などの通信方式においては、より複雑な手順
を使用し、多量データ、多数ファイルなどに対応するた
めの工夫がなされている。
【0009】
【発明が解決しようとする課題】このようなXmodem方式
をはじめとする従来の通信方式においては、いくつかの
問題点がある。その第1の問題点は、Xmodem方式など固
定長ブロックを使用する通信方式においては、送信する
データ長が1ブロックのサイズ未満の場合に無駄なデー
タ送信処理が生じる点である。これは受信側が規定のデ
ータ長を受信することで1ブロック受信終了と判断する
処理を行っているため、送信するデータ長が1ブロック
のサイズ未満でも図11のように残りの部分を補充コー
ド(SUB)で埋めて送信しなければならないためであ
る。
【0010】その第2の問題点としては、固定長ブロッ
クを使用する通信方式においては、ブロック長が長くな
ると再送処理により転送効率の低下を招く点である。こ
れはブロック長が長くなるとそのブロックに誤りが発生
する確率が高くなるため、結果的に再送処理を行う確率
が高くなってしまうためである。
【0011】その第3の問題点は、第1及び第2の問題
点を解決するためにブロックサイズを小さくするにして
も、多量のデータを転送する場合にはデータ転送に時間
がかかることである。これは、ブロックサイズを小さく
することによりブロック送信及び返答回数が増加し、こ
れらの処理に対する時間が増大するためである。
【0012】その第4の問題点は、上記の各第1、第2
及び第3の問題点を解決するために可変長ブロックを使
用すると、処理が複雑となることである。これは、可変
長ブロックを使用した通信方式は、固定長ブロックを使
用した通信方式に対して、送信側と受信側間でブロック
長の取り決めを行う手順が始めに必要となるためであ
る。
【0013】本発明の目的は、従来生じた無駄なデータ
送信処理を有効利用し、信頼性の高いデータ転送を可能
とするデータ通信システムを提供することである。
【0014】
【課題を解決するための手段】本発明によれば、送信さ
れるデータブロックの番号と、送信されるデータ長を示
すデータ長コードと、これ等ブロックの番号及びデータ
長コードに対するチェックコードとを先頭部に含み、前
記先頭部にデータが後続する送信データブロック構成の
固定長データブロックによりシリアルデータの通信を行
なうデータ通信システムであって、送信側において、前
記固定長データブロックのサイズに対して送信データ量
が少ない場合には、前記送信データを、前記ブロックサ
イズを超えない範囲で同一ブロック内に繰り返し配置し
て、前記ブロックを構成し、受信側において、前記ブロ
ック内に繰り返し配置されている同一の送信データの中
から、データの誤りがないデータを受信した場合、前記
ブロック内に繰り返し配置されている他の同一の送信デ
ータについて誤り判定を行わないことを特徴とするデー
タ通信システムが得られる。又、本発明によれば、送信
されるデータブロックの番号と、送信されるデータ長を
示すデータ長コードと、これ等ブロックの番号及びデー
タ長コードに対するチェックコードとを先頭部に含み、
前記先頭部にデータが後続する送信データブロック構成
の固定長データブロックによりシリアルデータの通信を
行なうデータ通信システムであって、送信側において、
前記固定長データブロックのサイズに対して送信データ
量が少ない場合には、前記送信データを、前記ブロック
サイズを超えない範囲で同一ブロック内に繰り返し配置
して、前記ブロックを構成し、受信側において、前記ブ
ロック内に繰り返し配置されている同一の送信データの
中から、データの誤り訂正が可能なデータを受信した場
合、前記ブロック内に繰り返し配置されている他の同一
の送信データについて誤り訂正を行わないことを特徴と
するデータ通信システムが得られる。
【0015】そして、前記ブロック内に繰り返し配置さ
れる送信データの各々に対し、前記送信データに対する
データ誤り判定用コード及び誤り訂正用コードのうち少
なくとも一つのコードを付加することを特徴としてい
る。
【0016】また、受信側において、前記ブロック内に
繰り返し配置されている同一の送信データの中から、デ
ータの誤りがないデータを受信した場合には、受信した
旨の返答コードを前記送信側へ送出することを特徴とし
ている。そして、前記送信側において、前記返答コード
が受信されない場合には、前記データの再送信をなすこ
とを特徴としている。また、受信側において、前記ブロ
ック内に繰り返し配置されている同一の送信データの中
から、データの誤り訂正が可能なデータを受信した場合
には、受信した旨の返答コードを前記送信側へ送出する
ことを特徴としている。そして、前記送信側において、
前記返答コードが受信されない場合には、前記データの
再送信をなすことを特徴としている。
【0017】作用を述べると、データ送信側では、常に
補充コードが最小となるようにブロックを構成し、更に
送信データに対しデータ誤り判定用コードもしくは誤り
訂正用コードが付加され送信される。そして、データ受
信側では、受信したブロッグ内に繰り返し配置された送
信データの中からデータの誤りがないデータもしくはデ
ータの誤り訂正が可能なデータを優先的に選択しデータ
を格納し、そのいずれのデータも正常なデータでない場
合には送信側に対し同ブロックの再送要求を行う。
【0018】
【発明の実施の形態】以下に図面を用いて本発明の実施
例につき説明する。
【0019】図1は本発明の一実施例を実現する装置の
構成図である。ROM(リードオンリメモリ)3はデー
タ通信方式の手順を記述したプログラムを格納してお
り、送信用ソフトウェアの格納領域31と、受信用ソフ
トウェアの格納領域32とを含んでいる。
【0020】RAM(ランダムアクセスメモリ)2はデ
ー夕格納領域21と通信バッファ領域22とに分かれて
いる。データ格納領域21には送信するデータ及び受信
したデータが格納される。通信バッファ領域22は1ブ
ロック分のデータを連続して送信及び受信可能とするた
めの一時データ格納用メモりとして設けられている。
【0021】シリアル・パラレル(S/P)データ変換
器4は、CPU1等で使用されるパラレルデータをシリ
アル通信で使用されるシリアルデータに、またはシリア
ルデータを、パラレルデータに夫々変換するために設け
られている。CPU1はR0M3に記述されたプログラ
ムの手順に従って動作し、R0M3,RAM2及びS/
Pデータ変換器4間のデータ伝送及び制御を行うもので
あり、これ等各構成ブロック相互間は共通システムバス
5により接続されてる。
【0022】図2は本発明の通信方式で使用される送信
データブロックの構成を示す図である。ブロックの先頭
には、先頭であることを示す1バイトの先頭コード(S
OH)が置かれる。次に、そのブロックが何番目のブロ
ックなのかを示す1バイトのブロック番号(BLK)が
置かれる。次に、そのブロックにおいて、実際に送信さ
れるデータ長を表す1バイトのデータ長コード(BL
L)が置かれる。本実施例では1ブロック内で実際に送
信されるデータ長は256バイト以下としている。
【0023】次に、上記SOH,BLK,BLLの3バ
イトに対するチェックサムコード(SUM1)が置かれ
る。その後は実際に送信されるデータが置かれるデータ
領域がNバイト続く。これより1ブロックの総バイト数
はN+4(S0H,BLK,BLL,SUM1)バイト
となる。
【0024】図3にデータ領域Nバイトの構成を示す。
データ領域内においては、まずそのブロックで送信され
るデータ(DATA)がBLLバイト置かれ、次にその
DATAに対するチェックサムコード(SUM2)が1
バイト置かれる。
【0025】ここでDATAlとSUM2とを合わせて
サブブロックと呼ぶ。これよりサブブロックのバイト数
は(BLL+1)バイトとなる。データ領域の中でサブ
ブロック以降に余った部分を補充コード(SUB)が
(N−BLL−1)バイト置かれる。ここでサブブロッ
クのバイト数(BLL+1)=Nとなる場合には、図4
に示すように、補充コードは不要となる。
【0026】図5はBLLが(N−2)/2より小さい
場合のブロック構成例であり、1つのデータ領域内に補
充コードのバイト数が最も少なくなるように複数個のサ
ブブロックを置く。複数のサブブロックのデータには全
て同一のデータ格納する。
【0027】チェックサムコードは、そのチェックサム
コードの対象となるデータ列内のエラーの有無を識別す
るために設けられており、SUM1の値はSOH,BL
K,BLL,SUM1の合計した値の下1バイトが0と
なるように決定し、SUM2の値はDATAの各データ
とSUM2の合計した値の下1バイトが0となるように
値を決定する。
【0028】本発明の一実施例のデータ送信側の動作を
図6のフローチャートに従って説明をする。まず、デー
タ送信側においては、手順を開始すると(ステップS0
1)使用する変数V1を0に、BLKを1に初期化する
(ステップS02)。ここで、V1は前ブロックにおい
て実際に送信したデータがNバイト未満だった場合、つ
まり最終ブロックである場合は1であり、そうでない場
合は0とする。BLKはそのブロックに付加するブロッ
ク番号である。
【0029】続いて、V1が1であるかどうかを判断し
(ステップS03)、もし1であるならばEOTを送信
し(ステップS04)、正常終了として処理を終える
(ステップS05)。
【0030】もし0であるならば、次にブロック構成動
作に入る。まず送信データの残りがN−1以下かどう
か、つまり1ブロックのデータ領域(Nバイト)に入る
かどうかを判断する(ステップS06)。
【0031】送信データの残りがNバイト未満の場合に
は、そのブロックが最終ブロックとなるため、変数V1
を1にセットし(ステップS07)、変数BLLを送信
データの残りバイト数にセットする(ステップS0
8)。次にデータ領域よりBLLバイトをバッファに取
り込み(ステップS09)、SUM1及びSUM2の計
算を行う(ステップS10)。
【0032】また、補充コードが最小となるためにはデ
ータ領域内にいくつのサブブロックが置けるのかをN/
(BLL+1)の商の整数部{INT(N/(BLL+
1)}を計算することで求め(ステップS11)、変数
V2にその計算結果を格納する(ステップS12)。以
上で求めた各値及びデータより、図2,図3,図5に示
すようにブロックを構成する。
【0033】送信データの残りがNバイト以上ある場合
には、まず変数BLLをデータ領域のバイト数N−1に
セットする(ステップS13)。次にデータ領域BLL
バイトをバッフアに取り込み(ステップS14)、SU
MI及びSUM2を計算して(ステップS15)バッフ
ァにて図2,図4に示すようにブロックを構成する(ス
テップS16)。
【0034】ブロック構成を完了すると、次にブロック
送信動作に入る。まずブロック再送回数をカウントする
変数V3を0にセットする(ステップS17)。次に1
ブロックの送信を行い(ステップS18)、V3を1つ
カウントアップさせる(ステップS19)。そして受信
側からの返答コードの受信待ちとなる(ステップS2
0)。
【0035】受信側から返答コードを検出すると、それ
がACKコードであるかどうかを判断する(ステップS
21)。ACKコードであった場合はBLKの値が25
6であるかどうかを判断し(ステップS22)、256
であった場合はBLKを0にセットし(ステップS2
3)、256でない場合はBLKを1つカウントアップ
して(ステップS24)最初に戻る(ステップS0
3)。返答コードがACKコードでない場合はブロック
再送動作(ステップS18)に戻る。
【0036】受信側からの返答コードを検出できない場
合は、その時点でブロック送信後T1時問が経過したか
を判断し(ステップ25)、もし経過していなければ再
度受信側からの返答コード受信動作(ステップS20)
に戻る。経過した場合は、それまでのブロック再送回数
V3がM回に達したかどうかを判断する(ステップS2
6)。達していない場合はブロック再送動作(ステップ
S18)に戻り、M回に達した場合は異常終了として処
理を終える(ステップS27)。
【0037】なおT1は受信側からの返答コード待ちの
タイムアップ時間であり、ブロック送信後T1時間がた
っても返答コードが検出できない場合はブロック再送を
行うこととする。また、Mはブロック再送最大許容回数
であり、M回再送しても返答コードが検出できない場合
は、異常終了として処理を終えることとする。T1及び
Mは送信側、受信側双方において、予め示し合わせた値
を設定しておく。
【0038】次にデータ受信側の動作を図7のフローチ
ャートを参照して説明する。データ受信側においては、
手順を開始すると(ステップS28)、まず使用する変
数V6を0に初期化し(ステップS29)、続いてV5
を0に初期化する(ステップS30)。V5は返答コー
ドの再送回数、V6は前回受信したブロックのブロック
番号を格納しておくために使用される。
【0039】続いて受信バッファをクリアし(ステップ
S31)変数V5を1つカウントアップする(ステップ
S32)。そして送信側から送信されるデータの検出待
ちとなる(ステップS33)。
【0040】データを検出した場合は、その最初の1バ
イトがEOTコードであるかどうかを判断し(ステップ
S34)、EOTコードであればACKコードを送信し
て(ステップS35)正常終了として処理を終える(ス
テップS36)。
【0041】EOTコードでない場合及びデータ検出し
ない場合は、引き続き受信動作を行い、1ブロック(N
+4バイト)受信完了したかどうかを判断する(ステッ
プS37)。
【0042】1ブロックの受信が完了しない場合は、デ
ータ受信開始後、つまり返答コード送信後T1時間経過
したかを判断し(ステップS38)、もし経過していな
ければ、引き続き受信動作(ステップS33)に戻る。
経過していた場合は、これまでの返答コード再送回数V
5がM回に達したかどうかを判断する(ステップS3
9)。達していない場合はNAKを返答してから(ステ
ップS53)再度バッファクリア動作(ステップS3
1)に戻り再受信動作を行い、M回に達した場合は異常
終了として処理を終える(ステップS40)。
【0043】なお、T1は送信側からのデータブロック
待ちのタイムアップ時問であり、返答コード送信後T1
時間がたってもデータブロックが受信できない場合は返
答コード再送を行う。また、Mは返答コード再送最大許
容回数であり、M回再送してもデータブロックが受信で
きない場合は、異常終了として処理を終える。T1及び
Mは送信側、受信側双方において予め示し合わせた値を
設定しておく。
【0044】1ブロックの受信が完了した場合はSUM
Iを計算し(ステップS41)、SOH,BLK,BL
Lが正しいかどうかを判断する(ステップS42)。正
常でない場合はNAKを返答し(ステップS53)再度
バッファクリア動作(ステップS31)に戻り再受信動
作を行う。
【0045】SUM1が正常だった場合は次にBLK=
V6、もしくはBLK=V6+1となっているかをチェ
ックする(ステップS43)。BLK=V6の場合はデ
ータブロックが再送されたと判断され、BLK=V6+
1の場合は前回受信したブロックの次のブロックである
と判断される。このためどちらの場合にも正常な通信手
順と判断され、変数V6をBLKにセットして(ステッ
プS45)次のステップヘ進む。しかしBLKがこれ以
外の数の場合は通信手順に矛盾が生じているため、異常
終了として処理を終了する(ステップS44)。
【0046】次に、受信したブロック内にいくつのサブ
ブロックが含まれているかをN/(BLL+1)の商の
整数部より計算し(ステップS46)、これを変数V4
に代入する。求めたV4より第V4サブブロックのSU
M2を計算し(ステップS47)サブブロック内のデー
タが正しいかどうかを判断する(ステップS48)。
【0047】ステップS48において、正常である場合
はこのサブブロックのデータをデータ格納領域に格納す
る(ステップS49)。この時、先ほどのBLKの値に
よって前回と同じブロックが再送されたと判断される場
合は、前回受信したデータに上書きして格納され、前回
のブロックの次のブロックと判断される場合は、前回受
信したデータの後ろに追加して格納される。その後AC
Kを返答して(ステップS50)、次のブロックを受信
する処理に戻る(ステップS30)。
【0048】ステップS48において、正しくない場合
はV4を1つカウントダウンし(ステップS51,S5
2)、1つ前のサブブロックについてSUM2を同様に
計算する(ステップS47)。ここで、SUM2が正し
くない場合(ステップS48のN)には、再びステップ
S51に進む。上記の処理により、何れのV4の値につ
いてもSUM2が正しくない場合、即ち、全サブブロッ
クのSUM2が正しくない場合には、最終的にV4は0
まで減算される(ステップS52のY)ので、NAKを
返答し(ステップS53)、再度バッファクリア動作
(ステップS31)に戻り再受信動作を行う。
【0049】以上の手順に従って送信側、受信側共に動
作し、送信側・受信側双方共に正常終了となれば、送信
側の送ったデータが受信側に正しく転送されたことにな
る。
【0050】上記実施例では、ブロック内におけるデー
タ領域を256バイト以内としたが、これ以上にするこ
とも可能である。その場合には、サプブロック長を示す
BLLを、上記実施例では1バイトだったものを、デー
タ領域長を表せるだけのバイト数にする。例えばBLL
を2バイトとすれば、データ領域を65536バイトま
で増やすことが可能である。
【0051】上記実施例では、サブブロックにおけるデ
ータ誤り判定用コードとしてチェックサムを用いたが、
データ誤り訂正符号を用いることも可能である。この場
合例えば図8に示すように1ワード(4バイト)単位で
データ部、誤り訂正符号部(BCH符号)、パリティビ
ット部に分け、このワードでサブブロックを構成する方
法が考えられる。ここで例えばX=21,Y=10とす
ればデータ部に対して2ビットのデータ誤りを訂正でき
る。
【0052】手順としては、まず送信側は送信データを
図8に示すワードに変換し、このワードによりサブブロ
ックを構成する。受信側はサブブロックに配置されたワ
ードに対し誤り訂正を行いデータを復元する。サブブロ
ック内にーつでも誤り訂正不可能なワードが含まれる場
合は、そのサブブロックは使用不能とする。1ブロック
内に繰り返し配置された全てのサブブロックのデータが
使用不能の場合に限り送信側に対し再送要求を行う。
【0053】
【発明の効果】上記の説明から理解できるように、本発
明の通信方式によれば、固定長ブロックを用いた筒便な
通信手順にも関わらず、実際に送信するデータがブロッ
クのデータ領域よりも短い場合においては信頼性の高い
通信が行える。このため通信レスポンスの改善及び消費
電力の低減が可能となる。
【0054】これは、1つのブロック内に同じ送信デー
タがサブブロックとして複数存在するため、その全ての
サブブロックのデータが誤っていない限りは再送処理を
行う必要がないため、通信回数を減らすことができるた
めである。
【図面の簡単な説明】
【図1】本発明の実施例を実現する装置の構成図であ
る。
【図2】本発明の実施例で使用されるデータブロックの
構成図である。
【図3】本発明の実施例で使用されるデータブロックの
データ領域の一例を示す構成図である。
【図4】本発明の実施例で使用されるデータブロックの
データ領域の他の例を示す構成図である。
【図5】本発明の実施例で使用されるブロックのデータ
領域の別の例を示す構成図である。
【図6】本発明の実施例のデータ送信側の動作手順を示
すフローチャートである。
【図7】本発明の実施例のデータ受信側の動作手順を示
すフローチャートである。
【図8】本発明の実施例で使用されるワードの構成図で
ある。
【図9】従来の技術の一例であるXmodemのデータブロッ
クの構成図である。
【図10】従来の技術の一例であるXmodemの動作手順を
示す図である。
【図11】従来の技術の一例であるXmodemのデータブロ
ックの構成図である。
【符号の説明】
1 CPU 2 RAM 3 ROM 4 S/Pデータ変換器 5 システムバス 21 データ格納領域 22 通信バッファ領域 31 送信用ソフトウェア格納領域 32 受信用ソフトウェア格納領域
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) H04L 1/00 - 1/18 H04L 29/00 - 29/12

Claims (7)

    (57)【特許請求の範囲】
  1. 【請求項1】 送信されるデータブロックの番号と、送
    信されるデータ長を示すデータ長コードと、これ等ブロ
    ックの番号及びデータ長コードに対するチェックコード
    とを先頭部に含み、前記先頭部にデータが後続する送信
    データブロック構成の固定長データブロックによりシリ
    アルデータの通信を行なうデータ通信システムであっ
    て、 送信側において、前記固定長データブロックのサイズに
    対して送信データ量が少ない場合には、前記送信データ
    を、前記ブロックサイズを超えない範囲で同一ブロック
    内に繰り返し配置して、前記ブロックを構成し、 受信側において、前記ブロック内に繰り返し配置されて
    いる同一の送信データの中から、データの誤りがないデ
    ータを受信した場合、前記ブロック内に繰り返し配置さ
    れている他の同一の送信データについて誤り判定を行わ
    ないことを特徴とするデータ通信システム。
  2. 【請求項2】 前記ブロック内に繰り返し配置される送
    信データの各々に対し、前記送信データに対するデータ
    誤り判定用コードを付加することを特徴とする請求項1
    記載のデータ通信システム。
  3. 【請求項3】 前記受信側において、データの誤りがな
    いデータを受信した場合には、受信した旨の返答コード
    を前記送信側へ送出することを特徴とする請求項1記載
    のデータ通信システム。
  4. 【請求項4】 送信されるデータブロックの番号と、送
    信されるデータ長を示すデータ長コードと、これ等ブロ
    ックの番号及びデータ長コードに対するチェックコード
    とを先頭部に含み、前記先頭部にデータが後続する送信
    データブロック構成の固定長データブロックによりシリ
    アルデータの通信を行なうデータ通信システムであっ
    て、 送信側において、前記固定長データブロックのサイズに
    対して送信データ量が少ない場合には、前記送信データ
    を、前記ブロックサイズを超えない範囲で同一ブロック
    内に繰り返し配置して、前記ブロックを構成し、 受信側において、前記ブロック内に繰り返し配置されて
    いる同一の送信データの中から、データの誤り訂正が可
    能なデータを受信した場合、前記ブロック内に 繰り返し
    配置されている他の同一の送信データについて誤り訂正
    を行わないことを特徴とするデータ通信システム。
  5. 【請求項5】 前記ブロック内に繰り返し配置される送
    信データの各々に対し、前記送信データに対するデータ
    誤り訂正用コードを付加することを特徴とする請求項4
    記載のデータ通信システム。
  6. 【請求項6】 前記受信側において、データの誤り訂正
    が可能なデータを受信した場合には、受信した旨の返答
    コードを前記送信側へ送出することを特徴とする請求項
    4記載のデータ通信システム。
  7. 【請求項7】 前記送信側において、前記返答コードが
    受信されない場合には、前記データの再送信をなすこと
    を特徴とする請求項3又は6記載のデータ通信システ
    ム。
JP08200874A 1996-07-31 1996-07-31 データ通信システム Expired - Fee Related JP3139737B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP08200874A JP3139737B2 (ja) 1996-07-31 1996-07-31 データ通信システム
KR1019970036352A KR100224048B1 (ko) 1996-07-31 1997-07-31 데이타 통신 시스템 및 그 방법
CN97115090A CN1176548A (zh) 1996-07-31 1997-07-31 数据通信系统及其使用方法
GB9716206A GB2315964B (en) 1996-07-31 1997-07-31 Data communication system and method therefor
GB9820107A GB2338382B (en) 1996-07-31 1997-07-31 Method of serial data communication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP08200874A JP3139737B2 (ja) 1996-07-31 1996-07-31 データ通信システム

Publications (2)

Publication Number Publication Date
JPH1051509A JPH1051509A (ja) 1998-02-20
JP3139737B2 true JP3139737B2 (ja) 2001-03-05

Family

ID=16431680

Family Applications (1)

Application Number Title Priority Date Filing Date
JP08200874A Expired - Fee Related JP3139737B2 (ja) 1996-07-31 1996-07-31 データ通信システム

Country Status (4)

Country Link
JP (1) JP3139737B2 (ja)
KR (1) KR100224048B1 (ja)
CN (1) CN1176548A (ja)
GB (1) GB2315964B (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI106088B (fi) 1997-09-12 2000-11-15 Nokia Networks Oy Datansiirtomenetelmä yleisen pakettiradiopalvelun (General Packet Radio Service) verkko-osan ja tilaajapäätelaitteen välillä
DE19820233B4 (de) 1998-05-06 2004-08-05 Siemens Ag Verfahren zum Übertragen von Nutzdaten in Telekommunikationssystemen mit drahtloser auf einem vorgegebenen Luftschnittstellenprotokoll basierender Telekommunikation zwischen Telekommunikationsgeräten, insbesondere Sprach- und/oder Paketdaten in DECT-Systemen
KR100434463B1 (ko) * 1999-01-07 2004-06-05 삼성전자주식회사 부호분할다중접속 통신시스템의 데이터 통신 장치 및 방법
EP1059757A1 (fr) * 1999-06-11 2000-12-13 Alcatel Procédé de codage par blocs d'une cellule ATM utilisant un code produit
US20020015405A1 (en) * 2000-06-26 2002-02-07 Risto Sepponen Error correction of important fields in data packet communications in a digital mobile radio network
US6574770B1 (en) * 2000-06-29 2003-06-03 Lucent Technologies Inc. Error-correcting communication method for transmitting data packets in a network communication system
KR100857777B1 (ko) * 2001-03-26 2008-09-09 엘지전자 주식회사 하이브리드 자동 재송 요구 방식을 이용한 가변 길이의 패킷 송수신 방법
US6839566B2 (en) 2001-08-16 2005-01-04 Qualcomm, Incorporated Method and apparatus for time-based reception of transmissions in a wireless communication system
US7542482B2 (en) 2001-08-16 2009-06-02 Qualcomm Incorporated Method and apparatus for message segmentation in a wireless communication system
US8171300B2 (en) 2002-04-30 2012-05-01 Qualcomm Incorporated Security method and apparatus
US7586948B2 (en) * 2003-12-24 2009-09-08 Agere Systems Inc. Packet sub-frame structure for selective acknowledgment
US7489688B2 (en) 2003-12-23 2009-02-10 Agere Systems Inc. Frame aggregation
US7590118B2 (en) 2003-12-23 2009-09-15 Agere Systems Inc. Frame aggregation format
US7633970B2 (en) 2004-05-07 2009-12-15 Agere Systems Inc. MAC header compression for use with frame aggregation
GB0609426D0 (en) * 2006-05-12 2006-06-21 Univ Edinburgh A low power media access control protocol
JP4930024B2 (ja) * 2006-12-08 2012-05-09 富士通株式会社 送信装置及び受信装置並びにデータ伝送方法
EP2103052B1 (en) 2006-12-28 2012-08-22 Research In Motion Limited Methods and apparatus for increasing data throughput by grouping data packets into maximum transmissible units
JP5207756B2 (ja) * 2007-03-07 2013-06-12 キヤノン株式会社 通信システム、通信装置、及びその制御方法
JP2009118244A (ja) * 2007-11-07 2009-05-28 Internatl Business Mach Corp <Ibm> 再生単位が可変のデータを送信する技術
JP5840632B2 (ja) * 2013-01-18 2016-01-06 京セラドキュメントソリューションズ株式会社 画像形成装置
CN105357693A (zh) * 2015-09-28 2016-02-24 深圳市江波龙科技有限公司 WiFi设备的网络配置方法和系统
CN109640302A (zh) * 2018-12-06 2019-04-16 上海荣泰健康科技股份有限公司 基于ble蓝牙的程序更新方法、电子设备及移动终端
JP7175944B2 (ja) * 2020-08-31 2022-11-21 楽天グループ株式会社 通信システム、送信装置、受信装置、通信方法、及びプログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03106127A (ja) * 1989-09-20 1991-05-02 Fujitsu Ltd 可変長符号化回路
EP0554300B1 (de) * 1990-10-24 1996-06-12 Deutsche Thomson-Brandt Gmbh Verfahren, coder und decoder zur datenübertragung und/oder -speicherung
US5257362A (en) * 1991-03-08 1993-10-26 International Business Machines Corporation Method and means for ensuring single pass small read/write access to variable length records stored on selected DASDs in a DASD array

Also Published As

Publication number Publication date
JPH1051509A (ja) 1998-02-20
GB9716206D0 (en) 1997-10-08
KR100224048B1 (ko) 1999-10-15
GB2315964B (en) 2000-11-15
CN1176548A (zh) 1998-03-18
GB2315964A (en) 1998-02-11
KR980013158A (ko) 1998-04-30

Similar Documents

Publication Publication Date Title
JP3139737B2 (ja) データ通信システム
EP0635952B1 (en) Data transmission system with automatic repeat request (ARQ)
EP0229353B1 (en) Method and system for handling transmission errors
CN1236579C (zh) 在自动重复请求系统中恢复数据的方法和设备
US20040117722A1 (en) Performance of communication systems using forward error correction
CN1973500A (zh) 用于传送数据的方法和系统以及用于发射数据的站
EP0465533A4 (en) Error correction for infrared data communication
US6327688B1 (en) Data bus with automatic data integrity verification and verification method
CN111641638A (zh) 一种数据传输方法及相关装置
US6292470B1 (en) Data transmission system and method utilizing history information corresponding to correctly received frames
JP3658829B2 (ja) データ通信方法
US6134692A (en) Information identification system for identifying response units by a control unit, and the control unit and the response units for the information identification system
EP0089831A2 (en) Data communications system ensuring redundant message suppression
WO1995019003A1 (en) File transfer method and apparatus using hash numbers
JPH09247132A (ja) 無線パケット通信装置及び送信装置
US5191585A (en) Computer networking method
JP3217716B2 (ja) 無線パケット通信装置
JPH0621923A (ja) 無線通信方法
CN111008172A (zh) 一种接口通讯协议栈
US5056113A (en) Data communication system
GB2338382A (en) Transmitting fixed length data blocks containing sub-blocks
US5394438A (en) Data transmitting method
JP3613871B2 (ja) 符号訂正装置
JP2891267B2 (ja) データ再送伝送方式
JP3377420B2 (ja) 通信処理装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees