KR19980043590A - 지능적 우선순위 결정 방식의 다중 인터럽트 제어기 및 그 제어 방법 - Google Patents

지능적 우선순위 결정 방식의 다중 인터럽트 제어기 및 그 제어 방법 Download PDF

Info

Publication number
KR19980043590A
KR19980043590A KR1019960061513A KR19960061513A KR19980043590A KR 19980043590 A KR19980043590 A KR 19980043590A KR 1019960061513 A KR1019960061513 A KR 1019960061513A KR 19960061513 A KR19960061513 A KR 19960061513A KR 19980043590 A KR19980043590 A KR 19980043590A
Authority
KR
South Korea
Prior art keywords
interrupt
queue
controller
counter
input
Prior art date
Application number
KR1019960061513A
Other languages
English (en)
Other versions
KR100218675B1 (ko
Inventor
정하재
이진
박배옥
Original Assignee
양승택
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 양승택, 한국전자통신연구원 filed Critical 양승택
Priority to KR1019960061513A priority Critical patent/KR100218675B1/ko
Priority to US08/982,661 priority patent/US5931936A/en
Publication of KR19980043590A publication Critical patent/KR19980043590A/ko
Application granted granted Critical
Publication of KR100218675B1 publication Critical patent/KR100218675B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Abstract

본 발명은 펜디드(Pended) 버스에 연결하여 사용하게 될 시스템과 호스트 시스템 사이의 인터럽트를 처리하기 위한 것으로서, 펜디드(Pended) 버스에 연결된 시스템 내의 여러가지 인터럽트 자원들을 버스 중 한개의 인터럽트 라인을 통해 호스트 시스템으로 인터럽트를 전달할 수 있도록 한 지능적 우선순위 결정 방식의 다중 인터럽트 제어기 및 그의 제어 방법에 관해 개시된다.

Description

지능적 우선순위를 결정 방식의 다중 인터럽트 제어기 및 그 제어 방법
본 발명은 컴퓨터 시스템 내의 호스트 버스의 제한된 인터럽트 사용 환경에서, 하나의 인터럽트 라인을 다수의 입/출력(I/O) 장치가 다중으로 사용할 수 있도록 한 지능적 우선순위 결정 방식의 다중 인터럽트 제어기 및 그 제어 방법에 관한 것이다.
각종 입/출력(I/O) 디바이스 칩들이 소형화, 고집적화 되어가며, 또한 멀티미디어와 같이 다기능화되어 가는 추세이다. 컴퓨터 시스템에서 대부분의 입/출력(I/O) 장치는 자체에서 자료의 가공/처리가 끝나면 주 메모리로 보내거나 다른 입/출력 장치로 정보를 보낸다. 이때 메인 프로세서가 그일을 해주도록 요청하는 방법이 인터럽트이다. 하나의 입/출력 장치에 하나씩 인터럽트 라인이 할당되어 있는 경우에는 문제가 없다. 그러나, 앞에서 언급된 바와 같이 최근에는 다기능 칩이나 다기능 보드가 일반화되어 감에 따라, 단일 칩이나 단일 보드에서 호스트 버스의 인터럽트를 사용하려는 하드웨어 자원이 많아져, 단일 인터럽트 라인에 여러 인터럽트 사용자가 존재하는 셈이다.
이와 같은 환경에서 높은 우선순위가 배정된 경우는 인터럽트를 독점하여 사용하는 경우가 많고, 낮은 우선순위가 배정된 입/출력은 기아(Starvation)에 빠지는 등, 인터럽트 자원 활용에 공평성이 결여되기 쉽다.
종래에는 컴퓨터 시스템에서 펜디드(Pended) 버스에 연결된 입/출력 장치들이 한개의 인터럽트로 만족한 경우가 많았다. 최근에 칩의 소형화, 고집적화 및 시스템의 다기능화로 인해 버스에 연결된 시스템 내의 인터럽트 발생 자원들이 한개 이상의 되는 경우가 많이 생기고, 인터럽트 처리에 문제가 생기게 된다. 이때 발생되는 인터럽트 처리 문제점으로는 첫째, 한개 이상의 인터럽트를 한 개의 펜디드(Pended) 인터럽트 라인을 통해 전달하기 때문에 생기는 인터럽트 처리 시간 지연이 있으며, 둘째, 고정된 인터럽트 우선순위에 따른 인터럽트 기아(Starvation) 현상 등을 들수 있다.
따라서, 본 발명은 상기와 같은 문제점을 해결하기 위하여, 시스템 내의 로컬 인터럽트 자원들로 부터의 인터럽트를 큐로 관리하고, 시스템 내의 로컬 인터럽트 자원들의 인터럽트의 처리를 위해, 총 인터럽트의 일정 회수당 개별 인터럽트 회수의 비를 우선순위 결정 요소로 하여 수시로 우선순위를 자동 조정할 수 있게 하는 지능적 우선순위 결정 방식의 다중 인터럽트 제어기 및 그 제어 방법을 제공하는데 그 목적이 있다.
상술한 목적을 달성하기 위한 본 발명에 따른 다중 인터럽트 제어기는 로컬 인터럽트 자원들로부터의 인터럽트를 검출하기 위한 인터럽트 검출기와, 상기 인터럽트 검출기로부터 검출된 전체 인터럽트를 나타내는 총 인터럽트 카운터와, 상기 각 로컬 인터럽트 자원별 로컬 인터럽트의 발생을 카운트하는 개별 인터럽트 카운터와, 상기 인터럽트 검출기로부터 자신에게 해당되는 인터럽트가 검출되면 세트되는 인터럽트 플래그와, 상기 해당 인터럽트 정보를 인코더하며, 총인터럽트 카운터와 개벌 인터럽트 카운트의 정보를 기본 요소로 하여 우선순위를 결정하는 인코더 및 우선순위 결정기와, 상기 인터럽트 검출기로부터의 큐 입력 요청 및 인터럽트 큐 출력 제어기로부터의 큐 쉬프트 요청을 받아 인터럽트 큐를 제어하게 되며, 큐를 어드레싱하기 위한 큐 카운터를 보유한 인터럽트 큐 제어기와, 호스트 시스템으로부터의 큐 출력요구를 받아 인터럽트 큐의 0번째 큐를 펜디드 버스를 통해 호스트 시스템으로 출력하게 되며, 동시에 인터럽트 큐 제어기로 큐 쉬프트 요청을 하는 기능을 수행하는 인터럽트 큐 출력 제어기와, 상기 큐 출력 제어기로부터의 큐 쉬프트 요청을 받았을때, 쉬프트하게 될 인터럽트가 대기하는 인터럽트 큐로 구성되는 것을 특징으로 한다.
상술한 목적을 달성하기 위한 본 발명에 다른 다중 인터럽트 제어 방법은 인터럽트가 검출되었는지를 반복적으로 확인하는 제1단계와, 상기 제1단계에서 인터럽트가 검출되면 검출된 인터럽트가 1개 이상인지를 확인하는 제2단계와, 상기 제2단계에서 검출된 인터럽트가 1개이면 해당 플래그를 셋트하고, 인터럽트를 인코딩한 후 인터럽트 큐 입력 제어기로 큐 입력 요청을 하는 제3단계와, 상기 인터럽트 큐 입력 제어기로부터 큐 입력 확인을 검사하다가 큐 입력 확인 신호가 오면, 해당 플래그를 리세트하고 시작 상태로 분기하는 제4단계와, 상기 제2단계에서 검출된 인터럽트가 1개 이상이면, 총 인터럽트 카운터를 세트하고, 우선순위 해당 플래그를 세트한 후 개별 인터럽트 카운터를 세트하고, 인코딩한 후 인터럽트 큐 입력 제어기로 큐 입력 요청을 하는 제5단계와, 상기 인터럽트 큐 입력 제어기로부터 큐 입력 확인을 검사하다가 큐 입력 확인 신호가 오면 해당 플래그를 리세트하고 상기 제2단계로 분기하는 제6단계로 이루어진 것을 특징으로 한다.
또한, 인터럽트 큐 제어기에서 인터럽트 검출기로 부터의 큐 입력 요청이나 호스트 시스템으로 부터의 큐 출력 요청이 있는지를 반복적으로 확인하는 제1단계와, 상기 제1단계에서 인터럽트 검출기로 부터의 큐 입력 요청이 있게 되면 먼저 큐가 비어있나를 확인하는 제2단계와, 상기 제2단계에서 검사한 후 빈 큐가 있으면 현재 큐 카운터 값에 해당하는 큐에 입력한 후 큐 입력 확인 신호를 인터럽트 검출기로 발생하고, 큐 카운터를 1만큼 증가시킨후 시작 상태로 분기하는 제3단계와, 상기 제2단계에서 호스트 시스템으로부터 큐 출력 요구가 오면 인터럽트 큐 출력 제어기와 인터럽트 큐 제어기로 인터럽트 큐 쉬프트 요청을 하고, 인터럽트 큐 제어기가 큐 카운터를 확인하는 제4단계와, 상기 제4단계에서 큐 카운터 값이 1이면 큐 카운터만 1만큼 감소시키고, 시작 상태로 분기하소, 큐 카운터값이 1이 아니면 큐를 1만큼 오른쪽으로 쉬프트한 후 큐 카운트를 1만큼 감소시키고 시작 상태로 분기하는 제5단계로 이루어진 것을 특징으로 한다.
도 1은 본 발명에 따른 인터럽트 제어기의 블럭도.
도 2는 본 발명이 적용되는 시스템의 블록도.
도 3은 본 발명에 따른 다중 인터럽트 제어기에서 인터럽트 검출기의 제어 흐름도.
도 4는 본 발명에 따른 다중 인터럽트 제어기에서 인터럽트 큐 제어기의 입출력 제어 흐름도.
*도면의 주요 부분에 대한 부호의 설명*
1:인터럽트 검출기 2:총 인터럽트 카운터
3:개별 인터럽트 카운터 4:인터럽트 플래그
5:인코더 및 우선순위 결정기 6:인터럽트 큐 제어기
7:인터럽트 큐 8:인터럽트 큐 출력 제어기
9:큐 카운터
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세히 설명하기로 한다.
도 1은 본 발명에 따른 다중 인터럽트 제어기의 블록도로서, 인터럽트 검출기(1), 총 인터럽트 카운터(2), n개의 개별 인터럽트 카운터(3), 인터럽트 플래그(4), 인코더 및 우선순위 결정기(5), 인터럽트 큐 제어기(6), 큐 카운터(9), 인터럽트 큐(7) 및 인터럽트 큐 출력 제어기(8)로 구성된다.
인터럽트 검출기(1)는 로컬 인터럽트 자원(1,2,3,...,n)들로 부터의 인터럽트를 검출하여 해당 인터럽트 플래그(4)를 세트하고, 총 인터럽트 카운터(2) 및 개별 인터럽트 카운터(3)를 세트한다. 해당 인터럽트 플래그(4) 정보를 인코더(5)를 통해 인터럽트 정보를 숫자화하여 호스트 시스템(도시안됨)으로 전달하기 위해 인터럽트 큐 제어기(6)로 큐 입력 요청을 하게 된다. 이때 여러 개의 인터럽트가 동시에 검출되면, 동시에 검출된 여러 개의 인터럽트 사이의 우선순위를 총 인터럽트 카운터(2)의 정보와 개별 인터럽트 카운터(3)의 정보를 결정 기본요소로 하여 총 인터럽트 카운터(2)의 일정 회수당 개별 인터럽트 회수의 비가 작은 순서별로 우선 순위를 결정하여 우선순위에 따라 인터럽트 큐 제어기(6)로 큐 입력 요청을 하게 된다. 그리고, 인터럽트 큐 제어기(6)로부터의 큐 입력 확인 신호를 받아 해당 플래그를 리세트하는 동작도 수행한다.
인터럽트 큐 제어기(6)는 인터럽트 검출기(1)로부터의 큐 입력 요청 및 인터럽트 큐 출력 제어기(8)로부터의 큐 쉬프트 요청을 받아 인터럽트 큐(7)를 제어하게 되며, 큐를 어드레싱하기 위한 큐 카운터(9)를 보유하고 있다. 먼저, 인터럽트 검출기(1)로 부터의 큐 입력 요청이 오면, 현재 큐 카운터(9) 값에 해당하는 큐에 입력한 후 인터럽트 검출기(1)로 큐 입력 확인을 보내는 것으로 큐 입력을 완료하게 되고, 인터럽트 큐 출력 제어기(8)로부터의 큐 쉬프트 요청이 오면 인터럽트 큐(7)를 오른쪽으로 쉬프트하는 기능을 수행한다.
인터럽트 큐 출력 제어기(8)는 호스트 시스템으로부터의 큐 출력요구를 받아 인터럽트 큐(7)의 0번째 큐를 펜디드(Pended) 버스를 통해 호스트 시스템으로 출력하게 되며, 동시에 인터럽트 큐 제어기(6)로 큐 쉬프트 요청을 하는 기능을 수행한다. 호스트 시스템으로의 인터럽트 요청신호는 인터럽트 큐가 유효한지를 나타내는 큐 플래그를 이용하여 펜디드(Pended) 버스를 통해 발생하게 되며, 현재 유효한 큐가 없으면 인터럽트 요청신호도 발생되지 않는다.
도 2는 본 발명의 구성과 주변 관계 기능 블럭을 나타낸 블럭도이며, 호스트 시스템과 펜디드(Pended) 버스를 통해 연결되게 되는 펜디드(Pended) 버스용 시스템을 나타낸다 펜디드(Pended) 버스용 시스템은 필수 요소로서 펜디드(Pended) 버스(21)를 통한 데이타 전송을 담당하는 펜디드(Pended) 버스 마스터/슬레이브 제어기(22), 펜디드(Pended) 버스의 구성을 저장하는 펜디드(Pended) 버스 구성 레지스터(23)로 구성되며, 이들 필수 요소들과 본 발명에 의한 펜디드(Pended) 버스용 지능적 다중 인터럽트 제어기(24)와의 연결 상태를 나타낸 것이다.
펜디드(Pended) 버스용 지능적 다중 인터럽트 제어기는 로컬 인터럽트 자원들(25 내지 26)로부터의 인터럽트를 받아 이를 펜디드(Pended) 버스(21)를 통해 연결된 호스트 시스템(27)으로 인터럽트를 전달하기 위한 처리를 담당하게 되며, 다중 인터럽트 제어기(24)와 호스트 시스템(27)과는 펜디드(Pended) 버스(21)를 통한 인터럽트 라인이 직접적으로 연결된다. 호스트 시스템(27)으로부터의 큐 출력 요구는 펜디드(Pended) 버스용 시스템의 필수 요소인 펜디드(Pended) 버스 마스터/슬레이브 제어기(22)를 통해 다중 인터럽트 제어기(24)로 전달되게 됨을 나타낸다.
본 발명에 따른 제어흐름은 인터럽트 검출기의 제어 흐름과 인터럽트 큐의 입출력 제어 흐름으로 각각 나누어지며, 각각에 대한 설명은 다음과 같다.
도 3은 인터럽트 검출기의 제어 흐름도이며, 인터럽트의 검출, 인터럽트 플래그 셋트 또는 리셋트, 인터럽트의 인코딩 및 우선순위 결정을 담당하게 된다.
시작 신호로부터 단계(30,31)에서 인터럽트가 검출되었는지를 반복적으로 검사하게 된다. 단계(31)에서 인터럽트가 검출되면, 단계(32)로 진행하여 검출된 인터럽트가 1개 이상인지를 먼저 검사하여 검출된 인터럽트가 1개이면, 단계(33)로 진행하여 해당 플래그를 셋트하고, 단계(34)로 진행하여 인터럽트를 인코딩한 후 단계(35)로 진행하여 인터럽트 큐 입력 제어기로 큐 입력 요청을 하게 된다. 이후, 단계(36)에서 인터럽트 큐 입력 제어기로부터 큐 입력 확인을 검사하다가 큐 입력 확인 신호가 오면, 단계(37)로 진행하여 해당 플래그를 리세트하고 검사 상태로 분기한다. 그러나, 상기 단계(32)에서 검출된 인터럽트가 1개 이상이면, 단계(38)로 진행하여 총 인터럽트 카운터를 세트하고, 단계(39)로 진행하여 우선순위 해당 플래그를 세트한다. 이후, 단계(40)로 진행하여 개별 인터럽트 카운터를 세트하고, 단계(41)로 진행하여 인코딩한 후 단계(43)로 진행하여 인터럽트 큐 입력 제어기로 큐 입력 요청을 하게 된다. 이후 단계(44)에서 인터럽트 큐 입력 제어기로부터 큐 입력 확인을 검사하다가 큐 입력 확인 신호가 오면, 단계(45)로 진행하여 해당 플래그를 리세트하고 상기 인터럽트가 1개 이상인지를 검사하는 단계(32)로 분기한다. 큐 입력 인터럽트 검출기에 의해 세트된 이 정보들을 입력으로 하여 우선순위 결정기가 우선순위를 결정하고, 동시에 검출된 인터럽트가 모두 인터럽트 큐에 결정된 우선순위대로 입력된 때까지 이 과정을 반복적으로 수행하게 된다.
도 4는 인터럽트 큐의 입출력 제어 흐름도이며, 인터럽트 큐를 제어하기 위한 인터럽트 큐 제어기와 인터럽트 큐 출력 제어기사이의 동작을 나타낸다.
시작신호로부터 단계(50,51)에서 인터럽트 큐 제어기는 인터럽트 검출로부터의 큐 입력 요청이나 호스트 시스템으로부터의 큐 출력 요청이 있는지를 반복적으로 검사하게 된다. 상기 단계(51)에서 인터럽트 검출기로부터의 큐입력 요청이 있게 되면, 단계(52)로 진행하여 먼저 큐가 비어있나를 검사한 후 빈 큐가 있으면 단계(53)로 진행하여 현재 큐 카운터 값에 해당하는 큐에 입력한 후 단계(54)로 진행하여 큐 입력 확인 신호를 인터럽트 검출기로 발생하고, 단계(55)로 진행하여 큐 카운터를 1만큼 증가시킨 후 시작 상태로 분기한다. 만약 상기 단계(52)에서 호스트 시스템으로 부터 큐 출력 요구가 오면, 단계(56)로 진행하여 인터럽트 큐 출력 제어기가 인터럽트 큐 제어기로 인터럽트 큐 쉬프트 요청을 하게 되고, 단계(57)로 진행하여 인터럽트 큐 제어기는 큐 카운트를 검사하여 큐 카운터 값이 1이면 단계(59)로 진행하여 카운터만 1만큼 감소시키고, 시작 상태로 분기하게 되며, 만약 큐 카운터 값이 1이 아니면 단계(58)로 진행하여 큐를 1만큼 오른쪽으로 쉬프트 한 후 단계(59)로 진행하여 큐 카운터를 1만큼 감소 시키고 시작 상태로 분기하게 된다.
상술한 바와 같이 본 발명은 펜디드(Pended) 버스의 컴퓨터 시스템에서 호스트 버스의 단일 인터럽트 라인을 다중으로 사용할 때, 종래의 고정된 우선순위의 방법에서 발생한 인터럽트 처리 시간지연 문제와, 우선순위가 낮게 배정된 경우에 생기는 기아(Starvation) 문제를 해결할 수 있는 탁월한 효과가 있다. 또한 본 발명을 다기능 장치 보드 설계 등에 도입할 경우, 인터럽트를 라인을 공유하는 모든 장치에게 공정하게 인터럽트 서비스의 기회를 부여 받게 할 수 있어, 제한된 인터럽트 라인이 제공되는 하드웨어의 응용에 탁월한 효과가 있다.

Claims (3)

  1. 로컬 인터럽트 자원들로 부터의 인터럽트를 검출하기 위한 인터럽트 검출기와,
    상기 인터럽트 검출기로부터 검출된 전체 인터럽트를 나타내는 초 인터럽트 카운터와,
    상기 각 로컬 인터럽트 자원별 로컬 인터럽트의 발생을 카운트하는 개별 인터럽트 카운터와,
    상기 인터럽트 검출기로부터 자신에게 해당되는 인터럽트가 검출되면 세트되는 인터럽트 플래그와,
    상기 해당 인터럽트 정보를 인코더하며, 총 인터럽트 카운터와 개별 인터럽트 카운트의 정보를 기본요소로 하여 우선순위를 결정하는 인코더 및 우선순위 결정기와,
    상기 인터럽트 검출기로부터의 큐 입력 요청 및 인터럽트 큐 출력 제어기로부터의 큐 쉬프트 요청을 받아 인터럽트 큐를 제어하게 되며, 큐를 어드레싱하기 위한 큐 카운터를 보유한 인터럽트 큐 제어기와,
    호스트 시스템으로 부터의 큐 출력요구를 받아 인터럽트 큐의 0번째 큐를 펜디드 버스를 통해 호스트 시스템으로 출력하게 되며, 동시에 인터럽트 큐 제어기로부 큐 쉬프트 요청을 하는 기능을 수행하는 인터럽트 큐 출력 제어기와,
    상기 인터럽트 큐 출력 제어기로부터의 큐 쉬프트 요청을 받았을때, 쉬프트 하게될 인터럽트가 대기하는 인터럽트 큐로 구성되는 것을 특징으로 하는 지능적 우선순위 결정 방식의 다중 인터럽트 제어기.
  2. 인터럽트가 검출되었는지를 반복적으로 확인하는 제1단계와,
    상기 제1단계에서 인터럽트가 검출되면 검출된 인터럽트가 1개 이상인지를 확인하는 제2단계와,
    상기 제2단계에서 검출된 인터럽트가 1개이면 해당 플래그를 셋트하고, 인터럽트를 인코딩한 후 인터럽트 큐 입력 제어기로 큐 입력 요청을 하는 제3단계와,
    상기 인터럽트 큐 입력 제어기로부터 큐입력 확인을 검사하다가 큐 입력 확인 신호가 오면, 해당 플래그를 리세트하고 시작 상태로 분기하는 제4단계와,
    상기 제2단계에서 검출된 인터럽트가 1개 이상이면, 총 인터럽트 카운터를 세트하고, 우선순위 해당 플래그를 세트한 후 개별 인터럽트 카운터를 세트하고, 인코딩한 후 인터럽트 큐 입력 제어기로 큐 입력 요청을 하는 제5단계와,
    상기 인터럽트 큐 입력 제어기로부터 큐 입력 확인을 검사하다가 큐 입력 확인 신호가 오면 해당 플래그를 리세트하고 상기 제2단계로 분기하는 제6단계로 이루어진 것을 특징으로 하는 지능적 우선순위 결정 방식의 다중 인터럽트 제어 방법.
  3. 인터럽트 큐 제어기에서 인터럽트 검출기로 부터의 큐 입력 요청이나 호스트 시스템으로 부터의 큐 출력 요청이 있는지를 반복적으로 확인하는 제1단계와,
    상기 제1단계에서 인터럽트 검출기로 부터의 큐 입력 요청이 있게 되면 먼저 큐가 비어있나를 확인하는 제2단계와,
    상기 제2단계에서 검사한 후 빈 큐가 있으면 현재 큐 카운터 값에 해당하는 큐에 입력한 후 큐 입력 확인 신호를 인터럽트 검출기로 발생하고, 큐 카운터를 1만큼 증가시킨 후 시작 상태로 분기하는 제3단계와,
    상기 제2단계에서 호스트 시스템으로부터 큐 출력 요구가 오면 인터럽트 큐 출력 제어기가 인터럽트 큐 제어기로 인터럽트 큐 쉬프트 요청을 하고, 인터럽트 큐 제어기가 큐 카운터를 확인하는 제4단계와,
    상기 제4단계에서 큐 카운터 값이 1이면 큐 카운터만 1만큼 감소시키고, 시작 상태로 분기하고, 큐 카운터 값이 1이 아니면 큐를 1만큼 오른쪽으로 쉬프트 한 후 큐 카운터를 1만큼 감소시키고 시작 상태로 분기하는 제5단계로 이루어진 것을 특징을 하는 지능적 우선순위 결정 방식의 다중 인터럽트 제어 방법.
KR1019960061513A 1996-12-04 1996-12-04 지능적 우선순위 결정 방식의 다중 인터럽트 제어기 및 그 제어 방법 KR100218675B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1019960061513A KR100218675B1 (ko) 1996-12-04 1996-12-04 지능적 우선순위 결정 방식의 다중 인터럽트 제어기 및 그 제어 방법
US08/982,661 US5931936A (en) 1996-12-04 1997-12-02 Multiple interrupt controller and control method using an intelligent priority-decision mechanism

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960061513A KR100218675B1 (ko) 1996-12-04 1996-12-04 지능적 우선순위 결정 방식의 다중 인터럽트 제어기 및 그 제어 방법

Publications (2)

Publication Number Publication Date
KR19980043590A true KR19980043590A (ko) 1998-09-05
KR100218675B1 KR100218675B1 (ko) 1999-09-01

Family

ID=19485638

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960061513A KR100218675B1 (ko) 1996-12-04 1996-12-04 지능적 우선순위 결정 방식의 다중 인터럽트 제어기 및 그 제어 방법

Country Status (2)

Country Link
US (1) US5931936A (ko)
KR (1) KR100218675B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010048185A (ko) * 1999-11-25 2001-06-15 박종섭 인터럽트 처리장치
KR100313945B1 (ko) * 1999-03-03 2001-11-15 김영환 다단 인터럽트 제어 장치
CN110945482A (zh) * 2017-08-02 2020-03-31 飞力凯网路股份有限公司 信息处理装置和信息处理方法

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6510480B1 (en) * 1998-08-25 2003-01-21 Matsushita Electric Industrial Co., Ltd. Data transfer circuit and data processing method using data transfer circuit for handling interruption processing
US6145048A (en) * 1998-09-17 2000-11-07 Micron Technology, Inc. Method of processing system management interrupt requests
GB9827825D0 (en) * 1998-12-17 1999-02-10 Sgs Thomson Microelectronics Interrupt management system
US6523073B1 (en) * 1999-08-23 2003-02-18 Palm Computing, Inc. Handheld computer system and method to detect and identify a peripheral device
US6760799B1 (en) * 1999-09-30 2004-07-06 Intel Corporation Reduced networking interrupts
US6542950B1 (en) * 2000-05-05 2003-04-01 Lucent Technologies Inc. Self-adaptive processor overload control system
US6539448B1 (en) * 2000-05-26 2003-03-25 Texas Instruments Incorporated Priority first come first serve interrupt controller
US7065169B2 (en) * 2000-08-31 2006-06-20 Hewlett-Packard Development Company, L.P. Detection of added or missing forwarding data clock signals
DE50114481D1 (de) * 2000-09-22 2008-12-24 Infineon Technologies Ag Vorrichtung zur Auswahl und Weiterleitung von empfangenen Unterbrechungsanfragen gemäss konfigurierbarer Konditionen
US7054975B2 (en) * 2001-08-10 2006-05-30 Koninklijke Philips Electronics N.V. Interrupt generation in a bus system
US6877057B2 (en) * 2002-01-25 2005-04-05 Dell Products L.P. Information handling system with dynamic interrupt allocation apparatus and methodology
KR100528476B1 (ko) * 2003-07-22 2005-11-15 삼성전자주식회사 컴퓨터 시스템의 인터럽트 처리 장치
JP2005196459A (ja) * 2004-01-07 2005-07-21 Fujitsu Ltd 割込み制御プログラムおよびその記録媒体ならびに割込み制御方法
EP2111584B1 (en) * 2007-02-08 2011-08-17 Freescale Semiconductor, Inc. Request controller, processing unit, method for controlling requests and computer program product
US9524256B2 (en) * 2007-02-16 2016-12-20 Nxp Usa, Inc. Request controller, processing unit, arrangement, method for controlling requests and computer program product
US8433857B2 (en) * 2008-02-12 2013-04-30 Broadcom Corporation Interruptible write block and method for using same
US7689750B2 (en) * 2008-03-13 2010-03-30 Dell Products L.P. System and method to dynamically order system management interrupt handler dispatches
JP5125890B2 (ja) * 2008-08-28 2013-01-23 富士通セミコンダクター株式会社 調停装置及び電子機器
US9547546B2 (en) * 2012-03-12 2017-01-17 Nxp Usa, Inc. Interrupt supervision system, processing system and method for interrupt supervision
JP6008745B2 (ja) * 2013-01-15 2016-10-19 ルネサスエレクトロニクス株式会社 データ処理装置
WO2015160576A1 (en) * 2014-04-18 2015-10-22 Anjum Zafir Monetization of priority queue

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5325536A (en) * 1989-12-07 1994-06-28 Motorola, Inc. Linking microprocessor interrupts arranged by processing requirements into separate queues into one interrupt processing routine for execution as one routine
FR2680591B1 (fr) * 1991-08-22 1996-01-26 Telemecanique Controleur d'interruption programmable, systeme interruptif et procede de controle d'interruption.
JPH0713772A (ja) * 1993-06-29 1995-01-17 Mitsubishi Electric Corp データ処理装置
JPH0895798A (ja) * 1994-09-29 1996-04-12 Fujitsu Ltd データ処理装置
US5819112A (en) * 1995-09-08 1998-10-06 Microsoft Corporation Apparatus for controlling an I/O port by queuing requests and in response to a predefined condition, enabling the I/O port to receive the interrupt requests
US5671365A (en) * 1995-10-20 1997-09-23 Symbios Logic Inc. I/O system for reducing main processor overhead in initiating I/O requests and servicing I/O completion events
KR0156173B1 (ko) * 1995-11-21 1998-11-16 문정환 인터럽트 발생회로
US5606703A (en) * 1995-12-06 1997-02-25 International Business Machines Corporation Interrupt protocol system and method using priority-arranged queues of interrupt status block control data structures

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100313945B1 (ko) * 1999-03-03 2001-11-15 김영환 다단 인터럽트 제어 장치
KR20010048185A (ko) * 1999-11-25 2001-06-15 박종섭 인터럽트 처리장치
CN110945482A (zh) * 2017-08-02 2020-03-31 飞力凯网路股份有限公司 信息处理装置和信息处理方法

Also Published As

Publication number Publication date
KR100218675B1 (ko) 1999-09-01
US5931936A (en) 1999-08-03

Similar Documents

Publication Publication Date Title
KR100218675B1 (ko) 지능적 우선순위 결정 방식의 다중 인터럽트 제어기 및 그 제어 방법
EP2092431B1 (en) Interrupt controller
US5701495A (en) Scalable system interrupt structure for a multi-processing system
US6651126B1 (en) Snapshot arbiter mechanism
US4630041A (en) Enhanced reliability interrupt control apparatus
JP2561759B2 (ja) マルチプロセッサシステムおよびそのメッセージ送受信制御装置
EP0644489A2 (en) Method and apparatus for signalling interrupt information in a data processing system
EP0786726A2 (en) Interrupt sharing technique for PCMCIA cards
CN113535634B (zh) 电子装置及用于频宽分配的方法
US20070067527A1 (en) Data transfer bus system connecting a plurality of bus masters
US20040199694A1 (en) Interrupt controller and interrupt controlling method for prioritizing interrupt requests generated by a plurality of interrupt sources
FI78994C (fi) Distribuerad prioritetsnaetslogik foer att moejliggoera att en enhet med laegre prioritet befinner sig i en position foer hoegre prioritet.
CA1169158A (en) Communication multiplexer variable priority scheme
CN100445973C (zh) 总线控制权仲裁方法与仲裁器
US6889283B2 (en) Method and system to promote arbitration priority in a buffer queue
EP0251234B1 (en) Multiprocessor interrupt level change synchronization apparatus
KR20170024876A (ko) 실시간 공유 인터페이스를 포함하는 시스템 온 칩의 스케쥴링 방법
KR100973419B1 (ko) 버스 중재 방법 및 장치
US5557756A (en) Chained arbitration
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
CN113886054A (zh) 一种中断处理装置、芯片和电子设备
US6625678B1 (en) Livelock avoidance method
US20060200608A1 (en) Bus arbiter and bus arbitrating method
KR100199021B1 (ko) 순차식 pci 버스용 다중 인터럽트 제어장치 및 방법
KR100199033B1 (ko) 절충식 pci버스용 다중 인터럽트 제어장치 및 방법

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

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee