KR19980014008A - 인터럽트 장치 - Google Patents
인터럽트 장치 Download PDFInfo
- Publication number
- KR19980014008A KR19980014008A KR1019960032767A KR19960032767A KR19980014008A KR 19980014008 A KR19980014008 A KR 19980014008A KR 1019960032767 A KR1019960032767 A KR 1019960032767A KR 19960032767 A KR19960032767 A KR 19960032767A KR 19980014008 A KR19980014008 A KR 19980014008A
- Authority
- KR
- South Korea
- Prior art keywords
- interrupt
- signal
- output
- gate means
- source
- Prior art date
Links
Landscapes
- Bus Control (AREA)
Abstract
본 발명은 인터럽트 장치에 관한 것으로서, 특히 인터럽트 레지스터 리이드신호에 응답하여 인터럽트 소스가 출력되도록 하는 제 1 게이트수단과, 상기 인터럽트 소스를 반전시킨 신호에 응답하여 인터럽트 레지스터 클리어신호가 출력 되도록 하는 제 2 게이트수단과, 상기 인터럽트 레지스터 리이드신호를 반전시키는 신호에 응답하여 상기 인터럽트 소스를 출력시키는 제 3 게이트수단과, 클럭신호에 동기하여 상기 제 1 게이트수단을 통해 출력되는 인터럽트 소스를 세트시켜 저장시키고, 상기 제 2 게이트수단을 통해 출력되는 출력신호에 응답하여 리세트 되는 제 1 래치와, 상기 제 1 래치에서 출력된 출력신호와 상기 제 2 게이트수단을 통해 출력되는 출력신호에 응답하여 제 1 래치의 출력신호를 출력하는 제 4 게이트수단과, 상기 제 3 게이트수단을 통해 출력되는 출력신호에 응답하여 세트되고, 클럭신호에 동기하여 상기 제 4 게이트수단을 통해 출력되는 출력신호를 입력받아 소정 시간 저장시킨 후 출력하는 제 2 래치로 구성된다.
따라서, 본 발명에서는 인터럽트 서비스를 안전하게 하므로 데이터의 손실을 방지할 수 있는 효과가 있다.
Description
본 발명은 인터럽트 장치에 관한 것으로서, 특히 다수의 인터럽트 소스가 동시에 입력되어도 인터럽트 소스를 손실없이 받아들일 수 있는 인터럽트 장치에 관한 것이다.
보통의 인터럽트는 인터럽트 요인이 되는 조건이 발생할 경우, 실행 중인 프로그램을 중단하여 강제적으로 특정한 주소로 제어를 옮기고, 준비되어 있는 인터럽트 처리 프로그램을 실행시키며 그 처리가 끝나면 원래의 프로그램으로 돌아가서 계속 실행시킨다. 그러므로 프로그램 처리의 효율화와 입출력 장치의 동시 동작 인터럽트 소스가 여러 개 있으면 다수의 인터럽트 소스들은 동시에 발생되거나 그렇지 않을 수도 있다. 그리고, 이 경우 하나의 인터럽트 소스가 발생하여 CPU에서 인터럽트 소스를 읽어 들여 실행을 시키면 다음에 다시 종래와 같은 인터럽트 서비스 루틴으로 들어가는 것을 방지하기 위해 이미 발생했던 인터럽트 소스를 클리어 시키는 것이 보통이다.
그러나, 다수의 인터럽트 소스를 가지는 디지탈 시스템에서 먼저 들어온 인터럽트 소스를 클리어하는 순간, 또 다른 인터럽트 소스가 발생하면 나중에 발생한 인터럽트 소스도 함께 클리어되어 인터럽트 서비스를 받지 못하게 되므로 데이터가 손실되는 문제점이 있었다.
본 발명의 목적은 상기와 같은 종래 기술의 문제점을 해결하기 위하여 다수의 인터럽트 소스를 가지는 디지탈 시스템에서 인터럽트 소스들이 동시에 발생되어 CPU에 인가되더라도 각각의 인터럽트 소스마다 2 개의 레지스터를 두도록 한다. 그러면 인터럽트 레지스터를 독출하지 않을 때 발생되는 인터럽트 소스가 한 쪽 레지스터에 저장되고, 다른 쪽 레지스터에서는 인터럽트 레지스터가 독출될 때 인터럽트 소스를 저장시켜 인터럽트 레지스터 클리어 신호가 발생되어도 데이터 손실을 줄일 수 있는 인터럽트 장치를 제공하는데 있다.
상기 목적을 달성하기 위하여 본 발명의 장치는 인터럽트 레지스터 리이드신호에 응답하여 인터럽트 소스가 출력되도록 하는 제 1 게이트수단과, 상기 인터럽트 소스를 반전시킨 신호에 응답하여 인터럽트 레지스터 클리어신호가 출력 되도록 하는 제 2 게이트수단과, 상기 인터럽트 레지스터 리이드신호를 반전시키는 신호에 응답하여 상기 인터럽트 소스를 출력시키는 제 3 게이트수단과, 클럭신호에 동기하여 상기 제 1 게이트수단을 통해 출력되는 인터럽트 소스를 세트시켜 저장시키고, 상기 제 2 게이트수단을 통해 출력되는 출력신호에 응답하여 리세트 되는 제 1 래치와, 상기 제 1 래치에서 출력된 출력신호와 상기 제 2 게이트수단을 통해 출력되는 출력신호에 응답하여 제 1 래치의 출력신호를 출력하는 제 4 게이트수단과, 상기 제 3 게이트수단을 통해 출력되는 출력신호에 응답하여 세트되고, 클럭신호에 동기하여 상기 제 4 게이트수단을 통해 출력되는 출력신호를 입력받아 소정 시간 저장시킨 후 출력하는 제 2 래치로 구성되는 것을 특징으로 한다.
도 1 은 본 발명에 따른 인터럽트 장치를 나타낸 회로도.
도 2 는 인터럽트 레지스터를 지우기 위한 인터럽트 레지스터 클리어신호를 발생하는 장치의 회로도.
도 3 은 도 2 의 타이밍도.
* 도면의 주요 부분에 대한 부호의 설명 *
10: 제 1 게이트수단. 20: 제 2 게이트수단.
30: 제 3 게이트수단. 40: 제 1 래치.
50: 제 4 게이트수단. 60: 제 2 래치.
이하 첨부한 도면을 참조하여 본 발명을 보다 상세하게 설명하고자 한다.
도 1 은 본 발명에 따른 인터럽트 장치의 회로도를 나타낸 일 실시예로서, 도 1 을 참조하면 다음과 같다.
상기 인터럽트 레지스터 리이드신호(int-read)와 상기 인터럽트 소스(int-source)를 입력받아서 두 신호가 논리곱되어 출력신호를 출력하는 제 1 논리곱게이트(G1, 10)와, 상기 인터럽트 소스(int-source)가 인버터를 거쳐 반전된 신호와 인터럽트 레지스터 클리어 신호(int-clr)를 입력받아서 두 신호가 논리곱되어 출력신호를 출력하는 제 2 논리곱게이트(G2, 20)와, 상기 인터럽트 레지스터 리이드신호(int-read)가 인버터를 거쳐 반전된 신호와 인터럽트 소스(int-source)를 입력받아서 두 신호가 논리곱되어 출력신호를 출력하는 제 3 논리곱게이트(G3, 30)와, 클럭신호에 동기되어 상기 제 1 논리곱게이트(G1, 10)를 통해 출력되는 인터럽트 소스(int-source)를 입력받아 세팅하여 저장시키고, 상기 제 2 논리곱게이트(G2, 20)를 통해 출력되는 인터럽트 레지스터 클리어 신호(int-clr)를 입력받아 리세트되는 제 1 래치(40)와, 상기 제 1 래치(40)를 통해 출력되는 출력신호와 상기 제 2 논리곱게이트(G2, 20)를 통해 출력되는 출력신호를 입력받아 두 신호가 논리곱되어 출력신호를 출력하는 제 4 논리곱게이트(G4, 50)와, 상기 제 3 논리곱게이트(G3, 30)를 통해 출력되는 인터럽트 소스(int-source)를 입력받아 세트되고, 클럭신호에 동기하여 상기 제 4 논리곱게이트(G4, 50)를 통해 전송된 제 1 래치(40)의 출력신호를 입력받아 소정 시간 저장하였다가 출력하는 제 2 래치(60)로 구성된다.
위에서 언급된 본 발명에 따른 인터럽트 장치의 구성 동작을 설명하면 다음과 같다.
인터럽트 레지스터 클리어신호(int-clr)는 인터럽트 레지스터 리이드신호(int-read)가 끝나자마자 발생하는 신호로 인터럽트 레지스터에 저장된 기록을 독출한 후, 인터럽트 레지스터에 저장된 기록을 지우는 신호이다.
인터럽트 레지스터 리이드신호(int-read)가 로우레벨일 경우, 인터럽트 소스신호(int-source)가 하이레벨로 되면 인터럽트 레지스터 리이드신호(int-read)는 인버터를 거쳐 하이레벨로 바뀌므로 제 3 논리곱게이트(G3, 30)를 통해 출력신호는 하이레벨이 되어 제 2 래치인 D타입 플립플롭(60)을 세팅시켜 인터럽트 소스(int-source)를 저장한 다음 출력한다.
그리고 인터럽트 소스(int-source)가 발생한 것을 알고, 인터럽트 레지스터를 독출할 경우, 인터럽트 레지스터 리이드신호(int-read)가 하이레벨로 바뀌므로 상기 제 1 논리곱게이트(G1, 10)를 통해 출력신호가 하이레벨이 된다. 그리고 상기 제 1 논리곱게이트(G1, 10)의 출력신호가 하이레벨이므로 상기 제 1 래치(40)인 RS 플립플롭의 세트 단자로 입력되어 상기 RS플립플롭(40)을 세팅시켜 인터럽트 소스(int-source)가 저장된다. 그 다음 상기 RS 플립플롭(40)에 저장된 인터럽트 소스(int-source)를 상기 제 4 논리곱게이트(G4, 50)으로 전송시킨다.
그리고, 레지스터에 저장된 인터럽트 소스(int-source)를 지우기 위해 인터럽트 레지스터 클리어신호(int-clr)가 하이레벨로 되면, 상기 인터럽트 소스(int-source)는 로우레벨이므로 인버터를 통해 하이레벨로 바뀌어 상기 제 2 논리곱게이트(G2, 20)를 통해 출력신호가 하이레벨이 된다.
상기 제 2 논리곱게이트(G2, 20)를 통해 출력되는 인터럽트 레지스터 클리어신호(int-clr)는 상기 RS 플립플롭(40)의 리세트 단자로 입력되어 상기 RS 플립플롭(40)을 리세팅하여 초기화시킨다.
그리고, 상기 제 2 논리곱게이트(G2, 20)를 통해 출력되는 출력신호와 상기 제 1 래치(40)에 저장된 인터럽트 소스(int-source)가 전송된 신호를 상기 제 4 논리곱게이트(G4, 50)로 입력한다. 상기 제 4 논리곱게이트(G4, 50)를 통해 출력신호는 하이레벨이 되므로 상기 전송된 인터럽트 소스(int-source)가 상기 D타입 플립플롭 (60)으로 입력되어 저장된 다음 출력된다.
본 발명에서는 인터럽트 레지스터 리이드신호(int-read)가 동작 명령을 수행하지 않을 때, 또 다른 인터럽트 소스(int-source)가 발생되면 D타입 플립플롭(60)에 저장시킨다. 그리고, 인터럽트 레지스터 리이드신호(int-read)가 동작 명령을 수행하면 그 동안에 발생되는 인터럽트 소스(int-source)는 상기 RS 플립플롭(40)으로 저장하였다가 인터럽트 레지스터 클리어신호(int-clr)가 발생하면 D타입 플립플롭(60)으로 전송시킨 다음 저장한다.
도 2 는 인터럽트 레지스터를 지우기 위한 인터럽트 레지스터 클리어신호를 발생하는 장치의 회로도로서, 클럭신호에 동기하여 인터럽트 레지스터를 독출하는 인터럽트 레지스터 리이드신호(int-read)를 입력받아 소정 시간 지연된 후 출력신호가 출력되는 D타입 플립플롭(70)과, 상기 D타입 플립플롭(70)을 통해 출력되는 출력신호와 인터럽트 레지스터 리이드신호(int-read)가 인버터를 거쳐 반전된 신호를 입력받아 두 신호가 논리곱되어 출력신호를 출력하는 게이트수단(80)으로 구성된다.
도 3 은 도 2 의 타이밍도로서, 인터럽트 레지스터를 지우기 위한 인터럽트 레지스터 클리어신호가 발생되는 장치의 동작 설명은 도 3 을 참조하면 다음과 같다.
클럭신호의 상승 에지에 동기하여 인터럽트 레지스터 리이드신호(int-read)가 하이레벨로 되면 D타입 플립플롭(70)을 통해 출력신호는 하이레벨이 된다. 상기 인터럽트 레지스터 리이드신호(int-read)가 인버터를 통해 반전된 신호와 상기 D타입 플립플롭(70)을 통해 출력되는 출력신호를 입력받아 두 신호가 논리곱되는 논리곱게이트(80)를 통해 출력신호는 로우레벨이 된다.
또한, 클럭신호의 상승 에지에 동기하여 인터럽트 레지스터 리이드신호(int-read)가 하이레벨에서 로우레벨로 바뀌면 D타입 플립플롭(70)을 통해 출력신호가 로우레벨로 된다. 그리고, 상기 인터럽트 레지스터 리이드신호(int-read)가 인버터를 통해 반전된 신호와 상기 D타입 플립플롭(70)을 통해 출력되는 출력신호를 입력받아 두 신호가 논리곱되는 논리곱게이트(80)를 통해 출력신호는 하이레벨이 된다.
그러므로 출력신호인 인터럽트 레지스터 클리어신호(int-clr)는 인터럽트 레지스터 리이드(int-read)신호가 종결된 후에 바로 발생된다.
본 발명에서는 종래와 다르게 각 인터럽트 소스마다 두 개의 레지스터를 두어 인터럽트 레지스터를 독출하지 않을 때 발생한 인터럽트 소스를 상기 D타입 플립플롭(60)으로 저장시킨다. 또한, 인터럽트 레지스터를 독출하는 순간에 발생된 인터럽트 소스는 상기 RS 플립플롭(40)으로 저장하였다가 상기 D타입 플립플롭(60)으로 전송시켜 저장시킨다.
그러므로, 상기 RS 플립플롭(40)에 저장된 인터럽트 소스를 지우기 위한 인터럽트 레지스터 클리어신호(int-clr)가 발생되어도 상기 RS 플립플롭(40)에 저장된 인터럽트 소스(int-source)를 상기 D타입 플립플롭(60)으로 전송시켜 저장하기 때문에 인터럽트 소스(int-source)가 안전해진다.
본 발명은 다수의 인터럽트 소스를 가지는 디지탈 시스템에서 인터럽트 소스들이 동시에 발생되어 CPU에 인가되더라도 각각의 인터럽트 소스마다 2개의 레지스터를 두어 인터럽트 서비스가 안전하게 되므로 데이터의 손실을 방지할 수 있는 효과가 있다.
Claims (1)
- 인터럽트 레지스터 리이드신호에 응답하여 인터럽트 소스가 출력되도록 하는 제 1 게이트수단과, 상기 인터럽트 소스를 반전시킨 신호에 응답하여 인터럽트 레지스터 클리어신호가 출력 되도록 하는 제 2 게이트수단과, 상기 인터럽트 레지스터 리이드신호를 반전시키는 신호에 응답하여 상기 인터럽트 소스를 출력시키는 제 3 게이트수단과, 클럭신호에 동기하여 상기 제 1 게이트수단을 통해 출력되는 인터럽트 소스를 세트시켜 저장시키고, 상기 제 2 게이트수단을 통해 출력되는 출력신호에 응답하여 리세트 되는 제 1 래치와, 상기 제 1 래치에서 출력된 출력신호와 상기 제 2 게이트수단을 통해 출력되는 출력신호에 응답하여 제 1 래치의 출력신호를 출력하는 제 4 게이트수단과, 상기 제 3 게이트수단을 통해 출력되는 출력신호에 응답하여 세트되고, 클럭신호에 동기하여 상기 제 4 게이트수단을 통해 출력되는 출력신호를 입력받아 소정 시간 저장시킨 후 출력하는 제 2 래치로 구비되는 것을 특징으로 하는 인터럽트 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019960032767A KR19980014008A (ko) | 1996-08-06 | 1996-08-06 | 인터럽트 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019960032767A KR19980014008A (ko) | 1996-08-06 | 1996-08-06 | 인터럽트 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR19980014008A true KR19980014008A (ko) | 1998-05-15 |
Family
ID=66250255
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019960032767A KR19980014008A (ko) | 1996-08-06 | 1996-08-06 | 인터럽트 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR19980014008A (ko) |
-
1996
- 1996-08-06 KR KR1019960032767A patent/KR19980014008A/ko not_active Application Discontinuation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4649512A (en) | Interface circuit having a shift register inserted between a data transmission unit and a data reception unit | |
KR850003610A (ko) | 반도체 메모리 장치 | |
US5548794A (en) | Data processor and method for providing show cycles on a fast multiplexed bus | |
KR940007649A (ko) | 디지탈 신호 처리장치 | |
EP0493138B1 (en) | Memory circuit | |
KR19980014008A (ko) | 인터럽트 장치 | |
EP0462622B1 (en) | Microprocessor capable of ensuring flexible recovery time for I/O device | |
KR19980027689A (ko) | 화상형성장치의 호스트 인터페이스회로 | |
US6459751B1 (en) | Multi-shifting shift register | |
KR100214327B1 (ko) | 인터럽트 발생회로와 방법 | |
JP2687324B2 (ja) | 受信バツフア制御方式 | |
KR100197411B1 (ko) | 전전자 교환기의 시프트를 이용한 인식 신호 발생회로 | |
SU1481854A1 (ru) | Динамическое запоминающее устройство | |
KR100197410B1 (ko) | 전전자 교환기의 카운터를 이용한 인식 신호 발생 회로 | |
JP3366235B2 (ja) | データ読み出し制御装置 | |
KR200337603Y1 (ko) | 칼럼어드레스스트로브제어회로 | |
JP3470432B2 (ja) | 信号処理装置 | |
JPH02310888A (ja) | スタティックランダムアクセスメモリ | |
JPS62209640A (ja) | 記憶装置 | |
SU1709322A1 (ru) | Устройство дл сопр жени с микроЭВМ | |
SU1550518A1 (ru) | Устройство дл обслуживани запросов | |
KR940001028Y1 (ko) | 캐쉬 메모리 클럭 제어회로 | |
RU2033636C1 (ru) | Устройство для сопряжения источника информации с процессором | |
JPH01112449A (ja) | 速度変換メモリ装置 | |
SU1550525A1 (ru) | Устройство дл сопр жени канала св зи с ЭВМ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Withdrawal due to no request for examination |