[go: up one dir, main page]

KR950014505B1 - 버스 조정 최적화 장치 및 버스 조정 통과 최적화 방법 - Google Patents

버스 조정 최적화 장치 및 버스 조정 통과 최적화 방법 Download PDF

Info

Publication number
KR950014505B1
KR950014505B1 KR1019910014385A KR910014385A KR950014505B1 KR 950014505 B1 KR950014505 B1 KR 950014505B1 KR 1019910014385 A KR1019910014385 A KR 1019910014385A KR 910014385 A KR910014385 A KR 910014385A KR 950014505 B1 KR950014505 B1 KR 950014505B1
Authority
KR
South Korea
Prior art keywords
bus
priority
clock
cycle
data
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
KR1019910014385A
Other languages
English (en)
Other versions
KR920006858A (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 KR920006858A publication Critical patent/KR920006858A/ko
Application granted granted Critical
Publication of KR950014505B1 publication Critical patent/KR950014505B1/ko
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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/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
    • 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)

Abstract

내용 없음.

Description

버스 조정 최적화 장치 및 버스 조정 통과 최적화 방법
제1도는 본 발명을 포함하는 컴퓨터 버스 관리 장치의 블럭도.
제2도는 본 발명을 구현하기 위해 단일 소스로부터 2개의 중복되지 않는 클럭 사이클을 발생하기 위한 각 외부 장치와 결합된 회로의 개략도.
제3도는 제2도의 회로에 의해 발생되는 중복되지 않는 사이클을 도시하는 타이밍도.
제4도는 예시적으로 "5"(0101)로서 가정한 고정 우선순위에 따라 상기 클럭 사이클중 최종 사이클의 종료시 버스 마스터를 승인하는 조정 회로의 개략도.
제5도는 동적으로 설정될 수 있는 우선순위에 따라 상기 클럭 사이클중 최종 사이클의 종료시 버스 마스터를 승인하는 회로를 제공하기 위해 제4도의 일부로 대체될 수 있는 개략도.
제6도는 연속 버스트 혹은 스트림 판독/기록 동작을 제공하기 위해 버스 요구, 버스 승인, 어드레스, 데이타 전송 및 인터록의 파이프라이닝을 도시하는 타이밍도.
* 도면의 주요부분에 대한 부호의 설명
10 : CPU 11 : 주메모리
12 : 시스템버스 13,14 : 외부장치
15 : 발진기 20,21 : 인버터
25 : AND게이트 26 : OR게이트
40 : 조정버스 41 : 래치
42 : OR회로
본 발명은 메모리(a memory) 및/또는(프로세서(processor)를 포함하는)여러개의 외부 장치(a plurality of external devices) 사이의 비전용 버스(a nondedicated bus)를 통한 데이타 전송(datatrasfer)을 관리하기위한 장치에 관한 것으로, 특히, 그 장치내에 합체되어 있고(incorporated), 쓸모없는 조정 사이클 및 대형 버스트 버퍼 (wasted arbitration cycles and large burst buffers) 를 제거 하는것에 의해 상기와 같은 외부 장치 사이의 우선순위(priority)를 보다 효율적으로 조정(arbitrate)하여, 전 대역폭(fullbandwidth)을 데이타전송에 이용할 수 있도록 하는 수단에 관한 것이다.
PS/2 하드웨어 인터페이스의 기술적 참조를 위한 l989년 11월부의 ''IBM Microchannel Architecture Supplement"에는, 현재 널리 사용되고 있는 채널 구조(a channel archltecture)가 기술되어 있다. 상기 문헌의 제30-33쪽에는 버스트 전송(burst transfer)과 국부 조정(1ocal arbitration) 및 버스 마스터(busmasters) 사이의 우선사용권(preemption)이 논의되어 있다. 여기에 기술되어 있는 방법이나, 직접 메모리액세스(directmemoryaccess DMA)용 채널 버스 조정(channelbusa巾itration)을 위해 현재 사용되는 방법 및 수단에 있어서는, 위너(winner)를 결정하기 위해 여러개의 외부 장치 사이의 우선순위를 조정하는 다수의 사이클이 필요하다. 이것은 데이타 전송을 위해 이용할 수 있는 시간을 감소시킨다.
지금까지 제안된 시스템에서는, 이들 조정 사이클중에 버스 제어의 승언(grant)이 허용되지 않는다. 이들 조정 사이클(arbltration cycles)은 대역폭의 이용가능성을 감소시키는 오버헤드(overhead)를 구성한다. 이와 같은 오버헤드를 감소시키기 위해, 충분하진 않지만 현재의 해결책은 데이타 전송을 백투백(back-to-back)(즉, 연속적이고 인터럽트되지 않는) 사이클의 버스트로 그룹(group) 지우는 것이다. 그러나, 이것은 바람직하지 않은 것이지만, 대형 메모리 버퍼(largememorybuffers) 및 자신들의 제어 회로의 형태로 추가적인 하드웨어를 필요로 하며, 이 제어회로의 동작은, 우선 사용이 허용되야 하는 보다 높은 우선순위(higher priority)의 다른 DMA 전송 장치를 오버런(overnm)하지 않도록, 가변 간격으로 인터럽트되어야 한다. 외부 장치에 의한 버스의 허깅(hoggmg)을 피하기 위해, 정성들여 작성한 공평한 알고리즘들(elabo-rate faimess algorithms)이 고안되어 있지만, 이들은 논리적인 복잡성을 더 추가하여, 문제점을 제거하기보다는 단지 문제점을 약간 완화시키는 것에 불과하다.
따라서, 본 발명의 목적은 (l) 대형 버스트 버퍼 및 쓸모없는 조정 사이클을 제거하고, (2) 상이한 오리부 장치로부터 다중화된 연속적이고 순차적인 스트립 (a multiplexed continuous sequential stream) 으로 데이타 전송을 가능하게 하며, 더군다나 (3) 종래의 기술과 같이, 각 외부 장치의 우선순위를 동적으로(dynamically) 변화시킬 수 있는 최소의 조정논리(arbitration logic)를 사용하여 여러개의 외부 장치간의 버스 조정을 최적화하는 장치를 제공하는데 있다.
본 발명에 따르면, 대기 조정 사이클 및 버스트 모드 대기시간(wait arbltration cycles and burst modelatency) 이 제거된 컴퓨터 버스 관리 장치(a computer bus management apparatus)가 제공된다. 버스 인터페이싱 프로토콜(bus interfacing protoco1)은 이전에 필요했던 데이타 스트리밍 버퍼 및 조정 논리(datastreaming buffers and arbltration logic)의 필요성을 제거함으로써 단순화된다. 외부 장치는 버스 액세스(bus acces)가 승인될 때를 사전에 인지하여, 보다 고속의 파이프라인 동작(faster pipelined operation)을가능하게 한다. 또한, 최고의 요구중의 장치(the highest requesting dlvices)는, 모든 장치가 서비스를 받을(serviced)때까지 항상 순차적으로 버스 지배권(busmastership)을 승인받기 때문에, 긴 버스트 전송이 더이상 필요없게 되므로 허깅 및 공정성의 문제도 우선순위를 기초로 하여 자동적으로 해결된다.
이와 같은 장점들은 전송 사이클당 적어도 2개의 중복되지 않는 클럭(nonoverlappng clock)과 조정 사이클당 적어도 하나의 전송 사이클을 제공함으로써 달성된다. 각 외부 장치로부터의 조정 우선순위 요구(arbi-tration priority requests)는 클럭중 제1클럭의 상승에서만 조정 버스에 전송된다. 최고 우선순위(highestpriority)를 갖는 외부장치의 우선순위 코드(priority code)는 클럭중 최종 클럭의 종단에서 결정된다. 우선순위 코드는 고정되거나 또는 동적으로 변할 수도 있다.
본 발명은, (a)어드레스 버스 및 양방향 데이타 버스(an address bus and bidirectional data bus)에 의해 구현되거나, 또는 (b)보다 고속의 파이프라이닝을 위해서는, 데이타 버스가 단지 단일 방향으로 들어오고있는(incoming), 어드레스와 반-사이클 주기(half-cycle periods)로 다중화된 데이타를 위한 단방향 송츨버스(unidirectionaloutgoing bus)에 의해 구현되거나, 또는 (c)어드레스가, 긴 전송의 초기에 단 한번만 전송되며, 후속하는 데이타의 전송 사이클 동안에는 새로운 비순차적인 어드레스가 전송될 때까지 순차적으로 증가되도록 되어있는 단일의 비전용 양방향 버스에 의해 구현될 수 있다.
이하, 도면을 참조하여 본 발명을 설명한다.
제1도에 도시된 바와 같이, 본 발명을 구현하는 버스 관리 장치는 비전용 시스템 버스(nondedicated system bus) (12)를 통해 주메모리(main memory) (11) 및 (13), (l4)등과 같은 다수의 외부 장치(external devices)와 통신하는 중앙 처리 장치(a central processing unit : CPU) (1O)를 포함한다. 본 명세서에서 사용된 ''외부 장치''란 용어는 일반적으로 다른 CPU 및 디스크 화일(disk files)이나 프린터등과 같은 주변 장치를 망라하도록 의도된 것이다. 발진기(15)와 같은 신호원(signal source)은 각 외부 장치에 구형파 신호(square wave signals)를 공급한다. 도시된 바와 같이, 발진기(oscillator) (15)는 CPU로부터 분리되어 있지만, 필요에 따라서는, 그 신호-제공 기능이 CPU에 의해 공급될 수도 있다.
본 발명의 한 특징에 따르면, 버스 제어기 또는 DMA 제어기가 필요없다고 하는 것에 유의해야 한다.
제2도에 도시된 바와 같이, 각각의 외부 장치(13,14)는 한쌍의 인버터(a pair of inverters)(20,21)와 한쌍의 버퍼 드라이버(a pair of buffer drivers) (22,23)를 포함한다. 밭진기(15)의 출력이 포지티브(positive)로 되면, 라인(24)에 신호가 발생한다. 이 신호는 AND 게이트(25)에 직접 인가되며, 또한 인버터(20,21)에 의해 반전된 후 재반전되어 상기 AND 게이트에 간접적으로 인가되어 시간 지연을 초래한다. 시간 지연의 종료시에, AND 게이트(25)로부터 출력된 신호는 OR 게이트(26)에 의해 반전되고, 이것에 의해 버퍼 드라이버(22)가 클럭(C1)을 포지티브로 구동한다. 한편, OR 게이트(26)의 출력은 게이트(27)에서 인버터(20)로부터의 다소 지연된 출력과 AND 연산이 이루어지고, 이것에 의해 OR 게이트(28)가 신호를 반전시켜서 버퍼드라이버(23)가 클럭(C2)을 포지티브로 구동한다. 게이트(25,26)는 게이트(27,28)와 동일하다.
제3도에는 각 클럭(C1 및 C2)의 포지티브 및 네거티브 사이클의 타이밍이 도시되어 있다. 클럭(C1 및 C2)은 180° 위상차가 난다. 그러나, 본 발명의 한 특징에 따르면, 인버터(21)로 인한 지연으로 인해, 클럭(C1)의 사이클 길이가 클럭(C2)의 사이클 길이보다 약간 짧게되고, 그 결과 클럭 사이클은 중복되지 않게 된다. 예를들면, 발진기(15)의 사이클 길이가 100나노 초(ns)라고 가정하면, 포지티브 클럭(C1)의 위상 길이는 상승 에지(leading edge)로부터의 2 1/2ns 지연과 하강 에지(trailing edge)에 부가되는 1 1/2ns 지연에 따라 49ns가 되며, 그 결과, 네거티브 클럭(C1)에 대해서는 51ns의 위상 길이로 된다. 그러나, 포지티브 클럭(C2)은 상승 에지로부터의 2 1/2ns 지연과 하강 에지에 부가되는 2ns의 지연에 따라 49.5ns라고 하는 약간 긴 위상 길이를 갖게 되며, 그 결과 네거티브 클럭(C2)에 대해서는 50.5ns의 위상길이로 된다.
점선(29,30,31)(제2도 참조)은 바람직하게는 진단 테스트(diagnostic test)의 목적을 위해 제공된 접속으로서, 통상적으로 비활성(inactive)이며, 여기서는 단지 완전성(compliteness)을 기하기 위해 도시한 것이다. 라인(29)에 있어서,의 네거티브 신호는 클럭(C1)을 억제(suppress)하여, 그 결과, 클럭(C2)만이 활성상태로 된다. 유사하게 라인(30)에 있어서,의 네거터브 신호는 클럭(C2)을 억제하여, 그 결과, 클럭(C1)만이 활성 상태로 된다. 라인(31)에 있어서,의 포지티브 신호는 클럭(C1 및 C2) 양자를 지속적으로 포지티브로 유지하기 위해 반전 OR 게이트(26,28)를 조정(condition)할 것이다.
본 발명의 다른 특징에 따르면, 모든 외부 장치(13,14)는 사이클 초기의 동일한 사전선택된 시간에 즉 제1클럭(C1)의 상승시에, 모든 외부장치가 언제 버스 마스터로 될 것인가를 알고 있다. 조정 요구는 인코드된 조정 버스(40)(제4도 참조)상에서 클럭(C1)의 상승시예 변경될 수 있을 뿐이며, 그후 안정되어(stable)최종클럭(C2)의 하강시에 버스 마스터를 승인하게 될 것이다.
제4도를 참조하면, 라인 AR0, AR1, AR2, AR3 및 -Lock는 조정 버스(40)에 접속된 OR 도트(OR dot)이다. 버스(12)로의 액세스를 원하는 모든 외부장치(13,14)는, 자신의 판독(Read) 또는 기록(Write)요구를 클럭(C2)에 의해 셋트되는 래치(도시하지 않음)에 기록(record)한다. 이러한 요구는 클럭(C1)에 의해 클럭되는 자기 버스 요구 극성 유지 래치(Own Bus Request Polarity Hold Latch)(41)를 거쳐서 통과한다. 래치(41)는 회로(42)로 진행하는 포지티브 출력부를 갖는다. 만일 조정 버스(40)상에 보다 높은 우선순위가 없다면, ARO의 레벨이 포지티브로 되어, OR 회로(42)는 네거티브 출력을 제공하는 인버터로서 작용한다. 이출력은 (43)에서 반전되어, 포지티브의 버스 요구 최고 1(posltlve Bus Request Highest 1)로 된다. 이 요구는 반전 드라이버(44)에 의해 반전되어, 조정 버스(40)상에 네거티브 AR1 레벨로서 주어진다. 이 요구는 버스 요구 최고 3과 함께 통과하여, 요구중의 장치(13 또는 14)가 버스 마스터로 될 것이다.
만일 조정 버스(40)상의 다른 장치가 최고 레벨 AR0의 활성상태를 갖고 있다면, 버스로부터 OR-반전회로(42)로의 AR0 라인의 신호는 네거티브로 되고, 그 결과, 회로(42)로부터의 포지티브 출력으로 되며, 이것은 라인 AR1 및 AR3 상의 버스 요구로부터의 어떠한 출력도 차단한다. 회로(42)로부터의 포지티브 출력은 또한 AND-반전 회로(45)로 하여금 조정 버스(40)의 AR3 분기(branch)로의 어떠한 요구의 통과도 차단하도록 한다.
제4도에 도시된 바와 같이, 우선순위는 5로 고정된다. 따라서, 코드 5에 대해서는, 4-비트 코드에 있어서,의 자기 우선순위(Own Priority)가 비트 AR1 및 AR3이며, AR3는 최하위 비트이다.
만일 AR2인, 외부 장치로부터의 보다 높은 우선순위 비트가 활성상태인 경우에는, (46)에서 반전되어, AND-반전 회로(45)로의 입력 극성을 포지티브로 변화시킬 것이다. AND-반전 회로(45)로의 이들 입력중 어느 한 입력이 포지티브이면, 상기 회로의 출력은 네거티브로 될 것이며, 이 경우에, 인버터 드라이버(47)를 통해서는 AR3에 네거티브 출력이 나타낼 수 없다.
만일 어떤 다른 외부 장치로부터 AR0 또는 AR2 우선순위 요구가 없다면 AND-반전 회로(45)로의 양입력(bothinputs)은 네거티브로 될 것이다. 그런 다음, 회로(45)의 출력은 버스 요구 최고 3의 출력을 포지티브로 한다. 이 출력은 인버터 드라이버(47)에 의해 반전되어 AR3 네거티브 활성 출력으로서 나타난다. AND-반전 회로(45)의 출력(이 경우에는 버스 요구 최고 3)은 또한 그의 자기 우선순위를 디코드한 것으로 클럭(C2) 동안에 자기 우선순위 극성 유지 래치(48)를 사전 조정(precondition)한다. 래치(48)는 클럭(C2)의 종료시 조건에 따라 래치할 것이다.
본 발명의 한 특징에 따르면, 자기 우선순위 래치(48)가 일단 래치되면, 이것은 다음의 전송 사이클을 승인하기 위해 이어지는 사이클상에 자기 버스 승인 극성 유지 래치(49)를 셋트할 수 있다. 자기 우선순위 래치(48)의 출력은 AND 게이트(50)를 통과하며, OR-반전 게이트(51)에 의해 반전되어, 클럭(C1) 초기에 자기 버스 승인 래치(49)에 의해 래치될 것이다. 이것은 특정 장치에 그것이 그 전송 사이클의 버스 마스터이다라고 하는 신호를 전송한다.
이러한 우선순위 결정전에 버스 마스터였던 이전의 장치는 비록 다른 외부 장치의 우선순위 래치(48과 같은)가 래치되었다 할지라도 그 사이클을 연장시킬 수 있다. 이것은 이전의 마스터가 버스(12)를 해제(release)할 때까지 다음의 사이클을 지연시킨다. 지연 기능은 AND 게이트(50)로의 제2입력에 의해 제어되는데 이 입력은 임의의 로크 극성유지 래치(Any Lock polarity hold latch)(52)로부터의 출력이다. 래치(52)는 버스(40)상의 -Lock 신호로부터 이전의 클럭(C2)에 의해 래치되어 있을 것이다. 지연은, 클럭(C2)의 임의의 수의 사이클에 내해서 있을 수 있다.
연장된 사이클이 완료되는 즉시, Lock 신호는 클럭(C1)시점에서 이전의 버스 마스터에 의해 해제된다.이것에 의해, 자기 버스 승인 래치(49)는, 현재의 조정 우선순위를 우선 사용하기 위해, 보다 높은 우선순위 요구가 그 사이에 수신되지 않는 클럭(C2)에서 해제되는 임의의 로크 래치(52)에 의해 제어되는 다음의 클럭(C1)에서 파이프라인 방식으로 진행할 수가 있다.
이제, 저속 종속 수신기(a slow slave receiver)로 인해, 또는 저속 종속 수신기가 버스트 모드의 실시를 원하기 때문에, 한 장치가 2개 이상의 클러 사이클을 연속적으로 취하길 원한다고 가정한다. 이 장치는AND-반전 회로(54)를 통해 클럭(C2)에서 그의 자기 로크 극성 유지 래치(53)를 래치할 것이다. 자기 연장 요구(Own Extend Request)는 그것이 또한 AND-반전 회로(54)에 나타나기 전에 다른 래치(도시되지않음)로 클럭(C1)에 의해 셋트되어야 한다.
인버터-드라이버(55)를 통과한 AND-반전 회로(54)의 동일 출력은 자기 로크 래치(52)를 세트시키고, 또한 조정 버스(40)상에서 공통 -Lock 신호를 구동시킨다. 자기 로크 래치(Own Lock Latch)(53)가 셋트된 채로 있는 한, 그 포지티브 출력은 복수의 사이클 동안 자기 버스 승인(Own Bus Grant) 래치(49)를 유지시키기 위해 OR-반전 회로(51)에서 OR 논리 연산 처리된다 또 일단 연장 사이클이 완료되면 자기 로크 래치(53)는 클럭(C2)에 의해 리셋트될 것이며, 자기 버스 승인 래치(49)는 클럭(C1)에 의해 리셋트될것이다. 이것에 의해 -Lock 신호를 사라지게(disappear)할 수 있다. 이제 모든 외부 장치는 연속적인 데이타 전송을 계속하도록 자유롭게 될 것이다.
인버터-드라이버(56,57)는 내부적으로 비활성 상태이며, 이들의 입력은 우선순위 코드 0101의 발생에 관련되어 있지 않기 때문에 접지되어 있다. 그러나, 버스(40)로부터 외부 입력에 의해 활성상태를 유지한다.
버스(12)상의 데이타를 게이트(gate)하기 위한 파이프라인 타이밍(pipelined timing)은 클럭(C2)에서 자기 버스 승인 래치(49)로부터의 포지티브 출력을 자기 승인 지연 래치(58)로 셋팅하고, 클럭(C1)에서 래치(58)의 출력을 자기 데이타 전송 래치(59)로 셋팅함으로써 얻어진다. 래치(59)로부터의 출력은 버스(12)로의 또는 버스(12)로부터의 데이타를 게이트하는 타이밍 신호이다.
제5도는 우선순위 코드가 동적으로(dynamically) 변경될 수 있도록 회로(65)(제4도에서 일점쇄선으로 둘러쌓여 있음)를 대체할 수 있는 회로를 도시하고 있다. 16개까지의 상이한 우선수위를 제공하는 4비트 우선순위 코드는 초기 프로그램 로드(Initial Program Load:IPL)시에 있어서,의 같은 동작의 개시시에 레지스터(70)에 셋트된다. 이 회로(65)는 4개의 인버터 드라이버(71,72,73,74)를 포함한다. 이들 드라이버는 오픈 콜렉터(open collector) 또는 도트 드라이버(dotting drivers)이다. 이들 드라이버는 AND 게이트(75,76,77,78)에 의해 각각 구동되는 조정 비트 AR0, ARl, AR2, AR3를 셋업(setup)시킨다. 이들 AND 게이트는 실제적으로 단일 회로인 2개의 복합 논리 게이트(complex logic gates)(79,80)를 이용하여 최고 우선순위를 결정한다.
게이트(79)는 2개의 AND 게이트(81,82)와, 하나의 3-방향(three-way) OR-반전 게이트(83)를 포함한다. OR-반전 제이트(83)는 보다 낮은 요구 라인(1ower request lines) ARl, AR2, AR3 모두를 금지(ihibit)시킨다. 보다 높은 우선순위(higher priority)가 조정 버스(40)상에서 외부적으로 활성화되면, 게이트(83)는 또한 자기 우선순위(Own Priority) 회로(84)를 금지시킨다. 만일 AR0가 활성상태이고, 레지스터(70)의 극성 유지 래치 PRO 출력이 활성상태가 아니면, OR-반전 회로(83)를 통해 AND 게이트(81)는 AR1, AR2, AR3와 자기 우선순위 신호를 금지시킨다.
유사하게 AND 게이트(82)에 의해서는 만일 AR1이 활성상태이고, 극성유지 래치 PR1이 활성상태가 아니면, ARl, AR2, AR3 및 자기 우선순위 신호가 금지되고, 그 결과 조정은 장치가 서비스를 받게 될 다음의 장치로 되지 않도록 한다.
반전 게이트(83)로의 최종 입력은, 클럭(Cl)에 의해 셋트되어 데이타 전송을 위한 조정 사이클을 요구하는 버스 요구 극성 유지 래치(도시되지 않음)의 출력이다. 각 조정 사이클은 하나(도시된 바와 같음) 또는 그 이상의 고정 클럭 사이클과 동일한 사전선택된 길이를 갖는다. 전송 사이클당 클럭 사이클의 수는 활성버스 마스터에 의해 어드레스되는 디바이스의 동작 속도에 관계없다. +버스 요구 극성 유지 래치 라인(+Bus Request polarity hold latch line)은 만일 그것이 활성상태가 아니면 네거티브로 될 것이다. 이것은 자동적으로 모든 블럭(76,77,78,84)을 금지시킨다. AND- 반전 회로(84)의 출력이 포지티브이면, 이것은 상기회로(84)가 현재 조정(arbitration)을 수신하여 다음의 순차적인 클럭 사이클로 전송을 시작할 수 있는 최고 우선순위의 장치라는 것을 나타낸다.
복합 논리 게이트(80)는 AND 게이트(85 및 86)를 포함하고 있는데 이들 게이트는 자신들이 2개의 보다낮은 조정 버스 비틱(two lower arbltration bus bits)(AR2 및 AR3)를 취급한다는 것을 제외하고는 게이트(81,82)와 유사하게 동작한다. 또한 OR- 반전 회로(87)는 보다 낮은 2비트를 위한 회로(83)와 동일한 기능을 갖고 있지만, +버스 요구 극성 유지 래치(도시되지 않음)의 접속을 필요로 하지않는데, 이는 그 출력이 이미 모든 게이트(76,77,78,84)로 진행하는 회로(83)에 의해 상기 회로(87)의 출력이 이미 제어되기 때문이다. 따라서, OR- 반전회로(87)의 출력은 조정 버스(40)의 AR3 라인상의 최하위 비트(the lowest signif-icantbit)와 또, 그의 래치를 위한 자기 우선순위 게이트(84)를 제어할 뿐이다.
조정 버스(40)의 AR0 라인상의 최상위 비트(the most significant bit)가 최고 비트이다. 그 비트를 구동하는 어떠한 장치도 자동적으로 최고 우선순위를 갖게 될 것이다. 만일 레지스터(70)에서 마이크로프로세서세트의 우선순위가, 특정의 장치가 우선순위 PR0 또는 보다 높은 활성상태의 비트를 갖는다는 것을 나타내는 경우에는, 역시 클럭(C1)에 의해 셋트되는 임의의 버스 요구 극성 유지 래치(도시되지 않음)가 조정 버스(40)의 AR0 라인을 자동적으로 구동시킬 것이다 이 경우에 이 비트는 항상 활성상태가 되며 금지될 필요가 없다.
제6도는 기술에 따라 어떠한 값의 주파수도 얻을 수 있는 프리-러닝(free-running) 발진기(OSC)(15)(제1도)를 이용한 각종 동작의 파이프라이닝(pipelining)을 도시하는 타이밍도이다. 현제의 기술은 100ns사이클을 이용하며 미래의 기술은 이미 50ns 이용에 대한 계획이 세워져 있다. 버스 요구는 클럭(Cl)의 개시시에 즉 발진기 사이클의 최초의 반분(half)에서 항상 변경될 수 있다. 버스 요구는 다음의 클럭(C1)까지 그대로 이다. 버스 승인도 클럭(C1)에 의해 셋트되지만, 버스 승인은 버스 요구 사이클 다음에 오며, 따라서 항상 1 사이클 후에 파이프라인 처리된다.
제6도는 최고의 A로부터 최저의 H까지 상이한 우선순위를 가진 다수의 장치를 도시한다. 제6도는 또한 이들 우선순위가 슬레이브가 그 각각의 타이밍내에서 데이타를 수신할 수 있도록 버스트 또는 저속 비스트리밍 슬레이브(slow nonstreaming slaves)에 의한 지연에 대하여 어떻게 연속한 전송 사이클을 형성하는가를 나타내고 있다. 본 명세서에서 사용된 ''슬레이브''라는 용어는 일반적으로 버스 마스터 장치가 통신하길 원하는 임의의 장치를 칭한다.
한 장치가 버스(12)를 획득할 때마다, 그것은 그의 자기 버스 승인 래치(제4도의 49와 같은)를 내부적으로 래치할 것이다. 이 래치는 조정을 획득하는 장치를 위한 현재의 사이클을 제어한다. 이때, 그 장치는 슬레이브와 통신하기 위한 사이클을 담당한다. 이 장치는 자기 버스 승인 사이클동안 버스(12)상에 어드레스를 전송한다. 이것은 또한 그것이 +판독/-기록 신호상의 판독 또는 기록 기능의 실시를 원하는지 아닌지도 표시한다. 만일 버스 마스터가 버스트 모드에서 동작하길 원한다면, 즉 다음의 최고 우선순위 장치가 들어오기 전에 사이클의 짧은 버스트를 위한 다른 장치를 로크 아웃(1ock out)하길 원한다면, -Lock 신호도 활성상태로 될 것이다. 만일 1개의 데이타 전송이 발생한 후, 슬레이브가 그가 소유하는 반복된 어드레스를 발견한 경우에는, 슬레이브는 그것이 데이타를 수신하거나 전송하기에 필요한 시간을 연장시키고자 원할 수도 있다. 이것은, 기본 버스 사이클(baslc bus cycle)의 하나 이상의 증분에서 버스 마스터가 사용하는 제4도에 도시된 바와 비슷한 논리를 갖는 -Lock 신호를 셋팅함으로써 수행될 수 있다. 각 장치로부터의 응답라인(response line)은 그것이 버스(12)상에 데이타를 전송했는지 또는 수신했는지를 표시한다. -Lock 신호는 또한, 슬레이브가 어떠한 연속 사이클도 취할 수 없다는 것을 표시하는 슬레이브로부터 다음의 사이클상의 응답으로 될 수 있다.
제6도에 도시된 바와 같이, 버스 요구 다음에는 버스 승인 및 버스 마스터에 의해 수행되는 어드레스 지정이 이어지며, 판독 또는 기록 기능이 파이프라인 동작의 제3시퀀스(the third sequence)로서 발생한다.
제6도는 각종 동작 모드에서의, 슬레이브 P-W로의 또는 슬레이브 P一W로부터의 각종 마스터 A-H에의한 기록 및 판독을 묘사하고 있다.
이상 설명한 바와 같이, 본 발명은 어드레스 버스와 양방향 데이타 버스에 의해 구현되었다. 그러나 보다 고속인 파이프라이닝에 대해서는 본 발명은 어드레스 및 반-사이클 주기로 다중화되는 데이타를 의한 단방향 출력 버스에 의해 구현될 수도 있으며, 데이타 버스는 단지 입력 단방향 데이타 버스(incoming unidirectional data bus)로 될 수 있을 뿐이다.
또, 본 발명은 필요에 따라, 단일 비전용 양방향 버스에 의해 구현될 수도 있다. 이런 경우 어드레스는 긴전송(long transfer)의 개시시에 단지 한번만 보내질 것이고, 후속 데이타 전승 사이클 동단 어드레스는 새로운 비순차 어드레스가 보내지지 않는 한 순차적으로 승가될 것이다. 특히 긴 전송의 개시시에 장치는 22사이클의 버스트를 취할 것이며, 제1사이클 동안에는 어드레스를 전송하고 제2 및 후속 사이쿨 동안에는 데이타를 전송하게 된다. 이 경우 제6도는 어드레스 버스를 제거하기 위해 수정될 것이며, 이것에 의해 조정 버스는 다중화된 외부 장치를 위해 간접 어드레스 포인터(indirect address pointer)로 될 것이다.
본 발명이 바람직한 실시예에 관해 도시되고 설명되었지만, 당업자는 본 발명의 범위 및 교시를 벗어나는 일없이 이들 실시예에서 그 형태 및 상세한 기술의 변경이 이루어질 수도 있다는 것을 이해할 것이다. 따라서, 본 명세서에 공개된 장치 및 방법은 단지 예시적인 것에 지나지 않으며, 본 발명은 청구범위에서 정해진바에 의해서만 제한될 것이다.

Claims (17)

  1. 데이타 대기시간 버퍼(data latency buffers)를 필요로 하는 일없이, 메모리(a memory)(11) 및 조정우선순위 (an arbitration priority) 를 각각 갖는 다수의 외부 장치 (a plurality of external devices) 를 상호접속시키는 비전용 버스(a nondedicated bus)(12)를 통한 직접 메모리 액세스(direct memory access.DMA)데이타 전송중에 버스조정(bus arbitration)을 최적화하기 위한 장치에 있어서, 상기 외부장치의 각각에 접속되는 단일 조정 버스(a single arbiration bus) (40) ; 상기 비전용 버스에 접속되고, 쿨럭 사이클(clockcycle)당 연속적인 시퀀스의 2개의 중복되지 않은 클럭 신호(nonoverlapping clock signal) (C1,C2) 데이타 전송의 판로를 승인(acknowledge)하기 위해 상기 장치중 응답하는 장치를 위해 필요한 클럭 사이클의 수와 동일한 데이타 전송 사이클 및 사전선택된 클럭 사이클의 수와 동일한 조정 사이클(an arbitrationcycle)을 공급하기 위한 클럭 발생 수단(clock generating means) ; 상기 클럭 발생 수단 및 조정 버스에 동작 가능하게 접속되고, 1개의 시퀀스내에서 상기 클럭 신호의 제1의 상승 에지(beginning edge)에만 응답하여 각 외부 장치에서 상기 조정 버스로 조정 우선순위 버스 요구(arbitration priority bus requests)를 송신하기 위한 수단 ; 상기 클럭 발생 수단 및 각각의 장치에 동작가능하게 접속되고, 동일한 상기 1개의 시퀀스내에서 조정 사이클(arbitration cycle)의 상기 클럭 신호중 최종 신호의 하강 에지(ending edge)에 응답하여 버스 마스터가 될 다음의 회부 장치로서 그 자신을 지정하기 위해 최고 버스 우선순위(the highestbus prlority)를 갖는 상기 외부 장치를 동적으로(dynanncally) 조절하기 위한 수단과, 제1래치 수단(49,59)을 구비하고, 상기 클럭 발생 수단 및 비전용 버스에 동작 가능하게 접속되며 상기 지정된 버스 마스터(deslgnated bus master)와 상기 메모리 또는 그 밖의 외부 장치사이에서 다음에 활성 상태로 되는 버스 마스터(active bus master)가 제어를 포기한 후의 다음의 클럭 사이클상에서 시작되는 상기 비전용 버스를 경유하여 단일 데이타 전송(a single data transfer) 또는 가변 버스트 길이 데이타 전송(variable burst length data transfer)을 위해 상기 1개의 시퀀스 동안 사이클의 제1클럭 신호의 시작에 응답하여 어드레스를 전송하고, 상기 1개의 시퀀스에 이어지는 다음 사이클동안 상기 제1클럭 신호의 시작에 응답하여 데이타를 전송하는 전송 수단을 포함하는 버스 조정 최적화 장치.
  2. 제1항에 있어서,, 상기 조정 버스에 동작가능하게 접속되고 상기 외부 장치의 적어도 하나의 상기 우선순위를 지정하는 우선순위 코드(a priorlty code)를 기억하기 위한 레지스터(a register)(70)와 사이 레지스터에 상기 비전용 버스를 경유해 접속되고 상기 우선순위를 변경하기 위해 상기 우선순위 코드를 동적으로 수정하기 위한 마이크로프로세서(a microprocessor)를 포함하는 버스 조정 최적화 장치.
  3. 제1항에 있어서, 상기 조정 버스에 접속되고, 상기 각 외부 장치들 각각의 상기 우선순위를 설정하는 우선순위 코드를 사전선택 및 고정시키기 위한 회로를 포함하는 버스 조정 최적화 장치.
  4. 제1항에 있어서, 상기 조정 버스를 구동시키기 위해 접속되고 상기1개의 시퀀스내에서 제1클럭 신호의 상기 상승 에지에 의해 설정되는 수단(41)과, 상기 조정 우선순위를 수신하기 위해 상기 조정 버스에 접속되고 버스 마스터 우선순위(bus master priority)에 대해 모든 버스 요구를 동기화시키기 위해 상기 1개의 시퀀스내에서 상기 최종 클럭 신호의 상기 하강 에지에 의해 설정되는 다른 래치 수단(48)을 포함하는 버스 조정 최적화 장치.
  5. 제1항에 있어서, 상기 조정 버스 및 클럭 발생 수단에 동작가능하게 접속되고 상기 제1클럭 사이클의 상기 시작에 의해 초기화되는 장치중 하나의 장치로부터의 버스 요구에 응답하여 상기 단일 조정 버스상에서 상기 조정 사이클중 제1열(a first tier)의 파이프라이닝을 정의하고, 상기 최종 클럭 사이클의 종료시상기 장치중 하나의 장치에 대한 우선순위 버스 승인(a priority bus grant)에 응답하여 조정으로 인한 어드레스 또는 데이타 전송 사이클의 손실없이 2열 중복 방식(a two-tiered overlapping fashion)으로 상기 조정 사이클중 제2열의 파이프라이닝을 정의 하는 수단과, 상기 비전용 버스에 접속되고, 제3열의 파이프라이닝까지 상기 비전용 버스상에 어드레스 및 데이다 전송을 파이프라이닝하는 수단을 포함하는 버스 조정최적화 장치.
  6. 제1항에 있어서, 상기 전송 수단은 상기 비전용 버스를 통해 한번에 하나씩 상이한 외부 장치로부터 다중화된 연속 순차 스트립(a multlplexed continuous sequential stream)내의 데이타 전송 대역폭(datatransfer bandwidth)을 감소시키는 일없이 데이타를 백-투-백(back-to-back)으로 전송하기 위한 신호를 발생하기 위해 한번에(at a time) 상기 외부 장치중 하나의 장치로부터의 버스트 전송 명령(a burst transfer command)에 응답하는 버스 조정 최적화 장치.
  7. 제1항에 있어서, 상기 제1래치 수단과 분리된 두개의 래치를 구비하고, 상기 클럭 발생 수단 및 조정 버스에 동작가능하게 접속되며, 상기 1개의 시퀀스내에서 상기 제1클럭 신호에 의해 상기 래치들(자기연장(Own Extend))중 하나의 래치의 설정에 응답하고, 또한 상기 1개의 시퀀스 바로 앞의 시퀀스내에서 상기 최종 클럭 신호에 의해 상기 래치들(53)중 나머지 래치의 설정에 응답하여, 추가적인 전송 사이클 또는사이클들(additional transfer cycle or cycles)을 위해 상기 활성 버스 마스터가 상기 외부 장치중의 하나와 통신을 유지하는 것을 허용하는 수단을 포함하는 버스 조정 최적화 장치.
  8. 제1항에 있어서, 상기 장치 및 클럭 발생 수단에 접속되고 (a) 다음에 활성 상태로 되는 버스 마스터가 로킹 주기(locking period)를 초기화함으로써(-로크 신호(-Lock signal)에 의해) 둘 이상의 전송 사이클을 위한 버스 지배권(busmastership)을 유지하는 경우 및 (b) 보다 높은 우선순위의 장치가 상기 로킹주기동안 조정 우선순위를 획득하는 경우에 상기 버스 마스터로 되는 라인에서 다음번으로 지정되어 있는 장치를 우선 사용하기 위한 수단을 포함하는 버스 조정 최적화 장치.
  9. 제1항에 있어서, 상기 비전용 버스는 반-사이클 주기(half-cycle periods)에서 다중화된 데이타와 어드레스를 출력하기 위한 단방향 버스(unidirectlonal bus) 및 단방향으로 입력하는(unidirectionalincoming) 데이타 버스를 포함하는 버스 조정 최적화 장치.
  10. 제1항에 있어서, 상기 비전용 버스는 어드레스 및 데이타를 위한 단일 양방향 버스(a single bidirectional bus)이며, 상기 클럭 발생 수단 및 비전용 버스에 동작가능하게 접속되어, 긴 전용의 개시시에만 어드레스를 전숭하고, 이어지는 데이타 전송 사이클 동안에는 상기 어드레스가 연속적인 시퀀스를 구성하고 있는 동안 상기 어드레스를 순차적으로 증가시키는 수단을 포함하는 버스 조정 최적화 장치.
  11. 메모리 및/또는 조정 우선순위를 각각 갖는 다수의 외부 장치간의 비전용 버스를 통한 직접 메모리액세스(DMA) 데이타 전송중에, 버스 조정 통과(a bus arbitration pass)를 최적화하기 위한 방법에 있어서, 클럭 사이클당 연속적인 시퀀스의 2개의 중복되지 않은 클럭 신호(C1,C2) 데이타 전송의 완료를 승인하기위해 상기 장치중 응답하는 장치를 위해 필요한 클럭 사이클의 수와 동일한 데이탈 전송 사이클 및 사전 선택된 클럭 사이클의 수와 동일한 조정 사이클을 공급하는 단계 ; 상기 시퀀스중 1개에서 상기 클럭 신호의 제1의 상승 에지에서만 상기 외부 장치를 위한 조정 우선순위 버스 요구를 단일 조정 버스로 송신하는 단계 ; 상기 1개의 시퀀스내에서의 상기 최종 클럭 신호의 종단에 있어서, 버스 마스터가 될 다음의 외부 장치로서 그 자신을 자동적으로 지정하기 의해 다음에 최고 버스 우선순의 코드(the highest bus priority code)를 갖는 상기 외부 장치를 동적으로 조절함으로써, 상기 다음의 외부 장치에 우선순위 버스 승인(a prioritybus grant)을 구성하는 단계 ; 다음에 활성 상태로 되는 버스 마스터가 상기 비전용 버스의 제어를 포기할때까지 임의의 보다 높은 우선순위 장치가 다음에 현재 지정된 우선순위 장치를 우선 사용하도록 상기 조정통과(arbitration pass)를 계속적으로 반복하는 단계와 상기 지정된 버스 마스터와 메모리 또는 그 밖의 외부 장치사이에서 상기 다음에 활성 상태로 되는 버스 마스터가 제어를 포기한 후의 다음의 사이클동안 상기비전용 버스를 경유하여 어드레스 및 데이타를 전송하기 위한 단계를 포함하는 버스 조정 통과 최적화 방법.
  12. 제11항에 있어서, 마이크로프로세서를 이용하여 프로그램의 초기화(initialization)동안 상기 외부 장치중 적어도 하나의 우선순의를 동적으로 변경시키는 단계를 포함하는 버스 조정 통과 최적화 방법.
  13. 제11항에 있어서, 어드레스 및 데이타를 전송하는 단계동안, 시퀀스 지연(sequence delays)없이 다중화된 연속 순찰 스트립으로 상이한 외부 장치로부터 상기 비전용 버스상에 데이타를 전송하는 단계를 포함하는 버스 조정 통과 최적화 방법.
  14. 제11항에 있어서, 데이타 전송과는 독립적으로 상기 단열 조정 버스상에 상기 조정 사이클의 버스 승인 및 버스 요구를 동시에 파이프라이닝하는 단계를 포함하는 버스 조정 통과 최적화 방법.
  15. 제11항에 있어서, 단일 데이타 전송을 완료시키기 위해 보다 느린 외부 장치를 위한 시간을 증가시키도록 상기 버스 마스터가 통신하기를 원하는 상기 외부 강치중 하나의 강치에게 상기 2개의 중븍되지 않은 클럭 신호의 상기 사이클 길이의 증가시에 전송 사이클을 연장시키는 것을 허락하는 단계를 포함하는 버스조정 통과 최적화 방법.
  16. 제11항에 있어서, (a) 상기 다음에 활성 상태로 되는 버스 마스터가 로킹 주기를 초기화함으로써 둘이상의 전송 사이클을 위한 버스 지배권을 유지하는 경우 및 (b) 보다 높온 우선순위의 장치가 상기 로킹주기동안 조정을 획득하는 경우에 버스 마스터로서 라인에서 다음번으로 지정된 상기 장치를 자동적으로 우선 사용하는 단계를 포함하는 버스 조정 통과 최적화 방법.
  17. 제11항에 있어서, 어드레스 및 데이타를 전송하는 단계동안 데이타가 데이타 전송 시퀀스를 완료시키는데 필요한 데이타 전송 사이클의 수를 사전에 인지할 필요없이 전송되는 버스 조정 통과 최적화 방법.
KR1019910014385A 1990-09-21 1991-08-21 버스 조정 최적화 장치 및 버스 조정 통과 최적화 방법 Expired - Fee Related KR950014505B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US58634990A 1990-09-21 1990-09-21
US586,349 1990-09-21

Publications (2)

Publication Number Publication Date
KR920006858A KR920006858A (ko) 1992-04-28
KR950014505B1 true KR950014505B1 (ko) 1995-12-02

Family

ID=24345380

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019910014385A Expired - Fee Related KR950014505B1 (ko) 1990-09-21 1991-08-21 버스 조정 최적화 장치 및 버스 조정 통과 최적화 방법

Country Status (18)

Country Link
US (1) US5195185A (ko)
EP (1) EP0476990B1 (ko)
JP (1) JPH0810445B2 (ko)
KR (1) KR950014505B1 (ko)
CN (1) CN1037553C (ko)
AU (1) AU639589B2 (ko)
BR (1) BR9103929A (ko)
CA (1) CA2050129C (ko)
CZ (1) CZ282214B6 (ko)
DE (1) DE69132344T2 (ko)
FI (1) FI914429A7 (ko)
HU (1) HU215867B (ko)
MX (1) MX173460B (ko)
NO (1) NO913707L (ko)
PL (1) PL167608B1 (ko)
PT (1) PT99006A (ko)
RU (1) RU2110838C1 (ko)
SG (1) SG42853A1 (ko)

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5559962A (en) * 1989-10-09 1996-09-24 Yamaha Corporation Data transmission system selecting both source and destination using addressing mechanism
US5461723A (en) * 1990-04-05 1995-10-24 Mit Technology Corp. Dual channel data block transfer bus
FR2675286B1 (fr) * 1991-04-15 1993-06-18 Bull Sa Circuit integre arbitreur de bus mca et utilisations d'un tel circuit.
US5454082A (en) * 1991-09-18 1995-09-26 Ncr Corporation System for preventing an unselected controller from transferring data via a first bus while concurrently permitting it to transfer data via a second bus
JPH05165762A (ja) * 1991-12-13 1993-07-02 Toshiba Corp Dmaコントローラ
EP0559408B1 (en) * 1992-03-04 1998-08-26 Motorola, Inc. A method and apparatus for performing bus arbitration using an arbiter in a data processing system
EP0559409B1 (en) * 1992-03-04 1998-07-22 Motorola, Inc. A method and apparatus for performing a bus arbitration protocol in a data processing system
US5341480A (en) * 1992-04-09 1994-08-23 Apple Computer, Inc. Method and apparatus for providing a two conductor serial bus
JPH05342178A (ja) * 1992-06-10 1993-12-24 Hitachi Ltd 調停回路およびそれを用いたデータ処理装置
US5313591A (en) * 1992-06-25 1994-05-17 Hewlett-Packard Company Computer bus arbitration for N processors requiring only N unidirectional signal leads
US5596749A (en) * 1992-09-21 1997-01-21 Texas Instruments Incorporated Arbitration request sequencer
US5553248A (en) * 1992-10-02 1996-09-03 Compaq Computer Corporation System for awarding the highest priority to a microprocessor releasing a system bus after aborting a locked cycle upon detecting a locked retry signal
US5553310A (en) * 1992-10-02 1996-09-03 Compaq Computer Corporation Split transactions and pipelined arbitration of microprocessors in multiprocessing computer systems
US5535395A (en) * 1992-10-02 1996-07-09 Compaq Computer Corporation Prioritization of microprocessors in multiprocessor computer systems
US5299196A (en) * 1992-11-12 1994-03-29 International Business Machines Corporation Distributed address decoding for bus structures
JPH06282528A (ja) * 1993-01-29 1994-10-07 Internatl Business Mach Corp <Ibm> データ転送方法及びそのシステム
US5546548A (en) * 1993-03-31 1996-08-13 Intel Corporation Arbiter and arbitration process for a dynamic and flexible prioritization
EP0619547A1 (en) * 1993-04-05 1994-10-12 Motorola, Inc. A method of requesting data and apparatus therefor
CA2115731C (en) * 1993-05-17 2000-01-25 Mikiel Loyal Larson Dynamically programmable bus arbiter with provisions for historical feedback and error detection and correction
US5517671A (en) * 1993-07-30 1996-05-14 Dell Usa, L.P. System for designating a plurality of I/O devices to a plurality of I/O channels and connecting and buffering the plurality of I/O channels to a single system bus
US6163848A (en) * 1993-09-22 2000-12-19 Advanced Micro Devices, Inc. System and method for re-starting a peripheral bus clock signal and requesting mastership of a peripheral bus
US5600839A (en) * 1993-10-01 1997-02-04 Advanced Micro Devices, Inc. System and method for controlling assertion of a peripheral bus clock signal through a slave device
US5524215A (en) * 1993-10-05 1996-06-04 Motorola, Inc. Bus protocol and method for controlling a data processor
EP0654743A1 (en) * 1993-11-19 1995-05-24 International Business Machines Corporation Computer system having a DSP local bus
US5519838A (en) * 1994-02-24 1996-05-21 Hewlett-Packard Company Fast pipelined distributed arbitration scheme
US6026455A (en) * 1994-02-24 2000-02-15 Intel Corporation Architecture and method for providing guaranteed access for a retrying bus master to a data transfer bridge connecting two buses in a computer system
US5533205A (en) * 1994-03-30 1996-07-02 International Business Machines Corporation Method and system for efficient bus allocation in a multimedia 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
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
US6256694B1 (en) * 1994-06-30 2001-07-03 Compaq Computer Corporation Distributed early arbitration
US5758106A (en) * 1994-06-30 1998-05-26 Digital Equipment Corporation Arbitration unit which requests control of the system bus prior to determining whether such control is required
US5568614A (en) * 1994-07-29 1996-10-22 International Business Machines Corporation Data streaming between peer subsystems of a computer system
US5598542A (en) * 1994-08-08 1997-01-28 International Business Machines Corporation Method and apparatus for bus arbitration in a multiple bus information handling system using time slot assignment values
US5634060A (en) * 1994-08-09 1997-05-27 Unisys Corporation Method and apparatus for high-speed efficient bi-directional communication between multiple processor over a common bus
US5559969A (en) * 1994-08-09 1996-09-24 Unisys Corporation Method and apparatus for efficiently interfacing variable width data streams to a fixed width memory
US6434638B1 (en) 1994-12-09 2002-08-13 International Business Machines Corporation Arbitration protocol for peer-to-peer communication in synchronous systems
KR0155269B1 (ko) * 1995-01-16 1998-11-16 김광호 버스 중재방법 및 그 장치
JP3320233B2 (ja) * 1995-02-06 2002-09-03 キヤノン株式会社 記録装置
US5701313A (en) * 1995-02-24 1997-12-23 Unisys Corporation Method and apparatus for removing soft errors from a memory
US5511164A (en) 1995-03-01 1996-04-23 Unisys Corporation Method and apparatus for determining the source and nature of an error within a computer system
US5740383A (en) * 1995-12-22 1998-04-14 Cirrus Logic, Inc. Dynamic arbitration priority
KR100201325B1 (ko) * 1996-03-30 1999-06-15 유기범 다중 프로세서 시스템에서 시스템 버스의 클럭속도를 향상시키는 방법
US5842025A (en) * 1996-08-27 1998-11-24 Mmc Networks, Inc. Arbitration methods and apparatus
US5970253A (en) * 1997-01-09 1999-10-19 Unisys Corporation Priority logic for selecting and stacking data
US5822766A (en) * 1997-01-09 1998-10-13 Unisys Corporation Main memory interface for high speed data transfer
US5859986A (en) * 1997-02-20 1999-01-12 International Business Machines Corporation Bandwidth efficient method and means for resynchronizing a master and slave over a clocked, arbitrated, bidirectional multistate parallel bus using local data recirculation, wait states, and cycle stealing
US5862353A (en) * 1997-03-25 1999-01-19 International Business Machines Corporation Systems and methods for dynamically controlling a bus
US5996037A (en) * 1997-06-03 1999-11-30 Lsi Logic Corporation System and method for arbitrating multi-function access to a system bus
US6006303A (en) * 1997-08-28 1999-12-21 Oki Electric Industry Co., Inc. Priority encoding and decoding for memory architecture
JP4019333B2 (ja) * 1998-02-13 2007-12-12 富士通株式会社 ヘッドic回路及び記録装置
US6047336A (en) * 1998-03-16 2000-04-04 International Business Machines Corporation Speculative direct memory access transfer between slave devices and memory
US6182112B1 (en) 1998-06-12 2001-01-30 Unisys Corporation Method of and apparatus for bandwidth control of transfers via a bi-directional interface
US6199135B1 (en) 1998-06-12 2001-03-06 Unisys Corporation Source synchronous transfer scheme for a high speed memory interface
US6330646B1 (en) * 1999-01-08 2001-12-11 Intel Corporation Arbitration mechanism for a computer system having a unified memory architecture
RU2144206C1 (ru) * 1999-02-19 2000-01-10 Вербовецкий Александр Александрович Оптоэлектронная вычислительная система с общей системной шиной
US6519666B1 (en) 1999-10-05 2003-02-11 International Business Machines Corporation Arbitration scheme for optimal performance
US8834864B2 (en) * 2003-06-05 2014-09-16 Baxter International Inc. Methods for repairing and regenerating human dura mater
KR101034493B1 (ko) * 2004-01-09 2011-05-17 삼성전자주식회사 화상 변환 장치, 화상 변환을 위한 직접 메모리 액세스장치 및 화상 변환을 지원하는 카메라 인터페이스
JP2006155387A (ja) * 2004-11-30 2006-06-15 Yamaha Corp コンピュータシステム
US7581051B2 (en) * 2005-05-16 2009-08-25 Microsoft Corporation Method for delivering interrupts to user mode drivers
JP4999925B2 (ja) * 2006-06-27 2012-08-15 トムソン ライセンシング 調停を実行する方法及び装置
GB2473505B (en) * 2009-09-15 2016-09-14 Advanced Risc Mach Ltd A data processing apparatus and a method for setting priority levels for transactions
US8713277B2 (en) * 2010-06-01 2014-04-29 Apple Inc. Critical word forwarding with adaptive prediction
CN111478840A (zh) * 2020-04-15 2020-07-31 联合华芯电子有限公司 用于总线系统的双速率仲裁中继设备
CN113821470B (zh) * 2020-06-19 2024-09-06 杭州中天微系统有限公司 总线设备、嵌入式系统和片上系统
RU2749911C1 (ru) * 2020-12-25 2021-06-21 Акционерное Общество "Крафтвэй Корпорэйшн Плс" Аппаратная реализация механизма использования одной памяти несколькими устройствами

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SU550650A1 (ru) * 1975-03-27 1977-03-15 Киевский Ордена Ленина Политехнический Институт Имени 50-Летия Великой Октябрьской Социалистической Революции Квадратичный преобразователь
US4481580A (en) * 1979-11-19 1984-11-06 Sperry Corporation Distributed data transfer control for parallel processor architectures
SU907536A1 (ru) * 1980-07-07 1982-02-23 Предприятие П/Я В-8117 Устройство дл сопр жени цифровой вычислительной машины с общей магистралью
US4453211A (en) * 1981-04-28 1984-06-05 Formation, Inc. System bus for an emulated multichannel system
FR2513407B1 (fr) * 1981-09-24 1987-01-16 Finger Ulrich Systeme d'arbitrage des demandes d'acces de plusieurs processeurs a des ressources communes, par l'intermediaire d'un bus commun
AU564271B2 (en) * 1983-09-22 1987-08-06 Digital Equipment Corporation Retry mechanism for releasing control of a communications path in a digital computer system
EP0340347B1 (en) * 1983-09-22 1994-04-06 Digital Equipment Corporation Bus arbitration system
DE3482810D1 (de) * 1983-09-27 1990-08-30 Trw Inc Multi-master-uebertragungsbus.
US4967344A (en) * 1985-03-26 1990-10-30 Codex Corporation Interconnection network for multiple processors
US4837677A (en) * 1985-06-14 1989-06-06 International Business Machines Corporation Multiple port service expansion adapter for a communications controller
US4924427A (en) * 1985-11-15 1990-05-08 Unisys Corporation Direct memory access controller with direct memory to memory transfers
US4949301A (en) * 1986-03-06 1990-08-14 Advanced Micro Devices, Inc. Improved pointer FIFO controller for converting a standard RAM into a simulated dual FIFO by controlling the RAM's address inputs
US4947368A (en) * 1987-05-01 1990-08-07 Digital Equipment Corporation Lookahead bus arbitration system with override of conditional access grants by bus cycle extensions for multicycle data transfers
DE3782500T2 (de) * 1987-12-23 1993-05-06 Ibm Gemeinsam genutzte speicherschnittstelle fuer datenverarbeitungsanlage.
US5001625A (en) * 1988-03-24 1991-03-19 Gould Inc. Bus structure for overlapped data transfer
US5016162A (en) * 1988-03-30 1991-05-14 Data General Corp. Contention revolution in a digital computer system
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
US5006982A (en) * 1988-10-21 1991-04-09 Siemens Ak. Method of increasing the bandwidth of a packet bus by reordering reply packets

Also Published As

Publication number Publication date
HUT58931A (en) 1992-03-30
CS287491A3 (en) 1992-04-15
RU2110838C1 (ru) 1998-05-10
FI914429A0 (fi) 1991-09-20
CZ282214B6 (cs) 1997-06-11
EP0476990A3 (en) 1993-08-04
EP0476990B1 (en) 2000-08-02
DE69132344T2 (de) 2001-02-15
BR9103929A (pt) 1992-05-26
KR920006858A (ko) 1992-04-28
HU215867B (hu) 1999-03-29
SG42853A1 (en) 1997-10-17
NO913707L (no) 1992-03-23
CA2050129C (en) 1996-05-14
CA2050129A1 (en) 1992-03-22
PT99006A (pt) 1993-10-29
HU913024D0 (en) 1992-01-28
PL167608B1 (pl) 1995-09-30
CN1060166A (zh) 1992-04-08
DE69132344D1 (de) 2000-09-07
JPH0810445B2 (ja) 1996-01-31
MX173460B (es) 1994-03-04
NO913707D0 (no) 1991-09-20
PL291778A1 (en) 1992-06-01
AU639589B2 (en) 1993-07-29
US5195185A (en) 1993-03-16
EP0476990A2 (en) 1992-03-25
JPH04246758A (ja) 1992-09-02
CN1037553C (zh) 1998-02-25
AU8261291A (en) 1992-03-26
FI914429A7 (fi) 1992-03-22

Similar Documents

Publication Publication Date Title
KR950014505B1 (ko) 버스 조정 최적화 장치 및 버스 조정 통과 최적화 방법
US4390969A (en) Asynchronous data transmission system with state variable memory and handshaking protocol circuits
JP2510799B2 (ja) デ―タ処理装置およびメモリコントロ―ラ
US5896516A (en) Method and apparatus for reducing propagation latency in a high speed crossbar switch
JPH08242250A (ja) 通信方法及び同期通信システム
US5859986A (en) Bandwidth efficient method and means for resynchronizing a master and slave over a clocked, arbitrated, bidirectional multistate parallel bus using local data recirculation, wait states, and cycle stealing
JP4404637B2 (ja) 局所同期回路間の情報交換
US5377334A (en) Fast asynchronous resource master-slave combination
US7945718B2 (en) Microcontroller waveform generation
US7590146B2 (en) Information processing unit
JP2006254434A (ja) データスイッチとデータ伝送方法
JPS6290742A (ja) 中央処理装置の性能を向上させる方法および装置
US5241629A (en) Method and apparatus for a high performance round robin distributed bus priority network
EP0130471A2 (en) Interface controller for connecting multiple asynchronous buses and data processing system including such controller
KR100487218B1 (ko) 칩 내장형 버스를 인터페이스하기 위한 장치 및 방법
US20030053573A1 (en) Microcontroller having a transmission-bus-interface
RU2256949C2 (ru) Способ и устройство дифференциального стробирования на коммуникационной шине
SU941978A1 (ru) Устройство дл обмена информацией
JPS63184859A (ja) 共有メモリ転送装置
JP2001136186A (ja) 多重通信装置
JPH03181093A (ja) マルチポートメモリ装置
JPS63247857A (ja) アクセス調停回路
JPS63285658A (ja) バス上のデ−タ衝突防止回路
JPH0895903A (ja) セグメントバスシステム及び同システムにおけるデータ転送方法並びにバス調停方法
JPS62263558A (ja) 計算機装置

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

R17-X000 Change to representative recorded

St.27 status event code: A-3-3-R10-R17-oth-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

R17-X000 Change to representative recorded

St.27 status event code: A-3-3-R10-R17-oth-X000

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

T11-X000 Administrative time limit extension requested

St.27 status event code: U-3-3-T10-T11-oth-X000

T11-X000 Administrative time limit extension requested

St.27 status event code: U-3-3-T10-T11-oth-X000

T11-X000 Administrative time limit extension requested

St.27 status event code: U-3-3-T10-T11-oth-X000

T11-X000 Administrative time limit extension requested

St.27 status event code: U-3-3-T10-T11-oth-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

G160 Decision to publish patent application
PG1605 Publication of application before grant of patent

St.27 status event code: A-2-2-Q10-Q13-nap-PG1605

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 6

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 7

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 8

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 9

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 10

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 11

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 12

L13-X000 Limitation or reissue of ip right requested

St.27 status event code: A-2-3-L10-L13-lim-X000

U15-X000 Partial renewal or maintenance fee paid modifying the ip right scope

St.27 status event code: A-4-4-U10-U15-oth-X000

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 13

FPAY Annual fee payment

Payment date: 20081126

Year of fee payment: 14

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 14

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20091203

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20091203

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000