KR100393983B1 - Data Transmit Device For Improvement Processor Over Load - Google Patents

Data Transmit Device For Improvement Processor Over Load Download PDF

Info

Publication number
KR100393983B1
KR100393983B1 KR10-1999-0022055A KR19990022055A KR100393983B1 KR 100393983 B1 KR100393983 B1 KR 100393983B1 KR 19990022055 A KR19990022055 A KR 19990022055A KR 100393983 B1 KR100393983 B1 KR 100393983B1
Authority
KR
South Korea
Prior art keywords
data
unit
memory
control
memory unit
Prior art date
Application number
KR10-1999-0022055A
Other languages
Korean (ko)
Other versions
KR20010002307A (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 KR10-1999-0022055A priority Critical patent/KR100393983B1/en
Publication of KR20010002307A publication Critical patent/KR20010002307A/en
Application granted granted Critical
Publication of KR100393983B1 publication Critical patent/KR100393983B1/en

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B02CRUSHING, PULVERISING, OR DISINTEGRATING; PREPARATORY TREATMENT OF GRAIN FOR MILLING
    • B02CCRUSHING, PULVERISING, OR DISINTEGRATING IN GENERAL; MILLING GRAIN
    • B02C4/00Crushing or disintegrating by roller mills
    • B02C4/28Details
    • B02C4/30Shape or construction of rollers
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B02CRUSHING, PULVERISING, OR DISINTEGRATING; PREPARATORY TREATMENT OF GRAIN FOR MILLING
    • B02CCRUSHING, PULVERISING, OR DISINTEGRATING IN GENERAL; MILLING GRAIN
    • B02C4/00Crushing or disintegrating by roller mills
    • B02C4/02Crushing or disintegrating by roller mills with two or more rollers

Landscapes

  • Engineering & Computer Science (AREA)
  • Food Science & Technology (AREA)
  • Communication Control (AREA)
  • Multi Processors (AREA)
  • Information Transfer Systems (AREA)

Abstract

본 발명은 입출력 데이터의 전송을 제어하는 프로세서의 기능을 보완하여 데이터 전송을 원활하게 수행하기 위한 프로세서의 과부하를 개선한 데이터 전송 장치에 관한 것이다.The present invention relates to a data transmission apparatus that improves an overload of a processor for smoothly performing data transmission by supplementing a function of a processor for controlling transmission of input / output data.

이와 같은 본 발명은, 송수신되는 데이터의 정보를 저장하는 컨트롤 메모리 부와, 상기 데이터의 전송 제어를 담당하는 선입선출 메모리 제어부와, 상기 데이터를 전송하는 버스를 통해 상기 컨트롤 메모리와 선입선출 메모리 제어부를 관리하는 프로세서 부로 구성되어 프로세서의 데이터 처리 성능을 개선함으로서, 데이터 송수신에 대한 부하를 최소화하여 프로세서의 성능을 향상시키는 효과가 있다.As described above, the present invention provides a control memory unit for storing information of transmitted / received data, a first-in first-out memory controller in charge of controlling transmission of the data, and a control memory and first-in first-out memory controller through a bus for transmitting the data. The processor is configured to manage the data processing performance of the processor, thereby improving the performance of the processor by minimizing the load on data transmission and reception.

Description

프로세서의 과부하를 개선한 데이터 전송 장치{Data Transmit Device For Improvement Processor Over Load}Data Transmit Device For Improvement Processor Over Load}

본 발명은 이동 통신 시스템에 관한 것으로서, 특히 프로세서가 선입선출(First Inout First Out ; 이하 FIFO 라 약칭함)를 통하여 고속 데이터를 송수신하고자 할 때, FIFO의 데이터를 프로세서가 직접 제어함으로써 발생되는 부하로 인한 프로세서의 전송 처리 성능 저하를 방지하기 위한 프로세서의 과부하를 개선한 데이터 전송 장치에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a mobile communication system. In particular, when a processor intends to transmit and receive high-speed data through First Inout First Out (hereinafter referred to as FIFO), it is a load generated by the processor directly controlling the data of the FIFO. The present invention relates to a data transmission apparatus that improves the processor overload to prevent a decrease in the transmission processing performance of the processor.

일반적으로 종래의 프로세서를 사용한 데이터 전송 장치는 프로세서 부, 패킷 메모리 부 및 FIFO 부로 구성되어 있다.In general, a data transmission apparatus using a conventional processor is composed of a processor unit, a packet memory unit and a FIFO unit.

프로세서 부는 시스템 버스를 통하여 패킷 메모리와 FIFO에 인터페이스 되어지며, 디코더를 통해 패킷 메모리와 FIFO의 처리가 가능하다.The processor unit is interfaced to the packet memory and the FIFO via the system bus, and the decoder can process the packet memory and the FIFO.

또한, 프로세서 부는 전송할 데이터를 패킷 메모리에 저장하거나 패킷 메모리의 데이터를 읽고 송신 FIFO 에 쓰기(Write)를 함으로서 데이터의 송신이 이루어진다.In addition, the processor unit transmits data by storing data to be transmitted in the packet memory or by reading the data in the packet memory and writing the data to the transmission FIFO.

상대적으로 수신할 데이터가 있을 경우, 수신 FIFO로부터 데이터를 읽고 패킷 메모리에 쓰기를 함으로서 데이터를 수신한다.When there is data to be received relatively, data is received by reading data from the receiving FIFO and writing to the packet memory.

여기서 패킷 메모리 부는 송신할 데이터와 수신한 데이터를 저장하는 메모리이다. 그리고, FIFO 부는 외부 인터페이스와의 통신을 위하여 송신할 데이터 또는 수신된 데이터를 임시로 저장하여 주는 장치로서 다양한 외부 인터페이스의 종류에 적용되도록 구현하기 위하여 FIFO를 사용한다.The packet memory unit is a memory for storing data to be transmitted and received data. In addition, the FIFO unit temporarily stores data to be transmitted or received for communication with an external interface and uses the FIFO to be applied to various types of external interfaces.

도 1은 종래의 프로세서를 사용한 데이터 송수신 동작을 설명하기 위한 블록 구성도이다.1 is a block diagram illustrating a data transmission and reception operation using a conventional processor.

도 1을 참조하면, 종래의 프로세서 부(10)는 송신할 데이터가 발생하면 패킷 메모리 부(11)에 송신할 데이터를 생성하여 저장하며 FIFO 부(12)의 상태가 양호하면 시스템 버스를 통하여 패킷 메모리의 데이터를 읽어서 송신 FIFO에 쓰는 방식을 이용하여 송신을 끝내게 된다.Referring to FIG. 1, when the data to be transmitted is generated, the conventional processor unit 10 generates and stores data to be transmitted to the packet memory unit 11. If the state of the FIFO unit 12 is good, the packet is transmitted through the system bus. The transmission is terminated by reading the data in the memory and writing it to the transmission FIFO.

또한, 프로세서 부(10)는 패킷 메모리 부(11)의 큐(Queue)를 할당받아 수신 준비가 완료되면 수신 FIFO를 검색하여 데이터가 수신되어 있으면 시스템 버스를 통하여 수신 FIFO의 데이터를 읽어서 할당받은 패킷 메모리 부(11)의 큐(Queue)에 쓰는 방식을 사용하여 수신을 끝내게 된다.In addition, the processor unit 10 receives a queue of the packet memory unit 11 and, when ready to receive, searches for a receiving FIFO and reads data of the receiving FIFO through the system bus if the data is received. Reception is completed by using a method of writing to the queue of the memory unit 11.

이와 함께, 디코더(Decoder)는 프로세서가 디바이스(메모리, FIFO)를 처리하기 위한 장치로 사용된다.In addition, a decoder is used as an apparatus for a processor to process a device (memory, FIFO).

그러나, 이와 같은 종래의 프로세서를 주로 이용한 데이터 전송 장치는 프로세서가 데이터의 생성과 전송을 모두 담당하게 되며, 특히 메모리와 FIFO 또는 FIFO에서 메모리로의 데이터 송수신을 직접 제어함으로써 프로세서의 부하를 가중시키는 문제점이 있다.However, the data transmission apparatus mainly using such a conventional processor is responsible for both the generation and transmission of data by the processor, and in particular, the problem of increasing the load of the processor by directly controlling the transmission and reception of data from the memory and FIFO or FIFO to the memory. There is this.

또한, 고속의 데이터 송수신에는 프로세서의 부하에 FIFO의 직접적인 제어가 큰 비중을 차지하게 되어 고성능의 프로세서를 사용하여도 전체적인 성능면에서 데이터의 송수신에 큰 부하가 걸려 성능향상에 어려움이 있다.In addition, the direct control of the FIFO is a large part of the processor load in the high-speed data transmission and reception, and even a high-performance processor has a large load on the transmission and reception of data in terms of overall performance, and thus there is a difficulty in improving performance.

본 발명의 목적은 상기와 같이 언급한 문제점을 감안하여 안출한 것으로서, 프로세서가 FIFO를 통하여 고속 데이터를 송수신하고자 할 때, FIFO의 데이터를 프로세서가 직접 제어함으로써 발생하는 부하로 인한 전송 처리 성능 저하를 방지하기 위한 프로세서의 과부하를 개선한 데이터 전송 장치를 제공하기 위한 것이다.SUMMARY OF THE INVENTION The present invention has been made in view of the above-mentioned problems, and when the processor intends to transmit / receive high-speed data through the FIFO, it reduces the transmission processing performance due to the load caused by the processor directly controlling the data of the FIFO. An object of the present invention is to provide a data transmission apparatus that improves the processor overload.

이와 같은 본 발명은, 송수신되는 데이터의 정보를 저장하는 컨트롤 메모리 부와, 상기 데이터의 전송 제어를 담당하는 선입선출 메모리 제어부와, 상기 데이터를 전송하는 버스를 통해 상기 컨트롤 메모리와 선입선출 메모리 제어부를 관리하는 프로세서 부로 구성되어 프로세서의 데이터 처리 성능을 개선하는 것을 특징으로 한다.As described above, the present invention provides a control memory unit for storing information of transmitted / received data, a first-in first-out memory controller in charge of controlling transmission of the data, and a control memory and first-in first-out memory controller through a bus for transmitting the data. The processor unit is configured to manage the data processing performance of the processor.

바람직하게는, 상기 선입선출 메모리 제어부는 상기 프로세서 부가 생성해 놓은 전송할 데이터를 선입선출 부로 송신하거나 상기 선입선출부에 수신된 임의의 데이터를 상기 프로세서에서 활용 할 수 있도록 패킷 메모리 부로 전송하는 것을특징으로 한다.Preferably, the first-in, first-out memory control unit transmits the data to be generated by the processor to the first-in first-out unit or transmits any data received by the first-in first-out unit to the packet memory unit so that the processor can utilize it. do.

도 1은 종래의 프로세서를 사용한 데이터 송수신 동작을 설명하기 위한 블록 구성도.1 is a block diagram illustrating a data transmission and reception operation using a conventional processor.

도 2는 본 발명에 따른 컨트롤 메모리 부와 FIFO 메모리 제어부를 구비한 장치에 의해 데이터의 송수신 동작을 설명하기 위한 블록 구성도.2 is a block diagram illustrating a data transmission and reception operation by a device having a control memory unit and a FIFO memory control unit according to the present invention;

도 3은 본 발명에 따른 프로세서부에서 전송할 데이터의 컨트롤 메모리 테이블을 나타낸 도면.3 is a diagram illustrating a control memory table of data to be transmitted by a processor unit according to the present invention.

도 4는 본 발명에 따른 수신된 데이터에 대한 컨트롤 메모리 테이블을 나타낸 도면.4 illustrates a control memory table for received data in accordance with the present invention.

도 5는 본 발명에 따른 데이터 전송 장치에 구비된 FIFO 메모리 제어부를 설명한 블록 구성도.5 is a block diagram illustrating a FIFO memory controller included in the data transmission apparatus according to the present invention.

도 6은 본 발명에 따른 FIFO 로부터의 데이터 송신 동작을 설명하기 위한 흐름도.6 is a flowchart illustrating a data transmission operation from a FIFO according to the present invention.

도 7은 본 발명에 따른 데이터 수신 동작을 설명하기 위한 흐름도.7 is a flowchart illustrating a data receiving operation according to the present invention.

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

21 : 프로세서 부 22 : 패킷 메모리 부21: processor unit 22: packet memory unit

23 : 컨트롤 메모리 부 24 : FIFI 부23: control memory section 24: FIFI section

25 : FIFO 메모리 제어부 31 : 1차 송신 플래그 표시25: FIFO memory control unit 31: Primary transmission flag display

51 : 송신 메모리 제어 주소 카운터 52 : 수신메모리 제어 주소카운터51: transmit memory control address counter 52: receive memory control address counter

53 : 컨트롤 메모리 제어부 54 : 수신 데이터 시작 주소53: control memory control unit 54: receive data start address

55 : 송신 데이터 시작 주소 56 : 송신데이터 길이 레지스터55: TX data start address 56: TX data length register

57 : 수신 패킷메모리 주소 카운터 58 : 송신 패킷메모리 주소카운터57: Receive packet memory address counter 58: Transmit packet memory address counter

59 : 패킷 메모리 제어부59: packet memory control unit

이하 본 발명에 대한 바람직한 일실시예를 첨부된 도면을 참조하여 설명하면 다음과 같다.Hereinafter, a preferred embodiment of the present invention will be described with reference to the accompanying drawings.

도 2는 본 발명에 따른 컨트롤 메모리 부와 FIFO 메모리 제어부를 구비한 장치에 의해 데이터의 송수신 동작을 설명하기 위한 블록 구성도이다.2 is a block diagram illustrating a data transmission / reception operation by an apparatus having a control memory unit and a FIFO memory control unit according to the present invention.

도 2를 참조할 때, 본 발명은 프로세서를 이용한 종래의 데이터 전송 장치에 컨트롤 메모리 부(23)와 FIFO 메모리 제어부(25)가 추가되어 구성된다.Referring to FIG. 2, the present invention is configured by adding a control memory unit 23 and a FIFO memory control unit 25 to a conventional data transmission apparatus using a processor.

이와 같은 구성 요소에서 프로세서 부(21)는 시스템 버스를 통하여 패킷 메모리부(22)와 컨트롤 메모리 부(23)를 제어하게 되며, 데이터의 생성과 수신된 데이터의 활용을 담당한다.In such a component, the processor unit 21 controls the packet memory unit 22 and the control memory unit 23 through the system bus, and is responsible for generation of data and utilization of the received data.

그리고, 패킷 메모리 부(22)는 프로세서 부(21)가 생성한 데이터를 저장하고, 프로세서 부(21)가 수신된 데이터를 활용하기 위하여 저장하는 기능을 수행한다.The packet memory unit 22 stores data generated by the processor unit 21 and stores the data in the processor unit 21 to utilize the received data.

또한, 컨트롤 메모리 부(23)는 두 개의 포트(Port)로 이루어져 송수신동작과 같은 양방향 전송 기능을 수행하는 듀얼포트램(Dual Port RAM ; DPRAM)으로 구성되어 프로세서 부(21)가 생성한 데이터의 저장 위치와 데이터의 길이, 전송할 데이터의 유무 등이 도 3과 같이 테이블로 저장되며, 수신된 데이터의 저장할 위치, 수신된 데이터의 길이 또는 수신된 데이터의 상태를 도 4와 같이 테이블로 저장되어 관리한다.In addition, the control memory unit 23 is composed of dual ports (Dual Port RAM; DPRAM) consisting of two ports to perform a bidirectional transmission function such as a transmission and reception operation of the data generated by the processor unit 21 The storage location, the length of the data, the presence or absence of data to be transmitted are stored in a table as shown in FIG. 3, and the storage location of the received data, the length of the received data, or the state of the received data is stored in a table as shown in FIG. 4. do.

FIFO 부(24)는 외부 인터페이스와의 통신을 위하여 송신할 데이터와 수신된 데이터를 임시로 저장하여 주는 장치로, FIFO 메모리 제어부(25)에서 FIFO 부(24)에 수신되어 저장된 데이터를 읽거나, 전송할 데이터를 쓴다(S3).The FIFO unit 24 is a device that temporarily stores data to be transmitted and received data for communication with an external interface. The FIFO unit 24 reads data received and stored in the FIFO unit 24 from the FIFO memory control unit 25, Write data to be transmitted (S3).

FIFO 메모리 제어부(25)는 프로세서부가 생성해 놓은 전송할 데이터를 FIFO 부(24)로 전송하여 주는 기능과 FIFO 에 수신된 데이터를 프로세서 부(21)에서 활용할 수 있도록 패킷 메모리 부(22)로 전송하는 기능을 수행한다(S1).The FIFO memory controller 25 transmits the data generated by the processor unit to the FIFO unit 24 and transmits the data received from the FIFO to the packet memory unit 22 so that the processor unit 21 can utilize the data. Perform a function (S1).

이와 같은 FIFO 메모리 제어부(25)는 컨트롤 메모리 부(23)과 같이 프로세서부(21)와 시스템 버스를 공유하여 사용하게 된다(S2).The FIFO memory controller 25 shares the system bus with the processor unit 21 like the control memory unit 23 (S2).

종래의 프로세서 부(21)가 종래에 데이터 전송 과정의 모든 과정을 총체적으로 수행하였던 것과 달리, 본 발명에서는 프로세서 부(21)가 새로 구성된 컨트롤 메모리 부(23)와 FIFO 메모리 제어부(25)를 제어하여 역할 분담을 시키면서 데이터의 생성과 수신된 데이터의 활용을 담당한다.Unlike the conventional processor 21 performing all the processes of the data transfer process in the prior art, in the present invention, the processor 21 controls the newly configured control memory 23 and the FIFO memory controller 25. It is responsible for the generation of data and the utilization of the received data while allocating roles.

따라서, 프로세서 부(21)는 시스템 버스의 마스터(Master ; 주요 역할을 수행하는 구성 요소)로서 데이터 전송 동작을 일괄적으로 처리하는 역할을 수행하며 FIFO 메모리 제어부(25)는 슬래이브(Slave ; 마스터에 종속되어 있는 구성 요소)로서 동작하게 된다.Therefore, the processor unit 21 serves as a master of the system bus (a component that performs a main role) to process data transfer operations in a batch, and the FIFO memory control unit 25 is a slave (master). Components that depend on.

도 5는 본 발명에 따른 데이터 전송 장치에 구비된 FIFO 메모리 제어부를 설명한 블록 구성도이다.5 is a block diagram illustrating a FIFO memory controller included in the data transmission apparatus according to the present invention.

도 5를 참조하면, FIFO 메모리 제어부는 송신 메모리 제어 주소 카운터(Tx Control Memory Address Counter)(51), 수신 메모리 제어 주소 카운터(Rx ControlMemory Address Counter)(52), 컨트롤 메모리 제어부(53), 수신 데이터 시작주소 레지스터(Rx Data Start Address Register)(54), 송신 데이터 시작주소 레지스터(Tx Data Start Address Register)(55), 송신 데이터 길이 레지스터(Tx Data Length Register)(56), 수신 패킷 메모리 주소 카운터(Rx Packet Memory Address Counter)(57), 송신 패킷 메모리 주소 카운터(Tx Packet Memory Address Counter)(58), 패킷 메모리 제어부(59)로 구성되어 있다.Referring to FIG. 5, the FIFO memory control unit includes a transmit memory control address counter 51, a receive memory control address counter 52, a control memory controller 53, and receive data. Rx Data Start Address Register (54), Tx Data Start Address Register (55), Tx Data Length Register (56), Receive Packet Memory Address Counter ( Rx Packet Memory Address Counter (57), Tx Packet Memory Address Counter (58), and packet memory control unit (59).

이와 같은 각 부의 기능을 살펴보면 다음과 같다.The function of each part is as follows.

먼저, 송신 메모리 제어 주소 카운터 부(51)는 FIFO로 전송할 데이터가 있는지, 데이터가 저장된 주소가 어디인지, 데이터의 길이가 얼마이지를 검색하기 위하여 카운터 메모리를 처리하기 위한 메모리 제어 주소를 발생시키는 장치이다.First, the transmission memory control address counter unit 51 generates a memory control address for processing the counter memory to search whether there is data to be transmitted to the FIFO, where the data is stored, and how long the data is. to be.

또한, 수신 메모리 제어 주소 카운터 부(52)는 FIFO에 수신된 데이터를 패킷메모리로 전송하고자 할 때 저장할 패킷 메모리의 주소를 검색하고, 수신된 데이터의 길이를 저장하고 수신된 데이터의 상태를 저장하기 위하여 메모리 제어를 처리하기 위한 메모리 제어 주소를 발생시킨다.In addition, the reception memory control address counter 52 retrieves the address of the packet memory to be stored when the data received in the FIFO is to be transmitted to the packet memory, stores the length of the received data, and stores the state of the received data. Generate a memory control address for processing the memory control.

그리고, 수신 데이터 시작 주소 레지스터 부(54)는 전송할 데이터의 주소를 메모리 제어부로 부터 읽어서 랫치 시켜놓은 레지스터이다.The received data start address register section 54 is a register in which the address of data to be transferred is read and latched from the memory control section.

반대로, 송신 데이터 시작 주소 레지스터 부(55)는 전송할 데이터의 주소를 메모리 제어부()로부터 읽어서 랫치시켜 놓은 레지스터이다.On the contrary, the transmission data start address register section 55 is a register in which the address of data to be transmitted is read and latched from the memory control section.

또한, 수신 패킷 메모리 주소 카운터 부(52)는 수신된 데이터를 패킷메모리에 저장하기위한 패킷 메모리의 주소를 발생시키는 장치이다.In addition, the reception packet memory address counter unit 52 is an apparatus for generating an address of a packet memory for storing received data in the packet memory.

반대로, 송신 패킷 메모리 주소카운터 부(58)는 송신된 데이터를 패킷메모리에 저장하기 위한 패킷 메모리의 주소를 발생시키는 장치이다.In contrast, the transmission packet memory address counter section 58 is an apparatus for generating an address of the packet memory for storing the transmitted data in the packet memory.

또한, 컨트롤 메모리 제어부(53)는 컨트롤 메모리를 처리하기 위한 주소 카운터의 제어와 컨트롤 메모리의 데이터를 읽어서 각 레지스터에 랫치하기 위한 제어 신호를 발생시킨다. 또한, 수신된 데이터의 길이를 컨트롤 메모리 제어부(53)에 저장하는 기능, 데이터의 전송 및 수신 상태를 나타내는 컨트롤 메모리의 상태 플래그(Flag) 표시를 관리하는 기능 등을 수행한다. 컨트롤 메모리 제어부(53)의 모든 동작은 REFCLK에 동기되어 동작되도록 설계되어 있다.In addition, the control memory control unit 53 generates a control signal for controlling the address counter for processing the control memory and for reading the data of the control memory and latching it in each register. In addition, a function of storing the length of the received data in the control memory controller 53, a function of managing a display of a status flag of the control memory indicating a state of data transmission and reception, and the like. All operations of the control memory control section 53 are designed to operate in synchronization with REFCLK.

이와 함께 패킷 메모리 제어부(59)는 패킷 메모리를 처리하기 위한 제어 신호 패킷 메모리를 처리하기 위한 제어 신호(수신/송신 FIFO 읽기/쓰기 등)을 발생시킨다.At the same time, the packet memory control unit 59 generates a control signal for processing the packet memory (receive / transmit FIFO read / write, etc.) for processing the packet memory.

또한, 패킷메모리를 처리하기 위한 주소 카운터를 제어하기 위한 제어 신호를 발생하며, 시스템 버스를 프로세서 부와 공유하기 위하여 시스템 버스의 마스터인 프로세서와의 시스템 아비테이션(Arbitation)을 관리한다.In addition, it generates a control signal for controlling the address counter for processing the packet memory, and manages the system Arbitration with the processor that is the master of the system bus to share the system bus with the processor.

아비테이션이란, 시스템 버스의 무분별한 사용을 제어하기 위해 데이터를 순차적으로 전송할 수 있게 하는 제어동작을 말한다.Aviation refers to a control operation that allows data to be sent sequentially to control the indiscriminate use of the system bus.

다음으로 이와 같은 구성으로 이루어진 본 발명에 따른 데이터 전송 동작을 설명하기로 한다.Next, a data transmission operation according to the present invention having such a configuration will be described.

도 6은 본 발명에 따른 FIFO 로부터의 데이터 송신 동작을 설명하기 위한 흐름도이다.6 is a flowchart illustrating a data transmission operation from a FIFO according to the present invention.

우선, 프로세서 부는 전송할 데이터를 패킷 메모리 부에 생성한다(S11).First, the processor unit generates data to be transmitted in the packet memory unit (S11).

이 때, 프로세서 부는 패킷 메모리에 전송할 데이터를 저장하고, 컨트롤 메모리 부에 전송할 데이터의 시작 주소, 길이, 송신 상태 플래그(Tx Status Flag)표시를 셋팅한다(S12).At this time, the processor unit stores the data to be transmitted in the packet memory, and sets the start address, the length, and the transmission status flag (Tx Status Flag) indication of the data to be transmitted to the control memory unit (S12).

이 때, 프로세서 부는 컨트롤 메모리 부의 큐(QUEUE)가 꽉찬상태(Full)이 아닐 경우에 위와 같은 과정으로 전송 준비를 할 수 있다.At this time, the processor unit may prepare for transmission by the above process when the queue of the control memory unit is not full.

컨트롤 메모리 제어부는 컨트롤 메모리로부터 송신 상태 플래그를 검색한다(S13).The control memory control unit retrieves the transmission status flag from the control memory (S13).

검색 후, 컨트롤 메모리에서 송신 상태 플래그 표시가 셋팅되어 있으면 전송할데이터가 있음을 나타내므로 컨트롤 메모리 부로부터 전송할 데이터의 시작 주소와 길이를 읽은 후 패킷 메모리 제어부에 전송을 요청한다(S14).If the transmission status flag is set in the control memory after the search, it indicates that there is data to be transmitted. Therefore, after the start address and length of the data to be transmitted are read from the control memory unit, the transmission is requested to the packet memory controller (S14).

데이터 전송 요청을 받은 패킷 메모리 제어부는 송신 FIFO의 데이터가 꽉찬상태(Full)인지 검색한다(S15).The packet memory controller receiving the data transmission request searches whether the data of the transmission FIFO is full (S15).

검색 결과 송신 FIFO의 데이터에 남은 영역이 있을 경우, 패킷 메모리 제어부는 프로세서 부에 시스템 버스 사용 허가를 요청한다(S16). 단, 꽉찬 상태일경우에는 일시적으로 대기한다.If there is a remaining area in the data of the transmission result FIFO, the packet memory controller requests the processor to use the system bus (S16). If it is full, wait for a while.

버스 사용이 허가 되면 패킷 메모리 제어부는 컨트롤 메모리로부터 읽은 시작 주소로부터 주소를 증가시키며 패킷 메모리에서 송신 FIFO로 데이터를 전송한다(S17).If the bus is permitted to use, the packet memory control unit increments the address from the start address read from the control memory and transmits data from the packet memory to the transmission FIFO (S17).

이 후, 전송중인 데이터의 길이를 감소시키면서 데이터의 길이가 0 인지를검색한다(S18).Thereafter, it is searched whether the data length is 0 while reducing the length of the data being transmitted (S18).

데이터의 길이가 0일 경우, 패킷 메모리 제어부는 컨트롤 메모리 제어부에 데이터 전송이 끝났음을 알리고, 컨트롤 메모리 제어부는 컨트롤 메모리의 상태 플래그를 제거(Clear)하고 컨트롤 메모리 주소를 증가시키며(S19), 컨트롤 메모리 제어부는 다음 상태 플래그 표시를 검색하여 다음 데이터 전송을 준비하게 된다.If the length of data is 0, the packet memory controller informs the control memory controller that the data transmission is completed, and the control memory controller clears the status flag of the control memory and increases the control memory address (S19). The controller retrieves the next status flag indication to prepare for the next data transmission.

다음으로, 도 7은 본 발명에 따른 데이터 수신 동작을 설명하기 위한 흐름도이다.Next, FIG. 7 is a flowchart for explaining a data receiving operation according to the present invention.

도 7을 참조하면, 먼저 데이터 수신은 프로세서 부가 수신 준비를 완료한 후에 이루어진다.Referring to FIG. 7, first, data reception is performed after the processor additionally completes preparation for reception.

즉, 프로세서 부는 수신할 데이터를 저장할 큐(Queue)를 패킷 메모리에 할당한다(S21).That is, the processor unit allocates a queue to store the data to be received in the packet memory (S21).

프로세서 부는 할당된 큐(Queue)의 시작 주소와 수신 준비가 되었음을 나타내는 수신 상태 플래그를 컨트롤 메모리에 저장한다(S22).The processor unit stores in the control memory a start address of the allocated queue and a reception state flag indicating that it is ready to receive (S22).

컨트롤 메모리 제어부는 컨트롤 메모리로부터 수신 상태 플래그 표시를 검색하고 프로세서 부의 수신 준비가 완료되었다면 패킷 메모리 제어부에 데이터 수신을 요청한다(S23).The control memory controller retrieves the reception status flag indication from the control memory and requests the packet memory controller to receive data when the processor unit is ready to receive the signal (S23).

패킷 메모리 제어부는 수신 FIFO의 데이터 수신 여부를 검색하여 수신된 데이터가 있으면 수신 절차가 진행된다(S24).The packet memory controller searches whether the reception FIFO receives data, and if there is data received, the reception procedure is performed (S24).

이 후, 컨트롤 메모리 제어부는 컨트롤 메모리로부터 수신 데이터를 저장할 큐(Queue) 할당 영역의 시작 주소를 읽는다(S25).Thereafter, the control memory control unit reads the start address of the queue allocation area to store the received data from the control memory (S25).

그리고, 패킷 메모리 제어부는 시스템 버스를 제어하는 프로세서 부에 시스템 버스 사용 허가를 요청한다(S26). 이 후, 사용 허가를 받으면 수신 FIFO에서 데이터를 읽어서 패킷 메모리에 저장하게 된다.The packet memory controller requests a system bus use permission from the processor that controls the system bus (S26). After that, upon receiving the permission, data is read from the receiving FIFO and stored in the packet memory.

이 때, 패킷 메모리 제어부는 컨트롤 메모리로부터 읽은 시작주소에서 주소를 증가시키며 수신 FIFO에서 패킷 메모리로 데이터를 이동한다(S27).At this time, the packet memory control unit increases the address at the start address read from the control memory and moves data from the reception FIFO to the packet memory (S27).

데이터 FIFO의 태그(TAG ; 데이터 고유의 값이 부여된 식별자)를 검색하여 수신된 데이터의 끝을 검색한다(S28).A tag TAG of the data FIFO is searched for and the end of the received data is searched for (S28).

패킷 메모리 제어부는 데이터 수신이 끝났음을 컨트롤 메모리 제어부에 알리고 컨트롤 메모리 제어부는 수신된 데이터의 길이와 수신된 데이터의 상태를 저장하고 프로세서 부에 데이터가 수신되어 패킷 메모리에 저장되었음을 알린다.The packet memory controller notifies the control memory controller that data reception is complete, and the control memory controller stores the length of the received data and the state of the received data, and informs the processor that the data has been received and stored in the packet memory.

프로세서 부는 수신된 데이터가 정상적으로 전송되었는지를 컨트롤 메모리의 수신 상태 플래그 표시에 의해 알 수 있으며, 다음 데이터를 수신하기 위해 컨트롤메모리를 초기화한다(S29).The processor unit knows whether the received data has been normally transmitted by displaying the reception status flag of the control memory, and initializes the control memory to receive the next data (S29).

상기에서 언급한 본 발명에 따르면 종래의 데이터 전송 과정에서는 프로세서 부가 모든 전송 과정을 총체적으로 수행하였던 것과 달리, 프로세서 부가 새로 구성된 컨트롤 메모리 부와 FIFO 메모리 제어부를 제어하여 역할 분담을 시키면서 데이터의 생성과 수신된 데이터의 활용을 담당한다.According to the present invention mentioned above, in the conventional data transmission process, the processor additionally performs all the transmission processes, whereas the processor controls the newly configured control memory unit and the FIFO memory control unit to share the roles while generating and receiving data. Is responsible for the use of the data.

즉, 프로세서 부는 시스템 버스의 마스터(Master ; 주요 역할을 수행하는 구성 요소)로서 데이터 전송 동작을 일괄적으로 처리하는 역할을 수행하고 FIFO 메모리 제어부(25)는 슬래이브(Slave ; 마스터에 종속되어 있는 구성 요소)로서 동작하기 때문에 데이터 송수신에 대한 프로세서의 부하를 절감시켜서 프로세서의 성능을 향상시키는 효과를 얻을 수 있다.In other words, the processor unit serves as a master of a system bus (a component that performs a main role) to process data transfer operations in a batch, and the FIFO memory controller 25 is slaved to a slave (master). Components, thereby reducing the processor load on data transmission and reception, thereby improving the performance of the processor.

Claims (5)

프로세서부가 생성한 데이터를 저장하고, 외부 인터페이스를 통해 상기 프로세서부에 수신되는 데이터를 저장하는 패킷 메모리부;A packet memory unit which stores data generated by a processor unit and stores data received by the processor unit through an external interface; 상기 외부 인터페이스와의 송수신데이터를 임시로 저장하는 선입선출메모리부;A first-in, first-out memory unit that temporarily stores transmission / reception data with the external interface; 상기 패킷 메모리부와 선입선출 메모리부간 송수신되는 데이터의 저장 위치와 길이, 상태를 저장하는 송수신 컨트롤 메모리 테이블로 구성된 컨트롤 메모리부;A control memory unit including a transmission / reception control memory table for storing a storage position, a length, and a state of data transmitted and received between the packet memory unit and the first-in first-out memory unit; 상기 패킷 메모리부와 상기 선입선출 메모리부간 송수신되는 데이터의 존재유무와, 상기 데이터의 메모리 주소와, 상기 데이터의 길이를 검색하기 위하여 상기 컨트롤 메모리부를 억세스하기 위한 컨트롤 메모리 어드레스를 발생시키는 송수신 메모리 주소 카운터부와,A transmission / reception memory address counter for generating presence or absence of data transmitted / received between the packet memory unit and the first-in first-out memory unit, a memory address of the data, and a control memory address for accessing the control memory unit to retrieve the length of the data Wealth, 상기 패킷 메모리부와 상기 선입선출 메모리부간 송수신되는 데이터의 주소를 각각 상기 컨트롤 메모리부로부터 읽어 랫치시키는 송수신 데이터 시작 주소 레지스터부와,A transmission / reception data start address register unit for reading and latching addresses of data transmitted / received between the packet memory unit and the first-in first-out memory unit, respectively; 상기 송수신 메모리 주소 카운터부를 제어하고, 상기 컨트롤메모리부를 각각의 레지스터에 랫치하기 위한 제어 신호를 발생하는 컨트롤 메모리 제어부와,A control memory control unit which controls the transmission / reception memory address counter unit and generates a control signal for latching the control memory unit in each register; 상기 패킷 메모리부를 억세스하기 위한 제어신호를 생성하며, 상기 선입선출 메모리부를 억세스하기 위한 주소카운터를 제어하기 이한 제어신호를 생성하며, 시스템 버스를 프로세서부와 공유하기 위하여 시스템 버스의 마스터인 프로세서와 시스템 아비트레이션을 관리하는 패킷 메모리 제어부로 구성되어, 상기 패킷 메모리부에 생성된 데이터를 상기 선입선출메모리부로 전송하거나 상기 외부 인터페이스를 통해 상기 선입선출 메모리부에 수신된 데이터를 상기 패킷 메모리부로 전송하는 선입선출메모리 제어부와;A control signal for accessing the packet memory unit, a control signal for controlling an address counter for accessing the first-in first-out memory unit, and a processor and a system that are masters of the system bus to share the system bus with the processor unit. A packet memory controller configured to manage arbitration, and transmits data generated in the packet memory unit to the first-in first-out memory unit or transfers the data received from the first-in first-out memory unit to the packet memory unit through the external interface. An elected memory controller; 상기 시스템 버스를 통해 상기 패킷 메모리부와 컨트롤 메모리부의 제어를 관리하며, 상기 데이터의 생성과 수신된 데이터의 활용을 담당하는 프로세서부로 구성된 것을 특징으로 하는 프로세서의 과부하를 개선한 데이터 전송 장치.And a processor unit configured to manage control of the packet memory unit and the control memory unit through the system bus, and to be in charge of generating the data and utilizing the received data. 삭제delete 삭제delete 삭제delete 삭제delete
KR10-1999-0022055A 1999-06-14 1999-06-14 Data Transmit Device For Improvement Processor Over Load KR100393983B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-1999-0022055A KR100393983B1 (en) 1999-06-14 1999-06-14 Data Transmit Device For Improvement Processor Over Load

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-1999-0022055A KR100393983B1 (en) 1999-06-14 1999-06-14 Data Transmit Device For Improvement Processor Over Load

Publications (2)

Publication Number Publication Date
KR20010002307A KR20010002307A (en) 2001-01-15
KR100393983B1 true KR100393983B1 (en) 2003-08-06

Family

ID=19592088

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-1999-0022055A KR100393983B1 (en) 1999-06-14 1999-06-14 Data Transmit Device For Improvement Processor Over Load

Country Status (1)

Country Link
KR (1) KR100393983B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101667602B1 (en) * 2015-09-07 2016-10-19 (주) 유파인스 Fifo memory device having selectable data output and data output method using the same

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5241630A (en) * 1990-11-13 1993-08-31 Compaq Computer Corp. Device controller with a separate command path between a host and the device and a separate data path including a first in, first out memory between the host and the device
JPH05334230A (en) * 1992-05-29 1993-12-17 Matsushita Electric Ind Co Ltd Dual port memory access control circuit
US5742361A (en) * 1995-11-30 1998-04-21 Hitachi, Ltd. Data demultiplexer
US5804986A (en) * 1995-12-29 1998-09-08 Cypress Semiconductor Corp. Memory in a programmable logic device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5241630A (en) * 1990-11-13 1993-08-31 Compaq Computer Corp. Device controller with a separate command path between a host and the device and a separate data path including a first in, first out memory between the host and the device
JPH05334230A (en) * 1992-05-29 1993-12-17 Matsushita Electric Ind Co Ltd Dual port memory access control circuit
US5742361A (en) * 1995-11-30 1998-04-21 Hitachi, Ltd. Data demultiplexer
US5804986A (en) * 1995-12-29 1998-09-08 Cypress Semiconductor Corp. Memory in a programmable logic device

Also Published As

Publication number Publication date
KR20010002307A (en) 2001-01-15

Similar Documents

Publication Publication Date Title
US4419728A (en) Channel interface circuit providing virtual channel number translation and direct memory access
CA2186598C (en) Method and apparatus for maintaining transaction ordering and supporting deferred replies in a bus bridge
US6792488B2 (en) Communication between processors
US6189062B1 (en) Apparatus and method for address translation in bus bridge devices
US5561806A (en) Serial channel adapter
KR20040044366A (en) Shared memory data transfer apparatus
CA2573156A1 (en) Apparatus and method for supporting memory management in an offload of network protocol processing
US6584529B1 (en) Intermediate buffer control for improving throughput of split transaction interconnect
US5768550A (en) Bus interface logic system
US5930483A (en) Method and apparatus for communications control on a small computer system interface
KR102181441B1 (en) Semiconductor device including plurality of function blocks
JP4892683B2 (en) Data processing apparatus and method for transferring data
US20030196004A1 (en) Buffering and presenting chunks
KR100393983B1 (en) Data Transmit Device For Improvement Processor Over Load
US5958032A (en) Data processing and communicating system with high throughput peripheral component interconnect bus
EP2504771B1 (en) Addressable fifo
US8589632B1 (en) Arbitration method for programmable multiple clock domain bi-directional interface
CN109992560B (en) Communication method and communication system
JPS6240751B2 (en)
KR0140571B1 (en) Multiprocessor system with bus control means
EP0378422B1 (en) Look ahead bus transfer request
JP2000244585A (en) Bus interface circuit
KR100214302B1 (en) High speed data processing method of dma for dsp
KR20000013078A (en) Communication device between processors of multiple processor system and communication method
KR100294639B1 (en) A cache apparatus for multi-access

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20080626

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee