KR900005555B1 - 인터럽트를 이용한 프로세서간의 정보 교환회로 - Google Patents

인터럽트를 이용한 프로세서간의 정보 교환회로 Download PDF

Info

Publication number
KR900005555B1
KR900005555B1 KR1019870015550A KR870015550A KR900005555B1 KR 900005555 B1 KR900005555 B1 KR 900005555B1 KR 1019870015550 A KR1019870015550 A KR 1019870015550A KR 870015550 A KR870015550 A KR 870015550A KR 900005555 B1 KR900005555 B1 KR 900005555B1
Authority
KR
South Korea
Prior art keywords
cpu
signal
interrupt
board
information
Prior art date
Legal status (The legal status 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 status listed.)
Expired
Application number
KR1019870015550A
Other languages
English (en)
Other versions
KR890011270A (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 KR1019870015550A priority Critical patent/KR900005555B1/ko
Publication of KR890011270A publication Critical patent/KR890011270A/ko
Application granted granted Critical
Publication of KR900005555B1 publication Critical patent/KR900005555B1/ko
Expired legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

내용 없음.

Description

인터럽트를 이용한 프로세서간의 정보 교환회로
제1도는 종래의 듀얼 프로세서 블록도.
제2도는 본 발명의 회로도.
제3도는 제2도의 각 부분에 대한 동작파형도.
* 도면의 주요부분에 대한 부호의 설명
10 : CPU 20 : 어드레스 버퍼
31 : 낸드케이트 32-33 : 오아게이트
41-42 : 버퍼 43 : 디코더
51-52 : 래치 53 : 버퍼
본 발명은 컴퓨터 시스템에서 두 개 이상의 프로세서 상호간의 정보 교환 회로에 관한 것으로, 특히 정보 발생시 인터럽트를 발생하여 처리할 수 있는 프로세서간의 정보 교환회로에 관한 것이다.
일반적으로 두 개의 프로세서를 가진 컴퓨터 시스템에서 A라는 프로세서와 듀얼포트 메모리(Dual Port Memory)를 구비한 B라는 프로세서 사이에 데이터를 교환하는 종래의 A프로세서에서 B프로세서로 정보를 줄 때 실제로 B 프로세서에게 버스 레퀴스트(BUS Request)를 보내 버스를 잡고 듀얼포트 메모리에 데이터를 라이트하는데 B프로세서에서는 언제 정보가 왔는지 모르므로 약속된 플래그 어드레스(flag adress)를 정기적으로 check하여야 한다.
제1도는 종래의 듀얼 프로세서의 블록도로서, CPU A(1)와, CPU(1)의 데이터를 저장하는 로칼 또는 듀얼포트 메모리(local Dual port Memory)(2)와, CPU B(3)와, 상기 CPU A(1) 및 CPU B(3)의 데이터를 저장하는 듀얼포트 메모리(4)로 구성되어 있다.
여기서 CPU A(3)는 메인 시스템을 제어 처리하는 프로세서라고 가정하며, CPU B(3)는 소정 I/O 장치를 제어 처리하는 프로세서라 가정하고, 메모리(2)는 상기 CPU A(1)의 데이터를 저장하는 메모리로 로칼 또는 듀얼포트 메모리이며 메모리(4)는 CPU A(1) 및 CPU B(3)가 전송 데이터를 라이트라는 메모리다. 메모리(4)에는 폴링 방법으로 자기가 리드할 데이터를 리드하기 위하여 특정 번지를 플래그 바이트로 설정하는데 CPU A(1)에서 CPU B(3)로 정보를 전송할시는 특정영역의 플래그 바이트중 비트 7을 세트시키고, CPU B(3)에서 CPU(A)로 정보를 전송할시는 비트 6을 세트시킨다고 가정한다.
따라서 CPU B(3)의 듀얼포트메모리(4)내의 특정번지를 플래그 바이트(flag byte)로 잡고 있으므로 플래그 바이트중 비트 7이 세트되면 입력 정보가 듀얼포트메모리(4)내의 특정 부분에 라이트되어 있는 것이다.
이때 CPU B(3)는 정기적으로 플래그 바이트중 비트 7이 세트되는가를 폴링(polling)하고 있다가 세트되어 있으면 정보를 처리하고 비트 7을 다시 클리어시킨다. 반대로 CPU B(3)에서 CPU A(1)에서 정보를 주고 싶으면 듀얼 포트메모리(4)의 특정 버퍼에다 정보를 써넣고 플래그 바이트의 출력 플래그 비트(output flag bit)인 비트 6을 세트시키면 CPU A(1)가 정기적으로 CPU B(3) 내의 듀얼포트메모리(4)중 플래그 비트 6을 검사하며 세트되었을시 듀얼포트메모리(4)중의 해당 버퍼에서 정보를 리드하여 처리한후 플래그 비트를 클리어시킨다.
상기와 같은 CPU A와 CPU B상에 정보를 주고받을 때 CPU B의 듀얼포트메모리의 특정번지에 입출력 플래그를 두어 A CPU는 B CPU의 듀얼포트메모리의 플래그 비트를 정기적으로 폴링하여야 하여 마찬가지로 CPU B에서는 CPU A로부터 정보가 왔는가를 입력 플래그를 검사하여 플래그로 정보를 주고 받는 폴링방식은 펌웨어(firm ware)나 OS를 구성할 때 얼마나 정지적으로 이를 검사할 것인가 하는 것과 데이터 교환이 없을때도 폴링을 하는등 두 CPU의 부하가 과중되는 문제점이 있어TEk.
따라서 본 발명의 목적은 두 CPU가 각자 다른 임무(job)를 수행하다가 정보 교환시 필요할시에만 인터럽트 신호를 발생하여 CPU간에 정보를 교환할 수 있는 회로를 제공함에 있다.
이하 본 발명을 도면을 참조하여 상세히 설명한다. CPU(10)와, 어드레스 버퍼(20)와, 낸드게이트(31) 및 오아게이트(32-33)로 구성되며 듀얼 포트 메모리의 플래그 바이트 어드레스 억세스시 플래그 어드레스 발생신호를 출력하는 제1수단과, 버퍼(41-42) 및 디코더(43)로 구성되어 버스 승인 인식신호
Figure kpo00001
와 메모리 칩선택 신호(CS)에 의해 상기 제1수단의 출력 행성지를 구분한후 이 신호에 의해 인터럽트 제어데이터가 제1상태일시 정보 교환을 알리는 인터럽트를 발생하기 위한 제1제어신호 및 제2제어신호와 인터럽트 제어데이타가 제2상태일시 현재 수행중인 인터럽트를 해제하기 위한 제3제어신호 및 제4제어신호로 디코딩하는 제2수단과, 래치(51-52)와 버퍼(53)로 구성되어 상기 제2수단의 제1 및 제2제어신호에 의해 온 보드 및 오프 보드 CPU로 정보 발생을 알리는 인터럽트 신호를 발생하며 제3 및 제4제어신호에 의해 온 보드 및 오프 보드 CPU로 정보 처리를 알리는 인터럽트 해제 신호를 발생하는 제3수단을 구성되며 제3도는 제3도의 각 부분에 대한 동작 파형도로서, 제3a도은 온 보드(on board) CPU가 억세스한 경우로 온 보드 CPU가 오프 보드 CPU로 정보를 전송하기 위하여 인터럽트 신호를 발생하는 과정과 정보 처리후 해제 과정을 나타내고 있으며 제3b도는 오프 보드(off board) CPU가 억세스한 경우의 인터럽트 신호 발생 및 해제 과정을 나타내고 있다.
상술한 구성에 의거 본 발명을 도면들 참조하여 상세히 설명한다.
본 발명은 A,B CPU각기 서로의 임무(job)를 수행하다가 정보교환이 필요할 때 메모리의 특정 번지에 데이터를 라이트하면 자동적으로 A CPU는 B CPU로, B CPU는 A CPU로 인터럽트를 걸어주고 이 인터럽트를 받은 CPU는 하던 일을 잠시 중단하고 인터럽트 플래그를 클리어시켜 인터럽트를 해제하고 입력 정보를 처리할 수 있게 하여 펌 웨어(firm ware)나 OS구성을 용이하게 하여주고 임무 수행을 원활하게 수행할 수 있도록 한다.
여기서 CPU A는 온 보드 CPU이고 CPU B는 오프 보드 CPU라 가정한다.
초기에 리세트(reset)신호가 발생하면 래치(51-52)가 리세트되므로 반전출력단자(Q)로 "하이"신호를 출력하여 온 보드 및 오프 보드 CPU는 인터럽트가 걸리지 않는다.
CPU(10)의 어드레스 신호를 입력하는 낸게이트(31)와 오아게이트(32)는 듀얼포트메모리의 소정 번지에 있는 플래그 바이트 영역을 온 보드 또는 오프 보드의 CPU가 억세스했을시 인터럽트 신호를 발생 또는 해제하기 위한 플래그 어드레스 신호 발생을 나타내도록 구성된다.
즉, 13입력 낸드게이트(31)와 2입력 오아게이트(32)에서 각각 "로우"신호가 출력하도록 구성했을시 듀얼포트 메모리의 플래그 바이트 어드레스는 BFFCH가 된다.
온 보드의 CPU에서 오프 보드의 CPU로 정보 전송을 위해 인터럽트를 걸려고 할시나 오프 보드 CPU로부터 걸려온 인터럽트 신호를 해제하려 할시 온 보드 CPU는 듀얼포트메모리의 어드레스를 억세스하면서 하기(표 1)과 같은 인터럽트 제어데이터인 D14,D15를 인가함으로서 데이터 교환이 이루어진다.
[표 1]
Figure kpo00002
오프 보드의 CPU동작도 상기의 온 보드 CPU와 동일한 동작을 수행한다.
즉 제3도에서 온 보드 CPU가 오프 보드 CPU로 정보를 전송하려 할시 특정 버퍼에 데이터를 라이트하고 마지막에 XX BFFCH번지에 인터럽트 제어데이터인 D14가 0, D15가 1인데이터를 라이트하면 오프 보드 CPU로 인터럽트 신호가 발생된다.
여기서 XXH : 듀얼포트 메모리에 정보를 라이트할 어드레스
BFFCH : 플래그 바이트 어드레스
먼저 온 보드 CPU가 오프 보드 CPU로 정보를 전송할 경우를 설명한다.
제3a도의 (d)와 같은 듀얼포트 메모리의 칩선택 신호가 발생할시 3상태의 버퍼(42)가 인에이블되어 제4a도의 (b)와 같은 어드레스 신호가 플래그 바이트 어드레스를 출력할 시의 "로우"신호가 디코더(43)의 인에이블 단자(G1)에 인가된다.
상기 버퍼(42)의 "로우"출력에 의해 디코더(43)가 인에이블되며 선택단자(A1,B1)로 인가되는 D14,D15의 출력인 "0,1"에 의해 출력단자(Y11)로 제3a도의 (e)와 같은 "로우"신호를 출력하며 이 신호가 래치(52)의 세트단자(S)에 인가한다.
이때 상기 래치(52)는 반전 출력단자(Q)로 제3a도의 (g)와 같은 인터럽트 신호를 발생하여 버퍼(53)를 통해 오프 보드 CPU의 인터럽트 단자로 인가하며 이 신호에 의해 오프 보드 CPU은 온 보드 CPU로 부터의 정보 전송을 인지하고 해당 정보를 처리한다.
두 번째로 오프 보드 CPU로부터 온 보드 CPU가 인터럽트 신호를 받았을 경우를 설명한다. 온 보드 CPU는 하던일(job)을 멈추고 인터럽트 서비스 루틴으로 점프한다.
온 보드 CPU는 제3a도의 (b)와 같은 어드레스(XX BFFCH)에 제3a도의 (c)와 같은 D14,D15(0,0)를 라이트한다. 이때 제3a도의 (d)와 같은 듀얼포트 메모리의 칩선택 신호(CS)에 의해 3상태 버퍼(42)가 역시 인에이블되며 이때 오아게이트(33)을 통한 "로우"신호가 버퍼(42)를 통해 디코더(43)의 인에이블 단자(G1)에 인가된다.
상기 버퍼(42)의 "로우"출력에 의해 디코더(43)가 인에이블되며 선택단자(A1,B1)로 인가되는 D14,D15의 출력인 "0,0"에 의해 출력단자(Y10)로 제3a도의 (e)와 같은 "로우"신호를 출력하며 이 신호가 래치(51)의 리세트 단자(R)에 인가된다.
이때 상기 래치(51)는 반전 출력단자(Q)로 제3a도의 (f)와 같은 인터럽트 해제 신호를 발생하여 오프 보드 CPU의 인터럽트 단자로 인가하며 이 신호에 의해 온 보드 CPU는 인터럽트 신호를 제거하고 특정 버퍼의 내용을 읽어 처리해준다. 오프 보드 CPU가 억세스한 경우에는 상술한 온 보드 CPU와 동일한 동작을 수행하지만 CPU의 역할이 바뀌게 된다.
세 번째 오프 보드 CPU에서 온 보드 CPU로 데이터 전송시 인터럽트 발생과정을 설명한다.
이때는 버스 마스터권을 요구하고 인식된 오프 보드 CPU가 버스를 제어할 때 발생하는 제3b도의 (I)과 같은 버스 승인 인식신호(Bus Grant Acknowledge:BGACK)에 의해 3상태 버퍼(41)가 인에이블된다.
그러므로 버퍼(41)를 통한 오아게이트(33)의 "로우"신호에 의해 디코터(43)의 인에이블 단자(G2)가 인에이블되며 인터럽트 제어데이타인 D14,D15의 "10"데이터가 선택단자(A2,B2)에 인가되어 출력단자(Y20)로 제3b도의 (ㄱ)과 같은 "로우"신호를 출력한다.
상기 디코더(43)의 출력단자(Y20)의 "로우"신호에 의해 래치(51)가 세트되어 반전출력단자(Q)로 제3b도의 (ㅁ)과 같은 "로우"신호를 발생하여 온 보드 CPU의 인터럽트 단자로 정보 방송을 알리는 인터럽트 신호를 인가한다.
네 번째로 오프 모드에서 온 보드의 인터럽트 신호를 해제하기 위한 과정을 설명한다. 디코더(43)의 선택단자(A2,B2)에 인가되는 인터럽트 제어데이터인 D14,D15 "0"이므로 출력단자(Y21)로 제3b도의 (r)과 같은 "로우"신호가 출력되어 래치(52)의 리세트단에 인가된다.
상기 래치(52)는 버퍼(53)를 통해 오프보드 CPU로 제3b도의 (ㅂ)과 같은 "하이"신호를 인가하여 인터럽트 신호를 제거한다.
상기의 과정을 종합 설명하면 (하기 표 2)와 같다.
[표 2]
Figure kpo00003
여기서 H-High
L-Low
X-Don't Care(H나 L에 상관없음)
+-이전상태를 유지
오프보드 CPU-I/O CPU
온 보드 CPU-메인 CPU
상술한 바와 같이 컴퓨터 시스템에서 두 CPU간에 정보 전송시 인터럽트 신호를 발생하며 인터럽트를 받은 CPU는 이 신호에 의해 즉각적으로 정보를 처리하므로서 시스템의 기능을 크게 향상시킬 수 있으며 펌웨어(firm ware)나 OS구성을 간단하고 용이하게 실행할 수 있는 장점이 있다.

Claims (1)

  1. 두 개 이상의 프로세서를 구비한 컴퓨터 시스템에 있어서, 프로세서의 어드레스 신호를 논리조합하여 듀얼 포트 메모리의 플래그 바이트 억세스시 플래그 어드레스 발생 신호를 발생하는 제1수단과, 버스 승인신호(BGACK)와 메모리 칩 선택신호(CS)에 의해 오프 보드 및 온 보드 프로세서로 상기 제1수단의 출력 행선지를 결정하고, 이 신호에 의해 인에이블되어 인터럽트 제어데이터가 제1상태일시 정보교환을 알리는 인터럽트를 발생하기 위한 제1 및 제2제어신호와 인터럽트 제어데이터가 제2상태일시 현재 수행중인 인터럽트를 해제하기 위한 제3 및 제4제어신호를 디코딩 출력하는 제2수단과, 상기 제2수단의 제1 및 제2 제어신호에 의해 온 보드 및 오프 보드의 프로세서로 정보교환을 알리는 인터럽트 신호를 발생하며, 제3 및 제4 제어신호에 의해 인터럽트 해제신호를 발생하는 제3수단으로 구성함을 특징으로 하는 회로.
KR1019870015550A 1987-12-31 1987-12-31 인터럽트를 이용한 프로세서간의 정보 교환회로 Expired KR900005555B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019870015550A KR900005555B1 (ko) 1987-12-31 1987-12-31 인터럽트를 이용한 프로세서간의 정보 교환회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019870015550A KR900005555B1 (ko) 1987-12-31 1987-12-31 인터럽트를 이용한 프로세서간의 정보 교환회로

Publications (2)

Publication Number Publication Date
KR890011270A KR890011270A (ko) 1989-08-14
KR900005555B1 true KR900005555B1 (ko) 1990-07-31

Family

ID=19267823

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019870015550A Expired KR900005555B1 (ko) 1987-12-31 1987-12-31 인터럽트를 이용한 프로세서간의 정보 교환회로

Country Status (1)

Country Link
KR (1) KR900005555B1 (ko)

Also Published As

Publication number Publication date
KR890011270A (ko) 1989-08-14

Similar Documents

Publication Publication Date Title
US4096572A (en) Computer system with a memory access arbitrator
KR100245818B1 (ko) 트랜잭션 및 수신지 id를 가진 공유 버스 시스템
US5901328A (en) System for transferring data between main computer multiport memory and external device in parallel system utilizing memory protection scheme and changing memory protection area
EP0522582A2 (en) Memory sharing for communication between processors
EP0331487B1 (en) Data transfer control system
KR900005555B1 (ko) 인터럽트를 이용한 프로세서간의 정보 교환회로
US7240144B2 (en) Arbitration of data transfer requests
JPS58137065A (ja) メモリシステム
US6085297A (en) Single-chip memory system including buffer
KR20030044373A (ko) 기억 장치 직접 접근 인터페이스를 지원하는 범용 직렬버스 장치
JPS6347867A (ja) デユアルcpu間通信方式
JP2574821B2 (ja) ダイレクトメモリアクセス・コントローラ
JP3057754B2 (ja) メモリ回路および分散処理システム
JP2594611B2 (ja) Dma転送制御装置
GB2222283A (en) Data transfer between modules in a processing system
JPS61273659A (ja) デ−タ処理方式
JPS63113749A (ja) チヤネル装置
JPH02257356A (ja) マルチプロセッサシステムのデータ転送方法
JPH0512219A (ja) プロセス転送方式
JPS63128464A (ja) プロセツサ回路
JPH036762A (ja) イメージメモリのダイレクトアクセス方法
JPH0380354A (ja) パラレルインターフェース
JPH103462A (ja) Cpu間通信システム
JPH02254557A (ja) 通信制御処理装置
JPH05324541A (ja) バスインターフェース装置

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

R17-X000 Change to representative recorded

St.27 status event code: A-3-3-R10-R17-oth-X000

N231 Notification of change of applicant
PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R13-asn-PN2301

St.27 status event code: A-3-3-R10-R11-asn-PN2301

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

G160 Decision to publish patent application
PG1605 Publication of application before grant of patent

St.27 status event code: A-2-2-Q10-Q13-nap-PG1605

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 6

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 7

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 8

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 9

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 10

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 11

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 12

R17-X000 Change to representative recorded

St.27 status event code: A-5-5-R10-R17-oth-X000

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 13

FPAY Annual fee payment

Payment date: 20030627

Year of fee payment: 14

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 14

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20040801

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20040801

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000