KR19990061210A - Message Buffering Method when Defiram is Full in Defiram Communication - Google Patents

Message Buffering Method when Defiram is Full in Defiram Communication Download PDF

Info

Publication number
KR19990061210A
KR19990061210A KR1019970081466A KR19970081466A KR19990061210A KR 19990061210 A KR19990061210 A KR 19990061210A KR 1019970081466 A KR1019970081466 A KR 1019970081466A KR 19970081466 A KR19970081466 A KR 19970081466A KR 19990061210 A KR19990061210 A KR 19990061210A
Authority
KR
South Korea
Prior art keywords
dpram
temporary buffer
message
buffering method
packet
Prior art date
Application number
KR1019970081466A
Other languages
Korean (ko)
Other versions
KR100256967B1 (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 KR1019970081466A priority Critical patent/KR100256967B1/en
Publication of KR19990061210A publication Critical patent/KR19990061210A/en
Application granted granted Critical
Publication of KR100256967B1 publication Critical patent/KR100256967B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/103Packet switching elements characterised by the switching fabric construction using a shared central buffer; using a shared memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • 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)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 CDMA 시스템에서 상위 프로세서와 하위 프로세서인 CE의 인터페이스를 담당하는 CIP와 CE 사이의 통신방법인 DPRAM 통신방법에 관한 것으로서, 특히 DPRAM이 풀일 때 임시버퍼를 이용하는 메지지 버퍼링 방법에 관한 것이다.The present invention relates to a DPRAM communication method, which is a communication method between CIP and CE that is responsible for the interface between a higher processor and a lower processor CE in a CDMA system, and more particularly, to a buffered buffering method using a temporary buffer when the DPRAM is full.

본 발명의 바람직한 일 실시예는, DPRAM이 풀일 경우의 메시지 버퍼링 방법에 있어서, OS가 네트웍을 통해 들어온 각 패킷마다 사용자가 등록한 타스크를 실행시키는 제 1 단계; 상기 패킷이 트래픽 패킷일 경우 DPRAM의 기록 포인터에 바로 써서 CE로 넘겨주는 제 2 단계; 상기 패킷이 컨트롤 패킷일 경우 시그널별로 사용자가 등록한 타스크를 실행시키는 제 3 단계; 상기 각 트스크가 필요한 작업을 수행한 후 상기 CE에 넘겨줘야 할 메시지가 있는 경우 상기 DPRAM에 상기 메시지를 쓰게되는 제 4 단계; 및 상기 DPRAM이 풀일 경우 임시버퍼에 메시지를 임시로 옮겨두는 제 5 단계를 포함한다.According to an aspect of the present invention, there is provided a method of buffering a message when a DPRAM is full, comprising: a first step of an OS executing a task registered by a user for each packet entered through a network; A second step of directly writing to a write pointer of a DPRAM and passing it to CE when the packet is a traffic packet; A third step of executing a task registered by a user for each signal when the packet is a control packet; A fourth step of writing the message to the DPRAM when there is a message to be passed to the CE after performing the necessary tasks for each task; And a fifth step of temporarily moving a message to a temporary buffer when the DPRAM is full.

본 발명은 다소의 시간지연이 발생하지만 DPRAM의 대역폭이 늘어난다는 효과와 상위 프로세서에서 동시에 많은 메시지가 내려올 때 CIP는 CE가 읽어가지 못한 메시지를 엎어쓰지 않고 임시버퍼에 저장한 후 다시 DPRAM에 쓰는 시도를 하므로 중요한 메시지가 빠져서 시스템에 치명적인 결과를 초래할 가능성이 줄어든다는 효과가 있다.In the present invention, there is some delay, but when the bandwidth of DPRAM is increased and when many messages are coming down from the upper processor, CIP attempts to write to DPRAM after saving the message in the temporary buffer without overwriting the message that CE cannot read. This reduces the likelihood that critical messages will be missed and cause catastrophic consequences for the system.

Description

디피램 통신에서 디피램이 풀일 경우의 메시지 버퍼링 방법Message Buffering Method when Defiram is Full in Defiram Communication

본 발명은 CDMA 시스템에서 상위 프로세서와 하위 프로세서인 CE의 인터페이스를 담당하는 CIP와 CE 사이의 통신방법인 DPRAM 통신방법에 관한 것으로서, 특히 DPRAM이 풀일 때 임시버퍼를 이용하는 메지지 버퍼링 방법에 관한 것이다.The present invention relates to a DPRAM communication method, which is a communication method between CIP and CE that is responsible for the interface between a higher processor and a lower processor CE in a CDMA system, and more particularly, to a buffered buffering method using a temporary buffer when the DPRAM is full.

종래의 기술에 대하여 살펴보면 다음과 같다. 도 1 은 CDMA 이동통신 시스템의 구성도이다.Looking at the prior art as follows. 1 is a configuration diagram of a CDMA mobile communication system.

DPRAM(Dual Ported RAM)은 두 개의 독립적인 데이터와 어드레스 라인이 있어 두 개의 프로세서가 동시에 같은 메모리 내용에 접근할 수 있게 하는 램 칩이다. 현재 이동통신 시스템에서 CIP(Channel Interface Processor)는 상위 프로세서인 BCP(Base Station Control Processor), 보코더 등과 하위에서 단말과의 에어 인터페이스(Air Interface)를 수행하는 CE(Channel Element) 사이의 인터페이스를 담당한다.Dual Ported RAM (DPRAM) is a RAM chip that has two independent data and address lines, allowing two processors to access the same memory contents at the same time. In the current mobile communication system, the CIP (Channel Interface Processor) is responsible for the interface between the base station control processor (BCP), the vocoder, and the like (CE) which performs the air interface with the terminal in the lower level. .

상기 CIP와 CE는 상기 DPRAM을 이용하여 통신을 하는데 CIP가 CE에 쓰는 영역이 224(바이트)16으로 아누어져 있고 CE가 CIP에 쓰는 영역도 상기와 같은 크기로 나누어져 있다. 이때 메시지의 크기는 224바이트이고 16개 메모리 요소(Element)에 쓰거나 읽을 수 있다.The CIP and CE communicate using the DPRAM. The area written by the CIP in the CE is divided into 224 (bytes) 16, and the area written by the CE in the CIP is also divided into the same size. The size of the message is 224 bytes and can be written to or read from 16 memory elements.

상기 MIP가 상기 CE에 메시지를 전달할 때 쓰는 영역(Write Queue)의 DPRAM 운용 방법은 써클러 큐(Circular Queue)와 비슷한 방법이지만 상기 CE에서 읽어가므로 판독 포인터가 필요가 없고 상기 기록 큐가 풀(Full)일 때는 덮어쓰게 된다(Overwrite). 상기 큐의 풀 여부는 플래그 바이트의 세트 여부에 따라 판단한다.The DPRAM operation method of the write queue, which is used when the MIP delivers a message to the CE, is similar to the circular queue, but since the read is performed from the CE, a read pointer is not required and the write queue is full. Full) is overwritten. Whether the queue is full or not is determined according to whether a flag byte is set.

상기 CE는 10ms 마다 CIP의 판독 큐를 스캔하여 메시지를 읽어가고 플래그를 기셋시켜 메시지를 읽었다는 표시를 하게된다.The CE scans the read queue of the CIP every 10 ms to read the message and sets the flag to indicate that the message has been read.

상기 CIP는 기지국의 주 프로세서인 BCP(Base Station Control processor)와 HDLC(High data Link Control) 통신을 하고 잇어 상기 패킷을 CE의 DPRAM에 옮겨쓰고 CE로부터의 메시지를 상기 HDLC 패킷으로 만들어 상위로 전송을 한다.The CIP communicates with the base station control processor (BCP), which is the main processor of the base station, and performs high data link control (HDLC). The CIP transfers the packet to the DPRAM of the CE and converts the message from the CE into the HDLC packet. do.

상기와 같은 환경에서 기지국 증설, 감설 등이 일어날 때 상기 CIP로 다량의 컨트롤 패킷이 일시에 유입이 되어 CIP가 CE의 DPRAM에 메시지를 쓸 때 상기 DPRAM의 용량이 모자라 CE가 읽어가지 못한 메시지를 덮어쓰게 될 수도 있다. 상기와 같은 상황이 발생할 경우 상기 CE는 제대로 동작을 하지 못한다.In the above environment, when a base station is added or reduced, a large amount of control packets flows into the CIP at a time, and when the CIP writes a message to the CE DPRAM, the DPRAM is insufficient to cover the message that the CE cannot read. It may be used. If such a situation occurs, the CE does not operate properly.

또한 상기 컨트롤 패킷이 오버헤드 태널(Overhead Channel)의 환경에 필요한 것일 경우 기지국 전체의 서비스 상태에 직접적인 영향을 주게되는 문제점과 상기와 같은 CE의 환경처럼 기지국의 서비스에 직접적인 영향을 줄 수 있는 패킷의 CE로의 전달여부는 상기 CE와 상위 프로세서의 해당 블록 사이에 정해진 ack 시그널이 없을 경우 알 수가 없다는 문제점이 있다.In addition, when the control packet is required for an overhead channel environment, a problem of directly affecting the service state of the entire base station and a packet that may directly affect the service of the base station as in the CE environment as described above. There is a problem in that the transmission to the CE cannot be known when there is no ack signal defined between the CE and the corresponding block of the upper processor.

또한 기능이 추가됨에 따라 패킷의 수가 증가하게 되고 그 때마다 용량을 측정하는 것은 불가능하므로 안정적이고 신뢰성있는 통신을 위한 방안이 필요하다.In addition, as the function is added, the number of packets increases and the capacity cannot be measured at each time. Therefore, a method for stable and reliable communication is required.

본 발명은 상기와 같은 종래 기술의 문제점을 해결하기 위하여 창안된 것으로서, CIP와 CE 사이의 DPRAM 통신의 신뢰성을 높이기 위해 DPRAM 풀이 발생할 경우 메시지를 CIP의 임시 버퍼에 저장한 후 CE가 메시지를 읽는 주기만큼의 시간이 지난 후 즉, DPRAM이 비었음이 확실할 때 임시버퍼의 내용을 DPRAM에 옮겨쓰는 방법을 제공하는 것을 목적으로 한다.The present invention was devised to solve the above-mentioned problems of the prior art, and in order to increase the reliability of DPRAM communication between CIP and CE, the CE reads a message after storing the message in a temporary buffer of the CIP when a DPRAM pool occurs. It is intended to provide a way to transfer the contents of a temporary buffer to DPRAM after a certain amount of time, ie when it is certain that DPRAM is empty.

도 1 은 CDMA 이동통신 시스템의 구성도.1 is a block diagram of a CDMA mobile communication system.

도 2 는 본 발명에 의한 DPRAM이 풀일 때 임시버퍼를 이용한 메시지 버퍼링 방법.2 is a message buffering method using a temporary buffer when the DPRAM of the present invention is full.

상기와 같은 목적을 달성하기 위하여 본 발명에 따른, DPRAM이 풀일 경우의 메시지 버퍼링 방법의 바람직한 일 실시예는,In order to achieve the above object, according to the present invention, a preferred embodiment of the message buffering method when the DPRAM is full,

OS가 네트웍을 통해 들어온 각 패킷마다 사용자가 등록한 타스크를 실행시키는 제 1 단계;A first step of the OS executing a task registered by the user for each packet coming in through the network;

상기 패킷이 트래픽 패킷일 경우 DPRAM의 기록 포인터에 바로 써서 CE로 넘겨주는 제 2 단계;A second step of directly writing to a write pointer of a DPRAM and passing it to CE when the packet is a traffic packet;

상기 패킷이 컨트롤 패킷일 경우 시그널별로 사용자가 등록한 타스크를 실행시키는 제 3 단계;A third step of executing a task registered by a user for each signal when the packet is a control packet;

상기 각 트스크가 필요한 작업을 수행한 후 상기 CE에 넘겨줘야 할 메시지가 있는 경우 상기 DPRAM에 상기 메시지를 쓰게되는 제 4 단계; 및A fourth step of writing the message to the DPRAM when there is a message to be passed to the CE after performing the necessary tasks for each task; And

상기 DPRAM이 풀일 경우 임시버퍼에 메시지를 임시로 옮겨두는 제 5 단계를 포함한다.And a fifth step of temporarily moving a message to a temporary buffer when the DPRAM is full.

본 발명에 있어서, 상기 네트웍을 통해 들어온 패킷이 트래픽 패킷인지 컨트롤 패킷인지 구분하여 타스크를 실행시키는 것이 바람직하며,In the present invention, it is preferable to execute the task by distinguishing whether a packet entered through the network is a traffic packet or a control packet,

상기 임시버퍼는 CIP의 가용한 램 영역을 고려하여 DPRAM에 쓸 수 있는 영역의 절반으로 잡는 것이 바람직하며, .The temporary buffer is preferably set to half of the area that can be written to the DPRAM in consideration of the available RAM area of the CIP.

상기 CIP가 상기 CE의 메시지를 쓸 수 있는 DPRAM은 224 바이트 크기의 16개 요소로 나누어져 있으므로 상기 메시지 타입을 구분하기 위한 한 바이트를 제외한 223 바이트 크기의 8개 요소로 나누어 상기 임시버퍼를 사용하는 것이 바라직하며, 상기 임시버퍼는 8개의 요소를 가진 싸이클러 큐로 운용되는 것이 바람직하며,The DPRAM, in which the CIP can write the CE message, is divided into 16 elements of 224 bytes. Thus, the temporary buffer is divided into 8 elements of 223 bytes except for one byte to distinguish the message type. Preferably, the temporary buffer is operated as a cycle queue with eight elements,

상기 기록할 요소를 가리키는 기록 포인터와 상기 임시버퍼로부터 DPRAM으로 읽어갈 요소를 가리키는 판독 포인터를 포함하는 것이 바람직하며,It is preferable to include a write pointer indicating the element to be written and a read pointer indicating an element to be read from the temporary buffer into the DPRAM,

상기 기록 포인터가 가리키는 메모리 요소의 플래그가 세트되어 있을 경우 버퍼가 넘치는 것으로 판단하는 것이 바람직하며,Preferably, when the flag of the memory element indicated by the write pointer is set, it is determined that the buffer is full.

상기 판독 포인터가 가리키는 메모리 요소의 플래그가 세트되어 있지 않을 경우 버퍼가 비어있는 것으로 판단하는 거이 바람직하며,.And if the flag of the memory element pointed to by the read pointer is not set, determining that the buffer is empty.

상기 임시버퍼의 내용을 상기 DPRAM으로 옮길 시간을 알려주는 타이머를 포함하는 것이 바람직하며,It is preferable to include a timer for indicating the time to transfer the contents of the temporary buffer to the DPRAM,

상기 타이머는 10ms마다 만료되어 상기 DPRAM의 여유공간이 있고 상기 임시버퍼에 내용이 있을 때 상기 임시버퍼의 내용을 상기 DPRAM에 옮겨쓰게 되는 것이 바람직하며,Preferably, the timer expires every 10 ms and the contents of the temporary buffer are transferred to the DPRAM when there is free space in the DPRAM and the contents are in the temporary buffer.

상기 타이머는 상기 임시버퍼의 내용을 옮겨 쓸 때 상기 임시버퍼에 내용이 저장되는 순간 트리거되는 것이 아닌 무한 반복하는 타이머이며 상기 임시버퍼에 저장되는 메시지는 최대 20ms의 시간지연이 생길 수 있는 것이 바람직하며,The timer is an infinitely repeating timer that is not triggered when the contents are stored in the temporary buffer when the contents of the temporary buffer are rewritten. The message stored in the temporary buffer may have a time delay of up to 20 ms. ,

상기 CIP로 많은 컨트롤 패킷이 유입되어 기록 큐 풀이 발생할 경우 기록 풀 메시지를 프린트하고 상기 임시버퍼의 기록 포인터가 가리키는 부분에 메시지를 옮긴 후 상기 기록 포인터를 증가시키는 것이 바람직하며,When a large number of control packets flow into the CIP to cause a write queue pool, it is preferable to print a write pool message, move the message to a portion indicated by the write pointer of the temporary buffer, and increase the write pointer.

상기 임시버퍼의 기록 포인터가 가리키는 요소의 플래그가 세트되어 있을 경우 상기 버퍼가 풀인 것으로 판단하고 임시버퍼를 덮어쓰게 되는 것이 바람직하며,When the flag of the element indicated by the write pointer of the temporary buffer is set, it is preferable to determine that the buffer is full and to overwrite the temporary buffer.

상기 덮어쓰기가 16번 이상 반복되는 경우 CE에 문제가 발생한 것으로 판단하고 상기 CE를 리셋시키고 임시버퍼를 클리어 시키는 것이 바람직하며,If the overwriting is repeated 16 times or more, it is preferable to determine that a problem has occurred in the CE, and to reset the CE and clear the temporary buffer.

상기 임시버퍼에 저장된 메시지는 상기 CE가 DPRAM의 메시지를 읽어가는 주기가 지난 후 상기 DPRAM 옮겨쓰게 되는 것이 바람직하며,The message stored in the temporary buffer is preferably replaced by the DPRAM after the CE reads a message of the DPRAM.

상기 메시지를 상기 DPRAM에 옮겨쓸 때 상기 임시버퍼의 판독 포인터가 가리키는 요소의 플래그가 리셋되어 있을 경우 상기 임시버퍼가 빈 것으로 판단하고 상기 메시지를 옮겨쓰지 않는 것이 바람직하며,상기 임시버퍼의 메시지를 상기 DPRAM에 옮겨쓴 후 상기 판독 포인터를 증가시키는 것이 바람직하다.If the flag of the element indicated by the read pointer of the temporary buffer is reset when the message is transferred to the DPRAM, the temporary buffer is determined to be empty and the message of the temporary buffer is not transferred. It is desirable to increase the read pointer after writing to DPRAM.

이하 본 발며의 상세한 동작원리에 대하여 도면을 참도하여 설명한다. 도 2 는 본 발명에 의한 DPRAM이 풀일 때 임시버퍼를 이용한 메시지 버퍼링 방법이다.Hereinafter, the detailed operation principle of the present invention will be described with reference to the drawings. 2 is a message buffering method using a temporary buffer when the DPRAM of the present invention is full.

OS는 네트웍을 통해 들어온 패킷이 트래픽 패킷인지 컨트롤 패킷인지 구분하여 각 패킷마다 사용자가 등록한 타스크를 실행 시킨다. 상기의 패킷이 트래픽 패킷일 경우 DPRAM의 기록 포인터에 바로 써서 CE로 넘겨준다. 상기의 패킷이 컨트롤 패킷일 경우에는 시스널별로 사용자가 등록한 타스크를 실행 시킨다.The OS distinguishes whether the packet coming from the network is a traffic packet or a control packet, and executes a user-registered task for each packet. If the packet is a traffic packet, the packet is directly written to the write pointer of the DPRAM and passed to the CE. If the packet is a control packet, the user registers a task for each signal.

상기 각 타스트는 필요한 작업을 수행한 후 만약 상기 CE에 넘겨 주어야할 메시지가 있늘 경우 상기 DPRAM에 쓰게 되는데 이 때 DPRAM이 꽉 찼을 경우에 임시버퍼에 메시지를 임시로 옮겨둔다.Each task performs a necessary task and if there is a message to be passed to the CE, the task is written to the DPRAM. When the DPRAM is full, the task temporarily transfers the message to the temporary buffer.

상기 임시버퍼는 CIP의 가용한 램 영역을 고려하여 DPRAM에 쓸 수 있는 영역의 절반으로 잡는다. CIP가 CE에 쓸 수 있는 DPRAM은 224 바이트 크기의 16개 요소로 나누어져 있으므로 메시지 타입을 구분하기 위한 한 바이트를 제외한 223 바이트 크기의 8 개 요소를 가리키는 기록 포인터와 임시버퍼로부터 DPRAM으로 읽어갈 요소를 가리키는 판독 포인가 필요하다.The temporary buffer takes up half of the area that can be written to the DPRAM in consideration of the available RAM area of the CIP. The DPRAM that the CIP can write to the CE is divided into 16 elements of 224 bytes, so the write pointer points to 8 elements of 223 bytes except one byte to distinguish the message type, and the elements to be read into the DPRAM from the temporary buffer. It is necessary to read pointer pointing.

상기 기록 포인터가 가리키는 메모리 요소의 플래그가 세트되어 있을 경우 버퍼가 넘치는 것으로 판단하고 판독 포인터가 가리키는 메모리 요소의 플래그가 세트되어 있지 않을 경우 버퍼가 비어 있는 것으로 판단한다. 또한 상기 임시버퍼의 내용을 DPRAM으로 옮길 시간을 알려줄 타이머가 필요한데 상기 타이머는 종래의 타이머를 이용한다,If the flag of the memory element indicated by the write pointer is set, the buffer is determined to be overfilled. If the flag of the memory element indicated by the read pointer is not set, the buffer is determined to be empty. In addition, a timer is needed to indicate the time to transfer the contents of the temporary buffer to the DPRAM, which uses a conventional timer.

상기 타이머는 10ms 마다 만료되어 DPRAM의 여유공간이 있고 임시버퍼에 내용이 있을 때 임시 버퍼의 내용을 DPRAM에 옮겨쓰게 되는에 상기 임시버퍼의 내용이 저장되는 순간 트리거 되는 것이 아니라 무한 반복하는 타이머이므로 상기임시버퍼에 저장된는 메시지는 최대 20ms의 시간지연이 생길 수 있다.When the timer expires every 10ms and there is free space in the DPRAM and the contents are in the temporary buffer, the contents of the temporary buffer are transferred to the DPRAM. Therefore, the timer is not triggered at the moment when the contents of the temporary buffer are stored. Messages stored in temporary buffers can have a time delay of up to 20ms.

상기 CIP로 많은 컨트롤 패킷이 유입되어 기록 큐 풀이 발생할 경우 기록 풀 메시지를 프린트하고 상기 임시버퍼의 기록 포인터가 가리키는 부분에 메시지를 옮긴 후 상기 기록 포인터르 증가 시킨다. 이 때 상기 임시버퍼의 기록 포인터가 가리키는 요소의 필래그가 세트되어 있을 경우 상기 버퍼가 풀인 것으로 판단하고 상기 임시버퍼를 덮어쓰게 된다. 상기 덮어쓰기가 16번 이상 반복시 상기 CE에 문제가 발생한 것으로 판단하고 상기 CE를 리셋시키고 임시버퍼를 클리어(Clear) 시킨다.When a large number of control packets flow into the CIP and a write queue pool occurs, a print pool message is printed, the message is moved to a portion indicated by the write pointer of the temporary buffer, and the write pointer is increased. At this time, if the pillar of the element indicated by the write pointer of the temporary buffer is set, the buffer is determined to be full and the temporary buffer is overwritten. When the overwrite is repeated 16 times or more, it is determined that a problem occurs in the CE. The CE is reset and the temporary buffer is cleared.

상기와 같은 방법으로 저장된 임시버퍼의 메시지는 상기 CE가 DPRAM의 메시지를 읽어가는 주기(10ms)가 지난 후 DPRAM에 옮겨쓰게 되는데(Dequeue) 이 때 상기 임시버퍼의 판독 포인터가 가리키는 요소의 플래그가 리셋되어 있을 경우 상기 임시버퍼가 비어(Empty)있는 것으로 판단하고 디큐를 하지 않는다. 상기 임시버퍼의 메시지를 상기 DPRAM에 옮겨 쓴 후 상기 판독 포인터를 증가 시킨다.The message of the temporary buffer stored in the above manner is transferred to the DPRAM after a period (10 ms) at which the CE reads the message of the DPRAM. If so, it is determined that the temporary buffer is empty and does not dequeue. The read pointer is incremented after writing the message of the temporary buffer to the DPRAM.

상기 임시버퍼에 저장되어 있던 메시지는 20ms 이하의 시간지연이 발생하게 된다. 그리고 트래픽 패킷은 시간지연(Delay)을 허용하지 않으므로 오버헤드 채널과 관련된 컨트롤 패킷의 경우에만 적용한다.The message stored in the temporary buffer has a time delay of 20 ms or less. The traffic packet does not allow delay, so it is applied only to the control packet related to the overhead channel.

상기와 같이 구성된 본 발명은 다소의 간지연이 발생하지만 DPRAM의 대역폭이 늘어난다는 효과와 상위 프로세서에서 동시에 많은 메시지가 내려올 때 CIP는 CE가 읽어가지 못한 메시지를 엎어쓰지 않고 임시버퍼에 저장한 후 다시 DPRAM에 쓰는 시도를 하므로 중요한 메시지가 빠져서 시스템에 치명적인 결과를 초래할 가능성이 줄어든다는 효과가 있다.According to the present invention configured as described above, some delay occurs, but when the bandwidth of the DPRAM increases and when many messages come down from the upper processor simultaneously, the CIP does not overwrite the message that the CE cannot read, and stores it in a temporary buffer and then recreates the DPRAM. Attempting to write to a file has the effect of reducing the likelihood of missing a critical message and causing a fatal effect on the system.

Claims (17)

OS가 네트웍을 통해 들어온 각 패킷마다 사용자가 등록한 타스크를 실행시키는 제 1 단계;A first step of the OS executing a task registered by the user for each packet coming in through the network; 상기 패킷이 트래픽 패킷일 경우 DPRAM의 기록 포인터에 바로 써서 CE로 넘겨주는 제 2 단계;A second step of directly writing to a write pointer of a DPRAM and passing it to CE when the packet is a traffic packet; 상기 패킷이 컨트롤 패킷일 경우 시그널별로 사용자가 등록한 타스크를 실행시키는 제 3 단계;A third step of executing a task registered by a user for each signal when the packet is a control packet; 상기 각 트스크가 필요한 작업을 수행한 후 상기 CE에 넘겨줘야 할 메시지가 있는 경우 상기 DPRAM에 상기 메시지를 쓰게되는 제 4 단계; 및A fourth step of writing the message to the DPRAM when there is a message to be passed to the CE after performing the necessary tasks for each task; And 상기 DPRAM이 풀일 경우 임시버퍼에 메시지를 임시로 옮겨두는 제 5 단계를 포함하는, DPRAM이 풀일 경우의 버퍼링 방법.And a fifth step of temporarily transferring a message to a temporary buffer when the DPRAM is full. 제 1 항에 있어서, 상기 네트웍을 통해 들어온 패킷이 트래픽 패킷인지 컨트롤 패킷인지 구분하여 타스크를 실행시키는, DPRAM이 풀일 경우의 버퍼링 방법.The buffering method according to claim 1, wherein the task is performed by distinguishing whether a packet coming through the network is a traffic packet or a control packet. 제 1 항에 있어서, 상기 임시버퍼는 CIP의 가용한 램 영역을 고려하여 DPRAM에 쓸 수 있는 영역의 절반으로 잡는, DPRAM이 풀일 경우의 버퍼링 방법.The buffering method of claim 1, wherein the temporary buffer is set to half of an area that can be written to the DPRAM in consideration of the available RAM area of the CIP. 제 1 항에 있어서, 상기 CIP가 상기 CE의 메시지를 쓸 수 있는 DPRAM은 224 바이트 크기의 16개 요소로 나누어져 있으므로 상기 메시지 타입을 구분하기 위한 한 바이트를 제외한 223 바이트 크기의 8개 요소로 나누어 상기 임시버퍼를 사용하는, DPRAM이 풀일 경우의 버퍼링 방법.The DPRAM of claim 1, wherein the CIP can write the message of the CE is divided into 16 elements of 224 bytes, and thus divided into 8 elements of 223 bytes except for one byte to distinguish the message type. The buffering method when the DPRAM is full using the temporary buffer. 제 1 항 또는 제 4 항에 있어서, 상기 임시버퍼는 8개의 요소를 가진 싸이클러 큐로 운용되는, DPRAM이 풀일 경우의 버퍼링 방법.The buffering method according to claim 1 or 4, wherein the temporary buffer is operated as a cycler queue having eight elements. 제 1 항에 있어서, 상기 기록할 요소를 가리키는 기록 포인터와 상기 임시버퍼로부터 DPRAM으로 읽어갈 요소를 가리키는 판독 포인터를 포함하는, DPRAM이 풀일 경우의 버퍼링 방법.The buffering method according to claim 1, further comprising a write pointer indicating the element to be written and a read pointer indicating an element to be read from the temporary buffer into the DPRAM. 제 1 항 또는 제 6 항에 있어서, 상기 기록 포인터가 가리키는 메모리 요소의 플래그가 세트되어 있을 경우 버퍼가 넘치는 것으로 판단하는, DPRAM이 풀일 경우의 버퍼링 방법.7. The buffering method according to claim 1 or 6, wherein when the flag of the memory element indicated by the write pointer is set, the buffer is determined to be overfilled. 제 1 항 또는 제 6 항에 있어서, 상기 판독 포인터가 가리키는 메모리 요소의 플래그가 세트되어 있지 않을 경우 버퍼가 비어있는 것으로 판단하는, DPRAM이 풀일 경우의 버퍼링 방법.7. The buffering method according to claim 1 or 6, wherein if the flag of the memory element indicated by the read pointer is not set, the buffer is determined to be empty. 제 1 항에 있어서, 상기 임시버퍼의 내용을 상기 DPRAM으로 옮길 시간을 알려주는 타이머를 포함하는, DPRAM이 풀일 경우의 버퍼링 방법.The buffering method of claim 1, further comprising a timer for indicating a time for transferring the contents of the temporary buffer to the DPRAM. 제 9 항에 있어서, 상기 타이머는 10ms마다 만료되어 상기 DPRAM의 여유공간이 있고 상기 임시버퍼에 내용이 있을 때 상기 임시버퍼의 내용을 상기 DPRAM에 옮겨쓰게 되는, DPRAM이 풀일 경우의 버퍼링 방법.10. The buffering method of claim 9, wherein the timer expires every 10 ms and the contents of the temporary buffer are transferred to the DPRAM when there is free space in the DPRAM and the contents are in the temporary buffer. 제 9 항 또는 제 10 단계에 있어서, 상기 타이머는 상기 임시버퍼의 내용을 옮겨 쓸 때 상기 임시버퍼에 내용이 저장되는 순간 트리거되는 것이 아닌 무한 반복하는 타이머이며 상기 임시버퍼에 저장되는 메시지는 최대 20ms의 시간지연이 생길 수 있는, DPRAM이 풀일 경우의 버퍼링 방법.The method of claim 9 or 10, wherein the timer is an infinitely repeating timer that is not triggered when the contents are stored in the temporary buffer when the contents of the temporary buffer are rewritten, and a message stored in the temporary buffer is at most 20 ms. Buffering method when the DPRAM is full, which can cause time delays. 제 1 항 또는 제 4 항에 있어서, 상기 CIP로 많은 컨트롤 패킷이 유입되어 기록 큐 풀이 발생할 경우 기록 풀 메시지를 프린트하고 상기 임시버퍼의 기록 포인터가 가리키는 부분에 메시지를 옮긴 후 상기 기록 포인터를 증가시키는, DPRAM이 풀일 경우의 버퍼링 방법.The method according to claim 1 or 4, wherein when a large number of control packets flow into the CIP and a write queue pool occurs, a write pool message is printed and the write pointer is incremented after moving a message to a portion indicated by the write pointer of the temporary buffer. Buffering method when the DPRAM is full. 제 12 항에 있어서, 상기 임시버퍼의 기록 포인터가 가리키는 요소의 플래그가 세크되어 있을 경우 상기 버퍼가 풀인 것으로 판단하고 임시버퍼를 덮어쓰게 되는, DPRAM이 풀일 경우의 버퍼링 방법.The buffering method according to claim 12, wherein when the flag of the element indicated by the write pointer of the temporary buffer is set, the buffer is determined to be full and the temporary buffer is overwritten. 제 13 항에 있어서, 상기 덮어쓰기가 16번 이상 반복되는 경우 CE에 문제가 발생한 것으로 판단하고 상기 CE를 리셋시키고 임시버퍼를 클리어 시키는, DPRAM이 풀일 경우의 버퍼링 방법.The buffering method according to claim 13, wherein when the overwrite is repeated 16 times or more, it is determined that a problem occurs in the CE, and the CE is reset and the temporary buffer is cleared. 제 13 항 또는 제 14 항에 있어서, 상기 임시버퍼에 저장된 메시지는 상기 CE가 DPRAM의 메시지를 읽어가는 주기가 지난 후 상기 DPRAM 옮겨쓰게 되는, DPRAM이 풀일 경우의 버퍼링 방법.The buffering method of claim 13 or 14, wherein the message stored in the temporary buffer is replaced by the DPRAM after a period in which the CE reads a message of the DPRAM. 제 15 항에 있어서, 상기 메시지를 상기 DPRAM에 옮겨쓸 때 상기 임시버퍼의 판독 포인터가 가리키는 요소의 플래그가 리셋되어 있을 경우 상기 임시버퍼가 빈 것으로 판단하고 상기 메시지를 옮겨쓰지 않는, DPRAM이 풀일 경우의 버퍼링 방법.16. The method of claim 15, wherein when the message is written to the DPRAM, when the flag of the element indicated by the read pointer of the temporary buffer is reset, the temporary buffer is determined to be empty and the DPRAM is not transferred. Buffering method. 제 15 항에 있어서, 상기 임시버퍼의 메시지를 상기 DPRAM에 옮겨쓴 후 상기 판독 포인터를 증가시키는, DPRAM이 풀일 경우의 버퍼링 방법.The buffering method according to claim 15, wherein the read pointer is incremented after the message of the temporary buffer is transferred to the DPRAM.
KR1019970081466A 1997-12-31 1997-12-31 Message buffering method KR100256967B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970081466A KR100256967B1 (en) 1997-12-31 1997-12-31 Message buffering method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970081466A KR100256967B1 (en) 1997-12-31 1997-12-31 Message buffering method

Publications (2)

Publication Number Publication Date
KR19990061210A true KR19990061210A (en) 1999-07-26
KR100256967B1 KR100256967B1 (en) 2000-05-15

Family

ID=19530579

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970081466A KR100256967B1 (en) 1997-12-31 1997-12-31 Message buffering method

Country Status (1)

Country Link
KR (1) KR100256967B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100420422B1 (en) * 2000-01-04 2004-03-04 인터내셔널 비지네스 머신즈 코포레이션 Queue manager for a buffer
KR100426666B1 (en) * 1999-12-30 2004-04-13 엘지전자 주식회사 Method and Apparatus for Cell Transfer in Cell Unit Communication System
CN110120922A (en) * 2019-05-14 2019-08-13 中国核动力研究设计院 A kind of data interaction Network Management System and method based on FPGA

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100426666B1 (en) * 1999-12-30 2004-04-13 엘지전자 주식회사 Method and Apparatus for Cell Transfer in Cell Unit Communication System
KR100420422B1 (en) * 2000-01-04 2004-03-04 인터내셔널 비지네스 머신즈 코포레이션 Queue manager for a buffer
CN110120922A (en) * 2019-05-14 2019-08-13 中国核动力研究设计院 A kind of data interaction Network Management System and method based on FPGA
CN110120922B (en) * 2019-05-14 2022-09-20 中核控制系统工程有限公司 FPGA-based data interaction network management system and method

Also Published As

Publication number Publication date
KR100256967B1 (en) 2000-05-15

Similar Documents

Publication Publication Date Title
US7289823B1 (en) Video overlay buffer mirrored through a shared mailbox between two processors in a feature phone
KR950002709B1 (en) Information transfer method and arragnement
CA2588722A1 (en) Digital data interface device message format
MX2008000482A (en) Minimizing padding for voice over internet protocol-type traffic over radio link control.
US6526068B2 (en) Interface control of communication between a control processor and a digital signal processor
US6594270B1 (en) Ageing of data packets using queue pointers
EP2206294B1 (en) A memory buffer system and a method for operating a memory buffer system for fast data exchange
KR100256967B1 (en) Message buffering method
KR950015106A (en) Packet Receive Interrupt Control System for Ethernet Controller
US7113516B1 (en) Transmit buffer with dynamic size queues
US8032693B2 (en) Serial in random out memory
US7640371B2 (en) Integrated circuit and information processing apparatus
JPS63226151A (en) Multiple packet communication system
CN117499351A (en) Message forwarding device and method, communication chip and network equipment
KR100311619B1 (en) How to send and receive messages between processors in a distributed processing system
EP0446335B1 (en) Packet/fast packet switch for voice and data
KR950012328B1 (en) Packet handling method
KR100551171B1 (en) Method for processig reception of packet in inter-processor packet communication for digital mobile communication system
KR19990031327A (en) Message processing method of BSM in digital mobile communication system
JP2648129B2 (en) Paging system controller
KR100469436B1 (en) Data access circuit for multimedia device
JPH01144836A (en) Packet buffer circuit
KR20030031667A (en) Vp/vc switching system using sram
KR950022622A (en) Apparatus and method for implementing a stream device driver between a main computer and a common line message transfer processor in a home location registration register
JP2006135379A (en) Packet processing apparatus and packet processing method

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

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee