KR20030012049A - 아비터의 액세스 제어 방법 및 장치 - Google Patents
아비터의 액세스 제어 방법 및 장치 Download PDFInfo
- Publication number
- KR20030012049A KR20030012049A KR1020010045893A KR20010045893A KR20030012049A KR 20030012049 A KR20030012049 A KR 20030012049A KR 1020010045893 A KR1020010045893 A KR 1020010045893A KR 20010045893 A KR20010045893 A KR 20010045893A KR 20030012049 A KR20030012049 A KR 20030012049A
- Authority
- KR
- South Korea
- Prior art keywords
- devices
- arbiter
- priority
- shared resource
- waiting time
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
- G06F13/366—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using a centralised polling arbiter
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
- G06F13/3625—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using a time dependent access
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과정과; 상기 제1과정을 종료한 후 디바이스가 액세스 요청신호를 출력하면, 우선권 방식에 의거하여 공유자원 사용권한을 부여한 다음 초기 상태로 복귀하는 제2과정에 의해 달성된다.
Description
본 발명은 여러 디바이스가 시스템 버스나 메모리와 같은 공유자원을 사용하고자 할 때 그들의 액세스 권한을 중재하는 기술에 관한 것으로, 특히 우선권이 낮은 디바이스가 오랫동안 공유자원을 액세스할 수 없게 되는 것을 방지할 수 있도록 한 아비터의 액세스 제어 방법 및 장치에 관한 것이다.
여러 디바이스가 시스템 버스나 메모리와 같은 공유자원을 사용하는 시스템에서, 공유자원(Shared Resource)은 한 번에 하나의 디바이스에 대해서만 서비스할 수 있게 되어 있다. 그러므로 여러 디바이스로부터 동시(또는 단위시간 이내에)에 액세스 요청이 있을 경우 아비터(Arbiter)를 이용하여 그들이 적절한 순서대로 서비스 받을 수 있도록 중재하게 된다.
도 1은 종래 기술에 의한 아비터의 액세스 제어 블록도로서 이에 도시한 바와 같이, 여러 디바이스(12A-12N)가 하나의 공유자원(11)을 액세스할 수 있도록 시스템이 구축되고, 각 디바이스(12A-12N)로부터 액세스 요청신호(REQ1-REQn)가 입력될 때 아비터(13)는 기 설정된 중재 방식에 따라 허용신호(GNT1-GNTn)를 출력하도록 구성된 것으로, 이의 중재 방식을 첨부한 도 2를 참조하여 설명하면 다음과 같다.
아비터(13)의 중재 방식에는 라운드 로빈(Round Robin) 방식, 우선권(Priority) 방식, 혼합형 우선권 방식이 있다.
라운드 로빈 방식은 각 디바이스(12A-12N) 중 액세스 요청신호(REQ)를 발생한 디바이스들을 순차적으로 서비하는 방식이다. 즉, 각 디바이스(12A-12N)는 액세스 요청신호(REQ1-REQn)를 발생한 후 자신이 서비스를 받을 때까지 무조건 대기하는 방식이다.
우선권 방식은 공유자원(11)을 사용하고자 하는 각 디바이스(12A-12N)에 각각의 우선권을 부여하여, 이들 중 임의의 디바이스들로부터 동시에 액세스 요청신호(REQ)가 발생할 경우 보다 높은 우선권을 갖는 디바이스가 사용권한을 갖도록 허용신호(GNT)를 출력하는 방식이다. 이때, 우선권이 낮은 디바이스는 보다 높은 우선권을 갖은 디바이스로의 서비스가 완료될 때까지 무조건 기다려야 한다.(도 2 참조)
혼합형 우선권 방식은 라운드 로빈 방식과 우선권 방식이 혼합된 방식으로서, 일단 서비스를 받은 디바이스에게 가장 낮은 우선권을 부여하여 모든 디바이스(12A-12N)가 서비스를 받을 수 있도록 하는 방식이다.
이와 같은 종래 중재 방법 중 라운드 로빈 방식은 실시간 서비스를 필요로 하는 디바이스와 같은 특정의 디바이스에 적절히 대응할 수 없는 결함이 있었다.
또한, 우선권 방식은 높은 우선권을 갖는 디바이스로의 서비스 시간이 길어질 경우 보다 낮은 우선권을 갖는 디바이스에 서비스를 할 수 없게 되는 문제점이 있었다. 예를 들어, 우선권이 제일 높은 디바이스가 계속해서 또는 그 다음의 우선권을 갖는 디바이스와 교대로 액세스 요청신호를 발생하는 경우 그보다 낮은 우선권을 갖는 디바이스들은 계속해서 공유자원을 사용할 수 없게 되는 문제점이 있었다. 또한, 혼합형 우선권 방식은 서비스를 받은 디바이스의 우선권이 변경되므로 고정된 우선권을 요구하는 시스템 환경에 적용할 수 없는 결함이 있었다.
따라서, 본 발명의 목적은 여러 디바이스가 동시에 공유자원의 액세스를 요구하면 우선권이 높은 순서대로 공유자원의 사용권한을 부여하되, 일정 시간이 경과되면 그 다음의 우선권을 갖는 디바이스에게 사용권한을 이양하도록 하는 아비터의 액세스 제어 방법 및 장치를 제공함에 있다.
도 1은 종래 기술에 의한 아비터의 액세스 제어 블록도.
도 2는 종래 기술에 의한 아비터의 액세스 제어신호 흐름도.
도 3은 본 발명에 의한 아비터의 액세스 제어 장치의 블록도.
도 4는 본 발명에 의한 아비터의 액세스 제어 방법의 신호 흐름도.
***도면의 주요 부분에 대한 부호의 설명***
31 : 공유자원32A-32N : 디바이스
33B-33N : 카운터34 : 아비터
본 발명에 의한 아비터의 액세스 제어 방법은, 여러 디바이스 중 복수개의 디바이스가 공유자원을 사용하기 위해 동시에 액세스 요청신호를 출력하면, 그들의 대기시간을 카운트하는 제1과정과; 상기 각 디바이스들의 대기시간 카운트값을 기 설정된 최대대기시간과 우선권 순서대로 비교하여 최대대기시간을 초과하는 디바이스에게 공유자원 사용권한을 부여하는 제2과정과; 상기 제2과정을 종료한 후 우선권 방식에 의거하여 공유자원 사용권한을 부여한 후 초기 상태로 복귀하는 제3과정으로 이루어진다.
도 3은 본 발명에 의한 아비터의 액세스 제어 장치의 일실시 구현예를 보인 블록도로서 이에 도시한 바와 같이, 아비터(34)에 액세스 요청신호를 출력하여 그로부터 액세스 허용신호가 입력될 때, 공유자원(31)을 액세스하는 디바이스(32A-32N)와; 상기 디바이스(32A-32N)에서 액세스 요청신호가 출력될 때 해당 디바이스의 대기시간을 카운트하는 카운터(33B-33N)와;
상기 카운터(33B-33N)의 카운트값을 근거로 디바이스들의 대기시간을 체크하여 최대대기시간을 초과하는 디바이스가 존재하면, 그 디바이스에 액세스 허용신호를 출력하고, 그렇지 않으면 상기 디바이스(32A-32N) 중 복수의 디바이스로부터 동시에 또는 일정 시간 내에 액세스 요청신호가 입력될 때 최상위의 우선권을 갖는 디바이스에 액세스 허용신호를 출력하는 아비터(34)로 구성한 것으로, 이와 같이 구성한 본 발명의 작용을 첨부한 도 4를 참조하여 상세히 설명하면 다음과 같다.
도 3에서와 같이 여러 디바이스(32A-32N)가 시스템 버스나 메모리 등의 공유자원(31)을 공유하는 시스템에서, 그 공유자원(31)은 한 번에 하나의 디바이스에 대해서만 서비스할 수 있게 되어 있다. 따라서, 상기 디바이스(32A-32N) 중 복수개의 디바이스로부터 동시에 액세스 요청신호(REQ)가 발생될 경우 아비터(34)는 아래의 설명에서와 같이 중재하게 된다. 물론, 상기 디바이스(32A-32N) 중 임의의 한 디바이스에서만 액세스 요청신호(REQ)가 발생될 경우에는 중재가 필요 없고 아비터(34)로부터 곧바로 허용신호(GNT)를 입력받아 공유자원(31)을 독점적으로 사용하게 된다.
상기 각 디바이스(32A-32N)에는 각기 다른 우선권이 부여되어 있는데, 여기에서는 첫 번째 디바이스(32A)의 우선권이 제일 높고, 점차 낮아져 마지막 디바이스(32N)의 우선권이 제일 낮게 설정된 것을 예로하여 설명한다. 또한, 상기 디바이스(32A-32N)가 동시에 액세스 요청신호(REQ1-REQn)를 출력하는 경우를 예로하여 설명한다.
디바이스(32B)에서 상기 아비터(34)에 액세스 요청신호(REQ2)가 출력될 때부터 카운터(33B)는 그 디바이스(32B)의 대기시간을 카운트하게 되는데, 상기 아비터(34)는 그 카운트값을 기 설정된 최대대기시간(MAX)과 비교한다. 상기의 비교 결과 카운트값이 최대대기시간(MAX)을 초과한 것으로 판명되면 상기 아비터(34)는 디바이스(32B)에 허용신호(GNT2)를 출력하게 된다. 따라서, 상기 디바이스(32B)는 이때부터 공유자원(31)을 액세스하여 사용할 수 있게 된다.
그러나, 상기 카운터(33B)의 카운트값이 상기 최대대기시간(MAX)에 도달되지 않은 것으로 판명되면, 그 카운터(33B)와 같은 방식으로 동작하는 카운터(33C-33N)의 카운트값을 최대대기시간(MAX)과 순차적으로 비교하여 그 중에서 최대대기시간(MAX)을 초과하는 카운트값이 존재하면 해당 디바이스에 액세스 허용신호(GNT)를 출력하여 그 디바이스가 상기 공유자원(31)을 사용할 수 있게 된다.
이후, 상기 아비터(34)는 현재 액세스 중인 디바이스보다 낮은 우선권을 갖는 디바이스들에 대한 카운트값을 상기와 같이 최대대기시간(MAX)과 순차적으로 비교하여 그 중에서 최대대기시간(MAX)을 초과하는 카운트값이 존재하면 해당 디바이스에 액세스 허용신호(GNT)를 출력하여 그 디바이스가 상기 공유자원(31)을 사용할 수 있게 된다.
우선권이 가장 높은 디바이스(32A)는 다음에 수행되는 통상의 우선권 방식에 의해 대기시간 허용신호를 받게 되므로 카운터를 필요로 하지 않는다.
참고로, 상기 최대대기시간(MAX)은 시스템의 운용상황에 따라 아비터(34)에 의해 고정적으로 설정되는 값이다.
상기와 같은 과정을 통해 마지막 디바이스(32N)까지 대기시간을 검사한 후에는 상기 디바이스(32A-32N)가 통상의 우선권 방식으로 공유자원(31)을 사용하게 된다.
초기에는 최대 대기시간을 초과하는 디바이스가 없을 것이므로 통상의 우선권 방식에 의해 공유자원(31)을 사용할 디바이스가 결정될 것이다.
즉, 상기 디바이스(32A-32N) 중 복수개의 디바이스가 동시에 액세스 요청신호(REQ1-REQn)를 출력하는 경우, 상기 아비터(34)는 우선권이 제일 높은 하나의 디바이스에 허용신호(GNT)를 출력한다. 이에 따라, 액세스 요청신호(REQ)를 출력한 디바이스 중 우선권이 제일 높은 하나의 디바이스만이 상기 공유자원(31)을 사용할 수 있게 된다.
상기와 같이 통상의 우선권 방식으로 하나의 디바이스가 상기 공유자원(31)을 사용한 후에는 초기 상태로 복귀하여 상기의 과정을 반복 수행하게 된다.
참고로, 상기 도 4와 같은 일련의 처리과정은 1 클럭신호의 주기 내에서 수행되는 것이므로 이에 의한 지연시간은 발생되지 않는다.
이상에서 상세히 설명한 바와 같이 본 발명은 여러 디바이스가 동시에 공유자원의 액세스를 요구하면 우선권이 높은 순서대로 공유자원의 사용권한을 부여하되, 하위의 우선권을 갖는 디바이스들의 대기시간을 카운트하여 기 설정된 대기시간을 초과하는 디바이스가 있으면 그 디바이스에게 공유자원의 사용권한을 이양하도록 함으로써, 가능한 한 우선권을 보장하면서 낮은 우선권을 갖는 디바이스들이 계속해서 공유자원을 사용할 수 없게 되는 현상을 방지할 수 있는 효과가 있다.
Claims (5)
- 각 디바이스들의 대기시간을 기 설정된 최대대기시간과 우선권 순서대로 비교하여 최대대기시간을 초과하는 디바이스에 공유자원 사용권한을 부여하는 제1과정과; 상기 제1과정을 종료한 후 우선권 방식에 의거하여 공유자원 사용권한을 부여한 다음 초기 상태로 복귀하는 제2과정을 포함하여 이루어지는 것을 특징으로 하는 아비터의 액세스 제어 방법.
- 제1항에 있어서, 제1과정은 복수개의 디바이스가 공유자원을 사용하기 위해 액세스 요청신호를 출력할 때, 최상위의 우선권을 갖는 디바이스에 공유자원 사용권한을 부여한 후 나머지 디바이스들의 대기시간을 카운트하는 제1단계와; 상기 각 디바이스들의 대기시간을 기 설정된 최대대기시간과 우선권 순서대로 비교하여 최대대기시간을 초과하는 디바이스에게 공유자원 사용권한을 부여하는 단계를 필요한 만큼 반복 수행하여 최하위의 우선권을 갖는 디바이스까지 순차적으로 공유자원 사용권한을 갖도록하는 제2단계로 이루어진 것을 특징으로 하는 아비터의 액세스 제어 방법.
- 제2항에 있어서, 최상위의 우선권을 갖는 디바이스에 대해서는 카운터를 할당하지 않는 것을 특징으로 하는 아비터의 액세스 제어 방법.
- 아비터(34)에 액세스 요청신호를 출력하여 그로부터 액세스 허용신호가 입력될 때, 공유자원(31)을 액세스하는 디바이스(32A-32N)와; 상기 디바이스(32A-32N)에서 액세스 요청신호가 출력될 때 해당 디바이스의 대기시간을 카운트하는 카운터(33B-33N)와; 상기 카운터(33B-33N)의 카운트값을 근거로 디바이스들의 대기시간을 체크하여 최대대기시간을 초과하는 디바이스가 존재하면, 그 디바이스에 액세스 허용신호를 출력하고, 그렇지 않으면 상기 디바이스(32A-32N) 중 복수의 디바이스로부터 동시에 또는 일정 시간 내에 액세스 요청신호가 입력될 때 최상위의 우선권을 갖는 디바이스에 액세스 허용신호를 출력하는 아비터(34)를 포함하여 구성한 것을 특징으로 하는 아비터의 액세스 제어 장치.
- 제4항에 있어서, 상기 공유자원(31)은 시스템버스 또는 메모리인 것을 특징으로 하는 아비터의 액세스 제어 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020010045893A KR20030012049A (ko) | 2001-07-30 | 2001-07-30 | 아비터의 액세스 제어 방법 및 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020010045893A KR20030012049A (ko) | 2001-07-30 | 2001-07-30 | 아비터의 액세스 제어 방법 및 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20030012049A true KR20030012049A (ko) | 2003-02-12 |
Family
ID=27717232
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020010045893A KR20030012049A (ko) | 2001-07-30 | 2001-07-30 | 아비터의 액세스 제어 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20030012049A (ko) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR960025060A (ko) * | 1994-12-19 | 1996-07-20 | 미키오 이시마루 | 버스 억세스를 적절하게 할당하기 위하여 타이머를 사용하는 멀티미디어 시스템 |
JPH08212170A (ja) * | 1995-02-01 | 1996-08-20 | Canon Inc | メモリ制御装置及びその方法 |
JPH0991194A (ja) * | 1995-09-27 | 1997-04-04 | Canon Inc | 調停システムおよび調停方法 |
JPH10293745A (ja) * | 1997-03-25 | 1998-11-04 | Internatl Business Mach Corp <Ibm> | バスを動的に制御するシステムおよび方法 |
JPH11272567A (ja) * | 1998-03-25 | 1999-10-08 | Matsushita Electric Ind Co Ltd | メモリ制御装置 |
JP2000259556A (ja) * | 1999-03-04 | 2000-09-22 | Ricoh Co Ltd | バス調停装置 |
-
2001
- 2001-07-30 KR KR1020010045893A patent/KR20030012049A/ko not_active Application Discontinuation
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR960025060A (ko) * | 1994-12-19 | 1996-07-20 | 미키오 이시마루 | 버스 억세스를 적절하게 할당하기 위하여 타이머를 사용하는 멀티미디어 시스템 |
JPH08212170A (ja) * | 1995-02-01 | 1996-08-20 | Canon Inc | メモリ制御装置及びその方法 |
JPH0991194A (ja) * | 1995-09-27 | 1997-04-04 | Canon Inc | 調停システムおよび調停方法 |
JPH10293745A (ja) * | 1997-03-25 | 1998-11-04 | Internatl Business Mach Corp <Ibm> | バスを動的に制御するシステムおよび方法 |
JPH11272567A (ja) * | 1998-03-25 | 1999-10-08 | Matsushita Electric Ind Co Ltd | メモリ制御装置 |
JP2000259556A (ja) * | 1999-03-04 | 2000-09-22 | Ricoh Co Ltd | バス調停装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7062582B1 (en) | Method and apparatus for bus arbitration dynamic priority based on waiting period | |
US5787264A (en) | Method and apparatus for arbitrating access to a shared bus | |
EP2515232B1 (en) | Priority level arbitration method and device | |
US5996037A (en) | System and method for arbitrating multi-function access to a system bus | |
US6178475B1 (en) | Multimedia system employing timers to properly allocate bus access | |
JP2010286983A (ja) | バス調停回路及びバス調停方法 | |
US7231475B1 (en) | Advanced bandwidth allocation in PCI bus architecture | |
KR100252752B1 (ko) | 다단계 제어 버스 중재장치 | |
US6826640B1 (en) | Bus bandwidth control system | |
US20060282588A1 (en) | Processor system that allows for simultaneous access by multiple requestors to a target with multiple ports | |
US20080059674A1 (en) | Apparatus and method for chained arbitration of a plurality of inputs | |
US6700899B1 (en) | Bit slice arbiter | |
US7054970B2 (en) | Bus arbiter for integrated circuit systems | |
KR960042385A (ko) | 엘알유(lru)에 의한 중재기 | |
US5822549A (en) | Computer system and bus controller for controlling access to a computer bus | |
US7555005B2 (en) | Area efficient implementation of the consecutive access counter | |
KR20030012049A (ko) | 아비터의 액세스 제어 방법 및 장치 | |
JP5677007B2 (ja) | バス調停装置、バス調停方法 | |
US20070073948A1 (en) | Bus control system | |
US7181558B2 (en) | Avoidance of extended bus occupancy through simple control operation | |
KR100973419B1 (ko) | 버스 중재 방법 및 장치 | |
JP2006251875A (ja) | バス調停装置及びバス調停方法 | |
JP2000066995A (ja) | バス調停方法および装置とその利用装置およびシステム | |
KR20000067135A (ko) | 동적 우선순위 조정기능을 갖는 버스 중재기와 버스 중재방법 | |
JP2003006139A (ja) | Dma転送装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
N231 | Notification of change of applicant | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
J201 | Request for trial against refusal decision | ||
E902 | Notification of reason for refusal | ||
B601 | Maintenance of original decision after re-examination before a trial | ||
J121 | Written withdrawal of request for trial |