KR20000020265A - Interrupt controller - Google Patents

Interrupt controller Download PDF

Info

Publication number
KR20000020265A
KR20000020265A KR1019980038794A KR19980038794A KR20000020265A KR 20000020265 A KR20000020265 A KR 20000020265A KR 1019980038794 A KR1019980038794 A KR 1019980038794A KR 19980038794 A KR19980038794 A KR 19980038794A KR 20000020265 A KR20000020265 A KR 20000020265A
Authority
KR
South Korea
Prior art keywords
signal
interrupt
input
microprocessor
outputting
Prior art date
Application number
KR1019980038794A
Other languages
Korean (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 KR1019980038794A priority Critical patent/KR20000020265A/en
Publication of KR20000020265A publication Critical patent/KR20000020265A/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • G06F9/4825Interrupt from clock, e.g. time of day
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/1733Controllable logic circuits
    • H03K19/1737Controllable logic circuits using multiplexers
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/20Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/027Generators characterised by the type of circuit or by the means used for producing pulses by the use of logic circuits, with internal or external positive feedback
    • H03K3/037Bistable circuits

Abstract

PURPOSE: An interrupt controller is provided to perform a stable operation by composing a circuit suitable for a shape of an interrupt signal inputted from an interrupt source. CONSTITUTION: An interrupt signal converting unit(210) receives an interrupt signal from an interrupt source and converts the received interrupt signal into a signal suitable for an interrupt controller to output. A first D-flip flop(211) is synchronized to a clock signal(CLK) and outputs an interrupt signal inputted from the interrupt source. A second D-flip flop(212) is synchronized to the clock signal(CLK) and outputs a signal inputted from the first D-flip flop(211). An AND gate(214) receives the output signal of first D-flip flop(211) and an inversed output signal of the second D-flip flop(212), and performs an AND operation. A multiplexer(220) responses to the interrupt signal inputted from the interrupt signal converting unit(210) and selectively outputs one between signals inputted from a first input terminal and a second input terminal.

Description

인터럽트 컨트롤러(INTERRUPT CONTROLLER)INTERRUPT CONTROLLER

본 발명은 인터럽트 컨트롤러에 관한 것으로, 좀 더 구체적으로는 외부 환경에 의한 오동작을 줄일 수 있는 인터럽트 컨트롤러에 관한 것이다.The present invention relates to an interrupt controller, and more particularly, to an interrupt controller capable of reducing a malfunction caused by an external environment.

도 1은 마이크로 프로세서와 주변 장치들 그리고 인터럽트 컨트롤러의 구성을 블록적으로 보여주고 있다.1 shows a block diagram of a microprocessor, peripheral devices, and an interrupt controller.

도 1을 참조하면, 인터럽트 컨트롤러(interrupt controller)(30)는 마이크로 프로세서(microprocessor)(40)와 주변 장치들 예컨대 타이머(timer)(10), DMA(direct memory access) 컨트롤러(20) 사이에 구성된다.Referring to FIG. 1, an interrupt controller 30 is configured between a microprocessor 40 and peripheral devices such as a timer 10 and a direct memory access controller DMA 20. do.

상기 마이크로 프로세서(40)는 영국의 마이크로 프로세서 제조업체인 어드밴스드 리스크 머신즈(Advanced RISC Machines) 사의 ARM7 등으로 구성된다.The microprocessor 40 is composed of ARM7 of Advanced RISC Machines, a microprocessor manufacturer in the UK.

상기 인터럽트 컨트롤러(30)는 타이머(10)로부터 입력되는 인터럽트 신호들(TIMER0_INT, TIMER1_INT, TIMER2_INT), DMA 컨트롤러(20)로부터 입력되는 인터럽트 신호(DMA_INT) 그리고 상기 마이크로 프로세서(40)로부터 입력되는 인터럽트 신호들(MAS[1:0], SD[31:0], SA[3:0], nRW, INTC_NCS)에 응답하여 인터럽트 요구 신호(nFIQ, nIRQ)를 상기 마이크로 프로세서(40)로 제공한다.The interrupt controller 30 includes interrupt signals TIMER0_INT, TIMER1_INT, and TIMER2_INT input from the timer 10, an interrupt signal DMA_INT input from the DMA controller 20, and an interrupt signal input from the microprocessor 40. The interrupt request signals nFIQ and nIRQ to the microprocessor 40 in response to MAS [1: 0], SD [31: 0], SA [3: 0], nRW, and INTC_NCS.

상기 마이크로 프로세서(40)에 인터럽트를 요청하는 장치들 즉, 타이머(10), DMA 컨트롤러(20) 그리고 상기 마이크로 프로세서(40)의 각 장치들은 인터럽트 소스(interrupt source)들이 된다.Devices requesting an interrupt to the microprocessor 40, that is, the timer 10, the DMA controller 20, and the devices of the microprocessor 40 are interrupt sources.

상기 마이크로 프로세서(40)는 인터럽트 요구 신호(nIRQ)가 입력되면 인터럽트 서비스 루틴(interrupt service routine)으로 분기하여 인터럽트를 수행하고, 인터럽트 수행 직전의 어드레스를 리턴한다.When the interrupt request signal nIRQ is input, the microprocessor 40 branches to an interrupt service routine to perform an interrupt, and returns an address immediately before performing the interrupt.

인터럽트 컨트롤러(30)가 상기 마이크로 프로세서(40)로 제공하는 인터럽트 요구 신호 nFIQ(Fast Interrupt Request_는 nIRQ(Interrupt Request)보다 인터럽트 우선 순위가 더 높다.The interrupt request signal nFIQ (Fast Interrupt Request_) provided by the interrupt controller 30 to the microprocessor 40 has a higher interrupt priority than nIRQ (Interrupt Request).

도 2는 종래의 인터럽트 컨트롤러의 회로 구성을 보여주고 있다.2 shows a circuit configuration of a conventional interrupt controller.

도 2에 도시된 바와 같이, 종래의 인터럽트 컨트롤러(30)는 디-플립플롭(D flip-flop)(31)과 리셋 신호 발생부(32)를 포함한다. 상기 디-플립플롭(31)의 입력 단자에는 전원 전압(VDD)이 연결되고, 클럭 신호 입력단에는 인터럽트 소스가 연결되어 있다. 상기 인터럽트 소스로부터 인터럽트 요구 신호가 입력되면, 디-플립플롭(31)은 전원 전압(VDD)을 입력받아 인터럽트 요구 신호(nIRQ)를 출력한다.As shown in FIG. 2, the conventional interrupt controller 30 includes a D flip-flop 31 and a reset signal generator 32. A power supply voltage VDD is connected to an input terminal of the de-flip-flop 31, and an interrupt source is connected to a clock signal input terminal. When the interrupt request signal is input from the interrupt source, the de-flip-flop 31 receives the power supply voltage VDD and outputs the interrupt request signal nIRQ.

상기 리셋 신호 발생부(32)는 낸드 게이트(NAND gate)(33), 디-플립플롭(34) 그리고 앤드 게이트(AND gate)를 포함한다. 상기 리셋 신호 발생부(32)는 상기 리셋 신호( )가 입력되거나, 인터럽트 처리 종료 신호(D) 또는 기입 인에이블 신호(WR_EN)가 입력될 때 리셋 신호를 디-플립플롭(31)으로 출력한다.The reset signal generator 32 includes a NAND gate 33, a de-flip flop 34, and an AND gate. The reset signal generator 32 may generate the reset signal ( ) Or a reset signal is output to the de-flip-flop 31 when the interrupt processing end signal D or the write enable signal WR_EN is input.

상술한 바와 같이, 종래의 인터럽트 컨트롤러(30)는 인터럽트 소스로부터 입력되는 인터럽트 신호를 디-플립플롭의 게이트 클럭(gated clock)으로 사용하였다. 따라서, 외부의 충격과 같은 외부 요인으로 인한 글리치(glitch)가 발생하여 비정상적인 인터럽트 요구 신호가 발생할 수 있다.As described above, the conventional interrupt controller 30 used the interrupt signal input from the interrupt source as the gate clock of the de-flip flop. Therefore, glitches due to external factors such as external shocks may occur, resulting in abnormal interrupt request signals.

인터럽트 소스로부터 입력되는 인터럽트 신호에는 두 가지 형태가 있다. 로우 레벨에서 하이 레벨로 천이되었다가 다시 로우 레벨로 천이되는(L→H→L) 토글(toggle)형과 로우 레벨에서 하이 레벨로 천이되어 그 상태를 계속유지 하는 래치(latch)형이 있다. 토글형 신호는 게이트 클럭으로서 디-플립플롭(31)을 동작시키는데 어려움이 없다. 그러나, 래치형 신호는 인터럽트 서비스 루틴이 종료되어 디-플립플롭(31)이 리셋되어도 계속 하이 레벨을 유지하므로 디-플립플롭(31)으로부터 인터럽트 요구 신호가 계속 출력된다. 따라서, 래치형 신호가 인터럽트 소스로부터 입력될 때 마이크로 프로세서(40)는 인터럽트 서비스 루틴을 계속 반복하게 되어 무한 루프(loop)에 빠지게 되어 다음 명령어를 수행할 수 없는 문제점이 있었다.There are two types of interrupt signals input from the interrupt source. There is a toggle type that transitions from a low level to a high level and then back to a low level (L → H → L) and a latch type that transitions from a low level to a high level to maintain its state. The toggle signal has no difficulty in operating the de-flip-flop 31 as the gate clock. However, since the latch type signal remains high even when the interrupt service routine is terminated and the de-flip flop 31 is reset, the interrupt request signal is continuously output from the de-flip flop 31. Therefore, when the latch type signal is input from the interrupt source, the microprocessor 40 continuously repeats the interrupt service routine, and enters an infinite loop, thereby preventing the next instruction from being executed.

따라서, 본 발명의 목적은 상술한 제반 문제점을 해결하기 위해 제안된 것으로, 외부 환경에 의한 오동작을 줄일 수 있는 인터럽트 컨트롤러를 제공하는데 있다.Accordingly, an object of the present invention is to solve the above-mentioned problems, and to provide an interrupt controller capable of reducing malfunctions caused by external environments.

도 1은 마이크로 프로세서와 주변 장치들 그리고 인터럽트 컨트롤러의 구성을 보여주는 블록도;1 is a block diagram showing the configuration of a microprocessor and peripherals and an interrupt controller;

도 2는 종래의 인터럽트 컨트롤러의 회로 구성을 보여주는 블록도;2 is a block diagram showing a circuit configuration of a conventional interrupt controller;

도 3은 본 발명의 바람직한 일 실시예에 따른 인터럽트 컨트롤러의 내부 회로 구성을 보여주는 블록도;3 is a block diagram showing an internal circuit configuration of an interrupt controller according to a preferred embodiment of the present invention;

도 4는 도 3에 도시된 인터럽트 컨트롤러의 입/출력 신호를 보여주는 파형도;4 is a waveform diagram showing input / output signals of the interrupt controller shown in FIG. 3;

도 5는 본 발명의 바람직한 다른 실시예에 따른 인터럽트 컨트롤러의 내부 회로 구성을 보여주는 블록도; 그리고5 is a block diagram showing an internal circuit configuration of an interrupt controller according to another preferred embodiment of the present invention; And

도 6은 도 5에 도시된 인터럽트 컨트롤러의 입/출력 신호를 보여주는 파형도이다.FIG. 6 is a waveform diagram illustrating input / output signals of the interrupt controller shown in FIG. 5.

*도면의 주요 부분에 대한 부호의 설명** Description of the symbols for the main parts of the drawings *

10 : 타이머 20 : DMA 컨트롤러10: timer 20: DMA controller

30 : 인터럽트 컨트롤러 40 : 마이크로 프로세서30: interrupt controller 40: microprocessor

31, 34, 120, 132, 211, 212, 214, 230, 242 : 디-플립플롭31, 34, 120, 132, 211, 212, 214, 230, 242: De-flip flop

32, 130, 240 : 리셋 신호 발생부32, 130, 240: reset signal generator

33, 131, 241 : 낸드 게이트33, 131, 241: NAND Gate

35, 133, 214, 243 : 앤드 게이트35, 133, 214, 243: And Gate

110, 220 : 멀티플렉서 210 : 인터럽트 신호 변환부110, 220: multiplexer 210: interrupt signal converter

상술한 바와 같은 본 발명의 목적을 달성하기 위한 본 발명의 특징에 의하면, 다수 개의 인터럽트 소스들로부터 인터럽트 신호를 받아들여, 인터럽트를 처리하는 마이크로 프로세서로 인터럽트 요구 신호를 제공하는 인터럽트 컨트롤러는: 제 1 입력단과 외부로부터 전원 전원을 인가받는 제 2 입력단을 포함하고, 상기 인터럽트 소스들로부터 입력되는 인터럽트 신호에 응답하여, 상기 제 1 및 제 2 입력단으로 입력되는 신호 중 하나를 선택적으로 출력하는 멀티플렉서와; 클럭 신호에 동기되어 상기 멀티플렉서로부터 입력되는 신호를 상기 마이크로 프로세서로 출력하는 제 1 래치 수단 및; 상기 마이크로 프로세서로부터 입력되는 제어 신호에 응답하여 상기 제 1 래치 수단을 리셋 시키기 위한 리셋 신호를 발생하는 수단을 포함하되, 상기 제 1 래치 수단으로부터 출력되는 신호는 상기 멀티플렉서의 제 1 입력단으로 피드백된다.According to a feature of the present invention for achieving the object of the present invention as described above, an interrupt controller that receives an interrupt signal from a plurality of interrupt sources and provides an interrupt request signal to a microprocessor that processes the interrupt comprises: a first A multiplexer including an input terminal and a second input terminal configured to receive power from an external source, and selectively outputting one of the signals input to the first and second input terminals in response to an interrupt signal input from the interrupt sources; First latch means for outputting a signal input from the multiplexer to the microprocessor in synchronization with a clock signal; Means for generating a reset signal for resetting the first latch means in response to a control signal input from the microprocessor, wherein the signal output from the first latch means is fed back to a first input of the multiplexer.

바람직한 실시예에 있어서, 상기 리셋 신호 발생 수단은, 상기 마이크로 프로세서로부터 인터럽트 처리 종료 신호와 기입 인에이블 신호를 받아들여 낸드 연산하는 낸드 게이트와; 상기 클럭 신호에 동기되어 상기 낸드 게이트로부터 입력되는 신호를 출력하는 제 2 래치 수단과; 상기 제 2 래치 수단으로부터 입력되는 신호와 상기 마이크로 프로세서로부터 입력되는 리셋 신호를 앤드 연산하고, 그 결과를 상기 제 1 래치 수단의 리셋 신호로 출력하는 앤드 게이트를 포함한다.In a preferred embodiment, the reset signal generating means comprises: a NAND gate for receiving an interrupt processing end signal and a write enable signal from the microprocessor, and performing a NAND operation; Second latch means for outputting a signal input from the NAND gate in synchronization with the clock signal; And an AND gate for performing an AND operation on a signal input from the second latch means and a reset signal input from the microprocessor, and outputting the result as a reset signal of the first latch means.

본 발명의 목적을 달성하기 위한 본 발명의 다른 특징에 의하면, 다수 개의 인터럽트 소스들로부터 제 1 인터럽트 신호를 받아들여 인터럽트를 처리하는 마이크로 프로세서로 인터럽트 요구 신호를 제공하는 인터럽트 컨트롤러는: 상기 인터럽트 소스들로부터 제 1 인터럽트 신호를 받아들여 상기 인터럽트 컨트롤러에 적합한 제 2 인터럽트 신호로 변환하여 출력하는 인터럽트 신호 변환 수단과; 제 1 입력단과 외부로부터 전원 전원을 인가받는 제 2 입력단을 포함하고, 상기 제 2 인터럽트 신호에 응답하여, 상기 제 1 및 제 2 입력단으로 입력되는 신호 중 하나를 선택적으로 출력하는 멀티플렉서와; 클럭 신호에 동기되어 상기 멀티플렉서로부터 입력되는 신호를 상기 마이크로 프로세서로 출력하는 제 1 래치 수단 및; 상기 마이크로 프로세서로부터 입력되는 제어 신호에 응답하여 상기 제 1 래치 수단을 리셋 시키기 위한 리셋 신호를 발생하는 수단을 포함하되, 상기 제 1 래치 수단으로부터 출력되는 신호는 상기 멀티플렉서의 제 1 입력단으로 피드백된다.According to another aspect of the present invention for achieving the object of the present invention, an interrupt controller for providing an interrupt request signal to a microprocessor that accepts a first interrupt signal from a plurality of interrupt sources and processes the interrupt: Interrupt signal converting means for receiving the first interrupt signal from the converter and converting the first interrupt signal into a second interrupt signal suitable for the interrupt controller; A multiplexer including a first input terminal and a second input terminal externally supplied with power, and selectively outputting one of the signals input to the first and second input terminals in response to the second interrupt signal; First latch means for outputting a signal input from the multiplexer to the microprocessor in synchronization with a clock signal; Means for generating a reset signal for resetting the first latch means in response to a control signal input from the microprocessor, wherein the signal output from the first latch means is fed back to a first input of the multiplexer.

바람직한 실시예에 있어서,상기 인터럽트 신호 변환 수단은, 상기 클럭 신호에 동기되어 상기 인터럽트 소스들로부터 입력되는 제 1 인터럽트 신호를 출력하는 제 2 래치 수단과; 상기 클럭 신호에 동기되어 상기 제 2 래치 수단으로부터 입력되는 신호를 출력하는 제 3 래치 수단과; 상기 제 2 및 제 3 래치 수단으로부터 입력되는 신호가 상보적일 때 상기 제 2 인터럽트 신호를 출력하는 논리 수단을 포함한다.In the preferred embodiment, the interrupt signal converting means comprises: second latch means for outputting a first interrupt signal input from the interrupt sources in synchronization with the clock signal; Third latch means for outputting a signal input from said second latch means in synchronization with said clock signal; Logic means for outputting said second interrupt signal when signals input from said second and third latching means are complementary.

바람직한 실시예에 있어서, 상기 리셋 신호 발생 수단은, 상기 마이크로 프로세서로부터 인터럽트 처리 종료 신호와 기입 인에이블 신호를 받아들여 낸드 연산하는 낸드 게이트와; 상기 클럭 신호에 동기되어 상기 낸드 게이트로부터 입력되는 신호를 출력하는 제 2 래치 수단과; 상기 제 2 래치 수단으로부터 입력되는 신호와 상기 마이크로 프로세서로부터 입력되는 리셋 신호를 앤드 연산하고, 그 결과를 상기 제 1 래치 수단의 리셋 신호로 출력하는 앤드 게이트를 포함한다.In a preferred embodiment, the reset signal generating means comprises: a NAND gate for receiving an interrupt processing end signal and a write enable signal from the microprocessor, and performing a NAND operation; Second latch means for outputting a signal input from the NAND gate in synchronization with the clock signal; And an AND gate for performing an AND operation on a signal input from the second latch means and a reset signal input from the microprocessor, and outputting the result as a reset signal of the first latch means.

본 발명은 인터럽트 컨트롤러에 관한 것으로, 외부 환경에 의한 오동작을 줄일 수 있는 구성을 갖는다. 이러한 인터럽트 컨트롤러는 인터럽트 소스로부터 입력되는 토글 형태 및 래치 형태의 인터럽트 신호에 적합한 구성을 갖는다.The present invention relates to an interrupt controller, and has a configuration that can reduce malfunction caused by an external environment. Such an interrupt controller has a configuration suitable for a toggle signal and a latch type interrupt signal input from an interrupt source.

(실시예 1)(Example 1)

이하 본 발명에 따른 제 1 실시예를 첨부된 도면 도 3 내지 도 4를 참조하여 상세히 설명한다.Hereinafter, a first embodiment according to the present invention will be described in detail with reference to FIGS. 3 to 4.

도 3은 본 발명의 바람직한 일 실시예에 따른 인터럽트 컨트롤러의 내부 회로 구성을 보여주고 있다.3 illustrates an internal circuit configuration of an interrupt controller according to an exemplary embodiment of the present invention.

도 3을 참조하면, 인터럽트 컨트롤러는 멀티플렉서(110), 디-플립플롭(120) 그리고 리셋 신호 발생부(130)를 포함한다. 상기 리셋 신호 발생부(130)는 낸드 게이트(131), 디-플립플롭(132) 그리고 앤드 게이트(133)를 포함한다.Referring to FIG. 3, the interrupt controller includes a multiplexer 110, a de-flip-flop 120, and a reset signal generator 130. The reset signal generator 130 includes a NAND gate 131, a de-flip flop 132, and an AND gate 133.

상기 멀티플렉서(110)는 상기 디-플립플롭(120)으로부터 피드백되는 신호를 입력받는 제 1 입력단과 전원 전압(VDD)을 인가받는 제 2 입력단을 갖는다. 상기 멀티플렉서(110)는 인터럽트 소스들로부터 입력되는 인터럽트 신호에 응답하여 상기 제 1 및 제 2 입력단으로부터 입력되는 신호 중 하나를 선택적으로 출력한다. 즉, 인터럽트 소스들로부터 인터럽트 신호가 입력될 때 상기 제 2 입력단으로부터 입력되는 전원 전압이 선택되어 디-플립플롭(120)으로 출력된다. 상기 인터럽트 소스들로부터 입력되는 인터럽트 신호는 비동기적이나 상기 디-플립플롭(120)은 클럭 신호에 동기되어 인터럽트 요구 신호(nIRQ)를 출력한다.The multiplexer 110 has a first input terminal for receiving a signal fed back from the de-flip-flop 120 and a second input terminal for receiving a power supply voltage VDD. The multiplexer 110 selectively outputs one of signals input from the first and second input terminals in response to interrupt signals input from interrupt sources. That is, when an interrupt signal is input from the interrupt sources, a power supply voltage input from the second input terminal is selected and output to the de-flip-flop 120. The interrupt signal input from the interrupt sources is asynchronous, but the de-flip-flop 120 outputs an interrupt request signal nIRQ in synchronization with a clock signal.

상기 디-플립플롭(120)으로부터 출력되는 신호는 멀티플렉서의 제 1 입력단으로 피드백(feedback)된다. 따라서, 인터럽트 소스들로부터 입력되는 인터럽트 신호가 하이에서 로우로 천이되더라도 상기 마이크로 프로세서(40)가 인터럽트 서비스 루틴을 수행하는 동안 인터럽트 요구 신호가 하이 상태를 유지하도록 한다.The signal output from the de-flip-flop 120 is fed back to the first input of the multiplexer. Thus, even if the interrupt signal input from the interrupt sources transitions from high to low, the interrupt request signal is kept high while the microprocessor 40 performs the interrupt service routine.

상기 리셋 신호 발생부(32)는 낸드 게이트(NAND gate)(33), 디-플립플롭(34) 그리고 앤드 게이트(AND gate)를 포함한다. 상기 낸드 게이트(33)는 인터럽트 처리 종료 신호(D)와 기입 인에이블 신호(WR_EN)를 입력받아 낸드 연산한 결과를 상기 디-플립플롭(34)으로 출력한다. 상기 디-플립플롭(34)은 클럭 신호(CLK)에 동기되어 상기 낸드 게이트(33)로부터 입력되는 신호를 앤드 게이트(35)로 출력한다. 상기 앤드 게이트(35)는 상기 디-플립플롭(34)으로부터 출력되는 신호와 리셋 신호( )를 입력받아 앤드 연산하고, 그 결과를 상기 디-플립플롭(31)의 리셋 신호로 제공한다.The reset signal generator 32 includes a NAND gate 33, a de-flip flop 34, and an AND gate. The NAND gate 33 receives the interrupt processing end signal D and the write enable signal WR_EN and outputs the result of the NAND operation to the de-flip flop 34. The de-flip-flop 34 outputs a signal input from the NAND gate 33 to the AND gate 35 in synchronization with the clock signal CLK. The AND gate 35 may include a signal output from the de-flip flop 34 and a reset signal. ) Is inputted and operated, and the result is provided as a reset signal of the de-flip flop 31.

따라서, 상기 리셋 신호 발생부(32)는 상기 리셋 신호( )가 입력되거나, 상기 인터럽트 처리 종료 신호(D) 또는 기입 인에이블 신호(WR_EN)가 입력될 때 리셋 신호를 상기 디-플립플롭(31)으로 출력한다.Accordingly, the reset signal generator 32 may generate the reset signal ( ) Or a reset signal is output to the de-flip-flop 31 when the interrupt processing end signal D or the write enable signal WR_EN is input.

도 4는 도 3에 도시된 인터럽트 컨트롤러의 입/출력 신호를 보여주는 파형도이다.FIG. 4 is a waveform diagram illustrating input / output signals of the interrupt controller shown in FIG. 3.

도 4에 도시된 바와 같이, 인터럽트 소스로부터 입력되는 인터럽트 신호는 클럭 신호(CLK)에 동기되지 않고 특정 시점에 하이 레벨로 천이되었다가 다시 로우 레벨로 천이된다. 즉, 상기 인터럽트 신호는 토글(toggle)되는 형태이다. 디-플립플롭(120)으로부터 출력되는 인터럽트 요구 신호(nIRQ)는 클럭 신호(CLK)의 라이징 에지에 동기되어 하일 레벨로 천이된다. 상기 인터럽트 요구 신호(nIRQ)는 하이 레벨로 계속 유지되다가 리셋 신호 발생부(130)로부터 리셋 신호가 인가될 때 로우 레벨로 천이된다.As shown in FIG. 4, an interrupt signal input from an interrupt source is shifted to a high level at a specific time point and then to a low level without being synchronized with the clock signal CLK. That is, the interrupt signal is toggled. The interrupt request signal nIRQ output from the de-flip-flop 120 is shifted to the high level in synchronization with the rising edge of the clock signal CLK. The interrupt request signal nIRQ continues to be at a high level and then transitions to a low level when a reset signal is applied from the reset signal generator 130.

상술한 바와 같은 구성을 갖는 본 발명의 인터럽트 컨트롤러는 도 4에 도시된 바와 같은 토글 형태의 인터럽트 신호를 받아들여 인터럽트 요구 신호(nIRQ)를 마이크로 프로세서로 제공한다.The interrupt controller of the present invention having the configuration as described above receives the interrupt signal in the toggle form as shown in FIG. 4 and provides the interrupt request signal nIRQ to the microprocessor.

(실시예 2)(Example 2)

이하 본 발명에 따른 제 2 실시예를 첨부된 도면 도 5 내지 도 6을 참조하여 상세히 설명한다.Hereinafter, a second embodiment according to the present invention will be described in detail with reference to FIGS. 5 to 6.

도 5는 본 발명의 바람직한 다른 실시예에 따른 인터럽트 컨트롤러의 내부 회로 구성을 보여주고 있다.5 shows an internal circuit configuration of an interrupt controller according to another preferred embodiment of the present invention.

도 5를 참조하면, 인터럽트 컨트롤러는 인터럽트 신호 변환부(210), 멀티플렉서(220), 디-플립플롭(230) 그리고 리셋 신호 발생부(240)를 포함한다. 상기 인터럽트 신호 변환부(210)는 제 1 및 제 2 디-플립플롭(211, 212)과 인버터(213) 그리고 앤드 게이트(214)를 포함한다. 상기 리셋 신호 발생부(130)는 낸드 게이트(131), 디-플립플롭(132) 그리고 앤드 게이트(133)를 포함한다.Referring to FIG. 5, the interrupt controller includes an interrupt signal converter 210, a multiplexer 220, a de-flip flop 230, and a reset signal generator 240. The interrupt signal converter 210 includes first and second de-flip flops 211 and 212, an inverter 213, and an end gate 214. The reset signal generator 130 includes a NAND gate 131, a de-flip flop 132, and an AND gate 133.

상기 인터럽트 신호 변환부(210)는 인터럽트 소스들로부터 인터럽트 신호를 받아들여 인터럽트 컨트롤러에 적합한 신호로 변환하여 출력한다. 제 1 디-플립플롭(211)은 클럭 신호(CLK)에 동기되어 상기 인터럽트 소스들로부터 입력되는 인터럽트 신호를 출력한다. 제 2 디-플립플롭(212)은 상기 클럭 신호(CLK)에 동기되어 상기 제 1 디-플립플롭(211)으로부터 입력되는 신호를 출력한다. 앤드 게이트(214)는 상기 제 1 디-플립플롭(211)으로부터 출력되는 신호와 상기 제 2 디-플립플롭(212)로부터 출력되는 신호가 인버터(213)에서 반전된 신호를 입력받아 앤드 연산한다. 상기 앤드 게이트(214)는 제 1 및 제 2 디-플립플롭(211, 212)으로부터 출력되는 신호가 상보적일 때 하이 레벨 신호를 출력한다. 즉, 인터럽트 소스로부터 입력되는 인터럽트 신호가 로우 레벨에서 하이 레벨로 천이될 때 하이 레벨 신호를 출력하고 다음 클럭 신호(CLK)가 입력될 때까지 그 상태를 유지한다. 따라서, 인터럽트 소스로부터 입력되는 인터럽트 신호가 로우 레벨에서 하이 레벨로 천이되어 그 상태를 계속유지 하는 래치(latch)형일 때 이를 토글형으로 변환하여 출력한다.The interrupt signal converter 210 receives an interrupt signal from interrupt sources, converts the interrupt signal into a signal suitable for an interrupt controller, and outputs the signal. The first de-flip-flop 211 outputs an interrupt signal input from the interrupt sources in synchronization with the clock signal CLK. The second de-flip flop 212 outputs a signal input from the first de-flip flop 211 in synchronization with the clock signal CLK. The AND gate 214 performs an AND operation on a signal obtained by inverting the signal output from the first de-flip flop 211 and the signal output from the second de-flip flop 212 by the inverter 213. . The AND gate 214 outputs a high level signal when the signals output from the first and second de-flip flops 211 and 212 are complementary. That is, when the interrupt signal input from the interrupt source transitions from the low level to the high level, the high level signal is outputted and maintained until the next clock signal CLK is input. Therefore, when the interrupt signal input from the interrupt source is a latch type that transitions from a low level to a high level and keeps its state, it is converted into a toggle type and output.

상기 멀티플렉서(220)는 상기 인터럽트 신호 변환부(210)로부터 입력되는 인터럽트 신호에 응답하여 상기 제 1 및 제 2 입력단으로부터 입력되는 신호 중 하나를 선택적으로 출력한다. 즉, 인터럽트 소스들로부터 인터럽트 신호가 입력될 때 상기 제 2 입력단으로부터 입력되는 전원 전압이 선택되어 디-플립플롭(230)으로 출력된다. 상기 인터럽트 소스들로부터 입력되는 인터럽트 신호는 비동기적이나 상기 디-플립플롭(230)은 클럭 신호(CLK)에 동기되어 인터럽트 요구 신호(nIRQ)를 출력한다.The multiplexer 220 selectively outputs one of the signals input from the first and second input terminals in response to the interrupt signal input from the interrupt signal converter 210. That is, when an interrupt signal is input from the interrupt sources, a power supply voltage input from the second input terminal is selected and output to the de-flip-flop 230. Interrupt signals input from the interrupt sources are asynchronous, but the de-flip-flop 230 outputs an interrupt request signal nIRQ in synchronization with a clock signal CLK.

상기 디-플립플롭(230)으로부터 출력되는 신호는 멀티플렉서의 제 1 입력단으로 피드백(feedback)된다. 따라서, 인터럽트 소스들로부터 입력되는 인터럽트 신호가 하이에서 로우로 천이되더라도 상기 마이크로 프로세서(40)가 인터럽트 서비스 루틴을 수행하는 동안 인터럽트 요구 신호가 하이 상태를 유지하도록 한다.The signal output from the de-flip-flop 230 is fed back to the first input of the multiplexer. Thus, even if the interrupt signal input from the interrupt sources transitions from high to low, the interrupt request signal is kept high while the microprocessor 40 performs the interrupt service routine.

리셋 신호 발생부(240)는 도 3에 도시된 리셋 신호 발생부(130)와 동일한 구성을 갖고, 동일한 동작을 수행하므로 상세한 설명은 생략한다.Since the reset signal generator 240 has the same configuration as the reset signal generator 130 shown in FIG. 3 and performs the same operation, detailed description thereof will be omitted.

도 6은 도 5에 도시된 인터럽트 컨트롤러의 입/출력 신호를 보여주는 파형도이다.FIG. 6 is a waveform diagram illustrating input / output signals of the interrupt controller shown in FIG. 5.

도 6을 참조하면, 인터럽트 소스로부터 입력되는 인터럽트 신호(a)는 클럭 신호(CLK)에 동기되지 않고 특정 시점에 하이 레벨로 천이되어 그 상태를 유지한다. 즉, 상기 인터럽트 신호는 래치(latch)되는 형태이다. 도면에서 b, c, d는 각각 제 1 디-플립플롭(211), 인버터(213) 그리고 앤드 게이트(213)로부터 출력되는 신호의 파형을 나타낸 것이다. 도면에 도시된 바와 같이, 인터럽트 소스로부터 입력되는 인터럽트 신호(a)는 토글 형태의 신호(d)로 변환되어 멀티플렉서(220)의 선택 신호로 제공된다. 디-플립플롭(230)은 상기 클럭 신호(CLK)에 동기되어 인터럽트 요구 신호(nIRQ)를 출력한다.Referring to FIG. 6, the interrupt signal a input from the interrupt source is shifted to a high level at a specific time point without being synchronized with the clock signal CLK, and maintains the state. That is, the interrupt signal is latched. In the drawings, b, c, and d represent waveforms of signals output from the first de-flip flop 211, the inverter 213, and the end gate 213, respectively. As shown in the figure, an interrupt signal a input from an interrupt source is converted into a toggle signal d and provided as a selection signal of the multiplexer 220. The de-flip-flop 230 outputs an interrupt request signal nIRQ in synchronization with the clock signal CLK.

상술한 바와 같은 구성을 갖는 본 발명의 인터럽트 컨트롤러는 도 6에 도시된 바와 같은 래치 형태의 인터럽트 신호를 받아들여 인터럽트 요구 신호(nIRQ)를 마이크로 프로세서로 제공한다.The interrupt controller of the present invention having the configuration as described above receives the latch type interrupt signal as shown in FIG. 6 and provides the interrupt request signal nIRQ to the microprocessor.

이상에서, 본 발명에 따른 회로의 구성 및 동작을 상기한 설명 및 도면에 따라 도시하였지만 이는 예를 들어 설명한 것에 불과하며 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 다양한 변화 및 변경이 가능함은 물론이다.In the above, the configuration and operation of the circuit according to the present invention are shown in accordance with the above description and drawings, but this is merely described, for example, and various changes and modifications are possible without departing from the spirit of the present invention. .

이상과 같은 본 발명에 의하면, 외부 환경에 의한 오동작을 줄일 수 있는 인터럽트 컨트롤러를 구현할 수 있다. 더욱이, 인터럽트 소스로부터 입력되는 인터럽트 신호의 형태에 적합한 회로로 구성하여 안정된 동작을 수행할 수 있다.According to the present invention as described above, it is possible to implement an interrupt controller that can reduce the malfunction caused by the external environment. Furthermore, a stable operation can be performed by constructing a circuit suitable for the type of the interrupt signal input from the interrupt source.

Claims (5)

다수 개의 인터럽트 소스들로부터 인터럽트 신호를 받아들여, 인터럽트를 처리하는 마이크로 프로세서로 인터럽트 요구 신호를 제공하는 인터럽트 컨트롤러에 있어서:In an interrupt controller that receives an interrupt signal from multiple interrupt sources and provides an interrupt request signal to a microprocessor that handles the interrupt: 제 1 입력단과 외부로부터 전원 전원을 인가받는 제 2 입력단을 포함하고, 상기 인터럽트 소스들로부터 입력되는 인터럽트 신호에 응답하여, 상기 제 1 및 제 2 입력단으로 입력되는 신호 중 하나를 선택적으로 출력하는 멀티플렉서와;A multiplexer including a first input terminal and a second input terminal externally supplied with power, and selectively outputting one of signals input to the first and second input terminals in response to an interrupt signal input from the interrupt sources; Wow; 클럭 신호에 동기되어 상기 멀티플렉서로부터 입력되는 신호를 상기 마이크로 프로세서로 출력하는 제 1 래치 수단 및;First latch means for outputting a signal input from the multiplexer to the microprocessor in synchronization with a clock signal; 상기 마이크로 프로세서로부터 입력되는 제어 신호에 응답하여 상기 제 1 래치 수단을 리셋 시키기 위한 리셋 신호를 발생하는 수단을 포함하되,Means for generating a reset signal for resetting the first latch means in response to a control signal input from the microprocessor, 상기 제 1 래치 수단으로부터 출력되는 신호는 상기 멀티플렉서의 제 1 입력단으로 피드백되는 것을 특징으로 하는 인터럽트 컨트롤러.And a signal output from the first latching means is fed back to a first input terminal of the multiplexer. 제 1 항에 있어서,The method of claim 1, 상기 리셋 신호 발생 수단은,The reset signal generating means, 상기 마이크로 프로세서로부터 인터럽트 처리 종료 신호와 기입 인에이블 신호를 받아들여 낸드 연산하는 낸드 게이트와;A NAND gate that receives an interrupt processing end signal and a write enable signal from the microprocessor, and performs a NAND operation; 상기 클럭 신호에 동기되어 상기 낸드 게이트로부터 입력되는 신호를 출력하는 제 2 래치 수단과;Second latch means for outputting a signal input from the NAND gate in synchronization with the clock signal; 상기 제 2 래치 수단으로부터 입력되는 신호와 상기 마이크로 프로세서로부터 입력되는 리셋 신호를 앤드 연산하고, 그 결과를 상기 제 1 래치 수단의 리셋 신호로 출력하는 앤드 게이트를 포함하는 것을 특징으로 하는 인터럽트 컨트롤러.And an AND gate for performing an AND operation on a signal input from the second latch means and a reset signal input from the microprocessor, and outputting the result as a reset signal of the first latch means. 다수 개의 인터럽트 소스들로부터 제 1 인터럽트 신호를 받아들여 인터럽트를 처리하는 마이크로 프로세서로 인터럽트 요구 신호를 제공하는 인터럽트 컨트롤러에 있어서:In an interrupt controller that receives an interrupt signal from a plurality of interrupt sources and provides an interrupt request signal to a microprocessor that processes the interrupt: 상기 인터럽트 소스들로부터 제 1 인터럽트 신호를 받아들여 상기 인터럽트 컨트롤러에 적합한 제 2 인터럽트 신호로 변환하여 출력하는 인터럽트 신호 변환 수단과;Interrupt signal conversion means for receiving a first interrupt signal from said interrupt sources, converting it into a second interrupt signal suitable for said interrupt controller, and outputting the second interrupt signal; 제 1 입력단과 외부로부터 전원 전원을 인가받는 제 2 입력단을 포함하고, 상기 제 2 인터럽트 신호에 응답하여, 상기 제 1 및 제 2 입력단으로 입력되는 신호 중 하나를 선택적으로 출력하는 멀티플렉서와;A multiplexer including a first input terminal and a second input terminal externally supplied with power, and selectively outputting one of the signals input to the first and second input terminals in response to the second interrupt signal; 클럭 신호에 동기되어 상기 멀티플렉서로부터 입력되는 신호를 상기 마이크로 프로세서로 출력하는 제 1 래치 수단 및;First latch means for outputting a signal input from the multiplexer to the microprocessor in synchronization with a clock signal; 상기 마이크로 프로세서로부터 입력되는 제어 신호에 응답하여 상기 제 1 래치 수단을 리셋 시키기 위한 리셋 신호를 발생하는 수단을 포함하되,Means for generating a reset signal for resetting the first latch means in response to a control signal input from the microprocessor, 상기 제 1 래치 수단으로부터 출력되는 신호는 상기 멀티플렉서의 제 1 입력단으로 피드백되는 것을 특징으로 하는 인터럽트 컨트롤러.And a signal output from the first latching means is fed back to a first input terminal of the multiplexer. 제 3 항에 있어서,The method of claim 3, wherein 상기 인터럽트 신호 변환 수단은,The interrupt signal conversion means, 상기 클럭 신호에 동기되어 상기 인터럽트 소스들로부터 입력되는 제 1 인터럽트 신호를 출력하는 제 2 래치 수단과;Second latch means for outputting a first interrupt signal input from said interrupt sources in synchronization with said clock signal; 상기 클럭 신호에 동기되어 상기 제 2 래치 수단으로부터 입력되는 신호를 출력하는 제 3 래치 수단과;Third latch means for outputting a signal input from said second latch means in synchronization with said clock signal; 상기 제 2 및 제 3 래치 수단으로부터 입력되는 신호가 상보적일 때 상기 제 2 인터럽트 신호를 출력하는 논리 수단을 포함하는 것을 특징으로 하는 인터럽트 컨트롤러.And logic means for outputting said second interrupt signal when signals input from said second and third latch means are complementary. 제 3 항에 있어서,The method of claim 3, wherein 상기 리셋 신호 발생 수단은,The reset signal generating means, 상기 마이크로 프로세서로부터 인터럽트 처리 종료 신호와 기입 인에이블 신호를 받아들여 낸드 연산하는 낸드 게이트와;A NAND gate that receives an interrupt processing end signal and a write enable signal from the microprocessor, and performs a NAND operation; 상기 클럭 신호에 동기되어 상기 낸드 게이트로부터 입력되는 신호를 출력하는 제 2 래치 수단과;Second latch means for outputting a signal input from the NAND gate in synchronization with the clock signal; 상기 제 2 래치 수단으로부터 입력되는 신호와 상기 마이크로 프로세서로부터 입력되는 리셋 신호를 앤드 연산하고, 그 결과를 상기 제 1 래치 수단의 리셋 신호로 출력하는 앤드 게이트를 포함하는 것을 특징으로 하는 인터럽트 컨트롤러.And an AND gate for performing an AND operation on a signal input from the second latch means and a reset signal input from the microprocessor, and outputting the result as a reset signal of the first latch means.
KR1019980038794A 1998-09-18 1998-09-18 Interrupt controller KR20000020265A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980038794A KR20000020265A (en) 1998-09-18 1998-09-18 Interrupt controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980038794A KR20000020265A (en) 1998-09-18 1998-09-18 Interrupt controller

Publications (1)

Publication Number Publication Date
KR20000020265A true KR20000020265A (en) 2000-04-15

Family

ID=19551168

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980038794A KR20000020265A (en) 1998-09-18 1998-09-18 Interrupt controller

Country Status (1)

Country Link
KR (1) KR20000020265A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11550744B2 (en) * 2020-04-14 2023-01-10 STMicroelectronics (Alps) SAS Interrupt controller and method of managing an interrupt controller

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11550744B2 (en) * 2020-04-14 2023-01-10 STMicroelectronics (Alps) SAS Interrupt controller and method of managing an interrupt controller
US11853241B2 (en) 2020-04-14 2023-12-26 STMicroelectronics (Alps) SAS Interrupt controller and method of managing an interrupt controller

Similar Documents

Publication Publication Date Title
KR100833179B1 (en) Level converting flip-flop and pulse generator for clusterd voltage scaling
KR960018901A (en) How to form a feedback latch and a feedback action on the feedback latch
KR20040063283A (en) Control signal generation circuit and data transmission circuit having the same
KR20000020265A (en) Interrupt controller
KR100223026B1 (en) Synchronizing circuit
US6397342B1 (en) Device with a clock output circuit
KR19990000653A (en) Comparator clock generation circuit
KR100202683B1 (en) One-chip micro computer
KR970000254B1 (en) Clock-doubling apparatus
KR930007014B1 (en) Circuit for processing wait state in memory access
KR100201400B1 (en) Clock synchronization circuit
KR100244464B1 (en) Clock generator
JPH1097557A (en) Semiconductor integrated circuit design system
KR920003287B1 (en) Double shifter logic circuit
KR200229406Y1 (en) Synchronous signal conversion circuit
US6981162B2 (en) Suspend-to-RAM controlling circuit
JP2583759B2 (en) M-sequence code generator
KR100192977B1 (en) Wave generating circuit
KR0131448Y1 (en) Data serial parallel converting circuit
KR0158640B1 (en) Data bus control circuit
KR100548533B1 (en) Packet command driving type memory
KR0178892B1 (en) Circuit for clock multiplex
KR0139469B1 (en) Stabilized toggle flip flop having an enable park
KR200145465Y1 (en) A circuit for generating the reset signal
JPS62291579A (en) Test circuit

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination