KR20030028601A - 변경 가능한 인터럽트 우선순위를 갖는 인터럽트 처리기 - Google Patents
변경 가능한 인터럽트 우선순위를 갖는 인터럽트 처리기 Download PDFInfo
- Publication number
- KR20030028601A KR20030028601A KR1020010058300A KR20010058300A KR20030028601A KR 20030028601 A KR20030028601 A KR 20030028601A KR 1020010058300 A KR1020010058300 A KR 1020010058300A KR 20010058300 A KR20010058300 A KR 20010058300A KR 20030028601 A KR20030028601 A KR 20030028601A
- Authority
- KR
- South Korea
- Prior art keywords
- interrupt
- priority
- register
- bit
- signal
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
- G06F9/4818—Priority circuits therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/30101—Special purpose registers
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Abstract
본 발명은 사용자의 요구에 따라 인터럽트 우선권을 자유롭게 설정하는 것이 가능한 인터럽트 핸들러의 설계 기술에 관한 것이다. 이러한 본 발명은 소정 비트수의 인터럽트 소스신호(IS)와 인터럽트 인에이블 레지스터(21)에서 출력되는 비트의 신호를 앤드조합하는 앤드게이트(22)와; 상기 앤드게이트(22)의 출력신호에 대응하여 해당 비트를 셋팅하는 인터럽트 펜딩 레지스터(24)와; 사용자의 요구에 따라 인터럽트 우선순위를 설정하기 위한 인터럽트우선권 설정용 레지스터(26)와; 인터럽트 마스크 레지스터(23) 및 상기 인터럽트 펜딩 레지스터(24)의 비트값에 따라 요청신호(IRQ)를 발생하되, 상기 인터럽트우선권 설정용 레지스터(26)에 셋팅값을 근거로 우선순위를 결정하는 인터럽트요청신호 발생기(27)에 의해 달성된다.
Description
본 발명은 MFP(MFP: Multi-Function Peripheral)를 이용하는 회로에서 인터럽트 핸들러의 설계 기술에 관한 것으로, 특히 사용자의 요구에 따라 인터럽트 우선권을 자유롭게 설정할 수 있도록 한 변경 가능한 인터럽트 우선순위를 갖는 인터럽트 처리기에 관한 것이다.
통상적으로, 인터럽트신호가 발생되면 그 직전에 수행하던 프로그램의 상태를 저장한 후 미리 정해진 인터럽트 처리 루틴으로 분기한다. 이때, 인터럽트신호는 여러 종류가 있을 수 있으므로 인터럽트 처리 작업을 다르게 프로그램하거나, 인터럽트 처리작업 시 인터럽트 종류를 판별하여 각기 다른 일을 하도록 한다. 인터럽트 처리가 끝난 후에는 인터럽트신호가 발생되기 이전에 수행하던 작업 루틴으로 복귀하여 그 작업을 계속하게 된다.
도 1은 종래 기술에 의한 인터럽트 처리기의 블록도로서 이에 도시한 바와 같이, N 비트의 인터럽트 소스신호(IS)와 인터럽트 인에이블 레지스터(IER: Interrupt Enable Register)(11)에서 출력되는 N비트의 신호를 앤드조합하는 앤드게이트(12)와; 상기 앤드게이트(12)의 출력신호에 대응하여 해당 비트를 셋팅하는 인터럽트 펜딩 레지스터(IPR: Interrupt Pending Register)(14)와; 인터럽트 마스크 레지스터(IMR: Interrupt Mask Register)(13) 및 상기 인터럽트 펜딩 레지스터(14)의 비트값에 따라 요청신호(IRQ)를 발생하는 인터럽트요청신호발생기(16)로 구성된 것으로, 이의 작용을 설명하면 다음과 같다.
N 비트(예: 16bit)의 인터럽트 소스신호(IS)는 앤드게이트(12)에서 인터럽트 인에이블 레지스터(11)의 출력신호와 앤드조합되어 인터럽트 펜딩 레지스터(14)에 공급된다. 이에 따라 상기 인터럽트 펜딩 레지스터(14)는 상기 앤드게이트(12)에서 출력되는 비트값에 따라 해당 비트를 셋팅한다.
또한, 인터럽트요청신호 발생기(16)는 인터럽트 마스크 레지스터(13)의 비트값과 상기 인터럽트 펜딩 레지스터(14)의 비트값을 참조하여 인터럽트 요청신호(IRQ)를 발생하게 되는데, 그 인터럽트 펜딩 레지스터(14)에서 두 비트 이상이 세트되어 있는 경우에는 MFP 자체에서 정의되어 있는 우선순위대로 인터럽트 요청신호(IRQ)를 발생하게 된다.
참고로, 인터럽트 서비스 레지스터(ISR: Interrupt Service Register)(15)는 서비스 제공 여부를 결정하기 위해 사용된 레지스터이다.
이와 같이 종래 기술에 의한 MFP 인터럽트 처리기에 있어서는 MFP 자체에서 정의되어 있는 우선순위대로 인터럽트 요청신호를 발생하게 되어 있어 회로 설계시 인터럽트 우선순위에 상응되게 인터럽트 소스들을 핀에 배치해야 한다. 따라서, 사용자가 인터럽트 우선순위를 변경하고자 하는 경우에는 그에 상응되게 핀 배치를 수정해야 하는 불편함이 있고, 경우에 따라 내부적인 이유로 인하여 사용자가 원하는 인터럽트 우선순위대로 인터럽트 소스들을 배치할 수 없는 결함이 있었다.
따라서, 본 발명의 목적은 사용자의 요구에 따라 인터럽트 우선권을 자유롭게 설정하는 것이 변경 가능한 인터럽트 우선순위를 갖는 인터럽트 처리기를 제공함에 있다.
도 1은 종래 기술에 의한 인터럽트 처리기의 블록도.
도 2는 본 발명에 의한 인터럽트 처리기의 블록도.
***도면의 주요 부분에 대한 부호의 설명***
21 : 인터럽트 인에이블 레지스터22 : 앤드게이트
23 : 인터럽트 마스크 레지스터24 : 인터럽트 펜딩 레지스터
25 : 인터럽트 서비스 레지스터26 : 인터럽트우선권설정용 레지스터
27 : 인터럽트요청신호 발생기
도 2는 본 발명에 의한 변경 가능한 인터럽트 우선순위를 갖는 인터럽트 처리기의 일실시 예시 블록도로서 이에 도시한 바와 같이, N 비트의 인터럽트 소스신호(IS)와 인터럽트 인에이블 레지스터(IER)(21)에서 출력되는 N비트의 신호를 앤드조합하는 앤드게이트(22)와; 상기 앤드게이트(22)의 출력신호에 대응하여 해당 비트를 셋팅하는 인터럽트 펜딩 레지스터(IPR)(24)와; 사용자의 요구에 따라 인터럽트 우선순위를 설정하기 위한 인터럽트우선권 설정용 레지스터(IPYR)(26)와; 인터럽트 마스크 레지스터(IMR)(23) 및 상기 인터럽트 펜딩 레지스터(24)의 비트값에 따라 요청신호(IRQ)를 발생하되, 상기 인터럽트우선권 설정용 레지스터(26)에 셋팅값을 근거로 우선순위를 결정하는 인터럽트요청신호 발생기(27)로 구성한 것으로, 이와 같이 구성한 본 발명의 작용을 상세히 설명하면 다음과 같다.
사용자가 인터럽트 우선순위를 변경하고자 하는 경우, 인터럽트우선권 설정용 레지스터(26) 상에서 인터럽트 우선순위를 새롭게 셋팅한다.
N 비트(예: 16bit)의 인터럽트 소스신호(IS)는 앤드게이트(22)에서 인터럽트 인에이블 레지스터(21)의 출력신호와 앤드조합되어 인터럽트 펜딩 레지스터(24)에 공급된다. 이에 따라 상기 인터럽트 펜딩 레지스터(24)는 상기 앤드게이트(22)에서 출력되는 비트값에 따라 해당 비트를 셋팅한다.
또한, 인터럽트요청신호 발생기(27)는 인터럽트 마스크 레지스터(23)의 비트값과 상기 인터럽트 펜딩 레지스터(24)의 비트값을 참조하여 인터럽트 요청신호(IRQ)를 발생하게 된다.
하지만, 상기 인터럽트 펜딩 레지스터(24)에서 두 비트 이상이 세트되어 있는 경우, 상기 인터럽트요청신호 발생기(27)는 상기 인터럽트우선권 설정용 레지스터(26)의 셋팅값을 비교하여 우선순위가 높은 인터럽트신호 순서로 서비스하게 된다.
결국, 상기 인터럽트요청신호 발생기(27)는 둘 이상의 인터럽트 소스로부터 인터럽트신호가 발생할 경우, 각각의 IPYR값을 고려하여 우선순위가 높은 인터럽트신호가 먼저 인터럽트를 서비스하게 된다.
이상에서 상세히 설명한 바와 같이 본 발명은 사용자로 하여금 인터럽트우선권 설정용 레지스터를 이용하여 인터럽트 우선순위를 설정할 수 있도록 하고, 인터럽트 요청신호를 발생할 때, 그 인터럽트우선권 설정용 레지스터 상에 설정된 셋팅값을 근거로 우선순위가 높은 인터럽트신호 순서로 서비스하게 함으로써, 사용상의 편리함을 제공할 수 있는 효과가 있다.
Claims (3)
- 둘 이상의 인터럽트 소스로부터 인터럽트신호가 발생할 때, 인터럽트요청신호 발생기가 인터럽트우선권 설정용 레지스터에 셋팅되어 있는 우선순위에 따라 인터럽트신호를 발생하도록 구성한 것을 특징으로 하는 변경 가능한 인터럽트 우선순위를 갖는 인터럽트 처리기.
- 제1항에 있어서, 인터럽트우선권 설정용 레지스터는 사용자에 의해 인터럽트 우선순위가 셋팅되는 것임을 특징으로 하는 변경 가능한 인터럽트 우선순위를 갖는 인터럽트 처리기.
- 제1항에 있어서, 인터럽트요청신호 발생기는 상기 인터럽트우선권 설정용 레지스터에 셋팅되어 있는 우선순위를 비교하기 위해 비교기를 구비한 것을 특징으로 하는 변경 가능한 인터럽트 우선순위를 갖는 인터럽트 처리기.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020010058300A KR20030028601A (ko) | 2001-09-20 | 2001-09-20 | 변경 가능한 인터럽트 우선순위를 갖는 인터럽트 처리기 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020010058300A KR20030028601A (ko) | 2001-09-20 | 2001-09-20 | 변경 가능한 인터럽트 우선순위를 갖는 인터럽트 처리기 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20030028601A true KR20030028601A (ko) | 2003-04-10 |
Family
ID=29562049
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020010058300A KR20030028601A (ko) | 2001-09-20 | 2001-09-20 | 변경 가능한 인터럽트 우선순위를 갖는 인터럽트 처리기 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20030028601A (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7484024B2 (en) | 2004-02-27 | 2009-01-27 | Samsung Electronics Co., Ltd | Apparatus and method for interrupt source signal allocation |
US8473662B2 (en) | 2009-12-18 | 2013-06-25 | Electronics And Telecommunications Research Institute | Interrupt-handling-mode determining method of embedded operating system kernel |
-
2001
- 2001-09-20 KR KR1020010058300A patent/KR20030028601A/ko not_active Application Discontinuation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7484024B2 (en) | 2004-02-27 | 2009-01-27 | Samsung Electronics Co., Ltd | Apparatus and method for interrupt source signal allocation |
US8473662B2 (en) | 2009-12-18 | 2013-06-25 | Electronics And Telecommunications Research Institute | Interrupt-handling-mode determining method of embedded operating system kernel |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6499078B1 (en) | Interrupt handler with prioritized interrupt vector generator | |
JPH04336308A (ja) | マイクロコンピュータ | |
US20050172140A1 (en) | Encryption device, encryption system including the encryption device, decryption device and a semiconductor system including the decryption device | |
KR20030028601A (ko) | 변경 가능한 인터럽트 우선순위를 갖는 인터럽트 처리기 | |
US20150145580A1 (en) | Apparatus for controlling semiconductor chip characteristics | |
JPH08139575A (ja) | パルス出力回路 | |
KR100313945B1 (ko) | 다단 인터럽트 제어 장치 | |
US7058842B2 (en) | Microcontroller with multiple function blocks and clock signal control | |
KR100304976B1 (ko) | 인터럽트 발생 회로 | |
KR20030028602A (ko) | 변경 가능한 인터럽트 레벨을 갖는 인터럽트 처리기 | |
US7533304B2 (en) | Method and system of signal noise reduction | |
JPH04209020A (ja) | マイクロコンピュータ | |
KR100312709B1 (ko) | 라인드로잉방법및장치 | |
ATA3422000A (de) | Rechnerknotenarchitektur mit dediziertem middleware computer | |
JP2007026091A (ja) | 割込み制御回路およびその制御方法 | |
JPS58115513A (ja) | 周波数可変型マイクロコンピユ−タ | |
JPH02207312A (ja) | クロック発生回路 | |
JPH05291957A (ja) | 比較基準切換スイッチ付ワンチップ・コンパレータ | |
JPH056443A (ja) | コンピユータシステム | |
KR20010048967A (ko) | 인터럽트 팬딩 레지스터를 구비하는 디지털 신호처리기 | |
KR970076175A (ko) | Gpio보드의 내부클럭 분주제어방법 | |
RU2143731C1 (ru) | Гистерезисный преобразователь | |
JPH064180A (ja) | マイコン | |
KR20000026480A (ko) | 집적회로의 테스트 회로 | |
JPH06348354A (ja) | 集積回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
N231 | Notification of change of applicant | ||
WITN | Withdrawal due to no request for examination |