[go: up one dir, main page]

KR101349553B1 - Data communication method and data communication module using the same - Google Patents

Data communication method and data communication module using the same Download PDF

Info

Publication number
KR101349553B1
KR101349553B1 KR1020110134365A KR20110134365A KR101349553B1 KR 101349553 B1 KR101349553 B1 KR 101349553B1 KR 1020110134365 A KR1020110134365 A KR 1020110134365A KR 20110134365 A KR20110134365 A KR 20110134365A KR 101349553 B1 KR101349553 B1 KR 101349553B1
Authority
KR
South Korea
Prior art keywords
priority
data
transmission data
queue
buffer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
KR1020110134365A
Other languages
Korean (ko)
Other versions
KR20130067622A (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 KR1020110134365A priority Critical patent/KR101349553B1/en
Publication of KR20130067622A publication Critical patent/KR20130067622A/en
Application granted granted Critical
Publication of KR101349553B1 publication Critical patent/KR101349553B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6275Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5681Buffer or queue management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

데이터 통신 방법 및 이를 이용한 데이터 통신 모듈이 개시된다. 본 발명에 따른 데이터 통신 방법은 복수의 버퍼 및 우선순위가 설정된 복수의 큐를 포함하는 통신 모듈의 데이터 통신 방법에 있어서, 상기 복수의 버퍼 중 데이터가 저장되어 있지 않아 사용 가능한 버퍼가 존재하는지를 판단하는 단계, 사용 가능한 버퍼가 존재하는 경우 해당 버퍼에 송신 데이터를 저장하는 단계 및 상기 해당 버퍼를 상기 저장된 송신 데이터의 우선순위와 동일한 우선순위로 설정된 큐에 연결하는 단계를 포함한다. 이에 의하여 우선 순위가 높은 데이터 순서대로 데이터 송신이 가능하게 되어 정해진 시간 내에 데이터를 전송할 수 있어 통신의 신뢰성을 높이게 된다. A data communication method and a data communication module using the same are provided. The data communication method according to the present invention is a data communication method of a communication module including a plurality of buffers and a plurality of queues having a priority setting, the method comprising: determining whether there is a buffer available because data is not stored among the plurality of buffers; And storing the transmission data in the buffer if there is an available buffer, and connecting the buffer to a queue set to the same priority as the priority of the stored transmission data. As a result, data can be transmitted in order of high priority data, so that data can be transmitted within a predetermined time, thereby improving communication reliability.

Description

데이터 통신 방법 및 이를 이용한 데이터 통신 모듈 {DATA COMMUNICATION METHOD AND DATA COMMUNICATION MODULE USING THE SAME}DATA COMMUNICATION METHOD AND DATA COMMUNICATION MODULE USING THE SAME {DATA COMMUNICATION METHOD AND DATA COMMUNICATION MODULE USING THE SAME}

본 발명은 데이터 통신 방법 및 이를 이용한 데이터 통신 모듈에 관한 것으로, 더욱 상세하게는 우선 순위에 따라 데이터 통신을 수행함으로써 데이터 통신의 신뢰성을 높일 수 있는 데이터 통신 방법 및 이를 이용한 데이터 통신 모듈에 관한 것이다.
The present invention relates to a data communication method and a data communication module using the same. More particularly, the present invention relates to a data communication method and a data communication module using the same, which can increase the reliability of data communication by performing data communication according to priority.

종래의 통신 모듈은 큐(QUEUE)에 들어간 순서대로 데이터를 송신하는 방식으로 우선 순위가 높은 데이터가 우선 수위가 낮은 데이터보다 뒤쪽에 존재하는 경우 정해진 시간 안에 데이터를 전송하지 못하는 문제점이 있었다. 이는 큐의 구조 자체에서 발생하는 문제점이다. The conventional communication module has a problem in that data cannot be transmitted within a predetermined time when data having a high priority exists behind data having a low priority level by transmitting data in the order of entering a queue. This is a problem with the structure of the queue itself.

큐는 추가되는 자료를 차례대로 저장한다. 큐의 가장 큰 특징으로는 FIFO(First-In-First-Out)을 들 수 있다. 즉 먼저 저장된 자료가 나중 저장된 자료보다 항상 앞서서 나온다. 큐의 이러한 특성 때문에 상술한 바와 같이 우선 순위에도 불구하고 먼저 입력된 데이터 먼저 전송해야하는 불편함이 있었다.The queue stores the data as it is added. The biggest feature of the queue is FIFO (First-In-First-Out). That is, the first stored data always comes before the later stored data. Due to this characteristic of the queue, it is inconvenient to transmit the first input data first despite the priority as described above.

도 1은 종래 통신 모듈의 구성을 나타낸다. 종래의 통신 모듈은 저장 태스크와 송신 태스크를 수행하며, 통신 모듈은 복수의 버퍼(buffer)를 포함하는 메모리 풀(pool)(10)과 큐(20)를 포함한다.1 shows a configuration of a conventional communication module. The conventional communication module performs a storage task and a transmission task, and the communication module includes a memory pool 10 and a queue 20 including a plurality of buffers.

도 2a는 종래 통신 모듈의 저장 태스크를 수행하는 과정을 나타내는 흐름도이다. 도 2a에 도시된 바와 같이 메모리 풀(10)에 사용하지 않는 버퍼가 존재하지 않는 경우(S30-No), 저장 태스크를 종료하고, 버퍼가 존재하면(S30-Yes), 버퍼에 송신 데이터를 저장한다(S32). 그리고 버퍼를 큐(20)에 연결하여(S34) 저장 태스크를 수행한다. 즉 큐(20)는 송신할 데이터를 저장하고 있는 버퍼를 가리키는 포인터 배열이다. 이렇게 저장된 데이터를 송신하는 송신 태스크는 큐(20)에서 버퍼를 가져와 송신한다. 이를 도 2b에 도시하였다.2A is a flowchart illustrating a process of performing a storage task of a conventional communication module. As shown in FIG. 2A, when there is no buffer in the memory pool 10 (S30-No), the storing task is terminated. If the buffer exists (S30-Yes), the transmission data is stored in the buffer. (S32). The buffer is connected to the queue 20 (S34) to perform a storage task. In other words, the queue 20 is an array of pointers to the buffers storing the data to be transmitted. The transmission task for transmitting the stored data takes a buffer from the queue 20 and transmits it. This is shown in Figure 2b.

큐(20)에 데이터가 존재하지 않으면(S40-No) 송신 태스크를 수행하지 않는다. 큐(20)에 데이터가 존재하면(S40-Yes), 큐에서 버퍼를 분리한다(S42). 버퍼가 분리되면 버퍼에 저장된 데이터를 전송한다(S44).If there is no data in the queue 20 (S40-No), the transmission task is not performed. If data exists in the queue 20 (S40-Yes), the buffer is separated from the queue (S42). If the buffer is separated, the data stored in the buffer is transmitted (S44).

이렇게 종래 통신 모듈에 있어서는 하나의 큐를 사용하기 때문에 저장 태스크에 의해 순서대로 저장된 데이터는 송신 태스크에서 저장된 순서대로만 송신이 가능하다. 따라서 우선순위가 존재하는 경우에도 그에 무관하게 데이터를 전송하기 때문에 정해진 시간 내에 데이터를 전송하지 못하는 문제점이 있다.
Thus, in the conventional communication module, since one queue is used, data stored in order by the storage task can be transmitted only in the order stored in the transmission task. Therefore, even if a priority exists, the data is transmitted irrespective of it, so there is a problem in that data cannot be transmitted within a predetermined time.

본 발명은 상술한 문제점을 감안하여 안출된 것으로, 본 발명의 목적은 우선 순위가 높은 데이터 순서대로 데이터 송신이 가능한 데이터 통신 방법 및 이를 이용한 데이터 통신 모듈을 제공함에 있다.
The present invention has been made in view of the above-described problems, and an object of the present invention is to provide a data communication method and a data communication module using the same in which data can be transmitted in order of high priority data.

상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 데이터 통신 방법은, 복수의 버퍼 및 우선순위가 설정된 복수의 큐를 포함하는 통신 모듈의 데이터 통신 방법에 있어서, 상기 복수의 버퍼 중 데이터가 저장되어 있지 않아 사용 가능한 버퍼가 존재하는지를 판단하는 단계; 사용 가능한 버퍼가 존재하는 경우 해당 버퍼에 송신 데이터를 저장하는 단계; 및 상기 해당 버퍼를 상기 저장된 송신 데이터의 우선순위와 동일한 우선순위로 설정된 큐에 연결하는 단계;를 포함한다.In the data communication method according to an embodiment of the present invention for achieving the above object, in the data communication method of the communication module comprising a plurality of buffers and a plurality of queues set priority, the data of the plurality of buffers are stored Determining whether there is a buffer available because of no use; Storing the transmission data in the buffer if an available buffer exists; And connecting the corresponding buffer to a queue set to the same priority as that of the stored transmission data.

그리고 상기 큐에 연결하는 단계는, 우선 상기 저장된 송신 데이터의 우선순위가 제1 우선순위인지를 판단하는 단계; 및 상기 송신 데이터의 우선순위가 제1 우선순위가 아닌 경우 차순위 우선순위인지를 반복하여 판단하는 단계;를 포함할 수 있다.The step of connecting to the queue may include: determining whether a priority of the stored transmission data is a first priority; And repeatedly determining whether a priority of the transmission data is a next priority if the priority of the transmission data is not the first priority.

또한 상기 제1 우선순위로 설정된 큐에 송신 데이터가 존재하는지를 판단하는 단계; 상기 제1 우선순위로 설정된 큐에 송신 데이터가 존재하는 경우 상기 제1 우선순위와 연결된 버퍼에 저장된 송신 데이터를 추출하는 단계; 및 상기 추출된 송신 데이터를 전송하는 단계;를 더 포함할 수 있다.Determining whether transmission data exists in a queue set to the first priority; Extracting transmission data stored in a buffer connected with the first priority when transmission data exists in the queue set as the first priority; And transmitting the extracted transmission data.

그리고 상기 송신 데이터를 전송하는 단계 이후, 제2 우선순위로 설정된 큐부터 그 차순위 우선순위로 설정된 큐에 상기 송신 데이터가 존재하는지를 차례로 판단하여, 상기 송신 데이터가 존재하는 경우 우선순위 순서대로 송신 데이터를 추출하여 전송하는 단계;를 더 포함할 수 있다.After transmitting the transmission data, the transmission data is sequentially determined whether the transmission data exists in the queue set as the second priority from the queue set as the second priority, and when the transmission data exists, the transmission data is ordered in the order of priority. Extracting and transmitting; may further include.

한편 상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 데이터 통신 모듈은 송신 데이터를 저장하기 위한 복수의 버퍼; 우선순위가 설정된 복수의 큐; 및 상기 복수의 버퍼 중 데이터가 저장되어 있지 않아 사용 가능한 버퍼가 존재하는지를 판단하고, 사용 가능한 버퍼가 존재하는 경우 해당 버퍼에 송신 데이터를 저장한 후 상기 해당 버퍼를 상기 저장된 송신 데이터의 우선순위와 동일한 우선순위로 설정된 큐에 연결하는 제어부;를 포함한다.Meanwhile, a data communication module according to an embodiment of the present invention for achieving the above object includes a plurality of buffers for storing transmission data; A plurality of queues having priorities set; And determining whether there is a buffer available because no data is stored among the plurality of buffers, and if the buffer is available, storing the transmission data in the buffer and then setting the corresponding buffer as the priority of the stored transmission data. It includes a control unit for connecting to the queue set to the priority.

그리고 상기 제어부는, 상기 저장된 송신 데이터의 우선순위가 제1 우선순위인지를 판단하고, 상기 송신 데이터의 우선순위가 제1 우선순위가 아닌 경우 차순위 우선순위인지를 반복하여 판단하면서, 상기 저장된 송신 데이터의 우선순위와 동일한 우선순위로 설정된 큐에 연결할 수 있다.The controller determines whether a priority of the stored transmission data is a first priority and repeatedly determines whether a priority of the transmission data is a next priority when the priority of the transmission data is not the first priority. You can connect to a queue set to the same priority as the.

또한 상기 송신 데이터를 외부로 전송하기 위한 통신부;를 더 포함하며, 상기 제어부는, 상기 제1 우선순위로 설정된 큐에 송신 데이터가 존재하는지를 판단하고, 상기 제1 우선순위로 설정된 큐에 송신 데이터가 존재하는 경우 상기 제1 우선순위와 연결된 버퍼에 저장된 송신 데이터를 추출하여, 상기 추출된 송신 데이터를 전송하도록 상기 통신부를 제어할 수 있다.The apparatus may further include a communication unit for transmitting the transmission data to the outside, wherein the controller determines whether transmission data exists in the queue set as the first priority, and transmits data to the queue set as the first priority. If present, the communication unit may be controlled to extract transmission data stored in a buffer connected with the first priority and transmit the extracted transmission data.

그리고 상기 제어부는, 제2 우선순위로 설정된 큐부터 그 차순위 우선순위로 설정된 큐에 송신 데이터가 존재하는지를 차례로 판단하여, 상기 송신 데이터가 존재하는 경우 우선순위 순서대로 송신 데이터를 추출하여 외부로 전송하도록 상기 통신부를 제어할 수 있다.
The controller sequentially determines whether transmission data exists in the queue set as the second priority from the queue set as the second priority, and extracts the transmission data in order of priority when the transmission data exists and transmits it to the outside. The communication unit may be controlled.

상기 구성에 따른 데이터 통신 방법 및 이를 이용한 데이터 통신 모듈에 의하면 우선 순위가 높은 데이터 순서대로 데이터 송신이 가능하게 되어 정해진 시간 내에 데이터를 전송할 수 있어 통신의 신뢰성을 높이게 된다.
According to the data communication method and the data communication module using the same according to the above configuration, data can be transmitted in the order of high priority data, so that data can be transmitted within a predetermined time, thereby increasing the reliability of communication.

도 1은 종래 통신 모듈의 구성을 나타내는 도면,
도 2a는 종래 통신 모듈의 저장 태스크를 수행하는 과정을 나타내는 도면,
도 2b는 종래 통신 모듈의 송신 태스크를 수행하는 과정을 나타내는 도면,
도 3은 본 발명의 일 실시예에 따른 통신 모듈의 동작을 설명하기 위한 도면,
도 4는 본 발명의 일 실시예에 따른 데이터 통신 방법 중 저장 태스크 동작을 나타내는 흐름도,
도 5는 본 발명의 일 실시예에 따른 데이터 통신 방법 중 송신 태스크 동작을 나타내는 흐름도, 그리고
도 6은 본 발명의 일 실시예에 따른 데이터 통신 모듈의 구성을 나타내는 블록도이다.
1 is a view showing the configuration of a conventional communication module,
2A is a diagram illustrating a process of performing a storage task of a conventional communication module;
2B is a diagram illustrating a process of performing a transmission task of a conventional communication module;
3 is a view for explaining the operation of the communication module according to an embodiment of the present invention;
4 is a flowchart illustrating a storage task operation in a data communication method according to an embodiment of the present invention;
5 is a flowchart illustrating a transmission task operation in a data communication method according to an embodiment of the present invention;
6 is a block diagram illustrating a configuration of a data communication module according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It is to be understood, however, that the invention is not to be limited to the specific embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.

또한, 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 이하에서는 첨부된 도면을 참조하면서 본 발명을 더욱 상세히 설명하기로 한다.In the following description, well-known functions or constructions are not described in detail since they would obscure the invention in unnecessary detail. Hereinafter, the present invention will be described in more detail with reference to the accompanying drawings.

도 3은 본 발명의 일 실시예에 따른 통신 모듈의 동작을 설명하기 위한 도면이다.3 is a view for explaining the operation of the communication module according to an embodiment of the present invention.

도 3에 도시된 바와 같이 본 발명의 일 실시예에 따른 통신 모듈의 동작은 저장 태스크(task)와 송신 태스크로 나뉠 수 있다. 이와 관련해서는 도 4 및 도 5의 흐름도를 참조하면서 구체적으로 설명하기로 하고, 도 3에서는 통신 모듈(100)의 동작 방법을 전반적으로 설명하기로 한다.As shown in FIG. 3, an operation of a communication module according to an embodiment of the present invention may be divided into a storage task and a transmission task. This will be described in detail with reference to the flowcharts of FIGS. 4 and 5, and an operation method of the communication module 100 will be described generally in FIG. 3.

통신 모듈(100)은 복수의 버퍼로 이루어진 메모리 풀(pool)(110)과 우선순위가 설정된 복수의 큐(Queue)(120-1,120-2,…,120-n)를 포함한다. 여기서 복수의 큐(120-1,120-2,…,120-n)는 제1큐(120-1), 제2큐(120-2) 순으로 우선순위가 높게 설정되어 있다. 우선순위란 통신모듈을 통해 외부로 전송되는 데이터의 송신 순서를 말한다. 즉 중요도에 따라, 혹은 사용자의 설정에 따라 우선적으로 송신되어야 할 데이터가 저장되는 큐의 우선순위가 설정될 수 있다.The communication module 100 includes a memory pool 110 including a plurality of buffers and a plurality of queues 120-1, 120-2,. In this case, the plurality of queues 120-1, 120-2,..., 120-n have a higher priority in order of the first queue 120-1 and the second queue 120-2. Priority refers to the transmission order of data transmitted to the outside through the communication module. That is, the priority of the queue in which data to be transmitted is preferentially stored may be set according to the importance or the user's setting.

통신 모듈(100)은 송신할 데이터를 저장하는 저장 태스크를 먼저 수행한다. 우선 메모리풀(110)에 포함된 복수의 버퍼 중에 사용 가능한 버퍼가 존재하는지를 판단한다. 즉 메모리풀(110)의 버퍼들이 모두 데이터를 저장하고 있다면 저장 태스크를 수행하지 않는다.The communication module 100 first performs a storage task of storing data to be transmitted. First, it is determined whether an available buffer exists among the plurality of buffers included in the memory pool 110. That is, if the buffers of the memory pool 110 are all storing data, the storage task is not performed.

버퍼에 사용 공간이 존재한다면 송신할 데이터를 저장한다. 다음으로 송신 데이터의 우선순위를 판단한다. 송신 데이터의 우선순위란 먼저 송신되어야 할 순서를 의미하며, 사용자에 의하여 설정될 수 있다. 우선순위를 판단한 후 제1 우선순위를 가지면, 제1 우선순위를 갖는 큐인 제1큐(120-1)에 버퍼를 연결한다. 만약 제2 우선순위를 갖는 송신 데이터라면 제2큐(120-2)에 연결하며, 제n 우선순위를 갖는 송신 데이터라면 제n큐(120-n)에 연결한다. If there is space available in the buffer, it stores the data to be sent. Next, the priority of transmission data is determined. The priority of the transmission data means an order to be transmitted first and may be set by the user. After determining the priority and having the first priority, the buffer is connected to the first queue 120-1, which is a queue having the first priority. If the transmission data having the second priority is connected to the second queue 120-2, and if the transmission data having the nth priority is connected to the nth queue 120-n.

이와 같은 방식으로 통신 모듈(100)은 저장 태스크를 수행하여 송신할 데이터들을 우선순위에 맞게 저장한다. 다음은 이러한 방식으로 저장된 데이터를 송신하는 송신 태스크의 동작을 설명한다.In this manner, the communication module 100 performs a storage task to store data to be transmitted in a priority order. The following describes the operation of a transmission task for transmitting data stored in this manner.

먼저 통신 모듈(100)은 가장 우선순위가 높은 제1큐(120-1)에 데이터가 존재하는지를 판단하고 제1큐(120-1)에 데이터가 존재한다면 존재하는 데이터를, 연결된 버퍼로부터 분리하여 차례차례 외부로 송신한다.First, the communication module 100 determines whether data exists in the first queue 120-1 having the highest priority, and if data exists in the first queue 120-1, separates the existing data from the connected buffer. Send outwards in order.

다음으로 제2큐(120-2)에 존재하는 데이터를 차례차례 외부로 송신하고, 제n큐(120-n)에 존재하는 데이터까지 모두 송신하면 송신 태스크가 종료된다. 이렇게 복수의 큐(120-1,120-2,…,120-n)를 이용하여 데이터를 송신하게 되면 가장 우선순위가 높은 데이터부터 차례로 송신할 수 있어 정해진 시간 내에 데이터를 전송할 수 있게 되어 통신의 신뢰성을 높이는 효과를 갖는다.Next, if the data existing in the second queue 120-2 is sequentially transmitted to the outside, and all the data existing in the nth queue 120-n is transmitted, the transmission task is terminated. When data is transmitted using the plurality of queues 120-1, 120-2,..., 120-n in this manner, the data with the highest priority can be transmitted in order, thereby allowing data to be transmitted within a predetermined time. Height has an effect.

도 4는 본 발명의 일 실시예에 따른 데이터 통신 방법 중 저장 태스크 동작을 나타내는 흐름도이다.4 is a flowchart illustrating a storage task operation in a data communication method according to an embodiment of the present invention.

먼저 메모리풀(110)에 현재 사용하지 않는 버퍼가 존재하는지를 판단한다(S200). 메모리풀(110)에는 n개의 버퍼를 가지고 있고, 데이터 통신 방법에 있어서 저장 태스크를 수행하는 데 이용된다. 만약 현재 모든 버퍼가 사용된 경우(S200-No)에는 작업을 종료한다.First, it is determined whether a buffer that is not currently used exists in the memory pool 110 (S200). The memory pool 110 has n buffers and is used to perform a storage task in a data communication method. If all buffers are currently used (S200-No), the operation ends.

메모리풀(110)에 현재 사용하지 않는 버퍼가 존재한다면(S200-Yes), 외부로 송신할 데이터를 버퍼에 저장한다(S210). 다음 상기 송신할 데이터의 우선순위가 1인지를 판단한다(S220). 만약 그렇다면(S220-Yes), 버퍼를 우선순위 1큐, 즉 제1큐(120-1)에 연결한다. 우선순위 1큐는 우선순위가 1인 데이터의 저장 버퍼를 가리키는 배열이다.If a buffer that is not currently used exists in the memory pool 110 (S200-Yes), data to be transmitted to the outside is stored in the buffer (S210). Next, it is determined whether the priority of the data to be transmitted is 1 (S220). If so (S220-Yes), the buffer is connected to the priority 1 queue, that is, the first queue 120-1. The priority 1 queue is an array that points to the storage buffer of data with priority 1.

송신할 데이터의 우선순위가 1이 아닌 경우에는 우선순위가 2인지를 판단하고, 그렇지 않다면 우선순위가 3인지를 판단하는 과정을 거친다. 즉, 우선순위가 1이 아닌 경우(S220-No)에는 버퍼를 차순위 큐에 연결한다(S240). 이와 같은 과정을 거치게 되면 우선순위가 1인 송신 데이터의 경우 우선순위가 1인 제1큐(120-1)와 해당 버퍼가 연결되고, 우선순위가 2인 송신 데이터의 경우 우선순위가 2인 제2큐(120-2)와 해당 버퍼가 연결되며, 우선순위가 n인 송신 데이터의 경우 우선순위가 n인 제n큐(120-n)와 해당 버퍼가 연결된다.If the priority of the data to be transmitted is not 1, it is determined whether the priority is 2, otherwise, it is determined whether the priority is 3. That is, when the priority is not 1 (S220-No), the buffer is connected to the next priority queue (S240). Through this process, the priority data of the first queue 120-1 and the corresponding buffer are connected in the case of the transmission data of priority 1, and the priority 2 of the transmission data in the case of the transmission data of priority 2 The two queues 120-2 and the corresponding buffer are connected, and in the case of transmission data having a priority of n, the nth queue 120-n having a priority of n and the corresponding buffer are connected.

이러한 방식으로 송신할 데이터를 저장한 버퍼를 우선순위에 따라 각기 다른 큐에 연결할 수 있다.In this way, buffers containing data to be sent can be connected to different queues in order of priority.

도 5는 본 발명의 일 실시예에 따른 데이터 통신 방법 중 송신 태스크 동작을 나타내는 흐름도이다.5 is a flowchart illustrating a transmission task operation in a data communication method according to an embodiment of the present invention.

먼저 제1큐(120-1)에 데이터가 존재하는지를 판단한다(S300). 상술한 바와 같이 제1큐(120-1)는 우선순위가 1인 큐를 나타내며, 이는 송신 우선순위가 1인 데이터를 포함하는 버퍼와 연결되어 있다.First, it is determined whether data exists in the first queue 120-1 (S300). As described above, the first queue 120-1 represents a queue having a priority of 1, which is connected to a buffer including data having a transmission priority of 1.

제1큐(120-1)에 데이터가 존재한다면(S300-Yes), 제1큐(120-1)의 데이터를 분리한 후 전송한다. 즉 제1큐(120-1)와 연결된 버퍼로부터 송신 데이터를 분리한 후 전송하는 동작을 수행한다. 그리고 다시 제1큐(120-1)에 송신 데이터가 남아 있는지를 판단한다(S300). 만약 여전히 제1큐(120-1)에 송신 데이터가 남아 있다면(S300-Yes), 이는 우선순위가 1인 데이터가 여전히 존재함을 의미하므로 다시 제1큐(120-1)의 데이터를 분리하여 전송한다(S310). 이와 같은 과정을 반복하여 제1큐(120-1)와 연결된 버퍼가 포함하는 송신 데이터를 모두 전송한다.If data exists in the first queue 120-1 (S300-Yes), the data of the first queue 120-1 is separated and then transmitted. That is, the data is transmitted after separating the transmission data from the buffer connected to the first queue 120-1. In operation S300, it is determined whether transmission data remains in the first queue 120-1. If there is still transmission data in the first queue 120-1 (S300-Yes), this means that data with priority 1 still exists, and thus separates data from the first queue 120-1 again. Transmit (S310). This process is repeated to transmit all transmission data included in the buffer connected to the first queue 120-1.

이렇게 제1큐(120-1)의 모든 데이터를 전송하고 더 이상 데이터가 존재하지 않는다면(S300-No), 제2큐(120-2)에 데이터가 존재하는지를 판단한다(S320). 제2큐(120-2)에서도 제1큐(120-1)에서와 마찬가지로 동작한다. 즉 제2큐(120-2)에 데이터가 존재한다면(S320-Yes), 제2큐(120-2)의 데이터를 분리한 후 전송하고(S330), 다시 제2큐(120-2)에 데이터가 존재하는지를 판단하여(S320), 제2큐(120-2)와 연결된 버퍼에 포함된 제2 우선순위를 갖는 송신 데이터들을 모두 전송한다.If all the data of the first queue 120-1 is transmitted as described above and no more data exists (S300-No), it is determined whether data exists in the second queue 120-2 (S320). The second queue 120-2 also operates in the same manner as the first queue 120-1. That is, if data exists in the second queue 120-2 (S320-Yes), the data of the second queue 120-2 is separated and transmitted (S330), and the second queue 120-2 is again transmitted. It is determined whether the data exists (S320), and transmits all transmission data having the second priority included in the buffer connected to the second queue 120-2.

제2큐(120-2)에 데이터가 더 이상 존재하지 않으면(S320-No), 제3큐, 제4큐, …로 넘어가 동일한 동작을 반복한다. 마지막 큐인 제n큐(120-n)의 경우 역시 제n큐에 데이터가 존재하는지를 판단하고(S340), 제n큐(120-n)에 데이터가 존재한다면(S340-Yes), 제n큐(120-n)과 연결된 버퍼에 존재하는 데이터를 분리한 후 전송한다(S350). 이와 같은 과정을 제n큐(120-n)에 데이터가 존재하지 않을 때까지 판단한다. If data no longer exists in the second queue 120-2 (S320-No), the third queue, the fourth queue,... Go on and repeat the same operation. In the case of the last queue, the nth queue 120-n, it is also determined whether data exists in the nth queue (S340), and if the data exists in the nth queue 120-n (S340-Yes), the nth queue ( 120-n) and separates the data present in the buffer connected to the transmission (S350). This process is determined until there is no data in the n-th queue 120-n.

이와 같은 과정을 거치면 우선순위에 따라 정렬된 제1큐(120-1)부터 제n큐(120-n)에 저장된 데이터들을 차례로 전송할 수 있게 된다. 즉 우선순위에 따라 데이터들을 전송할 수 있게 된다.Through this process, data stored in the first queue 120-1 to the nth queue 120-n arranged according to the priority can be sequentially transmitted. In other words, data can be transmitted according to priority.

마지막으로 도 6은 본 발명의 일 실시예에 따른 데이터 통신 모듈의 구성을 나타내는 블록도이다. 도 6에 도시된 바와 같이 본 발명의 일 실시예에 따른 데이터 통신 모듈(100)은 메모리풀(110), 복수의 큐(120), 제어부(130) 및 통신부(140)를 포함한다. 본 발명의 일 실시예에 따른 데이터 통신 모듈(100)의 동작과 관련해서는 위에서 설명한 바와 동일하기 때문에 구체적인 설명은 생략하고, 각 구성의 기능을 위주로 설명하기로 한다.6 is a block diagram illustrating a configuration of a data communication module according to an embodiment of the present invention. As shown in FIG. 6, the data communication module 100 according to an embodiment of the present invention includes a memory pool 110, a plurality of queues 120, a controller 130, and a communication unit 140. Since the operation of the data communication module 100 according to an embodiment of the present invention is the same as described above, a detailed description thereof will be omitted and the function of each component will be mainly described.

메모리풀(110)은 복수의 버퍼(1,2,…,n)를 구비하며 송신 데이터를 저장하는 기능을 갖는다. 각각의 버퍼는 후술할 큐와 연결된다.The memory pool 110 includes a plurality of buffers 1, 2,..., N, and has a function of storing transmission data. Each buffer is associated with a queue to be described later.

복수의 큐(120)는 우선순위가 설정되며, 상술한 메모리풀(110)의 각 버퍼와 연결된다.The plurality of queues 120 are prioritized and connected to the respective buffers of the memory pool 110 described above.

제어부(130)는 메모리풀(110)에 구비된 복수의 버퍼 중 사용하지 않는 버퍼가 존재하는지를 판단하고, 사용하지 않는 버퍼가 존재하는 경우 해당 버퍼에 송신 데이터를 저장한 후 상기 해당 버퍼를 상기 저장된 송신 데이터의 우선순위와 동일한 우선순위로 설정된 큐(120)에 연결하는 기능을 갖는다. The controller 130 determines whether an unused buffer exists among a plurality of buffers provided in the memory pool 110, and if there is an unused buffer, stores the transmission data in the buffer and stores the corresponding buffer. It has a function of connecting to the queue 120 set to the same priority as the priority of the transmission data.

또한 제어부(130)는 저장된 송신 데이터의 우선순위가 제1 우선순위인지를 판단하고, 상기 송신 데이터의 우선순위가 제1 우선순위인가 아닌 경우 차순위 우선순위인지를 반복하여 판단하면서, 상기 저장된 송신 데이터의 우선순위와 동일한 우선순위로 설정된 큐(120)에 연결한다.In addition, the controller 130 determines whether the priority of the stored transmission data is the first priority, and repeatedly determines whether the priority of the transmission data is the next priority if the priority of the transmission data is not the first priority. The queue 120 is set to the same priority as that of the queue 120.

통신부(140)는 송신 데이터를 외부로 전송하는 기능을 가지며, 데이터 송신과 관련해서는 어떠한 통신 수단(방법)을 이용해도 무방하다. 제어부(130)는 제1 우선순위로 설정된 큐에 송신 데이터가 존재하는지를 판단하고, 상기 제1 우선순위로 설정된 큐에 송신 데이터가 존재하는 경우 상기 제1 우선순위와 연결된 버퍼에 저장된 송신 데이터를 추출하여, 상기 추출된 송신 데이터를 전송하도록 통신부(140)를 제어하게 된다.The communication unit 140 has a function of transmitting transmission data to the outside, and any communication means (method) may be used in connection with data transmission. The controller 130 determines whether transmission data exists in the queue set as the first priority, and extracts transmission data stored in a buffer connected to the first priority when transmission data exists in the queue set as the first priority. Thus, the communication unit 140 is controlled to transmit the extracted transmission data.

또한 제어부(130)는 제2 우선순위로 설정된 큐부터 그 차순위 우선순위로 설정된 큐에 송신 데이터가 존재하는지를 차례로 판단하여, 상기 송신 데이터가 존재하는 경우 우선순위 순서대로 송신 데이터를 추출하여 외부로 전송하도록 상기 통신부(140)를 제어한다.In addition, the controller 130 sequentially determines whether transmission data exists in the queue set as the second priority from the queue set as the second priority, and extracts the transmission data in order of priority when the transmission data exists and transmits it to the outside. The communication unit 140 to control.

상기 구성에 따른 데이터 통신 방법 및 이를 이용한 데이터 통신 모듈에 의하면 우선 순위가 높은 데이터 순서대로 데이터 송신이 가능하게 되어 정해진 시간 내에 데이터를 전송할 수 있어 통신의 신뢰성을 높이게 된다.According to the data communication method and the data communication module using the same according to the above configuration, data can be transmitted in the order of high priority data, so that data can be transmitted within a predetermined time, thereby increasing the reliability of communication.

상기한 바에서, 다양한 실시예에서 설명한 각 구성요소 및/또는 기능은 서로 복합적으로 결합하여 구현될 수 있으며, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
In the foregoing description, each component and / or function described in various embodiments may be implemented in combination with each other, and those skilled in the art may recognize the present invention described in the claims below. It will be understood that various modifications and variations can be made in the present invention without departing from the spirit and scope.

100.............................................통신 모듈
110.............................................메모리풀
120.............................................큐
130.............................................제어부
140.............................................통신부
100 ....................................... Communication module
110 ....................................................... Memory Pool
120 ........................................ Cue
130 .....................
140 ............................................

Claims (8)

복수의 버퍼 및 우선순위가 설정된 복수의 큐를 포함하는 통신 모듈의 데이터 통신 방법에 있어서,
상기 복수의 버퍼 중 데이터가 저장되어 있지 않아 사용 가능한 버퍼가 존재하는지를 판단하는 단계;
사용 가능한 버퍼가 존재하는 경우 해당 버퍼에 송신 데이터를 저장하는 단계; 및
상기 해당 버퍼를 상기 저장된 송신 데이터의 우선순위와 동일한 우선순위로 설정된 큐에 연결하는 단계;를 포함하는 데이터 통신 방법.
In the data communication method of a communication module including a plurality of buffers and a plurality of queues set priority,
Determining whether a buffer exists because data is not stored among the plurality of buffers;
Storing the transmission data in the buffer if an available buffer exists; And
Connecting the corresponding buffer to a queue set to a priority equal to that of the stored transmission data.
제 1항에 있어서,
상기 큐에 연결하는 단계는,
우선 상기 저장된 송신 데이터의 우선순위가 제1 우선순위인지를 판단하는 단계; 및
상기 송신 데이터의 우선순위가 제1 우선순위가 아닌 경우 차순위 우선순위인지를 반복하여 판단하는 단계;를 포함하는 것을 특징으로 하는 데이터 통신 방법.
The method of claim 1,
Connecting to the queue,
First determining whether a priority of the stored transmission data is a first priority; And
And repeatedly determining whether the priority of the transmission data is a next priority if the priority of the transmission data is not the first priority.
제 2항에 있어서,
상기 제1 우선순위로 설정된 큐에 송신 데이터가 존재하는지를 판단하는 단계;
상기 제1 우선순위로 설정된 큐에 송신 데이터가 존재하는 경우 상기 제1 우선순위와 연결된 버퍼에 저장된 송신 데이터를 추출하는 단계; 및
상기 추출된 송신 데이터를 전송하는 단계;를 더 포함하는 것을 특징으로 하는 데이터 통신 방법.
3. The method of claim 2,
Determining whether transmission data exists in the queue set to the first priority;
Extracting transmission data stored in a buffer connected with the first priority when transmission data exists in the queue set as the first priority; And
And transmitting the extracted transmission data.
제 3항에 있어서,
상기 송신 데이터를 전송하는 단계 이후,
제2 우선순위로 설정된 큐부터 그 차순위 우선순위로 설정된 큐에 상기 송신 데이터가 존재하는지를 차례로 판단하여, 상기 송신 데이터가 존재하는 경우 우선순위 순서대로 송신 데이터를 추출하여 전송하는 단계;를 더 포함하는 것을 특징으로 하는 데이터 통신 방법.
The method of claim 3, wherein
After transmitting the transmission data,
Judging whether the transmission data exists in the queue set as the second priority from the queue set as the second priority, and extracting and transmitting the transmission data in order of priority when the transmission data exists. Data communication method, characterized in that.
송신 데이터를 저장하기 위한 복수의 버퍼;
우선순위가 설정된 복수의 큐; 및
상기 복수의 버퍼 중 데이터가 저장되어 있지 않아 사용 가능한 버퍼가 존재하는지를 판단하고, 사용 가능한 버퍼가 존재하는 경우 해당 버퍼에 송신 데이터를 저장한 후 상기 해당 버퍼를 상기 저장된 송신 데이터의 우선순위와 동일한 우선순위로 설정된 큐에 연결하는 제어부;를 포함하는 데이터 통신 모듈.
A plurality of buffers for storing transmission data;
A plurality of queues having priorities set; And
It is determined whether there is a buffer available because data is not stored among the plurality of buffers, and if there is an available buffer, the transmission data is stored in the buffer and the corresponding buffer has a priority equal to that of the stored transmission data. And a controller for connecting to a queue set to a priority.
제 5항에 있어서,
상기 제어부는,
상기 저장된 송신 데이터의 우선순위가 제1 우선순위인지를 판단하고, 상기 송신 데이터의 우선순위가 제1 우선순위가 아닌 경우 차순위 우선순위인지를 반복하여 판단하면서, 상기 저장된 송신 데이터의 우선순위와 동일한 우선순위로 설정된 큐에 연결하는 것을 특징으로 하는 데이터 통신 모듈.
6. The method of claim 5,
The control unit,
It is determined whether the priority of the stored transmission data is the first priority, and if the priority of the transmission data is not the first priority, it is repeatedly determined whether it is the next priority, and the same as the priority of the stored transmission data. Data communication module, characterized in that for connecting to the queue set to the priority.
제 6항에 있어서,
상기 송신 데이터를 외부로 전송하기 위한 통신부;를 더 포함하며,
상기 제어부는,
상기 제1 우선순위로 설정된 큐에 송신 데이터가 존재하는지를 판단하고, 상기 제1 우선순위로 설정된 큐에 송신 데이터가 존재하는 경우 상기 제1 우선순위와 연결된 버퍼에 저장된 송신 데이터를 추출하여, 상기 추출된 송신 데이터를 전송하도록 상기 통신부를 제어하는 것을 특징으로 하는 데이터 통신 모듈.
The method according to claim 6,
Further comprising: a communication unit for transmitting the transmission data to the outside,
The control unit,
It is determined whether transmission data exists in the queue set as the first priority, and when transmission data exists in the queue set as the first priority, the transmission data stored in the buffer connected with the first priority is extracted, and the extraction is performed. And controlling the communication unit to transmit the transmitted data.
제 7항에 있어서,
상기 제어부는,
제2 우선순위로 설정된 큐부터 그 차순위 우선순위로 설정된 큐에 송신 데이터가 존재하는지를 차례로 판단하여, 상기 송신 데이터가 존재하는 경우 우선순위 순서대로 송신 데이터를 추출하여 외부로 전송하도록 상기 통신부를 제어하는 것을 특징으로 하는 데이터 통신 모듈.

8. The method of claim 7,
The control unit,
Determining whether transmission data exists in the queue set as the second priority from the queue set as the second priority, and if the transmission data exists, controlling the communication unit to extract transmission data in order of priority and transmit the data to the outside; Data communication module, characterized in that.

KR1020110134365A 2011-12-14 2011-12-14 Data communication method and data communication module using the same Active KR101349553B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110134365A KR101349553B1 (en) 2011-12-14 2011-12-14 Data communication method and data communication module using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110134365A KR101349553B1 (en) 2011-12-14 2011-12-14 Data communication method and data communication module using the same

Publications (2)

Publication Number Publication Date
KR20130067622A KR20130067622A (en) 2013-06-25
KR101349553B1 true KR101349553B1 (en) 2014-01-09

Family

ID=48863414

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110134365A Active KR101349553B1 (en) 2011-12-14 2011-12-14 Data communication method and data communication module using the same

Country Status (1)

Country Link
KR (1) KR101349553B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030045857A (en) * 2000-11-17 2003-06-11 인피니언 테크놀로지스 노쓰 아메리카 코포레이션 Priority handling of voice over data in a voice-over-internet protocol processor
KR20030055416A (en) * 2001-12-26 2003-07-04 한국전자통신연구원 A telecommunication apparatus among the data process in a dispersive process circumstances and a telecommunicational method thereof
KR20050061226A (en) * 2003-12-18 2005-06-22 한국전자통신연구원 Scheduling method and apparatus in dynamic multiplex channel network
KR20060092316A (en) * 2005-02-17 2006-08-23 삼성전자주식회사 Home Network and Channel Allocation Method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030045857A (en) * 2000-11-17 2003-06-11 인피니언 테크놀로지스 노쓰 아메리카 코포레이션 Priority handling of voice over data in a voice-over-internet protocol processor
KR20030055416A (en) * 2001-12-26 2003-07-04 한국전자통신연구원 A telecommunication apparatus among the data process in a dispersive process circumstances and a telecommunicational method thereof
KR20050061226A (en) * 2003-12-18 2005-06-22 한국전자통신연구원 Scheduling method and apparatus in dynamic multiplex channel network
KR20060092316A (en) * 2005-02-17 2006-08-23 삼성전자주식회사 Home Network and Channel Allocation Method

Also Published As

Publication number Publication date
KR20130067622A (en) 2013-06-25

Similar Documents

Publication Publication Date Title
EP3255553B1 (en) Transmission control method and device for direct memory access
US20170295112A1 (en) Apparatus and method for buffering data in a switch
JP2019095861A (en) Neural network device
JP4992296B2 (en) Transfer processing device
US8131949B2 (en) Memory access control device equipped with memory access request generating modules/arbitrator and control method thereof
KR101262313B1 (en) Deferred Memory Access Requests
JP2012064021A (en) Communication system, master device and slave device, and communication method
US9213660B2 (en) Receiver based communication permission token allocation
US9736529B2 (en) USB sharing method for combo TV set, combo TV set and computer readable storage medium
US8811418B2 (en) Information processing apparatus, information processing method, and storage medium
US10292181B2 (en) Information communication method and information processing apparatus
US8812787B2 (en) Router and many-core system
CN104765701A (en) Data access method and device
KR20170074759A (en) Queuing of decoding tasks according to priority in nand flash controller
US8930601B2 (en) Transaction routing device and method for routing transactions in an integrated circuit
KR101052809B1 (en) Memory control device, memory control method and information processing device
KR101349553B1 (en) Data communication method and data communication module using the same
JP6552864B2 (en) How to select one of multiple queues
US8953469B2 (en) Communication device and computer program product
JP5652866B2 (en) Bus arbitration circuit and bus arbitration method
US20140281091A1 (en) Method and apparatus for identifying cause of interrupt
JP6127872B2 (en) Arithmetic processing device and control method of arithmetic processing device
CN105610814A (en) Method and system for reducing packet forwarding delay
JP2005094249A (en) Packet relay method and packet relay apparatus
JP2010044703A (en) Method and program for switching task in multi task os

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20111214

PA0201 Request for examination
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20130617

Patent event code: PE09021S01D

PG1501 Laying open of application
E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20131230

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20140102

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20140102

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
FPAY Annual fee payment

Payment date: 20170102

Year of fee payment: 4

PR1001 Payment of annual fee

Payment date: 20170102

Start annual number: 4

End annual number: 4

FPAY Annual fee payment

Payment date: 20180102

Year of fee payment: 5

PR1001 Payment of annual fee

Payment date: 20180102

Start annual number: 5

End annual number: 5

FPAY Annual fee payment

Payment date: 20190102

Year of fee payment: 6

PR1001 Payment of annual fee

Payment date: 20190102

Start annual number: 6

End annual number: 6

FPAY Annual fee payment

Payment date: 20200102

Year of fee payment: 7

PR1001 Payment of annual fee

Payment date: 20200102

Start annual number: 7

End annual number: 7

PR1001 Payment of annual fee

Payment date: 20210104

Start annual number: 8

End annual number: 8

PR1001 Payment of annual fee

Payment date: 20220103

Start annual number: 9

End annual number: 9

PR1001 Payment of annual fee

Payment date: 20221226

Start annual number: 10

End annual number: 10

PR1001 Payment of annual fee

Payment date: 20231226

Start annual number: 11

End annual number: 11

PR1001 Payment of annual fee

Payment date: 20241224

Start annual number: 12

End annual number: 12