KR20000067135A - 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
KR20000067135A
KR20000067135A KR1019990014670A KR19990014670A KR20000067135A KR 20000067135 A KR20000067135 A KR 20000067135A KR 1019990014670 A KR1019990014670 A KR 1019990014670A KR 19990014670 A KR19990014670 A KR 19990014670A KR 20000067135 A KR20000067135 A KR 20000067135A
Authority
KR
South Korea
Prior art keywords
bus
arbitration
request signal
master
masters
Prior art date
Application number
KR1019990014670A
Other languages
Korean (ko)
Other versions
KR100605867B1 (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

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

Abstract

PURPOSE: A bus arbitration device and method is provided to allow lower priority function blocks to occupy a bus resource while approving higher priority function blocks in a system where a plurality of function blocks share the bus resource in order to prevent a starvation caused in the lower priority function blocks. CONSTITUTION: A bus arbitration device comprises a dynamic priority adjustment module(300), an arbitrator(200) and an arbitration controller(100). The dynamic priority adjustment module(300) counts a transaction signal activated whenever a bus use is arbitrated, and generates a re-arbitration request signal in an active state in the case that a counting value is more than a preset maximum arbitration waiting number. The arbitrator(200) activates the transaction signal whenever a bus use is arbitrated, approves the bus use according to a priority designated when a bus use request signal is input from masters. The arbitration controller(100) enables the arbitrator(200) when a bus use request signal is input from masters.

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

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

마이크로 컨트롤러와 같이 단일 칩으로 집적화되어 있는 시스템은 여러 가지 기능 블럭들로 구성되어 있으며, 이러한 시스템은 칩 사이즈의 소형화를 기하기 위해서 데이터 버스를 공유하는 구조를 가지는 것이 일반적이다. 그리고 마이크로 컨트롤러와 같은 시스템은 일반적으로 집적화된 각각의 기능 블럭들이 데이터 버스를 공유할 수 있도록 중재역할을 수행하는 중재기를 포함하고 있다. 그리고 버스를 공유하는 각 버스 마스터(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.

도 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.

이하 첨부한 도면을 참조하여 본 발명의 실시예에 따른 동작을 상세히 설명하기로 한다. 그리고 하기 설명에서는 버스 마스터들의 수를 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. 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에 도시한 바와 같이 버스 마스터들과 동수로 존재하며 각 버스 마스터로부터 버스사용 요구신호을 입력받는다. 또한 각각의 마스터 조정회로(310∼330)는 상기 중재부(200)로부터 버스사용 승인신호와 트랜잭션(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. Receive the input. In addition, each master control circuit (310 to 330) is a bus use approval signal from the arbitration unit (200) 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_과 동일하거나 그 이상이면 비교기(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. Is equal to or greater than the comparator 334, the remediation request signal reMap0 in the active state is outputted, and the remediation request signal reMap0 is input to the arbitration unit 200, and the mediation wait expires regardless of a predetermined priority. It is used to grant bus usage rights to an in-bus master.

이하 도 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-1과 버스 마스터 N-2가 계속해서 연속적으로 버스를 요구한다고 가정하고, 마스터들의 우선순위는 마스터 N-1이 가장 높고 그 다음은 N-1,...,마스터0가 가장 낮은 우선순위를 갖는다고 가정했을때의 동적 우선순위 중재방법을 설명하면, 우선 마스터0가 버스사용을 요구하면 마스터 0 조정회로(330)는 중재부(200)로부터 입력되는 트랜잭션신호 TRAN을 카운트하기 시작한다. 만약 상기 트랜잭션신호 TRAN의 카운트 도중에 액티브상태의 버스사용 승인신호 ACK0를 부여받지 못하고 중재횟수 카운트값이 최대 카운트 레지스터(400)로부터 로딩된 최대 카운트값 MAX_과 동일하면, 마스터 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. If bus master N-1 and bus master N-2 continue to request buses in succession, the priority of masters is highest with master N-1, followed by N-1, ..., master 0. Referring to the dynamic priority arbitration method assuming that it has the lowest priority, when master 0 requests the use of the bus, the master 0 arbitration circuit 330 counts the transaction signal TRAN input from the arbitration unit 200. To start. 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_ 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 in response thereto, 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 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. 제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; 상기 카운터의 출력값이 미리 설정된 중재대기횟수 최대 카운트값 이상이면 액티브상태의 재중재요구신호를 발생시키는 비교기로 각각 구성되는 다수개의 마스터 조정회로들로 구성됨을 특징으로 하는 버스 중재기.And a plurality of master adjusting circuits, each of which is configured as a comparator for generating an active remediation request signal if the output value of the counter is greater than or equal to a preset maximum number of arbitration wait times. 제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; 상기 카운터의 출력값이 미리 설정된 중재대기횟수 최대 카운트값 이상이면 액티브상태의 재중재요구신호를 발생시키는 비교기로 각각 구성되는 다수개의 마스터 조정회로들로 구성됨을 특징으로 하는 버스 중재기.And a plurality of master adjusting circuits, each of which is configured as a comparator for generating an active remediation request signal if the output value of the counter is greater than or equal to a preset maximum number of arbitration wait times. 다수의 버스 마스터들이 하나의 버스를 공유하도록 중재하는 방법에 있어서,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 true KR20000067135A (en) 2000-11-15
KR100605867B1 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)

Cited By (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

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2752917B2 (en) * 1995-04-26 1998-05-18 四国日本電気ソフトウェア株式会社 Bus connection method
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
US6385678B2 (en) * 1996-09-19 2002-05-07 Trimedia Technologies, Inc. Method and apparatus for bus arbitration with weighted bandwidth allocation

Cited By (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

Also Published As

Publication number Publication date
KR100605867B1 (en) 2006-07-31

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
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
EP0737924A2 (en) Bus arbritation and data transfer
US6820152B2 (en) Memory control device and LSI
JPH08227392A (en) Bus system with waiting time and shadow timer
JP3519182B2 (en) Information processing system, bus arbiter, and bus control method
JPH08255126A (en) Bus access arbitration system and method for recognition bus access
US20070067527A1 (en) Data transfer bus system connecting a plurality of bus masters
US5943483A (en) Method and apparatus for controlling access to a bus in a data processing system
KR100480605B1 (en) Method of controlling transmitting buffer and receiving buffer of network controller, and the network controller
US6629178B1 (en) System and method for controlling bus access for bus agents having varying priorities
JPH06161952A (en) Arbitration device of access request
KR0155269B1 (en) Bus arbitrating method and its apparatus
US5822549A (en) Computer system and bus controller for controlling access to a computer bus
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
JP3766377B2 (en) Bus control device and information processing system
US20070073948A1 (en) Bus control system
US7181558B2 (en) Avoidance of extended bus occupancy through simple control operation
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
JP4151362B2 (en) Bus arbitration method, data transfer device, and bus arbitration method
JP4097847B2 (en) Bus bridge arbitration method
JPH0830549A (en) Bus control device

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