KR930007049B1 - 다중처리기 시스템에서의 어드레스 버스 중재기 - Google Patents

다중처리기 시스템에서의 어드레스 버스 중재기 Download PDF

Info

Publication number
KR930007049B1
KR930007049B1 KR1019900021814A KR900021814A KR930007049B1 KR 930007049 B1 KR930007049 B1 KR 930007049B1 KR 1019900021814 A KR1019900021814 A KR 1019900021814A KR 900021814 A KR900021814 A KR 900021814A KR 930007049 B1 KR930007049 B1 KR 930007049B1
Authority
KR
South Korea
Prior art keywords
signal
arbitration
bus
address bus
address
Prior art date
Application number
KR1019900021814A
Other languages
English (en)
Other versions
KR920013158A (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 KR1019900021814A priority Critical patent/KR930007049B1/ko
Publication of KR920013158A publication Critical patent/KR920013158A/ko
Application granted granted Critical
Publication of KR930007049B1 publication Critical patent/KR930007049B1/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/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1663Access to shared memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Bus Control (AREA)

Abstract

내용 없음.

Description

다중처리기 시스템에서의 어드레스 버스 중재기
제1도는 본 발명의 중재기의 구성을 나타낸 블럭도.
제2도는 본 발명의 중재기가 중재를 수행하는 과정을 나타낸 플로우챠트.
본 발명은 여러개의 프로세서가 다수의 메모리를 공유하는 다중처리기 시스템에 있어서, 다수의 처리기에서 독립적으로 발생하는 데이터 전송을 충돌없이 원활히 처리하도록 한 다중처리기 시스템에서의 어드레서 버스 중재기에 관한 것이다.
종래에는 여러개의 프로세서가 다수의 메모리를 공유하는 다중처리기 시스템에서는 각 슬롯(slot)(한 슬롯에는 2개 이상의 요청기가 위치할 수 있음)에 어드레스 버스 요청 신호선을 할당하고, 단위 버스 주기에서 어드레스 버스의 사용을 요청한 모듈(Module)들 중에서 중재번호가 가장 큰 것에 한 주기동안 버스의 사용을 허가하는 우선순위 중재 규칙에 의존 하였으므로, 우선순위가 높은 모듈이 낮은 모듈에 비해서 버스의 사용기회가 많아지면서 각 모듈의 균형적인 동작이 불가능하게 되었다.
이에 따라 본 발명은 여러개의 처리기(Handler)에서 독립적으로 발생하는 데이터 전송을 충돌없이 원활히 처리하도록한 다중처리기 시스템에서의 어드레스 버스 중재기를 제공하는 것을 그 목적으로 한다.
이를 위하여 본 발명은 다중처리기 시스템에서 각 모듈들에게 공정한 중재를 수행하여 균형적인 동작이 이루어지도록 하고, 두개 이상이 모듈에서 동시에 버스를 사용하고자 할 경우에는 모든 모듈이 한번씩 버스를 사용할 때까지 버스의 사용허가를 한번 받은 모듈이 다시 사용할 수 없도록 하여 공정하고 효과적인 중재가 수행되도록 한다.
본 발명을 첨부 도면에 의거 상세히 기술하여 보면 다음과 같다.
제1도는 중재기의 개략적인 구성을 나타낸 것으로, 도면에 도시되지 않은 프로세서 또는 콘트롤러로부터 신호(reset, request, retry)를 받아 중재의 동작을 제어하는 어드레스 버스 중재 제어로직(Address Bus Arbiter Control Logic)(1)과, 어드레스 버스 중재 제어로직(1)으로 부터 발생하는 요청신호(req)를 받아 어드레스 중재 버스에 할당된 13개의 신호선(ABRQ0~ABRQ12)들 중에서 연결된 하나의 신호선에만 구동하는 멀티플렉서(Multiplexer))(2)와, 중재기가 자신과 연결된 슬롯을 구별하도록 시스템 버스 백플레인(system Bus Back-plane)(도면에 도시되지 않음)에서 공급되는 슬롯 어드레스 신호(3)와, 중재주기 동안 어드레스 중재 버스의 신호선(ABRQ)에 구동된 신호들중 가장 높은 우선선위를 갖는 신호를 구별해 내는 4비트의 우선순위 엔코더(4)와, 우선순위 엔코더(Priority Encoder)의 출력과 자신의 슬롯 어드레스 신호(3)를 비교하는 4비트의 비교기(Comparator)(5)와, 각 중재주기 마다 설정되면서 항상 점검되어 어드레스버스(ABRQ)의 사용을 공정하게 하도록 하는 공정성 플래그(6)들로 구성한 것이다. 그러므로 여러개의 프로세서가 다수의 메모리를 공유하는 다중처리기 시스템에서 하나의 프로세서 또는 모듈에서 어드레스 버스를 사용하고자 하면 제2도에 도시한 바와같이 프로세서 또는 콘트롤러로 부터 어드레스 버스를 사용하기 위한 중재 요청신호(request)가 어드레스 버스 중재 제어로직(1)으로 입력되어야 하고(단계 10), 이에따라 프로세서 또는 모듈로부터 재시도 신호(retry)가 입력된 상태이면 페어 플래그와 무관하게 다음 동작을 수행하고(단계 11), 아니면 입력단(flag)으로 페어 플래그(fair-flag)가 입력된 상태인가를 확인하여(단계 12), 입력된 상태이면 페어 플래그가 해제될 때까지 기다린다(단계 13).
다음에 도면에 도시되지 않은 시스템의 클럭 제너레이터에서 공급되는 클럭신호의 라이징 에지(rising edge)로 부터 Onsec 되는 시점부터 어드레스 버스 중재 제어로직(1)의 제어에 따라 멀티플렉서(2)에서 해당 슬롯에 할당된 어드레스 중재버스의 신호선(ABRQn)에 요청신호(req)를 구동한다(단계 14). 여기서 시스템 버스 백플레인의 슬롯 0에서12까지는 각 슬롯에 하나의 어드레스 중재버스의 신호선(ABRQ)의 할당되어 있고, 슬롯 0은 ABRQ(0), 슬롯 1은 ABRQ(1),...그리고 슬롯 12는 ABRQ(12)에 할당된다.
신호선 ABRQ(n)에 요청신호(req)를 구동한 후 클럭신호의 라이징 에지로부터 50nsec 되는 시점에 어드레스 중재 버스로부터 우선순위 엔코더(4)를 통해 나온 출력과 자신의 슬롯 어드레스 신호(3)를 비교하는 4비트 비교기(5)에서 중재성공 신호(win)가 입력되는 가를 확인하여(단계 15), 중재 성공신호(win)가 입력될 때까지 계속 요청신호(req)를 구동하도록 한다(단계 16).
그리고 중재 성공신호(win)가 입력되면 프로세서 또는 콘트롤러로 어드레스 버스의 사용허가 신호(grant)를 출력하면서(단계 17), 요청신호의 구동을 중단하고(단계 18), 클럭신호의 라이징 에지로 부터 70nsec 되는 시점에 페어 플래그를 설정한다(단계 19). 여기서 페어 플래그가 설정되는 경우는 ABRQ0~ABRQ12의 신호선들 중에서 자신에게 할당된 것을 제외하고 2개 이상이 구동되어 있는 경우에만 한다.
그리고 페어 플래그의 해제는 중재요청 신호(request)나 사용허가(grant)에 관계없이 항상 라이징 에지로 부터 70nsec 되는 시점에 수행되고, 여기서 어드레스 버스의 계속적인 쓰기 전송형태의 수행으로 인하여 데이터 버스를 사용할 리스폰더(Responder)가 일정한 시간 동안 계속해서 데이터 버스를 사용할 수 없을 때 데이터 중재기들이 어드레스 버스의 사용을 일시적으로 중단시키기 위해 사용하는 신호(ABINH : Address Bus Inhibit)가 신호선을 통하여 입력되면 신호(ABINH)가 없어질 때까지 중재기의 중재를 일시적으로 멈추도록 하여 공정한 중재가 수행되도록 한다.
이상에서 설명한 바와같이 어드레스 버스의 공정한 사용기회를 부여하고, 오랫동안 버스를 사용하지 못하는 것을 방지하도록 한 것임을 알 수 있다.

Claims (2)

  1. 다중처리기 시스템에 있어서, 중재의 동작을 제어하는 어드레스 버스 중재 제어로직(1)과, 요청신호(req)를 신호선(ABRQ0~ABRQ12)중 할당된 하나에 구동하는 멀티플렉서(2)와, 어드레스 중재 버스의 신호선에 구동된 신호들 중 가장 우선순위를 갖는 신호를 구별해 내는 우선순위 엔코더(4)와, 우선순위 엔코더(4)의 출력과 자신의 슬롯 어드레스 신호(3)를 비교하는 4비트 비교기(5)와, 어드레스 버스의 사용이 공정하게 되도록 항상 점검되는 공정성 플래그(6)들로 구성됨을 특징으로 하는 다중처리기 시스켐에서의 어드레스 버스 중재기.
  2. 제1항에 있어서, 어드레스 버스의 사용을 일시적으로 중단시키기 위해 리스폰더가 신호(ABINH)를 구동하면 중재기의 중재를 신호(ABINH)가 해제될 때까지 중단하도록한 다중처리기 시스템에서의 더드레스 버스 중재기.
KR1019900021814A 1990-12-26 1990-12-26 다중처리기 시스템에서의 어드레스 버스 중재기 KR930007049B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019900021814A KR930007049B1 (ko) 1990-12-26 1990-12-26 다중처리기 시스템에서의 어드레스 버스 중재기

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019900021814A KR930007049B1 (ko) 1990-12-26 1990-12-26 다중처리기 시스템에서의 어드레스 버스 중재기

Publications (2)

Publication Number Publication Date
KR920013158A KR920013158A (ko) 1992-07-28
KR930007049B1 true KR930007049B1 (ko) 1993-07-26

Family

ID=19308475

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019900021814A KR930007049B1 (ko) 1990-12-26 1990-12-26 다중처리기 시스템에서의 어드레스 버스 중재기

Country Status (1)

Country Link
KR (1) KR930007049B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017222146A1 (ko) * 2016-06-20 2017-12-28 주식회사 엘지화학 전기팬의 동작을 제어하기 위한 시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017222146A1 (ko) * 2016-06-20 2017-12-28 주식회사 엘지화학 전기팬의 동작을 제어하기 위한 시스템

Also Published As

Publication number Publication date
KR920013158A (ko) 1992-07-28

Similar Documents

Publication Publication Date Title
EP0450233B1 (en) Bus access for digital computer system
US5506972A (en) Computer system having dynamically programmable linear/fairness priority arbitration scheme
EP0318221B1 (en) Controlling responding by users of an intercommunications bus
US4602327A (en) Bus master capable of relinquishing bus on request and retrying bus cycle
US5280591A (en) Centralized backplane bus arbiter for multiprocessor systems
EP0383475A2 (en) Shared resource arbitration
EP0426413B1 (en) Multiprocessor arbitration in single processor arbitration schemes
US4797815A (en) Interleaved synchronous bus access protocol for a shared memory multi-processor system
JP3583183B2 (ja) データ処理装置
US5649209A (en) Bus coupling information processing system for multiple access to system bus
US8006013B2 (en) Method and apparatus for preventing bus livelock due to excessive MMIO
KR970049655A (ko) 직접메모리접근(dma) 제어장치
JPH0973430A (ja) バス調停システムおよびバスアービタならびにバス制御方法
KR20020008955A (ko) 버스 시스템 및 그 실행 순서 조정방법
KR0155269B1 (ko) 버스 중재방법 및 그 장치
US5931931A (en) Method for bus arbitration in a multiprocessor system
KR930007049B1 (ko) 다중처리기 시스템에서의 어드레스 버스 중재기
US5293493A (en) Preemption control for central processor with cache
KR930004910Y1 (ko) 다중처리기 시스템에서의 데이터버스 중재기
JPH03142650A (ja) 優先使用遅延回路
US5872937A (en) System for optimizing bus arbitration latency and method therefor
KR100243868B1 (ko) 주 전산기에서의 중재로직 방법
KR930001586B1 (ko) 다중 버스 마이크로 컴퓨터 시스템
JPS59223827A (ja) バスア−ビトレ−シヨン回路
JPS63276155A (ja) バス多重制御方式

Legal Events

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

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee