KR910008418B1 - Bus arbitration circuit in round-robin selecting method - Google Patents

Bus arbitration circuit in round-robin selecting method Download PDF

Info

Publication number
KR910008418B1
KR910008418B1 KR1019890009180A KR890009180A KR910008418B1 KR 910008418 B1 KR910008418 B1 KR 910008418B1 KR 1019890009180 A KR1019890009180 A KR 1019890009180A KR 890009180 A KR890009180 A KR 890009180A KR 910008418 B1 KR910008418 B1 KR 910008418B1
Authority
KR
South Korea
Prior art keywords
bus
signal
counter
bus arbitration
control signal
Prior art date
Application number
KR1019890009180A
Other languages
Korean (ko)
Other versions
KR910002250A (en
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 KR1019890009180A priority Critical patent/KR910008418B1/en
Publication of KR910002250A publication Critical patent/KR910002250A/en
Application granted granted Critical
Publication of KR910008418B1 publication Critical patent/KR910008418B1/en

Links

Images

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

A bus arbitration circuit features incorporating bus masters with same priorities for VME bus system, while there was performance degradation caused by bus grant delayed up to 4-olock period upon bus request signal. Thus it minimizes bus arbitration time and its error. The system consists of multiplexer (10) for bus request input, choosing output and interrupting other request, control signal generator (20) for the first and second control signal, counter (30) for data count, decoder (40) to decode counter output and to give selecting signal, the first-fourth bus arbiter (50-80) and gates (91-94) to generate corresponding bus grant signal to request signal by logic combination.

Description

라운드로빈 선택방식의 버스중재회로Round-Robin Selective Bus Arbitration Circuit

제1도는 종래의 버스중재회로도.1 is a conventional bus arbitration circuit diagram.

제2도는 본 발명에 따른 블록구성도.2 is a block diagram according to the present invention.

제3도는 제2도중 상태 1일시의 구체회로도.3 is a concrete circuit diagram of state 1 of FIG. 2.

제4도는 버스중재의 일예를 설명하는 타이밍도.4 is a timing diagram illustrating an example of bus arbitration.

* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings

10 : 멀티플렉서 20 : 클럭발생부10: multiplexer 20: clock generator

30 : 카운터 40 : 디코더30: counter 40: decoder

50-80 : 버스중재부 90-94 : 출력게이트50-80: Bus Arbitration Unit 90-94: Output Gate

본 발명은 VME 버스를 이용하는 시스템의 버스중재회로에 관한 것으로, 특히 여러 개의 버스 마스터가 동일한 우선권을 가지고 버스중재를 할 수 있는 라운드 로빈 선택방식의 버스중재회로에 관한 것이다.The present invention relates to a bus arbitration circuit of a system using a VME bus, and more particularly, to a bus arbitration circuit of a round robin selection method in which multiple bus masters can have bus arbitration with the same priority.

제1도는 종래의 버스중재회로(bus arbiter)로서, VME버스 마스터로부터의 버스 요구신호(bus request signal)(BR3-BRa)를 중재하기 위하여 카운터(1)로 시스템 클럭(SYSCLK)을 인가한다. 그러면 상기 카운터(1)는 시스템클럭(SYSCLK)을 00→10→10→11→00…의 순으로 카운트한다. 이때 버스중재부(3)는 상기 카운터(1)의 출력에 따라 래치(2)에서 출력하고 있는 버스요구신호를 버스 승인신호(bus grant signal)로 발생하고 카운터(1)를 그 상태로 홀드(hold)시킨다. 이후 버스사용신호(bus busy signal : 이하

Figure kpo00001
라 칭함)가 디액티브(deactive)될 때까지 유지한다. 즉 버스승인신호를 받은 버스마스터가 버스의 억세스를 완료하면, 홀드신호를 디스에이블시켜 다시 카운터(1)가 동작하도록 한다. 상기와 같은 동작을 반복하여 마스터의 버스요구신호를 중재하게 된다. 그러나 상기와 같은 방법은 버스요구신호가 엑티브된 후 버스승인신호를 받을 때까지의 시간(bus arbitration time)이 길어지게 된다. 즉 카운터의 값이 "00"일때에는 버스요구신호
Figure kpo00002
만이 승인되므로, 이 상태에서 버스요구신호
Figure kpo00003
가 액티브되면 카운터의 값이 "11"이 될 때까지 버스승인신호
Figure kpo00004
가 액티브되지 못한다. 이로 인하여 버스요구신호 발생후 버스승인신호가 발생되는 시간이 최대 4클럭 주기동안 지연되므로 VME 버스시스템의 성능을 저하시켰던 문제점이 있었다.1 is a conventional bus arbiter, which applies a system clock (SYSCLK) to the counter (1) to mediate a bus request signal (BR 3 -BR a ) from the VME bus master. do. The counter 1 then sets the system clock SYSCLK to 00 → 10 → 10 → 11 → 00... Count in order of. At this time, the bus arbitration unit 3 generates a bus request signal output from the latch 2 as a bus grant signal according to the output of the counter 1, and holds the counter 1 in that state. hold). Bus busy signal after
Figure kpo00001
And until it becomes deactive. That is, when the bus master receiving the bus acknowledgment signal completes access to the bus, the hold signal is disabled to allow the counter 1 to operate again. The above operation is repeated to mediate the bus request signal of the master. However, in the above method, the bus arbitration time after the bus request signal is activated becomes long. That is, when the counter value is "00", the bus request signal
Figure kpo00002
Only bus is approved, so the bus request signal in this state
Figure kpo00003
Is activated, the bus acknowledgment signal until the counter value is "11".
Figure kpo00004
Is not active. As a result, the time required for generating the bus acknowledgment signal after the bus request signal is delayed for a maximum of 4 clock cycles causes a problem of degrading the performance of the VME bus system.

따라서 본 발명의 목적은 VME 버스 시스템에서 각각의 버스 마스터가 동일한 우선권을 가지고 버스를 사용할 수 있도록 중재할 수 있는 회로를 제공함에 있다.It is therefore an object of the present invention to provide a circuit that can arbitrate each bus master to use the bus with the same priority in a VME bus system.

이하 본 발명을 도면을 참조하여 상세히 설명한다.Hereinafter, the present invention will be described in detail with reference to the drawings.

제2도는 본 발명의 구성 블록도로서, 제2제어신호 발생시 제1단자로 인가되는 각 버스 마스터의 버스요구신호를 입력하며, 제1제어신호 발생시 제2단자로 인가되는 출력을 선택하여 다른 버스요구신호의 발생을 차단하는 멀티플렉서(10)와, 상기 버스요구신호 발생시 상기 제1제어신호를 발생하며, 버스 사용신호발생시 제2제어신호를 발생하는 제어신호 발생부(20)와, 상기 버스 사용신호 해제시 동작되어 순차적으로 우선권을 부여하기 위한 카운트 데이터를 출력하는 카운터(30)와, 상기 카운터(30)의 출력을 디코딩하여 제1-제4선택 신호중 해당 카운터값에 대한 선택신호를 발생하는 디코더(40)와, 상기 버스요구신호에 대하여 각각 다른 상태의 우선권을 가지며, 상기 디코더(40)의 출력에 의해 해당 버스중재부가 인에이블되어 액티브상태의 버스요구신호에 대한 버스 승인신호를 자신의 우선권에 따라 발생하는 제1-제4버스중재부(50-80)와, 상기 제1-제4버스중재부(50-80)의 버스 승인신호를 논리합하여 해당 버스요구신호에 대한 버스 승인신호를 발생하는 게이트(91-94)로 구성된다.FIG. 2 is a block diagram of the present invention, and inputs a bus request signal of each bus master applied to the first terminal when the second control signal is generated, and selects an output applied to the second terminal when the first control signal is generated, thereby selecting another bus. A multiplexer 10 for blocking generation of a request signal, a control signal generator 20 for generating the first control signal when the bus request signal is generated, and a second control signal for generating a bus use signal, and using the bus A counter 30 which is operated when the signal is released and sequentially outputs count data for giving priority to the signal; and decoding the output of the counter 30 to generate a selection signal for a corresponding counter value among the first to fourth selection signals. The decoder 40 and the bus request signal have priority in different states, and the bus arbitration unit is enabled by the output of the decoder 40 so that the corresponding bus arbitration unit is enabled. The bus acknowledgment signal for the first and fourth bus arbitration units 50-80 and the bus acknowledgment signals of the first and fourth bus arbitration units 50-80, which are generated according to their own priorities, are logically combined. Gates 91-94 for generating a bus acknowledgment signal for the bus request signal.

제3도는 상기 제2도중 제1중재부(50)의 구체회로도로서, 카운터(30)에서 "00"을 출력할시 디코더(40)에서 제1선택신호를 발생시켜 BR3 *→ BR2 *→ BR1 *→ BR0 *의 버스요구순서로 버스 승인신호를 발생한다.FIG. 3 is a detailed circuit diagram of the first arbitration unit 50 in the second diagram. When the counter 30 outputs "00", the decoder 40 generates the first selection signal so that BR 3 * → BR 2 * → Generates bus acknowledgment signal in the bus request order of BR 1 * → BR 0 * .

제4도는 본 발명에 따른 버스중재회로의 타이밍도로서,

Figure kpo00005
Figure kpo00006
보다 우선권을 갖는 버스중재부에서 제4a도는
Figure kpo00007
Figure kpo00008
신호가 동시에 액티브된 경우
Figure kpo00009
에 대한 버스승인신호
Figure kpo00010
가 먼저 발생하는 과정을 도시하고 있고, 제4b도는
Figure kpo00011
이 먼저 액티브된 후
Figure kpo00012
가 액티브된 경우
Figure kpo00013
이 먼저 발생한 후
Figure kpo00014
가 발생됨을 도시하고 있다.4 is a timing diagram of a bus arbitration circuit according to the present invention.
Figure kpo00005
end
Figure kpo00006
In the more preferred bus arbitration department, Figure 4a
Figure kpo00007
Wow
Figure kpo00008
If the signals are active at the same time
Figure kpo00009
Bus approval signal for
Figure kpo00010
Shows the process that occurs first, and FIG.
Figure kpo00011
After this first becomes active
Figure kpo00012
Is active
Figure kpo00013
After this happens first
Figure kpo00014
Shows that is generated.

상술한 구성에 의거 본 발명을 제2, 3, 4도를 참조하여 상세히 설명한다.Based on the above configuration, the present invention will be described in detail with reference to FIGS.

먼저 카운터(30)는 각자 다른 버스요구신호에 대한 우선권을 갖는 제1-제4버스중재부(50-80)를 선택하기 위한 기능을 수행하는 4진 업카운터(up counter)이며, 디코더(40)는 상기 카운터(30)의 출력에 따른 선택신호를 발생하여 해당 버스중재부를 인에이블 시킨다.First, the counter 30 is a quaternary up counter which performs a function for selecting the first to fourth bus arbitration units 50-80 having priority for different bus request signals, and the decoder 40. ) Generates a selection signal according to the output of the counter 30 to enable the corresponding bus arbitration unit.

여기서 제1-제4버스중주(50-80)의 버스중재우선권은 하기(표 1)과 같다고 가정한다.Here, it is assumed that the bus arbitration priority of the first-fourth bus quintet 50-80 is as shown in Table 1 below.

[표 1]TABLE 1

Figure kpo00015
Figure kpo00015

최초 시스템 리세트

Figure kpo00016
신호가 액티브(low) 상태에서는 카운터(30)가 리세트 상태가 되므로 "00"이 된다. 이 상태는 카운터(30)의 초기상태가 된다.Initial system reset
Figure kpo00016
When the signal is in the low state, the counter 30 becomes the reset state, and thus becomes " 00 ". This state becomes the initial state of the counter 30.

상기와 같이 결정되면, 디코더(40)는 제1선택신호를 발생하며, 인로 인해 제1버스중재부(50)가 인에이블된다. 이때 나머지 버스중재부(60, 70, 80)는 디스에이블 상태이다. 따라서 버스중재의 우선권은 상기 (표 1)과 같이 BR3 *가 가장 크며, BR*→ BR1 *→BR0 *의 순으로 된다.When the determination is made as described above, the decoder 40 generates the first selection signal, and the first bus arbitration unit 50 is enabled due to the in. At this time, the remaining bus arbitration units 60, 70, and 80 are in a disabled state. Therefore, the priority of bus arbitration is BR 3 * , as shown in Table 1 above, and BR * → BR 1 * → BR 0 * .

상기 상태에서 멀티플렉서(10)의 제1단자(A)를 통해 임의의 버스요구신호가 발생되면, 제1버스중재부(50)의 우선권 순서에 따라 버스 승인 신호가 결정되며, 제어신호 발생부(20)는 상기 버스요구신호의 상태에 따라 발생하는 "로우" 상태의 제1제어신호를 발생하여 멀티플렉서(10)의 입력을 제2단자(A)측으로 변환시킨다. 따라서 멀티플렉서(10)는 또 다른 버스요구신호가 발생하더라도 현재의 버스요구신호 발생상태를 계속 유지한다. 상기 상태는 VME 버스의 DTB 중재버스(DTB arbitration BUS)를 통해 버스 요구부(bus requester)가 버스사용신호(bus busy signal :

Figure kpo00017
)를 액티브(low)시킬때까지 유지된다.In the above state, if an arbitrary bus request signal is generated through the first terminal A of the multiplexer 10, the bus acknowledgment signal is determined according to the priority order of the first bus arbitrator 50, and the control signal generator ( 20 generates a first control signal of a "low" state generated according to the state of the bus request signal to convert the input of the multiplexer 10 to the second terminal (A) side. Therefore, the multiplexer 10 maintains the current bus request signal generation state even if another bus request signal is generated. In this state, the bus requester is connected to a bus busy signal through the DTB arbitration bus of the VME bus.
Figure kpo00017
) Is maintained until low.

상기와 같이 버스가 중재되면, VME 버스의 마스터에 의해 VME 버스로 데이터 전송이 이루어진다. 이때 상기

Figure kpo00018
신호가 액티브상태(low)에서 디액티브되는 순간(high), 카운터(30)는 업카운팅하여 "01"이 된다. 상기 카운터(30)의 "01"출력에 의해 디코더(40)는 제2선택신호를 출력하며, 이로 인해 제2버스중재부(60)가 인에이블된다. 이후 제2버스중재부(60)는 상기 멀티플렉서(10)의 버스요구신호에 따른 버스중재를 하는데, 우선권은 BR2 *→ BR1 *→BR0 *→ BR3 *의 순서이다. 이때 이중 어느 하나라도 액티브 상태(low)가 되면, 제어신호발생부(20)는 "로우" 상태의 제1제어신호를 발생하여 멀티플렉서(10)에서 현상태의 버스요구신호를 유지할 수 있도록 하며, 제2버스중재부(60)는 상기의 우선권에 따라 해당 버스요구신호의 승인신호를 발생한다.When the bus is arbitrated as described above, data is transferred to the VME bus by the master of the VME bus. At this time
Figure kpo00018
When the signal is deactivated in the active state high, the counter 30 is counted up to " 01 ". The decoder 40 outputs the second selection signal by the " 01 " output of the counter 30, thereby enabling the second bus arbitration unit 60. FIG. Thereafter, the second bus arbitration unit 60 performs bus arbitration according to the bus request signal of the multiplexer 10, and the priority is BR 2 * → BR 1 * → BR 0 * → BR 3 * . At this time, if any one of the active state (low), the control signal generator 20 generates a first control signal of the "low" state to enable the multiplexer 10 to maintain the current bus request signal, The two bus arbitration unit 60 generates an acknowledgment signal for the corresponding bus request signal in accordance with the above priority.

이후의 동작은 상술한 바와 동일하며, 버스 마스터가

Figure kpo00019
신호를 디액티브 시키는 순간, 카운터(30)는 카운트값을 "1"로 증가시킨다.Subsequent operations are the same as described above, where the bus master
Figure kpo00019
Upon deactivating the signal, the counter 30 increments the count value to "1".

따라서 상기 카운터(30)의 출력은 "10"이 되며, 디코더(40)는 상기 카운터값에 의해 제3선택신호를 발생하게 되고 이로 인해 제3중재부(70)가 인에이블된다. 이후의 동작을 상술한 과정과 동일하다.Accordingly, the output of the counter 30 becomes "10", and the decoder 40 generates the third selection signal by the counter value, thereby enabling the third arbitration unit 70. The subsequent operation is the same as the above-described process.

상기의 과정을 종합하면 제1-제4버스중재부(50-80)의 동작은 BBSY 신호에 따라 우선권이 주기적으로 변하게 된다. 즉, 카운터(30)의 출력이 "00→01→10→11→00…"순으로 변함에 따라 디코더(40)가 제1버스중재부(50)→제2버스중재부(60)→제3버스중재부(70)→제4버스중재부(80)→…순으로 인에이블시킴으로서, 우선적으로 BR3 *, BR2 *, BR1 *, BR0 *→ BR2 *→ BR1 *, BR0 *, BR3 *→ BR1 *, BR0 *, BR3 *, BR2 *→ BR0 *, BR3 *, BR2 *, BR1 *→…의 순서로 변하게 된다. 이때 상기 카운터(30)의 출력값에 따른 우선권에 의해 버스를 중재하는 시간(arbitration time)은 카운터(30)와 버스중재부의 전달시간(propagation time)과 같다.In sum, the priorities of the operations of the first to fourth bus arbitration units 50 to 80 are periodically changed according to the BBSY signal. That is, as the output of the counter 30 changes from "00 → 01 → 10 → 11 → 00…”, the decoder 40 causes the first bus arbitration unit 50 to the second bus arbitration unit 60 to 3 Bus Arbitration Unit (70) → 4th Bus Arbitration Unit (80) By enabling in order, BR 3 * , BR 2 * , BR 1 * , BR 0 * → BR 2 * → BR 1 * , BR 0 * , BR 3 * → BR 1 * , BR 0 * , BR 3 * , BR 2 * → BR 0 * , BR 3 * , BR 2 * , BR 1 * →. Will change in the order of. At this time, the arbitration time of arbitrating the bus by the priority according to the output value of the counter 30 is equal to the propagation time of the counter 30 and the bus arbitration unit.

제3도를 참조하여 상기 카운터(30)의 값이 "00"일 때 발생하는 버스요구신호에 대한 버스중재과정을 구체적으로 살펴본다.Referring to FIG. 3, the bus arbitration process for the bus request signal generated when the value of the counter 30 is "00" will be described in detail.

제3도에서 MUX(M1-M4)는 제3도에 멀티플렉서(30)이며, 인버터(IG1-IG4), 오아게이트(OG1) 및 앤드게이트(NG1)는 제어신호발생부(20)이고, 낸드게이트(NG2-NG5)는 제1버스중재부(50)이다. 또한 노아게이트(NO1)는 디코더(40)의 일부로서 카운터(30)의 출력이 "00"일때에만 "하이"신호를 발생시켜 제1버스중재부(50)를 인에이블시킨다.In FIG. 3, the MUX M1-M4 is the multiplexer 30 in FIG. 3, the inverters IG1-IG4, the OA gate OG1, and the AND gate NG1 are the control signal generator 20, and the NAND. The gates NG2-NG5 are the first bus arbitration section 50. In addition, the NOA gate NO1 generates a "high" signal only when the output of the counter 30 is "00" as part of the decoder 40 to enable the first bus arbitration unit 50.

따라서 카운터(30)의 출력이 "00"이 아닐시에는 노아게이트(NO1)의 출력이 "로우"가 되므로, 버스요구신호 BR3 *-BR0 *의 발생에 관계없이 제1중재부(50)인 낸드게이트(N2-N5)는 "하이"신호를 발생하므로써 버스승인 신호를 발생하지 않는다. 즉 제1버스중재부(50)는 버스중재를 하지 않는다. 그러나 상기 카운터(30)의 출력이 "00"일시에는 상기 노아게이트(NO1)의 출력이 "하이"가 되므로 제1선택신호로 동작하게 되며, 이로인해 버스요구신호 BR3 *-BR0 *를 각각 입력하는 상기 앤드게이트(N2-N5)로 "하이" 신호를 인가하여 인에이블 상태로 만든다. 따라서 제1버스중재부(50)는 임의 버스요구신호 BR3 *-BR0 *가 액티브 상태가 될시 해당 앤드게이트로 로우상태의 버스승인신호를 발생하게 된다. 즉 상기 제4중재부(80)의 구성에서 낸드게이트(NG2)의 출력은 낸드게이트(NG3-NG5)의 입력으로, 낸드게이트(NG3)의 출력은 낸드게이트(NG4-NG5)의 입력으로, 낸드게이트(NG4)의 출력은 낸드게이트(NG5)의 입력으로 다시 인가되므로서, 결과적으로 제1버스중재부(50)의 버스중재 우선권은, BR3 *→BR2 *→BR1 *→BR0 *의 순서가 된다.Therefore, when the output of the counter 30 is not "00", the output of the NOA gate NO1 becomes "low". Therefore, the first arbitration unit 50 is irrelevant regardless of the occurrence of the bus request signal BR 3 * -BR 0 * . NAND gates N2-N5 do not generate a bus approval signal by generating a "high" signal. That is, the first bus arbitration unit 50 does not perform bus arbitration. However, when the output of the counter 30 is "00", the output of the NOA gate NO1 becomes "high", so that the counter 30 operates as the first selection signal. Thus, the bus request signal BR 3 * -BR 0 * A high signal is applied to each of the AND gates N2-N5 to be input to make the enable state. Accordingly, when the arbitrary bus request signal BR 3 * -BR 0 * becomes active, the first bus arbitration unit 50 generates a bus approval signal in a low state to the corresponding AND gate. That is, in the configuration of the fourth arbitration unit 80, the output of the NAND gate NG2 is the input of the NAND gate NG3-NG5, and the output of the NAND gate NG3 is the input of the NAND gate NG4-NG5. The output of the NAND gate NG4 is again applied to the input of the NAND gate NG5, so that the priority of the bus arbitration of the first bus arbitration section 50 is BR 3 * → BR 2 * → BR 1 * → BR In order of 0 * .

먼저 상기 BR3 *-BR0 *중 임의의 버스요구신호가 "로우"상태로 액티브되면, MUX(M1-M4)를 통해 인버터(IG1-IG4)로 인가되고, 인버터(IG1-IG4)는 이들 신호를 반전하여 상기 낸드게이트(NG2-NG5)에 각각 인가하는 동시에 오아게이트(OG1)로 인가한다.First, when any bus request signal of BR 3 * -BR 0 * is activated in a "low" state, it is applied to the inverters IG1-IG4 through the MUX M1-M4, and the inverters IG1-IG4 are connected to these. The signal is inverted and applied to the NAND gates NG2-NG5, respectively, and simultaneously applied to the oragate OG1.

따라서 오아게이트(OG1)는 상기 액티브된 임의의 버스요구신호에 의해 "하이" 신호를 발생한다. 이때

Figure kpo00020
신호의 상태는 버스가 사용되고 있는 상태가 아니므로 "하이"상태이며, 이로 인해 낸드게이트(NG1)는 "로우" 신호로 출력하게 된다. 따라서 MUX(M1-M4)는 (A) 단자측 입력을 선택하게 되어 이후 발생되는 버스요구신호의 영향을 받지 않도록 현상태를 유지시킨다. 이때 낸드게이트(NG2-NG5)는 발생한 버스요구 신호에 대하여 버스 승인 신호를 발생하며, 이 상태는
Figure kpo00021
신호가 액티브상태(low)로 천이될 때까지 계속된다. 이때 상기 낸드게이트(NG2-NG5)를 통한 버스승인신호
Figure kpo00022
의 논리상태는 하기와 같다.OA gate OG1 thus generates a " high " signal by the active bus request signal. At this time
Figure kpo00020
The state of the signal is a "high" state because the bus is not in use, and thus the NAND gate NG1 outputs a "low" signal. Therefore, the MUX (M1-M4) selects the (A) terminal side input and maintains the present state so as not to be influenced by a subsequent bus request signal. At this time, the NAND gate NG2-NG5 generates a bus acknowledgment signal with respect to the generated bus request signal.
Figure kpo00021
It continues until the signal transitions to the active state (low). At this time, the bus approval signal through the NAND gates NG2-NG5.
Figure kpo00022
The logic state of is as follows.

Figure kpo00023
Figure kpo00023

이후 상기

Figure kpo00024
신호가 액티브 상태(low)가 되면 낸드게이트(NG1)의 출력이 "하이"상태, 즉 제2제어신호가 되므로 MUX(M1-M4)는 다시 B단자의 입력을 선택하게 된다.Since the above
Figure kpo00024
When the signal becomes active (low), the output of the NAND gate NG1 becomes the "high" state, that is, the second control signal, so the MUX M1-M4 selects the input of the B terminal again.

이후 VME 버스를 통해 데이터 전송을 완료하게 되면,

Figure kpo00025
신호가 디액티브상태(하이)로 천이되며, 이로 인해 카운터(30)로는 클럭을 공급하게 된다. 따라서 제1버스중재부(50)의 버스중재는 종료되고, 제2버스중재부(60)가 인에이블된다.After completing the data transfer through the VME bus,
Figure kpo00025
The signal transitions to the inactive state (high), which causes the counter 30 to supply a clock. Accordingly, the bus arbitration of the first bus arbitration unit 50 is terminated and the second bus arbitration unit 60 is enabled.

제4도의 타이밍도를 참조하여 제3도의 동작을 살펴본다.An operation of FIG. 3 will be described with reference to the timing diagram of FIG. 4.

제4a도의 과정을 설명하면, 먼저 (4a) 및 (4b)와 같이 BR2 *, BR1 *이 거의 동시에 발생될 경우, 제1중재부(50)의 버스중재 우선권에 의해 낸드게이트(NG3)를 통해 먼저

Figure kpo00026
신호가 액티브되며, 이로 인해 (4c)와 같이
Figure kpo00027
신호가 "로우"인 구간에서 BR2 *를 발생한 버스요구신호부가 VME 버스를 통해 데이터를 전송한다. 이후 상기 (4c)의
Figure kpo00028
신호가 디액티브되는 순간 카운터(30)는 "01"를 출력하게 된다. 따라서 제2버스중재부(60)가 인에이블되며, 상기 (4b)와 같이 BR1 *신호는 제2버스중재부(60)에서 (4e)와 같은 버스승인신호
Figure kpo00029
을 발생한다.Referring to the process of FIG. 4A, first, when BR 2 * and BR 1 * are generated at the same time as in (4a) and (4b), the NAND gate NG3 is set by the bus arbitration priority of the first arbitration unit 50. First through
Figure kpo00026
The signal is active, which causes (4c)
Figure kpo00027
In the section where the signal is "low", the bus request signal unit generating BR 2 * transmits data through the VME bus. After (4c)
Figure kpo00028
The moment the signal is deactivated, the counter 30 outputs "01". Therefore, the second bus arbitration unit 60 is enabled, and the BR 1 * signal is the bus approval signal such as 4e in the second bus arbitration unit 60 as shown in (4b).
Figure kpo00029
Occurs.

이때 t1을 제1버스중재부(50) 및 카운터(30)의 전달시간인 버스중재시간이며, t2는 제1버스중재부(50)의 전달시간이다.In this case, t1 is a bus arbitration time which is a transmission time of the first bus arbitration unit 50 and the counter 30, and t2 is a transmission time of the first bus arbitration unit 50.

두번째로 제4b도의 과정을 설명하면,

Figure kpo00030
신호가 BR1 *신호보다 조금 늦게 발생된 경우(ta>tb) (4m)과 같은 낸드게이트(NG1)의 "로우"상태의 제1제어신호에 의해 MUX(M2, M3)는 (4h)와 같이
Figure kpo00031
신호를 "하이" 상태로, (4i)와 같이
Figure kpo00032
신호를 "로우"로 하여 최초 버스요구신호 발생상황을 유지시킨다. 따라서 낸드게이트(N4)과 (4e)과 같이 먼저
Figure kpo00033
신호를 발생하며, BR1 *신호를 발생한 버스요구부가 먼저 VME 버스를 통해 데이터를 전송하며 (4i)와 같이
Figure kpo00034
신호가 "로우"상태로 만든다.Secondly, the process of FIG. 4b is explained.
Figure kpo00030
When the signal is generated a little later than the BR 1 * signal (ta> tb), the MUX (M2, M3) is equal to (4h) by the first control signal in the "low" state of the NAND gate NG1 equal to (4m). together
Figure kpo00031
Leave the signal "high", as in (4i)
Figure kpo00032
The signal is " low " to maintain the initial bus request signal generation status. Therefore, like NAND gates (N4) and (4e),
Figure kpo00033
Signal is generated, and the bus request unit generating the BR 1 * signal first transmits data through the VME bus, as shown in (4i).
Figure kpo00034
Make the signal "low".

이후 상기

Figure kpo00035
신호가 "하이"상태로 디액티브되는 순간 낸드게이트(NG1)가 (4m)와 같이 "하이"상태의 제2제어신호를 발생하므로 MUX(M1-M4)는 다시 A단자측 입력을 선택하며, 이때 MUX(M2)는 (4h)와 같이 "로우"상태의
Figure kpo00036
신호를 선택한다. 이때 상기 제2제어신호에 의해 카운터(30)는 "01"을 출력하며, 따라서 디코더(40)는 제2선택신호를 출력하고, 이로 인해 제2버스중재부(60)가 인에이블된다.Since the above
Figure kpo00035
As the NAND gate NG1 generates the second control signal in the "high" state as (4m) as soon as the signal is deactivated to the "high" state, the MUX (M1-M4) selects the A terminal side input again. At this time, MUX (M2) is in the "low" state such as (4h).
Figure kpo00036
Select the signal. At this time, the counter 30 outputs "01" by the second control signal, and thus the decoder 40 outputs a second selection signal, thereby enabling the second bus arbitration unit 60.

따라서 상기

Figure kpo00037
신호는 제2버스중재부(60)에서 중재한다.Thus above
Figure kpo00037
The signal is mediated by the second bus arbitration unit 60.

상술한 과정을 종합하면 카운터(30)의 초기화는 시스템리세트신호

Figure kpo00038
에 의해 수행되며, 카운터(30)의 클럭은
Figure kpo00039
신호가 액티브 상태(low)에서 디액티브상태(high) 상태로 천이되는 순간 공급된다.In summary, the initialization of the counter 30 is a system reset signal.
Figure kpo00038
Is performed by the clock of the counter 30
Figure kpo00039
The signal is supplied at the moment when the signal transitions from the active state to the high state.

또한 멀티플렉서(10)의 입력단자를 선택하기 위한 제어신호를 발생하는 제어신호발생부(20)의 논리식은 하기와 같다.In addition, the logic of the control signal generator 20 for generating a control signal for selecting the input terminal of the multiplexer 10 is as follows.

Figure kpo00040
Figure kpo00040

또한 버스승인신호

Figure kpo00041
의 논리식은 하기와 같다.Also bus approval signal
Figure kpo00041
The logical expression of is as follows.

Figure kpo00042
Figure kpo00042

따라서 제1-제4버스중재부(50-80)는 카운터(30)의 출력상태에 따라 상기

Figure kpo00043
의 논리식과 같이 구성하면 된다.Accordingly, the first to fourth bus arbitration units 50-80 may be configured according to the output state of the counter 30.
Figure kpo00043
It can be configured as the logical expression of.

상술한 바와 같이 VME 버스를 사용하는 시스템에서 여러 개의 버스 마스터가 동일한 우선권을 가지고 버스요구신호를 발생할 수 있으며, 이로 인해 버스중재시간을 최소화할 수 있고, 멀티플렉서를 통해 버스요구신호 발생시 해당상태를 유지함으로써 반 중재에러를 제거할 수 있는 이점이 있다.As described above, in a system using a VME bus, multiple bus masters may generate a bus request signal with the same priority, thereby minimizing bus arbitration time and maintaining a corresponding state when a bus request signal is generated through a multiplexer. This has the advantage of eliminating anti-mediation errors.

Claims (1)

VME 버스를 사용하는 시스템의 버스중재회로에 있어서, 제2제어신호 발생시 각 버스마스터의 버스 요구신호를 입력하며 제1제어신호 발생시 현재의 버스요구상태를 유지하는 멀티플렉서와, 상기 멀티플렉서에서 버스요구신호 발생시 상기 제1제어신호를 발생하며 버스사용신호 발생시 상기 제2제어신호를 발생하는 제어신호발생부와, 상기 버스사용신호 해제시마다 동작되어 버스중재의 동일한 우선권을 부여하기 위한 카운트 데이터를 발생하는 카운터와, 상기 카운터의 출력에 따른 선택신호를 발생하는 디코더와, 상기 멀티플렉서의 출력을 입력하며 상기 디코더의 출력에 의해 해당 중재부가 인에이블되어 자체 중재부의 버스중재 우선권에 따라 버스승인신호를 버스중재부로 구성됨을 특징으로 하는 라운드 로빈 방식의 버스중재회로.A bus arbitration circuit of a system using a VME bus, comprising: a multiplexer for inputting a bus request signal of each bus master when a second control signal is generated and maintaining a current bus request state when a first control signal is generated; and a bus request signal from the multiplexer. A counter that generates the first control signal when generated and generates a second control signal when a bus use signal is generated, and a counter that operates every time the bus use signal is released to generate count data for giving the same priority to bus arbitration; And a decoder for generating a selection signal according to the output of the counter, and an output of the multiplexer. Round robin bus arbitration circuit, characterized in that the configuration.
KR1019890009180A 1989-06-30 1989-06-30 Bus arbitration circuit in round-robin selecting method KR910008418B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019890009180A KR910008418B1 (en) 1989-06-30 1989-06-30 Bus arbitration circuit in round-robin selecting method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019890009180A KR910008418B1 (en) 1989-06-30 1989-06-30 Bus arbitration circuit in round-robin selecting method

Publications (2)

Publication Number Publication Date
KR910002250A KR910002250A (en) 1991-01-31
KR910008418B1 true KR910008418B1 (en) 1991-10-15

Family

ID=19287639

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019890009180A KR910008418B1 (en) 1989-06-30 1989-06-30 Bus arbitration circuit in round-robin selecting method

Country Status (1)

Country Link
KR (1) KR910008418B1 (en)

Also Published As

Publication number Publication date
KR910002250A (en) 1991-01-31

Similar Documents

Publication Publication Date Title
EP0358716B1 (en) Node for servicing interrupt request messages on a pended bus
EP0370018B1 (en) Apparatus and method for determining access to a bus
US5832278A (en) Cascaded round robin request selection method and apparatus
EP0360817B1 (en) High speed low pin count bus interface
EP0358715B1 (en) Interrupting node for providing interrupt requests to a pended bus
US5146597A (en) Apparatus and method for servicing interrupts utilizing a pended bus
US5111424A (en) Lookahead bus arbitration system with override of conditional access grants by bus cycle extensions for multicycle data transfer
EP0346398B1 (en) Apparatus and method for a node to obtain access to a bus
JPH02293959A (en) Interface apparatus
US4829515A (en) High performance low pin count bus interface
US5034883A (en) Lockhead bus arbitration system with override of conditional access grants by bus cycle extensions for multicycle data transfers
US5875339A (en) Asynchronous arbiter using multiple arbiter elements to enhance speed
US7024506B1 (en) Hierarchically expandable fair arbiter
US5713025A (en) Asynchronous arbiter using multiple arbiter elements to enhance speed
KR910008418B1 (en) Bus arbitration circuit in round-robin selecting method
US4998030A (en) Circuit to arbitrate multiple requests for memory access
US6745273B1 (en) Automatic deadlock prevention via arbitration switching
KR100487218B1 (en) Apparatus and method for interfacing an on-chip bus
KR910007648B1 (en) High performance low pin count for inter
KR970002784B1 (en) Token loss detection and regeneration control circuit
JPH04178869A (en) Interruption control device for multiprocessor system and its interruption communication method
JPH01211154A (en) Arbitrating circuit

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: 20020930

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee