(19) 대한민국특허청(KR)
(12) 공개특허공보(A)
(11) 공개번호 10-2010-0037576
(43) 공개일자 2010년04월09일
(51) Int. Cl.

H03L 7/22 (2006.01) H03K 5/135 (2006.01)
(21) 출원번호 10-2009-7026400
(22) 출원일자 2008년05월16일
심사청구일자 없음
(85) 번역문제출일자 2009년12월17일
(86) 국제출원번호 PCT/US2008/006342
(87) 국제공개번호 WO 2008/144010
국제공개일자 2008년11월27일
(30) 우선권주장
11/750,267 2007년05월17일 미국(US)
(71) 출원인
글로벌파운드리즈 인크.
케이만 아일랜드 케이와이1-1104 그랜드 케이만
어그랜드 하우스 피.오.박스 309 메이플 코포레이
트 서비시즈 리미티드
(72) 발명자
이톤 크래이그
미국 텍사스 78748 오스틴 실크그래스 벤드 3305
배일리 다니엘 더블유.
미국 텍사스 78750 오스틴 트리 벤드 드라이브
9716
(74) 대리인
박장원
전체 청구항 수 : 총 10 항
(54) 집적 회로 클럭 관리를 위한 기술
(57) 요 약
제 1 회로(812)와 제 2 회로(814)를 포함하는 클럭 발생기(622)가 제공된다. 상기 제 1 회로(812)는 제 1 주파
수에서 제 1 클럭 신호를 수신하도록 구성된 제 1 클럭 입력과, 상기 제 1 주파수에서 제 2 클럭 신호를 수신하
도록 구성된 제 2 클럭 입력과, 그리고 출력을 포함한다. 상기 제 2 클럭 신호는 상기 제 1 클럭 신호와 위상이
다르다. 상기 제 2 회로(814)는 상기 제 1 회로(812)에 연결되고, 모드 신호를 수신하도록 구성된 모드 신호 입
력을 포함한다. 상기 제 1 회로(812)의 출력은 발생 클럭 신호를 제공하도록 구성되고, 상기 발생 클럭 신호의
유효 주파수는 상기 제 1 클럭 신호, 상기 제 2 클럭 신호 및 상기 모드 신호에 근거를 두고 있다.
대 표 도 - 도8
- 1 -
공개특허 10-2010-0037576
특허청구의 범위
청구항 1
클럭 발생기로서,
제 1 클럭 입력, 제 2 클럭 입력, 및 출력을 구비한 제 1 회로(812)와, 여기서 상기 제 1 클럭 입력은 제 1 주
파수에서 제 1 클럭 신호를 수신하고, 상기 제 2 클럭 입력은 상기 제 1 주파수에서 제 2 클럭 신호를
수신하고, 그리고 상기 제 2 클럭 신호는 상기 제 1 클럭 신호와 위상이 다르며; 그리고
상기 제 1 회로(812)에 연결된 제 2 회로(804-810)를 포함하여 구성되며,
상기 제 2 회로는 모드 신호를 수신하도록 된 모드 신호 입력(EN_0, EN_90, EN_180, EN_270)을 구비하고, 상기
제 1 회로의 출력(GEN_CLK)은 발생 클럭 신호를 제공하고, 상기 발생 클럭 신호의 유효 주파수는 상기 제 1 클
럭 신호, 상기 제 2 클럭 신호 및 상기 모드 신호에 기반을 두고 있는 것을 특징으로 하는 클럭 발생기.
청구항 2
제1항에 있어서,
상기 제 2 클럭 신호는 상기 제 1 클럭 신호의 직각위상 버전(quadrature version)인 것을 특징으로 하는 클럭
발생기.
청구항 3
제1항에 있어서,
상기 모드 신호는 상기 제 1 클럭 신호와 상기 제 2 클럭 신호의 각각의 에지에 대해 각각의 인에이블 비트들을
제공하고, 그리고 상기 각각의 인에이블 비트들의 레벨은 상기 발생 클럭 신호의 유효 주파수를 결정하는 것을
특징으로 하는 클럭 발생기.
청구항 4
제1항에 있어서,
상기 제 1 회로는 제 1 입력, 제 2 입력, 제 3 입력, 제 4 입력, 제 1 선택 입력, 제 2 선택 입력, 및 출력을
구비한 멀티플렉서(812)를 포함하는 것을 특징으로 하는 클럭 발생기.
청구항 5
제4항에 있어서,
상기 제 2 회로는,
상기 모드 신호에 포함된 제 1 모드 비트를 수신하도록 된 입력과, 상기 제 1 클럭 신호를 수신하도록 된 클럭
입력과, 그리고 상기 멀티플렉서의 상기 제 1 입력에 연결된 출력을 구비한 제 1 플립-플롭(804)과;
상기 모드 신호에 포함된 제 2 모드 비트를 수신하도록 된 입력과, 반전된 제 1 클럭 신호를 수신하도록 된 클
럭 입력과, 그리고 상기 멀티플렉서의 상기 제 2 입력에 연결된 출력을 구비한 제 2 플립-플롭(806)과;
상기 모드 신호에 포함된 제 3 모드 비트를 수신하도록 된 입력과, 상기 제 1 클럭 신호를 수신하도록 된 클럭
입력과, 그리고 상기 멀티플렉서의 상기 제 3 입력에 연결된 출력을 구비한 제 3 플립-플롭(808)과; 그리고
상기 모드 신호에 포함된 제 4 모드 비트를 수신하도록 된 입력과, 상기 반전된 제 1 클럭 신호를 수신하도록
된 클럭 입력과, 그리고 상기 멀티플렉서의 상기 제 4 입력에 연결된 출력을 구비한 제 4 플립-플롭(810)을 포
함하고,
상기 제 1 선택 입력은 상기 제 1 클럭 신호를 수신하고, 상기 제 2 선택 입력은 상기 제 2 클럭 신호를 수신하
고, 그리고 상기 멀티플렉서는 상기 제 1 클럭 신호와 상기 제 2 클럭 신호에 기반하여 상기 제 1 모드 비트,
상기 제 2 모드 비트, 상기 제 3 모드 비트, 또는 상기 제 4 모드 비트 중 하나를 선택하며, 상기 멀티플렉서의
출력은 상기 발생 클럭 신호를 제공하는 것을 특징으로 하는 클럭 발생기.
- 2 -
공개특허 10-2010-0037576
청구항 6
제1항에 있어서,
상기 클럭 발생기는 내부 위상 고정 루프를 포함하지 않는 것을 특징으로 하는 클럭 발생기.
청구항 7
제1항에 있어서,
상기 제 1 클럭 신호는 약 50 퍼센트의 듀티 싸이클을 가진 주기 신호이고, 그리고 상기 유효 주파수는 실제 주
파수인 것을 특징으로 하는 클럭 발생기.
청구항 8
제 1 주파수에서 직각위상 클럭 신호들을 수신하는 단계와;
모드 신호를 수신하는 단계와; 그리고
발생 클럭 신호를 제공하는 단계를 포함하여 구성되며,
상기 발생 클럭 신호의 유효 주파수는 상기 직각위상 클럭 신호들과 상기 모드 신호에 기반을 두고 있는 것을
특징으로 하는 방법.
청구항 9
제8항에 있어서,
상기 직각위상 클럭 신호들의 각각의 에지에 대해 각각의 인에이블 비트들(EN_0, EN_90, EN_180, EN_270)을 제
공하는 단계를 더 포함하고, 여기서 상기 각각의 인에이블 비트들의 레벨은 상기 발생 클럭 신호의 유효 주파수
를 결정하는 것을 특징으로 하는 방법.
청구항 10
제9항에 있어서,
상기 유효 주파수는 펄스 스킵핑으로 달성되거나 혹은 펄스 스킵핑 없이 달성된 유효 주파수인 것을 특징으로
하는 방법.
명 세 서
기 술 분 야
관련 출원(들)에 대한 상호 참조[0001]
본 발명은 함께 계류중인 미국 특허출원 일련번호 제11/750,284호(대리인 관리번호 TT6314)(발명의 명칭:[0002]
"TECHNIQUES FOR INTEGRATED CIRCUIT CLOCK MANAGEMENT USING PULSE SKIPPING", 2007.05.17. 출원, 발명자:
Bill K.C. Kwan 외), 미국 특허출원 일련번호 제11/750,290호(대리인 관리번호 TT6315)(발명의 명칭:
"TECHNIQUES FOR INTEGRATED CIRCUIT CLOCK MANAGEMENT USING MULTIPLE CLOCK GENERATORS", 2007.05.17.
출원, 발명자: Craig Eaton 외), 미국 특허출원 일련번호 제11/750,275호(대리인 관리번호 TT6322)(발명의
명칭: "TECHNIQUES FOR INTEGRATED CIRCUIT CLOCK SIGNAL MANIPULATION TO FACILITATE FUNCTIONAL AND SPEED
TEST", 2007.05.17. 출원, 발명자: Atchyuth Gorti)와 관련되어 있다.
본 발명은 일반적으로 클럭 관리에 관한 것으로, 특히 집적 회로 클럭 관리를 위한 기술에 관한 것이다.[0003]
배 경 기 술
전통적으로, 컴퓨터 시스템의 파워 관리는 소정의 성능 레벨에서 최적의 (혹은 거의 최적의) 파워 절약을 달성[0004]
하기 위해 시스템 클럭 주파수 (및 종종 관련 시스템 클럭 전압)을 조정함으로써 구현된다. 전형적으로, 시스템
클럭 주파수는, 시스템 클럭을 제공하는, 위상 고정 루프(Phase Locked Loop, PLL)의 주파수를 변경시킴으로써
조정된다. 불행하게고, PLL의 주파수가 조정될 때, PLL이 재고정되어 시스템이 정상 동작을 재개할 수 있기 전
- 3 -
공개특허 10-2010-0037576
에 수백 마이크로 초의 대기시간이 존재할 수 있다. 복수의 PLL들 각각이 다양한 서브시스템에 대해 각각의 클
럭 신호들을 제공하는 복수의 PLL들을 사용하는 프로세서 시스템에서, 시스템 대기시간은 가장 큰 재잠금 대기
시간을 가진 PLL의 대기시간으로 추정할 수 있다. 더욱이, 복수의 PLL들을 사용하는 시스템에서, PLL들에 의해
제공된 각각의 클럭 신호들의 동기화를 위해서는 상대적으로 정교한 설계 방법이 요구될 수 있다.
전통적으로, 컴퓨터 시스템의 파워 관리는 서로 다른 수많은 기술의 도움을 받아왔다. 예를 들어, 레거시 컴퓨[0005]
터 시스템(legacy computer systems)은, 기본 입력 출력 시스템(Basic Input Output System, BIOS)를 통해, 파
워 관리의 운영 체제(Operating System, OS) 제어를 사용하는 APM(Advanced Power Management) 컴플라이언트
설계를 구현한다. 오늘날, 대부분의 컴퓨터 시스템들은, 파워 관리를 용이하게 하기 위해, ACPI(Advanced
Configuration and Power Interface) 컴플라이언트 설계를 사용한다. ACPI 사양서는 BIOS를 통해 시스템 파워
관리의 OS 제어를 제공하고, 이것은 낮은 레벨의 하드웨어 세부사항을 직접 제어하는 방법을 OS에 제공하여, OS
는 파워 절약에 관한 거의 완전한 제어를 할 수 있다. 일반적으로, ACPI 사양서는, 이전에는 단지 휴대용 컴퓨
터에서만 이용가능 했던, 파워 관리 특성을 데스크탑 컴퓨터 및 서버에 도입할 수 있게 한다. 예를 들어, 컴퓨
터 시스템은 극히 낮은 에너지 상태에 놓일 수 있고, 이러한 상태로부터 통상적인 인터럽트는 시스템을 빠르게
깨울 수 있다.
ACPI 사양서는 ACPI 컴플라이언트 컴퓨터 시스템에 대해 7개의 상태(GO, Gl-Sl, G1-S2, G1-S3, G1-S4, G2, 및[0006]
G3)를 정의한다. GO 상태는 컴퓨터 시스템의 보통의 동작 상태이다. G0 상태에서, 중앙 제어 장치(Central
Processing Unit, CPU)는 명령들을 실행할 수 있거나, 또는 주기적으로 낮은 에너지 상태(예를 들어, CO-Cn 및
DO-D3) 안팎으로 전이할 수 있다. 예를 들어, 랩탑 컴퓨터 시스템은 배터리로 전력이 공급될 때 현재 사용되지
않는 모든 디바이스의 전력을 정기적으로 차단한다. G1 상태는 네 개의 수면 모드(S1 내지 S4)로 세분화된다.
시스템을 상태 G1에서 상태 G0으로 되게 하는데 필요한 시간은 S1 모드에 대해 가장 짧은데, 이러한 S1 모드는
수면 모드들 중 가장 파워가 적은 모드이다. G2 상태는 G3 상태(기계적으로 오프)와 거의 동일하지만, G2 상태
에서, 일부 컴포넌트들은 파워가 공급되는 상태에 있고, 그래서 컴퓨터는 키보드, 근거리 통신망(Local Area
Network, LAN) 디바이스, 혹은 범용 직렬 버스(Universal Serial Bus, USB) 디바이스, 등으로부터의 입력에 응
답하여 "깨어(wake)"날 수 있다. G2 상태는 전형적으로 사용자에 의해 발행된 셧다운 커맨드(shut-down
command)에 응답하여 OS에 의해 개시된다. 디바이스 상태(D0-D3)는 디바이스에 따라 다르다. D0 상태에서, 디바
이스는 전체적으로 온인 동작 상태에 있다. D1 상태 및 D2 상태는 중간 파워 상태이며, 이러한 중간 파워 상태
의 정의는 디바이스 마다 다르다. D3 상태에서, 디바이스의 파워는 차단되고, 반응하지 않는다.
ACPI 사양서는 네 가지 중앙 처리 장치(CPU) 파워 상태, 즉 C0-C3을 정의한다. C0 상태는 CPU 동작 상태이다.[0007]
C1 상태는 CPU가 명령을 실행하고 있지 않지만 본질적으로 즉시 실행 상태로 복귀할 수 있는 상태이다. C2 상태
는 CPU가 모든 소프트웨어의 가시적 상태를 유지할 수 있지만, 깨어나는 데 시간이 더 오래 걸릴 수 있는 상태
이다. C3 상태에서, CPU는 그 캐시 일관성을 유지할 필요가 없으며, 하지만 다른 경우에 CPU 상태를 유지한다.
ACPI 사양서는 디바이스 혹은 CPU(각각 DO 혹은 CO에서 동작함)가 진입할 수 있는 16개의 성능(P) 상태를 정의
한다. P 상태들은 실시예에 따라 달라지며, P0은 언제나 가장 높은 수행 상태이고, P1 내지 Pn은 실시예마다 특
정된 한계치(n)(이것은 16보다 작거나 혹은 동일함)까지 연속적으로 더 낮아지는 성능 상태이다.
도 1을 참조하면, 기준 클럭 신호 및 하나 이상의 관련 분할기 값들에 응답하는 주파수에서 애플리케이션에 적[0008]
절한 출력 클럭 신호를 제공하는 종래의 위상 고정 루프(PLL)(100)가 예시된다. 기준 클럭 신호가 PLL(100)의
입력 분할기(102)의 입력에 제공된다. 입력 분할기(102)의 분할기 값은 입력 분할기 레지스터(104)에 저장된 값
에 의해 지시된다. 입력 분할기(102)의 출력은 위상 검출기(106)의 제 1 입력에 연결되고, 위상 검출기(106)의
출력은 루프 필터(108)의 입력에 연결된다. 루프 필터(108)의 출력은 전하 펌프(charge pump)(110)의 입력에 연
결되고, 전하 펌프(110)의 출력은 전압 제어 오실레이터(Voltage Controlled Oscillator, VCO)(112)에 연결된
다. VCO(112)의 출력은 피드백 분할기(114)의 입력에 연결되고, 피드백 분할기(114)의 출력은 위상 검출기(10
6)의 제 2 입력에 연결된다. 피드백 분할기(114)의 분할기 값은 피드백 분할기 레지스터(116)에 저장된 값에 의
해 지시된다.
도 2를 참조하면, 도 1의 PLL(100)과 동일한 방식으로 구성될 수 있는 단일 PLL(202)을 포함하는 종래 프로세서[0009]
시스템(200)이 예시된다. PLL(202)은 파워 관리 상태 제어기(204)에 연결되며, 상기 파워 관리 상태 제어기
(204)는 PLL(202)의 하나 또는 그 이상의 레지스터들(예를 들어, 입력 및 피드백 분할기 레지스터들)에 값들을
기입하도록 구성되어, PLL(202)로 하여금 소정의 파워 상태에 대해 요구된 주파수에서 CPU 클럭 신호를
CPU(206)에 제공하도록 한다.
- 4 -
공개특허 10-2010-0037576
도 3을 참조하면, 복수의 PLL들을 사용하는 종래의 프로세서 시스템(300)이 도시된다. 메인 PLL(302)이 기준 클[0010]
럭 신호를 수신하고 (요구된 주파수를 갖는) 출력 클럭 신호를 PLL(304)의 입력과 PLL(306)의 입력에 각각 제공
한다. PLL(304)은 CPU 클럭 신호를 CPU(310)에 제공하고, 그리고 PLL(306)은 클럭 신호를 회로(312)에 제공하
는데, 상기 회로(312)는 클럭 신호를 요구하는 CPU 혹은 다른 회로일 수 있다. PLL들(304 및 306)은 동일한 주
파수 혹은 다른 주파수에서 클럭 신호를 제공할 수 있다. PLL들(302, 304, 및 306)은 파워 관리 상태 제어기
(308)에 연결되고, 상기 파워 관리 상태 제어기(308)는 PLL들(302-306)의 레지스터들, 예를 들어 입력 및 피드
백 분할기 레지스터들에 여러 값들을 기입하도록 구성되어, PLL들(304 및 306)로 하여금 요구된 파워 상태에 대
응하는 하나 또는 그 이상의 요구된 주파수에서 클럭 신호들을 제공하도록 한다. 이해해야만 하는 것으로, PLL
들(302-306)에 의해 제공된 클럭 신호의 주파수들이 동시에 변할 때, 주파수 변경과 관련된 대기시간은 PLL들
(302-306) 중 가장 느린 PLL의 재고정 시간에 대응한다.
필요한 것은 클럭 신호의 주파수 조정과 관련된 대기시간을 일반적으로 감소시키는 클럭 관리 기술이다.[0011]
본 개시 내용, 및 본 발명이 속하는 기술분야에서 숙련된 자들에게는 명백한 그 수많은 특징 및 장점은 첨부되[0012]
는 도면을 참조함으로써 더 잘 이해될 수 있다.
실 시 예
서로 다른 도면에서 사용된 동일한 참조 부호는 유사한 아이템 혹은 동일한 아이템을 표시한다.[0024]
본 발명의 다양한 실시예에 따르면, 상대적으로 넓은 주파수 범위를 갖는 발생 클럭 신호(generated clock[0025]
signal)를 제공하는 프로그래밍가능 클럭 발생기가 본 명세서에서 설명된다. 클럭 발생기가, 클럭 발생기와 관
련된 위상 고정 루프(PLL)에 의해 제공된 클럭 신호(예를 들어, 직각위상 클럭 신호(quadrature clock
signals))의 주파수의 수정을 요구함이 없이, (모드 신호에 응답하는) 발생 클럭 신호에서의 주파수 변경이 용
이하도록 구성된다. 클럭 발생기 기술은, 복수의 클럭 도메인들을 사용하는 현대 마이크로프로세서 시스템에서
사용될 때 특히 장점을 가지며, 상기 복수의 클럭 도메인들 각각은 서로 다른 주파수에서 동작할 수 있고, 예를
들어 파워 관리 상태 변경에 응답하여 빈번하게 주파수를 변경할 수 있다. 이러한 경우에, 복수의 클럭 발생기
들(예를 들어, 각각의 클럭 도메인에 대해 하나)이 클럭 도메인들의 동작 주파수에서의 독립적이고 빈번한 변경
이 용이하도록 사용될 수 있다.
본 발명의 일 실시형태에 따르면, 발생 클럭 신호의 유효 주파수의 증가된 조정을 제공하기 위해 펄스 제거 기[0026]
술이 사용될 수 있다. 이러한 실시예에 따르면, 발생 클럭 신호의 유효 주파수는 주기적 펄스 스킵핑(periodic
pulse skipping)(즉, 발생 클럭 신호의 클럭 스트림에서 각각의 선택된 시간 주기로부터 하나 또는 그 이상의
클럭 펄스들을 제거하는 것)에 의해 수정된다. 본 발명의 다양한 실시형태에 따르면, 내부 PLL들을 포함하지 않
는 여러 클럭 발생기들에 대해 직각위상 클럭 신호들을 제공하기 위해 단일의 PLL이 사용될 수 있다. 클럭 발생
기들은 서로 다른 주파수에서 각각의 발생 클럭 신호들을 관련된 클럭 로직 회로(clocked logic circuits)에 제
공할 수 있다. 관련된 클럭 로직 회로는 하나 또는 그 이상의 CPU 코어, 노스브리지 회로(Northbridge
circuit), 메모리 블럭, 등에 대응할 수 있다. 클럭 발생기가 정적 클럭 로직 회로에 발생 클럭 신호를 공급하
고 있을 때, 클럭 발생기는 주기적 펄스 스킵핑(즉, 클럭 시스템의 각각의 사전에 결정된 시간 주기 동안 클럭
스트림으로부터 하나 또는 그 이상의 펄스들을 제거하는 것)을 사용할 수 있다. 본 발명의 다양한 실시형태에
따르면, 클럭 발생기는, 발생 클럭 신호에 높은 주파수 세분화도를 제공하고 아울러 종래의 클럭 분할기들에 의
해 쉽게 제공될 수 없는 주파수를 제공하도록 설계될 수 있다. 본 명세서에서 사용되는 용어 "연결된"은 요소
(혹은 블럭)들 간의 직접적인 전기적 접속 및 하나 또는 그 이상의 중간 요소(혹은 블럭)들에 의해 제공되는 요
소(혹은 블럭)들 간의 간접적인 전기적 접속을 포함한다. 본 명세서에서 사용되는 용어 "실제 주파수"는 펄스
스킵핑을 사용함이 없이 달성되는 주파수를 의미한다. 본 명세서에서 사용되는 용어 "유효 주파수"는 펄스 스킵
핑을 사용하여 달성된 주파수 혹은 펄스 스킵핑을 사용함이 없이 달성된 주파수를 의미한다. 본 명세서에서, "
펄스 스킵핑"은 사전에 결정된 시간 주기 내에서 클럭 스트림으로부터 하나 또는 그 이상의 펄스들을 제거하는
것을 의미한다.
종래의 플립 플롭 기반의 카운터 주파수 분할기가 발생 클럭 신호를 제공하기 위해 사용될 수 있지만, 종래의[0027]
플립 플롭 기반의 카운터 주파수 분할기는 임의의 클럭 신호 파형을 제공하도록 쉽게 구성될 수 없고 일반적으
로 기준 클럭 신호의 상승 에지 상에서 단지 토글할 수 있다. 이처럼, 종래의 플립 플롭 기반의 카운터 주파수
분할기를 사용하여 임의 주파수에서 클럭 신호를 발생시키기 위해서는, 본 발명에 따라 구성되는 클럭 발생기를
사용하여 동일한 주파수 클럭 신호를 발생시키기 위해 요구되는 주파수의 네 배의 주파수를 가진 기준 클럭 신
- 5 -
공개특허 10-2010-0037576
호가 필요하다. 더욱이, 종래의 플립 플롭 기반의 카운터 주파수 분할기는 일로 나누기 혹은 이분의일로 나누기
를 발생시킬 수 없다. 종래의 시프트 레지스터가 클럭 발생기로서의 기능을 수행하여 임의의 클럭 신호 파형을
발생시킬 수 있지만, 종래의 시프트 레지스터도 또한, 본 발명에 따라 구성되는 클럭 발생기를 사용하여 동일한
주파수 클럭 신호를 발생시키기 위해 요구되는 발생 클럭 신호 주파수의 네 배의 주파수를 가진 기준 클럭 신호
를 필요로 한다. 고주파수 애플리케이션에서, 발생 클럭 신호의 네 배의 주파수에서 기준 클럭 신호를 발생시키
는 것은 상대적으로 많은 양의 전력을 소비할 수 있고, 비실용적일 수 있다.
본 발명의 일 실시형태에 따르면, 클럭 발생기는 제 1 회로와 제 2 회로를 포함한다. 제 1 회로는 제 1 주파수[0028]
에서 제 1 클럭 신호를 수신하도록 구성된 제 1 클럭 입력과, 제 1 주파수에서 제 2 클럭 신호를 수신하도록 구
성된 제 2 클럭 입력과, 그리고 출력을 포함한다. 이러한 실시형태에 따르면, 제 2 클럭 신호는 제 1 클럭 신호
와 위상이 다르다. 제 2 회로는 제 1 회로에 연결되고, 그리고 모드 신호를 수신하도록 구성된 모드 신호 입력
을 포함한다. 제 1 회로의 출력은 발생 클럭 신호를 제공하도록 구성되며, 상기 발생 클럭 신호의 유효 주파수
는 상기 제 1 클럭 신호와 상기 제 2 클럭 신호와, 그리고 상기 모드 신호에 근거를 두고 있다.
본 발명의 또 다른 실시예에 따르면, 클럭 발생기 시스템은 클럭 발생기와 위상 고정 루프를 포함한다. 클럭 발[0029]
생기는 제 1 회로와 제 2 회로를 포함한다. 제 1 회로는 제 1 주파수에서 제 1 클럭 신호를 수신하도록 구성된
제 1 클럭 입력과, 제 1 주파수에서 제 2 클럭 신호를 수신하도록 구성된 제 2 클럭 입력과, 그리고 출력을 포
함한다. 상기 제 2 클럭 신호는 상기 제 1 클럭 신호와 위상이 다르다. 제 2 회로는 제 1 회로에 연결되고, 모
드 신호를 수신하도록 구성된 모드 신호 입력을 포함한다. 제 1 회로의 출력은 발생 클럭 신호를 제공하도록 구
성되며, 상기 발생 클럭 신호의 유효 주파수는 상기 제 1 클럭 신호와 상기 제 2 클럭 신호와, 그리고 상기 모
드 신호에 근거를 두고 있다. 위상 고정 루프는 제 1 클럭 신호를 제공하도록 구성된 제 1 출력과, 그리고 제 2
클럭 신호를 제공하도록 구성된 제 2 출력을 포함한다.
본 발명의 또 다른 실시형태에 따르면, 제 1 주파수에서 직각위상 클럭 신호들을 수신하는 단계와, 모드 신호를[0030]
수신하는 단계와, 그리고 발생 클럭 신호를 제공하는 단계를 포함하는 방법이 제공되고, 상기 발생 클럭 신호의
유효 주파수는 상기 직각위상 클럭 신호들과 상기 모드 신호에 근거를 두고 있다.
도 4를 참조하면, 본 발명의 다양한 실시형태에 따라 구성되는 두 개의 클럭 발생기들(404 및 406)을 포함하는[0031]
예시적인 프로세서 시스템(400)이 도시된다. 클럭 발생기들(404 및 406)은, 예를 들어, 수정 발진기(crystal
oscillator)로부터 기준 클럭 신호를 수신하는 위상 고정 루프(PLL)(402)로부터 직각위상 클럭 신호들을 수신한
다. 클럭 발생기들(404 및 406)은 직각위상 클럭 신호들의 각각의 클럭 에지에 응답하여 상승(혹은 하강)할 수
있는 클럭 신호들을 발생시키도록 구성된다. 아래에서 더 상세히 설명되는 바와 같이, 클럭 발생기들(404 및
406)은, PLL(402)의 입력 및 피드백 분할기를 변경시킴 없이, 발생기들(404 및 406)로부터 제공되는 클럭 신호
들의 주파수의 수정을 용이하게 한다. 이러한 방식에서, 주파수 변경에서의 PLL(402)을 재고정시키는 것과 관련
된 대기시간을 실질적으로 피할 수 있다. 더욱이, 발생기들(404 및 406)에 의해 제공되는 클럭 신호들의 주파수
는 상대적으로 효율적인 방식으로 독립적으로 변경될 수 있다. 적어도 일 실시예에서, 클럭 신호의 주파수가 변
경될 때, 주파수는 발생될 수 있는 유동성 노이즈를 감소시키기 위해 점진적으로 증가되어 변경된다. 단지 두
개의 클럭 발생기들만이 도 4에 도시되었지만, 이해해야만 하는 것으로, 임의 개수의 클럭 발생기들(예를 들어,
각각의 클럭 도메인에 대해 하나)이 본 발명의 개시되는 실시예들 중 하나 혹은 그 이상에 따라 구성되는 시스
템에서 사용될 수 있다.
도시된 바와 같이, 발생기들(404)은 발생 클럭 신호(GEN_CLK1)를 CPU(408)에 제공한다. 마찬가지로, 발생기들[0032]
(406)은 발생 클럭 신호(GEN_CLK2)를 CPU(410)에 제공한다. 발생기들(404 및 406)은 파워 관리 모듈(예를
들어, 파워 관리 상태 제어기)(412)에 연결되고, 상기 파워 관리 모듈(412)은 순차 로직 회로(도 4에서는 미도
시)에 정보를 제공하고, 순차 로직 회로(예를 들어, 클럭 상태 머신)는 이러한 정보를 사용하여 발생기들(404
및 406)에 각각의 (인에이블 혹은 모드 비트의) 패턴을 제공하고, 발생기들(404 및 406)은 이것을 사용하여, 요
구된 주파수에서의 각각의 발생 클럭 신호들을 발생시킨다. 이해해야만 하는 것으로, 발생 클럭 신호들의 주파
수들은, 파워 관리 이벤트와는 다른 이벤트에 응답하여, 본 명세서에서 개시되는 다양한 기술에 따라, 변경될
수 있다. 또한 이해해야만 하는 것으로, 본 명세서에서 개시되는 것이 발생기들(404 및 406)과 관련하여 직각위
상 클럭 신호들을 사용하는 것에 초점이 맞추어져 있지만, 본 명세서에서 설명되는 기술은, 요구된 주파수들을
갖는 발생 클럭 신호들을 제공하도록 확립된 위상 관계를 갖는 복수의 클럭 신호들을 사용하는 클럭 발생기들까
지 광범위하게 확장될 수 있다. 예를 들어, 점진적 45도 위상 관계(즉, 0도에서 제 1 클럭 신호, 45도에서 제 2
클럭 신호, 90도에서 제 3 클럭 신호, 그리고 135도에서 제 4 클럭 신호)를 갖는 네 개의 클럭 신호들이 각각의
- 6 -
공개특허 10-2010-0037576
클럭 싸이클에 대해 여덟 개의 클럭 에지를 제공하기 위해 사용될 수 있다.
도 5를 참조하면, 발생 클럭 신호들(GCLKO, GCLKl, NCLK, 및 NCLK2X)을 복수의 프로세서 서브시스템(506, 508,[0033]
510, 및 512)에 제공하기 위해 단일 PLL(502)를 이용하는 클럭 발생기 시스템을 사용하는 프로세서 시스템
(500)이 예시된다. 도 5에서, 프로세서 서브시스템(506, 508, 510, 및 512)은 각각 제 1 프로세서 코어(코어
0), 제 2 프로세서 코어(코어 2), 노스브리지(Northbridge, NB), 및 메모리 모듈(DDR2)에 대응한다. 이해해야만
하는 것으로, 본 명세서에서 개시되는 기술은 두 개보다 많거나 혹은 적은 코어들을 포함하는 프로세서 시스템
들까지 쉽게 확장될 수 있다는 것이다. 프로세서 시스템(500)은 클럭 상태 머신(514)과 복수의 클럭 발생기들
(520, 522, 524, 및 526)을 포함하고, 이들 각각은 발생 클럭 신호들(GCLKO, GCLKl, NCLK, 및 NCLK2X)을 동일
주파수 혹은 서로 다른 주파수에서 제공하도록 본 발명의 다양한 실시예들에 따라 구성된다. 파워 관리 모듈(이
것은 노스브리지에서 구현될 수 있음) 또는 다른 서브시스템으로부터 수신된 입력에 응답하여, 클럭 상태 머신
(514)은 적절한 패턴을 클럭 발생기들(520-526) 각각에 제공한다. 전형적인 실시예에서, 클럭 상태
머신(514)은, (적절한 패턴을 각각 발생시키기 위해) 클럭 발생기들(520-526) 각각에 대해 개별 상태 머신을 포
함한다. 클럭 발생기들(520 및 522)에 패턴을 제공하는 것과 관련된 오버헤드를 감소시키기 위해, 직각위상 클
럭 싸이클 당 두 개의 인에이블 비트들이 사용될 수 있다. 이러한 경우에, 이러한 두 개의 비트들 각각은 클럭
발생기들(520 및 522) 각각의 두 개의 입력에 제공된다. 이해해야만 하는 것으로, 직각위상 클럭 싸이클 당 단
지 두 개의 인에이브 비트들만을 제공함으로써, 제공될 수 있는 발생 클럭 신호들의 주파수의 분해능이 감소된
다.
도 6을 참조하면, 8개의 플립-플롭(602), 8개의 플립-플롭(604), 8개의 플립-플롭(606), 및 8개의 플립-플롭[0034]
(608)을 포함하는 클럭 발생기(600)가 도시된다. 플립-플롭들(602-608)은, 예를 들어, 에지-트리거 D 플립-플롭
(edge-triggered D flip-flops) 혹은 플로우-쓰루 래치(flow-through latches)일 수 있다. 도 6의 클럭 발생기
(600)에서, 클럭 신호(CLK_0)의 매 8개의 프로세서 싸이클마다 플립-플롭들(602-608)의 데이터 입력에 새로운
패턴이 제공된다. 매 8개의 직각위상 클럭 싸이클마다 새로운 패턴(예를 들어, 2 비트 혹은 4 비트 패턴)을 제
공함으로써, 클럭 디바이스에 대해 요구된 주파수에 대응하는 패턴을 발생시키는 상태 머신(또는 다른 로직 회
로)의 요구된 복잡도가 감소한다. 이해해야만 하는 것으로, 애플리케이션에 따라, 상태 머신은, 만약 요구되는
경우, 각각의 직각위상 클럭 싸이클에 대해 새로운 패턴을 만들도록 설계될 수 있다. 플립-플롭(602)의 각각의
출력이 멀티플렉서(610)의 각각의 데이터 입력에 제공되고, 멀티플렉서(610)의 출력은 에지 선택 회로(622)의
제 1 데이터 입력(EN_0)에 연결된다. 마찬가지로, 플립-플롭(604)의 각각의 출력이 멀티플렉서(612)의 각각의
데이터 입력에 제공되고, 멀티플렉서(612)의 출력은 에지 선택 회로(622)의 제 2 데이터 입력(EN_90)에 연결된
다. 유사한 방식으로, 플립-플롭들(606)의 각각의 출력은 멀티플렉서(614)의 각각의 데이터 입력에 제공되고,
멀티플렉서(614)의 출력은 에지 선택 회로(622)의 제 3 데이터 입력(EN_180)에 연결된다. 마찬가지로, 플립-플
롭(608)의 각각의 출력이 멀티플렉서(616)의 각각의 데이터 입력에 제공되고, 멀티플렉서(616)의 출력은 에지
선택 회로(622)의 제 4 데이터 입력(EN_270)에 연결된다.
에지 선택 회로(622)는, 직각위상 클럭 신호들(CLK_0 및 CLK_90)에 근거하여, 제 1 입력, 제 2 입력, 제 3[0035]
입력, 및 제 4 입력에서 모드 (인에이블) 비트를 번갈아 선택하여, 발생 클럭 신호(GEN_CLK)의 주파수를 설정한
다. 예를 들어, 만약 직각위상 클럭 신호들이 2.0 GHz의 주파수에서 설정되고, 그리고 '1010'의 패턴이 각각의
직각위상 클럭 싸이클에 대해 에지 선택 회로(622)의 제 1 입력, 제 2 입력, 제 3 입력, 및 제 4 입력에 각각
인가된다고 가정하면, 4.0 GHz의 발생 클럭 신호(GEN_CLK)가 에지 선택 회로(622)의 출력에서 제공된다(도 10
참조). 또 다른 예로서, 만약 직각위상 클럭 신호들이 2.0 GHz의 주파수에서 설정되고, 그리고 '1100'의 패턴이
각각의 직각위상 클럭 싸이클에 대해 에지 선택 회로(622)의 제 1 입력, 제 2 입력, 제 3 입력, 및 제 4 입력에
각각 인가된다고 가정하면, 2.0 GHz의 발생 클럭 신호(GEN_CLK)가 에지 선택 회로(622)의 출력에서 제공된다(도
10 참조). 또 다른 예로서, 만약 직각위상 클럭 신호들이 2.0 GHz의 주파수에서 설정되고, 그리고 '1101'의 패
턴이 제 1 직각위상 클럭 싸이클에 대해 에지 선택 회로(622)의 제 1 입력, 제 2 입력, 제 3 입력, 및 제 4 입
력에 각각 인가되고, '1011'의 패턴이 제 2 직각위상 클럭 싸이클에 대해 에지 선택 회로(622)의 제 1 입력, 제
2 입력, 제 3 입력, 및 제 4 입력에 각각 인가되고, 그리고 '0110'의 패턴이 제 3 직각위상 클럭 싸이클에 대해
에지 선택 회로(622)의 제 1 입력, 제 2 입력, 제 3 입력, 및 제 4 입력에 각각 인가된다고 가정하면, 2.667
GHz의 발생 클럭 신호(GEN_CLK)가 에지 선택 회로(622)의 출력에서 제공된다(도 10 참조). 0.5, 0.75, 1,
1.25, 1.5, 1.75, 2, 및 2.25의 분할기 값에 대한 예시적 패턴이 2.0 GHz의 주파수를 갖는 직각위상 클럭 신호
들에 대해 아래의 표 1에서 나열된다.
- 7 -
공개특허 10-2010-0037576
표 1
[0036]
2.5, 2.75, 3, 및 3.25의 분할기 값에 대한 예시적 패턴이 2.0 GHz의 주파수를 갖는 직각위상 클럭 신호들에 대[0037]
해 아래의 표 2에서 나열된다.
- 8 -
공개특허 10-2010-0037576
표 2
[0038]
3.5, 3.75 및 4의 분할기 값에 대한 예시적 패턴이 2.0 GHz의 주파수를 갖는 직각위상 클럭 신호들에 대해 아래[0039]
의 표 3에서 나열된다.
- 9 -
공개특허 10-2010-0037576
표 3
[0040]
표 1 내지 표 3에서, 패턴 길이는 직각위상 클럭 위상들에서 측정된 반복 클럭 파형의 길이이다. 예를 들어, 2[0041]
GHz의 클럭 신호를 발생시키기 위해, 길이가 4이고 값이 "1100"인 패턴이 각각의 직각위상 클럭 싸이클에서 제
공된다. 또 다른 예로서, 1.333 GHz의 클럭 신호를 발생시키기 위해, 길이가 6이고 값이 "111000"인 패턴이 세
개의 직각위상 클럭 싸이클을 통해 두 번 반복된다.
도 8을 참조하면, 에지 선택 회로(622)(클럭 발생기)가 더 상세히 도시된다. 이러한 회로(622)는 플립-플롭[0042]
(804), 플립-플롭(806), 플립-플롭(808), 및 플립-플롭(810)을 포함한다. 플립-플롭들(804-810)은, 예를 들어,
에지-트리거 D 플립-플롭이거나 또는 플로우-쓰루 래치일 수 있다. 여러 패턴이 도 6의 플립-플롭들(602-608)을
통해 플립-플롭(804-810)의 각각의 데이터 입력에 제공될 수 있다. 대안적으로, 패턴들은 플립-플롭(804-810)의
데이터 입력에 직접 제공될 수 있다. 플립-플롭(804 및 806)의 클럭 입력은, 인버터(802)에 의해 제공된 반전된
CLK_0 신호를 수신한다. 플립-플롭(804)의 출력은 멀티플렉서(812)의 제 1 데이터 입력(0)에 연결되고, 그리고
플립-플롭(806)의 출력은 멀티플렉서(812)의 제 2 데이터 입력(1)에 연결된다. 마찬가지로, 플립-플롭(808)의
출력은 멀티플렉서(812)의 제 3 데이터 입력(2)에 연결되고, 그리고 플립-플롭(810)의 출력은 멀티플렉서(812)
의 제 4 데이터 입력(3)에 연결된다. 멀티플렉서(812)는 직각위상 클럭 신호들(CLK_0 및 CLK_90)의 에지에 근거
하여, 멀티플렉서(812)의 제 1 입력, 제 2 입력, 제 3 입력, 및 제 4 입력 각각에서 인에이블 비트를 번갈아 선
택하여, 발생 클럭 신호(GEN_CLK)의 주파수를 설정한다.
에지 선택 회로(622)는 각각의 직각위상 클럭 싸이클(네 개의 클럭 에지를 포함함)에 대해 병렬로 네 개의 비트[0043]
를 판독하고, 직렬로 이들을 발생 클럭 신호(GEN_CLK)로서 출력한다. 플립-플롭들(804-810)의 데이터 입력은 4-
비트 패턴 레지스터를 형성한다. 플립-플롭들(804-810)의 출력은 4:1 멀티플렉서(812)의 데이터 입력을 공급한
다. 직각위상 클럭 신호들(CLK_0 및 CLK_90)은 멀티플렉서(812)의 각각의 선택 입력을 공급하고, 멀티플렉서
(812)는 각각의 직각위상 클럭 싸이클에 대해 적절한 패턴을 선택한다. 각각의 플립-플롭(804-810)의 출력이 멀
티플렉서(812)의 데이터 입력들 중 각각 하나에, 데이터 입력들이 선택되기 이전에, 설정되기 때문에, 회로
(622)의 클럭-대-출력 지연은 플립-플롭들(804-810)의 지연에 대해 실질적으로 영향을 받지 않고, 멀티플렉서
(812)의 선택-대-출력 지연에 실질적으로 영향을 받는다. 패턴 레지스터들이, 직각위상 클럭 신호들의 주파수의
팔분의일의 주파수에서 동작하는 클럭 도메인에 의해 제공될 때, 패턴 레지스터 비트들을 발생시키는 로직은 간
- 10 -
공개특허 10-2010-0037576
략화될 수 있다. 일 실시예에서, 외부 로직(예를 들어, 상태 머신)은 한번에 패턴 레지스터 비트에 32비트, 즉
8개의 직각위상 클럭 싸이클 각각에 대해 4비트를 제공한다. 8로 나누어진 클럭(DIV8_CLK)을 발생시키는 3-비트
카운터(620)(도 6 참조)가, 각각의 직각위상 클럭 싸이클에 대해 어떤 네 개의 패턴 비트들이 사용되야 하는지
를 선택하기 위해 사용된다.
본 발명의 또 다른 실시형태에 따르면, 펄스 제거 기술이 발생 클럭 신호의 주파수를 조정하기 위해 사용될 수[0044]
있다. 클럭 스트림으로부터 펄스들을 제거함으로써, CPU와 같은 정적 클럭 로직 회로를 클럭킹하는데 사용될 수
있는 유효 주파수를 갖는 발생 클럭 신호가 제공될 수 있다. 펄스 제거 기술의 일 실시형태에 따르면, 예를 들
어 P 및 C 파워 관리 상태 각각에 대해 클럭 신호가 어떻게 수정되어야하는지를 식별하기 위해, 분할기
ID(divider identification, DID)와 주파수 ID(frequency identification, FID)가 사용될 수 있다.
전형적으로, DID는 2의 거듭제곱 분열에 대응하고, FID는 최대 펄스 개수로부터 얼마나 많은 펄스들이 각각의
펄스 트레인 내에 남아 있어야 하는지를 표시한다. 이러한 실시예에서, 유효 주파수는 다음과 같다.
fe = (fq/DID)*(FID/Pmax)[0045]
여기서, fe는 유효 주파수이고, fq는 직각위상 클럭 주파수, 그리고 Pmax는 직각위상 클럭 주파수에 대한 최대 펄[0046]
스 개수이다. 예를 들어, 만약 직각위상 클럭 주파수가 2.2 GHz라면, 최대 펄스 개수는 22로 설정된다. 600 MHz
의 유효 주파수는, DID를 2에 설정하고, FID를 12에 설정함(fe=(2.2GHz/2)*(12/22)=600MHz)으로써 달성될 수 있
다.
2.0 GHz의 직각위상 클럭 주파수에 대해 서로 다른 FID 값 및 DID 값에 대한 예시적 유효 주파수가 아래의 표 4[0047]
에서 설명된다.
표 4
[0048]
표 4에 대해, 최대 펄스 개수는 20으로 설정된다. 2.0 GHz 직각위상 클럭 신호로부터 1.5 GHz의 발생 클럭 신호[0049]
를 제공하기 위해, DID는 1로 설정될 수 있고, FID는 15로 설정될 수 있는데(1.5GHz=(2.0GHz/l)*(15/20)), 이
것은 2.0 GHz 직각위상 클럭 신호의 매 20개의 펄스들로부터 5개의 펄스들을 스킵핑하는 것에 대응한다. 표 1을
참조하면, 2.0 GHz 클럭 신호가 각각의 직각위상 클럭 싸이클(즉, 네 개의 클럭 에지들 각각)에 대해 "1100"의
패턴(도 10 참조)을 사용하여 발생될 수 있다. 20개의 직각위상 클럭 싸이클로부터 1.5 GHz 클럭 신호를 발생시
키기 위해, 20개의 펄스들 중 5개가 다음과 같은 연속적 직각위상 클럭 싸이클에 대해 아래의 패턴을 사용하여
제거될 수 있다. 즉, 제 1 싸이클에 대해서는 "1100"; 제 2 싸이클에 대해서는 "1100"; 제 3 싸이클에 대해서는
"1100"; 제 4 싸이클에 대해서는 "0000"; 제 5 싸이클에 대해서는 "1100"; 제 6 싸이클에 대해서는 "1100"; 제
7 싸이클에 대해서는 "1100"; 제 8 싸이클에 대해서는 "0000"; 제 9 싸이클에 대해서는 "1100"; 제 10 싸이클에
대해서는 "1100"; 제 11 싸이클에 대해서는 "1100"; 제 12 싸이클에 대해서는 "0000"; 제 13 싸이클에 대해서는
"1100"; 제 14 싸이클에 대해서는 "1100"; 제 15 싸이클에 대해서는 "1100"; 제 16 싸이클에 대해서는 "0000";
제 17 싸이클에 대해서는 "1100"; 제 18 싸이클에 대해서는 "1100"; 제 19 싸이클에 대해서는 "1100"; 제 20
싸이클에 대해서는 "0000". 유의해야만 하는 것으로, 제 4 싸이클, 제 8 싸이클, 제 12 싸이클, 제 16 싸이클,
및 제 20 싸이클에서 패턴은 이러한 싸이클 내의 펄스들이 클럭 스트림으로부터 제거되도록 한다. 이해해야만
하는 것으로, 동일한 유효 주파수가, 표시된 싸이클이 아닌, 다른 싸이클로부터 펄스들을 제거함으로써 달성될
수 있다. 이러한 패턴은, 예를 들어, 상태 머신에 의해 발생될 수 있다.
- 11 -
공개특허 10-2010-0037576
도 11을 참조하면, 발생 클럭 신호를 제공하기 위한 프로세스(1100)가 도시된다. 블럭(1102)에서, 프로세스[0050]
(1100)는, 예를 들어, 프로세싱 시스템(400)의 파워 공급시 개시된다. 다음으로, 블럭(1104)에서, 기준 클럭 신
호가 프로세싱 시스템(400)의 PLL(402)에 의해 수신된다. 그 다음에, 블럭(1106)에서, 기준 클럭 신호에 응답하
여, PLL(402)이 프로세싱 시스템(400)의 하나 또는 그 이상의 클럭 발생기들(404 및 406)에 직각위상 클럭 신호
들을 제공한다. 또한, 블럭(1106)에서, 각각의 클럭 상태 머신(도 4에서 미도시)은, 클럭 발생기(404 및 406)
각각에 대해 선택된 각각의 주파수에 근거하여, 적절한 각각의 모드 신호(인에이블 혹은 모드 비트)를 클럭 발
생기(404 및 406)에 제공한다. 그 다음에, 블럭(1108)에서, 클럭 발생기(404 및 406)가 각각의 모드 신호와 직
각위상 클럭 신호를 수신한다.
다음으로, 블럭(1110)에서, 클럭 발생기(404 및 406)가 각각의 클럭 로직 회로(여기서는 CPU(408 및 410))에 각[0051]
각의 발생 클럭 신호들을 제공하며, 여기서 클럭 로직 회로는 정적 클럭 로직 회로이다. 그 다음에, 결정 블럭
(1112)에서, 각각의 클럭 상태 머신은, 파워 관리 모듈(412)이 파워 상태 변경이 요구됨을 표시하는지 여부를
결정한다. 만약 파워 상태 변경이 블럭(1112)에서 표시되지 않는다면, 블럭(1112)으로 다시 들어가도록 제어된
다. 파워 상태 변경이 블럭(1112)에서 표시되는 경우, 결정 블럭(114)으로 이동하도록 제어되고, 여기서 상태
머신은 프로세서 시스템(400)의 파워가 차단되어야 하는지 여부를 결정한다. 만약 파워 차단이 블럭(1114)에서
표시된다면, 블럭(1118)으로 이동하도록 제어되고, 여기서 프로세스(1100)는 종료된다. 이와는 달리, 파워 차단
이 블럭(1114)에서 표시되지 않는다면, 블럭(1116)으로 이동하도록 제어되고, 여기서 상태 머신은 파워 관리 모
듈(412)에 의해 제공된 정보에 근거하여 각각의 모드 신호를 수정한다.
프로세싱 시스템에서, 서로 다른 서브시스템들이 서로 다른 주파수에서 동작하는 것이 일반적이다. 예를 들어,[0052]
DDR(Double Data Rate) 메모리 모듈은 예를 들어, 수 개의 설정 주파수, 예를 들어 100 MHz의 배수에서 동작하
도록 설계될 수 있다. 전형적인 프로세싱 시스템에서, CPU 코어와 관련된 PLL로부터 서로 다른 주파수를 획득하
기 위해서는, 일반적으로 정수(예를 들어, 1, 2, 3 등) 분할기 혹은 정수 0.5(예를 들어, 1.5, 2.5, 등) 분할기
가 필요하다. 이러한 경우에, DDR 주파수는 최대 CPU 코어 주파수에 따라 다르기 때문에, DDR 주파수는 이상적
인 주파수가 아닐 수 있지만, 공칭 차이값은 일반적으로 이상적 주파수로부터의 10%와 동일하거나 혹은 이보다
더 작고, 이것은 대부분의 애플리케이션에 대해 만족스러운 값이다.
예를 들어, PLL이 2.3 GHz에서 직각위상 클럭 신호들을 제공하고, CPU가 초기에 2.3 GHz에서 동작하고 있다고[0053]
가정하면(즉, DID가 1로 설정되고, FID가 23으로 설정된다면), 파워 관리 상태 변경은 700 MHz 주파수가 CPU에
대해 요구됨을 표시한다. 이러한 경우에, CPU와 관련된 클럭 발생기는 DID=2 및 FID=14에 대응하는 패턴을 (관
련 상태 머신으로부터) 수신한다. 유사하게, 200 MHz 주파수를 가진 디폴트 노스브리지 클럭 신호가 2.3 GHz 클
럭 신호로부터 얻어질 수 있는데, 이것은 11.5로 나눔에 대응하는 관련 클럭 발생기에 패턴을 제공함으로써 얻
어질 수 있다. 더욱이, 383 MHz 클럭 신호는 메모리 모듈(예를 들어, DDR2-800 메모리 모듈)에 대한 2.3 GHz 클
럭 신호로부터 얻어질 수 있는데, 이것은 관련 클럭 발생기로 하여금 6으로 나눔을 실행하도록 하는 패턴을 제
공함으로써 얻어질 수 있다. 클럭 신호가 이상적인 400 MHz 클럭 신호는 아니지만, 앞서 설명된 바와 같이, 클
럭 신호는 요구된 값의 10% 내에 있다.
아래에서 설명되는 표 5는, 본 명세서에서 개시되는 기술을 사용하여 다수의 서로 다른 직각위상 클럭 신호 주[0054]
파수들(800 내지 3200 MHz)로부터 얻을 수 있는 다수의 예시적 주파수를 나타낸다.
- 12 -
공개특허 10-2010-0037576
표 5
[0055]
표 5에서, 목표 DDR 주파수는 400 MHz이다. 표 내의 데이터를 검토함으로써 알 수 있는 바와 같이, NCLK 주파수[0056]
는 360 MHz 내지 400 MHz 사이에서 변하고, 그리고 NCLK2x 주파수는 720 MHz 내지 800 MHz 사이에서 변한다.
적어도 하나의 예시적 실시예가 앞서 상세히 설명되었지만, 이해해야만 하는 것으로 이러한 실시예의 많은 변형[0057]
이 존재할 수 있다. 이해해야만 하는 것으로, 이러한 예시적 실시예 혹은 예시적 실시예들은 단지 예시적인 것
으로서 본 발명의 범위, 응용가능성, 혹은 구성을 한정하는 것이 아니다. 오히려, 앞서의 상세한 설명은 본 발
명의 기술분야에서 숙련된 자들에게 이러한 예시적 실시예 혹은 예시적 실시예들을 구현시 적절한 로드 맵을 제
공할 것이다. 이해해야만 하는 것으로, 첨부되는 특허청구범위에서 설정된 본 발명 및 그 법적 등가물의 범위를
벗어남이 없이 본 발명의 구성요소의 기능 및 구성에서 다양한 변형이 이루어질 수 있다.
도면의 간단한 설명
도 1은 종래의 위상 고정 루프(PLL)의 전기적 블럭도이다.[0013]
도 2는 단일 PLL을 사용하는 종래의 프로세서 시스템의 전기적 블럭도이다.[0014]
도 3은 복수의 PLL들을 사용하는 종래의 프로세서 시스템의 전기적 블럭도이다.[0015]
도 4는 본 발명의 다양한 실시예들에 따라 구성되는 복수의 클럭 발생기들과 함께 단일의 PLL을 사용하는 프로[0016]
세서 시스템의 전기적 블럭도이다.
도 5는 본 발명의 다양한 실시형태에 따라 구성되는 클럭 상태 머신 및 복수의 클럭 발생기들을 포함하는 클럭[0017]
발생기 시스템을 사용하는 프로세서 시스템의 전기적 블럭도이다.
- 13 -
공개특허 10-2010-0037576
도 6은 본 발명의 실시예에 따라 구성되는 예시적 클럭 발생기의 전기적 블럭도이다.[0018]
도 7은 기준 클럭 신호(REFCLK)로부터 발생되어 도 6의 클럭 발생기의 각각의 클럭 입력에 제공되는 예시적 직[0019]
각위상 클럭 신호(quadrature clock signal)들(CLK_0 및 CLK_90)의 신호도이다.
도 8은 도 7에 도시된 직각위상 클럭 신호들(CLK_0 및 CLK_90)을 사용하는 예시적 클럭 발생기(에지 선택 회[0020]
로)의 전기적 블럭도이다.
도 9는 도 6의 클럭 발생기와 관련된 다양한 신호들의 예시적 신호도이다.[0021]
도 10은 도 6의 클럭 발생기의 클럭 입력들에 제공되는 직각위상 클럭 신호들(CLK_0 및 CLK_90)과, 그리고 도 6[0022]
의 클럭 발생기의 출력에서 제공되는 예시적인 세 개의 발생 클럭 신호들(GEN_CLK)의 예시적 신호도이다.
도 11은 직각위상 클럭 신호들 및 모드 신호에 응답하여, 발생 클럭 신호를 제공하기 위한 예시적 프로세서의[0023]
흐름도이다.
도면
도면1
- 14 -
공개특허 10-2010-0037576
도면2
도면3
- 15 -
공개특허 10-2010-0037576
도면4
- 16 -
공개특허 10-2010-0037576
도면5
- 17 -
공개특허 10-2010-0037576
도면6
도면7
- 18 -
공개특허 10-2010-0037576
도면8
도면9
- 19 -
공개특허 10-2010-0037576
도면10
- 20 -
공개특허 10-2010-0037576
도면11
- 21 -
공개특허 10-2010-0037576

+ Recent posts