KR102550422B1 - Semiconductor device - Google Patents

Semiconductor device Download PDF

Info

Publication number
KR102550422B1
KR102550422B1 KR1020170007002A KR20170007002A KR102550422B1 KR 102550422 B1 KR102550422 B1 KR 102550422B1 KR 1020170007002 A KR1020170007002 A KR 1020170007002A KR 20170007002 A KR20170007002 A KR 20170007002A KR 102550422 B1 KR102550422 B1 KR 102550422B1
Authority
KR
South Korea
Prior art keywords
clock
request signal
unit
control circuit
signal
Prior art date
Application number
KR1020170007002A
Other languages
Korean (ko)
Other versions
KR20170088758A (en
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 US15/415,041 priority Critical patent/US10248155B2/en
Priority to DE102017110788.6A priority patent/DE102017110788A1/en
Priority to CN201710600073.8A priority patent/CN108319326B/en
Priority to TW106124821A priority patent/TWI740988B/en
Publication of KR20170088758A publication Critical patent/KR20170088758A/en
Application granted granted Critical
Publication of KR102550422B1 publication Critical patent/KR102550422B1/en

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/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/3234Power saving characterised by the action undertaken
    • G06F1/3237Power saving characterised by the action undertaken by disabling clock generation or distribution
    • 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

반도체 장치가 제공된다. 상기 반도체 장치는, 제1 제어 회로와 제1 클럭 게이팅 회로를 포함하는 제1 클럭 생성부, 상기 제1 클럭 생성부와 풀 핸드쉐이크(full handshake) 방식에 따라 통신하는 제1 채널 관리부, 제2 제어 회로와 제2 클럭 게이팅 회로를 포함하는 제2 클럭 생성부, 및 상기 제2 클럭 생성부와 풀 핸드쉐이크 방식에 따라 통신하는 제2 채널 관리부를 포함하고, 상기 제1 클럭 게이팅 회로는 제1 클럭을 출력하고, 상기 제2 클럭 게이팅 회로는 상기 제1 클럭과 다른 제2 클럭을 출력한다.A semiconductor device is provided. The semiconductor device may include a first clock generator including a first control circuit and a first clock gating circuit, a first channel manager communicating with the first clock generator according to a full handshake method, and a second clock generator. a second clock generation unit including a control circuit and a second clock gating circuit; and a second channel management unit communicating with the second clock generation unit according to a full handshake method, wherein the first clock gating circuit comprises a first clock, and the second clock gating circuit outputs a second clock different from the first clock.

Description

반도체 장치{Semiconductor device}Semiconductor device

본 발명은 반도체 회로를 포함하는 반도체 장치에 관한 것이다.The present invention relates to a semiconductor device including a semiconductor circuit.

컴퓨터, 통신, 방송 등이 점차 통합되는 컨버전스(Convergence)화에 따라, 기존 ASIC(Application Specific IC; 주문형 반도체)와 ASSP(Application Specific Standard Product; 특정용도 표준제품)의 수요는 SoC의 수요로 변환되고 있는 추세이다. 또한, IT(Information Technology) 기기의 경박 단소화 및 고기능화 추세도 SoC를 촉진시키는 요인들 중의 하나이다. With the convergence of computers, telecommunications, and broadcasting, the demand for existing ASIC (Application Specific IC) and ASSP (Application Specific Standard Product) is being converted into SoC demand. there is a trend In addition, the trend of light, thin, small-sized and highly functional IT (Information Technology) devices is one of the factors promoting SoC.

그러한 SoC는, 반도체 공정 기술의 발전에 힘입어 기존의 여러 가지 기능을 가진 기능 블록들, 예컨대 IP(Intellectural Property)들이 하나의 칩 상에 집약적으로 구현된 형태이다. Such an SoC is a form in which existing functional blocks having various functions, for example, IP (Intellectural Property), are intensively implemented on a single chip thanks to the development of semiconductor process technology.

SoC의 집적도 및 사이즈가 커지고 동작 속도도 높아짐에 따라, 저전력 소비 이슈도 매우 중요한 팩터들 중의 하나가 된다. 왜냐하면 전력 소비가 심할 경우에 칩의 온도가 높아져 동작 불능은 물론 패키지(package)가 파손되는 경우도 초래될 수 있다. As the degree of integration and size of SoCs increase and the operating speed increases, the issue of low power consumption also becomes one of the very important factors. This is because, when the power consumption is severe, the temperature of the chip rises, resulting in inoperability as well as damage to the package.

SoC 내의 반도체 회로에서, 전력 절감(power reduction) 등의 목적을 위해 클럭을 제공하거나 차단하는 회로가 필요한 경우가 있다. 클럭 게이팅 회로(Clock Gating Circuit)는 특정 회로의 동작이 필요하지 않는 경우 그 회로에 클럭을 공급하지 않는데 이용되고 있다.In a semiconductor circuit in an SoC, there are cases where a circuit providing or blocking a clock is required for purposes such as power reduction. A clock gating circuit is used to not supply a clock to a specific circuit when the operation of the circuit is not required.

본 발명이 해결하고자 하는 과제는, SoC 내의 반도체 회로에서 채널 매니지먼트 유닛과 IP(Intellectual Property) 사이의 연결 관계를 정의하여, 다양한 클럭 컨수머(clock consumer)를 적용할 수 있는 반도체 장치를 제공하는 것이다. An object to be solved by the present invention is to provide a semiconductor device capable of applying various clock consumers by defining a connection relationship between a channel management unit and IP (Intellectual Property) in a semiconductor circuit within an SoC. .

본 발명이 해결하고자 하는 과제는, 이상에서 언급한 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The problem to be solved by the present invention is not limited to the above-mentioned problems, and other problems not mentioned will be clearly understood by those skilled in the art from the following description.

상기 과제를 해결하기 위한 본 발명의 몇몇 실시예에 따른 반도체 장치는, 제1 제어 회로와 제1 클럭 게이팅 회로를 포함하는 제1 클럭 생성부, 상기 제1 클럭 생성부와 풀 핸드쉐이크(full handshake) 방식에 따라 통신하는 제1 채널 관리부, 제2 제어 회로와 제2 클럭 게이팅 회로를 포함하는 제2 클럭 생성부, 및 상기 제2 클럭 생성부와 풀 핸드쉐이크 방식에 따라 통신하는 제2 채널 관리부를 포함하고, 상기 제1 클럭 게이팅 회로는 제1 클럭을 출력하고, 상기 제2 클럭 게이팅 회로는 상기 제1 클럭과 다른 제2 클럭을 출력한다. In order to solve the above object, a semiconductor device according to some embodiments of the present disclosure includes a first clock generator including a first control circuit and a first clock gating circuit, and a full handshake with the first clock generator. ) method, a second clock generator including a second control circuit and a second clock gating circuit, and a second channel manager that communicates with the second clock generator according to a full handshake method. wherein the first clock gating circuit outputs a first clock, and the second clock gating circuit outputs a second clock different from the first clock.

상기 과제를 해결하기 위한 본 발명의 몇몇 실시예에 따른 반도체 장치는, 제1 제어 회로와 제1 클럭 게이팅 회로를 포함하는 제1 클럭 생성부, 상기 제1 클럭 생성부와 풀 핸드쉐이크(full handshake) 방식에 따라 통신하는 제1 채널 관리부, 및 제2 제어 회로와 제2 클럭 게이팅 회로를 포함하는 제2 클럭 생성부를 포함하고, 상기 제2 클럭 생성부는 상기 제1 채널 관리부와 풀 핸드쉐이크 방식에 따라 통신하고, 상기 제1 클럭 게이팅 회로는 제1 클럭을 출력하고, 상기 제2 클럭 게이팅 회로는 상기 제1 클럭과 다른 제2 클럭을 출력한다. In order to solve the above object, a semiconductor device according to some embodiments of the present disclosure includes a first clock generator including a first control circuit and a first clock gating circuit, and a full handshake with the first clock generator. ) method, and a second clock generator including a second control circuit and a second clock gating circuit, wherein the second clock generator communicates with the first channel manager in a full handshake method. , the first clock gating circuit outputs a first clock, and the second clock gating circuit outputs a second clock different from the first clock.

상기 과제를 해결하기 위한 본 발명의 몇몇 실시예에 따른 반도체 장치는, 제1 제어 회로와 제1 클럭 게이팅 회로를 포함하는 제1 클럭 생성부, 상기 제1 클럭 생성부와 풀 핸드쉐이크(full handshake) 방식에 따라 통신하는 제1 채널 관리부, 및 상기 제1 클럭 생성부와 풀 핸드쉐이크 방식에 따라 통신하는 제2 채널 관리부를 포함하고, 상기 제1 채널 관리부는 상기 제1 클럭 생성부로 제1 클럭 요청 신호를 전송하고, 상기 제2 채널 관리부는 상기 제1 클럭 생성부로 제2 클럭 요청 신호를 전송한다. In order to solve the above object, a semiconductor device according to some embodiments of the present disclosure includes a first clock generator including a first control circuit and a first clock gating circuit, and a full handshake with the first clock generator. ) method, and a second channel management unit communicating with the first clock generator according to a full handshake method, wherein the first channel manager transmits a first clock signal to the first clock generator. A request signal is transmitted, and the second channel manager transmits a second clock request signal to the first clock generator.

본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Other specific details of the invention are included in the detailed description and drawings.

도 1은 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이다.
도 2는 본 발명의 몇몇 실시예에 따른 반도체 장치에 포함된 클럭 관리 유닛을 도시한 블록도이다.
도 3은 본 발명의 몇몇 실시예에 따른 반도체 장치에 포함된 IP를 도시한 블록도이다.
도 4는 복수 개의 제어 회로 사이의 신호 전송 패스(path)를 도시한 것이다.
도 5a는 본 발명에서 이용되는 클럭 요청 신호와 클럭 응답 신호를 설명하기 위한 도면이다.
도 5b는 본 발명에서 이용되는 클럭 요청 신호와 클럭 응답 신호에 대한 클럭 레벨 천이(transition)를 도시한 것이다.
도 6은 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이다.
도 7은 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이다.
도 8은 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이다.
도 9a는 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이고, 도 9b는 도 9a의 반도체 장치의 동작을 나타낸 타이밍도이다.
도 10a은 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이고, 도 10b는 도 10a의 반도체 장치의 동작을 나타낸 타이밍도이다.
도 11은 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이다.
도 12는 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이다.
도 13은 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이다.
도 14는 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이다.
도 15는 본 발명의 몇몇 실시예에 따른 반도체 장치를 포함하는 반도체 시스템의 일 실시예를 나타내는 블록도이다.
도 16은 본 발명의 몇몇 실시예에 따른 반도체 장치를 포함하는 반도체 시스템의 다른 실시예를 나타내는 블록도이다.
1 is a block diagram illustrating a semiconductor device according to some embodiments of the inventive concept.
2 is a block diagram illustrating a clock management unit included in a semiconductor device according to some embodiments of the inventive concept.
3 is a block diagram illustrating IP included in a semiconductor device according to some embodiments of the present invention.
4 illustrates a signal transmission path between a plurality of control circuits.
5A is a diagram for explaining a clock request signal and a clock response signal used in the present invention.
5B illustrates clock level transitions of a clock request signal and a clock response signal used in the present invention.
6 is a block diagram illustrating a semiconductor device according to some embodiments of the inventive concept.
7 is a block diagram illustrating a semiconductor device according to some embodiments of the inventive concept.
8 is a block diagram illustrating a semiconductor device according to some embodiments of the inventive concept.
FIG. 9A is a block diagram illustrating a semiconductor device according to some example embodiments, and FIG. 9B is a timing diagram illustrating an operation of the semiconductor device of FIG. 9A.
FIG. 10A is a block diagram illustrating a semiconductor device according to some example embodiments, and FIG. 10B is a timing diagram illustrating an operation of the semiconductor device of FIG. 10A.
11 is a block diagram illustrating a semiconductor device according to some embodiments of the inventive concept.
12 is a block diagram illustrating a semiconductor device according to some embodiments of the inventive concept.
13 is a block diagram illustrating a semiconductor device according to some embodiments of the inventive concept.
14 is a block diagram illustrating a semiconductor device according to some embodiments of the inventive concept.
15 is a block diagram illustrating an example of a semiconductor system including a semiconductor device according to some example embodiments of inventive concepts.
16 is a block diagram illustrating another embodiment of a semiconductor system including a semiconductor device according to some embodiments of the inventive concept.

도 1은 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이다. 1 is a block diagram illustrating a semiconductor device according to some embodiments of the inventive concept.

도 1을 참조하면, 본 발명의 몇몇의 실시예에 따른 반도체 장치는 입출력 패드(101), 클럭 관리 유닛(CMU; Clock Management Unit)(100), 전력 관리 유닛(PMU; Power Management Unit)(300) 및 로직 블록(logic block)을 포함할 수 있다. 예를 들어, 로직 블록은 적어도 하나의 IP 블록(intellectual property)(200, 210, 220)으로 구현될 수 있다. Referring to FIG. 1 , a semiconductor device according to some embodiments of the present invention includes an input/output pad 101, a clock management unit (CMU) 100, and a power management unit (PMU) 300. ) and logic blocks. For example, a logic block may be implemented as at least one IP block (intellectual property) 200 , 210 , and 220 .

클럭 관리 유닛(100)은 제1 내지 제3 IP 블록(200, 210, 220) 각각으로 제공하기 위한 동작 클럭 신호를 생성할 수 있다. 예를 들면, 클럭 관리 유닛(100)은 제1 내지 제3 클럭 신호(CLK1, CLK2, CLK3)를 생성할 수 있다. The clock management unit 100 may generate an operation clock signal to be provided to each of the first to third IP blocks 200, 210, and 220. For example, the clock management unit 100 may generate first to third clock signals CLK1 , CLK2 , and CLK3 .

제1 내지 제3 IP 블록(200, 210, 220) 각각은 시스템 버스(bus)에 연결되며, 시스템 버스를 통하여 상호간에 통신할 수 있다. 본 발명의 몇몇의 실시예에서, 제1 내지 제3 IP 블록(200, 210, 220) 각각은 프로세서(processor), 그래픽 프로세서(graphic processor), 메모리 컨트롤러(graphic controller), 입출력 인터페이스 블록(input and output interface block) 등을 포함할 수 있다. Each of the first to third IP blocks 200, 210, and 220 are connected to a system bus and may communicate with each other through the system bus. In some embodiments of the present invention, each of the first to third IP blocks 200, 210, and 220 is a processor, a graphic processor, a memory controller, an input and output interface block (input and output interface block), etc.

클럭 관리 유닛(100)은 제1 IP 블록(200)으로 제1 클럭 신호(CLK1)를 제공할 수 있다. 클럭 관리 유닛(100)은 제2 IP 블록(210)으로 제2 클럭 신호(CLK2)를 제공할 수 있다. 클럭 관리 유닛(100)은 제3 IP 블록(220)으로 제3 클럭 신호(CLK3)를 제공할 수 있다. The clock management unit 100 may provide the first clock signal CLK1 to the first IP block 200 . The clock management unit 100 may provide the second clock signal CLK2 to the second IP block 210 . The clock management unit 100 may provide the third clock signal CLK3 to the third IP block 220 .

제1 내지 제3 IP 블록(200, 210, 220) 중 어느 하나는 풀 핸드셰이크 방식(full handshake method)에 따라 클럭 관리 유닛(100)으로 클럭 요청 신호를 전송할 수 있다.Any one of the first to third IP blocks 200, 210, and 220 may transmit a clock request signal to the clock management unit 100 according to a full handshake method.

예를 들어, 제1 IP 블록(200)은 풀 핸드셰이크 방식에 따라 클럭 관리 유닛(100)으로 제1 클럭 요청 신호(REQ1)를 전송할 수 있다. 클럭 관리 유닛(100)은 제1 클럭 요청 신호(REQ1)를 수신하고, 제1 IP 블록(200)으로 제1 클럭 응답 신호(ACK1)를 전송할 수 있다. 또한, 동시에 클럭 관리 유닛(100)은 제1 클럭 신호(CLK1)을 제1 IP 블록(200)으로 전송할 수 있다. For example, the first IP block 200 may transmit the first clock request signal REQ1 to the clock management unit 100 according to the full handshake method. The clock management unit 100 may receive the first clock request signal REQ1 and transmit the first clock response signal ACK1 to the first IP block 200 . Also, at the same time, the clock management unit 100 may transmit the first clock signal CLK1 to the first IP block 200 .

본 발명의 몇몇의 실시예에서, 클럭 관리 유닛(100)과 제1 내지 제3 IP 블록(200, 210, 220) 사이의 인터페이스는 풀 핸드셰이크 방식(full handshake method)의 형식을 가질 수 있다. 본 발명의 몇몇의 실시예에서, 상기 인터페이스는 ARM 사의 Q-채널 인터페이스(Q-Channel Interface) 또는 P-채널 인터페이스(P-Channel Interface)에 따르도록 구현될 수 있으나, 본 발명의 범위가 이에 제한되는 것은 아니다.In some embodiments of the present invention, an interface between the clock management unit 100 and the first to third IP blocks 200, 210, and 220 may have a full handshake method. In some embodiments of the present invention, the interface may be implemented to comply with ARM's Q-Channel Interface or P-Channel Interface, but the scope of the present invention is limited thereto. it is not going to be

클럭 게이팅(clock gating)은 컴퓨터 시스템 내부를 작은 기능 블록들로 구분한 뒤 사용하지 않는 부분의 전력은 끊는 기능이다. 실제 컴퓨터를 사용하면서 컴퓨터 시스템의 모든 부분이 항상 동작하는 것은 아니므로 사용하지 않는 부분의 블록을 정지시켜서 소비 전력을 낮추고, 더불어 기능이 정지된 블록에서 생기는 발열도 줄일 수 있다. Clock gating is a function that divides the inside of a computer system into small functional blocks and cuts power to unused parts. Since not all parts of the computer system always operate while using a real computer, it is possible to reduce power consumption by stopping unused blocks, and also reduce heat generated from disabled blocks.

본 발명의 몇몇의 실시예에 따른 클럭 관리 유닛(100)은 제1 내지 제3 IP 블록(200, 210, 220) 중 동작 클럭이 필요하지 않은 IP 블록에 대하여 후단으로부터 순차적으로 클럭 게이팅을 수행하여, IP 블록 동작에 오류를 발생시키지 않으면서 자동적으로 클럭 게이팅을 수행하여 전력 소비를 줄일 수 있다. The clock management unit 100 according to some embodiments of the present invention sequentially performs clock gating from the rear end on IP blocks that do not require operating clocks among the first to third IP blocks 200, 210, and 220, , it is possible to reduce power consumption by automatically performing clock gating without causing errors in IP block operation.

전력 관리 유닛(300)은 반도체 장치(100)에 공급되는 전원을 제어한다. 예를 들어, 반도체 장치(100)가 대기 모드에 들어가면, 전력 관리 유닛(300)은 전력 조절 회로를 오프 하여 반도체 장치(100)로 제공되는 공급 전원을 차단한다. 이 때, 전력 관리 유닛(300)은 계속적으로 전력을 소모하지만, 전력 관리 유닛(300)에서 소모되는 전력은 반도체 장치(100) 전체에서 소모되는 전력에 비해 아주 작은 부분에 해당되므로, 대기 모드에서는 반도체 장치(100)의 전력 소비가 크게 줄어든다. The power management unit 300 controls power supplied to the semiconductor device 100 . For example, when the semiconductor device 100 enters a standby mode, the power management unit 300 turns off a power control circuit to cut off power supplied to the semiconductor device 100 . At this time, the power management unit 300 continuously consumes power, but since the power consumed by the power management unit 300 corresponds to a very small portion of the power consumed by the entire semiconductor device 100, in the standby mode Power consumption of the semiconductor device 100 is greatly reduced.

구체적으로, 전력 관리 유닛(300)은 반도체 장치(100)가 대기 모드인 경우, 클럭 관리 유닛(100)으로 제공되는 공급 전력을 차단할 수 있다. 이는 제1 내지 제3 IP 블록(200, 210, 220)에서 클럭 요청이 없는 경우에 해당할 수 있다.In detail, the power management unit 300 may cut off power supplied to the clock management unit 100 when the semiconductor device 100 is in a standby mode. This may correspond to a case where there is no clock request from the first to third IP blocks 200, 210, and 220.

도 2는 본 발명의 몇몇 실시예에 따른 반도체 장치에 포함된 클럭 관리 유닛을 도시한 블록도이다.2 is a block diagram illustrating a clock management unit included in a semiconductor device according to some embodiments of the inventive concept.

도 2를 참조하면, 클럭 관리 유닛(100)은 클럭 컴포넌트(Clock Component)(120a, 120b, 120c, 120d, 120e, 120f, 120g), 채널 관리 회로(Channel Management circuit, CM)(130, 132) 및 클럭 관리 유닛 컨트롤러(Clock Management Controller, CMU Controller)(110)를 포함한다. 클럭 컴포넌트(120a, 120b, 120c, 120d, 120e, 120f, 120g)는 IP 블록(200, 210)에 제공할 클럭 신호를 생성하고, 채널 관리 회로(130, 132)는 클럭 컴포넌트(120f, 120g)와 IP 블록(200, 210) 사이에 배치되어 클럭 관리 유닛(100)과 IP 블록(200, 210) 사이의 통신 채널(Channel, CH)을 제공한다. 그리고 클럭 관리 유닛 컨트롤러(110)는 클럭 컴포넌트(120a, 120b, 120c, 120d, 120e, 120f, 120g)를 이용하여 IP 블록(200, 210)에 클럭 신호를 제공한다.Referring to FIG. 2, the clock management unit 100 includes clock components 120a, 120b, 120c, 120d, 120e, 120f, and 120g, and channel management circuits (CM) 130 and 132. and a clock management unit controller (CMU Controller) 110. The clock components 120a, 120b, 120c, 120d, 120e, 120f, and 120g generate clock signals to be provided to the IP blocks 200 and 210, and the channel management circuits 130 and 132 use the clock components 120f and 120g and the IP blocks 200 and 210 to provide a communication channel (Channel, CH) between the clock management unit 100 and the IP blocks 200 and 210. The clock management unit controller 110 provides clock signals to the IP blocks 200 and 210 using the clock components 120a, 120b, 120c, 120d, 120e, 120f, and 120g.

본 발명의 몇몇의 실시예에서, 채널 관리 회로(130, 132)가 제공하는 통신 채널(CH)은 ARM 사의 LPI(Low Power Interface), Q-채널 인터페이스(Q-Channel Interface) 또는 P-채널 인터페이스(P-Channel Interface)에 따르도록 구현될 수 있으나, 본 발명의 범위가 이에 제한되는 것은 아니고, 구현 목적에 따라 정해진 임의의 통신 프로토콜을 따르는 통신 채널(CH)로 구현될 수 있다.In some embodiments of the present invention, the communication channel (CH) provided by the channel management circuits 130 and 132 is an ARM low power interface (LPI), Q-channel interface, or P-channel interface. (P-Channel Interface), but the scope of the present invention is not limited thereto, and may be implemented as a communication channel (CH) conforming to an arbitrary communication protocol determined according to the purpose of implementation.

클럭 컴포넌트(120a, 120b, 120c, 120d, 120e, 120f, 120g)는 각각 클럭 소오스(Clock Source, CS)(124a, 124b, 124c, 124d, 124e, 124f, 124g)와, 클럭 소오스(124a, 124b, 124c, 124d, 124e, 124f, 124g)를 각각 제어하는 클럭 제어 회로(Clock Control circuit, CC)(122a, 122b, 122c, 122d, 122e, 122f, 122g)를 포함한다. 클럭 소오스(124a, 124b, 124c, 124d, 124e, 124f, 124g)는, 예컨대, 다중화 회로(MUX circuit), 클럭 분주 회로(clock dividing circuit), 단기 정지 회로(short stop circuit), 클럭 게이팅 회로(clock gating circuit) 등을 포함할 수 있다.The clock components 120a, 120b, 120c, 120d, 120e, 120f, and 120g are clock sources (Clock Source, CS) 124a, 124b, 124c, 124d, 124e, 124f, and 124g, respectively, and clock sources 124a and 124b. and clock control circuits (CC) 122a, 122b, 122c, 122d, 122e, 122f, and 122g respectively controlling the , 124c, 124d, 124e, 124f, and 124g. The clock sources 124a, 124b, 124c, 124d, 124e, 124f, and 124g may include, for example, a MUX circuit, a clock dividing circuit, a short stop circuit, and a clock gating circuit ( clock gating circuit) and the like.

클럭 컴포넌트(120a, 120b, 120c, 120d, 120e, 120f, 120g)는 서로 간에 부모-자식 관계를 형성한다. 본 실시예에서 클럭 컴포넌트(120a)는 클럭 컴포넌트(120b)의 부모이고, 클럭 컴포넌트(120b)는 클럭 컴포넌트(120a)의 자식이자 클럭 컴포넌트(120c)의 부모이다. 또한 클럭 컴포넌트(120e)는 2 개의 클럭 컴포넌트(120f, 120g)의 부모이고, 클럭 컴포넌트(120f, 120g)는 클럭 컴포넌트(120e)의 자식이다. 한편, 본 실시예에서 PLL(Phase Locked Loop)에 가장 가깝도록 배치된 클럭 컴포넌트(120a)는 루트(root) 클럭 컴포넌트이고, IP 블록(200, 210)에 가장 가깝도록 배치된 클럭 컴포넌트(120f, 120g)는 리프(leaf) 클럭 컴포넌트이다. 이와 같은 부모-자식 관계는 클럭 컴포넌트(120a, 120b, 120c, 120d, 120e, 120f, 120g) 간의 부모-자식 관계에 따라 필연적으로 클럭 제어 회로(122a, 122b, 122c, 122d, 122e, 122f, 122g) 간, 그리고 클럭 소오스(124a, 124b, 124c, 124d, 124e, 124f, 124g) 간에도 형성된다.Clock components 120a, 120b, 120c, 120d, 120e, 120f, and 120g form a parent-child relationship with each other. In this embodiment, clock component 120a is a parent of clock component 120b, and clock component 120b is a child of clock component 120a and a parent of clock component 120c. Also, clock component 120e is a parent of two clock components 120f and 120g, and clock components 120f and 120g are children of clock component 120e. Meanwhile, in this embodiment, the clock component 120a arranged closest to the PLL (Phase Locked Loop) is a root clock component, and the clock components 120f, arranged closest to the IP blocks 200 and 210, 120g) is a leaf clock component. This parent-child relationship is inevitably dependent on the parent-child relationship between the clock components 120a, 120b, 120c, 120d, 120e, 120f, and 120g. ), and between the clock sources 124a, 124b, 124c, 124d, 124e, 124f, and 124g.

클럭 제어 회로(122a, 122b, 122c, 122d, 122e, 122f, 122g)는 부모와 자식 간에 클럭 요청(REQ) 및 이에 대한 애크(acknowledgement)(ACK)를 주고 받으며, IP 블록(200, 210)에 클럭 신호를 제공한다. The clock control circuits 122a, 122b, 122c, 122d, 122e, 122f, and 122g transmit and receive clock requests (REQs) and acknowledgments (ACKs) therefor between parents and children, and are connected to the IP blocks 200 and 210. Provides a clock signal.

예를 들어, IP 블록(200)이 클럭 신호를 필요로 하지 않는 경우, 예컨대 IP 블록(200)이 슬립(sleep) 상태가 되어야 할 필요가 있는 경우, 클럭 관리 유닛(100)은 IP 블록(200)에 대한 클럭 신호의 제공을 중지한다.For example, when the IP block 200 does not require a clock signal, for example, when the IP block 200 needs to be in a sleep state, the clock management unit 100 controls the IP block 200 ) to stop providing the clock signal.

구체적으로, 채널 관리 회로(130)는, 클럭 관리 유닛(100) 또는 클럭 관리 유닛 컨트롤러(110)의 제어 하에, IP 블록(200)에 클럭 신호의 제공을 중지하겠다는 제1 신호를 전송한다. 제1 신호를 수신한 IP 블록(200)은 처리 중인 작업을 완료한 후 클럭 신호가 중지되어도 좋다는 제2 신호를 채널 관리 회로(130)에 전송한다. 채널 관리 회로(130)는 IP 블록(200)으로부터 제2 신호를 수신한 후, 자신의 부모에 해당하는 클럭 컴포넌트(120f)에 클럭 신호의 제공을 중지할 것을 요청한다.Specifically, the channel management circuit 130 transmits a first signal to stop providing the clock signal to the IP block 200 under the control of the clock management unit 100 or the clock management unit controller 110 . Upon receiving the first signal, the IP block 200 transmits to the channel management circuit 130 a second signal indicating that the clock signal may be stopped after completing the task being processed. After receiving the second signal from the IP block 200, the channel management circuit 130 requests the clock component 120f corresponding to its parent to stop providing the clock signal.

일례로, 만일 채널 관리 회로(130)가 제공하는 통신 채널(CH)이 Q-채널 인터페이스를 따르는 경우라면, 채널 관리 회로(130)는 IP 블록(200)에 제1 논리 값(예컨대, 논리 로우(logic low), 이하 L로 표시)을 갖는 QREQn 신호를 제1 신호로서 전송한다. 이후 채널 관리 회로(130)는 IP 블록(200)으로부터, 예컨대 제1 논리 값을 갖는 QACCEPTn 신호를 제2 신호로서 수신한 후, 클럭 컴포넌트(120f)에, 예컨대 제1 논리 값을 갖는 클럭 요청(REQ)를 전송한다. 이 경우, 상기 제1 논리 값을 갖는 클럭 요청(REQ)은 "클럭 제공 중지 요청"을 말한다.For example, if the communication channel (CH) provided by the channel management circuit 130 follows the Q-channel interface, the channel management circuit 130 sends a first logic value (eg, logic low) to the IP block 200. A QREQn signal having (logic low, hereinafter denoted as L) is transmitted as a first signal. Then, the channel management circuit 130 receives a QACCEPTn signal having, for example, a first logic value from the IP block 200 as a second signal, and then sends a clock request (eg, a clock request having a first logic value) to the clock component 120f. REQ) is transmitted. In this case, the clock request REQ having the first logical value refers to a "request to stop providing a clock".

채널 관리 회로(130)로부터 제1 논리 값을 갖는 클럭 요청(REQ), 즉 클럭 제공 중지 요청을 수신한 클럭 제어 회로(122f)는 클럭 소오스(124f)(예컨대, 클럭 게이팅 회로)를 디스에이블(disable)하여 클럭 신호의 제공을 중지하고, 이에 따라 IP 블록(200)은 슬립 모드로 진입할 수 있게 된다. 이 과정에서 클럭 제어 회로(122f)는 제1 논리 값을 갖는 애크(ACK)를 채널 관리 회로(130)에 제공할 수 있다. 유의할 점은 채널 관리 회로(130)가 제1 논리 값을 갖는 클럭 제공 중지 요청을 전송한 후 제1 논리 값을 갖는 애크(ACK)를 수신했다고 해서 클럭 소오스(124f)로부터의 클럭 제공의 중지가 보장되는 것은 아니다. 다만, 상기 애크(ACK)는, 채널 관리 회로(130)의 부모인 클럭 컴포넌트(120f)가 채널 관리 회로(130)에 더 이상 클럭 제공을 할 필요가 없다는 것을 클럭 제어 회로(122f)가 인지했다는 의미를 가질 뿐이다.The clock control circuit 122f that receives the clock request REQ having the first logic value from the channel management circuit 130, that is, the clock provision stop request, disables the clock source 124f (eg, the clock gating circuit) ( disable) to stop providing the clock signal, and accordingly, the IP block 200 can enter the sleep mode. During this process, the clock control circuit 122f may provide an ACK having a first logic value to the channel management circuit 130 . It should be noted that the clock supply from the clock source 124f is stopped because the channel management circuit 130 receives an ACK having the first logic value after transmitting a request to stop providing the clock having the first logic value. It is not guaranteed. However, the ACK indicates that the clock control circuit 122f recognizes that the clock component 120f, which is the parent of the channel management circuit 130, no longer needs to provide clocks to the channel management circuit 130. It only has meaning.

한편, 클럭 컴포넌트(120f)의 클럭 제어 회로(122f)는 자신의 부모에 해당하는 클럭 컴포넌트(120e)의 클럭 제어 회로(122e)에 제1 논리 값을 갖는 클럭 요청(REQ)을 전송한다. 만일 IP 블록(210) 역시 클럭 신호를 필요로 하지 않는 경우, 예컨대 클럭 제어 회로(122e)가 클럭 제어 회로(122g)로부터 클럭 제공 중지 요청을 수신한 경우라면, 클럭 제어 회로(122e)는 클럭 소오스(124e)(예컨대, 클럭 분주 회로)를 디스에이블하여 클럭 신호의 제공을 중지한다. 이에 따라 IP 블록(200, 210)은 슬립 모드로 진입할 수 있게 된다.Meanwhile, the clock control circuit 122f of the clock component 120f transmits a clock request REQ having a first logic value to the clock control circuit 122e of the clock component 120e corresponding to its parent. If the IP block 210 also does not require a clock signal, for example, if the clock control circuit 122e receives a request to stop providing a clock from the clock control circuit 122g, the clock control circuit 122e is the clock source. 124e (e.g. clock divider circuit) is disabled to stop providing the clock signal. Accordingly, the IP blocks 200 and 210 can enter the sleep mode.

이와 같은 동작은 다른 클럭 제어 회로(122a, 122b, 122c, 122d)에 대해서도 마찬가지로 수행될 수 있다.Such an operation may be similarly performed for other clock control circuits 122a, 122b, 122c, and 122d.

이와 다르게, 클럭 컴포넌트(120f)의 클럭 제어 회로(122f)가 자신의 부모에 해당하는 클럭 컴포넌트(120e)의 클럭 제어 회로(122e)에 제1 논리 값을 갖는 클럭 요청(REQ)을 전송하였지만, IP 블록(210)이 실행(running) 상태에 있는 경우라면, 클럭 제어 회로(122e)는 클럭 소오스(124e)를 디스에이블할 수 없다. 이후 IP 블록(210)이 더 이상 클럭 신호를 필요로 하지 않는 경우가 되어서야 비로소 클럭 제어 회로(122e)는 클럭 소오스(124e)를 디스에이블하고 자신의 부모에 해당하는 클럭 제어 회로(120d)에 제1 논리 값을 갖는 클럭 요청(REQ)을 전송할 수 있다. 즉, 클럭 제어 회로(122e)는 자식에 해당하는 클럭 제어 회로(122f, 122g) 모두로부터 클럭 제공 중지 요청을 수신한 경우에만 클럭 소오스(124e)를 디스에이블할 수 있다.Unlike this, although the clock control circuit 122f of the clock component 120f transmits the clock request REQ having the first logic value to the clock control circuit 122e of the clock component 120e corresponding to its parent, When the IP block 210 is in a running state, the clock control circuit 122e cannot disable the clock source 124e. After that, only when the IP block 210 no longer needs the clock signal, the clock control circuit 122e disables the clock source 124e and provides the clock control circuit 120d corresponding to its parent. A clock request (REQ) having a logic value of 1 may be transmitted. That is, the clock control circuit 122e may disable the clock source 124e only when a request to stop providing clocks is received from all of the clock control circuits 122f and 122g corresponding to their children.

한편, IP 블록(200, 210)이 슬립 상태에 있어서 클럭 소오스(124a, 124b, 124c, 124d, 124e, 124f)가 모두 디스에이블되었다가 IP 블록(200)이 실행 상태로 진입한 경우, 클럭 관리 유닛(100)은 IP 블록(200, 210)에 대한 클럭 신호의 제공을 재개한다.Meanwhile, when the IP blocks 200 and 210 are in the sleep state and the clock sources 124a, 124b, 124c, 124d, 124e, and 124f are all disabled and then the IP block 200 enters the run state, clock management Unit 100 resumes providing clock signals to IP blocks 200 and 210.

채널 관리 회로(130)는 자신의 부모에 해당하는 클럭 컴포넌트(120f)의 클럭 제어 회로(122f)에 제2 논리 값(예컨대, 논리 하이(logic high), 이하 H로 표시)을 갖는 클럭 요청(REQ)을 전송하고, 클럭 제어 회로(122f)로부터의 애크(ACK)를 대기한다. 여기서 제2 논리 값을 갖는 클럭 요청(REQ)은 "클럭 제공 요청"을 말하고, 클럭 제공 요청에 대한 애크(ACK)는 클럭 소오스(124f)로부터 클럭 제공이 재개되었음을 의미한다. 클럭 제어 회로(122f)는 클럭 소오스(124f)(예컨대, 클럭 게이팅 회로)를 바로 인에이블(enable)하지 못하고, 부모로부터 클럭 신호가 제공되기를 대기한다. The channel management circuit 130 requests a clock (eg, logic high) having a second logic value (eg, logic high, hereinafter denoted as H) to the clock control circuit 122f of the clock component 120f corresponding to its parent. REQ) and waits for an ACK from the clock control circuit 122f. Here, the clock request (REQ) having the second logical value refers to a "clock provision request", and an ACK to the clock provision request means that the clock provision from the clock source 124f is resumed. The clock control circuit 122f does not immediately enable the clock source 124f (eg, clock gating circuit) and waits for a clock signal to be provided from the parent.

다음으로 클럭 제어 회로(122f)는 자신의 부모에 해당하는 클럭 제어회로(122e)에 제2 논리 값을 갖는 클럭 요청(REQ), 즉 클럭 제공 요청을 전송하고, 클럭 제어 회로(122e)로부터의 애크(ACK)를 대기한다. 이와 같은 동작은 클럭 제어 회로(122a, 122b, 122c, 122d)에 대해서도 마찬가지로 수행될 수 있다.Next, the clock control circuit 122f transmits a clock request (REQ) having a second logic value, that is, a clock provision request, to the clock control circuit 122e corresponding to its parent, and Wait for ACK. Such an operation may be performed similarly to the clock control circuits 122a, 122b, 122c, and 122d.

클럭 제어 회로(122b)로부터 제2 논리 값을 갖는 클럭 요청(REQ)를 수신한 루트 클럭 컴포넌트인 클럭 제어 회로(122a)는 클럭 소오스(124a)(예컨대, 다중화 회로)를 인에이블하고 애크(ACK)를 클럭 제어 회로(122b)에 전송한다. 이와 같은 방식으로 클럭 소오스(124b, 124c, 124d, 124d, 124e)가 순차적으로 인에이블되면 비로소 클럭 제어 회로(122e)는 클럭 제어 회로(122f)에 클럭 소오스(124e)로부터 클럭 제공이 재개되었음을 알리는 애크(ACK)를 전송한다. 애크(ACK)를 수신한 클럭 제어 회로(122f)는 비로소 클럭 소오스(124f)를 인에이블하여 클럭 신호를 IP 블록(200)에 제공하고, 채널 관리 회로(130)에 애크(ACK)를 제공한다.Upon receiving the clock request REQ having the second logic value from the clock control circuit 122b, the clock control circuit 122a, which is a root clock component, enables the clock source 124a (eg, multiplexing circuit) and acknowledges (ACK). ) to the clock control circuit 122b. In this way, when the clock sources 124b, 124c, 124d, 124d, and 124e are sequentially enabled, the clock control circuit 122e notifies the clock control circuit 122f that the supply of clocks from the clock source 124e has resumed. Send an ACK. Upon receiving the ACK, the clock control circuit 122f finally enables the clock source 124f to provide a clock signal to the IP block 200, and provides an ACK to the channel management circuit 130. .

이와 같이 클럭 제어 회로(122a, 122b, 122c, 122d, 122e, 122f, 122g)는 부모와 자식 간에 클럭 요청(REQ) 및 이에 대한 애크 (ACK)를 주고 받는 풀 핸드셰이크(full handshake) 방식으로 동작한다. 이에 따라, 클럭 제어 회로(122a, 122b, 122c, 122d, 122e, 122f, 122g)는 하드웨어적으로 클럭 소오스(124a, 124b, 124c, 124d, 124e, 124f, 124g)를 제어하여 IP 블록(200, 210)에 제공되는 클럭 신호를 제어할 수 있다.In this way, the clock control circuits 122a, 122b, 122c, 122d, 122e, 122f, and 122g operate in a full handshake method in which a clock request (REQ) and an ACK are transmitted and received between the parent and child. do. Accordingly, the clock control circuits 122a, 122b, 122c, 122d, 122e, 122f, and 122g control the clock sources 124a, 124b, 124c, 124d, 124e, 124f, and 124g in hardware to control the IP block 200, 210) can be controlled.

이들 클럭 제어 회로(122a, 122b, 122c, 122d, 122e, 122f, 122g)는 자체적으로 동작하여 부모에게 클럭 요청(REQ)을 전송하거나 클럭 소오스(124a, 124b, 124c, 124d, 124e, 124f, 124g)를 제어할 수 있고, 클럭 관리 유닛 컨트롤러(110)의 제어 하에 동작할 수도 있다. 한편, 본 발명의 몇몇의 실시예에서, 클럭 제어 회로(122a, 122b, 122c, 122d, 122e, 122f, 122g)는 부모와 자식 간에 주고 받는 클럭 요청(REQ)에 따라 클럭 소오스(124a, 124b, 124c, 124d, 124e, 124f, 124g)를 각각 제어하는 유한 상태 기계(Finite State Machine, FSM)를 포함할 수 있다.These clock control circuits 122a, 122b, 122c, 122d, 122e, 122f, 122g operate by themselves and transmit clock requests (REQ) to their parents or clock sources 124a, 124b, 124c, 124d, 124e, 124f, 124g ), and may operate under the control of the clock management unit controller 110. Meanwhile, in some embodiments of the present invention, the clock control circuits 122a, 122b, 122c, 122d, 122e, 122f, and 122g are clock sources 124a, 124b, and 122g according to clock requests REQ exchanged between parents and children. 124c, 124d, 124e, 124f, 124g) may include a finite state machine (FSM) that controls each.

도 3은 본 발명의 몇몇 실시예에 따른 반도체 장치에 포함된 IP를 도시한 블록도이다.3 is a block diagram illustrating IP included in a semiconductor device according to some embodiments of the present invention.

도 3을 참조하면, 제1 IP 블록(200)은 채널 어댑터(channel adapter)(200)와 IP 코어(core)(204)를 포함할 수 있다. 도 3에는 예시적으로 제1 IP 블록(200)에 대하여 도시하였으며, 제2 및 제3 IP 블록(210, 220)에 대해서도 실질적으로 동일한 구성요소를 포함한다. Referring to FIG. 3 , a first IP block 200 may include a channel adapter 200 and an IP core 204 . 3 shows the first IP block 200 as an example, and includes substantially the same components for the second and third IP blocks 210 and 220 .

채널 어댑터(202)는 제1 채널 관리 회로(130)과 풀 핸드셰이크(full handshake) 방식에 따라 통신할 수 있다. 채널 어댑터(202)를 통해 제1 IP 블록(200)은 제1 클럭 요청 신호(REQ1)를 전송할 수 있으며, 제1 클럭 신호(CLK1)를 제공받을 수 있다. 또는 채널 어댑터(202)를 통해 제1 IP 블록(200)은 제1 클럭 요청 신호(REQ1)를 전송하고, 클럭이 존재한다는 ACK 신호를 받을 수 있고, 제1 클럭 신호(CLK1)는 채널 어댑터(202)에 의해 제어되는 클럭 컴포넌트로부터 직접 공급받을 수 있다.The channel adapter 202 may communicate with the first channel management circuit 130 according to a full handshake method. Through the channel adapter 202, the first IP block 200 can transmit the first clock request signal REQ1 and receive the first clock signal CLK1. Alternatively, the first IP block 200 may transmit a first clock request signal REQ1 through the channel adapter 202 and receive an ACK signal indicating that a clock exists, and the first clock signal CLK1 may be transmitted to the channel adapter ( 202) can be supplied directly from the clock component controlled by

IP 코어(204)는 예를 들어, 프로세서(processor), 그래픽 프로세서(graphic processor), 메모리 컨트롤러(graphic controller), 입출력 인터페이스 블록(input and output interface block) 등을 포함할 수 있다.The IP core 204 may include, for example, a processor, a graphic processor, a memory controller, an input and output interface block, and the like.

도 4는 복수 개의 제어 회로 사이의 신호 전송 패스(path)를 도시한 것이다.4 illustrates a signal transmission path between a plurality of control circuits.

도 4를 참조하면, 복수 개의 클럭 제어 회로들은 클럭 요청 신호(REQ)와, 이에 대한 응답 신호인 애크(또는 클럭 응답 신호)(ACK)를 포함하는 핸드셰이크 신호를 이용하여 동작할 수 있다. 클럭 요청 신호(REQ) 및 클럭 응답 신호(ACK)는, 예컨대 제1 논리 값(예컨대, 논리 로우)과 제2 논리 값(예컨대, 논리 하이)을 가질 수 있으나, 클럭 요청 신호(REQ) 및 클럭 응답 신호(ACK)를 구현하는 방식이 이에 제한되는 것은 아니다.Referring to FIG. 4 , the plurality of clock control circuits may operate using a handshake signal including a clock request signal REQ and a response signal ACK (or clock response signal) ACK. The clock request signal REQ and the clock response signal ACK may have, for example, a first logic value (eg, logic low) and a second logic value (eg, logic high), but the clock request signal REQ and clock A method of implementing the response signal ACK is not limited thereto.

본 발명의 몇몇의 실시예에서, 클럭 소비자(clock consumer)는 예컨대 제2 논리 값을 갖는 클럭 요청 신호(REQ)를 클럭 제공자(clock provider)에게 전송함으로써, 클럭 제공자에게 클럭이 필요하다는 정보를 전달할 수 있다. 이와 다르게, 클럭 소비자는 예컨대 제1 논리 값을 갖는 클럭 요청 신호(REQ)를 클럭 제공자에게 전송함으로써, 클럭 제공자에게 클럭이 더 이상 필요하지 않다는 정보를 전달할 수 있다.In some embodiments of the present invention, a clock consumer transmits information that a clock is needed to a clock provider, for example, by transmitting a clock request signal (REQ) having a second logic value to a clock provider. can Alternatively, the clock consumer may transfer information that the clock is no longer needed to the clock provider by transmitting, for example, a clock request signal REQ having a first logic value to the clock provider.

한편, 클럭 제공자는 예컨대 제2 논리 값을 갖는 클럭 응답 신호(ACK)를 클럭 소비자에게 전송할 수 있는데, 이것은 클럭 제공자로부터 클럭 신호가 클럭 소비자에게 안정적으로 공급되고 있음을 나타낸다. 이와 다르게, 클럭 제공자는 제1 논리 값을 갖는 클럭 응답 신호(ACK)를 클럭 소비자에게 전송할 수 있는데, 이것은 클럭 제공자가 클럭 소비자에게 클럭 신호의 제공 여부를 알려줄 수 없다는 것을 나타낸다.Meanwhile, the clock provider may transmit, for example, a clock response signal (ACK) having a second logic value to the clock consumer, indicating that the clock signal is stably supplied from the clock provider to the clock consumer. Alternatively, the clock provider may transmit the clock response signal ACK having the first logic value to the clock consumer, indicating that the clock provider cannot inform the clock consumer of whether or not the clock signal is provided.

예를 들어, 클럭 제어 회로(122b)는, 클럭 소비자의 입장에서, 예컨대 제2 논리 값을 갖는 클럭 요청 신호(PARENT_CLK_REQ)를 클럭 제어 회로(122a)에 전송함으로써, 클럭 제공자에 해당하는 클럭 제어 회로(122a)에게 클럭이 필요하다는 정보를 전달할 수 있다. 이에, 클럭 제어 회로(122a)를 포함하는 클럭 컴포넌트(즉, 클럭 공급자)는, 클럭 제어 회로(122b)를 포함하는 클럭 컴포넌트(즉, 클럭 소비자)에게 클럭 신호를 제공하고, 이후 클럭 제어 회로(122b)는, 예컨대 제2 논리 값을 갖는 클럭 응답 신호(PARENT_CLK_ACK)를 클럭 제어 회로(122a)로부터 수신할 수 있다.For example, the clock control circuit 122b transmits, for example, the clock request signal PARENT_CLK_REQ having the second logical value to the clock control circuit 122a from the viewpoint of the clock consumer, thereby corresponding to the clock control circuit corresponding to the clock provider. Information that a clock is required can be transmitted to (122a). Accordingly, the clock component (ie, the clock supplier) including the clock control circuit 122a provides a clock signal to the clock component (ie, the clock consumer) including the clock control circuit 122b, and then the clock control circuit (ie, the clock supplier) 122b) may receive, for example, a clock response signal PARENT_CLK_ACK having a second logic value from the clock control circuit 122a.

한편, 클럭 제어 회로(122b)는, 클럭 제공자의 입장에서, 예컨대 제2 논리 값을 갖는 클럭 요청 신호(CHILD_CLK_REQ)를 클럭 제어 회로(122f)로부터 수신함으로써, 클럭 소비자에 해당하는 클럭 제어 회로(122f)가 클럭이 필요하다는 것을 알 수 있다. 이에, 클럭 제어 회로(122b)를 포함하는 클럭 컴포넌트(즉, 클럭 공급자)는, 클럭 제어 회로(122f)를 포함하는 클럭 컴포넌트(즉, 클럭 소비자)에게 클럭 신호를 제공하고, 이후 클럭 제어 회로(122b)는, 클럭 제공자의 입장에서, 예컨대 제2 논리 값을 갖는 클럭 응답 신호(CHILD_CLK_ACK)를 클럭 제어 회로(122f)에게 전송할 수 있다.On the other hand, the clock control circuit 122b receives the clock request signal CHILD_CLK_REQ having a second logic value from the clock control circuit 122f from the viewpoint of the clock provider, so that the clock control circuit 122f corresponding to the clock consumer ) requires a clock. Accordingly, the clock component (ie, clock supplier) including the clock control circuit 122b provides a clock signal to the clock component (ie, clock consumer) including the clock control circuit 122f, and then the clock control circuit (ie, the clock supplier) 122b) may transmit a clock response signal CHILD_CLK_ACK having a second logic value to the clock control circuit 122f from the perspective of a clock provider.

다른 예를 들어, 클럭 제어 회로(122b)는, 클럭 소비자의 입장에서, 예컨대 제1 논리 값을 갖는 클럭 요청 신호(PARENT_CLK_REQ)를 클럭 제어 회로(122a)에 전송함으로써, 클럭 제공자에 해당하는 클럭 제어 회로(122a)에게 클럭이 더 이상 필요하지 않다는 정보를 전달할 수 있다. 이에, 클럭 제어 회로(122b)는, 예컨대 제1 논리 값을 갖는 클럭 응답 신호(PARENT_CLK_ACK)를 클럭 제어 회로(122a)로부터 수신할 수 있으며, 이것은 클럭 제공자로부터의 클럭 제공이 보장되지 않음을 나타낸다.For another example, the clock control circuit 122b controls the clock corresponding to the clock provider by transmitting, for example, the clock request signal PARENT_CLK_REQ having the first logic value to the clock control circuit 122a from the viewpoint of the clock consumer. Information may be conveyed to circuit 122a that the clock is no longer needed. Accordingly, the clock control circuit 122b may receive, for example, a clock response signal PARENT_CLK_ACK having a first logic value from the clock control circuit 122a, which indicates that provision of a clock from a clock provider is not guaranteed.

한편, 클럭 제어 회로(122b)는, 클럭 제공자의 입장에서, 예컨대 제1 논리 값을 갖는 클럭 요청 신호(CHILD_CLK_REQ)를 클럭 제어 회로(122f)로부터 수신함으로써, 클럭 소비자에 해당하는 클럭 제어 회로(122f)가 클럭이 더 이상 필요하지 않다는 것을 알 수 있다. 이에, 클럭 제어 회로(122b)는, 예컨대 제2 논리 값을 갖는 클럭 응답 신호(CHILD_CLK_ACK)를 클럭 제어 회로(122f)에게 전송할 수 있으며, 이것은 클럭 제공자로부터의 클럭 제공이 보장되지 않음을 나타낸다.On the other hand, the clock control circuit 122b receives the clock request signal CHILD_CLK_REQ having a first logic value from the clock control circuit 122f, from the perspective of the clock provider, so that the clock control circuit 122f corresponding to the clock consumer ) indicates that the clock is no longer needed. Accordingly, the clock control circuit 122b may transmit, for example, a clock response signal CHILD_CLK_ACK having a second logic value to the clock control circuit 122f, indicating that provision of a clock from a clock provider is not guaranteed.

유의할 점은, 이와 같은 클럭 제어 회로들 사이의 조합 패스(combinational path)는, 클럭 제어 회로(122b)가 그 부모인 클럭 제어 회로(122a)에게 클럭 요청 신호(PARENT_CLK_REQ)를 전송한 후 클럭 제어 회로(122b)가 그 부모인 클럭 제어 회로(122a)로부터 클럭 응답 신호(PARENT_CLK_ACK)를 수신하는 패스와, 클럭 제어 회로(122b)가 그 자식인 클럭 제어 회로(122f)로부터 클럭 요청 신호(CHILD_CLK_REQ)를 수신한 후 클럭 제어 회로(122b)가 그 자식인 클럭 제어 회로(122f)에게 클럭 응답 신호(CHILD_CLK ACK)를 전송하는 패스를 포함할 수는 있지만, 클럭 제어 회로(122b)가 그 부모인 클럭 제어 회로(122a)로부터 클럭 응답 신호(PARENT_CLK_ACK)를 수신한 후, 클럭 제어 회로(122b)가 그 부모인 클럭 제어 회로(122a)에게 클럭 요청 신호(PARENT_CLK_REQ)를 전송하는 패스는 포함되지 않는다는 점이다(도 4에서 'X'로 도시됨).Note that, in the combinational path between the clock control circuits, the clock control circuit 122b transmits the clock request signal PARENT_CLK_REQ to the clock control circuit 122a, which is its parent, and then the clock control circuit 122b. 122b receives a clock response signal (PARENT_CLK_ACK) from its parent clock control circuit 122a, and the clock control circuit 122b receives a clock request signal (CHILD_CLK_REQ) from its child clock control circuit 122f. After reception, the clock control circuit 122b may include a pass in which the clock control circuit 122b transmits the clock response signal CHILD_CLK ACK to the clock control circuit 122f as its child, but the clock control circuit 122b is the clock control circuit 122b as its parent. After receiving the clock response signal PARENT_CLK_ACK from the circuit 122a, the clock control circuit 122b transmits the clock request signal PARENT_CLK_REQ to the parent clock control circuit 122a is not included ( shown as 'X' in Figure 4).

이와 같은 클럭 요청 신호(REQ)와 클럭 응답 신호(ACK)는 일반적인 풀 핸드셰이크(full handshake) 방식으로 구현되어 있으며, 클럭 제공자과 클럭 소비자는 서로 동일한 단일 클럭 도메인(single clock domain)에 속할 수도 있고, 서로 다른 클럭 도메인에 속할 수도 있다.Such a clock request signal (REQ) and clock response signal (ACK) are implemented in a general full handshake method, and the clock provider and clock consumer may belong to the same single clock domain, They may belong to different clock domains.

본 발명의 몇몇의 실시예에서, 각각의 클럭 제어 회로와 연결되어 통신하는 클럭 먹스 회로, 클럭 분주 회로, 클럭 게이팅 회로 등은 클럭 제어 회로와 서로 다른 클럭 도메인을 이용할 수 있다. 즉, 클럭 요청 신호를 전송하는 신호 라인에서의 클럭 주파수와 실제로 제공받는 동작 클럭의 클럭 주파수는 서로 다를 수 있다. In some embodiments of the present invention, a clock multiplex circuit, a clock divider circuit, a clock gating circuit, etc. connected to and communicating with each clock control circuit may use different clock domains from those of the clock control circuit. That is, the clock frequency of the signal line transmitting the clock request signal and the clock frequency of the actually provided operation clock may be different from each other.

도 5a는 본 발명에어 이용되는 클럭 요청 신호와 클럭 응답 신호를 설명하기 위한 도면이고, 도 5b는 본 발명에서 이용되는 클럭 요청 신호와 클럭 응답 신호에 대한 클럭 레벨 천이(transition)를 도시한 것이다.5A is a diagram for explaining a clock request signal and a clock response signal used in the present invention, and FIG. 5B illustrates a clock level transition for a clock request signal and a clock response signal used in the present invention.

도 5a를 참조하면, 시점(T1)에서 클럭 요청 신호(REQ)가 제2 논리 값으로 트랜지션하는 것은 클럭 소비자가 클럭 제공자에게 클럭 신호(CLK)가 필요하다는 정보를 전달하는 것을 나타낼 수 있다. 시점(T1) 이후 클럭 제공자는 클럭 소비자에게 클럭 신호(CLK)를 제공할 수 있다.Referring to FIG. 5A , the transition of the clock request signal REQ to the second logic value at time T1 may indicate that the clock consumer transfers information that the clock signal CLK is needed to the clock provider. After the time point T1, the clock provider may provide the clock signal CLK to the clock consumer.

시점(T2)에서, 클럭 제공자는 제2 논리 값을 갖는 클럭 응답 신호(ACK)를 클럭 소비자에게 전송하며, 이것은 클럭 제공자로부터 클럭 신호(CLK)가 클럭 소비자에게 안정적으로 공급되고 있음을 나타낸다(I 구간 참조).At time T2, the clock provider transmits the clock response signal ACK having the second logic value to the clock consumer, indicating that the clock signal CLK is being stably supplied from the clock provider to the clock consumer (I section reference).

시점(T3)에서 클럭 요청 신호(REQ)가 제1 논리 값으로 트랜지션하는 것은 클럭 소비자가 클럭 제공자에게 클럭 신호(CLK)가 더 이상 필요하지 않다는 정보를 전달하는 것을 나타낼 수 있다. 시점(T3) 이후 클럭 제공자는 클럭 소비자에게 클럭 신호(CLK)를 제공하는 것을 중단할 수도 있고, 여전히 클럭 신호(CLK)의 제공을 계속할 수도 있다.Transition of the clock request signal REQ to the first logic value at time T3 may indicate that the clock consumer transfers information to the clock provider that the clock signal CLK is no longer needed. After the time point T3, the clock provider may stop providing the clock signal CLK to the clock consumer, or may still continue to provide the clock signal CLK.

시점(T4)에서, 클럭 제공자는 제1 논리 값을 갖는 클럭 응답 신호(ACK)를 클럭 소비자에게 전송하며, 이것은 클럭 제공자가 클럭 소비자에게 클럭 신호의 제공 여부를 알려줄 수 없다는 것을 나타낸다.At time T4, the clock provider transmits a clock response signal ACK having a first logic value to the clock consumer, indicating that the clock provider cannot inform the clock consumer whether or not the clock signal is provided.

즉, 도 5a에서 클럭 제공자로부터 클럭 소비자에게 클럭 신호(CLK)가 안정적으로 공급되고 있음이 보장되는 구간은 I 구간뿐이고, 나머지 II 구간에서는 클럭 제공자가 클럭 소비자에게 클럭 신호의 제공을 하고 있는지 여부를 알 수 없다(unknown).That is, in FIG. 5A , only interval I guarantees that the clock signal CLK is stably supplied from the clock provider to the clock consumer, and in the remaining interval II, whether or not the clock provider provides the clock signal to the clock consumer is determined. unknown.

다음으로 도 5b를 참조하면, 도 5b는 제2 논리 값을 1로 표현하고 제1 논리 값을 0으로 표시한 경우에 클럭 요청 신호(REQ)와 클럭 응답 신호(ACK)의 가능한 신호의 조합과 이들 사이의 가능한 트랜지션(transition)을 표현한다.Referring next to FIG. 5B, FIG. 5B shows combinations of possible signals of the clock request signal REQ and the clock response signal ACK when the second logic value is expressed as 1 and the first logic value is expressed as 0. It represents a possible transition between them.

도 5a를 함께 참조하면, 상태(S0)는 시점(T1) 이전 및 시점(T4) 이후의 상태를 나타내고, 상태(S1)는 시점(T1) 내지 시점(T2)의 상태를 나타낸다. 그리고 상태(S2)는 시점(T2) 내지 시점(T3)의 상태를 나타내고, 상태(S3)는 시점(T3) 내지 시점(T4)의 상태를 나타낸다. 클럭 요청 신호(REQ)와 클럭 응답 신호(ACK)의 값의 조합은 상태(S0), 상태(S1), 상태(S2), 상태(S3), 상태(S0)로 순차적으로 변화한다(실선 화살표 참조).Referring to FIG. 5A together, state S0 represents states before and after time T1 and after time T4, and state S1 represents states from time T1 to time T2. And state S2 represents the state of the time point T2 to the time point T3, and state S3 represents the state of the time point T3 to the time point T4. The combination of values of the clock request signal REQ and the clock response signal ACK sequentially changes to state S0, state S1, state S2, state S3, and state S0 (solid arrow). reference).

그런데 만일 시점(T1)에서 클럭 요청 신호(REQ)가 제2 논리 값으로 트랜지션됨과 동시에 클럭 응답 신호(ACK)가 제2 논리 값으로 트랜지션되도록 회로를 구현하는 경우, 클럭 요청 신호(REQ)와 클럭 응답 신호(ACK)의 값의 조합은 상태(S0)에서 바로 상태(S2)로 전환될 수 있다. 이와 유사하게 만일 시점(T3)에서 클럭 요청 신호(REQ)가 제1 논리 값으로 트랜지션됨과 동시에 클럭 응답 신호(ACK)가 제1 논리 값으로 트랜지션되도록 회로를 구현하는 경우, 클럭 요청 신호(REQ)와 클럭 응답 신호(ACK)의 값의 조합은 상태(S2)에서 바로 상태(S0)로 전환될 수 있다(점선 화살표 참조).However, if a circuit is implemented such that the clock request signal REQ transitions to the second logic value and the clock response signal ACK transitions to the second logic value at the same time at time T1, the clock request signal REQ and clock A combination of the values of the response signal ACK may directly switch from state S0 to state S2. Similarly, if a circuit is implemented such that the clock request signal REQ transitions to the first logic value and the clock response signal ACK transitions to the first logic value at the time T3, the clock request signal REQ The combination of the value of the clock response signal ACK and the value of the clock response signal ACK can be directly converted from the state S2 to the state S0 (refer to the dotted line arrow).

다시 도 1, 도 2 및 도 4를 참조하여, 풀 핸드쉐이크 방식(full handshake method)에 대하여 설명한다. Referring again to FIGS. 1, 2, and 4, a full handshake method will be described.

풀 핸드셰이크 방식(full handshake method)이란, 제1 IP 블록(200)이 클럭이 필요하면, 제1 IP 블록(200)은 제1 클럭 요청 신호(REQ1)를 활성화한다. 예를 들면, 제1 IP 블록(200)는 제1 클럭 요청 신호(REQ1)를 하이 상태(high state)로 만든다.In the full handshake method, when the first IP block 200 needs a clock, the first IP block 200 activates the first clock request signal REQ1. For example, the first IP block 200 makes the first clock request signal REQ1 a high state.

클럭 관리 유닛(100)은 제1 클럭 요청 신호(REQ1)의 활성화에 응답하여 제1 클럭 요청 신호(REQ1)에 대한 제1 클럭 응답 신호(ACK1)를 활성화한다. 즉, 클럭 관리 유닛(100)은 제1 클럭 응답 신호(ACK1)를 하이 상태(high state)로 만든다.The clock management unit 100 activates the first clock response signal ACK1 to the first clock request signal REQ1 in response to activation of the first clock request signal REQ1. That is, the clock management unit 100 makes the first clock response signal ACK1 a high state.

클럭 관리 유닛(100)은 제1 클럭 응답 신호(ACK1)의 활성화보다 먼저 제1 클럭 신호(CLK1)을 제1 IP 블록(200)로 전송할 수 있다. 또는, 클럭 관리 유닛(100)은 제1 클럭 응답 신호(ACK1)의 활성화와 동시에 제1 클럭 신호(CLK1)을 제1 IP 블록(200)로 전송할 수 있다. The clock management unit 100 may transmit the first clock signal CLK1 to the first IP block 200 before the first clock response signal ACK1 is activated. Alternatively, the clock management unit 100 may transmit the first clock signal CLK1 to the first IP block 200 at the same time as the first clock response signal ACK1 is activated.

만약에, 제1 IP 블록(200)가 클럭이 불필요한 경우, 제1 클럭 요청 신호(REQ1)를 비활성화한다. 즉, 제1 IP 블록(200)는 제1 클럭 요청 신호(REQ1)를 로우 상태(low state)로 만든다. If the first IP block 200 does not require a clock, the first clock request signal REQ1 is deactivated. That is, the first IP block 200 makes the first clock request signal REQ1 into a low state.

제1 클럭 요청 신호(REQ1)가 로우 상태(low state)이면, 클럭 관리 유닛(100)은 제1 클럭 응답 신호(ACK1)를 로우 상태(low state)로 만든다. 그리고, 클럭 관리 유닛(100)은 동시에 제1 클럭 신호(CLK1)을 비활성화할 수 있다.When the first clock request signal REQ1 is in a low state, the clock management unit 100 sets the first clock response signal ACK1 to a low state. Also, the clock management unit 100 may deactivate the first clock signal CLK1 at the same time.

제1 IP 블록(200)는 제1 클럭 응답 신호(ACK1)가 활성화 상태인 동안, 정상적으로 동작할 수 있다. The first IP block 200 can operate normally while the first clock response signal ACK1 is in an active state.

도 1 및 도 2를 참조하여, 본 발명의 몇몇의 실시예에 따른 클럭 관리 유닛(100)의 풀 핸드셰이크 방식(full handshake method)에 대해 설명한다. 이에 관하여, 도 2의 클럭 컴포넌트(120a, 120b, 120c, 120d, 120e, 120f)는 각각 PLL 컨트롤러, 클럭 먹스 유닛, 제1 클럭 분주 유닛, 단기 정지 회로, 제2 클럭 분주 유닛, 제1 클럭 게이팅 유닛이라고 가정하고 설명하지만, 이것은 본 발명이 구현될 수 있는 일례에 해당할 뿐이고, 본 발명의 범위가 이에 제한되는 것은 아니다.Referring to FIGS. 1 and 2 , a full handshake method of the clock management unit 100 according to some embodiments of the present invention will be described. In this regard, the clock components 120a, 120b, 120c, 120d, 120e, and 120f of FIG. 2 include a PLL controller, a clock mux unit, a first clock dividing unit, a short-term pause circuit, a second clock dividing unit, and a first clock gating, respectively. Although it is assumed and described as a unit, this is only an example in which the present invention can be implemented, and the scope of the present invention is not limited thereto.

PLL 컨트롤러, 클럭 먹스 유닛, 제1 클럭 분주 유닛, 단기 정지 회로, 제2 클럭 분주 유닛, 제1 클럭 게이팅 유닛 각각은 클럭 소오스(124a, 124b, 124c, 124d, 124e, 124f)를 포함할 수 있다. Each of the PLL controller, clock mux unit, first clock division unit, short-term pause circuit, second clock division unit, and first clock gating unit may include clock sources 124a, 124b, 124c, 124d, 124e, and 124f. .

구체적으로, PLL 컨트롤러는 오실레이터(OSC; oscillator)와 PLL(phase locked loop)을 입력받는 클럭 먹스 회로를 포함할 수 있다. 클럭 먹스 유닛은 복수의 클럭 신호를 입력받는 클럭 먹스 회로를 포함할 수 있다. 제1 클럭 분주 유닛은 제1 클럭 분주 회로를 포함할 수 있다. 단기 정지 회로는 제1 클럭 게이팅 회로를 포함할 수 있다. 제2 클럭 분주 유닛은 제2 클럭 분주 회로를 포함할 수 있다. 제1 클럭 게이팅 유닛은 제2 클럭 게이팅 회로를 포함할 수 있다. Specifically, the PLL controller may include an oscillator (OSC) and a clock mux circuit that receives an input of a phase locked loop (PLL). The clock mux unit may include a clock mux circuit that receives a plurality of clock signals. The first clock dividing unit may include a first clock dividing circuit. The short stop circuit may include a first clock gating circuit. The second clock dividing unit may include a second clock dividing circuit. The first clock gating unit may include a second clock gating circuit.

또한, PLL 컨트롤러는 클럭 제어 회로(122a)를 포함할 수 있다. 클럭 먹스 유닛은 클럭 제어 회로(122b)를 포함할 수 있다. 제1 클럭 분주 유닛은 클럭 제어 회로(122c)를 포함할 수 있다. 단기 정지 회로(114)는 클럭 제어 회로(122d)를 포함할 수 있다. 제2 클럭 분주 유닛은 클럭 제어 회로(122e)를 포함할 수 있다. 제1 클럭 게이팅 유닛은 클럭 제어 회로(122f)를 포함할 수 있다. In addition, the PLL controller may include a clock control circuit 122a. The clock mux unit may include a clock control circuit 122b. The first clock division unit may include a clock control circuit 122c. The short stop circuit 114 may include a clock control circuit 122d. The second clock division unit may include a clock control circuit 122e. The first clock gating unit may include a clock control circuit 122f.

클럭 제어 회로(122a, 122b, 122c, 122d, 122e, 122f) 각각은 풀 핸드셰이크 방식(full handshake method)에 따라 통신할 수 있다. 예를 들면, 클럭 제어 회로(122a, 122b) 각각은 PLL 컨트롤러와 클럭 먹스 유닛 사이의 풀 핸드셰이크 방식을 지원할 수 있다. Each of the clock control circuits 122a, 122b, 122c, 122d, 122e, and 122f may communicate according to a full handshake method. For example, each of the clock control circuits 122a and 122b may support a full handshake scheme between the PLL controller and the clock mux unit.

클럭 제어 회로(122b, 122c) 각각은 클럭 먹스 유닛과 제1 클럭 분주 유닛 사이의 풀 핸드셰이크 방식을 지원할 수 있다. Each of the clock control circuits 122b and 122c may support a full handshake method between the clock mux unit and the first clock division unit.

클럭 제어 회로(122c, 122d) 각각은 제1 클럭 분주 유닛과 단기 정지 회로 사이의 풀 핸드셰이크 방식을 지원할 수 있다.Each of the clock control circuits 122c and 122d may support a full handshake scheme between the first clock division unit and the short-term pause circuit.

클럭 제어 회로(122d, 122e) 각각은 단기 정지 회로와 제2 클럭 분주 유닛 사이의 풀 핸드셰이크 방식을 지원할 수 있다. Each of the clock control circuits 122d and 122e may support a full handshake scheme between the short-term pause circuit and the second clock dividing unit.

클럭 제어 회로(122e, 122f) 각각은 제2 클럭 분주 유닛과 제1 클럭 게이팅 유닛 사이의 풀 핸드셰이크 방식을 지원할 수 있다. Each of the clock control circuits 122e and 122f may support a full handshake method between the second clock dividing unit and the first clock gating unit.

마찬가지로, 클럭 제어 회로(122f)와 채널 관리 회로(130) 각각은 제1 클럭 게이팅 유닛과 채널 관리 회로(130) 사이의 풀 핸드셰이크 방식을 지원할 수 있다. Likewise, each of the clock control circuit 122f and the channel management circuit 130 may support a full handshake method between the first clock gating unit and the channel management circuit 130 .

제1 IP 블록(200)은 풀 핸드셰이크 방식에 따라 클럭 관리 유닛(100)으로 동작 클럭을 요청할 수 있다. 예를 들면, 제1 IP 블록(200)은 동작 클럭이 필요한 경우, 클럭 요청 신호를 활성화할 수 있다. 즉, 제1 IP 블록(200)은 동작 클럭이 필요한 경우, 클럭 관리 유닛(100)으로 활성화된 클럭 요청 신호를 전송할 수 있다.The first IP block 200 may request an operating clock from the clock management unit 100 according to a full handshake method. For example, when an operating clock is required, the first IP block 200 may activate a clock request signal. That is, when an operation clock is required, the first IP block 200 may transmit an activated clock request signal to the clock management unit 100 .

채널 관리 회로(130)는 상기 활성화된 클럭 요청 신호를 수신한다. 채널 관리 회로(130)는 상기 활성화된 클럭 요청 신호를 제1 클럭 게이팅 유닛으로 전송한다. 제1 클럭 게이팅 유닛은 상기 활성화된 클럭 요청 신호를 제2 클럭 분주 유닛으로 전송한다. 제2 클럭 분주 유닛은 상기 활성화된 클럭 요청 신호를 단기 정지 회로로 전송한다. 단기 정지 회로는 상기 활성화된 클럭 요청 신호를 제1 클럭 분주 유닛으로 전송한다. 제1 클럭 분주 유닛은 상기 활성화된 클럭 요청 신호를 클럭 먹스 유닛으로 전송한다. 클럭 먹스 유닛은 상기 활성화된 클럭 요청 신호를 PLL 컨트롤러로 전송한다. The channel management circuit 130 receives the activated clock request signal. The channel management circuit 130 transmits the activated clock request signal to the first clock gating unit. The first clock gating unit transmits the activated clock request signal to a second clock dividing unit. The second clock division unit transmits the activated clock request signal to the short-term stop circuit. The short-term stop circuit transmits the activated clock request signal to the first clock dividing unit. The first clock division unit transmits the activated clock request signal to a clock mux unit. The clock mux unit transmits the activated clock request signal to the PLL controller.

본 발명의 몇몇의 실시예에서, PLL 컨트롤러, 클럭 먹스 유닛, 제1 클럭 분주 유닛, 단기 정지 회로, 제2 클럭 분주 유닛, 제1 클럭 게이팅 유닛, 제1 채널 관리 회로(130) 각각은 조합 회로(combinational circuit)로 구현될 수 있다. 따라서, 상기 활성화된 클럭 요청 신호는 제1 채널 관리 회로으로부터 PLL 컨트롤러까지 한번에 전송될 수 있다. In some embodiments of the invention, each of the PLL controller, clock mux unit, first clock dividing unit, short pause circuit, second clock dividing unit, first clock gating unit, and first channel management circuit 130 is a combinational circuit. (combinational circuit). Accordingly, the activated clock request signal may be transmitted from the first channel management circuit to the PLL controller at once.

PLL 컨트롤러는 상기 활성화된 클럭 요청 신호에 대하여 클럭 응답 신호를 활성화한다. 즉, PLL 컨트롤러는 상기 활성화된 클럭 요청 신호에 대한 클럭 응답 신호를 클럭 먹스 유닛으로 전송한다. 동시에, PLL 컨트롤러는 클럭 신호(CLK)를 클럭 먹스 유닛으로 전송한다.The PLL controller activates a clock response signal in response to the activated clock request signal. That is, the PLL controller transmits a clock response signal to the activated clock request signal to the clock mux unit. At the same time, the PLL controller transmits the clock signal CLK to the clock mux unit.

클럭 먹스 유닛은 상기 활성화된 클럭 응답 신호를 제1 클럭 분주 유닛으로 전송한다. 동시에, 클럭 먹스 유닛은 클럭 신호(CLK)를 제1 클럭 분주 유닛으로 전송한다.The clock mux unit transmits the activated clock response signal to a first clock dividing unit. At the same time, the clock mux unit transmits the clock signal CLK to the first clock dividing unit.

제1 클럭 분주 유닛은 상기 활성화된 클럭 응답 신호를 단기 정지 회로로 전송한다. 동시에, 제1 클럭 분주 유닛은 클럭 신호(CLK)를 단기 정지 회로로 전송한다.The first clock dividing unit transmits the activated clock response signal to the short-term stop circuit. At the same time, the first clock dividing unit transmits the clock signal CLK to the short-term stop circuit.

단기 정지 회로는 상기 활성화된 클럭 응답 신호를 제2 클럭 분주 유닛으로 전송한다. 동시에, 단기 정지 회로는 클럭 신호(CLK)를 제2 클럭 분주 유닛으로 전송한다.The short-term stop circuit transmits the activated clock response signal to the second clock dividing unit. At the same time, the short-term stop circuit transmits the clock signal CLK to the second clock dividing unit.

제2 클럭 분주 유닛은 상기 활성화된 클럭 응답 신호를 제1 클럭 게이팅 유닛으로 전송한다. 동시에, 제2 클럭 분주 유닛은 클럭 신호(CLK)를 제1 클럭 게이팅 유닛으로 전송한다. The second clock dividing unit transmits the activated clock response signal to the first clock gating unit. At the same time, the second clock dividing unit transmits the clock signal CLK to the first clock gating unit.

제1 클럭 게이팅 유닛은 상기 활성화된 클럭 응답 신호를 제1 채널 관리 회로(130)로 전송한다. 동시에, 제1 클럭 게이팅 유닛은 클럭 신호(CLK)를 제1 IP 블록(200)에 제공한다. The first clock gating unit transmits the activated clock response signal to the first channel management circuit 130 . Simultaneously, the first clock gating unit provides the clock signal CLK to the first IP block 200 .

본 실시예에서, 상기 클럭 응답 신호는 PLL 컨트롤러로부터 제1 채널 관리 회로까지 한번에 전송될 수 있다.In this embodiment, the clock response signal may be transmitted from the PLL controller to the first channel management circuit at one time.

제1 IP 블록(200)은 클럭이 불필요한 경우, 상기 클럭 요청 신호를 비활성화할 수 있다. 즉, 제1 IP 블록(200)은 클럭이 불필요한 경우, 클럭 관리 유닛(100)으로 비활성화된 클럭 요청 신호를 전송할 수 있다.The first IP block 200 may deactivate the clock request signal when the clock is unnecessary. That is, when the clock is unnecessary, the first IP block 200 may transmit a deactivated clock request signal to the clock management unit 100 .

채널 관리 회로(130)는 상기 비활성화된 클럭 요청 신호를 수신한다. 채널 관리 회로(130)는 상기 비활성화된 클럭 요청 신호를 제1 클럭 게이팅 유닛으로 전송할 수 있다. 제1 클럭 게이팅 유닛은 상기 비활성화된 클럭 요청 신호를 제2 클럭 분주 유닛으로 전송한다. 제2 클럭 분주 유닛은 상기 비활성화된 클럭 요청 신호를 단기 정지 회로로 전송한다. 단기 정지 회로는 상기 비활성화된 클럭 요청 신호를 제1 클럭 분주 유닛으로 전송할 수 있다. 제1 클럭 분주 유닛은 상기 비활성화된 클럭 요청 신호를 클럭 먹스 유닛으로 전송할 수 있다. 클럭 먹스 유닛은 상기 비활성화된 클럭 요청 신호를 PLL 컨트롤러로 전송할 수 있다.Channel management circuit 130 receives the deactivated clock request signal. The channel management circuit 130 may transmit the deactivated clock request signal to a first clock gating unit. The first clock gating unit transmits the deactivated clock request signal to a second clock dividing unit. The second clock dividing unit transmits the deactivated clock request signal to the short-term stop circuit. The short-term stop circuit may transmit the deactivated clock request signal to the first clock dividing unit. The first clock division unit may transmit the deactivated clock request signal to a clock mux unit. The clock mux unit may transmit the deactivated clock request signal to the PLL controller.

PLL 컨트롤러, 클럭 먹스 유닛, 제1 클럭 분주 유닛, 단기 정지 회로, 제2 클럭 분주 유닛, 제1 클럭 게이팅 유닛, 제1 채널 관리 회로(130) 각각은 조합 회로로 구현될 수 있다. 따라서, 상기 비활성화된 클럭 요청 신호는 채널 관리 회로(130)으로부터 PLL 컨트롤러까지 한번에 전송될 수 있다. Each of the PLL controller, clock mux unit, first clock division unit, short-term pause circuit, second clock division unit, first clock gating unit, and first channel management circuit 130 may be implemented as a combinational circuit. Accordingly, the deactivated clock request signal may be transmitted from the channel management circuit 130 to the PLL controller at once.

PLL 컨트롤러는 비활성화된 클럭 요청 신호에 대하여 클럭 응답 신호를 비활성화한다. 즉, PLL 컨트롤러는 상기 비활성화된 클럭 응답 신호를 클럭 먹스 유닛으로 전송할 수 있다. 동시에, PLL 컨트롤러는 클럭 신호(CLK)를 비활성화시킬 수도 있고, 클럭 신호(CLK)를 여전히 클럭 먹스 유닛으로 전송할 수도 있다.The PLL controller deactivates the clock response signal for the deactivated clock request signal. That is, the PLL controller may transmit the deactivated clock response signal to the clock mux unit. At the same time, the PLL controller may deactivate the clock signal CLK and still transmit the clock signal CLK to the clock mux unit.

클럭 먹스 유닛은 상기 비활성화된 클럭 응답 신호를 제1 클럭 분주 유닛으로 전송한다. 동시에, 클럭 먹스 유닛은 클럭 신호(CLK)를 비활성화시킬 수도 있고, 클럭 신호(CLK)를 여전히 제1 클럭 분주 유닛으로 전송할 수도 있다.The clock mux unit transmits the deactivated clock response signal to a first clock dividing unit. At the same time, the clock mux unit may inactivate the clock signal CLK and still transmit the clock signal CLK to the first clock dividing unit.

제1 클럭 분주 유닛은 상기 비활성화된 클럭 응답 신호를 단기 정지 회로로 전송한다. 동시에, 제1 클럭 분주 유닛은 클럭 신호(CLK)를 비활성화시킬 수도 있고, 클럭 신호(CLK)를 여전히 단기 정지 회로로 전송할 수도 있다.The first clock dividing unit transmits the deactivated clock response signal to the short-term stop circuit. At the same time, the first clock dividing unit may deactivate the clock signal CLK, and may still transmit the clock signal CLK to the short stop circuit.

단기 정지 회로는 상기 비활성화된 클럭 응답 신호를 제2 클럭 분주 유닛으로 전송한다. 동시에, 단기 정지 회로는 클럭 신호(CLK)을 비활성화시킬 수도 있고, 클럭 신호(CLK)를 여전히 제2 클럭 분주 유닛으로 전송할 수도 있다.The short-term stop circuit transmits the deactivated clock response signal to the second clock dividing unit. At the same time, the short-term stop circuit may deactivate the clock signal CLK, and may still transmit the clock signal CLK to the second clock dividing unit.

제2 클럭 분주 유닛은 상기 비활성화된 클럭 응답 신호를 제1 클럭 게이팅 유닛으로 전송한다. 동시에, 제2 클럭 분주 유닛은 클럭 신호(CLK)를 비활성화시킬 수도 있고, 클럭 신호(CK)를 여전히 제1 클럭 게이팅 유닛으로 전송할 수도 있다.The second clock dividing unit transmits the deactivated clock response signal to the first clock gating unit. At the same time, the second clock dividing unit may inactivate the clock signal CLK and still transmit the clock signal CK to the first clock gating unit.

제1 클럭 게이팅 유닛은 상기 비활성화된 클럭 응답 신호를 채널 관리 회로(130)로 전송한다. 동시에, 제1 클럭 게이팅 유닛은 클럭 신호(CLK)를 비활성화시킨다. The first clock gating unit transmits the deactivated clock response signal to the channel management circuit 130 . At the same time, the first clock gating unit inactivates the clock signal CLK.

마찬가지로, 상기 클럭 응답 신호는 PLL 컨트롤러부터 제1 채널 관리 회로(130)까지 한번에 전송될 수 있다.Similarly, the clock response signal may be transmitted from the PLL controller to the first channel management circuit 130 at once.

도 6은 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이다. 6 is a block diagram illustrating a semiconductor device according to some embodiments of the inventive concept.

도 6을 참조하면, 본 발명의 몇몇 실시예에 따른 반도체 장치(1) 내의 클럭 관리 유닛(110a)은 제1 PLL 컨트롤러(111), 제1 클럭 먹스 유닛(112), 제1 클럭 분주 유닛(113), 제1 클럭 게이팅 유닛(114), 제1 채널 관리 유닛(115), 제2 PLL 컨트롤러(121), 제2 클럭 먹스 유닛(122), 제2 클럭 분주 유닛(123), 제2 클럭 게이팅 유닛(124) 등을 포함한다. Referring to FIG. 6 , the clock management unit 110a in the semiconductor device 1 according to some embodiments of the present invention includes a first PLL controller 111, a first clock mux unit 112, and a first clock division unit ( 113), first clock gating unit 114, first channel management unit 115, second PLL controller 121, second clock mux unit 122, second clock division unit 123, second clock gating unit 124 and the like.

도 6에 도시된 경우는, 제2 IP(172)의 동작이 제1 IP(171)의 동작에 의존적인 경우를 나타내고 있으며, 다시 말하면, 제1 IP(171)가 동작할 때 제2 IP(172)도 항상 동작하는 경우를 의미한다. 또한, 제1 IP(171)가 동작할 때 제2 IP(172)가 동작할 가능성이 있는 경우도 포함한다. 6 shows a case where the operation of the second IP 172 is dependent on the operation of the first IP 171, in other words, when the first IP 171 operates, the second IP ( 172) also means the case of always operating. Also, a case in which there is a possibility that the second IP 172 operates when the first IP 171 operates is included.

제1 채널 관리 유닛(115)은 제1 클럭 게이팅 유닛(114)과 제2 클럭 게이팅 유닛(124) 중 적어도 하나와 풀 핸드쉐이크 방식에 따라 통신한다. 예를 들어, 제1 IP(171)가 제1 채널 관리 유닛(115)으로 클럭 요청 신호(REQ)를 전송하면, 제1 채널 관리 유닛(115)은 이를 제1 클럭 게이팅 유닛(114)으로 전송한다. The first channel management unit 115 communicates with at least one of the first clock gating unit 114 and the second clock gating unit 124 according to a full handshake method. For example, when the first IP 171 transmits the clock request signal REQ to the first channel management unit 115, the first channel management unit 115 transmits it to the first clock gating unit 114. do.

제1 PLL 컨트롤러(111), 제1 클럭 먹스 유닛(112), 제1 클럭 분주 유닛(113), 제1 클럭 게이팅 유닛(114), 및 제1 채널 관리 유닛(115)은 서로간에 풀 핸드쉐이크 방식에 따라 통신하며, 제1 채널 관리 유닛(115)으로부터 제1 PLL 컨트롤러(111)까지 클럭 요청 신호(REQ)가 한번에 전송될 수도 있다. The first PLL controller 111, the first clock mux unit 112, the first clock dividing unit 113, the first clock gating unit 114, and the first channel management unit 115 perform full handshake with each other. Communication is performed according to a method, and the clock request signal REQ may be transmitted from the first channel management unit 115 to the first PLL controller 111 at once.

제1 PLL 컨트롤러(111)로부터 클럭 응답 신호(ACK)가 전송되면, 이는 제1 클럭 게이팅 유닛(114)까지 전송되어 제1 클럭 게이팅 유닛(114)에 포함된 제어 회로의 제어에 따라 클럭 게이팅 회로가 비활성화되어 제1 IP(171)로 제1 클럭(CLK1)이 제공된다.When the clock response signal ACK is transmitted from the first PLL controller 111, it is transmitted to the first clock gating unit 114 and is controlled by the control circuit included in the first clock gating unit 114. is inactivated, and the first clock CLK1 is provided to the first IP 171 .

제1 IP(171)가 제1 클럭(CLK1)이 불필요한 경우, 클럭 요청 신호(REQ)를 비활성화시키며, 이에 따라, 제1 클럭 게이팅 유닛(114)으로 전송되는 클럭 요청 신호(REQ)가 비활성화되어 제1 클럭 게이팅 유닛(114)에 포함된 제어 회로의 제어에 따라 클럭 게이팅이 수행된다. When the first IP 171 does not need the first clock CLK1, the clock request signal REQ is deactivated. Accordingly, the clock request signal REQ transmitted to the first clock gating unit 114 is deactivated. Clock gating is performed under the control of the control circuit included in the first clock gating unit 114 .

제2 IP(172)의 동작은 제1 IP(171)의 동작에 의존적이기 때문에, 제2 IP(172)는 클럭 요청 신호를 생성할 수 없으며, 제1 IP(171)에서 클럭 요청 신호(REQ)가 활성화되면, 제2 IP(172)에도 제2 클럭 게이팅 유닛(124)으로부터 제2 클럭(CLK2)이 제공된다. Since the operation of the second IP 172 depends on the operation of the first IP 171, the second IP 172 cannot generate a clock request signal, and the first IP 171 generates a clock request signal (REQ). ) is activated, the second clock CLK2 is also provided to the second IP 172 from the second clock gating unit 124 .

제2 PLL 컨트롤러(121), 제2 클럭 먹스 유닛(122), 제2 클럭 분주 유닛(123), 제2 클럭 게이팅 유닛(124), 및 제1 채널 관리 유닛(115)은 서로간에 풀 핸드쉐이크 방식에 따라 통신하며, 제1 채널 관리 유닛(115)으로부터 제2 PLL 컨트롤러(121)까지 클럭 요청 신호(REQ)가 한번에 전송될 수도 있다. The second PLL controller 121, the second clock mux unit 122, the second clock division unit 123, the second clock gating unit 124, and the first channel management unit 115 perform full handshake with each other. Communication is performed according to a method, and the clock request signal REQ may be transmitted from the first channel management unit 115 to the second PLL controller 121 at once.

제2 PLL 컨트롤러(121)로부터 클럭 응답 신호(ACK)가 전송되면, 이는 제2 클럭 게이팅 유닛(124)까지 전송되어 제2 클럭 게이팅 유닛(124)에 포함된 제어 회로의 제어에 따라 클럭 게이팅 회로가 비활성화되어 제2 IP(172)로 제2 클럭(CLK2)이 제공된다.When the clock response signal ACK is transmitted from the second PLL controller 121, it is transmitted to the second clock gating unit 124 and is controlled by the control circuit included in the second clock gating unit 124. is inactivated, and the second clock CLK2 is provided to the second IP 172 .

도 7은 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이다. 7 is a block diagram illustrating a semiconductor device according to some embodiments of the inventive concept.

도 7을 참조하면, 본 발명의 몇몇 실시예에 따른 반도체 장치(2) 내의 클럭 관리 유닛(110b)은 제1 PLL 컨트롤러(111), 제1 클럭 먹스 유닛(112), 제1 클럭 분주 유닛(113), 제1 클럭 게이팅 유닛(114), 제1 채널 관리 유닛(115), 제3 클럭 게이팅 유닛(125), 제2 채널 관리 유닛(126) 등을 포함한다. Referring to FIG. 7 , the clock management unit 110b in the semiconductor device 2 according to some embodiments of the present invention includes a first PLL controller 111, a first clock mux unit 112, and a first clock division unit ( 113), a first clock gating unit 114, a first channel management unit 115, a third clock gating unit 125, a second channel management unit 126, and the like.

도 7에 도시된 경우는, 제2 채널 관리 유닛(126)이 더미 유닛으로 사용되는 경우를 나타내고 있다. 다시 말하면, 제2 채널 관리 유닛(126)은 제2 IP(172)와의 통신에 의해 클럭 요청 신호(REQ)를 제어하는 것이 아니라, 별도의 SFR(Special Function Register)에 저장된 소프트웨어의 제어에 따라 클럭 요청 신호(REQ)를 제어하는 것을 의미한다. The case shown in FIG. 7 shows a case in which the second channel management unit 126 is used as a dummy unit. In other words, the second channel management unit 126 does not control the clock request signal REQ by communication with the second IP 172, but clocks according to software control stored in a separate SFR (Special Function Register). It means to control the request signal (REQ).

SFR(Special Function Register)에 저장된 소프트웨어에서 제2 IP(172)의 클럭 필요성 유무를 판단하며, 별도의 소프트웨어의 제어에 따라 클럭 요청 신호(REQ)를 제어한다.The software stored in the SFR (Special Function Register) determines whether the second IP 172 needs a clock, and controls the clock request signal REQ under the control of separate software.

제1 채널 관리 유닛(115)은 제1 클럭 게이팅 유닛(114)과 풀 핸드쉐이크 방식에 따라 통신하고, 제2 채널 관리 유닛(126)은 제3 클럭 게이팅 유닛(125)과 풀 핸드쉐이크 방식에 따라 통신한다. The first channel management unit 115 communicates with the first clock gating unit 114 according to a full handshake method, and the second channel management unit 126 communicates with the third clock gating unit 125 according to a full handshake method. communicate according to

예를 들어, 제1 IP(171)가 제1 채널 관리 유닛(115)으로 클럭 요청 신호(REQ)를 전송하면, 제1 채널 관리 유닛(115)은 이를 제1 클럭 게이팅 유닛(114)으로 전송한다. 다만, 위에서 설명한 것과 같이 제2 IP(172)는 제2 채널 관리 유닛(126)과 직접 통신하지 않는다.For example, when the first IP 171 transmits the clock request signal REQ to the first channel management unit 115, the first channel management unit 115 transmits it to the first clock gating unit 114. do. However, as described above, the second IP 172 does not directly communicate with the second channel management unit 126 .

제1 PLL 컨트롤러(111), 제1 클럭 먹스 유닛(112), 제1 클럭 분주 유닛(113), 제1 클럭 게이팅 유닛(114), 및 제1 채널 관리 유닛(115)은 서로간에 풀 핸드쉐이크 방식에 따라 통신하며, 제1 채널 관리 유닛(115)으로부터 제1 PLL 컨트롤러(111)까지 클럭 요청 신호(REQ)가 한번에 전송될 수도 있다. The first PLL controller 111, the first clock mux unit 112, the first clock dividing unit 113, the first clock gating unit 114, and the first channel management unit 115 perform full handshake with each other. Communication is performed according to a method, and the clock request signal REQ may be transmitted from the first channel management unit 115 to the first PLL controller 111 at once.

제1 PLL 컨트롤러(111)로부터 클럭 응답 신호(ACK)가 전송되면, 이는 제1 클럭 게이팅 유닛(114)까지 전송되어 제1 클럭 게이팅 유닛(114)에 포함된 제어 회로의 제어에 따라 클럭 게이팅 회로가 비활성화되어 제1 IP(171)로 제1 클럭(CLK1)이 제공된다.When the clock response signal ACK is transmitted from the first PLL controller 111, it is transmitted to the first clock gating unit 114 and is controlled by the control circuit included in the first clock gating unit 114. is inactivated, and the first clock CLK1 is provided to the first IP 171 .

또한, 제1 PLL 컨트롤러(111), 제1 클럭 먹스 유닛(112), 제1 클럭 분주 유닛(113), 제3 클럭 게이팅 유닛(125), 및 제2 채널 관리 유닛(126)은 서로간에 풀 핸드쉐이크 방식에 따라 통신하며, 제2 채널 관리 유닛(126)으로부터 제1 PLL 컨트롤러(111)까지 클럭 요청 신호(REQ)가 한번에 전송될 수도 있다. In addition, the first PLL controller 111, the first clock mux unit 112, the first clock division unit 113, the third clock gating unit 125, and the second channel management unit 126 are mutually pooled. Communication is performed according to the handshake method, and the clock request signal REQ may be transmitted from the second channel management unit 126 to the first PLL controller 111 at one time.

제1 PLL 컨트롤러(111)로부터 클럭 응답 신호(ACK)가 전송되면, 이는 제3 클럭 게이팅 유닛(125)까지 전송되어 제3 클럭 게이팅 유닛(125)에 포함된 제어 회로의 제어에 따라 클럭 게이팅 회로가 비활성화되어 제2 IP(172)로 제2 클럭(CLK2)이 제공된다.When the clock response signal ACK is transmitted from the first PLL controller 111, it is transmitted to the third clock gating unit 125 and is controlled by the control circuit included in the third clock gating unit 125. is inactivated, and the second clock CLK2 is provided to the second IP 172 .

제1 IP(171)가 제1 클럭(CLK1)이 불필요한 경우, 클럭 요청 신호(REQ)를 비활성화시키며, 이에 따라, 제1 클럭 게이팅 유닛(114)으로 전송되는 클럭 요청 신호(REQ)가 비활성화되어 제1 클럭 게이팅 유닛(114)에 포함된 제어 회로의 제어에 따라 클럭 게이팅이 수행된다. When the first IP 171 does not need the first clock CLK1, the clock request signal REQ is deactivated. Accordingly, the clock request signal REQ transmitted to the first clock gating unit 114 is deactivated. Clock gating is performed under the control of the control circuit included in the first clock gating unit 114 .

제2 IP(172)가 제2 클럭(CLK2)이 불필요한 경우, SFR(Special Function Register)에 포함된 소프트웨어의 제어에 따라 클럭 요청 신호(REQ)가 비활성화되어 제3 클럭 게이팅 유닛(125)에 포함된 제어 회로의 제어에 따라 클럭 게이팅이 수행된다.When the second IP 172 does not require the second clock CLK2, the clock request signal REQ is deactivated and included in the third clock gating unit 125 under the control of the software included in the SFR (Special Function Register). Clock gating is performed under the control of the controlled circuit.

도 8은 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이다. 8 is a block diagram illustrating a semiconductor device according to some embodiments of the inventive concept.

도 8을 참조하면, 본 발명의 몇몇 실시예에 따른 반도체 장치(3) 내의 클럭 관리 유닛(110c)은 제1 PLL 컨트롤러(111), 제1 클럭 먹스 유닛(112), 제1 클럭 분주 유닛(113), 제1 클럭 게이팅 유닛(114), 제1 채널 관리 유닛(115), 제3 클럭 게이팅 유닛(125), 제3 채널 관리 유닛(127) 등을 포함한다. Referring to FIG. 8 , the clock management unit 110c in the semiconductor device 3 according to some embodiments of the present invention includes a first PLL controller 111, a first clock mux unit 112, and a first clock dividing unit ( 113), a first clock gating unit 114, a first channel management unit 115, a third clock gating unit 125, a third channel management unit 127, and the like.

도 8에 도시된 경우는, 제1 IP(171)의 동작과 제2 IP(172)의 동작이 서로 독립적인 경우를 나타내고 있다. 다시 말하면, 제1 IP(171)의 동작 수행 여부와 제2 IP(172)의 동작 수행 여부는 무관하며, 각자 독립적으로 클럭 요청을 수행할 수 있다. The case shown in FIG. 8 shows a case where the operation of the first IP 171 and the operation of the second IP 172 are independent of each other. In other words, whether the first IP 171 performs the operation or not and whether the second IP 172 performs the operation are irrelevant, and each can independently perform a clock request.

제1 채널 관리 유닛(115)은 제1 클럭 게이팅 유닛(114)과 풀 핸드쉐이크 방식에 따라 통신하고, 제3 채널 관리 유닛(127)은 제3 클럭 게이팅 유닛(125)과 풀 핸드쉐이크 방식에 따라 통신한다. The first channel management unit 115 communicates with the first clock gating unit 114 according to a full handshake method, and the third channel management unit 127 communicates with the third clock gating unit 125 according to a full handshake method. communicate according to

예를 들어, 제1 IP(171)가 제1 채널 관리 유닛(115)으로 클럭 요청 신호(REQ)를 전송하면, 제1 채널 관리 유닛(115)은 이를 제1 클럭 게이팅 유닛(114)으로 전송한다. 또한, 독립적으로 제2 IP(172)는 제3 채널 관리 유닛(127)으로 클럭 요청 신호(REQ)를 전송할 수 있고, 제3 채널 관리 유닛(127)은 이를 제3 클럭 게이팅 유닛(125)으로 전송한다.For example, when the first IP 171 transmits the clock request signal REQ to the first channel management unit 115, the first channel management unit 115 transmits it to the first clock gating unit 114. do. In addition, the second IP 172 may independently transmit the clock request signal REQ to the third channel management unit 127, and the third channel management unit 127 sends it to the third clock gating unit 125. send.

제1 PLL 컨트롤러(111), 제1 클럭 먹스 유닛(112), 제1 클럭 분주 유닛(113), 제1 클럭 게이팅 유닛(114), 및 제1 채널 관리 유닛(115)은 서로간에 풀 핸드쉐이크 방식에 따라 통신하며, 제1 채널 관리 유닛(115)으로부터 제1 PLL 컨트롤러(111)까지 클럭 요청 신호(REQ)가 한번에 전송될 수도 있다. The first PLL controller 111, the first clock mux unit 112, the first clock dividing unit 113, the first clock gating unit 114, and the first channel management unit 115 perform full handshake with each other. Communication is performed according to a method, and the clock request signal REQ may be transmitted from the first channel management unit 115 to the first PLL controller 111 at once.

제1 PLL 컨트롤러(111)로부터 클럭 응답 신호(ACK)가 전송되면, 이는 제1 클럭 게이팅 유닛(114)까지 전송되어 제1 클럭 게이팅 유닛(114)에 포함된 제어 회로의 제어에 따라 클럭 게이팅 회로가 비활성화되어 제1 IP(171)로 제1 클럭(CLK1)이 제공된다.When the clock response signal ACK is transmitted from the first PLL controller 111, it is transmitted to the first clock gating unit 114 and is controlled by the control circuit included in the first clock gating unit 114. is inactivated, and the first clock CLK1 is provided to the first IP 171 .

또한, 제1 PLL 컨트롤러(111), 제1 클럭 먹스 유닛(112), 제1 클럭 분주 유닛(113), 제3 클럭 게이팅 유닛(125), 및 제3 채널 관리 유닛(127)은 서로간에 풀 핸드쉐이크 방식에 따라 통신하며, 제3 채널 관리 유닛(127)으로부터 제1 PLL 컨트롤러(111)까지 클럭 요청 신호(REQ)가 한번에 전송될 수도 있다. In addition, the first PLL controller 111, the first clock mux unit 112, the first clock division unit 113, the third clock gating unit 125, and the third channel management unit 127 are mutually pooled. Communication is performed according to the handshake method, and the clock request signal REQ may be transmitted from the third channel management unit 127 to the first PLL controller 111 at once.

제1 PLL 컨트롤러(111)로부터 클럭 응답 신호(ACK)가 전송되면, 이는 제3 클럭 게이팅 유닛(125)까지 전송되어 제3 클럭 게이팅 유닛(125)에 포함된 제어 회로의 제어에 따라 클럭 게이팅 회로가 비활성화되어 제2 IP(172)로 제2 클럭(CLK2)이 제공된다.When the clock response signal ACK is transmitted from the first PLL controller 111, it is transmitted to the third clock gating unit 125 and is controlled by the control circuit included in the third clock gating unit 125. is inactivated, and the second clock CLK2 is provided to the second IP 172 .

제1 IP(171)가 제1 클럭(CLK1)이 불필요한 경우, 클럭 요청 신호(REQ)를 비활성화시키며, 이에 따라, 제1 클럭 게이팅 유닛(114)으로 전송되는 클럭 요청 신호(REQ)가 비활성화되어 제1 클럭 게이팅 유닛(114)에 포함된 제어 회로의 제어에 따라 클럭 게이팅이 수행된다. When the first IP 171 does not need the first clock CLK1, the clock request signal REQ is deactivated. Accordingly, the clock request signal REQ transmitted to the first clock gating unit 114 is deactivated. Clock gating is performed under the control of the control circuit included in the first clock gating unit 114 .

제2 IP(172)가 제2 클럭(CLK2)이 불필요한 경우, 클럭 요청 신호(REQ)를 비활성화시키며, 이에 따라, 제3 클럭 게이팅 유닛(125)으로 전송되는 클럭 요청 신호(REQ)가 비활성화되어 제3 클럭 게이팅 유닛(125)에 포함된 제어 회로의 제어에 따라 클럭 게이팅이 수행된다. When the second IP 172 does not need the second clock CLK2, the clock request signal REQ is deactivated. Accordingly, the clock request signal REQ transmitted to the third clock gating unit 125 is deactivated. Clock gating is performed under the control of the control circuit included in the third clock gating unit 125 .

도 9a는 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이고, 도 9b는 도 9a의 반도체 장치의 동작을 나타낸 타이밍도이다. FIG. 9A is a block diagram illustrating a semiconductor device according to some example embodiments, and FIG. 9B is a timing diagram illustrating an operation of the semiconductor device of FIG. 9A.

도 9a 및 도 9b를 참조하면, 본 발명의 몇몇 실시예에 따른 반도체 장치(4) 내의 클럭 관리 유닛(110d)은 제1 PLL 컨트롤러(111), 제1 클럭 먹스 유닛(112), 제1 클럭 분주 유닛(113), 제1 클럭 게이팅 유닛(114), 제1 채널 관리 유닛(115), 제3 클럭 게이팅 유닛(125) 등을 포함한다. 9A and 9B , the clock management unit 110d in the semiconductor device 4 according to some embodiments of the present invention includes a first PLL controller 111, a first clock mux unit 112, a first clock It includes a dividing unit 113, a first clock gating unit 114, a first channel management unit 115, a third clock gating unit 125, and the like.

도 9a 및 도 9b에 도시된 경우는, 채널 관리 유닛과 그의 패런트(parent)인 클럭 게이팅 유닛이 1:n의 관계로 연결된 경우를 나타내고 있다. 다시 말하면, 복수 개의 클럭 게이팅 유닛이 하나의 채널 관리 유닛을 공유하여 동작하는 경우를 의미한다. 9A and 9B show a case in which a channel management unit and its parent clock gating unit are connected in a 1:n relationship. In other words, a case in which a plurality of clock gating units share and operate one channel management unit.

이러한 구조에 따르면, 제2 IP(172)의 동작이 제1 IP(171)의 동작에 의존적인 경우이며, 제1 IP(171)가 동작할 때 제2 IP(172)도 항상 동작하는 경우를 의미한다. 또한, 제1 IP(171)가 동작할 때 제2 IP(172)가 동작할 가능성이 있는 경우도 포함한다.According to this structure, the operation of the second IP 172 is dependent on the operation of the first IP 171, and the case where the second IP 172 always operates when the first IP 171 operates. it means. Also, a case in which there is a possibility that the second IP 172 operates when the first IP 171 operates is included.

제1 채널 관리 유닛(115)은 제1 클럭 게이팅 유닛(114)과 제3 클럭 게이팅 유닛(125) 중 적어도 하나와 풀 핸드쉐이크 방식에 따라 통신한다. 예를 들어, 제1 IP(171)가 제1 채널 관리 유닛(115)으로 클럭 요청 신호(REQ)를 전송하면, 제1 채널 관리 유닛(115)은 이를 제1 클럭 게이팅 유닛(114)으로 전송한다. The first channel management unit 115 communicates with at least one of the first clock gating unit 114 and the third clock gating unit 125 according to a full handshake method. For example, when the first IP 171 transmits the clock request signal REQ to the first channel management unit 115, the first channel management unit 115 transmits it to the first clock gating unit 114. do.

제1 PLL 컨트롤러(111), 제1 클럭 먹스 유닛(112), 제1 클럭 분주 유닛(113), 제1 클럭 게이팅 유닛(114), 및 제1 채널 관리 유닛(115)은 서로간에 풀 핸드쉐이크 방식에 따라 통신하며, 제1 채널 관리 유닛(115)으로부터 제1 PLL 컨트롤러(111)까지 클럭 요청 신호(REQ)가 한번에 전송될 수도 있다. The first PLL controller 111, the first clock mux unit 112, the first clock dividing unit 113, the first clock gating unit 114, and the first channel management unit 115 perform full handshake with each other. Communication is performed according to a method, and the clock request signal REQ may be transmitted from the first channel management unit 115 to the first PLL controller 111 at once.

제1 PLL 컨트롤러(111)로부터 클럭 응답 신호(ACK)가 전송되면, 이는 제1 클럭 게이팅 유닛(114)까지 전송되어 제1 클럭 게이팅 유닛(114)에 포함된 제어 회로의 제어에 따라 클럭 게이팅 회로가 비활성화되어 제1 IP(171)로 제1 클럭(CLK1)이 제공된다.When the clock response signal ACK is transmitted from the first PLL controller 111, it is transmitted to the first clock gating unit 114 and is controlled by the control circuit included in the first clock gating unit 114. is inactivated, and the first clock CLK1 is provided to the first IP 171 .

제2 IP(172)의 동작은 제1 IP(171)의 동작에 의존적이기 때문에, 제2 IP(172)는 클럭 요청 신호를 생성할 수 없으며, 제1 IP(171)에서 클럭 요청 신호(REQ)가 활성화되면, 제2 IP(172)에도 제2 클럭 게이팅 유닛(124)으로부터 제2 클럭(CLK2)이 제공된다. Since the operation of the second IP 172 depends on the operation of the first IP 171, the second IP 172 cannot generate a clock request signal, and the first IP 171 generates a clock request signal (REQ). ) is activated, the second clock CLK2 is also provided to the second IP 172 from the second clock gating unit 124 .

제1 PLL 컨트롤러(111), 제1 클럭 먹스 유닛(112), 제1 클럭 분주 유닛(113), 제3 클럭 게이팅 유닛(125), 및 제1 채널 관리 유닛(115)은 서로간에 풀 핸드쉐이크 방식에 따라 통신하며, 제1 채널 관리 유닛(115)으로부터 제1 PLL 컨트롤러(111)까지 클럭 요청 신호(REQ)가 한번에 전송될 수도 있다. The first PLL controller 111, the first clock mux unit 112, the first clock division unit 113, the third clock gating unit 125, and the first channel management unit 115 perform full handshake with each other. Communication is performed according to a method, and the clock request signal REQ may be transmitted from the first channel management unit 115 to the first PLL controller 111 at once.

제1 PLL 컨트롤러(111)로부터 클럭 응답 신호(ACK)가 전송되면, 이는 제3 클럭 게이팅 유닛(125)까지 전송되어 제3 클럭 게이팅 유닛(125)에 포함된 제어 회로의 제어에 따라 클럭 게이팅 회로가 비활성화되어 제2 IP(172)로 제2 클럭(CLK2)이 제공된다.When the clock response signal ACK is transmitted from the first PLL controller 111, it is transmitted to the third clock gating unit 125 and is controlled by the control circuit included in the third clock gating unit 125. is inactivated, and the second clock CLK2 is provided to the second IP 172 .

제1 IP(171)가 제1 클럭(CLK1)이 불필요한 경우, 클럭 요청 신호(REQ)를 비활성화시키며, 이에 따라, 제1 클럭 게이팅 유닛(114)으로 전송되는 클럭 요청 신호(REQ)가 비활성화되어 제1 클럭 게이팅 유닛(114)에 포함된 제어 회로의 제어에 따라 클럭 게이팅이 수행된다. 이 때, 제3 클럭 게이팅 유닛(125)으로 전송되는 클럭 요청 신호(REQ)도 비활성화되어 제3 클럭 게이팅 유닛(125)에 포함된 제어 회로의 제어에 따라 클럭 게이팅이 수행된다. When the first IP 171 does not need the first clock CLK1, the clock request signal REQ is deactivated. Accordingly, the clock request signal REQ transmitted to the first clock gating unit 114 is deactivated. Clock gating is performed under the control of the control circuit included in the first clock gating unit 114 . At this time, the clock request signal REQ transmitted to the third clock gating unit 125 is also deactivated, and clock gating is performed under the control of the control circuit included in the third clock gating unit 125 .

도 10a은 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이고, 도 10b는 도 10a의 반도체 장치의 동작을 나타낸 타이밍도이다. FIG. 10A is a block diagram illustrating a semiconductor device according to some embodiments of the inventive concept, and FIG. 10B is a timing diagram illustrating an operation of the semiconductor device of FIG. 10A.

도 10a 및 도 10b를 참조하면, 본 발명의 몇몇 실시예에 따른 반도체 장치(5) 내의 클럭 관리 유닛(110e)은 제1 PLL 컨트롤러(111), 제1 클럭 먹스 유닛(112), 제1 클럭 분주 유닛(113), 제1 클럭 게이팅 유닛(114), 제1 채널 관리 유닛(115), 제4 채널 관리 유닛(128) 등을 포함한다. 10A and 10B , the clock management unit 110e in the semiconductor device 5 according to some embodiments of the present invention includes a first PLL controller 111, a first clock mux unit 112, a first clock A dividing unit 113, a first clock gating unit 114, a first channel management unit 115, a fourth channel management unit 128, and the like.

도 10a 및 도 10b에 도시된 경우는, 채널 관리 유닛과 그의 패런트(parent)인 클럭 게이팅 유닛이 n:1의 관계로 연결된 경우를 나타내고 있다. 다시 말하면, 복수 개의 채널 관리 유닛이 하나의 클럭 게이팅 유닛과 연결된 경우를 의미한다. 10A and 10B show a case in which a channel management unit and its parent clock gating unit are connected in an n:1 relationship. In other words, a case in which a plurality of channel management units are connected to one clock gating unit.

이러한 구조에 따르면, 복수 개의 IP에서 사용하는 클럭이 하나이다. 즉, 복수 개의 IP는 동일한 클럭을 이용하며, 복수 개의 IP로부터의 클럭 요청이 있는 경우, 클럭 게이팅 유닛에 포함된 제어 회로는 OR 연산을 수행하여 클럭 필요 유무를 판단한다. According to this structure, there is only one clock used by a plurality of IPs. That is, the plurality of IPs use the same clock, and when a clock request is received from the plurality of IPs, the control circuit included in the clock gating unit performs an OR operation to determine whether a clock is required.

제1 채널 관리 유닛(115)은 제1 클럭 게이팅 유닛(114)과 풀 핸드쉐이크 방식에 따라 통신하고, 제4 채널 관리 유닛(128)은 제1 클럭 게이팅 유닛(114)과 풀 핸드쉐이크 방식에 따라 통신한다. 예를 들어, 제1 IP(171)가 제1 채널 관리 유닛(115)으로 클럭 요청 신호(REQ)를 전송하거나, 제2 IP(172)가 제4 채널 관리 유닛(128)으로 클럭 요청 신호(REQ)를 전송하는 경우, 제1 클럭 게이팅 유닛(114)은 OR 연산을 수행한다. The first channel management unit 115 communicates with the first clock gating unit 114 according to a full handshake method, and the fourth channel management unit 128 communicates with the first clock gating unit 114 according to a full handshake method. communicate according to For example, the first IP 171 transmits a clock request signal (REQ) to the first channel management unit 115, or the second IP 172 transmits a clock request signal (REQ) to the fourth channel management unit 128. REQ), the first clock gating unit 114 performs an OR operation.

제1 PLL 컨트롤러(111), 제1 클럭 먹스 유닛(112), 제1 클럭 분주 유닛(113), 제1 클럭 게이팅 유닛(114), 및 제1 채널 관리 유닛(115)은 서로간에 풀 핸드쉐이크 방식에 따라 통신하며, 제1 채널 관리 유닛(115)으로부터 제1 PLL 컨트롤러(111)까지 클럭 요청 신호(REQ)가 한번에 전송될 수도 있다. The first PLL controller 111, the first clock mux unit 112, the first clock dividing unit 113, the first clock gating unit 114, and the first channel management unit 115 perform full handshake with each other. Communication is performed according to a method, and the clock request signal REQ may be transmitted from the first channel management unit 115 to the first PLL controller 111 at once.

제1 PLL 컨트롤러(111)로부터 클럭 응답 신호(ACK)가 전송되면, 이는 제1 클럭 게이팅 유닛(114)까지 전송되어 제1 클럭 게이팅 유닛(114)에 포함된 제어 회로의 제어에 따라 클럭 게이팅 회로가 비활성화되어 제1 IP(171)로 제1 클럭(CLK1)이 제공된다.When the clock response signal ACK is transmitted from the first PLL controller 111, it is transmitted to the first clock gating unit 114 and is controlled by the control circuit included in the first clock gating unit 114. is inactivated, and the first clock CLK1 is provided to the first IP 171 .

제1 IP(171)가 제1 클럭(CLK1)이 불필요한 경우, 클럭 요청 신호(REQ)를 비활성화시키며, 이에 따라, 제1 클럭 게이팅 유닛(114)으로 전송되는 클럭 요청 신호(REQ)가 비활성화된다. 이 때, 제1 클럭 게이팅 유닛(114)에 포함된 제어 회로는 AND 연산을 수행하여 클럭 게이팅 수행 여부를 판단한다. When the first IP 171 does not need the first clock CLK1, it deactivates the clock request signal REQ, and accordingly, the clock request signal REQ transmitted to the first clock gating unit 114 is deactivated. . At this time, the control circuit included in the first clock gating unit 114 determines whether to perform clock gating by performing an AND operation.

제1 PLL 컨트롤러(111), 제1 클럭 먹스 유닛(112), 제1 클럭 분주 유닛(113), 제1 클럭 게이팅 유닛(114), 및 제4 채널 관리 유닛(128)은 서로간에 풀 핸드쉐이크 방식에 따라 통신하며, 제4 채널 관리 유닛(128)으로부터 제1 PLL 컨트롤러(111)까지 클럭 요청 신호(REQ)가 한번에 전송될 수도 있다. The first PLL controller 111, the first clock mux unit 112, the first clock dividing unit 113, the first clock gating unit 114, and the fourth channel management unit 128 perform full handshake with each other. Communication is performed according to a method, and the clock request signal REQ may be transmitted from the fourth channel management unit 128 to the first PLL controller 111 at once.

제1 PLL 컨트롤러(111)로부터 클럭 응답 신호(ACK)가 전송되면, 이는 제1 클럭 게이팅 유닛(114)까지 전송되어 제1 클럭 게이팅 유닛(114)에 포함된 제어 회로의 제어에 따라 클럭 게이팅 회로가 비활성화되어 제2 IP(172)로 제1 클럭(CLK1)이 제공된다. 즉, 제1 IP(171)로 제공되는 클럭과 제2 IP(172)로 제공되는 클럭은 동일하다. When the clock response signal ACK is transmitted from the first PLL controller 111, it is transmitted to the first clock gating unit 114 and is controlled by the control circuit included in the first clock gating unit 114. is inactivated, and the first clock CLK1 is provided to the second IP 172 . That is, the clock provided to the first IP 171 and the clock provided to the second IP 172 are the same.

도 11은 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이다. 11 is a block diagram illustrating a semiconductor device according to some embodiments of the inventive concept.

도 11을 참조하면, 본 발명의 몇몇 실시예에 따른 반도체 장치(6) 내의 클럭 관리 유닛(110f)은 제1 PLL 컨트롤러(111), 제1 클럭 먹스 유닛(112), 제1 클럭 분주 유닛(113), 제1 클럭 게이팅 유닛(114a), 제1 채널 관리 유닛(115), 제3 클럭 게이팅 유닛(125), 제2 PLL 컨트롤러(121), 제2 클럭 먹스 유닛(122), 제2 클럭 분주 유닛(123), 제2 클럭 게이팅 유닛(124), 제2 채널 관리 유닛(126) 등을 포함한다. Referring to FIG. 11 , a clock management unit 110f in a semiconductor device 6 according to some embodiments of the present invention includes a first PLL controller 111, a first clock mux unit 112, and a first clock dividing unit ( 113), the first clock gating unit 114a, the first channel management unit 115, the third clock gating unit 125, the second PLL controller 121, the second clock mux unit 122, the second clock It includes a dividing unit 123, a second clock gating unit 124, a second channel management unit 126, and the like.

도 11에 도시된 경우는, 채널 관리 유닛과 그의 패런트(parent)인 클럭 게이팅 유닛이 n:m의 관계로 연결된 경우를 나타내고 있다. 다시 말하면, 위에서 설명한 1:n의 관계와 n:1의 관계가 복합적으로 적용된 경우를 의미한다. The case shown in FIG. 11 shows a case in which a channel management unit and its parent clock gating unit are connected in an n:m relationship. In other words, it means the case where the 1:n relationship and the n:1 relationship described above are applied in combination.

본 발명의 몇몇 실시예에 따른 반도체 장치(6) 내의 클럭 관리 유닛(110f)의 동작에 대해서는 위에서 설명한 것과 실질적으로 동일하다. An operation of the clock management unit 110f in the semiconductor device 6 according to some embodiments of the present invention is substantially the same as that described above.

도 12는 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이다. 12 is a block diagram illustrating a semiconductor device according to some embodiments of the inventive concept.

도 12를 참조하면, 본 발명의 몇몇 실시예에 따른 반도체 장치(7) 내의 클럭 관리 유닛(110g)은 제1 PLL 컨트롤러(111), 제1 클럭 먹스 유닛(112), 제1 클럭 분주 유닛(113), 제1 클럭 게이팅 유닛(114b), 제1 채널 관리 유닛(115), 제2 PLL 컨트롤러(121), 제2 클럭 먹스 유닛(122), 제2 클럭 분주 유닛(123), 제2 클럭 게이팅 유닛(124), 제2 채널 관리 유닛(126), 제5 채널 관리 유닛(131) 등을 포함한다. Referring to FIG. 12 , a clock management unit 110g in a semiconductor device 7 according to some embodiments of the present invention includes a first PLL controller 111, a first clock mux unit 112, and a first clock dividing unit ( 113), first clock gating unit 114b, first channel management unit 115, second PLL controller 121, second clock mux unit 122, second clock division unit 123, second clock It includes a gating unit 124, a second channel management unit 126, a fifth channel management unit 131, and the like.

도 12에 도시된 경우는, 채널 관리 유닛과 그의 패런트(parent)인 클럭 게이팅 유닛이 n:m의 관계로 연결된 경우를 나타내고 있다. 다시 말하면, 위에서 설명한 1:n의 관계와 n:1의 관계가 복합적으로 적용된 경우를 의미한다. The case shown in FIG. 12 shows a case in which a channel management unit and its parent clock gating unit are connected in an n:m relationship. In other words, it means the case where the 1:n relationship and the n:1 relationship described above are applied in combination.

본 발명의 몇몇 실시예에 따른 반도체 장치(7) 내의 클럭 관리 유닛(110g)의 동작에 대해서는 위에서 설명한 것과 실질적으로 동일하다. An operation of the clock management unit 110g in the semiconductor device 7 according to some embodiments of the present invention is substantially the same as that described above.

도 13은 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이다. 13 is a block diagram illustrating a semiconductor device according to some embodiments of the inventive concept.

도 13을 참조하면, 반도체 장치(700)는 중앙 처리 장치(710), 클럭 생성기(720), 클럭 관리 유닛(730), RAM(740), ROM(750) 및 메모리 컨트롤 유닛(760) 등을 포함할 수 있다. 한편, 오실레이터(OSC)는 반도체 장치(700)의 외부에 배치되어 반도체 장치(700)로 발진 신호를 제공할 수 있다. 다만, 이는 일 실시예에 불과한 것으로서, 본 발명의 실시예에 따른 반도체 장치(700)는 다른 다양한 기능 블록들을 포함할 수 있으며, 또한 오실레이터(OSC)가 반도체 장치(700) 내부에 구비되어도 무방하다. 도 40의 반도체 장치(700)는 어플리케이션 프로세서로서 반도체 시스템에 구비될 수 있다.Referring to FIG. 13 , the semiconductor device 700 includes a central processing unit 710, a clock generator 720, a clock management unit 730, a RAM 740, a ROM 750, a memory control unit 760, and the like. can include Meanwhile, the oscillator OSC may be disposed outside the semiconductor device 700 to provide an oscillation signal to the semiconductor device 700 . However, this is only an example, and the semiconductor device 700 according to an embodiment of the present invention may include various other functional blocks, and the oscillator OSC may be provided inside the semiconductor device 700. . The semiconductor device 700 of FIG. 40 may be included in a semiconductor system as an application processor.

클럭 생성기(720)는 오실레이터(OSC)로부터의 신호를 이용하여 기준 주파수를 갖는 기준 클럭 신호(CLK_IN)를 생성한다. 클럭 관리 유닛(730)은 기준 클럭 신호(CLK_IN)를 수신하고, 소정의 주파수를 갖는 동작 클럭 신호(CLK_OUT)를 생성하여 각각의 기능 블록으로 제공할 수 있다. 클럭 관리 유닛(730)은 하나 이상의 마스터 클럭 컨트롤러 및 슬레이브 클럭 컨트롤러를 포함할 수 있으며, 각각의 클럭 컨트롤러는 기준 클럭 신호(CLK_IN)를 이용하여 동작 클럭 신호(CLK_OUT)를 생성할 수 있다. The clock generator 720 generates a reference clock signal CLK_IN having a reference frequency using a signal from the oscillator OSC. The clock management unit 730 may receive the reference clock signal CLK_IN, generate an operation clock signal CLK_OUT having a predetermined frequency, and provide the generated operation clock signal CLK_OUT to each functional block. The clock management unit 730 may include one or more master clock controllers and one or more slave clock controllers, and each clock controller may generate an operation clock signal CLK_OUT using a reference clock signal CLK_IN.

또한, 클럭 관리 유닛(730) 내의 클럭 컨트롤러는 채널을 통해 연결됨에 따라 클럭 신호의 관리를 하드웨어적으로 수행할 수 있다. 또한, 클럭 관리 유닛(730) 내의 클럭 컨트롤러는 기능 블록과 채널을 통해 연결됨에 따라, 클럭 요청 및 요청 응답이 하드웨어적으로 수행될 수 있다.In addition, as the clock controller in the clock management unit 730 is connected through a channel, clock signal management may be performed in hardware. Also, as the clock controller in the clock management unit 730 is connected to the functional block through a channel, clock request and request response may be performed in hardware.

중앙 처리 장치(710)는 RAM(740)에 저장된 코드들 및/또는 데이터를 처리 또는 실행할 수 있다. 예컨대, 중앙 처리 장치(710)는 클럭 관리 유닛(730)으로부터 출력된 동작 클럭에 응답하여 상기 코드들 및/또는 상기 데이터를 처리 또는 실행할 수 있다. 중앙 처리 장치(710)는 멀티-코어 프로세서(multi-core processor)로 구현될 수 있다. 상기 멀티-코어 프로세서는 두 개 또는 그 이상의 독립적인 실질적인 프로세서들을 갖는 하나의 컴퓨팅 컴포넌트(computing component)이고, 상기 프로세서들 각각은 프로그램 명령들(program instructions)을 읽고 실행할 수 있다. 상기 멀티-코어 프로세서는 다수의 가속기를 동시에 구동할 수 있으므로, 상기 멀티-코어 프로세서를 포함하는 데이터 처리 시스템은 멀티-가속(multi-acceleration)을 수행할 수 있다.The central processing unit 710 may process or execute codes and/or data stored in the RAM 740 . For example, the CPU 710 may process or execute the codes and/or the data in response to an operation clock output from the clock management unit 730 . The central processing unit 710 may be implemented as a multi-core processor. The multi-core processor is a computing component having two or more independent substantive processors, each of which can read and execute program instructions. Since the multi-core processor can simultaneously drive a plurality of accelerators, a data processing system including the multi-core processor can perform multi-acceleration.

RAM(740)은, 프로그램 코드들, 데이터 또는 명령들(instructions)을 일시적으로 저장할 수 있다. 예컨대, 내부 또는 외부 메모리(미도시)에 저장된 프로그램 코드들 및/또는 데이터는 중앙 처리 장치(710)의 제어 또는 ROM(750)에 저장된 부팅 코드(booting code)에 따라 RAM(740)에 일시적으로 저장될 수 있다. 메모리 컨트롤 모듈(760)은 내부 또는 외부 메모리와 인터페이스하기 위한 블록으로서, 메모리 컨트롤 모듈(760)은 메모리의 동작을 전반적으로 제어하며, 또한 호스트와 메모리 사이의 제반 데이터 교환을 제어한다. The RAM 740 may temporarily store program codes, data or instructions. For example, program codes and/or data stored in an internal or external memory (not shown) are temporarily stored in the RAM 740 under the control of the CPU 710 or a booting code stored in the ROM 750. can be stored The memory control module 760 is a block for interfacing with an internal or external memory, and the memory control module 760 controls overall memory operations and also controls overall data exchange between the host and the memory.

도 14는 본 발명의 몇몇 실시예에 따른 반도체 장치를 도시한 블록도이다. 14 is a block diagram illustrating a semiconductor device according to some embodiments of the inventive concept.

도 14를 참조하면, 반도체 장치(800)가 기능 블록들에 대한 전력 제공을 관리하는 파워 매니지먼트 유닛(810)을 포함하는 예가 도시된다. 파워 매니지먼트 유닛(810)은 반도체 장치(800) 내부에서 이용되는 전력을 관리하도록 설계될 수 있다. Referring to FIG. 14 , an example in which a semiconductor device 800 includes a power management unit 810 that manages supply of power to functional blocks is illustrated. The power management unit 810 may be designed to manage power used inside the semiconductor device 800 .

반도체 장치(800)는 파워 매니지먼트 유닛(810) 및 다수 개의 기능 블록들(821, 822)을 포함하고, 상기 기능 블록들(821, 822)은 마스터 기능 블록(821) 및 슬레이브 기능 블록(822)으로 분류될 수 있다. 만약, 마스터 기능 블록(821)이 동작하기 위해서는 마스터 기능 블록(821)으로 전력 제공이 수행되어야 하며, 이와 함께 마스터 기능 블록(821)의 동작에 관련된 하나 이상의 슬레이브 기능 블록(822)으로 전력 제공이 수행되어야 한다. The semiconductor device 800 includes a power management unit 810 and a plurality of function blocks 821 and 822, and the function blocks 821 and 822 include a master function block 821 and a slave function block 822. can be classified as If, in order for the master function block 821 to operate, power must be supplied to the master function block 821, and at the same time, power must be supplied to one or more slave function blocks 822 related to the operation of the master function block 821. It should be done.

마스터 파워 컨트롤러(811)는 슬레이브 파워 컨트롤러들(812, 813) 각각과 채널을 통해 통신할 수 있다. 파워 매니지먼트 유닛(810)은 입력 파워(power_in)를 수신하고, 상기 파워를 조절하여 각각의 기능 블록에 적합하도록 파워를 변환하여 출력 파워(power_out)를 생성할 수 있다. 또한, 파워 매니지먼트 유닛(810)은 파워 요청(Req)에 따라 마스터 기능 블록(821) 및 슬레이브 기능 블록(822)으로 파워를 제공하거나 차단할 수 있다. The master power controller 811 may communicate with each of the slave power controllers 812 and 813 through a channel. The power management unit 810 may receive input power (power_in), adjust the power, convert the power to be suitable for each functional block, and generate output power (power_out). Also, the power management unit 810 may provide or cut off power to the master function block 821 and the slave function block 822 according to the power request Req.

마스터 파워 컨트롤러(811)는 중앙 처리 장치의 코드 처리에 기반하여 파워 요청(Req)을 소프트웨어적으로 수신하거나, 마스터 기능 블록(821)으로부터 하드웨어적으로 파워 요청(Req)을 수신할 수 있다. 그리고, 마스터 기능 블록(821)은 슬레이브 파워 컨트롤러들(812, 813)로 파워 온/오프 명령(pwr on/off)을 제공할 수 있으며, 슬레이브 파워 컨트롤러들(812, 813)로부터 파워 응답(Ack on/off)을 수신할 수 있다. The master power controller 811 may receive the power request (Req) in software based on code processing of the central processing unit or receive the power request (Req) in hardware from the master function block 821 . In addition, the master function block 821 may provide a power on/off command (pwr on/off) to the slave power controllers 812 and 813, and a power response (Ack) from the slave power controllers 812 and 813. on/off) can be received.

도 15는 본 발명의 몇몇 실시예에 따른 반도체 장치를 포함하는 반도체 시스템의 일 실시예를 나타내는 블록도이다.15 is a block diagram illustrating an example of a semiconductor system including a semiconductor device according to some example embodiments of inventive concepts.

도 15를 참조하면, 반도체 시스템(900)은 전술한 실시예들에 따른 SoC(901), 안테나(910), 무선 송수신기(920), 입력 장치(930) 및 디스플레이(940)를 포함할 수 있다. 무선 송수신기(920)는 안테나(910)를 통하여 무선 신호를 주거나 받을 수 있다. 예컨대, 무선 송수신기(920)는 안테나(910)를 통하여 수신된 무선 신호를 SoC(901)에서 처리될 수 있는 신호로 변경할 수 있다. Referring to FIG. 15 , a semiconductor system 900 may include a SoC 901, an antenna 910, a wireless transceiver 920, an input device 930, and a display 940 according to the above-described embodiments. . The wireless transceiver 920 may transmit or receive a radio signal through the antenna 910 . For example, the radio transceiver 920 may change a radio signal received through the antenna 910 into a signal that can be processed by the SoC 901 .

따라서, SoC(901)은 무선 송수신기(920)로부터 출력된 신호를 처리하고 처리된 신호를 디스플레이(940)로 전송할 수 있다. 또한, 무선 송수신기(920)는 SoC(901)으로부터 출력된 신호를 무선 신호로 변경하고 변경된 무선 신호를 안테나(910)를 통하여 외부 장치로 출력할 수 있다. 입력 장치(930)는 SoC(901)의 동작을 제어하기 위한 제어 신호 또는 SoC(901)에 의하여 처리될 데이터를 입력할 수 있는 장치로서, 터치 패드(touch pad)와 컴퓨터 마우스(computer mouse)와 같은 포인팅 장치(pointing device), 키패드(keypad), 또는 키보드로 구현될 수 있다.Accordingly, the SoC 901 may process a signal output from the wireless transceiver 920 and transmit the processed signal to the display 940 . In addition, the wireless transceiver 920 may change the signal output from the SoC 901 into a wireless signal and output the changed wireless signal to an external device through the antenna 910 . The input device 930 is a device capable of inputting control signals for controlling the operation of the SoC 901 or data to be processed by the SoC 901, and includes a touch pad and a computer mouse. It can be implemented with the same pointing device, keypad, or keyboard.

도 16은 본 발명의 몇몇 실시예에 따른 반도체 장치를 포함하는 반도체 시스템의 다른 실시예를 나타내는 블록도이다.16 is a block diagram illustrating another example of a semiconductor system including a semiconductor device according to some example embodiments of inventive concepts.

도 16을 참조하면, 메모리 시스템(1000)은 SSD(solid state drive)와 같은 데이터 처리 장치로 구현될 수 있다. 메모리 시스템(1000)은 다수의 메모리 장치들(1500), 다수의 메모리 장치들(1500) 각각의 데이터 처리 동작을 제어할 수 있는 메모리 컨트롤러(1200), DRAM과 같은 휘발성 메모리 장치(1300), 메모리 컨트롤러(1200)와 호스트(1400) 사이에서 주고받은 데이터를 휘발성 메모리 장치(1300)에 저장하는 것을 제어하는 SoC(1100)를 포함할 수 있다. 상기 SoC(1100)는 전술한 실시예에 따라 구현될 수 있다. Referring to FIG. 16 , the memory system 1000 may be implemented as a data processing device such as a solid state drive (SSD). The memory system 1000 includes a plurality of memory devices 1500, a memory controller 1200 capable of controlling data processing operations of each of the plurality of memory devices 1500, a volatile memory device 1300 such as DRAM, and memory. An SoC 1100 controlling storage of data exchanged between the controller 1200 and the host 1400 in the volatile memory device 1300 may be included. The SoC 1100 may be implemented according to the above-described embodiment.

이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.Although the embodiments of the present invention have been described with reference to the accompanying drawings, those skilled in the art can realize that the present invention can be implemented in other specific forms without changing the technical spirit or essential features. you will be able to understand Therefore, the embodiments described above should be understood as illustrative in all respects and not limiting.

100: 반도체 장치
101: 입출력 패드
110: 클럭 관리 유닛
150: 파워 매니지먼트 유닛
171, 172, 173: 제1 내지 제3 IP
100: semiconductor device
101: I/O pad
110: clock management unit
150: power management unit
171, 172, 173: first to third IP

Claims (20)

제1 제어 회로와 제1 클럭 게이팅 회로를 포함하는 제1 클럭 생성부;
상기 제1 클럭 생성부와 풀 핸드쉐이크(full handshake) 방식에 따라 통신하는 제1 채널 관리부;
제2 제어 회로와 제2 클럭 게이팅 회로를 포함하는 제2 클럭 생성부; 및
상기 제2 클럭 생성부와 풀 핸드쉐이크 방식에 따라 통신하는 제2 채널 관리부를 포함하고,
상기 제1 클럭 게이팅 회로는 제1 클럭을 출력하고, 상기 제2 클럭 게이팅 회로는 상기 제1 클럭과 다른 제2 클럭을 출력하고,
상기 제1 채널 관리부는 제1 클럭 요청 신호에 응답하여 상기 제1 클럭 생성부로 제2 클럭 요청 신호를 전송하고,
상기 제1 클럭 생성부는 상기 제2 클럭 요청 신호에 응답하여 상기 제1 채널 관리부로 제1 클럭 응답 신호를 전송하는 반도체 장치.
a first clock generator including a first control circuit and a first clock gating circuit;
a first channel manager communicating with the first clock generator according to a full handshake method;
a second clock generator including a second control circuit and a second clock gating circuit; and
A second channel management unit communicating with the second clock generation unit according to a full handshake method;
the first clock gating circuit outputs a first clock, and the second clock gating circuit outputs a second clock different from the first clock;
The first channel manager transmits a second clock request signal to the first clock generator in response to the first clock request signal;
The semiconductor device of claim 1 , wherein the first clock generator transmits a first clock response signal to the first channel manager in response to the second clock request signal.
삭제delete 제1항에 있어서,
상기 제2 채널 관리부는 제3 클럭 요청 신호에 응답하여 상기 제2 클럭 생성부로 제4 클럭 요청 신호를 전송하고,
상기 제2 클럭 생성부는 상기 제4 클럭 요청 신호에 응답하여 상기 제2 채널 관리부로 제2 클럭 응답 신호를 전송하는 반도체 장치.
According to claim 1,
The second channel manager transmits a fourth clock request signal to the second clock generator in response to a third clock request signal;
wherein the second clock generator transmits a second clock response signal to the second channel manager in response to the fourth clock request signal.
제 3항에 있어서,
상기 제1 제어 회로는 상기 제2 클럭 요청 신호가 활성화되면 상기 제1 클럭 게이팅 회로를 비활성화시키고,
상기 제2 제어 회로는 상기 제4 클럭 요청 신호가 활성화되면 상기 제2 클럭 게이팅 회로를 비활성화시키는 반도체 장치.
According to claim 3,
the first control circuit deactivates the first clock gating circuit when the second clock request signal is activated;
The second control circuit deactivates the second clock gating circuit when the fourth clock request signal is activated.
제 1항에 있어서,
상기 제1 채널 관리부와 통신하는 제1 로직 블록과, 상기 제2 채널 관리부와 통신하는 제2 로직 블록을 더 포함하는 반도체 장치.
According to claim 1,
The semiconductor device further comprising a first logic block communicating with the first channel manager and a second logic block communicating with the second channel manager.
제 5항에 있어서,
상기 제1 채널 관리부와 상기 제1 로직 블록은 풀 핸드쉐이크(full handshake) 채널을 이용하여 통신하는 반도체 장치.
According to claim 5,
The semiconductor device of claim 1 , wherein the first channel management unit and the first logic block communicate with each other using a full handshake channel.
제 5항에 있어서,
상기 제1 로직 블록은 IP(intellectual property)를 포함하고,
상기 IP는 상기 제1 클럭이 필요한 경우, 클럭 요청 신호를 활성화하는 반도체 장치.
According to claim 5,
The first logic block includes an intellectual property (IP),
The IP activates a clock request signal when the first clock is required.
제 7항에 있어서,
상기 제1 클럭 생성부는 상기 클럭 요청 신호에 응답하여 상기 IP로 상기 제1 클럭을 제공하는 반도체 장치.
According to claim 7,
The first clock generator provides the first clock to the IP in response to the clock request signal.
제 8항에 있어서,
상기 IP는 상기 제1 클럭이 불필요한 경우, 상기 클럭 요청 신호를 비활성화시키는 반도체 장치.
According to claim 8,
The IP deactivates the clock request signal when the first clock is unnecessary.
제 1항에 있어서,
상기 제1 클럭 생성부와 상기 제1 채널 관리부는 단일 클럭 도메인(single clock domain)으로 통신하는 반도체 장치.
According to claim 1,
The semiconductor device of claim 1 , wherein the first clock generator and the first channel manager communicate with each other in a single clock domain.
제 10항에 있어서,
상기 제1 제어 회로와 상기 제1 클럭 게이팅 회로는 서로 다른 클럭 도메인을 이용하는 반도체 장치.
According to claim 10,
The semiconductor device of claim 1 , wherein the first control circuit and the first clock gating circuit use different clock domains.
제1 제어 회로와 제1 클럭 게이팅 회로를 포함하는 제1 클럭 생성부;
상기 제1 클럭 생성부와 풀 핸드쉐이크(full handshake) 방식에 따라 통신하는 제1 채널 관리부; 및
제2 제어 회로와 제2 클럭 게이팅 회로를 포함하는 제2 클럭 생성부를 포함하고,
상기 제2 클럭 생성부는 상기 제1 채널 관리부와 풀 핸드쉐이크 방식에 따라 통신하고,
상기 제1 클럭 게이팅 회로는 제1 클럭을 출력하고, 상기 제2 클럭 게이팅 회로는 상기 제1 클럭과 다른 제2 클럭을 출력하고,
상기 제1 채널 관리부는 상기 제1 클럭 생성부로 제1 클럭 요청 신호를 전송하고,
상기 제1 클럭 생성부는 상기 제1 클럭 요청 신호에 응답하여 상기 제1 채널 관리부로 제1 클럭 응답 신호를 전송하는 반도체 장치.
a first clock generator including a first control circuit and a first clock gating circuit;
a first channel manager communicating with the first clock generator according to a full handshake method; and
A second clock generator including a second control circuit and a second clock gating circuit;
The second clock generation unit communicates with the first channel manager according to a full handshake method;
the first clock gating circuit outputs a first clock, and the second clock gating circuit outputs a second clock different from the first clock;
The first channel manager transmits a first clock request signal to the first clock generator;
The semiconductor device of claim 1 , wherein the first clock generation unit transmits a first clock response signal to the first channel management unit in response to the first clock request signal.
제 12항에 있어서, 상기 제1 채널 관리부는 상기 제2 클럭 생성부로 제2 클럭 요청 신호를 전송하는 반도체 장치.The semiconductor device of claim 12 , wherein the first channel manager transmits a second clock request signal to the second clock generator. 삭제delete 제 13항에 있어서,
상기 제2 클럭 생성부는 상기 제2 클럭 요청 신호에 응답하여 상기 제1 채널 관리부로 제2 클럭 응답 신호를 전송하는 반도체 장치.
According to claim 13,
The second clock generation unit transmits a second clock response signal to the first channel management unit in response to the second clock request signal.
제 13항에 있어서,
상기 제1 제어 회로는 상기 제1 클럭 요청 신호가 활성화되면 상기 제1 클럭 게이팅 회로를 비활성화시키고,
상기 제2 제어 회로는 상기 제2 클럭 요청 신호가 활성화되면 상기 제2 클럭 게이팅 회로를 비활성화시키는 반도체 장치.
According to claim 13,
the first control circuit deactivates the first clock gating circuit when the first clock request signal is activated;
The second control circuit deactivates the second clock gating circuit when the second clock request signal is activated.
제1 제어 회로와 제1 클럭 게이팅 회로를 포함하는 제1 클럭 생성부;
상기 제1 클럭 생성부와 풀 핸드쉐이크(full handshake) 방식에 따라 통신하는 제1 채널 관리부; 및
상기 제1 클럭 생성부와 풀 핸드쉐이크 방식에 따라 통신하는 제2 채널 관리부를 포함하고,
상기 제1 채널 관리부는 상기 제1 클럭 생성부로 제1 클럭 요청 신호를 전송하고, 상기 제1 클럭 생성부는 상기 제1 클럭 요청 신호에 따라 제1 클럭 응답 신호를 상기 제1 채널 관리부로 전송하고,
상기 제2 채널 관리부는 상기 제1 클럭 생성부로 제2 클럭 요청 신호를 전송하는 반도체 장치.
a first clock generator including a first control circuit and a first clock gating circuit;
a first channel manager communicating with the first clock generator according to a full handshake method; and
A second channel management unit communicating with the first clock generation unit according to a full handshake method;
The first channel manager transmits a first clock request signal to the first clock generator, the first clock generator transmits a first clock response signal to the first channel manager according to the first clock request signal,
The second channel manager transmits a second clock request signal to the first clock generator.
제 17항에 있어서,
상기 제1 클럭 생성부는 상기 제1 클럭 요청 신호 및 상기 제2 클럭 요청 신호 중 적어도 하나가 활성화된 경우, 제1 클럭을 출력하는 반도체 장치.
According to claim 17,
The semiconductor device of claim 1 , wherein the first clock generator outputs a first clock when at least one of the first clock request signal and the second clock request signal is activated.
제 18항에 있어서,
상기 제1 채널 관리부와 풀 핸드쉐이크 채널을 이용하여 통신하는 제1 로직 블록과,
상기 제2 채널 관리부와 풀 핸드쉐이크 채널을 이용하여 통신하는 제2 로직 블록을 더 포함하는 반도체 장치.
According to claim 18,
a first logic block communicating with the first channel manager using a full handshake channel;
The semiconductor device further includes a second logic block communicating with the second channel manager using a full handshake channel.
제 19항에 있어서,
상기 제1 클럭 생성부는 상기 제1 로직 블록 및 상기 제2 로직 블록 중 적어도 하나로 상기 제1 클럭을 제공하는 반도체 장치.
According to claim 19,
wherein the first clock generator provides the first clock to at least one of the first logic block and the second logic block.
KR1020170007002A 2016-01-25 2017-01-16 Semiconductor device KR102550422B1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US15/415,041 US10248155B2 (en) 2016-01-25 2017-01-25 Semiconductor device including clock generating circuit and channel management circuit
DE102017110788.6A DE102017110788A1 (en) 2016-01-25 2017-05-18 Semiconductor device
CN201710600073.8A CN108319326B (en) 2016-01-25 2017-07-21 Semiconductor device with a plurality of semiconductor chips
TW106124821A TWI740988B (en) 2016-01-25 2017-07-25 Semiconductor device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201662286895P 2016-01-25 2016-01-25
US62/286,895 2016-01-25

Publications (2)

Publication Number Publication Date
KR20170088758A KR20170088758A (en) 2017-08-02
KR102550422B1 true KR102550422B1 (en) 2023-06-30

Family

ID=59651730

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170007002A KR102550422B1 (en) 2016-01-25 2017-01-16 Semiconductor device

Country Status (2)

Country Link
KR (1) KR102550422B1 (en)
CN (1) CN108319326B (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110202788A1 (en) * 2010-02-12 2011-08-18 Blue Wonder Communications Gmbh Method and device for clock gate controlling

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008197600A (en) * 2007-02-16 2008-08-28 Renesas Technology Corp Semiconductor integrated circuit and data processing system
KR20110035749A (en) * 2009-09-30 2011-04-06 주식회사 하이닉스반도체 Semiconductor memory apparatus
US8549339B2 (en) * 2010-02-26 2013-10-01 Empire Technology Development Llc Processor core communication in multi-core processor
KR102107076B1 (en) * 2013-12-02 2020-05-08 에스케이하이닉스 주식회사 Semiconductor apparatus
KR20150116052A (en) * 2014-04-04 2015-10-15 에스케이하이닉스 주식회사 Semiconductor memory device and operation method thereof
KR102204597B1 (en) * 2014-11-19 2021-01-19 삼성전자주식회사 Semiconductor device
KR102216807B1 (en) * 2015-03-25 2021-02-19 삼성전자주식회사 Semiconductor circuit

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110202788A1 (en) * 2010-02-12 2011-08-18 Blue Wonder Communications Gmbh Method and device for clock gate controlling

Also Published As

Publication number Publication date
CN108319326B (en) 2021-07-06
KR20170088758A (en) 2017-08-02
CN108319326A (en) 2018-07-24

Similar Documents

Publication Publication Date Title
US10853304B2 (en) System on chip including clock management unit and method of operating the system on chip
KR102467172B1 (en) Semiconductor device
US10560081B2 (en) Method, apparatus, system for centering in a high performance interconnect
US10296065B2 (en) Clock management using full handshaking
US11789515B2 (en) Semiconductor device
US11275708B2 (en) System on chip including clock management unit and method of operating the system on chip
TWI772300B (en) Semiconductor device
US10248155B2 (en) Semiconductor device including clock generating circuit and channel management circuit
KR102550422B1 (en) Semiconductor device
CN114077570A (en) Semiconductor device with a plurality of transistors
TWI752067B (en) Semiconductor device and a semiconductor system
US8515373B2 (en) Apparatus for providing reference signals and associated methods
CN108345350B (en) System on chip, semiconductor system, and clock signal output circuit
CN108268085B (en) Semiconductor device with a semiconductor device having a plurality of semiconductor chips
KR20170088750A (en) Semiconductor device, semiconductor system and method for operating semiconductor device
CN108268117B (en) Semiconductor device and semiconductor system
CN108268086B (en) Semiconductor device, semiconductor system, and method of operating semiconductor device
US20150106635A1 (en) Semiconductor integrated circuit and method of controlling the same
KR20220020763A (en) Semiconductor device
KR20170088749A (en) Semiconductor device, semiconductor system and method for operating semiconductor device

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