KR100199021B1 - A multi-interrupt control device and method by interrupt order on pci bus - Google Patents

A multi-interrupt control device and method by interrupt order on pci bus Download PDF

Info

Publication number
KR100199021B1
KR100199021B1 KR1019960062702A KR19960062702A KR100199021B1 KR 100199021 B1 KR100199021 B1 KR 100199021B1 KR 1019960062702 A KR1019960062702 A KR 1019960062702A KR 19960062702 A KR19960062702 A KR 19960062702A KR 100199021 B1 KR100199021 B1 KR 100199021B1
Authority
KR
South Korea
Prior art keywords
interrupt
queue
input
pci bus
flag
Prior art date
Application number
KR1019960062702A
Other languages
Korean (ko)
Other versions
KR19980044600A (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 KR1019960062702A priority Critical patent/KR100199021B1/en
Publication of KR19980044600A publication Critical patent/KR19980044600A/en
Application granted granted Critical
Publication of KR100199021B1 publication Critical patent/KR100199021B1/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/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • G06F13/26Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0024Peripheral component interconnect [PCI]

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

본 발명은 PCI 버스에 연결하여 사용하게 될 시스템과 흐스트 시스템 사이의 인터럽트를 처리하기 위한 순차식 PCI 버스용 다중 인터럽트 제어장치 및 그 방법에 관한 것으로서, 종래기술에서의 인터럽트 처리상의 어려움, 타시스템과의 인터럽트 사용에 있어서의 제약성을 해결하기 위해, 본 발명은 PCI 버스에 연결된 시스템내의 다수개의 인터럽트 자원들을 PCI 버스중 한개의 인터럽트 라인을 통해 호스트 시스템이 발생순서 및 우선순위에 따라 인터럽트를 처리할 수 있도록 하기 위해 제안된 것이다.The present invention relates to a multi-interrupt control device and a method for a sequential PCI bus for handling the interrupt between the system and the HST system to be connected to the PCI bus, difficulty in interrupt processing in the prior art, other systems In order to solve the limitation in using the interrupt with the present invention, the present invention provides a plurality of interrupt resources in a system connected to the PCI bus through the interrupt line of one of the PCI buses. It is suggested to make it possible.

Description

순차식 PCI 버스용 다중 인터럽트 제어 장치 및 방법Multiple interrupt control device and method for sequential PCI bus

본 발명은 PCI 버스에 연결하여 사용하게 될 시스템과 호스트 시스템 사이의 인터럽트를 처리하기 위한 순차식 PCI버스용 다중 인터럽트 제어 장치 및 방법에 관한 것이다.The present invention relates to a multi-interrupt control device and method for a sequential PCI bus for handling interrupts between a system and a host system to be connected to the PCI bus.

종래에는 PCI 버스에 연결된 시스템내에서 한개의 인터럽트로 만족했으나, 칩의 소형화 및 시스템의 다기능활 인해 호스트 버스에 연결된 시스템내의 인터럽트 자원들이 다수개가 되어, 인터럽트 처리상의 어려움과 인터럽트 우선순위에 따른 인터럽트 기아(Starvation)현상이 발생하고 타 시스템과 동싱 사용시 인터럽트의 충돌이 야기되는 등 시스템의 성능 및 이용에 많은 제약을 가하는 문제점이 발생하였다.Conventionally, one interrupt is satisfied in a system connected to a PCI bus, but due to the miniaturization of the chip and the multifunction of the system, there are many interrupt resources in the system connected to the host bus. (Starvation) phenomenon occurs, and there is a problem that places a lot of restrictions on the performance and use of the system, such as interrupt conflicts when using the same system with other systems.

본 발명은 PCI 버스에 연결된 시스템내의 다수개의 인터럽트 자원들을 PCI버스중 한개의 인터럽트 라인을 통해, 호스트 시스템이 발생순서 및 우선순위에 따라 인터럽트를 처리할 수 있도록 함으로써, 시스템내의 로컬 인터럽트 자원들로부터의 인터럽트 큐 및 플래그에 의해 효율적으로 관리되어, 시스템내의 로컬 인터럽트 자원들의 인터럽트 처리를 기아현상 없이 발생 순서 및 우선순위에 따라 처리할 수 있도록 해주기 위한 것이다.The present invention allows a host system to process interrupts in an order of occurrence and priority via an interrupt line of one of the PCI buses through a plurality of interrupt resources in the system connected to the PCI bus, thereby reducing the local interrupt resources in the system. It is efficiently managed by interrupt queues and flags so that interrupt processing of local interrupt resources in the system can be processed in order of occurrence and priority without starvation.

제1도는 본 발명과 주변 관계 기능 블록을 나타낸 블록 구성도.1 is a block diagram showing the present invention and the peripheral relationship functional block.

제2도는 본 발명의 순차식 PCI 버스용 다중 인터럽트 제어장치의 블럭 구성도.2 is a block diagram of a multiple interrupt controller for a sequential PCI bus of the present invention.

제3도는 본 발명에 따른인터럽트 검출기의 제어 흐름도.3 is a control flowchart of an interrupt detector according to the present invention.

제4도는 본 발명에 다른 인터럽트 큐 제어기의 제어 흐름도.4 is a control flowchart of an interrupt queue controller according to the present invention.

제5도는 본 발명에 따른 인터럽트 큐 입출력 제어기의 제어 흐름도.5 is a control flowchart of an interrupt queue input / output controller according to the present invention.

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

410 : 인터럽트 검출기 420 : 인터럽트 플래그410: interrupt detector 420: interrupt flag

430 : 인터럽트 큐 제어기 431 : 큐 카운터430: interrupt queue controller 431: queue counter

440 : 인터럽트 큐 441 : 큐 플래그440: interrupt queue 441: queue flag

450 : 인터럽트 큐 입출력 제어기 460 : 우선순위 인코더450: interrupt queue I / O controller 460: priority encoder

상기 목적을 달성하기 위한 본 발명으 순차식 PCI버스용 다중 인터럽트 제어는, PCI 버스에 연결된 호스트와 시스템내의 다수개의 인터럽트 자원들을 PCI 버스중 한개의 인터럽트 라인을 통해 처리하기 위해, 인터럽트 검출기로부터 인터럽트를 검출하여 인터럽트 플래그를 셋트하고 이 플래그 상태로부터 인터럽트 우선순위를 결정하며, 인터러트 큐 제어기에 큐 입력을 요청하고 이를 확인 받아 인터럽트 플래그를 리셋트 처리하는 과정과; 큐 입력 요청을 받으면 인터럽트 큐에 인터럽트 정보를 셋트하고 큐 카운터를 증가 시키고 큐입력을 확인하며, 큐 쉬프트 요구를 받으면 인터럽트 큐를 오른쪽으로 쉬프트하고 큐 카운터를 감속시키는 과정과; 인터럽트 큐의큐 플래그를 검사하여 세트되었으면 호스트에 인터럽트를 요구하고 호스트로부터 인터럽트 정보를 요구 받으면 이를 전송하고 큐 쉬프트를 요청하는 과정을 포함한 것을 특징으로 한다.In order to achieve the above object, the multi-interrupt control for the sequential PCI bus provides an interrupt from an interrupt detector to process a plurality of interrupt resources in a host and a system connected to the PCI bus through one interrupt line of the PCI bus. Detecting and setting an interrupt flag, determining an interrupt priority from the flag state, requesting a queue input from the interrupt queue controller, and acknowledging the reset flag; Setting interrupt information in the interrupt queue, incrementing the queue counter, confirming the queue input upon receiving a queue input request, shifting the interrupt queue to the right and decelerating the queue counter upon receiving a queue shift request; If the queue flag of the interrupt queue is set by checking, it requests an interrupt from the host, transmits it when the interrupt information is requested from the host, and requests a queue shift.

이하, 본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

제1도는 본 발명의 구성과 주변 관게 기능 블록을 나타낸 블록도이며, 호스트 시스템(100)과 PCI버스(110)를 통해 연결되게 되는 PCI 버스용 시스템을 나타낸다.1 is a block diagram showing the configuration of the present invention and the peripheral related functional blocks, and shows a system for a PCI bus that is to be connected to the host system 100 and the PCI bus 110.

PCI 버스용 시스템은 필수 요소로서, PCI 버스를 통한 데이타 전송을 담당하는 PCI버스 마스터 /슬레이브 제어기(200), PCI 버스의 구성을 저장하는 PCI버스구성 레지스터(300)로 구성되며, 이들 필수 요소들과 본 발명에 의한 PCI버스용 다중 인터럽트 제어기 (400)와의 연결 상태를 나타낸 것이다.The system for the PCI bus is an essential element, and is composed of a PCI bus master / slave controller 200 that is responsible for data transmission through the PCI bus, and a PCI bus configuration register 300 that stores the configuration of the PCI bus. And it shows the connection state with the multi-interrupt controller 400 for the PCI bus according to the present invention.

PCI 버스용 다중 인터럽트 제어기(400)는 다수개의 로컬 인터럽트 자원들(500)로 부터의 로컬 인터럽트들을 받아 이를 PCI 버스(110)를 통해 연결된 호스트 시스템(100)으로 인터럽트를 전달하기 위한 처리를 담당하게 되며 다중 인터럽트 제어기(400)와 호스트 시스템(100)과는 PCI버스(110)를 통한 인터럽트 라인이 직접적으로 연결된다.The multi-interrupt controller 400 for the PCI bus receives local interrupts from the plurality of local interrupt resources 500 and is responsible for processing to deliver the interrupts to the host system 100 connected through the PCI bus 110. The interrupt line 400 is directly connected to the multiple interrupt controller 400 and the host system 100 through the PCI bus 110.

호스트 시스템 (100)으로부터의 큐 출력 요구는 PCI 버스용 시스템의 필수요소인 PCI 버스 마스터/슬레이브 제어기(200)을 통해 다중 인터럽트 제어기(400)로 전달되게 됨을 타나낸다.Queue output requests from host system 100 indicate that they are to be delivered to multiple interrupt controllers 400 through PCI bus master / slave controller 200, which is an integral part of the system for the PCI bus.

제2도는 본 발명의 순차식 PCI버스용 다중 인터럽트 제어장치(400)의 내부 블록 구성도로서, 크게 인터럽트 검출기(410), 인터럽트 플래그(420), 우선순위 인코더(460), 인터럽트 큐 제어기(430), 큐 카운터(431), 인터럽트 큐(440)및 인터럽트 큐 입출력 제어기(450)로 구성된다.2 is an internal block diagram of the multi-interrupt controller 400 for the sequential PCI bus according to the present invention. The interrupt detector 410, the interrupt flag 420, the priority encoder 460, and the interrupt queue controller 430 are shown in FIG. ), A queue counter 431, an interrupt queue 440, and an interrupt queue input / output controller 450.

인터럽트 검출기(410)는 로컬 인터럽트 자원(1, 2, 3, …, n)들로 부터의 인터럽트를 검출한 후, 해당 인터럽트 플래그 (420)를 세트(415)하고, 인터럽트 정보를 인터럽트 큐(440)에 쓰기 위하여 인터럽트 큐 제어기(430)에 큐 입력 요청(416)을 한다. 이때 여러개의 인터럽트가 동시에 검출되면, 동시에 검출된 여거개의 인터럽트사이의 우선순위를 우선순위 인코더(460)에 의해 결정하고, 이 순위에 따라 순차적으로 인터럽트 큐 제어기 (430)로 큐 입력 요청(416)을 하며, 인터럽트 큐 제어기(430)로부터의 큐 입력 화인 신호(417)를 받아 해당 플래그를 리셋트(415)하는 동작을 인터럽트 요구 검출 수 만큼 반복수행한다.The interrupt detector 410 detects an interrupt from the local interrupt resources (1, 2, 3, ..., n), sets 415 the corresponding interrupt flag 420, and sets the interrupt information to the interrupt queue 440. A queue input request 416 is made to the interrupt queue controller 430 for writing. At this time, if several interrupts are detected at the same time, the priority among the plurality of interrupts detected at the same time is determined by the priority encoder 460, and the queue input request 416 to the interrupt queue controller 430 sequentially according to the priority. In response to the queue input fine signal 417 from the interrupt queue controller 430, the operation of resetting the corresponding flag 415 is repeated as many as the interrupt request detection number.

그리고 인터럽트 큐 제어기(430)는 인터럽트 검출기 (410)로부터의 큐 입력요청(416) 및 인터럽트 큐 입출력 제어기(450)로부터의 큐 쉬프트 요청(451)을 받아 인터럽트 큐(440)를 제어하게 되며, 큐를 어드레싱하기 위한 큐 카운터(431)를 구비하고 있다. 이는 인터럽트 검출기(410)로부터의 큐 입력 요청(416)이 오면, 현재 큐 카운터(431)값에 해당하는 인터럽트 큐(440)에 입력하고 큐 카운터를 증가시킨 후, 인터럽트 검출기(410)로 큐 입력 확인(417)을 보내는 것으로 큐 입력(432)을 완료하게 되고, 인터럽트 큐 입출력제어기(450)로부터의 큐 쉬프트 요청(451)이 오면 인터럽트 큐(440)를 오른쪽으로 쉬프트 하고 큐 카운터(431)를 감소시키는 기능을 수행한다.The interrupt queue controller 430 receives the queue input request 416 from the interrupt detector 410 and the queue shift request 451 from the interrupt queue input / output controller 450 to control the interrupt queue 440. A cue counter 431 is provided for addressing. When a queue input request 416 from the interrupt detector 410 comes, it inputs to the interrupt queue 440 corresponding to the current queue counter 431 value, increments the queue counter, and then queues the interrupt detector 410. Sending a confirmation 417 completes the queue input 432. When a queue shift request 451 from the interrupt queue input / output controller 450 arrives, the interrupt queue 440 is shifted to the right and the queue counter 431 is moved. Performs the function of reducing.

또한 인터럽트 큐 입출력 제어기(450)는 인터럽트 큐 (440)가 유효한지를 나타내는 큐 플래그(441)를 검색하여 세트되어 있으면 호스트로 인터럽트 신호를 발생한다. 인터럽트 발생후에 호스트 시스템(100)으로 부터의 인터럽트 정보를 요구 받으면, 인터럽트 큐(440)의 0번째 큐를 PCI버스(110)를 통해 호스트 시스템(100)으로 송신하고, 인터럽트 큐 제어기(430)로 큐 쉬프트 요청(451)을 수행한다.In addition, the interrupt queue input / output controller 450 searches for the queue flag 441 indicating whether the interrupt queue 440 is valid, and generates an interrupt signal to the host if it is set. When interrupt information is received from the host system 100 after an interrupt is generated, the 0th queue of the interrupt queue 440 is transmitted to the host system 100 through the PCI bus 110, and the interrupt queue controller 430 is transmitted to the host system 100. Performs a queue shift request 451.

본 발명에 따른 제어 흐름은 인터럽트 검출기의 제어 흐름, 인터럽트 큐 제어기의 제어흐름 및 인터럽트 큐의 입출력 제어 흐름으로 나누어지며, 각각에 대한 설명은 다음과 같다.The control flow according to the present invention is divided into the control flow of the interrupt detector, the control flow of the interrupt queue controller, and the input / output control flow of the interrupt queue, and the description of each is as follows.

제3도는 인터럽트 검출기의 검출 흐름도이다.3 is a detection flowchart of an interrupt detector.

시작 상태에서 인터럽트가 검출되었는지를 반복적으로 검사(S1)하며, 인터럽트가 검출되면, 검출된 인터럽트가 1개 이상인지를 먼저 검사하여 (S2) 검출된 인터럽트가 1개이면, 해당 플래그를 셋트하고(S3) 인터럽트를 인코딩(S4)한 후 인터럽트 큐 제어기(430)로 큐 입력 요청 (416) 을 하게 된다(S5).In the start state, it is repeatedly checked whether an interrupt is detected (S1), and when an interrupt is detected, it is first checked whether there is at least one detected interrupt (S2), and if there is one detected interrupt, the corresponding flag is set ( S3) After encoding the interrupt (S4), a queue input request 416 is made to the interrupt queue controller 430 (S5).

인터럽트 큐 제어기(430)로부터 큐 입력 확인을 검사(S6)하다가 큐 입력 확인 신호(417)가 오면, 해당 플래그를 리셋트하고 (S7)시작 상태로 분기한다. 그러나 검출된 인터럽트가 1개 이상이면 (S2), 우선순위 인코더(460)에 의해 그 검출된 인터럽트를 인코딩한 후(S8) 인터럽트 큐 제어기(430)로 큐 입력요청(S9)을 한후 인터럽트 큐 제어기(430)로부터 큐 입력확인(417)을 검사(S10)하다가 큐 입력확인신호(417)를 받으면 해당 플래그를 리셋하며(S11), 동시에 검출된 인터럽트가 모두 인터럽ㅌ 큐에 순차적으로 입력될 때까지 이 과정을 반복적으로 수행하게 된다(S12).When the queue input confirmation signal 417 is received while checking the queue input confirmation from the interrupt queue controller 430 (S6), the corresponding flag is reset and branched to the start state (S7). However, if one or more interrupts are detected (S2), the priority encoder 460 encodes the detected interrupts (S8), then makes a queue input request (S9) to the interrupt queue controller 430, and then interrupts the queue controller. When the queue input confirmation signal 417 is received (S10) and the queue input confirmation signal 417 is received, the corresponding flag is reset (S11), and when all detected interrupts are sequentially input to the interruption queue. This process is repeatedly performed until (S12).

제4도는 인터럽트 큐 제어기 제어 흐름도로서, 인터럽트 검출기와 인터럽트 큐 입출력 제어기로부터 입력을 받아 인터럽ㅌ 큐를 관리하기 위한 흐름도 이다.4 is a flowchart for controlling an interrupt queue, and is a flowchart for managing an interrupt queue by receiving input from an interrupt detector and an interrupt queue input / output controller.

시작 상태에서 인터럽트 큐 입출력 제어기(450)로부터 큐 쉬프트 요정(451)이 있었는지를 체크한다(S13). 큐 쉬프트 요청이 있으면, 인터럽트 큐를 오른쪽으로 쉬프트(S14)한 후 큐 카운터를 1 감소(S15)시킨후 시작상태로 분기한다. 큐 쉬프트 요청이 없으면, 인터럽트 검출기(410)로부터 큐 입력 요청(416)이 있었는지를 확인하여 (S16)없으면 초기 상태로 분기한다. 큐 쉬프트 요청이 있으면, 큐 카운터(431)로부터 카운ㅌ트 값을 읽어 큐가 비어 있나를 검사한후 큐가 비어 있으면, 이 값에 따라 해당 큐에 우선순위 인코더 (460)로부터 인터럽트 큐(440)에 인터럽트 정보르 쓸수 있도록 제어하고(S18) 큐 카운터(431)를 1 증가시키며(S19), 인터럽트 검출기(410)에 큐 입력 확인 신호(417)를 보낸 후, 초기 상태로 분기한다.In the start state, it is checked whether there is a queue shift fairy 451 from the interrupt queue input / output controller 450 (S13). If there is a queue shift request, the interrupt queue is shifted to the right (S14), the queue counter is decremented by one (S15), and the branch is started. If there is no queue shift request, the interrupt detector 410 checks whether there is a queue input request 416, and if not (S16), branches to the initial state. If there is a queue shift request, it reads the count value from the queue counter 431 to check if the queue is empty, and if the queue is empty, the interrupt queue 440 from the priority encoder 460 to the queue according to this value. The interrupt information is controlled to be written (S18), the queue counter 431 is incremented by one (S19), the cue input confirmation signal 417 is sent to the interrupt detector 410, and then branches to the initial state.

제5도는 인터럽트 큐의 입출력 제어 흐름도이다.5 is a flowchart of input / output control of an interrupt queue.

시작 상태에서 인터럽트 큐 입출력 제어기(450)는 인터럽트 큐 플래그(441)를 검사하여 세트되었으면(S20), 호스트에 인터럽트 신호를 발생하고(S21) 호스트로부터 인터럽트 정보 요구를 받으면(S22) 인터럽트 큐(440)로 부터 인터럽트 정보를 읽어 이를 호스트에 송신하고(S23)인터럽트 큐 제어기에 큐 쉬프트 요청(S24)을 한후 시작 상태로 분기한다.In the start state, the interrupt queue input / output controller 450 checks the interrupt queue flag 441 and sets it (S20), generates an interrupt signal to the host (S21), and receives an interrupt information request from the host (S22). Reads interrupt information from the host and sends it to the host (S23), and makes a queue shift request (S24) to the interrupt queue controller, and branches to the start state.

이상과 같은 본 발명은 PCI 버스에 연결된 시스템내의 다수개의 인터럽트 자원들을 PCI 버스중 한개의 인터럽트 라인을 통해 처리함으로써, 인터럽트 사용의 편리성과 제한된 인터럽트 자원을 타 시스템이 이용할 수 가 있기 때문에 호스트 시스템의 활용을증진시킬수 있다.As described above, the present invention processes a plurality of interrupt resources in a system connected to a PCI bus through an interrupt line of one of the PCI buses, so that the use of a host system can be utilized by another system because of convenience of interrupt use and limited interrupt resources. Can promote it.

또한 인터럽트 발생순서에 따라 인터럽트를 처리하고 동시에 인터럽트가 발생하는 경우 우선순위의 인터럽트를 먼저 처리함으로써 멀티미디어 처리에 용이하고, 시스템 자원의 효율적 이용이 가능하며, 큐 플래그를 사용하여 호스트와 접속(access)수를 감소시킬 수 있다.In addition, interrupts are processed in the order of interrupt occurrence and priority interrupts are handled first, so it is easy to process multimedia, efficient use of system resources, and access to host using queue flags. The number can be reduced.

Claims (5)

PCI 버스에 연결된 호스트 시스템과 시스템내 다수개의 로컬 인터럽트 자원들을 PCI 버스중 한개의 인터럽트 라인으로 처리하기 위해, 상기 다수개의 로컬 인터럽트 자원드로 부터 검출한 인터럽트 정보를 검출하여 해당 인터럽트 플래그를제어하고, 인터럽트 우선순위에 따라 큐 입력 요청을 하고, 큐 입력확인신호를 받아 해당 플래그를 제어하는 인터러트 검출수단과; 상기 인터럽트 검출수단의 플래그 제어에 따라 다수개의 인터럽트 상대를 나타내는 인터럽트 플래그와; 상기 인터럽트 검출수단의 인에이블신호에 따라 상기 입력된 다수개의 인터럽트 정보의 우선순위를 결정하는 우선순위 결정수단과; 상기 큐 입력요청신호 및 큐 쉬프트 요청신호를 받아 인터럽트 큐를 제어하는 인터럽트 큐 제어수단과; 상기 인터럽트 큐 제어수단의 제어에 따라 인터럽트가 입력되고 상기 우선 순위 결정수단에서 결정된 순위에 따라 출력하는 인터럽트 큐와; 상기 인터럽트 큐의 유효상태를 검사하여 호스트 시스템으로 인터럽트 신호를 방생하고, 호스트 시스템으로 부터 인터럽트 정보 요구신호를 받아 PCI버스르 통해 호스트 시스템으로 인터럽트 큐의 정보를 송신하고 사기 인터럽트 큐 제어수단에 큐 쉬프트 요청을 하는 인터럽트 큐 입출력 제어수단으로 구성된 것을 특징으로 하는 순차식 PCI 버스용 다중 인터럽트 제어 장치.In order to process the host system connected to the PCI bus and a plurality of local interrupt resources in the system as one interrupt line of the PCI bus, the interrupt information detected from the plurality of local interrupt resources is detected and the corresponding interrupt flag is controlled. Interrupt detection means for making a cue input request according to priority and receiving a cue input acknowledgment signal to control a corresponding flag; An interrupt flag indicating a plurality of interrupt partners according to flag control of the interrupt detection means; Priority determining means for determining the priority of the plurality of input interrupt information according to the enable signal of the interrupt detecting means; Interrupt queue control means for receiving an queue input request signal and a queue shift request signal to control an interrupt queue; An interrupt queue which is input according to the control of the interrupt queue control means and outputs according to the priority determined by the priority determining means; Check the validity of the interrupt queue to generate an interrupt signal to the host system, receive the interrupt information request signal from the host system, transmit the interrupt queue information to the host system through the PCI bus, and queue shift to the fraud interrupt queue control means. Multiple interrupt control device for a sequential PCI bus, characterized in that the interrupt queue input and output control means for making a request. 제1항에 있어서, 상기 우선순위 결정수단은 인코더를 사용한 것을 특징으로 하는 순차식 PCI버스용 다중 인터럽트 제어 장치.2. The apparatus of claim 1, wherein the priority determining means uses an encoder. 제1항에 있어서, 상기 인터럽트 큐 제어수단은 큐를 어드레싱하기 위해, 상기 인터럽트 검출수단으로 부터의 큐 입력 요청 신호에 따라 증가하고, 상기 인터럽트 큐 입출력 제어수단으로 부터의 이 큐 쉬프트 요청신호에 따라 감소하는 큐 카운터를 구비한 것을 특징으로 하는 순차식 PCI버스용 다중 인터럽트 제어 장치.2. The apparatus of claim 1, wherein the interrupt queue control means is incremented in response to a queue input request signal from the interrupt detection means to address a queue, and in accordance with this queue shift request signal from the interrupt queue input / output control means. A multi-interrupt control device for a sequential PCI bus, characterized by comprising a decrementing queue counter. 제1항에 있어서, 상기 인터럽트 큐는 인터럽트 큐의 유효여부를 나타내는 큐 플래그를 구비한 것을 특징으로 하는 순차식 PCI 버스용 다중 인터럽트 제어 장치.2. The apparatus of claim 1, wherein the interrupt queue has a queue flag indicating whether the interrupt queue is valid. 인터럽트 검출기, 인터럽트 큐 제어기, 우선순위 인코더 및 인터럽트 큐 입출력 제어기를 구비하여, PCI 버스에 연결된 호스트와 시스템내의 다수개의 인터럽트 자원들을 PCI 버스중 한개의 인터럽트 라인을 통해 처리하기 위해, 인터럽트 검출기로부터 인터럽트를 검출하여 인터럽트 플래그를 셋트하고 이 플래그 상태로부터 인터럽트 우선순위를 결정하며, 인터럽트 큐 제어기에 큐 입력을 요청하고 이를 확인 받아 인터럽트 플래그를 리셋트 처리하는 제1과정과; 상기 큐 입력 요청을 받으면 인터럽트 큐에 인터럽트 정보를 셋트하고 큐 카운터를 증가 시키고 큐입력을 확인하며, 큐 쉬프트 요구를 받으면 인터럽트 큐를 오른쪽으로 쉬프트하고 큐카운터를 감소시키는 제2과정과; 상기 인터럽트 큐의 큐 플래그를 검사하여 세트되었으면 호스트에 인터럽트를 요구하고 호스트로부터 인터럽트 정보를 요구 받으면 이를 전송하고 큐 쉬프트 요청 하는 제3과정으로 이루어진 것을 특징으로 하는 순차식 PCI 버스용 다중 인터럽트 제어방법.An interrupt detector, an interrupt queue controller, a priority encoder, and an interrupt queue input / output controller are provided to handle interrupts from the interrupt detector to process a plurality of interrupt resources in a system and a host connected to the PCI bus through one interrupt line of the PCI bus. Detecting and setting an interrupt flag, determining an interrupt priority from the flag state, requesting a queue input from an interrupt queue controller, and acknowledging the reset flag to reset the interrupt flag; A second step of setting interrupt information in an interrupt queue, increasing a queue counter, confirming a queue input when receiving the queue input request, and shifting the interrupt queue to the right and decreasing a queue counter when a queue shift request is received; And a third process of requesting an interrupt to the host if the queue flag of the interrupt queue is set and transmitting the interrupt information to the host if the interrupt information is requested from the host, and requesting a queue shift.
KR1019960062702A 1996-12-07 1996-12-07 A multi-interrupt control device and method by interrupt order on pci bus KR100199021B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019960062702A KR100199021B1 (en) 1996-12-07 1996-12-07 A multi-interrupt control device and method by interrupt order on pci bus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960062702A KR100199021B1 (en) 1996-12-07 1996-12-07 A multi-interrupt control device and method by interrupt order on pci bus

Publications (2)

Publication Number Publication Date
KR19980044600A KR19980044600A (en) 1998-09-05
KR100199021B1 true KR100199021B1 (en) 1999-06-15

Family

ID=19486329

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960062702A KR100199021B1 (en) 1996-12-07 1996-12-07 A multi-interrupt control device and method by interrupt order on pci bus

Country Status (1)

Country Link
KR (1) KR100199021B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100448931B1 (en) * 1997-08-11 2004-11-16 삼성전자주식회사 Device for sharing a pci interrupt, especially related to assigning two interrupt request lines to peripheral apparatuses by obtaining spare interrupt resources

Also Published As

Publication number Publication date
KR19980044600A (en) 1998-09-05

Similar Documents

Publication Publication Date Title
EP0458304B1 (en) Direct memory access transfer controller and use
US5901156A (en) Method of processing messages to be transmitted for a data processing arrangement
US4604500A (en) Multiprocessing interrupt arrangement
US4674033A (en) Multiprocessor system having a shared memory for enhanced interprocessor communication
KR100218675B1 (en) Method and apparatus of multiple interrupt control in intellectual priority determine mode
KR100199021B1 (en) A multi-interrupt control device and method by interrupt order on pci bus
KR100199033B1 (en) A multi-interrupt control device and method using compromised type on pci bus
US5805841A (en) Symmetric parallel multi-processing bus architeture
EP0251234B1 (en) Multiprocessor interrupt level change synchronization apparatus
US6625678B1 (en) Livelock avoidance method
KR960003649B1 (en) Microcomputer system for communication
JPH05282244A (en) Information processor
JPH04322353A (en) Bus system
SU1383377A1 (en) Device for interfacing group of proocessor with group of external units
JP2573790B2 (en) Transfer control device
JP2504473B2 (en) Data transfer processing method
EP0602916A2 (en) Cross-bar interconnect apparatus
JPH1055341A (en) Interface control system
JP2923992B2 (en) Access Channel Control Method for Demand Assignment Communication System
JPH0461388B2 (en)
JPH0512203A (en) Bus performance measurement system
JP2667285B2 (en) Interrupt control device
JPS63186360A (en) Multi-cpu device
JPH02310657A (en) Bus connecting device
JPH0136740B2 (en)

Legal Events

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

Payment date: 20080303

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee