KR20080071840A - 복수의 dma 요청 블록들을 가지는 직접 메모리 액세스장치의 우선 순위를 결정하는 방법 및 장치 - Google Patents

복수의 dma 요청 블록들을 가지는 직접 메모리 액세스장치의 우선 순위를 결정하는 방법 및 장치 Download PDF

Info

Publication number
KR20080071840A
KR20080071840A KR1020070010210A KR20070010210A KR20080071840A KR 20080071840 A KR20080071840 A KR 20080071840A KR 1020070010210 A KR1020070010210 A KR 1020070010210A KR 20070010210 A KR20070010210 A KR 20070010210A KR 20080071840 A KR20080071840 A KR 20080071840A
Authority
KR
South Korea
Prior art keywords
dma request
priority
dma
blocks
changes
Prior art date
Application number
KR1020070010210A
Other languages
English (en)
Other versions
KR100868766B1 (ko
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 KR1020070010210A priority Critical patent/KR100868766B1/ko
Priority to US11/896,453 priority patent/US8065447B2/en
Publication of KR20080071840A publication Critical patent/KR20080071840A/ko
Application granted granted Critical
Publication of KR100868766B1 publication Critical patent/KR100868766B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B31/00Swimming aids
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B63SHIPS OR OTHER WATERBORNE VESSELS; RELATED EQUIPMENT
    • B63CLAUNCHING, HAULING-OUT, OR DRY-DOCKING OF VESSELS; LIFE-SAVING IN WATER; EQUIPMENT FOR DWELLING OR WORKING UNDER WATER; MEANS FOR SALVAGING OR SEARCHING FOR UNDERWATER OBJECTS
    • B63C9/00Life-saving in water
    • B63C9/08Life-buoys, e.g. rings; Life-belts, jackets, suits, or the like
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2208/00Characteristics or parameters related to the user or player
    • A63B2208/03Characteristics or parameters related to the user or player the user being in water
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2225/00Miscellaneous features of sport apparatus, devices or equipment
    • A63B2225/60Apparatus used in water
    • A63B2225/605Floating

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mechanical Engineering (AREA)
  • Ocean & Marine Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Bus Control (AREA)

Abstract

본 발명에 의한 우선 순위를 결정하는 방법은, DMA 요청 신호를 전송하는 DMA 요청 블록들 각각에 대하여, DMA 요청 블록들이 전송하고자 하는 데이터 전송량에 및 DMA 요청신호의 도착 순서에 기초하여 우선순위를 부여하고, 우선 순위를 부여하는 과정에서 우선 순위가 변경된 DMA 요청 블록들 각각에 대한 변경 횟수를 계수하며, 신규 DMA 요청 블록으로부터 DMA 요청 신호가 전송되면, 계수된 변경 횟수에 기초하여 DMA 요청 블록들 각각의 우선 순위를 결정함으로써, DMA 요청 블록의 대기 시간을 줄일 수 있는 효과를 가진다.

Description

복수의 DMA 요청 블록들을 가지는 직접 메모리 액세스 장치의 우선 순위를 결정하는 방법 및 장치{Method and apparatus for determining priority in direct memory access apparatus having multiple direct memory access requesting blocks}
도 1은 본 발명에 따른 우선 순위를 결정하는 장치(110)를 포함하는 DMA 제어 장치와 주변 장치들을 도시한 도면이다.
도 2(a)는 DMA 요청 신호가 도착한 순서에 따라 결정된 우선 순위를, 도 2(b)는 데이터 전송량에 기초하여 결정된 우선 순위를 도시하는 도면이다.
도 3(a)은 도 2(a)에 의해 결정된 우선 순위에 의하여 직접 메모리 액세스를 수행하는 경우 대기 시간을 도시한 도면이며, 도 3(b)은 도 2(b)에 의해 결정된 우선 순위에 의해 직접 메모리 액세스를 수행하는 경우 대기 시간을 도시한 도면이다.
도 4는 본 발명에 따른 우선 순위를 결정하는 방법의 흐름도이다.
본 발명은 직접 메모리 액세스(Direct memory access: DMA)에 관한 것으로, 특히 데이터 전송량에 기초하여 DMA 요청 블록들 간에 우선 순위를 동적으로 결정하는 방법 및 장치에 관한 것이다.
직접 메모리 액세스 방식은 중앙처리장치(Central Processing Unit: CPU)를 거치지 않고 메모리와 DMA 요청 블록 사이에서 수행되는 데이터 전송 방법의 하나이다. DMA 전송 방식을 사용하기 위해서는 시스템 버스 상에 DMA 제어 모듈(Direct Memory Access Controll Module)이 추가되어야 한다. DMA 제어 모듈은 중앙처리장치로부터 시스템의 제어를 넘겨받아 중앙처리장치의 기능 중 일부를 대신 처리한다. 즉, 중앙처리장치는 데이터 전송을 DMA 제어 모듈에 일임하고, DMA 제어 모듈은 중앙처리장치를 대신하여 데이터 전송을 처리한다. 이때 DMA 제어 모듈은 중앙처리장치를 거치지 않고 데이터를 메모리로 직접 전송하고, 모든 데이터 전송이 완료되면 DMA 제어 모듈은 인터럽트를 생성하고, 생성된 인터럽트를 중앙처리장치로 전달한다.
특히, 복수의 DMA 요청 블록들을 가지는 DMA 제어 모듈의 경우에 있어서, DMA 요청 블록이 액정 표시 장치(Liquid Crystal Display; LCD)와 같은 I/O(Input/Output) 장치인 경우 데이터의 전송만을 목적으로 하며, I/O 장치들간에 고정된 우선 순위를 미리 설정함이 통상적이다. 따라서, 우선 순위가 낮은 I/O 장치와 메모리 간의 데이터 전송 도중에, 우선 순위가 높은 I/O 장치로부터 DMA 요청이 들어오면, DMA 제어 모듈은 우선 순위가 낮은 I/O 장치와 메모리 간의 데이터 전송을 중지하는 한편, 현재까지 전송된 데이터에 대한 정보를 임시 버퍼에 저장하고, 우선 순위가 높은 I/O 장치와 메모리 간의 데이터 전송을 처리한다. 이후, 우 선 순위가 높은 I/O 장치와 메모리 간의 데이터 전송이 완료되면, DMA 제어 모듈은 임시 버퍼에 저장된 정보를 기초로, 중지된 이후의 데이터 전송을 재개한다.
그러나 하나 이상의 프로그램 가능한 프로세서들, 예를 들면 디지털 신호 프로세서(Digital Signal Processor: DSP), 오디오 프로세서(Audio Processor), 또는 비디오 프로세서(Video Processor) 등과 같은 DMA 요청 블록들을 포함하는 MPSoC(Multiprocessor systems-on-chip) 환경에서는 다수의 프로세싱 노드(processing node)가 존재하므로 우선순위를 미리 설정할 수 없게 된다. 또한, 많은 양의 데이터 전송을 필요로 하므로, 현재까지 전송된 데이터에 대한 정보를 저장하기 위해서는 큰 용량의 임시 버퍼를 필요로 하나, 별도의 버퍼를 추가함은 코스트(cost)의 측면에서 바람직하지 못하다. 따라서, 이러한 MPSoC 환경 하에서는 I/O 장치들의 경우와 같은 고정된 우선 순위를 설정하는 것은 바람직하지 못하다.
본 발명이 이루고자 하는 기술적 과제는, 데이터 전송량 또는 DMA 요청 신호의 도착순서에 기초하여 DMA 요청 블록들 간에 우선 순위를 동적으로 결정하기 위한 방법 및 장치를 제공하는 데 있다.
본 발명이 이루고자 하는 다른 기술적 과제는, 데이터 전송량 또는 DMA 요청 신호의 도착순서에 기초하여 DMA 요청 블록들 간에 우선 순위를 동적으로 결정하기 위한 방법을 기록한 컴퓨터로 독출 가능한 기록 매체를 제공하는 데 있다.
상기 과제를 이루기 위해, 본 발명에 의한 우선 순위 결정방법은 (a) DMA 요 청 신호를 전송하는 DMA 요청 블록들 각각에 대하여, 상기 DMA 요청 블록들이 전송하고자 하는 데이터 전송량에 및 상기 DMA 요청신호의 도착 순서에 기초하여 우선순위를 부여하는 단계; (b) 상기 우선 순위를 부여하는 과정에서 우선 순위가 변경된 DMA 요청 블록들 각각에 대한 변경 횟수를 계수하는 단계; 및 (c) 신규 DMA 요청 블록으로부터 DMA 요청 신호가 전송되면, 상기 계수된 변경 횟수에 기초하여 상기 DMA 요청 블록들 각각의 우선 순위를 결정하는 단계를 포함하는 것을 특징으로 한다.
상기 또 다른 과제를 이루기 위해, 상기 방법을 실행하기 위한 프로그램이 기록된 컴퓨터로 독출 가능한 기록매체가 제공된다.
상기 다른 과제를 이루기 위해, 본 발명에 의한 우선 순위 결정장치는, DMA 요청 신호를 전송하는 DMA 요청 블록들 각각에 대하여, 상기 DMA 요청 블록들이 전송하고자 하는 데이터 전송량에 및 상기 DMA 요청신호의 도착 순서에 기초하여 우선순위를 부여하는 우선순위 전처리부; 상기 우선 순위를 부여하는 과정에서 우선 순위가 변경된 DMA 요청 블록들 각각에 대한 변경 횟수를 계수하는 계수부; 및 신규 DMA 요청 블록으로부터 DMA 요청 신호가 전송되면, 상기 계수된 변경 횟수에 기초하여 상기 DMA 요청 블록들 각각의 우선 순위를 결정하는 우선순위 결정모듈을 포함하는 것을 특징으로 한다.
이하, 첨부한 도면을 참조하면서 본 발명에 따른 복수의 DMA 요청 블록들을 가지는 직접 메모리 액세스 장치의 우선 순위를 결정하는 방법 및 장치의 바람직한 실시예를 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어 서, 동일한 구성요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호로 표기되었음에 유의하여야 한다. 또한, 하기의 설명에서는 구체적인 회로의 구성소자 등과 같은 많은 특정사항들이 도시되어 있는데, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐 이러한 특정사항들 없이도 본 발명이 실시될 수 있음은 이 기술분야에서 통상의 지식을 가진 자에게는 자명하다 할 것이다. 그리고 본 발명을 설명함에 있어서, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.
도 1은 본 발명에 따른 우선 순위를 결정하는 장치(110)를 포함하는 DMA 제어 장치(100)와 주변 장치들을 도시한 도면이며, 도 2(a)는 DMA 요청 신호가 도착한 순서에 따라 부여되는 우선 순위를, 도 2(b)는 데이터 전송량에 기초하여 부여되는 우선 순위를 도시하는 도면이다. 한편, 도 3(a)은 도 2(a)에 의해 부여된 우선 순위에 의하여 직접 메모리 액세스를 수행하는 경우 대기 시간을 도시한 도면이며, 도 3(b)은 도 2(b)에 의해 부여된 우선 순위에 의해 직접 메모리 액세스를 수행하는 경우 대기 시간을 도시한 도면이다. 도 2(a) 및 도 2(b)는 도 1의 관련 구성요소를 설명하는 과정에서 함께 설명하기로 한다.
도 1을 참조하여 전반적인 DMA 방식을 이용한 데이터 전송 과정을 설명하면 다음과 같다.
제1 DMA 요청 블록(120), 제2 DMA 요청 블록(130), 및 제n DMA 요청 블록(140)은 각각 DMA 요청 신호 DMA_Request_1, DMA_Request_2, 및 DMA_Request_n를 DMA 버스를 통해 DMA 제어 장치(100)로 전달한다. DMA 요청 신호들 각각은 자신의 DMA 요청 블록의 데이터 전송량을 포함한다.
DMA 요청 신호를 전달받은 DMA 제어 장치(100)의 우선 순위 결정 장치(110)는 데이터 전송량에 기초하여 DMA 요청 블록들 각각에 대하여 우선 순위를 결정하고, 결정된 우선 순위에 따라 선택된 DMA 요청 블록의 신호 "Select_Block"와 DMA 요청 신호 "DMA_Request"를 DMA 처리부(115)로 전달한다.
DMA 처리부(115)는 신호 "Select_Block"와 신호 "DMA_Request"를 전달받고, 선택된 DMA 요청 블록과 메모리(160)와의 데이터 전송을 제어한다. 이때 선택된 DMA 요청 블록은 DMA_ack 1 내지 DMA_ack_n 중 어느 하나를 전달받는다.
이후, 선택된 DMA 요청 블록과 메모리(160)와의 데이터 전송이 완료되면, DMA 제어 장치(115)는 인터럽트를 생성하고, 생성된 인터럽트를 중앙처리장치(150)로 전달한다.
이하 본 발명에 따른 우선 순위 결정 장치(110)의 블록들을 상세하게 설명하기로 한다. 본 발명에 따른 우선 순위 결정 장치(110)는 우선 순위 전처리부(111), 계수부(112), 우선 순위 결정 모듈(113) 및 제1 저장부(114)를 포함하며, 우선 순위 결정 모듈(113)은 비교부(113a), 제2 저장부(113b) 및 우선 순위 결정부(113c)를 포함하여 이루어진다.
우선 순위 전처리부(111)는 메모리 액세스를 위한 DMA 요청 신호를 전송한 제1 DMA 요청 블록(120)에 대하여 제2 DMA 요청 블록들과의 관계에서 데이터 전송량에 기초하여 우선 순위를 부여하고, 부여된 우선 순위를 제1 저장부(114)에 저장 한다. 우선 순위 전처리부(111)는 데이터 전송량이 적은 DMA 요청 블록에 대해 우선 순위를 높게 부여한다.
계수부(112)는 우선 순위 전처리부(111)에서 우선 순위를 부여하는 과정에서 우선 순위가 변경된 기존의 DMA 요청 블록들의 변경 횟수를 계수하고, 계수된 변경 횟수를 제1 저장부(114)에 저장한다.
이하, 도 2(a) 내지 도 3(b)를 참조하여 우선순위 부여의 개념을 설명하기로 한다.
도 2(a)는 DMA 요청 신호의 도착 순서에 따라 부여된 우선 순위를, 도 2(b)는 데이터 전송량에 기초하여 부여된 우선 순위를 도시하는 도면이다. 우선 순위를 부여하는 방법으로 2가지를 고려할 수 있는데, 첫 번째는 정적인(static) 방법이다. 정적인 방법이란 예를 들면, DMA 요청 신호의 도착 순서대로 DMA 요청 블록들에 우선 순위를 부여하는 경우와 같이 한번 부여된 우선 순위가 변경되지 않는 방법이다. 두 번째는 동적인(dynamic) 방법으로, 예를 들면 데이터 전송량(Data Transfer Amount: DTA)에 기초하여 우선 순위를 부여하는 방법으로, 기존에 우선 순위가 부여된 DMA 요청 블록들은 이후의 DMA 요청 블록의 DMA 요청에 따라 우선 순위가 변경되는 방법이다. 이러한 도착 순서 또는 데이터 전송량은 정적인 방법 또는 동적인 방법의 예시에 불과하다.
도 2(a) 및 2(b)를 참조함에 있어서, DMA 요청 블록들의 수는 4개이며, DMA 요청 신호의 도착 순서는 제1 DMA 요청 블록부터 제4 DMA 요청 블록의 순서로 도착했으며, 각각의 데이터 전송량(Transfer Amount: TA)은 제1 DMA 요청 블록의 경우 데이터 전송량은 4, 제2 DMA 요청 블록의 경우 데이터 전송량은 1, 제3 DMA 요청 블록(130)은 3, 그리고 제4 DMA 요청 블록은 2라고 가정하자.
이러한 가정 하에서, 도 2(a)를 참조하면, DMA 요청 신호의 도착 순서(Arrival Time: AT)에 기초하여 우선 순위를 부여하면, 우선 순위는 도 2(a)와 같이 제1 DMA 요청 블록, 제2 DMA 요청 블록, 제3 DMA 요청 블록, 제 4 DMA 요청 블록의 순서로 부여된다.
동일한 가정 하에서, 도 2(b)를 참조하면, 데이터 전송량에 기초하여 우선 순위를 부여하면, 우선 순위는 도 2(b)와 같이 제2 DMA 요청 블록, 제4 DMA 요청 블록, 제3 DMA 요청 블록 그리고 제 4 DMA 요청 블록의 순서로 부여된다.
한편, 도 3(a)은 도 2(a)에 의해 결정된 우선 순위에 의하여 직접 메모리 액세스를 수행하는 경우 대기 시간을 도시한 도면이며, 도 3(b)은 도 2(b)에 의해 결정된 우선 순위에 의해 직접 메모리 액세스를 수행하는 경우 대기 시간을 도시한 도면이다. 도 3(a) 및 도 3(b)에서, 대기 시간(Waiting Time: WT)이란 우선 순위에 의한 데이터 전송을 위해 각 DMA 요청 블록이 대기해야 하는 시간을 말한다.
도 3(a)을 참조하면, DMA 요청 신호의 도착 순서에 기초하여 부여된 우선 순위에 따라 데이터 전송을 하는 경우에 제2 DMA 요청 블록의 대기 시간 4, 제3 DMA 요청 블록의 대기시간 5, 제4 DMA 요청 블록의 대기 시간 8을 모두 가산하면, 총 대기시간은 17이다.
도 3(b)을 참조하면, 데이터 전송량에 기초하여 부여된 우선 순위에 따라 데이터 전송을 하는 경우에, 제4 DMA 요청 블록(130)의 대기 시간 1, 제3 DMA 요청 블록(130)의 대기시간 3, 그리고 제1 DMA 요청 블록의 대기시간 6을 모두 가산하면, 총 대기 시간은 10이다.
따라서, 각 DMA 요청 블록들의 총 데이터 전송량을 단순히 전송하는데 걸리는 서비스 시간은 10으로 동일하지만, 각 DMA 요청 블록들의 대기 시간을 고려하면 데이터 전송량에 기초한 동적인 방법이 대기 시간을 줄일 수 있다는 것을 알 수 있다.
이하, 우선 순위의 부여 및 변경 횟수를 계수하는 구체적인 과정을 설명하기로 한다.
예를 들어, 제1 DMA 요청 블록(120)으로부터 DMA 요청 신호가 먼저 도착하였고, 제1 DMA 요청 블록(120)의 데이터 전송량을 4라고 하면, 제1 DMA 요청 블록(120)의 (DMA 요청 신호의 도착 순서, 데이터 전송량, 변경 횟수, 우선 순위)는 (1, 4, 0, 1)이다. 이후, 도착된 제2 DMA 요청 블록(130)의 데이터 전송량이 1라고 하면, (DMA 요청 신호의 도착 순서, 데이터 전송량, 변경 횟수, 우선 순위)는 (2, 1, 0, 1)이며, 제2 DMA 요청 블록(130)에 의해 제1 DMA 요청 블록(120)의 (DMA 요청 신호의 도착 순서, 데이터 전송량, 변경 횟수, 우선 순위)는 (1, 4, 1, 2)로 된다. 즉, 데이터 전송량에 기초하여 우선 순위를 부여하는 경우에 제1 DMA 요청 블록(120)의 우선 순위는 1에서 2로 밀리게 되며, 이때 변경 횟수는 0에서 1로 된다.
마찬가지로, 제2 DMA 요청 블록(130) 이후에 도착된 제3 DMA 요청 블록의 데이터 전송량이 3이라고 하면, 제3 DMA 요청 블록의 (DMA 요청 신호의 도착 순서, 데이터 전송량, 변경 횟수, 우선 순위)는 (3, 3, 0, 2)이며, 제1 DMA 요청 블 록(120)과 제2 DMA 요청 블록(130)의 (DMA 요청 신호의 도착 순서, 데이터 전송량, 변경 횟수, 우선 순위)는 각각 (1, 4, 2, 3), (2, 1, 0, 1)으로 된다. 이상과 같은 DMA 요청 블록별 (DMA 요청 신호의 도착 순서, 데이터 전송량, 변경 횟수, 우선 순위)는 표 1의 형태로 제1 저장부(114)에 저장된다.
우선 순위 도착 순서 DMA 요청 블록 데이터 전송량 변경 횟수
3 1 1 4 2
1 2 2 1 0
2 3 3 3 0
이와 같이, 변경 횟수를 계수하는 이유는 데이터 전송량에 기초하여 우선 순위를 부여하는 경우에 발생하는 스타베이션(starvation)을 방지하기 위함이다. 여기서, 스타베이션이란 높은 우선 순위의 프로세스로 인해 낮은 우선 순위의 프로세스를 수행될 수 없는 상황을 의미하며, 본 발명의 경우와 같이 제1 DMA 요청블록의 우선 순위는 제2 및 제3 DMA 요청블록으로 인해 우선 순위가 뒤로 밀리게 되므로, 최악의 경우에는 제1 DMA 요청블록은 데이터 전송을 할 수 없는 상황이 발생될 수 있다. 따라서, 본 발명에서는 각 DMA 요청블록들의 변경 횟수를 계수(count)하고, 계수된 변경 횟수에 기초하여, 기존 우선 순위를 유지할 수 있도록 하여 데이터를 전송할 기회를 얻을 수 있도록 한다.
한편, 도 1의 비교부(113a)는 제1 저장부(114)에 저장된 각 DMA 요청 블록의 변경 횟수와 제2 저장부(113b)에 미리 저장된 소정의 임계 횟수를 비교하고, 비교 결과를 우선 순위 결정부(113c)로 전달한다.
우선 순위 결정부(113c)는 비교부(113a)에서 전달받은 비교 결과에 따라 기존 DMA 요청 블록들 및 신규 DMA 요청 블록의 우선 순위를 최종적으로 결정하고, 제1 저장부(114)에 저장한다.
제1 저장부(114)는 우선 순위 결정부(113c)에서 최종적으로 결정된 우선 순위를 표 2 또는 표 3과 같은 형태로 저장한다.
본 발명의 첫번째 실시예에 따르면, 우선 순위 결정부(113c)는 우선 순위를 변경한 기존의 DMA 요청 블록들 중 어느 하나의 변경 횟수가 소정의 임계 횟수 이상인 경우, 소정의 임계 횟수 이상인 기존의 DMA 요청 블록들을 기준으로 기존의 DMA 요청 블록들의 우선 순위는 기존 우선 순위로 유지하고, 신규 DMA 요청 블록의 우선 순위는 DMA 요청의 도착 순서에 기초하여 결정한다.
표 1과 관련하여, 소정의 임계 횟수는 2이며, 제3 DMA 요청 블록의 DMA 요청이 도착한 이후에, 데이터 전송량이 2인 제4 DMA 요청 블록의 DMA 요청이 도착하였다고 가정하자. 그러면, 첫번째 실시예에 따라 최종적으로 결정된 제1 DMA 요청 블록 내지 제4 DMA 요청 블록의 (DMA 요청 신호의 도착 순서, 데이터 전송량, 변경 횟수, 우선 순위)는 표 2와 같다.
즉, 신규의 DMA 요청 블록인 제4 DMA 요청 블록의 DMA 요청 신호가 들어온 경우에, 기존 DMA 요청 블록들 중 제1 DMA 요청 블록의 변경 횟수는 2가 되기 때문에, 신규의 제4 DMA 요청 블록의 우선순위는 DMA 요청 신호의 도착순서에 따라 4로 되며, 나머지 기존의 DMA 요청 블록들인 제1 내지 제3 DMA 요청 블록들의 우선순위는 그대로 유지된다.
우선 순위 도착 순서 DMA 요청 블록 데이터 전송량 변경 횟수
3 1 1 4 2
1 2 2 1 0
2 3 3 3 0
4 4 4 2 0
또한, 본 발명의 두번째 실시예에 따르면, 우선 순위 결정부(113c)는 우선 순위를 변경한 기존의 DMA 요청 블록들 중 어느 하나의 변경 횟수가 소정의 임계 횟수 이상인 경우, 기존의 DMA 요청 블록들 중 소정의 임계 횟수 이상인 DMA 요청블록의 우선 순위는 기존 우선 순위로 유지하고, 제1 DMA 요청 블록 및 기존 우선 순위로 유지된 DMA 요청블록을 제외한 나머지 제2 DMA 요청 블록들의 우선 순위는 데이터 전송량에 기초하여 결정한다.
표 1과 관련하여, 소정의 임계 횟수는 2이며, 제3 DMA 요청 블록의 DMA 요청이 도착한 이후에, 데이터 전송량이 2인 제4 DMA 요청 블록의 DMA 요청이 도착하였다고 가정하자. 그러면, 두번째 실시예에 따라 최종적으로 결정된 제1 DMA 요청 블록 내지 제4 DMA 요청 블록의 (DMA 요청 신호의 도착 순서, 데이터 전송량, 변경 횟수, 우선 순위)는 표 3과 같다.
즉, 신규의 DMA 요청 블록인 제4 DMA 요청 블록의 DMA 요청 신호가 들어온 경우에, 기존 DMA 요청 블록들 중 제1 DMA 요청 블록의 변경 횟수는 2가 되기 때문에, 변경 횟수가 2인 제1 DMA 요청 블록의 우선순위는 3으로 유지하되, 나머지 DMA 요청 블록들인 제2 내지 제4 DMA 요청 블록들은 데이터 전송량에 따라 우선순위를 결정한다.
우선 순위 도착 순서 DMA 요청 블록 데이터 전송량 변경 횟수
3 1 1 4 2
1 2 2 1 0
4 3 3 3 1
2 4 4 2 0
도 4는 본 발명에 따른 우선 순위를 결정하는 방법의 흐름도이다.
도 4를 참조하면, 단계 400에서는 우선 순위 전처리부(111)는 DMA 요청을 전송한 신규 DMA 요청 블록(120)에 대하여 기존의 DMA 요청 블록들과의 관계에서 데이터 전송량(Data Transfer Amount: DTA)에 기초하여 우선 순위를 부여한다.
DMA 요청 블록이 우선 순위 결정 장치로 DMA 요청을 하는 경우에는 데이터 전송량에 대한 정보를 함께 전송하며, DMA 요청 블록은 디지털 신호 프로세서(Digital Signal Processor: DSP), 오디오 프로세서(Audio Processor), 또는 비디오 프로세서(Video Processor) 등과 같이 프로그램 가능한 프로세서이다. 또한, 우선 순위는 데이터 전송량이 적은 DMA 요청 블록에 대해 높은 우선 순위가 부여된다.
단계 401에서 계수부(112)는 단계 400의 우선 순위 부여 과정에서 우선 순위가 변경된 기존 DMA 요청 블록들의 변경 횟수가 계수된다.
단계 402에서 비교부(113a)는 기존 DMA 요청 블록들 각각에 대해 변경 횟수와 소정의 임계 횟수를 비교한다. 소정의 임계 횟수는 임의로 변경 가능하다.
단계 403에서 단계 402에서의 비교 결과 기존의 DMA 요청 블록들 중 어느 하나 변경 횟수가 소정의 임계 횟수 이상이면, 본 발명에 일 실시예에 따른 우선 순위 결정부(113c)는 우선순위를 변경한 기존의 DMA 요청 블록들 중 어느 하나의 변경 횟수가 소정의 임계 횟수 이상인 경우, 기존의 DMA 요청 블록들의 우선 순위는 기존 우선 순위로 유지하고, 신규 DMA 요청 블록의 우선 순위는 DMA 요청의 도착 순서에 기초하여 결정한다.
본 발명에 다른 실시예에 따르면 우선 순위 결정부(113c)는 우선순위를 변경한 기존 DMA 요청 블록들 중 어느 하나의 변경 횟수가 소정의 임계 횟수 이상인 경우, 기존 제2 DMA 요청 블록들 중 소정의 임계 횟수 이상인 DMA 요청블록의 우선순위는 기존 우선 순위로 유지하고, 신규 DMA 요청 블록 및 나머지 DMA 요청 블록들의 우선 순위는 데이터 전송량에 기초하여 결정한다.
단계 404에서는 단계 402에서의 비교 결과 기존 DMA 요청 블록의 변경 횟수가 소정의 임계 횟수 미만이면, 데이터 전송량에 기초하여 제1 DMA 요청 블록 및 기존 DMA 요청 블록의 우선 순위를 결정한다. 위의 예를 들면, 소정의 임계 횟수를 4로 설정하였다면, 표 1의 우선 순위 목록이 작성된다.
이후, 결정된 우선 순위 목록에 따라 채널이 할당되고, 채널이 할당된 DMA 요청에 대한 데이터 전송이 개시된다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 레지스터, 캐시(cash), 롬(ROM), 램(RAM), 씨디-롬(CD-ROM), 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있으며, 또한 캐리어 웨이브 (예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이상 도면과 명세서에서 최적 실시예들이 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
이상에서 설명한 바와 같이, 본 발명에 의한 우선 순위 처리 방법 및 장치는, 데이터 전송량에 기초하여 제1 DMA 요청 블록의 DMA 요청에 의해 우선 순위를 변경한 기존 DMA 요청 블록의 변경 횟수를 계수하고, 계수된 변경 횟수가 소정의 임계 횟수 이상인 경우에는 기존의 우선 순위를 그대로 유지함으로써, 스타베이션(starvation)을 방지할 수 있다. 여기서, 스타베이션이란 높은 우선 순위의 처리로 인해 낮은 우선 순위의 처리를 할 수 없는 경우를 의미한다.
또한, 데이터 전송량에 기초하여 DMA 요청 블록들 간에 우선 순위를 동적으로 결정함으로써, 각 DMA 요청 블록들에 대한 전체적인 대기 시간을 줄일 수 있고, 그 결과 효율적인 데이터 전송을 할 수 있는 효과를 가진다.
또한, 데이터 전송에 의존성(dependency)이 있는 프로세싱의 대기 시간이 줄 어들기 때문에, 전체 시스템의 동작시간도 줄일 수 있다. 그리고, 적은 양의 데이터의 전송을 먼저 수행함으로써, 채널 점유 시간을 줄일 수 있기 때문에 채널 사용의 효율성도 높일 수 있다. 또한, 부가적으로, 소정의 임계 횟수를 임의로 변경할 수 있도록 함으로써 동작의 유동성이 확보될 수 있다.

Claims (17)

  1. (a) DMA 요청 신호를 전송하는 DMA 요청 블록들 각각에 대하여, 상기 DMA 요청 블록들이 전송하고자 하는 데이터 전송량에 및 상기 DMA 요청신호의 도착 순서에 기초하여 우선순위를 부여하는 단계;
    (b) 상기 우선 순위를 부여하는 과정에서 우선 순위가 변경된 DMA 요청 블록들 각각에 대한 변경 횟수를 계수하는 단계; 및
    (c) 신규 DMA 요청 블록으로부터 DMA 요청 신호가 전송되면, 상기 계수된 변경 횟수에 기초하여 상기 DMA 요청 블록들 각각의 우선 순위를 결정하는 단계를 포함하는 것을 특징으로 하는 우선 순위 결정 방법.
  2. 제1항에 있어서, 상기 (c) 단계는
    (c1) 상기 우선 순위가 변경된 DMA 요청 블록들 각각에 대하여, 상기 계수된 변경 횟수와 소정의 임계 횟수를 비교하는 단계; 및
    (c2) 상기 비교 결과에 따라, DMA 요청 신호의 도착 순서에 기초하여 상기 DMA 요청 블록들과 상기 신규 DMA 요청 블록의 우선 순위를 결정하는 단계를 포함하는 것을 특징으로 하는 우선 순위 결정 방법.
  3. 제2항에 있어서, 상기 (c2) 단계에서 상기 우선 순위가 변경된 DMA 요청 블록들 중 어느 하나의 변경 횟수가 상기 소정의 임계 횟수 이상인 경우,
    상기 DMA 요청 블록들의 우선 순위는 기존의 우선 순위로 유지하고, 상기 신규 DMA 요청 블록의 우선 순위는 상기 DMA 요청의 도착 순서에 기초하여 결정하는 단계를 포함하는 것을 특징으로 하는 우선 순위 결정 방법.
  4. 제1항에 있어서, 상기 (c) 단계는
    (c3) 상기 우선 순위가 변경된 DMA 요청 블록들 각각에 대하여, 상기 계수된 변경 횟수와 소정의 임계 횟수를 비교하는 단계; 및
    (c4) 상기 비교 결과에 따라, 상기 데이터 전송량에 기초하여 상기 DMA 요청 블록들과 상기 신규 DMA 요청 블록의 우선 순위를 결정하는 단계를 포함하는 것을 특징으로 하는 우선 순위 결정 방법.
  5. 제4항에 있어서, 상기 (c4) 단계에서 상기 우선 순위가 변경된 DMA 요청 블록들 중 어느 하나의 변경 횟수가 상기 소정의 임계 횟수 이상인 경우,
    상기 DMA 요청 블록들 중 상기 소정의 임계 횟수 이상인 DMA 요청블록의 우선 순위는 기존의 우선 순위로 유지하고,
    상기 신규 DMA 요청 블록 및 상기 기존의 우선 순위로 유지된 DMA 요청블록을 제외한 나머지 DMA 요청 블록들의 우선 순위는 데이터 전송량에 기초하여 결정하는 단계를 포함하는 것을 특징으로 하는 우선 순위 결정 방법.
  6. 제1항에 있어서, 상기 (a) 단계는
    상기 데이터 전송량이 적은 DMA 요청 블록에 대해 높은 우선 순위를 부여하는 것을 특징으로 하는 우선 순위 결정 방법.
  7. 제1항에 있어서, 상기 신규 DMA 요청 블록 및 상기 DMA 요청 블록들은
    데이터 연산이 가능한 프로세서들인 것을 특징으로 하는 우선 순위 결정 방법.
  8. 제1항에 있어서, 상기 소정의 임계 횟수는
    변경 가능한 것을 특징으로 하는 우선 순위 결정 방법.
  9. 제1항 내지 제8항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록된 컴퓨터로 독출 가능한 기록매체.
  10. DMA 요청 신호를 전송하는 DMA 요청 블록들 각각에 대하여, 상기 DMA 요청 블록들이 전송하고자 하는 데이터 전송량에 및 상기 DMA 요청신호의 도착 순서에 기초하여 우선순위를 부여하는 우선순위 전처리부;
    상기 우선 순위를 부여하는 과정에서 우선 순위가 변경된 DMA 요청 블록들 각각에 대한 변경 횟수를 계수하는 계수부; 및
    신규 DMA 요청 블록으로부터 DMA 요청 신호가 전송되면, 상기 계수된 변경 횟수에 기초하여 상기 DMA 요청 블록들 각각의 우선 순위를 결정하는 우선순위 결 정모듈을 포함하는 것을 특징으로 하는 우선 순위 결정 장치.
  11. 제10항에 있어서, 상기 우선순위 결정모듈은
    상기 우선 순위가 변경된 DMA 요청 블록들 각각에 대하여, 상기 계수된 변경 횟수와 소정의 임계 횟수를 비교하는 비교부; 및
    상기 비교 결과에 따라, DMA 요청 신호의 도착 순서에 기초하여 상기 DMA 요청 블록들과 상기 신규 DMA 요청 블록의 우선 순위를 결정하는 우선순위 결정부를 포함하는 것을 특징으로 하는 우선 순위 결정 장치.
  12. 제11항에 있어서, 상기 우선순위 결정부는
    상기 우선 순위가 변경된 DMA 요청 블록들 중 어느 하나의 변경 횟수가 상기 소정의 임계 횟수 이상인 경우,
    상기 DMA 요청 블록들의 우선 순위는 기존의 우선 순위로 유지하고, 상기 신규 DMA 요청 블록의 우선 순위는 상기 DMA 요청의 도착 순서에 기초하여 결정하는 단계를 포함하는 것을 특징으로 하는 우선 순위 결정 장치.
  13. 제10항에 있어서, 상기 우선순위 결정모듈은
    상기 우선 순위가 변경된 DMA 요청 블록들 각각에 대하여, 상기 계수된 변경 횟수와 소정의 임계 횟수를 비교하는 비교부; 및
    상기 비교 결과에 따라, 상기 데이터 전송량에 기초하여 상기 DMA 요청 블록 들과 상기 신규 DMA 요청 블록의 우선 순위를 결정하는 우선순위 결정부를 포함하는 것을 특징으로 하는 우선 순위 결정 장치.
  14. 제13항에 있어서, 상기 우선순위 결정부는
    상기 우선 순위가 변경된 DMA 요청 블록들 중 어느 하나의 변경 횟수가 상기 소정의 임계 횟수 이상인 경우,
    상기 DMA 요청 블록들 중 상기 소정의 임계 횟수 이상인 DMA 요청블록의 우선 순위는 기존의 우선 순위로 유지하고,
    상기 신규 DMA 요청 블록 및 상기 기존의 우선 순위로 유지된 DMA 요청블록을 제외한 나머지 DMA 요청 블록들의 우선 순위는 데이터 전송량에 기초하여 결정하는 단계를 포함하는 것을 특징으로 하는 우선 순위 결정 장치.
  15. 제10항에 있어서, 상기 우선순위 전처리부는
    상기 데이터 전송량이 적은 DMA 요청 블록에 대해 높은 우선 순위를 부여하는 것을 특징으로 하는 우선 순위 결정 방법.
  16. 제10항에 있어서, 상기 신규 DMA 요청 블록 및 상기 DMA 요청 블록들은
    데이터 연산이 가능한 프로세서들인 것을 특징으로 하는 우선 순위 결정 장치.
  17. 제10항에 있어서, 상기 소정의 임계 횟수는
    변경 가능한 것을 특징으로 하는 우선 순위 결정 장치.
KR1020070010210A 2007-01-31 2007-01-31 복수의 dma 요청 블록들을 가지는 직접 메모리 액세스장치의 우선 순위를 결정하는 방법 및 장치 KR100868766B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070010210A KR100868766B1 (ko) 2007-01-31 2007-01-31 복수의 dma 요청 블록들을 가지는 직접 메모리 액세스장치의 우선 순위를 결정하는 방법 및 장치
US11/896,453 US8065447B2 (en) 2007-01-31 2007-08-31 Method and apparatus for determining priorities in direct memory access device having multiple direct memory access request blocks

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070010210A KR100868766B1 (ko) 2007-01-31 2007-01-31 복수의 dma 요청 블록들을 가지는 직접 메모리 액세스장치의 우선 순위를 결정하는 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20080071840A true KR20080071840A (ko) 2008-08-05
KR100868766B1 KR100868766B1 (ko) 2008-11-17

Family

ID=39669219

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070010210A KR100868766B1 (ko) 2007-01-31 2007-01-31 복수의 dma 요청 블록들을 가지는 직접 메모리 액세스장치의 우선 순위를 결정하는 방법 및 장치

Country Status (2)

Country Link
US (1) US8065447B2 (ko)
KR (1) KR100868766B1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0722707D0 (en) * 2007-11-19 2007-12-27 St Microelectronics Res & Dev Cache memory
US8171187B2 (en) * 2008-07-25 2012-05-01 Freescale Semiconductor, Inc. System and method for arbitrating between memory access requests
JP5125890B2 (ja) * 2008-08-28 2013-01-23 富士通セミコンダクター株式会社 調停装置及び電子機器
JP5146284B2 (ja) * 2008-11-27 2013-02-20 株式会社リコー データ転送装置及びデータ転送方法
US9497710B2 (en) * 2013-11-25 2016-11-15 Qualcomm Incorporated Multipoint interface shortest pulse width priority resolution
US9436391B1 (en) * 2014-03-28 2016-09-06 Formation Data Systems, Inc. Efficient scalable I/O scheduling
US10585823B2 (en) * 2014-09-30 2020-03-10 EMC IP Holding Company LLC Leveling IO
DE102016203307A1 (de) * 2016-03-01 2017-09-07 Robert Bosch Gmbh Speicherdirektzugriffssteuereinrichtung für eine einen Arbeitsspeicher aufweisende Recheneinheit
DE102016206350A1 (de) * 2016-04-15 2017-10-19 Robert Bosch Gmbh Speicherdirektzugriffssteuereinrichtung
GB2563885B (en) * 2017-06-28 2019-10-23 Advanced Risc Mach Ltd Interrupting export of memory regions
US11017126B2 (en) * 2017-12-19 2021-05-25 Western Digital Technologies, Inc. Apparatus and method of detecting potential security violations of direct access non-volatile memory device

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5450551A (en) * 1993-05-28 1995-09-12 International Business Machines Corporation System direct memory access (DMA) support logic for PCI based computer system
JPH08137785A (ja) * 1994-11-10 1996-05-31 Canon Inc Dma制御装置
US6058459A (en) * 1996-08-26 2000-05-02 Stmicroelectronics, Inc. Video/audio decompression/compression device including an arbiter and method for accessing a shared memory
JPH1049479A (ja) 1996-08-01 1998-02-20 Matsushita Electric Ind Co Ltd マスタデバイス
US6006303A (en) * 1997-08-28 1999-12-21 Oki Electric Industry Co., Inc. Priority encoding and decoding for memory architecture
JPH1185669A (ja) 1997-09-02 1999-03-30 Matsushita Electric Ind Co Ltd 転送制御装置
US6615291B1 (en) * 1999-03-08 2003-09-02 Minolta Co., Ltd. DMA controller with dynamically variable access priority
KR100451722B1 (ko) 2000-02-25 2004-10-08 엘지전자 주식회사 직접 메모리 액세스 제어 장치
JP2003141057A (ja) * 2001-11-06 2003-05-16 Mitsubishi Electric Corp Dma転送制御回路
US7080177B2 (en) * 2002-03-01 2006-07-18 Broadcom Corporation System and method for arbitrating clients in a hierarchical real-time DRAM system
US6883980B2 (en) * 2002-03-29 2005-04-26 Hewlett-Packard Development Company, L.P. System and method for saving power using priority printing
KR20030093766A (ko) * 2002-06-05 2003-12-11 삼성전자주식회사 데이터 전송 방법
KR20040010957A (ko) 2002-07-25 2004-02-05 엘지전자 주식회사 메모리 중재기
JP2005004563A (ja) 2003-06-13 2005-01-06 Canon Inc Dma転送制御装置
JP2005092780A (ja) * 2003-09-19 2005-04-07 Matsushita Electric Ind Co Ltd リアルタイムプロセッサシステム及び制御方法
US7213084B2 (en) * 2003-10-10 2007-05-01 International Business Machines Corporation System and method for allocating memory allocation bandwidth by assigning fixed priority of access to DMA machines and programmable priority to processing unit
US7299324B2 (en) * 2003-11-05 2007-11-20 Denali Software, Inc. Reactive placement controller for interfacing with banked memory storage
JP4480427B2 (ja) * 2004-03-12 2010-06-16 パナソニック株式会社 リソース管理装置
US20060020935A1 (en) * 2004-07-02 2006-01-26 Tran Sang V Scheduler for dynamic code reconfiguration
JP4552540B2 (ja) * 2004-07-09 2010-09-29 ソニー株式会社 コンテンツ記録装置、コンテンツ再生装置、コンテンツ記録方法、コンテンツ再生方法及びプログラム
JP2007018280A (ja) * 2005-07-07 2007-01-25 Oki Electric Ind Co Ltd バスシステムの制御方法及び制御回路
JP2007334641A (ja) * 2006-06-15 2007-12-27 Sony Corp 情報処理装置および方法、並びにプログラム

Also Published As

Publication number Publication date
KR100868766B1 (ko) 2008-11-17
US8065447B2 (en) 2011-11-22
US20080183913A1 (en) 2008-07-31

Similar Documents

Publication Publication Date Title
KR100868766B1 (ko) 복수의 dma 요청 블록들을 가지는 직접 메모리 액세스장치의 우선 순위를 결정하는 방법 및 장치
US8051212B2 (en) Network interface adapter with shared data send resources
US8180941B2 (en) Mechanisms for priority control in resource allocation
US9032104B2 (en) Method and system for performing DMA in a multi-core system-on-chip using deadline-based scheduling
US20090086737A1 (en) System-on-chip communication manager
US20050265238A1 (en) Flow control method and apparatus for single packet arrival on a bidirectional ring interconnect
JP2006202244A (ja) ソースデバイスに対するリクエストをスケジューリングする装置及び方法
US7373467B2 (en) Storage device flow control
US8725873B1 (en) Multi-server round robin arbiter
US7617344B2 (en) Methods and apparatus for controlling access to resources in an information processing system
US10360267B2 (en) Query plan and operation-aware communication buffer management
US20170139862A1 (en) Techniques for handling queued interrupts in a data processing system based on a saturation value
CN114500401B (zh) 一种应对突发流量的资源调度方法和系统
US8140728B1 (en) Data packet arbitration system
KR20140096587A (ko) 기능 유닛들 간의 기능 로직 공유 장치, 방법 및 재구성 가능 프로세서
CN115408153B (zh) 多线程处理器的指令分发方法、装置和存储介质
KR20090128851A (ko) 버스 중재 방법 및 장치
US9977751B1 (en) Method and apparatus for arbitrating access to shared resources
US9280502B1 (en) Minimal-cost pseudo-round-robin arbiter
KR100215572B1 (ko) 인터페이스 버퍼 제어 방법 및 장치
US20200257471A1 (en) Control apparatus and control method
CN115114043A (zh) 众核系统中请求消息的处理方法及装置
JP2001236238A (ja) 割込処理方法
CN115640255A (zh) 片上系统和用于操作该片上系统的方法
KR20190021630A (ko) 스위칭을 위한 스케줄링 방법 및 스케줄러

Legal Events

Date Code Title Description
A201 Request for examination
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: 20121016

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20131022

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20141022

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20151020

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20161018

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20171019

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20181024

Year of fee payment: 11