카테고리 없음

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

좌절하지말자 2018. 2. 2. 17:16

(19) 대한민국특허청(KR)
(12) 공개특허공보(A)
(51) Int. Cl.
6
H04B 1/40
(11) 공개번호 특2000-0051271
(43) 공개일자 2000년08월16일
(21) 출원번호 10-1999-0001611
(22) 출원일자 1999년01월20일
(71) 출원인 삼성전자 주식회사 윤종용
경기도 수원시 팔달구 매탄3동 416
(72) 발명자 권윤주
경기도용인시기흥읍농서리산24번지
(74) 대리인 임창현
심사청구 : 없음
(54) 인터럽트 컨트롤러
요약
여기에 개시된 인터럽트 컨트롤러는 인터럽트 요구 신호를 받아들이고, 제 1 클럭 신호에 동기되어 슬립
모드에서 통화 모드로 가기 위한 제 1 인터럽트를 발생하는 제 1 인터럽트 발생 회로와, 상기 인터럽트
요구 신호를 클럭 신호로 받아들여 슬립 모드에서 통화 모드로 가기 위한 제 2 인터럽트를 발생하는 제
2 인터럽트 발생 회로와, 상기 제 1 및 제 2 인터럽트를 선택하기 위한 선택 신호를 발생하는 선택 제어
회로와, 통화 모드와 슬립 모드에서 발생되는 제 2 클럭 신호와 상기 선택 신호를 받아들여 상기 제 1
클럭 신호를 발생하는 클럭 발생 회로와, 상기 제 1 및 제 2 인터럽트 발생 회로를 초기화시키는 클리어
회로와 그리고 상기 선택 신호에 응답하여 상기 제 1 및 제 2 인터럽트 중 하나를 선택하는 선택 회로를
포함한다.
대표도
도3
명세서
도면의 간단한 설명
도 1은 인터럽트 컨트롤러를 보여주는 도면;
도 2는 인터럽트 컨트롤러의 구성을 보여주는 회로도;
도 3은 본 발명에 따른 인터럽트 컨트롤러의 구성을 보여주는 회로도; 및
도 4는 본 발명에 따른 인터럽트 컨트롤러의 동작 타이밍도이다.
*도면의 주요 부분에 대한 부호의 설명*
10 : 제 1 인터럽트 발생 회로20 : 제 2 인터럽트 발생 회로
30 : 선택 제어 회로40 : 클럭 발생 회로
50 : 클리어 회로60 : 선택 회로
발명의 상세한 설명
발명의 목적
발명이 속하는 기술 및 그 분야의 종래기술
본 발명은 인터럽트 컨트롤러 (interrupt controller)에 관한 것으로서, 더 구체적으로는 글리치 및 전
력 소모를 줄일 수 있는 인터럽트 컨트롤러에 관한 것이다.
이동 통신에 사용되는 칩에 있어 가장 중요한 요소중의 하나가 전력 소모를 줄이는 것이다. 일반적으로
셀룰러 폰이나 PCS 폰은 통화 모드나 슬립 모드 (sleep mode)로 존재한다. 단말기의 배터리 (battery)
의 사용 시간을 결정짓는 것은 슬립 모드이므로 인터럽트 컨트롤러에서 슬립 모드를 깨우기 위한 인터럽
트를 발생한다. 이는 통화 시간보다 통화 대기 시간이 길기 때문이다.
도 1과 같은 인터럽트 컨트롤러는 복수개의 클럭 신호들을 이용하여 스위치들을 온오프시키므로서 인터
8-1
공개특허특2000-0051271
럽트를 발생하기 때문에 글리치 (glitch)가 발생하게 된다. 즉, 클럭 신호가 변화하면서 데이터가 입력
되면 인터럽트 컨트롤러내의 디 플립플롭을 이루는 트랜지스터들을 통해 전류가 지속적으로 흐르게 된
다. 상기 글리치는 원치 않는 인터럽트를 발생시켜 오동작을 유발한다. 또, 복수개의 클럭 신호들을
이용하여 인터럽트를 발생하면 전력 소모가 커지게 된다. 상술한 바와 같은 문제를 해결하기 위해 인터
럽트 컨트롤러에서 인터럽트 요구 신호를 동기 클럭 신호로 이용하게 되면, 상기와 같은 글리치 발생을
막을 수 있다. 그러나 전력 소모를 줄이기 위해 클럭 신호를 비활성화시키면, 인터럽트가 전혀 발생되
지 않는 문제점이 발생하게 된다.
발명이 이루고자하는 기술적 과제
따라서, 본 발명의 목적은 상술한 제반 문제점을 해결하기 위해 제안된 것으로, 글리치의 발생을 막고
전력 소모도 줄일 수 있는 인터럽트 컨트롤러를 제공하는데 있다.
발명의 구성 및 작용
상술한 바와 같은 본 발명의 목적을 달성하기 위한 본 발명의 특징에 의하면, 인터럽트 컨트롤러는 인터
럽트 요구 신호를 받아들이고, 제 1 클럭 신호에 동기되어 슬립 모드에서 통화 모드로 가기 위한 제 1
인터럽트를 발생하는 제 1 인터럽트 발생 회로와, 상기 인터럽트 요구 신호를 클럭 신호로 받아들여 슬
립 모드에서 통화 모드로 가기 위한 제 2 인터럽트를 발생하는 제 2 인터럽트 발생 회로와, 상기 제 1
및 제 2 인터럽트를 선택하기 위한 선택 신호를 발생하는 선택 제어 회로와, 통화 모드와 슬립 모드에서
발생되는 제 2 클럭 신호와 상기 선택 신호를 받아들여 상기 제 1 클럭 신호를 발생하는 클럭 발생 회로
와, 상기 제 1 및 제 2 인터럽트 발생 회로를 초기화시키는 클리어 회로와 그리고 상기 선택 신호에 응
답하여 상기 제 1 및 제 2 인터럽트 중 하나를 선택하는 선택 회로를 포함하며, 상기 제 2 인터럽트 발
생 회로는 상기 제 1 클럭 신호가 비활성화될 때, 제 2 인터럽트를 발생하는 제 2 플립플롭을 포함한다.
바람직한 실시예에 있어서, 상기 클럭 발생 회로는 상기 제 2 클럭 신호와 상기 제 1 디 플립플롭의 출
력을 받아들이는 게이트 회로를 포함한다.
바람직한 실시예에 있어서, 상기 제 1 인터럽트 발생 회로는 상기 제 1 클럭 신호가 비활성화될 때 비활
성화되고, 제 2 인터럽트 발생 회로는 상기 인터럽트 요구 신호에 동기되어 상기 제 2 인터럽트를 발생
한다.
(작용)
본 발명에 의하면, 인터럽트 요구 신호를 동기 클럭 신호 및 게이트 클럭 신호로 이용하여 글리치 발생
을 막고, 전력 소모를 줄일 수 있다.
(실시예)
이하 본 발명에 따른 실시예를 첨부된 도면 도 1 내지 도 4를 참조하여 상세히 설명한다.
도 2는 글리치를 막을 수 있는 인터럽트 컨트롤러를 보여준다.
도 2를 참조하면, 인터럽트 컨트롤러는 디 플립플롭들 (1, 2, 6, 8)과 앤드 게이트들 (4, 9) 및 낸드 게
이트 (7) 그리고 선택 회로 (5)로 구성된다.
상기 디 플립플롭들 (1, 2, 6, 8)중 1, 2는 클럭 신호 (CLK)에 의해 동시에 동기되고 디 플립플롭 (1)의
출력(Q)이 디 플립플롭 (2)의 D 입력단에 연결된다. 상기 디 플립플롭 1의 Q 출력단은 앤드 게이트(4)
의 일입력단에도 연결된다. 상기 디 플립플롭 (2)의 Q 출력단은 인버터 (3)를 통해 상기 앤드 게이트
(4)의 다른 입력단에 연결된다. 상기 클럭 신호 (CLK)는 cpu 주변 클럭 신호이다. 도 2의 D는 도 1의
PD이다.
상술한 바와 같은 인터럽트 컨트롤러는 디 플립플롭 1에 인터럽트 요구 신호 (IRQ)가 입력되고 로우레벨
의 클럭 신호 (CLK)가 인가되면 디 플립플롭들 (1, 2)의 출력들이 앤드 게이트 (4)로 인가된다. 상기 앤
드 게이트 (4)의 출력은 멀티 플렉서 (5)의 선택 제어 신호로 인가되고, 멀티 플렉서 (5)의 출력은 디
플립플롭 (6)의 D 입력단으로 인가되도록 한다. 그 결과, 상기 디 플립플롭 (6)은 슬립 모드를 깨우기
위한 인터럽트 (nFIQ 또는 nIRQ)를 발생하고, 그 후, 디 플립플롭 (8)의 출력과 파워 온 리셋 신호
(RESETB)를 입력으로 받아들이는 앤드 게이트 (9)에 의해 클리어(clear)된다. 이와 같이, 인터럽트 요
구 신호를 이용하게 되면, 종래 여러 클럭 신호들을 사용하여 인터럽트를 발생하던 것에 비해서 글리치
가 전혀 발생되지 않는다. 단, 전력 소모를 줄이기 위해 클럭 신호들을 모두 비활성화시키면 클럭 신호
에 의해 동기되는 디 플립플롭들이 비활성화되어 인터럽트가 전혀 발생되지 않는다.
이하 글리치와 전력 소모 모두를 줄일 수 있는 인터럽트 컨트롤러에 대해 상세히 설명한다.
도 3은 본 발명에 따른 인터럽트 컨트롤러를 보여준다.
도 3을 참조하면, 인터럽트 컨트롤러는 제 1 인터럽트 발생 회로 (10), 제 2 인터럽트 발생 회로 (20),
선택 제어 회로 (30), 클럭 발생 회로 (40), 클리어 회로 (50), 선택 회로 (60)로 구성된다. 상기 제 1
인터럽트 발생 회로 (10)는 제 1 내지 제 3 디 플립플롭들 (11, 12, 16)과 인버터 (13), 앤드 게이트
(14) 및 멀티 플렉서 (15)로 구성된다. 상기 제 1 디 플립플롭 (11)은 인터럽트 요구 신호 (interrupt
source request signal)를 입력받는 D 입력단, 상기 클럭 발생 회로 (40)로부터 클럭 신호를 인가받는
클럭단 그리고 Q 출력단을 갖는다. 상기 제 2 디 플립플롭 (12)은 상기 제 1 디 플립플롭 (11)의 Q 출
력단에 연결되는 D 입력단, 상기 클럭 발생 회로 (40)로부터 클럭 신호를 인가받는 클럭단 그리고 Q 출
력단을 갖는다. 상기 제 1 디 플립플롭 (11)의 Q 출력단은 앤드 게이트 (14)의 일입력단과 연결되고,
상기 제 2 디 플립플롭 (12)의 Q 출력단은 인버터 (13)를 통해 상기 앤드 게이트 (14)의 다른 입력단과
연결된다. 상기 멀티 플렉서 (15)는 앤드 게이트 (14)의 출력에 의해 제 3 디 플립플롭 (16)의 출력
8-2
공개특허특2000-0051271
'0'과 VDD 레벨인 '1'중 하나를 선택한다. 그리고 상기 제 3 디 플립플롭 (16)은 상기 멀티 플렉서
(15)의 출력단에 연결되는 D 입력단. 상기 클럭 발생 회로 (40)로부터 클럭 신호를 인가받는 클럭단, 상
기 클리어 회로 (50)에 연결되는 클리어단, 그리고 제 1 인터럽트 (1)를 발생하는 Q 출력단을 갖는다.
상기 제 2 인터럽트 컨트롤러 발생 회로 (20)는 제 4 디 플립플롭 (21)으로 구성된다. 상기 제 4 디 플
립플롭 (21)은 VDD에 연결되는 D 입력단, 상기 인터럽트 요구 신호 (IRQ)를 클럭 신호로 받아들이는 클
럭단 그리고 상기 선택 회로 (60)에 연결되는 Q 출력단을 갖는다.
상기 선택 제어 회로 (30)는 제 5 디 플립플롭 (31)으로 구성된다. 상기 제 5 디 플립플롭 (31)은 D 입
력단, PCLK를 클럭 신호로 받아들이는 클럭단 그리고 상기 제 1 및 제 2 디 플립플롭들 (11, 12)의 클리
어단과 공통으로 리셋 신호 (RESETB)를 받아들이는 클리어단 그리고 상기 선택 회로 (60)에 연결되는 Q
출력단을 갖는다. 상기 PCLK는 슬립 모드 동안 비활성화되고 인터럽트가 발생될 때 활성화되는 클럭 신
호이다.
상기 클럭 발생 회로 (40)는 일입력단으로 클럭 신호 (CLK)를 입력받고 다른 입력단으로 상기 제 4 디
플립플롭 (31)의 출력 신호를 입력받고, 출력단은 상기 제 1 내지 제 3 디 플립플롭들 (11, 12, 16)의
클럭단에 연결되는 앤드 게이트 (41)로 구성된다. 상기 클럭 신호는 슬립모드와 통화모드에서 발생되는
신호이다.
상기 클리어 회로 (50)는 제 6 및 제 7 디 플립플롭들 (51, 53)과 앤드 및 낸드 게이트들 (52, 54)로 구
성된다. 상기 제 6 디 플립플롭 (51)은 D 입력단, 클럭단, 상기 리셋 신호 (RESETB)가 입력되는 클리어
단 및 출력단을 갖는다. 제 7 디 플립플롭 (53)은 D 입력단, 클럭 신호 (PCLK)가 입력되는 클럭단, 상
기 리셋 신호 (RESETB)가 입력되는 클리어단 및 출력단을 갖는다. 낸드 게이트 (53)는 WE_EN와 제 6 디
플립플롭 (51)의 출력 신호가 각각 입력되는 입력단들과 제 7 디 플립플롭 (53)의 D 입력단에 연결되는
출력단을 갖는다. 그리고 앤드 게이트 (54)는 상기 제 7 디 플립플롭 (53)에 연결되는 일입력단 및 상
기 리셋 신호 (RESETB)가 입력되는 이입력단을 갖는다. 상기 앤드 게이트 (54)의 출력은 상기 디 플립
플롭들 (16, 21)들을 클리어시키는데 사용된다.
그리고 상기 선택 회로 (60)는 두 개의 입력단과 제어단을 갖는 멀티 플렉서 (61)를 포함한다. 상기 멀
티 플렉서 (61)의 입력단들은 제 1 및 제 2 인터럽트 발생 회로들 (10, 20)의 출력단과 각각 연결되고,
제어단은 상기 선택 제어 회로 (30)의 출력단에 연결된다.
이하 본 발명의 실시예에 따른 인터럽트 컨트롤러의 동작을 도 3 및 도 4에 의거하여 상세히 설명한다.
도 3을 참조하면, 인터럽트 컨트롤러는 인터럽트 요구 신호 (IRQ)가 동기 클럭 신호 (sync CLK)와 게이
트 클럭 신호로 동작하는 제 1 및 제 2 인터럽트 발생 회로 (10, 20)를 구성하여 소프트웨어적으로 회로
를 선택할 수 있다.
먼저, 인터럽트 요구 신호 (IRQ)를 동기 클럭 신호 (클럭 소오스에 의해 발생되는 신호)로 사용하는 경
우를 설명하면, 제 5 디 플립플롭 (31)으로부터 '1'이 발생되면, 클럭 발생 회로 (40)는 상기 디 플립
플롭 (31)의 출력과 클럭 신호 (CLK)를 조합한 결과를 제 1 내지 제 3 디 플립플롭들 (11, 12, 16)의 클
럭 신호로 제공한다. 상기 디 플립플롭들 (11, 12, 16)은 클럭 발생 회로 (40)로부터 제공되는 클럭 신
호에 동기되어 인터럽트 요구 신호 (IRQ)를 입력받아 '1'의 제 1 인터럽트를 발생한다. 선택 회로 (60)
는 상기 제 5 디 플립플롭 (31)으로부터 발생되는 '1'의 신호에 의해 제 1 인터럽트 발생 회로 (10)로부
터 발생되는 인터럽트를 선택한다.
다음으로, 인터럽트 요구 신호 (IRQ)를 게이트 클럭 신호 (gated clock: 클럭 소오스에 의해 발생되는
신호가 아님)로 사용하는 경우, 제 5 디 플립플롭 (31)의 출력이 '0'이 되면 클럭 발생 회로 (40)로부
터 로우레벨의 클럭 신호가 발생된다. 상기 클럭 신호는 제 1 인터럽트 발생 회로 (10)의 디 플립플롭
들 (11, 12, 16)에 인가된다. 그로 인해 상기 디 플립플롭들 (11, 12, 16)은 동작하지 않는다. 이때,
제 2 인터럽트 발생 회로 (20)의 제 4 디 플립플롭 (21)은 인터럽트 요구 신호 (IRQ)를 받아들여 제 2
인터럽트를 발생하게 된다. 선택 회로 (60)는 제 5 디 플립플롭 (31)의 출력 (0)에 의해 상기 제 2 인
터럽트 (0)를 선택한다. 상기 선택 회로 (60)를 통해 선택된 인터럽트는 슬립모드를 깨우기 위한 인터
럽트로서 통화모드로 갈수 있도록 한다.
상기 클리어 회로 (50)는 슬립 모드동안은 비활성화되고 상기 인터럽트가 발생되면 활성화되는 클럭 신
호 (PCLK)에 의해 슬립 모드 동안 디 플립플롭들 (51, 53)이 동작하지 않는다. 그러나 상기 클럭 신호
(PCLK)가 활성화되어 인터럽트가 발생되면 상기 디 플립플롭들이 동작하여 제 1 인터럽트 발생 회로
(10)의 제 3 디 플립플롭 (16)을 클리어시킨다.
상기 제 1 인터럽트 발생 회로(10)가 선택될 때에는 인터럽트 요구 신호 (IRQ)에 의해 인터럽트가 발생
되므로 글리치의 발생을 막을 수 있고, 상기 제 2 인터럽트 발생 회로 (20)가 선택될 때에는 일정한 클
럭 신호에 의해 인터럽트가 발생하므로 전력 소모를 줄일 수 있다.
도 4는 도 3의 인터럽트 컨트롤러의 동작 타이밍도이다.
도 4를 참조하면, 인터럽트 요구 신호 (IRQ)를 동기 클럭 신호로 이용할 경우, 제 5 디 플립플롭 (31)의
출력 (31_out)이 하이레벨이 되면, 앤드 게이트 (41)는 클럭 신호 (CLK)와 상기 디 플립플롭 (31)의 출
력을 조합한 클럭 신호 (41_out)를 발생한다. 제 1 인터럽트 발생 회로 (10)는 하이레벨의 인터럽트 요
구 신호 (IRQ)를 입력받고 상기 클럭 신호 (41_out)에 동기되어 하이레벨의 제 1 인터럽트 (16_out)를
발생한다. 상기 인터럽트 (16_out)가 발생될 때 PCLK가 활성화된다. 상기 인터럽트 (16_out)가 발생되
면, 상기 PCLK에 의해 클리어 회로 (50)로부터 발생된 로우레벨의 클리어 신호 (54_out)가 제 1 인터럽
트 발생 회로 (10)로 입력되어 상기 제 1 인터럽트 발생 회로 (10)를 클리어시킨다.
상기 인터럽트 컨트롤러는 글리치가 발생할 경우에는 제 5 디 플립플롭 (31)에 '1'을 기입(write)하여
제 1 인터럽트 발생 회로 (10)를 선택한다. 그리고 글리치가 발생되지 않을 경우에는 제 5 디 플립플롭
8-3
공개특허특2000-0051271
(31)에 '0'을 기입하여 제 2 인터럽트 발생 회로 (20)를 선택하므로서 모든 클럭 신호들을 비활성화시킨
다. 클럭 신호들이 모두 비활성화되어도 인터럽트 요구 신호 (IRQ)가 클럭 신호로서 제 2 인터럽트 발
생 회로 (20)에 입력되기 때문에 인터럽트 컨트롤러를 동작시킬 수 있다.
발명의 효과
이상과 같은 본 발명에 의하면, 글리치를 줄일 수 있는 회로와 전력 소모를 줄일 수 있는 회로를 구성하
여 선택적으로 인터럽트 컨트롤러를 동작시킬 수 있다.
(57) 청구의 범위
청구항 1
인터럽트 요구 신호를 받아들이고, 제 1 클럭 신호에 동기되어 슬립 모드에서 통화 모드로 가기 위한 제
1 인터럽트를 발생하는 제 1 인터럽트 발생 회로와;
상기 인터럽트 요구 신호를 클럭 신호로 받아들여 슬립 모드에서 통화 모드로 가기 위한 제 2 인터럽트
를 발생하는 제 2 인터럽트 발생 회로와;
상기 제 1 및 제 2 인터럽트를 선택하기 위한 선택 신호를 발생하는 선택 제어 회로와;
통화 모드와 슬립 모드에서 발생되는 제 2 클럭 신호와 상기 선택 신호를 받아들여 상기 제 1 클럭 신호
를 발생하는 클럭 발생 회로와;
상기 제 1 및 제 2 인터럽트 발생 회로들을 초기화시키는 클리어 회로와; 그리고
상기 선택 신호에 응답하여 상기 제 1 및 제 2 인터럽트 중 하나를 선택하는 선택 회로를 포함하며,
상기 제 2 인터럽트 발생 회로는
상기 제 1 클럭 신호가 비활성화될 때, 제 2 인터럽트를 발생하는 제 2 플립플롭을 포함하는 인터럽트
컨트롤러.
청구항 2
제 1 항에 있어서,
상기 클럭 발생 회로는 상기 제 2 클럭 신호와 상기 제 1 디 플립플롭의 출력을 받아들이는 게이트 회로
를 포함하는 인터럽트 컨트롤러.
청구항 3
제 1 항에 있어서,
상기 제 1 인터럽트 발생 회로는 상기 제 1 클럭 신호가 비활성화될 때 비활성화되고, 제 2 인터럽트 발
생 회로는 상기 인터럽트 요구 신호에 동기되어 상기 제 2 인터럽트를 발생하는 인터럽트 컨트롤러.
도면
8-4
공개특허특2000-0051271
도면1
8-5
공개특허특2000-0051271
도면2
8-6
공개특허특2000-0051271
도면3
8-7
공개특허특2000-0051271
도면4
8-8
공개특허특2000-0051271