KR0127884B1 - 우편함 인터럽트 발생회로 - Google Patents

우편함 인터럽트 발생회로

Info

Publication number
KR0127884B1
KR0127884B1 KR1019940009527A KR19940009527A KR0127884B1 KR 0127884 B1 KR0127884 B1 KR 0127884B1 KR 1019940009527 A KR1019940009527 A KR 1019940009527A KR 19940009527 A KR19940009527 A KR 19940009527A KR 0127884 B1 KR0127884 B1 KR 0127884B1
Authority
KR
South Korea
Prior art keywords
interrupt
mailbox
address
module
intelligent
Prior art date
Application number
KR1019940009527A
Other languages
English (en)
Other versions
KR950029954A (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 KR1019940009527A priority Critical patent/KR0127884B1/ko
Publication of KR950029954A publication Critical patent/KR950029954A/ko
Application granted granted Critical
Publication of KR0127884B1 publication Critical patent/KR0127884B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations 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
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox
    • 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)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Bus Control (AREA)

Abstract

본 발명은 우편함 인터럽트 주소를 쉽게 변경하고 확인할 수 있도록 한 우편함 인터럽트 발생회로에 관한 것이다. 이러한 본 발명은 래치에 저장된 우편함주소와 액세스하며는 주소를 비교하여 같을 경우에만 해당 지능모듈에 인터럽트를 거는 복수개의 우편함모듈과 상기 우편함모듈을 제어하는 제어부를 구비한다. 이때 우편함모듈은 지능모듈의 개수가 늘어남에 따라 더 추가하여 설치한다. 마이크로프로세서는 인터럽트를 걸기 전에 우편함주소를 래치에 저장시키고, 인터럽트가 걸리면 인터럽트 인식사이클을 수행한 후, 전송된 인터럽트벡터 또는 공유메모리의 우편함주소에 기록된 데이터를 참고하여 인터럽트 처리루틴으로 분기한 후 처리한다. 따라서, 지능모듈들간의 상호 인터럽트 통신 및 인터럽터회로의 확장을 쉽고 저렴한 비용으로 할 수 있다.

Description

우편함 인터럽트 발생회로
제 1도는 본 발명의 우편함 인터럽트 발생회로의 블러구성도.
* 도면의 주요부분에 대한 부호의 설명
10,70,90 : 마이크로 프로세서 20 : 공유메모리
30 : 제어부 40,50 : 우편함모듈
41,51 : 래치 42,52 : 단방향버퍼
43,53 : 비교기 60,80 : 인터럽트순위 인코더
100,200,300 : 지능모듈
본 발명은 우편함 인터럽트 주소를 소프트웨어적으로 쉽게변경하고 언제든지 변경된 주소를 확인할 수 있게 함으로써 다수개의 지능모듈들간의 상호 우편함 인터럽트를 용이하고 저렴한 비용으로 구현할 수 있도록 한 우편함 인터럽트 발생회로에 관한 것이다. 일반적으로 우편함 인터럽트(Mail Box Interrupt)란 독립적인 데이터 처리기능을 가진 모듈(이하 지능모듈이라 한다.)간의 상호인터럽트 통신방식으로, 공유메모리의 특정주소에 판독/기록 액세스(access)하는 것만으로 해당 모듈에 인터럽트를 걸수 있다. 종래에는 상기 우편함의 주소를 하드웨어적으로 설정하므로 한번 설정하면 바꾸는 것이 용이하지 않았고, 변경된 우편함의 주소를 자유롭게 읽을 수도 없었다. 또한, 상호통신이 요구되는 지능모듈의 개수가 늘어남에 따라 우편함 인터럽터회로의 구성이 복잡해지고, 설치비용도 늘어나게 되는 문제점이 있었다. 특히, 하나의 지능모듈은 다른 하나의 지능모듈에 대해 서로 다른 우선순위 혹은 서로 다른 용도를 갖는 두 개이상의 우편함 인터럽트를 걸 수 없고, 기록식 우편함 인터럽트시 기록한 데이터를 읽거나 사용하는 것이 불가능하므로 다양한 기능을 수행할 수 없었다. 본 발명은 상기와 같은 종래의 문제점을 해결하기 위한 것으로, 본 발명의 목적은 우편함 인터럽트 주소를 소프트웨어적으로 쉽게 변경하고 언제라도 변경된 주소를 획인할 수 있게하여 우편함 인터럽트의 유연성을 향상시킬 수 있도록 한 우편함 인터럽트 발생회로를 제공하는데 있다. 본 발명의 다른 목적은 상호통신이 요구되는 지능모듈의 개수가 늘어나더라도 우편함모듈만을 추가하여 우편함 인터럽터회로의 확장을 용이하고 저렴한 비용으로 할 수 있도록 한 우편함 인터럽트 발생회로를 제공하는데 있다. 본 발명의 또다른 목적은 하나의 지능모듈이 다른 하나의 지능모듈에 대해 우선순위나 용도가 다른 두 개이상의 우편함 인터럽트를 걸 수 있게 하고 우편함 인터럽트시 공유메모리에 기록한 데이터를 읽거나 사용하여 다양한 기능을 수행할 수 있도록 한 우편함 인터럽트 발생회로를 제공하는데 있다.
상기와 같은 목적들을 달성하기 위한 본 발명의 우편함 인터럽트 발생회로는 다른 지능모듈에 우편함 인터럽트를 일으키게 하는 주소를 액세스하려는 주소와 비교하여 같을 경우에만 해당 지능모듈에 인터럽트신호를 보내는 복수개의 우편함모듈을 구비한다. 우편함모듈을 구성하는 래치와 단방향버퍼와 비교기에 연결된 제어부는 이들의 동작을 제어하기 위한 인에이블신호를 출력한다. 각 지능모듈의 마이크로프로세서는 우편함모듈에 저장된 우편함 인터럽트 주소를 변경 및 확인할 수 있고, 인터럽트가 걸리면 인터럽트 인식사이클을 수행한 후, 전송된 인터럽트벡터를 이용해 인터럽트 처리루틴으로 분기하여 처리하게 된다. 이하, 첨부된 제 1도를 참조하여 본 발명의 실시예를 상세히 설명하면 다음과 같다.
제1도는 본 발명의 우편함 인터럽트 발생회로의 블록구성도로서, 3개의 지능모듈(100,200,300)을 연결하여 지능모듈 A에서 다른 지능모듈 B,C에 우편함 인터럽트를 걸기 위한 경우를 나타낸 것이다. 도시된 바와 같이, 본 발명의 지능모듈A(100)는 연산 및 제어기능을 가지고 독립적인 데이터 처리가 가능한 마이크로프로세서(10)와 각 마이크로프로세서(10)(70)(90)가 필요로 하는 데이터를 저장하고 서로 다른 부분을 액세스하여 공용으로 사용할 수 있도록 된 공유메모리(20)를 구비한다. 아울러 우편함모듈(40)(50)의 각 구성요소들의 동작을 제어하도록 설계된 제어부(30)도 구비하고 있다. 상기 마이크로프로세서(10) 및 공유메모리(20)는 어드레스버스와 데이터버스와 콘트롤라인을 통해 다른 지능모듈(200)(300)에 연결되고, 제어부(30)는 어드레스버스와 콘트롤라인에 연결되어 있다. 또한, 본 발명의 지능모듈A(100)는 지능모듈B(200)에 우편함 인터럽트를 걸기 위한 우편함모듈(40)과, 다른 지능모듈C(300)에 우편함 인터럽트를 걸기 위한 우편함모듈(50)을 구비하고 있다. 상기 우편함모듈(40)은 마이크로프로세서(10)로부터 인가된 지능모듈B(200)에 우편함 인터럽트를 일으키게 하는 공유메모리(20)의 주소를 저장했다가 제어부(30)의 래치 인에이블신호(LE)에 따라 출력하는 래치(41)를 구비한다. 래치(41)의 출력단에는 단방향버퍼(42)와 비교기(43)가 각각 연결되고, 단방향버퍼(42)는 제어부(30)의 출력인에이블신호(/OE)에 따라 래치(41)에서 출력된 주소를 저장하고 저장된 데이터를 지능모듈B(200)로 출력한다. 상기 비교기(43)는 제어부(30)의 인에이블신호(/G)에 따라 래치(41)에서 출력된 주소와 마이크로프로세서(10)에서 액세스하려는 주소를 비교하고 두 주소가 같으면 지능모듈B(200)에 인터럽트신호를 보낸다. 한편, 다른 우편함모듈(50)도 상기 우편함모듈(40)과 동일하게 래치(51)와 단방향버퍼(52)와 비교기(53)로 구성되어, 지능모듈C(300)에 우편함인터럽트를 일으키게 하는 주소를 액세스하려는 주소와 비교함으로서 같을 경우에만 지능모듈C(300)에 인터럽트신호를 보낸다. 여기서, 상기 래치(41)(51)와 단방향버퍼(42)(52)는 데이터버스에 비교기(43)(53)는 데이터버스와 어드레스버스에 각각 연결되어 있다. 지능모듈B(200)는 각 지능모듈이 동시에 인터럽트를 걸 때 우선순위를 정하여 마이크로프로세서(70)에 알려주는 인터럽트순위 인코더(60)와, 인터럽트를 인식하고 인터럽트벡터나 단방향버퍼(42)로부터 전송된 주소를 이용해 인터럽트 처리루틴으로 분기하여 처리하는 마이크로프로세서(70)를 구비한다. 이와 마찬가지로, 지능모듈C(300)도 인터럽트순위 인코더(80)와 마이크로프로세서(90)를 구비하고, 각 마이크로프로세서(70)(90)는 어드레스버스와 데이터버스와 콘트롤라인에 각각 연결되어 있다.
상기와 같이 구성된 우편함 인터럽트 발생회로에서 지능 모듈A(100)는 지능모듈B(200)에 다음과 같은 절차로 우편함 인터럽트를 걸 수 있다. 먼저, 지능모듈A(100)는 인터럽트를 걸기 전에 우편함모듈(40)의 래치(41)에 주소를 적절히 설정해주는 프로그램을 수행한다. 즉, 마이크로프로세서(10)는 지능모듈B(200)에 우편함인터럽트를 일으키게 하는 주소를 데이터버스를 통해 래치(41)로 인가하여 저장되게 하고, 이때 그 주소는 공유메모리(20)의 주소중 하나로 한다. 제어부(30)는 래치인에이블신호(LE)를 고전위상태로 출력하고, 이 신호에 의해 래치(41)는 저장된 주소를 단방향버퍼(42)와 비교기(43)로 출력하게 된다. 아울러 제어부(30)는 고전위의 출력인에이블신호(/OE)를 단방향버퍼(42)로, 고전위의 인에이블신호(/G)를 비교기(43)로 각각 출력하므로 단방향버퍼(42)는 저장된 주소가 데이터버스로 나가지 않도록 하고, 비교기(43)는 지능모듈B(200)에 인터럽트가 걸리지 않도록 한다. 한편, 지능모듈B(200)의 마이크로프로세서(70)는 단방향버퍼(42)를 판독액세스하고, 이 액세스동작에 의해 제어부(30)의 출력인에이블신호(/OE)는 저전위상태로 전환된다. 그러므로 마이크로프로세서(70)는 데이터버스를 통해 단방향버퍼(42)로부터 주소를 읽어와 내부레지스터에 저장한다. 이때 제어부(30)는 저전위의 래치인에이블신호(LE)를 래치(41)로 고전위의 인에이블신호(/G)를 비교기(43)로 각각 출력하므로 래치(41)는 저장된 주소를 출력하지 않고, 비교기(43)는 지능모듈B(200)에 인터럽트가 걸리지 않도록 한다.
이 상태에서 지능모듈A(100)가 지능모듈B(200)에 인터럽트를 걸려면, 마이크로프로세서(10)가 상기 래치(41) 및 마이크로프로세서(70)의 내부레지스터에 저장된 주소로 판독액세스 또는 기록 액세스한다. 이때 상기 주소는 공유메모리(20)상의 한 영역이므로 공유메모리(20)에 대한 판독/기록액세스가 실행된다. 이 액세스동작에 의해 제어부(30)의 인에이블신호(/G)는 저전위상태로 전환되고, 마이크로프로세서(10)에서 현재 액세스하려는 주소가 어드레스버스를 통해 비교기(43)로 입력된다. 비교기(43)는 래치(41)로부터 인가된 주소와 액세스하려는 주소를 비교하여 두 주소가 같을 경우에만 지능모듈B(200)의 인터럽트순위 인코더(60)에 인터럽트신호를 보내게 된다. 이때 제어부(30)는 저전위의 래치인에이블신호(LE)를 래치(41)로, 고전위의 출력인에이블신호(/OE)를 단방향버퍼(42)로 각각 출력하므로 래치(41)는 저장된 주소를 출력하지 않고, 단방향버퍼(42)는 저장된 주소가 데이터버스로나가지 않도록한다. 지능모듈B(200)의 인터럽트순위 인코더(60)는 여러 지능 모듈로부터 동시에 입력되는 인터럽트신호에서 우선순위를 정하여 마이크로프로세서(70)에 알려준다. 마이크로프로세서(70)는 인터럽트 인식사이클을 수행하고, 이때 지능모듈A(100)의 마이크로프로세서(10)는 인터럽트벡터를 전송하거나 혹은 자동벡터모드로 응답한다. 지능모듈B(200)의 마이크로프로세서(70)는 전송된 인터럽트벡터를 이용해 인터럽트 처리루틴으로 분기하여 처리한다. 기록시 우편함 인터럽트의 경우에는 이 처리루틴에서 지능모듈A(100)가 인터럽트를 걸 때 공유메모리(20)의 특정주소(내부레지스터에 저장된 주소)에 써 놓은 데이터를 참고하여 지능모듈B(200)가 특별한 동작을 수행하도록 할 수도 있다. 상기와 같은 방법으로 지능모듈A(100)는 우편함모듈(50)을 이용하여 지능모듈C(300)에 우편함 인터럽트를 걸 수 있다. 또, 지능모듈B(200)나 지능모듈C(300)도 각 지능모듈내부에 전술된 것과 같은 우편함모듈을 설치하여 다른 지능모듈에 우편함 인터럽트를 걸 수 있다. 즉, 상호통신이 요구되는 지능모듈의 갯수가 늘어남에 따라 단순히 우편함모듈만 추가하여 설치하면 된다는 확장용이성이 있다. 하나의 지능모듈이 두 개이상의 우편함모듈을 사용하여 다른 하나의 지능모듈에 서로 다른 우선순위, 서로 다른 용도의 우편함 인터럽트를 걸 수도 있다. 따라서, 다양한 행동을 하도록 할 수도 있고, 보다 유용하게 지능모듈간의 우편함 인터럽트 통신을 가능하게 한다.
이상에서와 같이 본 발명은 우편함 인터럽트 주소를 소프트웨어적으로 쉽게 변경하고 언제라도 변경된 주소를 확인할 수 있으므로 우편함 인터럽트의 유연성을 향상시킬 수 있다. 또, 우편함 인터럽터회로의 확장을 용이하고 저렴한 비용으로 할 수 있다. 하나의 지능모듈에 대해 우선순위나 용도가 다른 두 개이상의 인터럽트를 걸 수 있고, 인터럽트시 기록한 데이터를 자유롭게 액세스할 수 있으므로 이 데이터를 이용하여 다양한 기능을 수행할 수 있는 효과가 있다.

Claims (5)

  1. 공유메모리의 특정주소에 액세스하여 해당 지능모듈과 우편함 인터럽트 통신을 하는 복수개의 지능모듈에 있어서, 다른 지능모듈에 우편함 인터럽트를 일으키게 하는 주소를 액세스하려는 주소와 비교하여 같을 경우에만 해당 지능모듈에 인터럽트신호를 보내는 복수개의 우편함모듈과 우편함모듈의 각 구성요소들의 동작을 제어하도록 설계된 제어부와 상기 우편함모듈에 저장된 우편함 인터럽트 주소를 변경 및 확인할 수 있고, 인터럽트가 걸리면 인터럽트 인식사이클을 수행하고 전송된 인터럽트벡터를 이용해 인터럽트 처리루틴으로 분기하여 처리하는 마이크로프로세서를 포함하는 것을 특징으로하는 우편함 인터럽트 발생회로
  2. 제 1항에 있어서, 상기 우편함모듈은 다른 지능모듈에 우편함 인터럽트를 일으키게 하는 공유메모리의 주소를 저장했다가 제어부의 래치인에이블신호에 따라 출력하는 래치와 제어부의 출력인에이블신호에 따라 래치에서 출력된 주소를 저장하고 저장된 데이터를 해당 지능모듈로 출력하는 단방향버퍼와 제어부의 인에이블신호에 따라 래치에서 출력된 주소와 마이크로프러세서에서 액세스하려는 주소를 비교하고 두 주소가 같으면 해당 지능모듈에 인터럽트신호를 보내는 비교기로 구성하는 것을 특징으로 하는 우편함 인터럽트 발생회로.
  3. 제 2항에 있어서, 상기 우편함모듈은 상호통신이 요구되는 지능모듈의 개수가 늘어남에 따라 더 추가하여 설치하도록한 것을 특징으로 하는 우편함 인터럽트 발생회로.
  4. 제 2항에 있어서, 인터럽트가 걸리는 지능모듈의 마이크로프로세서는 인터럽트를 거는 지능모듈의 단방향버퍼로부터 저장된 주소를 읽어와 내부레지스터에 저장하도록 한 것을 특징으로 하는 우편함 인터럽트 발생회로.
  5. 제 4항에 있어서, 상기 마이크로프로세서는 기록식 우편함 인터럽트의 경우 인터럽트의 경우 인터럽트 인식사이클을 수행한 후 공유메모리의 우편함주소에 기록된 데이터를 참고하여 다양한 기능을 수행하도록 한 것을 특징으로 하는 우편함 인터럽트 발생회로
KR1019940009527A 1994-04-30 1994-04-30 우편함 인터럽트 발생회로 KR0127884B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019940009527A KR0127884B1 (ko) 1994-04-30 1994-04-30 우편함 인터럽트 발생회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019940009527A KR0127884B1 (ko) 1994-04-30 1994-04-30 우편함 인터럽트 발생회로

Publications (2)

Publication Number Publication Date
KR950029954A KR950029954A (ko) 1995-11-24
KR0127884B1 true KR0127884B1 (ko) 1998-04-15

Family

ID=19382275

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019940009527A KR0127884B1 (ko) 1994-04-30 1994-04-30 우편함 인터럽트 발생회로

Country Status (1)

Country Link
KR (1) KR0127884B1 (ko)

Also Published As

Publication number Publication date
KR950029954A (ko) 1995-11-24

Similar Documents

Publication Publication Date Title
US6581120B1 (en) Interrupt controller
KR0127884B1 (ko) 우편함 인터럽트 발생회로
JPH0359723A (ja) 分岐ヒストリテーブル制御方式
JP3165598B2 (ja) 先入先出メモリのバスインタフェース装置
US6493775B2 (en) Control for timed access of devices to a system bus
EP0809189A2 (en) Data latch for high-speed peripheral
JPH11282888A (ja) システム仕様記述に基づいて設計されるシステムでのデータ通信方法、割込コントローラ合成方法及びインターフェイス回路合成方法
KR100244885B1 (ko) 다중인터럽트통신회로
JP2000132451A (ja) メモリ制御回路
KR0121973B1 (ko) 전전자 교환기에 있어서 프로세서 보드간의 공통버스 중재회로
KR930007016B1 (ko) 판독수정기록(Read Modify Write, RMW)사이클 지원을 위한 잠금 처리회로
KR940011045B1 (ko) 마이크로 컨트롤 유닛의 인터럽트 백터 어드레싱 방법
KR960003973B1 (ko) 감시제어부와 레지스터간 데이타 교환시스템의 레지스터장치
JPS61276050A (ja) デ−タ転送方式
JPH01243146A (ja) 共用メモリアクセス方式
JPH03262056A (ja) キャッシュ・バースト転送方式
JPH03228163A (ja) データ転送装置
JPH0439757A (ja) バス制御装置
JPH09297708A (ja) メモリ制御装置
JPH07121483A (ja) 共有メモリアクセス制御回路
JPH03260751A (ja) 16ビットバスプロセッサの32ビット入出力装置制御方法
JPH01219930A (ja) 間接アドレス方式の割り込み制御回路装置
JPH04170653A (ja) キャッシュメモリシステム
JPH02307149A (ja) 直接メモリアクセス制御方式
JPH0675905A (ja) バス変換方式

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee