KR930004100B1 - Method for embodying full duplex communication protocol - Google Patents

Method for embodying full duplex communication protocol Download PDF

Info

Publication number
KR930004100B1
KR930004100B1 KR1019900018992A KR900018992A KR930004100B1 KR 930004100 B1 KR930004100 B1 KR 930004100B1 KR 1019900018992 A KR1019900018992 A KR 1019900018992A KR 900018992 A KR900018992 A KR 900018992A KR 930004100 B1 KR930004100 B1 KR 930004100B1
Authority
KR
South Korea
Prior art keywords
frame
buffer
message
receiving
transmission
Prior art date
Application number
KR1019900018992A
Other languages
Korean (ko)
Other versions
KR920011137A (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 KR1019900018992A priority Critical patent/KR930004100B1/en
Publication of KR920011137A publication Critical patent/KR920011137A/en
Application granted granted Critical
Publication of KR930004100B1 publication Critical patent/KR930004100B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/20Repeater circuits; Relay circuits

Abstract

The method for realizing the protocol improving the data communication speed and quantity per unit time comprises steps: (a) transmitting the first frame composed of an initial frame number, a control code (ENQ), and a frame end code (ETX) at the transmission part; (b) requesting the receiving time for next frame at the reception part when receiving the first frame; (c) transmitting the second frame in sequence of frame number, which and composed of a frame number, a data start code (STX), data and frame end codes (ETX,EOT), and retransmitting the corresponding frame in sequence when receiving the NAK frame; and (d) transmitting the second frame having a last frame number, a control code (ACK), and the EOT when receiving the second frame having the EOT, or transmitting the second frame having an errored frame number, NAK, and the EOT when checking the errored frame.

Description

비동기 방식의 전이중 통신 프로토콜 구현방법Asynchronous full duplex protocol implementation

제 1 도는 비동기의 방식의 통신 시스템 구성도.1 is a block diagram of an asynchronous communication system configuration.

제 2 도는 본 발명을 수행하기 위한 메모리 맵 구성도.2 is a memory map configuration diagram for carrying out the present invention.

제 3 도는 본 발명을 수행하기 위한 프레임 구성도.3 is a frame diagram for carrying out the present invention.

제 4 도는 본 발명의 흐름도.4 is a flow chart of the present invention.

제 5 도는 본 발명에 따른 프로토콜 흐름도.5 is a protocol flow diagram in accordance with the present invention.

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

11,21 : CPU 12,22 : 롬11,21: CPU 12,22: ROM

13,23 : 램 14,24 : 타이머13,23: RAM 14,24: Timer

15,25 : I/O15,25: I / O

본 발명은 통신 시스템의 데이타 통신 방법에 관한 것으로, 특히 비동기 방식의 통신 시스템에서 쌍방간의 데이타 통신 프로토콜을 전이중 통신 방식으로 구현할 수 있는 방법에 관한 것이다.The present invention relates to a data communication method of a communication system, and more particularly, to a method capable of implementing a bidirectional data communication protocol in a full-duplex communication system in an asynchronous communication system.

제 1 도는 통신망을 매체로 하는 제 1 통신 시스템과 제 2 통신 시스템으로 구성되어 있으며, 각각의 통신 시스템은 시스템 전체의 하드웨어와 소프트웨어를 제어하는 CPU(11,21)와 시스템 동작 및 제어 프로그램을 기억하고 있는 롬(12,22)과, 프로그램 수행중에 발생되는 데이타를 일시 저장하는 램(13,23)과, 시간에 관련되는 타이머 신호를 발생하여 상기 CPU(11,21)로 알려주는 타이머(14,24)와, 상기 CPU(11,21)의 제어하여 데이타의 입출력을 담당하는 I/O(15,25)와, 통신망을 해당되며 I/O(15,25)의 데이타를 전달시켜 주는 통신선로(30)로 구성된다.1 is composed of a first communication system and a second communication system using a communication network as a medium, and each communication system stores CPUs 11 and 21 and system operation and control programs that control hardware and software of the entire system. ROM 12 and 22, RAM 13 and 23 for temporarily storing data generated during program execution, and Timer 14 for generating a timer signal relating to time and informing the CPU 11 and 21. 24, the I / O (15, 25) that controls the CPU (11, 21) to control the input and output of data, and a communication line that transfers the data of the I / O (15, 25) to the communication network. The furnace 30 is comprised.

상기와 같은 제 1 도의 통신 시스템은 비동기 방식을 사용하게 되며, 일반적으로 비동기 방식의 프로토콜(protocol)은 반이중 통신 방식(half duplex)을 사용하고 있다. 즉, 하나의 포멧트(format)화된 메세지를 상대방으로 전송한후 이에 대한 응답이 수신될때까지 다음 메세지를 전송하지 않고 대기하게 된다. 그러므로 비동기 방식의 반이중 통신 방식에서는 송신 및 수신측 시스템의 쌍방간에 약속된 메시지 포멧트로 정상임을 알리는 응답이 수신되어야만 다음 메세지를 송신하게 된다. 예를들어 제 1 도에서 송신측이 제 1CPU(11)이고 수신측이 제 2CPU(21)라고 가정하면, 제 1CPU(11)가 쌍방간에 약속된 하나의 메세지를 제 2CPU(21)로 전송하고, 이때 제 2CPU(21)는 수신된 메세지를 분석하여 정상인 경우 다시 이에 대한 응답으로 제 1CPU(11)의 응답 메세지를 전송한다. 그러면 상기 제 1CPU(11)는 상기 응답 메세지를 분석한 후 제 2CPU(21)가 메세지를 정상적으로 수신했음을 인지하고, 다음 메세지를 다시 제 2CPU(21)로 전송하게 된다.The communication system of FIG. 1 uses an asynchronous scheme. In general, the protocol of the asynchronous scheme uses a half duplex scheme. That is, one formatted message is sent to the other party and waits without transmitting the next message until a response is received. Therefore, in the asynchronous half-duplex communication, the next message is transmitted only when a response indicating that the message format is normal between the transmitting and receiving systems is received. For example, in FIG. 1, if the transmitting side is the first CPU 11 and the receiving side is the second CPU 21, the first CPU 11 transmits one message promised to both parties to the second CPU 21. In this case, the second CPU 21 analyzes the received message and transmits a response message of the first CPU 11 in response thereto. Then, the first CPU 11 analyzes the response message, recognizes that the second CPU 21 has normally received the message, and transmits the next message to the second CPU 21 again.

그러나 상기와 같이 비동기 통신 시스템에서 반이중 통신 방식을 사용하게 되면 데이타 통신 속도가 매우 늦게 되는 동시에 일정시간당 통신할 수 있는 데이타량 또한 매우 적게 되는 문제점이 있었다.However, when the half-duplex communication method is used in the asynchronous communication system as described above, there is a problem that the data communication speed becomes very slow and the amount of data that can be communicated per predetermined time is also very small.

따라서 본 발명의 목적은 비동기 방식의 통신 시스템에서 쌍방간의 데이타 통신 프로토콜을 전이중 방식으로 구현할 수 있는 방법을 제공함에 있다.Accordingly, an object of the present invention is to provide a method capable of implementing a bi-directional data communication protocol in a full duplex in an asynchronous communication system.

본 발명의 또 다른 목적으로 비동기 방식의 통신 시스템에서 간단한 방식으로 전이중 방식의 프로토콜을 구현하여 데이타 통신 속도 및 단위 시간당 통신량을 향상시킬 수 있는 방법을 제공함에 있다Another object of the present invention is to provide a method for improving the data communication speed and the amount of communication per unit time by implementing a full-duplex protocol in a simple manner in an asynchronous communication system.

이하 본 발명을 도면을 참조하여 상세히 설명한다. 본 발명을 수행하기 위한 통신 시스템의 구성도는 제 1 도와 동일하며, 참조부호도 제 1 도와 동일하다.Hereinafter, the present invention will be described in detail with reference to the drawings. The configuration diagram of a communication system for carrying out the present invention is the same as that of the first diagram, and the reference numeral is the same as the first diagram.

제 2 도는 본 발명을 수행하기 위한 메모리 맵 구성도이다. 여기서(2A) 및 (2F)는 송신 메세지 버퍼 및 수신 메세지 버퍼의 구성도로서, 송신 메세지 버퍼(2A)는 상위 계층으로부터 I/O(15,25)를 통해 전송할 데이타가 저장되는 버퍼이고, 수신 메세지 버퍼(2F)는 수신 메세지를 저장하여 상위 계층으로 전송하기 위한 버퍼이다.2 is a diagram illustrating a memory map for implementing the present invention. Here, (2A) and (2F) is a configuration diagram of the transmission message buffer and the reception message buffer, and the transmission message buffer 2A is a buffer in which data to be transmitted through the I / O (15, 25) from the upper layer is stored. The message buffer 2F is a buffer for storing a received message and transmitting it to a higher layer.

(2B)는 프레임 버퍼의 구성도로서, 상기 송신 메세지 버퍼(2A)로 부터 송신 버퍼(2C)로 보내기전에 프로토콜 구현을 위해 한 프레임 단위로 최대 7개의 프레임까지 저장시키는 버퍼이다.2B is a configuration diagram of a frame buffer, which is a buffer for storing up to seven frames in one frame unit for protocol implementation before being sent from the transmission message buffer 2A to the transmission buffer 2C.

(2C)-(2E)는 송신버퍼, 수신버퍼 및 임시버퍼의 구성도로서, 이중 송신버퍼(2C)는 I/O(15,25)의 인터럽트에 의해 통신선로(30)상으로 전송하기 위한 데이타를 저장하는 버퍼이며, 수신버퍼(2D)는 통신선로(30)상으로 수신된 데이타를 I/O(15,25)이 인터럽트에 의해 읽어들여 저장하는 버퍼이고, 임시버퍼(2E)는 I/O(15,25)의 인터럽트에 의해 읽혀진 상기 수신버퍼(2D)의 내용을 각 프로세스에서 분석할 수 있도록 1프레임을 잠시 저장하는 2버퍼이다. 상기 (2A)-(2F)와 같은 버퍼는 램(13,23)에 할당되며, 이중 송신 메세지 버퍼(2A) 및 수신메세지 버퍼(2F)는 1메세지의 크기가 최대 256바이트(byte)이고, ETX코드로 종료되며, 메세지의 수신 n은 버퍼의 크기에 의존한다. 또한 프레임버퍼(2B)는 1메세지의 크기가 최대 256바이트이며, ETX코드로 종료되고, 메세지의 수는 최대 7개가 된다. 그리고 송신버퍼(2C), 수신버퍼(2D) 및 임시버퍼(2E)는 바이트의 수인 n은 256이고 포인트는 순회된다(eircular queue).(2C)-(2E) is a configuration diagram of the transmission buffer, the reception buffer, and the temporary buffer, and the dual transmission buffer 2C is for transmitting on the communication line 30 by the interrupt of the I / O (15, 25). Receiving buffer 2D is a buffer for storing data. The receiving buffer 2D is a buffer in which I / O 15, 25 reads and stores the data received on the communication line 30 by interrupt, and the temporary buffer 2E is I. It is a two buffer that temporarily stores one frame so that each process can analyze the contents of the receiving buffer 2D read by the interrupt of / O (15, 25). A buffer such as (2A)-(2F) is allocated to the RAMs 13 and 23, and the dual transmit message buffer 2A and the receive message buffer 2F have a maximum size of 1 message of 256 bytes. Terminating with an ETX code, the receipt of the message n depends on the size of the buffer. The frame buffer 2B has a maximum size of one message of 256 bytes, ends with an ETX code, and the maximum number of messages is seven. The transmit buffer 2C, the receive buffer 2D, and the temporary buffer 2E are n, 256, the number of bytes, and the points are traversed (eircular queue).

제 3 도는 본 발명의 프레임 데이타 구조도이다. 여기서 (3A)는 동기 프레임(SYN frame)으로서 프레임 버퍼(2B)에 기억되어 있는 최초의 프레임을 전송하기 전에 상대 통신 시스템과 동기를 맞추거나 응답을 위한 프레임 형태이다. 그리고 동기프레임의 구성요소중 fn은 프레임 번호(Frame Number)이고, ct1은 콘트롤 코드(Control code)로서 상대방과 동기를 위한 'ENQ' 및 상대방으로 응답을 위한 'ACK', 'NAK'등이 실리게 되며, end는 프레임 종료 코드(Frame End Code)로서 'ETX', 및 'EOT'가 실리게 되고, bcc는 첵 섬 데이타(check-Sum Data)이다. 그리고 (3B)는 SOH(Start Of Head)프레임으로서, 프레임 버퍼(2B)에 저장되어 I/O(15,25)를 통해 실제 쌍방간의 메세지들을 실어서 통신되는 데이타이다. 이때 STX는 데이타 시작코드이다.3 is a frame data structure diagram of the present invention. Here, (3A) is a sync frame (SYN frame), which is in the form of a frame for synchronizing or responding with the other communication system before transmitting the first frame stored in the frame buffer 2B. Among the components of the sync frame, fn is a frame number, ct1 is a control code, and 'ENQ' for synchronization with the other party and 'ACK' and 'NAK' for response to the other party. End is a frame end code, and 'ETX' and 'EOT' are loaded, and bcc is check-sum data. And (3B) is a SOH (Start Of Head) frame, which is stored in the frame buffer 2B and communicated by carrying messages between the two parties via I / O (15, 25). STX is the data start code.

제 4 도는 본 발명의 흐름도이다. (4A)는 수신 프로세스의 흐름도로서, I/O(15,25)의 인터럽트에 의해 통신선로의 데이타를 수신하여 저장하고 있는 수신버퍼(2C)의 내용을 분석한 후, 쌍방간에 약속된 프로토콜에 이상이 없는가를 판단하는 프로세스이다.4 is a flowchart of the present invention. 4A is a flow chart of the receiving process, which analyzes the contents of the receiving buffer 2C that receives and stores data on the communication line by the interrupt of the I / O (15, 25), and then applies the protocol promised to both parties. It is the process of determining whether there is no abnormality.

그리고 (4B)는 메세지 프로세스의 흐름도로서, 송신 메세지 버퍼(2A)의 내용이 있는가 판단하여 있으면 이를 리드하여 최대 7개의 메세지를 초과하지 않도록 프레임 버퍼(2B)에 저장하고, 없으면 마지막 메세지로 결정하는 프로세스이다.And (4B) is a flow chart of the message process. If it is determined whether the contents of the transmission message buffer 2A are present, it is read and stored in the frame buffer 2B so as not to exceed a maximum of seven messages. Process.

(4C)는 송신 프로세스로서 프레임 버퍼(2B)에 저장되어 있는 각 메세지를 쌍방간에 약속된 (3A) 및 (3B)와 같은 프레임 형태로 변환하여 송신버퍼(2C)에 저장한 후, 상대방으로 전송시켜 주는 프로세스이다.4C converts each message stored in the frame buffer 2B into a frame form such as (3A) and (3B) promised by both parties, stores them in the transmission buffer 2C, and sends them to the other party. It's a process.

또한 (4D)는 타임프로세스로서 상기 (4A)-(4C)프로세스에 요구한 일정시간이 경과된 경우 이를 처리하는 프로세스이다.Also, (4D) is a process for processing a predetermined time required for the processes (4A) to (4C) as a time process.

제 5 도는 각 프레임 처리시 통신 수순도로서, 제 5(a) 도는 정상적으로 진행되는 통신 수순도이며, 제 5(b) 도는 송신중 'NAK'수신시의 통신수순도이고, 제 5(c) 도는 판단 불능 프레임 수신후 다음 프레임을 정상적으로 수신하는 경우의 통신 수순도이며, 제 5 도(D)는 'NAK'전송후 수신 타임 초과시의 통신 수순도이다. 상술한 구성에 의하거 본 발명을 제 1 도-제 5 도를 참조하여 상세히 설명한다.FIG. 5 is a communication procedure in processing each frame, FIG. 5 (a) is a communication procedure proceeding normally, and FIG. 5 (b) is a communication procedure in receiving 'NAK' during transmission, and FIG. 5 (c) FIG. 5 is a flowchart illustrating a case in which a next frame is normally received after an undetermined frame is received. FIG. 5D is a diagram illustrating a communication procedure when a reception time is exceeded after 'NAK' transmission. The present invention will be described in detail with reference to FIGS. 1 to 5 according to the above-described configuration.

상술한 구성에 의거 본 발명을 제 1 도 - 제 5 도를 참조하여 상세히 설명한다.Based on the above-described configuration, the present invention will be described in detail with reference to FIGS.

여기서 제 1CPU(11)를 송신측이라 가정하고, 제 2CPU를 수신측이라고 가정한다. 그러면 제 1CPU(11)에서는 제 2CPU(21)와 쌍방간에 약속된 형태로 제 3 도와 같은 프레임 구조의 메세지를 제 1 램(13)에 저장시켜 놓은 후 제 1I/O(15,25)로 데이타를 전송하면, 상기 제1I/O(15,25)는 인터럽트를 발생시켜 가며 제 1 램(13)의 포맷트화된 메세지를 통신 선로(30)을 통해 제2I/O로 전송한다. 그러면 상기 제 2I/O(25)는 전송된 메세지에 의해 역시 인터럽트를 발생시켜 제 2CPU(21)로 메세지가 수신됐음을 알린다. 이때 상기 제 2CPU(21)는 상기 제 2I/O(25)의 수신 메세지를 읽어 들여 제 2 램(23)에 저장시킨후 이를 분석하여 정상인가 아닌가를 판단하게 된다. 이때 수신 메세지가 정상이 아닌 경우 제 2CPU(21)는 상기 수순과 동일한 수순으로 제 1CPU(11)에 응답 메세지 'NAK'를 송신하며, 정상인 경우에는 제 1CPU(11)로 부터 수신된 메세지가 마지막 프레임을 나타내는 'EOT' 메세지 수신시에만 응답 메시지 'ACK'를 송신한다.It is assumed here that the first CPU 11 is the transmitting side, and the second CPU is the receiving side. Then, the first CPU 11 stores the message having the same frame structure as that of the third degree in the first RAM 13 in a form promised between the second CPU 21 and the data to the first I / O (15, 25). The first I / O 15, 25 generates an interrupt and transmits the formatted message of the first RAM 13 to the second I / O through the communication line 30. The second I / O 25 then generates an interrupt by the transmitted message to inform the second CPU 21 that the message has been received. At this time, the second CPU 21 reads the received message of the second I / O 25, stores the received message in the second RAM 23, and analyzes it to determine whether it is normal. At this time, if the received message is not normal, the second CPU 21 transmits a response message 'NAK' to the first CPU 11 in the same procedure as the above procedure, and if normal, the message received from the first CPU 11 is the last. The response message 'ACK' is transmitted only when the 'EOT' message indicating the frame is received.

또한 제 1CPU(11)와 제 2 CPU(21)에서 상기와 같은 메세지의 통신 수순상 일정 시간이 필요하다고 판단된 때에는 해당시간을 등록하여 놓은후, 타이머(14,24)를 통해 시간 서비스를 받아서 처리한다.In addition, when the first CPU 11 and the second CPU 21 determine that a predetermined time is necessary for the communication procedure of the above message, the corresponding time is registered and then time service is received through the timers 14 and 24. Process.

상기와 같은 비동기 통신 시스템에서 전이중 통신 방식(full-duplex)을 구현하기 위해서는 4개의 프로세스로 이루어지는데, 기본적인 수준은(4C)와 같은 송신.프로세스에서 프레임버퍼(2B)에 저장된 모든 프레임(최대 8개)를 전송하며, 상대방에서는 (4A)와 같은 수신 프로세스에서 각 프레임 수신시마다 이를 분석하여 이들 프레임(EOT로 종료되는 프레임)들이 모두 정상적으로 수신된 경우에만(3A)와 같은 프레임 Ctl영역에 'ACK'는 기록한 응답메세지를 전송함으로서 통신이 완료한다. 그리고 'EOT'프레임의 결정은 (4A)와 같은 송신 프로세스에서 프레임 버퍼(2A)의 마지막 한 프레임을 전송하지 않고 있다가, (4B)와 같은 메세지 프로세스에서 요구한 메세지 타임이 초과되었거나 상기 프레임 버퍼(2B)에 7개의 프레임이 모두 기억되었을 때이다. 또한 재전송은 상대방인 수신측으로부터 'NAK'프레임을 수신했거나 (4C)와 같은 송신 프로세스에서 요구한 송신 타임이 초과되었을때 (3A)와 같은 'NAK'프레임 번호 또는 0번 프레임부터 재전송된다.In order to implement full-duplex in the asynchronous communication system as described above, there are four processes. The basic level is the same as (4C). All frames stored in the frame buffer 2B in the transmission process (up to 8 ) And the other side analyzes each frame in the receiving process such as (4A), and if the frames (frames ending with EOT) are all received normally, the 'ACK' is sent to the frame Ctl area such as (3A). 'Completes the communication by sending the recorded response message. The determination of the 'EOT' frame is not transmitting the last one frame of the frame buffer 2A in the transmission process such as (4A), and the message time required by the message process such as (4B) has been exceeded or the frame buffer has been exceeded. This is when all seven frames are stored in (2B). In addition, retransmission is retransmitted from the 'NAK' frame number such as (3A) or frame 0 such as (3A) when the 'NAK' frame is received from the other party's receiving side or the transmission time required by the transmission process such as (4C) is exceeded.

여기서 (4A)는 I/O(15,25)로부터 1바이트의 데이타가 수신될시 마다 수행되는 송신 프로세스이고, (4B)는 상위 계층에서 하나의 메세지가 하위 계층으로 보내질때마다 수행되는 메세지 프로세스이며, (4C)는 각 프로세스로부터 한 프레임을 전송할시마다 수행되는 송신프로세스이고, (4D)는 각 프로세스에서 타임을 요구하여 요구한 타임이 초과될시에 타이머(14,24)로 제공받은 O/S(Operating System)로 발생된다.Where (4A) is a transmission process performed each time one byte of data is received from I / O (15, 25), and (4B) is a message process performed whenever one message is sent to the lower layer in the upper layer. (4C) is a transmission process performed each time a frame is transmitted from each process, and (4D) is an O / O provided to the timers 14 and 24 when the time required by each process is exceeded. It is generated by S (Operating System).

송신시의 과정을 설명한다.The process at the time of transmission is demonstrated.

먼저 메세지를 전송하고자 할 시 상위 계층으로 부터 하위 계층으로 메세지를 이동시켜야 하는데, 이 경우 (4B)와 같이 메세지 프로세스가 구동된다. 즉 메세지 프로세스가 구동되면 (141)단계에서 대기 모드 상태인가를 검사하는데, 송신 모드이면 (142)단계에서 송신 메세지 버퍼(2A)에 저장되어 있는 메세지를 프레임 버퍼(2B)에 저장시킨다. 그러나 상기 (141)단계에서 대기모드로 판명되면 (4C)와 같은 송신 프로세스에서 EOT프레임을 전송한 후 'ACK' 프레임이 수신되기를 대기하고 있는 상태이므로 송신 메세지 버퍼(2A)로부터 메세지를 읽어 오지 않는다.First, when you want to send a message, you have to move the message from the upper layer to the lower layer. In this case, the message process starts as shown in (4B). In other words, if the message process is driven, it is checked whether it is in the standby mode in step 141. In the transmission mode, in step 142, the message stored in the transmission message buffer 2A is stored in the frame buffer 2B. However, if it is determined in the standby mode in step 141 that the EOT frame is transmitted in the transmission process as shown in (4C), the message is not read from the transmission message buffer 2A because the 'ACK' frame is waiting to be received. .

상기와 같은 메세지 프로세스 과정을 통해 송신할 메세지를 프레임버퍼(2B)에 저장 완료한 경우에는, (4C)와 같은 송신 프로세스가 구동된다. 이때 상기 프레임 버퍼(2B)에는 (3A)와 같은 동기 프레임 제외된(3B)와 같은 프레임이 최대 7개가 저장되므로, 송신 프로세스에서 전송해야될 프레임은 8개가 된다. 따라서 송신 프로세스가 구동되면(151)단계에서, 송신해야될 프레임 번호가 "0"인가 검사하며, 이때 송신 프레임 번호가 "0"로 판명되면 (152)단계에서 (3A)와 같은 동기 프레임을 만들어 송신버퍼(2C)에서 저장한다. 이때 상기 동기 프레임은 'ENQ'프레임으로서 'fn', 'ctl', 'end'영역에는 각각 '0', ENQ', 'ETX'를 삽입한다. 또한 상기(151)단계에서 송신할 프레임 번호가 '0'가 아닐때에는 (153)단계를 수행하여 프레임버퍼(2B)에 저장된 해당 프레임 번호의 메세지를 리드하여 (3B)와 같은 프레임 형태로 변환한 후, (154)단계에서 변환된 프레임 형태의 메세지를 송신버퍼(2C)에 저장한다. 따라서 상기와 같이 송신프로세스가 구동되면 송신해야할 프레임 번호 순서대로 한 프레임씩 I/O의 송신 인터럽트로 보내어 상대측으로 전송할 수 있도록, 프레임버퍼(2B)의 내용을 쌍방간에 약속된 프레임 형태로 변환한다. 그리고 항상 프레임 버퍼(2B)의 마지막 한 프레임은 4(B)와 같은 메세지 프로세스이 메세지 타임이 초과되어 대기모드가 세트되거나, 8번째 프레임이 될때까지 전송하지 않고 기다렸다가 'EOT'프레임을 전송하도록 한다.When the message to be transmitted is completely stored in the frame buffer 2B through the above message process, the transmission process as shown in (4C) is driven. At this time, since the frame buffer 2B stores a maximum of seven frames, such as synchronous frames excluded from (3B) such as (3A), there are eight frames to be transmitted in the transmission process. Therefore, if the transmission process is driven (step 151), it is checked whether the frame number to be transmitted is "0", and if the transmission frame number is found to be "0", a synchronization frame such as (3A) is created in step (152). Stored in the transmission buffer 2C. In this case, the sync frame is an 'ENQ' frame, and '0', ENQ 'and' ETX 'are inserted into the' fn ',' ctl 'and' end 'regions, respectively. In addition, when the frame number to be transmitted in step 151 is not '0', step (153) is performed to read the message of the corresponding frame number stored in the frame buffer 2B and convert the message into the frame form as shown in (3B). After that, the message of the frame form converted in step 154 is stored in the transmission buffer 2C. Therefore, when the transmission process is driven as described above, the contents of the frame buffer 2B are converted into the form of the frame promised to both parties so that they can be sent to the other party by sending interrupts of the I / O one frame in order of the frame number to be transmitted. The last one frame of the frame buffer 2B always causes a message process, such as 4 (B), to wait for the message to time out and wait until the standby mode is set, or until the eighth frame, and then transmit an 'EOT' frame.

따라서 송신측에서 메세지 프로세스를 수행하여 송신 메세지버퍼(2A)에 저장되된 메세지를 프레임 버퍼(2B)에 저장하고, 송신 프로세스를 수행하여 프레임 버퍼(2B)의 내용을 (3A) 및 (3B)와 같은 프레임 포맷트로 변환한다.Therefore, the sender performs a message process to store the message stored in the send message buffer 2A in the frame buffer 2B, and performs the send process to change the contents of the frame buffer 2B to (3A) and (3B). Convert to a frame format such as

두번째로 수신시의 과정을 설명한다. 통신 선로(30)를 통해 수신된 데이타는 I/O(15,25)를 통해 CPU(11,21)로 인가되며, CPU(11,21)는 이를 한 바이트씩 램(13,23)의 수신버퍼(2D)에 저장한다. 이때 (4A)와 같은 수신 프로세스가 구동되는데, 먼저 (101)단계에서는 수신버퍼(2D)로 부터 1바이트의 데이타를 리드한 후 분석하여 임시버퍼(2E)에 순차적으로 기록한다. 이때 상기 분석 과정에서 (102)단계를 통해 오버런(over rum), 패리티등의 에러로 판명되면, (103)단계에서 에러 플래그를 세트하고 종료하며, (104), (105)단계에서 ETX 또는 EOT로 판명되면, 1프레임의 메세지를 수신 완료한 경우이거나 8프레임의 모든 메세지를 수신완료한 경우이므로, 임시버퍼(2E)에 저장된 바이트 데이타를 분석하는 루틴으로 진행한다. 즉, ETX 또는 EOT로 판명되면 (107)단계에서는 해당 바이트의 데이타를 임시버퍼(2E)에 저장하고, (108)단계에서 해당 프레임의 'bcc'를 수신버퍼(2D)로 부터 리드한다. 이후 (109)(110)단계에서 에러 플래그 세트유무 또는 'bcc'의 상태를 검사하는데, 에러플래그가 세트된 상태이거나 'bcc'가 이상상태인 경우에는 (118)단계에서 (3B)와 같이 'SOH'로 시작하는 프레임인가 검사한다. 이때 'SOH'로 시작하는 프레임인 경우에는 이미 'NAK'프레임을 전송한 상태인가 검사하는데, 'NAK'프레임을 전송하지 않은 상태이면 (120)단계에서 (4B)와 같은 메세지 프로세스 및 (4C)와 같은 송신 프로세스가 구동되어 (3A)와 같은 프레임 형태의 'NAK'프레임을 전송한후 수신 타임을 요구하고 종료한다.Second, the process at the time of reception is explained. Data received through the communication line 30 is applied to the CPU (11, 21) through the I / O (15, 25), the CPU (11, 21) receives the RAM (13, 23) by one byte Store in the buffer 2D. At this time, the reception process as shown in (4A) is driven. First, in step (101), one byte of data is read from the reception buffer 2D, analyzed, and sequentially written to the temporary buffer 2E. At this time, if it is determined that an error such as an over rum or parity is performed in step 102, an error flag is set and terminated in step 103, and ETX or EOT in steps 104 and 105. If it is determined that the message has been received in one frame or all messages in eight frames have been received, the procedure proceeds to a routine for analyzing the byte data stored in the temporary buffer 2E. In other words, if it is found to be ETX or EOT, in step 107, the data of the corresponding byte is stored in the temporary buffer 2E, and in step 108, 'bcc' of the frame is read from the reception buffer 2D. Thereafter, in step (109) and (110), an error flag is set or 'bcc' is checked. If an error flag is set or 'bcc' is in an abnormal state, as in (3B) in step (118), Check if the frame starts with SOH '. In this case, if the frame starts with 'SOH', it is checked whether the 'NAK' frame is already transmitted. If the 'NAK' frame is not transmitted, the message process (4B) and (4C) in step 120 are performed. The transmission process is driven to transmit a 'NAK' frame in the form of a frame such as (3A), and then the reception time is requested and ends.

그러나 상기 (109)(110)단계에서 에러 플래그가 세트되지 않은 상태이거나 'bcc'가 정상으로 판명된 경우에는 (111)단계에서 수신된 프레임이 (3A)와 같은 동기 프레임인가 검사한다. 그러나 상기 (111)단계에서 수신된 프레임이 (3B)와 같은 'SOH'프레임인 경우에는 (121)단계로 진행하여 수신 프레임 번호가 정상인가 검사한다. 이때 수신된 프레임 번호가 정상이 아닌 경우에는 수신할 프레임 번호보다 수신된 프레임 번호가 더 큰가 검사하며, 수신된 프레임 번호가 더 큰 경우에는 상기 (119)(120)단계로 진행하여 수신하여야 할 프레임 번호와 함께 'NAK'프레임을 전송하고 종료한다. 그러나 수신된 프레임 번호가 작은 경우에는 수신 프로세스를 종료한다. 이때 상기 (121)단계에서 수신 프레임 번호가 정상인 경우에는 임시버퍼(2E)에 저장된 현 프레임의 내용을 수신메세지 버퍼(2F)에 저장한다. 이후 (124)단계에서 수신 타임을 요구한 경우에는 수신 타임을 해제하며, (126)단계에서 현 수신 프레임의 'end'영역의 내용이 'ETX'인가 검사한다. 이때 'ETX'이면 현재 수신된 프레임이외에 더 수신할 프레임이 존재하는 경우이므로, (128)단계에서 수신 타임을 요구하고 종료한다. 그러나 상기 (126)단계에서 'end"영역의 내용이 'ETX'가 아니면 'EOT'이므로, 이는 더이상 수신할 프레임이 없는 상태이므로 (3A)와 같은 'ACK'ㅡ프레임을 전송할 수 송신버퍼(2C)에 저장한후 종료한다. 이 경우에도 (4B) 및 (4C)와 같은 메세지 프로세스 및 송신 프로세스가 구동되어 수행되는 것으로 송신측으로 8프레임의 메시지를 정상적으로 수신 완료했음을 알리는 'ACK'메세지가 전송된다.However, if the error flag is not set in step (109) (110) or 'bcc' is found to be normal, it is checked whether the frame received in step (111) is a synchronization frame such as (3A). However, if the frame received in step 111 is a 'SOH' frame such as 3B, the process proceeds to step 121 to check whether the received frame number is normal. At this time, if the received frame number is not normal, it is checked whether the received frame number is larger than the received frame number. If the received frame number is larger, the frame to be received by proceeding to (119) and (120) above. Send 'NAK' frame with number and end. However, if the received frame number is small, the reception process ends. If the received frame number is normal in step 121, the contents of the current frame stored in the temporary buffer 2E are stored in the received message buffer 2F. If the reception time is requested in step 124, the reception time is canceled. In step 126, it is checked whether the content of the 'end' area of the current reception frame is 'ETX'. In this case, if there is a frame to be received in addition to the currently received frame, 'ETX' requests a reception time and ends in step 128. However, if the content of the 'end' area is not 'ETX' in step (126), it is 'EOT', and since there is no more frame to receive, it is possible to transmit an 'ACK'-frame such as (3A). In this case, a message process and a transmission process such as 4B and 4C are driven and performed, and an 'ACK' message is transmitted to the sender indicating that the 8-frame message has been normally received.

그러나 상기 (111)단계에서 'SYN'로 시작하는 프레임이며, (112)단계에서 'ACK'응답 프레임인가 검사한다. 이때 'ACK'이면 전송한 프레임이 모두 정상적으로 수신측에 전송된 경우이므로, (129)(130)단계에서 송신 타임을 요구한 상태에서 송신한 마지막 프레임 번호와 동일한 경우에는 송신 타임을 해제하고 종료하며, 그렇지 않은 경우에는 'ACK'를 무시하고 종료한다.However, in step 111, the frame starts with 'SYN', and in step 112, it is checked whether the frame is an 'ACK' response frame. In this case, if it is 'ACK', since the transmitted frames are all normally transmitted to the receiver, when the transmission frame time is the same as the last frame number transmitted in the state of requesting transmission time in step (129) 130, the transmission time is canceled and terminated. Otherwise, ignore ACK and exit.

또한 (113)단계에서 'NAK'로 판명된 경우에는 프레임 전송도중에 송신한 프레임에 오류가 발생되어 수신측으로 부터 해당 프레임 번호의 프레임 메세지를 재전송 요구하는 경우이므로, (132)단계에서 송신한 마지막 프레임의 번호보다 작거나 동일하게 판명되면 (133)단계에서 현재 송신할 프레임 번호를 현재 수신한 프레임 번호(즉, 오류가 발생한 프레임 번호)로 대치한다. 그리고 (134)단계에서 이미 송신 타임이 요구되어 있는 경우로 판명되면 (135)단계에서 송신 타임을 해제하고 종료한다.In addition, if it is determined as 'NAK' in step 113, an error occurs in a frame transmitted during frame transmission, and a request for retransmission of a frame message of the corresponding frame number is requested from the receiver. If it is found to be smaller than or equal to the number of, in step 133, the frame number to be transmitted is replaced with the frame number currently received (that is, the frame number in which an error occurs). If it is determined in step 134 that the transmission time has already been requested, then in step 135, the transmission time is released and ends.

또한 (114)단계에서 수신 프레임이 'ENQ' 프레임으로 판명되면, (115)단계에서 수신할 프레임 번호가 '0'번일시 (116)단계에서 수신 타임을 요구하고 종료한다. 그러나 상기 (114)단계에서 'ENQ'프레임도 아닌 상태로 판명되면 (117)단계에서 에러 플래그 리세트 및 임시버퍼(2E)의 내용을 클리어시킨후 종료한다.In addition, if the reception frame is found to be an 'ENQ' frame in step 114, when the frame number to be received in step 115 is '0' times, in step 116, the reception time is requested and ends. However, if it is determined in step 114 that the state is not the 'ENQ' frame, the process ends after clearing the contents of the error flag reset and the temporary buffer 2E in step 117.

상기 수신 프로세스의 동작과정을 종합하면, 1프레임의 내용을 임시버퍼(2E)에 저장 완료한후 임시버퍼(2E)의 내용을 분석하여 해당 기능 처리 프로그램으로 분기한다. 이때 'SOH'프로그램은 실제로 쌍방간에 필요로 하는 데이타로서 수신된 프레임의 번호들이 순서대로 수신되었을때 이를 수신 메세지 버퍼(2F)에 저장한후 상위계층으로 보낸다. 그리고 'ACK'프로그램은 송신측에서 마지막 프레임('EOT'프레임)을 전송했을 때 수신해야할 프레임이므로 송신 타임이 요구되었을 때에만 수신되어야 한다. 그러므로 이를 검사하여 송신 타임이 요구되었을 때에는 전송한 모든 프레임이 상대방으로 모두 정상적으로 전송되었음을 인지하고 대기모드를 리세트한다.When the operation process of the reception process is integrated, after the contents of one frame are stored in the temporary buffer 2E, the contents of the temporary buffer 2E are analyzed and branched to the corresponding function processing program. At this time, the 'SOH' program is actually required data between the two. When the received frame numbers are received in order, they are stored in the reception message buffer 2F and sent to the upper layer. In addition, the 'ACK' program is a frame to be received when the last frame ('EOT' frame) is transmitted from the transmitting side, and therefore, should be received only when a transmission time is required. Therefore, when the transmission time is requested and the transmission time is requested, it recognizes that all transmitted frames have been normally transmitted to the other party and resets the standby mode.

세번째로 'NAK'프로그램은 송신도중 상대방에서 'NAK'로 전송한 프레임 번호가 비정상이었음을 의미하므로, 이 프레임 번호로 부터 다시 전송하기 위해 송신해야 할 프레임 번호로 바꾼다. ENQ프로그램은 쌍방간의 통신 시작을 알리는 프레임이다.Thirdly, the 'NAK' program means that the frame number transmitted from the other party to 'NAK' was abnormal during transmission, so it is changed from this frame number to the frame number to be transmitted in order to transmit again. The ENQ program is a frame indicating the start of communication between the two parties.

마지막으로 (4D)와 같은 타임 프로세스는 각 프로세스에 요구한 일정 타임이 초과되었을 경우에 이를 처리한다. 즉, 송신 타임의 경우는 송신 프로세스에서 마지막 'EOT'프레임을 전송한후, 'ACK'프레임을 기다리는 중에 (161)단계에서 송신 타임 초과로 판명되면, (162)단계에서 송신할 프레임 번호를 '0'으로 한후 재전송 모드를 세트시켜 '0'번 프레임부터 다시 재전송한다. 또한 수신 타임의 경우는 프레임의 마지막 코드가 'ETX'일때 다음 프레임이 더 있음을 의미하는데, 수신 타임이 초과되면 전송도중 프레임이 유실됐음을 의미한다. 따라서 (163)단계에서 수신 타임 초과로 판명되면 (164)단계에서 'NAK'프레임 전송후 수신 타임을 요구한다. 마지막으로 메세지 타임의 경우는 상위 계층으로 부터 일정 시간내에 상대방으로 전송할 메세지가 더 있는가 검사하는 것이므로, (4C)와 같은 송신 프로세스를 구동하여 'EOT'프레임을 결정하도록 한다. 따라서 (165)단계에서 메세지 타임이 초과로 판명되면 (166)단계에서 대기모드를 세트한다.Finally, time processes like (4D) handle this when a certain amount of time is required for each process. That is, in the case of the transmission time, after transmitting the last 'EOT' frame in the transmission process, if it is determined that the transmission time is exceeded in step (161) while waiting for the 'ACK' frame, in step (162) the frame number to be transmitted ' After setting to '0', retransmit mode is set and retransmit from frame '0'. In the case of the reception time, when the last code of the frame is 'ETX', there is more next frame. If the reception time is exceeded, it means that the frame is lost during transmission. Therefore, if it is determined in step 163 that the reception time is exceeded, in step 164, the reception time is required after transmitting the 'NAK' frame. Finally, the message time is to check whether there are any more messages to send to the other party from the upper layer within a certain time. Therefore, the transmission process such as (4C) is driven to determine the 'EOT' frame. Therefore, if the message time is found to be exceeded in step 165, the standby mode is set in step 166.

상기와 같은 흐름은 제 5 도를 참조하여 살펴본다.The above flow is described with reference to FIG.

먼저 (5A)와 같이 송신측과 수신측 사이에서 정상적으로 데이타가 통신된 경우, 송신측 시스템에서는 0번 프레임을 (3A)와 같은 프레임 형태로 전송한후, 이후 연속적으로 1번-7번 프레임으로서 (3B)와 같은 'SOH'프레임을 전송한다. 이때 수신측에서 수신 프레임 단위로 수신 타임을 요구하며 해당 프레임 상태를 분석하여, 수신된 8개 프레임이 모두 정상인 경우에는 마지막 프레임('ENT')수신후 'ACK'프레임을 전송한다.First, when data is normally communicated between the transmitting side and the receiving side as shown in (5A), the transmitting side system transmits frame 0 in the form of frame like (3A), and then continuously as frames 1-7. Send a 'SOH' frame like 3B. At this time, the receiving side requests a reception time in units of receiving frames and analyzes the corresponding frame state. When all eight received frames are normal, the receiver transmits an 'ACK' frame after receiving the last frame ('ENT').

두번째로 (5B)와 같은 송신측에서 송신도중 'NAK'프레임을 수신하게 되는 경우를 살펴본다. (5B)의 경우에는 송신측에서 전송하는 프레임중 3번째 프레임에 에러가 발생된 경우이다. 그러면 수신측에서는 3번째 프레임 수신 완료시 프레임 에러로 판단하며, 이때 수신 타임을 요구하고 에러가 발생된 프레임 번호와 함께 'NAK'를 송신측으로 전송한다. 이후 수신측에서는 'NAK'프레임 번호의 프레임이 수신될때까지 수신되는 프레임을 무시한다. 이때 송신측에서는 'NAK'프레임 수신시 해당 프레임 번호의 프레임부터 다시 순차적으로 전송한다.Secondly, a case in which a transmitting side such as (5B) receives a 'NAK' frame during transmission will be described. In the case of (5B), an error occurs in the third frame among the frames transmitted from the transmitting side. Then, the receiving side determines that the frame error is completed when the third frame is received. At this time, the receiving side requests the reception time and transmits a 'NAK' to the transmitting side together with the frame number where the error occurred. Thereafter, the receiving side ignores the received frame until the frame of the 'NAK' frame number is received. At this time, when the 'NAK' frame is received, the transmitting side sequentially transmits frames from the corresponding frame number again.

세번째로 (5C)와 같이 판단 불능 프레임 수신후 다음 프레임을 정상 수신한 경우의 동작 과정을 살펴본다. 이때 (4C)의 경우에는 3번째 프레임이 판단 불능 프레임으로 판정되고 네번째 프레임은 정상적으로 수신된 경우이다. 이러한 경우에도 수신측에서는 3번째 프레임 번호로 'NAK"를 전송하고 이후로 수신되는 프레임을 무시하게 되며, 송신측에서는 'NAK'프레임 수신후 해당 프레임부터 다시 순차적으로 나머지 프레임들을 전송한다.Third, the operation process in the case where the next frame is normally received after receiving the undecided frame as shown in (5C) will be described. In the case of (4C), the third frame is determined to be an undeterminable frame, and the fourth frame is normally received. Even in this case, the receiver transmits 'NAK' as the third frame number and ignores the frame received thereafter. The transmitter transmits the remaining frames sequentially from the corresponding frame after receiving the 'NAK' frame.

네번째로 (5D)와 같이 'NAK'전송후 수신 타임이 초과된 경우를 살펴본다. 이때 (4D)의 경우에서는 3번째 프레임의 에러로 판정된 경우이다. 이러한 경우 수신측에서는 수신 타임을 요구하며 해당 프레임 번호의 'NAK'프레임을 발생한다. 이때 수신측에서는 수신 타임이 초과되도록 'NAK'프레임의 내용이 재수신되지 않으면, 다시 수신 타임을 요구하고 해당 프레임 번호의 'NAK'프레임을 발생한다.Fourth, we look at the case where the reception time is exceeded after 'NAK' transmission as in (5D). At this time, in case of (4D), it is determined as an error of the third frame. In this case, the receiver requests a reception time and generates a 'NAK' frame of the corresponding frame number. At this time, the receiving side requests the receiving time again and generates a 'NAK' frame of the corresponding frame number if the contents of the 'NAK' frame are not received again so that the reception time is exceeded.

상술한 바와 같이 비동기 통신 시스템에서 전이중 통신 방식을 사용할 수 있게 됨으로서, 데이타 통신 속도가 빨라지는 동시에 단위 시간당 데이타 전송량을 향상시킬 수 있으며, 동기 방식의 전이중 통신 프로토콜에 비해 프로토콜 구현 방식을 간단하고 용이하게 수행시킬 수 있는 이점이 있다.As described above, the full-duplex communication method can be used in the asynchronous communication system, thereby increasing the data communication speed and improving the data transfer rate per unit time, and making the protocol implementation simpler and easier than the synchronous full-duplex communication protocol. There is an advantage that can be done.

Claims (3)

비동기 통신 방식의 시스템에서 송, 수신 시스템간에 데이타를 통신하는 방법에 있어서, 송신측에서 전송 메세지 발생시 최초 프레임 번호, 최초 동기를 위한 콘트롤 코드 ENQ, 및 프레임 엔드 코드 ETX로 이루어진 제 1 프레임을 전송하는 제 1 과정과, 상기 송신측으로 부터 ENQ 콘트롤 코드를 갖는 제 1 프레임 수신시 수신측에서 다음 프레임 수신 시간을 요구하는 제 2 과정과, 상기 제 1 과정을 수행하여 ENQ 콘트롤 코드를 갖는 제 1 프레임 송신한후 송신측에서 프레임 번호, 데이타 시작 코드 STX, 순수데이타 및 프레임 엔드 코드 ETX, EOT로 이루어진 제 2 프레임을 프레임 번호순으로 전송하며, NAK 프레임 수신시 해당프레임부터 순차적으로 재전송하는 제 3 과정과, 상기 제 2 과정을 수행한후 수신측에서 순차적으로 수신되는 제 2 프레임을 프레임 단위로 분석하여 EOT 프레임 엔드 코드를 갖는 제 2 프레임 수신시 마지막 수신 프레임 번호, 콘트롤 코드 ACK, 프레임 엔드 코드 EOT로 이루어진 제 2 프레임을 송신측으로 전송하고, 프레임 에러 발생시 에러 발생 프레임 번호, 콘트롤 코드 NAK, 프레임 엔드 코드로 이루어진 제 2 프레임을 송신측으로 전송하는 제 4 과정으로 이루어짐을 특징으로 하는 비동기 방식의 전이중 통신 프로토콜 구현 방법.A method of communicating data between a transmitting and receiving system in an asynchronous communication system, comprising: transmitting a first frame comprising an initial frame number, a control code ENQ for initial synchronization, and a frame end code ETX when a transmission message is generated at a transmitter; A first process, a second process of requesting a next frame reception time at a receiving side when receiving a first frame having an ENQ control code from the transmitting side, and a first frame transmission having an ENQ control code by performing the first process A third process of transmitting a second frame consisting of frame number, data start code STX, pure data and frame end code ETX, and EOT in order of frame number, and sequentially retransmitting from the corresponding frame when receiving a NAK frame; After performing the second process, the second frame sequentially received at the receiving end in frame units When receiving the second frame having the EOT frame end code, the second frame consisting of the last received frame number, control code ACK, and frame end code EOT is transmitted to the transmitting side, and when frame error occurs, an error occurs frame number, control code NAK, frame And a fourth process of transmitting a second frame made of an end code to a transmitting side. 송신 및 수신 메세지 버퍼, 프레임 버퍼, 송신 및 수신 버퍼, 임시버퍼의 메모리 맵을 구비하여 비동기 방식의 통신 시스템에서 데이타를 전송하는 방법에 있어서, 상위 계층으로 발생된 전송 메세지를 저장하고 있는 송신 메세지 버퍼의 내용을 프레임 버퍼에 저장하고 메시지 처리 과정과, 1프레임 전송시 송신할 프레임이 최초 프레임일시 수신측과 동기를 위한 제 1 프레임을 송신 버퍼에 저장하고, 제 1 프레임 전송후 상기 프레임 버퍼에 저장하고 있는 메세지를 프레임 번호를 포함하는 제 2 프레임 형태로 변환하여 송신 버퍼에 저장하는 송신 처리 과정과, 상기 수신 버퍼에 저장된 메시지를 프레임 단위로 임시버퍼에 저장하며, 프레임 엔드 코드 수신시 수신 프레임을 분석하여 정상 및 프레임 에러에 따른 응답 제 1 프레임을 송신 버퍼에 저장하는 수신 처리 과정으로 이루어져 송신 모드시 상기 메세지 처리 과정에서 프레임 버퍼에 저장한 프레임을 상기 송신 처리 과정을 통해 순차적으로 수신측으로 송신하고, 수신 모드시 상기 수신 처리 과정에서 프레임 단위로 수신 메세지를 분석하여 송신측으로 전송하도록 동작함을 특징으로 하는 비동기 방식의 전이중 통신 프로토콜 구현 방법.A method of transmitting data in an asynchronous communication system having a send and receive message buffer, a frame buffer, a send and receive buffer, and a temporary buffer memory map, wherein the send message buffer stores a transmission message generated to a higher layer. Is stored in the frame buffer, the message processing process, and the first frame for synchronization with the receiving side when the first frame is transmitted at the time of one frame is stored in the transmission buffer, and the first frame is transmitted and stored in the frame buffer. Converts the message into a second frame including a frame number and stores the message in a transmission buffer, and stores the message stored in the reception buffer in a temporary buffer on a frame-by-frame basis. Analyze and store the response first frame according to the normal and frame error in the transmission buffer. In the transmission mode, the frames stored in the frame buffer in the message processing step are sequentially transmitted to the receiving side through the transmission processing step. In the receiving mode, the received messages are analyzed and transmitted in units of frames in the reception processing step. Method for implementing a full-duplex communication protocol of the asynchronous type, characterized in that it operates to transmit to the side. 제 2 항에 있어서, 수신 처리 과정이 송신측으로 부터 제 1 프레임(ENQ) 수신시 송신측과 동기를 맞추는 과정과, 상기 과정 수행후 송신측으로 부터 제 2 프레임(SOH) 수신시 수신하여야 할 제 2 프레임 번호와 현 수신 제 2 프레임 번호를 분석하여 정상일시 임시버퍼의 내용을 상위 계층에서 리드할 수 있도록 수신 메세지 버퍼에 저장하는 과정과, 상기 수신 제 2 프레임 저장후 현 수신 프레임이 마지막 프레임인가 검사하여 마지막 프레임일시에만 정상 수신 완료 상태를 송신측으로 응답하기 위하여 제 1 프레임(ACK)을 상기 송신버퍼에 저장하는 과정과, 상기 제 2 프레임 번호 분석과정에서 현 수신 제 2 프레임 번호가 더 클시 프레임 에러 상태임을 응답하기 위하여 제 2 프레임(NAK)을 상기 송신버퍼에 저장하는 과정으로 이루어짐을 특징으로 하는 비동기 방식의 전이중 통신 구현 방법.The method of claim 2, wherein the reception process is performed by synchronizing with the transmitting side when receiving the first frame (ENQ) from the transmitting side, and the second frame to be received when receiving the second frame (SOH) from the transmitting side after performing the above process. Analyzing the frame number and the current received second frame number and storing the contents of a normal temporary temporary buffer in a reception message buffer so that a higher layer can be read; and checking whether the current received frame is the last frame after storing the received second frame. Storing a first frame (ACK) in the transmission buffer in order to respond to the sender a normal reception completion state only at the last frame date, and when the current received second frame number is larger in the process of analyzing the second frame number, a frame error Asynchronously characterized in that the second frame (NAK) is stored in the transmission buffer to respond to the state Full-duplex communication method implemented in the formula.
KR1019900018992A 1990-11-22 1990-11-22 Method for embodying full duplex communication protocol KR930004100B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019900018992A KR930004100B1 (en) 1990-11-22 1990-11-22 Method for embodying full duplex communication protocol

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019900018992A KR930004100B1 (en) 1990-11-22 1990-11-22 Method for embodying full duplex communication protocol

Publications (2)

Publication Number Publication Date
KR920011137A KR920011137A (en) 1992-06-27
KR930004100B1 true KR930004100B1 (en) 1993-05-20

Family

ID=19306384

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019900018992A KR930004100B1 (en) 1990-11-22 1990-11-22 Method for embodying full duplex communication protocol

Country Status (1)

Country Link
KR (1) KR930004100B1 (en)

Also Published As

Publication number Publication date
KR920011137A (en) 1992-06-27

Similar Documents

Publication Publication Date Title
US5519693A (en) High speed transmission line interface
EP0454364A2 (en) High speed transport protocol with two windows
US20070291646A1 (en) Retransmission control method and device
JPH0771125B2 (en) Data communication method and data communication system
US4896151A (en) Simultaneous communication method and system
JPH0656994B2 (en) Checkpoint / frame number reduction method
JPS59144243A (en) Variable time division communication system station apparatus
US5228129A (en) Synchronous communication interface for reducing the effect of data processor latency
KR930004100B1 (en) Method for embodying full duplex communication protocol
JPH0552106B2 (en)
KR100366018B1 (en) Data transmission system and method for transmitting data frames
JPS6361532A (en) Interruption data transfer system
CA1307347C (en) Data communication systems
JPS6172432A (en) Communication control system
JPH03114334A (en) Window flow control system
KR930001200B1 (en) Communication method of full duplex protocol by asynchronous system
JPH04263545A (en) Data communication equipment
KR20010064867A (en) Method for automatically repeating retransmission and receiving in data transfer system
JPS63228838A (en) Communication control processing method
JPH0496534A (en) Selection retransmission system for hold
JP2841505B2 (en) Communication control device
JPH0955719A (en) Interface device for data communication
JPH06188942A (en) Data communication equipment
JPS6258745A (en) Multiple address communication system
JPH06112973A (en) Packet re-transmission system

Legal Events

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

Payment date: 20080404

Year of fee payment: 16

LAPS Lapse due to unpaid annual fee