KR100591524B1 - 버스 구조하에서 다이나믹 클록 게이팅이 가능한 슬레이브장치 및 그 동작방법 - Google Patents

버스 구조하에서 다이나믹 클록 게이팅이 가능한 슬레이브장치 및 그 동작방법 Download PDF

Info

Publication number
KR100591524B1
KR100591524B1 KR1020040034082A KR20040034082A KR100591524B1 KR 100591524 B1 KR100591524 B1 KR 100591524B1 KR 1020040034082 A KR1020040034082 A KR 1020040034082A KR 20040034082 A KR20040034082 A KR 20040034082A KR 100591524 B1 KR100591524 B1 KR 100591524B1
Authority
KR
South Korea
Prior art keywords
clock
slave device
bus
request signal
main function
Prior art date
Application number
KR1020040034082A
Other languages
English (en)
Other versions
KR20050108868A (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 KR1020040034082A priority Critical patent/KR100591524B1/ko
Priority to US11/124,271 priority patent/US7346723B2/en
Publication of KR20050108868A publication Critical patent/KR20050108868A/ko
Application granted granted Critical
Publication of KR100591524B1 publication Critical patent/KR100591524B1/ko

Links

Images

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/02Constructional features of telephone sets
    • H04M1/0202Portable telephone sets, e.g. cordless phones, mobile phones or bar type handsets
    • H04M1/0206Portable telephones comprising a plurality of mechanically joined movable body parts, e.g. hinged housings
    • H04M1/0208Portable telephones comprising a plurality of mechanically joined movable body parts, e.g. hinged housings characterized by the relative motions of the body parts
    • H04M1/0235Slidable or telescopic telephones, i.e. with a relative translation movement of the body parts; Telephones using a combination of translation and other relative motions of the body parts
    • H04M1/0237Sliding mechanism with one degree of freedom

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Information Transfer Systems (AREA)

Abstract

버스 구조하에서 다이나믹 클록 게이팅을 가능하게 하는 슬레이브 장치 및 그 동작방법이 개시된다. 모바일장치등에서 전력 소모를 최소화하는 방법들 중 가장 효율적인 것은 공급되는 클록을 차단시키는 다이나믹 클록 게이팅이라 알려져 있으나, 이는 버스 구조하에서 동작하는 슬레이브 장치, 특히 파이프라인 버스 구조하의 슬레이브 장치에 대해서는 적용이 불가능한 종래의 문제점이 있었다.
이러한 문제점을 해결하기 위해서 본 발명은 슬레이브 장치의 구조를 버스인터페이스를 담당하는 부분과 주 기능을 담당하는 부분으로 분리하여 구성하고, 클록을 별도로 인가하여 주 기능 부의 클록만을 다이나믹 클록 게이팅하는 방식으로 버스 구조, 특히 파이프라인 방식의 버스 구조하에서 다이나믹 클록 게이팅을 가능하게 하는 슬레이브 장치 및 그 동작방법을 소개한다.

Description

버스 구조하에서 다이나믹 클록 게이팅이 가능한 슬레이브 장치 및 그 동작방법 {METHOD AND SLAVE DEVICE FOR SUPPORTING DYNAMIC CLOCK GATING UNDER BUS ARCHITECTURE}
도 1은 다이나믹 클록 게이팅의 일반적인 구성을 보여주는 도면이다.
도 2는 버스상에 마스터 장치와 슬레이브 장치들의 연결을 보여주는 도면이다.
도 3은 파이프라인 버스상의 트랜잭션들의 타이밍도이다.
도 4는 AMBA AHB의 마스터장치와 슬레이브장치간의 시그널들이다.
도 5는 다이나믹 클록 게이팅 가능한 슬레이브의 구성을 보여주는 도면이다.
도 6은 슬레이브장치와 시스템 콘트롤러간의 타이밍도이다.
* 도면의 주요부분에 대한 부호의 설명 *
500 : 버스구조하에서 다이나믹 클록게이팅이 가능한 슬레이브 장치
510 : 버스 인터페이스 부
521 : 트랜스퍼 디텍션 로직
522 : 어드레스 레지스터들
523 : 콘트롤 레지스터들
530 : 주 기능 부
550 : 신호 발생/수신 부
본 발명은 버스 구조하에서 동작하는 슬레이브 장치의 전력 소모 절감을 위한 기술에 대한 것으로 특히 파이프라인 버스 구조하에서 다이나믹 클록 게이팅을 가능하게 하는 슬레이브 장치의 구성 및 동작방법에 관한 것이다.
휴대폰과 PDA등의 모바일 기기의 보급이 늘어나고, 기술의 발전에 따라서 이러한 기기들을 구성하는 장치들의 계산능력이 크게 향상됨에 따라서, 제한적인 용량을 가지는 배터리로 동작되는 모바일 장치의 사용시간을 연장시키기 위해 구성 장치들, 예를 들면 메모리, 입출력 장치등의 전력 소모량을 최소화시키는 것은 매우 중요한 일이 되었다.
모바일 기기가 소모하는 전력은 크게 동작 상태의 전력(active power)과 대기 상태의 전력(stand-by power)으로 나누어 질 수 있는데, 일반적으로 대기 상태의 전력을 줄이는 것이 동작상태의 전력을 줄이는 것에 비해서 용이하고 중요성을 가진다. 그러나, 동작상태의 전력소모를 줄이려는 노력 없이는 충분한 전력소모 절감을 가져올 수 없기 때문에 이를 위한 여러 가지 방법들이 사용되고 있다. 예를 들면, 내부 장치의 동작 클록 주파수를 떨어뜨리거나, 동작 전압을 떨어뜨리는 방 법 등이 이용되고 있다. 하지만 이러한 방법들에는 장치의 성능을 희생시키는 반대 급부가 존재하기 때문에 성능이 중요시되는 장치들에 있어서는 적절치 않은 면이 있다.
따라서, 이러한 방법론들 이외에 가장 효율적인 방법은 일시적으로 장치가 동작하지 않을 때에는 장치에 인가되는 클록을 차단시키는 과정을 통해 전력소모를 절감시키는 다이나믹 클록 게이팅(Dynamic Clock Gating)으로 알려져 있다.
도1은 다이나믹 클록 게이팅의 단순화한 구성을 보여준다. 클록 게이팅 대상회로(100)은 클록 게이팅의 대상이 되는 회로, 즉, 전력소모 절감을 위해 클록 차단의 대상이 되는 회로를 의미하고, 클록 게이팅 회로(150)은 클록 게이팅을 위해 구성된 회로를 의미한다. 외부의 클록 발생원으로부터 인가된 클록(180)은 클록 게이팅 회로(150)을 구성하는 래치(160)의 클록 G와 AND 게이트(170)로 입력이 되고, 래치(160)의 입력 D에는 클록 게이팅 대상 회로에 연결된 상태 신호(status-signal,110)가 연결되어 있다. 따라서 AND 게이트(170)에 의해서 최종적으로 클록 게이팅 대상 회로(100)에 전달되는 게이팅된 클록(190)은 클록 게이팅 대상 회로(100)이 상태신호(110)을 통해 전달하는 상태에 따라서 클록 게이팅 대상 회로(100)에 대한 입력여부가 결정지어지게 된다. 즉 상태 신호가 '로우'인 경우(클록 게이팅 대상회로(100)이 데이터를 송/수신하는 등의 동작이 필요한 경우)에는 AND 게이트(170)에 의해서 클록 게이팅 대상회로(100)에 클록이 공급되고, 상태 신호가 '하이'인 경우에는 AND 게이트(170)에 의해서 클록 게이팅 대상회로(100)에 클록이 차단되게 된다.
한편 이와 같이 전력 소모량을 절감시키기 위한 대상이 되는 장치들은 메인 CPU와 대부분 버스 구조로서 연결된 상태로 동작하게 되는 것이 일반적인데, 버스는 여러 장치들을 연결하는 통신 채널(Communication channel)을 의미한다. 물리적으로는 장치들간을 연결하는 어드레스 라인, 데이터 라인, 콘트롤 라인으로 구성된 와이어(wire)를 의미하며, 논리적으로는 마스터와 슬레이브 장치들간의 신호전송을 위한 프로토콜의 의미를 가지기도 한다. 마스터 장치는 버스의 사용에 주도적인 역할을 하는 장치로서 버스의 모든 사용은 마스터 장치가 주체가 되어 기술된다. 마스터 장치는 일반적으로는 메인 CPU가 되나, 복수개의 마스터 장치가 한 버스에 물려져 동작할 수 있다. 슬레이브 장치는 마스터 장치의 반대적 역할로서 마스터 장치가 주도하는 요청에 응답하여 기능을 수행하게 된다. 따라서, 슬레이브 장치들은 버스 마스터가 어드레스를 통해서 해당 슬레이브에 대한 요청을 내리는지를 판단하고 이에 대응하여 동작을 하기 위한 준비를 하고 있는 것이 필요하게 된다. 도2는 일반적인 버스 환경에서 마스터 장치들(200)과 슬레이브 장치들(210)이 버스에 연결되어 동작되는 모습을 보여주며, 마스터 장치와 슬레이브 장치를 제외한 버스를 구성하는 요소들인 중재자(arbiter)와 디코더(decoder)등은 버스 표준 및 구현에 따라서 다른 구성을 가져올 수 있으므로 그림에서 제외하였다.
나아가서 높은 속도로 동작해야 하는 최신 기기들의 특성상 최신의 버스구조들은 다양한 개선방식을 취하고 있는데, 이중에서 파이프라인 방식은 하나의 트랜잭션(transaction)을 다른 트랜잭션들과 겹쳐질 수 있는 여러개의 단계(phase)로 분리하여 트랜잭션들이 서로 겹쳐져서 동작할 수 있도록 하여 버스의 효율성을 높 이는 방식이다. 예를 들면, 한 트랜잭션의 어드레스 페이즈(address phase)가 다른 트랜잭션의 데이터 페이즈(data phase)와 겹쳐지도록 하여 한 슬레이브 장치에 대한 트랜잭션이 종료되기 전에 다른 슬레이브 장치에 대한 트랜잭션들이 수행될 수 있도록 할 수 있다. 도3은 파이프라인 방식으로 동작하는 버스 구조하에서 여러 슬레이브 장치의 트랜잭션들이 병렬적으로 진행됨을 보여주는 트랜잭션의 타이밍도이다.
도3의 어드레스 페이즈 A1(310)은 제 1 슬레이브 장치에 대한 어드레스 페이즈를 의미하며, 어드레스 페이즈 A2(320)는 제 2 슬레이브 장치에 대한 어드레스 페이즈를 의미한다. 도3에서 보는 바와 같이 제 2 슬레이브 장치의 어드레스 페이즈 A2(320)는 제 1 슬레이브 장치의 데이터 페이즈 A1(330)과 서로 겹쳐질 수 있다. 마스터 장치는 이와 같이 제 1 슬레이브 장치에 대한 트랜잭션이 모두 끝나기 전에 어드레스 페이즈 A1(310)만을 마치고 제 2 슬레이브 장치에 대한 어드레스 페이즈 A2(320)를 바로 시작하게 되고, 전체적인 버스의 사용 효율을 높여서 단위 시간당 처리하는 트랜잭션의 수가 증가시킬 수 있게된다.
따라서, 앞서 언급한 다이나믹 클록 게이팅을 버스 구조하에서 실시할 경우에는, 특히 파이프라인 버스 구조하에서 실시할 경우에는 문제점이 존재하게 된다. 즉, 이상에서 설시한 바와 같이 파이프라인 버스 구조하에서는 한 슬레이브 장치가 수행하는 트랜잭션의 페이즈가 다른 슬레이브 장치의 트랜잭션의 다른 페이즈와 겹쳐질 수 있기 때문에, 모든 슬레이브 장치들은 다른 슬레이브 장치들의 트랜잭션이 진행되고 있는지의 여부와 상관없이 항상 버스 마스터가 어드레스 페이즈를 발생시 키는지를 놓치지 않고 지켜보다가 해당 슬레이브 장치를 지정한 어드레스 페이즈인 경우에 다음에 진행되는 페이즈들, 예를 들어 데이터 페이즈를 위해서 어드레스 페이즈의 정보를 유지시켜주는 과정이 필요하다. 이와 같은 이유로 슬레이브 장치들에 인가되는 클록이 다이나믹 클록 게이팅되어 차단되면 슬레이브의 트랜잭션 수행을 위해서 필수적인 어드레스 페이즈를 놓쳐버리게 되어 시스템이 정상적으로 동작할 수 없는 문제점이 발생한다.
상기와 같은 문제점을 해결하기 위해서 본 발명의 목적은 버스 구조하에서, 특히 파이프라인 버스 구조하에서 동작하는 슬레이브 장치에 대한 다이나믹 클록 게이팅을 가능하게 하여, 시스템의 성능을 저하시키지 않으면서도 전력소모가 최소화될 수 있는 슬레이브 장치의 구성을 제공하는데 있다.
본 발명의 또 다른 목적은 버스 구조하에서, 특히 파이프라인 버스 구조하에서도 다이나믹 클록 게이팅을 가능하게 하여, 시스템의 성능을 저하시키지 않으면서도 전력소모가 최소화될 수 있는 슬레이브 장치의 동작 방법을 제공하는데 있다.
상기 목적을 달성하기 위해 본 발명은, 파이프라인 버스 구조하에서 동작하는 슬레이브 장치의 구성을 버스 인터페이스를 담당하는 부분과 해당 슬레이브 장치의 주 기능을 담당하는 부분으로 분리하여 구성한다. 일반적인 칩 설계에 있어서도 칩 내부의 구성부분들이 담당하는 기능상, 설계상 분할에 의해서 내재적인 분리 설계가 이루어지고 있으나, 본 발명에서 의미하는 분리된 구성이라함은 각 구성부분들에 인가되는 클록들의 인가여부가 외부에서 각각 결정될 수 있도록 각 구성부분들에 인가되는 클록들이 독립적인 패드로부터 공급되도록 구성하여야 함을 의미한다. 이 별개로 인가되는 클록은 일반적으로는 동기화된 클록을 의미한다. 대부분의 경우 인터페이스 부와 주 기능 부의 동작 클록 주파수가 동일하기 때문이다. 그러나, 특별한 경우에 있어서는 각 기능 부의 동작 클록 주파수가 다른 경우도 있을 수 있을 것이고, 내부적으로는 클록을 체배하는 경우도 있을 수는 있다. 이와 같은 방식으로 별개로 인가되는 클록을 슬레이브 장치 외부에서 인가시키되, 다이나믹 클록 게이팅은 슬레이브 장치의 주 기능 부에 대해서만 이루어지도록 하여 슬레이브 장치의 주 기능 부에 인가되는 클록은 필요에 따라 차단과 입력여부를 제어할 수 있도록 하되, 버스 인터페이스 부에 인가되는 클록은 주 기능 부의 입력 클록과는 무관하게 지속적으로 유지시켜 버스인터페이스 부는 지속적으로 동작하도록 한다. 따라서 슬레이브 장치의 주 기능 부에 입력되는 클록이 차단된 경우에도 버스인터페이스 부의 동작은 무관하게 이루어질 수 있도록 각 구성부분이 독립적으로 구성되어야 한다.
본 발명의 하나의 실시형태에 따른 슬레이브 장치는 버스 인터페이스 부, 및 주 기능 부를 포함한다.
버스 인터페이스 부는 시스템 콘트롤러로부터 적어도 하나의 제 1 클록을 수신하고 상기 적어도 하나의 제 1 클록에 응답하여 동작하고 상기 시스템 콘트롤러에 클록입력 요청신호를 제공하며, 버스와 인터페이스한다.
주 기능 부는 상기 시스템 콘트롤러로부터 적어도 하나의 제 2 클록을 수신하고 상기 적어도 하나의 제 2 클록에 응답하여 동작한다.
상기 주 기능부가 동작할 필요가 없을 때 상기 버스 인터페이스 부는 상기 클록입력 요청신호를 디스에이블시키고 상기 시스템 콘트롤러는 상기 디스에이블된 클록입력 요청신호에 응답하여 상기 제 2 클록을 디스에이블시키며, 상기 주 기능 부가 동작할 필요가 있을 때 상기 버스 인터페이스 부는 상기 클록입력 요청신호를 인에이블시키고 상기 시스템 콘트롤러는 상기 인에이블된 클록입력 요청신호에 응답하여 상기 제 2 클록을 인에이블시킨다.
본 발명의 하나의 실시형태에 따른 슬레이브 장치 동작방법은 시스템 콘트롤러로부터 적어도 하나의 제 1 클록을 수신하는 단계, 주 기능 부의 동작이 필요한지 여부를 판단하는 단계, 상기 제 1 클록과 독립적으로 동작되는 적어도 하나의 제 2 클록을 상기 주 기능 부에 제공하는 단계, 상기 주 기능 부가 동작할 필요가 있을 때 상기 인터페이스 부가 상기 클록입력 요청신호를 인에이블시키는 단계, 상기 주 기능 부가 동작할 필요가 있을 때 상기 시스템 콘트롤러가 상기 인에이블된 클록입력 요청신호에 응답하여 상기 적어도 하나의 제 2 클록을 인에이블시키는 단계, 상기 주 기능 부가 동작할 필요가 없을 때 상기 버스 인터페이스 부가 상기 클록입력 요청신호를 디스에이블시키는 단계, 및 상기 주 기능 부가 동작이 필요가 없을 때 상기 시스템 콘트롤러가 상기 디스에이블된 클록입력 요청신호에 응답하여 상기 적어도 하나의 제 2 클록을 디스에이블시키는 단계를 포함한다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다. 도4는 현재 PDA등의 모바일 기기와 같은 임베디드 장치에서 널리 이용되고 있는 ARM사에서 제안되어 널리 사용되고 있는 버스구조인 AMBA(Advanced Microcontroller Bus Architecture)의 AHB(Advanced High-performance Bus)구조하에서 동작하는 버스 마스터와 슬레이브 장치들의 기본적인 시그널을 보여준다. AMBA 버스는 AHB, ASB(Advanced System Bus), APB(Advanced Peripheral Bus)의 3가지 버스 타입을 가지며 그중의 AHB는 시스템 버스로서 파이프라인 방식으로 동작한다. 도 4에 나타난 시스널들을 개괄적으로 설명하면,
HADDR[31:0] : 32 비트 시스템 어드레스 버스
HRDATA[31:0] : 32 비트 읽기 데이터 버스
(슬레이브 장치로부터 마스터 장치로 전달)
HRESP[1:0] : 트랜스퍼 응답 (트랜스퍼의 상태, OKAY,ERROR, RETRY, SPLIT중 하나)
HREADY: 슬레이브가 데이터를 보낼 준비가 되어 있음을 알리는 시그널
('하이'일 경우 슬레이브가 준비되어 있음, '로우'일 경우는 슬레이브가 준비되어 있지 않음을 알림)
HWDATA[31:0] : 32비트 쓰기 데이터 버스
(마스터 장치로부터 슬레이브 장치로 전달)
HWRITE: 쓰기 트랜스퍼인 경우를 지정
('하이'인 경우 쓰기, '로우'인 경우 읽기)
HBUSREQx : x번째 마스터 장치가 버스 중재자(arbiter)에 버스 사용이 필요함을 요청하는 시그널
HGRANTx : x번째 마스터 장치가 버스를 사용할 수 있음을 알리는 시그널
HBUSREQx와 HGRANTx는 한 버스상에 복수개의 마스터 장치가 존재할 경우에 마스터 장치들간에 버스에 대한 사용권을 중재하는 역할을 하는 중재자(arbiter)에 대한 요청시그널과 중재자가 마스터 장치에 보내는 사용허여 시그널을 나타낸다. 이들 시그널 중에서 본 발명과 관련이 되어 중요성을 가지는 시그널은 HREADY시그널이다. HREADY 시그널은 슬레이브 장치가 동작을 할 준비가 되어 있음을 마스터 장치에 알려주는 시그널이며, HREADY 신호가 마스터 장치에 인가되면, 마스터장치는 지체없이 새로운 트랜잭션의 어드레스 페이즈를 시작하게 된다. 따라서 클록이 다이나믹 클록 게이팅되어 차단된 슬레이브 장치들의 경우는 어드레스 페이즈를 놓쳐버리게 되어 시스템이 정상적으로 동작할 수 없는 앞서 종래기술의 문제점에서 언급하였던 문제점이 발생하게 된다.
도 5에서는 본 발명의 슬레이브 장치(500)의 구성과 슬레이브 장치가 실제로 버스(580) 및 클록의 인가여부를 결정하는 시스템 콘트롤러(550)에 연결된 모습을 보여준다. 인터페이스 클록(560)은 버스 인터페이스 부에 공급되는 제 1 클록이며 모듈클록(570)은 슬레이브 장치의 주 기능 부에 공급되는 제 2 클록의 연결을 보여준다. 도 5에서 보여주는 바와 같이 복수개의 슬레이브 장치(500)들이 시스템 콘트롤러(550)들에 연결될 수 있으며, 각각 제 1 클록인 인터페이스 클록(560)과 제 2 클록인 모듈 클록(570)을 입력받게 된다. 이들 중에서 주 기능 부에 공급되는 제 2 클록은 일반적으로 직렬 연결된 클록 버퍼들을 이용하여 1개로 구성시킬 수도 있고, 회로 구성에 따라서는 분배된 클록 브랜치를 이용하여 2개 이상으로 구성시킬 수도 있다. 즉, 이러한 모듈 클록의 구성은 당해 슬레이브 장치의 주 기능 부의 설계구조에 따라서 달라질 수 있다. 슬레이브 장치의 주 기능 부(530)는 슬레이브 장치가 수행해야 하는 목적에 따라서 DRAM, SRAM 또는 Flash 메모리등의 반도체 메모리를 관리하는 메모리 콘트롤러 또는 HDD, ODD 등의 보조기억장치를 관리하는 메모리 관련 장치일 수 있다. 뿐만아니라, LCD 디스플레이등을 담당하는 구동 부, 사운드 발생 부 등을 포함한 입출력 관련 장치일 수도 있다. 이처럼 주 기능 부는 해당 슬레이브 장치가 수행해야 하는 목적에 따라서 다양한 구성요소를 포함하고 있을 수 있다.
버스인터페이스 부(510)는 일반적으로 트랜스퍼 디텍션 로직(transfer detection logic, 521)과 어드레스 레지스터(address register, 522)들과 콘트롤 레지스터(control register, 523)들을 포함한 레지스터 부(524) 및 시스템 콘트롤러와의 신호를 주고 받는 신호 발생/수신 부(525)로 구성된다. 트랜스퍼 디텍션 로직(521)은 지속적으로 버스를 살펴보면서 마스터 장치가 지정한 어드레스 페이즈가 당해 슬레이브 장치를 지정한 것인지를 판단해내는 부분이다. 트랜스퍼 디텍션 로직(521)에서 버스 트랜잭션이 당해 슬레이브 장치를 목적으로 한 것으로 검출하면, 레지스터 부(524)에 포함된 어드레스 레지스터들(522)과 콘트롤 레지스터들(523)은 이후의 동작, 예를 들어 데이터 페이즈의 진행을 위해서 어드레스 페이즈의 어드레스 정보와 콘트롤 정보등을 유지하고 있게 된다. 한편 트랜스퍼 디텍션 로직(521)은 신호 발생/수신 부(525)와도 연동하여 동작하게 되는데, 신호 발생/수신 부(525)는 시스템 콘트롤러(550)에 대하여 슬레이브 장치의 주 기능부(530)에 대한 제 2 클록의 입력 요청 신호(551)를 전달하고, 시스템 콘트롤러(550)로부터 전달되는 제 2 클록의 입력 확인 신호(552)를 수신하는 역할을 한다.
본 발명의 대상이 되는 슬레이브 장치의 외부에 존재하는 시스템 콘트롤러(550)는 시스템을 구성하는 장치들에 대한 클록의 인가여부를 관할하는 장치로서 시스템 클록으로부터 클록을 분배하여 각 장치들에 공급해주는 역할을 하게 된다. 시스템 콘트롤러(550)에는 도1에서 설명한 클록 게이팅 회로(150)가 포함되어져서 클록을 공급 받는 장치들의 상태 신호에 따라서 해당 장치에 대한 클록 입력 여부를 결정지어주는 장치의 역할을 할 수 있으며, 시스템 콘트롤러(550)가 가지는 출력 클록 수 등의 구성은 시스템에 따라 달라질 수 있다. 시스템 콘트롤러(550)와 슬레이브 장치(500)의 버스 인터페이스 부(510)가 슬레이브 장치(500)의 주 기능 부(530)에 입력되는 제 2 클록의 입력과 차단을 제어하는 방법은 도6과 함께 설명하기로 한다.
도6은 슬레이브 장치와 클록의 인가여부를 결정하는 시스템 콘트롤러간의 신호와 시스템 클록 및 버스 인터페이스 부에 공급되는 제 1 클록과 클록 게이트되어 슬레이브 장치의 주 기능 부에 공급되는 제 2 클록들간의 타이밍을 보여주는 타이밍도이다.
시스템 클록(600)은 버스 동작의 기준이 되는 입력 클록을 도시한 것이며, 버스 인터페이스 부 클록(610)은 슬레이브 장치의 버스 인터페이스 부에 인가되는 제 1 클록을 도시한 것이고, 주 기능 부 클록(620)은 슬레이브 장치의 주 기능 부에 인가되는 제 2 클록을 도시한 것이다.
슬레이브 장치의 버스 인터페이스 부는 주 기능 부의 동작이 필요없는 시점(650)에서 시스템 콘트롤러에 대해 제 2 클록 입력 요청 신호(630)를 '로우'로 인가시키고, 시스템 콘트롤러는 이 신호에 대응하여 주 기능 부에 인가되는 제 2 클록(620)을 차단시키고, 제 2 클록 입력 확인 신호(640)를 '로우'로 인가시킨다. 제 2 클록 입력 요청 신호와 제 2 클록 및 제 2 클록 입력 확인 신호의 변이 순서는 도6에서 확인이 가능하다.
반대로 슬레이브 장치의 버스 인터페이스 부는 주 기능 부의 동작이 필요한 시점(660)에서 시스템 콘트롤러에 대해 제 2 클록 입력 요청 신호(630)를 '하이'로 인가시키고, 시스템 콘트롤러는 이 신호에 대응하여 주 기능 부에 제 2 클록(620)을 다시 인가시키고, 제 2 클록 입력 확인 신호(640)를 '하이'로 인가시킨다. 마찬가지로 제 2 클록 입력 요청 신호와 제 2 클록 및 제 2 클록 입력 확인 신호의 변이 순서는 도6에서 확인이 가능하다.
상기 슬레이브 장치의 동작방법에 따를 경우에 버스구조하에서도 슬레이브 장치의 버스 인터페이스 부는 지속적으로 동작하면서 버스상에 이루어지는 트랜잭션들의 어드레스 페이즈를 누락없이 검출해낼 수가 있게 되고, 주 기능 부는 필요없는 경우에 클록 차단되어 전류소모량을 최소화시킬 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
상기와 같은 본 발명에 따르면, 파이프라인 버스 구조를 채택한 시스템에서 슬레이브 장치의 주 기능 부가 동작 중일 때에는 버스 인터페이스 부와 주 기능 부에 클록이 함께 인가되어 기존의 방식과 동일하게 동작을 하게 되지만, 슬레이브 장치의 주 기능 부의 동작이 일시적으로 필요 없는 시점에서는 주 기능 부의 클록만을 차단하여 슬레이브 장치의 전력소모를 최소화할 수 있다.
일반적으로 슬레이브 장치의 버스 인터페이스 부는 수십~수백 단위의 레지스터로 구성되지만, 주 기능 부는 수천에서 많게는 수만, 수십만 단위의 레지스터들로 구성되어 높은 커패시턴스를 가지게 된다. 따라서 동작하지 않는 경우에는 주 기능 부에 공급되는 클록을 차단시킴으로써 다이나믹 클록 게이팅을 하지 않는 경우에 비해 칩의 전류소모량을 적게는 수십, 많게는 수천의 비율로 절감시킬 수 있다.
이러한 칩 단위의 전류 절감 효과를 통해서 전체적으로 모바일 기기의 전류 소모량을 감소시킬 수 있고, 제한된 배터리 용량하에서 사용시간의 연장이라는 효과를 가져올 수 있다.

Claims (15)

  1. 시스템 콘트롤러로부터 적어도 하나의 제 1 클록을 수신하고 상기 적어도 하나의 제 1 클록에 응답하여 동작하고 상기 시스템 콘트롤러에 클록입력 요청신호를 제공하며, 버스와 인터페이스하는 버스 인터페이스 부; 및
    상기 시스템 콘트롤러로부터 적어도 하나의 제 2 클록을 수신하고 상기 적어도 하나의 제 2 클록에 응답하여 동작하는 주 기능 부를 포함하고,
    상기 주 기능부가 동작할 필요가 없을 때 상기 버스 인터페이스 부는 상기 클록입력 요청신호를 디스에이블시키고 상기 시스템 콘트롤러는 상기 디스에이블된 클록입력 요청신호에 응답하여 상기 제 2 클록을 디스에이블시키며, 상기 주 기능 부가 동작할 필요가 있을 때 상기 버스 인터페이스 부는 상기 클록입력 요청신호를 인에이블시키고 상기 시스템 콘트롤러는 상기 인에이블된 클록입력 요청신호에 응답하여 상기 제 2 클록을 인에이블시키는 것을 특징으로 하는 슬레이브 장치.
  2. 제 1항에 있어서, 상기 제 1 클록과 상기 제 2 클록은 동기되어 있는 것을 특징으로 하는 슬레이브 장치.
  3. 제 1항에 있어서, 상기 버스 인터페이스부에 연결된 버스구조는 파이프라인 방식으로 동작하는 것을 특징으로 하는 슬레이브 장치.
  4. 제 3항에 있어서, 상기 파이프라인 방식 버스구조는 AMBA 구조의 AHB인 것을 특징으로 하는 슬레이브 장치.
  5. 제 1항에 있어서, 상기 버스 인터페이스 부는,
    상기 버스에 연결되어 상기 버스를 관찰하여 버스 트랜잭션의 어드레스 페이즈를 감지할 수 있는 트랜스퍼 디텍션 로직부;
    상기 어드레스 페이즈의 정보를 유지시키는 어드레스 레지스터들 및 콘트롤 레지스터들을 포함한 레지스터부; 및
    상기 클록입력 요청신호를 발생시켜 상기 시스템 콘트롤러에 제공하는 클록입력 요청신호 발생부를 포함하는 것을 특징으로 하는 슬레이브 장치.
  6. 제 5항에 있어서, 상기 슬레이브 장치는
    상기 제 2 클록이 상기 주 기능 부에 전달되었는지를 확인하기 위한 클록입력 확인신호 수신부를 더 포함하는 것을 특징으로 하는 슬레이브 장치.
  7. 제1항에 있어서, 상기 주 기능 부는 메모리 관련 장치인 것을 특징으로 하는 슬레이브 장치.
  8. 제1항에 있어서, 상기 주 기능 부는 입출력 관련 장치인 것을 특징으로 하 는 슬레이브 장치.
  9. 시스템 콘트롤러로부터 적어도 하나의 제 1 클록을 수신하는 단계;
    주 기능 부의 동작이 필요한지 여부를 판단하는 단계;
    상기 제 1 클록과 독립적으로 동작되는 적어도 하나의 제 2 클록을 상기 주 기능 부에 제공하는 단계;
    상기 주 기능 부가 동작할 필요가 있을 때 상기 인터페이스 부가 상기 클록입력 요청신호를 인에이블시키는 단계;
    상기 주 기능 부가 동작할 필요가 있을 때 상기 시스템 콘트롤러가 상기 인에이블된 클록입력 요청신호에 응답하여 상기 적어도 하나의 제 2 클록을 인에이블시키는 단계;
    상기 주 기능 부가 동작할 필요가 없을 때 상기 버스 인터페이스 부가 상기 클록입력 요청신호를 디스에이블시키는 단계; 및
    상기 주 기능 부가 동작이 필요가 없을 때 상기 시스템 콘트롤러가 상기 디스에이블된 클록입력 요청신호에 응답하여 상기 적어도 하나의 제 2 클록을 디스에이블시키는 단계를 포함하는 슬레이브 장치 동작방법.
  10. 제 9항에 있어서, 상기 주 기능 부의 동작이 필요한지 여부를 판단하는 단계는 버스 인터페이스 부가 마스터 장치로부터 버스 상에 전달되는 어드레스 페이즈를 검출하여 상기 슬레이브 장치를 목적으로 한 트랜잭션일 경우에 주 기능 부의 동작이 필요한 것으로 판단하는 것을 특징으로 하는 슬레이브 장치 동작방법.
  11. 제 9항에 있어서, 상기 주 기능 부의 동작이 필요한 지 여부를 판단하는 단계는 해당 슬레이브 장치에 대한 트랜잭션이 진행 중인 경우에 주 기능 부의 동작이 필요한 것으로 판단하는 것을 특징으로 하는 슬레이브 장치 동작방법.
  12. 제 9항에 있어서, 상기 적어도 하나의 제 2 클록을 제공하는 단계는
    상기 슬레이브 장치의 버스 인터페이스 부는 마스터 장치로부터 버스 상에 전달되는 어드레스 페이즈를 검출하여 상기 클록입력 요청신호를 활성화 시키는 단계; 및
    상기 슬레이브 장치로부터 상기 클록입력 요청신호가 활성화 상태로 놓인 것이 검출되면, 상기 슬레이브 장치의 주 기능 부에 입력되는 제 2 클록은 입력시키고, 상기 슬레이브 장치의 버스 인터페이스 부에 입력되는 제 1 클록은 그대로 유지시키는 단계를 포함하는 것을 특징으로 하는 슬레이브 장치 동작 방법.
  13. 제 12항에 있어서, 상기 클록입력 요청신호가 활성화 상태로 놓인 것이 검출되면 상기 슬레이브 장치에 대한 클록입력 확인신호를 활성화 상태로 놓는 단계를 포함하는 것을 특징으로 하는 슬레이브 장치 동작방법.
  14. 제 9항에 있어서, 상기 적어도 하나의 제 2 클록을 디스에이블시키는 단계는
    상기 슬레이브 장치의 버스 인터페이스 부에서 상기 클록입력 요청신호를 비활성화 시키는 단계; 및
    상기 클록입력 요청신호가 비활성화 상태로 놓인 것이 검출되면, 상기 슬레이브 장치의 주 기능 부에 입력되는 제 2 클록은 차단시키고, 상기 슬레이브 장치의 버스 인터페이스 부에 입력되는 제 1 클록은 그대로 유지시키는 단계를 포함하는 것을 특징으로 하는 슬레이브 장치 동작방법.
  15. 제 14항에 있어서, 상기 슬레이브 장치로부터의 상기 클록입력 요청신호가 비활성화 상태로 놓인 것이 검출되면 상기 클록입력 확인신호를 비활성화 상태로 놓는 단계를 포함하는 것을 특징으로 하는 슬레이브 장치 동작방법.
KR1020040034082A 2004-05-14 2004-05-14 버스 구조하에서 다이나믹 클록 게이팅이 가능한 슬레이브장치 및 그 동작방법 KR100591524B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020040034082A KR100591524B1 (ko) 2004-05-14 2004-05-14 버스 구조하에서 다이나믹 클록 게이팅이 가능한 슬레이브장치 및 그 동작방법
US11/124,271 US7346723B2 (en) 2004-05-14 2005-05-09 Slave devices and methods for operating the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040034082A KR100591524B1 (ko) 2004-05-14 2004-05-14 버스 구조하에서 다이나믹 클록 게이팅이 가능한 슬레이브장치 및 그 동작방법

Publications (2)

Publication Number Publication Date
KR20050108868A KR20050108868A (ko) 2005-11-17
KR100591524B1 true KR100591524B1 (ko) 2006-06-19

Family

ID=35310672

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040034082A KR100591524B1 (ko) 2004-05-14 2004-05-14 버스 구조하에서 다이나믹 클록 게이팅이 가능한 슬레이브장치 및 그 동작방법

Country Status (2)

Country Link
US (1) US7346723B2 (ko)
KR (1) KR100591524B1 (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005250650A (ja) * 2004-03-02 2005-09-15 Nec Electronics Corp マルチレイヤシステム及びクロック制御方法
DE102006004346A1 (de) * 2006-01-30 2007-10-18 Deutsche Thomson-Brandt Gmbh Datenbusschnittstelle mit abschaltbarem Takt
JP2007287029A (ja) * 2006-04-19 2007-11-01 Freescale Semiconductor Inc バス制御システム
CN101473286B (zh) * 2006-06-29 2012-05-30 Arm有限公司 控制数据处理设备中的功率消耗
EP2080300B1 (en) * 2006-10-31 2018-09-19 NXP USA, Inc. Network and method for setting a time-base of a node in the network
JP2009237249A (ja) * 2008-03-27 2009-10-15 Hitachi Displays Ltd 表示装置
US8806258B2 (en) 2008-09-30 2014-08-12 Intel Corporation Platform communication protocol
US9021170B2 (en) * 2011-06-29 2015-04-28 Texas Instruments Incorporated System and method for improving ECC enabled memory timing
CN102439535A (zh) * 2011-10-25 2012-05-02 深圳市海思半导体有限公司 降低动态功耗的方法和电子设备
CN103092803B (zh) * 2011-10-27 2016-04-13 联芯科技有限公司 从设备的时钟控制方法及基带芯片
KR102280734B1 (ko) 2014-12-09 2021-07-21 삼성전자주식회사 시스템 온 칩과 이를 포함하는 모바일 전자 기기
KR102387466B1 (ko) 2015-09-18 2022-04-15 삼성전자주식회사 반도체 장치
KR102381361B1 (ko) * 2021-11-17 2022-04-01 (주)가온칩스 다이나믹 클럭 게이팅 장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970008802A (ko) * 1995-07-19 1997-02-24 김주용 전원 공급 제어장치
KR0158902B1 (ko) * 1994-10-13 1999-02-18 정장호 마스터/슬레이브 보드간의 직렬데이타 송수신 장치 및 방법

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06295243A (ja) 1993-04-08 1994-10-21 Mitsubishi Electric Corp データ処理装置
JPH0883133A (ja) 1994-09-12 1996-03-26 Toshiba Corp コンピュータシステム及びそのクロック制御方法
KR970008802B1 (en) 1994-10-07 1997-05-29 Daewoo Telecom Co Ltd Apparatus for selecting unit
JP3505018B2 (ja) * 1994-11-22 2004-03-08 株式会社ルネサステクノロジ 半導体集積回路
US5901322A (en) * 1995-06-22 1999-05-04 National Semiconductor Corporation Method and apparatus for dynamic control of clocks in a multiple clock processor, particularly for a data cache
US6115823A (en) * 1997-06-17 2000-09-05 Amphus, Inc. System and method for task performance based dynamic distributed power management in a computer system and design method therefor
KR100289396B1 (ko) 1998-04-14 2001-05-02 김영환 클럭발생회로
JP4236729B2 (ja) * 1998-05-07 2009-03-11 株式会社リコー データ処理装置
US6232820B1 (en) * 1999-06-14 2001-05-15 Intel Corporation Method and apparatus for dynamic clock gating
US6434704B1 (en) * 1999-08-16 2002-08-13 International Business Machines Corporation Methods for improving the efficiency of clock gating within low power clock trees
US6609209B1 (en) * 1999-12-29 2003-08-19 Intel Corporation Method and apparatus for reducing the power consumed by a processor by gating the clock signal to pipeline stages
EP1286259A1 (de) * 2001-08-21 2003-02-26 Alcatel Modulares Rechnersystem
US20030135676A1 (en) * 2002-01-17 2003-07-17 Koninklijke Philips Electronics N.V. Low-power bus interface
US7007181B2 (en) * 2002-04-23 2006-02-28 Oki Electric Industry Co., Ltd. Microcontroller
JP3962923B2 (ja) * 2003-03-20 2007-08-22 セイコーエプソン株式会社 半導体装置、半導体回路、電子機器及びクロック供給制御方法
US6915438B2 (en) * 2003-04-04 2005-07-05 Arraycomm, Inc Distributed power management method for monitoring control/status signal of sub-modules to manage power of sub-modules by activating clock signal during operation of sub-modules
US6822481B1 (en) * 2003-06-12 2004-11-23 Agilent Technologies, Inc. Method and apparatus for clock gating clock trees to reduce power dissipation
JP4136822B2 (ja) * 2003-07-31 2008-08-20 富士通株式会社 半導体集積回路装置、クロック制御方法及びデータ転送制御方法
US6906554B1 (en) * 2003-12-16 2005-06-14 Faraday Technology Corp. Pipeline-based circuit with a postponed clock-gating mechanism for reducing power consumption and related driving method thereof

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0158902B1 (ko) * 1994-10-13 1999-02-18 정장호 마스터/슬레이브 보드간의 직렬데이타 송수신 장치 및 방법
KR970008802A (ko) * 1995-07-19 1997-02-24 김주용 전원 공급 제어장치

Also Published As

Publication number Publication date
KR20050108868A (ko) 2005-11-17
US7346723B2 (en) 2008-03-18
US20050256986A1 (en) 2005-11-17

Similar Documents

Publication Publication Date Title
US6895530B2 (en) Method and apparatus for controlling a data processing system during debug
US7188263B1 (en) Method and apparatus for controlling power state of a multi-lane serial bus link having a plurality of state transition detectors wherein powering down all the state transition detectors except one
JP6092649B2 (ja) 演算装置、アレイ型演算装置およびその制御方法、情報処理システム
KR100591524B1 (ko) 버스 구조하에서 다이나믹 클록 게이팅이 가능한 슬레이브장치 및 그 동작방법
US20070162648A1 (en) DMA Controller With Self-Detection For Global Clock-Gating Control
US11169593B2 (en) Selective coupling of memory to voltage rails for different operating modes
US9557802B2 (en) Method of controlling SDIO device and related SDIO system and SDIO device
KR20040076281A (ko) 시스템, 전력 소비 절감 방법 및 전자 회로
US10732697B2 (en) Voltage rail coupling sequencing based on upstream voltage rail coupling status
JP3552213B2 (ja) Sdメモリカードホストコントローラ及びクロック制御方法
CN111741518A (zh) 一种WiFi芯片电路及WiFi装置
US7155631B2 (en) Information processing unit with a clock control circuit having access to the system bus during system clock changes
JP4202754B2 (ja) バス結合された回路ブロックのための電力管理の方法及び構成
US7114038B2 (en) Method and apparatus for communicating between integrated circuits in a low power mode
US20160062814A1 (en) Error response circuit, semiconductor integrated circuit, and data transfer control method
KR100737549B1 (ko) 주소 버스 전력 제어에 관한 장치 및 방법
US8060676B2 (en) Method of hot switching data transfer rate on bus
EP0783148A2 (en) Power conserving clocking system
CN115543913B (zh) 片上系统、电子设备和基于片上系统的功率管理方法
JPH10301657A (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: 20130531

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140530

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150601

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160531

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20190530

Year of fee payment: 14