KR20020063788A - 반도체 장치 - Google Patents
반도체 장치 Download PDFInfo
- Publication number
- KR20020063788A KR20020063788A KR1020010049466A KR20010049466A KR20020063788A KR 20020063788 A KR20020063788 A KR 20020063788A KR 1020010049466 A KR1020010049466 A KR 1020010049466A KR 20010049466 A KR20010049466 A KR 20010049466A KR 20020063788 A KR20020063788 A KR 20020063788A
- Authority
- KR
- South Korea
- Prior art keywords
- circuit
- input
- power
- logic circuit
- circuit block
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/0008—Arrangements for reducing power consumption
- H03K19/0016—Arrangements for reducing power consumption by using a control or a clock signal, e.g. in order to apply power supply
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/1733—Controllable logic circuits
- H03K19/1735—Controllable logic circuits by wiring, e.g. uncommitted logic arrays
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Power Sources (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
가능한 설계 공정수로, 확장성이 높으며 저전력인 시스템 LSI를 구축할 수 있는 예측형 전력 제어 기능이 있는 반도체 장치를 제공한다. 예측 회로 P와 전력 상태 제어 회로 D로 구성되는 예측형 전원 차단 회로를 기능 논리 회로 블럭 K에 부가한다. 예측 회로 P는 회로 블럭 K에 대한 입력 I의 정보에 기초하여 회로 블럭 K의 전력 상태를 회로 D에 의해 제어한다. 예를 들면, 전력 상태 제어 회로 D는 입력이 일정 시간 이상 없는 경우, 회로 블럭 K의 전력 상태를 저전력 상태로 이행시킨다.
예측 회로 P와 전력 상태 제어 회로 D가 부가된 회로 블럭 K가 복수 접속되어 구축되는 시스템 LSI는 각 회로 블럭 K가 시스템 전체를 관리하는 연산 장치와는 독립적으로, 입력 I의 상태에 따라 자립 분산적으로 전력 상태가 작은 상태로 이행할 수 있다.
Description
본 발명은 저전력 시스템 LSI 등의 반도체 장치에 관한 것으로, 특히 다종다용한 IP를 온 칩으로 한 경우, 자립 분산적으로 저전력화를 도모하는 시스템 LSI에 관한 것이다. 또, IP는 지적 재산(INTELLECTUAL PROPERTY)의 약어로서, 최근 LSI 분야에서 종합된 기능을 갖고, 유통 가능한 형태로 한 회로 블럭 또는 회로 모듈을 IP라 한다.
"DESIGN CHALLENGES OF TECHNOLOGY SCALING", IEEE MICRO, VOL. 19, NO. 4, PP. 23-29, 1999(이하, 종래예 1이라 함)에 기재된 바와 같이 마이크로 프로세서 등의 칩의 소비 전력은 해마다 증가하고 있으며, 2000년에는 100W를 넘는 것도 많이 시판된다고 예상되고 있다. 또한, 동일하게 종래예 1에 기재된 바와 같이 소비 전력 중에서 누설 전류에 의한 전력 소비도 제조 프로세스의 미세화에 수반되어 지수 함수적으로 증가하고 있다. 특히, 서브 임계 누설 전류의 증가가 현저하다.
또한, 상기 서브 임계 누설 전류로서는 IDENTIFYING DEFECTS IN DEEP-SUBMICRON CMOS ICS", IEEE SPECTRUM, PP. 66-71, SEPTEMBER, 1996(이하, 종래예 2라 함)에 기재된 바와 같이 제조 프로세스의 미세화에 수반되어 게이트 누설 전류나 GIDL(GATE-INDUCED DRAIN LEAKAGE) 전류 등의 접합 누설 전류도 증대하고 있다.
상기 동작 시 전력 중에서 부하의 충/방전에 의한 전력 PAC는 신호 진폭과 전원 전압이 일치하는 일반적인 경우에서는 종래예 1에서 기재된 바와 같이 (동작 주파수 f)×(부하 용량 C)×(전원 전압 V)×(전원 전압 V)에 비례하기 때문에, 종래는 전원 전압을 저전압화하여 대처하고 있다.
또한, 상기 서브 임계 누설 전류에 의한 전력 소비 PSL은 "SUBTHRESHOLD-CURRENT REDUCTION CIRCUITS FOR MULTI-GIGA BIT DRAMS", SYMPOSIUM ON VLSI CIRCUITS DIGEST OF TECHNICAL PAPERS, PP. 45-46, MAY 1993(이하, 종래예 3이라 함)에서 기재된 바와 같이 전원 라인과 회로 사이에 전원 스위치를 삽입하고, 회로가 대기 중에 그 전원 스위치를 오프 상태로 하고, 대기 시의 서브 임계 누설 전류에 의한 전력 소비를 삭감하는 전원 스위치 방식이 제안되고 있다.
또한, "50% ACTIVE-POWER SAVING WITHOUT SPEED DEGRADATION USING STANDBY POWER REDUCTION(SPR) CIRCUIT", ISSCC DIGEST OF TECHNICAL PAPERS, PP. 318-319, 1995(이하, 종래예 4라 함)에서 기재된 바와 같이 회로를 구성하고 있는 MOS 트랜지스터의 기판 단자의 전압을 동작 시와 대기 시로 전환하고, MOS 트랜지스터의 임계치 전압을 동작 시와 대기 시로 전환하여 서브 임계 누설 전류를 대기 시에 삭감하는 기판 바이어스 제어 방식이 제안되고 있다.
또한, 상기 게이트 누설 전류에 의한 전력 소비 PGL은 "SUPPRESSION OF STAND-BY TUNNEL CURRENT IN ULTRA-THIN GATE OXIDE MOSFETS BY DUAL OXIDE THICKNESS MTCMOS(DOT-MTCMOS)", EXTENDED ABSTRACT OF THE 1999 INTERNATIONAL CONFERENCE ON SOLID STATE DEVICES AND MATERIALS, PP. 264-265, 1999(이하, 종래예 5라 함)에 기재된 바와 같이 얇은 산화막의 MOS 트랜지스터로 구성되어 있는 회로와, 전원 라인 사이에 두꺼운 산화막의 PMOS 트랜지스터를 삽입하여 회로가 대기 중에 그 전원 스위치를 오프 상태로 하고, 대기 시의 게이트 누설 전류에 의한 전력 소비를 삭감하는 방식이 제안되고 있다.
칩에 요구되는 기능의 증가와 함께, 칩에 집적되는 MOS 트랜지스터(이하, MOST라 함)의 수나 동작 주파수도 해마다 증가하고 있다. 이와 함께 부하의 충/방전에 의한 전력 PAC도 증가하고 있다.
이 전력 PAC의 삭감 기술로서 상기한 종래예 1에 의한 방법이 있지만, 전력 PAC의 증가 경향에 대하여 완전하게 대응할 수 없다. 왜냐하면, 일반적으로 저전압화하면 전력 PAC를 저감할 수 있지만, 그 때에 칩의 동작 속도를 유지 또는 향상시키기 위해서는 칩을 구성하고 있는 MOST의 임계치 전압을 낮게 설정하거나, MOST의 게이트 산화막 두께를 박막화할 필요가 있지만, 이들에 의해 서브 임계 누설 전류에 의한 전력 소비 PSL이나 게이트 누설 전류에 의한 전력 소비 PGL이 지수함수적으로 증가하기 때문이다.
상기 과제가 있지만, 부하의 충/방전에 의한 전력 PAC의 삭감에는 종래예 1에 의한 방법이 가장 효과적이고, 널리 이용되고 있다. 그러나, 상기 이유에 의해 종래예 1 및 종래예 2에 기재된 바와 같이 상기 전력 소비 PSL이나 PGL은 해마다 증가하고 있다.
상기 전력 소비 PSL과 PGL 증가의 과제에 대해서는 종래예 3 내지 종래예 4에 의한 방법이 제안되고 있다. 그러나, 이들 방법에서는 칩 대기 시의 상기 전력 소비 PSL이나 PGL은 삭감할 수 있지만, 동작 시의 상기 전력 소비 PSL이나 PGL은 삭감할 수 없다. 따라서, 서브 임계 누설 전류나 게이트 누설 전류에 의한 전력 소비 PSL, PGL이 부하의 충/방전에 의한 전력 PAC에 대하여 무시할 수 있는 양이면, 상기 전력 PAC가 영에 가까워지는 대기 시에만 상기 전력 소비 PSL이나 PGL을삭감하면 좋다. 이 경우, 종래예 3 내지 종래예 5의 방법이 유효하다. 그러나, 상기 누설 전류에 의한 전력 소비 PSL이나 PGL이 상기 충/방전에 의한 부하의 전력 PAC에 대하여 무시할 수 없을 정도로 큰 경우에는 상기 전력 소비 PSL이나 PGL이 동작 시의 칩의 소비 전력에 큰 영향을 주게 되고, 종래예 3 내지 종래예 5의 방법을 이용하여도 소비 전류를 삭감할 수 없다.
상기한 사실에 의해 PAC+PSL+PGL로 나타나는 칩 소비 전력은 해마다 증가하고 있다.
또한, 장래의 시스템 LSI의 설계에 있어서는 각종 IP를 이용하여, 이를 조합하여 시스템 LSI를 설계한다. 이 경우, 각각의 IP 그 자체에는 설계자는 출입하지 않고 설계할 수 있는 것이 바람직하다. 또한, 미세화의 진전에 따라 일정한 칩 면적, 예를 들면 8㎜□(8×8㎟)의 칩에 탑재할 수 있는 IP 수는 계속 증가하게 되며, 시스템이 하나의 칩에 확실하게 실린다. 이 때, 설계자는 시스템 전체의 거동을 파악하여 대처하는 것은 매우 곤란하다. 따라서, 하나하나의 모듈이 자립 분산적으로, 또한 주위와 대응하면서 동작하는 구조가 필요하게 된다. 또한, 특정 부분만 다른 설계 자산과 설계 도중에 바꾸거나, 또는 설계 후에 임의의 회로 블럭의 사양이 달라서 그 부분만을 교체하는 것이 필요하게 된다.
그래서, 본 발명의 목적은 다종다용한 IP를 온 칩으로 한 경우, 자립 분산적으로 저전력화를 도모할 수 있는 시스템 LSI 등의 반도체 장치를 제공하는 데 있다.
도 1은 본 발명의 제1 실시예를 나타내는 기본 구성의 블럭도.
도 2는 본 발명의 제2 실시예의 회로 구성을 나타내는 블럭도.
도 3은 본 발명의 제3 실시예의 회로 구성을 나타내는 블럭도.
도 4는 본 발명의 제4 실시예의 회로 구성을 나타내는 블럭도.
도 5는 본 발명의 제5 실시예의 회로 구성을 나타내는 블럭도.
도 6은 본 발명의 제6 실시예의 회로 구성을 나타내는 블럭도.
도 7은 본 발명의 제7 실시예의 회로 구성을 나타내는 블럭도.
도 8은 본 발명의 제8 실시예의 회로 구성을 나타내는 블럭도.
도 9는 제9 실시예를 나타내는 도면으로서, 본 발명을 적용하는 동화상 처리 장치 블럭도.
도 10은 도 9에 도시한 동화상 처리 장치 블럭의 동작도.
도 11은 본 발명의 제10 실시예의 회로 구성을 나타내는 블럭도.
도 12는 도 11에 도시한 예측 회로의 제어 방법을 나타내는 동작 플로우 도면.
도 13은 제11 실시예를 나타내는 도면으로서, 학습을 조립한 동작 플로우 도면.
도 14는 학습을 조립한 경우의 학습 빈도에 대하여 설명하기 위한 도면.
도 15는 본 발명에 이용하는 재기입 가능한 불휘발성 메모리의 배치도.
도 16은 제12 실시예를 나타내는 도면으로서, 병렬로 배치 동작시키는 프로세서에 본 발명을 적용한 경우의 전력 저감을 설명하기 위한 도면.
도 17은 제13 실시예를 나타내는 도면으로서, 본 발명을 이용한 시스템을 총괄한 설명도.
도 18은 도 2에 도시한 구성으로 데이터 입력이 없어져 전력이 큰 상태로부터 전력이 작은 상태로 이행하는 경우의 동작 플로우 도면.
도 19는 도 2에 도시한 구성으로 전력이 작은 상태로부터 데이터가 입력되어 전력이 큰 상태로 이행하는 경우의 동작 플로우 도면.
도 20은 데이터 시계열의 예를 나타내는 도면.
도 21은 도 11의 회로 구성의 변형예를 나타내는 블럭도.
도 22는 도 21에 도시한 예측 회로의 제어 방법을 나타내는 동작 플로우 도면.
〈도면의 주요 부분에 대한 부호의 설명〉
90 : 동화상 처리 회로 블럭
91 : 인터페이스 & 전체 제어부
92 : 메모리 컨트롤러
P, P1, P-1, P-2 : 예측 회로
PD : 제어 수단
D, D1, D-1, D-2 : 전력 상태 제어 회로
DCS : 판정 회로
DT : 입력 검지 회로
DTC : 입력 검출·클럭 카운트 회로
DV : 분주기
K, K1, K-1, K-2 : 논리 회로 블럭
KB : 기능 블럭
KK1∼KK3 : 예측형 전력 제어 기능이 있는 논리 회로 블럭
VD : 전원
CLK : 클럭
CP : 비교기
CT : 클럭 카운터
I, IN, INS : 입력
O, OUT, OUTS : 출력
RG : 레지스터
RGS : 설정 레지스터
RST : 리세트 신호
상기 목적을 달성하기 위해서, 본 발명에 있어서는 이하의 기술적 수단을 채택한다.
IP 또는 회로 블럭(이하, 단순히 「회로 블럭」이라 함)에 예측 회로와 전력 상태 제어 회로를 설치한다. 즉, 예측형 전원 차단, 전원 전압 변경, 또는 주파수 변경 회로를 부가하는 것이다.
이에 따라, 각각의 회로 블럭은 자립 분산적으로 저전력 동작 상태를 취할 수 있게 된다. 따라서, 일부를 교체하거나 용이하게 할 수 있는, 또한 이들을 통합한 전체 또는 부분적인 회로 블럭의 덩어리에 대하여 저전력을 목표로 한 제어를 제공할 수도 있다.
또한, 이들 저전력 상태는 학습에 따라, 그 때의 상태에 따라, 또는 그 외의 방향 설정에 따라 바꿀 수 있다. 이에 따라, 설계 가능한 공정수로, 확장성이 풍부하고, 저전력이며 고성능인 시스템 LSI 등의 반도체 장치를 실현할 수 있다.
이하, 첨부 도면을 참조하여 본 발명에 따른 반도체 장치의 적합한 실시예를 설명한다.
〈제1 실시예〉
본 발명에서의 예측형 전원 차단, 전원 전압 변경, 또는 주파수 변경 회로는 도 1에 도시한 블럭 구성예에 의해 실현한다. 또, 여기서는 기본 구성을 나타내고 있으며, 각 블럭 내의 구체적인 구성예에 따라 필요해지기도 하는 클럭 신호선, 제어 신호선 등은 생략되어 있다.
도 1에 있어서, 참조 부호 K는 논리 회로 블럭, D는 전력 상태 제어 회로이고, 이 전력 상태 제어 회로 D는 논리 회로 블럭 K와 전원 VD 사이에 삽입되고, 논리 회로 블럭 K의 전력 상태를 전력 상태 제어 회로 D 자신의 상태에 의해, 또는 논리 회로 블럭 K의 상태를 바꿔 제어한다. 이와 같이 논리 회로 블럭 K에 예측 회로 P와 전력 상태 제어 회로 D를 부가하여 구성한 회로 블럭의 단위를 후술하는 실시예에서는 예측형 전력 제어 기능이 있는 논리 회로 블럭이라 한다.
전력 상태 제어 회로 D는 예측 회로 P에 의해 제어된다. 예측 회로 P는 논리 회로 블럭 K에 대한 입력 I를 그 입력의 하나로 하고, 입력 I의 상태에 따라 전력 상태 제어 회로 D를 제어한다.
이와 같이 구성함으로써, 예측 회로 P에 의해 입력 I의 정보에 기초하여 논리 회로 블럭 K의 전력 상태를 전력 상태 제어 회로 D에 의해 제어할 수 있다. 예를 들면, 입력 I에 유효한 정보가 일정 시간 나타나지 않는 경우에는 논리 회로 블럭 K의 전력 상태로서, 보다 저전력 상태로 이행시킬 수 있다. 또한, 이것이 시스템 전체를 관리하는 어떤 연산 장치와는 독립적으로 행할 수도 있다. 전력 상태 제어 회로 D는 후에 상세히 설명하지만, 예를 들면 다음과 같은 기능을 갖고 있다.
(1) 논리 회로 블럭 K와 전원 VD를 접속하는지의 여부를 제어한다.
(2) 논리 회로 블럭 K로 공급하는 전원 전압의 값을 제어한다.
(3) 논리 회로 블럭 K로 공급하는 클럭 주파수의 값을 제어한다.
(4) 상기 (1) 내지 (3)의 조합
〈제2 실시예〉
도 2는 논리 회로 블럭 K1과 전원 VD와의 접속을 예측 회로 P1로 제어되는전력 상태 제어 회로 D1을 이용하여 행하는 경우의 실시예이다. 예측 회로 P1과 논리 회로 블럭 K1에는 클럭 CLK가 입력한다. 여기서는, 논리 회로 블럭 K1은 입력 I와 접속되어 m클럭분의 입력 정보를 일단 저장하는 레지스터 RG와, 실제 연산을 행하는 기능 블럭 KB로 나뉜다. 또, 출력 O 측에도 레지스터를 설치하는 경우도 있다.
예측 회로 P1은 클럭 CLK을 카운트하는 카운터 CT와, 전력 상태 제어 회로 D1을 제어하는 제어 수단 PD와, 입력 신호 I를 검지하여 입력이 오지 않게 되었을 때 제어 수단 PD로 신호를 출력함과 함께 카운터를 리세트하는 RST 신호를 출력하는 입력 검지 DT와, 제어 수단 PD의 출력과 클럭을 비교하여 레지스터 RG를 제어하는 비교기 CP로 구성된다. 여기서, 제어 수단 PD는 카운터 CT 및 입력 검지 DT의 양 출력의 AND를 취하여 전력 상태 제어 회로 D1을 제어한다. 또한, 카운터 CT에서는 클럭을 카운트하지만, n클럭으로 출력이 변화하여 제어 수단 PD로 전한다. 또한, 비교기 CP라도 클럭을 카운트하여, m클럭분 카운트했을 때의 제어 수단 PD의 출력에 의해 논리 회로 블럭 K1 내의 레지스터 RG를 제어한다.
논리 회로 블럭 K1과 전원 VD와의 접속을 행하는 전력 상태 제어 회로 D1은, 예를 들면 도 2에 도시한 바와 같은 p 채널형 MOST이면 좋다. 이 p 채널형 MOST을 차단하기 위해서는 게이트 신호를 소스에 접속되어 있는 전원 VD의 전압보다 같거나, 높게 하면 좋고, 도통시키기 위해서는 게이트 신호를 소스에 인가되어 있는 전원 VD의 전압보다 이 MOST의 임계치 전압 이상으로 낮게 하면 좋다.
또한, 이 때, 이 MOST의 게이트 산화막의 두께는 논리 회로 블럭 K1을 구성하는 MOST의 게이트 산화막보다 두껍게 하면, 종래예 5에서 진술한 바와 같은 논리 회로 블럭 K1에서 흐르는 게이트 누설 전류를 누를 수 있다. 또한, 이 양자의 MOST의 임계치 전압은 동일하여도 좋고, 전력 상태 제어 회로 D1 중의 MOST 쪽의 임계치 전압의 절대치를 논리 회로 블럭 K1 중의 MOST 쪽의 임계치 전압의 절대치보다 높게 하여도 좋다. 높게 하면, 보다 작은 서브 임계 전류로 할 수 있다. 이 임계치 전압의 차는 게이트 길이를 바꾸거나, 채널 영역의 불순물 농도를 바꾸는 것으로 실현할 수 있다. 양 회로 중 MOST가 동일한 임계치 전압의 경우에는 전력 상태 제어 회로 D1 중의 MOST의 게이트 전압을 소스 전압보다 높게 함으로써도 작은 서브 임계 전류를 실현할 수 있다.
본 실시예의 동작예를 도 18 및 도 19에 도시한다.
도 18은 입력 I로부터 데이터가 입력되어 기능 블럭 KB가 동작하고 있는 전력이 큰 상태로부터 데이터가 오지 않게 되었을 때 전원 VD와 기능 블럭 KB를 차단함으로써 기능 블럭 KB를 전력이 작은 상태로 하는 경우의 동작이다.
우선, 입력 I에 데이터가 오지 않게 된다(단계 S10).
그러면, 예측 회로 P1 내의 입력 검지 DT가 동작하고, 이를 검지하여 제어 수단 PD로 출력함과 함께 RST 신호에 의해 카운터 CT를 리세트한다(단계 11).
카운터 CT에서는 여기서부터 클럭을 카운트하고, 미리 정한 수인 n개에 도 달하면, 도달하였다고 하는 신호를 제어 수단 PD로 보낸다(단계 S12).
다음으로, 제어 수단 PD에서는 이 두 개의 상태, 입력 검지 DT가 데이터가 오지 않게 된 것을 검지하고, 또한 그 후 클럭이 n개 온다고 하는 카운터 CT의 판단을 받아, 전력 상태 제어 회로 D1을 차단 상태로 한다. 즉, 전원 VD와 기능 블럭 KB를 전기적으로 절연한다(단계 S13). 여기서, n은 데이터가 오지 않은 상태가 어느 정도 길게 계속되는가를 예상하는 클럭 수이다. 그 설정 방법에 대해서는 도 20에서 후술한다.
도 19는 반대로, 전원 VD와 기능 블럭 KB가 차단된 전력이 작은 상태로부터 데이터가 입력되어 기능 블럭이 동작하고, 전력이 큰 상태로 이행하는 경우의 동작이다.
우선, 입력 I에 데이터가 온다(단계 S20).
그러면, 입력 검지 DT가 동작하고, 데이터 입력을 검지하여 제어 수단 PD로 출력한다(단계 S21).
제어 수단 PD는 이를 받아, 전력 상태 제어 회로 D1을 도통 상태로 한다. 이것으로서 기능 블럭은 동작 가능한 상태로 이행을 시작한다(단계 S22).
제어 수단 PD의 출력 변화에 따라 비교기 CP에서는 클럭의 카운트를 비롯하여, 미리 정한 수인 m개에 도달하면, 논리 회로 블럭 K1 중의 레지스터 RG로 신호를 보낸다(단계 S23).
레지스터 RG에는 m클럭분의 데이터가 축적되어 있으며, 이 비교기 CP로부터의 신호를 받아, 기능 블럭 KB로 데이터를 전송하기 시작하여 기능 블럭에서는 원하는 연산이 행해진다(단계 S24). 여기서, m은 전력 상태 제어 회로 D1을 도통 상태로 하고 나서, 기능 블럭 KB가 동작 가능한 상태가 되기까지 필요한 클럭 수로서, 예를 들면 1이다.
이와 같이 하여 입력 I에 나타나는 데이터에 따라 기능 블럭 KB와 전원 VD 사이의 접속을 제어함으로써, 다른 제어 신호 없음에 자립 분산적으로 필요에 따라 전력이 작은 상태와 큰 상태를 취할 수 있다. 데이터가 항상 계속 보내는 것이 아닌 일반적인 응용에서는 저전력이 된다.
다음으로, 이 n의 설정 방법을 도 20을 이용하여 진술한다. n은 데이터 없음의 상태에서 전력 상태 제어 회로 D1을 도통시킨 채로 해 두는 클럭 수이다. 데이터는 클럭 CLK에 동기하여 전송되지만, 항상 일정한 비율로 전송되는 것이 아니고, 일반적으로 클럭에 대하여 간헐적이다. 그러나, 데이터 덩어리의 크기와 그 간격에는 특유의 값을 취하는 경우가 많다.
데이터가 오지 않는 간격에 주목하여, 어떤 명령 또는 동작 중, 데이터와 데이터의 이음매는 클럭 수가 긴 부분을 추출하면 도 20의 (a)에 데이터 시계열의 예를 나타낸 바와 같이, g1, g2, g3, g4, g5, g6이고, 그 평균값을 g클럭, 분산을 M클럭이라고 하면, g클럭 전후(g ±M클럭)이다. 예를 들면, 10클럭 전후(10 ±2클럭)이다. 물론, 데이터가 오지 않은 상태가 수 클럭뿐인 경우도 있지만, 데이터가 오지 않는 클럭 수가 많은 부분에서의 클럭 수의 분포에 주목하면 좋다. 여기서는, 그것이 10클럭 전후이다.
이 때, 이 10클럭 전후의 영역(예를 들면, 15클럭 이상의 영역)을 넘으면, 그것은 명령이 전환된 것을 의미하여, 예를 들면 200클럭은 데이터가 오지 않는다. 이러한 경우에는 도 2 및 도 18에서 설명한 n의 값을 10 또는 12로 설정하면 좋다.
이렇게 함으로써, 데이터가 오지 않게 되더라도 10 또는 12클럭은 대기하기때문에, 다음 데이터가 왔을 때 기능 블럭 KB는 동작 가능하게 되어 있을 확률이 높고, 속도의 열화가 작다. 또한, 전력 상태 제어 회로 D1을 동작시키기 위해서는 그 동작을 위해서 전력이 필요하기 때문에, 너무 미세하게 제어하면 반대로 전력이 증대한다. 따라서, 10클럭 전후 대기하는 사이에 데이터가 올 확률이 높은 것이면 전력 상태 제어 회로 D1은 도통 상태로인 것이 바람직하다. 한편, 10클럭 전후 대기하더라도 데이터가 오지 않으면, 이대로 200클럭 동안 데이터가 오지 않을 확률이 높다. 이 경우에는 클럭을 카운트하고 있던 카운터 CT가 제어 수단 PD로 설정치에 도달한 출력을 보내고, 전력 상태 제어 회로 D1을 차단 상태로 한다. 따라서, 이 200클럭 동안 동작 전류를 흘리지 않는 것은 물론이고, 누설 전류도 컷트한다.
도 20의 (b)에 도시한 다른 데이터 시계열의 예에서는 데이터 없음의 상태가 g1, g2, g3과 같이 g클럭 전후인 명령이나 연산과, r1, r2와 같이 r클럭 전후(여기서, r은 평균값으로 함)인 명령이나 연산이 있는 경우이다. 이 때는 후에도 다른 예를 설명하지만, r클럭 전후인 것을 도 2의 예측 회로 P1 내의 회로가 판단하여, 카운터 CT의 신호를 추출하는 사이클 수를 k로 바꾸는 학습 기능을 설치하면 좋다. 학습 기능의 실현 방법에는 여러가지가 있지만, 일례로서는 과거의 데이터 없음의 클럭 수를 예를 들면 10회분을 기억하고, 이 평균값이 미리 정한 평균값 g와 k의 어느 쪽에 가까운지를 대소 비교로 판단하여 설정하면 좋다. 미리 정한 카운터 CT의 신호를 추출하는 사이클 수는, 여기서 g와 r 두 개를 나타내었지만, 더 다수라도 좋다.
또, 본 실시예에서는 논리 회로 블럭 K1 내에 레지스터 RG를 통해 기능 블럭 KB로 입력 데이터가 전송되는 구성을 나타내었기 때문에, 예측 회로 P1로부터 논리 회로 블럭 K1 내의 레지스터 RG로의 데이터 전송 기동 신호를 보내는 신호선(비교기 CP로부터 레지스터 RG로의 신호선)을 설치하였지만, 기능 블럭 KB가 동작 가능한 상태가 되기까지의 속도가 클럭 주파수로부터 결정되는 동작 속도와 비교하여 충분히 짧고, 레지스터 RG를 생략할 수 있는 경우, 물론 도 1에 도시한 기본 구성이 되는 것은 분명하다.
〈제3 실시예〉
도 3에 전력이 작은 상태를 달성하는 다른 실시예를 나타낸다. 본 실시예에서는 전압을 제어한다.
도 3에 있어서, V1과 V2는 전력 상태 제어 회로 D1의 게이트에 인가하는 전압 신호선이고, 예측 회로 P1 내의 스위치에 의해 어느 하나에 선택된다. 어느 것에 언제 접속할지는 입력 I로의 데이터 입력 상황과 클럭 CLK로부터 스위치 제어 회로 PS로 결정하여 제어한다. 예를 들면, 전압 신호선 V1이 V2보다 높은 전압 신호라고 하면, 데이터가 입력하고 있을 때에는 전압 신호선 V1이 전력 상태 제어 회로 D1 내의 MOST의 게이트에 입력하도록 스위치가 선택된다. 전력 상태 제어 회로 D1 내의 MOST를 n형 MOST로 하면, 논리 회로 블럭 K1 내의 기능 블럭 KB에는 이보다 임계치 전압분만큼 낮은 전압이 인가된다.
한편, 데이터가 오지 않을 때에는 일정한 클럭 수 후, 전압 신호선 V2가 전력 상태 제어 회로 D1 내의 MOST의 게이트에 입력한다. 마찬가지로 기능 블럭 KB에는 이보다 임계치 전압분만큼 낮은 전압이 인가되게 되지만, 전압 신호선 V2는 V1 보다 낮은 전압이기 때문에, 이 기능 블럭 KB에 인가되는 전압도, 전압 신호선 V1이 전력 상태 제어 회로 D1 내의 MOST의 게이트에 입력하는 경우보다 낮은 전압이 된다. 종래예에서 설명한 바와 같이 낮은 전압에서는 부하의 충/방전에 의한 전력 PAC는 작다. 따라서, 전압 신호선 V2가 전력 상태 제어 회로 D1 내의 MOST의 게이트에 입력하는 경우가 전력이 작은 상태이다. 전압 신호선 V1로부터 V2로의 이행 및 그 제어 방법은 도 2의 실시예에 있어서, 전압 신호선 V1을 선택한 경우가 도 2의 전력 상태 제어 회로 D1의 도통 상태, 전압 신호선 V2를 선택한 경우가 도 2의 전력 상태 제어 회로 D1의 차단 상태로 다시 읽음으로써 동일한 방법으로 달성할 수 있다. 도 3의 예에 있어서, 전력 상태 제어 회로 D1 내의 MOST의 산화막 두께를 논리 회로 블럭 K1을 구성하는 산화막 두께보다 두껍게 하고, 누설 전류를 작게 할 수도 있다. 임계치의 설정 방법도 도 2와 동일한 효과가 있다. 또한, 전압 신호선 V1 또는 V2 또는 양방을 동작 모드에 따라 전압 설정을 바꾸어도 좋다. 여기서, 모드에 따라 바꾸는 것은 예를 들면, 통상 동작 모드라는 것을 설정하고, 이 경우에는 전압 신호선 V1에 1.2V를 인가하고, 전압 신호선 V2에 0.9V를 인가하지만, 저전력 모드라는 것을 설정하고, 전압 신호선 V1에 0.9V를 인가하고, 전압 신호선 V2에 0.7V를 인가하는 예이다.
〈제4 실시예〉
도 4에 전력이 작은 상태를 달성하는 또 다른 실시예를 나타낸다. 본 실시예에서는 주파수를 제어한다. 즉, 논리 회로 블럭 K1에 입력하는 클럭 CLK의 주파수를 변경한다. 그 때문에 본 실시예에서는 전력 상태 제어 회로 D1은 분주비가 바뀌는 분주기가 된다. 전원은 별도 인가된다. 본 실시예는 도 1에 도시한 기본 구성을 변형한 형이지만, 전력 상태를 바꾸는 기능 단위에서는 동일하다.
여기서는, 도 2의 전력 상태 제어 회로 D1 도통 상태가 클럭 CLK를 분주비가 작은 분주기 DV를 통한 결과를 논리 회로 블럭 K1 내의 클럭으로서 이용하는 경우이고, 도 2의 전력 상태 제어 회로 D1 차단 상태가 클럭 CLK를 분주비가 큰 분주기 DV를 통한 결과를 논리 회로 블럭 K1 내의 클럭으로서 이용하는 경우이다. 전자가 후자보다 논리 회로 블럭 K1의 클럭 주파수가 높다. 전자는 클럭 CLK의 주파수를 그대로 전하는 것도 포함한다. 종래예에서 설명한 바와 같이 부하의 충/방전에 의한 전력 PAC는 클럭 주파수에 비례한다. 따라서, 후자가 소비 전력이 작은 상태이다.
예측 회로 P1 내에는 입력 I에 데이터가 입력되었는지의 여부를 검출하고, 클럭을 카운트하여 분주기를 제어하는 입력 검출·클럭 카운트 회로 DTC와, 도 2의 실시예의 동작에서 설명한 바와 같은 클럭 수 설정을 저장해 두기 위한 설정 레지스터 RGS로 구성된다.
논리 회로 블럭 K1에 입력하는 클럭 주파수의 전환 및 제어는 상기한 도 2와의 대응 관계를 바탕으로 도 2에서의 경우와 동일하다. 즉, 도 2에서 입력 검지 DT와 제어 수단 PD로 입력 I의 데이터 유무와 그 클럭 수로부터 전력 상태 제어 회로 D1 중의 차단용 MOST의 전환을 한 바와 같이 도 4에서는 한 덩어리에 입력 검출·클럭 카운트 회로 DTC로 나타낸 부분으로 입력 I의 데이터 유무와 그 클럭 수로부터 전력 상태 제어 회로 D1 중의 분주기의 분주의 정도를 전환으로 하면 좋다.
도 4에 있어서, 논리 회로 블럭 K1에 대한 전원은 일정 전원을 이용하여도 좋고, 도 3에서 설명한 바와 같은 가변 방법이라도 좋고, 또한 도 2에 도시한 바와 같이 전원 사이에 도통/차단 동작을 할 수 있는 스위치를 설치하여도 좋다. 이에 따라, 누설 전류도 저감시킬 수 있다.
〈제5 실시예〉
도 5에서는 도 1에 도시한 기본 구성 블럭이 복수 있는 경우에, 예측 회로 P의 제어에 전단의 회로로부터 기동을 거는 방식이다. 즉, 논리 회로 블럭 K-2에서 동작이 시작되면, 다음 단의 예측 회로 P-1에 대하여 REQ 신호를 출력하고, 다음 단의 전력 상태 제어 회로 D-1에 대한 기동을 준비시킨다. 다음 단의 예측 회로 P-1은 전력 상태 제어 회로 D-1을 기동하여 다음 단의 논리 회로 블럭 K-1이 동작 가능한 상태가 되면, ACK 신호를 전단의 논리 회로 블럭 K-2로 돌려준다. 논리 회로 블럭 K-2는 이 ACK 신호를 수신하면, 다음 단의 논리 회로 블럭 K-1로 데이터 전송을 시작한다. 이와 같이 전단의 논리 회로 블럭 K-2 관련과 다음 단의 논리 회로 블럭 K-1 관련이 REQ 신호와 ACK 신호를 주고 받으면서 동작 상태를 확인하고 나서, 데이터의 수수를 행한다.
또, 도 2∼도 4에서는 논리 회로 블럭 K(여기서는 도 5에 있어서의 K-2, K-1, K를 통합하여 표현하고 있음) 내에서는 입력측에 레지스터를 두었지만, 이러한 구성에서는 출력측에 두는 것이 좋다.
이상의 설명에서 동작 가능한 상태는 도 2의 시스템으로 말하면 전력 상태제어 회로 D(D-2, D-1, D를 통합하여 표현하고 있음)가 도통한 상태이고, 도 3의 시스템으로 말하면 논리 회로 블럭 K(상기 통합한 표현)에 대해서 보다 높은 전원 전압이 인가된 상태이고, 도 4의 시스템으로 말하면 보다 높은 주파수의 클럭이 논리 회로 블럭 K(상기 통합한 표현)에 입력된 상태이다.
〈제6 실시예〉
도 6에 있어서, KK1, KK2, …, KK3은 도 2, 도 3, 도 4에 도시한 기본 구성의 단위를 나타낸 것이다. 즉, 예를 들면 KK1에는 도 2에서 도시한 예측 회로 P1, 전력 상태 제어 회로 D1, 논리 회로 블럭 K1이 포함된 예측형 전력 제어 기능이 있는 논리 회로 블럭이다. 다른 것도 동일하다. AA1 및 AA2는 이들 예측형 전력 제어 기능이 있는 논리 회로 블럭 KK1∼KK3을 포함하고 자립 분산적으로 제어할 수 있는 처리 회로이다. AA3은 예측형 전력 제어 기능이 있는 논리 회로 블럭 KK1∼ KK3을 포함하지 않은 처리 회로로서, CPU로부터의 제어 신호에 의해 제어된다.
시스템 SK는 이들 처리 회로 AA1∼AA3을 포함하여 구성되고, CPU로부터 보내진 입력 IN이 처리 회로 AA1에 입력되어 처리 회로 AA2, AA3을 통해 출력 데이터 OUTS를 얻을 수 있는 시스템 LSI이다. 또, CPU는 처리 회로 AA1∼AA3으로 구성되는 시스템 LSI와 동일한 칩 상에 있어도 좋고, 또는 다른 칩 상에 있어도 좋다.
본 실시예에서 CPU는 시스템 SK의 전체를 제어한다. 또한, 상기 입력 IN은 CPU에 입력된 데이터 또는 명령 INS를 CPU로 처리해서 보내진 데이터 또는 명령이다. CPU로부터의 제어 신호 CC는 처리 회로 AA1과 AA3에 입력되고, 처리 회로 AA2에는 입력되어 있지 않다. 이 제어 신호 CC는 처리 회로 AA1의 모든 예측형 전력제어 기능이 있는 논리 회로 블럭 KK1∼KK3에 입력되어 있어도 좋고, 처리 회로 AA1의 도에 도시한 바와 같이 예측형 전력 제어 기능이 있는 논리 회로 블럭 KK1과 KK3뿐인 것과 같이 일부에만 입력되어 있어도 좋다. 또는, 예측형 전력 제어 기능이 있는 논리 회로 블럭 KK1∼KK3의 몇 개의 그룹마다 전용 신호로 되어 있어도 좋다.
이 실시예에 있어서, 처리 회로 AA1에서는 예측형 전력 제어 기능이 있는 논리 회로 블럭 KK1∼KK3은 도 2, 도 3, 도 4에서 설명한 바와 같이 이에 입력하는 데이터 상태에 따라 전력 상태를 바꾼다. 또한, 처리 회로 AA2라도 예측형 전력 제어 기능이 있는 논리 회로 블럭 KK1∼KK3은 입력하는 데이터 상태에 의해 전력 상태를 자립 분산적으로 바꾸는 동작을 행한다. 또한, 이 실시예에서는 CPU는 제어 신호 CC를 통해 처리 회로 AA1 내의 예측형 전력 제어 기능이 있는 논리 회로 블럭 KK1∼KK3에 입력되고, 예측형 전력 제어 기능이 있는 논리 회로 블럭 KK1∼ KK3의 전력 상태도 관리하는 것에 특징이 있다. 즉, CPU로부터의 조건 중, 도 2, 도 3, 도 4에서 설명한 바와 같은 동작을 행하는 것이다.
여기서, CPU로부터의 조건은 예를 들면, 도 4의 주파수 변경에 의해 전력 상태를 제어하는 경우이면, CPU가 예측형 전력 제어 기능이 있는 논리 회로 블럭 KK1∼KK3 및 처리 회로 AA1, AA2, AA3 전체의 처리량을 보아, 낮은 주파수에는 쉽게 이행할 수 없게 하는 것이다. 이는 예를 들면, 클럭 수의 설정의 중심치를 CPU 측에서 시스템 전체의 처리량을 검지하여 결정하거나, 소프트웨어로부터의 지시에 따라 결정하도록 하면 좋다.
도 2의 전원 차단에 의해 전력 상태를 제어하는 경우이면, 마찬가지로 CPU가 전체의 처리량을 보아, 전원 차단에는 쉽게 이행할 수 없게 하는 것이며, 이는 예를 들면, 입력 데이터가 오지 않게 되고 나서 전원 차단하기까지 필요한 클럭 수를 설정할 때에 그 하한치를 CPU 측에서 시스템 전체의 처리량을 검지하여 결정하거나, 소프트웨어로부터의 지시에 따라 결정하면 좋다.
또한, 도 3의 전압을 전환 제어하는 경우이면, CPU가 마찬가지로 전체의 처리량을 보아, 낮은 전압에는 쉽게 이행할 수 없게 하는 것이며, 이는 예를 들면, 입력 데이터가 오지 않게 되고 나서 낮은 전압에 이행하기까지도 요인 클럭 수를 설정할 때에 그 하한치를 CPU 측에서 시스템 전체의 처리량을 검지하여 결정하거나, 소프트웨어로부터의 지시에 따라 결정하면 좋다.
이에 따라, 로컬에는 최적의 상태로 되어 있어도, 전체로서는 바람직한 방향에서는 없다고 하는 경우가 생기는 것을 회피할 수 있다. 또한, 설계자는 CPU에서의 제어 부분만을 저전력화를 목표로 하여 설계하면, 그보다 미세한 블럭에 대해서는 도 2, 도 3, 도 4에서 설명한 방법으로 저전력화할 수 있기 때문에, 높은 저전력화율을 올리면서 설계 효율도 올릴 수 있다.
〈제7 실시예〉
도 7은 전력 제어를 과거의 이력 또는 미리 정한 방법과 비교하면서 예측하는 실시예이다. 여기서는 CPU에 입력된 데이터 또는 명령 INS가 프로그램 카운터 PC에 오면, 프로그램 카운터 PC에서는 과거의 이력 또는 미리 정해둔 제어가 저장되어 있는 테이블 TBL을 참조하여 이 데이터 또는 명령을 해독하고, 최소의 전력으로 최대의 성능을 인출할 수 있는 패턴을 추출한다. 이 패턴에 따라, 여기서는 생략해서 나타내었지만, 회로 블럭 K1∼Km과 그 전력 제어 회로 D1∼Dm을 제어한다. 제어 방법으로서는 많은 회로 블럭으로부터 여기서 나타낸 회로 블럭을 추출하는 것, 시간적인 활성화순을 설정하는 것, 여기서 각 회로 블럭이 복수의 전력 상태를 취하는 경우에는 이것도 포함시켜 설정하는 것, 또는 테이블을 참조하고 사용하는 확률이 낮은 회로 블럭을 전력이 보다 작은 상태로 이행시키는 것 등을 포함한다.
또한, 테이블 TBL은 과거의 이력으로 갱신할 수 있다. 이 데이터는 전부 칩 상에 둘 수 있으며, 일부를 ROM으로서 칩 상에 두고, 일부를 소프트웨어로부터 RAM에 로드하여 설정할 수도 있다. 또는 재기입 가능한 불휘발성 메모리를 탑재하고, 이에 전부 또는 일부를 저장할 수도 있다. 또한, 테이블을 참조하여 해당 회로 블럭의 전력 상태를 바꾸고, 또한 이 테이블을 참조한 설정 내용을 근거로 하여 각 회로 블럭에 있어서는 도 2∼도 5에 도시한 바와 같은 동작을 행할 수도 있다. 또한, 도 6에 도시한 바와 같이 시스템 전체를 일정한 조건으로 제어하는 방법과 병용할 수도 있다.
〈제8 실시예〉
도 8은 CPU에 입력되는 명령 또는 데이터 INS 내에 전력 제어 정보를 포함하게 하는 경우의 실시예이다. 이 경우에는 명령 중에 전력 제어 정보를 포함하지만, 이 전력 제어 정보를 선행 처리하는 전력 제어 프리 디코더 PreDEC를 구비하고 있으며, 이 결과를 래치 LP를 통해 처리를 행하는 회로 블럭 IP로 보낸다.
통상의 명령 부분은 명령 버퍼 IQ에 우선 보내지고, 래치 LC를 통해 명령 디코더 ID에서 사용해야 할 회로 블럭 IP에 적합하도록 해독된다. 이 결과가 각각의 회로 블럭 IP로 입력 IN으로서 보내진다. 이 때, 이들 회로 블럭에는 이미 프리디코더 PreDEC의 결과가 보내지고 있으며, 전력 제어가 행해진다. 이에 따라, 각 회로 블럭 IP에서는 복수의 전력 상태로부터 필요한 상태가 선택된다.
이와 같이 함으로써, 복수의 회로 블럭 IP를 저전력화 관점에서 제어할 수 있고, 예를 들면, 다수 있는 회로 블럭 중, 미리 동작하는 회로 블럭만을 활성화할 수 있다. 이 방법도 도 7에서 설명한 바와 같이 지금까지의 다른 실시예와 조합하여 이용할 수 있다. 또, 도 7 및 도 8에서 명령이라고 한 경우, 라인 단위, 블럭 단위, 서브 루틴 단위 등을 생각할 수 있다.
〈제9 실시예〉
다음으로, 본 발명을 구체적인 응용에 적용한 경우의 새로운 실시예에 대하여 진술한다. 도 9는 본 발명을 적용하는 동화상 처리 회로 블럭의 예이다. 동화상 처리 회로 블럭(90)의 인터페이스 & 전체 제어부(91)는 도면에는 도시하지 않지만 호스트의 마이크로 컴퓨터, 또는 이 회로 블럭(90)이 접속되는 버스와의 접속을 제어하고, 또한 이 회로 블럭 전체를 제어 실행하는 회로이다. 메모리 컨트롤러 (92)는 이 회로 블럭이 사용하는 메모리를 제어하는 회로이다. 이 메모리는 온 칩의 경우도 있으며, 일부 또는 전부 오프 칩의 경우도 있다. 예를 들면, 이 동화상 처리 회로 블럭(90)이 외부 부착의 SDRAM(SYNCHR0N0US DRAM)를 이용할 경우, 이 메모리 컨트롤러(92)는 SDRAM을 제어한다.
또한, 도 9에 있어서, VLD는 입력한 비트 스트림 코드의 복호를 행하는 가변조 복호기, IQ는 양자화되어 있는 신호를 원래의 신호로 하는 역 양자화기, IDCT는 압축 처리에서 자주 이용되는 이산 코사인 변환(DCT: DISCRETE COSINE TRANSFORM의 역 처리를 행하는 역 이산 코사인 변환기, MC는 움직임 보상 회로, DISP는 표시 처리를 행하는 표시기이다. 개개의 기능 및 처리 내용에 대해서는 H261, MPEG1∼4 (ITU-T 권고) 또는 ISO13818, ISO11172의 ISO 권고에 기재되어 있기 때문에 설명은 생략한다.
도 10에, 표시 처리 부분을 제외한 도 9에 도시한 동화상 처리 회로 블럭(90)의 동작을 나타낸다. 1초 동안 a 프레임의 동화상을 처리하는 경우이다. 각 화상 프레임은 일반적으로 복수의 화소 그룹(예를 들면, 그룹 수를 b로 함)으로 분할되고, 그 화소 그룹 단위로 신호 처리를 행하지만, 각 화소 그룹마다 가변조 복호기 VLD→역 양자화기 IQ→역 이산 코사인 변환기 IDCT→움직임 보상 회로 MC의 순서로 각 처리가 행해진다.
이 때, 도면에 도시한 바와 같이 가변조 복호기 VLD에서 하나의 가변조 복호 처리가 끝나면, 다음의 화소 그룹이 올 때까지 가변조 복호 처리는 오프(OFF)로 할 수 있다. 따라서, 본 발명을 이용하면, 이러한 OFF 기간을 자동적으로 검지(예측) 하여 가변조 복호 처리기 VLD의 회로 블럭을 저전력 상태로 이행할 수 있다.
또한, 도면에는 도시하지 않지만, 실제 동작에서는 파이프라인적으로 동작시키기 때문에, 어떤 화소 그룹의 가변조 복호 처리가 종료되고, 역 양자화기 IQ로 데이터가 이동하면, 다음의 화소 그룹의 데이터가 가변조 복호 처리기 VLD에 입력된다. 소위, 파이프라인 동작이 행해진다. 이 경우, 각 처리 회로 블럭 VLD, IQ,IDCT, MC의 필요 처리 시간은 각각 다르기 때문에, 본 발명을 이용하면 끝난 부분부터 자동적으로 저전력 상태로 이행한다.
또한, b개의 모든 화소 그룹의 처리가 끝나는 데 필요한 시간은 이 화소 프레임의 처리에 할당되어 있는 처리 시간 a분의 1초보다 짧게 끝나는 경우도 있다. 이 때도, 본 발명을 이용하면 이 상태를 자동적으로 검지(예측)하여 전력이 낮은 상태(즉, 전원 스위치를 절단하는 상태, 인가 전압을 내리는 상태, 입력되는 주파수를 내리는 상태)로 이행할 수 있다.
또한, 도 7에서 설명한 바와 같이 이러한 동작을 행할 때의 과거의 이력 또는 미리 설정한 방법에 따라 전력 상태를 제어하거나, 도 8에 설명한 바와 같이 이들을 실행하는 명령 중에 전력을 제어하는 내용을 포함하여 제어할 수도 있다.
〈제10 실시예〉
도 11은 도 2에 도시한 전원 스위치 D1과 기능 블럭 KB의 제어를 예제에, 차단하기 위한 클럭 사이클 수를 자동 갱신(학습) 시키기 위한 회로 블럭예이다.
도 11에서, 예측 회로 P1 내에 설치한 판정 회로 DCS는 셧 다운 사이클 수 버퍼 BF의 값을 참조하고, 입력되는 클럭 CLK와 입력 I에 나타나는 입력 데이터를 검지하는 입력 검지 DT의 결과 F1로부터 전력 상태 제어 회로(이 경우, 전원 스위치) D1을 차단하는 것을 제어하는 회로이다.
이 판정 회로 DCS의 동작은, 도 12를 이용하여 후술한다. 셧 다운 사이클 수 버퍼 BF로부터는 셧 다운까지의 사이클 수 n의 지시가 클럭 카운터 CT에 들어간다. 클럭 카운터는 클럭 CLK를 카운트하고, 이 지시에서의 사이클 수 n에 일치하면 셧 다운 신호 C1을 낸다. OR 회로에서는 입력 검지 DT로부터의 입력 데이터 검출 결과 F1과, 클럭 카운터 CT로부터의 클럭 수 카운트 결과, 즉 셧 다운 신호 C1을 받아, 그 OR 논리의 결과를 플립플롭 FF로 받은 결과가 전원 스위치 D1에 입력되어 기능 블럭 KB를 제어한다. 또, 입력 검지 DT는 클럭에 동기하여 동작하고, 데이터가 검출되면 사이클 수를 카운트하는 클럭 카운터 CT에 대하여 리세트 신호 RST를 출력한다.
도 11의 판정 회로 DCS의 제어 방법을 도 12에 도시한다. 이 판정 회로는 우선, 셧 다운 신호 C1과, 입력 검지 신호 F1과, 클럭 CLK로부터 셧 다운하고 나서 다음의 사이클이 오기까지의 사이클 수 k를 계측한다(단계 S30).
다음으로, 이 사이클 수 k와, 클럭 카운터 CT에 저장되어 있는 현재의 셧 다운까지의 사이클 수 n을 비교한다(단계 S31).
이 때, 저장되어 있는 n이 k 이상이면, 저장되어 있는 n과 셧 다운 수의 하한 치 L과의 비교를 행하고(단계 S32 L), 저장되어 있는 n이 하한치 L보다 크면, 저장되어 있는 n을 1만큼 감하고(단계 S33), 1만큼 감한 n을 셧 다운 사이클 수 버퍼 BF에 기입한다(단계 S34). 저장되어 있는 n이 하한치 L보다 작으면, 현재 저장되어 있는 n을 상기 버퍼 BF로 기입한다(단계 S34). 이 경우에는 그대로의 값으로 하면 좋기 때문에, 기입할 필요가 없다고 하여도 좋다.
단계 S31에 있어서, 저장되어 있는 n이 k보다 작으면, n과 셧 다운 수의 상한치 H와의 비교를 행하고(단계 S32 H), 저장되어 있는 n이 상한치 H보다 작으면 n을 1만큼 증가시키고(단계 S33 H), 1만큼 증가시킨 n을 셧 다운 사이클 수 버퍼 BF에 기입한다(단계 S34). n이 상한치 H보다 크면, 현재 저장되어 있는 n을 셧 다운 사이클 수 버퍼 BF로 기입한다(단계 S34). 이 경우도, 그대로의 값으로 하면 좋기 때문에, 기입할 필요가 없다고 하여도 좋다.
이와 같이 함으로써, 데이터가 오지 않게 되고 나서 셧 다운까지의 사이클 수를 자동 갱신시킬 수 있다.
동일한 것은 일단 셧 다운하고 나서, 다시 활성화시키기까지의 클럭 수를 예측하는 경우에 대해서도 조립할 수 있다. 예를 들면, 도 21에 도시한 구성으로 가능해진다. 이 판정 회로 DCS의 동작에 대해서는 도 22에 도시하였다.
도 21의 구성에서, 도 11과 다른 것은 클럭 카운터 CT에서는 또한, 어떤 셧 다운으로부터 다음의 입력이 오기까지의 사이클 수 k를 카운트하고, 그 결과 C2를 출력하도록 하고 있는 점이다. 또, n은 셧 다운까지의 사이클 수이다. 또한, 도 22에 있어서 H는 셧 다운 사이클 수의 상한치, L은 셧 다운 사이클 수의 하한치이고, S는 효과적인 셧 다운 사이클 간격(실효 셧 다운동안 사이클 수)이다. 이 실효 셧 다운동안 사이클 수 S는 셧 다운에 의한 저전력화 효과와, 예측 회로 P1이라는 제어 회로를 동작시키는 것에 따른 전력 증대와의 균형으로부터 결정한다. 즉, 이 실효 셧 다운동안 사이클 수 S의 치는 실제의 예측 회로 P1의 전력 및 S의 기간 셧 다운하고 있는 경우의 저전력화의 값으로부터 결정한다. 만약, 셧 다운의 간격이 너무 짧으면, 저전력화의 효과보다 예측 회로 P1의 전력이 커진다.
〈제11 실시예〉
도 13에, 도 2 또는 도 11에서 전력 상태 제어 회로 D1에 의한 논리 회로 블럭 K1에 대한 전력 제어의 동작의 실제를 나타낸다. 이 예에서는 전력 상태 제어 회로 D1에 의해 논리 회로 블럭 K1로의 전력이 공급되는 상태(전력 상태 제어 회로 D1이 도통 상태)를 온으로 나타내고, 논리 회로 블럭 K1로의 전력 공급이 이루어지지 않은 셧 다운 상태(전력 상태 제어 회로 D1이 절연 상태)를 오프로 나타내었다.
이것이 도 13의 최상부에 나타낸 클럭에 따라 데이터의 유무로 어떻게 변화하는가를, 연속한 시간 변화가 있는 부분을 추출한 Ⅰ∼Ⅶ의 예로 설명한다. Ⅰ∼Ⅶ의 도중에, 도 11 및 도 12에서 설명한 바와 같은 데이터가 오지 않게 되고 나서 오프로 하기까지의 클럭 수를 자기 갱신, 즉 학습하는 과정을 삽입하고 있다.
여기서는 데이터가 오지 않게 되고 나서 2클럭으로 오프하는 설정으로 한다. 도 18에서 말하면, n이 2이다. 또한, 오프 상태로부터 데이터가 다시 왔을 때, 회로를 활성화시키기 위해 대기하는 사이클 수는 1로 한다. 도 19에서 말하면, m이 1이다.
이 초기 설정에 있어서, 우선, Ⅰ의 상태에서는 데이터가 오지 않게 되고 나서 2클럭으로 오프가 되었지만, 그리고 나서 6클럭은 데이터가 없고, 그 후 다시 데이터가 나타났다고 한다. 전회 데이터가 오지 않게 되고 나서는 8클럭분은 데이터가 없던 것으로 된다. 이에 따라, 6클럭분은 전력이 작은 상태가 된다.
다음의 시간 변화 부분인 Ⅱ에서는 다음과 같은 상태였다. 즉, 데이터가 오지 않게 되고 나서 3클럭 쉬고, 다음의 데이터가 온 경우이다. 이 때, 지금의 설정 상태에서는 2클럭 오지 않으면 오프 상태가 되므로, 오프 상태가 되었다. 그러나, 그 다음에 1클럭 두고, 다음의 데이터가 나타나는 것이다. 그 때문에, 즉시준비에 들어가 데이터가 나타난 1클럭 후, 온 상태가 된다. 따라서, 오프 상태는 2클럭분이 된다. 이 2클럭분의 쉼은 유효한 경우도 있지만, 그렇지 않은 경우도 있다. 왜냐하면, 지금까지의 실시예에서 설명한 바와 같은 동작을 행하기 위해서는 그 전력 상태 제어 회로 D1이 동작할 필요가 있고 소비 전력이 필요하기 때문이다. 그 때문에, 오프 상태가 너무 짧은 경우에는 천이에서의 전력 소비를 생각하면 저전력화의 효과가 엷어지는 경우가 있다. 또한, 복귀하는 데 m클럭을 필요로 한다(여기서의 예에서는 1클럭으로 하였음). 이 분량만큼, 거기에서의 처리는 시간을 낭비한다. 너무 짧은 오프 상태를 끼우는 것은 저전력화의 효과가 엷어질 뿐 아니라, 속도의 면에서도 열화의 영향이 쉽게 보인다. 앞으로도, 이러한 짧은 오프 상태를 끼우는 것이 계속되면, 이 설정은 바람직하지 못한 것이 된다. 금회는 이 2회는 지나치게 적으면, 예측 회로 P1 내의 학습 부분이 판단하고, 이 횟수를 바꾸는 경우를 생각한다.
즉, 도 13에서 학습이라고 도시한 바와 같이 3클럭 동안 데이터가 없으면, 오프 상태로 이행한다고 판단했다고 한다.
그런데, 다음의 시간 변화 부분 Ⅲ를 본다. 여기서는 예측이 맞고, 데이터와 데이터 간극이 3클럭뿐이었다. 이번은 다음으로 이행하고자 하기 전에 데이터가 오기 때문에, 이행은 발생되지 않고 온 상태가 계속된다. 이에 따라, 짧은 오프를 끼움으로써, 제어 회로 동작의 전력적 및 속도적인 오버헤드는 없어진다.
다음의 시간 변화 부분 Ⅳ라도, 예측이 맞고, 데이터와 데이터 간극이 2클럭이었다. 이 경우도 오프 상태로는 이행하지 않고, 그대로 계속 동작한다.
다음의 시간 변화 부분 Ⅴ에서는 드디어 상태가 변하고, 데이터와 데이터 간극이 8클럭이었다. 이 경우에는 3클럭 동안 데이터가 없는 것을 확인하고 나서 오프 상태로 이행하고, 다시 데이터가 오고 나서 1클럭으로 복귀하기 때문에, 오프 상태의 기간은 6클럭분이다. 여기서는 충분히 오프 기간이 있다. 금후, 이러한 긴 기간의 오프가 연속하면 예측 회로가 판단하였다고 한다.
따라서, 다음의 학습 상태에서 데이터가 없어지고 나서, 2클럭 대기하여 데이터가 오지 않으면, 오프 상태로 이행하면 변한다.
다음의 시간 변화 부분 Ⅵ에서는 예측대로 긴 기간의 오프 상태가 되는 데이터 열이고, 여기서는 데이터와 데이터 간극이 10클럭분이다. 여기서는 2클럭분 대기하여 데이터가 오지 않으면 오프 상태로 이행하는 것으로 바뀌었기 때문에, 오프 상태를 9클럭 취할 수 있다.
다음의 시간 변화 부분 Ⅶ에서는 상기 시간 변화 부분 V와 동일하게 데이터와 데이터 간극이 8클럭이지만, 시간 변화 부분 V에서는 오프 상태가 6클럭분인데 반해, 금회는 7 클럭분보다 긴 오프 상태를 달성할 수 있다. 즉, 학습에 의해 보다 저전력화를 달성할 수 있다.
도 13에서는 1클럭만 증감시키는 경우에 대하여 진술하였지만, 이 클럭 수는 물론 다른 값이어도 좋고, 또한 학습으로 이행하는 데, 전회의 값과 다른 경우가 몇 회 계속되면 이행할지 등은 시스템에 따라 설정할 수 있다.
도 14는 이러한 학습 빈도에 대하여 설명하는 도면이다. 횡축은 시간이고, 종축은 시스템 전력이다. 도 14의 (a)에 있어서는 최초로 학습할 뿐이고, 그 후는그 내용을 유지한다. 즉, 시각 t1에서는 큰 전력을 소비했었지만, 학습에 의해 최적의 상태로 이행할 수 있고(도 13의 예에서 말하면 데이터가 오지 않게 되고 나서 오프하는 클럭 수), 그 후는 시각 t2에서의 상태와 같이 작은 전력으로 되어 있다.
한편, 도 14의 (b)에 있어서는 제2 학습 기간이 있고, 시각 t3에서 다시 증가한 전력을 학습에 의해 t4에서는 작은 전력으로 하고 있다. 즉, 동적으로 상태를 계속 변경할 수 있다.
도 14의 (c)는 과거의 학습 결과 또는 정해진 초기치를 로드하는 경우이다. 즉, 외부 기억 또는 내부 기억의 테이블을 참조하여, 거기에 기록된 저전력이 되는 상태를 로드하고, t2에서는 전력이 작은 상태를 취하는 경우이다. 로드한 내용으로 그 후 계속 진행하는 경우도 있고, 이 도면에 도시한 바와 같이 학습을 더 행하여 최적화를 목표로 하는 경우도 있다. 또한, 특정한 회로 블럭으로 이들 모두를 취하는 경우도 있지만, 예를 들면, 시스템 전체로서 저전력이 되는 상태를 로드하지만, 그 후 일부 회로 블럭에서는 학습을 더 하여 상태를 이행시키는 경우도 있다. 또한, 전체에서의 학습의 페이즈와 특정한 회로 블럭에서의 학습의 페이즈가 다른 경우도 있다. 예를 들면, 전체에서의 학습은 스위치 온의 시간만이고, 그 후는 특정한 회로 블럭에서의 학습만이다.
이러한 학습 결과, 또는 로드해야 할 미리 정해진 초기치 또는 과거의 학습의 누적 결과를 저장하는 방법을 도 15에 도시한다. 여기서는, 칩 상의 재기입 가능한 불휘발성 메모리의 영역에 저장하는 경우를 나타낸다.
도 15의 (a)에서는 회로 블럭 IP11∼IP34에 대하여 하나의 불휘발성 메모리의 영역 F를 설치하는 경우, 즉 칩 상의 1개소에 불휘발성 메모리의 영역 F에 집중 배치하는 경우이다. 이는 예를 들면, 전체의 저전력 상태를 테이블로 하여 갖다 둔 경우에 효과가 있다. 또한, 각 회로 블럭 IP11∼IP34에서는 SRAM 또는 레지스터에 저장하고, 최후의 상태 또는 일정한 기간에 효과가 있는 경우를 이 F 영역에 기입하거나 할 수도 있다.
도 15의 (b)는 이 불휘발성 메모리의 영역 F를 각 회로 블럭 IP11∼IP34에 설치한 경우, 즉 불휘발성 메모리의 영역 F를 분산 배치하는 경우이다. 물론, 모든 회로 블럭이 이 영역을 구비해 둘 필요는 없다. 발명의 취지는 각 회로 블럭마다 과거의 학습 결과 등을 저장하는 재기입 가능한 불휘발성 메모리 영역을 갖는다. 또한, 이들 내용의 일부는 이 시스템을 필요로 하고 있는 소프트웨어에 저장해 둘 수도 있다.
〈제12 실시예〉
본 발명을 이용하면 다음과 같은 응용도 가능하다. 최근 발전이 현저한 프로세서를 병렬로 배치 및 동작시켜서 동작 처리 성능을 향상시키는 방법이다.
도 16에 있어서, 상태 A에서는 주파수 2f로 회로 블럭 a1, a2, b1, b2가 동작하고 있다. 여기서, 회로 블럭 a1과 a2는 동일한 기능의 동작을 행하는 프로세서이고, 병렬 처리로써 처리 성능을 들고 있다. 회로 블럭 b1과 b2도 동일하다. 이러한 시스템에서도 입력하는 데이터의 양은 변동한다. 따라서, 상태 A보다 처리 필요량이 작은 상태 B에서는, 예를 들면 본 발명을 이용하여 동작 주파수를 2f에서 절반인 f로 변경한다. 이 때의 전력에는 AC 성분, 즉 디지털 회로로 말하면 부하용량의 충/방전에 소비되는 성분과 종래예에서 설명한 누설 성분이 있다. 주파수가 높은 영역에서는 AC 성분에 누설 성분은 숨어 있지만, 동일한 조건으로 동작시키는 이러한 시스템에서는 주파수를 낮추면 이 누설 성분이 현저하게 된다.
이러한 경우에, 본 발명을 이용하면, 각 회로 블럭을 별개로 그 상태를 바꿀 수 있기 때문에, 예를 들면 다음과 같이 할 수 있다. 즉, 회로 블럭 a1과 b1을 2f로 동작시키고, 회로 블럭 a2와 b2는 누설 전류를 컷트한 상태(여기서는 대기로 나타낸 상태)로 한다. 이것이 상태 C이다. 이와 같이 하면, 성능은 일정하지만, 동작시키는 회로의 수가 반으로 되기 때문에 누설 성분을 도면에 도시한 바와 같이 줄일 수 있어서 전체로서는 저전력이 된다.
이와 같이 지금까지 예를 든 실시예를 조합하여, 최적의 전력 상태가 되도록 자립 분산적으로 제어함으로써, 보다 적은 전력으로 보다 좋은 성능을 달성할 수 있다.
〈제13 실시예〉
도 17은 본 발명을 이용한 시스템을 총괄한 설명도이다. 입력 IN으로부터 출력 OUT을 얻는 시스템 LSI를 기본 유닛 BU를 조합하여 구축한다. 이 기본 유닛 BU는 현재의 시스템 LSI에서 이용되고 있는 말로 말하면, IP, 회로 블럭, 회로 모듈이다. 이것이 하나의 Si 기판 상에 집적되었을 때 일반적으로 시스템 LSI라 불리고 있다. 과거에 있어서, 하나의 시스템이 실려 있는 보우트 상의 부품을 하나의 Si 기판 상에 실은 이미지이다.
이 시스템 LSI의 설계에 있어서는 다종다양한 설계의 이력을 거친 여러가지IP를 설계자가 취사 선택하여 모아, 이제부터 하나의 시스템을 만들어 낸다. 그 결과, 예를 들면 0.1㎛ 기술 노드 시대를 생각하면, 8㎜□의 상에 거의 모든 시스템, 즉 시스템 컨트롤러, 메모리, 동화상 압축 신장 처리, 음성 처리, 암호 처리, 카메라 입력 처리, 무선 통신 프로토콜, 유선 통신 프로토콜, 주변 기기 제어를 집적화할 수 있다. 이들을 다수의 IP로부터 조립한다.
이렇게 되면, 이들을 제어하는 예를 들면 전력 제어만으로 보아도, 설계자는 개략적인 제어는 제공할 수 있어도, 제품 설계 시의 매우 짧은 기간에 세부 사항에 걸쳐 최적화하고 설계하는 것은 거의 불가능하다. 또한, 특정 부분만을 다른 설계 자산과 설계 도중에 바꾸거나, 또는 설계 후에 임의의 회로 블럭의 사양이 달라서 그 부분만을 교체하는 것도 필요하게 된다.
그러나, 본 발명에 따르면, 각각의 기본 단위 BU(회로 블럭)로서 예측형 전력 제어 기능이 있는 논리 회로 블럭을 이용함으로써, 자립 분산적으로 저전력 동작 상태를 취할 수 있다. 따라서, 설계자가 세부적으로 들어갈 필요는 없다. 또한, 일부를 교체하거나 하여도 쉽게 할 수 있다. 또한, 이들을 통합한 전체 또는 부분적인 회로 블럭의 덩어리에 대하여 저전력을 목표로 한 제어를 제공할 수도 있다. 또한, 이들 저전력 상태는 학습에 따라, 그 때의 상태에 따라, 또는 그 외의 방향 설정에 따라 전력 상태 1(전력이 큰 상태)과 전력 상태 2(전력이 작은 상태)를 바꿀 수 있다. 이와 같이 하여, 본 발명을 이용하면, 설계 가능한 범위에서 확장성이 풍부하고, 저전력이며 고성능인 시스템 LSI를 실현할 수 있다.
이상, 본 발명의 적합한 실시예에 대하여 설명하였지만, 본 발명은 상기 실시예에 한정되는 것이 아니라, 본 발명의 정신을 일탈하지 않은 범위 내에서 여러가지의 설계 변경을 할 수 있는 것은 물론이다.
본 발명에 의해 시스템 LSI를 구성하는 각 회로 블럭은 자립 분산적으로 전력 상태가 작은 상태로 이행할 수 있다. 또한, 이들 상태로의 천이는 학습에 의해 변경할 수 있다. 이에 따라, 설계 가능한 공정수로, 확장성이 풍부한 저전력이며 고성능인 시스템 LSI 등의 반도체 장치를 실현할 수 있다.
Claims (14)
- 명령 또는 데이터의 입력에 대하여 일정한 처리를 클럭에 기초하여 행하는 복수의 논리 회로 블럭을 포함하는 반도체 장치에 있어서, 각 논리 회로 블럭에,논리 회로 블럭의 전력 상태를 제어하는 전력 상태 제어 회로; 및논리 회로 블럭에 대한 입력 유무 상태에 따라 상기 전력 상태 제어 회로를 제어하는 예측 회로를 적어도 구비하는 것을 특징으로 하는 반도체 장치.
- 제1항에 있어서, 상기 예측 회로는 상기 논리 회로 블럭의 입력 처리를 제어하기 위한 기능을 더 구비하는 반도체 장치.
- 제1항 또는 제2항에 있어서, 상기 전력 상태 제어 회로는, 클럭 수 n에 도달할 때까지 상기 논리 회로 블럭에 대한 처리해야 할 상기 입력이 없는 경우에, 전원을 차단하는 전원 차단 회로, 동작 전압을 낮게 설정하는 동작 전압 설정 회로, 또는 동작 주파수를 낮게 설정하는 동작 주파수 설정 회로를 적어도 구비하는 반도체 장치.
- 제1항에 있어서,상기 전력 상태 제어 회로는 상기 논리 회로 블럭으로 전력을 공급하는 전원과 상기 논리 회로 블럭 사이에 접속되고, 상기 논리 회로 블럭에 대한 전원을 차단하는 전원 차단 회로이고,상기 예측 회로는, 상기 논리 회로 블럭으로 입력되는 클럭을 카운트하여 클럭 수 n이 되었을 때에 출력하는 카운터와, 상기 전원 차단 회로를 제어하는 제어 수단과, 입력을 검지하여 입력이 오지 않게 되었을 때에 상기 제어 수단으로 신호를 출력함과 함께 상기 카운터를 리세트하는 신호를 출력하는 입력 검지 회로를 포함하고,상기 제어 수단은 카운터 및 입력 검지의 양 출력의 논리곱을 취하여 상기 전원 차단 회로를 제어하는 반도체 장치.
- 제4항에 있어서,상기 논리 회로 블럭은 입력을 일단 저장하는 레지스터와 연산 처리를 행하는 기능 블럭을 포함하고,상기 예측 회로는 상기 제어 수단의 출력과 클럭을 비교하여 상기 레지스터를 제어하는 비교기를 더 구비하는 반도체 장치.
- 제1항에 있어서,상기 전력 상태 제어 회로는, 상기 논리 회로 블럭으로 전력을 공급하는 전원과 상기 논리 회로 블럭 사이에 접속되고, 상기 전력 상태 제어 회로에 인가되는 신호 전압에 의해 상기 논리 회로 블럭의 동작 전압을 낮게 설정하는 동작 전압 설정 회로이고,상기 예측 회로는, 복수의 다른 전압의 제어 신호선과 상기 동작 전압 설정 회로 사이에 설치한 스위치를, 상기 논리 회로 블럭의 입력과 상기 클럭에 기초하여 상기 동작 전압 설정 회로에 어느 전압의 제어 신호선을 언제 접속하는가를 결정하여 제어하는 스위치 제어 회로를 포함하고,상기 스위치 제어 회로는, 상기 논리 회로 블럭에 대한 입력이 있을 때에는 전압이 높은 쪽의 제어 신호선을 상기 동작 전압 설정 회로에 접속하도록 제어하고, 입력이 오지 않게 되고 나서 클럭 수 n이 된 후에는 전압이 낮은 쪽의 제어 신호선을 상기 동작 전압 설정 회로에 접속하도록 제어하는 반도체 장치.
- 제6항에 있어서,상기 논리 회로 블럭은 입력을 일단 저장하는 레지스터와 연산 처리를 행하는 기능 블럭을 포함하고,상기 스위치 제어 회로는 상기 입력과 클럭 상태에 의해 상기 레지스터를 제어하는 기능을 더 갖는 반도체 장치.
- 제1항에 있어서,상기 전력 상태 제어 회로는 상기 논리 회로 블럭의 동작 주파수를 낮게 설정하는 동작 주파수 설정 회로이고, 분주비가 가변인 분주기를 포함하고,상기 예측 회로는 상기 논리 회로 블럭으로 입력되는 입력을 검지하여 클럭을 카운트하여 분주기를 제어하는 입력 검출·클럭 카운트 회로와, 상기 논리 회로 블럭에 입력이 오지 않게 되고 나서의 클럭 수가 n이 된 후에 저전력 상태로 이행하도록 제어하기 위해서 설정하는 상기 클럭 수 n을 저장해 두기 위한 설정 레지스터를 포함하고,상기 입력 검출·클럭 카운트 회로는 상기 논리 회로 블럭에 입력이 오지 않게 되고 나서 카운트한 클럭 수가 상기 설정 레지스터에 저장된 클럭 수 n이 되었을 때, 상기 분주기의 분주비를 크게 하여 상기 회로 블럭에 입력되는 클럭 주파수를 낮게 하도록 제어하는 반도체 장치.
- 제8항에 있어서,상기 논리 회로 블럭은 입력을 일단 저장하는 레지스터와 연산 처리를 행하는 기능 블럭을 포함하고,상기 입력 검출·클럭 카운트 회로는 상기 입력과 클럭 상태에 의해 상기 레지스터를 제어하는 기능을 더 갖는 반도체 장치.
- 제3항 내지 제8항 중 어느 한 항에 있어서, 상기 클럭 수 n의 값을 과거의 이력에 따라 갱신하는 회로를 더 구비하는 반도체 장치.
- 제10항에 있어서, 갱신한 결과를 저장하는 재기입 가능한 불휘발성 반도체 메모리를 더 구비한 것을 특징으로 하는 반도체 장치.
- 제1항 내지 제11항 중 어느 한 항에 있어서, 대응한 각 논리 회로 블럭의 전력 제어 테이블을 구비하여 이것을 참조하면서 상기 전력 상태 제어 회로의 제어를 행하는 제어 신호와, 각 논리 회로 블럭으로의 상기 입력의 명령 또는 데이터를 출력하는 CPU를 더 구비하는 반도체 장치.
- 제12항에 있어서, 상기 CPU는 CPU에 외부로부터 입력되는 각 논리 회로 블럭의 전력 제어 정보를 포함시킨 명령 또는 데이터 내의 상기 정보로부터, 각 논리 회로 블럭에 접속된 전력 상태 제어 회로의 제어를 행하는 상기 제어 신호를 얻기 위해서 해독하는 디코더를 더 구비한 것을 특징으로 하는 반도체 장치.
- 제13항에 있어서, 복수의 논리 회로 블럭 전체의 전력 제어는 상기 전력 제어 정보를 상기 디코더에 의해 해독해서 얻어진 상기 제어 신호에 의해 상기 CPU가 행하고, 각 논리 회로 블럭의 제어는 상기 CPU가 행하지 않는 것을 특징으로 하는 반도체 장치.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JPJP-P-2001-00021109 | 2001-01-30 | ||
JP2001021109A JP3884914B2 (ja) | 2001-01-30 | 2001-01-30 | 半導体装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20020063788A true KR20020063788A (ko) | 2002-08-05 |
Family
ID=18886714
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020010049466A KR20020063788A (ko) | 2001-01-30 | 2001-08-17 | 반도체 장치 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7222244B2 (ko) |
JP (1) | JP3884914B2 (ko) |
KR (1) | KR20020063788A (ko) |
TW (1) | TW516214B (ko) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6909659B2 (en) * | 2001-08-30 | 2005-06-21 | Micron Technology, Inc. | Zero power chip standby mode |
US7634668B2 (en) | 2002-08-22 | 2009-12-15 | Nvidia Corporation | Method and apparatus for adaptive power consumption |
EP3321769A1 (en) * | 2003-05-07 | 2018-05-16 | Conversant Intellectual Property Management Inc. | Managing power on integrated circuits using power islands |
TWI229276B (en) * | 2003-07-23 | 2005-03-11 | Tatung Co | Protocol method of reusable hardware IP |
GB2418269B (en) * | 2004-09-15 | 2010-07-21 | Tatung Co Ltd | Reusable hardware IP protocol method for a system-on-chip device |
JP4761833B2 (ja) | 2005-05-24 | 2011-08-31 | 株式会社東芝 | 半導体装置及びシステム |
US20070090920A1 (en) * | 2005-10-22 | 2007-04-26 | Canter James M | Apparatus and Method for Controlling Access to Remotely Located Equipment |
US7486106B1 (en) * | 2006-03-24 | 2009-02-03 | Altera Corporation | CPLD for multi-wire keyboard decode with timed power control circuit |
CN101501607B (zh) * | 2006-07-28 | 2011-10-05 | Arm有限公司 | 具有主单元和从属单元的数据处理设备中的电源管理 |
US7802116B2 (en) * | 2006-09-27 | 2010-09-21 | Intel Corporation | Subsystem power management |
US7868479B2 (en) * | 2007-06-27 | 2011-01-11 | Qualcomm Incorporated | Power gating for multimedia processing power management |
DE102007030569B4 (de) | 2007-07-02 | 2012-11-08 | Austriamicrosystems Ag | Schaltungsanordnung und Verfahren zum Auswerten eines Datensignals |
US7817488B2 (en) * | 2007-12-20 | 2010-10-19 | Sandisk Corporation | Load balancing by using clock gears |
US7944285B1 (en) * | 2008-04-09 | 2011-05-17 | Cadence Design Systems, Inc. | Method and apparatus to detect manufacturing faults in power switches |
US8200371B2 (en) * | 2009-06-25 | 2012-06-12 | Qualcomm Incorporated | Prediction engine to control energy consumption |
US8700925B2 (en) * | 2009-09-01 | 2014-04-15 | Nvidia Corporation | Regulating power using a fuzzy logic control system |
US8826048B2 (en) * | 2009-09-01 | 2014-09-02 | Nvidia Corporation | Regulating power within a shared budget |
JP2011128813A (ja) * | 2009-12-16 | 2011-06-30 | Canon Inc | データ処理回路 |
US9256265B2 (en) | 2009-12-30 | 2016-02-09 | Nvidia Corporation | Method and system for artificially and dynamically limiting the framerate of a graphics processing unit |
US9830889B2 (en) | 2009-12-31 | 2017-11-28 | Nvidia Corporation | Methods and system for artifically and dynamically limiting the display resolution of an application |
JP5661313B2 (ja) * | 2010-03-30 | 2015-01-28 | キヤノン株式会社 | 記憶装置 |
JP2016143206A (ja) * | 2015-01-30 | 2016-08-08 | 日本電信電話株式会社 | 半導体集積回路 |
US10698692B2 (en) * | 2016-07-21 | 2020-06-30 | Advanced Micro Devices, Inc. | Controlling the operating speed of stages of an asynchronous pipeline |
JP7199329B2 (ja) * | 2019-09-19 | 2023-01-05 | 株式会社東芝 | 制御方法及び半導体集積回路 |
JP7311095B2 (ja) * | 2020-10-29 | 2023-07-19 | 東芝情報システム株式会社 | アナログニューロン演算器及びその電力制御方法 |
JP2024048930A (ja) | 2022-09-28 | 2024-04-09 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2932749A1 (de) * | 1979-08-13 | 1981-03-26 | Siemens AG, 1000 Berlin und 8000 München | Pruefeinrichtung zur fehlerdiagnose in mehrrechner-systemen, insbesondere in multimikrocomputer-systemen |
US4891743A (en) * | 1987-11-09 | 1990-01-02 | Enercon Industries Corporation | Power supply controller |
JPH02239719A (ja) * | 1989-03-13 | 1990-09-21 | Omron Tateisi Electron Co | タイマ回路 |
US5602975A (en) * | 1992-07-22 | 1997-02-11 | Canon Kabushiki Kaisha | Image processing apparatus |
JP3467631B2 (ja) | 1994-06-07 | 2003-11-17 | 株式会社ルネサステクノロジ | ロジックlsi |
JP3475510B2 (ja) | 1994-08-09 | 2003-12-08 | ヤマハ株式会社 | 省電力機能付き集積回路 |
US6014512A (en) * | 1996-10-18 | 2000-01-11 | Samsung Electronics Co., Ltd. | Method and apparatus for simulation of a multi-processor circuit |
US6658447B2 (en) * | 1997-07-08 | 2003-12-02 | Intel Corporation | Priority based simultaneous multi-threading |
US5964881A (en) * | 1997-11-11 | 1999-10-12 | Advanced Micro Devices | System and method to control microprocessor startup to reduce power supply bulk capacitance needs |
US6789207B1 (en) * | 1998-07-02 | 2004-09-07 | Renesas Technology Corp. | Microprocessor |
US6477654B1 (en) * | 1999-04-06 | 2002-11-05 | International Business Machines Corporation | Managing VT for reduced power using power setting commands in the instruction stream |
FI109848B (fi) * | 1999-05-27 | 2002-10-15 | Nokia Corp | Menetelmä elektroniikkalaitteen jännitesyötön järjestämiseksi |
US6625740B1 (en) * | 2000-01-13 | 2003-09-23 | Cirrus Logic, Inc. | Dynamically activating and deactivating selected circuit blocks of a data processing integrated circuit during execution of instructions according to power code bits appended to selected instructions |
US6760303B1 (en) * | 2000-03-29 | 2004-07-06 | Telefonaktiebolaget Lm Ericsson (Publ) | Channel-type switching based on cell load |
US6731146B1 (en) * | 2000-05-09 | 2004-05-04 | Qualcomm Incorporated | Method and apparatus for reducing PLL lock time |
US6765389B1 (en) * | 2003-06-12 | 2004-07-20 | Delphi Technologies, Inc. | Method of computing AC impedance of an energy system |
-
2001
- 2001-01-30 JP JP2001021109A patent/JP3884914B2/ja not_active Expired - Lifetime
- 2001-08-09 TW TW090119538A patent/TW516214B/zh not_active IP Right Cessation
- 2001-08-17 KR KR1020010049466A patent/KR20020063788A/ko not_active Application Discontinuation
- 2001-08-20 US US09/932,099 patent/US7222244B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20020101257A1 (en) | 2002-08-01 |
JP2002229690A (ja) | 2002-08-16 |
TW516214B (en) | 2003-01-01 |
JP3884914B2 (ja) | 2007-02-21 |
US7222244B2 (en) | 2007-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20020063788A (ko) | 반도체 장치 | |
JP3883126B2 (ja) | 半導体集積回路装置、それが組み込まれた電子装置、及び消費電力低減方法 | |
US7254082B2 (en) | Semiconductor device | |
KR101208393B1 (ko) | 멀티미디어 처리 전력 관리를 위한 전력 게이팅 | |
US8120410B2 (en) | Adaptive control of power supply for integrated circuits | |
US20080178031A1 (en) | Power control apparatus and method thereof | |
JP2003092359A (ja) | 半導体集積回路 | |
CN104867521A (zh) | 用于存储器的低功率字线逻辑的系统和方法 | |
US7685444B2 (en) | Power saving in circuit functions through multiple power buses | |
JP2010519612A (ja) | 選択的なバックバイアスを使用する動的リーク制御回路 | |
JP2008181329A (ja) | 半導体集積回路及びその電源供給制御方法 | |
US20050114722A1 (en) | Semiconductor integrated circuit and microprocessor unit switching method | |
US7916571B2 (en) | Apparatus for implementing multiple integrated circuits using different gate oxide thicknesses on a single integrated circuit die | |
US8723592B2 (en) | Adjustable body bias circuit | |
US6853221B1 (en) | Power-up detection circuit with low current draw for dual power supply circuits | |
JPWO2009019788A1 (ja) | 半導体集積回路 | |
CN103348303A (zh) | 提供电力管理的集成电路器件、电力管理模块以及方法 | |
US10101756B2 (en) | Systems and methods for reducing leakage power of a system on chip with integrated thermoelectric cooling | |
JP2006318513A (ja) | 半導体装置 | |
US6384631B1 (en) | Voltage level shifter with high impedance tri-state output and method of operation | |
JP2004047810A (ja) | 半導体集積回路 | |
WO2005088840A1 (ja) | 可変長符号復号装置 | |
JP2003249563A (ja) | 半導体集積回路 | |
US6683485B1 (en) | Double translation voltage level shifter and method | |
JP2003150283A (ja) | 電力制御装置及び電力制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |