KR950012503B1 - 여러개의 버스마스타의 우선 발생순 버스 사용권 중재 회로 - Google Patents

여러개의 버스마스타의 우선 발생순 버스 사용권 중재 회로 Download PDF

Info

Publication number
KR950012503B1
KR950012503B1 KR1019930028323A KR930028323A KR950012503B1 KR 950012503 B1 KR950012503 B1 KR 950012503B1 KR 1019930028323 A KR1019930028323 A KR 1019930028323A KR 930028323 A KR930028323 A KR 930028323A KR 950012503 B1 KR950012503 B1 KR 950012503B1
Authority
KR
South Korea
Prior art keywords
bus
signal
cpu
outputs
license
Prior art date
Application number
KR1019930028323A
Other languages
English (en)
Other versions
KR950020180A (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 KR1019930028323A priority Critical patent/KR950012503B1/ko
Publication of KR950020180A publication Critical patent/KR950020180A/ko
Application granted granted Critical
Publication of KR950012503B1 publication Critical patent/KR950012503B1/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/18Handling requests for interconnection or transfer for access to memory bus based on 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
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/3625Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using a time dependent access
    • 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/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/364Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines

Abstract

내용 없음.

Description

여러개의 버스마스타의 우선 발생순 버스 사용권 중재 회로
제1도는 본 발명의 주변장치와의 연결구성도,
제2도는 버스 사용권 중재 회로의 상세 구성도,
제3도는 1개의 버스마스터의 버스사용 요구시 타이밍도,
제4도는 4개의 버스마스타가 동시에 버스 사용요구시 타이밍도.
* 도면의 주요부분에 대한 부호의 설명
I1 : AND 게이트 I2, I7, I10 : 인버터
I3, I6, I11 : OR 게이트 I4, I8, I12 : SR 플립플롭
I5, I9, I13 : OR 게이트
본 발명은 모토롤라(Motorola) MC 68000 계열 CPU를 사용한 보드에 DMA(Direct Memory Access)기능을 자체 내장하고 있는 여러개의 버스마스타 콘트롤 칩과 CPU를 인터페이스시, 버스마스타들의 버스 사용요구에 대해 우선 발생순으로 버스사용권을 중재해 주는 중재회로에 관한 것이다.
기존의 중재 회로 설계시에는 상용으로 나오는 BAM(Bus Arbitration Module : MC 68452)칩 등을 사용하여 버스마스터의 우선 순위에 따라 버스 사용권을 중재해 주도록 하였다. 그러나 이러한 상용화된 칩들은 버스사용권을 요구하는 버스마스타들의 중재를 모두 우선순위를 주고 버스 사용권을 중재하도록 하고 있다. 따라서 우선 순위가 필요없는 동등한 레벨의 버스마스타들이 연결될 경우, 디자인 의도 및 서비스기능과는 무관하게 우선순위를 주어야 하는 난점이 있다.
따라서 상기와 같은 문제점을 해결하기 위하여 안출된 본 발명은, 동등한 레벨에서 먼저 버스사용권을 요구한 버스마스타가 버스 사용권을 사용할 수 있도록 하고, 간단한 로직으로 구현하여 비용절감의 효과를 갖는 우선 발생순 버스 사용권 중재 회로를 제공하는데 그 목적이 있다.
상기 목적을 달성하기 위하여 본 발명은, 다수의 버스 사용권 요구신호를 입력받아 CPU로 전달하는 논리곱 처리수단과, 상기 다수의 버스 사용권 요구신호 중 소정의 하나씩의 신호를 입력받는 제1 내지 제3인버터와, 버스 요구 인에이블 신호를 입력받는 제1 내지 제3논리합 처리수단과, 상기 제1 내지 제3인버터의 출력을 세트 단자로 입력받고, 상기 제1 내지 제3논리합 처리수단의 출력을 리셋 단자로 입력받는 제1 내지 제3 SR 플립플롭과, 상기 제1 내지 제3SR 플립플롭의 출력을 인버팅하여 입력받고, CPU로부터의 버스사용권 허가신호를 입력받아 신호 사용허가 신호를 버스마스터 칩으로 제공하는 제4 내지 제6논리합 처리수단을 구비한다.
이하, 첨부된 도면을 참조하여 본 발명의 일실시예를 상세히 설명한다.
제1도에서는 본 발명의 주변장치와의 연결구성도이다.
DMA(Direct Memory Access) 컨트롤러 기능을 자체 내장하고 있는 다수의 버스 마스터 칩(3)들은 DMA 모드 동작을 요구하는 명령어가 주어지거나 내부 FIFO(First In Firt Out)에 대한 데이터의 입출력 동작이 일어날 때 버스 사용권을 얻어 메모리와 직접 액세스 하는 자체 버스 싸이클을 만든다. 이때 버스마스타 칩(3)들은 이러한 버스 사용권 요구를 위해 버스 사용권 요구신호(BR*)를 출력하여 시스템 버스의 제어를 요구하게 된다. 현재 버스를 장악하고 있는 임의의 버스마스타(3)가 버스를 내놓는 순간, 외부 버스 아비트레이션(중재) 블록(2)에서는 버스 사용권 요구를 한 버스마스타 칩(3)에게 버스 사용권이 주어졌다는 것을 알려주기 위해 버스 사용권 허가신호(BG*)를 출력한다. 버스마스타 칩(3)은 이에 대한 응답인 버스사용권 인식신호(BGACK*)를 출력하기 전에 CPU(1)의 어드레스 스트로브신호(AS*)와 BGACK* 신호가 비활성화 되고 임의의 버스 예외 싸이클이 클리어 되도록 기다린다. 이때 AS*의 비활성화는 이전의 버스마스터가 버스 싸이클을 완료했다는 것을 가리키는 것이고, BGACK* 신호의 비활성화는 이전의 버스마스터가 버스 사용권을 내놓았다는 것을 가리키는 것이다. 버스마스터 칩은 BGACK* 신호를 출력한 후 외부 버스 아비트레이션 제어블록(2)에서 다음 버스마스터 칩(3)을 위한 아비트레이션(중재)을 시작할 수 있도록 BR* 신호를 비활성화 한다.
모든 데이터 트랜스퍼가 서비스될 때까지 8개의 버스 싸이클이 소요되며, 이동안 버스 사용권을 갖고 있다가 마지막 버스 싸이클이 완료된 후에 BGACK* 신호를 비활성하여 버스 사용권을 종단한다.
제2도는 버스마스타 기능을 갖고 있는 다수개 버스마스타 칩(3)의 버스 사용권 요구시 우선 발생순으로 중재를 해주는 아비트레이션 회로(제1도의 2)의 세부구성도이다.
먼저, 1개의 버스마스타 칩(3)이 버스사용권을 요구하는 경우의 동작을 살펴보면, 버스마스타 칩(3)이 CPU가 사용하고 있는 버스를 사용하여 DMA 모드 동작을 하고자 하는 경우, 버스마스타 칩(3)은 버스 사용 요구신호인 BRI* 신호를 "0" 상태로 만들어 5입력 AND게이트(I1)의 입력으로 주고, 또 하나는 SR 래치(I4) 전에 있는 인버터 게이트(I2)의 입력으로 공급한다. AND게이트(I1)에 입력된 신호는 다른 4개의 신호에 관계없이 "0" 상태로 AND게이트(I1)의 출력신호 BTA*(Bus Rquest A11*)로 나오고, 이 출력신호는 CPU(1)의 BR*핀에 입력되어 CPU(1)가 다른 버스마스타(3)로부터 버스 사용요구가 들어온 것을 알게 한다. 이때 CPU(1)는 자신의 버스 싸이클을 마치고 즉시 버스 사용권을 허가하는 BG* 신호를 "0"로 출력하게 된다. SR 래치(I4) 전 단계인 인버터 게이트(I2)의 입력으로 들어간 또 하나의 BR1* 신호는 "1"로 인버팅되어 SR 래치(I4)의 S(Set) 입력으로 들어가고, 5입력 OR게이트(I3)의 입력으로 들어간 BR1* 신호는 현재 다른 버스마스터에서 버스를 사용하고 있지 않으므로, OR 게이트(I3)를 통해 "0"의 출력이 되어 SR 래치의 R(Rest) 입력으로 들어간다. 제3도에 도시된 타이밍도에서 보듯이 S(Set)가 "1", R(Rest)이 "0"인 경우 출력인 BR1EN*(버스요구 인애이블) 신호는 "1"이 된다. CPU(1)력인 버스 사용권 허가신호(BGA*)가 "0"이고 SR래치(I4)의 출력인 BR1EN* 신호가 "1"이므로 OR2B1 게이트(I5)를 거친 출력신호 BG1*은 "0"가 된다.
이것은 버스마스터 칩 1에게 버스 사용권을 허용하는 신호를 입력한 것이므로 버스마스타 1 칩은 버스 사용권 허가를 알게 되고 응답으로 BGACK* 신호를 출력하게 된다. 이 BGACK* 신호는 CPU(1)에게 입력되어 다른 버스마스터(버스마스타 칩)가 버스 사용권 허가를 받아 버스를 사용하고 있다는 것을 CPU(1)가 인식하도록 한다. 이 신호는 CPU(1)에게는 중요한 의미로서 버스마스타들에 비해 버스 사용 우선 순위가 제일 낮은 CPU(1)가 자신의 버스 싸이클에 못들어가도록 마스킹하는 역할을 한다. 이 때의 타이밍도는 제3도에 나타낸 바와 같다.
다음으로 2개 이상의 버스마스터 칩이 버스 사용권을 요구할 때의 동작을 살펴보면, 2개 이상의 버스마스터가 버스 사용권을 요구하는 경우에는 우선발생순으로 버스사용권을 부여한다. 앞절에서 기술한 바와같이 버스마스터 칩이 버스 사용 요구를 하고 있는 중에(BRI* 신호가 "0") 다른 버스마스터 칩이 버스를 사용하고자 버스 사용 요구신호(BR2*)를 "0"로 출력할 경우 CPU(1)로부터 버스 사용권 허가신호인 BGA*(BUS Grant)를 한 칩에게만 주어 버스 사용권의 중첩을 막는 로직을 구현한다.
제2도의 아비트레이션 제어 블록 구성도에서 보듯이 버스마스터 1 칩이 먼저 버스 사용권을 요구하였을 경우 버스 사용 요구 인애이블 신호(BR1EN*)가 "1"이 되어 OR 게이트(I7)의 입력으로 들어간다. 이 신호에 의해 OR 게이트(I7)의 출력은 "1"이 되어 SR래치(I8)의 R(Reset) 입력으로 들어간다. 이 때 SR래치 특성상 R이 "1"이면 S의 입력값에 관계없이 SR래치의 출력은 "0"이 된다. 따라서 현재 CPU(1)가 버스 사용권 허가 신호(BGA*)를 "0"로 출력하여도 SR래치(I8)의 출력인 BR2EN* 신호는 "0"이므로 OR2B1게이트(I9)를 거친 출력 BG2는 "1"이 되어 버스마스터 2칩은 버스 사용권 허가 신호를 받지 못하게 된다. 그 뒤 버스 마스타 1칩의 버스 사용권 요구신호 (BR1*)이 "1"로 부정(negate)되면 BR1EN* 신호는 다시 "0"로 출력되고 OR 게이트 (I7)의 출력은 "0"가 되어 R(Reset)이 풀리고 BR2EN* 신호는 "1"로 바뀐다. CPU(1)로부터 버스 사용권 허가신호(BGA*)가 "0"로 OR2B1게이트(I9)에 입력되면, OR2B1 게이트(I9)를 거친 BG2* 출력은 "0"가 되어 버스마스타 2칩에 입력된다. 버스마스타 2칩은 버스 사용권 허가를 인식하고 BGACK* 신호를 CPU(1)에게 "0"로 출력하고 버스를 사용한다. 이러한 알고리즘으로 2개 이상의 버스 마스타 칩들이 버스 사용권 요구를 할 경우 먼저 요구한 순서로 버스 사용권 허가가 각 칩에 입력되게 된다. 이때의 타이밍도는 제4도에 나타낸 바와 같다.
따라서, 상기와 같이 구성되어 동작하는 본 발명은, 간단한 SR 플립플롭과 인버터 OR 게이트로 구성하여 경제성을 높였고, 우선 순위가 필요없는 같은 기능 및 지위의 버스마스타들에게 효율적인 방식인 우선 발생순의 중재방식이 가능하도록 한 효과가 있다.

Claims (1)

  1. 다수의 버스 사용권 요구신호를 입력받아 CPU(1)로 전달하는 논리곱 처리수단(I1)과, 상기 다수의 버스 사용권 요구신호 중 소정의 하나씩의 신호를 입력받는 제1 내지 제3인버터(I2,I6,I10)와, 버스 요구 인에이블 신호를 입력받는 제1 내지 제3논리합 처리수단(I3,I7,I11)과, 상기 제1 내지 제3인버터(I2,I6,I10)의 출력을 세트 단자로 입력받고, 상기 제1 내지 제3OR 논리합 처리수단(I3,I7,I11)의 출력을 리셋 단자로 입력받는 제1 내지 제3SR 플립플롭(I4,I8,I12)과, 상기 제1 내지 제3SR 플립플롭 (I4,I8,I12)의 출력을 인버팅하여 입력받고, CPU(1)로부터의 버스사용권 허가신호를 입력받아 버스 사용 허가 신호를 버스마스터 칩으로 제공하는 제4 내지 제6논리합 처리수단(I5,I9,I13)을 구비하는 것을 특징으로 하는 버스마스터의 우선 발생순 버스 사용권 중재 회로.
KR1019930028323A 1993-12-17 1993-12-17 여러개의 버스마스타의 우선 발생순 버스 사용권 중재 회로 KR950012503B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019930028323A KR950012503B1 (ko) 1993-12-17 1993-12-17 여러개의 버스마스타의 우선 발생순 버스 사용권 중재 회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019930028323A KR950012503B1 (ko) 1993-12-17 1993-12-17 여러개의 버스마스타의 우선 발생순 버스 사용권 중재 회로

Publications (2)

Publication Number Publication Date
KR950020180A KR950020180A (ko) 1995-07-24
KR950012503B1 true KR950012503B1 (ko) 1995-10-18

Family

ID=19371510

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019930028323A KR950012503B1 (ko) 1993-12-17 1993-12-17 여러개의 버스마스타의 우선 발생순 버스 사용권 중재 회로

Country Status (1)

Country Link
KR (1) KR950012503B1 (ko)

Also Published As

Publication number Publication date
KR950020180A (ko) 1995-07-24

Similar Documents

Publication Publication Date Title
EP0581335B1 (en) Data processing system having units competing for access to shared resources and arbitration unit responsive to the status of the shared resources
CA2026737C (en) Bus master interface circuit with transparent preemption of a data transfer controller
US4602327A (en) Bus master capable of relinquishing bus on request and retrying bus cycle
KR100225215B1 (ko) Pcmcia 카드를 위한 인터럽트 분배 기술
CA2124031A1 (en) System Direct Memory Access (DMA) Support Logic for PCI Based Computer System
JPH061458B2 (ja) 共有母線のための分配仲裁装置および方法
JP2708289B2 (ja) アクセス要求仲裁装置
US6959354B2 (en) Effective bus utilization using multiple bus interface circuits and arbitration logic circuit
US5241661A (en) DMA access arbitration device in which CPU can arbitrate on behalf of attachment having no arbiter
JPH10143467A (ja) データ処理システムにおいてバス所有権を調停するための方法および装置
US4580213A (en) Microprocessor capable of automatically performing multiple bus cycles
KR950012503B1 (ko) 여러개의 버스마스타의 우선 발생순 버스 사용권 중재 회로
US4482949A (en) Unit for prioritizing earlier and later arriving input requests
US6105082A (en) Data processor used in a data transfer system which includes a detection circuit for detecting whether processor uses bus in a forthcoming cycle
US6940311B2 (en) Data transmission system
US5557756A (en) Chained arbitration
US4180855A (en) Direct memory access expander unit for use with a microprocessor
US5872937A (en) System for optimizing bus arbitration latency and method therefor
KR960001267B1 (ko) 타이콤(ticom) 시스템의 입출력 처리 장치 중재기
KR950001232B1 (ko) Map 네트워크 접속기에서의 버스 중재회로
JPS62154045A (ja) バス調停方式
US5799160A (en) Circuit and method for controlling bus arbitration
KR0175467B1 (ko) 버스중재회로
JPH0830549A (ja) バス制御装置
CA1299295C (en) Dma access arbitration device in which cpu can arbitrate on behalfof attachment having no arbiter

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
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: 20070919

Year of fee payment: 13

LAPS Lapse due to unpaid annual fee