KR102387466B1 - 반도체 장치 - Google Patents

반도체 장치 Download PDF

Info

Publication number
KR102387466B1
KR102387466B1 KR1020150132600A KR20150132600A KR102387466B1 KR 102387466 B1 KR102387466 B1 KR 102387466B1 KR 1020150132600 A KR1020150132600 A KR 1020150132600A KR 20150132600 A KR20150132600 A KR 20150132600A KR 102387466 B1 KR102387466 B1 KR 102387466B1
Authority
KR
South Korea
Prior art keywords
clock
functional blocks
register
gating unit
data
Prior art date
Application number
KR1020150132600A
Other languages
English (en)
Other versions
KR20170034210A (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 KR1020150132600A priority Critical patent/KR102387466B1/ko
Priority to US15/212,406 priority patent/US9806695B2/en
Publication of KR20170034210A publication Critical patent/KR20170034210A/ko
Application granted granted Critical
Publication of KR102387466B1 publication Critical patent/KR102387466B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K17/00Electronic switching or gating, i.e. not by contact-making and –breaking
    • H03K17/30Modifications for providing a predetermined threshold before switching
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/01Details
    • H03K3/012Modifications of generator to improve response time or to decrease power consumption
    • 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/06Clock generators producing several clock signals
    • 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
    • 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/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • 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/3237Power saving characterised by the action undertaken by disabling clock generation or distribution
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/0008Arrangements for reducing power consumption
    • H03K19/0016Arrangements for reducing power consumption by using a control or a clock signal, e.g. in order to apply power supply
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/15Arrangements in which pulses are delivered at different times at several outputs, i.e. pulse distributors
    • H03K5/15013Arrangements in which pulses are delivered at different times at several outputs, i.e. pulse distributors with more than two outputs
    • H03K5/1506Arrangements in which pulses are delivered at different times at several outputs, i.e. pulse distributors with more than two outputs with parallel driven output stages; with synchronously driven series connected output stages
    • H03K5/15093Arrangements in which pulses are delivered at different times at several outputs, i.e. pulse distributors with more than two outputs with parallel driven output stages; with synchronously driven series connected output stages using devices arranged in a shift register
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

반도체 장치가 개시된다. 본 개시의 실시예에 따른 반도체 장치는 서로 다른 기능을 수행하는 복수의 기능 블록; 기준 클럭을 생성하는 클럭 생성부; 및 상기 기준 클럭을 기초로 상기 복수의 기능 블록 각각에 대응하는 복수의 클럭을 생성하여 상기 복수의 기능 블록에 제공하되, 상기 복수의 클럭을, 대응하는 기능 블록의 상태에 따라 게이팅하는 클럭 게이팅부를 포함할 수 있다.

Description

반도체 장치 {Semiconductor device}
본 개시는 반도체 장치에 관한 것으로서, 더욱 상세하게는 클럭 게이팅을 수행하는 반도체 장치에 관한 것이다.
최근, 전자 제품들이 고집적, 고속화 및 저전력화되고 있다. 특히, 모바일 장치와 같이 배터리로 동작하는 전자 장치의 경우, 소비 전력을 최소화하는 것이 중요한 이슈가 되고 있다. 전자 장치의 소비 전력을 감소시키기 위하여, 클럭 게이팅이 연구되고 있다. 클럭 게이팅은, 전자 장치에 구비되는 반도체 장치들 또는 반도체 장치들 내부에 집적된 회로들에서 사용되는 클럭을 제어하는 기술이다. 반도체 장치들 또는 반도체 장치들 내부의 집적 회로들 중 일부가 사용되지 않을 때, 사용되지 않는 부분에 공급되는 클럭을 차단할 수 있다. 클럭을 선택적으로 차단함으로써, 반도체 장치의 소비 전력이 감소될 수 있다.
본 개시의 기술적 사상이 해결하려는 기술적 과제는 효과적으로 클럭 게이팅을 수행함으로써, 소비 전력이 감소되는 반도체 장치를 제공하는 데에 있다.
상기 기술적 과제를 달성하기 위한 본 개시의 실시예에 따른 반도체 장치는, 서로 다른 기능을 수행하는 복수의 기능 블록; 기준 클럭을 생성하는 클럭 생성부; 및 상기 기준 클럭을 기초로 상기 복수의 기능 블록 각각에 대응하는 복수의 클럭을 생성하여 상기 복수의 기능 블록에 제공하되, 상기 복수의 클럭을, 대응하는 기능 블록의 상태에 따라 게이팅하는 클럭 게이팅부를 포함한다.
상기 기술적 과제를 달성하기 위한 본 개시의 실시예에 따른 반도체 장치는, 제1 클럭에 기초하여 동작하는 적어도 하나의 제1 레지스터를 포함하는 제1 기능 블록; 제2 클럭에 기초하여 동작하는 적어도 하나의 제2 레지스터를 포함하는 제2 기능 블록; 외부 장치로부터 데이터 및 어드레스를 수신하고, 상기 어드레스에 대응하는 레지스터에 상기 데이터를 전송하는 인터페이스부; 및 기준 클럭을 게이팅하여 상기 제1 클럭 및 상기 제2 클럭을 생성하고, 상기 제1 클럭을 제1 레인을 통해 상기 제1 기능 블록에 제공하고, 상기 제2 클럭을 제2 레인을 통해 상기 제2 기능 블록에 제공하는 클럭 게이팅부를 포함할 수 있다.
본 개시의 기술적 사상에 따른 반도체 장치에 따르면, 클럭이 사용되는 회로들에 대하여 독립적으로 클럭을 제공하고, 이때, 각 회로들의 상태에 따라 각 회로에 제공되는 클럭을 게이팅함으로써, 반도체 장치의 성능 저하 없이 효율적으로 클럭 게이팅을 수행하고, 소비 전력을 감소시킬 수 있다.
본 개시의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 개시의 실시예에 따른 반도체 장치를 개략적으로 나타내는 블록도이다.
도 2는 도 1의 반도체 장치의 타이밍도이다.
도 3은 본 개시의 실시예에 따른 반도체 장치의 일 구현예를 나타내는 블록도이다.
도 4는 본 개시의 실시예에 따른 반도체 장치의 일 구현예를 나타내는 블록도이다.
도 5는 도 4의 반도체 장치의 타이밍도이다.
도 6a 내지 도 6c는 도 4의 클럭 게이팅부의 구현예들을 나타낸다.
도 7은 본 개시의 실시예에 따른 반도체 장치의 일 구현예를 나타내는 블록도이다.
도 8은 도 7의 반도체 장치의 타이밍도이다.
도 9a 및 도 9b는 도 7의 클럭 게이팅부의 구현예들을 나타낸다.
도 10은 본 개시의 실시예에 따른 반도체 장치의 일 구현예를 나타내는 블록도이다.
도 11은 도 10의 반도체 장치의 타이밍도이다.
도 12는 본 개시의 실시예에 따른 반도체 장치의 일 구현예를 나타내는 블록도이다.
도 13은 도 12의 반도체 장치의 타이밍도이다.
도 14는 본 개시의 실시예에 따른 반도체 장치의 동작 방법을 나타내는 흐름도이다.
도 15는 본 개시의 실시예에 따른 이미지 센서를 나타내는 블록도이다.
도 16은 본 개시의 실시예에 따른 디스플레이 장치를 나타내는 블록도이다.
도 17은 본 개시의 실시예에 따른 컴퓨팅 시스템을 나타내는 블록도이다.
이하, 본 개시의 다양한 실시예가 첨부된 도면과 연관되어 기재된다. 본 개시의 다양한 실시예는 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들이 도면에 예시되고 관련된 상세한 설명이 기재되어 있다. 그러나, 이는 본 개시의 다양한 실시예를 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 개시의 다양한 실시예의 사상 및 기술 범위에 포함되는 모든 변경 및/또는 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용되었다.
본 개시의 다양한 실시예에서 사용될 수 있는“포함한다” 또는 “포함할 수 있다” 등의 표현은 개시(disclosure)된 해당 기능, 동작 또는 구성요소 등의 존재를 가리키며, 추가적인 하나 이상의 기능, 동작 또는 구성요소 등을 제한하지 않는다. 또한, 본 개시의 다양한 실시예에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 개시의 다양한 실시예에서 “또는” 등의 표현은 함께 나열된 단어들의 어떠한, 그리고 모든 조합을 포함한다. 예를 들어, “A 또는 B”는, A를 포함할 수도, B를 포함할 수도, 또는 A 와 B 모두를 포함할 수도 있다.
본 개시의 다양한 실시예에서 사용된 “제 1,”“제 2,”“첫째,”또는“둘째,”등의 표현들은 다양한 실시예들의 다양한 구성요소들을 수식할 수 있지만, 해당 구성요소들을 한정하지 않는다. 예를 들어, 상기 표현들은 해당 구성요소들의 순서 및/또는 중요도 등을 한정하지 않는다. 상기 표현들은 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 수 있다. 예를 들어, 제 1 사용자 기기와 제 2 사용자 기기는 모두 사용자 기기이며, 서로 다른 사용자 기기를 나타낸다. 예를 들어, 본 개시의 다양한 실시예의 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 새로운 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 새로운 다른 구성요소가 존재하지 않는 것으로 이해될 수 있어야 할 것이다.
본 개시의 다양한 실시예에서 사용한 용어는 단지 특정일 실시예를 설명하기 위해 사용된 것으로, 본 개시의 다양한 실시예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 개시의 다양한 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.
일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 개시의 다양한 실시예에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1은 본 개시의 실시예에 따른 반도체 장치를 개략적으로 나타내는 블록도이다.
도 1을 참조하면, 반도체 장치는 클럭 생성기(110), 클럭 게이팅부(120) 및 복수의 기능 블록(131, 132, 133)을 포함할 수 있다.
복수의 기능 블록(131, 132, 133)은 반도체 장치(100) 내에서 서로 다른 기능을 수행하는 집적 회로일 수 있다. 예를 들어, 반도체 장치(100)가 메모리 장치일 경우, 복수의 기능 블록(131, 132, 133)은 제어 로직, 로우 디코더, 칼럼 디코더, 전압 생성기 등을 포함할 수 있다. 다른 예로서, 반도체 장치(100)가 이미지 센서일 경우, 복수의 기능 블록(131, 132, 133)은 타이밍 생성기, 이미지 신호 처리부, 아날로그-디지털 변환기 등을 포함할 수 있다. 복수의 기능 블록(131, 132, 133)은 디지털 회로 또는 아날로그 회로로 구현될 수 있다. 복수의 기능 블록(131, 132, 133)은 각각의 기능 블록에 인가되는 클럭에 기초하여 동작할 수 있다. 제1 기능 블록(131)은 제1 클럭(CLK1)에 기초하여 동작하고, 제2 기능 블록(132)은 제2 클럭(CLK2)에 기초하여 동작하고, 제3 기능 블록(133)은 제3 클럭(CLK3)에 기초하여 동작할 수 있다.
한편, 도 1에서는 반도체 장치(100)가 세 개의 기능 블록(131, 132, 133)을 포함하는 것으로 도시되었으나, 이에 제한되는 것은 아니며, 반도체 장치(100)에 구비되는 기능 블록의 개수는 다양할 수 있다. 또한, 도 1에서, 각각의 기능 블록(131, 132, 133)에는 하나의 클럭 신호가 인가되는 것으로 도시되었으나, 이에 제한되는 것은 아니며, 각각의 기능 블록(131, 132, 133)에는 복수의 클럭이 인가될 수도 있다.
클럭 생성기(110)는 기준 클럭(RCLK)을 생성할 수 있다. 일 실시예에 있어서, 클럭 생성기(110)는 외부 장치로부터 수신되는 외부 클럭에 기초하여 기준 클럭(RCLK)을 생성할 수 있다. 예컨대, 외부 클럭에 동기되는 기준 클럭(RCLK)을 생성할 수 있다. 또는 외부 클럭을 분주하여 기준 클럭(RCLK)을 생성할 수 있다. 예컨대, 클럭 생성기(110)는 DLL(Delay Locked Loop) 또는 PLL(Phase Lock Loop) 등의 회로를 포함할 수 있다. 다른 실시예에 있어서, 클럭 생성기(110)는 인에이블 신호가 인가되면, 클럭을 생성할 수도 있다. 예컨대, 클럭 생성기(110)는 오실레이터 회로를 포함할 수 있다. 그러나, 이에 제한되는 것은 아니며, 클럭 생성기(110)는 설정된 주파수를 갖는 기준 클럭(RCLK)을 발생하는 다양한 종류의 회로로 구현될 수 있다.
일 실시예에 있어서, 클럭 생성기(110)는 복수의 기준 클럭(RCLK)을 생성할 수 있다. 복수의 기준 클럭(RCLK)은 서로 다른 주파수를 가지거나 또는 서로 다른 위상을 가질 수 있다.
클럭 게이팅부(120)는 클럭 생성기(110)로부터 기준 클럭(RCLK)을 수신하고, 기준 클럭(RCLK)을 기초로, 복수의 기능 블록(131, 132, 133) 각각에 대응하는 복수의 클럭(CLK1, CLK2, CLK3)을 생성할 수 있다. 복수의 클럭(CLK1, CLK2, CLK3)의 주파수 또는 위상은 서로 동일하거나 상이할 수 있다. 또는 복수의 클럭(CLK1, CLK2, CLK3) 중 일부 클럭의 주파수 또는 위상이 서로 동일할 수 있다.
클럭 게이팅부(120)는, 클럭 생성기(110)로부터 바로(directly) 기준 클럭(RCLK)을 수신할 수 있다. 또한 클럭 게이팅부(120)는 복수의 클럭(CLK1, CLK2, CLK3)을 각각 대응하는 기능 블록에 독립적으로 제공할 수 있다. 예를 들어, 클럭 게이팅부(120)는, 서로 다른 전송 경로를 통해 제1 클럭(CLK1)을 제1 기능 블록(131)에 제공하고, 제2 클럭(CLK2)을 제2 기능 블록(132)에 제공하고, 제3 클럭(CLK3)을 제3 기능 블록(133)에 제공할 수 있다.
한편, 클럭 게이팅부(120)는 복수의 클럭(CLK1, CLK2, CL3)을 대응하는 기능 블록의 상태에 따라 게이팅할 수 있다. 예를 들어, 클럭 게이팅부(120)는 기준 클럭(RCLK)을 기초로, 제1 기능 블록(131)에 제공되는 제1 클럭(CLK1)을 생성하되, 제1 기능 블록(131)의 상태에 따라 제1 클럭(CLK1)을 게이팅할 수 있다. 예컨대, 클럭 게이팅부(120)는 제1 기능 블록(131)이 동작 상태일 때, 제1 클럭(CLK1)을 제1 기능 블록(131)으로 출력할 수 있다. 클럭 게이팅부(120)는 제1 기능 블록(132)이 동작 상태가 아닐때, 예컨대 스탠바이 상태, 아이들 상태 또는 다른 기능 블록(또는 다른 회로)과 아무런 데이터를 송신 또는 수신하지 않을때, 제1 클럭(CLK1)을 차단할 수 있다. 이와 같이, 클럭 게이팅부(120)는 복수의 클럭(CLK1, CLK2, CL3)을 대응하는 기능 블록의 상태에 따라 개별적으로 게이팅할 수 있다.
본 개시의 실시예에 따른 반도체 장치(100)는 복수의 기능 블록(131, 132, 133)에 대하여 개별적으로 클럭을 제공하고, 복수의 기능 블록(131, 132, 133)에 대응하는 클럭들(CLK1, CLK2, CLK3)을 대응하는 기능 블록의 상태에 따라 게이팅할 수 있다. 이에 따라, 복수의 기능 블록(131, 132, 133) 중 동작 상태를 갖는 기능 블록에 개별적으로 대응하는 클럭이 전송되고, 동작 상태가 아닌 기능 블록에 대응하는 클럭은 기능 블록으로 전송되는 것이 차단된다. 반도체 장치(100)는 클럭의 전송을 최소화함으로써, 클럭의 토글링에 따른 소비 전력을 감소시킬 수 있다.
도 2는 도 1의 반도체 장치의 타이밍도이다. 도 2는 클럭들의 파형을 도시한다.
도 2를 참조하면, 제1 클럭(CLK1), 제2 클럭(CLK2) 및 제3 클럭(CLK3)은 기준 클럭(RCLK)을 클럭 게이팅하여 생성될 수 있다. 제1 클럭(CLK1)은 제1 기능 블록(도 1의 131)이 동작 상태를 가지는 제1 구간(time period)(T1)에 출력되고, 이외의 구간에 차단될 수 있다. 제2 클럭(CLK2)은 제2 기능 블록(도 1의 132)이 동작 상태를 가지는 제2 구간(T2)에 출력되고, 이외의 구간에 차단될 수 있다. 제3 클럭(CLK3)은 제3 기능 블록(도 1의 133)이 동작 상태를 가지는 제3 구간(T3) 및 제4 구간(T4)에 출력되고, 이외의 구간에 차단될 수 있다. 일 실시예에 있어서, 제1 클럭(CLK1), 제2 클럭(CLK2) 및 제3 클럭(CLK3)이 각각 출력되는 구간은 서로 오버랩될 수 있다.
이와 같이, 본 개시의 실시예에 따른 반도체 장치(도 1의 100)에서는, 복수의 기능 블록(131, 132, 133) 중 동작 상태의 기능 블록에 개별적으로 클럭이 전송되고, 동작 상태가 아닌 기능 블록에 제공되는 클럭은, 기능 블록으로 전송되는 것이 차단될 수 있다.
도 3은 본 개시의 실시예에 따른 반도체 장치의 일 구현예를 나타내는 블록도이다. 도 3은 도 1의 반도체 장치(100)의 구성이 기판(SUB) 상에 구현되는 예를 나타낸다.
도 3을 참조하면, 반도체 장치(100a)는 기판(SUB) 상에 집적되는 복수의 반도체 집적 회로를 포함할 수 있다. 도시된 바와 같이, 기판(SUB) 상에 복수의 기능 블록들(131, 132, 133), 클럭 생성기(110) 및 클럭 게이팅부(120)가 집적될 수 있다. 또한, 기판(SUB) 상에 각각의 반도체 집적 회로간의 신호 전송 경로(signal transmission path)가 배치될 수 있다. 예컨대, 제1 레인(Lane)(L1), 제2 레인(L3), 제3 레인(L4) 및 제4 레인(L4)이 신호 전송 경로로서 기판(SUB) 상에 배치될 수 있다. 도시되지는 않았으나, 복수의 레인(L1, L2, L3 및 L4) 각각에는 신호의 전송을 원활하게 하기 위한 복수의 버퍼 회로들이 배치될 수 있다. 예를 들어, 버퍼 회로는 인버터일 수 있다.
클럭 게이팅부(120)는 클럭 생성기(110)에 인접하게 배치될 수 있으며, 제4 레인(L4)을 통해 클럭 생성기(110)로부터 기준 클럭(RCLK)을 수신할 수 있다. 클럭 게이팅부(120)는 기준 클럭(RCLK)을 기초로 제1 클럭(CLK1), 제2 클럭(CLK2) 및 제3 클럭(CLK3)을 생성하고, 복수의 기능 블록(131, 132, 133) 각각의 상태를 기초로 대응하는 클럭을 게이팅할 수 있다.
클럭 게이팅부(120)는 포인트-투-포인트 연결을 통해 제1 기능 블록(131), 제2 기능 블록(132) 및 제3 기능 블록(133) 각각에 대하여 대응하는 클럭을 전송할 수 있다. 클럭 게이팅부(120)는 제1 레인(L1)을 통해 제1 클럭(CLK1)을 제1 기능 블록(131)으로 전송하고, 제2 레인(L2)을 통해 제2 클럭(CLK2)을 제2 기능 블록(132)으로 전송하고, 제3 레인(L3)을 통해 제3 클럭(CLK3)을 제3 기능 블록(133)으로 전송할 수 있다. 제1 레인(L1), 제2 레인(L2) 및 제3 레인(L3)의 길이는 서로 다를 수 있다. 일 실시예에 있어서 제4 레인(L4)의 길이는 제1 레인(L1), 제2 레인(L2) 및 제3 레인(L3)의 길이 중 최소 길이보다 짧을 수 있다. 다른 실시예에 있어서, 제4 레인(L4)의 길이는 제1 레인(L1), 제2 레인(L2) 및 제3 레인(L3)의 길이중 적어도 하나보다 짧을 수 있다.
이와 같이, 본 개시의 실시예에 따르면, 클럭 생성기(110)에 인접하게 배치되는 클럭 게이팅부(120)가 복수의 기능 블록(131, 132, 133) 각각에 대응하는 클럭들(CLK1, CLK2, CLK3)을 서로 다른 신호 전송 경로를 통해 전송하고, 복수의 기능 블록(131, 132, 133) 각각의 상태를 기초로 복수의 기능 블록(131, 132, 133)에 대응하는 클럭들(CLK1, CLK2, CLK3)을 각각 게이팅할 수 있다. 이에 따라, 동작하지 않는 기능 블록에 대응하는 클럭이 클럭 생성기(110)에 인접한 클럭 게이팅부(120)에서 미리 차단되고, 신호 전송 경로를 통해 전송되지 않는다.
전술한 바와 같이, 각각의 신호 전송 경로에는 복수의 버퍼 회로가 구비될 수 있다. 신호 전송 경로를 통해 클럭이 전송될 때, 복수의 버퍼 회로에서 클럭의 토글링에 따른 동적 소비 전력이 발생할 수 있다. 기능 블록에 제공되는 클럭이 기능 블록에 수신된 후, 게이팅될 경우, 클럭이 차단되더라도, 상기 클럭의 신호 전송 경로 및 기능 블록 내부의 클럭 수신 회로에서 클럭의 토글링에 따른 동적 소비 전력이 발생할 수 있다. 그러나, 본 개시의 실시예에 따른, 반도체 장치(100a)는, 클럭 생성기(110)에 인접하게 배치된 클럭 게이팅부(120)가 복수의 클럭(CLK1, CLK2, CLK3)을 별도의 신호 전송 경로를 통해 복수의 기능 블록(131, 132, 133)에 각각 전송하고, 이때, 동작 상태가 아닌 기능 블록에 대응하는 신호 전송 경로에는 클럭을 출력하지 않음으로써, 클럭 게이팅에 따른 소비 전력이 감소될 수 있다.
도 4는 본 개시의 실시예에 따른 반도체 장치의 일 구현예를 나타내는 블록도이다.
반도체 장치(100b)는 시리얼 인터페이스 방식을 통해 외부 장치(예컨대 반도체 장치(100b)가 탑재되는 전자 장치의 호스트 프로세서, 메모리 또는 유저 인터페이스 등)로부터 데이터(DATA)를 수신하거나 외부로 데이터(DATA)를 송신할 수 있다. 또한, 반도체 장치(100b)의 내부에서 데이터(DATA)는 버스 인터페이스 방식을 통해 전송될 수 있다.
도 4를 참조하면, 반도체 장치(100b)는 복수의 기능 블록(131, 132, 133), 클럭 생성기(110), 클럭 게이팅부(120b) 및 인터페이스부(140)를 포함할 수 있다. 도 1및 도 3의 클럭 생성기(110), 클럭 게이팅부(120) 및 복수의 기능 블록(131, 132, 133)에 대한 설명은 본 실시예에 적용될 수 있다.
복수의 기능 블록(131, 132, 133) 각각은 적어도 하나의 레지스터를 포함할 수 있다. 레지스터들(REG1, REG21, REG22, REG31, REG32)은 래치, 플립 플롭 등으로 구현될 수 있다. 레지스터들(REG1, REG21, REG22, REG31, REG32)은 대응하는 기능 블록에 제공되는 클럭 신호를 기초로, 수신되는 데이터를 저장할 수 있다. 예를 들어, 제1 기능 블록(131)의 레지스터 REG1은 제1 클럭(CLK1)에 응답하여 데이터를 저장하고, 제2 기능블록(132)의 레지스터 REG21, REG22는 제2 클럭(CLK2)에 응답하여 데이터를 저장하고, 제3 기능 블록(133)의 레지스터 REG31, REG32)는 제3 클럭(CLK3)에 응답하여 데이터를 저장할 수 있다.
이때, 각 레지스터에 저장되는 데이터는 레지스터가 구비되는 기능 블록의 동작 모드 또는 기능 블록의 동작 환경 설정을 위한 다양한 옵션과 관련된 데이터일 수 있으며, 외부 장치로부터 수신될 수 있다.
인터페이스부(140)는 외부로부터 데이터(DATA)를 수신하거나 외부로 데이터(DATA)를 송신할 수 있다. 인터페이스부(140)는 시리얼 인터페이스 방식으로 외부와 통신할 수 있으며, 시리얼 인터페이스는 예를 들어, MDDI(Mobile display digital interface), I2C(inter integrated circuit) 인터페이스, SPI(serial pheripheral interface), CCI(camera control interface), CSI(camera serial interface), MCU(micro controller unit) 인터페이스, MIPI(Mobile industry processor interface), eDP(embedded displayport) 인터페이스, 또는 HDMI(highdefinition multimedia interface) 중 하나 일 수 있다. 그러나 이에 제한되는 것은 아니며, 인터페이스부(140)는 다양한 시리얼 인터페이스 방식으로 통신할 수 있다. 한편, 도 4에서, 반도체 장치(100b)는 하나의 인터페이스부(140)를 포함하는 것으로 도시되었으나, 이에 제한되는 것은 아니며, 반도체 장치(100b)는 동종 또는 이종의 복수의 인터페이스부를 포함할 수 있다. 예를 들어, 반도체 장치(100b)는 두 개의 인터페이스부를 포함하며, 하나의 인터페이스부?z 외부로부터 데이터를 수신하고, 다른 인터페이스부는 외부로 데이터를 송신할 수 있다.
일 실시예에 있어서, 인터페이스부(140)는 데이터(DATA) 및 어드레스 신호(ADD)를 수신할 수 있다. 어드레스 신호(ADD)는 반도체 장치(100b) 내부에서 상기 데이터(DATA)가 전송되는 회로, 예컨대 레지스터를 나타낼 수 있다. 이하, 데이터(DATA)가 전송되는 회로는 반도체 장치(100b) 내부에 구비되는 레지스터인 경우를 가정하여 설명하기로 한다.
인터페이스부(140)는 수신된 어드레스 신호(ADD)를 디코딩하여, 데이터(DATA)가 전송될 레지스터(예컨대, 레지스터 REG1, REG21, REG22, REG31 및 REG22 중 하나)를 판단하고, 상기 레지스터에 데이터(DATA)를 전송할 수 있다. 인터페이스부(140)는 데이터 버스(DBUS)를 통해 데이터(DATA)를 전송할 수 있다. 이에 따라 인터페이스부(140)가 데이터(DATA)를 레지스터에 전송하는 구간에, 데이터 버스(DBUS)가 점유될 수 있다. 인터페이스부(140)는 또한, 레지스터의 어드레스 또는 레지스터가 구비되는 기능 블록의 어드레스를 포함하는 주소 정보(IFADD)를 클럭 게이팅부(120b)에 제공할 수 있다. 일 실시예에 있어서, 인터페이스부(140)는 주소 정보(IFADD)와 함께 레지스터 인에이블 신호(REGEN)를 게이팅부(120)에 제공할 수 있다. 레지스터 인에이블 신호(REGEN)는 레지스터에 데이터가 전송될 수 있는 상태를 나타낸다. 레지스터 인에이블 신호(REGEN)가 활성화된 구간에서(예컨대 레지스터 인에이블 신호(REGEN)의 레벨이 논리 하이일 때), 인터페이스부(140)가 데이터 버스(DBUS)를 통해 데이터(DATA)를 레지스터에 전송할 수 있으며, 레지스터는 데이터(DATA)를 수신하고 저장할 수 있다.
클럭 생성기(110)는 기준 클럭(RCLK)을 생성하며, 클럭 게이팅부(120b)는 기준 클럭(RCLK)에 기초하여 복수의 기능 블록(131, 132, 133) 각각에 제공되는 복수의 클럭(CLK1, CLK2, CLK3)을 생성할 수 있다.
클럭 게이팅부(120)는 인터페이스부(140)로부터 제공되는 주소 정보(IFADD) 및 레지스터 인에이블 신호(REGEN)를 기초로 복수의 클럭(CLK1, CLK2, CLK3)을 게이팅할 수 있다. 이에 따라, 클럭 게이팅부(120)는 레지스터 인에이블 신호(REGEN)가 활성화된 구간에, 주소 정보(IFADD)에 대응하는 기능 블록으로 클럭을 제공할 수 있다. 예를 들어, 주소 정보(IFADD)가 레지스터 REG1 또는 제1 기능 블록(131)을 가리키는 경우, 클럭 게이팅부(120)는 제2 클럭(CLK2) 및 제3 클럭(CLK3)의 출력을 차단하고, 레지스터 인에이블 신호(REGEN)가 활성화된 구간에, 제1 기능 블록(131)으로 제1 클럭(CLK1)을 출력할 수 있다.
제1 기능 블록(131)의 레지스터 REG1은 제1 클럭(CLK1)에 기초하여 인터페이스부(140)로부터 수신되는 데이터(DATA)를 저장할 수 있다. 이때, 제2 기능 블록(132) 및 제3 기능 블록(133)에는 데이터(DATA) 및 클럭이 수신되지 않는바, 레지스터 REG21, REG22, REG31 및 REG32는 동작하지 않는다.
도 5는 도 4의 반도체 장치의 타이밍도이다. 도 5는 클럭 게이팅부(120b)로 인가되는 기준 클럭(RCLK), 어드레스 정보(IFADD) 및 레지스터 인에이블 신호(REGEN)와 클럭 게이팅부로부터 출력되는 클럭들(CLK1, CLK2, CLK3)을 도시한다.
클럭 게이팅부(120b)는 기준 클럭(RCLK)을 기초로 복수의 클럭(CLK1, CLK2, CLK3)을 생성할 수 있으며, 어드레스 정보(IFADD) 및 레지스터 인에이블 신호(REGEN)를 기초로 복수의 클럭(CLK1, CLK2, CLK3)을 게이팅할 수 있다.
도 5를 참조하면, 레지스터 인에이블 신호(REGEN)가 활성화 된 때(예컨대, 로직 하이), 복수의 클럭(CLK1, CLK2, CLK3) 중 어드레스 정보(IFADD)가 나타내는 기능 블록에 대응하는 클럭이 출력되고, 다른 클럭의 출력은 차단될 수 있다.
일 실시예에서, 어드레스 정보(IFADD)는 복수의 비트를 포함할 수 있다. 예를 들어, 어드레스 정보(IFADD)는 세 비트의 데이터(ADD[2:0])를 포함할 수 있다. ADD[2:0]이 '0 0 1'이면, 제1 기능 블록(도 4의 131)을 나타내고, ADD[2:0]이 '0 1 0'이면, 제2 기능 블록(도 4의 132)을 나타내고, ADD[2:0]이 '1 0 0'이면 제3 기능 블록(도 4의 133)을 나타낼 수 있다.
일 예로서, 도 5에 도시된 바와 같이, 어드레스 정보(IFADD)가 제1 기능 블록(131)을 나타내고, 레지스터 인에이블 신호(REGEN)가 활성화된 제1 구간(T1) 및 제2 구간(T2)에 제1 클럭(CLK1)이 출력될 수 있다. 제1 클럭(CLK1)은 제1 기능 블록(131)으로 제공될 수 있다. 이때, 제2 기능 블록(132)및 제3 기능 블록(133)으로 제2 클럭(CLK2) 및 제3 클럭(CLK3)이 출력되는 것은 차단될 수 있다. 이후, 어드레스 정보(IFADD)가 제3 기능 블록(132)을 나타내고, 레지스터 인에이블 신호(REGEN)가 활성화된 제3 구간(T3)에 제3 클럭(CLK3)이 출력될 수 있다. 제3 클럭(CLK3)은 제3 기능 블록(133)으로 제공될 수 있다. 이때, 제1 기능 블록(131)및 제2 기능 블록(132)으로 제공되는 제1 클럭(CLK1) 및 제2클럭(CLK2)은 차단될 수 있다.
도 6a 내지 도 6c는 도 4의 클럭 게이팅부의 구현예들을 나타낸다.
도 6a를 참조하면, 클럭 게이팅부(120b1)는 복수의 로직 게이트(11, 12, 13, 14)로 구현될 수 있다. 일 실시예에 있어서, 복수의 로직 게이트(11, 12, 13, 14)는 AND 게이트일 수 있다. 클럭 게이팅부(120b1)는 복수의 로직 게이트(11, 12, 13, 14)를 이용하여, 수신되는 기준 클럭(RCLK), 주소 정보(IFADD) 및 레지스터 인에이블 신호(REGEN)를 논리 조합하여 복수의 클럭(CLK1, CLK2, CLK3)을 생성 및 게이팅할 수 있다.
제1 AND 게이트(11)는 레지스터 인에이블 신호(REGEN)를 기초로 기준 클럭(RCLK)을 게이팅하여 출력할 수 있다. 제2 내지 제4 AND 게이트(12, 13, 14)는 각각 주소 정보(IFADD)의 복수의 비트들(ADD[2:0]) 중 적어도 하나의 비트를 기초로 제1 AND 게이트(11)로부터 출력되는 클럭, 예컨대 게이팅된 기준 클럭(RCLK)을 게이팅할 수 있다. 제2 AND 게이트(12)는 주소 정보(IFADD)의 제1 비트(ADD[0])가 로직 하이일 때, 제1 클럭(CLK1)을 출력하고, 제1 비트(ADD[0])가 로직 로우일 때, 제1 클럭(CLK1)을 차단할 수 있다. 제3 AND 게이트(13)는 주소 정보(IFADD)의 제2 비트(ADD[1])가 로직 하이일 때, 제2 클럭(CLK2)을 출력하고, 제2 비트(ADD[1])가 로직 로우일 때, 제2 클럭(CLK2)을 차단할 수 있다. 제4 AND 게이트(14)는 주소 정보(IFADD)의 제3 비트(ADD[2])가 로직 하이일 때, 제3 클럭(CLK3)을 출력하고, 제3비트(ADD[2])가 로직 로우일 때, 제3 클럭(CLK3)을 차단할 수 있다.
도 6b를 참조하면, 클럭 게이팅부(120b2)는 복수의 로직 게이트(21, 22, 23, 24, 25)로 구현될 수 있다. 일 실시예에 있어서, 복수의 로직 게이트(21, 22, 23, 24, 25)는 AND 게이트일 수 있다. 클럭 게이팅부(120b2)는 복수의 로직 게이트(21, 22, 23, 24, 25)를 이용하여, 수신되는 기준 클럭들(RCLK1, RCLK2), 주소 정보(IFADD) 및 레지스터 인에이블 신호(REGEN)를 논리 조합하여 복수의 클럭(CLK1, CLK2, CLK3)을 생성하고, 게이팅할 수 있다.
도6b의 구성 및 동작은 도 6a와 유사하다. 다만, 도 6b에서, 클럭 게이팅부(120b2)는 복수의 기준 클럭(예컨대, 제1 기준 클럭RCLK1, 제2 기준 클럭 RCLK2)을 기초로 복수의 클럭(CLK1, CLK2, CLK3)을 생성할 수 있다. 일 실시예에 있어서, 제1 기준 클럭(RCLK1)과 제2 기준 클럭(RCLK2)의 주파수 또는 위상이 상이할 수 있다.
예를 들어, 도시된 바에 따라, 제1 클럭(CLK1)은 제1 기준 클럭(RCLK1)을 기초로 생성되고, 제2 클럭(CLK2) 및 제3 클럭(CLK3)은 제2 기준 클럭(RCLK2)을 기초로 생성될 수 있다.
제1 AND 게이트(21)는 레지스터 인에이블 신호(REGEN)를 기초로 제1 기준 클럭(RCLK1)을 게이팅할 수 있다. 제2 AND 게이트(22)는 레지스터 인에이블 신호(REGEN)를 기초로 제2 기준 클럭(RCLK2)을 게이팅할 수 있다.
제3 AND 게이트(23)는 주소 정보(IFADD)의 제1 비트(ADD[0])를 기초로 제1 AND 게이트(21)로부터 출력된 클럭, 예컨대 게이팅된 제1 기준 클럭(RCLK1)을 게이팅함으로써, 제1 클럭(CLK1)을 생성할 수 있다. 제3 AND 게이트(23)는 주소 정보(IFADD)의 제1 비트(ADD[0])가 로직 하이일 때, 제1 클럭(CLK1)을 출력하고, 제1 비트(ADD[0])가 로직 로우일 때, 제1 클럭(CLK1)을 차단할 수 있다.
제 4 AND 게이트(24) 및 제5 AND 게이트(25)는 주소 정보(IFADD)의 제2 비트(ADD[1]) 및 제3 비트(ADD[2])를 기초로 제2 AND 게이트(22)로부터 출력된 클럭, 예컨대 게이팅된 제2 기준 클럭(RCLK2)을 게이팅함으로써, 제2 클럭(CLK1) 및 제3 클럭(CLK3)을 생성할 수 있다. 제4 AND 게이트(24)는 주소 정보(IFADD)의 제2 비트(ADD[2])가 로직 하이일 때, 제2 클럭(CLK2)을 출력하고, 제2 비트(ADD[1])가 로직 로우일 때, 제2 클럭(CLK2)을 차단할 수 있다. 제5 AND 게이트(25)는 주소 정보(IFADD)의 제3 비트(ADD[02])가 로직 하이일 때, 제3 클럭(CLK3)을 출력하고, 제3 비트(ADD[2])가 로직 로우일 때, 제3 클럭(CLK3)을 차단할 수 있다.
도 6c를 참조하면, 클럭 게이팅부(120b3)는 로직 게이트(31), 분배기(demultiplexer)(32)를 포함할 수 있다.
로직 게이트(31)는 레지스터 인에이블 신호(REGEN)를 기초로 기준 클럭(RCLK)을 게이팅할 수 있다. 일 실시예에 있어서, 로직 게이트(31)는 AND 게이트일 수 있다.
분배기(32)는 주소 정보(IFADD)의 세 비트 데이터(ADD[2:0])를 기초로, 로직 게이트(31)로부터 출력된 클럭, 예컨대 게이팅된 기준 클럭(RCLK)을 제1 클럭 내지 제3 클럭(CLK1, CLK2, CLK3) 중 하나로서 출력할 수 있다. 분배기(32)는 주소 정보(IFADD)가 제1 기능 블록(도 4의 131)을 나타내면, 게이팅된 기준 클럭(RCLK)을 제1 클럭(CLK1)으로서 출력하고, 주소 정보(IFADD)가 제2 기능 블록(도 4의 132)을 나타내면, 게이팅된 기준 클럭(RCLK)을 제2 클럭(CLK2)으로서 출력하고, 주소 정보(IFADD)가 제3 기능 블록(도 4의 133)을 나타내면, 게이팅된 기준 클럭(RCLK)을 제3 클럭(CLK3)으로서 출력할 수 있다.
이상에서, 도 6a 내지 도 6c를 참조하여 도 4의 클럭 게이팅부(120b)의 구현예를 설명하였다. 그러나, 이는 예시적인 것일 뿐이며, 본 개시의 기술적 사상은 이에 제한되지 않는다. 도4의 클럭 게이팅부(120b)의 구성은 다양하게 변형될 수 있다.
도 7은 본 개시의 실시예에 따른 반도체 장치의 일 구현예를 나타내는 블록도이다.
도 7을 참조하면, 반도체 장치(100c)는 복수의 기능 블록(131, 132, 133), 클럭 생성기(110) 및 클럭 게이팅부(120c)를 포함할 수 있다. 도 1및 도 3을 참조하여 설명한 클럭 생성기(110), 클럭 게이팅부(120) 및 복수의 기능 블록(131, 132, 133)에 대한 설명은 본 실시예에 적용될 수 있다. 따라서, 중복되는 설명은 생략하기로 한다.
본 실시예에서, 복수의 기능 블록(131, 132, 133)은 동작 상태를 나타내는 동작 인에이블 신호들(OPEN1, OPEN2, OPEN3)을 클럭 게이팅부(120c)에 제공할 수 있다. 예를 들어, 제1 기능 블록(131)이 동작 상태일 때, 제1 기능 블록(131)은 클럭 게이팅부(120c)로 로직 하이의 제1 동작 인에이블 신호(OPEN1)를 제공할 수 있다. 제1 기능 블록(131)이 동작 상태가 아닐 때, 예컨대 스탠바이 상태, 아이들(Idle) 상태 또는 다른 기능 블록(또는 다른 회로)과 아무런 데이터도 송신 또는 수신하지 않을때, 제1 기능 블록(131)은 클럭 게이팅부(120c)로 로직 로우의 제1 동작 인에이블 신호(OPEN1)를 제공할 수 있다. 이와 유사하게, 제2 기능 블록(132) 및 제3 기능 블록(133)은 클럭 게이팅부(120c)로 각각 제2 동작 인에이블 신호(OPEN2) 및 제3 동작 인에이블 신호(OPEN3)를 제공할 수 있다.
클럭 게이팅부(120c)는 동작 인에이블 신호들(OPEN1, OPEN2, OPEN3)을 기초로 복수의 클럭(CLK1, CLK2, CLK3)을 각각 게이팅할 수 있다. 예를 들어, 클럭 게이팅부(120c)는 제1 기능 블록(131)으로부터 제공되는 제1 동작 인에이블 신호(OPEN1)를 기초로 제1 클럭(CLK1)을 게이팅할 수 있다. 클럭 게이팅부(120c)는 제1 동작 인에이블 신호(OPEN1)가 로직 하이일 때, 제1 클럭(CLK1)을 출력하고, 제1 동작 인에이블 신호(OPEN1)가 로직 로우일 때, 제1 클럭(CLK1)을 차단할 수 있다. 이와 유사하게, 클럭 게이팅부(120c)는 제2 기능 블록(132)으로부터 제공되는 제2 동작 인에이블 신호(OPEN2)를 기초로 제2 클럭(CLK2)을 게이팅하고, 제3 기능 블록(133)으로부터 제공되는 제3 동작 인에이블 신호(OPEN3)를 기초로 제3 클럭(CLK3)을 게이팅할 수 있다.
본 실시예에 따르면, 클럭 게이팅부(120c)는 복수의 기능 블록(131, 132, 133)으로부터 수신되는 동작 인에이블 신호(OPEN1, OPEN2, OPEN3)를 기초로, 복수의 기능 블록(131, 132, 133)의 상태를 판단하고, 복수의 기능 블록(131, 132, 133) 각각이 동작 상태일 경우에만 대응하는 클럭을 제공할 수 있다.
도 8은 도 7의 반도체 장치의 타이밍도이다. 도 8은 클럭 게이팅부(120c)로 인가되는 기준 클럭(RCLK), 동작 인에이블 신호들(OPEN1, OPEN2, OPEN3) 및 클럭 게이팅부(120c)로부터 출력되는 클럭들(CLK1, CLK2, CLK3)을 도시한다.
클럭 게이팅부(120c)는 기준 클럭(RCLK)을 기초로 복수의 클럭(CLK1, CLK2, CLK3)을 생성할 수 있으며, 동작 인에이블 신호들(OPEN1, OPEN2, OPEN3)을 기초로 복수의 클럭(CLK1, CLK2, CLK3)을 게이팅할 수 있다.
도 8을 참조하면, 제1 내지 제3 클럭(CLK1, CLK2, CLK3)은 각각 대응하는 동작 인에이블 신호에 기초하여 게이팅될 수 있다. 제1 동작 인에이블 신호(OPEN1)가 로직 하이인 제1 구간(T1) 및 제2 구간(T2)에, 제1 클럭(CLK1)이 출력되고, 제1 동작 인에이블 신호(OPEN1)가 로직 로우인 다른 구간에, 제1 클럭(CLK1)이 차단될 수 있다. 제2 동작 인에이블 신호(OPEN2)가 로직 하이인 제3 구간(T3)에, 제2 클럭(CLK1)이 출력되고, 제2 동작 인에이블 신호(OPEN2)가 로직 로우인 다른 구간에 제2 클럭(CLK2)이 차단될 수 있다. 또한, 제3 동작 인에이블 신호(OPEN3)가 로직 하이인 제4 구간(T4)에 제3 클럭(CLK3)이 출력되고, 제3 동작 인에이블 신호(OPEN3)가 로직 로우인 다른 구간에 제3 클럭(CLK3)이 차단될 수 있다. 이때, 제2 구간(T2) 및 제3 구간(T3)이 오버랩되고, 제3 구간(T3)과 제4 구간(T4) 가 오버랩될수 있다. 이와 같이, 제1 클럭(CLK1), 제2 클럭(CLK2) 및 제3 클럭(CLK3)이 출력되는 구간들은 서로 오버랩될 수 있다.
도 9a 및 도 9b는 도 7의 클럭 게이팅부의 구현예들을 나타낸다. 설명의 편의를 위하여 복수의 기능 블록들(131, 132, 133)을 함께 도시한다.
도 9a를 참조하면, 클럭 게이팅부(120c1)는 복수의 로직 게이트(41, 42, 43)를 이용하여 구현될 수 있다. 일 실시예에 있어서, 복수의 로직 게이트(41, 42, 44)는 AND 게이트일 수 있다. 클럭 게이팅부(120c1)는 클럭 발생기(도 7의 110)로부터 기준 클럭(RCLK)을 수신하고, 복수의 기능 블록들(131, 132, 133)로부터 제1 내지 제3 동작 인에이블 신호(OPEN1, OPEN2, OPEN3)을 수신할 수 있다. 클럭 게이팅부(120c1)는 제1 내지 제3 AND 게이트(41, 42, 43)를 이용하여, 기준 클럭(RCLK) 및 제1 내지 제3 동작 인에이블 신호(OPRN1, OPEN2, OPEN3)를 논리 조합함으로써, 제1 내지 제3 클럭(CLK1, CLK2, CLK3)을 생성하고 게이팅할 수 있다.
제1 내지 제3 AND 게이트(41, 42, 43)는 각각 수신되는 동작 인에이블 신호를 기초로 기준 클럭(RCLK)을 게이팅함으로써 제1 내지 제3 클럭(CLK1, CLK2, CLK3)을 생성할 수 있다. 제1 AND 게이트(41)는 제1 동작 인에이블 신호(OPEN1)가 로직 하이일 때, 제1 클럭(CLK1)을 출력하고, 제1 동작 인에이블 신호(OPEN1)가 로직 로우일 때, 제1 클럭(CLK1)을 차단할 수 있다. 제2 AND 게이트(42)는 제2 동작 인에이블 신호(OPEN2)가 로직 하이일 때, 제2 클럭(CLK2)을 출력하고, 제2 동작 인에이블 신호(OPEN2)가 로직 로우일 때, 제2 클럭(CLK2)을 차단할 수 있다. 제3 AND 게이트(43)는 제3 동작 인에이블 신호(OPEN3)가 로직 하이일 때, 제3 클럭(CLK3)을 출력하고, 제3 동작 인에이블 신호(OPEN3)가 로직 로우일 때, 제3 클럭(CLK3)을 차단할 수 있다.
도 9b를 참조하면, 클럭 게이팅부(120c2)는 복수의 로직 게이트(51, 52, 53)로 구현될 수 있다. 일 실시예에 있어서, 복수의 로직 게이트(51, 52, 53)는 AND 게이트일 수 있다. 클럭 게이팅부(120c2)의 구성 및 동작은 도 9a와 유사하다. 다만, 도 9b에서, 클럭 게이팅부(120c2)는 복수의 기준 클럭(예컨대, 제1 기준 클럭RCLK1, 제2 기준 클럭 RCLK2)을 기초로 복수의 클럭(CLK1, CLK2, CLK3)을 생성할 수 있다. 일 실시예에 있어서, 제1 기준 클럭(RCLK1)과 제2 기준 클럭(RCLK2)의 주파수 또는 위상이 상이할 수 있다.
예를 들어, 도시된 바에 따라, 제1 클럭(CLK1)은 제1 기준 클럭(RCLK1)을 기초로 생성되고, 제2 클럭(CLK2) 및 제3 클럭(CLK3)은 제2 기준 클럭(RCLK2)을 기초로 생성될 수 있다.
제1 AND 게이트(51)는 제1 기준 클럭(RCLK1)을 수신하고, 제1 클럭(CLK1)을 생성할 수 있다. 제1 AND 게이트(51)는 제1 동작 인에이블 신호(OPEN1)를 기초로, 제1 클럭(CLK1)을 게이팅할 수 있다. 제2 AND 게이트(52) 및 제3 AND 게이트(53)는 제2 기준 클럭(RCLK2)을 수신하고, 각각 제2 클럭(CLK2) 및 제3 클럭(CLK3)을 생성할 수 있다. 제2 AND 게이트(52) 및 제3 AND 게이트(53)는 각각 제2 동작 인에이블 신호(OPEN2) 및 제3 동작 인에이블 신호(OPEN3)를 기초로, 제2 클럭(CLK2) 및 제3 클럭(CLK3)을 게이팅할 수 있다. 제1 내지 제3 AND 게이트(51, 52, 53)의 구체적인 동작은, 도 9a의 제1 내지 제3 AND 게이트(41, 42, 43)의 동작과 실질적으로 동일한바, 중복되는 설명은 생략하기로 한다.
도 10은 본 개시의 실시예에 따른 반도체 장치의 일 구현예를 나타내는 블록도이다.
도 10을 참조하면, 반도체 장치(100d)는 복수의 기능 블록(131d, 132d), 클럭 생성기(110), 클럭 게이팅부(120d) 및 인터페이스부(140)를 포함할 수 있다.
도 10의 반도체 장치(100d)는 두 개의 기능 블록(131d, 132d)를 포함하는 것으로 도시되었으나, 이에 제한되는 것은 아니다. 반도체 장치(100d)는 세 개 이상의 기능 블록을 포함할 수 있다. 한편, 도 1및 도 3의 클럭 생성기(110), 클럭 게이팅부(120) 및 복수의 기능 블록(131, 132, 133)에 대한 설명은 본 실시예에 적용될 수 있다. 또한, 도 4의 인터페이스부(140)에 대한 설명은 본 실시예에 적용될 수 있다. 따라서, 중복되는 설명은 생략하기로 한다.
도 4를 참조하여 전술한 바와 같이, 복수의 기능 블록(131d, 132d) 각각은 적어도 하나의 레지스터(REG1, REG2)를 포함할 수 있으며, 레지스터들(REG1, REG2)은 대응하는 기능 블록에 제공되는 클럭 신호를 기초로, 수신되는 데이터를 저장할 수 있다.
복수의 기능 블록(131d, 132d) 각각은 동작 상태를 나타내는 동작 인에이블 신호(OPEN1, OPEN2)를 클럭 게이팅부(120d)에 제공할 수 있다. 예를 들어, 제1 기능 블록(131d)이 동작 상태일 때, 제1 기능 블록(131d)은 클럭 게이팅부(120d)로 로직 하이의 제1 동작 인에이블 신호(OPEN1)를 제공할 수 있다. 제1 기능 블록(131d)이 비동작 상태일 때, 예컨대 스탠바이 상태, 스탑 상태 또는 다른 기능 블록(또는 다른 회로)과 아무런 데이터를 송신 또는 수신하지 않을때, 제1 기능 블록(131d)은 클럭 게이팅부(120d)로 로직 로우의 제1 동작 인에이블 신호(OPEN1)를 제공할 수 있다. 이와 유사하게, 제2 기능 블록(132d)은 제2 동작 인에이블 신호(OPEN2)를 클럭 게이팅부(120d)로 제공할 수 있다.
클럭 게이팅부(120d)는 기준 클럭(RCLK)을 기초로 제1 기능 블록(131d) 및 제2 기능 블록(132d)에 각각 제공되는 제1 클럭(CLK1) 및 제2 클럭(CLK2)을 생성할 수 있다. 제1 클럭(CLK1) 및 제2 클럭(CLK2)은 서로 다른 신호 전송 경로를 통하여 각각 제1 기능 블록(131d) 및 제2 기능 블록(132d)에 전송될 수 있다. 그리고, 클럭 게이팅부(120d)는 동작 인에이블 신호들(OPEN1, OPEN2), 레지스터 인에이블 신호(REGEN) 및 어드레스 정보(IFADD)를 기초로, 제1 클럭(CLK1) 및 제2 클럭(CLK2)을 게이팅할 수 있다.
예를 들어, 클럭 게이팅부(120d)는 인터페이스부(140)로부터 제공되는 레지스터 인에이블 신호(REGEN) 및 주소 정보(IFADD), 및 제1 기능 블록(131d)으로부터 제공되는 제1 동작 인에이블 신호(OPEN1)를 기초로 제1 클럭(CLK1)을 게이팅할 수 있다. 클럭 게이팅부(120d)는 주소 정보(IFADD)가 레지스터 REG1 또는 제1 기능 블록(131d)을 가리키는 경우, 레지스터 인에이블 신호(REGEN)가 활성화된 구간에 제1 클럭(CLK1)을 출력할 수 있다. 또한 클럭 게이팅부(120d)는 제1 동작 인에이블 신호(OPEN1)가 로직 하이일 때, 제1 클럭(CLK1)을 출력할 수 있다.
이와 유사하게, 클럭 게이팅부(120d)는 인터페이스부(140)로부터 제공되는 레지스터 인에이블 신호(REGEN) 및 주소 정보(IFADD), 및 제2 기능 블록(132d)으로부터 제공되는 제2 동작 인에이블 신호(OPEN2)를 기초로 제1 클럭(CLK2)을 게이팅할 수 있다. 클럭 게이팅부(120d)는 주소 정보(IFADD)가 레지스터 REG2 또는 제2 기능 블록(132d)을 가리키는 경우, 레지스터 인에이블 신호(REGEN)가 활성화된 구간에 제2 클럭(CLK2)을 출력할 수 있다. 또한 클럭 게이팅부(120d)는 제2동작 인에이블 신호(OPEN2)가 로직 하이일 때, 제2 클럭(CLK2)을 출력할 수 있다.
도 11은 도 10의 반도체 장치의 타이밍도이다.
도 11을 참조하면, 어드레스 정보(IFADD)는 복수의 비트를 포함할 수 있다. 예를 들어, 어드레스 정보(IFADD)는 두 비트의 데이터(ADD[1:0])를 포함할 수 있다. ADD[2:0]이 '0 1' 이면, 제1 기능 블록(도 10의 131d)을 나타내고, ADD[1:0]이 '0 1 '이면, 제2 기능 블록(도 10의 132d)을 나타낼 수 있다.
도 11에 도시된 바와 같이, 어드레스 정보(IFADD)가 제1 기능 블록(131d)을 나타내고, 레지스터 인에이블 신호(REGEN)가 활성화된 제1 구간(T1) 및 제2 구간(T2)에 제1 클럭(CLK1)이 출력될 수 있다. 또한, 제1 동작 인에이블 신호(OPEN1)가 로직 하이인 제3 구간(T3) 및 제4 구간(T4)에 제1 클럭(CLK1)이 출력될 수 있다. 어드레스 정보(IFADD)가 제2 기능 블록(132d)을 나타내고, 레지스터 인에이블 신호(REGEN)가 활성화된 제5 구간(T5)에 제2클럭(CLK2)이 출력될 수 있다. 또한, 제2동작 인에이블 신호(OPEN2)가 로직 하이인 제6 구간(T6) 에 제2 클럭(CLK2)이 출력될 수 있다.
일 실시예에 있어서, 도시된 바와 같이, 제1 클럭(CLK1)이 출력되는 구간 및 제2 클럭(CLK2)이 출력되는 구간은 오버랩될 수 있다.
도 12는 본 개시의 실시예에 따른 반도체 장치의 일 구현예를 나타내는 블록도이다.
도 12를 참조하면, 반도체 장치(100e)는 복수의 기능 블록(131e, 132e), 클럭 생성기(110), 클럭 게이팅부(120e) 및 인터페이스부(140)를 포함할 수 있다. 도 1및 도 3의 클럭 생성기(110), 클럭 게이팅부(120) 및 복수의 기능 블록(131, 132, 133)에 대한 설명은 본 실시예에 적용될 수 있다. 또한, 도 4의 인터페이스부(140)에 대한 설명은 본 실시예에 적용될 수 있다. 따라서, 중복되는 설명은 생략하기로 한다.
복수의 기능 블록(131e, 132e) 각각은 적어도 하나의 레지스터(예컨대 제1 레지스터REG1, 제2 레지스터REG2)를 포함할 수 있으며 대응하는 기능 블록에 제공되는 클럭을 기초로 수신되는 데이터(DATA)를 저장할 수 있다. 복수의 기능 블록(131e, 132e) 각각은 동작 상태를 나타내는 동작 인에이블 신호(OPEN1, OPEN2)를 클럭 게이팅부(120e)에 제공할 수 있다.
클럭 게이팅부(120d)는 클럭 생성기(110)로부터 복수의 기준 클럭, 예컨대 제1 기준 클럭(RCLK1) 및 제2 기준 클럭(RCLK2)을 수신하고, 이를 기초로 제1 기능 블록(131d) 및 제2 기능 블록(132d)에 각각 제공되는 복수의 클럭들(CLKR1, CLKOP1, CLKR2, CLKOP2)을 생성할 수 있다. 일 실시예에 있어서, 제1 기준 클럭(RCLK1) 및 제2 기준 클럭(RCLK2)은 주파수 또는 위상이 서로 상이할 수 있다.
복수의 클럭들(CLKR1, CLKOP1, CLKR2, KLCOP2)은 제1 기능 블록(131d)에 제공되는 제1 레지스터 클럭(CLKR1) 및 제1 동작 클럭(CLKOP1), 및 제2 기능 블록(132d)에 제공되는 제2 레지스터 클럭(CLKR2) 및 제2 동작 클럭(CLKOP2)을 포함할 수 있다.
클럭 게이팅부(121e)는 제1 기준 클럭(RCLK1)을 기초로 제1 레지스터 클럭(CLKR1) 및 제2 레지스터 클럭(CLKR2)을 생성하고, 제1 어드레스 정보(IFADD) 및 레지스터 인에이블 신호(REGEN)를 기초로 제1 레지스터 클럭(CLKR1) 및 제2 레지스터 클럭(CLKR2)을 게이팅할 수 있다. 또한, 클럭 게이팅부(121e)는 제2 기준 클럭(RCLK2)을 기초로, 제1 동작 클럭(CLKOP1) 및 제2 동작 클럭(CLKOP2)을 생성할 수 있으며, 동작 인에이블 신호들(OPEN1, OPEN2)을 기초로 각각 제1 동작 클럭(CLKOP1) 및 제2 동작 클럭(CLKOP2)을 게이팅할 수 있다.
제1 기능 블록(131e)의 제1 레지스터(REG1)는 제1 레지스터 클럭(CLKR1)에 기초하여 데이터를 수신하고 저장할 수 있다. 제1 기능 블록(131e)은 제1 동작 클럭(CLKOP1)에 기초하여 동작할 수 있다. 제2 기능 블록(132e)의 제2 레지스터(REG2)는 제2 레지스터 클럭(CLKR2)에 기초하여 데이터를 수신하고 저장할 수 있다. 제2 기능 블록(132e)은 제2 동작 클럭(CLKOP2)에 기초하여 동작할 수 있다. 전술한 클럭 게이팅부(121e)의 게이팅 동작에 따르면, 클럭 게이팅부(121e)는 선택적으로, 인터페이스부(140)가 외부로부터 수신된 데이터(DATA)를 제1 레지스터(REG1)에 전송하는 구간에, 제1 레지스터 클럭(CLKR1)을 제1 기능 블록(131e)으로 제공하고, 인터페이스부(140)가 외부로부터 수신된 데이터(DATA)를 제2 레지스터(REG2)에 전송하는 구간에, 제2 레지스터 클럭(CLKR2)을 제2 기능 블록(132e)으로 제공할 수 있다. 또한, 클럭 게이팅부(121e)는 선택적으로 제1 기능 블록(131e)이 동작 상태인 구간에, 제1 동작 클럭(CLKOP1)을 제1 기능 블록(131e)에 제공하고, 제2 기능 블록(131e)이 동작 상태인 구간에, 제2 동작 클럭(CLKOP2)을 제2 기능 블록(131e)에 제공할 수 있다. 이로써, 클럭 게이팅부(121e)는 제1 기능 블록(131e) 및 제2 기능 블록(132e) 각각이 어떠한 동작도 수행하지 않는 구간에는 제1 기능 블록(131e) 및 제2 기능 블록(132e) 각각에 제공되는 클럭들을 차단할 수 있다.
도 13은 도 12의 반도체 장치의 타이밍도이다.
도 13을 참조하면, 제1 레지스터 클럭(CLKR1) 및 제2 레지스터 클럭(CLKR2)은 제1 기준 클럭(RCLK1)을 기초로 생성되고, 제1 동작 클럭(CLKOP1) 및 제2 동작 클럭(CLKOP2)은 제2 기준 클럭(RCLK2)을 기초로 생성될 수 있다. 제1 기준 클럭(RCLK1) 및 제2 기준 클럭(RCLK2)의 주파수는 서로 상이할 수 있다. 도 13에서 제2 기준 클럭(RCLK2)의 주파수가 제1 기준 클럭(RCLK1)의 주파수보다 높은 것으로 도시되었으나 이에 제한되는 것은 아니다. 제2 기준 클럭(RCLK2)의 주파수는 제1 기준 클럭(RCLK1)의 주파수와 같거나 낮을 수 있다.
레지스터 인에이블 신호(REGEN)가 활성화된 구간들 중, 주소 정보(IFADD)가 제1 기능 블록(131e)을 나타내는 제1 구간(T1) 및 제2 구간(T2)에, 제1 기준 클럭(RCLK1)을 기초로 생성되는 제1 레지스터 클럭(CLKR1)이 출력될 수 있다. 이때, 제2 레지스터 클럭(CLKR2)은 차단될 수 있다. 레지스터 인에이블 신호(REGEN)가 활성화된 구간들 중, 주소 정보(IFADD)가 제2기능 블록(132e)을 나타내는 제5 구간(T5)에, 제1 기준 클럭(RCLK1)을 기초로 생성되는 제2 레지스터 클럭(CLKR2)이 출력될 수 있다. 이때, 제1 레지스터 클럭(CLKR1)은 차단될 수 있다. 일 실시예에 있어서, 제1 레지스터 클럭(CLKR1)이 출력되는 구간 및 제2 레지스터 클럭(CLKR2)이 출력되는 구간은 오버랩되지 않을 수 있다.
한편, 제1 동작 인에이블 신호(OPEN1)가 로직 하이인 제3 구간(T3) 및 제4 구간(T4)에 제1 동작 클럭(CLKOP1)이 출력되고, 제2 동작 인에이블 신호(OPEN2)가 로직 하이인 제6 구간(T6)에 제2 동작 클럭(CLKOP2)이 출력될 수 있다. 일 실시예에 있어서, 제1 동작 클럭(CLKOP1)이 출력되는 구간과 제2 동작 클럭(CLKOP2)이 출력되는 구간은 서로 오버랩될 수 있다. 또한, 일 실시예에 있어서, 제1 레지스터 클럭(CLKR1)이 출력되는 구간과 제1 동작 클럭(CLKOP1)이 출력되는 구간은 서로 오버랩되고, 제2 레지스터 클럭(CLKR2)이 출력되는 구간과 제2 동작 클럭(CLKOP2)이 출력되는 구간은 서로 오버랩될 수 있다.
도 14는 본 개시의 실시예에 따른 반도체 장치의 동작 방법을 나타내는 흐름도이다. 구체적으로 도 14의 동작 방법은 클럭 게이팅부(120, 120b, 120c, 120 d, 120e)의 클럭 게이팅 방법을 나타낸다.
도 14를 참조하면, 클럭 게이팅부는 기준 클럭을 수신한다(S110). 일 실시예에 있어서, 클럭 게이팅부는 복수의 기준 클럭을 수신할 수 있다. 복수의 기준 클럭은 주파수 또는 위상이 서로 상이하거나 동일할 수 있다.
클럭 게이팅부는 복수의 기능 블록에 대응하는 복수의 클럭을 생성하고(S120), 복수의 클럭을 대응하는 기능 블록의 상태에 따라 각각 게이팅할 수 있다(S130). 일 실시예에 있어서, S120 단계 및 S130 단계는 동시에 수행될 수 있다. 클럭 게이팅부는 기준 클럭을 복수의 기능 블록에 대응하도록 분리한 후, 복수의 기능 블록 각각에 대응하여 분리된 기준 클럭을 게이팅함으로써, 복수의 클럭을 생성 및 게이팅할 수 있다. S130 단계의 게이팅 동작에 따라, 동작 상태를 갖는 기능 블록에 대응하는 클럭이 출력될 수 있다. 예를 들어, 기능 블록의 내부에 구비되는 레지스터가 데이터를 수신하거나, 또는 기능 블록이 설정된 동작을 수행하거나, 다른 회로들, 예컨대 다른 기능 블록들과 데이터를 송신 또는 수신할 때, 상기 기능 블록에 대응하는 클럭이 출력될 수 있다. 기능 블록이 아무런 동작을 하지 않을 때는 기능 블록에 대응하는 클럭은 차단될 수 있다.
클럭 게이팅부는 동작 상태를 갖는 기능 블록에 대응하는 클럭을 제공할 수 있다(S140). 일 실시예에 있어서, 클럭 게이팅부는 하나의 기능 블록에 복수의 클럭을 제공할 수 있다. 일 실시에에 있어서, 기능 블록은 복수의 기능을 수행할 수 있으며, 각각의 기능은 서로 다른 클럭에 기초하여 수행될 수 있다. 예를 들어, 기능 블록 내부에 구비되는 레지스터가 데이터를 수신하고 저장할 경우, 레지스터는 레지스터 클럭에 기초하여 동작하고, 기능 블록이 일반적인 동작을 수행할 경우, 기능 블록은 동작 클럭에 기초하여 동작할 수 있다. 클럭 게이팅부는 기능 블록의 레지스터가 데이터를 수신하고 저장하는 동작을 수행하는 구간에는 기능 블록으로 레지스터 클럭을 제공하고, 기능 블록이 일반적인 동작을 수행하는 구간에는 기능 블록으로 동작 클럭을 제공할 수 있다. 그러나, 레지스터 클럭이 제공되는 구간과 동작 클럭이 제공되는 구간은 배타적인 구간은 아니며, 상기 구간들은 서로 오버랩될 수 있다.
도 15는 본 개시의 실시예에 따른 이미지 센서를 나타내는 블록도이다.
도 1 내지 도 14를 참조하여 설명한 본 개시의 실시예들에 따른 반도체 장치(100, 100a, 100b, 100c, 100d, 100e)는 이미지 센서로서 구현될 수 있다.
이미지 센서(200)는 광학 렌즈(2)를 통하여 촬영된 또는 캡쳐된 피사체(1)에 대한 이미지 데이터(IDATA)를 생성할 수 있다. 예컨대, 이미지 센서(200)는 CMOS 이미지 센서로 구현될 수 있다.
도 15를 참조하면, 이미지 센서(200)는 픽셀 어레이(210), 아날로그-디지털 변환부(220, 이하 ADC라고 함), 로우 드라이버(230), 타이밍 생성기(240), 인터페이스부(250), 램프 신호 발생기(260), 이미지 신호 처리부(270), 클럭 생성기(280) 및 클럭 게이팅부(290)를 포함할 수 있다.
픽셀 어레이(210)는 매트릭스 형태로 배열된 다수의 픽셀들을 포함한다. 로우 드라이버(230)는 타이밍 생성기(240)의 제어에 따라 다수의 픽셀들 각각의 동작을 제어하기 위한 다수의 제어 신호들을 픽셀 어레이(210)로 드라이빙한다.
타이밍 생성기(240)는 로우 드라이버(230), ADC(220), 램프 신호 발생기(260) 및 이미지 신호 처리부(270)의 동작을 제어할 수 있다.
ADC(220)는 픽셀 어레이(210)에 구현된 다수의 컬럼 라인들 각각으로부터 출력되는 각 픽셀 전기 신호를 처리하여 디지털 신호로서 출력할 수 있다. 예를 들어, ADC(220)는 픽셀 전기 신호에 대해 상관 이중 샘플링을 수행하고, 상관 이중 샘플된 픽셀 전기 신호들 각각을 램프 신호 발생기(260)으로부터 출력된 램프 신호와 비교할 수 있다. ADC(220)는 비교 신호를 디지털 신호인 원시 데이터로 변환할 수 있다.
이미지 신호 처리부(270)는 ADC(220)로부터 출력되는 원시 데이터에 대하여, 색 보정등의 이미지 처리를 수행하여, 이미지 데이터(IDATA)를 생성할 수 있다. 이미지 데이터(IDATA)는 외부 장치로 출력될 수 있다.
인터페이스부(250)는 외부 장치로부터 데이터(DATA) 및 상기 데이터(DATA)가 저장되는 레지스터를 나타내는 어드레스 신호(ADD)를 수신하고, 데이터(DATA)를 어드레스 신호(ADD)가 나타내는 레지스터에 전송할 수 있다. ADC(220), 로우 드라이버(230), 타이밍 생성기(240), 램프 신호 발생기(260) 및 이미지 신호 처리부(270)(이하, 기능 블록들이라고 함)는 각각 적어도 하나의 레지스터를 포함할 수 있다. 레지스터에 저장되는 데이터(DATA)에 의하여 상기 기능 블록들의 동작 모드 또는 동작 옵션 등이 설정될 수 있다. 도시되지 않았으나, 이미지 센서(200)는 데이터 버스를 포함할 수 있으며, 인터페이스부(250)는 데이터 버스를 통해 데이터(DATA)를 이미지 센서의 기능 블록들 중 하나로 전송할 수 있다.
한편, 이미지 센서(200)의 기능 블록들은 수신되는 클럭에 기초하여 동작할 수 있다. 기능 블록들은 수신되는 클럭에 기초하여 레지스터에 데이터(DATA)를 저장하거나, 또는 설정된 기능들을 수행할 수 있다.
클럭 생성기(280)는 기준 클럭(RCLK)을 생성하고, 클럭 게이팅부(290)는 기준 클럭(RCLK)을 기초로 기능 블록들에 제공되는 복수의 클럭들(CLKs)을 생성할 수 있다. 클럭 게이팅부(290)는 서로 다른 전송 경로를 통해 각각의 기능 블록들에 대응하는 클럭을 제공할 수 있다.
클럭 게이팅부(290)는 기능 블록들의 상태에 따라 대응하는 클럭을 게이팅할 수 있다. 클럭 게이팅부(290)의 게이팅 동작에 따라 기능 블록들 중 동작 상태의 기능 블록들에 클럭이 출력되고, 동작 상태가 아닌 클럭들에 클럭이 출력되는 것이 차단될 수 있다. 예를 들어, 인터페이스부(250)가 데이터(DATA)를 타이밍 생성기(240)로 전송할때, 클럭 게이팅부(290)는 타이밍 생성기(240)에 제공되는 클럭을 출력하고, 다른 기능 블록들에 대응하는 클럭을 차단할 수 있다. 예컨대, 클럭 게이팅부(290)는 타이밍 생성기(240)에 구비되는 레지스터에 제공되는 레지스터 클럭을 타이밍 생성기(240)로 출력할 수 있다. 다른 예로서, ADC(220)의 동작이 완료된 상태이고, 이미지 신호 처리부(270)가 ADC(220)로부터 수신된 원시 데이터를 처리하는 동작 상태일 경우, 클럭 게이팅부(290)는 ADC(220)로 대응하는 클럭이 전송되는 것을 차단하고, 이미지 신호 처리부(270)에 대해서는 대응하는 클럭을 전송할 수 있다.
이와 같이, 본 개시의 실시예에 따른 이미지 센서(200)는 복수의 기능 블록들에 대하여 개별적을 클럭을 제공하고, 각각의 클럭들을 대응하는 기능 블록의 상태에 따라 게이팅함으로써, 기능 블록들에 클럭이 전송되는 시간을 감축시킬 수 있다. 이에 따라, 클럭의 토글링에 따른 스위칭 전력이 감소되므로 이미지 센서(200)의 소비 전력이 감소될 수 있다.
도 16은 본 개시의 실시예에 따른 디스플레이 장치를 나타내는 블록도이다.
도 1 내지 도 14를 참조하여 설명한 본 개시의 실시예에 따른 반도체 장치(100, 100a, 100b, 100c, 100d, 100e)는 디스플레이 장치로 구현될 수 있다.
도 16을 참조하면, 디스플레이 장치(300)는 디스플레이 패널(310), 데이터 드라이버(320), 게이트 드라이버(330), 타이밍 컨트롤러(340), 클럭 생성기(350) 및 클럭 게이팅부(360)를 포함할 수 있다.
디스플레이 패널(310)은 복수의 게이트 라인(GL1~GLn), 복수의 데이터 라인(DL1~DLm) 및 복수의 게이트 라인(GL1~GLn)과 복수의 데이터 라인(DL1~DLm)의 교차 영역에 배치되는 복수의 픽셀들(PX)을 포함할 수 있다. 디스플레이 패널(310)은 복수의 수평 라인을 포함할 수 있으며, 복수의 수평 라인은 하나의 게이트 라인에 연결되는 복수의 픽셀들로 구성될 수 있다. 디스플레이 패널(310)은 수평 라인 단위로 구동될 수 있다.
타이밍 컨트롤러(340)는 디스플레이 장치(300)의 전반적인 동작을 제어할 수 있다. 타이밍 컨트롤러(340)는 데이터 드라이버(320) 및 게이트 드라이버(330)를 제어하기 위한 제어 신호(CTRL1, CTRL2)를 생성하고, 제어 신호(CTRL1, CTRL2)를 데이터 드라이버(320) 및 게이트 드라이버(330)에 전송할 수 있다. 타이밍 컨트롤러(340)는 또한, 외부, 예컨대 디스플레이 장치(300)가 탑재되는 전자 장치의 호스트 컨트롤러로부터 영상 데이터를 수신하고, 상기 영상 데이터를 변환하여, 변환된 영상 데이터(RGB)를 데이터 드라이버(320)에 제공할 수 있다. 예를 들어, 타이밍 컨트롤러(340)는 영상 데이터가 디스플레이 패널(310)의 구조에 대응되도록 영상 데이터를 변환하거나, 또는 영상 데이터에 대하여 색 보정등을 수행함으로써 영상 데이터를 변환할 수 있다.
게이트 드라이버(330)는 타이밍 컨트롤러(340)으로부터 제공되는 게이트 제어신호(CTRL1)에 응답하여, 게이트 라인들(GL1~GLn)에 순차적으로 게이트 온 신호를 공급할 수 있다.
데이터 드라이버(320)는 데이터 제어신호(CTRL2)에 응답하여, 변환된 영상 데이터(RGB)를 아날로그 신호인 영상 신호들(예컨대, 계조 전압)로 변환하고, 영상 신호들을 데이터 라인들(DL1~DLm)로 출력할 수 있다. 게이트 온 신호가 인가된 게이트 라인에 연결된 픽셀들에 영상 신호가 제공될 수 있다.
클럭 생성기(350)는 기준 클럭(RCLK)을 생성하고, 클럭 게이팅부(360)는 기준 클럭(RCLK)을 기초로 데이터 드라이버(320), 타이밍 컨트롤러(340) 또는 게이트 드라이버(330)(이하, 기능 블록들이라고 함)에 각각에 제공되는 클럭들을 생성할 수 있다. 클럭 게이팅부(360)는 서로 다른 전송 경로를 통해 각각의 클럭들을 전송할 수 있다. 또한, 클럭 게이팅부(360)는 기능 블록들의 상태에 따라 각 기능 블록에 대응하는 클럭을 게이팅할 수 있다. 클럭 게이팅부(360)의 게이팅 동작에 따라 기능 블록들 중 동작 상태의 기능 블록들에 클럭이 출력되고, 동작 상태가 아닌 클럭들에 클럭의 출력이 차단될 수 있다.
이와 같이, 본 개시의 실시예에 따른 디스플레이 장치(300)는 복수의 기능 블록들에 대하여 개별적을 클럭을 제공하고, 각각의 클럭들을, 대응하는 기능 블록의 상태에 따라 게이팅함으로써, 기능 블록들에 클럭이 전송되는 시간을 감축시킬 수 있다. 이에 따라, 클럭의 토글링에 따른 스위치 전력이 감소되므로 디스플레이 장치(300)의 소비 전력이 감소될 수 있다.
이상에서, 도 15 및 도 16을 참조하여 본 개시의 실시예에 따른 반도체 장치의 구현예를 설명하였다. 그러나 이는 예시적인 것이며, 본 개시의 기술적 사상은 이에 제한되는 것은 아니다. 이외에도, 본 개시의 실시예들에 따른 반도체 장치는 메모리 장치, SoC 칩(System On Chip) 등 다양한 반도체 장치 또는 반도체 칩에 적용될 수 있다.
도 17은 본 개시의 실시예에 따른 컴퓨팅 시스템을 나타내는 블록도이다.
도 17을 참조하면, 컴퓨팅 시스템(1000)은 MIPI 인터페이스를 사용 또는 지원할 수 있는 데이터 처리 장치로 구현될 수 있고, 어플리케이션 프로세서(1110), 촬영 장치(1140) 및 디스플레이(1150) 등을 포함할 수 있다. 어플리케이션 프로세서(1110)의 CSI 호스트(1112)는 카메라 시리얼 인터페이스(Camera Serial Interface; CSI)를 통하여 촬영 장치(1140)의 CSI 장치(1141)와 시리얼 통신을 수행할 수 있다. 일 실시예에서, CSI 호스트(1112)는 디시리얼라이저(DES)를 포함할 수 있고, CSI 장치(1141)는 시리얼라이저(SER)를 포함할 수 있다. 다른 실시예에서, CSI 호스트(1112)는 시리얼라이저(SER)를 포함할 수 있고, CSI 장치(1141)는 디시리얼라이저(DES)를 포함할 수 있다.
어플리케이션 프로세서(1110)의 DSI 호스트(1111)는 디스플레이 시리얼 인터페이스(Display Serial Interface; DSI)를 통하여 디스플레이(1150)의 DSI 장치(1151)와 시리얼 통신을 수행할 수 있다. 일 실시예에서, DSI 호스트(1111)는 시리얼라이저(SER)를 포함할 수 있고, DSI 장치(1151)는 디시리얼라이저(DES)를 포함할 수 있다.
컴퓨팅 시스템(1000)은 어플리케이션 프로세서(1110)와 통신을 수행할 수 있는 알에프(Radio Frequency; RF) 칩(1160)을 더 포함할 수 있다. 컴퓨팅 시스템(1000)의 PHY(1113)와 RF 칩(1160)의 PHY(1161)는 MIPI(Mobile Industry Processor Interface) DigRF에 따라 데이터 송수신을 수행할 수 있다. 또한, 어플리케이션 프로세서(1110)는 PHY(1161)의 MIPI DigRF에 따른 데이터 송수신을 제어하는 DigRF MASTER(1114)를 더 포함할 수 있다.
한편, 컴퓨팅 시스템(1000)은 지피에스(Global Positioning System; GPS)(1120), 스토리지(1180), 디램(Dynamic Random Access Memory; DRAM)(1170), 마이크(1191) 및 스피커(1192)를 포함할 수 있다. 또한, 컴퓨팅 시스템(1000)은 초광대역(Ultra WideBand; UWB)(1210), 무선 랜(Wireless Local Area Network; WLAN)(1220) 및 와이맥스(Worldwide Interoperability for Microwave Access; WIMAX)(1230) 등을 이용하여 통신을 수행할 수 있다. 다만, 컴퓨팅 시스템(1000)의 구조 및 인터페이스는 하나의 예시로서 이에 한정되는 것이 아니다.
한편, 도 1 내지 도 14를 참조하여 설명한 본 개시의 실시예들에 따른 반도체 장치(100, 100a, 100b, 100c, 100d, 100e)는 CSI 장치(1141), DSI 장치(1151), 알에프 칩(1160), 스토리지(1180), 및 DRAM(1170) 중 적어도 하나로서 구현될 수 있다. 이에 따라, 클럭의 토글링에 따른 스위칭 전력이 감소되고, 컴퓨팅 시스템(1000)의 소비 전력이 감소될 수 있다.
도 17의 컴퓨팅 시스템(1000)은 스마트 폰(smartphone), 태블릿 PC(tablet personal computer), 데스크탑 PC(desktop personal computer), PDA(personal digital assistant), 모바일 장치, 카메라(camera), 또는 웨어러블 장치(wearable device) 등에 적용될 수 있다. 또한 컴퓨팅 시스템(1000)은 스마트 가전 제품, 이미지 표시 기능 또는 통신 기능을 구비한 가구(furniture), 각종 의료기기 및 차량용 전자 장치에 적용될 수 있다.
본 개시는 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 개시의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의하여 정해져야 할 것이다.
100, 100a, 100b, 100c, 100d, 100e: 반도체 장치
110: 클럭 생성기 120, 120b, 120c, 120d, 120e: 클럭 게이팅부
131, 13d, 131e: 제1 기능 블록 132, 132d, 132e: 제2 기능 블록
131: 제3 기능 블록 140: 인터페이스부

Claims (10)

  1. 서로 다른 기능을 수행하며, 각각이 데이터를 저장하는 적어도 하나의 레지스터를 포함하는 복수의 기능 블록;
    기준 클럭을 생성하는 클럭 생성부; 및
    상기 기준 클럭을 기초로 상기 복수의 기능 블록 각각에 대응하는 복수의 클럭을 생성하여 상기 복수의 기능 블록에 제공하되, 상기 복수의 기능 블록 중 데이터가 저장될 제1 기능 블록을 지정하는 제1 어드레스 및 레지스터 인에이블 신호를 기초로 상기 복수의 클럭을 게이팅하는 클럭 게이팅부를 포함하는 반도체 장치.
  2. 제1 항에 있어서, 상기 클럭 게이팅부는,
    상기 복수의 기능 블록 각각에 대응하는 클럭을 상기 복수의 기능 블록 각각에 대해 포인트-투-포인트 연결을 통해 제공하는 것을 특징으로 하는 반도체 장치.
  3. 제1 항에 있어서,
    상기 클럭 생성부와 상기 클럭 게이팅부 사이에서 상기 기준 클럭이 전송되는 물리적 거리는, 상기 게이팅부와 상기 복수의 기능 블록들 사이에서 상기 복수의 클럭이 전송되는 물리적 거리보다 가까운 것을 특징으로 하는 반도체 장치.
  4. 제1 항에 있어서,
    상기 클럭 게이팅부는, 상기 복수의 기능 블록 각각의 상기 적어도 하나의 레지스터에 제공되는 복수의 제1 클럭을 생성하고, 상기 복수의 제1 클럭을 상기 복수의 기능 블록 각각으로 출력하되, 상기 복수의 제1 클럭을 게이팅하는 것을 특징으로 하는 반도체 장치.
  5. 제4 항에 있어서,
    외부 장치로부터 어드레스 및 상기 데이터를 수신하고, 상기 복수의 기능 블록에 구비되는 복수의 레지스터 중 상기 제1 어드레스에 대응하는 제1 레지스터에 상기 데이터를 제공하고, 상기 클럭 게이팅부에 상기 제1 어드레스를 제공하는 인터페이스부를 더 포함하고,
    상기 클럭 게이팅부는, 상기 제1 레지스터를 포함하는 제1 기능 블록에 제공되는 제1 클럭을 출력하고, 다른 기능 블록에 제공되는 제1 클럭을 차단하는 것을 특징으로 하는 반도체 장치.
  6. 삭제
  7. 제5 항에 있어서, 상기 클럭 게이팅부는,
    상기 레지스터 인에이블 신호에 응답하여, 상기 데이터가 상기 제1 레지스터로 전송되는 시간 기간에 상기 제1 기능 블록에 제공되는 제1 클럭을 출력하고, 상기 데이터가 상기 제1 레지스터로 전송되지 않는 시간 기간에, 상기 제1 기능 블록에 제공되는 제1 클럭을 차단하는 것을 특징으로 하는 반도체 장치.
  8. 제1 항에 있어서, 상기 복수의 기능 블록 각각은,
    동작 상태를 나타내는 동작 인에이블 신호를 상기 클럭 게이팅부에 제공하고,
    상기 클럭 게이팅부는, 상기 복수의 기능 블록 각각으로부터 수신되는 동작 인에이블 신호에 응답하여 상기 복수의 기능 블록 각각으로 제공되는 복수의 클럭을 게이팅하는 것을 특징으로 하는 반도체 장치.
  9. 제8 항에 있어서, 상기 클럭 게이팅부는,
    상기 복수의 기능 블록 중 하나의 기능 블록으로부터 수신되는 상기 동작 인에이블 신호가 제1 레벨일 때, 상기 하나의 기능 블록에 대응하는 클럭을 출력하고, 상기 동작 인에이블 신호가 제2 레벨일 때, 상기 하나의 기능 블록에 대응하는 클럭을 차단하는 것을 특징으로 하는 반도체 장치.
  10. 제1항의 반도체 장치를 포함하는 이미지 센서.
KR1020150132600A 2015-09-18 2015-09-18 반도체 장치 KR102387466B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150132600A KR102387466B1 (ko) 2015-09-18 2015-09-18 반도체 장치
US15/212,406 US9806695B2 (en) 2015-09-18 2016-07-18 Integrated Circuit Devices Having Clock Gating Circuits Therein

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150132600A KR102387466B1 (ko) 2015-09-18 2015-09-18 반도체 장치

Publications (2)

Publication Number Publication Date
KR20170034210A KR20170034210A (ko) 2017-03-28
KR102387466B1 true KR102387466B1 (ko) 2022-04-15

Family

ID=58283368

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150132600A KR102387466B1 (ko) 2015-09-18 2015-09-18 반도체 장치

Country Status (2)

Country Link
US (1) US9806695B2 (ko)
KR (1) KR102387466B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010223793A (ja) 2009-03-24 2010-10-07 Fujitsu Semiconductor Ltd 半導体集積回路およびそのテスト方法
US20100253409A1 (en) * 2009-04-06 2010-10-07 Ralink Technology Corporation Clock generation system and clock dividing module
JP2011248579A (ja) 2010-05-26 2011-12-08 Canon Inc クロック供給装置
US20130021072A1 (en) 2011-07-18 2013-01-24 James Wang Dynamic Frequency Control Using Coarse Clock Gating

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6232820B1 (en) * 1999-06-14 2001-05-15 Intel Corporation Method and apparatus for dynamic clock gating
JP2000357124A (ja) 1999-06-16 2000-12-26 Matsushita Electric Ind Co Ltd デジタル信号処理装置及びこれを有する通信システム
JP2005267255A (ja) 2004-03-18 2005-09-29 Ricoh Co Ltd クロックオートストップ制御装置およびこの制御装置を有する電子機器又は画像処理装置
KR100591524B1 (ko) 2004-05-14 2006-06-19 삼성전자주식회사 버스 구조하에서 다이나믹 클록 게이팅이 가능한 슬레이브장치 및 그 동작방법
KR100598010B1 (ko) 2004-08-06 2006-07-06 삼성전자주식회사 클럭 분배기, 클럭 분배기를 포함한 시스템, 클럭 분배방법 및 클럭 분배를 이용한 데이터 읽기 및 쓰기 방법
US7434073B2 (en) 2004-11-29 2008-10-07 Intel Corporation Frequency and voltage scaling architecture
EP1819048B1 (en) 2004-12-01 2012-02-08 Fujitsu Ltd. Semiconductor device employing dynamic circuit
JP2007052525A (ja) 2005-08-16 2007-03-01 Canon Inc データ処理装置、データ処理方法
KR20070089428A (ko) 2006-02-28 2007-08-31 김희석 저전력 알티엘 설계를 위한 클록 설계방법 및 저전력알티엘 설계를 위한 클록
US7802118B1 (en) * 2006-12-21 2010-09-21 Nvidia Corporation Functional block level clock-gating within a graphics processor
KR101384540B1 (ko) * 2007-11-08 2014-04-11 삼성전자주식회사 클록 분배 회로 및 이를 포함하는 반도체 칩
US9285860B2 (en) 2010-05-03 2016-03-15 Qualcomm Incorporated Apparatus and methods employing variable clock gating hysteresis for a communications port
KR101842245B1 (ko) 2011-07-25 2018-03-26 삼성전자주식회사 시스템 온 칩 버스 장치 및 그에 따른 루트 클럭 게이팅 방법
JP2013106166A (ja) 2011-11-14 2013-05-30 Sony Corp クロックゲーティング回路およびバスシステム
US9158328B2 (en) 2011-12-20 2015-10-13 Oracle International Corporation Memory array clock gating scheme

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010223793A (ja) 2009-03-24 2010-10-07 Fujitsu Semiconductor Ltd 半導体集積回路およびそのテスト方法
US20100253409A1 (en) * 2009-04-06 2010-10-07 Ralink Technology Corporation Clock generation system and clock dividing module
JP2011248579A (ja) 2010-05-26 2011-12-08 Canon Inc クロック供給装置
US20130021072A1 (en) 2011-07-18 2013-01-24 James Wang Dynamic Frequency Control Using Coarse Clock Gating

Also Published As

Publication number Publication date
US9806695B2 (en) 2017-10-31
KR20170034210A (ko) 2017-03-28
US20170085254A1 (en) 2017-03-23

Similar Documents

Publication Publication Date Title
US10096303B2 (en) Host and multi-display system including the same
TW201706990A (zh) 用於高速記憶體介面之低功率時脈
US10554865B2 (en) Display controller for generating video sync signal using external clock, an application processor including the controller, and an electronic system including the controller
JP2015094945A (ja) ディスプレイパネルをディスプレイ送信エンジンに接続する物理層インターフェースについての電力管理
US9837992B2 (en) Semiconductor device
KR20130036783A (ko) 디스플레이 드라이버의 동작 방법, 상기 디스플레이 드라이버를 제어하기 위한 호스트, 및 이들을 포함하는 시스템
KR102290984B1 (ko) 풀 핸드세이크를 지원하는 시스템온칩 및 이를 포함하는 모바일 장치
US10447248B2 (en) Semiconductor circuit
KR20150069142A (ko) 설정 가능한 클락 메시 회로, 이의 동작 방법, 및 이를 포함하는 장치들
US9088287B2 (en) Divided clock generation device and divided clock generation method
JP6363316B1 (ja) 複数のインターフェースによるメモリ空間へのコンカレントアクセス
KR20160146323A (ko) 출력 피크 전류를 분산할 수 있는 이미지 센서와 이를 포함하는 이미지 처리 시스템
US9692448B1 (en) Split chip solution for die-to-die serdes
US11289138B2 (en) Memory device including plurality of latches and system on chip including the same
US11962295B2 (en) Multiplexer and semiconductor device including the same
CN101263697B (zh) 不使用pll产生串行时钟的方法和装置
KR102387466B1 (ko) 반도체 장치
US9311261B2 (en) Universal serial interface and semiconductor device including the same
US20140040652A1 (en) Sideband initialization
US20170317676A1 (en) Semiconductor circuit
US9576620B2 (en) Semiconductor apparatus and operating method thereof
US10539616B2 (en) Scan data control apparatus and electronic system having the same
KR102012904B1 (ko) 반도체 집적회로와 그 동작 방법
US9698972B2 (en) Voltage mode drivers and electronic apparatus having the same
TW202101411A (zh) 源極驅動電路、顯示裝置及資訊處理裝置

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant