KR100484304B1 - 가중 파라메타를 이용한 직접 메모리 접근 제어기의 버스마스터 우선순위 결정방법 - Google Patents

가중 파라메타를 이용한 직접 메모리 접근 제어기의 버스마스터 우선순위 결정방법 Download PDF

Info

Publication number
KR100484304B1
KR100484304B1 KR10-2002-0070568A KR20020070568A KR100484304B1 KR 100484304 B1 KR100484304 B1 KR 100484304B1 KR 20020070568 A KR20020070568 A KR 20020070568A KR 100484304 B1 KR100484304 B1 KR 100484304B1
Authority
KR
South Korea
Prior art keywords
module
data input
channel
output
channels
Prior art date
Application number
KR10-2002-0070568A
Other languages
English (en)
Other versions
KR20040042321A (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 KR10-2002-0070568A priority Critical patent/KR100484304B1/ko
Publication of KR20040042321A publication Critical patent/KR20040042321A/ko
Application granted granted Critical
Publication of KR100484304B1 publication Critical patent/KR100484304B1/ko

Links

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/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/368Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
    • G06F13/374Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a self-select method with individual priority code comparator
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Abstract

본 발명은 가중 파라메타를 이용한 직접 메모리 접근 제어기의 버스 마스터 우선 순위 결정방법에 관한 것이다. 본 발명은 직접 메모리 접근 제어기가 복수의 모듈로부터의 데이터 입출력 요구에 응답하여 버스 마스터 우선순위를 결정하는 방법에 있어서, 각 모듈의 시간적 제약 정도를 각 모듈간의 상대적인 값으로 수치화하여 상기 각 모듈에 가중 파라메타를 부여하는 제1단계; 상기 각 모듈의 채널을 통해 데이터 입출력 요구가 있을 경우 데이터 입출력을 요구한 채널이 2개 채널 이상인지를 판단하는 제2단계; 2개 채널 이상일 경우, 상기 데이터 입출력 요구가 있는 각 모듈의 가중 파라메타를 서로 비교하여 상기 가중 파라메타의 크기에 따라 최우선 채널을 결정하고, 이 결정된 최우선 채널을 통해 데이터 입출력을 수행하며, 이후에 다른 채널의 가중 파라메타를 다시 조정하는 제3단계; 상기 가중 파라메타가 다시 조정된 다른 채널 중 데이터 입출력을 수행해야 하는 채널이 2개 이상인지를 판단하여 2개 이상인 경우에는 상기 제3단계를 수행하는 제4단계; 및 상기 제2단계 또는 제4단계에서 데이터 입출력을 수행할 채널수가 1개일 경우에는 해당 채널을 통해 데이터 입출력을 수행하며, 이후에 다른 채널의 가중 파라메타를 다시 조정하는 제5단계를 구비한다.

Description

가중 파라메타를 이용한 직접 메모리 접근 제어기의 버스 마스터 우선순위 결정방법{METHOD FOR DETERMINING BUS MASTER PRIORITY IN DIRECT MEMORY ACCESS CONTROLLER}
본 발명은 가중 파라메타를 이용한 직접 메모리 접근 제어기의 버스 마스터 우선순위 결정방법에 관한 것으로, 특히 라운드 로빈 방법을 채택하여 직접 메모리 접근 제어기에서 각 기능 모듈의 시간적 제약 정도를 가중 파라메타로 적용하여, 이 가중 파라메타를 이용하여 데이터 입출력을 끝낸 모듈의 우순순위 값을 재조정하도록 함으로써, 각 모듈별 데이터 입출력간의 마찰을 줄일 수 있고, 우선 순위를 보다 효율적으로 결정할 수 있는 직접 메모리 접근 제어기의 버스 마스터 우선순위 결정방법에 관한 것이다.
일반적으로, 다양한 데이터 입출력 경로를 갖는 시스템에서 직접 메모리 접근 제어기를 사용하는 이유는 빠른 시간 안에 각 기능 모듈의 시간적 제약에 위반됨이 없이 데이터를 입출력하기 위한 것으로, 이러한 기능적 목적을 위해 우선 순위 제어기는 반드시 필요한 방법이다.
최근, 시스템 구현의 방법으로는 하나의 칩 안에 다양한 기능의 시스템을 집적하는 SoC(System On a Chip) 방법이 널리 쓰이고 있다. 이러한 SoC 는 구현된 칩 상에 프로세서와 기능 모듈을 모두 가지고 있어, 특정 응용에 적합하다. 이러한 SoC 의 프로세서는 다양한 기능 모듈과의 데이터 입출력을 제어해야 하며, 각 기능 모듈의 시간 특성을 파악하여, 정해진 시간 안에 올바른 데이터를 입출력 시켜주어야 한다. 이러한 입출력 제어를 프로세서에서 전담해야 하는 경우, 프로세서의 부담이 커져 효과적인 제어를 할 수 없게 된다.
특히, 시스템이 점차 고집적화 되면서, 다양한 경로의 정보 입출력 시스템이 하나의 시스템 상에서 구현되어지고 있다. 이러한 다양한 입출력 경로의 제어를 프로세서에서 전담하는 경우, 프로세서의 부담이 커져 효과적인 제어가 이루어지지 않는다. 또한 일반적인 프로세서의 경우 정보의 입출력을 위해 몇몇의 명령을 사용하게 되어 실질적인 정보의 입출력을 위해서는 몇 주기의 시간이 소모된다. 직접 메모리 접근 제어기는 이러한 프로세서의 부담을 덜어주고, 단 주기로 정보의 입출력을 가능하게 하여, 효과적인 시스템 구현을 위해 반드시 필요한 모듈이다.
이러한 직접 메모리 접근 제어기는 메모리와 기능 모듈간, 메모리와 메모리간, 또는 서로 다른 기능 모듈간의 데이터 입출력을 빠른 시간 안에 처리할 수 있도록 설계된 모듈과 다양한 입출력 기능을 갖는 시스템에서 프로세서의 부담을 덜어주고, 또한 보다 효과적인 데이터 입출력을 가능하게 해 준다.
상기 직접 메모리 접근 제어기를 구현함에 있어, 가장 중요한 부분이 우선순위 결정방법이다. 서로 다른 n 개의 입출력 모듈이 데이터를 전송하려 할 때, 과연 어느 모듈부터 어떤 기준에 입각하여 전송 순서를 결정하는 방법을 우선순위 결정방법이라 한다. 이러한 우선순위 결정방법은 각 기능 모듈의 시간적 특성과 전송 데이터의 크기 등을 고려하여 결정되어야 한다.
그리고, 기존에 제안된 우선순위 결정방법으로는 고정 우선순위 결정방법과 라우드 로빈(Round-Robin) 방법 등이 있는데, 먼저, 고정 우선순위 결정방법에 대해서 설명하면, 고정 우선순위 결정방법에서, n 개의 기능 모듈의 우선 순위를 시스템 초기화 시 결정지어 놓는 방법으로, 한 번 결정된 순서는 변화하지 않는다. 예를 들어, CH1 > CH2 > CH3 의 순서로 우선 순위를 결정하면, CH1 과 CH2의 데이터 입출력 요구가 직접 메모리 접근 제어기에 들어올 때, 무조건 CH1 의 데이터 입출력을 선행한 후 CH2의 데이터 입출력을 수행하는 방법이다.
이러한 고정 우선순위 결정방법은 구현이 수월하지만, 데이터 처리 시간에 여유가 있는 CH1 과 시간적 제약이 있는 CH2가 동시에 데이터 입출력 요구를 하였을 때, CH1을 먼저 처리한 후 CH2를 처리하기 때문에, 효과적으로 입출력을 제어하지 못하는 경우가 발생할 수 있다는 단점이 있다.
다음, 라운드 로빈 우선 순위 제어 방법에 대해서 설명하면, 라운드 로빈 우선 순위 제어 방법에서는, 시스템 초기화 시에 우선 순위를 결정하는 것은 고정 우선순위 결정방법과 같지만, 한번 요구를 해서 데이터 입출력 기능을 수행한 모듈은 우선 순위가 최하위로 떨어지게 된다.
예를 들어, CH1 > CH2 > CH3 의 순서로 우선 순위가 초기화 시에 결정되었다고 하고, CH1의 입출력 요구를 받아들여 데이터 입출력을 수행한 경우, CH1 의 우선 순위는 최하위가 되어 CH2 > CH3 > CH1로 우선순위가 뒤바뀌게 된다. 이 상태에서 다시 CH3의 데이터 입출력 요구가 발생하여 처리하게 되면, 운선 순위는 CH1 > CH2 > CH3의 순서로 수행된 CH. 보다 우선 순위가 높은 CH. 도 그 우선 순위가 하위로 떨어지게 된다는 단점이 있다.
이러한 방법은 일단 데이터의 입출력을 수행한 모듈은 다음 데이터 입출력까지 어느 정도 시간적 여유가 있기 때문에, 다른 모듈의 우선 순위를 높여 주는 것이 효과적이라는 것에 바탕을 두고 제안된 방법이다.
그리고, 대한민국 공개특허공보 제1999-059296호에는 인터럽트 우선 순위 제어 시스템이 개시되어 있으며, 이 제어시스템은 도 1에 도시된 바와 같이, PLD(Programmable Logic Device)를 통해서 각 자원(Resource)들의 인터럽트를 입력받아 PLD 내부 로직을 이용해 우선순위를 임의대로 조절 가능하게 하는 인터럽트 우선순위 제어 시스템 관한 것으로, 인터럽트 우선순위를 조절하는데 PLD에 의해 인터럽트를 논리 연산함으로 컴퓨터 사용자가 임의대로 인터럽트의 조절이 가능하고, PLD칩 하나로 인코딩하여 불필요한 점퍼 사용을 제한하고, 보드사이즈의 축소로 비용을 절감시키므로 경제성을 향상시키게 된 것이다.
그러나, 이와 같이 종래에 우선 순위를 제어하는 방법에서는 사용자에 의해 인터럽트의 조절은 가능하지만, 각 모듈별 데이터 입출력간의 마찰을 줄일 수 없고, 이로 인해 우선 순위를 보다 효율적으로 결정할 수 없으며, 따라서, 각 모듈의 시간적 제약을 최소한으로 줄일 수 없다는 문제점이 있다.
본 발명은 상기한 문제점을 해결하기 위해 안출한 것으로, 본 발명의 목적은 라운드 로빈 방법을 채택하여 각 기능 모듈의 시간적 제약 정도를 가중 파라메타로 적용하여, 이 가중 파라메타를 이용하여 데이터 입출력을 끝낸 모듈의 우순 순위 값을 재조정하도록 하는 직접 메모리 접근 제어기의 버스 마스터 우선순위 결정방법을 제공하는데 있다.
또한 본 발명의 다른 목적은 각 모듈별 데이터 입출력간의 마찰을 줄일 수 있고, 우선 순위를 보다 효율적으로 결정할 수 있으며, 이에 따라, 각 모듈의 시간적 제약을 최소한으로 줄일 수 있도록 하고, 여러 경로의 정보 입출력 요구가 왔을 때, 보다 효과적으로 우선 순위를 결정할 수 있는 직접 메모리 접근 제어기의 버스 마스터 우선순위 결정방법을 제공하는데 있다.
상기한 본 발명의 목적을 달성하기 위한 기술적인 수단으로서, 본 발명의 제1특징은 직접 메모리 접근 제어기가 복수의 모듈로부터의 데이터 입출력 요구에 응답하여 버스 마스터 우선순위를 결정하는 방법에 있어서, 각 모듈의 시간적 제약 정도를 각 모듈간의 상대적인 값으로 수치화하여 상기 각 모듈에 가중 파라메타를 부여하는 제1단계; 상기 각 모듈의 채널을 통해 데이터 입출력 요구가 있을 경우 데이터 입출력을 요구한 채널이 2개 채널 이상인지를 판단하는 제2단계; 2개 채널 이상일 경우, 상기 데이터 입출력 요구가 있는 각 모듈의 가중 파라메타를 서로 비교하여 상기 가중 파라메타의 크기에 따라 최우선 채널을 결정하고, 이 결정된 최우선 채널을 통해 데이터 입출력을 수행하며, 이후에 다른 채널의 가중 파라메타를 다시 조정하는 제3단계; 상기 가중 파라메타가 다시 조정된 다른 채널 중 데이터 입출력을 수행해야 하는 채널이 2개 이상인지를 판단하여 2개 이상인 경우에는 상기 제3단계를 수행하는 제4단계; 및 상기 제2단계 또는 제4단계에서 데이터 입출력을 수행할 채널수가 1개일 경우에는 해당 채널을 통해 데이터 입출력을 수행하며, 이후에 다른 채널의 가중 파라메타를 다시 조정하는 제5단계; 를 구비함을 특징으로 하는 우선순위 결정방법을 제공하는 것이다.
또한, 상기한 본 발명의 목적을 달성하기 위한 다른 기술적인 수단으로서, 본 발명의 제2 특징은 상기 본 발명의 제1 특징에 기재된 각 단계를 수행하는 프로그램이 기록된 컴퓨터 판독가능한 기록매체를 제공하는 것이다.
이하, 본 발명에 따른 우선순위 결정방법을 수행하기 위한 직접 메모리 접근 제어기에 대하여 첨부도면을 참조하여 그 구성 및 작용을 상세하게 설명한다.
도 2는 본 발명을 수행하기 위한 직접 메모리 접근 제어기의 구성도로서, 도 2를 참조하면, 본 발명을 수행하기 위한 직접 메모리 접근 제어기는 가중 파라메타 등의 데이터 입력을 위한 데이터 조작부(110)와, 우선순위 결정 및 데이터 입출력을 제어하는 제어부(120)와, 상기 제어부에서 필요한 펌웨어와, 제어에 필요한 각 모듈의 시간적 제한 정도에 해당하는 가중 파라메타를 채널별로 포함하는 가중 파라메타 테이블을 저장하는 메모리(130)와, 채널을 통한 데이터 입출력 요구가 있는지, 있는 경우에 몇 개의 채널에서 요구가 있는지를 판단하는 입출력 요구 판단부(140)와, 상기 입출력 요구 판단부(140)에 의해 판단된 데이터 입출력 요구 채널중 상기 메모리에 저장된 가중 파라메타를 참조하여 최우선 채널을 결정하는 최우선 채널 결정부(150)와, 상기 제어부의 제어에 따라 상기 최우선 채널 결정부(150)에 의해 결정된 최우선 채널을 통해 데이타 입출력을 수행하는 데이터 입출력 처리부(160)와, 상기 제어부의 제어에 따라, 데이터 입출력 수행 후에 다른 채널의 파라메타를 조정하는 가중 파라메타 조정부(170)와, 각 모듈에 연결된 복수의 채널을 포함하는 채널부(180)를 포함한다.
본 발명에서 제시하는 바는 이러한 직접 메모리 접근 제어기에서 여러 경로의 정보 입출력 요구가 왔을 때, 보다 효과적으로 우선 순위를 결정하는 방법으로, 하기에 이에 대해서 설명된다.
도 3은 본 발명에 따른 직접 메모리 접근 제어기의 우선순위 결정방법을 보이는 흐름도이고, 도 4는 본 발명에 따른 가중 파라메터 조정 테이블 예시도이며, 도 5는 본 발명에 따른 우선순위 결정방법 설명도이다.
이와 같이 구성된 본 발명의 바람직한 실시 예에 대한 동작을 첨부도면에 의거하여 하기에 상세히 설명한다.
도 2 내지 도 5를 참조하여 본 발명에 따른 직접 메모리 접근 제어기의 버스 마스터 우선순위 결정방법을 설명한다. 먼저, 도 3을 참조하면, 제1 단계(S110)에서는 도 2의 데이터 조작부(110)를 통해서 각 모듈의 시간적 제약 정도를 각 모듈간의 상대적인 값으로 수치화하고 상기 수치에 해당하는 가중 파라메타를 각 해당 모듈에 부여하여 도 2의 제어부(120)의 제어에 따라 메모리(130)에 저장하여 가중 파라메타 테이블을 설정하는데, 이후, 본 발명의 시스템이 동작을 시작하면, 직접 메모리 접근 제어기의 최초 우선 순위를 결정하는데, 이러한 가중 파라메타를 부여하는 방법에 대해 설명하면 다음과 같다.
상기 제1 단계(S110)에서의 가중 파라메타는 각 모듈의 시간적 제약 정도를 각 모듈간의 상대적인 값으로 수치화 된 것으로서, 하나의 구현 예를 설명하면, 각 모듈의 시간적 제약 정도를 각 모듈간의 상대적인 값으로 수치화 된 것으로, 임의의 모듈을 기준 모듈로 설정하여 이 기준 모듈에 기준 가중 파라메타를 부여하고, 이 기준 모듈의 시간적 제약에 대해 다른 모듈의 시간적인 제약 정도를 상대적인 수치인 가중 파라메타로 설정될 수 있다.
또한, 다른 하나의 구현 예를 설명하면, 각 모듈의 시간적 제약 정도를 각 모듈간의 상대적인 값으로 수치화 된 것으로, 시간적 제약 정도가 가장 낮은 모듈을 기준 모듈로 설정하여 이 기준 모듈에 기준 가중 파라메타를 부여하고, 이 기준 모듈의 시간적 제약에 대해 다른 모듈의 시간적인 제약 정도를 상대적인 수치인 가중 파라메타로 설정될 수 있다.
상기 가중 파라메터를 결정하는 과정에 대해서 구체적인 예를 통해 설명하면, 우선, 데이터 입출력을 요구할 수 있는 채널(CH)을 각각 CH1, CH2, CH3이라 하고, 각 채널의 시간적 제약 조건이 CH1은 20 msec에 한번씩은 동작해야 한다고 하고, CH2는 50 msec, CH3은 70 msec에 한번씩은 동작해야 한다고 할 때, 각 채널의 시간적 제약 조건으로부터 최소의 시간적 제약조건인 CH1의 20msec을 기준 채널로 삼아, 다른 채널의 제약조건을 파라메터화 하면, 도 3에 도시한 파라메타 조정 테이블에서 보인 바와 같이 초기 우선순위가 결정될 수 있다.
그 다음, 제2 단계(S120,S130)에서는 도 2의 입출력 요구 판단부(140)가 각 모듈의 채널을 통해 데이터 입출력 요구가 있을 때, 데이타 입출력을 요구한 채널이 1개 채널인지를 판단하는데, 이 때 2개 이상의 채널일 경우 우선 순위를 정하는 방법은 가장 시간적 제약이 강한 채널 순으로 정할 수 있고, 우선 순위 결정 모듈이 동작하는 경우는, 실질적으로 데이터 입출력 요구가 발생했을 때이므로, 임의의 채널로부터 데이터 입출력 요구가 발생했는지를 점검한다. 또한, 임의의 채널로부터 데이터 입출력 요구가 발생하면, 요구를 발생시킨 채널이 둘 이상인지를 확인한다.
그 다음, 제3 단계(S140-S170)에서는 2개 채널 이상일 경우, 도 2의 최우선 채널 결정부(150)가 상기 데이타 입출력 요구가 있는 각 모듈의 가중 파라메타를 서로 비교하여 상기 가중 파라메타의 크기에 따라 최우선 채널을 결정하고, 이 결정된 최우선 채널을 통해 도 2의 데이터 입출력 처리부(160)가 데이터 입력출력을 수행하며, 이후에 도 2의 가중 파라메타 조정부(170)가 다른 채널의 가중 파라메타를 다시 조정한다. 다시 설명해서, 임의의 둘 이상의 채널에서 동시에 데이터 입출력 요구가 발생할 경우, 현재 결정되어 있는 우선 순위에 입각하여 가장 우선 순위의 채널의 데이터 입출력을 수행하고, 선택되지 않은 채널들의 가중치를 재조정하여, 선택된 채널의 데이터 입출력이 종료하였을 때 데이터 입출력을 하게 될 채널을 선택한다.
상기 제3 단계(S140-S170)에서, 최우선 채널을 결정하는 방법중의 하나는 가중 파라메터중 가장 작은 값을 갖는 채널을 최우선 채널로 결정하는 것이다.
그리고, 상기 제3 단계(S140-S170)에서, 가중 파라메타를 조정하는 방법중의 하나에 대해서 설명하면, 최우선 채널로 결정된 채널을 통해 데이터 입출력 수행 후에는, 최우선 채널이외의 채널중 기준 채널을 제외한 다른 채널의 파라메타를 조정하는데, 이 다른 채널의 파라메타는 현재의 파라메타에서 기준 파라메타를 빼어서 다른 채널의 파라메타를 다시 조정할 수 있다.
다시 설명하면, 우선 순위를 획득하는 채널은 파라메터의 값이 가장 작은 채널로 하며, 임의의 채널이 선정되어 그 채널이 데이터 입출력을 수행하면, 그 채널의 파라메터 값은 초기값으로 환원되고, 다른 채널들은 우선 순위 획득 채널의 파라메터 값만큼 현재의 값에서 그 값을 감소시킨다. 이때, 다른 채널의 가중 파라메터 조정시, 현재 파라메타에서 기준 파라메타를 뺀 결과 음수이면, 감소시키지 않고 현재의 값을 유지시킨다.
그 다음, 제4 단계(S180)에서는 데이터 입출력을 수행해야 하는 채널이 2개 이상인지를 판단하여 2개 이상인 경우에는 상기 제3 단계(S140-S170)로 진행하여 상기 제3 단계(S140-S170)를 반복적으로 수행하여 상기 데이터 입출력이 요구에 응답하여 데이터 입출력이 수행된다.
전술한 바와 같이 복수의 데이터 입출력 요구시에 상기한 반복적인 처리과정에 대해서 도 5를 참조하여 설명하면, 시스템이 초기화되었을 때, 우선 순위는 파라메터의 크기순으로 하면 "CH1 > CH2 > CH3"이 되고, 만약 데이터 입출력 요구가 "CH1, CH1과 CH2, CH3"의 순서로 발생한다고 가정하면, 도 4의 파라메터를 참고로 우선 순위는 도 5와 같이 조정되어진다.
도 5를 참조하여 데이터 입출력 요구가 "CH1, CH1 및 CH2, CH3"의 순서로 발생되는 경우에 대해서 설명하면, 먼저, CH1을 통한 데이터 입출력 요구가 있는 경우에는 CH1을 선택하여 데이터 입출력을 수행하고, 이후 CH2 및 CH3 의 가중 파라메타를 조정하는데, 이때, 도 4에 도시한 상기 CH2 및 CH3의 가중 파라메타 "2.5" 및 "3.5"에서 "1"을 빼어서 상기 CH2 및 CH3의 가중 파라메터를 조정한다. 그 다음, CH1 및 CH2를 통해서 데이터 입출력 요구가 있는 경우에는, 상기 CH1 및 CH2의 가중 파라메타가 각각 "1"과 "1.5"이므로 가중 파라메타가 낮은 CH가 선택된다. 이후, CH2 및 CH3이 순서적으로 선택되어 지는 것을 알 수 있다.
그 다음, 제5 단계(S190,S200)에서는 상기 제2 단계(S120,S130) 또는 제4 단계(S180)에서 데이터 입출력을 수행할 채널수가 1개일 경우에는 해당 채널을 통해 데이터 입력출력을 수행하며, 이후에 다른 채널의 가중 파라메타를 다시 조정하는데, 이 가중 파라메타의 조정은 상기 제3 단계(S140-S170)에서의 가중 파라메터 조정과 동일한 방법으로 이루어진다.
즉, 단일 채널로부터 입출력 요구가 발생한 경우, 해당 채널을 우선 순위 획득 채널로 결정하여 데이터의 입출력을 수행하게 되며, 한 채널의 우선 순위를 획득하여 데이터 전송을 할 때, 다른 채널들의 파라메터 값들은 가중치에 따라 재조정된다.
상술한 바와 같은 본 발명에 따르면, 라운드 로빈 방법을 채택하여 각 기능 모듈의 시간적 제약 정도를 가중치 파라메타로 적용하여, 이 가중 파라메타를 이용하여 데이터 입출력을 끝낸 모듈의 우순 순위 값을 재조정하도록 함으로서, 각 모듈별 데이터 입출력간의 마찰을 줄일 수 있고, 우선 순위를 보다 효율적으로 결정할 수 있으며, 이에 따라, 각 모듈의 시간적 제약을 최소한으로 줄일 수 있도록 하고, 여러 경로의 정보 입출력 요구가 왔을 때, 보다 효과적으로 우선 순위를 결정할 수 있는 효과가 있다.
이상의 설명은 본 발명의 구체적인 실시 예에 대한 설명에 불과하고, 본 발명은 이러한 구체적인 실시 예에 한정되지 않으며, 또한, 본 발명에 대한 상술한 구체적인 실시 예로부터 그 구성의 다양한 변경 및 개조가 가능하다는 것을 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 쉽게 알 수 있다.
도 1은 종래의 인터럽트 우선 순위 제어시스템의 구성도이다.
도 2는 본 발명을 수행하기 위한 직접 메모리 접근 제어기의 구성도이다.
도 3은 본 발명에 따른 직접 메모리 접근 제어기의 우선순위 결정방법을 보이는 흐름도이다.
도 4는 본 발명에 따른 가중 파라메터 조정 테이블 예시도이다.
도 5는 본 발명에 따른 우선순위 결정방법 설명도이다.
* 도면의 주요부분에 대한 부호의 설명 *
100 : DMA 제어기 110 : 데이터 조작부
120 : 제어부 130 : 메모리
140 : 입출력 요구 판단부 150 : 최우선 채널 결정부
160 : 데이터 입출력 처리부 170 : 가중 파라메타 조정부
180 : 채널부

Claims (8)

  1. 직접 메모리 접근 제어기가 복수의 모듈로부터의 데이터 입출력 요구에 응답하여 버스 마스터 우선순위를 결정하는 방법에 있어서,
    각 모듈의 시간적 제약 정도를 각 모듈간의 상대적인 값으로 수치화하여 상기 각 모듈에 가중 파라메타를 부여하는 제1단계;
    상기 각 모듈의 채널을 통해 데이터 입출력 요구가 있을 경우 데이터 입출력을 요구한 채널이 2개 채널 이상인지를 판단하는 제2단계;
    2개 채널 이상일 경우, 상기 데이터 입출력 요구가 있는 각 모듈의 가중 파라메타를 서로 비교하여 상기 가중 파라메타의 크기에 따라 최우선 채널을 결정하고, 이 결정된 최우선 채널을 통해 데이터 입출력을 수행하며, 이후에 다른 채널의 가중 파라메타를 다시 조정하는 제3단계;
    상기 가중 파라메타가 다시 조정된 다른 채널 중 데이터 입출력을 수행해야 하는 채널이 2개 이상인지를 판단하여 2개 이상인 경우에는 상기 제3단계를 수행하는 제4단계; 및
    상기 제2단계 또는 제4단계에서 데이터 입출력을 수행할 채널수가 1개일 경우에는 해당 채널을 통해 데이터 입출력을 수행하며, 이후에 다른 채널의 가중 파라메타를 다시 조정하는 제5단계; 를 구비함을 특징으로 하는 직접 메모리 접근 제어기의 버스 마스터 우선순위 결정방법.
  2. 삭제
  3. 제1항에 있어서, 상기 제1 단계의 가중 파라메타는
    각 모듈의 시간적 제약 정도를 각 모듈간의 상대적인 값으로 수치화 된 것으로, 임의의 모듈을 기준 모듈로 설정하여 이 기준 모듈에 기준 가중 파라메타를 부여하고,
    이 기준 모듈의 시간적 제약에 대해 다른 모듈의 시간적인 제약 정도를 상대적인 수치인 가중 파라메타로 설정된 것을 특징으로 하는 직접 메모리 접근 제어기의버스 마스터 우선순위 결정방법.
  4. 제1항에 있어서, 상기 제1 단계의 가중 파라메타는
    각 모듈의 시간적 제약 정도를 각 모듈간의 상대적인 값으로 수치화 된 것으로, 시간적 제약 정도가 가장 낮은 모듈을 기준 모듈로 설정하여 이 기준 모듈에 기준 가중 파라메타를 부여하고,
    이 기준 모듈의 시간적 제약에 대해 다른 모듈의 시간적인 제약 정도를 상대적인 수치인 가중 파라메타로 설정된 것을 특징으로 하는 직접 메모리 접근 제어기의 버스 마스터 우선순위 결정방법.
  5. 제1항에 있어서, 상기 제3 단계는
    가중 파라메터중 가장 작은 값을 최우선 채널로 결정하는 것을 특징으로 하는 직접 메모리 접근 제어기의 버스 마스터 우선순위 결정방법.
  6. 제1항에 있어서, 상기 제3 단계는
    최우선 채널로 결정된 채널을 통해 데이터 입출력 수행 후에는, 최우선 채널이외의 다른 채널중 기준 채널을 제외한 다른 채널의 파라메타를 조정하는데,
    이 다른 채널의 파라메타는 현재의 파라메타에서 기준 파라메타를 빼어서 다른 채널의 파라메타를 다시 조정하는 것을 특징으로 하는 직접 메모리 접근 제어기의 버스 마스터 우선순위 결정방법.
  7. 제6항에 있어서,
    상기 다른 채널의 가중 파라메터 조정시, 현재 파라메타에서 기준 파라메타를 뺀 결과 음수이면, 감소시키지 않고 현재의 값을 유지시키는 것을 특징으로 하는 직접 메모리 접근 제어기의 버스 마스터 우선순위 결정방법.
  8. 제1항, 제3항 내지 제7항 중 어느 한 항에 기재된 각 단계를 수행하는 프로그램이 기록된 컴퓨터 판독가능한 기록매체.
KR10-2002-0070568A 2002-11-14 2002-11-14 가중 파라메타를 이용한 직접 메모리 접근 제어기의 버스마스터 우선순위 결정방법 KR100484304B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2002-0070568A KR100484304B1 (ko) 2002-11-14 2002-11-14 가중 파라메타를 이용한 직접 메모리 접근 제어기의 버스마스터 우선순위 결정방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0070568A KR100484304B1 (ko) 2002-11-14 2002-11-14 가중 파라메타를 이용한 직접 메모리 접근 제어기의 버스마스터 우선순위 결정방법

Publications (2)

Publication Number Publication Date
KR20040042321A KR20040042321A (ko) 2004-05-20
KR100484304B1 true KR100484304B1 (ko) 2005-04-20

Family

ID=37339123

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0070568A KR100484304B1 (ko) 2002-11-14 2002-11-14 가중 파라메타를 이용한 직접 메모리 접근 제어기의 버스마스터 우선순위 결정방법

Country Status (1)

Country Link
KR (1) KR100484304B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100951126B1 (ko) * 2008-02-18 2010-04-07 인하대학교 산학협력단 버스 중재 방법 및 장치
KR100973419B1 (ko) * 2008-06-11 2010-07-30 인하대학교 산학협력단 버스 중재 방법 및 장치
KR20200028697A (ko) 2018-09-07 2020-03-17 조상원 마스터 버스의 우선순위를 고려한 메모리 제어 방법
KR20200028694A (ko) 2018-09-07 2020-03-17 조상원 마스터 버스의 우선순위를 고려한 메모리 제어 방법

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990029659A (ko) * 1997-09-10 1999-04-26 요트. 게. 아. 롤페즈 기지국 및 하나 이상의 핸드세트를 구비한 전화 장치, 핸드세트의 가입 방법, 전화 장치에 적합한 핸드세트 및 기지국
KR19990030598A (ko) * 1997-10-02 1999-05-06 구본준 디엠에이 제어장치
KR19990058631A (ko) * 1997-12-30 1999-07-15 구본준 디엠에이 콘트롤러
KR19990058930A (ko) * 1997-12-30 1999-07-26 구본준 디앰에이 컨트롤러 및 이를 이용한 디앰에이 요구신호 우선순위 변경방법
KR20010058671A (ko) * 1999-12-30 2001-07-06 윤종용 멀티 채널 직접 메모리 억세스 콘트롤러
KR20010105279A (ko) * 2000-05-19 2001-11-28 마츠시타 덴끼 산교 가부시키가이샤 고성능 dma 콘트롤러
JP6614939B2 (ja) * 2015-11-30 2019-12-04 三菱電機株式会社 購入支援プログラム、庫内画像サーバおよび購入支援システム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990029659A (ko) * 1997-09-10 1999-04-26 요트. 게. 아. 롤페즈 기지국 및 하나 이상의 핸드세트를 구비한 전화 장치, 핸드세트의 가입 방법, 전화 장치에 적합한 핸드세트 및 기지국
KR19990030598A (ko) * 1997-10-02 1999-05-06 구본준 디엠에이 제어장치
KR19990058631A (ko) * 1997-12-30 1999-07-15 구본준 디엠에이 콘트롤러
KR19990058930A (ko) * 1997-12-30 1999-07-26 구본준 디앰에이 컨트롤러 및 이를 이용한 디앰에이 요구신호 우선순위 변경방법
KR20010058671A (ko) * 1999-12-30 2001-07-06 윤종용 멀티 채널 직접 메모리 억세스 콘트롤러
KR20010105279A (ko) * 2000-05-19 2001-11-28 마츠시타 덴끼 산교 가부시키가이샤 고성능 dma 콘트롤러
JP6614939B2 (ja) * 2015-11-30 2019-12-04 三菱電機株式会社 購入支援プログラム、庫内画像サーバおよび購入支援システム

Also Published As

Publication number Publication date
KR20040042321A (ko) 2004-05-20

Similar Documents

Publication Publication Date Title
US7350004B2 (en) Resource management device
US6148322A (en) Processing unit with an improved ability to coordinate the execution of multiple tasks with varying priorities
JP4625836B2 (ja) アクセス調停装置
US5884051A (en) System, methods and computer program products for flexibly controlling bus access based on fixed and dynamic priorities
US20070016709A1 (en) Bus control system and a method thereof
US7213084B2 (en) System and method for allocating memory allocation bandwidth by assigning fixed priority of access to DMA machines and programmable priority to processing unit
KR20040012964A (ko) 캐시 메모리 버스트 싸이클 동안 버스 중재를 제어하는시스템 및 방법
CN110297782B (zh) 仲裁系统和方法
US5072365A (en) Direct memory access controller using prioritized interrupts for varying bus mastership
US20030229744A1 (en) Methods and structure for dynamic modifications to arbitration for a shared resource
KR100484304B1 (ko) 가중 파라메타를 이용한 직접 메모리 접근 제어기의 버스마스터 우선순위 결정방법
JPH06161952A (ja) アクセス要求仲裁装置
US5901296A (en) Distributed scheduling for the transfer of real time, loss sensitive and non-real time data over a bus
KR100757791B1 (ko) 공유 자원 중재 프로토콜 방법 및 중재기
US20060155893A1 (en) Methods and apparatus for sharing memory bandwidth
JP2017134459A (ja) 効率的に数値制御データの受け渡しをする数値制御システム
KR100653463B1 (ko) 직접 메모리 접근 제어기의 우선 순위 결정 방법
US7539805B2 (en) Bus arbitration method and computer-readable medium
JP2006215621A (ja) Dma制御装置
US10802730B2 (en) Semiconductor device and reconfiguration control method of the same
US20180181508A1 (en) Semiconductor device
KR101167245B1 (ko) 실시간으로 변경되는 중재 파라미터를 이용한 버스 중재 장치 및 중재 방법
KR950012506B1 (ko) 다중채널 버스중재기
US5799160A (en) Circuit and method for controlling bus arbitration
JP2007164713A (ja) リソース管理装置及びリソース管理方法

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

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee