KR940001878B1 - 멀티 프로세서시스템 및 인터럽션 제어장치 - Google Patents
멀티 프로세서시스템 및 인터럽션 제어장치 Download PDFInfo
- Publication number
- KR940001878B1 KR940001878B1 KR1019910003591A KR910003591A KR940001878B1 KR 940001878 B1 KR940001878 B1 KR 940001878B1 KR 1019910003591 A KR1019910003591 A KR 1019910003591A KR 910003591 A KR910003591 A KR 910003591A KR 940001878 B1 KR940001878 B1 KR 940001878B1
- Authority
- KR
- South Korea
- Prior art keywords
- interruption
- request
- register
- interruption request
- bit
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Bus Control (AREA)
Abstract
내용 없음.
Description
제1도는 본 발명의 멀티프로세서시스템에 접속된 인터럽션제어장치를 개략적으로 도시한 도면.
제2도는 본 발명의 인터럽션제어장치에 포함된 인터럽션요구레지스터와 인터럽션인에이블레지스터의 개략적인 도면.
제3도는 본 발명의 인터럽션제어장치를 상세하게 도시한 도면.
제4도는 프로세서소자 사이의 인터럽션요구를 제어하기 위한 인터럽션요구레지스터와 인터럽션인에이블레지스터의 개략적인 도면.
제5도는 프로세서소자 사이 및 프로세서소자와 주변장치 사이의 인터럽션요구를 제어하기 위한 인터럽션요구레지스터와 인터럽션인에이블레지스터의 개략적인 도면.
제6도는 프로세서소자와 주변장치 사이의 인터럽션요구를 제어하기 위한 인터럽션요구레지스터와 인터럽션인에이블레지스터의 개략적인 도면.
제7도는 멀티프로세서시스템에 접속된 인터럽션제어장치의 상세를 도시한 도면.
제8도는 단일 반도체집적회로칩상에 형성된 인터럽션제어장치와 버스컨트롤회로를 도시한 개략적인 도면.
본 발명은 프로세서시스템의 인터럽션요구를 제어하는 장치에 관한 것으로, 특히 다수의 상호접속된 프로세서소자를 갖는 멀티프로세서시스템에서 인터럽션요구를 제어하는 인터럽션제어장치에 관한 것이다.
종래 기술에서 잘 알려진 바와 같이, 인터럽션요구는 현재 실행되는 프로그램의 실행을 중지하고, 인터럽션을 요구하는 장치에 연관된 다른 몇 개의 더욱 중요한 타스크를 실행하도록 컴퓨터의 프로세서로 명령되는 컴퓨터명령이다. 대표적으로, 인터럽션요구는 종래의 프로세서시스템과 주변장치 사이에 접속된 인터럽션요구선을 구동하는 입/출력(I/O)장치등의 주변장치에 의해 종래의 프로세서시스템에서 발생된다.
종래의 프로세서시스템에서는 다수의 다른 인터럽션이 다수의 다른 주변장치에 의해 발생될 수 있도록 다수의 인터럽션요구선이 마련된다. 종래의 프로세서시스템에서 실행된 특정의 타스크는 구동되는 특정의 인터럽션요구선에 의해 결정된다. 인터럽션요구원의 식별은 구동되는 인터럽션요구선을 간단히 식별하는 것에 의해 용이하게 이루어진다. 상술한 바와 같이, 인터럽션요구선은 종래의 프로세서시스템과 각각의 주변장치 사이에 접속되어 있다.
따라서, 특정의 인터럽션요구에 대응하는 특정의 타스크와 인터럽션요구를 발생하는 주변장치 또는 프로세서를 식별하는 것이 멀티프로세서시스템에서 더욱 복잡하게 된다. 멀티프로세서시스템은 다수의 상호접속된 프로세서소자(PE)와 1개 이상의 프로세서소자에 각각 접속된 다수의 주변장치를 포함한다. 프로세서소자의 각각과 주변장치의 각각은 프로세서소자의 적어도 하나에서 인터럽션요구를 발생할 수도 있다.
실행되어야할 특정의 인터럽션요구와 멀티프로세서시스템에서 인터럽션요구를 발생하는 주변장치 또는 프로세서소자의 식별을 달성하기 위한 간단한 방법은 멀티프로세서의 각각의 프로세서소자와 각각의 주변장치 사이의 인터럽션요구선을 전기적으로 접속하는 것이다. 이 구성은 각각의 주변장치 또는 프로세서소자에 의해 멀티프로세서시스템의 프로세서소자중의 어느 하나에서 인터럽션요구를 초기화할 수 있게 한다.
상기 장치에서는 각각의 프로세서소자가 주변장치중의 어느 하나 또는 다른 프로세서소자중의 어느 하나에서 인터럽션요구를 수신하도록 하였지만, 이 장치는 멀티프로세서시스템의 프로세서소자와 주변장치 사이에 다수의 상호접속배선을 갖는다고 하는 불합리한 점을 갖는다. 이러한 구성은 새로운 프로세서소자와 주변장치의 부가에 의해 멀티프로세서시스템의 크기가 증대하는 것에 따라서 극히 불합리한 방해요소로 된다.
따라서, 상술한 구성에서의 인터럽션요구선의 수를 저감하기 위한 장치가 일본국 특허공개공보 No.163948/88호에 제안되어 있다. 일본국 특허공개공보 No. 163948/88호에 기재된 바와 같은 장치는 멀티프로세서시스템의 모든 프로세서소자에 접속된 단일의 인터럽션요구선을 마련하고 있다. 이 단일의 인터럽션요구선은 인터럽트되어야할 프로세서소자의 메모리의 고유메모리 공간에 정보를 어드레스함과 동시에 기억하는 것에 의해 인터럽트가 요구되어야 하는 프로세서소자를 지정한다. 일본국 특허공개공보 No.163948/88호에 따르면, I/O 장치 또는 프로세서소자중의 하나와 단일 인터럽션요구선 사이에 접속된 장치가 상기 어드레스 및 기억동작을 실행하기 위해 마련된다.
따라서, 일본국 특허공개공보 No.163948/88호에 기재된 장치에서는 인터럽션요구가 I/O 장치중의 하나에 의해 발생되었을 때, 장치에 의해 인터럽션요구에 대응하는 멀티프로세서시스템의 프로세서소자중의 하나의 메모리에 단일 인터럽션요구선을 거쳐서 어드레스가 동시에 출력된다. 장치에 의해 발생된 어드레스는 요구된 인터럽션에 대응하는 프로세서소자중의 메모리의 특정의 메모리공간에 어드레스된다.
일본국 특허공개공보 No.163948/88호에 기재된 상기 장치는 멀티프로세서시스템의 프로세서소자와 주변장치 사이에 접속된 인터럽션요구선의 수를 저감하지만, 일본국 특허공개공보 No.163948/88호에 기재된 장치는 멀티프로세서시스템의 프로세서소자와 주변장치 사이의 인터럽션요구의 스루풋을 저하시킨다는 불합리한 점이 있었다. 일본국 특허공개공보 No.163948/88호에 기재된 장치에서는 멀티프로세서시스템의 프로세서소자의 각각에 접속된 단일의 인터럽션요구선상으로 발생해야할 어드레스가 출력되는 장치에 의해 하나의 인터럽션요구만을 한번에 취급할 수 있다.
따라서, 상술한 구성에 따르면, 종래의 시스템에서는 특정인터럽션요구와 인터럽션요구원을 멀티프로세서시스템의 프로세서소자에 대해서 식별하는 효과적인 인터럽션제어를 실행하는데 필요한 하드웨어의 양을 저감하는 인터럽션요구를 발생할 수 없게 된다.
또, 종래의 시스템에서는 동시 및 순차적인 인터럽션요구의 효과적인 제어를 허가하는 것에 의해 멀티프로세서시스템내의 다른 프로세서소자에 대해서 인터럽션요구의 스루풋을 제한할 수 없다는 문제점이 있었다.
본 발명의 목적은 다수의 주변장치 또는 프로세서소자에 의해 인터럽션요구가 초기화된 것을 프로세서소자에게 알리는 인터럽션요구를 효과적으로 제어하는데 필요로 되는 하드웨어의 양을 저감하는 다수의 프로세서소자를 갖는 멀티프로세서시스템에서 동작하는 인터럽션제어장치를 제공하는 것이다.
본 발명의 다른 목적은 다수의 주변장치 또는 프로세서소자에 의해 발생된 동시 또는 순차적인 인터럽션 요구를 효과적으로 제어하기 위한 다수의 프로세서소자를 갖는 멀티프로세서시스템에서 사용하기 위한 인터럽션제어장치를 제공하는 것이다.
본 발명의 또다른 목적은 특정의 인터럽션요구와 인터럽션요구원을 식별하기 위한 다수의 프로세서소자를 갖는 멀티프로세서시스템에서 동작하기 위한 인터럽션제어장치를 제공하는 것이다.
상기 목적을 달성하기 위하여 본 발명은 본 발명의 제1, 제2 및 제3의 실시예를 마련한다.
본 발명의 제1의 실시예는 다수의 상호접속된 프로세서소자를 갖는 멀티프로세서시스템에서 인터럽션요구선에 의해 프로세서소자의 각각에 접속되어 동작하는 인터럽션제어장치를 마련한다. 본 발명의 제1의 실시예는 프로세서소자 사이의 인터럽션요구의 제어를 위해 마련된다.
본 발명의 제1의 실시예의 인터럽션제어장치는 다수의 프로세서소자에 대응하는 다수의 인터럽션요구레지스터를 갖는 인터럽션제어레지스터를 포함한다. 인터럽션요구레지스터의 각각은 대응하는 프로세서소자에서 적어도 리드액세스 및 대응하는 프로세서소자 이외의 적어도 프로세서소자에서 라이트액세스 가능하게 된다. 또한, 인터럽션제어장치는 인터럽션요구컨트롤러를 포함한다.
인터럽션요구레지스터의 각각은 인터럽션요구레지스터에 대응하는 프로세서소자 이외의 프로세서소자의 각각에 대응하는 적어도 하나의 인터럽션요구비트를 포함한다. 각각의 인터럽션요구비트는 대응하는 프로세서소자에서의 인터럽션요구의 발생을 표시하도록 대응하는 프로세서소자에 의해 설정된다.
인터럽션요구컨트롤러는 인터럽션요구레지스터의 인터럽션요구비트의 설정에 응답한다. 인터럽션요구비트의 설정에 응답해서 인터럽션요구컨트롤러는 인터럽션요구비트가 속해 있는 인터럽션요구레지스터에 대응하는 프로세서소자에 인터럽션요구선을 거쳐서 인터럽션요구를 출력한다.
본 발명의 제2의 실시예는 다수의 상호접속된 프로세서소자와 I/O 등의 다수의 주변장치를 갖는 멀티프로세서시스템에서 사용하기 위한 인터럽션제어장치를 마련한다. 인터럽션제어장치는 제1의 인터럽션요구선에 의해 프로세서소자의 각각과 제2의 인터럽션요구선에 의해 주변장치의 각각에 접속되어 있다. 본 발명의 제2의 실시예는 프로세서소자 사이 및 프로세서소자와 주변장치 사이의 인터럽션요구의 제어를 위해 마련한다.
본 발명의 제2의 실시예의 인터럽션제어장치는 다수의 프로세서소자에 대응하는 다수의 인터럽션요구레지스터를 갖는 인터럽션제어레지스터를 포함한다. 인터럽션요구레지스터의 각각은 인터럽션요구레지스터에 대응하는 적어도 프로세서소자에서 리드액세스 및 대응하는 프로세서소자 이외의 적어도 프로세서소자에서 라이트액세스 가능하게 된다.
다수의 인터럽션인에이블레지스터는 인터럽션요구레지스터에 대응하는 인터럽션제어레지스터에 마련된다. 각각의 인터럽션인에이블레지스터는 인터럽션요구레지스터 및 인터럽션인에이블레지스터에 대응하는 적어도 프로세서소자에서 라이트액세스 가능하게 된다.
또, 본 발명의 제2의 실시예의 인터럽션제어장치는 인터럽션요구컨트롤러를 포함한다.
각각의 인터럽션요구레지스터는 인터럽션요구레지스터에 대응하는 프로세서소자 이외의 적어도 프로세서소자에 대응하는 다수의 제1의 인터럽션요구비트와 다수의 주변장치에 대응하는 다수의 제2의 인터럽션요구비트를 포함한다. 각각의 제1의 인터럽션요구비트는 대응하는 프로세서소자에 의해 설정된다. 각각의 제2의 인터럽션요구비트는 대응하는 주변장치에서의 인터럽션요구의 발생에 따라서 비트설정수단에 의해 설정된다. 인터럽션요구비트의 설정은 대응하는 프로세서소자 또는 주변장치에서의 인터럽션요구의 발생을 나타낸다.
각각의 인터럽션인에이블레지스터는 제1의 인터럽션요구비트에 대응하는 다수의 제1의 인터럽션인에이블비트와 대응하는 인터럽션요구레지스터의 제2의 인터럽션요구비트에 대응하는 다수의 제2의 인터럽션인에이블비트를 포함한다. 인터럽션인에이블비트의 각각은 대응하는 인터럽션요구레지스터의 대응하는 인터럽션요구비트에 의해 표시된 인터럽션요구의 허가를 표시하도록 인터럽션요구 및 인에이블레지스터에 대응하는 프로세서소자에 의해 설정된다.
인터럽션요구컨트롤러는 인터럽션요구비트와 인터럽션인에이블비트의 설정에 응답한다. 인터럽션요구컨트롤러는 인터럽션요구비트와 인터럽션인에이블비트의 설정에 따라서 인터럽션요구비트와 인터럽션인에이블비트가 설정되어 속해 있는 인터럽션요구레지스터와 인터럽션인에이블레지스터에 대응하는 프로세서소자에 인터럽션요구를 출력한다.
본 발명의 제3의 실시예는 다수의 상호접속된 프로세서소자와 다수의 주변장치를 갖는 멀티프로세서시스템에서 사용되는 인터럽션제어장치를 마련한다. 인터럽션제어장치는 제1의 인터럽션요구선에 의해 프로세서소자의 각각에 접속되고, 제2의 인터럽션요구선에 의해 주변장치의 각각에 접속되어 있다. 본 발명의 제3의 실시예는 프로세서소자와 주변장치 사이의 인터럽션요구의 제어를 위해 마련된다.
본 발명의 제3의 실시예의 인터럽션제어장치는 다수의 주변장치에 대응하는 다수의 인터럽션요구레지스터를 갖는 인터럽션제어레지스터를 포함한다. 각각의 인터럽션요구레지스터는 프로세서소자의 각각에서 리드액세스 가능하게 된다.
또한, 인터럽션제어레지스터는 다수의 인터럽션요구레지스터에 대응하는 다수의 인터럽션인에이블레지스터를 포함한다. 각각의 인터럽션인에이블레지스터는 프로세서소자의 각각에서 라이트액세스 가능하게 된다.
본 발명의 제3의 실시예의 인터럽션제어장치는 또 인터럽션요구컨트롤러를 포함한다.
인터럽션요구레지스터의 각각은 각각의 인터럽션요구비트가 설정되었을 때 인터럽션요구레지스터에 대응하는 주변장치에서 인터럽션요구비트에 대응하는 프로세서소자로 인터럽션요구의 발생을 표시하는 다수의 프로세서소자에 대응하는 다수의 인터럽션요구비트를 포함한다.
인터럽션인에이블레지스터의 각각은 대응하는 인터럽션요구레지스터내의 다수의 인터럽션요구비트에 대응하는 다수의 인터럽션인에이블비트를 포함한다. 각각의 인터럽션인에이블비트가 프로세서소자에 의해 설정되었을 때는 인터럽션요구 및 인에이블레지스터에 대응하는 주변장치에서 인터럽션요구 및 인에이블비트에 대응하는 프로세서소자로 인터럽션요구에 대한 허가를 나타낸다.
인터럽션요구가 주변장치에서 발생되었을 때, 인터럽션요구컨트롤러는 주변장치에 대응하는 인터럽션요구레지스터에 프로세서소자에 대응하는 인터럽션요구비트를 설정한다. 인터럽션요구비트의 설정에 따라서 인터럽션요구컨트롤러는 인터럽션요구가 허가된 것을 대응하는 인터럽션인에이블레지스터의 대응하는 인터럽션인에이블비트가 나타날 때 인터럽션요구비트에 대응하는 프로세서소자로 인터럽션요구를 출력한다.
본 발명의 인터럽션제어장치는 단일 반도체집적회로칩상에 구성된다. 인터럽션제어장치는 포함하는 이러한 칩은 그의 인터럽션요구를 제어하는데 필요로 되는 어떤 형식의 프로세서시스템에도 삽입될 수 있다.
본 발명의 제1의 실시예의 칩은 인터럽션제어장치의 외부에서 리드액세스를 각각 허가하는 다수의 인터럽션요구레지스터를 갖는 인터럽션제어레지스터를 구비한 인터럽션제어장치를 그 위에 형성하고 있다. 인터럽션요구레지스터의 각각은 인터럽션요구의 발생을 나타내도록 설정되는 적어도 하나의 인터럽션요구비트를 포함한다.
또한, 본 발명의 제1의 실시예의 인터럽션제어레지스터에는 다수의 인터럽션요구레지스터에 대응하는 다수의 인터럽션인에이블레지스터가 마련되어 있다. 인터럽션인에이블레지스터의 각각은 인터럽션제어장치의 외부에서 라이트액세스 가능하게 된다. 각각의 인터럽션인에이블레지스터는 대응하는 인터럽션요구레지스터의 적어도 하나의 인터럽션요구비트에 대응하는 적어도 하나의 인터럽션인에이블비트를 포함한다. 각각의 인터럽션인에이블비트는 대응하는 인터럽션요구레지스터의 대응하는 인터럽션요구비트로 표시된 인터럽션요구의 허가를 나타내도록 설정된다.
또한 본 발명의 제1의 실시예의 칩상의 인터럽션제어장치는 인터럽션요구레지스터내에 인터럽션요구비트가 인터럽션요구의 발생을 나타내도록 설정되었을 때, 인터럽션요구레지스터에 대응하는 인터럽션 신호를 발생하는 인터럽션요구컨트롤러를 포함한다. 인터럽션 신호는 인터럽션요구가 허가된 것을 인터럽션요구비트에 대응하는 인터럽션인에이블비트가 나타내도록 설정되었을 때, 인터럽션요구컨트롤러에 의해 출력된다. 본 발명의 제1의 실시예의 칩상의 인터럽션제어장치는 또 입력신호에 따라서 고유의 인터럽션요구레지스터에 인터럽션요구비트를 설정하는 비트설정장치를 포함한다.
본 발명의 제2의 실시예의 칩은 인터럽션제어장치의 외부에서 적어도 리드액세스를 허가하는 다수의 인터럽션요구레지스터를 갖는 인터럽션제어레지스터를 구비한 인터럽션제어장치를 그 위에 형성하고 있다. 인터럽션요구레지스터의 각각은 인터럽션요구의 발생을 표시하도록 설정되는 적어도 하나의 인터럽션요구비트를 포함한다.
또한, 인터럽션제어레지스터는 다수의 인터럽션요구레지스터에 대응하는 다수의 인터럽션인에이블레지스터를 포함한다. 인터럽션인에이블레지스터의 각각은 인터럽션제어장치의 적어도 외부에서 라이트액세스 가능하다. 각각의 인터럽션인에이블레지스터는 대응하는 인터럽션요구레지스터의 적어도 하나의 인터럽션요구비트에 대응하는 적어도 하나의 인터럽션인에이블비트를 포함한다. 인터럽션인에이블비트의 각각은 대응하는 인터럽션요구레지스터의 대응하는 인터럽션요구비트로 표시된 인터럽션요구의 허가를 표시하도록 설정된다.
본 발명의 제2의 실시예의 칩상의 인터럽션제어장치는 입력신호에 따라서 인터럽션요구비트를 설정하는 비트설정장치를 포함한다.
인터럽션요구컨트롤러는 인터럽션요구레지스터내에 인터럽션요구비트가 인터럽션요구의 발생을 표시하도록 설정될 때, 인터럽션요구레지스터에 대응하는 인터럽션 신호를 발생하기 위해 본 발명의 제2의 실시예의 칩상의 인터럽션제어장치내에 마련된다. 인터럽션 신호는 인터럽션요구가 허가된 것을 인터럽션요구비트에 대응하는 인터럽션인에이블비트가 나타내도록 설정될 때 인터럽션요구컨트롤러에 의해 출력된다. 또한, 본 발명의 제2의 실시예의 칩은 그 위에 인터럽션제어장치와 함께 프로세서시스템의 버스를 제어하는 버스제어장치를 마련하고 있다.
이하, 제1도 내지 제8도를 참조해서 멀티프로세서시스템에 접속된 인터럽션제어장치의 제1, 제2 및 제3의 실시예와 하나의 반도체집적회로칩상에 형성된 인터럽션제어장치의 제1 및 제2의 실시예에 대해서 설명한다.
본 발명의 장치는 통상 제1도 및 제2도에 도시한 것이며, 제1도는 다수의 프로세서소자(103-1)∼(103-4)를 갖는 멀티프로세서시스템을 도시한 것이다. 프로세서소자(103-1)∼(103-4)는 제1의 버스(101)에 의해 상호접속되어 있다. 또한, 주변장치(106-1)∼(106-24)중의 몇 개는 I/O 장치이어도 좋은 다수의 주변장치(106-1)∼(106-24)도 마련되어 있다. 또한, 멀티프로세서시스템의 인터럽션요구를 제어하는 인터럽션제어장치(104)도 마련되어 있다. 이 인터럽션제어장치(104)는 제1의 인터럽션요구선(109-1)∼(109-4)에 의해 프로세서소자의 각각에 접속되어 있다. 또, 인터럽션제어장치(104)는 제2의 인터럽션요구선(110-1)∼(110-24)에 의해 주변장치(106)의 각각에 접속되어 있다. 이 주변장치는 제2의 버스(102)에 의해 상호접속되어 있다. 버스제어장치(105)는 그의 동작을 제어하기 위하여 제1의 버스(101)과 제2의 버스(102) 사이에 접속되어 있다. 인터럽션제어장치(104)는 버스커넥터(108)을 통해서 제1의 버스(101)을 제어한다.
인터럽션제어장치(104)는 인터럽션요구를 제어하는 인터럽션요구컨트롤러(111)과 인터럽션요구에 대해서 정보를 유지하는 인터럽션제어레지스터(107)을 포함한다. 인터럽션제어레지스터(107)의 상세한 것은 인터럽션요구레지스터 CHINT 1∼4와 대응하는 인터럽션인에이블레지스터 CHENB 1∼4를 갖는 것으로써 제2도에 도시한다. 인터럽션요구레지스터 CHINT의 각각에 포함된 인터럽션요구비트(201)은 소자(205)에 대해서 비트 CI1∼24로써 표시되고, 인터럽션인에이블레지스터 CHENB의 각각에 포함된 인터럽션인에이블비트(202)는 소자(206)에 대해서 비트 CE1∼24로써 표시된다. 또, 인터럽션요구가 주변장치(106-1)∼(106-24)에 의해 발생되었을 때, 인터럽션요구비트 CI1∼24를 설정하기 위해 비트설정장치(113)이 마련된다.
본 발명의 제1의 실시예에 따르면, 제1도에 도시한 바와 같이 다수의 상호접속된 프로세서소자(103-1)∼(103-4)를 갖는 멀티프로세서시스템에서 동작하는 인터럽션제어장치(104)를 마련하는 것이다. 본 발명의 제1의 실시예는 프로세서소자 사이의 인터럽션요구의 제어를 위해 마련된다.
제1의 실시예의 인터럽션제어장치(104)는 제4도에 도시한 바와같이 다수의 프로세서소자(103-1)∼(103-4)에 대응하는 다수의 인터럽션요구레지스터 PPINT1-4와 (301-1)∼(301-4)를 갖는 인터럽션요구레지스터(107)을 포함하고 있다. 각각의 인터럽션요구레지스터 PPINT는 대응하는 프로세서소자(103)에서 리드액세스 및 대응하는 프로세서소자(103) 이외의 적어도 프로세서소자(103)에서 라이트액세스할 수 있도록 되어 있다. 또한, 제1의 실시예의 인터럽션제어장치(104)는 다음에 그의 동작을 설명하는 인터럽션요구컨트롤러(111)을 포함한다.
인터럽션요구레지스터 PPINT의 각각은 프로세서소자(103-1)∼(103-4)에 대응하는 다수의 인터럽션요구비트 PI1-PI4를 포함한다. 각각의 인터럽션요구비트 PI는 대응하는 프로세서소자(103)에서의 인터럽션요구의 발생을 나타내도록 대응하는 프로세서소자(103)에 의해 설정된다.
인터럽션요구컨트롤러(111)은 인터럽션요구레지스터 PPINT의 인터럽션요구비트 PI의 설정에 응답한다. 인터럽션요구레지스터 PPINT의 인터럽션요구비트 PI의 설정은 프로세서소자에서 인터럽트요구가 전달되는 프로세서소자(103)에 대응하는 고유 인터럽션요구레지스터 PPINT로의 라이트액세스에 의해 실행된다.
예를 들면, 제1도에 도시한 바와 같이, 프로세서소자(103-4)를 위해 프로세서소자(103-1)의 인터럽트를 요구하도록 프로세서소자(103-4)는 프로세서소자(103-1)에 대응하는 인터럽션요구레지스터 PPINT1의 라이트액세스를 실행한다. 라이트액세스시에 프로세서소자(103-4)는 인터럽션요구레지스터 PPINT1의 프로세서소자(103-4)에 대응하는 인터럽션요구비트 PI4를 설정한다.
인터럽션요구레지스터 PPINT1의 인터럽션요구비트 PI4의 설정에 응답해서 인터럽션요구컨트롤러(111)은 프로세서소자(103-1)의 인터럽션을 요구한다.
본 발명의 제1의 실시예에서는 상기한 예에서의 인터럽션요구레지스터 PPINT1에서 리드액세스동작을 실행하는 프로세서소자(103)을 갖는 것에 의해 인터럽션요구원을 결정할 수 있다. 프로세서소자(103-1)에 의해 실행된 리드액세스동작은 인터럽션요구레지스터 PPINT1의 인터럽션요구비트 PI4가 프로세서소자(103-4)로써 인터럽션요구원을 표시하여 설정되는 것을 결정한다.
본 발명의 제1의 실시예에서는 인터럽션요구레지스터 PPINT1-4에 대응하는 다수의 인터럽션인에이블레지스터 PPENB1-4가 프로세서소자(103)의 인터럽트의 발생을 방지하도록 인터럽션제어장치(104)의 인터럽션제어레지스터(107)에 마련된다. 이 특징은 프로세서소자(103)에 의해 실행되는 중요한 동작을 인터럽트하지 않도록 하는데 유용하다.
각각의 인터럽션인에이블레지스터 PPENB는 프로세서소자(103-1)∼(103-4)에 대응하는 다수의 인터럽션인에이블비트 PEN1∼PEN4를 포함한다. 각각의 인터럽션인에이블비트 PEN은 인터럽션인에이블비트 PEN이 속하는 인터럽션인에이블레지스터 PPENB에 대응하는 인터럽션요구레지스터 PPINT의 대응하는 인터럽션요구비트 PI에 의해 표시된 인터럽션요구의 허가를 나타내도록 대응하는 프로세서소자(103)에 의해 설정된다.
따라서, 본 발명의 제1의 실시예에서는 인터럽션인에이블레지스터 PPENB1∼4가 마련되었을 때, 인터럽션요구컨트롤러(111)은 인터럽션요구비트 PI 및 인터럽션인에이블비트 PEN의 설정에 응답한다. 본 발명의 제1의 실시예에 있어서, 인터럽션요구비트 PI와 대응하는 인터럽션인에이블비트 PEN의 설정에 따라서 인터럽션요구컨트롤러(111)은 인터럽션요구비트 PI와 인터럽션인에이블비트 PEN이 각각 속하는 인터럽션요구레지스터 PPINT와 인터럽션인에이블레지스터 PPENB에 대응하는 프로세서소자(103)에 제1의 인터럽션요구선(109)를 거쳐서 인터럽션요구를 출력한다.
본 발명의 제2의 실시예는 제1도, 제5도 및 제7도에 도시한 바와같이 다수의 상호접속된 프로세서소자(103)과 다수의 주변장치(106-1)∼(106-24)를 갖는 멀티프로세서시스템에서 사용되는 인터럽션제어장치(104)를 마련하는 것이다. 본 발명의 제2의 실시예는 프로세서소자 사이 및 프로세서소자와 주변장치 사이의 인터럽션요구의 제어를 위해 마련된다.
제2의 실시예의 인터럽션제어장치(104)는 제5도에 도시한 바와같이 다수의 프로세서소자(103-1)∼(103-4)에 대응하는 다수의 인터럽션요구레지스터 PPINT1-4/CHINT1-4와 다수의 인터럽션요구레지스터 PPINT1-4/CHINT1-4에 대응하는 다수의 인터럽션인에이블레지스터 PPENB1-4/CHENB1-4를 갖는 인터럽션제어레지스터(107)을 포함한다. 또한, 제2의 실시예의 인터럽션제어장치는 인터럽션요구컨트롤러(111)과 비트설정장치(113)을 포함한다.
인터럽션요구레지스터 PPINT/CHINT의 각각은 적어도 대응하는 프로세서소자(103)에서 리드액세스 및 대응하는 프로세서소자(103) 이외의 적어도 프로세서소자(103)에서 라이트액세스가 가능하게 된다.
각각의 인터럽션요구레지스터 PPINT/CHINT는 프로세서소자(103-1)∼(103-4)에 대응하는 PI1-PI4로써 표시된 다수의 제1의 인터럽션요구비트(301-1)∼(301-4)와 주변장치(106-1)∼(106-24)에 대응하는 CI1-24로 표시된 다수의 제2의 인터럽션요구비트(202-1)∼(202-4)를 포함한다. 각각의 제1의 인터럽션요구비트 PI는 대응하는 프로세서소자(103)에 의해 설정된다. 각각의 제2의 인터럽션요구비트 CI는 대응하는 주변장치에서의 인터럽션요구의 발생에 따라서 비트설정장치(113)에 의해 설정된다. 인터럽션요구비트 PI/CI의 설정은 대응하는 프로세서소자(103) 또는 주변장치(106)에서의 인터럽션요구의 발생을 나타낸다.
각각의 인터럽션인에이블레지스터 PPENB/CHENB는 인터럽션요구레지스터 PPINT/CHINT와 PPENT/CHENB에 대응하는 적어도 프로세서소자에서 라이트액세스 가능하다.
각각의 인터럽션인에이블레지스터 PPENB/CHENB는 다수의 제1의 인터럽션요구비트 PI1-4에 대응하는 PEN1-PEN4로 표시된 다수의 제1의 인터럽션인에이블비트(302-1)∼(302-4)와 제2의 인터럽션요구비트 CI1∼CI24에 대응하는 CE1∼CE24로 표시된 다수의 제2의 인터럽션인에이블비트(204-1)∼(204-24)를 포함한다. 각각의 인터럽션인에이블비트 PEN/CE는 인터럽션요구레지스터 PPINT/CHINT의 대응하는 인터럽션요구비트 PI/CI로 표시된 인터럽션요구의 허가를 표시하도록 대응하는 프로세서소자(103)에서 라이트액세스에 의해 설정된다. 따라서, 인터럽션인에이블레지스터 PPENB/CHENB의 각각의 인터럽션인에이블비트 PEN1∼CE24를 사용하는 것에 의해 인터럽션요구의 발생을 방지하여 대응하는 프로세서소자(103)은 인터럽트해서는 안되는 중요한 동작을 연속적으로 실행할 수 있다.
인터럽션요구컨트롤러(111)은 각각 인터럽션요구레지스터 PPINT/CHINT 및 인터럽션인에이블레지스터 PPENB/CHENB내의 인터럽션요구비트 PI1-CI24의 설정 및 인터럽션인에이블비트 EPN1-CE24의 설정에 응답한다. 인터럽션요구컨트롤러(111)은 인터럽션요구비트 PI1-CI24의 설정 및 인터럽션인에이블비트 PEN1-CE24의 설정에 따라서 인터럽션요구비트 PI1-CI24와 인터럽션인에이블비트 PEN1-CE24가 각각 속해 있는 인터럽션요구레지스터 PPINT/CHINT와 인터럽션인에이블레지스터 PPENB/CHENB에 대응하는 프로세서소자(103)으로 인터럽션요구를 출력한다.
인터럽션요구컨트롤러(111)은 인터럽트요구가 출력되어야 하는가를 결정하기 위하여 인터럽션요구비트 PI1-CI24와 인터럽션인에이블비트 PEN1-CE24를 AND하는 것에 의해 동작된다.
본 발명의 제2의 실시예는 인터럽션요구가 대응하는 프로세서소자(103)에 대해서 허가되었는가를 인터럽션인에이블레지스터 PPENB1-4/CHENB1-4의 각각의 인터럽션인에이블비트 PEN가 나타내고, 프로세서소자(103) 또는 주변장치(106)중의 어느 하나에서 인터럽트요구가 발생되었다는 것을 인터럽션요구레지스터 PPINT1-4/CHINT1-4의각각의 인터럽션요구비트 PI/CI가 나타내는 상기 제1의 실시예에 대해서 모두 마찬가지로 작용한다. 인터럽션요구컨트롤러(111)은 프로세서소자(103) 또는 주변장치(106)중의 어느 하나에 대응하는 인터럽션요구비트 PI1-CI24의 설정 및 인터럽션요구비트 PI1-CI24에 대응하는 인터럽션인에이블비트 PEN1-CE24의 설정에 따라서 인터럽션요구비트 PI1-CI24와 인터럽션인에이블비트 PEN1-CE24가 각각 속해 있는 인터럽션요구레지스터 PPINT/CHINT와 인터럽션인에이블레지스터 PPENB/CHENB에 대응하는 프로세서소자(103)으로 인터럽션요구를 출력한다.
본 발명의 제2의 실시예에서는 인터럽션요구가 출력되어 있는 프로세서소자(103)이 그 안의 인터럽션요구비트 PI/CI의 설정에 의해 프로세서소자(103) 또는 주변장치(106)중의 어느 하나가 인터럽션요구원인 것을 나타내는 대응하는 인터럽션요구레지스터 PPINT/CHINT의 리드액세스동작을 실행하는 것에 의해 인터럽션요구원을 결정할 수 있다.
본 발명의 제3의 실시예는 제1도 및 제6도에 도시한 바와 같이 다수의 상호접속된 프로세서소자(103-1)∼(103-4)와 다수의 주변장치(106-1)∼(106-24)를 갖는 인터럽션제어장치(104)를 마련한다. 본 발명의 제3의 실시예는 프로세서소자와 주변장치 사이의 인터럽션요구의 제어를 위해 마련된다.
제3의 실시예의 인터럽션제어장치(104)는 제6도에 도시한 바와같이 다수의 주변장치(106-1)∼(106-24)에 대응하는 다수의 인터럽션요구레지스터 CHINT1-24와 다수의 인터럽션요구레지스터 CHINT1-24에 대응하는 다수의 인터럽션인에이블레지스터 CHENB1-24를 갖는 인터럽션제어레지스터(107)을 포함한다.
각각의 인터럽션요구레지스터 CHINT는 다수의 프로세서소자(103-1)∼(103-4)의 각각에서 리드액세스가능하게 된다. 각각의 인터럽션요구레지스터 CHINT는 다수의 프로세서소자(103-1)∼(103-4)에 대응되었을 때 CI로 표시된 다수의 인터럽션요구비트(201)을 포함한다. 각각의 인터럽션요구비트 CI1-CI4는 인터럽션요구비트 CI1-CI4가 인터럽션요구비트 CI에 대응하는 프로세서소자(103)에 속하는 인터럽션요구레지스터 CHINT에 대응하는 주변장치(106)에서 인터럽션요구의 발생을 나타낸다.
각각의 인터럽션인에이블레지스터 CHENB는 다수의 프로세서소자(103)의 각각에서 라이트액세스 가능하게 된다. 각각의 인터럽션인에이블레지스터는 대응하는 인터럽션요구레지스터 CHINT내의 다수의 인터럽션요구비트 CI1-CI4에 대응하는 CE1-CE4로 표시된 다수의 인터럽션인에이블비트(202)를 포함한다. 대응하는 프로세서소자(103)에 의해 설정되었을때에 각각의 인터럽션인에이블비트 CE는 인터럽션요구에 대응하는 주변장치(106)와 인에이블레지스터 CHINT 및 CHENB에서 인터럽션요구와 인에이블비트 CI 및 CE에 대응하는 프로세서소자(103)으로의 인터럽션요구에 대한 허가를 나타낸다.
인터럽션요구컨트롤러(111)은 프로세서소자(103)에 대한 인터럽션요구가 주변장치(106)에서 발생되었을 때, 주변장치(106)에 대응하는 인터럽션요구레지스터 CHINT에 프로세서소자(103)에 대응하는 인터럽션요구비트 CI를 설정한다. 또한, 인터럽션요구비트 CI에 대응하는 인터럽션인에이블비트 CE가 대응하는 프로세서소자(103)에서 라이트동작을 거쳐서 설정되면, 인터럽션요구컨트롤러(111)은 인터럽션요구레지스터 CHINT와 인터럽션인에이블레지스터 CHENB의 인터럽션요구비트 CI와 인터럽션인에이블비트 CE에 각각 대응하는 프로세서소자(103)으로 인터럽션요구를 출력한다.
제3도는 본 발명의 인터럽션제어장치(104)내에 포함된 소자를 더욱 상세하게 설명한 것이다.
인터럽션제어장치(104)는 리드/라이트신호(724), 스트로브신호(725) 및 어드레스(726)을 디코드해서 래치(708), (709), (710) 및 (711)에 공급되는 부하타이밍신호(727-1)∼(727-4)를 출력하는 라이트디코더(701)을 포함한다. 라이트액세스동작이 라이트디코더(701)에 의해 실행되었을 때, 선 D8∼D24상의 데이타가 셀렉터(704), (705), (706) 및 (707)을 거쳐서 래치(708), (709), (710) 및 (711)에 설정된다. 래치(703-1)∼(703-24)는 제2도에 도시한 바와같이 인터럽션요구레지스터 CHINT1-4에 대응한다. 래치(703-1)∼(703-24)내의 데이타의 상태가 인터럽션요구레지스터의 각각에 대해서 동일하고, 래치(703-1)∼(703-24)는 래치(708), (709), (710) 및 (711)의 각각의 군에 접속된 상태로 제3도에 도시되어 있다.
래치(708-1)∼(708-24)는 인터럽션인에이블레지스터 CHENB1에 대응하고, 래치(709-1)∼(709-24)는 인터럽션인에이블레지스터 CHENB2에 대응하고, 래치(710)∼(710-24)는 인터럽션인에이블레지스터 CHENB3에 대응하고, 래치(711-1)∼(711-24)는 인터럽션인에이블레지스터 CHENB4에 대응한다.
주변장치(106-1)∼(106-24)에서의 인터럽션요구는 제2의 인터럽션요구선(110-1)∼(110-24)에 의해 래치(702-1)∼(702-24)에 각각 공급된다. 인터럽션요구는 래치(702-1)∼(702-24)내의 내부신호와 동기해서 래치(703-1)∼(703-24)에 설정된다.
인터럽션요구를 제1의 인터럽션요구선(109-1)∼(109-4)에 의해 프로세서소자(103)으로 출력할 수 있는 가를 결정하기 위하여 래치(703-1)∼(703-24)의 각각과 래치(708-1)∼(711-24)의 각각은 AND게이트(712-1)∼(715-24)에 의해 함께 AND된다. 예를 들면, 래치(703)의 비트가 대응하는 주변장치(106)에서의 인터럽션요구의 발생을 나타내도록 설정되고, 래치(703)의 비트에 대응하는 래치(708)의 비트가 인터럽션요구의 인에이블(허가, 해제(unmaskea))을 나타내도록 설정되면, AND게이트(712-1)∼(712-24)에서의 출력중의 하나가 OR게이트(717)에 설정되어 제1의 인터럽션요구선(109-1)상의 인터럽션요구를 프로세서소자(103-1)로 출력한다.
AND게이트(713-1)∼(715-24)로부터의 출력은 래치(703-1)∼(703-24)의 비트중의 하나가 주변장치(106)중의 하나에서의 인터럽션요구의 발생을 나타낼 때, 제1의 인터럽션요구선(109-2)∼(109-4)상의 인터럽션요구를 출력하는 OR게이트(718)∼(720)으로 공급되고, 래치(709-1)∼(711-24)의 비트중의 하나는 대응하는 프로세서소자(103)에 대해서 인터럽션요구가 허가된 것을 나타내도록 설정된다.
래치(708-1∼24), (709-1∼24), (710-1∼24) 및 (711-1∼24)에 각각 대응하는 인터럽션인에이블레지스터 CHENB1-4의 데이타는 리드액세스동작이 리드디코더(721)을 거쳐서 실행되었을 때, AND게이트(730-1∼24), (731-1∼24), (732-1∼24) 및 (733-1∼24)를 거쳐서 OR게이트(736-1∼24)에서 출력된다. 또한, 디코더(721)에서의 리드액세스동작에 의해 래치(703-1∼24)에 각각 대응하는 인터럽션요구레지스터 CHINT1-4의 데이타가 OR게이트(737)에서의 출력에 의해 OFF되는 AND게이트(734-1∼24)를 거쳐서 출력된다.
제8도는 그 위에 형성된 인터럽션제어장치(104)와 제1 및 제2의 버스(101) 및 (102)를각각 제어하는 버스컨트롤러회로(501)을 갖는 반도체집적회로칩(112)의 제1 및 제2의 실시예를 도시한 것이다. 버스컨트롤러회로(501)은 버스커넥터(108)과 제2의 버스(102)에 접속되어 있다. 멀티프로세서시스템의 다른 모든 소자는 제1도와 마찬가지로 해서 동일한 기능을 갖고 접속되어 있다.
단일집적회로칩(112)상에 형성된 인터럽션제어장치(104)는 그의 인터럽션요구를 제어하도록 임의의 형식의 프로세서시스템내에 삽입될 칩을 사용할 수도 있다.
칩(112)내의 제1의 실시예는 칩(112)상에 형성된 인터럽션제어장치(104)에 대해서 인터럽션제어레지스터(107)을 갖기 위해 마련된다. 인터럽션제어레지스터(107)은, 예를들면 제2도에 도시한 바와같이 인터럽션제어장치(104)의 외부에서 리드액세스를 각각 허가하는 다수의 인터럽션요구레지스터 CHINT1-4를 포함한다. 인터럽션요구레지스터 CHINT의 각각은 인터럽션요구의 발생을 설정하였을 때를 나타내기 위해 CI1-24로 표시된 적어도 하나의 인터럽션요구비트(201)을 포함한다.
또한, 인터럽션제어레지스터(107)내에는 다수의 인터럽션요구레지스터 CHINT1-4에 대응하는 다수의 인터럽션인에이블레지스터 CHENB1-4도 마련되어 있다. 각각의 인터럽션인에이블레지스터 CHENB는 인터럽션제어장치(104)의 외부에서 라이트액세스 가능하게 된다. 각각의 인터럽션인에이블레지스터 CHENB는 대응하는 인터럽션요구레지스터 CHINT의 적어도 하나의 인터럽션요구비트 CI1-24(201)에 대응하는 CE1-24도 표시된 적어도 하나의 인터럽션인에이블비트(202)를 포함한다. 각각의 인터럽션인에이블비트 CE는 대응하는 인터럽션요구비트 CI로 표시된 인터럽션요구의 허가를 설정하였을 때를 나타낸다.
또한, 인터럽션제어장치(104)는 인터럽션요구의 발생을 나타내는 인터럽션비트 CI가 속해 있는 인터럽션요구레지스터 CHINT에 대응하는 인터럽션 신호를 출력하는 인터럽션요구컨트롤러(111)도 포함하고 있다.
인터럽션 신호는 인터럽션요구비트 CI에 대응하는 인터럽션인에이블비트 CE가 인터럽션요구가 허가된 것을 나타낼 때 출력된다.
반도체집적회로칩의 제1의 실시예의 인터럽션제어장치(104)는 제2의 인터럽션요구선(110)의 하나에 공급된 입력신호에 따라서 고유의 인터럽션요구레지스터 CHINT에 인터럽션요구비트 CI를 설정하는 비트설정장치(113)을 포함한다.
제2의 실시예의 반도체집적회로칩(112)는, 예를들면 제2도에 도시한 바와 같이 다수의 인터럽션요구레지스터 CHINT1-4와 다수의 대응하는 인터럽션인에이블레지스터 CHENB1-4를 포함하는 인터럽션제어레지스터(107)을 갖는 인터럽션제어장치(104)를 그 위에 형성하고 있다. 각각의 인터럽션요구레지스터 CHINT는 인터럽션제어장치(104)의 외부에서 적어도 리드액세스 가능하고, 각각의 인터럽션요구레지스터 CHINT는 CI1-24로 표시된 다수의 인터럽션요구비트(201)을 포함한다. 각각의 인터럽션요구비트 CI는 인터럽션요구의 발생을 나타낸다.
각각의 인터럽션인에이블레지스터 CHENB는 인터럽션제어장치(104)의 적어도 외부에서 라이트액세스 가능하다. 각각의 인터럽션인에이블레지스터 CHENB는 CE1-24로 표시된 다수의 인터럽션인에이블비트(202-1)을 포함한다. 각각의 인터럽션인에이블레지스터 CHENB에서는 다수의 인터럽션인에이블비트 CE1-24가 대응하는 인터럽션요구레지스터 CHINT의 다수의 인터럽션요구비트 CI1-24에 대응한다. 인터럽션인에이블비트 CE의 각각은 대응하는 인터럽션요구레지스터 CHINT의 대응하는 인터럽션요구비트 CI로 표시된 인터럽션요구에 대한 허가를 나타낸다.
제2의 실시예에서의 칩(112)상의 인터럽션제어장치(104)는 제2의 인터럽션요구선(110)상에 공급된 입력신호에 따라서 인터럽션요구비트 CI를 설정하는 비트설정장치(113)을 포함한다.
제2의 실시예에서의 칩상의 인터럽션제어장치(104)는 또 인터럽션요구의 발생을 표시하는 인터럽션요구비트 CI가 속해 있는 인터럽션요구레지스터 CHINT에 대응하는 제1의 인터럽션요구선(109)중의 하나로 인터럽션 신호를 출력하는 인터럽션요구컨트롤러(111)도 포함한다. 그러나, 인터럽션 신호는 인터럽션요구비트 CI에 대응해서 인터럽션요구가 허가된 것을 나타내는 인터럽션인에이블비트 CE가 설정될 때까지 출력되지 않는다.
또한, 제2의 실시예의 반도체집적회로칩(112)는 그 위에 형성된 인터럽션제어장치(104)와 함께 프로세서시스템의 버스를 제어하는 버스컨트롤러회로(501)을 갖는다.
따라서, 본 발명의 상기 실시예에 따르면, 인터럽션요구가 주변장치 또는 프로세서소자에 의해 초기화되었는가를 프로세서소자로 알리는 인터럽션요구를 효율적으로 제어하는데 필요한 하드웨어의 양을 저감하는 다수의 프로세서소자를 갖는 멀티프로세서시스템의 동작을 위한 인터럽션제어장치가 마련된다.
또, 본 발명의 상기 실시예에 따르면, 인터럽션제어장치는 인터럽션요구가 주변장치 또는 프로세서소자에 의해 발생된 동시 및 순차적인 인터럽션명령을 효과적으로 제어하는 다수의 프로세서소자를 갖는 멀티프로세서시스템에서 사용하기 위해 마련된다.
또한, 상술한 바와같이 본 발명에서는 초기화된 특정인터럽션요구와 주변장치 또는 프로세서소자로부터의 인터럽션요구원을 식별하는 다수의 프로세서소자를 갖는 멀티프로세서시스템의 동작을 위해 인터럽션제어장치가 마련된다.
이상 본 발명자에 의해서 이루어진 발명을 상기 실시예에 따라 구체적으로 설명했지만, 본 발명은 상기 실시예에 한정되는 것은 아니고, 그 요지를 이탈하지 않는 범위에서 여러 가지로 변경 가능한 것은 물론이다. 예를들면, 본 발명은 인터럽션요구와 인터럽션요구원의 식별을 요구하는 어떠한 것에도 적용 가능하다.
Claims (14)
- 다수의 상호접속된 프로세서소자를 포함하는 멀티프로세서시스템에서 인터럽션요구를 제어하고, 인터럽션요구선에 의해 각각의 프로세서소자에 접속되어 있는 인터럽션제어장치에 있어서, 상기 프로세서소자에 대응하는 다수의 인터럽션요구레지스터를 가지며, 각각의 인터럽션요구레지스터가 대응하는 프로세서소자에서 적어도 리드액세스 가능하고, 상기 대응하는 프로세서소자 이외의 적어도 프로세서소자에서 라이트액세스 가능하고, 상기 프로세서소자에 대응하는 다수의 인터럽션요구비트를 포함하며, 상기 각각의 인터럽션요구비트가 상기 대응하는 프로세서소자에서 상기 인터럽션요구레지스터에 대응하는 프로세서소자로 인터럽션요구의 발생을 표시하도록 대응하는 프로세서소자에 의해 설정되는 인터럽션제어레지스터와 상기 인터럽션요구비트의 설정에 따라서 인터럽션요구레지스터내에 인터럽션요구비트가 설정되었을 때 인터럽션요구를 인터럽션요구레지스터에 대응하는 프로세서소자로 출력하는 인터럽션요구컨트롤러를 포함하는 인터럽션제어장치.
- 특허청구의 범위 제1항에 있어서, 또 상기 대응하는 인터럽션요구레지스터에 대응하는 적어도 하나의 프로세서소자에서 라이트액세스를 허가하는 상기 인터럽션제어레지스터내에 포함된 상기 인터럽션요구레지스터에 대응하는 다수의 인터럽션인에이블레지스터를 포함하고, 상기 각각의 인터럽션인에이블레지스터는 상기 대응하는 인터럽션요구레지스터의 상기 다수의 인터럽션요구비트에 대응하는 다수의 인터럽션인에이블비트를 포함하고, 상기 각각의 인터럽션인에이블비트는 상기 대응하는 인터럽션요구레지스터의 대응하는 인터럽션요구비트로 표시된 인터럽션요구의 허가를 표시하도록 대응하는 프로세서소자에 의해 설정되고, 상기 인터럽션요구컨트롤러는 상기 인터럽션요구비트와 인터럽션인에이블비트의 설정에 따라서, 상기 인터럽션인에이블비트가 설정되었을 때 상기 인터럽션요구비트와 상기 인터럽션인에이블비트가 각각 속해 있는 상기 인터럽션요구레지스터와 상기 인터럽션인에이블레지스터에 대응하는 프로세서소자로 인터럽션요구를 출력하는 인터럽션제어장치.
- 특허청구의 범위 제2항에 있어서, 또 상기 멀티프로세서시스템은 제2의 인터럽션요구선에 의해 상기 인터럽션제어장치에 각각 접속된 다수의 주변장치를 포함하고, 상기 각각의 인터럽션요구레지스터는 상기 주변장치에 대응하는 다수의 제2의 인터럽션요구비트를 포함하고, 상기 각각의 제2의 인터럽션요구비트는 대응하는 주변장치에서의 인터럽션요구의 발생을 표시하도록 비트설정수단에 의해 설정되고, 상기 각각의 인터럽션인에이블레지스터는 상기 대응하는 인터럽션요구레지스터의 상기 제2의 인터럽션요구비트에 대응하는 다수의 제2의 인터럽션인에이블비트를 포함하고, 상기 각각의 인터럽션인에이블비트는 상기 대응하는 인터럽션요구레지스터의 대응하는 인터럽션요구비트로 표시된 인터럽션요구의 허가를 표시하도록 대응하는 프로세서소자에 의해 설정되고, 상기 인터럽션요구컨트롤러는 상기 인터럽션요구비트와 인터럽션인에이블비트의 설정에 따라서, 상기 인터럽션인에이블비트가 설정되었을 때 상기 인터럽션요구비트와 상기 인터럽션인에이블비트가 각각 속해 있는 상기 인터럽션요구레지스터와 상기 인터럽션인에이블레지스터에 대응하는 프로세서소자로 인터럽션요구를 출력하는 인터럽션제어장치.
- 다수의 상호접속된 프로세서소자와 다수의 주변장치를 포함하는 멀티프로세서시스템에서 인터럽션요구를 제어하고, 제1의 인터럽션요구선에 의해 상기 프로세서소자의 각각에 접속되고, 제2의 인터럽션요구선에 의해 상기 주변장치의 각각에 접속되어 있는 인터럽션제어장치에 있어서, 상기 프로세서소자의 각각에서 각각 리드액세스 가능하고, 상기 프로세서소자의 각각에서 각각 라이트액세스 가능하며, 상기 주변장치에 대응하는 다수의 인터럽션요구레지스터와 상기 인터럽션요구레지스터에 대응하는 다수의 인터럽션인에이블레지스터를 갖는 인터럽션제어레지스터와 상기 인터럽션요구레지스터에 대응하는 주변장치에 의해 발생된 인터럽션요구에 따라서 인터럽션요구레지스터에 인터럽션요구비트를 설정하고, 인터럽션요구가 허가된 것을 대응하는 인터럽션인에이블비트가 나타낼 때 설정되어 있는 상기 인터럽션요구비트에 대응하는 프로세서소자로 인터럽션요구를 출력하는 인터럽션요구컨트롤러를 포함하며, 각각의 인터럽션요구레지스터는 각각이 상기 인터럽션요구레지스터에 대응하는 주변장치에서 상기 인터럽션요구비트에 대응하는 프로세서소자로 인터럽션요구의 발생을 표시하도록 설정되고 상기 프로세서소자에 대응하는 다수의 인터럽션요구비트를 포함하고, 각각의 인터럽션인에이블레지스터는 각각이 상기 대응하는 인터럽션요구레지스터에 대응하는 주변장치에서 대응하는 인터럽션요구비트에 대응하는 프로세서소자로 인터럽션요구에 대한 허가를 표시하도록 대응하는 프로세서소자에 의해 설정되고 대응하는 인터럽션요구레지스터내의 상기 다수의 인터럽션요구비트에 대응하는 다수의 인터럽션인에이블비트를 포함하는 인터럽션제어장치.
- 인터럽션제어장치의 외부에서 액세스 가능하며, 각각이 인터럽션요구의 발생이 설정된 때를 나타내는 다수의 인터럽션요구비트를 갖는 다수의 인터럽션요구레지스터, 대응하는 인터럽션요구레지스터의 인터럽션요구비트에 대응하고 각각이 상기 대응하는 요구레지스터의 대응하는 인터럽션요구비트로 표시된 인터럽션요구에 대한 허가를 설정한 때를 나타내는 다수의 인터럽션인에이블비트를 갖고, 상기 인터럽션요구레지스터에 대응하며, 각각이 상기 인터럽션제어장치의 외부에서 라이트액세스 가능한 다수의 인터럽션인에이블레지스터와 상기 인터럽션요구비트와 인터럽션인에이블비트의 설정에 따라서, 상기 인터럽션인에이블비트가 설정될 때 상기 인터럽션요구비트와 상기 인터럽션인에이블비트가 각각 속해 있는 인터럽션요구레지스터와 인터럽션인에이블레지스터에 대응하는 인터럽션요구를 출력하는 인터럽션수단을 포함하는 인터럽션제어장치.
- 특허청구의 범위 제5항에 있어서, 또 입력신호에 대응하는 인터럽션요구비트를 설정하는 비트설정수단을 포함하는 인터럽션제어장치.
- 특허청구의 범위 제5항에 있어서, 상기 인터럽션제어장치는 단일 반도체집적회로칩상에 형성되는 인터럽션제어장치.
- 특허청구의 범위 제6항에 있어서, 상기 인터럽션제어장치는 단일 반도체집적회로칩상에 형성되는 인터럽션제어장치.
- 특허청구의 범위 제7항에 있어서, 또 상기 인터럽션제어장치와 함께 상기 칩상에 형성되어 버스를 제어하는 버스제어장치를 포함하는 인터럽션제어장치.
- 특허청구의 범위 제5항에 있어서, 또 상기 다수의 인터럽션요구레지스터와 상기 다수의 인터럽션인에이블레지스터를 포함하는 인터럽션제어레지스터, 입력신호에 따라서 인터럽션요구비트를 인터럽션요구레지스터에 설정하는 비트설정장치를 포함하는 인터럽션제어장치.
- 특허청구의 범위 제10항에 있어서, 또 상기 인터럽션제어장치와 함께 상기 칩상에 형성되어 버스를 제어하는 버스제어장치를 포함하는 인터럽션제어장치.
- 다수의 프로세서소자와 상기 프로세서소자에 대응하는 다수의 인터럽션요구레지스터와 인터럽션요구수단을 가지며, 상기 멀티프로세서시스템의 프로세서소자 사이의 인터럽션요구를 제어하는 인터럽션제어장치를 포함하고, 각각의 인터럽션요구레지스터는 대응하는 프로세서소자에서 리드액세스를 허가하고, 상기 대응하는 프로세서소자 이외의 적어도 프로세서소자에서 라이트액세스를 허가하며, 각각의 프로세서소자에서의 인터럽션요구의 발생을 표시하도록 설정되는 다수의 인터럽션요구비트를 포함하고, 상기 인터럽션요구수단은 인터럽션요구레지스터의 인터럽션요구비트의 설정에 따라서 설정되어 있는 상기 인터럽션요구비트가 속해 있는 인터럽션요구레지스터에 대응하는 프로세서소자로 인터럽션요구를 출력하는 멀티프로세서시스템.
- 특허청구의 범위 제12항에 있어서, 또 상기 인터럽션제어장치내에 포함되어 상기 인터럽션요구레지스터에 대응하는 다수의 인터럽션인에이블레지스터를 포함하고, 각각의 인터럽션인에이블레지스터는 적어도 하나의 대응하는 프로세서소자에서 라이트액세스를 허가하고, 각각의 인터럽션인에이블레지스터는 각각의 인터럽션인에이블비트가 설정되었을 때 대응하는 인터럽션요구레지스터의 대응하는 인터럽션요구비트로 표시된 인터럽션요구에 대한 허가를 나타내고 대응하는 인터럽션요구레지스터의 상기다수의 인터럽션요구비트에 대응하는 다수의 인터럽션인에이블비트를 포함하고, 상기 인터럽션요구수단은 상기 인터럽션요구비트와 인터럽션인에이블비트의 설정에 따라서, 상기 인터럽션인에이블비트가 설정되었을 때 상기 인터럽션요구비트와 상기 인터럽션인에이블비트가 각각 속해 있는 인터럽션요구레지스터와 인터럽션인에이블레지스터에 대응하는 프로세서소자로 인터럽션요구를 출력하는 멀티프로세서시스템.
- 특허청구의 범위 제13항에 있어서, 또 다수의 주변장치를 포함하고, 상기 각각의 인터럽션요구레지스터는 상기 주변장치에 대응하며, 각각이 대응하는 주변장치에서의 인터럽션요구의 발생을 설정할 때를 나타내는 다수의 제2의 인터럽션요구비트를 포함하고, 상기 각각의 인터럽션인에이블레지스터는 각각의 인터럽션인에이블비트가 설정되었을 때 대응하는 인터럽션요구레지스터의 대응하는 인터럽션요구비트로 표시된 인터럽션요구의 허가를 나타내고 상기 제2의 인터럽션요구비트에 대응하는 다수의 제2의 인터럽션인에이블비트를 포함하며, 상기 인터럽션요구수단은 프로세서소자 또는 주변장치에 의해 발생된 인터럽션요구의 발생에 따라서 인터럽션요구레지스터에 상기 프로세서소자 또는 주변장치에 대응하는 인터럽션요구비트를 설정하고, 상기 인터럽션요구비트에 대응하는 인터럽션인에이블비트가 설정되었을 때 상기 인터럽션요구레지스터에 대응하는 프로세서소자로 인터럽션요구를 출력하는 멀티프로세서시스템.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5742490A JP2831083B2 (ja) | 1990-03-08 | 1990-03-08 | マルチプロセッサシステムおよび割り込み制御装置 |
JP2-57424 | 1990-03-08 | ||
JP2070866A JP2801943B2 (ja) | 1990-03-20 | 1990-03-20 | バス制御方式、情報処理システムおよびバス制御装置 |
JP2-70866 | 1990-03-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR910017305A KR910017305A (ko) | 1991-11-05 |
KR940001878B1 true KR940001878B1 (ko) | 1994-03-10 |
Family
ID=26398466
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019910003591A KR940001878B1 (ko) | 1990-03-08 | 1991-03-06 | 멀티 프로세서시스템 및 인터럽션 제어장치 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5317747A (ko) |
KR (1) | KR940001878B1 (ko) |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5581770A (en) * | 1992-06-04 | 1996-12-03 | Mitsubishi Denki Kabushiki Kaisha | Floating interruption handling system and method |
JP2729343B2 (ja) * | 1992-08-28 | 1998-03-18 | 三菱電機株式会社 | 複数個の処理装置を有する情報処理システムおよびこの情報処理システムにおいて用いられる制御装置ならびに処理装置 |
US5461720A (en) * | 1992-09-23 | 1995-10-24 | International Business Machines Corporation | System for increasing the efficiency of communications between controller and plurality of host computers by prohibiting retransmission of the same message for predetermined period of time |
EP0590175B1 (de) * | 1992-09-28 | 1996-07-24 | Siemens Aktiengesellschaft | Prozesssteuerungssystem |
US5481724A (en) * | 1993-04-06 | 1996-01-02 | International Business Machines Corp. | Peer to peer computer-interrupt handling |
US5894577A (en) * | 1993-09-22 | 1999-04-13 | Advanced Micro Devices, Inc. | Interrupt controller with external in-service indication for power management within a computer system |
US6018785A (en) * | 1993-12-30 | 2000-01-25 | Cypress Semiconductor Corp. | Interrupt-generating hardware semaphore |
DE4406094C2 (de) * | 1994-02-25 | 2000-04-13 | Lp Elektronik Gmbh | Vorrichtung zum Betrieb einer Steuerungsanwendung |
US5905898A (en) * | 1994-05-31 | 1999-05-18 | Advanced Micro Devices, Inc. | Apparatus and method for storing interrupt source information in an interrupt controller based upon interrupt priority |
JP2921412B2 (ja) * | 1994-09-30 | 1999-07-19 | 日本電気株式会社 | データ処理装置 |
US5708813A (en) * | 1994-12-12 | 1998-01-13 | Digital Equipment Corporation | Programmable interrupt signal router |
US5535420A (en) * | 1994-12-14 | 1996-07-09 | Intel Corporation | Method and apparatus for interrupt signaling in a computer system |
US5872982A (en) * | 1994-12-28 | 1999-02-16 | Compaq Computer Corporation | Reducing the elapsed time period between an interrupt acknowledge and an interrupt vector |
US5721931A (en) * | 1995-03-21 | 1998-02-24 | Advanced Micro Devices | Multiprocessing system employing an adaptive interrupt mapping mechanism and method |
US5594905A (en) * | 1995-04-12 | 1997-01-14 | Microsoft Corporation | Exception handler and method for handling interrupts |
US5933613A (en) * | 1995-07-06 | 1999-08-03 | Hitachi, Ltd. | Computer system and inter-bus control circuit |
US5764996A (en) * | 1995-11-27 | 1998-06-09 | Digital Equipment Corporation | Method and apparatus for optimizing PCI interrupt binding and associated latency in extended/bridged PCI busses |
US5892956A (en) * | 1995-12-19 | 1999-04-06 | Advanced Micro Devices, Inc. | Serial bus for transmitting interrupt information in a multiprocessing system |
US5894578A (en) * | 1995-12-19 | 1999-04-13 | Advanced Micro Devices, Inc. | System and method for using random access memory in a programmable interrupt controller |
US5850558A (en) * | 1995-12-19 | 1998-12-15 | Advanced Micro Devices | System and method for referencing interrupt request information in a programmable interrupt controller |
US5850555A (en) * | 1995-12-19 | 1998-12-15 | Advanced Micro Devices, Inc. | System and method for validating interrupts before presentation to a CPU |
US5778236A (en) * | 1996-05-17 | 1998-07-07 | Advanced Micro Devices, Inc. | Multiprocessing interrupt controller on I/O bus |
US5923887A (en) * | 1996-05-20 | 1999-07-13 | Advanced Micro Devices, Inc. | Interrupt request that defines resource usage |
US6421746B1 (en) | 1998-03-26 | 2002-07-16 | Micron Electronics, Inc. | Method of data and interrupt posting for computer devices |
US6298409B1 (en) | 1998-03-26 | 2001-10-02 | Micron Technology, Inc. | System for data and interrupt posting for computer devices |
US6760799B1 (en) * | 1999-09-30 | 2004-07-06 | Intel Corporation | Reduced networking interrupts |
DE19955776C1 (de) * | 1999-11-19 | 2001-07-19 | Infineon Technologies Ag | Multitasking-Prozessorsystem |
EP1191455A1 (en) * | 2000-09-25 | 2002-03-27 | Lucent Technologies Inc. | Interrupt processor |
US7343510B1 (en) | 2003-12-22 | 2008-03-11 | Cypress Semiconductor Corporation | Method and device for selecting one of multiple clock signals based on frequency differences of such clock signals |
JP4171910B2 (ja) * | 2004-03-17 | 2008-10-29 | 日本電気株式会社 | 並列処理システム及び並列処理プログラム |
JP2006119802A (ja) * | 2004-10-20 | 2006-05-11 | Hitachi Ltd | マルチプロセッサシステム |
US7702835B2 (en) * | 2005-02-03 | 2010-04-20 | Oracle America, Inc. | Tagged interrupt forwarding |
US7415557B2 (en) | 2006-06-06 | 2008-08-19 | Honeywell International Inc. | Methods and system for providing low latency and scalable interrupt collection |
US20080082710A1 (en) * | 2006-09-29 | 2008-04-03 | Dell Products L.P. | System and method for managing system management interrupts in a multiprocessor computer system |
KR101841930B1 (ko) | 2012-01-30 | 2018-03-26 | 삼성전자주식회사 | 인터럽트 스프레드 방법, 인터럽트 스프레드 장치 및 이를 구비하는 시스템 온-칩 |
US8924615B2 (en) | 2012-10-26 | 2014-12-30 | Arm Limited | Communication of message signalled interrupts |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3676861A (en) * | 1970-12-30 | 1972-07-11 | Honeywell Inf Systems | Multiple mask registers for servicing interrupts in a multiprocessor system |
US3829839A (en) * | 1972-07-24 | 1974-08-13 | California Inst Of Techn | Priority interrupt system |
US3999165A (en) * | 1973-08-27 | 1976-12-21 | Hitachi, Ltd. | Interrupt information interface system |
DE2659662C3 (de) * | 1976-12-30 | 1981-10-08 | Ibm Deutschland Gmbh, 7000 Stuttgart | Prioritätsstufengesteuerte Unterbrechungseinrichtung |
US4279016A (en) * | 1979-06-21 | 1981-07-14 | International Business Machines Corporation | Instruction pre-fetch microprocessor interrupt system |
US4271468A (en) * | 1979-11-06 | 1981-06-02 | International Business Machines Corp. | Multiprocessor mechanism for handling channel interrupts |
US4420806A (en) * | 1981-01-15 | 1983-12-13 | Harris Corporation | Interrupt coupling and monitoring system |
US4495569A (en) * | 1982-06-28 | 1985-01-22 | Mitsubishi Denki Kabushiki Kaisha | Interrupt control for multiprocessor system with storage data controlling processor interrupted by devices |
US4779195A (en) * | 1985-06-28 | 1988-10-18 | Hewlett-Packard Company | Interrupt system using masking register in processor for selectively establishing device eligibility to interrupt a particular processor |
JPS62243058A (ja) * | 1986-04-15 | 1987-10-23 | Fanuc Ltd | マルチプロセツサシステムの割込制御方法 |
US4989113A (en) * | 1987-03-13 | 1991-01-29 | Texas Instruments Incorporated | Data processing device having direct memory access with improved transfer control |
US4953072A (en) * | 1987-05-01 | 1990-08-28 | Digital Equipment Corporation | Node for servicing interrupt request messages on a pended bus |
US4991084A (en) * | 1988-02-05 | 1991-02-05 | International Business Machines Corporation | N×M round robin order arbitrating switching matrix system |
US5115506A (en) * | 1990-01-05 | 1992-05-19 | Motorola, Inc. | Method and apparatus for preventing recursion jeopardy |
US5125093A (en) * | 1990-08-14 | 1992-06-23 | Nexgen Microsystems | Interrupt control for multiprocessor computer system |
-
1991
- 1991-03-06 KR KR1019910003591A patent/KR940001878B1/ko not_active IP Right Cessation
- 1991-03-07 US US07/666,066 patent/US5317747A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
KR910017305A (ko) | 1991-11-05 |
US5317747A (en) | 1994-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR940001878B1 (ko) | 멀티 프로세서시스템 및 인터럽션 제어장치 | |
US4325116A (en) | Parallel storage access by multiprocessors | |
US3573855A (en) | Computer memory protection | |
US5043878A (en) | System with real-time checking of privilege levels and the system's state to allow access to internal resources of the system | |
US5276842A (en) | Dual port memory | |
KR100385871B1 (ko) | 인터럽트 제어기 | |
US3828327A (en) | Simplified storage protection and address translation under system mode control in a data processing system | |
US4137565A (en) | Direct memory access module for a controller | |
US5142638A (en) | Apparatus for sharing memory in a multiprocessor system | |
KR100344132B1 (ko) | 컴퓨터 메모리 인터페이스용 장치와, 휴대용 이동 컴퓨터와 그 컴퓨터에서의 프로그램 명령 페치 및 데이타 기록/판독 요청 수행 방법 | |
JPH0430053B2 (ko) | ||
US5291605A (en) | Arrangement and a method for handling interrupt requests in a data processing system in a virtual machine mode | |
US5459872A (en) | Software control of hardware interruptions | |
US5933613A (en) | Computer system and inter-bus control circuit | |
EP0331487B1 (en) | Data transfer control system | |
JP2831083B2 (ja) | マルチプロセッサシステムおよび割り込み制御装置 | |
US5568631A (en) | Multiprocessor system with a shared control store accessed with predicted addresses | |
KR920002830B1 (ko) | 다이렉트 메모리 액세스 제어장치 | |
CA2078913A1 (en) | Interprocessor communication system and method for multiprocessor circuitry | |
JP2797760B2 (ja) | 並列処理コンピュータシステム | |
CA1245772A (en) | Logical arrangement for controlling use of different system displays by main processor and co-processor | |
US7765383B2 (en) | Data processing unit and data processing apparatus using data processing unit | |
JPH0330175B2 (ko) | ||
US6282600B1 (en) | Method and apparatus of resolving conflicting register access requests from a service processor and system processor | |
JPS6362778B2 (ko) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20030228 Year of fee payment: 10 |
|
LAPS | Lapse due to unpaid annual fee |