KR100224048B1 - 데이타 통신 시스템 및 그 방법 - Google Patents

데이타 통신 시스템 및 그 방법 Download PDF

Info

Publication number
KR100224048B1
KR100224048B1 KR1019970036352A KR19970036352A KR100224048B1 KR 100224048 B1 KR100224048 B1 KR 100224048B1 KR 1019970036352 A KR1019970036352 A KR 1019970036352A KR 19970036352 A KR19970036352 A KR 19970036352A KR 100224048 B1 KR100224048 B1 KR 100224048B1
Authority
KR
South Korea
Prior art keywords
data
block
fixed length
error
received
Prior art date
Application number
KR1019970036352A
Other languages
English (en)
Other versions
KR980013158A (ko
Inventor
신이찌로 이와따
Original Assignee
가네꼬 히사시
닛본 덴기 가부시끼가이샤
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 가네꼬 히사시, 닛본 덴기 가부시끼가이샤 filed Critical 가네꼬 히사시
Publication of KR980013158A publication Critical patent/KR980013158A/ko
Application granted granted Critical
Publication of KR100224048B1 publication Critical patent/KR100224048B1/ko

Links

Images

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

Abstract

시리얼 데이타를 송신하기 위한 데이타 통신 시스템 및 방법은 정보의 고정 길이 블럭을 송신하기 위한 송신기와, 이 송신기로부터 고정 길이 블럭을 수신하기 위한 수신기를 포함한다. 고정 길이 블럭은 복수의 서브 블럭을 포함하고, 복수의 서브 블럭 각각은 데이타에 따라 가변 길이를 갖는다. 송신 데이타량이 송신기측에서 고정 길이 데이타 블럭의 크기보다 작은 크기로 되어 있을 때, 정보가 블럭 크기를 초과하지 않는 범위에서 동일한 블럭 내에 반복적으로 배열되어 블럭을 형성한다. 따라서, 고정 길이 데이타 블럭을 갖는 데이타 통신 시스템에서는, 고정 길이 블럭의 비사용부가 고신뢰성의 데이타 통신시 효과적으로 사용된다. 송신된 데이타는 고정 길이 데이타 블럭의 데이타 영역의 크기보다 적은 크기로 되어 있으면, 복수의 서브 블럭과 에러 체크 코드가 데이타 영역 내에 저장된다. 이러한 구성으로는, 에러 없는 데이타가 우선적으로 수신되어 신뢰성과 데이타 송신 효율을 개선할 수 있다.

Description

데이타 통신 시스템 및 그 방법
본 발명은 데이타 통신 시스템 및 그 방법에 관한 것으로, 더욱 특히 고정 길이의 블럭이 사용되고, 이 블럭이 송신되는 각 데이타 부분의 길이에 응답하여 복수의 서브 블럭으로 분할되는 시리얼형 데이타 통신 시스템 및 방법에 관한 것이다.
종래의 데이타 통신 시스템은 데이타 송신에 사용되거나, 데이타 송신 디바이스를 제어하는 데에 사용된다. 통신 시스템은 예를 들어 퍼스널 컴퓨터들 또는 휴대용 정보 단말들 사이의 유선(또는 무선) 통신 시스템에 대해 동작된다. 이러한 데이타 통신 시스템은 1994년 10월 5일자로 아사이 신문사에서 발행되며, 다까시 이이다에 의해 편집된 새로운 프로토콜 핸드북, pp. 200-206에서 설명된 여러 형태의 시스템으로 고안되고 있다.
X모뎀 방법은 종래의 데이타 통신 시스템에서 사용되는 기본적 방법으로, 여기에서 송신된 데이타는 송신측에서 고정 길이 블럭으로 분할되고, 모든 블럭들은 개별적으로 수신측에 송신된다.
도 10은 X모뎀 방법에서 사용되는 블럭의 구조를 설명한다. 선두를 나타내는 선두 코드(SOH)가 블럭의 선단부에 위치된다. 다음에, 바이트 블럭 개수(BLK)는 블럭의 논리적 순서(예를 들어, 블럭이 수신측에서 재배열되어야 하는 순서)를 나타내고 그 보수(BLK 위에 바아(bar)를 표시함)는 BLK부 이후에 위치된다. 블럭 보수 후에, 내부에 위치된 데이타를 갖는 DATA부가 제공된다. 체크합 코드(SUM)는 블럭의 종단부에 위치되는 것으로, 블럭이 에러를 포함하는지의 여부를 나타내기 위한 것이다.
도 11은 X모뎀 시스템에 있어서의 데이타 송신측(및 그 동작) 및 데이타 수신측(및 그 동작)을 개략적으로 설명한다.
먼저, 데이타 수신측(예를 들어, 도 11의 우측)은 수신측이 데이타의 블럭(또는 다른 블럭)의 수신이 준비되어 있는 것을 나타내는 1바이트의 길이를 갖는 비정상 수신 모드(NAK)(또한 부정적 인식으로 언급)을 송신한다(단계 S101).
다음에, 데이타 송신측(예를 들어, 도 11의 좌측)은 제1 데이타 블럭을 송신한다(단계 S102). 이 제1 데이타 블럭의 포맷은 도 10(또는 이하 설명되는 도 12)에서 나타낸 것과 동일하다. 데이타 수신측은 이 데이타를 수신하고, 체크합 코드를 사용하여 이 데이타를 에러 검진한다. 합 코드를 이용한 에러 체크는 본 기술의 당업자에게는 잘 알려진 것이므로, 이에 대한 설명은 여기에서 설명하지 않았다.
에러가 존재하지 않으면, 수신 데이타가 저장되고, 1바이트 정상 수신 코드(ACK)(또는 인식으로 언급)가 수신측으로 반송되어 데이타의 수신 및 저장의 인식을 나타낸다. 에러가 검출되면, 이 수신 데이타는 취소되고, NAK 신호가 수신측으로부터 송신측으로 반송된다(단계 S105).
다음 데이타 블럭은 다음 ACK 신호가 수신될 때 송신측으로부터 수신측으로 송신된다(단계 S104). NAK 신호가 수신되면, 동일한 블럭이 ACK 신호가 수신될 때 까지 송신측에 의해 다시 송신된다(단계 S106).
이 과정은 최종 블럭이 송신된 후에(단계 S108), 데이타 송신측이 송신 종료를 나타내는 1바이트 종료 코드(EOT)를 송신할 때 까지 반복된다. 데이타 수신측이 EOT 신호를 수신할 때, 수신측은 송신측에 ACK 신호를 발하게 되어, 처리가 완료되게 된다(단계 S109).
Y모뎀 방법/시스템 또는 Z모뎀 방법/시스템과 같은 다른 통신 시스템에서는, 더욱 복잡한 과정이 사용된다. 이 시스템은 대량의 데이타와 많은 파일 등을 수용할 수 있다.
그러나, X모뎀 방법/시스템과 같은 종래의 통신 시스템에 대해서는 몇가지 문제점들이 있다.
먼저, 송신되는 데이타의 길이가 X모뎀 시스템과 같이 고정 길이 블럭을 이용하는 통신 시스템에서의 블럭의 크기보다 더 클 때, 복수의 블럭 및 블럭의 일부가 이용되어야 한다. 블럭의 일부가 이용될 때에는, 나머지 사용하지 않은 블럭의 부분(일부)이 보충 코드(SUB)(또한 대체 코드로 언급)로 채워져야만 하고, 도 12에서 나타낸 바와 같이 송신되어야만 한다. 유사하게, 송신된 데이타의 길이가 블럭의 고정 길이보다 작을 때, 고정 길이 블럭의 비사용 부분이 보충 코드로 채워(예를 들면, 완성)져야만 한다. 이 보충 코드는 유용한 데이타를 송신하는 데에 사용될 수 있는 공간을 낭비하지만, 고정 길이의 블럭이 일체적으로 송신 및 수신되게 할 필요가 있다.
종래의 통신 시스템의 두번째 문제는 고정 길이의 블럭 시스템을 갖는 긴(예를 들어, 연장 길이의) 블럭을 잠재적으로 사용하게 된다는 것이다. 긴 고정 길이의 블럭을 사용하는 종래의 고정 길이의 블럭은 이러한 시스템에서는 재송신 처리를 더욱 자주 필요로 하기 때문에 전달 효율이 저감하게 된다. 블럭의 길이를 연장하는 처리는 에러를 야기할 수 있고, 이로 인해 재송신이 필요하게 될 가능성이 더욱 커지게 된다. 예를 들어, 이 에러는 블럭의 길이 연장으로 인한 송신 에러로 인한 것이고, 이에 의해 송신 노이즈의 가능성이 더 커지게 된다. 일반적으로, 블럭 크기의 길이가 길수록, 블럭에 노이즈가 생길 가능성은 커진다.
세번째 문제점은 블럭 크기를 축소한 고정 길이의 블럭 시스템(예를 들어, 적은 블럭을 갖는 시스템)에 존재하고 있다. 이러한 시스템에서는 시스템이 더 적은 블럭 크기로 송신될 때 동일한 양의 데이타를 송신하는 데에 필요한 블럭의 개수가 증가하기 때문에, 많은 양의 데이타를 전달할 때에는 데이타를 저속으로 송신하게 된다. 각 블럭이 포맷 및 인식되어야 하기 때문에, 임의의 양의 데이타에 대해서, 많은 개수의 작은 블럭을 송신하는 데에 필요한 시간은 더 적은 개수의 큰 블럭을 송신하는 데에 필요한 시간 보다 더 많이 소요된다.
가변 길이의 블럭을 사용하는 시스템에 대한 네번째 문제는 이 시스템과 관련된 처리가 매우 복잡하다는 것이다. 가변 길이 블럭을 사용하는 통신 시스템은 송신측과 수신측 사이의 블럭 길이를 정의하는 데에 복잡한 과정을 필요로 하므로, 이로 인해 통신 속도를 감소하며 에러의 가능성을 증가시키게 된다.
또한, Y모뎀과 Z모뎀 방법은 문제점을 갖는다. 예를 들어, Y모뎀 방법은 X모뎀 방법과 유사한 고정 블럭 길이의 프로토콜을 사용하기 때문에, 상술된 X모뎀 방법과 대부분 동일한 문제점을 갖고 있다.
또한, Z모뎀 방법은 가변 블럭 길이의 프로토콜을 사용하므로, 보충 코드를 필요로 하지는 않지만, 매우 복잡한 프로토콜이기 때문에 바람직하지 않다.
따라서, 종래의 방법 및 시스템은 많은 문제점들을 갖고 있다.
상술한 종래의 시스템 및 방법의 문제점에 비추어, 본 발명의 목적은 고 신뢰성의 데이타 송신을 유지하면서 고정 블럭 내의 비사용 공간을 효과적으로 사용하기 위한 데이타 통신 시스템의 구조 및 방법을 제공하기 위한 것이다.
제1 형태에 있어서, 본 발명에 따른 데이타를 송신하기 위한 시리얼 데이타 통신 시스템은 정보의 고정 길이 블럭을 송신하기 위한 송신기와 송신기로부터 고정 길이의 블럭을 수신하기 위한 수신기를 포함한다. 고정 길이의 블럭은 복수의 서브 블럭을 포함하고, 각 서브 블럭은 데이타에 따라 가변 길이를 갖는다.
본 발명에 의해 제공된 유일하며 비자명한 구조에 의하면, 시리얼 데이타 통신이 고정 길이의 데이타 블럭을 통해 행해지는 데이타 통신 시스템이 제공되며, 여기에서 송신되는 데이타량이 고정 길이 블럭의 크기보다 더 작을 때, 본 발명은 고정 길이의 블럭을 완전히 이용하도록 블럭 내의 송신 데이타를 반복하여 배열한다. 따라서, 블럭의 비사용 부분이 전혀(거의) 없기 때문에 효율이 증가하며, 에러의 가능성이 감소하게 된다.
본 발명에 따르면, 데이타 블럭은 데이타 에러 식별 코드(예를 들어, 체크합 코드 등) 또는 에러 보정 코드를 포함할 수 있다. 통상, 멀티 에러 취소 시스템/방법이 복잡하며 효율이 적기 때문에, 하나의 코드로도 충분하다(예를 들어, 에러 취소 시스템 하나만이 이용된다).
부가적으로, 본 발명에서는 에러를 포함하지 않는(또는 보정되어야 하는 에러를 포함하는) 데이타가 우선적으로 선택된다. 이렇게 우선적으로 선택되는 데이타가 수신측으로 수신될 때, 응답 코드가 송신측에 송신된다. 반대로, 응답 코드가 송신측에 의해 수신되지 않을 때, 데이타가 재송신된다.
따라서, 본 발명에서는 보충 코드의 최소양만이 이용되고, 데이타 에러 식별 코드 또는 에러 보정 코드가 송신 데이타에 부가된다. 다음에, 데이타 수신측에서는 에러(또는 보정될 수 있는 에러)를 갖지 않는 데이타가 데이타 수신측에서 수신된 데이타 블럭으로부터 우선적으로 선택된다. 데이타가 에러를 포함하면, 블럭의 재송신 요청이 실행된다.
본 발명의 다른 형태에서는, 데이타 파일이 너무 크면 제2 블럭이 용장 데이타부(예를 들어, 용장 파일(2/2))를 포함하기 때문에, 제2 블럭에서의 블럭 에러의 가능성이 종래의 방법(예를 들어, X모뎀 방법)에서보다 적어진다. 예를 들어 종래의 X모뎀 방법의 제2 블럭은 이러한 용장 데이타부를 가지지 않으며, 본 발명의 제2 실시예와 비교하여 더욱 에러의 가능성이 많다.
도 1은 본 발명에 따른 데이타 통신 시스템의 개략 블럭도.
도 2는 본 발명에 따른 데이타 통신 시스템에 사용되는 데이타 블럭 필드의 개략도.
도 3은 본 발명에 따른 데이타 통신 시스템에 사용되는 데이타 블럭의 데이타 영역의 개략도.
도 4는 본 발명에 따른 데이타 통신 시스템에 사용되는 데이타 블럭의 데이타 영역의 다른 예의 개략도.
도 5는 본 발명에 따른 데이타 통신 시스템에 사용되는 데이타 블럭의 데이타 영역의 다른 예의 개략도.
도 6은 본 발명에 따른 데이타 통신 시스템의 데이타 송신측에서 발생하는 동작 과정의 플로우챠트.
도 7은 본 발명에 따른 데이타 통신 시스템의 데이타 수신측에서 발생하는 동작 과정의 플로우챠트.
도 8은 본 발명에 따른 데이타 통신 시스템에 사용되는 워드의 개략도.
도 9a는 데이타(예를 들어 파일)가 블럭 크기보다 클 때 송신을 위한 본 발명의 제2 실시예를 설명하는 도, 도 9b는 비교용으로 종래의 X모뎀 시스템을 사용할 때의 송신을 설명하는 도.
도 10은 종래의 X모뎀 시스템의 데이타 블럭의 개략도.
도 11은 종래의 X모뎀 시스템의 동작 과정의 개략도.
도 12는 종래의 X모뎀 시스템의 데이타 블럭의 개략도.
도면의 주요 부분에 대한 부호의 설명
1 : 중앙 처리 유닛(CPU)
2 : 랜덤 억세스 메모리(RAM)
3 : 리드 온리 메모리(ROM)
4 : 시리얼-패럴렐 (S/P) 데이타 변환기
5 : 시스템 버스
21 : 데이타 저장 영역
22 : 통신 버퍼 영역
31 : 송신용 소프트웨어 저장 영역
32 : 수신용 소프트웨어 저장 영역
상술한 것 이외의 다른 목적, 형태 및 장점들이 도면을 참조하여 바람직한 실시예의 다음 상세한 설명으로부터 잘 이해될 것이다.
도면을 참조하여, 본 발명의 바람직한 실시예를 이하 설명한다. 도 1은 본 발명의 바람직한 실시예의 구성을 설명한다.
도 1에서, 랜덤 억세스 메모리(RAM)(2)는 데이타 저장 영역(21)과 통신 버퍼 영역(22)으로 분할된다. 영역(21)은 송신 또는 수신될 데이타용이어서, 영역의 크기는 고정되지 않는 것이 바람직하다. 영역(21)의 크기는 동적으로 조절되는 것이 바람직하다. 영역(22)은 통신 버퍼용이어서 이 영역의 크기는 블럭의 크기와 동일하다. 송신 및 수신될 데이타는 데이타 저장 영역(21)에 저장된다. 통신 버퍼 영역(22)은 일 블럭에 대응하는 데이타를 연속적으로 송신 또는 수신할 수 있는 임시 데이타 저장 메모리이다.
리드 온리 메모리(ROM)(3)는 데이타 통신 시스템의 프로그램을 저장하는 것으로, 송신용 소프트웨어를 저장하기 위한 송신용 소프트웨어 저장 영역(31)과 수신용 소프트웨어를 저장하기 위한 수신용 소프트웨어 저장 영역(32)을 포함한다.
시리얼-패럴렐 (S/P) 데이타 변환기(4)는 중앙 처리 유닛(CPU)(1)에서 사용된 패럴렐 데이타를 시리얼 데이타(시리얼 통신에 사용)로 변환하거나, 시리얼 데이타를 패럴렐 데이타로 각각 변환한다. ROM(3)에 포함된 프로그램에 기초하여, CPU(1)는 ROM(2), RAM(2) 및 S/P 데이타 변환기(4) 사이의 데이타 송신 동작을 제어하고, 이들 각각은 공통 시스템 버스(5)에 의해 함께 접속되어 있다.
송신 동작시, 외부 입력 디바이스(도시 생략)에 의해 데이타 저장 영역(21)에 데이타가 입력된다. 데이타 저장 영역(21) 내의 데이타의 일 블럭이 통신 버퍼 영역(22)에 위치된다. 블럭 크기가 고정되지는 않지만, 대신에 사용자는 설계의 요구 사항과 이를 고려하여 먼저 적당히 블럭 크기를 선택할 수 있다. 그러나, 본 분야에 숙련된 당업자중 하나에 의해 알려진 바와 같이, 송신기와 수신기는 함께 동일한 크기를 먼저 선택해야 한다.
송신용 소프트웨어 저장 영역(31) 내의 송신용 소프트웨어는 통신 버퍼 영역(22)내에 데이타의 블럭을 갖고 있고, 이 데이타를 S/P 변환기(4)로 출력한다. 변환기(4)는 데이타를 변화하여 이 데이타를 수신측에 출력한다.
수신 동작시에는, 데이타 블럭은 S/P 변환기(4)에 의해 수신 및 변환된다. 수신용 소프트웨어 저장 영역(32)의 수신용 소프트웨어는 통신 버퍼 영역(22)에 데이타의 블럭을 저장하도록 동작을 제어한다. 데이타 블럭은 에러(예를 들어, 체크합 코드 또는 CRC와 같은 그 외 에러 식별 코드에 의해 판정되는 바와 같이) 또는 에러 보정 코드 없이 수신되면, 인식 신호(ACK)가 송신 유닛에 송신되어 뒤이은 블럭이 송신될 수 있게 한다. 통신 버퍼 영역(22)으로부터의 블럭이 데이타 저장 영역(21)에 결합된다. 일단 데이타 송신이 완료되면, 데이타 저장 영역(21) 내에 축적된 데이타가 출력 디바이스(도시 생략)에 출력된다.
도 2는 본 발명의 데이타 통신 시스템에 사용되는 송신 데이타 블럭의 예를 설명하는 블럭도이다.
먼저, 1바이트 선두 코드(SOH)는 블럭의 선두에 위치되어 데이타 블럭의 개시를 나타낸다. 다음의 인접 위치에서 일 바이트의 블럭(BLK)은 블럭의 논리적 순서(예를 들어, 모든 블럭이 수신측에 의해 재배열되어야 하는 번호가 매겨진 순서)를 나타낸다.
송신되고 있는 데이타의 길이(예를 들어, 바이트수)를 나타내는 일 바이트 길이의 코드(BLL)가 BLK 블럭에 인접하고 있다. 상술된 바람직한 실시예에서는, 1블럭으로 송신되는 데이타의 길이는 256 바이트보다 적다. 상술된 실시예에서는, 블럭의 데이타 영역이 최대 256 바이트를 갖고 있을 때, 이 값을 더 크게 설정할 수 있다. BLL 변수는 길이가 복수의 바이트일 수 있다. 예를 들어, BLL이 2바이트를 가지면, 데이타 영역은 65536 바이트 까지 증가될 수 있다.
3 바이트 체크합 코드(SUMI)는 SOH, BLK 및 BLL 바이트 후에 위치된다. 송신되는 N 바이트의 데이타는 SUM1 코드 후에 위치된다. 상술된 구성으로는, 일 블럭의 전체 바이트수는 N+4 (예를 들어, SOH, BLK, BLL, SUM1)이 되는데, 여기에서 N은 송신될 데이타의 바이트수이다. 특히, N은 데이타 블럭의 고정 길이를 나타낸다.
도 3은 N 바이트의 데이타 영역을 더욱 상세히 설명한다. 데이타 영역은 BLL 바이트로 송신되는 데이타(DATA)와 일 바이트의 체크합 코드(SUM2)을 포함한다.
도 3에서 나타낸 바와 같이, DATA와 SUM2 필드는 서브 블럭을 형성한다. 따라서, 서브 블럭의 바이트수는 (BLL+1) 바이트가 된다. 보충 코드(SUB)의 (N-BLL-1) 바이트와 동일한 바이트수는 SUM2 필드에 뒤이은 데이타 영역의 비사용부에 삽입된다. 반대로, 서브 블럭의 바이트수가 데이타 영역의 고정 길이(즉, 와 동일하면(BLL+1)=N), 도 4에서 나타낸 바와 같이, 보충 코드는 필요하지 않다.
도 5는 데이타 길이 코드 BLL (예를 들어, 각 서브 블럭에 대해서)의 크기가 데이타 영역 크기의 절반보다 적어도 2 바이트 적은(즉, BLL≤(N-2)/2) 블럭 구성예를 설명한다. 예를 들어, N(전체 바이트)이 6이라고 가정하면, DATA(BLL)가 3인 경우, (6-2)/2이 2이기 때문에 식은 만족되지 않는다. 그러나, N이 6이고 DATA가 2이면(예를 들어, 각 서브 블럭에 대해서), 식은 만족된다. DATA(BLL)가 3인 경우, N은 8이 된다. 이러한 구성은 복수의 서브 블럭이 하나의 데이타 영역에 위치되게 하여, 보충 코드(SUB)의 바이트수가 최소화되도록 한다.
체크합 코드는 본 기술에 숙련된 당업자에게 잘 알려져 있는 바와 같이 종래의 방법으로 송신된 데이타를 증명하는 데에 사용된다. 특히, 체크합 코드는 데이타의 에러를 검출하기 위해 제공된다. 예를 들어, SUM1은 SOH+BLK+BLL+SUM1의 전체 값의 합이 0이 되도록 선택된다. 그 이유는 이 합이 송신시의 에러의 존재(예를 들어, 0이 아닐 때) 또는 부재(예를 들어, 0일 때)를 나타내기 때문이다.
유사하게, SUM2의 값이 데이타 영역의 각 데이타의 전체 값보다 일 바이트 적을 때, SUM2는 0이 된다. 이것은 종래의 체크 순서이다. SUM2는 데이타 영역의 데이타에 대한 체크합 코드이다(예를 들어, 전체 BLL 바이트).
이하에서, 본 발명의 바람직한 실시예의 동작이 데이타 송신측과 데이타 수신측에서의 동작을 각각 설명하는 도 6-7의 플로우챠트를 참조하여 설명된다.
〈데이타 송신측에서의 동작〉
송신측 동작에 관련하여, 도 6을 참조하면, 단계 S01에서 과정이 시작되고, 그 후 인가된 변수 V1은 0으로 초기화되고, BLK은 1로 초기화된다(단계 S02). 이하 더욱 상세히 설명되는 바와 같이, 마지막으로 송신된 데이타가 N 바이트보다 짧은 길이일 때(예를 들어, 블럭이 최종 블럭일 때), V1은 1로 설정된다. 그렇지 않으면 V1은 0이다. 상술된 바와 같이, BLK는 블럭 순서 번호로서 각 블럭에 부가된다.
단계 S03에서, V1이 1인지가 결정된다. V1이 1이면, 송신 신호(EOT)의 단부가 송신되고(단계 S04) 처리는 정상적으로 종료된다(단계 S05).
V1의 값이 0이면(예를 들어, 단계 S03에서 아니오), 처리는 단계 S06으로 계속된다. 단계 S06에서 나머지 송신 데이타(예를 들어, 송신되는 전체 데이타중 나머지 데이타 블럭)이 N보다 적은지가(예를 들어, 데이타의 길이는 데이타 영역(N 바이트)의 크기보다 적은지가) 판정된다(단계 S06). 더욱 특히, 뒤이은 블럭은 마지막 블럭 까지 처리된다. 다음에, 최종 블럭은 N보다 적은지에 대해서 검사된다.
나머지 송신 데이타가 N 바이트 이하일 때, 이 블럭은 최종 블럭이 되므로, 변수 V1은 1로 설정되고(단계 S07), 변수 BLL은 송신 데이타의 나머지 바이트수로 설정된다(단계 S08). 다음에, BLL 바이트는 데이타 영역(예를 들어, 도 1의 데이타 저장 영역(21))으로부터 버퍼(예를 들어, 도 1의 통신 버퍼 영역(22))로 출력되어, SUM1및 SUM2를 연산하는 데에 사용된다(단계 S10에서). BLL 바이트는 상술된 바와 같이, 체크합 값에 영향을 미친다.
본 발명은 또한 얼마나 많은 서브 블럭이 하나의 데이타 영역에 위치될 수 있는지를 결정하는 데에 필요한 보충 코드(SUB)의 개수를 감소시킨다.
특히, 변수 V2는 N/(BLL+1)의 정수 지수와 동일하게 설정된다(예를 들어, {INT(N/(BLL+1)})(단계 S11). 다음에, 이 블럭은 버퍼(22)에서 다수의 서브 블럭으로 형성된다(단계 S12).
반대로, 단계 S06에서 나머지 값이 N 바이트보다 크면, BLL은 데이타 영역의 바이트수로 초기에 설정된다(예를 들어, N-1; 단계 S13). BLL 바이트는 데이타 영역(21)으로부터 버퍼(22)로 입력되어(단계 S14), SUM1과 SUM2를 연산하는 데에 사용된다(단계 S15). 다음에, 이 블럭은 버퍼(22) 내의 정보로부터 형성된다(단계 S16).
블럭 구성의 완성시, 이 블럭이 송신된다. 재송신 회수를 카운트하는 데에 사용되는 변수 V3는 0으로 설정된다(단계 S17). 이러한 특징은 하드웨어 및/또는 소프트웨어에서 인크리멘탈 카운터로서 실행될 수 있으며, 본 기술에 숙련된 당업자에게는 잘 알려져 있다. 따라서, 그 구성 및 동작은 여기에서 상세히 설명하지 않는다.
다음에, 일 블럭이 송신되고(단계 S18), V3가 하나 인크리멘트된다(단계 S19). 다음에, 송신측은 소정 시간 T1을 대기하여 수신측으로부터의 응답 코드를 수신한다(단계 S20).
수신측이 ACK 코드를 송신측으로 복귀하고(단계 S21) BLK의 값이 256이면(단계 S22), BLK는 0으로 설정된다(단계 S23).
반대로, 수신측이 ACK 코드를 송신측으로 회수하지만(단계 S21) BLK의 값이 256이 아니면(단계 S22에서 결정된 바와 같이), BLK는 하나 인크리멘트되고(단계 S24) 동작은 다음 처리를 위해서 단계 S03으로 복귀된다. 응답 코드가 ACK 코드가 아니면, 동작은 블럭 재송신 동작을 위해 단계 S18로 복귀된다.
수신측으로부터의 응답 코드가 단계 S20에서 검출되지는 않았지만, 송신에 뒤이은 소정 시간 주기 T1이 경과하지 않으면(단계 S25), 동작은 응답 코드 수신 결정 단계로 다시 복귀된다(단계 S20). 시간 T1이 경과했지만 M(예를 들어 3)회 시도된 송신이 없으면, 처리는 송신 동작으로 복귀되어(단계 S18) 블럭을 재송신한다. 시간 T1이 경과하고 동일한 블럭의 송신시 M(예를 들어, 3)회의 시도가 있으면, 처리는 비정상 상태에서 종료하게 되어(단계 S27), 비정상적으로 종료된 것으로 간주된다.
따라서, 시간 주기 T1은 수신측으로부터의 응답 코드를 대기하기 위한 시간이다. 응답 코드가 T1이 경과할 때 검출되지 않으면, 블럭 재송신이 실행된다. 변수 M은 블럭 송신을 위해 가능한 최대 회수이다(예를 들어, 상기 예에서는 3으로 설정되고; 특히 블럭이 한번 송신되고 난 다음에는 전체 3블럭 송신에 대해 2회 이상 까지 재송신된다). 응답 코드가 검출되지 않고 송신이 M회 실행되면, 처리는 비정상적으로 종료하게 된다.
변수 T1과 M은 소정치로서 설계자의 요구와 제한에 따라서 미리 송신측과 수신측에서 각각 설정되어 있다. 따라서, T1과 M은 설계자의 요구를 고려하여 설계자에 의해 적당하게 결정되는 어떠한 값이라도 좋다.
〈데이타 수신측의 동작〉
데이타 수신측에서의 동작을 설명하는 도 7의 플로우챠트를 참조하여, 처리가 단계 S28에서 시작된다. 초기에, 변수 V6와 V5는 0으로 초기화된다(단계 S29 및 S30). 변수 V5는 응답 코드가 송신되는 회수를 저장하는 데에 사용되고, V6는 이미 수신된 블럭의 개수를 저장하는 데에 사용된다.
수신 버퍼(22)는 클리어되고(단계 S31), 변수 V5는 1 인크리멘트된다(단계 S32). 다음에, 동작은 송신측으로부터 송신된 데이타의 검출을 대기한다(단계 S33)(예를 들어, 데이타 수신측은 데이타의 수신을 대기한다).
데이타 송신이 검출될 때, 송신의 제1 바이트가 EOT 코드인지를 판정하기 위해 체크된다(단계 S34). 바이트가 EOT 코드이면, 수신측은 ACK 코드를 송신측으로 송신하여(단계 S35), 처리는 정상적으로 완료된다(단계 S36).
반대로, 단계 S34에서는 제1 바이트가 EOT 코드가 아니고 데이타가 검출되지 않았다고 판정되면, 수신 동작이 실행되고, 전체 블럭(N+4 바이트)이 수신되었는지의 여부가 판정된다(단계 S37). 이러한 판정은 예를 들어, 송신측과 동일한 EOT 코드를 가지며 송신의 수신시 비교를 실행하는 수신측에 의해 행해질 수 있다. 제1 바이트가 EOT가 아니면, 송신기는 전체 블럭을 송신할 것이므로, 수신기는 전체 블럭을 수신하게 될 것이다.
하나의 블럭의 수신이 완료되지 않은 경우, 응답 코드가 송신될 때부터의 시간 주기 T1가 측정된다(단계 S38)(예를 들어, 데이타 수신 동작을 개시한 후 T1이 경과했는지가 판정된다). T1이 경과되지 않으면, 동작이 뒤이어 수신 동작으로 복귀되어(단계 S33) 데이타를 수신한다. T1이 경과하면, 변수 V5가 소정값 M과 비교된다(단계 S39). M은 응답 코드가 송신될 수 있는 가능한 최대 회수이다.
V5가 M 이하이면, 부정적 인식(NAK)이 데이타 수신측으로부터 송신측으로 보내지고(단계 S53), 동작은 버퍼 클리어 동작으로 다시 복귀되어(단계 S31) 수신 동작을 다시 실행한다. T1이 경과하고 V5이 M과 동일하면, 처리는 비정상적으로 정지된다(단계 S40)(예를 들어, 비정상 종료).
시간 주기 T1은 송신측으로부터의 데이타 블럭을 대기하기 위한 것이다. 데이타 블럭이 시간 주기 T1 내에 수신되지 않으면, 본 발명은 다시 응답 코드 송신 동작(예를 들어, 재송신 동작)을 실행한다. 데이타 블럭이 시간 주기 T1 내에 수신되지 않고 인식 코드가 M회 송신될 때, 처리는 종료되어 비정상 종료인 것으로 판정된다. 값 T1과 M은 소정값으로서, 송신측과 수신측에서 미리 설정되어 있다. T1과 M은 송신측과 수신측에서 동일한 것이다.
블럭(예를 들어, 한 블럭)이 수신될 때, SUM1은 연산되고(단계 S41) SOH, BLK 및 BLL이 상술된 합산 방정식을 이용하여 정확한지가 판정된다(단계 S42)(예를 들어, SOH+BLK+BLL+SUM1=0인지를 판정한다). SOH, BLK 및 BLL이 정확하지 않으면, 이 블럭의 모든 데이타에 신뢰성이 없다. 따라서, 이들 코드는 정확한지의 여부를 먼저 판정하는 것이 바람직하다.
에러가 단계 S42에서 검출되면, 부정적 인식(NAK)이 수신측에서 송신측으로 송신되고(단계 S53), 버퍼 클리어 동작(단계 S31)으로 동작이 복귀되어 수신 동작을 다시 실행하도록 한다.
SUM1이 정상이면(예를 들어, 단계 S42에서 OK), BLK=V6 또는 BLK=V6+1인지를 판정하기 위해 변수 BLK이 체크된다(단계 S43). BLK=V6이면, 데이타 블럭이 재송신된 데이타 블럭인지가 판정된다. BLK=V6+1이면, 이 블럭이 이전에 수신된 블럭에 뒤이은(인접한) 다음 블럭인지가 판정된다.
상기 두 판정이 정상 과정을 나타내기 때문에, 변수 V6는 BLK로 설정되고(단계 S45), 다음 단계로 동작이 진행한다. 그러나, BLK가 V6 또는 V6+1이 아니면, 통신 과정에서 모순(예를 들어, 에러)이 발생했다고 판정하여, 동작이 비정상적으로 종료되게 된다(단계 S44).
단계 S46에서는, 수신된 블럭에 포함되는 서브 블럭의 개수가 N/(BLL+1)의 정수 지수에 관련하여 연산되고, 이 정수 지수는 변수 V4로 대체된다. 다음에, V4 블럭의 SUM2이 연산된다(예를 들어, 보통 1바이트이지만 더 클 수 있다). 예를 들어, 도 4에서 나타낸 바와 같이, N(바이트)-BLL(바이트)=SUM2이다(단계 S47). 이 동작은 얼마나 많은 서브 블럭이 이 블럭에 있는지를 성취하기 위한 연산이라는 점에서 중요하다. 이 연산 후에, 수신기는 정확한 서브 블럭을 검색하기 시작한다.
다음에, 서브 블럭의 데이타는 SUM2를 이용하여 각 서브 블럭을 검진함으로써 정확성이 검진된다(단계 S48).
에러가 검출되지 않으면(예를 들어, SUM2는 단계 S48에서 판정되는 바와 같이 OK임), 서브 블럭의 데이타가 데이타 저장 영역(21)에 저장된다(단계 S49). 이 블럭이 이전 블럭과 동일한 것으로 판정되면, 이전 데이타가 현재 데이타 송신으로 대체된다. 데이타가 다음 블럭(예를 들어, 이전에 송신된 블럭에 인접하는 블럭)인 것으로 판정되면, 이것은 이전에 수신된 데이타에 뒤이어 위치되어 있다. 이 동작 이후에, 인식(ACK)이 송신측으로 송신되고(단계 S50), 동작은 다음 블럭을 수신하기 위한 처리로 복귀된다(단계 S30).
에러가 검출되면(예를 들어, SUM2이 단계 S48에서 OK가 아닌 것으로 판정되면), V4는 1이 감소하고(단계 S51), 유사한 동작이 다음 서브 블럭에 대해 실행되게 된다. 이 동작은 V4=0일 때 까지 반복되어, 모든 서브 블럭의 데이타가 정확한지에 대하여 판정이 해해진다(단계 S52).
서브 블럭들중 하나 이상의 서브 블럭의 데이타가 부정확할 때, 부정적 인식(NAK)가 이 수신측에 의해 송신측에 송신되고(단계 S53), 동작은 버퍼 클리어 동작으로 복귀되어(단계 S31) 다른 수신 동작을 실행한다.
송신측과 수신측은 상술된 과정에 따라서 함께 동작되고 송신측과 수신측이 모두 정상적으로 종료하게 되면, 데이타는 수신측으로 정확하게 전달된 것으로 판정된다.
상술된 바람직한 실시예에서는, 체크합이 각 서브 블럭의 데이타 에러 식별 코드로서 이용되는 한편, 또한 데이타 에러 보정 코드를 이용하는 것이 가능하다. 예를 들어, 데이타 에러 보정 코드는 도 8에서 나타낸 바와 같이 서브 블럭에 포함될 수 있는 1워드의 유닛(4 바이트)으로, 데이타부(X 비트), 에러 보정 코드부(BCH 코드)(Y 비트), 및 패리티 비트부(1 비트)로 분할되는 방법이 제공될 수 있다. 데이타부 X=21 비트와 에러 보정 코드 Y=10비트의 경우, 2비트의 데이타 에러가 데이타부에서 보정될 수 있다. 에러 보정 코드(ECC)의 사용이 잘 알려져 있기 때문에, 이에 대한 설명은 여기에서 하지 않았다.
특히, 데이타 에러 보정 과정에서, 먼저 송신 데이타가 송신측에서 워드로 변환되어(예를 들어, 도 8에서 나타낸 바와 같이) 서브 블럭을 이 워드로 나타낸다.
에러가 존재하면, 수신측은 워드에 기초하여 서브 블럭상에서 에러 보정을 실행하고, 그렇지 않으면 에러 데이타를 회수한다. 에러 보정이 실행될 수 없으면(예를 들어, 에러 보정이 실행될 수 없는 서브 블럭에 워드가 포함되면), 서브 블럭은 사용되지 않는다. 상술된 바와 같이, 서브 블럭들중 하나가 에러를 포함하면, 데이타의 재송신 요구가 송신측에 보내진다. 따라서, 일 블럭에 반복적으로 배열된 모든 서브 블럭의 데이타가 사용될 수 없는 한, 재전달 요청이 송신측에 관련하여 실행된다.
이전의 설명으로부터 이해될 수 있는 바와 같이, 본 발명의 데이타 통신 시스템에 따르면, 송신되는 데이타가 고정 블럭 길이보다 더 짧은 길이를 갖고 있을 때에도 고신뢰성 및 고효율의 통신 과정이 실행될 수 있다. 또한, 본 발명은 고정 길이 블럭 통신에 관련된 간단한 통신 프로토콜을 사용한다. 이 방법 및 구조는 통신 응답을 개선하며 전력 소모를 감소시킨다.
특히, 본 발명은 종래 기술란에서 설명된 가변 길이 블럭보다 덜 복잡하다. 일반적으로, 가변 길이 블럭을 이용한 프로토콜은 BOF(필드의 개시부), EOF(필드의 종료부), 및 CE(제어 이스케이프) 등을 필요로 한다. 이들 코드의 처리는 복잡하다. 본 발명은 더욱 간단하며 쉬운 프로토콜을 제공한다.
복수의 서브 블럭이 일 블럭에 존재하기 때문에, 모든 서브 블럭의 데이타에 에러가 없는 한 재송신 동작은 불필요하므로, 고정 길이 블럭 송신 회수를 감소시킬 수 있게 된다.
〈제2 실시예〉
상술한 바는 블럭 크기가 고정 길이의 데이타 필드의 길이의 절반 보다 작은 경우를 설명하고 있지만, 고정 길이 데이타 필드보다 더 큰 과도한 크기의 블럭에도 적용될 수 있다.
특히, 본 발명의 제2 실시예는 도 9a에서 나타낸 바와 같이, 파일이 블럭 크기보다 더 큰 경우를 다루고 있다. 반대로, 종래의 X모뎀 방법은 도 9b에서 나타낸 바와 같은 상태를 처리한다. 이 도면은 본 발명의 제2 실시예의 장점을 나타내고 있다.
도 9a에서는, 제1 블럭에서 블럭이 고정 길이를 갖고, 블럭의 개시부에서 PRE와 SUM1을 이용하고 블럭의 종료부에서 SUM2를 이용한다. 이들 사이에는 데이타(예를 들어, File(1/2))이 있다. PRE부는 SOH+BLK+BLL를 포함한다.
도 9a의 제2 블럭에, 제1 파일(예를 들어, File(2.2))부 이전에 PRE와 SUM1, 바로 그 후에 SUM2, 및 뒤이어 제2(용장) File(2/2)부와 다른 SUM2 코드를 포함하는 전달 프로토콜이 나타나 있다. 따라서, 도 9a의 제2 블럭은 이중(용장) File(2/2)을 포함하므로, 블럭 에러의 가능성은 도 9b에서 나타낸 종래의 X모뎀 방법보다 더 적다.
특히, 종래의 X모뎀 시스템을 나타내는 도 9b에서, PRE 코드와 SUM 코드는 제1 블럭의 File(1/2)부의 제1 및 제2 단부에 각각 있다. 제2 블럭에서, PRE 코드 다음에 File(2/2)부, 그 다음에 큰 SUB 코드부와 SUM 코드가 이어진다.
따라서, 본 발명의 제2 실시예에서는, 도 9a의 제2 블럭이 용장 File(2/2)을 포함하기 때문에 제2 블럭의 블럭 에러의 가능성이 적다. 반대로, 도 9b에서 설명되는 바와 같이, 종래의 X모뎀 방법의 제2 블럭은 이러한 용장 File(2/2)을 갖지 않으므로, 에러가 더욱 가능하게 된다.
본 발명은 상술된 바람직한 실시예에 관련하여 설명되고 있지만, 여기에 한정되는 것은 아니고 본 기술에 숙련된 당업자에게 공지된 모든 변형을 포함한다.
본 발명의 데이타 통신 시스템에 따르면, 송신되는 데이타가 고정 블럭 길이보다 더 짧은 길이를 갖고 있을 때에도 고신뢰성 및 고효율의 통신 과정이 실행될 수 있다. 또한, 본 발명은 고정 길이 블럭 통신에 관련된 간단한 통신 프로토콜을 사용하므로, 통신 응답을 개선하며 전력 소모를 감소시킬 수 있다.

Claims (18)

  1. 시리얼 데이타를 송신하기 위한 데이타 통신 시스템에 있어서,
    정보의 고정 길이 블럭을 송신하기 위한 송신기; 및
    상기 송신기로부터 상기 고정 길이 블럭을 수신하기 위한 수신기
    를 포함하고,
    상기 고정 길이 블럭은 복수의 서브 블럭을 포함하고, 상기 복수의 서브 블럭 각각은 상기 데이타에 따른 가변 길이를 갖고,
    송신 데이타양이 송신측에서 상기 고정 길이 데이타 블럭의 크기보다 더 짧은 크기를 가질 때, 상기 정보가 상기 블럭을 초과하지 않는 범위에서 동일한 블럭 내에 반복적으로 배열되어 상기 블럭을 형성하는 것을 특징으로 하는 데이타 통신 시스템.
  2. 제1항에 있어서, 상기 고정 길이 블럭은 데이타 에러 식별 코드와 에러 보정 코드중 하나를 포함하는 것을 특징으로 하는 데이타 통신 시스템.
  3. 제2항에 있어서, 상기 수신기는 상기 에러 보정 코드에 기초하여 에러를 보정하기 위한 수단을 더 포함하고, 상기 수신기는 에러가 없는 데이타를 우선적으로 수신하는 것을 특징으로 하는 데이타 통신 시스템.
  4. 제3항에 있어서, 상기 수신기는 에러가 없는 데이타를 수신하고, 상기 수신기는 상기 데이타가 수신된 것을 나타내는 응답 코드를 상기 송신기에 송신하는 것을 특징으로 하는 데이타 통신 시스템.
  5. 제4항에 있어서, 상기 응답 코드가 상기 송신기에 의해 수신되지 않으면, 상기 데이타는 상기 수신기에 다시 송신되는 것을 특징으로 하는 데이타 통신 시스템.
  6. 제1항에 있어서, 상기 송신기는:
    데이타 송신 후에 상기 수신기로부터 응답 코드가 수신되었는지의 여부를 판정하기 위한 수단; 및
    상기 데이타의 송신 후 소정의 시간 주기가 경과되었는지를 판정하기 위한 수단을 포함하고,
    상기 소정 시간이 경과하고 상기 판정 수단이 응답 코드가 수신되지 않았다고 판정한 후, 상기 데이타는 상기 수신기에 다시 송신되는 것을 특징으로 하는 데이타 통신 시스템.
  7. 제1항에 있어서, 상기 수신기는 수신된 블럭에 포함된 각 서브 블럭이 에러를 포함할 때에만 상기 송신기에 상기 수신된 블럭을 재송신하도록 요청하는 것을 특징으로 하는 데이타 통신 시스템.
  8. 시리얼 데이타 통신 방법에 있어서,
    고정 길이 블럭이 수용할 수 있는 최대 개수의 서브 블럭을 판정하는 단계;
    상기 고정 길이 블럭에 적어도 두 개의 상기 서브 블럭을 저장하는 단계; 및
    상기 고정 길이 블럭을 송신하는 단계
    를 포함하는 것을 특징으로 하는 시리얼 데이타 통신 방법.
  9. 제8항에 있어서, 상기 고정 길이 블럭의 크기를 판정하는 단계를 더 포함하는 것을 특징으로 하는 시리얼 데이타 통신 방법.
  10. 제8항에 있어서, 상기 송신 단계 이전에 데이타 에러 식별 코드와 에러 보정 코드중 하나를 상기 고정 길이 블럭에 저장하는 단계를 더 포함하는 것을 특징으로 하는 시리얼 데이타 통신 방법.
  11. 제8항에 있어서,
    상기 고정 길이 블럭을 수신하는 단계;
    상기 고정 길이 블럭을 에러 검진하는 단계; 및
    상기 고정 길이 블럭이 에러를 포함하는 경우 상기 에러를 보정하는 단계
    를 더 포함하는 것을 특징으로 하는 시리얼 데이타 통신 방법.
  12. 제8항에 있어서,
    상기 고정 길이 블럭을 수신하는 단계;
    상기 고정 길이 블럭을 에러 검진하는 단계; 및
    상기 에러가 보정될 수 없는 경우, 상기 고정 길이 데이타 블럭의 재송신을 요청하는 단계를 더 포함하는 것을 특징으로 하는 시리얼 데이타 통신 방법.
  13. 제8항에 있어서,
    상기 고정 길이 블럭을 수신하는 단계;
    상기 고정 길이 블럭을 에러 검진하는 단계;
    상기 고정 길이가 에러를 포함하지 않는 경우, 상기 고정 길이 블럭의 에러 없는 수신을 나타내는 인식을 송신하는 단계; 및
    상기 인식이 송신되지 않는 경우 상기 고정 길이 블럭을 재송신하는 단계를 더 포함하는 것을 특징으로 하는 시리얼 데이타 통신 방법.
  14. 제8항에 있어서, 데이타 송신양이 송신기측에서 상기 고정 길이 데이타 블럭의 크기보다 작은 크기를 가질 때, 상기 정보가 상기 블럭 크기를 초과하지 않는 범위에서 동일한 블럭내에 반복적으로 배열되어 상기 블럭을 형성하는 것을 특징으로 하는 시리얼 데이타 통신 방법.
  15. 제8항에 있어서,
    데이타의 송신 후에 응답 코드가 수신기측으로부터 수신되었는지를 판정하는 단계; 및
    상기 데이타 송신 이후 소정의 시간 주기가 경과했는지를 판정하는 단계를 더 포함하고,
    상기 소정의 시간 주기가 경과하고 어떠한 응답 코드도 수신되지 않았다고 판정된 후에 상기 데이타가 재송신되는 것을 특징으로 하는 시리얼 데이타 통신 방법.
  16. 제8항에 있어서,
    수신측에서 상기 고정 길이 블럭을 수신된 블럭으로 수신하는 단계;
    상기 수신된 블럭의 각 서브 블럭이 에러를 포함하는지를 판정하는 단계; 및
    상기 수신된 블럭에 포함된 각 서브 블럭이 에러를 포함할 때에만 수신된 블럭을 재송신하는 단계를 더 포함하는 것을 특징으로 하는 시리얼 데이타 통신 방법.
  17. 시리얼 데이타를 통신하기 위한 데이타 통신 시스템에 있어서,
    상기 데이타를 고정 길이 데이타 블럭에 배열하기 위한 수단을 포함하는 송신기; 및
    상기 송신된 데이타를 수신하기 위한 수신기
    를 포함하고,
    상기 송신된 데이타가 상기 고정 길이 데이타 블럭의 데이타 영역의 크기보다 작은 크기를 가질 때, 복수의 서브 블럭과 에러 검진 코드가 데이타 영역 내에 저장되어 있는 것을 특징으로 하는 시리얼 데이타를 통신하기 위한 데이타 통신 시스템.
  18. 제17항에 있어서, 상기 수신기는 수신된 블럭에 포함된 각 서브 블럭이 에러를 포함할 때에만 상기 송신기에 상기 수신된 블럭을 재송신하도록 요청하는 것을 특징으로 하는 시리얼 데이타를 통신하기 위한 데이타 통신 시스템.
KR1019970036352A 1996-07-31 1997-07-31 데이타 통신 시스템 및 그 방법 KR100224048B1 (ko)

Applications Claiming Priority (2)

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

Publications (2)

Publication Number Publication Date
KR980013158A KR980013158A (ko) 1998-04-30
KR100224048B1 true KR100224048B1 (ko) 1999-10-15

Family

ID=16431680

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970036352A KR100224048B1 (ko) 1996-07-31 1997-07-31 데이타 통신 시스템 및 그 방법

Country Status (4)

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

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
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
US7586948B2 (en) 2003-12-24 2009-09-08 Agere Systems Inc. Packet sub-frame structure for selective acknowledgment
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 富士通株式会社 送信装置及び受信装置並びにデータ伝送方法
WO2008080215A1 (en) 2006-12-28 2008-07-10 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 可変長符号化回路
DE59107937D1 (de) * 1990-10-24 1996-07-18 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
KR980013158A (ko) 1998-04-30
GB9716206D0 (en) 1997-10-08
GB2315964A (en) 1998-02-11
JPH1051509A (ja) 1998-02-20
GB2315964B (en) 2000-11-15
JP3139737B2 (ja) 2001-03-05
CN1176548A (zh) 1998-03-18

Similar Documents

Publication Publication Date Title
KR100224048B1 (ko) 데이타 통신 시스템 및 그 방법
US6958678B2 (en) Electronic identification system with forward error correction system
US7519430B2 (en) Dynamic telemetry encoding for an implantable medical device
JP4495236B2 (ja) 段階的データ伝送および処理によるターボ符号化
JP3775800B2 (ja) Arq装置のデータ回復の方法と装置
US4803685A (en) Method and device for the transmission of digital data by messages organized in frames
EP0707394A1 (en) System for re-transmission in data communication
HU219941B (hu) Eljárás és rendszer adatüzenetek átvitelére és vételére, valamint másodlagos állomás a rendszerhez
CN110445583B (zh) 数据传输的校验方法、校验系统及计算机可读存储介质
EP1677450A2 (en) HARQ apparatus and method using an LDPC code
JP3658829B2 (ja) データ通信方法
US6292470B1 (en) Data transmission system and method utilizing history information corresponding to correctly received frames
US20040015767A1 (en) Transmission apparatus and reception apparatus
JPH09247132A (ja) 無線パケット通信装置及び送信装置
KR100309885B1 (ko) 소용량으로오류정정처리를행하는방법및그장치
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
US5191585A (en) Computer networking method
US6883130B2 (en) Enhanced and adaptive error detection in digital communications
US20040181740A1 (en) Communicating method, transmitting apparatus, receiving apparatus, and communicating system including them
JP3217716B2 (ja) 無線パケット通信装置
GB2338382A (en) Transmitting fixed length data blocks containing sub-blocks
JP2861895B2 (ja) データ通信再送方法および装置
JP2000513910A (ja) データエラー検出方法
US6948110B2 (en) Transmission data loss detection system
JPS63305635A (ja) 記号の置換、挿入及び削除によつて影響を与えられるブロツク符号化メツセージを復号化する方法及び装置

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20020709

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee