KR960012357B1 - 자원의 이용가능도에 의거한 아비트레이션 방법 및 장치 - Google Patents

자원의 이용가능도에 의거한 아비트레이션 방법 및 장치 Download PDF

Info

Publication number
KR960012357B1
KR960012357B1 KR1019920023573A KR920023573A KR960012357B1 KR 960012357 B1 KR960012357 B1 KR 960012357B1 KR 1019920023573 A KR1019920023573 A KR 1019920023573A KR 920023573 A KR920023573 A KR 920023573A KR 960012357 B1 KR960012357 B1 KR 960012357B1
Authority
KR
South Korea
Prior art keywords
request
data bus
available
port buffer
data
Prior art date
Application number
KR1019920023573A
Other languages
English (en)
Other versions
KR930014077A (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 선 마이크로시스템즈 인코오퍼레이티드
Publication of KR930014077A publication Critical patent/KR930014077A/ko
Application granted granted Critical
Publication of KR960012357B1 publication Critical patent/KR960012357B1/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/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
    • G06F13/30Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal with priority control
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)

Abstract

내용없음.

Description

자원의 이용가능도에 의거한 아비트레이션 방법 및 장치
제1도는 데이터 전송동작에 대한 다양한 전송자원을 도시한 도시도.
제2도는 본 발명에 따라 할당된 자원시스템을 도시한 블록도.
제3도는 요구의 평가를 도시한 블록도.
[발명의 분야]
본 발명은 컴퓨터 시스템에서 데이터 전송동작에 관한 것이며, 더욱 특히 컴퓨터 시스템에서 데이터 전송동작을 위한 전송자원의 아비트레이션에 관한 것이다.
[종래의 기술]
컴퓨터 시스템에서, 버스 또는 버퍼등의 전송자원은 둘 이상의 디바이스간을 연결하는 공유통로일 수 있다.
하나의 자원에서 데이타는 모든 부착된 디바이스에 이용가능할 수 있으나, 오직 한 디바이스만이 유효한 전송을 위해 자원내로 데이터를 전송하도록 허용되야 한다. 하나 이상의 디바이스는 지정된 시간에 자원의 제어를 필요로 할 수 있기 때문에, 다중 요구 디바이스중 회선쟁탈을 해결하기 위한 계통적이고 효율적인 방법이 컴퓨터 시스템의 성공에 결정적 역할을 한다.
현재의 컴퓨터 시스템은 통상 자원 회선쟁탈을 해결하기 위해 고정 또는 회전 우선순위 기준제어기 즉 아비터를 가진 아비트레이션 스킴을 갖추고 있다.
고정 우선순위 시스템에서, 각 요구 디바이스에는 계층내 랭크가 주어져 둘 이상의 디바이스가 액티브할 때, 가장 높은 랭크 디바이스가 먼저 승인되고, 나머지는 랭크가 감소되는 순서로 뒤따를 것이다.
회선쟁탈이 해결되어도, 고정 우선순위 스킴의 엄격성 때문에 자원결핍의 문제, 즉 고우선순위 디바이스들이 자원에 대한 그들의 제어를 교대로 한 경우 저우선순위 요구자들은 자원의 사용으로부터 배제될 수 있다는 문제가 생긴다.
또한 시스템 사용상 고우선순위 디바이스의 작동이 전송통로에 결합된 자원들이 이용불가능하는 것을 이유로 보류되면, 시스템이 유휴되는 것을 방지하기 위해 저우선순위 디바이스가 자원을 사용하는 것이 허용되야 한다.
이 관점에서, 고정 우선순위 시스템은 이런 경우를 대비하지 못한다.
회전 우선순위 시스템에서, 라운드로빈 또는 무작위순으로 토큰을 발행하여 모든 가능한 요구자를 통해 자원의 제어가 발송된다.
요구자는 토큰이 수신된때만 자원의 제어를 획득가능하다.
각 디바이스에 자원에 대한 액세스 권리가 주어지지만, 통로 아래의 이용불가능성 때문에 디바이스 A가 그 작동을 완료할 수 없는 경우 시스템은 아직 유휴상태에 있을 수 있고, 다음 인라인 디바이스 B는 토큰을 획득하지 못한다.
고정 우선순위 스킴에서와 같이, 회전 우선순위 시스템은 효율적 자원이용 및 높은 작동 대역폭을 제공할 수 없다.
직접 메모리 액세스(DMA) 동작의 경우와 같이 자원이 다중 채널 데이터 전송을 동시에 다루는 경우, 고정 및 회전 우선순위 시스템의 결점은 악화된다.
중앙처리장치(CPU)는 직접적인 전송동작으로부터 자유롭게 될 수 있기 때문에, DMA는 디바이스나 메모리중에 큰 크기의 데이터를 전송하는 효율적인 기술이다.
데이터를 전송하기 위해, DMA 제어기는 버스나 버스들의 제어를 획득해야 한다.
DMA 제어기에 부착된 여러 디바이스에 의해 요구된 전송에 대한 다중 채널이 존재하는 경우, DMA 제어기는 시스템 효율성을 달성하기 위해 시간 멀티플렉싱 방식으로 채널을 서비스할 수 있어야 한다. 환언하면, 하나의 디바이스는 남아 있는 자원이 이용가능하게 되기를 대기하면서 하나 이상의 자원을 홀드하지 않아야 한다. 그런 의미에서, DMA 제어기 그 자신은 요구 디바이스중에 공유된 하나의 자원으로 보여질 수 있고 이런 공유는 효율적이고 적절해야 한다.
DMA 전송동작이 완료되기 위해서는 버스 및 버퍼등의 다중 자원을 요구한다.
그렇지만 고정 또는 회전 우선순위 시스템에서, DMA 제어기는 다른 필수의 자원이 요구자의 동작완료에 이용가능하지 않을 때 조차도 엄격한 우선순위 스킴을 준수해야 한다. 제1요구자가 자신의 자원이 이용가능하게 되기를 대기하는 동안, 제어기가 전송을 완료할 수 있는 다음 요구자로 스킵(skip)하게 하는 메카니즘은 존재하지 않는다.
이하에 기술될 것이지만, 본 발명은 요구된 전송을 완료함에 있어서 전송자원의 이용가능도에 의거하여 다수의 요구 디바이스간을 아비트레이팅 하는 방법 및 장치를 개시한다. 하기 설명에서 명백히 될 것이지만, 본 발명은 시스템이 효율적으로 이용될 수 있도록 요구된 동작에 대한 전송자원의 평가에 의거한 지능적 아비트레이션을 제공한다.
[발명의 요약]
그러므로 본 발명의 목적은 다중 데이터 전송동작중 자원 회선쟁탈을 해결하는 것이다.
본 발명의 다른 목적은 다중 시간 멀티플렉싱 데이터 전송동작을 조정하는 자원에 대한 효율적 자원이용을 성취하는 것이다.
본 발명의 또다른 목적은 요구된 자원들이 요구된 동작에 대해 이용가능할 때까지 아비터가 요구된 자원에 대해 대기하게 하는 것이다.
본 발명은 전송자원의 이용가능도에 의거하여 다중 요구 데이터 전송간을 아비트레이팅 하는 방법 및 장치를 개시한다.
자원의 제어에 대한 요구는 요청된 외부버스, 내부버스 및 데이터 전송크기에 대한 정보와 함께 아비터에 전송된다.
아비터는 버퍼에 잔존하는 공간, 내부버스 이용가능도 및 외부버스 이용가능도와 정보를 비교한다. 만약 모든 자원이 요구를 완료하는데 이용가능하면, 그후 요구는 승인되고 요구된 전송은 개시된다.
만약 자원중 어느 하나라도 이용가능하지 않으면, 아비터는 평가를 위해 다음 요구를 취한다. 또한 모든 자원이 아비터가 다음 요구를 취하지 못하도록 이용가능할 때까지, 각 요구가 아비터를 대기하도록 하는 메카니즘이 제공된다.
[표기법 및 명명법]
다음의 상세한 설명은 컴퓨터 시스템내의 동작들의 기호식 표현 및 알고리즘에 의해 대부분 개시된다.
이들 알고리즘식 설명 및 표현법은 본 업계 다른 전문가에게 작업내용을 가장 효율적으로 전달하기 위해 데이터 처리분야의 통상의 전문가에 의해 사용되는 수단이다.
알고리즘은 여기서 그리고 일반적으로 소망 결과를 도출하는 모순없는 일련의 단계가 되도록 착상된다.
이들 단계들은 물리량의 물리적 조작을 요구하는 것들이다.
보통, 필수적이지는 않지만, 이들 양은 기억, 전송, 결합, 비교 및 달리 조작가능한 전기 또는 자기적 신호의 형태를 취한다.
때때로, 원칙적으론 통상의 사용을 이유로, 이들 신호를 비트, 값, 성분, 기호, 문자, 용어, 숫자 등으로 언급하는 것이 편리한 것으로 판명된다.
그렇지만 이들 모두 및 유사용어들은 적절한 물리량과 관련되고, 이들 량에 적용된 단지 편리한 라벨임을 명심해야 한다.
더욱, 수행된 동작은 통상 인간 조작자에 의해 수행된 정신적 조작에 관련된 합 또는 비교등의 용어로 언급된다.
본 발명의 일부를 형성하는 여기에 기술된 동작에서 이런 인간 조작자의 능력은 필수적이지 않고 또는 대부분의 경우 바람직하지 않고, 조작들은 기계조작이다.
본 발명의 동작을 수행하기 위해 유용한 기기는 범용 디지털 컴퓨터 또는 다른 유사기기를 포함한다. 모든 경우 컴퓨터를 동작하는 조작방법과 그 자체의 연산방법간의 차이를 명심해야 한다.
본 발명은 다른 소망 물리신호를 생성하기 위해 전기적 또는 다른(기계적, 화학적) 물리신호를 처리하는데 컴퓨터를 조작하는 방법단계에 관한 것이다.
본 발명은 또한 이들 동작을 수행하는 장치에 관한 것이다.
이 장치는 요구된 목적에 따라 특별히 구성될 수 있고 또는 컴퓨터내에 기억된 컴퓨터 프로그램에 의해 선택적으로 활성화되거나 재배열되는 범용 컴퓨터일 수 있다. 여기서 개시된 알고리즘은 특정 컴퓨터 또는 다른 장치에 본질적으로 관련되지 않는다. 특히 다양한 범용 기기가 여기의 교시에 따라 기입된 프로그램과 함께 사용될 수도 있고 또는 요구된 방법 단계를 수행하기 위해 더욱 특별한 장치를 구성하는 것이 더 편리하다고 판명될 수 있다.
이들 기기의 다양성에 대해 요구된 구조는 하기의 설명에 나타날 것이다.
[코팅 세부사항]
어떤 특정 프로그래밍 언어도 여기에 기술된 여러 프로시져를 실행하기 위해 지적되지 않았다. 이것은 부분적으로 언급될 수 있는 모든 언어가 널리 유용할 수 없다는 사실에 기인한다.
특정 컴퓨터의 각 사용자는 그의 당면한 목적에 가장 적절한 언어를 알 것이다.
실제로 기계 실행가능 목적 코드를 제공하는 어셈블리 언어로 본 발명을 사실상 수행하는 것이 유용하다고 판명되었다.
본 발명의 실시에 사용될 수 있는 컴퓨터 및 모니터 시스템은 많은 별개의 요소로 구성되므로, 상세한 프로그램 리스트가 제공되지 않았다.
여기서 기술되고 첨부도면에 도시된 조작 및 다른 프로시져는 당업자가 본 발명을 실시할 수 있도록 충분히 개시되었다고 생각한다.
[본 발명의 상세한 설명]
전송자원의 이용가능도에 의거하여 다중 데이터 전송동작간을 아비트레이션 하는 방법 및 장치가 개시된다.
설명의 목적으로 하기 설명에서 특정 메모리, 유기적 구조,아키텍처 등이 본 발명의 완벽한 이해를 제공하기 위해 설명된다.
그렇지만 본 발명은 이들 특정 사항들 없이도 실시될 수 있음은 당업자에게 명백할 것이다. 다른 경우, 주지회로는 본 발명을 필요없이 모호하게 하지 않도록 블록도 형태로 개시된다.
제1도에서 데이터 전송동작을 위한 다양한 전송자원을 도시한 다이아그램이 도시된다. 하기 설명이 다중 채널 DMA 동작에 대해 구성되나, 다른 전송동작이 시스템의 효율성을 위해 본 발명의 교시에 쉽게 합체될 수 있는 것으로 당업자에 의해 평가되야 한다.
예컨대, 하나 이상의 요구를 수행하기 위해 필요한 다중 자원을 갖춘 시스템에서, 본 발명은 자원의 효율적 할당을 제공할 것이다.
제1도에서, DMA 제어기(110)는 ABus(100)와 BBus(160)간의 연결을 도시하며, 여기서 디바이스(101-105)가 접속된다.
DMA 제어기(110)의 구조체내에서, 버퍼(120)는 cBus(140) 및 dBus(150)간을 연결한다. 데이터가 디바이스(101)에서 디바이스(103)로 고정 또는 회전 우선순위 스킴에 따라 전송되도록 요구가 아비터(도시안됨)에 의해 승인되는 경우, 자원의 호스트는 요구된 전송, 즉 ABus(100), cBus(140), 버퍼(120), dBus(150) 및 BBus(160)를 완료해야 할 것이다. 그렇지만 만약 하나의 자원, 예컨대 BBus(160), 이 데이터를 디바이스(104)에 전송하기 위해 디바이스(105)에 의해 사용상태에 있는 경우, 디바이스(101)에 의한 요구는 그것이 엄격한 우선순위 시스템에 의해 승인되더라도 완료하기 불가능할 것이다.
더욱 나쁜 것은 디바이스(101)에 의한 요구가 전송자원의 제어를 계속하여 다른 요구가 자원중 어느 것의 제어를 획득하지 못하게 한다는 것이다.
기술한 바와 같이 본 발명은 동작승인전에 각 요구에 의해 요청된 모든 자원을 평가하여 문제를 해결한다.
이와 같이 자원낭비 문제는 현격히 감소되는 시스템은 더 잘 사용된다.
본 발명에 따라 할당된 자원의 시스템을 도시한 블록도인 제2도를 참조한다.
아비터(200)는 어느 하나의 디바이스(250)로부터 전송된 요구 사이를 아비트레이팅 하도록 접속된다. 버스가 이용가능한지 여부를 표시하는 내부버스(240) 및 외부버스(230)의 상태 선 및 2포트버퍼(220)의 공간 잔존 선이 아비터(200)에 또한 접속된다. 디바이스(250)로부터의 요구는 요구자식별(211), 채널(212), 전송 데이터 크기(213), 내부버스(214), 외부버스(215) 및 대기자원명령(216)에 대한 정보로 구성된 요구제어블록(210)에 또한 표시된다.
각 요구는 전송이 일어난 DMA 채널 즉 전송의 총 카운트, 전송을 완료하기 위해 필요로 한 버스들 및 자원이 이용가능하기 전에 요구가 거부되지 않도록 대기명령이 주장되는지 여부에 대한 정보와 연관된다.
데이터 전송이 각각의 DMA 동작에서 각 요구에 의해 특정되는 하나 이상의 채널을 통해 성취되도록 다른 채널들이 주어진다는 것을 주위하시오.
동작시, 아비터(200)가 디바이스(250)중 하나로부터 요구를 수신한 경우, 그 요구에 연관된 요구제어블록(210)내의 정보는 아비터(200)에 이용가능하게 만들어진다. 아비터(200)는 요구제어블록(210)으로부터의 정보와 2포트버퍼(220)으로부터의 공간잔존선 및 외부버스(230) 및 내부버스(240)로부터의 상태선과를 비교하여 요구를 평가한다.
특히, 2포트버퍼(220)로부터의 공간잔존선은 2포트버퍼(220)가 전송요구를 수용할 수 있는지를 판별하도록 요구의 전송크기(213)와 비교된다.
2포트버퍼에 대해서 공간잔존선은 기입된 데이터와 독출된 데이터간의 차이를 나타내는 수치임을 당업자에 의해 이해되야 한다.
내부 및 외부버스(230, 240)로부터의 상태선은 버스가 사용중일 때만 주장되고 사용중이 아닐때 주장되지 않는 연속신호이다.
모든 조건이 만족될때, 즉 공간이 이용가능하고 버스가 사용중이 아닐때, ACCEPT 신호(202)가 전송동작을 시작하도록 요구 디바이스에 복귀된다.
어느 조건이라도 만족하지 않으면, 즉 자원중 하나가 이용가능하지 않으면, 그후 아비터(200)는 DENY 신호(201)를 요구 디바이스에 복귀시키고 디바이스(250)중 하나로부터의 다음 요구를 수신한다.
유사하게 다음 요구는 아비터(210)가 비교할 요구제어블록(210)내의 같은 종류의 정보를 인덱스할 것이다.
추가적 특징으로서, 만약 제1요구와 연관된 대기자원(216)이 인에이블하면 아비터(200)는 다음 요구로 진행하지 않고, 모든 자원이 이용가능할 때까지 평가를 계속 할 것이다. 그러므로 전송자원의 요구는 요구된 동작이 진행될 수 있기 전에 모든 전송자원의 이용가능도를 판별하도록 아비터에 의해 평가된다.
또한 상태선과 공간잔존선은 자원으로부터의 연속신호에 의해 지시되므로, 요구가 직렬이 아니고 병렬로 검토될 수 있는 이유로 평가는 적어도 하나의 요구에 대해 한 사이클로 일어날 수 있다.
요구의 평가는 도시한 블록도인 제3도를 참조한다. 디바이스로부터의 요구에 반응하여, 아비터는 전송크기(310)와 잔존버퍼공간(320)을, 요청된 내부버스(330)와 이용가능한 내부버스(340)를 그리고 요청된 외부버스(350)와 이용가능한 외부버스(360)를 비교한다.
잔존버퍼공간(320)은 각각 판독데이터 수 및 기입데이터 수를 카운트하는 버퍼의 판독카운터(321) 및 기입카운터(322)간의 차이를 나타낸다.
요청된 내부버스(330)로부터의 신호는 n의 내부버스 수를 n-디지트 이진수일 수 있다. 각각 주장된 디지트는 요청된 버스를 나타내기 위해 만들어질 수 있다. 예컨데 4개의 기존버스에서 요청된 버스 No.1(MSB) 및 No.4(LSB)를 1001의 값으로 나타낸다.
유사하게 이용가능한 내부버스로부터의 값은 버스의 이용가능도를 나타내는 각각의 비트를 가진 n 디지트수일 수 있다.
따라서 제3도에 도시된 바와 같이, 1의 값은 버스 No.4(LSB)가 이용가능하다는 상태를 표시한다.
요청된 내부버스(330) 및 이용가능한 내부버스(340)로부터의 값은 요청된 버스가 이용가능한지를 판별하기 위해 비교(380)된다.
유사한 비교프로세스(390)는 요청된 외부버스(350) 및 이용가능한 외부버스(360) 사이에서 행해진다. 비교(370, 380, 390)의 결과는 만약 버퍼잔존공간이 전송크기를 수용할 수 있고, 내부버스가 요청된 것처럼 이용가능하고, 그리고 외부버스가 요청된 것처럼 이용가능하면 참이다.
모든 자원이 이용가능한때, 즉 비교(370, 380 및 390)의 모든 출력이 참인때, 아비터평가(300)의 결과가 ACCEPT 신호나 DENY 신호를 복귀시키고, 평가될 다음 요구를 트리거링 한다. 만약 ACCEPT 신호가 발행되면, 요구동작이 시작된다.
더욱, 바람직한 구현에서, 대기자원 명령은 모든 자원이 전송에 대해 이용가능하지 않더라도, 요구가 수행될 시간에 이용가능할 때까지 아비터가 추가 아비트레이션을 대기시키는 요구에 의해 특정되도록 포함된다.
이 대기명령에 의해 따라서 디바이스는 고정 우선순위 스킴으로 효과적으로 복귀하도록 자원이용가능 아비트레이션을 바이패스한다.
본 발명이 2포트버퍼, 내부버스 및 외부버스와 관련하여 기술되었지만, 다른 자원이 여러 디바이스로부터의 요구를 평가하기 위해 즉시 포함될 수 있음은 당업자에게 명백할 것이다. 또한 자원으로부터의 상태선은 요구된 자원에 대한 정보가 수신되는 같은 클록사이클 동안 아비터가 정보를 평가할 수 있도록 연속적으로 발생됨이 당업자에 의해 이해되어야 한다.
제1도에 있어서, 바람직한 실시예에서는 2포트버퍼(120)가 다중 전송을 조정하는 능력을 가지고 구현됨을 주위해야 한다.
따라서 버퍼는 반드시 동일한 데이터 속도는 아닐지라도 데이터를 판독하면서 데이터를 전송할 수 있다.
만약 버퍼가 단일 전송을 조정할 수 있는 형, 예컨대 다시 채워지기전에 비워져야 하는 것인 경우 버퍼용량의 평가가 필수적이지 않음은 명백할 것이다.
그 경우, 버퍼는 하나의 채널에 의해 배타적으로 사용되고 어떤 공유도 수행될 수 없다. 또한 자원에 대한 어떤 회선쟁탈 문제도 일어나지 않는다고 가정하면, 버퍼가 그 용량에 따라 데이터열과 함께 더 효율적으로 사용되도록 각 요구전송이 분해된 데이터열로 분리될 수 있는 경우 더 효율적인 전송이 버퍼를 통해 이루어질 수 있다.

Claims (11)

  1. DMA 동작을 갖춘 컴퓨터 시스템에서 판독 및 기입카운트를 갖춘 하나의 2포트버퍼와 데이터 버스가 사용중인지 여부를 표시하는 상태선을 갖춘 상기 데이터 버스를 DMA 동작을 완료하기 위해 사용하는 다수의 요구간을 아비트레이팅 하는 방법에 있어서, 상기 방법은 상기 2포트버퍼에 의한 동작을 완료하기 위해 필수적인 상기 데이터 버스, 상기 2포트버퍼, 및 요구된 전송크기를 식별하는 제1요구를 수신하는 단계; 상기 2포트버퍼가 상기 전송크기를 수용할 수 있는지 여부를 판별하기 위해 상기 전송크기와 상기 2포트버퍼에 대한 공간잔존 카운트를 비교하는 단계; 상기 데이터 버스가 이용가능한지 여부를 판별하기 위해 상기 데이터 버스의 상태선을 판독하는 단계; 상기 전송크기가 상기 2포트버퍼에 의해 수용가능한지 그리고 상기 데이터 버스가 이용가능한지 여부를 평가하는 단계; 만약 상기 전송크기가 상기 2포트버퍼에 의해 수용가능하고 상기 데이터 버스가 이용가능하면 상기 2포트버퍼의 사용을 위해 상기 요구에 대한 아비트레이션을 승인하는 단계; 만약 전송크기가 수용불가능하거나 또는 상기 데이터 버스가 이용불가능하면, 제2요구를 수신하는 단계로 구성되며, 이에 따라 요구에 지정된 자원이 이용가능할때만 2포트버퍼의 사용을 위해 아비트레이션이 요구에 대해 승인되는 것을 특징으로 하는 방법.
  2. 제1항에 있어서, 상기 제1요구는 대기명령을 또한 포함하며, 상기 방법은 상기 대기명령이 상기 제1요구에 의해 설정된 경우 상기 제1요구가 승인될 때까지 아비트레이션을 대기하는 단계를 추가로 포함한것을 특징으로 하는 방법.
  3. 제2항에 있어서, 상기 전송크기는 상기 동작에 대한 다수의 데이터 슬라이스로 구성되며, 각각의 상기 데이터 슬라이스는 상기 동작에 대한 총 전송 시퀀스의 시분할후 이어서 상기 2포트버퍼가 DMA 채널에 대해 하나 이상의 슬라이스를 수용하기에 이용가능한 공간을 갖는지를 비교하는 것을 특징으로 하는 방법.
  4. 제3항에 있어서, 상기 상태선은 2상태 연속신호이고, 제1상태는 데이터 버스가 이용가능함을 나타내며 제2상태는 데이터 버스가 이용불가능함을 나타내는 것을 특징으로 하는 방법.
  5. 제1항에 있어서, 상기 2포트버퍼에 대한 대한 상기 공간잔존 카운트는 상기 2포트버퍼에 대한 기입 및 판독카운트의 차인 것을 특징으로 하는 방법.
  6. DMA 동작을 갖춘 컴퓨터 시스템에서 판독 및 기입카운트를 갖춘 하나의 2포트버퍼와 데이터 버스가 사용중인지 여부를 표시하는 상태선을 갖춘 상기 데이터 버스를 DMA 동작을 완료하기 위해 사용하는 다수의 요구간을 아비트레이팅 하는 장치에 있어서, 상기 장치는 상기 2포트버퍼에 의해 동작을 완료하기 위해 필수적인 상기 데이터 버스와 상기 2포트버퍼에 대해 요구된 전송크기를 식별하는 제1요구를 수신하는 수신수단; 2포트버퍼가 상기 전송크기를 수용할 수 있는지를 판별하도록 상기 전송크기와 공간잔존 카운트를 비교하는 상기 수신수단에 결합된 제1비교수단; 상기 데이터 버스가 이용가능한지를 판별하기 위해 상기 요구된 데이터의 상태선을 판독하는 상기 수신수단에 결합된 제2비교수단; 상기 전송크기가 상기 2포트버퍼에 의해 수용가능한지 그리고 상기 데이터 버스가 이용가능한지를 평가하며, 상기 전송크기가 상기 2포트버퍼에 의해 수용가능하고 상기 데이터 버스가 이용가능한 경우 상기 요구를 승인하는 상기 제1 및 제2비교수단에 결합된 평가수단; 상기 2포트버퍼의 사용을 위해 상기 제1요구에 대한 아비트레이션을 승인하며 상기 평가수단에 결합된 허용수단으로 구성되며, 상기 수신수단은 전송크기가 수용될 수 없거나 요구된 상기 데이터 버스가 상기 제1요구에 대해 이용할 수 없는 경우 제2요구를 수신하는 것을 특징으로 하는 장치.
  7. 제6항에 있어서, 상기 제1요구에 대해 아비트레이션을 허용할 때까지, 대기명령이 상기 제1요구에 의해 설정되면 제2요구가 수신되지 않도록 상기 수신수단에 결합된 대기검출수단을 더 포함하는 것을 특징으로 하는 장치.
  8. 제7항에 있어서, 각각의 데이터 버스에 대한 상태선은 2상태 연속신호이고, 2상태중 하나는 데이터버스가 이용가능함을 다른 하나는 데이터 버스가 이용불가능함을 나타내는 것을 특징으로 하는 장치.
  9. 제6항에 있어서, 상기 전송크기는 상기 동작에 대한 다수의 데이터 슬라이드를 추가로 포함하고, 각각의 상기 데이터 슬라이드는 상기 동작에 대한 총 전송 시퀀스의 시분할부 이어서 상기 2포트버퍼가 상기 DMA 채널에 대한 하나 이상의 슬라이드를 수용하기에 이용가능한 공간을 가지는지를 비교하는 것을 특징으로 하는 장치.
  10. 제6항에 있어서, 상기 수신수단은 아비트레이팅을 하면서 다수의 요구를 수신하는 것을 특징으로 하는 장치.
  11. 제6항에 있어서, 각각의 2포트버퍼에 대한 상기 공간잔존 카운트는 상기 2포트버퍼에 대한 기입 및 판독카운트의 차인 것을 특징으로 하는 장치.
KR1019920023573A 1991-12-30 1992-12-08 자원의 이용가능도에 의거한 아비트레이션 방법 및 장치 KR960012357B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US815,499 1991-12-30
US07/815,499 US5239651A (en) 1991-12-30 1991-12-30 Method of and apparatus for arbitration based on the availability of resources

Publications (2)

Publication Number Publication Date
KR930014077A KR930014077A (ko) 1993-07-22
KR960012357B1 true KR960012357B1 (ko) 1996-09-18

Family

ID=25217985

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019920023573A KR960012357B1 (ko) 1991-12-30 1992-12-08 자원의 이용가능도에 의거한 아비트레이션 방법 및 장치

Country Status (5)

Country Link
US (1) US5239651A (ko)
EP (1) EP0550147B1 (ko)
JP (1) JP2622654B2 (ko)
KR (1) KR960012357B1 (ko)
DE (1) DE69224279T2 (ko)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5280608A (en) * 1991-06-28 1994-01-18 Digital Equipment Corporation Programmable stall cycles
TW276312B (ko) * 1992-10-20 1996-05-21 Cirrlis Logic Inc
US5341502A (en) * 1992-12-14 1994-08-23 Motorola, Inc. Device for assigning a shared resource in a data processing system
US5528765A (en) * 1993-03-15 1996-06-18 R. C. Baker & Associates Ltd. SCSI bus extension system for controlling individual arbitration on interlinked SCSI bus segments
JPH0757098A (ja) * 1993-08-16 1995-03-03 Ricoh Co Ltd 画像データ記憶装置
JP3647055B2 (ja) * 1993-11-17 2005-05-11 キヤノン株式会社 情報処理システム、管理方法および管理装置
US5526496A (en) * 1994-04-22 1996-06-11 The University Of British Columbia Method and apparatus for priority arbitration among devices in a computer system
US5572687A (en) * 1994-04-22 1996-11-05 The University Of British Columbia Method and apparatus for priority arbitration among devices in a computer system
US6360285B1 (en) * 1994-06-30 2002-03-19 Compaq Computer Corporation Apparatus for determining memory bank availability in a computer system
US5689673A (en) * 1995-02-14 1997-11-18 Hal Computer Systems, Inc. Apparatus and method for controlling instruction flow by using a matrix of transmission gates in super-scaler microprocessor and selectively delaying microprocessor instruction execution based on resource availability
US5564062A (en) * 1995-03-31 1996-10-08 International Business Machines Corporation Resource arbitration system with resource checking and lockout avoidance
JP3519182B2 (ja) * 1995-09-05 2004-04-12 株式会社日立製作所 情報処理システムおよびバスアービタならびにバス制御方法
US5831985A (en) * 1995-11-09 1998-11-03 Emc Corporation Method and apparatus for controlling concurrent data transmission from multiple sources in a channel communication system
US5692135A (en) * 1995-12-14 1997-11-25 International Business Machines Corporation Method and system for performing an asymmetric bus arbitration protocol within a data processing system
US6006303A (en) * 1997-08-28 1999-12-21 Oki Electric Industry Co., Inc. Priority encoding and decoding for memory architecture
US6026451A (en) * 1997-12-22 2000-02-15 Intel Corporation System for controlling a dispatch of requested data packets by generating size signals for buffer space availability and preventing a dispatch prior to a data request granted signal asserted
US6237055B1 (en) * 1998-12-03 2001-05-22 Intel Corporation Avoiding livelock when performing a long stream of transactions
US6708240B1 (en) * 2000-03-31 2004-03-16 Intel Corporation Managing resources in a bus bridge
US6584529B1 (en) * 2000-09-08 2003-06-24 Koninklijke Philips Electronics N.V. Intermediate buffer control for improving throughput of split transaction interconnect
US6976108B2 (en) * 2001-01-31 2005-12-13 Samsung Electronics Co., Ltd. System on a chip having a system bus, an external bus, and a bus arbiter with programmable priorities for both buses, software, and method for assigning programmable priorities
EP1308846B1 (de) * 2001-10-31 2008-10-01 Infineon Technologies AG Datenübertragungseinrichtung
KR100453071B1 (ko) * 2003-01-18 2004-10-15 삼성전자주식회사 프로세서 버스 연결 장치 및 방법
US20050240934A1 (en) * 2004-04-21 2005-10-27 Hewlett-Packard Development Company, L.P. Task management based on system utilization
US20070255874A1 (en) * 2006-04-28 2007-11-01 Jennings Kevin F System and method for target device access arbitration using queuing devices
US8447905B2 (en) * 2010-06-23 2013-05-21 International Business Machines Corporation Dynamic multi-level cache including resource access fairness scheme
US9236064B2 (en) * 2012-02-15 2016-01-12 Microsoft Technology Licensing, Llc Sample rate converter with automatic anti-aliasing filter
JP6160717B1 (ja) 2016-01-15 2017-07-12 日本電気株式会社 プロセッサ、および、データ転送方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60134953A (ja) * 1983-12-23 1985-07-18 Hitachi Ltd デ−タ転送制御装置
US4648029A (en) * 1984-08-27 1987-03-03 International Business Machines Corporation Multiplexed interrupt/DMA request arbitration apparatus and method
JPS61156454A (ja) * 1984-12-28 1986-07-16 Hitachi Ltd デ−タ転送制御装置
US4716525A (en) * 1985-04-15 1987-12-29 Concurrent Computer Corporation Peripheral controller for coupling data buses having different protocol and transfer rates
US4716523A (en) * 1985-06-14 1987-12-29 International Business Machines Corporation Multiple port integrated DMA and interrupt controller and arbitrator
JPH0786853B2 (ja) * 1988-02-29 1995-09-20 株式会社ピーエフユー バス転送制御方式
US4942553A (en) * 1988-05-12 1990-07-17 Zilog, Inc. System for providing notification of impending FIFO overruns and underruns
US4987529A (en) * 1988-08-11 1991-01-22 Ast Research, Inc. Shared memory bus system for arbitrating access control among contending memory refresh circuits, peripheral controllers, and bus masters
US5155810A (en) * 1989-01-10 1992-10-13 Bull Hn Information Systems Inc. Dual FIFO peripheral with combinatorial logic circuitry
JP2712131B2 (ja) * 1989-01-23 1998-02-10 株式会社日立製作所 通信制御装置
CA2007737C (en) * 1989-02-24 1998-04-28 Paul Samuel Gallo Data transfer operations between two asynchronous buses
US5079693A (en) * 1989-02-28 1992-01-07 Integrated Device Technology, Inc. Bidirectional FIFO buffer having reread and rewrite means
US5072420A (en) * 1989-03-16 1991-12-10 Western Digital Corporation FIFO control architecture and method for buffer memory access arbitration
KR940002905B1 (en) * 1989-12-15 1994-04-07 Ibm Apparatus for conditioning priority arbitration in buffered direct memory addressing

Also Published As

Publication number Publication date
JPH06236344A (ja) 1994-08-23
JP2622654B2 (ja) 1997-06-18
DE69224279T2 (de) 1998-08-27
EP0550147B1 (en) 1998-01-28
DE69224279D1 (de) 1998-03-05
US5239651A (en) 1993-08-24
KR930014077A (ko) 1993-07-22
EP0550147A1 (en) 1993-07-07

Similar Documents

Publication Publication Date Title
KR960012357B1 (ko) 자원의 이용가능도에 의거한 아비트레이션 방법 및 장치
US5485586A (en) Queue based arbitration using a FIFO data structure
US5621897A (en) Method and apparatus for arbitrating for a bus to enable split transaction bus protocols
US5583999A (en) Bus arbiter and bus arbitrating method
US5155854A (en) System for arbitrating communication requests using multi-pass control unit based on availability of system resources
US5193197A (en) Apparatus and method for distributed dynamic priority arbitration for access to a shared resource
US4920486A (en) Distributed arbitration apparatus and method for shared bus
US5412788A (en) Memory bank management and arbitration in multiprocessor computer system
US6393506B1 (en) Virtual channel bus and system architecture
EP0543560B1 (en) Arbitrating multiprocessor accesses to shared resources
US5426612A (en) First-in first-out semiconductor memory device
US4972313A (en) Bus access control for a multi-host system using successively decremented arbitration delay periods to allocate bus access among the hosts
US5506989A (en) Arbitration system limiting high priority successive grants
EP0676699A2 (en) Method of managing resources shared by multiple processing units
EP0383475A2 (en) Shared resource arbitration
US20020019903A1 (en) Sequencing method and bridging system for accessing shared system resources
US5649209A (en) Bus coupling information processing system for multiple access to system bus
US4896266A (en) Bus activity sequence controller
US5051946A (en) Integrated scannable rotational priority network apparatus
CN114756491B (zh) 一种基于群体决策算法的总线仲裁器及其实现方法
US5931931A (en) Method for bus arbitration in a multiprocessor system
US6889283B2 (en) Method and system to promote arbitration priority in a buffer queue
US5557756A (en) Chained arbitration
EP0587370A1 (en) Method and apparatus for software sharing between multiple controllers
US7366811B2 (en) Bus arbitration system

Legal Events

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

Payment date: 20030124

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee