KR100306875B1 - Method for detecting start point of data frame over sequence code - Google Patents

Method for detecting start point of data frame over sequence code Download PDF

Info

Publication number
KR100306875B1
KR100306875B1 KR1019990042572A KR19990042572A KR100306875B1 KR 100306875 B1 KR100306875 B1 KR 100306875B1 KR 1019990042572 A KR1019990042572 A KR 1019990042572A KR 19990042572 A KR19990042572 A KR 19990042572A KR 100306875 B1 KR100306875 B1 KR 100306875B1
Authority
KR
South Korea
Prior art keywords
data
code
received
frame
value
Prior art date
Application number
KR1019990042572A
Other languages
Korean (ko)
Other versions
KR20010035813A (en
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 윤광석
Priority to KR1019990042572A priority Critical patent/KR100306875B1/en
Publication of KR20010035813A publication Critical patent/KR20010035813A/en
Application granted granted Critical
Publication of KR100306875B1 publication Critical patent/KR100306875B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/69Spread spectrum techniques
    • H04B1/707Spread spectrum techniques using direct sequence modulation
    • H04B1/7073Synchronisation aspects
    • H04B1/7085Synchronisation aspects using a code tracking loop, e.g. a delay-locked loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/26Systems using multi-frequency codes
    • H04L27/2601Multicarrier modulation systems
    • H04L27/2647Arrangements specific to the receiver only
    • H04L27/2655Synchronisation arrangements
    • H04L27/2656Frame synchronisation, e.g. packet synchronisation, time division duplex [TDD] switching point detection or subframe synchronisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

1. 청구범위에 기재된 발명이 속한 기술분야1. TECHNICAL FIELD OF THE INVENTION

본 발명은 데이터 통신 시스템에서 데이터 프레임의 시작점 검출 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것임.The present invention relates to a method of detecting a starting point of a data frame in a data communication system and a computer-readable recording medium having recorded thereon a program for realizing the method.

2. 발명이 해결하려고 하는 기술적 과제2. The technical problem to be solved by the invention

본 발명은, 데이터 통신 시스템에서 데이터 송수신 시 시퀀스 코드를 통하여 데이터 프레임의 시작점을 찾기 위한 데이터 프레임의 시작점 검출 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하고자 함.An object of the present invention is to provide a method of detecting a starting point of a data frame for finding a starting point of a data frame through sequence codes in a data communication system and a computer-readable recording medium having recorded thereon a program for realizing the method.

3. 발명의 해결방법의 요지3. Summary of Solution to Invention

본 발명은, 데이터 통신 시스템에서 데이터 시작 프레임(SOD : Start of Data)을 예측할 수 있는 순차적인 시퀀스 코드들로 이루어지도록 하는 제 1 단계; 데이터 코드를 수신한 수신측 시스템은 수신된 데이터 코드의 시퀀스를 추적하여 데이터 시작 프레임의 일부를 확인하는 제 2 단계; 및 상기 수신측 시스템에서 데이터 코드가 수신될 때마다 카운트하여 상기 데이터 시작 프레임의 최종 데이터 코드에 해당하는 값을 확인한 후에 수신되는 데이터 코드를 데이터 프레임으로 판단하는 제 3 단계를 포함함.The present invention provides a data communication system comprising: a first step of sequential sequence codes for predicting a start of data (SOD) in a data communication system; The receiving side system receiving the data code further comprises: a second step of identifying a portion of the data start frame by tracking the received sequence of data codes; And a third step of counting each time a data code is received at the receiving side system to determine a value corresponding to a final data code of the data start frame, and then determining the received data code as a data frame.

4. 발명의 중요한 용도4. Important uses of the invention

본 발명은 데이터 통신 시스템에 이용됨.The present invention is used in a data communication system.

Description

시퀀스 코드를 통한 데이터 프레임의 시작점 검출 방법{METHOD FOR DETECTING START POINT OF DATA FRAME OVER SEQUENCE CODE}{METHOD FOR DETECTING START POINT OF DATA FRAME OVER SEQUENCE CODE}

본 발명은 데이터 통신 시스템에서 데이터 프레임의 시작점 검출 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것으로, 특히 데이터 통신시에 전송로 상태의 악화로 데이터 통신 프로토콜의 시작 부분 중 일부가 분실되거나 손상되어도 데이터 프레임의 시작점을 찾을 수 있도록 한 데이터 프레임의 시작점 검출 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.The present invention relates to a computer-readable recording medium recording a start point of a data frame and a program for realizing the method in a data communication system. The present invention relates to a method of detecting a starting point of a data frame so that a starting point of a data frame can be found even if some of the parts are lost or damaged, and a computer-readable recording medium having recorded thereon a program for realizing the method.

도 1 은 일반적인 데이터 통신 시스템의 구성예시도이다.1 is an exemplary configuration diagram of a general data communication system.

데이터 통신은 도 1 과 같은 기본 구성도만 이루어지면 적용될 수 있다. 데이터 통신을 하기 위해서는 송신측과 수신측 사이에 규정된 프로토콜(Protocol)이 사용된다.Data communication can be applied if only the basic configuration shown in FIG. In order to perform data communication, a protocol defined between a transmitting side and a receiving side is used.

데이터 통신 시스템에는 송신측에 데이터 단말 장비(DTE : Data Terminal Equipment, 11)와 데이터회선 종단장치(DCE : Data Circuit terminating Equipment, 12)가 있고, 수신측에도 데이터 단말 장비(DTE, 14)와 데이터회선 종단장치(DCE, 13)가 있어 데이터 통신이 이루어지게 된다.The data communication system has a data terminal equipment (DTE) and a data circuit terminating equipment (DCE) 12 on the transmitting side, and a data terminal equipment (DTE) 14 and a data line on the receiving side. There is an end device (DCE) 13 to perform data communication.

DTE(11, 14)로는 컴퓨터, 무선호출기, 핸드폰단말기 등이 있으며, DCE(12, 13)로는 모뎀 등이 있다.The DTEs 11 and 14 include computers, pagers, and mobile phone terminals, and the DCE 12 and 13 include modems.

DTE(11, 14)에는 각 모듈을 제어하는 중앙제어부와 롬(ROM), 램(RAM) 등의 메모리 모듈, 전원을 공급하는 전원 모듈, 수신된 정보(Information)를 처리하거나 송신할 정보(Information)를 편집하는 디스플레이 모듈 등으로 구성되어 진다.The DTEs 11 and 14 include a central control unit for controlling each module, memory modules such as ROM and RAM, power modules for supplying power, and information for processing or transmitting received information. ) Is composed of display module for editing.

송신측 DTE(11)에서 만들어진 데이터(DATA)는 송신측 DCE(12)를 통해 데이터 전송로(유선 또는 무선)를 거쳐 수신측 DCE(13)에서 수신되어지고, 수신측 DTE(14)에서 데이터(DATA)를 처리하게 된다.Data DATA generated at the transmitting side DTE 11 is received at the receiving side DCE 13 via a data transmission path (wired or wireless) via the transmitting side DCE 12, and at the receiving side DTE 14 (DATA) will be processed.

도 2 는 일반적인 데이터 통신용 프로토콜의 일예시도이다.2 is an exemplary diagram of a general data communication protocol.

데이터 통신을 위한 프로토콜(Protocol)은 도면에 도시된 바와 같이, 데이터 시작 프레임(SOD : Start Of Data, 201), 데이터 프레임(DATA, 202) 및 데이터 종료 프레임(EOD : End Of Data, 203)으로 이루어진다.As shown in the figure, a protocol for data communication includes a data start frame (SOD: Start Of Data, 201), a data frame (DATA, 202), and a data end frame (EOD: End Of Data, 203). Is done.

SOD(201)는 데이터 프레임(DATA, 202)의 시작을 알리기 위한 프레임이고, 데이터 프레임(DATA, 202)은 송신측과 수신측이 공유하고자 하는 정보(Information)이며, EOD(203)은 데이터 프레임(DATA, 202)의 끝을 알리는 프레임(Frame)이다.The SOD 201 is a frame for notifying the start of the data frame DATA 202, the data frame DATA 202 is information to be shared between the transmitting side and the receiving side, and the EOD 203 is a data frame. Frame indicating the end of (DATA, 202).

도 2 에 도시한 바와 같은 프로토콜(Protocol)에 프리엠블(Preamble)과 부가정보들이 추가되거나 변환될 수 있다. 프리엠블(Preamble)은 SOD(201)에 포함되어 수신측에서 내부 클럭 동기화를 위한 기능과 함께 데이터 프레임(DATA, 202)의 시작을 알리는 기능을 담당하고, 부가정보는 데이터 프레임(DATA, 202)을 위한 부가적 정보 프레임(Frame)으로 수신자 주소, 송신자 주소, 정보의 길이 등으로 구성된다. 여러 데이터 통신에서 SOD(201)에 프리엠블(Preamble) 및 부가정보 등을 추가하여 프로토콜(Protocol)을 구성한다.Preamble and additional information may be added or converted to the protocol as shown in FIG. 2. The preamble is included in the SOD 201 and is responsible for notifying the start of the data frame DATA 202 together with the function for synchronizing the internal clock at the receiving side, and the additional information is the data frame DATA 202. Additional information frame for is composed of the recipient address, sender address, information length, and the like. In various data communication, a protocol is configured by adding a preamble and additional information to the SOD 201.

도 2 에 도시한 바와 같은 프로토롤(Protocol)은 송신측에서 송신시 돌발적 잡음(Impulse noise)인 버스트 에러(burst error)로 인해 전송 상태가 잠시동안 악화되어 SOD(201)의 일부가 분실되거나 손상될 수 있다.In the protocol as shown in FIG. 2, the transmission state is deteriorated for a while due to burst error, which is an impulse noise when transmitting at the transmitting side, and a part of the SOD 201 is lost or damaged. Can be.

종래에는 이렇게 전송로를 경유하는 사이에 분실되거나 손상된 SOD(201)를 수신하게 되면 수신측에서는 정확한 데이터 프레임(DATA, 202)의 시작을 찾지 못하게 되어 데이터 프레임(DATA, 202)을 정확히 수신하게 되어도 수신율이 현저히 낮아지게 되는 문제점이 있었다.Conventionally, when receiving the lost or damaged SOD 201 through the transmission path, the receiving side cannot find the start of the correct data frame DATA, 202, and thus the reception rate is correct even if the data frame DATA, 202 is correctly received. There was a problem that this is significantly lowered.

상기한 바와 같은 문제점에 대해 보다 상세히 설명하면 다음과 같다.The problem as described above will be described in more detail as follows.

회선오차율이 높은 통신상에서 필요한 정보를 정확히 수신하기 위해서는 프리엠블(Preamble), 부가정보 프레임(frame) 및 구분문자(Delimiter) 등을 포함하여 이루어진 SOD(201)를 동기 및 수신을 위하여 전송하게 된다.In order to accurately receive information necessary for communication with high line error rate, the SOD 201 including a preamble, an additional information frame, a delimiter, and the like is transmitted for synchronization and reception.

종래의 기술은 송신측에서 SOD(201)를 전송하고 수신측에서 SOD(201)를 탐지(Detect)하여 데이터 프레임(DATA, 202)을 수신하거나, 송신측에서 SOD(201)를 일정한 길이로 전송하고 수신측에서는 일정한 길이만큼 카운트(Count)를 한 후 데이터 프레임(DATA, 202)을 수신하였다.The prior art transmits the SOD 201 at the transmitting side and detects the SOD 201 at the receiving side to receive the data frame DATA 202, or transmits the SOD 201 at a constant length at the transmitting side. In the receiving side, the data frame DATA 202 was received after counting by a predetermined length.

그러나, 일시적인 버스트 에러(burst error)로 인해 데이터 프레임(DATA, 202)은 정확히 수신되었지만 SOD(201)의 코드(Code)가 분실되었거나 손실되었으면 수신측에서 데이터 프레임(DATA, 202)의 정확한 시작과 끝을 탐지하지 못하게 되어 오류없이 받은 데이터 프레임(DATA, 202)을 오류처리하게 되는 문제가 발생하였다.However, if the data frame DATA 202 is correctly received due to a temporary burst error, but the code of the SOD 201 is lost or lost, the receiver may not correctly start the data frame DATA 202. There was a problem that the end of the detection of the data frame (DATA, 202) received without error was not detected.

이러한 문제를 해결하기 위하여 SOD(201)를 반복전송하게 되면 부가 데이터가 많이 증가될 뿐이고 근본적으로 해결되지 못하는 문제점이 있었다.When the SOD 201 is repeatedly transmitted in order to solve such a problem, there is a problem that only additional data is greatly increased and cannot be fundamentally solved.

종래기술의 예를 들어보면 다음과 같다.An example of the prior art is as follows.

무선호출기의 동기신호 코드의 32비트 중 1비트의 오류가 발생하면 동기신호 검출오류로 판단하여 후속되는 데이터 신호의 검출이 불가능하였다.If an error of one bit of the 32 bits of the sync signal code of the pager occurs, it is determined that the sync signal is detected and subsequent data signals cannot be detected.

이러한 점을 개선한 것이 32비트로 구성된 동기신호의 검출에서 동기신호 코드의 비트 에러 수가 미리 지정된 N개 이하이면 규정된 동기신호 코드가 정상적으로 검출된 것으로 인식하여 다음에 전송되는 데이터 신호의 검출이 가능하도록 한 것(LG정보통신 특허공개번호 특1995-010400)이다.The improvement is that if the number of bit errors of the sync signal code is less than or equal to N predetermined in the detection of the sync signal composed of 32 bits, it is recognized that the prescribed sync signal code is normally detected so that the next transmitted data signal can be detected. It is one (LG Information Communication Patent Publication No. 1995-010400).

그러나, 이것은 버스트 에러(Burst error)에 상당히 취약하다. 즉4800BPS(Bit Per Second)의 속도로 전송될 때 0.003초 동안의 짧은 단속으로 15비트에 해당하는 정보를 상실하므로 미리 지정된 N개 값이 커질 수밖에 없고, 이것은 수신된 데이터에 대한 신뢰성을 보장할 수 없을 뿐만 아니라 동기신호나 프리엠블로 된 SOD(201)의 분실이 있으면 구현 방법의 오류가 생기는 문제점이 있었다.However, this is quite vulnerable to burst error. In other words, when transmitted at a rate of 4800 bit per second (BPS), 15 bits of information are lost due to a short interruption of 0.003 seconds, so that N predetermined values are large, which can ensure the reliability of the received data. Not only that, there is a problem in that an implementation method error occurs when there is a loss of a synchronization signal or a pre-embedded SOD 201.

도 3 내지 도 5 는 기존의 기술로 인한 데이터 프레임(DATA, 202)의 잘못된 해석을 보여주고 있다.3 to 5 show a misinterpretation of the data frame DATA 202 due to the existing technology.

도 3a 및 도 3b 는 수신된 데이터 프레임에 대한 잘못된 해석의 일예시도로서, 데이터 프레임(DATA, 202)은 정확히 수신되었으나 SOD(201)의 초기 데이터(data) 분실로 인해 생기는 잘못된 해석을 보여주고 있다.3A and 3B show an example of a misinterpretation of the received data frame, which shows a misinterpretation caused by the loss of the initial data of the SOD 201 although the data frame DATA 202 is correctly received. have.

도 3a 는 송신측에서 전송하는 송신프레임을 예시하고 있고, 도 3b 는 수신측에서 수신한 수신프레임을 예시하고 있다. 여기서, 포스트 프리엠블(PostPreamble)은 프리엠블(preamble)이 SOD(201)에 속해 프레임의 시작을 알리는 데 반하여 EOD(203)에 속하여 프레임의 종료를 알리게 된다.3A illustrates a transmission frame transmitted from a transmitting side, and FIG. 3B illustrates a receiving frame received from a receiving side. Here, the PostPreamble belongs to the EOD 203 to inform the end of the frame, whereas the preamble informs the start of the frame belonging to the SOD 201.

첫번째와 두번째 코드를 분실하면 첫 프리엠블 코드를 3번째부터 탐지하게 되어 데이터 프레임(DATA, 202)을 프리엠블 코드로 인식하게 될 수 있다. 그러면 데이터 프레임(DATA, 202)의 코드 2개를 손실을 보게 된다. 또한, 비트 오류 발생수가 미리 지정된 N개 이하보다 커질 수밖에 없다.If the first and second codes are lost, the first preamble code is detected from the third, and the data frame DATA 202 may be recognized as the preamble code. Then, two codes of the data frame DATA 202 are lost. In addition, the number of bit error occurrences is inevitably larger than N or less predetermined.

또다른 종래의 기술(IBM Publication number 0 505 657 A1 Preamble recognition and synchronization detection in partial-response systems)은 신호처리에 초점을 맞춘 기술로서 이 기술은 수신되는 비트를 최우판정법(Maximum-likelihood)에 의해 오류 비트를 복호하는 기술이다. 이 기술은 수신되는 오류 비트들을 확률적으로 가능성이 있는 비트로 복호하는 방법이다.Another conventional technique (IBM Publication number 0 505 657 A1 Preamble recognition and synchronization detection in partial-response systems) is a technique focused on signal processing, in which an error received by the maximum-likelihood It is a technique for decoding bits. This technique is a method of decoding the received error bits into probability bits that are probable.

그러나, 이 기술의 문제점은 특정한 하드웨어 구현이 이루어져야 하고, 미리 데이터 전송로의 신호 수신 확률을 알고 있어야 한다. 이것은 데이터 전송로의 길이가 장거리이며 무선일 경우 신호 수신 확률은 매 초마다 달라지므로 유선이거나 단거리 통신에서 가능하며 확률을 넘어서는 오류 비트들이 발생하면 취약하다. 이러한 확률을 넘어서는 비트들을 복호하면 다음에 들어오는 비트도 오류 비트로 인식하게 된다.However, the problem with this technique is that a specific hardware implementation must be made and the signal reception probability of the data transmission path must be known in advance. This is possible in wired or short-distance communication because the signal reception probability varies every second when the data path is long and wireless, and is vulnerable when error bits exceed the probability. Decoding the bits beyond this probability also recognizes the next bit as an error bit.

버스트 에러(burst error)로 인해 잘못된 비트들을 그대로 복호하여 이 기술에 따라 처리하면 정확한 프리엠블을 탐지하지 못하게 된다. 같은 이유로 프리엠블 종료플레그(end-of-preamble-flag)를 탐지하지 못하면 데이터 프레임(DATA, 202)의 시작점을 찾지 못하게 된다.Burst errors can cause the wrong bits to be decoded and processed according to this technique, preventing accurate preambles from being detected. For the same reason, if the end-of-preamble-flag is not detected, the start point of the data frame DATA 202 cannot be found.

도 4a 및 도 4b 는 수신된 데이터 프레임에 대한 잘못된 해석의 다른 예시도로서, 데이터 프레임(DATA, 202)은 정확히 수신되었으나, 프리엠블 프레임의 중간 부분에 데이터(data)의 오류가 생기는 경우이다.4A and 4B illustrate another example of a misinterpretation of the received data frame, in which the data frame DATA 202 is correctly received but an error occurs in the middle of the preamble frame.

이 경우에 수신측에서는 두 가지 해석이 가능한데, 첫째로 첫 프리엠블 코드를 탐지하면 5번째 코드부터 데이터 프레임(DATA, 202)으로 인식하게 되어 6개의 불필요한 코드를 데이터 프레임(DATA, 202)으로 처리한다. 그렇지 않고 8번째 프리엠블 코드를 탐지하면 데이터 프레임(DATA, 202)의 코드를 프리엠블 코드로 인식하게 될 수 있어 데이터 프레임(DATA, 202)의 코드 7개를 손실하게 된다.In this case, two interpretations are possible on the receiving side. First, when the first preamble code is detected, the fifth code is recognized as the data frame (DATA, 202), and six unnecessary codes are processed as the data frame (DATA, 202). . Otherwise, if the eighth preamble code is detected, the code of the data frame DATA 202 may be recognized as a preamble code, thereby losing seven codes of the data frame DATA 202.

도 5a 및 도 5b 는 수신된 정보데이터 프레임에 대한 잘못된 해석의 또 다른 예시도이다.5A and 5B are another exemplary diagram of a misinterpretation of the received information data frame.

데이터 프레임(DATA, 202)은 정확히 수신되었으나, 프리엠블 프레임의 마지막 부분에 데이터(data)의 오류가 생기는 경우이다.The data frames DATA and 202 are correctly received, but an error of data occurs at the end of the preamble frame.

첫 프리엠블 코드를 탐지하고, 7번째 코드부터 데이터 프레임(DATA, 202) 코드로 인식하게 되어 3개의 불필요한 코드를 데이터 프레임(DATA)의 데이터로 처리하게 된다.The first preamble code is detected, and the seventh code is recognized as a data frame (DATA) code so that three unnecessary codes are processed as data of the data frame (DATA).

상기한 바와 같이, 데이터 통신 시에 기존에 사용되던 방법만으로는 무선 통신상의 여러 오류 원인(신호의 찌그러짐, 감쇄 손실, 대기 자계의 영향)들에 의해 발생되는 에러로 인한 SOD(Start Of Data) 프레임의 분실 및 훼손으로 정확한 정보데이터 프레임(DATA)을 수신하지 못하게 되는 문제점이 있었다.As described above, the conventional method used in data communication alone is used to determine the SOD (Start Of Data) frame due to an error caused by various error sources (signal distortion, attenuation loss, influence of atmospheric magnetic field) in wireless communication. There is a problem that can not receive the correct information data frame (DATA) due to loss and corruption.

본 발명은, 상기한 바와 같은 문제점을 해결하기 위하여 안출된 것으로, 데이터 통신 시스템에서 데이터 송수신 시 시퀀스 코드를 통하여 데이터 프레임의 시작점을 찾기 위한 데이터 프레임의 시작점 검출 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 그 목적이 있다.SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and a method for detecting a starting point of a data frame for finding a starting point of a data frame through a sequence code during data transmission and reception in a data communication system, and a program for realizing the method. Its purpose is to provide a computer-readable recording medium having recorded thereon.

도 1 은 일반적인 데이터 통신 시스템의 구성예시도.1 is an exemplary configuration diagram of a general data communication system.

도 2 는 일반적인 데이터 통신용 프로토콜의 일예시도.2 is an exemplary diagram of a general data communication protocol.

도 3a 및 도 3b 는 수신된 데이터 프레임에 대한 잘못된 해석의 일예시도.3A and 3B illustrate one example of incorrect interpretation of a received data frame.

도 4a 및 도 4b 는 수신된 데이터 프레임에 대한 잘못된 해석의 다른 예시도.4A and 4B illustrate another example of incorrect interpretation of a received data frame.

도 5a 및 도 5b 는 수신된 정보데이터 프레임에 대한 잘못된 해석의 또 다른 예시도.5A and 5B illustrate another example of a misinterpretation of received information data frames.

도 6a 및 도 6b 는 본 발명이 적용되는 데이터 송수신 프로토콜의 일예시도.6A and 6B are exemplary views illustrating a data transmission / reception protocol to which the present invention is applied.

도 7 은 본 발명이 적용되는 프리엠블의 일예시도.7 is an exemplary view of a preamble to which the present invention is applied.

도 8 은 본 발명에 따른 시퀀스 코드를 통한 데이터 프레임의 시작을 찾는 방법에 대한 일실시예 흐름도.8 is a flow diagram of one embodiment of a method for finding the beginning of a data frame through a sequence code in accordance with the present invention.

도 9 는 본 발명을 이용하여 데이터 전송로의 상태가 좋은 경우의 데이터 시작을 찾는 일예시도.Fig. 9 is an exemplary view of finding data start when the data transmission path is in good condition using the present invention.

도 10a 및 도 10b 는 본 발명을 이용하여 프리엠블 초기 데이터의 오류가 생기는 경우의 데이터 시작을 찾는 일예시도.10A and 10B illustrate an example of finding a data start when an error of preamble initial data occurs using the present invention.

도 11a 및 도 11b 는 본 발명을 이용하여 프리엠블 도중에 오류가 생기는 경우의 데이터 시작을 찾는 일예시도.11A and 11B illustrate an example of finding data start when an error occurs during preamble using the present invention.

도 12a 및 도 12b 는 본 발명을 이용하여 프리엠블 마지막에 오류가 생기는 경우의 데이터 시작을 찾는 일예시도.12A and 12B illustrate an example of finding data start when an error occurs at the end of a preamble using the present invention.

도 13a 및 도 13b 는 본 발명을 이용하여 프리엠블 프레임의 첫 동기를 하드웨어적으로 탐지하지 못한 경우의 데이터 시작을 찾는 일예시도.13A and 13B illustrate an example of finding a data start when a first synchronization of a preamble frame is not detected in hardware using the present invention.

*도면의 주요 부분에 대한 부호의 설명* Explanation of symbols for the main parts of the drawings

11 : 송신측 데이터 단말장치 12 : 송신측 데이터 회선 종단장치11 transmitter side data terminal apparatus 12 transmitter side data line terminator

13 : 수신측 데이터 회선 종단장치 14 : 수신측 데이터 단말장비13: Receiving side data line termination device 14: Receiving side data terminal equipment

상기 목적을 달성하기 위한 본 발명은, 데이터 통신 시스템에 적용되는 데이터 프레임(DATA)의 시작점 검출 방법에 있어서, 상기 데이터 통신 시스템에서 데이터 시작 프레임(SOD : Start of Data)을 예측할 수 있는 순차적인 시퀀스 코드들로 이루어지도록 하는 제 1 단계; 데이터 코드를 수신한 수신측 시스템은 수신된 데이터 코드의 시퀀스를 추적하여 데이터 시작 프레임의 일부를 확인하는 제 2 단계; 및 상기 수신측 시스템에서 데이터 코드가 수신될 때마다 카운트하여 상기 데이터 시작 프레임의 최종 데이터 코드에 해당하는 값을 확인한 후에 수신되는 데이터 코드를 데이터 프레임으로 판단하는 제 3 단계를 포함하여 이루어진 것을 특징으로 한다.In order to achieve the above object, the present invention provides a method of detecting a starting point of a data frame (DATA) applied to a data communication system, the sequential sequence capable of predicting a start of data (SOD) in the data communication system. A first step of consisting of codes; The receiving side system receiving the data code further comprises: a second step of identifying a portion of the data start frame by tracking the received sequence of data codes; And a third step of counting each time a data code is received in the receiving side system to determine a value corresponding to a final data code of the data start frame, and then determining the received data code as a data frame. do.

또한, 본 발명은, 대용량 프로세서를 구비한 데이터 통신 시스템에, 상기 데이터 통신 시스템에서 데이터 시작 프레임(SOD : Start of Data)을 예측할 수 있는 순차적인 시퀀스 코드들로 이루어지도록 하는 제 1 기능; 데이터 코드를 수신한 수신측 시스템은 수신된 데이터 코드의 시퀀스를 추적하여 데이터 시작 프레임의 일부를 확인하는 제 2 기능; 및 상기 수신측 시스템에서 데이터 코드가 수신될 때마다 카운트하여 상기 데이터 시작 프레임의 최종 데이터 코드에 해당하는 값을 확인한 후에 수신되는 데이터 코드를 데이터 프레임으로 판단하는 제 3 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.The present invention also provides a data communication system having a large capacity processor, comprising: a first function of sequential sequence codes for predicting a start of data (SOD) in the data communication system; A receiving side system receiving the data code includes: a second function of tracking a sequence of received data codes to identify a portion of a data start frame; And a program for realizing a third function of counting each time a data code is received by the receiving side system, checking a value corresponding to the last data code of the data start frame, and then determining the received data code as a data frame. Provide a computer readable recording medium.

기존의 데이터 시작 프레임(SOD)의 탐지 기술이 단순한 SOD의 코드를 찾는데 초점이 맞추어진 기술이어서 데이터 프레임(DATA)이 정확히 수신되어도 돌발적 잡음(Impulse noise)인 버스트 에러(burst error)로 인하여 SOD의 코드가 분실 또는 손실이 있으면 데이터 프레임(DATA)을 올바르게 수신하지 못한다는 단점이 있었다.그러나, 본 발명은 SOD를 시퀀스 코드(Sequence Code)로 만들어 이를 이용 및 조정하여 버스트 에러(burst error)로 인한 SOD 코드의 분실 및 손실이 있어도 시퀀스 코드(Sequence Code)의 일부분만으로도 SOD의 끝을 찾아내어 데이터 프레임(DATA)의 시작을 정확히 탐지하는 기술이다.The detection technology of the existing data start frame (SOD) is focused on finding the code of the simple SOD, so even if the data frame (DATA) is correctly received, the burst noise (impulse noise) of the SOD is caused by the sudden noise. If the code is lost or lost, the data frame may not be correctly received. However, the present invention uses a SOD as a sequence code, and uses and adjusts the SOD to cause a burst error. Even if there is a loss or loss of the SOD code, only a portion of the sequence code is used to find the end of the SOD and accurately detect the beginning of the data frame (DATA).

상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명한다.The above objects, features and advantages will become more apparent from the following detailed description taken in conjunction with the accompanying drawings. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 6a 및 도 6b 는 본 발명이 적용되는 데이터 송수신 프로토콜의 일예시도이다.6A and 6B are exemplary views illustrating a data transmission / reception protocol to which the present invention is applied.

도 6a 의 프로토콜(Protocol)은 부가정보가 필요없는 통신에서 사용되어 질 때의 일반적인 프로토콜의 예이고 도 6b 는 부가정보가 필요한 통신에서 구성되어 지는 프로토콜(Protocol)이다. 도 6a 와 도 6b 는 프로토콜(Protocol)에서 데이터 프레임(DATA)의 시작을 찾는 방법은 프리엠블(Preamble)을 탐지하는 것과 구분문자(Delimiter)를 탐지하는 것이 동일하므로 여기서는 도 6a의 프로토콜을 사용한 상세한 설명을 하겠다.The protocol of FIG. 6A is an example of a general protocol when used in a communication requiring no additional information, and FIG. 6B is a protocol configured in a communication requiring additional information. 6A and 6B show that the method of finding the start of the data frame DATA in the protocol is the same as detecting the preamble and detecting the delimiter. I will explain.

일반적으로 프리엠블(Preamble)은 전송매체에 연결되어 있는 수신측 모든 회로를 안정한 상태로 만들며 하드웨어의 전송 클럭과 비트 동기화를 맞추기 위하여 사용되고 소프트웨어적으로는 데이터 프레임(DATA)의 시작점을 검출한다.In general, a preamble is used to make all receiving circuits connected to a transmission medium in a stable state and to synchronize bit synchronization with a hardware transmission clock. Software detects a start point of a data frame (DATA).

본 발명에서는 소프트웨어적으로 데이터 프레임(DATA)의 시작점을 검출하는 것에 초점을 맞추고 있다. 즉 송신시 데이터 프레임(DATA)의 데이터 코드(DATACode)를 수신하기 전에 프리엠블(Preamble)에서 버스트 에러(Burst error)로 프리엠블 코드의 일부가 손실 또는 훼손되고, 데이터 프레임(DATA)의 코드에는 손실 또는 훼손이 없더라도 프리엠블 코드의 손실 또는 훼손으로 데이터 프레임(DATA)의 시작점을 검출하지 못하면 수신측에서 잘못된 데이터를 데이터 프레임(DATA)의 내용으로 알고 수신하게 된다. 본 발명에서는 이러한 오류로 인하여 실질적 정보를 잘못 판단하는 것을 방지하는 기술이다. 따라서 하드웨어적으로 추가되는 기술이 없고 일반적인 데이터 통신 시스템의 구성으로 충분히 구현이 가능하다.The present invention focuses on detecting the starting point of the data frame DATA in software. In other words, a part of the preamble code is lost or corrupted due to a burst error from the preamble before the data code DATACode of the data frame DATA is transmitted. Even if there is no loss or corruption, if the start point of the data frame DATA is not detected due to the loss or corruption of the preamble code, the receiver recognizes and receives wrong data as the content of the data frame DATA. In the present invention, a technique for preventing a mistake of actual information due to such an error is prevented. Therefore, there is no technology added in hardware, and a general data communication system can be sufficiently implemented.

도 7 은 본 발명이 적용되는 프리엠블의 일예시도이다.7 is an exemplary view of a preamble to which the present invention is applied.

프리엠블은 각각의 프리엠블 코드(Preamble Code, 73)로 이루어지는데, 프리엠블 코드(Preamble Code, 73)는 상위 니블(Nibble)(71)과 하위 니블(72)로 이루어진다. 프리엠블 코드(Preamble Code, 73)는 1바이트(Byte)로 되어있고, 상위 니블(71)과 하위 니블(72)은 각 4비트로 이루어진다. 상위 니블(71)은 4비트의 특정값으로 이루어지고, 하위 니블(72)은 순차적인 인덱스(Index) 값으로 정의된다.The preamble consists of respective preamble codes 73, and the preamble code 73 consists of an upper nibble 71 and a lower nibble 72. The preamble code 73 consists of 1 byte, and the upper nibble 71 and the lower nibble 72 each consist of 4 bits. The upper nibble 71 consists of a specific value of 4 bits, and the lower nibble 72 is defined as a sequential index value.

본 발명에서 예로 드는 프로토콜(Protocol)에서 프리엠블(Preamble)의 구성은 5개 이상의 코드(code)로 구성된다. 프리엠블 코드(Preamble Code)의 개수는 데이터 전송로의 채널 상태를 고려하여 정할 수 있다.In the protocol exemplified in the present invention, the configuration of the preamble consists of five or more codes. The number of preamble codes may be determined in consideration of the channel state of the data transmission path.

프리엠블 코드(Preamble Code, 73)의 상위 니블(71)은 α로 일정하게 구성되며, 하위 니블(72)은 β+i (1≤i ≤ψ)의 시퀀스로 구성된다.The upper nibble 71 of the preamble code 73 is constantly composed of α, and the lower nibble 72 is composed of a sequence of β + i (1 ≦ i ≦ ψ).

송신측 DTE(11)에서 도 7 와 같이 프리엠블 코드(Preamble Code)와 데이터 프레임(DATA)을 만든 후 송신측 DCE(12)를 통해 데이터 전송로를 거쳐 수신측DCE(13)를 통해 수신측의 DTE(14)에서 수신하게 된다.In the transmitting DTE 11, a preamble code and a data frame DATA are generated as shown in FIG. 7, and then the receiving side is transmitted through the receiving side DCE 13 through the data transmission path through the transmitting DCE 12. Will be received at the DTE 14.

도 8 은 본 발명에 따른 시퀀스 코드를 통한 데이터 프레임의 시작점 검출 방법에 대한 일실시예 흐름도이다.8 is a flowchart illustrating a method of detecting a starting point of a data frame through a sequence code according to the present invention.

본 발명을 설명하면 다음과 같다. 우선 수신측 DTE(14)에서는 송신측 DTE(11)에서 송신한 1바이트의 데이터 코드(data code)를 수신한다(801). 수신된 데이터 코드(data code)가 프리엠블(Preamble)에 포함되는지를 확인한다. 이는 우선 수신된 데이터 코드(data code)의 상위 니블(nibble)(데이터 코드의 상위 4bit)이 α와 같고, ω가 δ와 같은지를 조사한다(802). 여기서, α는 프리엠블 코드(73)의 상위 니블(71)이 가지는 일정한 값을 말하며, ω는 정상적인 프리엠블 코드(73)가 수신되었을 때 카운트되는 값으로 초기값은 0이다.When explaining the present invention. First, the receiving side DTE 14 receives a 1-byte data code transmitted from the transmitting side DTE 11 (801). Check whether the received data code is included in the preamble. This first checks if the upper nibble (upper 4 bits of the data code) of the received data code is equal to α and ω is equal to δ (802). Here, α denotes a constant value of the upper nibble 71 of the preamble code 73, and ω is a value that is counted when the normal preamble code 73 is received and the initial value is 0.

δ는 임의의 값으로 ω값을 고정시키기 위해 사용된다. 단, 프리엠블 코드를 수신하면서 ω값으로 사용될 수 있는 값은 δ값으로 쓰일 수 없다. 즉, ω값이 0에서 시작하여 8까지 변할 수 있는데, δ값이 6이라면 ω는 7이나 8이 될 수 없을 뿐만 아니라 데이터 프레임(DATA)의 시작을 찾는 것이 올바르게 진행되지 못한다.δ is used to fix the value of ω to any value. However, a value that can be used as the ω value while receiving the preamble code cannot be used as the δ value. That is, the value of ω may vary from 0 to 8, and if the value of δ is 6, ω may not be 7 or 8, and finding the start of the data frame DATA may not proceed correctly.

수신된 데이터 코드(data code)의 상위 니블(71)이 α와 같고, ω는 δ가 아닌지를 조사한 결과, 상위 니블(71)이 α와 같고, ω는 δ가 아니면를 1증가시킨다(803). 여기서,는 수신 코드의 인덱스를 조정하기 위한 값으로, 프리엠블 코드가 취해야 할 값을 나타내며, 그 초기값은 프리엠블의 상위 니블과 하위 니블을 나타내는 αβ로 1바이트(Byte)를 이룬다.If the upper nibble 71 of the received data code is equal to α and ω is not δ, then the upper nibble 71 is equal to α and ω is not δ Increase 1 by 803. here, Is a value for adjusting the index of the reception code, and indicates a value to be taken by the preamble code, and its initial value is 1 byte with αβ indicating the upper and lower nibbles of the preamble.

프리엠블 시퀀스 코드(Preamble Sequence Code)에 포함되어지는 수신 데이터 코드(data code)가 정확한 인덱스(index)인지를 판단하기 위해,와 수신 데이터 코드가 같은지를 확인한다(804). 확인한 결과 같으면 ω를 1증가시키고(805), 같지 않으면 수신 데이터 코드(code)를에 입력하여 인덱스(index)를 조정한다(806).In order to determine whether a received data code included in a preamble sequence code is an accurate index, It is checked whether and the received data code is the same (804). If the result is equal, ω is increased by 1 (805), and if it is not equal, the received data code is The index is adjusted by inputting in step 806.

그 다음으로 φ를 사용할지 판단하기 위해, ω가 ε과 같은지를 조사한다(807). 조사 결과, ω와 ε의 값이 같으면 φ에를 대입하고 ω에 δ를 대입하고(808), 같지 않으면 다음 과정으로 넘어간다.Next, to determine whether to use φ, it is checked whether ω is equal to ε (807). If the values of ω and ε are the same, then φ Then substitute δ for ω (808), and if not equal, proceed to the next step.

또한, 수신된 데이터 코드(data code)의 상위 니블(nibble)이 α와 같고, ω가 δ와 같은지를 조사한 결과, 상위 니블(nibble)이 α와 같지 않거나, ω가 δ와 같으면, ω가 ε과 같은지를 조사하는 과정(807)부터 수행한다.Further, as a result of checking whether the upper nibble of the received data code is equal to α and ω is equal to δ, if the upper nibble is not equal to α or ω is equal to δ, then ω is ε In operation 807, the process is examined.

여기서, ε은 예측된 값과 실제 도착한 값이 같아 정상적으로 도달한 프리엠블 코드의 개수에 대해 미리 정한 값으로 데이터 전송로의 잡음 발생확률에 따라 정할 수 있으며, φ는 프리엠블 코드가 ε개수만큼 정상 도달한 후 데이터 코드(data code)가 도달하면 증가되는 값이다.Here, ε is a predetermined value for the number of preamble codes that arrive at the same value as the predicted value and the actual arrival value, and can be determined according to the probability of occurrence of noise in the data transmission path, and φ is the normal number of ε preamble codes. This value is incremented when the data code arrives after it has been reached.

φ로 프리엠블 시퀀스 코드(Preamble Sequence index)를 조정하기 위해, ω값이 δ와 일치하는지를 검사한다(809). 검사 결과, ω값이 δ와 일치하면 φ를 1증가시킨다(810). 검사 결과, ω값이 δ와 일치하지 않으면 다음 과정으로 넘어간다.In order to adjust the preamble sequence code with φ, it is checked whether the ω value matches δ (809). As a result of the test, if the value of ω matches δ, φ is increased by 1 (810). If the ω value does not match δ, go to the next step.

마지막으로 프리엠블(Preamble)의 끝점을 탐지하기 위해, φ가 αβ+ψ+1과같은지 비교하여(811) 프리엠블(Preamble)의 끝점을 찾는다. 여기서, ψ는 프리엠블 코드의 개수를 나타낸다.Finally, to detect the end point of the preamble, the end point of the preamble is found by comparing whether φ equals αβ + ψ + 1 (811). Here, ψ represents the number of preamble codes.

φ가 αβ+ψ+1과 같은지 비교한 결과, φ가 αβ+ψ+1과 같은 값이 아니면 다음의 데이터 코드(data code)에 대해 수신하는 과정(801)부터 반복 수행한다.As a result of comparing whether φ is equal to αβ + ψ + 1, if φ is not equal to αβ + ψ + 1, the process is repeatedly performed from step 801 of receiving the next data code.

φ가 αβ+ψ+1과 같은지 비교한 결과, φ가 αβ+ψ+1과 같은 값이면 데이터 프레임(DATA)의 시작점을 검출한 것으로 판단되어 이후 데이터 프레임(DATA)의 데이터 코드(data code)를 수신하게 된다(812).As a result of comparing whether φ is equal to αβ + ψ + 1, if φ is equal to αβ + ψ + 1, it is determined that the starting point of the data frame DATA is detected, and then the data code of the data frame DATA is It will receive (812).

전송매체의 채널 상태에 따라 ε을 변경할 수 있으며 다음의 예는 ε을 4로 정의하여 일시적인 버스트 에러(burst error)로 인하여 프리엠블 코드(Preamble Code)가 분실되거나 손실되었을 때 본 발명에 따라 데이터 프레임(DATA)의 정확한 시작점을 탐지하여 데이터를 수신하는 것을 설명한다.Ε can be changed according to the channel state of the transmission medium.In the following example, ε is defined as 4 when the preamble code is lost or lost due to a transient burst error. It explains the detection of the correct starting point of (DATA) and the reception of data.

도 9 는 본 발명을 이용하여 데이터 전송로의 상태가 좋은 경우에 데이터 프레임(DATA)의 시작점을 검출하는 일예시도이다.9 illustrates an example of detecting a starting point of a data frame DATA when the data transmission path is in good condition according to the present invention.

여기서, δ값은 ω의 카운트 범위 밖에 속하는 임의의 값이므로 -1로 하고, ω의 초기값은 0이다.Here, the value of δ is an arbitrary value that falls outside the count range of ω, and is -1, and the initial value of ω is 0.

도 9 의 첫번째 데이터 코드인 'αβ+1'이 수신된다(801).A first data code 'αβ + 1' of FIG. 9 is received (801).

수신된 'αβ+1'의 상위 니블(α)과 수신측에서 예측하고 있는 프리엠블 코드(Preamble code)의 상위 니블(α)이 같고, ω의 값인 '0'이 δ의 값인 '-1'과 같지 않으므로값인 'αβ'를 'αβ+1'로 증가시킨다(802, 803).The upper nibble α of the received 'αβ + 1' and the upper nibble α of the preamble code predicted by the receiving side are the same, and '0', the value of ω, is '-1', which is the value of δ. Is not equal to The value 'αβ' is increased to 'αβ + 1' (802 and 803).

값인 'αβ+1'과 수신 데이터 코드('αβ+1')가 일치하므로 ω값을 '0'에서 '1'로 증가시킨다(804, 805). Since the value 'αβ + 1' and the received data code 'αβ + 1' coincide, the ω value is increased from '0' to '1' (804 and 805).

현재 '1'인 ω값과 ε값인 '4'가 일치할 때까지 상기한 801 과정부터 805 과정이 반복 수행되고, ω값과 ε값이 일치되어 질 때의 값은 'αβ+4', 수신 데이터 코드도 'αβ+4' 그리고, ω의 값은 '4'가 된다. 이때 φ에의 값을 대입하고, ω에 δ의 값인 '-1'을 대입한다. 그러면 φ는 'αβ+4'가 되고 ω는 '-1'이 된다(807, 808).When steps 801 to 805 are repeated until the current ω value of '1' and '4' of ε coincide, and the ω value and the ε value coincide. Is a value of alpha beta + 4, a received data code is alpha beta + 4, and a value of o is 4. At this time Is substituted for ω and '-1' is substituted for ω. Then φ becomes 'αβ + 4' and ω becomes '-1' (807, 808).

이후 수신된 데이터 코드에 대해서는 ω와 δ가 '-1'로 일치하므로 수신된 데이터 코드에 상관없이 φ를 증가시킨다(809, 810).Since ω and δ coincide with '-1' for the received data code, φ is increased regardless of the received data code (809 and 810).

φ값이 마지막 시퀀스 프리엠블 코드(Sequence Preamble Code)값인 'αβ+ψ'에 1을 더한 값과 일치할 때까지 전체 과정을 반복 수행하면서 φ값을 증가시키게 된다.The value of φ is increased while repeating the entire process until the value of φ coincides with a value of 'αβ + ψ', which is the last sequence preamble code value.

마지막 시퀀스 프리엠블 코드(Sequence Preamble Code값인 'αβ+ψ'가 수신되어지면 φ값은 'αβ+ψ+1'이 증가되고, φ와 'αβ+ψ+1'이 일치하므로 다음 수신되는 데이터 코드(data code)들을 데이터 프레임(DATA)의 데이터로 처리한다.When the last sequence preamble code (αβ + ψ) is received, the value of φ is increased by 'αβ + ψ + 1', and φ and 'αβ + ψ + 1' coincide with the next received data code. (data codes) are treated as data of the data frame (DATA).

도 10a 및 도 10b 는 본 발명을 이용하여 프리엠블 초기 데이터의 오류가 생기는 경우의 데이터 시작점을 검출하는 일예시도이다.10A and 10B illustrate an example of detecting a data start point when an error of preamble initial data occurs using the present invention.

도 10a 는 송신 데이터 프레임을 나타내고, 도 10b 는 수신 데이터 프레임을 나타내며, α = 7, β = 0, ψ = A로 프리엠블 코드를 정의한다.FIG. 10A shows a transmission data frame, FIG. 10B shows a reception data frame, and defines a preamble code with α = 7, β = 0, ψ = A.

'0x34'가 수신되면 만족하는 과정이 없으므로, 만족하는 코드가 나올때까지다음 코드인 '0x56', '0x45'를 차례로 수신한 후, 수신 데이터 코드(data code)의 상위 니블(nibble)이 0x7이 되는 '0x74' 코드를 수신한 후의 초기값인 '0x70'을 '0x71'로 증가시킨다(801, 802, 803).If '0x34' is received, there is no satisfying process, and after receiving the next code '0x56' and '0x45' in order until the satisfying code comes out, the upper nibble of the received data code is 0x7. After receiving the '0x74' code The initial value of '0x70' is increased to '0x71' (801, 802, and 803).

수신측에서 예상하고 있는 수신 프리엠블 코드인값 '0x71'과 실제 수신된 데이터 코드 '0x74'가 일치하지 않으므로에 수신 데이터 코드 '0x74'를 대입한다(804, 806).The receiving preamble code Since the value '0x71' does not match the actual received data code '0x74' The received data code '0x74' is substituted into 804 and 806.

807, 809, 811의 판단 과정들을 만족하지 않으므로 그 다음으로 데이터 코드 '0x75'를 수신한다(801).Since the determination processes of 807, 809, and 811 are not satisfied, a data code '0x75' is next received (801).

수신 데이터 코드 '0x75'의 상위 니블값과 수신측에서 예상하고 있는 상위 니블값(α)이 '7'로 같으므로값인 '0x74'를 '0x75'로 증가시킨다(802, 803).Since the upper nibble value of the received data code '0x75' and the upper nibble value α expected by the receiving side are equal to '7', The value '0x74' is increased to '0x75' (802 and 803).

값 '0x75'와 수신 코드 '0x75'가 일치하므로 ω값을 '0'에서 '1'로 증가시킨다(804, 805). Since the value '0x75' and the reception code '0x75' coincide with each other, the ω value is increased from '0' to '1' (804 and 805).

수신 데이터 코드 '0x75'도 807, 809, 811의 판단 과정들을 만족하지 않으므로 다시 다음 데이터 코드를 수신하고 ω가 ε과 같은 값을 가지는지를 판단하는 과정(807)이 만족할 때까지 반복 수행한다.Since the received data code '0x75' does not satisfy the determination processes of 807, 809, and 811, the next data code is received again and repeatedly performed until the process 807 of determining whether ω has a value equal to ε is satisfied.

ω의 값이 ε값과 같아질 때까지의 수신 데이터 코드,값 및 ω값들을 표로 나타내면 다음의 [표 1]과 같다.received data code until the value of ω equals the value of ε, Values and ω values are shown in Table 1 below.

수신 데이터 코드Receiving data code 0x750x75 0x760x76 0x770x77 0x750x75 0x760x76 0x770x77 ωω 22 33 44

[표 1]에서와 같이 수신 데이터 코드가 '0x77',값이 '0x77', ω값이 '4'가 되면 초기에 주어진 ε값은 '4'이므로, ω가 ε과 같은 값을 가지는지를 판단하는 과정을 만족하게 되어 φ값으로 '0x77'을 대입하고, ω에 δ를 대입한다(807, 808).As shown in [Table 1], the received data code is '0x77', When the value is '0x77' and the ω value is '4', the initial value of ε is '4'. Therefore, the process of judging whether ω has the same value as ε is satisfied. Substitute '0x77' as the value of φ. is substituted for ω (807, 808).

ω와 δ가 일치하는지를 확인한 결과, ω와 δ가 일치하므로 φ를 증가시킨다(809, 810).As a result of confirming that ω and δ match, φ is increased because ω and δ match (809, 810).

데이터 코드가 수신됨에 따라 카운트되는 φ의 값과 수신측에서 알고 있는 프리엠블 코드의 마지막 값인 '0x7A'에 1을 더한 값이 일치할 때까지 수신 데이터 코드에 대한 알고리즘을 반복 수행되어지는데 이때에는 802, 804, 807 과정의 판단 조건들을 만족하지 않으므로 φ만 증가된다.As the data code is received, the algorithm for the received data code is repeatedly executed until the value of φ counted as the data code is received and '0x7A' which is the last value of the preamble code known to the receiver plus 1 are matched. Only φ is increased because the determination conditions of steps 804, 807 are not satisfied.

이에 대해 표로 나타내면 다음의 [표 2]와 같다.This is shown in the following table [Table 2].

수신 데이터 코드Receiving data code 0x780x78 0x790x79 0x7A0x7A φφ 0x790x79 0x7A0x7A 0x7B0x7B

φ값인 '0x7B'와 마지막 시퀀스 프리엠블 코드(Sequence Preamble Code)인'0x7A'에 1을 더한 값이 일치하게 되어 다음 수신되는 데이터 코드들을 데이터 프레임(DATA)의 데이터로 처리한다.A value of 0x7B and a final sequence preamble code '0x7A' plus 1 are matched to process the next received data codes as data of the data frame DATA.

도 11a 및 도 11b 는 본 발명을 이용하여 프리엠블 도중에 오류가 생기는 경우의 데이터 시작점을 검출하는 일예시도이다.11A and 11B illustrate an example of detecting a data start point when an error occurs during preamble using the present invention.

도 11a 는 송신 데이터 프레임을 나타내고, 도 11b 는 수신 데이터 프레임을 나타내며, α = 7, β = 0, ψ = A로 프리엠블 코드를 정의한다.FIG. 11A shows a transmission data frame, FIG. 11B shows a reception data frame, and defines a preamble code with α = 7, β = 0, ψ = A. FIG.

수신측에서 '0x71'이 수신되고 각 과정을 거쳐 아래의 [표 3]과 같이 ω와의 값이 변하면서 오류 데이터 코드인 '0x71'을 수신하게 되면 다시를 조정하게 된다.'0x71' is received at the receiver and after each process, ω and When the value of is changed and an error data code '0x71' is received, Will be adjusted.

수신 데이터 코드Receiving data code 0x710x71 0x720x72 0x730x73 0x710x71 (803과정) (803 course) 0x710x71 0x720x72 0x730x73 0x740x74 ω(805과정)(806과정)ω (805 course) (806 course) 1One 22 33 0x710x71

5번째 수신 코드 '0x34', 6번째 수신 코드 '0x21'은 본 발명의 알고리즘에서 처리되어 값의 변화를 주지 않고 패스되므로, ω와의 값은 그대로이다.The fifth reception code '0x34' and the sixth reception code '0x21' are processed in the algorithm of the present invention and are passed without changing the value. The value of is as it is.

7번째 수신 코드 '0x77', 8번째 수신 코드 '0x78'을 수신하면 다음의 [표 4]와 같이 ω와는 변하고, 이것은 ω가 ε과 같은 값을 가지는지를 판단하는 과정(807)을 만족시키게 된다.When the 7th reception code '0x77' and the 8th reception code '0x78' are received, ω and Is changed, which satisfies the process 807 of determining whether ω has a value equal to ε.

수신 데이터 코드Receiving data code 0x770x77 0x780x78 (803과정) (803 course) 0x720x72 0x780x78 ω(805과정)(806과정)ω (805 course) (806 course) -0x77-0x77 4-4-

ω와 ε이 일치하므로 φ에값인 '0x78'을 대입하고, ω에 δ를 대입하게 된다.ω and ε match, so φ The value '0x78' is substituted, and δ is substituted for ω.

ω와 δ의 값이 일치하므로, 데이터가 수신되면 φ를 증가시킨다.Since the values of ω and δ coincide, φ is increased when data is received.

φ와 프리엠블 코드의 마지막 값인 '0x7A'에 1을 더한 값이 일치할 때까지 802, 804, 807 과정의 조건을 만족하지 않으므로 φ만 증가된다.Until φ and '0x7A', the last value of the preamble code, plus 1, do not satisfy the conditions of 802, 804, and 807, only φ is increased.

이를 표로 나타내면 다음과 같다.This is shown in the table below.

수신 데이터 코드Receiving data code 0x790x79 0x7A0x7A φφ 0x7A0x7A 0x7B0x7B

φ의 값인 '0x7B'와 마지막 시퀀스 프리엠블 코드(Sequence Preamble Code)인 '0x7A'에 1을 더한 값이 일치하게 되어 그 다음에 수신되는 데이터 코드들은 데이터 프레임의 데이터로 처리한다.The value of φ equals 0x7B and the last sequence preamble code '0x7A' plus 1, so that the next received data codes are processed as data in the data frame.

도 12a 및 도 12b 는 본 발명을 이용하여 프리엠블 마지막에 오류가 생기는 경우의 데이터 시작점을 검출하는 일예시도이다.12A and 12B illustrate an example of detecting a data start point when an error occurs at the end of a preamble using the present invention.

도 12a 는 송신 데이터 프레임을 나타내고, 도 12b 는 수신 데이터 프레임을 나타내며, α = 7, β = 0, ψ = A로 프리엠블 코드를 정의한다.12A shows a transmission data frame, FIG. 12B shows a reception data frame, and defines a preamble code with α = 7, β = 0, ψ = A. FIG.

데이터 코드 '0x74'를 수신할 때까지 본 알고리즘의 적용으로 아래와 같이와 ω가 변하여 ω와 ε이 일치하므로 φ에를 대입하고 ω에 δ를 대입한다. 이는 다음의 [표 6]에서 설명되고 있다.By applying this algorithm until the data code '0x74' is received, And ω change and ω and ε coincide, so φ Is substituted and δ is substituted for ω. This is illustrated in Table 6 below.

수신 데이터 코드Receiving data code 0x710x71 0x720x72 0x730x73 0x710x71 (803과정) (803 course) 0x710x71 0x720x72 0x730x73 0x710x71 ω(805과정)(806과정)ω (805 course) (806 course) 1-One- 2-2- 3-3- 4-4-

이후 수신되는 데이터 코드에 대하여는 ω와 δ가 일치하므로 φ를 증가시킨다.Since ω and δ coincide with the received data code, φ is increased.

φ와 프리엠블 코드의 마지막 값인 '0x7A'에 1을 더한 값이 일치할 때까지는 802, 804, 807 과정의 조건을 만족하지 않으므로 φ만 증가된다. 프리엠블 프레임(Preamble Frame)의 마지막에 데이터 오류가 생기는 경우는 문제가 되지 않는다.Until φ and '0x7A', which is the last value of the preamble code, add 1, the conditions of the processes 802, 804, and 807 are not satisfied, so only φ is increased. It does not matter if a data error occurs at the end of the preamble frame.

φ값인 '0x7B'와 마지막 시퀀스 프리엠블 코드(Sequence Preamble Code)에 1을 더한 값인 '0x7B'가 일치하면 그 다음에 수신되는 데이터 코드들은 데이터 프레임의 데이터로 처리한다.If the value '0x7B' and '0x7B', the value of the last sequence preamble code plus 1, match, the next received data codes are processed as data of the data frame.

도 13a 및 도 13b 는 본 발명을 이용하여 프리엠블 프레임의 첫 동기를 하드웨어적으로 탐지하지 못한 경우의 데이터 시작점을 검출하는 일예시도이다.13A and 13B illustrate an example of detecting a data start point when the first synchronization of a preamble frame is not detected in hardware using the present invention.

도 13a 는 송신 데이터 프레임을 나타내고, 도 13b 는 수신 데이터 프레임을 나타내며, α = 7, β = 0, ψ = A로 프리엠블 코드를 정의한다.FIG. 13A shows a transmission data frame, FIG. 13B shows a reception data frame, and defines a preamble code with α = 7, β = 0, and ψ = A.

하드웨어적으로 초기 동기신호를 탐지하지 못하여 송신 코드인 '0x71'에서 '0x73'까지를 수신하지 못하였더라도 도 10의 프리엠블 초기 데이터의 오류가 생기는 경우와 동일한 방식으로 데이터 프레임의 처음을 탐지할 수 있다.Even though the initial synchronization signal is not detected by hardware, even if the transmission codes '0x71' to '0x73' are not received, the beginning of the data frame can be detected in the same manner as in the case where an error of the preamble initial data of FIG. 10 occurs. have.

이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.The present invention described above is not limited to the above-described embodiments and the accompanying drawings, and various substitutions, modifications, and changes can be made in the art without departing from the technical spirit of the present invention. It will be apparent to those of ordinary knowledge.

상기한 바와 같은 본 발명은, SOD를 시퀀스 코드(Sequence Code)로 만들어 이를 이용 및 조정하여 버스트 에러(burst error)로 인한 SOD 코드의 분실 및 손실이 있어도 SOD의 끝점을 정확히 찾아내어 데이터 프레임의 시작점을 탐지할 수 있는 기술로서, 하드웨어적으로 처리가 어려운 돌발적 잡음(Impulse noise)인 버스트 에러(burst error)를 소프트웨어적으로 처리하여 수신율을 향상시킬 수 있으며, 하드웨어적 변경없이도 기존의 여러 데이터 통신장비에 적용하여 수신된 데이터 코드에서 데이터 프레임에 해당하는 부분을 찾아낼 수 있는 효과가 있다.The present invention as described above, by making the SOD as a sequence code (Sequence Code) to use and adjust it, even if there is a loss or loss of the SOD code due to the burst error (burst error) to accurately find the end point of the SOD to start the data frame As a technology that can detect the error, it can improve the reception rate by processing the burst error which is the hard noise that is difficult to process in hardware and can improve the reception rate. It can be applied to to find the part corresponding to the data frame in the received data code.

Claims (5)

데이터 통신 시스템에 적용되는 데이터 프레임(DATA)의 시작점 검출 방법에 있어서,In the method for detecting the starting point of a data frame (DATA) applied to a data communication system, 상기 데이터 통신 시스템에서 데이터 시작 프레임(SOD : Start of Data)을 예측할 수 있는 순차적인 시퀀스 코드들로 이루어지도록 하는 제 1 단계;A first step of sequential sequence codes for predicting a start of data (SOD) in the data communication system; 데이터 코드를 수신한 수신측 시스템은 수신된 데이터 코드의 시퀀스를 추적하여 데이터 시작 프레임의 일부를 확인하는 제 2 단계; 및The receiving side system receiving the data code further comprises: a second step of identifying a portion of the data start frame by tracking the received sequence of data codes; And 상기 수신측 시스템에서 데이터 코드가 수신될 때마다 카운트하여 상기 데이터 시작 프레임의 최종 데이터 코드에 해당하는 값을 확인한 후에 수신되는 데이터 코드를 데이터 프레임으로 판단하는 제 3 단계A third step of counting each time a data code is received in the receiving system to determine a value corresponding to the last data code of the data start frame, and then determining the received data code as a data frame; 를 포함하는 시퀀스 코드를 통한 데이터 프레임의 시작점 검출 방법.Starting point detection method of a data frame through a sequence code comprising a. 제 1 항에 있어서,The method of claim 1, 상기 예측할 수 있는 순차적인 시퀀스 코드는,The predictable sequential sequence code, 상기 코드의 상위 부분은 일정한 소정값으로 되어 있고, 하위 부분은 순차적으로 변화하는 값으로 되어 있어 예측할 수 있는 코드인 것을 특징으로 하는 시퀀스 코드를 통한 데이터 프레임의 시작점 검출 방법.The upper part of the code is a predetermined predetermined value, and the lower part is a code that can be predicted because the lower part is a value that changes sequentially. 제 1 항에 있어서,The method of claim 1, 상기 제 2 단계는,The second step, 상기 수신측 시스템에서 수신된 데이터 코드의 상위 부분이 규정된 소정값을 가지는지를 확인하는 제 4 단계;A fourth step of confirming whether an upper portion of the data code received at the receiving side system has a prescribed predetermined value; 상기 제 4 단계의 확인 결과, 규정된 상기 소정값을 가지지 않으면 다음의 수신 데이터 코드에 대해 상기 제 4 단계부터 반복 수행하는 제 5 단계;A fifth step of repeating from the fourth step on the next received data code if it does not have the prescribed value defined as a result of the checking in the fourth step; 상기 제 4 단계의 확인 결과, 규정된 상기 소정값을 가지면 이전에 예측된 데이터 코드를 바탕으로 수신측 시스템에서 예측된 데이터 코드와 상기 수신된 데이터 코드가 일치하는지를 판단하는 제 6 단계;A sixth step of judging whether the received data code coincides with the predicted data code in the receiving system based on the previously predicted data code as a result of the checking in the fourth step; 상기 제 6 단계의 판단 결과, 일치하지 않으면 다음에 수신될 데이터 코드의 예측값을 상기 수신 데이터 코드를 바탕으로 하도록 하여 상기 제 4 단계부터 반복 수행하는 제 7 단계; 및A seventh step of repeating the fourth step by setting the predicted value of the next data code to be received next if it does not match based on the received data code as a result of the determination in the sixth step; And 상기 제 6 단계의 판단 결과, 일치하면 올바르게 수신된 데이터 시작 프레임의 데이터 코드의 개수를 증가시켜 올바르게 수신된 상기 데이터 코드의 개수가 소정 개수만큼 되었는지를 확인하는 제 8 단계As a result of the determination in the sixth step, when the match is made, the eighth step of checking whether the number of correctly received data codes is increased by a predetermined number by increasing the number of data codes of the correctly received data start frame. 를 포함하는 시퀀스 코드를 통한 데이터 프레임의 시작점 검출 방법.Starting point detection method of a data frame through a sequence code comprising a. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,The method according to any one of claims 1 to 3, 상기 제 3 단계는,The third step, 데이터 시작 프레임의 데이터 코드를 수신한 수신측 시스템은 수신된 데이터 코드의 시퀀스를 추적하여 데이터 시작 프레임의 일부를 찾았으면 수신 데이터 코드의 예측값이 상기 수신측 시스템에서 예측된 최종값과 일치하는지를 검사하는 제 9 단계;The receiving system that receives the data code of the data start frame tracks the sequence of the received data code and checks whether the predicted value of the received data code matches the final value predicted by the receiving system if it finds a part of the data start frame. Ninth step; 상기 제 9 단계의 검사 결과, 상기 수신 데이터 코드의 예측값이 상기 최종값과 일치하지 않으면 상기 수신측 시스템에서 새로운 수신 데이터 코드를 받아 상기 수신 데이터 코드의 예측값을 순차적으로 변경시켜 상기 제 9 단계부터 반복 수행하는 제 10 단계; 및As a result of the check in the ninth step, if the predicted value of the received data code does not match the final value, the receiving side system receives a new received data code and sequentially changes the predicted value of the received data code and repeats from the ninth step. Performing a tenth step; And 상기 제 9 단계의 검사 결과, 상기 수신 데이터 코드의 예측값이 상기 최종값과 일치하면 이후 수신되는 데이터 코드는 데이터 프레임의 코드로 판단하는 제 11 단계An eleventh step of determining that a subsequent received data code is a code of a data frame if the predicted value of the received data code matches the final value as a result of the checking of the ninth step; 를 포함하는 시퀀스 코드를 통한 데이터 프레임의 시작점 검출 방법.Starting point detection method of a data frame through a sequence code comprising a. 대용량 프로세서를 구비한 데이터 통신 시스템에,In a data communication system having a large capacity processor, 상기 데이터 통신 시스템에서 데이터 시작 프레임(SOD : Start of Data)을 예측할 수 있는 순차적인 시퀀스 코드들로 이루어지도록 하는 제 1 기능;A first function of sequential sequence codes for predicting a start of data (SOD) in the data communication system; 데이터 코드를 수신한 수신측 시스템은 수신된 데이터 코드의 시퀀스를 추적하여 데이터 시작 프레임의 일부를 확인하는 제 2 기능; 및A receiving side system receiving the data code includes: a second function of tracking a sequence of received data codes to identify a portion of a data start frame; And 상기 수신측 시스템에서 데이터 코드가 수신될 때마다 카운트하여 상기 데이터 시작 프레임의 최종 데이터 코드에 해당하는 값을 확인한 후에 수신되는 데이터 코드를 데이터 프레임으로 판단하는 제 3 기능A third function of counting each time a data code is received by the receiving side system to determine a value corresponding to a final data code of the data start frame, and then determining the received data code as a data frame 을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a program for realizing this.
KR1019990042572A 1999-10-04 1999-10-04 Method for detecting start point of data frame over sequence code KR100306875B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990042572A KR100306875B1 (en) 1999-10-04 1999-10-04 Method for detecting start point of data frame over sequence code

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990042572A KR100306875B1 (en) 1999-10-04 1999-10-04 Method for detecting start point of data frame over sequence code

Publications (2)

Publication Number Publication Date
KR20010035813A KR20010035813A (en) 2001-05-07
KR100306875B1 true KR100306875B1 (en) 2001-11-02

Family

ID=19613819

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990042572A KR100306875B1 (en) 1999-10-04 1999-10-04 Method for detecting start point of data frame over sequence code

Country Status (1)

Country Link
KR (1) KR100306875B1 (en)

Also Published As

Publication number Publication date
KR20010035813A (en) 2001-05-07

Similar Documents

Publication Publication Date Title
US7688864B2 (en) Dynamic preamble detection
US7890840B2 (en) Enhancing the Ethernet FEC state machine to strengthen correlator performance
US5124991A (en) Error correction for infrared data communication
US5715278A (en) Standby power saving in mobile phones
US8102857B2 (en) System and method for processing data and control messages in a communication system
US6643818B1 (en) Storing and using the history of data transmission errors to assure data integrity
CN101401347B (en) Method, module and apparatus for receiving data packet frames
US5675591A (en) Reverse checksum method for telecommunication systems
KR100306875B1 (en) Method for detecting start point of data frame over sequence code
US5428611A (en) Strong framing protocol for HDLC and other run-length codes
US11469855B2 (en) Methods and systems for transmitting data payloads
CN113098809B (en) Software self-adaptive decoding method, device and wireless charging system
JP3481542B2 (en) Error correction transmitting circuit and receiving circuit in wireless communication system
US8045459B2 (en) Packet processing method for wireless communications
US6839392B1 (en) Methods and apparatus for adaptive mimic rejection
JP3386699B2 (en) Frame synchronization circuit and communication system
JP2001258072A (en) Information communication system
CN116192998B (en) Method, device and equipment for decoding power transmission protocol information packet
JP3419367B2 (en) Unique word detection circuit and unique word detection method
JP2004328434A (en) Packet communication system and device
GB2389492A (en) A transmitter which combines a time slot identifier with a CRC value, and a receiver which extracts the identifier
KR100778876B1 (en) Device for Detecting Auto baudrate and Method for the same
US6771592B1 (en) Voice and data wireless communication system with improved error recovery
CN115250160A (en) Signal processing method and device
JP2001036580A (en) Method for discriminating end of packet, packet transmitter and packet receiver

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: 20090814

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee