KR100218451B1 - 병렬처리방식 프로세서의 전력소모감소장치 - Google Patents

병렬처리방식 프로세서의 전력소모감소장치 Download PDF

Info

Publication number
KR100218451B1
KR100218451B1 KR1019960047424A KR19960047424A KR100218451B1 KR 100218451 B1 KR100218451 B1 KR 100218451B1 KR 1019960047424 A KR1019960047424 A KR 1019960047424A KR 19960047424 A KR19960047424 A KR 19960047424A KR 100218451 B1 KR100218451 B1 KR 100218451B1
Authority
KR
South Korea
Prior art keywords
unit
clock
instruction
barrel shifter
register file
Prior art date
Application number
KR1019960047424A
Other languages
English (en)
Other versions
KR19980028378A (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 KR1019960047424A priority Critical patent/KR100218451B1/ko
Publication of KR19980028378A publication Critical patent/KR19980028378A/ko
Application granted granted Critical
Publication of KR100218451B1 publication Critical patent/KR100218451B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)
  • Microcomputers (AREA)
  • Advance Control (AREA)

Abstract

본 발명의 병렬처리방식 프로세서의 전력소모감소장치는, 클럭신호를 발생하는 클럭발생부와; 데이터/명령어가 있을때만 실제 각 명령을 수행하는 실행부에 동작을 위한 클럭신호가 인가되도록 하는 클럭 제어부와; 산술 논리 연산부, 곱셈/누산 연산부, 배럴 시프터 및 레지스터 파일로 이루어진 데이터 처리부와, 인스트럭션이 입력되면 이를 해석하기 위한 인스트럭션 디코더와, 상기 인스트럭션 디코더의 출력에 따라 상기 논리연산부와, 배럴 시프터와, 레지스터 파일 및 곱셈/누산 연산부 중 실제 동작해야할 곳에만 클럭을 선택적으로 공급하도록 제어하는 내부 클럭 제어부를 구비하는 실행부를 포함하여 구성되며, 내부 클럭 제어부를 통해 상기 실행부 내의 논리연산부와, 배럴 시프터와, 레지스터 파일 및 곱셈/누산 연산부에 입력되는 내부 클럭을 동작필요시에만 선택적으로 공급되도록 함으로써 상기 실행부에서 소모되는 전력을 최소화할 수 있는 효과가 있다.

Description

병렬처리방식 프로세서의 전력소모감소장치
본 발명은 프로세서의 전력소모 감소장치에 관한 것으로, 특히 사용되고 있지 않는 내부 구성부에는 클럭 입력을 중단시킴으로써 전력소모를 줄일 수 있는 병렬처리방식 프로세서의 전력소모 감소장치에 관한 것이다.
최근 엄청난 반도체 집적기술의 발달은 많은 전자 통신장치의 소형화가 가능하도록 하였고, 특히 휴대폰이나 노트북 등은 휴대가 간편하여 일상 생활이나 여러 산업분야에서 이미 없어서는 안될 중요한 사무기기가 되었다.
이러한 휴대가 가능한 전자통신장치에 있어서 소형화 및 경량화는 필수적인 요소이며, 이를 위해서는 무엇보다도 내부 회로를 구성하는 내부 칩에서의 전력소모를 최소화하여 충전지를 작고 가볍게, 그리고 오랫동안 쓸 수 있도록 해야 한다.
종래의 기술에 의한 프로세서 전력소모 감소장치로서 미국 특허 5,452,434호에 개재된 CLOCK CONTROL FOR POWER SAVINGS IN HIGH PERFORMANCE CENTROL PROCESSING UNIT에서는 클럭 제어를 통해 컴퓨터 내에 취부된 고성능 중앙처리장치(CPU : CENTROL PROCESSING UNIT)에서의 전력소모를 줄이려고 하였는데, 제1도내지 제5도를 참조하여 이를 개략적으로 설명하면 다음과 같다.
제1도는 상기 CLOCK CONTROL FOR POWER SAVINGS IN HIGH PERFORMANCE CENTROL PROCESSING UNIT의 전체적인 구성을 도시한 것으로, 컴퓨터 시스템(10)은 크게 고성능 중앙처리장치(11)와, 입출력(Input Output)부(16) 및 램(RAM)을 사용한 외부 메모리부(18)로 구성되어 있다.
상기 고성능 중앙처리장치(11)는, 클럭신호를 발생하여 클럭 제어부(26) 및 버스 인터페이스(14)로 출력하는 클럭발생부(28)와, 버스 인터페이스(interface)(14)의 출력(DATA_REQ)(32), 실행부(26)의 출력(Q-EMPTY)(33)에 따라 상기 클럭발생부(28)에서 실행부(12)에 입력되는 클럭을 통과 또는 차단하는 클럭제어부(26)와, 상기 버스 인터페이스(14)와 라이트 버스(write bus)(20) 및 리드버스(read bus)(22)와 연결되어 제2도에 도시한 바와 같이 산술 논리 연산부(12a)와, 곱셈/누산 연산부(12b)와, 배럴 시프터(barrel shifter)(12c)와, 레지스터 파일(12d)을 구비하여 데이터나 인스트럭션(instruction)이 입력되면 덧셈, 뺄셈, 논리연산등의 연산을 수행하거나, 곱셈과 누산을 수행하거나, 시프트(shift)등을 수행하며, 데이터를 임시 보관하는 실행부(12)와, 어드레스/데이타 버스(address/data bus)(24)를 통해 외부 메모리부(18)와 입출력부(16) 및 버스 인터페이스와 연결된 내부 캐시(cache) 메모리부(19)로 구성되어 있다.
또한 상기 클럭 제어부(26)는, 제3도에 도시한 바와 같이 상기 버스 인터페이스(14)의 출력(DATA_REQ)(32)과 실행부(26)의 출력(Q-EMPTY)(33)을 입력으로 하는 낸드게이트(NANI gate)(80)와, 상기 낸드 게이트(80)의 출력을 입력으로 하며 클럭신호(CLOCK)(30)에 의해 동기되는 레지스터(register)(82)와, 상기 레지스터(82)의 출력(85)과 클럭신호(30)를 입력으로 하는 오어 게이트(OR gate)(90)로 구성되어 있으며, 이러한 클럭 제어부(26)를 포함하는 컴퓨터 시스템의 전체적인 동작은 다음과 같다.
상기 버스 인터페이스(14)는 상기 외부 메모리부(18)나 입출력부(16) 또는 내부 캐시 메모리부(19)에서 데이터나 인스트럭션(instruction)을 가져와 실행부(12)에 공급해주어 데이터 또는 인스트럭션을 수행하도록하며, 이러한 데이터나 인스트럭션이 없을때는 제4b도에 도시한 바와 같은 대기열 없음(queue empty) 신호(32)를 발생시켜 상기 클럭 제어부(26)에 알려주고, 클럭 제어부(26)에서는 실행부(12)에 들어가는 제4d도의 클럭을 차단함으로써 상기 실행부(12)에서 불필요하게 소모되는 잔력소모를 줄인다.
그리고 쉬고 있던 실행부(12)가 다시 데이터나 인스트럭션을 상기 버스 인터페이스(14)에 요구할때는 제4d도의 데이터 요구신호(data required)(33)를 발생시켜 상기 클럭 제어부(26)에 알려주어 상기 클럭 제어부(26)에서 중단시켰던 클럭신호를 상기 실행부(12)에 다시 공급해준다.
그러나 상기와 같은 종래의 프로세서 전력소모 감소장치는, 덧셈, 뺄셈 및 논리함수를 수행하는 논리연산부와, 곱셈과 누산을 처리하는 곱셈/누산 연산부와, 시프트를 수행하는 배럴 시프터(barrel shifter) 및 데이터를 임시적으로 보관하는 레지스터 파일등을 포함하는 상기 실행부에서, 데이터 또는 인스트럭션 입력시 상기4개의 구성부 중 1개 내지 3개의 구성부만 동시에 사용, 데이터를 처리하므로 나머지 사용되지 않는 구성부를 통해 불필요한 전력이 소모되는 문제점이 있었다.
따라서 본 발명의 목적은, 상기 실행부 내부에 인스트럭션을 바탕으로 하여 필요한 구성부에만 클럭이 입력되어 동작하도록 내부 클럭 제어부를 내장시킴으로써 상기 실행부 내에서 소모되는 전력을 극소화할 수 있는 병렬처리방식 프로세서의 전력소모감소장치를 제공하는 것이다.
제1도는 종래의 기술에 의한 프로세서 전력소모 감소장치의 구성도
제2도는 제1도의 실행부의 상세 구성도
제3도는 제1도의 클럭 제어부의 상세 회로도
제4는 종래의 기술에 의한 프로세서 전력소모 감소장치의 클럭 타이밍도
제5도는 본 발명에 의한 병렬처리방식 프로세서의 전력소모감소장치의 구성도
제6도는 제5도의 내부 클럭 제어부의 상세 회로도
* 도면의 주요부분에 대한 부호의 설명
100 : 실행부 110 : 인스트럭션 디코더
120 : 내부 클럭 제어부 130 : 데이터 처리부
140 : 산술 논리 연산부 150 : 곱셈/누산 연산부
160 : 배럴 시프터 170 : 레지스터 파일
180 : 데이터 버스
이하 첨부도면을 참조하여 본 발명을 좀 더 상세하게 설명하고자 한다.
본 발명의 병렬처리방식 프로세서의 전력소모장치는, 제5도에 도시한 바와 같이 실행부(100)가 덧셈, 뺄셈 및 논리함수를 수행하는 산술논리연산부(140)와, 곱셈과 누산을 처리하는 곱셈/누산 연산부(150)와, 시프트를 수행하는 배럴 시프터(barrel shifter)(160) 및 데이터를 임시적으로 보관하는 레지스터 파일(170) 등의 데이터 처리부(130) 외에 인스트럭션 입력시 이를 디코딩(decoding)하기 위한 인스트럭션 디코더(110)와, 상기 인스트럭션 디코더(110)의 디코딩 출력신호(NOP_alu; 논리 연산부, NOP_bar ; 배럴 시프터, NOP_reg; 레지스터 파일, NOP_mac; 곱셈/누산 연산부)에 따라 상기 산술논리연산부(140)와, 배럴 시프터(160)와, 레지스터 파일(170) 및 곱셈/누산 연산부(150) 중 실제 동작해야할 곳에만 클럭을 선택적으로 공급하고 다른 구성부로 클럭이 입력되는 것을 차단하는 내부 클럭 제어부(120)를 포함하여 구성된다.
그리고, 상기 내부 클럭 제어부(120)는 상기 인스트럭션 디코더(110)로부터 출력되는 출력신호(NOP_alu, NOP_bar NOP_reg)를 각각의 입력으로 하며 클럭제어부로부터 실행부(100)로 입력되는 클럭(Clk_exe)을 클럭신호로 하는 3개의 레지스터(121,122,123)와, 상기 각 레지스터(121,122,123)에 일대일 대응되도록 연결되어 상기 각 레지스터(121,122,123)의 출력과 상기 클럭제어부로부터 내부 클럭 제어부(120)로 입력되는 클럭(Clk_exe)을 논리합하여 산술논리연산부(140), 배럴 시프터(160) 및 레지스터 파일(170)에 각각의 동작을 위한 해당 내부클럭신호(Clk_alu, Clk_bar, Clk_reg)를 출력하는 오어 게이트(OR1, OR2, OR3)와, 상기 레지스터들과 마찬가지로 상기 인스트럭션 디코더(110)로부터 출력되는 디코딩신호(NOP_mac)를 입력으로 하고 클럭(Clk_exe)을 클럭신호로 하며, 상기 곱셈/누산 연산부(150)의 처리 속도를 향상시키기 위한 연속된 소정개의 레지스터(124, 125, 126)와, 상기 레지스터(124, 125, 126)의 출력을 입력으로 하는 오어 게이트(OR4)와, 상기 오어 게이트(OR4)의 출력과 클럭(Clk_exe)을논리합하여 곱셈/누산 연산부(150)를 동작시키기 위한 내부 클럭 신호(Clk_mac)를 출력하는 오어 게이트(OR5)로 구성되며, 동작은 다음과 같다.
상기 인스트럭션 디코더(110)에서 실행부에 입력되는 인스트럭션을 해석하여 상기 산술논리연산부(140)와, 배럴 시프터(160)와, 레지스터 파일(170) 및 곱셈/누산 연산부(150)의 동작여부를 결정한 후 상기 내부 클럭 제어부(120)을 그 결과를 출력하면, 상기 내부 클럭 제어부(120)에서는 상기 인스트럭션 디코더(110)의 출력을 입력으로 하는 각 레지스터를(121∼126)의 출력 및 클럭 제어부의 출력(Clk_exe)을 오어 게이트들(OR1∼OR5)에서 논리조합하여 상기 산술논리연산부(140)와, 배럴 시프터(160)와, 레지스터 파일(170) 및 곱셈/누산 연산부(150) 중 동작해야하는곳에만 내부클럭신호(Clk_xxx)를 공급하고 그 외에는 차단하여 전력소비를 최소화한다.
즉, 제7도와 같이 논리 연산필드(ⓐ), 곱셈/누산 연산 필드(ⓑ), 배럴 시프터 필드(ⓒ), 레지스터 파일 필드(ⓓ ) 순으로 구성된 인스트럭션이 예를들어 논리 연산필드 (ⓐ), 곱셈/누산 연산 필드(ⓑ)에만 명령이 있고, 배럴 시프터 필드(ⓒ)와 레지스터 파일 필드(ⓓ )에는 없는 경우, 상기 인스트럭션 디코더에서는 상기 내부 클럭 제어부에 NOR_bar, NOP_reg 신호를 출력하며, 이에따라 상기 내부 클럭 제어부에서는 상기 배럴 시프터와 레지스터 파일에 공급되는 내부클럭을 차단한다.
한편, 상기 곱셈/누산 연산부의 처리속도를 향상시키기 위해 연속된 3개의 레지스터를 통해 명령어를 나누어 처리하도록 하는 경우, 상기 곱셈/누산 연산부에 공급되는 클럭도 또한 3주기 동안 연속해서 공급해 주어야 상기 3개의 레지스터 값이 변형되지 않고 제때에 데이터 버스에 실릴 수 있다.
이상에서와 같이 본 발명에 의하면, 실행부 내의 산술논리연산부와, 배럴 시프터와, 레지스터 파일 및 곱셈/누산 연산부에 입력되는 내부 클럭을 동작필요시에만 선택적으로 공급되도록 함으로써 상기 실행부에서 소모되는 전력을 최소화할 수 있는 효과가 있다.

Claims (2)

  1. 클럭신호를 발생하는 클럭발생부와, 데이터/명령어가 있을때만 실제 각 명령을 수행하는 실행부에 동작을 위한 클럭신호를 인가되도록 하는 클럭 제어부를 구비하는 병렬처리방식 프로세서에 있어서, 상기 실행부는 각종계산 및 함수를 처리하는 산술 논리 연산부, 곱셈과 누산을 연산하는 곱셈/누산 연산부, 명령에에 따라 시프트 동작을 수행하는 배럴 시프터 및 레지스터 파일로 구성된 데이터 처리부와 인스트럭션이 입력되면 이를 해석하기 위한 인스트럭션 디코더와, 상기 인스트럭션 디코더의 출력에 따라 상기 산술논리연산부, 배럴 시프터, 레지스터 파일 및 곱셈/누산 연산부 중 실제 동작해야할 곳에만 클럭을 선택적으로 공급하도록 제어하는 내부 클럭 제어부를 포함하여 구성된 것을 특징으로 하는 병렬처리방식 프로세서의 전력 소모감소장치.
  2. 제1항에 있어서, 상기 내부 클럭 제어부는 상기 인스트럭션 디코더의 출력신호를 각각의 입력으로 하며 클럭제어부로부터 입력되는 클럭을 클럭신호를 하는 소정개의 레지스터(121,122,123)와, 상기 각 레지스터(121,122,123)에 일대일 대응되도록 연결되어 상기 각 레지스터(121,122,123)의 출력과 상기 클럭을 논리조합하여 상기 산술논리연산부, 배럴 시프터 및 레지스터 파일에 각각의 동작을 위한 해당 내부클럭신호를 출력하는 오어 게이트(OR1, OR2, OR3)와, 상기 인스트럭션 디코더의 출력 신호를 입력으로 하고 상기 클럭신호에 동기되도록 연속 연결된 소정개의 레지스터 (124, 125, 126)와, 상기 레지스터(124,125,126)의 출력을 입력으로 하는 오어 게이트(OR4)와, 상기 오어 게이트(OR4)의 출력과 클럭을 논리합하여 곱셈/누산 연산부를 동작시키기 위한 내부 클럭 신호를 출력하는 오어 게이트(OR5)를 포함하여 구성된 것을 특징으로 하는 병렬처리방식 프로세서의 전력소모감소장치.
KR1019960047424A 1996-10-22 1996-10-22 병렬처리방식 프로세서의 전력소모감소장치 KR100218451B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019960047424A KR100218451B1 (ko) 1996-10-22 1996-10-22 병렬처리방식 프로세서의 전력소모감소장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960047424A KR100218451B1 (ko) 1996-10-22 1996-10-22 병렬처리방식 프로세서의 전력소모감소장치

Publications (2)

Publication Number Publication Date
KR19980028378A KR19980028378A (ko) 1998-07-15
KR100218451B1 true KR100218451B1 (ko) 1999-09-01

Family

ID=19478390

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960047424A KR100218451B1 (ko) 1996-10-22 1996-10-22 병렬처리방식 프로세서의 전력소모감소장치

Country Status (1)

Country Link
KR (1) KR100218451B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101059899B1 (ko) * 2009-04-23 2011-08-29 광주과학기술원 마이크로 프로세서

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101059899B1 (ko) * 2009-04-23 2011-08-29 광주과학기술원 마이크로 프로세서

Also Published As

Publication number Publication date
KR19980028378A (ko) 1998-07-15

Similar Documents

Publication Publication Date Title
US6910141B2 (en) Pipelined data processor with signal-initiated power management control
US5809336A (en) High performance microprocessor having variable speed system clock
US5179530A (en) Architecture for integrated concurrent vector signal processor
US5584031A (en) System and method for executing a low power delay instruction
US8341436B2 (en) Method and system for power-state transition controllers
JP2006509290A (ja) マイクロプロセッサ電力消費低減のためのレジスタファイルゲーティング
JPH10187438A (ja) 乗算器の入力に対する遷移を減少させる方法
US5742781A (en) Decoded instruction buffer apparatus and method for reducing power consumption in a digital signal processor
US6233596B1 (en) Multiple sum-of-products circuit and its use in electronic equipment and microcomputers
GB2318194A (en) Power saving in asynchronous data processing apparatus
US5909588A (en) Processor architecture with divisional signal in instruction decode for parallel storing of variable bit-width results in separate memory locations
KR100218451B1 (ko) 병렬처리방식 프로세서의 전력소모감소장치
US6502181B1 (en) Method and apparatus for an enhanced processor
US20020166075A1 (en) Low power interface between a control processor and a digital signal processing coprocessor
JP3562215B2 (ja) マイクロコンピュータ及び電子機器
JPH1020959A (ja) 低消費電力マイクロプロセッサ
JP3520372B2 (ja) メモリ制御ユニット並びに入出力制御ユニットの動作におけるクリティカル・パスの削除
JP2000029695A (ja) プロセッサおよび演算処理システム
JPH09319453A (ja) 低消費電力マイクロプロセッサ
EP2109815A2 (en) Inversion of alternate instruction and/or data bits in a computer
JPH08106383A (ja) 演算処理装置
KR19980026275A (ko) 저소비전력형cpu
EP0978792A1 (en) Programmable architecture computer
JPS6354630A (ja) デ−タ処理装置
JPH03250346A (ja) 情報処理システム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20050331

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee