[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR100605867B1 - Bus arbitration method and bus arbitration having a dynamic priority order arbitration function - Google Patents

Bus arbitration method and bus arbitration having a dynamic priority order arbitration function Download PDF

Info

Publication number
KR100605867B1
KR100605867B1 KR1019990014670A KR19990014670A KR100605867B1 KR 100605867 B1 KR100605867 B1 KR 100605867B1 KR 1019990014670 A KR1019990014670 A KR 1019990014670A KR 19990014670 A KR19990014670 A KR 19990014670A KR 100605867 B1 KR100605867 B1 KR 100605867B1
Authority
KR
South Korea
Prior art keywords
bus
arbitration
request signal
priority
masters
Prior art date
Application number
KR1019990014670A
Other languages
Korean (ko)
Other versions
KR20000067135A (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 KR1019990014670A priority Critical patent/KR100605867B1/en
Publication of KR20000067135A publication Critical patent/KR20000067135A/en
Application granted granted Critical
Publication of KR100605867B1 publication Critical patent/KR100605867B1/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/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/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/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • G06F13/1626Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests

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

가. 청구범위에 기재된 발명이 속한 기술분야:버스 중재기에 관한 것이다.end. FIELD OF THE INVENTION The present invention relates to a bus arbitrator.

나. 발명이 해결하려고 하는 기술적 과제:고정 우선순위 중재방법을 채용하는 시스템에서 낮은 우선순위를 갖는 기능 블럭들에게 발생할 수 있는 스타베이션(starvation)을 제거할 수 있도록 하는 버스 중재기 및 그 방법을 제공함에 있다.I. The technical problem to be solved by the present invention is to provide a bus arbiter and a method for eliminating the starvation that can occur to low priority functional blocks in a system employing a fixed priority arbitration method. have.

다. 그 발명의 해결방법의 요지:다수의 버스 마스터들이 하나의 버스를 공유하도록 중재하는 버스 중재기에 있어서, 버스사용 중재시마다 액티브되는 트랜잭션신호를 카운팅하고, 카운팅된 값이 미리 설정된 중재대기횟수 최대 카운트값 이상일 경우 액티브상태의 재중재요구신호를 발생하는 동적 우선순위 조정부와, 버스사용 중재시마다 상기 트랜잭션신호를 액티브시키며 상기 마스터들로부터 버스사용 요구신호 입력시 지정된 우선순위에 따라 버스사용을 승인함과 아울러, 액티브상태의 재중재요구신호 입력시 우선순위에 상관없이 중재대기만료상태인 버스 마스터에 버스사용을 승인하는 중재부와, 상기 버스사용 요구신호 입력시에 상기 중재부를 인에이블시키는 중재 제어부로 구성함을 특징으로 한다.All. Summary of the Invention A bus arbiter in which multiple bus masters arbitrate to share one bus, the active transaction signal being counted at each bus usage arbitration, and the counted value is a preset arbitration wait count maximum count value. In case of abnormality, the dynamic priority adjusting unit generates an active remediation request signal, and activates the transaction signal at every bus use arbitration, and approves the bus use according to the designated priority when the bus use request signal is input from the masters. And an arbitration unit for approving the use of the bus to the bus master in the arbitration waiting state regardless of the priority upon inputting an active redial arbitration request signal, and an arbitration control unit for enabling the arbitration unit when the bus use request signal is input. It is characterized by.

라. 발명의 중요한 용도:다수의 버스 마스터들이 하나의 버스를 공유하는 컨트롤러에 사용할 수 있다.la. Important uses of the invention: Multiple bus masters can be used in a controller that shares a bus.

버스, 중재기Bus, arbiter

Description

동적 우선순위 조정 기능을 갖는 버스 중재기와 버스 중재방법{BUS ARBITRATION METHOD AND BUS ARBITRATION HAVING A DYNAMIC PRIORITY ORDER ARBITRATION FUNCTION} BUS ARBITRATION METHOD AND BUS ARBITRATION HAVING A DYNAMIC PRIORITY ORDER ARBITRATION FUNCTION             

도 1은 본 발명의 실시예에 따른 버스 중재기의 블럭구성도.1 is a block diagram of a bus arbiter according to an embodiment of the present invention.

도 2는 도 1중 동적 우선순위 조정부(300)를 구성하고 있는 N개의 버스 마스터 조정 회로 구성도.FIG. 2 is a diagram illustrating N bus master adjustment circuits constituting the dynamic priority adjusting unit 300 of FIG. 1.

도 3은 도 2에 도시한 하나의 버스 마스터 조정회로(330)의 상세 구성도.FIG. 3 is a detailed configuration diagram of one bus master adjustment circuit 330 shown in FIG. 2.

도 4는 본 발명의 실시예에 따른 버스 중재기의 중재 흐름도.4 is an arbitration flowchart of a bus arbiter according to an embodiment of the present invention.

본 발명은 버스 중재기에 관한 것으로, 특히 우선순위에 의한 중요도를 인정하면서 동시에 낮은 우선순위를 갖는 디바이스들에게 발생할 수 있는 스타베이션(starvation)을 제거하기 위한 동적 우선순위 조정기능을 갖는 버스 중 재기와 그 방법에 관한 것이다.TECHNICAL FIELD The present invention relates to a bus arbiter, in particular, a bus intermediary with a dynamic priority adjustment function for acknowledging priority importance and at the same time eliminating starvation that may occur in low priority devices. It's about how.

마이크로 컨트롤러와 같이 단일 칩으로 집적화되어 있는 시스템은 여러 가지 기능 블럭들로 구성되어 있으며, 이러한 시스템은 칩 사이즈의 소형화를 기하기 위해서 데이터 버스를 공유하는 구조를 가지는 것이 일반적이다. 그리고 마이크로 컨트롤러와 같은 시스템은 일반적으로 집적화된 각각의 기능 블럭들이 데이터 버스를 공유할 수 있도록 중재역할을 수행하는 중재기를 포함하고 있다. 그리고 버스를 공유하는 각 버스 마스터(bus master)들에게는 그 중요도에 따라 버스 점유율이 상대적으로 높은 것들과 낮은 것들로 구분할 수 있는데, 이렇게 서로 다른 중요도를 갖는 버스 마스터들간의 중재에는 고정 우선수위 중재방법이 많이 적용되고 있다.A system integrated with a single chip, such as a microcontroller, is composed of several functional blocks, and such a system generally has a structure in which data buses are shared in order to reduce chip size. In addition, systems such as microcontrollers generally include an arbiter that performs an arbitration role so that each integrated functional block can share a data bus. For bus masters sharing a bus, the bus occupancy can be divided into high and low bus shares according to their importance.The fixed priority arbitration method is used for arbitration between bus masters having different importance. This is applied a lot.

그러나 상술한 고정 우선순위에 의한 중재방법에서는 우선순위가 높은 마스터들이 버스 점유 확률이 높은 반면, 상대적으로 낮은 우선순위의 버스 마스터들에게는 버스 점유율이 낮거나, 최악의 경우에는 한번도 버스를 점유하지 못하게 되는 상황이 발생할 수도 있다.However, in the above-described fixed priority arbitration method, high priority masters have a high probability of bus occupancy, while low priority bus masters have low bus occupancy or, in the worst case, never occupy the bus. Situations may arise.

따라서 본 발명의 목적은 다수의 기능 블럭들이 하나의 버스 자원을 공유하여야 하는 시스템에 있어서, 우선순위가 높은 기능 블럭들의 우선순위를 인정함과 아울러 낮은 우선순위의 기능블럭들에게도 버스 자원을 점유할 수 있도록 하는 버스 중재기와 버스 중재방법을 제공함에 있다.Accordingly, an object of the present invention is to recognize the priority of higher priority functional blocks and to occupy the bus resources to lower priority functional blocks in a system in which multiple functional blocks must share a single bus resource. To provide a bus arbitrator and a bus arbitration method.

본 발명의 또 다른 목적은 고정 우선순위 중재방법을 채용하는 시스템에서 낮은 우선순위를 갖는 기능 블럭들에게 발생할 수 있는 스타베이션(starvation)을 제거할 수 있도록 하는 버스 중재기 및 그 방법을 제공함에 있다.It is still another object of the present invention to provide a bus arbiter and a method for eliminating starvation that may occur in functional blocks having low priority in a system employing a fixed priority arbitration method. .

상기 목적을 달성하기 위한 본 발명은 다수의 버스 마스터들이 하나의 버스를 공유하도록 중재하는 버스 중재기에 있어서,The present invention for achieving the above object is a bus arbiter for arranging a plurality of bus masters to share a bus,

버스사용 중재시마다 액티브되는 트랜잭션신호를 카운팅하고, 카운팅된 값이 미리 설정된 중재대기횟수 최대 카운트값 이상일 경우 액티브상태의 재중재요구신호를 발생하는 동적 우선순위 조정부와,A dynamic priority adjustment unit for counting an active transaction signal at each bus use arbitration and generating an active remediation request signal if the counted value is greater than or equal to a preset maximum number of arbitration wait times;

버스사용 중재시마다 상기 트랜잭션신호를 액티브시키며 상기 마스터들로부터 버스사용 요구신호 입력시 지정된 우선순위에 따라 버스사용을 승인함과 아울러, 액티브상태의 재중재요구신호 입력시 우선순위에 상관없이 중재대기만료상태인 버스 마스터에 버스사용을 승인하는 중재부와,The transaction signal is activated at every bus use arbitration, and the bus is approved according to the priority specified when the bus use request signal is input from the masters, and the arbitration wait expires regardless of the priority when the active remediation request signal is input. An arbitration unit that authorizes the bus master to be in use;

상기 버스사용 요구신호 입력시에 상기 중재부를 인에이블시키는 중재 제어부로 구성함을 특징으로 한다.
And an arbitration control unit for enabling the arbitration unit when the bus use request signal is input.

이하 첨부한 도면을 참조하여 본 발명의 실시예에 따른 동작을 상세히 설명하기로 한다. 그리고 하기 설명에서는 버스 마스터들의 수를 N개로 정의하여 본 발명의 실시예를 설명하기로 한다.Hereinafter, an operation according to an exemplary embodiment of the present invention will be described in detail with reference to the accompanying drawings. In the following description, an embodiment of the present invention will be described by defining the number of bus masters as N.

도 1은 본 발명의 실시예에 따른 버스 중재기의 블럭구성도를 도시한 것이며, 도 2는 도 1중 동적 우선순위 조정부(300)를 구성하고 있는 N개의 버스 마스터 조정 회로 구성을 도시한 것이며, 도 3은 도 2에 도시한 하나의 버스 마스터 조정회로(330)의 상세 구성도를 도시한 것이다. 그리고 도 4는 본 발명의 실시예에 따른 버스 중재기의 중재 흐름도를 도시한 것이다.FIG. 1 illustrates a block diagram of a bus arbiter according to an exemplary embodiment of the present invention, and FIG. 2 illustrates a configuration of N bus master adjusting circuits constituting the dynamic priority adjusting unit 300 of FIG. 1. 3 shows a detailed configuration diagram of one bus master adjustment circuit 330 shown in FIG. 4 illustrates an arbitration flowchart of a bus arbiter according to an embodiment of the present invention.

우선 도 1을 참조하면, 중재 제어부(100)는 버스 슬레이브들의 응답신호SL_Res와 버스사용 요구신호 수신에 응답하여 중재부(200)의 중재개시를 제어한다. 즉, 중재 제어부(100)는 상기 응답신호와 버스사용 요구신호 REQ가 액티브상태로 입력될때 인에이블신호 en을 출력하여 중재동작이 개시되도록 한다. 중재부(200)는 버스사용 요구신호 REQ[n-1:0] 입력시 지정된 우선순위에 따라 버스사용을 승인하고, 액티브상태의 재중재요구신호 reMap[n-1:0] 입력시 상기 우선순위에 우선하여 버스사용을 승인한다. 즉, 중재부(200)는 버스 마스터들로부터 입력되는 버스요구신호 REQ[n-1:0]의 중복입력시 고정 우선순위 중재결과에 따른 버스사용 승인신호 ACK[n-1:0]를 출력하고, 동적 우선순위 조정부(300)로부터 액티브상태의 재중재요구신호 reMap[n-1:0]이 입력되면 상기 고정 우선순위 중재결과에 우선하여 중재대기만료상태인 버스 마스터에게 버스 사용을 승인한다. 그리고 상기 중재부(200)는 매 중재시마다 액티브상태의 트랜잭션신호 TRAN를 출력한다. 상기 "중재대기만료상태"라 함은 후술하는 최대 카운트 레지스터(400)에 세트되어 있는 최대 카운트값까지 해당 버스 마스터가 버스 사용을 대기하는 상태로써, 버스 사용을 요구한 버스 마스터는 중재횟수가 해당 최대 카운트 레지스터(400)에 세트되어 있는 카운트값 이상이 되면 우선순위에 상관없이 버스사용을 승인받게 된다.First, referring to FIG. 1, the arbitration controller 100 controls the arbitration start of the arbitration unit 200 in response to receiving the response signal SL_Res and the bus use request signal of the bus slaves. That is, the arbitration control unit 100 outputs an enable signal en when the response signal and the bus use request signal REQ are active, so that the arbitration operation is started. The arbitration unit 200 approves the use of the bus according to the priority specified when the bus use request signal REQ [n-1: 0] is input, and the priority when the remediation request signal reMap [n-1: 0] is active. Approve bus use in priority order. That is, the arbitration unit 200 outputs the bus use acknowledgment signal ACK [n-1: 0] according to the fixed priority arbitration result when the bus request signals REQ [n-1: 0] input from the bus masters are duplicated. When the active remediation request signal reMap [n-1: 0] is input from the dynamic priority adjusting unit 300, the bus master is granted to the bus master in the arbitration waiting period in preference to the fixed priority arbitration result. . The arbitration unit 200 outputs an active transaction signal TRAN every arbitration. The "intermediate wait expired state" is a state in which the corresponding bus master waits for the bus to the maximum count value which is set in the maximum count register 400 to be described later. When the count value is greater than or equal to the count value set in the maximum count register 400, the bus is approved regardless of priority.

최대 카운트 레지스터(400)는 각각의 버스 마스터에 할당되어 있으며 각각의 마스터가 버스사용 요구한후 대기상태에 있을 최대 카운트값을 저장한다. 이러한 최대 카운트값은 초기에 하드 와이어(hard wire)로 고정된 값을 가질 수 있으며, 외부 인터페이스를 가지고 프라이머리(primary) CPU에 의해 프로그램될 수도 있다.The maximum count register 400 is assigned to each bus master and stores the maximum count value to be in standby after each master requests bus usage. This maximum count value may initially have a hard wire fixed value and may be programmed by a primary CPU with an external interface.

동적 우선순위 조정부(300)는 각각 중재횟수 카운트값이 해당 최대 카운트 레지스터(400)에 세트되어 있는 최대 카운트값 MAX_C과 동일하거나 그 이상이면 액티브상태의 재중재요구신호 reMap(N)를 출력하는 마스터 조정회로를 구비한다. 상기 마스터 조정회로는 도 2에 도시한 바와 같이 버스 마스터들과 동수로 존재하며 각 버스 마스터로부터 버스사용 요구신호

Figure 111999003851399-pat00001
을 입력받는다. 또한 각각의 마스터 조정회로(310∼330)는 상기 중재부(200)로부터 버스사용 승인신호
Figure 111999003851399-pat00002
와 트랜잭션(TRANsaction)신호 TRAN을 입력받는다. 이러한 마스터 조정회로 각각은 도 3에 도시한 바와 같이 앤드게이트(336)와, 카운터(332) 및 비교기(334)로 구성된다.The dynamic priority adjusting unit 300 outputs an active remediation request signal reMap (N) when the mediation count count value is equal to or greater than the maximum count value MAX_C set in the corresponding maximum count register 400, respectively. An adjusting circuit is provided. The master adjustment circuit is equal to the bus masters as shown in FIG.
Figure 111999003851399-pat00001
Receive the input. In addition, each master control circuit (310 to 330) is a bus use approval signal from the arbitration unit (200)
Figure 111999003851399-pat00002
And TRANsaction signal TRAN is received. Each of these master adjustment circuits includes an AND gate 336, a counter 332, and a comparator 334 as shown in FIG.

이하 마스터0 조정회로(330)의 상세 구성을 보인 도 3을 참조하여 액티브상태의 재중재요구신호 reMap0가 발생되기 까지의 과정을 설명하기로 한다.Hereinafter, referring to FIG. 3, which shows the detailed configuration of the master 0 adjustment circuit 330, a process of generating an active remediation request signal reMap0 will be described.

우선 마스터 0으로 부터 버스요구가 없으면 카운터(332)는 클리어상태를 유지한다. 만약 버스사용 요구신호 REQ0가 있고("하이"상태) 버스사용 승인신호 ACK0가 논-액티브인 상태이면, 앤드게이트(336)는 중재부(200)가 매 중재를 할때 마다, 즉 트랜잭션신호 TRAN이 액티브될때 마다 인에이블되어 카운터(332)는 1씩 업 카운팅동작한다. 즉, 상기 카운터(332)는 중재부(200)의 중재횟수를 카운트하게 되는 것이다. 이와 같이 중재부(200)의 중재횟수를 카운트한 값이 최대 카운트 레지스터(400)로부터 로딩된 최대 카운트값 MAX_

Figure 111999003851399-pat00003
과 동일하거나 그 이상이면 비교 기(334)로부터는 액티브상태의 재중재요구신호 reMap0가 출력되고, 이러한 재중재요구신호 reMap0는 중재부(200)로 입력되어 미리 지정된 우선순위에 상관없이 중재대기만료상태인 버스 마스터에게 버스사용권을 부여하는데 이용된다.First, if there is no bus request from master 0, the counter 332 remains clear. If the bus usage request signal REQ0 is present (" high " state) and the bus usage approval signal ACK0 is non-active, then the AND gate 336 is used whenever the arbitration unit 200 mediates, i.e., the transaction signal TRAN. Each time it is activated, the counter 332 is up counted by one. That is, the counter 332 counts the number of arbitrations of the arbitration unit 200. As such, the value counting the number of arbitrations of the arbitration unit 200 is the maximum count value MAX_ loaded from the maximum count register 400.
Figure 111999003851399-pat00003
Is equal to or greater than the comparator 334, the remediation request signal reMap0 in the active state is output, and the remediation request signal reMap0 is input to the arbitration unit 200 to terminate the arbitration wait regardless of the predetermined priority. It is used to grant a bus license to the bus master in status.

이하 도 1 내지 도 4를 참조하여 중재부(200)의 고정 우선순위 중재결과에 따라 버스사용 승인신호가 발생하는 과정과, 재중재요구신호에 따라 버스사용 승인신호가 발생하는 과정을 순차적으로 설명하기로 한다.Hereinafter, a process of generating a bus use approval signal according to the fixed priority arbitration result of the arbitration unit 200 and a process of generating a bus use approval signal according to the remediation request signal will be described in detail with reference to FIGS. 1 to 4. Let's do it.

하기 설명에서 버스 슬레이브는 버스의 사용권한을 받은 마스터로부터 출력된 어드레스와 컨트롤 커맨드를 해석하여 그에 따른 동작을 수행하고 완료시점에서 응답신호 SL_Res를 액티브상태로 출력하는 것으로 가정한다.In the following description, it is assumed that a bus slave interprets an address and a control command output from a master authorized to use a bus, performs an operation accordingly, and outputs a response signal SL_Res in an active state at completion.

이러한 가정하에서 우선 시스템이 시작되면 모든 마스터와 슬레이브들은 리셋으로 초기화되고, 중재부(200)는 500단계에서 마스터로부터의 버스사용 요구신호 REQ의 입력을 기다린다. 임의의 마스터로부터 버스사용 요구신호 REQ가 입력되면 중재부(200)는 510단계에서 중재를 수행한다. 만약 하나의 마스터로부터 버스사용 요구신호 REQ가 입력되었다면 중재부(200)는 입력요구한 버스 마스터에 할당되어 있는 버스사용 승인신호 ACK만을 액티브시킨다. 만약 여러 버스 마스터가 버스의 사용을 요구할 경우 중재부(200)는 액티브상태의 요구신호들중에서 가장 우선순위가 높은 마스터를 검색하여 해당 마스터에게만 액티브상태의 버스사용 승인신호 ACK를 출력하여 준다.Under this assumption, when the system starts, all masters and slaves are initialized to reset, and the arbitration unit 200 waits for the input of the bus use request signal REQ from the master in step 500. When the bus use request signal REQ is input from an arbitrary master, the arbitration unit 200 performs arbitration in step 510. If the bus use request signal REQ is input from one master, the arbitration unit 200 activates only the bus use acknowledgment signal ACK assigned to the requested bus master. If several bus masters request the use of a bus, the arbitration unit 200 searches for the highest priority master among the active request signals and outputs an active bus use acknowledgment signal ACK only to the corresponding master.

이상은 버스 마스터들의 버스 요구가 빈번하지 않을 경우의 일반적인 중재방법이다. 다음은 N(0, … , N-1)개의 버스 마스터의 중재기능에 대하여 설명한다. 만약 버스 마스터 N-1과 버스 마스터 N-2가 계속해서 연속적으로 버스를 요구한다고 가정한다. 그리고 마스터들의 우선순위는 마스터 N-1이 가장 높고, 그 다음은 N-1, … ,마스터0이 가장 낮은 우선순위를 갖는다고 가정했을 때의 동적 우선순위 중재방법을 설명하면 다음과 같다. 우선 마스터0이 버스사용을 요구하면 마스터 0 조정회로(330)는 중재부(200)로부터 입력되는 트랜잭션신호 TRAN을 카운트하기 시작한다. 만약 상기 트랜잭션신호 TRAN의 카운트 도중에 액티브상태의 버스사용 승인신호 ACK0를 부여받지 못하고 중재횟수 카운트값이 최대 카운트 레지스터(400)로부터 로딩된 최대 카운트값 MAX_

Figure 112006011620077-pat00009
과 동일하면, 마스터 0 조정회로(330)는 액티브상태의 재중재요구신호 reMap0를 발생시킨다. 이에 중재부(200)는 동적 우선순위 조정부(300)로부터 액티브상태의 재중재요구신호 reMap0을 입력받고 그에 응답하여 지정된 우선순위에 상관없이 마스터 0이 버스를 사용할 수 있도록 버스사용 승인신호 ACK0를 액티브시킨다. 따라서 버스 마스터 0은 다른 버스 마스터들에 비해 우선순위가 낮더라도 버스 사용권한을 부여받을 수 있게 되는 것이다.The above is a general arbitration method when the bus masters do not require frequent bus requests. The following describes the arbitration function of N (0, ..., N-1) bus masters. Assume that bus master N-1 and bus master N-2 continue to request the bus. And the priority of the masters is the highest master N-1, then N-1,…. The following describes the dynamic priority arbitration method assuming that master 0 has the lowest priority. First, when master 0 requests the use of a bus, master 0 coordination circuit 330 starts to count the transaction signal TRAN input from arbitration unit 200. If during the counting of the transaction signal TRAN, the median count value is loaded from the maximum count register 400 without receiving the active bus use acknowledgment signal ACK0, MAX_
Figure 112006011620077-pat00009
If equal to, the master 0 adjustment circuit 330 generates an active remediation request signal reMap0. In response, the arbitration unit 200 receives the active remediation request signal reMap0 from the dynamic priority adjusting unit 300 and activates the bus use acknowledgment signal ACK0 so that the master 0 can use the bus regardless of the designated priority. Let's do it. Therefore, bus master 0 can be given bus permission even if the priority is lower than other bus masters.

상술한 바와 같이 본 발명은 각 버스 마스터에게 할당된 최대 카운트 레지스터의 값을 조정함으로써, 우선순위가 낮은 마스터라 하여도 레지스터에 로딩된 수 만큼의 중재 대기후에 버스 사용권한을 부여받을 수 있기 때문에 버스중재의 공정성을 가져올 수 있는 장점이 있다.As described above, the present invention adjusts the value of the maximum count register assigned to each bus master, so that even if the master has a low priority, bus usage rights can be granted after waiting for arbitration as many as the number of registers loaded in the register. This has the advantage of bringing fairness to arbitration.

Claims (6)

다수의 버스 마스터들이 하나의 버스를 공유하도록 중재하는 버스 중재기에 있어서,In a bus arbiter that arbitrates multiple bus masters to share a bus, 버스사용 중재시마다 액티브되는 트랜잭션신호를 카운팅하고, 카운팅된 값이 미리 설정된 중재대기횟수 최대 카운트값 이상일 경우 액티브상태의 재중재요구신호를 발생하는 동적 우선순위 조정부와,A dynamic priority adjustment unit for counting an active transaction signal at each bus use arbitration and generating an active remediation request signal if the counted value is greater than or equal to a preset maximum number of arbitration wait times; 버스사용 중재시마다 상기 트랜잭션신호를 액티브시키며 상기 마스터들로부터 버스사용 요구신호 입력시 지정된 우선순위에 따라 버스사용을 승인함과 아울러, 액티브상태의 재중재요구신호 입력시 우선순위에 상관없이 중재대기만료상태인 버스 마스터에 버스사용을 승인하는 중재부와,The transaction signal is activated at every bus use arbitration, and the bus is authorized according to the priority specified when the bus use request signal is input from the masters, and the arbitration wait expires regardless of the priority when the active remediation request signal is input. An arbitration unit that authorizes the bus master to be in use; 상기 버스사용 요구신호 입력시에 상기 중재부를 인에이블시키는 중재 제어부로 구성함을 특징으로 하는 버스 중재기.And an arbitration control unit for enabling the arbitration unit when the bus use request signal is input. 제1항에 있어서, 상기 동적 우선순위 조정부는;The method of claim 1, wherein the dynamic priority adjustment unit; 상기 버스 마스터들중 대응하는 하나의 버스 마스터로부터 버스사용 요구신호 입력후 상기 액티브상태의 트랜잭션신호를 카운팅하는 카운터와,A counter for counting the active transaction signal after inputting a bus use request signal from a corresponding bus master among the bus masters; 상기 카운터의 출력값이 미리 설정된 중재대기횟수 최대 카운트값 이상이면 액티브상태의 재중재요구신호를 발생시키는 비교기로 각각 구성되는 N(0, … , N-1)개의 마스터 조정회로들로 구성됨을 특징으로 하는 버스 중재기.N (0, ..., N-1) master control circuits, each of which is configured as a comparator for generating an active remediation request signal when the output value of the counter is greater than or equal to a preset maximum number of arbitration wait times. Bus arbiter. 제2항에 있어서, 상기 다수개의 마스터 조정회로는 상기 버스 마스터의 수와 동수로 존재하며 하나의 버스 마스터로부터 버스사용 요구신호를 입력받음을 특징으로 하는 버스 중재기.3. The bus arbiter of claim 2, wherein the plurality of master control circuits are equal in number to the bus masters and receive a bus use request signal from one bus master. 다수의 버스 마스터들이 하나의 버스를 공유하도록 중재하는 버스 중재기에 있어서,In a bus arbiter that arbitrates multiple bus masters to share a bus, 버스사용 중재시마다 액티브되는 트랜잭션신호를 카운팅하고, 카운팅된 값이 로딩된 중재대기횟수 최대 카운트값 이상일 경우 액티브상태의 재중재요구신호를 발생하는 동적 우선순위 조정부와,A dynamic priority adjustment unit for counting an active transaction signal at each bus use arbitration and generating an active remediation request signal if the counted value is greater than the maximum number of arbitration wait times loaded; 버스사용 중재시마다 상기 트랜잭션신호를 액티브시키며 상기 마스터들로부터 버스사용 요구신호 입력시 지정된 우선순위에 따라 버스사용을 승인함과 아울러, 액티브상태의 재중재요구신호 입력시 우선순위에 상관없이 중재대기만료상태인 버스 마스터에 버스사용을 승인하는 중재부와,The transaction signal is activated at every bus use arbitration, and the bus is approved according to the priority specified when the bus use request signal is input from the masters, and the arbitration wait expires regardless of the priority when the active remediation request signal is input. An arbitration unit that authorizes the bus master to be in use; 상기 버스 마스터 각각의 중재대기횟수 최대 카운트값을 로딩받아 저장하는 최대 카운트 레지스터들과,A maximum count register configured to load and store a median wait count maximum count value of each bus master; 상기 버스사용 요구신호 입력시마다 상기 중재부를 인에이블시키는 중재 제 어부로 구성함을 특징으로 하는 버스 중재기.And an arbitration control unit for enabling the arbitration unit whenever the bus use request signal is input. 제4항에 있어서, 상기 동적 우선순위 조정부는;The method of claim 4, wherein the dynamic priority adjustment unit; 상기 버스 마스터들중 대응하는 하나의 버스 마스터로부터 버스사용 요구신호 입력후 상기 액티브상태의 트랜잭션신호를 카운팅하는 카운터와,A counter for counting the active transaction signal after inputting a bus use request signal from a corresponding bus master among the bus masters; 상기 카운터의 출력값이 미리 설정된 중재대기횟수 최대 카운트값 이상이면 액티브상태의 재중재요구신호를 발생시키는 비교기로 각각 구성되는 N(0, … , N-1)개의 마스터 조정회로들로 구성됨을 특징으로 하는 버스 중재기.N (0, ..., N-1) master control circuits, each of which is configured as a comparator for generating an active remediation request signal when the output value of the counter is greater than or equal to a preset maximum number of arbitration wait times. Bus arbiter. 다수의 버스 마스터들이 하나의 버스를 공유하도록 중재하는 방법에 있어서,In a method of arbitrating multiple bus masters to share a bus, 상기 버스 마스터들 각각으로 부터 버스사용 요구신호의 입력이 있는가를 검사하는 제1과정과,A first step of checking whether a bus use request signal is input from each of the bus masters; 버스사용 요구신호의 입력이 있는 경우 미리 지정된 우선순위에 따라 상기 버스의 사용을 승인하는 제2과정과,A second process of approving the use of the bus according to a predetermined priority when there is an input of a bus use request signal; 버스사용 중재시마다 액티브되는 트랜잭션신호를 카운팅하고, 카운팅된 값이 미리 설정된 중재대기횟수 최대 카운트값 이상일 경우 미리 지정된 우선순위에 상관없이 중재대기만료상태인 버스 마스터에 우선적으로 버스의 사용을 승인하는 제3과정으로 이루어짐을 특징으로 하는 버스 중재방법.Counting the active transaction signal at each bus use arbitration, and if the counted value is more than the preset maximum number of arbitration wait times, the bus master that preferentially accepts the bus use regardless of the predetermined priority is used. Bus arbitration method characterized by consisting of three steps.
KR1019990014670A 1999-04-23 1999-04-23 Bus arbitration method and bus arbitration having a dynamic priority order arbitration function KR100605867B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990014670A KR100605867B1 (en) 1999-04-23 1999-04-23 Bus arbitration method and bus arbitration having a dynamic priority order arbitration function

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990014670A KR100605867B1 (en) 1999-04-23 1999-04-23 Bus arbitration method and bus arbitration having a dynamic priority order arbitration function

Publications (2)

Publication Number Publication Date
KR20000067135A KR20000067135A (en) 2000-11-15
KR100605867B1 true KR100605867B1 (en) 2006-07-31

Family

ID=19581958

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990014670A KR100605867B1 (en) 1999-04-23 1999-04-23 Bus arbitration method and bus arbitration having a dynamic priority order arbitration function

Country Status (1)

Country Link
KR (1) KR100605867B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100716950B1 (en) * 2000-08-11 2007-05-10 삼성전자주식회사 Bus system
CN111343068A (en) * 2020-04-15 2020-06-26 联合华芯电子有限公司 Double-speed arbitration bus system for giant carrier and carrier

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08297630A (en) * 1995-04-26 1996-11-12 Shikoku Nippon Denki Software Kk Bus connecting system
WO1998012645A1 (en) * 1996-09-19 1998-03-26 Philips Electronics N.V. Method and apparatus for bus arbitration with weighted bandwidth allocation
KR0144022B1 (en) * 1995-05-15 1998-08-17 김주용 Arbiter by lru
US5845097A (en) * 1996-06-03 1998-12-01 Samsung Electronics Co., Ltd. Bus recovery apparatus and method of recovery in a multi-master bus system
KR0169041B1 (en) * 1996-03-29 1999-02-01 양승택 Bus arbitrating apparatus for matching between mbus & vmebus

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08297630A (en) * 1995-04-26 1996-11-12 Shikoku Nippon Denki Software Kk Bus connecting system
KR0144022B1 (en) * 1995-05-15 1998-08-17 김주용 Arbiter by lru
KR0169041B1 (en) * 1996-03-29 1999-02-01 양승택 Bus arbitrating apparatus for matching between mbus & vmebus
US5845097A (en) * 1996-06-03 1998-12-01 Samsung Electronics Co., Ltd. Bus recovery apparatus and method of recovery in a multi-master bus system
WO1998012645A1 (en) * 1996-09-19 1998-03-26 Philips Electronics N.V. Method and apparatus for bus arbitration with weighted bandwidth allocation

Also Published As

Publication number Publication date
KR20000067135A (en) 2000-11-15

Similar Documents

Publication Publication Date Title
US5996037A (en) System and method for arbitrating multi-function access to a system bus
US5572686A (en) Bus arbitration scheme with priority switching and timer
US5862353A (en) Systems and methods for dynamically controlling a bus
US5621897A (en) Method and apparatus for arbitrating for a bus to enable split transaction bus protocols
JP3231596B2 (en) Bus system with latency and shadow timer
US5528767A (en) Programmable multi-level bus arbitration apparatus in a data processing system
US6272580B1 (en) Apparatus and method for dynamically elevating a lower level bus master to an upper level bus master within a multi-level arbitration system
JPS6289159A (en) Method and apparatus for allotting access to data processingresource
JP3519182B2 (en) Information processing system, bus arbiter, and bus control method
US5649209A (en) Bus coupling information processing system for multiple access to system bus
US20070067527A1 (en) Data transfer bus system connecting a plurality of bus masters
US20080059674A1 (en) Apparatus and method for chained arbitration of a plurality of inputs
JPH0635729A (en) Method and device for controlling resource access by plurality of user in data processing system
EP1811393B1 (en) Method and system for data transfer
KR0155269B1 (en) Bus arbitrating method and its apparatus
JPH06161952A (en) Arbitration device of access request
US5822549A (en) Computer system and bus controller for controlling access to a computer bus
TW200400438A (en) Bus arbiter for integrated circuit systems
EP1187029B1 (en) Peripheral component interconnect arbiter implementation with dynamic priority scheme
KR100605867B1 (en) Bus arbitration method and bus arbitration having a dynamic priority order arbitration function
US6745273B1 (en) Automatic deadlock prevention via arbitration switching
US20070073948A1 (en) Bus control system
JP5677007B2 (en) Bus arbitration device and bus arbitration method
US5241629A (en) Method and apparatus for a high performance round robin distributed bus priority network
US6785755B1 (en) Grant removal via dummy master arbitration

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130627

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140627

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee