KR20000046193A - 순환 중재 시스템 - Google Patents

순환 중재 시스템 Download PDF

Info

Publication number
KR20000046193A
KR20000046193A KR1019980062870A KR19980062870A KR20000046193A KR 20000046193 A KR20000046193 A KR 20000046193A KR 1019980062870 A KR1019980062870 A KR 1019980062870A KR 19980062870 A KR19980062870 A KR 19980062870A KR 20000046193 A KR20000046193 A KR 20000046193A
Authority
KR
South Korea
Prior art keywords
priority
slot
arbitration
bus
master
Prior art date
Application number
KR1019980062870A
Other languages
English (en)
Other versions
KR100294707B1 (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 KR1019980062870A priority Critical patent/KR100294707B1/ko
Publication of KR20000046193A publication Critical patent/KR20000046193A/ko
Application granted granted Critical
Publication of KR100294707B1 publication Critical patent/KR100294707B1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/36Arbitration
    • G06F2213/3604Coding information on multiple lines

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

순환 중재 시스템에 관한 것으로 특히, 다수의 마스터들이 공통 버스를 사용하기 위하여 중재 로직에 요청을 할 경우 순환 방식에 의해 순환적으로 공통 버스를 사용하도록 하기에 적당한 순환 중재 시스템에 관한 것이다. 이와 같은 순환 중재 시스템은 우선 ID를 결정하는 우선 결정부와, 상기 우선 결정부로부터 상기 우선 ID가 수신되면 버스 중재 요청 신호를 발생시키는 중재 요청 발생부와, 상기 중재 요청 발생부의 요청 신호가 입력되면 상기 버스의 사용을 중재하는 중재 로직부로 구성되어, 복수개의 보드에서 상기 버스 사용 요청 신호를 발생시키면, 상기 우선 결정부에서 상기 복수개의 보드중 어느 하나의 슬롯 ID를 참조하여 상기 버스를 사용하도록 하고, 상기 버스를 사용한 상기 보드의 슬롯 ID는 최하위 버스 사용 슬롯 ID를 갖도록 한다.

Description

순환 중재 시스템
본 발명은 순환 중재 시스템에 관한 것으로 특히, 다수의 마스터들이 공통 버스를 사용하기 위하여 중재 로직에 요청을 할 경우 순환 방식에 의해 순환적으로 공통 버스를 사용하도록 하기에 적당한 순환 중재 시스템에 관한 것이다.
이하, 첨부된 도면을 참조하여 종래 버스 중재 시스템을 설명하기로 한다.
도 1은 종래 버스 중재 로직을 나타낸 논리 회로 구성도이다.
종래 버스 중재 로직은 도 1에 나타낸 바와 같이, 중재 요청(Arbitration Request) 신호와 우선 ID(Priority ID)를 입력받아 논리곱 신호를 출력시키는 하나의 앤드(AND) 게이트(1)와, 상기 앤드 게이트(1)로부터 출력되는 신호를 입력받아 반전 변환 시켜 출력하는 인버터(3)와, 상기 인버터(3)와 상기 하나의 앤드 게이트(1)로부터 출력되는 신호를 조합하여 논리곱한 것을 출력 시키는 다른 앤드(AND) 게이트(3)로 구성된 논리 로직(14)이 복수개(14)(15)(16)(17)구성된다. 이때, 상기 논리 로직(14)(15)(16)(17)에서 출력되는 신호들은 또 다른 앤드 게이트(13)를 출력된다.
이와 같은 종래 버스 중재 로직의 동작 설명을 하기로 한다.
중재 로직(Arbitration Logic)(14)(1)(16)(17)은 요청(Request) 신호와 승인(Grant) 신호, 우선 ID(이하, Priority ID라 함) 그리고 중재 버스(Arbitration Bus)로 구성이 되어있다. 이때, 상기 중재 버스는 오픈 콜렉터(Open Collector) 회로로 구성된다.
여러 개의 마스터(Master)는 각각의 슬롯 ID(Slot ID)를 가지고 있으며, 이중에 가장 높은 Priority를 가지는 슬롯 ID를 0000으로 정의하고 가장 낮은 Priority를 가지는 슬롯 ID를 1111로 정의를 하고 Priority ID는 이 슬롯 ID를 반전(Inverting) 한 값이라고 정의를 하면 어느 한 마스터가 요청신호를 발생하면 슬롯 ID가 반전된 Priority ID가 중재 로직(14)(15)(16)(17)에 들어가고 요청 신호도 들어가게 된다.
그러면 중재 로직(14)(15)(16)(17)은 자신의 Priority ID(Priority ID 0∼3)중의 하나를 중재 버스(Arbitration Bus)에 값은 내놓고 중재 버스의 값을 읽고 판단하여 마스터에게 승인(Grant) 신호를 내 주게된다.
예를 들면 3개의 마스터가 각각 0100, 0101, 0010이라는 슬롯 ID를 가지고 있고 상기 3개의 마스터가 동시에 요청신호를 발생시키면 각각의 Priority ID는 1011, 1010, 1101의 값을 가지게 되고 이를 각각 중재 버스에 값을 내놓으면 중재 버스는 오픈 콜렉터(Open Collector)로 연결되어 있으므로 하나라도 0의 값을 가지면 0의 값을 가지는 특성 때문에 1010의 값을 가지게 되고 이를 중재 로직에서 각각 게이트를 통과한 결과를 보면 Priority ID가 1101인 마스터에게 승인 신호가 가게된다.
이와 같은 종래 버스 중재 로직에 있어서는 여러 개의 마스터들에서 동시에 계속해서 중재 로직으로 요청 신호를 발생시킬 경우 각각의 중재 로직에는 Priority가 가장 높은 마스터만 계속해서 승인 신호를 받게 되므로 다른 마스터들은 공통 버스를 사용할 수 없는 문제점이 있었다.
본 발명의 목적은 이상에서 언급한 종래 기술의 문제점을 감안하여 안출한 것으로서, 복수개의 마스터들에서 동시에 공통 버스 사용 승인 요청을 하였을 경우 순환 중재 방식으로 각 마스터들에게 순환적으로 공통 버스 사용할 수 있도록 한 순환 중재 시스템에 관한 것이다.
이상과 같은 목적을 달성하기 위한 본 발명의 일 특징에 따르면, 우선 ID를 결정하는 우선 결정부와, 상기 우선 결정부로부터 상기 우선 ID가 수신되면 버스 중재 요청 신호를 발생시키는 중재 요청 발생부와, 상기 중재 요청 발생부의 요청 신호가 입력되면 상기 버스의 사용을 중재하는 중재 로직부로 구성되어, 복수개의 보드에서 상기 버스 사용 요청 신호를 발생시키면 상기 우선 결정부에서 상기 복수개의 보드중 어느 하나의 슬롯 ID를 참조하여 상기 버스를 사용하도록 하고, 상기 버스를 사용한 상기 보드의 슬롯 ID는 최하위 버스 사용 슬롯 ID를 갖도록 한다.
바람직하게, 상기 우선 결정부에서 우선 ID를 결정하는 방법은, 중재가 실행된 ID를 윈 ID라 하고, 다음 번 실행시켜야 할 ID를 슬롯 ID라 하였을 때, 윈 슬롯 ID 〉슬롯 ID인 경우에는, Priority ID = 윈 슬롯 ID - 슬롯 ID이고, 윈 슬롯 ID 〈 슬롯 ID인 경우, Priority ID = 1001 - 슬롯 ID - 윈 슬롯 ID - 1이며, 윈 슬롯 ID = 슬롯 ID인 경우, Priority ID = 0000 ID를 갖는 마스터를 우선 ID로 결정한다.
이상과 같은 본 발명에 따르면, 복수개의 마스터들이 순환해서 하나의 공통 버스를 이용할 수 있다.
도 1은 종래 버스 중재 로직을 나타낸 논리 회로 구성도
도 2는 본 발명 순환 중재 로직을 나타낸 블록 구성도
도면의 주요 부분에 대한 부호의 설명
20 : 보드 21 : 우선 결정부
22 : 중재 요청 발생부 23 : 중재 로직부
24 : 앤드 게이트 25 : 인버터
이하 본 발명의 바람직한 일 실시 예에 따른 구성 및 작용을 첨부된 도면을 참조하여 설명한다.
도 2는 본 발명 순환 중재 로직을 나타낸 블록 구성도이다.
본 발명 순환 중재 로직은 도 2에 나타낸 바와 같이, Priority ID를 결정하는 우선 결정부(21)와, 상기 우선 결정부(21)로부터 상기 Priority ID가 수신되면 버스 중재 요청(Arbitration Request) 신호를 발생시키는 중재 요청 발생부(22)와, 상기 중재 요청 발생부(22)의 요청 신호가 입력되면 상기 버스의 사용을 중재하는 중재 로직부(23)로 구성되어, 각각 최상위와 최하위의 슬롯 ID를 갖고 있는 복수개의 보드(20a)(20b)···(20n)에서 상기 버스를 사용하기 위한 요청 신호를 발생시키면 상기 우선 결정부(21)에서 상기 복수개의 보드(20a)(20b)···(20n)중 어느 하나의 상기 보드(예를 들면 제 1 보드(20a))의 슬롯 ID를 참조하여 상기 버스를 사용하도록 하고, 상기 버스(20a)를 사용한 상기 보드(20a)의 슬롯 ID는 최하위 버스 사용 슬롯 ID를 갖도록 한다.
그리고, 중재 로직부(23)와 요청 신호를 입력받아 논리곱하는 앤드 게이트(24)와 상기 앤드 게이트(24)에서 출력되는 신호를 입력받아 우선 결정부(21)로 반전 출력시키는 인버터(25)를 더 포함하여 구성된다.
이와 같은 본 발명 순환 중재 시스템을 설명하기로 한다.
본 발명은 기존의 방법의 단점을 보완하기 위하여 Priority ID를 만들때에 단순히 고정된 슬롯 ID만 보고 Priority ID(따라서 종래에는 Priority ID도 항상 고정)를 만드는 것이 아니라 외부로부터 윈 슬롯(Win Slot) ID를 받아들여 Priority ID를 변환시키는 Logic을 추가한 것이다.
도 2는 종래의 중재 로직에 추가로 순환 중재(Rotating Arbitration)을 위한 로직(Logic) 구성을 나타낸 것이다.
이때, 중재 로직부(23)는 종래와 동일하므로 설명을 생략한다.
그리고, 중재 요청 발생부(Arbitration Request Generator)(22)는 각 마스터에서 오는 요청 신호를 직접 중재 로직부(23)에 연결하지 않는다.
즉, 마스터가 요청하고 중재 버스가 비지(Busy)가 아닐 때에 그리고 다음의 Priority ID가 준비가 되어있을 때에 중재 요청을 만들어 준다.
그리고, 비지(Busy)신호는 마스터에서 요청이 있고 승인 신호가 발생하면 오픈 콜렉터(Open Collector)로 만들어 준다.
우선 결정부(Priority Decision Part)(21)는 Priority ID를 만들어 준다.
즉, 해당 보드(20a)(20b)···(20n)의 슬롯 ID와 윈 슬롯(Win Slot) ID의 조합으로 다음번 중재에 사용되는 Priority ID를 만들어 준다.
Priority ID를 만들어 주는 다음과 같은 방식으로 만들어 준다.
이때, 스롯 ID는 0000이 최하위(Lowest) Priority ID일 때이다.
우선, 윈 슬롯 ID 〉슬롯 ID인 경우에는, [수학식1]과 같다.
Priority ID = 윈 슬롯 ID - 슬롯 ID
그리고, 윈 슬롯 ID 〈 슬롯 ID인 경우에는, [수학식2]와 같다.
Priority ID = 1001(마스터의 슬롯을 10개라고 하였을 경우의 슬롯 ID) - 슬롯 ID - 윈 슬롯 ID - 1
마지막으로 윈 슬롯 ID = 슬롯 ID인 경우에는, [수학식3]과 같다.
Priority ID = 0000
윈 슬롯 ID는 자신이 중재에서 윈(요청을 하고 승인을 받는 것) 한 경우 자신의 슬록 ID를 내주고 비지 신호를 보고 다음의 Priority를 계산한다.
우선, 마스터가 중재에 참여해서 윈 하면 가장 낮은 Priority ID를 가지고 그 다음은 순서대로 가장 높은 Priority ID를 가지게 된다. 순환 우선(Rotating Priority)
예를 들어, 표 1에 나타낸 바와 같이 각 마스터에 Priority를 지정해주었을 때, 4번 마스터가 중재에서 윈하였을 경우를 설명하기로 한다.
마스터 1 2 3 4 5 6 7 8 9 10
Priority 11 10 1 0 1001 1000 111 110 101 0100
10개의 마스터(Slot ID : 0000∼1001)중에서 4번 마스터가 윈 슬롯 ID(0011)를 내주게 된다.
따라서 모든 마스터들은 비지신호를 보고 다음의 Priority를 계산하게 된다.
각 마스터마다 상기 수학식들을 토대로 계산을 한다.
마스터 1 내지 3은, 수학식 1에 따라,
마스터 1 : Priority ID = 0011 - 0000 = 0011
마스터 2 : Priority ID = 0011 - 0001 = 0010
마스터 3 : Priority ID = 0011 - 0010 = 0001
마스터 4는 수학식 3에 따라,
마스터 4 : Priority ID = 0011 - 0011 = 0000
Master 5∼10은 수학식 2에 따라,
마스터 5 : Priority ID = 1001 - (0100 - 0011 - 1) = 1001
마스터 6 : Priority ID = 1001 - (0011 - 0011 - 1) = 1000
마스터 7 : Priority ID = 1001 - (0011 - 0011 - 1) = 0111
마스터 8 : Priority ID = 1001 - (0011 - 0011 - 1) = 0110
마스터 9 : Priority ID = 1001 - (0011 - 0011 - 1) = 0101
마스터 10 : Priority ID = 1001 - (0011 - 0011 - 1) = 0100
와 같이 Priority ID가 바뀌게 된다.
이상의 설명에서와 같은 본 발명은 여러개의 마스터가 동시에 공통 버스 사용을 위한 요청을 하더라도 Priority가 계속 순환되는 순환 중재 방식으로 버스 사용을 중재함으로서 하나의 마스터에만 계속해서 승인이 가는 것을 방지하여 순환적으로 공통버스를 사용하게 할 수 있다.

Claims (2)

  1. 우선 ID를 결정하는 우선 결정부와;
    상기 우선 결정부로부터 상기 우선 ID가 수신되면 버스 중재 요청 신호를 발생시키는 중재 요청 발생부와;
    상기 중재 요청 발생부의 요청 신호가 입력되면 상기 버스의 사용을 중재하는 중재 로직부로 구성되어,
    복수개의 보드에서 상기 버스 사용 요청 신호를 발생시키면, 상기 우선 결정부에서 상기 복수개의 보드중 어느 하나의 슬롯 ID를 참조하여 상기 버스를 사용하도록 하고, 상기 버스를 사용한 상기 보드의 슬롯 ID는 최하위 버스 사용 슬롯 ID를 갖도록 하는 것을 특징으로 하는 순환 중재 시스템.
  2. 제 1 항에 있어서, 상기 우선 결정부에서 우선 ID를 결정하는 방법은, 중재가 실행된 ID를 윈 ID라 하고, 다음 번 실행시켜야 할 ID를 슬롯 ID라 하였을 때,
    윈 슬롯 ID 〉슬롯 ID인 경우에는, Priority ID = 윈 슬롯 ID - 슬롯 ID이고, 윈 슬롯 ID 〈 슬롯 ID인 경우, Priority ID = 1001 - 슬롯 ID - 윈 슬롯 ID - 1이며, 윈 슬롯 ID = 슬롯 ID인 경우, Priority ID = 0000 ID를 갖는 마스터를 우선 ID로 결정함을 특징으로 하는 순환 중재 시스템.
KR1019980062870A 1998-12-31 1998-12-31 순환 중재 시스템_ KR100294707B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980062870A KR100294707B1 (ko) 1998-12-31 1998-12-31 순환 중재 시스템_

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980062870A KR100294707B1 (ko) 1998-12-31 1998-12-31 순환 중재 시스템_

Publications (2)

Publication Number Publication Date
KR20000046193A true KR20000046193A (ko) 2000-07-25
KR100294707B1 KR100294707B1 (ko) 2001-07-12

Family

ID=19569485

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980062870A KR100294707B1 (ko) 1998-12-31 1998-12-31 순환 중재 시스템_

Country Status (1)

Country Link
KR (1) KR100294707B1 (ko)

Also Published As

Publication number Publication date
KR100294707B1 (ko) 2001-07-12

Similar Documents

Publication Publication Date Title
US4423384A (en) Asynchronous multi-port arbiter
EP0034903A1 (en) Resource allocation system
JPH0855083A (ja) 擬似ラウンドロビン仲裁システム
JPH0773137A (ja) 多レベル・バス・アービトレーションのための方法、アダプタおよびシステム
JPH09259078A (ja) 分散直列仲裁システム
US4514728A (en) Store group bus allocation system
KR100294707B1 (ko) 순환 중재 시스템_
JPH10283310A (ja) マルチプロセッサ・システムにおけるバス・アービトレーションの方法及び装置
US7382794B1 (en) Parallel round-robin arbiter system and method
JP3671646B2 (ja) 光信号伝送装置および信号処理装置
Costrell et al. FASTBUS for data acquisition and control
JP2786091B2 (ja) バスリクエスタ
JPH08339326A (ja) マルチプロセッサ装置
KR100407022B1 (ko) 가변 다중경로를 갖는 멀티포인트 네트워크의 버스 동적할당 방법 및 시스템
KR0158940B1 (ko) 백플레인보드를 이용한 다중 이더넷 버스 중재 처리 시스템
KR100194949B1 (ko) 주변 소자 연결 버스 중재 회로
KR100307620B1 (ko) 백플레인버스를시분할방식으로사용하기위한버스용모듈
KR0135918B1 (ko) 프레임 동기신호의 동적 운용장치
CN101324871A (zh) 无等待动态优先级的pci总线仲裁扩展器
KR960004690B1 (ko) 메모리 아비트래이션장치
KR920000480B1 (ko) 인터럽트 버스의 중재 방법
Wilkinson Cascaded rhombic crossbar interconnection networks
ATE385142T1 (de) System un telekommunikationsknoten zum aktualisieren von einem verteilten datenbank
JP2694812B2 (ja) 調停システム
KR19990086858A (ko) 프로세서 중재 장치

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee