KR920010581B1 - 다중처리기 시스템에서의 인터럽트 전송 방법 - Google Patents

다중처리기 시스템에서의 인터럽트 전송 방법 Download PDF

Info

Publication number
KR920010581B1
KR920010581B1 KR1019890019310A KR890019310A KR920010581B1 KR 920010581 B1 KR920010581 B1 KR 920010581B1 KR 1019890019310 A KR1019890019310 A KR 1019890019310A KR 890019310 A KR890019310 A KR 890019310A KR 920010581 B1 KR920010581 B1 KR 920010581B1
Authority
KR
South Korea
Prior art keywords
interrupt
information
requester
register file
signal
Prior art date
Application number
KR1019890019310A
Other languages
English (en)
Other versions
KR910012959A (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 KR1019890019310A priority Critical patent/KR920010581B1/ko
Publication of KR910012959A publication Critical patent/KR910012959A/ko
Application granted granted Critical
Publication of KR920010581B1 publication Critical patent/KR920010581B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/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)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)

Abstract

내용 없음.

Description

다중처리기 시스템에서의 인터럽트 전송 방법
제1도는 본 발명의 인터럽트 요청기의 구성을 나타낸 블럭도.
제2도는 본 발명의 동작을 나타내는 타이밍도.
본 발명의 여러개의 프로세서가 여러개의 메모리를 공유하는 다중처리기 시스템에서 제한된 신호를 이용하여 여러가지 기능을 구현하기 위해 시분할 방식(Time Multiplexing)을 사용하도록한 다중처리기 시스템에서의 인터럽트 전송 방법에 관한 것이다.
일반적으로 여러개의 프로세서가 여러개의 메모리를 공유하는 다중처리기 시스템에서의 인터럽트 버스의 주된 기능은 버스 모듈들 사이의 비동기적인(Asynchronous) 정보 교환이고, 인터럽트 버스는 입출력 제어를 위한 프로세서간의 통신, 에러 발생 보고, 그리고 에러 처리 및 시스템 형상(System Configuration) 제어 등을 위한 제어명령 등이 교환되는 것이다. 종래의 단일 프로세서 시스템에서는 인터럽트 전송이 인터럽트의 종류나 인터럽트를 요청할 수 있는 모듈(Module)에 각각 신호를 배당하고, 중앙의 프로세서는 각 신호와 프로세서의 상태에 따라 인터럽트를 처리하도록 하였었다.
그러나 다중처리기 시스템에서는 인터럽트를 처리할 수 있는 프로세서가 여러개가 되고, 또한 인터럽트를 걸수 있는 모듈의 수도 증가됨에 따라 단일 프로세서 시스템과 동일한 방법으로 인터럽트를 처리할 경우에는 많은 신호가 필요하게 되었다.
이에 따라 본 발명은 다중처리기 시스템에서 제한된 신호를 이용하여 시분할 방식에 따라 여러가지의 기능을 구현하도록한 다중처리기 시스템에서의 인터럽트 전송 방법을 제공하는 것을 그 목적으로 한다.
이를 위하여 본 발명은 여러개의 프로세서가 여러개의 메모리를 공유하는 다중처리기 시스템에서, 중앙의 클럭과 동기신호를 기준으로 모든 동작이 수행되도록 하고, 한 동작이 여러개의 단계(phase)로 구성되어 순서적으로 수행되도록 한다.
그리고 인터럽트 전송을 위한 동작을 중재주기(Arbitration Cycle)와 인터럽트 전송주기(Interrupt Transfer Cycle)로 구분되어 중재주기는 하나의 기본 주기(Basic Cycle)에 수행이 완료되어 인터럽트 전송주기는 인터럽트의 종류에 따라 4,8 또는 16 기본 주기에 수행되도록 한다.
본 발명을 첨부 도면에 의거 상세히 기술되어 보면 다음과 같다.
제1도는 인터럽트 요청기의 구성을 나타낸 것으로, 인터럽트 버스(1)와 연결되어 데이터를 송 수신하고 중재를 수행하는 아비터 및 트랜시버(2)와, 아비터 및 트랜시버(2)를 통해 수신되는 데이터의 패리티를 검출하여 인터럽트 요청기 콘트롤러(4)로 보내거나 송신되는 데이터에 패리터를 생성하여 부가하는 패리터 검출발생기(3)와, 아비터 및 트랜시버(2)로 중재요청을 위한 신호(request)를 출력하고 중재가 성공되었을 때 성공신호(WIN)를 수신받는 인터럽트 요청기 콘트롤러(4)와, 신호선(1a)을 통하여 인터럽트 버스 클럭신호(IBCLK)를 수신하거나 신호선(1b)을 통하여 인터럽트 버스 동기신호(IBSYNC)를 수신하여 인터럽트 요청기 콘트롤러(4)로 전달하거나 인터럽트 요청기 콘트롤러(4)의 제어에 의해 인터럽트 버스 동기신호(IBSYNC)를 신호선(1b)에 구동하는 버스 드라이버 및 리시버(5)와, 인터럽트 요청기에 필요한 제어용 정보(GO)를 저장한 상태에서 프로세서(6)의 제어에 따라 해당 정보를 인터럽트 요청기의 상태(Status)에 대한 정보(IC,PD,DN,RT,DE,RS)를 저장한 상태에서 인터럽트 요청기 콘트롤러(4)의 동작을 프로세서(6)로 알려주는 상태 레지스터(8)와, 전송하고자 하는 인터럽트 정보(IC,RA,VT,TA,V)를 저장한 상태에서 인터럽트 요청기 콘트롤러(4)나 프로세서(6)의 제어에 따라 패리터 검출 및 발생기(3)를 통하여 요청하도록 한 레지스터 화일(9)들로 구성한 것이다.
여기서 콘트롤 레지스터(7)의 정보(GO)가 “1”인 경우에는 인터럽트 요청기에게 인터럽트 메시지의 전송을 의뢰한 상태가 된다.
그리고 상태 레지스터(8)의 정보(PD:Pending)가 “1”이면 인터럽트 요청기가 인터럽트를 전송중임을 의미하고, 정보(DN:Done)가 “0”이면 인터럽트의 전송이 완료 되었음을 의미하고, 정보(RT:Retry)가 “1”이면 전송중 에러가 발생하여 다시 전송하고 있음을 의미하고, 정보(DE:Double Error)가 셋트되면 재전송중에 다시 에러가 발생하였음을 의미하며 이때에는 인터럽트를 요청한 프로세서에서 인터럽트를 실패했음을 알린다.
또한 정보(RS:Requester State)는 인터럽트의 상태를 나타내며 진단용으로 사용하고, 정보(IC:Interrupt class)는 전송할 인터럽트의 종류를 나타내며, “10”이면 중재 인터럽트, “11”이면 지정 인터럽트를 각각 나타낸다.
한편, 레지스터 화일(9)의 정보(IC:Interrupt Class)는 전송할 인터럽트의 종류를 나타내고, 정보(Ra:Receiver Address)는 전송한 지정 인터럽트를 받을 목적지 인터럽트 처리기의 어드레스를 나타내고, 정보(VT:Vector Type)는 인터럽트 벡터의 종류를 구분하는 것이며, 정보(TA:Transmitter Address)는 인터럽트 메시지를 보낸 인터럽트 요청기의 어드레스를 나타내고 정보(V:Vector)는 인터럽트 벡터를 나타낸다.
그러므로 다중처리기 시스템에서는, 제2도에 도시한 바와 같이, 인터럽트의 전송을 원하는 인터럽트 요청기들이 동시에 여러개가 발생하는 경우에는 이를 충돌없이 처리하기 위한 중재주기를 거치도록하고, 이의 주기는 신호선(1a)을 통하여 인가되는 인터럽트 버스 클럭신호(IBCLK)의 하나의 펄스동안에 이루어지도록하며, 신호선(1b)을 통하여 수신되는 인터럽트 버스 동기 신호(IBSYNC)가 “High”이면 인터럽트 버스(1)를 통하여 인터럽트가 수행중이므로 “Low”로 될 때까지 기다려야 한다.
그리고 인터럽트 버스 동기신호(IBSYNC)가 “Low”로 수신되면 중재를 요청한 각 인터럽트 요청기의 우선 순위와 요청한 순서에 따라 하나의 인터럽트 요청기에만 사용허가를 내리게 되고 이에 따라 선택된 인터럽트 요청기의 아비터 및 트랜시버(2)에서 인터럽트 요청기 콘트롤러(4)로 중재 성공신호(WIN)를 출력하게 된다.
중재 성공신호(WIN)를 받은 인터럽트 요청기 콘트롤러(4)에서는 인터럽트의 종류를 상태 레지스터(8)의 정보(IC)를 “00”-“11”중에서 선택하여 출력하면서 알려주는 동시에, 레지스터 화일(9)의 정보(RA)로 인터럽트를 받은 인터럽트 처리기의 주소를 전송하는 인터럽트 0단계를 수행한다.
그리고 인터럽트 요청기에서 레지스터 화일(9)의 정보(VT)로 벡터의 종류를 알려주면서 정보(TA)로 인터럽트 요청기의 어드레스를 전송하는 인터럽트 1단계를 수행한 후, 인터럽트 처리기로 레지스터 화일(9)의 정보(V)를 이용하여 인터럽트 요청기가 실질적으로 처리기에 원하는 행동이 무엇인지를 알려주는 인터럽트 벡터를 전송하는 인터럽트 2단계를 수행한다.
다음에 인터럽트를 받은 인터럽트 처리기가 인터럽트 요청기로 응답을 보내는 인터럽트 3단계를 수행하도록 한다. 여기서 응답에는 시퀀스 에러(Sequence Error), 패리터 에러(Parity Error), 버퍼 완전 에러(Bufler Full Error), 전송을 받을 수 없는 에러(Unacceptable Error)등의 상태를 알려주는 것이다.
따라서 본 발명은 인터럽트 버스 클럭 신호(IBCLK)와 인터럽트 버스 동기신호(IBSYNC)를 기준으로 모든 동작이 수행되도록 하고, 하나의 동작이 여러개의 단계로 구성되어 순서대로 수행되도록 함으로써 제한된 신호를 이용하여 시분할 방식으로 여러가지의 기능을 구형하도록 한 것임을 알 수 있다.

Claims (1)

  1. 데이터를 송수신하여 중재를 수행하는 아비터 및 트랜시버(2)와, 패리터를 검출하거나 생성하여 출력하는 패리터 검출 및 발생기(3)와, 인터럽트의 요청에 관한 동작을 제어하는 인터럽트 요청기 콘트롤러(4)와, 인터럽트 버스 클럭신호(IBCLK)와 인터럽트 버스 동기신호(IBSYNC)를 수신하거나 전송하는 버스 드라이버 및 리시버(5)와, 인터럽트 요청기에 필요한 제어용 정보를 저장하는 콘트롤레지스터(7)와, 인터럽트 요청기에 필요한 상태에 대한 정보를 저장하는 상태 레지스터(8)와, 전송하고자 하는 인터럽트 정보를 저장하는 레지스터 화일(9)로 구성된 인터럽트 요청기를 포함하는 다중처리시스템에 있어서, 상기 인터럽트 버스동기신호가 하이레벨인 상태에서 중재 성공신호(WIN)를 제공받으면, 상기 인터럽트 요청기 콘트롤러(4)에서는 상기 상태 레지스터(8)의 정보를 이용하여 인터럽트 종류를 선택하고, 아울러 상기 레지스터화일(9)의 정보(RA)를 인터럽트 처리기의 주소로 전송하는 인터럽트 0단계와, 상기 인터럽트 요청기에서 상기 레지스터 화일(9)의 정보(VT)로 인터럽트 벡터의 종류를 알려주고, 상기 레지스터 화일(9)의 정보(TA)를 인터럽트 요청기의 어드레스로 전송하는 인터럽트 1단계와, 상기 레지스터화일(9)의 정보(V)를 이용하여 인터럽트 벡터를 상기 인터럽트 처리기로 전송하는 인터럽트 2단계와, 인터럽트를 받은 인터럽트 처리기가 인터럽트 요청기로 응답을 보내는 인터럽트 3단계를 구비하여서, 상기 각 단계가 인터럽트 버스동기신호의 각 펄스기간 동안에 수행되게 하여 상기 인터럽트를 시분할 방식으로 전송하도록 한 것을 특징으로 하는 다중처리기 시스템에서의 인터럽트 전송방법.
KR1019890019310A 1989-12-22 1989-12-22 다중처리기 시스템에서의 인터럽트 전송 방법 KR920010581B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019890019310A KR920010581B1 (ko) 1989-12-22 1989-12-22 다중처리기 시스템에서의 인터럽트 전송 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019890019310A KR920010581B1 (ko) 1989-12-22 1989-12-22 다중처리기 시스템에서의 인터럽트 전송 방법

Publications (2)

Publication Number Publication Date
KR910012959A KR910012959A (ko) 1991-08-08
KR920010581B1 true KR920010581B1 (ko) 1992-12-07

Family

ID=19293466

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019890019310A KR920010581B1 (ko) 1989-12-22 1989-12-22 다중처리기 시스템에서의 인터럽트 전송 방법

Country Status (1)

Country Link
KR (1) KR920010581B1 (ko)

Also Published As

Publication number Publication date
KR910012959A (ko) 1991-08-08

Similar Documents

Publication Publication Date Title
RU2110838C1 (ru) Устройство для оптимизации организации доступа к общей шине во время передачи данных с прямым доступом к памяти
US4570220A (en) High speed parallel bus and data transfer method
US5191649A (en) Multiprocessor computer system with data bus and ordered and out-of-order split data transactions
EP0358703B1 (en) Method and apparatus for managing multiple lock indicators in a multiprocessor computer system
EP0278264B1 (en) Data processing system with overlap bus cycle operations
KR930008039B1 (ko) 인터페이스 회로
EP0358716B1 (en) Node for servicing interrupt request messages on a pended bus
JP2561759B2 (ja) マルチプロセッサシステムおよびそのメッセージ送受信制御装置
EP0321628B1 (en) Shared memory interface for a data processing system
KR100267130B1 (ko) Pci 버스 시스템
US5404462A (en) Dual bus interface transfer system for central processing module
EP0524684A2 (en) A universal buffered interface for coupling multiple processors, memory units, and I/O interfaces to a common high-speed bus
KR910007643B1 (ko) 펜디드 버스를 이용하는 인터럽트를 제공하기 위한 장치 및 방법
US5805837A (en) Method for optimizing reissue commands in master-slave processing systems
US5461723A (en) Dual channel data block transfer bus
US4941083A (en) Method and apparatus for initiating interlock read transactions on a multiprocessor computer system
US5428794A (en) Interrupting node for providing interrupt requests to a pended bus
WO1988008584A1 (en) Method and apparatus for implementing multiple lock indicators in a multiprocessor computer system
JPH0772889B2 (ja) 情報処理システム
GB2365596A (en) Transfer acknowledgement in a bus system
US5509127A (en) Transmission logic apparatus for dual bus network
US5859986A (en) Bandwidth efficient method and means for resynchronizing a master and slave over a clocked, arbitrated, bidirectional multistate parallel bus using local data recirculation, wait states, and cycle stealing
US5495585A (en) Programmable timing logic system for dual bus interface
US5377334A (en) Fast asynchronous resource master-slave combination
KR920010581B1 (ko) 다중처리기 시스템에서의 인터럽트 전송 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
J2X1 Appeal (before the patent court)

Free format text: APPEAL AGAINST DECISION TO DECLINE REFUSAL

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

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee