KR101885857B1 - 온도 관리 회로, 이를 포함하는 시스템 온 칩 및 온도 관리 방법 - Google Patents

온도 관리 회로, 이를 포함하는 시스템 온 칩 및 온도 관리 방법 Download PDF

Info

Publication number
KR101885857B1
KR101885857B1 KR1020120001139A KR20120001139A KR101885857B1 KR 101885857 B1 KR101885857 B1 KR 101885857B1 KR 1020120001139 A KR1020120001139 A KR 1020120001139A KR 20120001139 A KR20120001139 A KR 20120001139A KR 101885857 B1 KR101885857 B1 KR 101885857B1
Authority
KR
South Korea
Prior art keywords
temperature
sub
main
signal
chip
Prior art date
Application number
KR1020120001139A
Other languages
English (en)
Other versions
KR20130080305A (ko
Inventor
김지형
박상욱
이종근
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020120001139A priority Critical patent/KR101885857B1/ko
Priority to US13/656,383 priority patent/US9405337B2/en
Priority to DE102012110694A priority patent/DE102012110694A1/de
Priority to TW101143023A priority patent/TWI619012B/zh
Priority to JP2012285174A priority patent/JP6185718B2/ja
Priority to CN201310002266.5A priority patent/CN103197747B/zh
Publication of KR20130080305A publication Critical patent/KR20130080305A/ko
Application granted granted Critical
Publication of KR101885857B1 publication Critical patent/KR101885857B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05FSYSTEMS FOR REGULATING ELECTRIC OR MAGNETIC VARIABLES
    • G05F1/00Automatic systems in which deviations of an electric quantity from one or more predetermined values are detected at the output of the system and fed back to a device within the system to restore the detected quantity to its predetermined value or values, i.e. retroactive systems
    • G05F1/10Regulating voltage or current
    • G05F1/46Regulating voltage or current wherein the variable actually regulated by the final control device is dc
    • G05F1/56Regulating voltage or current wherein the variable actually regulated by the final control device is dc using semiconductor devices in series with the load as final control devices
    • G05F1/565Regulating voltage or current wherein the variable actually regulated by the final control device is dc using semiconductor devices in series with the load as final control devices sensing a condition of the system or its load in addition to means responsive to deviations in the output of the system, e.g. current, voltage, power factor
    • G05F1/567Regulating voltage or current wherein the variable actually regulated by the final control device is dc using semiconductor devices in series with the load as final control devices sensing a condition of the system or its load in addition to means responsive to deviations in the output of the system, e.g. current, voltage, power factor for temperature compensation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D23/00Control of temperature
    • G05D23/19Control of temperature characterised by the use of electric means
    • G05D23/1927Control of temperature characterised by the use of electric means using a plurality of sensors
    • G05D23/193Control of temperature characterised by the use of electric means using a plurality of sensors sensing the temperaure in different places in thermal relationship with one or more spaces
    • G05D23/1932Control of temperature characterised by the use of electric means using a plurality of sensors sensing the temperaure in different places in thermal relationship with one or more spaces to control the temperature of a plurality of spaces
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L23/00Details of semiconductor or other solid state devices
    • H01L23/34Arrangements for cooling, heating, ventilating or temperature compensation ; Temperature sensing arrangements
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L23/00Details of semiconductor or other solid state devices
    • H01L23/34Arrangements for cooling, heating, ventilating or temperature compensation ; Temperature sensing arrangements
    • H01L23/345Arrangements for heating
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2924/00Indexing scheme for arrangements or methods for connecting or disconnecting semiconductor or solid-state bodies as covered by H01L24/00
    • H01L2924/0001Technical content checked by a classifier
    • H01L2924/0002Not covered by any one of groups H01L24/00, H01L24/00 and H01L2224/00

Abstract

시스템 온 칩의 온도 관리를 위하여, 메인 센서를 이용하여 시스템 온 칩의 전체적인 메인 온도에 상응하는 디지털 신호를 메인 온도 신호로서 발생한다. 복수의 서브 센서들을 이용하여 상기 시스템 온 칩의 서브 블록들의 서브 온도들에 각각 비례하는 주파수들을 갖는 펄스 신호들을 서브 온도 신호들로서 발생한다. 상기 메인 온도 신호 및 상기 서브 온도 신호들에 기초하여 상기 시스템 온 칩의 동작을 제어한다.

Description

온도 관리 회로, 이를 포함하는 시스템 온 칩 및 온도 관리 방법{Temperature management unit, system on chip including the same and method of managing temperature in a system on chip}
본 발명은 반도체 집적 회로에 관한 것으로서, 더욱 상세하게는 온도 관리 회로, 상기 온도 관리 회로를 포함하는 시스템 온 칩 및 온도 관리 방법에 관한 것이다.
시스템 온 칩(SOC: system on chip)은 여러 가지 반도체 부품들이 하나로 집적되는 하나의 칩 또는 그 칩에 집적된 시스템을 말한다. 시스템 온 칩의 집적도 향상에 따라서 더 많은 부품들이 하나의 칩에 집적되고 시스템 온 칩의 동작 속도도 점진적으로 증가하는 추세이다. 집적도와 동작 속도가 증가할수록 시스템 온 칩의 동작 상태에 따른 온도의 증가 또는 감소를 모니터링하고 제어하는 시스템 온 칩의 온도 관리(temperature management) 또는 열적 관리(thermal management)가 점점 더 어려워지고 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 일 목적은, 효율적으로 시스템 온 칩의 온도를 감시하고 제어할 수 있는 온도 관리 방법을 제공하는 것이다.
본 발명의 다른 목적은 효율적으로 시스템 온 칩의 온도를 감시하고 제어할 수 있는 온도 관리 회로 및 이를 포함하는 시스템 온 칩을 제공하는 것이다.
상기 일 목적을 달성하기 위해, 본 발명의 일 실시예에 따른 시스템 온 칩의 온도 관리 방법은, 메인 센서를 이용하여 시스템 온 칩의 전체적인 메인 온도에 상응하는 디지털 신호를 메인 온도 신호로서 발생하는 단계; 복수의 서브 센서들을 이용하여 상기 시스템 온 칩의 서브 블록들의 서브 온도들에 각각 비례하는 주파수들을 갖는 펄스 신호들을 서브 온도 신호들로서 발생하는 단계; 및 상기 메인 온도 신호 및 상기 서브 온도 신호들에 기초하여 상기 시스템 온 칩의 동작을 제어하는 단계를 포함한다.
상기 메인 센서와 상기 서브 센서들은 상기 시스템 온 칩이 집적되는 반도체 기판에 함께 집적되는 온 칩 센서들일 수 있다.
상기 시스템 온 칩의 동작을 제어하는 단계는, 적어도 하나의 온도 임계값 및 상기 메인 온도 신호에 기초하여 상기 메인 온도의 변화를 검출하는 단계; 및 상기 검출된 메인 온도의 변화 및 상기 서브 온도 신호들에 기초하여 상기 시스템 온 칩의 전체적인 동작 및 상기 서브 블록들의 개별적인 동작 중 적어도 하나를 제어하는 단계를 포함할 수 있다.
상기 온도 관리 방법은, 상기 메인 온도 신호를 센싱 주기마다 래치하고 이전의 메인 온도값 및 현재의 메인 온도값을 저장하는 단계; 및 상기 서브 온도 신호들의 펄스들을 상기 센싱 주기마다 카운팅하고 현재의 서브 온도 카운트값들을 저장하는 단계를 더 포함할 수 있다.
상기 시스템 온 칩의 동작을 제어하는 단계는, 적어도 하나의 온도 임계값, 상기 이전의 메인 온도값 및 상기 현재의 메인 온도값에 기초하여 인터럽트 신호를 발생하는 단계; 및 상기 인터럽트 신호 및 상기 현재의 서브 온도 카운트값들에 기초하여 상기 서브 블록들의 각각의 동작 속도를 조절하는 단계를 포함할 수 있다.
상기 서브 블록들의 각각의 동작 속도를 조절하는 단계는, 상기 서브 블록들의 각각의 전원 전압 및 각각의 동작 주파수 중 적어도 하나를 증가하거나 감소하는 단계를 포함할 수 있다.
상기 서브 블록들의 각각의 동작 속도를 조절하는 단계는, 상기 인터럽트 신호에 응답하여 상기 현재의 서브 온도 카운트값들의 크기를 비교하는 단계; 및 상기 현재의 서브 온도 카운트값들의 크기의 비교 결과에 기초하여 상기 서브 블록들의 각각의 동작 속도를 조절하는 단계를 포함할 수 있다.
상기 인터럽트 신호가 상기 메인 온도의 증가를 나타내는 경우에는 상기 현재의 서브 온도 카운트값이 큰 상기 서브 블록의 동작 속도를 우선적으로 감소하고, 상기 인터럽트 신호가 상기 메인 온도의 감소를 나타내는 경우에는 상기 현재의 서브 온도 카운트값이 작은 상기 서브 블록의 동작 속도를 우선적으로 증가할 수 있다.
상기 서브 블록들의 각각의 동작 속도를 조절하는 단계는, 상기 인터럽트 신호에 응답하여 상기 현재의 서브 온도 카운트값들의 산포도를 계산하는 단계; 및 상기 현재의 서브 온도 카운트값들의 산포도에 기초하여 상기 서브 블록들의 각각의 동작 속도를 조절하는 단계를 포함할 수 있다.
상기 인터럽트 신호를 발생하는 단계는, 상기 이전의 메인 온도값이 온도 상승 임계값보다 작고 상기 현재의 메인 온도값이 상기 온도 상승 임계값보다 큰 경우에 온도 상승 인터럽트 신호를 활성화하는 단계; 및 상기 이전의 메인 온도값이 온도 하강 임계값보다 크고 상기 현재의 메인 온도값이 상기 온도 하강 임계값보다 작은 경우에 온도 하강 인터럽트 신호를 활성화하는 단계를 포함할 수 있다.
상기 온도 하강 임계값은 상기 온도 상승 임계값보다 작을 수 있다.
상기 시스템 온 칩의 동작을 제어하는 단계는, 상기 현재의 메인 온도값과 최대 온도 임계값을 비교하는 단계: 및 상기 현재의 메인 온도값이 상기 최대 온도 임계값보다 큰 경우에 상기 시스템 온 칩에 인가되는 외부 전원 전압을 차단하는 단계를 포함할 수 있다.
상기 온도 관리 방법은, 온도에 무관한 기준 주파수를 갖는 기준 클록 신호를 상기 센싱 주기마다 카운팅하여 현재의 기준 카운트값을 저장하는 단계; 상기 현재의 서브 온도 카운트값들, 상기 현재의 기준 카운트값 및 상기 기준 주파수에 기초하여 상기 서브 온도들에 각각 비례하는 현재의 서브 온도 주파수들을 계산하는 단계; 및 상기 현재의 서브 온도 주파수들에 기초하여 현재의 서브 온도값들을 계산하는 단계를 더 포함할 수 있다.
상기 온도 관리 방법은, 상기 메인 센서에 인접하여 배치되는 부가적인 서브 센서를 이용하여 상기 메인 온도에 비례하는 주파수를 갖는 기준 펄스 신호를 발생하는 단계; 상기 기준 펄스 신호의 펄스들을 상기 센싱 주기마다 카운팅하여 현재의 기준 카운트값을 저장하는 단계; 및 상기 현재의 서브 온도 카운트값들, 상기 현재의 메인 온도값 및 상기 현재의 기준 카운트값에 기초하여 현재의 서브 온도값들을 결정하는 단계를 더 포함할 수 있다.
상기 일 목적을 달성하기 위해, 각각의 고유 기능에 의해 구분되고 독립적인 각각의 열원(heat source)으로서 작용하는 복수의 서브 블록들을 포함하는 시스템 온 칩으로서, 본 발명의 실시예들에 따른 시스템 온 칩은, 온도 정보에 기초하여 상기 시스템 온 칩의 동작을 제어하기 위한 온도 관리 신호를 발생하는 프로세서; 상기 온도 관리 신호에 응답하여 상기 시스템 온 칩의 전원 전압 및 동작 주파수 중 적어도 하나를 조절하는 전력 관리 유닛; 상기 시스템 온 칩의 전체적인 메인 온도에 상응하는 디지털 신호를 메인 온도 신호로서 발생하는 메인 센서; 상기 서브 블록들의 서브 온도들에 각각 비례하는 주파수들을 갖는 펄스 신호들을 서브 온도 신호들로서 발생하는 복수의 서브 센서들; 및 상기 메인 온도 신호 및 상기 서브 온도 신호들에 기초하여 상기 온도 정보를 제공하는 온도 관리 유닛을 포함한다.
상기 온도 관리 유닛은, 센싱 주기마다 상기 메인 온도 신호 및 상기 서브 온도 신호들을 샘플링하여 주기적으로 샘플링값들을 제공하는 온도 샘플링부; 상기 프로세서에서 제공되는 동작 제어 신호 및 상기 샘플링값들에 기초하여 동작 정보 및 상기 온도 정보를 저장하는 레지스터부; 상기 온도 정보에 기초하여 인터럽트 신호를 발생하는 인터럽트 발생부; 및 상기 동작 정보에 기초하여 상기 메인 센서 및 상기 서브 센서들을 제어하는 센서 제어부를 포함할 수 있다.
상기 온도 샘플링부는, 상기 메인 온도 신호를 상기 센싱 주기마다 래치하여 메인 온도값을 주기적으로 제공하는 래치부; 및 상기 서브 온도 신호들의 펄스들을 상기 센싱 주기마다 카운팅하여 서브 온도 카운트값들을 주기적으로 제공하는 복수의 서브 온도 카운터들을 포함할 수 있다.
상기 레지스터부는 상기 주기적으로 제공되는 메인 온도값 및 서브 온도 카운트값들에 기초하여 이전의 메인 온도값, 현재의 메인 온도값 및 현재의 서브 온도 카운트값들을 저장하고, 상기 인터럽트 발생부는 적어도 하나의 온도 임계값, 상기 이전의 메인 온도값 및 상기 현재의 메인 온도값에 기초하여 상기 인터럽트 신호를 발생할 수 있다.
상기 프로세서는, 상기 인터럽트 신호에 응답하여 상기 현재의 서브 온도 카운트값들의 크기를 비교하고, 상기 현재의 서브 온도 카운트값들의 크기의 비교 결과에 기초하여 상기 온도 관리 신호를 발생할 수 있다.
상기 프로세서는, 상기 인터럽트 신호에 응답하여 상기 현재의 서브 온도 카운트값들의 산포도를 계산하고, 상기 현재의 서브 온도 카운트값들의 산포도에 기초하여 상기 온도 관리 신호를 발생할 수 있다.
상기 인터럽트 발생부는, 상기 현재의 메인 온도값과 최대 온도 임계값을 비교하고, 상기 현재의 메인 온도값이 상기 최대 온도 임계값보다 큰 경우에 상기 시스템 온 칩에 인가되는 외부 전원 전압을 차단하기 위한 트리핑 신호를 더 발생할 수 있다.
상기 온도 샘플링부는 온도에 무관한 기준 주파수를 갖는 기준 클록 신호를 상기 센싱 주기마다 카운팅하여 기준 카운트값을 주기적으로 제공하는 기준 카운터를 더 포함하고, 상기 레지스터부는 상기 주기적으로 제공되는 기준 카운트값에 기초하여 현재의 기준 카운트값을 더 저장하고, 상기 프로세서는 상기 현재의 서브 온도 카운트값들, 상기 현재의 기준 카운트값 및 상기 기준 주파수에 기초하여 상기 서브 온도들에 각각 비례하는 현재의 서브 온도 주파수들을 계산하고, 상기 현재의 서브 온도 주파수들에 기초하여 현재의 서브 온도값들을 결정하고, 상기 현재의 서브 온도값들에 기초하여 상기 온도 관리 신호를 발생할 수 있다.
상기 메인 센서에 인접하여 배치되어 상기 메인 온도에 비례하는 주파수를 갖는 기준 펄스 신호를 발생하는 부가적인 서브 센서를 더 포함하고, 상기 온도 샘플링부는 상기 기준 펄스 신호의 펄스들을 상기 센싱 주기마다 카운팅하여 기준 카운트값을 주기적으로 제공하는 부가적인 카운터를 더 포함하고, 상기 레지스터부는 상기 주기적으로 제공되는 기준 카운트값에 기초하여 현재의 기준 카운트값을 더 저장하고, 상기 프로세서는 상기 현재의 서브 온도 카운트값들, 상기 현재의 메인 온도값 및 상기 현재의 기준 카운트값에 기초하여 현재의 서브 온도값들을 결정하고, 상기 현재의 서브 온도값들에 기초하여 상기 온도 관리 신호를 발생할 수 있다.
상기 시스템 온 칩은, 상기 시스템 온 칩이 집적되는 반도체 기판보다 높은 열전도율을 가지며 상기 서브 센서들의 각각을 상기 메인 센서와 열적으로 연결하는 복수의 히트 브리지들을 더 포함할 수 있다.
상기 일 목적을 달성하기 위해, 각각의 고유 기능에 의해 구분되고 독립적인 각각의 열원(heat source)으로서 작용하는 복수의 서브 블록들을 포함하는 시스템 온 칩의 온도 관리 회로로서, 본 발명의 실시예들에 따른 시스템 온 칩의 온도 관리 회로는, 상기 시스템 온 칩의 전체적인 메인 온도에 상응하는 디지털 신호를 메인 온도 신호로서 발생하는 메인 센서; 상기 서브 블록들의 서브 온도들에 각각 비례하는 주파수들을 갖는 펄스 신호들을 서브 온도 신호들로서 발생하는 복수의 서브 센서들; 및 상기 메인 온도 신호 및 상기 서브 온도 신호들에 기초하여 상기 시스템 온 칩의 온도 정보를 제공하는 온도 관리 유닛을 포함한다.
상기 메인 센서와 상기 서브 센서들은 상기 시스템 온 칩이 집적되는 반도체 기판에 함께 집적되는 온 칩 센서들일 수 있다.
상기 각각의 서브 센서는 상기 메인 센서보다 작은 점유 면적을 가질 수 있다.
상기 메인 센서는 상기 메인 온도에 비례하는 전압 신호 및 전류 신호 중 적어도 하나를 출력하는 온도 검출부 및 상기 온도 검출부의 출력을 디지털 신호로 변환하여 상기 메인 온도 신호를 발생하는 아날로그-디지털 컨버터를 포함하여 구현되고, 상기 각각의 서브 센서는 상기 각각의 서브 온도에 비례하는 동작 속도를 갖고 상기 각각의 서브 온도 신호를 출력하는 링 발진기를 포함하여 구현될 수 있다.
본 발명의 실시예들에 따른 시스템 온 칩의 온도 관리 방법은 시스템 온 칩의 전체적인 메인 온도를 모니터링하고, 메인 온도의 일정 변화가 검출된 경우에만 시스템 온 칩의 서브 블록들의 서브 온도들을 참조함으로써, 효율적으로 시스템 온 칩의 온도를 감시하고 제어할 수 있다.
본 발명의 실시예들에 따른 온도 관리 회로 및 이를 포함하는 시스템 온 칩은 펄스 신호들을 발생하는 작은 점유 면적을 갖는 서브 센서들을 이용함으로써 온도 관리 성능을 저하시키지 않으면서도 시스템 온 칩의 크기를 줄일 수 있고 시스템 온 칩의 설계시 라우팅의 제약을 감소할 수 있다.
도 1은 본 발명의 실시예들에 따른 시스템 온 칩의 온도 관리 방법을 나타내는 순서도이다.
도 2는 본 발명의 실시예들에 따른 시스템 온 칩의 온도 관리 회로의 레이아웃을 나타내는 도면이다.
도 3은 본 발명의 실시예들에 따른 시스템 온 칩의 온도 관리 방법을 나타내는 순서도이다.
도 4는 본 발명의 실시예들에 따른 온도 관리 회로를 포함하는 시스템 온 칩을 나타내는 블록도이다.
도 5는 본 발명의 실시예들에 따른 온도 관리 회로에 포함된 온도 관리 유닛을 나타내는 블록도이다.
도 6은 도 5의 온도 관리 유닛에 포함되는 온도 샘플링부의 일 예를 나타내는 블록도이다.
도 7은 본 발명의 실시예들에 따른 온도 관리 유닛의 동작을 나타내는 타이밍도이다.
도 8은 도 5의 온도 관리 유닛에 포함되는 레지스터부의 일부를 나타내는 도면이다.
도 9는 도 5의 온도 관리 유닛에 포함되는 인터럽트 발생부의 일 예를 나타내는 도면이다.
도 10은 본 발명의 실시예들에 따른 시스템 온 칩의 온도 관리 방법을 나타내는 순서도이다.
도 11 및 12는 히스테레시스 방식의 온도 관리를 설명하기 위한 도면들이다.
도 13은 본 발명의 실시예들에 따른 온도 관리 회로에 포함되는 메인 센서의 일 예를 나타내는 도면이다.
도 14는 도 13의 메인 센서에 포함되는 온도 검출부의 일 예를 나타내는 회로도이다.
도 15는 본 발명의 실시예들에 따른 온도 관리 회로에 포함되는 서브 센서의 일 예를 나타내는 도면이다.
도 16 및 17은 도 15의 서브 센서에 포함되는 인버터의 예들을 나타내는 도면들이다.
도 18, 19 및 20은 시스템 온 칩의 동작 속도를 조절하는 예들을 나타내는 도면들이다.
도 21은 도 5의 온도 관리 유닛에 포함되는 온도 샘플링부의 일 예를 나타내는 블록도이다.
도 22는 본 발명의 실시예들에 따른 온도 관리 유닛의 동작을 나타내는 타이밍도이다.
도 23은 본 발명의 실시예들에 따른 시스템 온 칩의 온도 관리 방법을 나타내는 순서도이다.
도 24는 본 발명의 실시예들에 따른 시스템 온 칩의 온도 관리 회로의 레이아웃을 나타내는 도면이다.
도 25는 도 24의 온도 관리 유닛에 포함되는 온도 샘플링부의 일 예를 나타내는 블록도이다.
도 26은 본 발명의 실시예들에 따른 온도 관리 유닛의 동작을 나타내는 타이밍도이다.
도 27은 본 발명의 실시예들에 따른 시스템 온 칩의 온도 관리 방법을 나타내는 순서도이다.
도 28은 본 발명의 실시예들에 따른 시스템 온 칩의 온도 관리 회로의 레이아웃을 나타내는 도면이다.
도 29는 도 28의 온도 관리 회로에 포함되는 히트 브리지의 일 예를 나타내는 도면이다.
도 30은 본 발명의 실시예들에 따른 시스템 온 칩을 전자 기기에 응용한 예를 나타내는 블록도이다.
도 31은 도 30의 전자 기기에서 사용되는 인터페이스의 일 예를 나타내는 블록도이다.
본문에 개시되어 있는 본 발명의 실시예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시예들에 한정되는 것으로 해석되어서는 아니 된다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위로부터 이탈되지 않은 채 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미이다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미인 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 실시예들에 따른 시스템 온 칩의 온도 관리 방법을 나타내는 순서도이다.
도 1을 참조하면, 메인 센서를 이용하여 시스템 온 칩의 전체적인 메인 온도에 상응하는 디지털 신호를 메인 온도 신호로서 발생한다(단계 S110). 복수의 서브 센서들을 이용하여 상기 시스템 온 칩의 서브 블록들의 서브 온도들에 각각 비례하는 주파수들을 갖는 펄스 신호들을 서브 온도 신호들로서 발생한다(단계 S120). 상기 메인 온도 신호 및 상기 서브 온도 신호들에 기초하여 상기 시스템 온 칩의 동작을 제어한다(단계 S200).
일반적으로 측정된 온도를 나타내는 디지털 신호를 제공하는 디지털 온도 센서는 비교적 점유 면적이 크고, 비교적 많은 인터페이스 신호들이 사용되므로 주변의 회로들이 상기 디지털 온도 센서를 우회하여 라우팅되어야 하기 때문에 칩 면적이 과도하게 증가하거나 레이아웃이 어려워지는 등의 단점이 있다. 본 발명의 실시예들에 따라서, 하나의 메인 센서만을 디지털 온도 센서로서 구현하고 나머지 서브 센서들은 비교적 작은 점유 면적과 적은 수의 신호 라인이 요구되는 펄스 센서들로 구현함으로써, 온도 관리 성능을 저하시키지 않으면서도 시스템 온 칩의 크기를 줄일 수 있고 시스템 온 칩의 설계시 라우팅의 제약을 감소할 수 있다.
도 2는 본 발명의 실시예들에 따른 시스템 온 칩의 온도 관리 회로의 레이아웃을 나타내는 도면이다.
도 2를 참조하면, 시스템 온 칩(10)의 온도 관리 회로는 온도 관리 유닛(TMU: temperature management unit or thermal management unit)(100), 메인 센서(MS; main sensor)(200) 및 복수의 서브 센서들(SS1,SS2,SS3,SS4: subsidiary sensors)(310, 320, 330, 340)을 포함한다. 도 2에는 편의상 4개의 서브 센서들만을 도시하였으나 서브 센서들의 개수는 시스템 온 칩(10)의 구성에 따라서 다양하게 변경될 수 있다. 온도 관리 회로 이외의 시스템 온 칩(10)의 다른 구성 요소들은 도시를 생략하였다.
시스템 온 칩(10)은 각각의 고유 기능에 의해 구분될 수 있는 복수의 서브 블록들(BLK1, BLK2, BLK3, BLK4)을 포함할 수 있다. 예를 들어, 서브 블록들(BLK1, BLK2, BLK3, BLK4)의 각각은 CPU(central processing unit)와 메모리 콘트롤러 등이 포함되는 코아 블록(CORE_BLK), 디스플레이 콘트롤러 블록(DISP_BLK), 파일 시스템 블록(FSYS_BLK), GPU(graphic processing unit) 블록(G3D_BLK), 이미지 신호 프로세서 블록(ISP_BLK), 멀티 포맷 코덱 블록(MFC_BLK) 등의 하나일 수 있다. 이러한 서브 블록들(BLK1, BLK2, BLK3, BLK4)은 각각 독립적인 열원으로서 작용한다. 따라서 시스템 온 칩(10)의 전체적인 온도 관리뿐만 아니라 서브 블록들(BLK1, BLK2, BLK3, BLK4)의 각각의 온도를 모니터링하고 제어하는 것이 요구된다.
메인 센서(200)는 시스템 온 칩(10)의 전체적인 메인 온도에 상응하는 디지털 신호를 메인 온도 신호(SMT)로서 발생한다. 서브 센서들(310, 320, 330, 340)은 시스템 온 칩(10)의 서브 블록들(BLK1, BLK2, BLK3, BLK4)의 서브 온도들에 각각 비례하는 주파수들을 갖는 펄스 신호들을 서브 온도 신호들(SPi)로서 발생한다. 온도 관리 유닛(100)은 메인 온도 신호(SMT) 및 서브 온도 신호들(SPi)에 기초하여 시스템 온 칩(10)의 온도 정보를 제공한다. 후술하는 바와 같이, 상기 온도 정보는 온도 관리 유닛(100)의 내부에 저장되고 시스템 온 칩 내의 프로세서에 제공될 수 있다. 온도 관리 유닛(100)은 상기 저장된 온도 정보에 기초하여 인터럽트 신호(INT)를 발생할 수 있으며, 상기 프로세서는 인터럽트 신호(INT) 및 상기 제공되는 온도 정보에 기초하여 시스템 온 칩(10)의 온도 분포를 분석하고 적절한 조치를 수행하기 위한 인터럽트 서비스 루틴(ISP: interrupt routine)을 실행할 수 있다.
메인 센서(200)와 서브 센서들(310, 320, 330, 340)은 시스템 온 칩(10)이 집적되는 반도체 기판에 함께 집적되는 온 칩 센서들일 수 있다. 온 칩 센서들의 출력 신호들은 측정하고자 하는 온도들을 정확하게 반영할 수 있을 뿐만 아니라 시스템의 전체적인 크기를 감소할 수 있다. 서브 센서들(310, 320, 330, 340)은 각 서브 블록들(BLK1, BLK2, BLK3, BLK4)의 내부에 집적된다. 메인 센서(200)는 시스템 온 칩(10)의 전체적인 메인 온도를 정확하게 반영할 수 있는 위치에 집적될 수 있다.
예를 들어, 메인 센서(200)와 각 서브 센서들(310, 320, 330, 340) 사이의 거리들의 편차가 최소가 되는 위치에 메인 센서(200)가 집적될 수 있다. 메인 센서(200)와 각 서브 센서들(310, 320, 330, 340) 사이의 열전도율들이 상이한 경우에는 이를 고려하여 메인 센서(200)의 위치를 결정할 수 있다. 시스템 온 칩(10)의 전체적인 열 방출을 위한 히트 스프레더가 구비되는 경우에는 상기 히트 스프레더에 근접한 위치에 메인 센서(200)가 집적될 수도 있다.
도 3은 본 발명의 실시예들에 따른 시스템 온 칩의 온도 관리 방법을 나타내는 순서도이다.
도 2 및 3을 참조하면, 먼저 온도 관리 유닛(TMU)을 초기화한다(단계 S100). 예를 들어, 시스템 온 칩 내의 프로세서로부터의 동작 제어 신호에 의해 온도 관리 유닛(TMU)을 인에이블 상태로 설정하고 동작에 필요한 정보를 온도 관리 유닛(TMU)에 저장하는 방식으로 온도 관리 유닛(TMU)이 초기화될 수 있다. 온도 관리 유닛(TMU)이 초기화되면 메인 센서(MS) 및 서브 센서들(SSi, i=1,2,3,4)이 인에이블되어 메인 온도 신호(SMT) 및 서브 온도 신호들(SPi)이 발생된다.
온도 관리 유닛(TMU)은 주기적으로 메인 온도 신호(SMT) 및 서브 온도 신호들(SPi)을 샘플링한다(단계 S220). 온도 관리 유닛(TMU)은 서브 온도 신호들(SPi)의 샘플링값들에 관계없이 메인 온도 신호(SMT)의 샘플링값이 인터럽트 조건을 만족하는지를 판단한다(단계 S240). 상기 인터럽트 조건은 시스템 온 칩(10)의 전체적인 메인 온도가 주목할 만한 변화가 있는지를 판단할 수 있도록 설정된다.
메인 온도 신호(SMT)가 인터럽트 조건을 만족하지 않는 경우(단계 S240; NO), 온도 관리 유닛(TMU)은 다음 주기의 메인 온도 신호(SMT)를 샘플링하고(단계 S220) 상기 다음 주기의 샘플링값이 인터럽트 조건을 만족하는지를 판단한다(단계 S240).
메인 온도 신호(SMT)가 인터럽트 조건을 만족하는 경우(단계 S240; YES), 온도 관리 유닛(TMU)은 인터럽트 신호(INT)를 발생한다(단계 S260). 인터럽트 신호(INT)를 발생한다는 것은 인터럽트 신호(INT)를 비활성화 상태에서 활성화 상태로 천이시키는 것을 의미할 수도 있다. 인터럽트 신호(INT)가 발생되면 서브 온도 신호(SPi)의 샘플링값들에 기초하여 인터럽트 서비스 루틴(ISR)을 실행한다(단계 S280). 인터럽트 서비스 루틴(ISR)은 서브 블록들(BLKi)들의 온도 분포를 분석하고 적절한 조치를 결정하기 위한 것으로서 소프트웨어, 하드웨어 또는 이들의 조합으로 구현될 수 있다. 예를 들어, 인터럽트 서비스 루틴(ISR)은 시스템 온 칩(10)의 전체적인 동작을 제어하는 프로세서에 의해 실행되는 프로그램일 수 있다.
이와 같이, 서브 온도 신호들(SPi)에 관계없이 메인 온도 신호(SMT)에 기초하여 시스템 온 칩(10)의 전체적인 메인 온도를 모니터링하고, 인터럽트 신호(INT)가 발생된 경우에만 서브 온도 신호들(SPi)을 고려함으로써 신속하고 효율적인 온도 관리가 수행될 수 있다.
서브 온도 신호(SPi)의 샘플링값들에 기초한 인터럽트 서비스 루틴(ISR)은 다음과 같이 실행될 수 있다.
일 실시예에서, 인터럽트 신호(INT)에 응답하여 현재의 서브 온도 카운트값들(CNTi_C)의 크기를 비교하고, 현재의 서브 온도 카운트값들(CNTi_C)의 크기의 비교 결과에 기초하여 서브 블록들(BLKi)의 각각의 동작 속도를 조절할 수 있다. 인터럽트 신호(INT)가 메인 온도의 증가를 나타내는 경우에는 현재의 서브 온도 카운트값(CNTi_C)이 큰 서브 블록(BLKi)의 동작 속도를 우선적으로 감소하고, 인터럽트 신호(INT)가 메인 온도의 감소를 나타내는 경우에는 현재의 서브 온도 카운트값(CNTi_C)이 작은 서브 블록(BLKi)의 동작 속도를 우선적으로 증가할 수 있다.
예를 들어, 온도 상승 이벤트의 경우에 현재의 서브 온도 카운트값(CNTi_C)이 가장 큰 서브 블록(BLKi)의 전원 전압 및/또는 동작 주파수를 감소하거나, 온도 하강 이벤트의 경우에 현재의 서브 온도 카운트값(CNTi_C)이 가장 작은 서브 블록(BLKi)의 전원 전압 및/또는 동작 주파수를 증가할 수 있다.
다른 실시예에서, 인터럽트 신호(INT)에 응답하여 현재의 서브 온도 카운트값들(CNTi_C)의 산포도를 계산하고, 상기 산포도에 기초하여 서브 블록들(BLKi)의 각각의 동작 속도를 조절할 수 있다. 상기 산포도는 현재의 서브 온도 카운트값들(CNTi_C)의 평균(m) 및 표준편차(SD)를 포함할 수 있다. 예를 들어, 온도 상승 이벤트의 경우에, m + a1*SD보다 큰 현재의 서브 온도 카운트값(CNTi_C)에 해당하는 모든 서브 블록들(BLKi)의 전원 전압 및/또는 동작 주파수를 감소할 수 있고, 온도 하강 이벤트의 경우에 m - a2*SD보다 작은 현재의 서브 온도 카운트값(CNTi_C)에 해당하는 모든 서브 블록들(BLKi)의 전원 전압 및/또는 동작 주파수를 증가할 수 있다. 여기서 a1 및 a2는 상수값으로서 본 발명의 실시예들에 따른 온도 관리 회로(TMU)가 시스템 온 칩에 집적된 후에 실제 동작 환경에서 실험에 의해 결정될 수 있다.
도 4는 본 발명의 실시예들에 따른 온도 관리 회로를 포함하는 시스템 온 칩을 나타내는 블록도이다.
도 4를 참조하면, 시스템 온 칩(20)은 온도 관리 유닛(TMU)(100), 메인 센서(MS)(200), 복수의 서브 센서들(SS1, SS2, SS3)(310, 320, 330), 프로세서(400) 및 전력 관리 유닛(PMU: power management unit)을 포함한다. 도 4에는 편의상 4개의 서브 센서들만을 도시하였으나 서브 센서들의 개수는 시스템 온 칩(20)의 구성에 따라서 다양하게 변경될 수 있다. 도 4에 도시된 각 구성 요소들의 위치는 도시의 편의를 위한 것이며 시스템 온 칩(20)의 다른 구성 요소들은 도시를 생략하였다.
프로세서(400)는 인터럽트 신호(INT) 및 온도 정보(DTI)에 기초하여 시스템 온 칩(20)의 동작을 제어하기 위한 온도 관리 신호(TM)를 발생한다. 온도 정보(DTI)는 도 8을 참조하여 후술하는 바와 같이 온도 관리 유닛(100)의 레지스터부로부터 제공되는 현재의 서브 온도 카운트값들(CNT1_C, CNT2_C, CNT3_C), 현재의 메인 온도값(MT_P), 및/또는 이전의 메인 온도값(MT_P)을 포함할 수 있다.
전력 관리 유닛(500)은 온도 관리 신호(TM)에 응답하여 시스템 온 칩(20)의 전원 전압 및 동작 주파수 중 적어도 하나를 조절한다. 전력 관리 유닛(500)은 전압 조절기 및/또는 클록 발생기를 그 내부에 포함할 수도 있고, 전력 관리 유닛(500) 외부의 전압 조절기 및/또는 클록 발생기를 제어하기 위한 신호를 발생하기 위한 구성을 갖는 것으로 해석될 수도 있다.
전술한 바와 같이, 메인 센서(200)는 시스템 온 칩(20)의 전체적인 메인 온도에 상응하는 디지털 신호를 메인 온도 신호(SMT)로서 발생한다. 서브 센서들(SSi)은 시스템 온 칩(20)의 서브 블록들의 서브 온도들에 각각 비례하는 주파수들을 갖는 펄스 신호들을 서브 온도 신호들(SPi)로서 발생한다.
온도 관리 유닛(100)은 메인 온도 신호(SMT) 및 서브 온도 신호들(SPi)에 기초하여 온도 정보(DTI) 및 인터럽트 신호(INT)를 제공한다. 온도 관리 유닛(100)은 프로세서(400)로부터 제공되는 동작 제어 신호(DOC)에 의해 초기화되고 제어될 수 있다. 일 실시예에서, 온도 관리 유닛(100)은 특정 조건을 만족하는 경우 트리핑 신호(TRP)를 발생할 수 있으며, 전력 관리 유닛(500)은 트리핑 신호(TRP)에 응답하여 시스템 온 칩(20)에 인가되는 외부 전원 전압을 차단할 수 있다.
도 4에는 인터럽트 신호(INT)가 직접 프로세서(400)에 제공되는 실시예를 도시하였으나, 다른 실시예에서 시스템 온 칩(20)은 인터럽트 콘트롤러를 더 포함하고 온도 관리 유닛(100)에서 발생된 인터럽트 신호(INT)는 상기 인터럽트 콘트롤러로 제공될 수 있다. 상기 인터럽트 콘트롤러는 온도 관리 유닛(100)에서 발생된 인터럽트를 포함하여 다수의 인터럽트들을 제어하고, 가장 우선순위가 높은 인터럽트를 프로세서(400)에 전달할 수 있다.
도 4에 도시하지는 않았으나, 도 21, 22 및 23을 참조하여 후술하는 바와 같이 온도 관리 유닛(100)은 기준 클록 신호(RCLK)를 수신할 수 있다. 또한 도 24, 25, 26 및 27을 참조하여 후술하는 바와 같이, 시스템 온 칩(20)은 메인 센서(MS)에 인접하여 배치되는 부가적인 서브 센서(AS)를 더 포함할 수 있다.
시스템 온 칩(20)은 전기 퓨즈 롬(EFROM: electrical fuse ROM)(600)을 더 포함할 수 있다. 시스템 온 칩(20)이 집적된 후의 테스트를 통하여 실제 온도 측정시의 오차 등을 수정하기 위한 캘리브레이션 정보를 구하여 전기 퓨즈 롬(600)에 저장할 수 있다. 예를 들어, 상기 저장된 캘리브레이션 정보에 기초하여 후술하는 온도 변화의 검출을 위한 온도 임계값들을 보정할 수 있다.
도 5는 본 발명의 실시예들에 따른 온도 관리 회로에 포함된 온도 관리 유닛을 나타내는 블록도이다.
도 5를 참조하면, 온도 관리 유닛(100)은 센서 제어부(sensor controller)(120), 레지스터부(registor unit)(140), 온도 샘플링부(temperature sampler)(160) 및 인터럽트 발생부(interrupt generator)(180)를 포함하여 구현될 수 있다.
온도 샘플링부(160)는 센싱 주기(sensing interval)마다 메인 온도 신호(SMT) 및 서브 온도 신호들(SPi)을 샘플링하여 주기적으로 샘플링값들(LAT, CNTi)을 제공한다. 센싱 주기 또는 샘플링 주기는 센서 제어부(120)로부터 제공되는 센싱 개시 신호(sensing-start signal)(SENS) 및 센싱 종료 신호(sensing-done signal)(SEND)의 활성화 타이밍들의 간격에 해당할 수 있다.
레지스터부(140)는 도 4의 프로세서(400)에서 제공되는 동작 제어 신호(DOC) 및 샘플링값들(LAT, CNTi)에 기초하여 동작 정보 및 온도 정보(DTI)를 저장한다. 온도 정보(DTI)는 도 8을 참조하여 후술하는 바와 같이 레지스터부(140)에 저장되는 현재의 서브 온도 카운트값들(CNT1_C, CNT2_C, CNT3_C), 현재의 메인 온도값(MT_P), 및/또는 이전의 메인 온도값(MT_P)을 포함할 수 있다. 인터럽트 신호(INT)가 발생된 경우 프로세서(400)는 온도 정보(DTI)를 수신하여 전술한 인터럽트 서비스 루틴(ISR)을 실행할 수 있다.
레지스터부(140)에 저장되는 동작 정보는 온도 관리 유닛(100)의 인에이블 상태값(enable status value), 인터럽트 상태값(interrupt status value), 센싱 주기값, 적어도 하나의 온도 임계값, 메인 센서(200) 및 서브 센서들(310, 320, 330)의 제어값 등을 포함할 수 있다. 예를 들어, 센싱 제어부(120)에서 제공되는 센싱 개시 신호(SENS) 및 센싱 종료 신호(SEND)의 활성화 타이밍들은 상기 동작 정보에 포함된 센싱 주기값에 기초하여 결정될 수 있다.
인터럽트 발생부(180)는 상기 온도 정보에 기초하여 인터럽트 신호(INT)를 발생한다. 예를 들어, 인터럽트 발생부(180)는 레지스터부(140)로부터 적어도 하나의 온도 임계값(TH), 현재의 메인 온도값(MT_C) 및 이전의 메인 온도값(MT_P)을 수신하고, 이에 기초하여 메인 온도의 변화를 검출할 수 있다. 인터럽트 발생부(180)는 상기 임계값(TH)에 상응하는 메인 온도의 변화가 검출된 경우 인터럽트 신호(INT)를 발생하고 인터럽트 상태(INT_STS)를 레지스터부(140)에 저장할 수 있다.
프로세서(400)는 상기 검출된 메인 온도의 변화 및 서브 온도 신호들(SPi)에 기초하여 전술한 인터럽트 서비스 루틴(ISR)을 실행함으로써 시스템 온 칩의 전체적인 동작 및 서브 블록들의 개별적인 동작 중 적어도 하나를 제어할 수 있다. 예를 들어, 프로세서(400)는 인터럽트 신호(INT)) 및 현재의 서브 온도 카운트값들(CNTi_C)에 기초하여 인터럽트 서비스 루틴(ISR)을 실행할 수 있다.
센서 제어부(120)는 레지스터부(140)에 저장된 상기 동작 정보에 기초하여 메인 센서(200) 및 서브 센서들(310, 320, 330)을 제어한다. 예를 들어, 센서 제어부(120)는 순차적으로 정해진 상태를 천이하면서 동작하는 유한 상태 머신(FSM: finite state machine)을 포함하여 구현될 수 있다.
상기 유한 상태 머신의 동작의 개시 및 종료는 프로세서(400)에 의해 레지스터부(140)의 인에이블 상태값을 저장함으로써 결정될 수 있다. 상기 유한 상태 머신은 통상 아이들(idle) 상태에 있다가, 프로세서(400)에 의해 인에이블 상태 레지스터에 인에이블 값이 저장되면 메인 센서(MS) 및 서브 센서들(SSi)로 인가되는 센싱 인에이블 신호(ENS)를 활성화한다. 이후 상기 유한 상태 머신은 레지스터부(140)의 센싱 주기값에 기초하여 정해진 타이밍에 의해 센싱 개시 신호(SENS) 및 센싱 종료 신호(SEND)를 주기적으로 활성화한다. 프로세서(400)에 의해 인에이블 상태 레지스터에 디스에이블 값이 저장되면 상기 유한 상태 머신은 동작을 종료하고 아이들 상태로 진입한다.
도 6은 도 5의 온도 관리 유닛에 포함되는 온도 샘플링부의 일 예를 나타내는 블록도이다.
도 6을 참조하면, 온도 샘플링부(160a)는 래치부(168) 및 복수의 서브 온도 카운터들(161, 162, 163)을 포함한다.
래치부(168)는 메인 온도 신호(SMT)를 센싱 주기마다 래치하여 메인 온도값(LAT)을 주기적으로 제공한다. 전술한 바와 같이 상기 센싱 주기는 센싱 개시 신호(SENS) 및 센싱 종료 신호(SEND)의 활성화 타이밍들에 의해 결정될 수 있다. 서브 온도 카운터들(161, 162, 163)은 서브 온도 신호들(SP1, SP2, SP3)의 펄스들을 상기 센싱 주기마다 카운팅하여 서브 온도 카운트값들(CNT1, CNT2, CNT3)을 주기적으로 제공한다. 메인 온도값(LAT) 및 서브 온도 카운트값들(CNT1, CNT2, CNT3)은 레지스터부(140)로 제공된다. 메인 온도값(LAT) 및 서브 온도 카운트값들(CNT1, CNT2, CNT3)의 저장에 대해서는 도 8을 참조하여 후술한다.
도 6에는 3개의 서브 온도 카운터들을 도시하였으나, 서브 센서들의 개수는 시스템 온 칩의 구성에 따라 다양하게 변경될 수 있으며 이에 따라서 서브 온도 카운터들의 개수도 변경될 수 있다.
도 7은 본 발명의 실시예들에 따른 온도 관리 유닛의 동작을 나타내는 타이밍도이다.
도 7을 참조하면, 온도 관리 유닛(TMU)이 초기화되어 시간 t1에서 센싱 인에이블 신호(ENS)가 활성화되고, 이에 응답하여 메인 센서(MS)는 메인 온도 신호(SMT)를 발생하고 서브 센서들(SS1~SSk)은 서브 온도 신호들(SP1~SPk)을 발생한다. 메인 온도 신호(SMT)는 일정한 주기마다 측정된 메인 온도의 디지털 값들(DGT1, DGT2, DGT3)을 나타낸다. 디지털 값들(DGT1, DGT2, DGT3)의 측정 주기는 메인 센서(MS)의 구성 및/또는 센서 제어부(120)의 제어에 의해 결정될 수 있다. 서브 온도 신호들(SP1~SPk)은 서브 블록들(BLK1~BLKk)의 서브 온도들에 각각 비례하는 주파수들을 갖는 펄스 신호들의 형태로 제공된다.
시간 t2에서 센싱 개시 신호(SENS)가 활성화되면, 온도 샘플링부(160)에 포함된 래치부(168) 및 서브 온도 카운터들(161, 162, 163)이 리셋된다. 리셋 주기(tRS)가 경과하여 시간 t3에서 서브 온도 카운터들(161, 162, 163)의 카운팅 동작이 시작된다. 카운팅 주기(tCP)가 경과하여 시간 t4에서 센싱 종료 신호(SEND)가 활성화되면 래치부(168)의 래치 동작이 수행되고 샘플링된 제1 메인 온도값(LAT1)이 레지스터부(140)로 제공된다. 한편 시간 t4에서 서브 온도 카운터들(161, 162, 163)의 카운팅 동작이 종료되고 샘플링된 제1 서브 온도 카운트값들(CNT11~CNTk1)이 레지스터부(140)로 제공된다.
출력 주기(tOUT)가 경과하여 센싱 개시 신호(SENS)가 다시 활성화되면 전술한 리셋 동작, 카운팅 동작, 샘플링 및 출력 동작이 반복되어 래치부(168)는 제2 메인 온도값(LAT2)을 출력하고 서브 온도 카운터들(161, 162, 163)은 제2 서브 온도 카운트값들(CNT12~CNTk2)을 출력한다.
이와 같이 센싱 주기(tSI)마다 메인 온도 신호(SMT) 및 서브 온도 신호들(SP1~SPk)이 샘플링되어 샘플링값들이 주기적으로 레지스터부(140)로 제공될 수 있다.
도 8은 도 5의 온도 관리 유닛에 포함되는 레지스터부의 일부를 나타내는 도면이다.
도 8에는 온도 샘플링부(160)로부터 제공되는 샘플링값들(LAT, CNT1, CNT2, CNT3)을 저장하기 위한 레지스터들만(RG1~RG5)이 도시되어 있으며, 그 밖의 동작 정보 등을 저장하는 레지스터들은 도시를 생략하였다.
도 8을 참조하면, 레지스터부(140a)는 주기적으로 제공되는 메인 온도값(LAT)을 순차적으로 저장하기 위한 제1 레지스터(RG1)와 제2 레지스터(RG2), 주기적으로 제공되는 서브 온도 카운트값들(CNT1, CNT2, CNT3)을 저장하기 위한 제3, 제4 및 제5 레지스터들(RG3, RG4, RG5)을 포함할 수 있다.
센싱 주기마다 제2 레지스터(RG2)의 값은 제1 레지스터(RG1)의 값으로 갱신되고 제1 레지스터(RG1)의 값은 새로 입력된 메인 온도값(LAT)으로 갱신된다. 이와 같이 제1 레지스터(RG1) 및 제2 레지스터(RG2)는 메인 온도값(LAT)을 순차적으로 저장하기 위하여 쉬프트 레지스터로 구현될 수 있다. 제3, 제4 및 제5 레지스터들(RG3, RG4, RG5)들은 센싱 주기마다 새로 입력된 서브 온도 카운트값들(CNT1, CNT2, CNT3)로 각각 갱신된다.
결과적으로 제1 레지스터(RG1)는 현재의 메인 온도값(MT_C)을 저장하고 출력하고, 제2 레지스터(RG2)는 이전의 메인 온도값(MT_P)을 저장하여 출력하고, 제3, 제4 및 제5 레지스터들(RG3, RG4, RG5)은 현재의 서브 온도 카운트값들(CNT1_C, CNT2_C, CNT3_C)을 각각 저장하여 출력할 수 있다.
도 8에는 2개의 메인 온도값들을 순차적으로 저장하기 위한 2개의 레지스터들(RG1, RG2)을 도시하였으나, 더 많은 개수의 메인 온도값들을 순차적으로 저장하기 위한 3개 이상의 레지스터들이 직렬로 연결될 수 있다. 또한, 현재의 서브 온도 카운트값들(CNTi_C)을 제공하는 레지스터들의 개수는 서브 센서들의 개수에 따라 변경될 수 있다.
도 8에 도시하지는 않았으나, 도 21, 22 및 23을 참조하여 후술하는 바와 같이 레지스터부(140a)는 기준 클록 신호(RCLK)의 펄스들을 카운팅한 값을 저장하기 위한 레지스터 및/또는 도 24, 25, 26 및 27을 참조하여 후술하는 바와 같이 기준 펄스 신호(SRP)의 펄스들을 카운팅한 값을 저장하기 위한 레지스터를 더 포함할 수 있다.
도 9는 도 5의 온도 관리 유닛에 포함되는 인터럽트 발생부의 일 예를 나타내는 도면이다.
도 9를 참조하면, 인터럽트 발생부(180)는 온도 정보 중에서 현재의 메인 온도값(MT_C) 및 이전의 메인 온도값(MT_P)을 수신하고 동작 정보 중에서 제1 내지 제3 온도 상승 임계값들(TH_R1, TH_R2, TH_R3) 및 제1 및 제2 온도 하강 임계값들(TH_F1, TH_F2)을 레지스터부(140)로부터 수신한다. 인터럽트 발생부(180)는 수신된 값들에 기초하여 인터럽트 조건이 만족되었는지를 판단하고 인터럽트 신호(INT)를 활성화한다. 제3 온도 상승 임계값(TH_R3)은 제2 온도 상승 임계값(TH_R2)보다 크고 제2 온도 상승 임계값(TH_R2)은 제1 온도 상승 임계값(TH_R1)보다 크도록 설정될 수 있다. 제2 온도 하강 임계값(TH_F2)은 제1 온도 하강 임계값(TH_F1)보다 크도록 설정될 수 있다.
인터럽트 발생부(180)는 제1 내지 제5 비교기(COM)들(181, 182, 183, 184, 185) 및 제1 내지 제3 논리합 게이트들(OR logic gates)(186, 187, 188)을 포함하여 구현될 수 있다. 비교기들의 개수는 설정된 온도 임계값들의 개수에 따라 변경될 수 있다.
제1 비교기(181)는 현재의 메인 온도값(MT_C) 및 제3 온도 상승 임계값(TH_R3), 즉 최대 온도 임계값에 기초하여 트리핑 신호(TRP)를 발생한다. 예를 들어, 제1 비교기(181)는 현재의 메인 온도값(MT_C)이 제3 온도 상승 임계값(TH_R3)보다 큰 경우에 트리핑 신호(TRP)를 논리 하이 레벨로 활성화할 수 있다. 도 4를 참조하여 설명한 바와 같이, 전력 관리 유닛(500)은 트리핑 신호(TRP)에 응답하여 시스템 온 칩(20)에 인가되는 외부 전원 전압을 차단할 수 있다.
제2 비교기(182)는 현재의 메인 온도값(MT_C), 이전의 메인 온도값(MT_P) 및 제2 온도 상승 임계값(TH_R2)에 기초하여 제2 온도 상승 인터럽트 신호(INT_R2)를 발생한다. 예를 들어, 제2 비교기(182)는 이전의 메인 온도값(MT_P)이 제2 온도 상승 임계값(TH_R2)보다 작고 현재의 메인 온도값(MT_C)이 제2 온도 상승 임계값(TH_R2)보다 큰 경우에 제2 온도 상승 인터럽트 신호(INT_R2)를 논리 하이 레벨로 활성화할 수 있다. 제3 비교기(183)는 현재의 메인 온도값(MT_C), 이전의 메인 온도값(MT_P) 및 제1 온도 상승 임계값(TH_R1)에 기초하여 제1 온도 상승 인터럽트 신호(INT_R1)를 발생한다. 예를 들어, 제3 비교기(183)는 이전의 메인 온도값(MT_P)이 제1 온도 상승 임계값(TH_R1)보다 작고 현재의 메인 온도값(MT_C)이 제1 온도 상승 임계값(TH_R1)보다 큰 경우에 제1 온도 상승 인터럽트 신호(INT_R1)를 논리 하이 레벨로 활성화할 수 있다.
제4 비교기(184)는 현재의 메인 온도값(MT_C), 이전의 메인 온도값(MT_P) 및 제2 온도 하강 임계값(TH_F2)에 기초하여 제2 온도 하강 인터럽트 신호(INT_F2)를 발생한다. 예를 들어, 제4 비교기(184)는 이전의 메인 온도값(MT_P)이 제2 온도 하강 임계값(TH_F2)보다 크고 현재의 메인 온도값(MT_C)이 제2 온도 하강 임계값(TH_F2)보다 작은 경우에 제2 온도 하강 인터럽트 신호(INT_F2)를 논리 하이 레벨로 활성화할 수 있다. 제5 비교기(185)는 현재의 메인 온도값(MT_C), 이전의 메인 온도값(MT_P) 및 제1 온도 하강 임계값(TH_F1)에 기초하여 제1 온도 하강 인터럽트 신호(INT_R1)를 발생한다. 예를 들어, 제5 비교기(185)는 이전의 메인 온도값(MT_P)이 제1 온도 하강 임계값(TH_R1)보다 크고 현재의 메인 온도값(MT_C)이 제1 온도 하강 임계값(TH_R1)보다 작은 경우에 제1 온도 하강 인터럽트 신호(INT_R1)를 논리 하이 레벨로 활성화할 수 있다.
제1 논리합 게이트(186)는 제1 온도 상승 인터럽트 신호(INT_R1) 및 제2 온도 상승 인터럽트 신호(INT_R2)를 논리합 연산하여 온도 상승 인터럽트 신호(INT_R)를 발생한다. 제2 논리합 게이트(187)는 제1 온도 하강 인터럽트 신호(INT_F1) 및 제2 온도 하강 인터럽트 신호(INT_F2)를 논리합 연산하여 온도 하강 인터럽트 신호(INT_R)를 발생한다. 제3 논리합 게이트(188)는 온도 상승 인터럽트 신호(INT_R) 및 온도 하강 인터럽트 신호(INT_F)를 논리합 연산하여 인터럽트 신호(INT)를 발생한다.
결과적으로, 제1 온도 상승 인터럽트 신호(INT_R1)의 활성화는 메인 온도가 제1 온도 상승 임계값(TH_R1)을 넘어서 증가함을 나타내고 제2 온도 상승 인터럽트 신호(INT_R2)의 활성화는 메인 온도가 제2 온도 상승 임계값(TH_R2)을 넘어서 증가함을 나타낸다. 마찬가지로 제1 온도 하강 인터럽트 신호(INT_F1)의 활성화는 메인 온도가 제1 온도 하강 임계값(TH_F1)을 넘어서 감소함을 나타내고 제2 온도 하강 인터럽트 신호(INT_F2)의 활성화는 메인 온도가 제2 온도 하강 임계값(TH_F2)을 넘어서 감소함을 나타낸다. 온도 상승 인터럽트 신호(INT_R)의 활성화는 적어도 하나의 온도 상승 이벤트가 발생했음을 나타내고, 온도 하강 인터럽트 신호(INT_F)의 활성화는 적어도 하나의 온도 하강 이벤트가 발생했음을 나타낸다. 인터럽트 신호(INT)의 활성화는 온도 상승 이벤트들 및 온도 하강 이벤트들 중에서 적어도 하나의 이벤트가 발생했음을 나타낸다.
온도 상승 인터럽트 신호들(INT_R1, INT_R2) 및 온도 하강 인터럽트 신호들(INT_F1, INT_F2)의 논리 레벨값들은 도 5에서 설명한 인터럽트 상태(INT_STS)로서 레지스터부(140)에 제공될 수 있다.
일 실시예에서, 프로세서(400)에는 인터럽트 신호(INT)만이 제공되고, 프로세서(400)는 인터럽트 신호(INT)가 활성화되면 레지스터부(140)에 저장된 메인 온도값들(MT_P, MT_C) 및/또는 인터럽트 상태(INT_STS)를 참조하여 어떠한 온도 변화 이벤트가 발생하였는지를 판단할 수 있다.
다른 실시예에서, 온도 상승 인터럽트 신호들(INT_R1, INT_R2) 및 온도 하강 인터럽트 신호들(INT_F1, INT_F2)이 직접 프로세서(400)에 제공될 수 있다. 이 경우 프로세서(400)는 인터럽트 신호(INT)가 활성화되면 레지스터부(140)에 저장된 메인 온도값들(MT_P, MT_C) 및/또는 인터럽트 상태(INT_STS)를 참조함이 없이 어떠한 온도 변화 이벤트가 발생하였는지를 판단할 수 있다.
도 10은 본 발명의 실시예들에 따른 시스템 온 칩의 온도 관리 방법을 나타내는 순서도이다.
도 4 내지 10을 참조하면, 먼저 온도 관리 유닛(TMU)을 초기화한다(단계 S101). 예를 들어, 프로세서(400)로부터의 동작 제어 신호(DOC)에 의해 온도 관리 유닛(TMU)의 인에이블 상태 레지스터에 인에이블 값을 저장하고 동작에 필요한 정보를 온도 관리 유닛(TMU)에 저장하는 방식으로 온도 관리 유닛(TMU)이 초기화될 수 있다. 온도 관리 유닛(TMU)이 초기화되면 메인 센서(MS) 및 서브 센서들(SSi)이 인에이블되어 메인 온도 신호(SMT) 및 서브 온도 신호들(SPi)이 발생된다.
온도 관리 유닛(TMU)의 온도 샘플링부(160)는 주기적으로 메인 온도 신호(SMT) 및 서브 온도 신호들(SPi)을 샘플링하고(단계 S221) 샘플링값들(LAT, CNTi)을 제공한다. 레지스터부(140)는 샘플링값들(LAT, CNTi)에 기초하여 이전의 메인 온도값(MT_P), 현재의 메인 온도값(MT_C) 및 현재의 서브 온도 카운트값들(CNTi_C)을 저장한다(단계 S231).
인터럽트 발생부(180)는 현재의 메인 온도값(MT_C), 이전의 메인 온도값(MT_P) 및 온도 임계값들(TH_Ri, TH_Fi)들을 비교하여(단계 S241, S242, S243) 인터럽트 조건이 만족되는지를 판단한다. 인터럽트 발생부(180)는 현재의 메인 온도값(MT_C)이 최대 온도 임계값(TH_RMAX)보다 큰 경우에(단계 S241: YES) 트리핑 신호(TRP)를 활성화한다(단계 S261). 인터럽트 발생부(180)는 이전의 메인 온도값(MT_P)이 온도 상승 임계값(TH_Ri)보다 작고 현재의 메인 온도값(MT_C)이 온도 상승 임계값(TH_Ri)보다 큰 경우에(단계 S242: YES) 온도 상승 인터럽트 신호(INT_Ri)를 활성화한다(단계 S262). 인터럽트 발생부(180)는 이전의 메인 온도값(MT_P)이 온도 하강 임계값(TH_Fi)보다 크고 현재의 메인 온도값(MT_C)이 온도 하강 임계값(TH_Fi)보다 작은 경우에(단계 S243: YES) 온도 하강 인터럽트 신호(INT_Fi)를 활성화한다(단계 S263).
전술한 바와 같이, 트리핑 신호(TRP)가 활성화되면 시스템 온 칩(20)에 공급되는 외부 전원 전압이 차단되고 온도 관리도 종료된다. 온도 상승 인터럽트 신호(INT_Ri) 또는 온도 하강 인터럽트 신호(INT_Fi)가 활성화되면, 프로세서(400)는 도 3을 참조하여 전술한 인터럽트 서비스 루틴(ISR)을 실행한다(단계 S281).
도 10에는 비교 단계들(S241, S242, S243)이 순차적으로 수행되는 예를 도시하였으나, 도 9에 예시한 인터럽트 발생부(180)를 이용하여 비교 단계들(S241, S242, S243)이 동시에 수행될 수도 있다.
도 11 및 12는 히스테레시스 방식의 온도 관리를 설명하기 위한 도면들이다.
본 발명의 실시예들에 따른 온도 관리 방법은 DVFS(dynamic voltage and frequency scaling) 방식으로 수행될 수 있다. 본래 DVFS 방식은 프로세서의 동작 상태에 따라서 전압 및/또는 동작 주파수를 동적으로 변화시키는 방식을 말하지만, 본 실시예들에 따른 온도 관리 방법에서는 시스템 온 칩의 전체 온도 또는 각 서브 블록의 서브 온도에 따라서 시스템 온 칩 또는 각 서브 블록의 전압 및/또는 동작 주파수를 동적으로 변화시키는 것을 말한다. 실시예에 따라서, 온도 및 프로세서의 동작 상태(즉, 작업 부하(workload))를 연계하여 DVFS를 수행할 수도 있다.
도 11을 참조하면, 상대적으로 낮은 전력 레벨(L1)에서 상대적으로 높은 전력 레벨(L2)로의 상승(UP)은 온도가 점차 감소하여 온도 하강 임계값(TH_F)보다 작게 되는 시점에서 수행된다. 온도가 비교적 낮은 경우에는 동작 주파수 및/또는 전원 전압을 증가시켜 시스템 온 칩 또는 각 서브 블록의 동작 속도의 증가에 따른 성능 향상을 도모할 수 있다.
상대적으로 높은 전력 레벨(L2)에서 상대적으로 낮은 전력 레벨(L1)로의 하강(DOWN)은 온도가 점차 증가하여 온도 상승 임계값(TH_F)보다 크게 되는 시점에서 수행된다. 온도가 상대적으로 높은 경우에는 동작 주파수 및/또는 전원 전압을 감소시켜 시스템 온 칩 또는 각 서브 블록의 오작동 방지를 도모할 수 있다.
히스테레시스 방식의 온도 관리는 도 11에 도시된 바와 같이, 전력 레벨의 상승 기준이 되는 온도 하강 임계값(TH_Fi)을 전력 레벨의 하강 기준이 되는 온도 상승 임계값(TH_Ri)보다 작게 설정함으로써 수행될 수 있다. 온도 하강 임계값(TH_Fi)과 온도 상승 임계값(TH_Ri)의 차이가 너무 작으면 전력 레벨의 빈번한 변경에 의해 시스템 온 칩의 동작이 불안정하게 되고, 차이가 너무 크면 동작 안정성은 확보되지만 동작 속도가 저하된다. 따라서 시스템 온 칩의 특성 등을 고려하여 온도 하강 임계값(TH_Fi)과 온도 상승 임계값(TH_Ri)이 적절하게 결정될 수 있다.
도 12에는 시간의 경과에 따른 온도 변화의 일 예가 도시되어 있다. 도 12의 각 점들은 센싱 주기(tSI) 마다 샘플링된 메인 온도값들을 나타낸다. 도 11에서 설명한 바와 같이 제1 온도 하강 임계값(TH_F1)은 제1 온도 상승 임계값(TH_R1)보다 작은 값으로 설정되고, 제2 온도 하강 임계값(TH_F2)은 제2 온도 상승 임계값(TH_R2)보다 작은 값으로 설정되어 히스테레시스 방식의 온도 관리가 수행될 수 있다.
시간 t1과 t2 사이에서 메인 온도값이 제1 온도 상승 임계값(TH_R1)을 통과하여 증가하므로 제1 온도 상승 인터럽트 신호(INT_R1)가 활성화되고, 시간 t4과 t5 사이 및 시간 t10과 t11 사이에서 메인 온도값이 제2 온도 상승 임계값(TH_R2)을 통과하여 증가하므로 제2 온도 상승 인터럽트 신호(INT_R2)가 활성화된다.
히스테레시스 방식에 의해 온도 하강 임계값이 온도 상승 임계값보다 작게 설정되므로, 예를 들어, 시간 t5 및 시간 t6 사이에서 메인 온도값이 제2 상승 온도값(TH_R2)을 통과하여 감소하는 경우에는 온도 하강 인터럽트가 발생되지 않는다. 시간 t8 및 시간 t9 사이에서 메인 온도값이 제2 하강 온도값(TH_F2)을 통과하여 감소하는 경우에 제2 온도 하강 인터럽트 신호(INT_F2)가 활성화된다.
시간 t13에서 메인 온도값이 최대 온도 임계값(TH_R3)보다 크면 트리핑 신호(TRP)가 활성화되어 시스템 온 칩의 전원 전압이 차단된다.
이와 같은 DVFS 방식 및 히스테레시스 방식을 이용하여 효율적인 온도 관리를 수행할 수 있다.
도 13은 본 발명의 실시예들에 따른 온도 관리 회로에 포함되는 메인 센서의 일 예를 나타내는 도면이다.
도 13을 참고하면, 메인 센서(200)는 시스템 온 칩의 메인 온도에 비례하는 전압 신호(VPTAT) 및 전류 신호(IPTAT) 중 적어도 하나를 출력하는 온도 검출부(DET)(220) 및 온도 검출부(220)의 출력을 디지털 신호로 변환하여 n 비트의 메인 온도 신호(SMT)를 발생하는 아날로그-디지털 컨버터(ADC:analog-to-digital converter)(240)를 포함하여 구현될 수 있다. 메인 센서(200)는 전술한 온도 관리 유닛(TMU)의 센서 제어부(120)로부터 제공되는 센싱 인에이블 신호(ENS)에 응답하여 활성화될 수 있다.
일반적으로 아날로그-디지털 컨버터(240)는 아날로그 신호를 디지털 신호로 변환하기 위하여 비교적 복잡한 구성을 갖는다. 따라서 이러한 아날로그-디지털 컨버터(240)를 포함하는 디지털 온도 센서는 점유 면적이 크고 복수 비트의 디지털 신호를 전송하여야 하므로 신호 라인들의 라우팅이 설계의 부담으로 작용한다. 본 발명의 실시예들에 따른 온도 관리 회로는 상대적으로 큰 점유 면적을 디지털 온도 센서를 메인 센서(200)로서만 이용하고 나머지 서브 센서들은 비교적 간단한 구성의 발진기들을 이용함으로써 시스템 온 칩의 크기를 줄일 수 있고 시스템 온 칩의 설계시 라우팅의 제약을 감소할 수 있다.
도 14는 도 13의 메인 센서에 포함되는 온도 검출부의 일 예를 나타내는 회로도이다.
온도 검출부(222)는 도 14에 도시된 바와 같이 결합된 제1 및 제2 피모스 트랜지스터들(M1, M2), 피드백 증폭기(AMP), 저항(R) 및 제1 및 제2 바이폴라 트랜지스터들(B1, B2)을 포함하여 구현될 수 있다. 저항(R)의 양단에 걸리는 전압(dVBE)은 다음의 수학식 1과 같이 나타낼 수 있다.
[수학식 1]
dVBE = VBE1 - VBE2
= VT*Ln(Ic1/Is1) - VT*Ln(n*Ic2/Is2)
= VT*Ln(n)
수학식 1에서 Is1 및 Is2는 각각 제1 및 제2 바이폴라 트랜지스터들(B1, B2)의 역방향 포화 전류(reverse saturation current)이고, Ic1 및 Ic2는 각각 제1 및 제2 바이폴라 트랜지스터들(B1, B2)에 흐르는 전류이며, n은 제1 및 제2 바이폴라 트랜지스터들(B1, B2)의 이득비(gain ratio)이고, VT는 온도 전압(temperature voltage)으로서 절대온도에 비례한다. 수학식 1에서 Ln(n)은 상수이므로 저항(R)의 양단에 걸리는 전압 dVBE 및 저항(R)에 흐르는 전류 I2는 온도 변화에 대해서 비례하는 특성을 갖는다. 이와 같이 온도에 비례하는 전압 dVBE 및 전류 I2에 기초하여 온도 검출부(220)는 전압 신호(VPTAT) 및 전류 신호(IPTAT) 중 적어도 하나를 출력할 수 있다.
도 15는 본 발명의 실시예들에 따른 온도 관리 회로에 포함되는 서브 센서의 일 예를 나타내는 도면이다.
본 발명의 실시예들에 따른 온도 관리 회로에 포함되는 복수의 서브 센서들은 모두 동일한 구성을 가질 수 있으며, 일 실시예에서 서브 센서(310)는 도 15에 도시된 바와 같이 링 발진기를 포함하여 구현될 수 있다. 링 발진기는 케스케이드 결합된(cascaded) 낸드 로직 게이트(311) 및 복수의 인버터들(312, 313, 314, 315)을 포함할 수 있다. 마지막 인버터의 출력은 낸드 로직 게이트(311)로 피드백되고 링 발진기는 낸드 로직 게이트(311)에 인가되는 센싱 인에이블 신호(ENS)에 응답하여 인에이블될 수 있다.
낸드 로직 게이트(311) 및 인버터들(312, 313, 314, 315)은 동작 온도에 따른 동작 속도를 가지며 따라서 서브 온도 신호(SPi)는 온도에 비례하는 주파수를 갖는 펄스 신호가 된다.
도 16 및 17은 도 15의 서브 센서에 포함되는 인버터의 예들을 나타내는 도면들이다.
도 16을 참조하면, 인버터(312a)는 전원 전압(VDD)과 접지 전압(VSS) 사이에 케스코드 결합된(cascoded) 제1 피모스 트랜지스터(MP1), 제1 엔모스 트랜지스터(MN1) 및 제2 엔모스 트랜지스터(MN2)를 포함할 수 있다. 제1 피모스 트랜지스터(MP1)와 제1 엔모스 트랜지스터(MN1)의 게이트에는 전단의 신호(IN)가 인가되고 반전된 신호(OUT)를 후단으로 출력한다. 제2 엔모스 트랜지스터(MN2)의 게이트에는 온도에 비례하는 전압 신호(VPTAT)가 인가된다, 온도가 증가할수록 전압 신호(VPTAT)의 전압 레벨이 증가하여 제2 엔모스 트랜지스터(MN2)를 통하여 흐르는 싱킹 전류(sinking current)가 증가하여 인버터(312a)의 동작 속도가 빨라진다. 결과적으로 서브 센서(310)에서 출력되는 서브 온도 신호(SPi)의 주파수는 온도에 비례하여 증가한다.
도 17을 참조하면, 인버터(312b)는 전단의 신호(IN)를 수신하여 반전된 신호(OUT)를 후단으로 출력하는 피모스 트랜지스터(MP3) 및 엔모스 트랜지스터(MN3)를 포함하고, 인버터(312b)는 온도에 비례하는 전류(IPTAT)를 소싱 전류(sourcing current)로 하여 반전 동작을 수행할 수 있다. 온도가 증가할수록 소싱 전류(IPTAT)의 크기가 증가하여 인버터(312b)의 동작 속도가 빨라진다. 결과적으로 서브 센서(310)에서 출력되는 서브 온도 신호(SPi)의 주파수는 온도에 비례하여 증가한다.
이와 같은 구성 등을 통하여 시스템 온 칩의 서브 블록들의 서브 온도들에 각각 비례하는 주파수들을 갖는 펄스 신호들을 서브 온도 신호들(SPi)을 발생하는 비교적 작은 면적의 서브 센서들(SSi)을 구현할 수 있다.
도 18, 19 및 20은 시스템 온 칩의 동작 속도를 조절하는 예들을 나타내는 도면들이다.
도 18의 전압 조절기(voltage regulator)는 전압 제어 신호(VCTRi)에 응답하여 기준 전압을 발생하는 기준 전압 발생기(VREF) 및 상기 기준 전압에 기초하여 출력 전압(VDDi)을 조절하는 단위 이득 증폭기(AMP)를 포함할 수 있다. 전압 제어 신호(VCTRi)의 전압 레벨을 조절함으로써 상기 기준 전압을 조절하고 결과적으로 전압 조절기의 출력 전압(VDDi)의 전압 레벨이 제어될 수 있다. 출력 전압(VDDi)은 시스템 온 칩의 전원 전압 또는 각 서브 블록의 전원 전압으로 제공될 수 있다.
도 19를 참조하면, 서브 블록(BLKi)은 파워 게이팅 트랜지스터(MG)를 통하여 전원 전압(VDD)에 연결될 수 있다. 이 때, 파워 게이팅 트랜지스터(MG)의 게이트에 인가되는 게이트 전압 신호(PGi)의 전압 레벨을 조절함으로써 서브 블록(BLKi)에 공급되는 실제의 전원 전압을 제어할 수 있다.
도 20의 위상 고정 루프(PLL: phase-locked loop)는 클록 제어 신호(CCTRi)에 기초하여 출력 클록 신호(CLKi)의 주파수를 조절할 수 있다. 클록 제어 신호(CCRTi)는 주파수 분주기(DIV)로 입력되고 주파수 분주기(DIV)는 클록 제어 신호(CCRTi)에 상응하는 분주비에 의해 출력 클록 신호(CLKi)를 분주하여 출력한다. 위상-주파수 검출기(P/F)는 기준 클록 신호(RCK)와 분주된 클록 신호를 비교하여 업-다운 신호를 발생하고, 전하 펌프(CP)는 업-다운 신호에 응답하여 제어 전압을 발생한다. 전압 제어 발진기(VCO)는 루프 필터(LF)에 의해 필터링된 제어 전압에 응답하여 출력 클록 신호(CLKi)를 발생한다. 출력 클록 신호(CLKi)는 시스템 온 칩의 메인 클록 신호 또는 각 서브 블록의 동작을 위한 로컬 클록 신호로서 제공될 수 있다. 이와 같이 클록 제어 신호(CCTRi)를 이용하여 분주비를 조절함으로써 시스템 온 칩 또는 각 서브 블록의 동작 주파수를 제어할 수 있다.
도 18, 19 및 20의 제어 신호들(VCTRi, PGi, CCTRi)은 전술한 프로세서(400)의 인터럽트 서비스 루틴(ISR)의 실행 결과 발생되는 온도 관리 신호(TM) 또는 이에 기초하여 발생되는 신호일 수 있다. 도 18, 19 및 20의 예들은, 시스템 온 칩 또는 각 서브 블록의 동작 속도를 조절하는 방법을 설명하기 위하여 예시한 간단한 구성이며, 동작 속도의 조절은 그 밖의 다양한 방법으로 수행될 수 있다.
도 21은 도 5의 온도 관리 유닛에 포함되는 온도 샘플링부의 일 예를 나타내는 블록도이다.
도 21을 참조하면, 온도 샘플링부(160b)는 래치부(168), 복수의 서브 온도 카운터들(161, 162, 163) 및 기준 카운터(167)를 포함한다. 도 6의 온도 샘플링부(160a)와 비교하여, 도 21의 온도 샘플링부(160b)는 기준 카운터(167)를 더 포함한다.
래치부(168)는 메인 온도 신호(SMT)를 센싱 주기마다 래치하여 메인 온도값(LAT)을 주기적으로 제공한다. 전술한 바와 같이 상기 센싱 주기는 센싱 개시 신호(SENS) 및 센싱 종료 신호(SEND)의 활성화 타이밍들에 의해 결정될 수 있다. 서브 온도 카운터들(161, 162, 163)은 서브 온도 신호들(SP1, SP2, SP3)의 펄스들을 상기 센싱 주기마다 카운팅하여 서브 온도 카운트값들(CNT1, CNT2, CNT3)을 주기적으로 제공한다.
기준 카운터(167)는 온도에 무관한 기준 주파수를 갖는 기준 클록 신호(RCLK)를 상기 센싱 주기마다 카운팅하여 기준 카운트값(CNTR)을 주기적으로 제공한다. 기준 클록 신호(RCLK)는 크리스탈 발진기를 이용하여 발생될 수 있으며, 시스템 온 칩의 외부로부터 제공될 수 있다.
메인 온도값(LAT), 기준 카운트값(CNTR) 및 서브 온도 카운트값들(CNT1, CNT2, CNT3)은 레지스터부(140)로 제공된다. 메인 온도값(LAT), 기준 카운트값(CNTR) 및 서브 온도 카운트값들(CNT1, CNT2, CNT3)은 도 8을 참조하여 설명한 바와 같이 레지스터부(140a)에 저장될 수 있다. 이 경우 도 8의 레지스터부(140a)는 주기적으로 제공되는 기준 카운트값(CNTR)에 기초하여 현재의 기준 카운트값(CNTR_C)을 저장하는 레지스터를 더 포함할 수 있다.
도 22는 본 발명의 실시예들에 따른 온도 관리 유닛의 동작을 나타내는 타이밍도이다. 도 21에서 설명한 바와 같은 온도 샘플링부(160b)가 기준 카운터(167)를 더 포함하는 실시예에 해당하는 타이밍도가 도 22에 도시되어 있다.
도 22를 참조하면, 온도 관리 유닛(TMU)이 초기화되어 시간 t1에서 센싱 인에이블 신호(ENS)가 활성화되고, 이에 응답하여 메인 센서(MS)는 메인 온도 신호(SMT)를 발생하고 서브 센서들(SS1~SSk)은 서브 온도 신호들(SP1~SPk)을 발생한다. 메인 온도 신호(SMT)는 일정한 주기마다 측정된 메인 온도의 디지털 값들(DGT1, DGT2, DGT3)을 나타낸다. 디지털 값들(DGT1, DGT2, DGT3)의 측정 주기는 메인 센서(MS)의 구성 및/또는 센서 제어부(120)의 제어 신호에 의해 결정될 수 있다. 서브 온도 신호들(SP1~SPk)은 서브 블록들(BLK1~BLKk)의 서브 온도들에 각각 비례하는 주파수들을 갖는 펄스 신호들의 형태로 제공된다. 기준 클록 신호(RCLK)는 온도에 무관한 기준 주파수를 갖고 크리스탈 발진기를 이용하여 제공될 수 있다.
시간 t2에서 센싱 개시 신호(SENS)가 활성화되면, 온도 샘플링부(160)에 포함된 래치부(168), 기준 카운터(167) 및 서브 온도 카운터들(161, 162, 163)이 리셋된다. 리셋 주기(tRS)가 경과하여 시간 t3에서 기준 카운터(167) 및 서브 온도 카운터들(161, 162, 163)의 카운팅 동작이 시작된다. 카운팅 주기(tCP)가 경과하여 시간 t4에서 센싱 종료 신호(SEND)가 활성화되면 래치부(168)의 래치 동작이 수행되고 샘플링된 제1 메인 온도값(LAT1)이 레지스터부(140)로 제공된다. 한편 시간 t4에서 기준 카운터(167) 및 서브 온도 카운터들(161, 162, 163)의 카운팅 동작이 종료되고 샘플링된 제1 기준 카운트값(CNTR1) 및 제1 서브 온도 카운트값들(CNT11~CNTk1)이 레지스터부(140)로 제공된다.
출력 주기(tOUT)가 경과하여 센싱 개시 신호(SENS)가 다시 활성화되면 전술한 리셋 동작, 카운팅 동작, 샘플링 및 출력 동작이 반복되어 래치부(168)는 제2 메인 온도값(LAT2)을 출력하고 기준 카운터(167)는 제2 기준 카운트값(CNTR2)을 출력하고 서브 온도 카운터들(161, 162, 163)은 제2 서브 온도 카운트값들(CNT12~CNTk2)을 출력한다.
이와 같이 센싱 주기(tSI)마다 메인 온도 신호(SMT) 기준 클록 신호(RCLK) 및 서브 온도 신호들(SP1~SPk)이 샘플링되어 샘플링값들이 주기적으로 레지스터부(140)로 제공된다.
도 23은 본 발명의 실시예들에 따른 시스템 온 칩의 온도 관리 방법을 나타내는 순서도이다.
도 2, 4, 22 및 23을 참조하면, 먼저 온도 관리 유닛(TMU)을 초기화한다(단계 S105). 예를 들어, 프로세서(400)로부터의 동작 제어 신호(DOC)에 의해 온도 관리 유닛(TMU)을 인에이블 상태로 설정하고 동작에 필요한 정보를 온도 관리 유닛(TMU)에 저장하는 방식으로 온도 관리 유닛(TMU)이 초기화될 수 있다. 온도 관리 유닛(TMU)이 초기화되면 메인 센서(MS) 및 서브 센서들(SSi)이 인에이블되어 메인 온도 신호(SMT) 및 서브 온도 신호들(SPi)이 발생되고, 기준 클록 신호(RCLK)가 제공된다.
온도 관리 유닛(TMU)은 주기적으로 메인 온도 신호(SMT), 서브 온도 신호들(SPi) 및 기준 클록 신호(RCLK)를 샘플링한다(단계 S225). 온도 관리 유닛(TMU)은 서브 온도 신호들(SPi)의 샘플링값들에 관계없이 메인 온도 신호(SMT)의 샘플링값이 인터럽트 조건을 만족하는지를 판단한다(단계 S245). 전술한 바와 같이, 상기 인터럽트 조건은 시스템 온 칩(10)의 전체적인 메인 온도가 주목할 만한 변화가 있는지를 판단할 수 있도록 설정된 적어도 하나의 온도 임계값으로 나타낼 수 있다.
메인 온도 신호(SMT)가 인터럽트 조건을 만족하지 않는 경우(단계 S245; NO), 온도 관리 유닛(TMU)은 다음 주기의 메인 온도 신호(SMT)를 샘플링하고(단계 S225) 상기 다음 주기의 샘플링값이 인터럽트 조건을 만족하는지를 판단한다(단계 S245).
메인 온도 신호(SMT)가 인터럽트 조건을 만족하는 경우(단계 S245; YES), 온도 관리 유닛(TMU)은 인터럽트 신호(INT)를 발생한다(단계 S265). 인터럽트 신호(INT)가 발생되면 서브 온도 신호(SPi)의 샘플링값들 및 기준 클록 신호(RCLK)의 샘플링값에 기초하여 인터럽트 서비스 루틴(ISR)을 실행한다(단계 S285). 인터럽트 서비스 루틴(ISR)은 서브 블록들(BLKi)들의 온도 분포를 분석하고 적절한 조치를 결정하기 위한 것으로서 소프트웨어, 하드웨어 또는 이들의 조합으로 구현될 수 있다. 예를 들어, 인터럽트 서비스 루틴(ISR)은 시스템 온 칩(10)의 전체적인 동작을 제어하는 프로세서(400)에 의해 실행되는 프로그램일 수 있다.
이와 같이, 서브 온도 신호들(SPi)에 관계없이 메인 온도 신호(SMT)에 기초하여 시스템 온 칩(10)의 전체적인 메인 온도를 모니터링하고, 인터럽트 신호(INT)가 발생된 경우에만 서브 온도 신호들(SPi)을 고려함으로써 신속하고 효율적인 온도 관리가 수행될 수 있다.
서브 온도 신호(SPi)의 샘플링값들 및 기준 클록 신호(RCLK)의 샘플링값에 기초한 인터럽트 서비스 루틴(ISR)은 다음과 같이 실행될 수 있다.
현재의 서브 온도 카운트값들(CNTi_C), 현재의 기준 카운트값(CNTR_C) 및 기준 주파수에 기초하여 서브 온도들에 각각 비례하는 현재의 서브 온도 주파수들을 계산한다. 예를 들어, 다음의 수학식 2를 이용하여 현재의 서브 온도 주파수들을 계산할 수 있다.
[수학식 2]
Fj = (CNTj_C/CNTR_C)*Fr
수학식 2에서 Fj 및 CNTj_C는 j번째 서브 온도 신호(SPi)의 주파수 및 현재의 서브 온도 카운트값이고, Fr 및 CNTR_C는 기준 클록 신호(RCLK)의 기준 주파수 및 현재의 기준 카운트값이다. 수학식 2의 계산은 기준 클록 신호(RCLK) 및 서브 온도 신호들(SPi)의 센싱 주기(tSI), 즉 샘플링 주기가 동일하다는 조건에 근거하고 있다. 서브 온도 주파수들(Fi)이 구해지면 두개의 현재 서브 온도값들의 차이(Tj-Tk)는 다음의 수학식 3을 이용하여 계산될 수 있다.
[수학식 3]
Tj-Tk = b1*(Fj-Fk)
수학식 3에서 Tj 및 Tk는 j번째 및 k번째 서브 블록들(BLKj, BLKk)의 현재 서브 온도값들이고, Fj 및 Fk는 수학식 2를 이용하여 계산한 j번째 및 k번째 서브 온도 신호들(SPj, SPk)의 주파수들이고, b1는 상수값이다. b1은 본 발명의 실시예들에 따른 온도 관리 회로(TMU)가 시스템 온 칩에 집적된 후에 실제 동작 환경에서 실험에 의해 결정될 수 있다.
한편, 각각의 현재 서브 온도값들은 다음의 수학식 4에 의해 계산될 수 있다.
[수학식 4]
Tj = c1*Fj + c2
수학식 4에서 Tj는 j번째 서브 블록(BLKj)의 현재 서브 온도값이고, Fj는 수학식 2를 이용하여 계산한 j번째 서브 온도 신호(SPj)의 주파수이고, c1 및 c2는 상수값들이다. c1 및 c2는 본 발명의 실시예들에 따른 온도 관리 회로(TMU)가 시스템 온 칩에 집적된 후에 실제 동작 환경에서 실험에 의해 결정될 수 있다.
수학식 3 및 4의 계산은 서브 온도 신호(SPi)의 주파수가 서브 온도에 비례한다는 조건에 근거하고 있다. 이와 같이 구해진 현재의 서브 온도값들의 차이들 (Tj-Tk) 및/또는 현재의 서브 온도값들(Tj)을 이용하여, 각 서브 블록들(BLKj, BLKk)의 개별적인 동작 속도를 조절할 수 있다.
도 24는 본 발명의 실시예들에 따른 시스템 온 칩의 온도 관리 회로의 레이아웃을 나타내는 도면이다.
도 24를 참조하면, 시스템 온 칩(30)의 온도 관리 회로는 온도 관리 유닛(TMU), 메인 센서(MS)(200), 복수의 서브 센서들(SS1,SS2,SS3,SS4)(310, 320, 330, 340) 및 부가적인 서브 센서(AS)(360)를 포함한다. 도 24에는 편의상 4개의 서브 센서들만을 도시하였으나 서브 센서들의 개수는 시스템 온 칩(30)의 구성에 따라서 다양하게 변경될 수 있다. 온도 관리 회로 이외의 시스템 온 칩(30)의 다른 구성 요소들은 도시를 생략하였다.
도 2의 시스템 온 칩(10)의 온도 관리 회로와 비교하여, 도 24의 시스템 온 칩(30)의 온도 관리 회로는 부가적인 서브 센서(360)를 더 포함한다. 이하 도 2의 설명과 중복되는 설명은 생략한다.
부가적인 서브 센서(360)는 메인 센서(200)에 인접하여 배치되어 메인 온도에 비례하는 주파수를 갖는 기준 펄스 신호(SRP)를 발생한다. 부가적인 서브 센서(360)는 다른 서브 센서들(310, 320, 330, 340)과 동일한 구성 및 동일한 동작 특성을 갖는다.
온도 관리 유닛(100)은 메인 온도 신호(SMT), 기준 펄스 신호(SRP) 및 서브 온도 신호들(SPi)에 기초하여 시스템 온 칩(30)의 온도 정보를 제공한다. 상기 온도 정보는 전술한 바와 같은 현재의 메인 온도값(MT_C), 이전의 메인 온도값(MT_P), 현재의 서브 온도 카운트값들(CNTi_C) 및 도 25 및 26을 참조하여 후술하는 바와 같이 현재의 기준 카운트값(CNTR_C)을 포함할 수 있다. 상기 온도 정보는 온도 관리 유닛(100)의 내부에 저장되고 프로세서(400)에 제공될 수 있다. 온도 관리 유닛(100)은 상기 저장된 온도 정보에 기초하여 인터럽트 신호(INT)를 발생할 수 있으며, 프로세서는 인터럽트 신호(INT) 및 상기 제공되는 온도 정보에 기초하여 시스템 온 칩(30)의 온도 분포를 분석하고 적절한 조치를 수행하기 위한 인터럽트 서비스 루틴(ISP)을 실행할 수 있다.
메인 센서(200)와 서브 센서들(310, 320, 330, 340)은 시스템 온 칩(10)이 집적되는 반도체 기판에 함께 집적되는 온 칩 센서들일 수 있다. 온 칩 센서들의 출력 신호들은 측정하고자 하는 온도들을 정확하게 반영할 수 있을 뿐만 아니라 시스템의 전체적인 크기를 감소할 수 있다.
도 25는 도 24의 온도 관리 유닛에 포함되는 온도 샘플링부의 일 예를 나타내는 블록도이다.
도 25를 참조하면, 온도 샘플링부(160c)는 래치부(168), 복수의 서브 온도 카운터들(161, 162, 163) 및 부가적인 카운터(166)를 포함한다. 도 6의 온도 샘플링부(160a)와 비교하여, 도 25의 온도 샘플링부(160c)는 부가적인 카운터(166)를 더 포함한다.
래치부(168)는 메인 온도 신호(SMT)를 센싱 주기마다 래치하여 메인 온도값(LAT)을 주기적으로 제공한다. 전술한 바와 같이 상기 센싱 주기는 센싱 개시 신호(SENS) 및 센싱 종료 신호(SEND)의 활성화 타이밍들에 의해 결정될 수 있다. 서브 온도 카운터들(161, 162, 163)은 서브 온도 신호들(SP1, SP2, SP3)의 펄스들을 상기 센싱 주기마다 카운팅하여 서브 온도 카운트값들(CNT1, CNT2, CNT3)을 주기적으로 제공한다.
부가적인 카운터(166)는 도 24의 부가적인 서브 센서(360)로부터 발생되는 메인 온도에 비례하는 주파수를 갖는 주파수를 갖는 기준 펄스 신호(SRP)를 카운팅하여 기준 카운트값(CNTR)을 주기적으로 제공한다.
메인 온도값(LAT), 기준 카운트값(CNTR) 및 서브 온도 카운트값들(CNT1, CNT2, CNT3)은 레지스터부(140)로 제공된다. 메인 온도값(LAT), 기준 카운트값(CNTR) 및 서브 온도 카운트값들(CNT1, CNT2, CNT3)은 도 8을 참조하여 설명한 바와 같이 레지스터부(140a)에 저장될 수 있다. 이 경우 도 8의 레지스터부(140a)는 주기적으로 제공되는 기준 카운트값(CNTR)에 기초하여 현재의 기준 카운트값(CNTR_C)을 저장하는 레지스터를 더 포함할 수 있다.
도 26은 본 발명의 실시예들에 따른 온도 관리 유닛의 동작을 나타내는 타이밍도이다.
도 26을 참조하면, 온도 관리 유닛(TMU)이 초기화되어 시간 t1에서 센싱 인에이블 신호(ENS)가 활성화되고, 이에 응답하여 메인 센서(MS)는 메인 온도 신호(SMT)를 발생하고 서브 센서들(SS1~SSk)은 서브 온도 신호들(SP1~SPk)을 발생하고, 부가적인 서브 센서(360)는 기준 펄스 신호(SRP)를 발생한다. 메인 온도 신호(SMT)는 일정한 주기마다 측정된 메인 온도의 디지털 값들(DGT1, DGT2, DGT3)을 나타낸다. 디지털 값들(DGT1, DGT2, DGT3)의 측정 주기는 메인 센서(MS)의 구성 및/또는 센서 제어부(120)의 제어 신호에 의해 결정될 수 있다. 서브 온도 신호들(SP1~SPk)은 서브 블록들(BLK1~BLKk)의 서브 온도들에 각각 비례하는 주파수들을 갖는 펄스 신호들의 형태로 제공된다. 기준 펄스 신호(SRP)는 메인 온도에 비례하는 주파수를 갖는 펄스 신호의 형태로 제공된다.
시간 t2에서 센싱 개시 신호(SENS)가 활성화되면, 온도 샘플링부(160)에 포함된 래치부(168), 부가적인 카운터(166) 및 서브 온도 카운터들(161, 162, 163)이 리셋된다. 리셋 주기(tRS)가 경과하여 시간 t3에서 부가적인 카운터(166) 및 서브 온도 카운터들(161, 162, 163)의 카운팅 동작이 시작된다. 카운팅 주기(tCP)가 경과하여 시간 t4에서 센싱 종료 신호(SEND)가 활성화되면 래치부(168)의 래치 동작이 수행되고 샘플링된 제1 메인 온도값(LAT1)이 레지스터부(140)로 제공된다. 한편 시간 t4에서 부가적인 카운터(166) 및 서브 온도 카운터들(161, 162, 163)의 카운팅 동작이 종료되고 샘플링된 제1 기준 카운트값(CNTR1) 및 제1 서브 온도 카운트값들(CNT11~CNTk1)이 레지스터부(140)로 제공된다.
출력 주기(tOUT)가 경과하여 센싱 개시 신호(SENS)가 다시 활성화되면 전술한 리셋 동작, 카운팅 동작, 샘플링 및 출력 동작이 반복되어 래치부(168)는 제2 메인 온도값(LAT2)을 출력하고 부가적인 카운터(166)는 제2 기준 카운트값(CNTR2)을 출력하고 서브 온도 카운터들(161, 162, 163)은 제2 서브 온도 카운트값들(CNT12~CNTk2)을 출력한다.
이와 같이 센싱 주기(tSI)마다 메인 온도 신호(SMT) 기준 펄스 신호(SRP) 및 서브 온도 신호들(SP1~SPk)이 샘플링되어 샘플링값들이 주기적으로 레지스터부(140)로 제공된다.
도 27은 본 발명의 실시예들에 따른 시스템 온 칩의 온도 관리 방법을 나타내는 순서도이다.
도 4, 24, 25 및 26을 참조하면, 먼저 온도 관리 유닛(TMU)을 초기화한다(단계 S107). 예를 들어, 프로세서(400)로부터의 동작 제어 신호(DOC)에 의해 온도 관리 유닛(TMU)을 인에이블 상태로 설정하고 동작에 필요한 정보를 온도 관리 유닛(TMU)에 저장하는 방식으로 온도 관리 유닛(TMU)이 초기화될 수 있다. 온도 관리 유닛(TMU)이 초기화되면 메인 센서(MS), 서브 센서들(SSi) 및 부가적인 센서(360)가 인에이블되어 메인 온도 신호(SMT), 서브 온도 신호들(SPi) 및 기준 펄스 신호(SRP)가 발생된다.
온도 관리 유닛(TMU)은 주기적으로 메인 온도 신호(SMT), 서브 온도 신호들(SPi) 및 기준 펄스 신호(SRP)를 샘플링한다(단계 S227). 온도 관리 유닛(TMU)은 서브 온도 신호들(SPi)의 샘플링값들에 관계없이 메인 온도 신호(SMT)의 샘플링값이 인터럽트 조건을 만족하는지를 판단한다(단계 S247). 전술한 바와 같이, 상기 인터럽트 조건은 시스템 온 칩(30)의 전체적인 메인 온도가 주목할 만한 변화가 있는지를 판단할 수 있도록 설정된 적어도 하나의 온도 임계값으로 나타낼 수 있다.
메인 온도 신호(SMT)가 인터럽트 조건을 만족하지 않는 경우(단계 S247; NO), 온도 관리 유닛(TMU)은 다음 주기의 메인 온도 신호(SMT)를 샘플링하고(단계 S225) 상기 다음 주기의 샘플링값이 인터럽트 조건을 만족하는지를 판단한다(단계 S247).
메인 온도 신호(SMT)가 인터럽트 조건을 만족하는 경우(단계 S247; YES), 온도 관리 유닛(TMU)은 인터럽트 신호(INT)를 발생한다(단계 S267). 인터럽트 신호(INT)가 발생되면 서브 온도 신호(SPi)의 샘플링값들 및 기준 펄스 신호(SRP)의 샘플링값에 기초하여 인터럽트 서비스 루틴(ISR)을 실행한다(단계 S287). 인터럽트 서비스 루틴(ISR)은 서브 블록들(BLKi)들의 온도 분포를 분석하고 적절한 조치를 결정하기 위한 것으로서 소프트웨어, 하드웨어 또는 이들의 조합으로 구현될 수 있다. 예를 들어, 인터럽트 서비스 루틴(ISR)은 시스템 온 칩(30)의 전체적인 동작을 제어하는 프로세서(400)에 의해 실행되는 프로그램일 수 있다.
이와 같이, 서브 온도 신호들(SPi)에 관계없이 메인 온도 신호(SMT)에 기초하여 시스템 온 칩(30)의 전체적인 메인 온도를 모니터링하고, 인터럽트 신호(INT)가 발생된 경우에만 서브 온도 신호들(SPi)을 고려함으로써 신속하고 효율적인 온도 관리가 수행될 수 있다.
서브 온도 신호(SPi)의 샘플링값들 및 기준 펄스 신호(SRP)의 샘플링값에 기초한 인터럽트 서비스 루틴(ISR)은 다음과 같이 실행될 수 있다.
현재의 서브 온도 카운트값들(CNTi_C) 및 현재의 기준 카운트값(CNTR_C)에 기초하여 현재의 서브 온도값들을 결정한다. 예를 들어, 다음의 수학식 5를 이용하여 현재의 서브 온도값들을 계산할 수 있다.
[수학식 5]
Tj = (CNTj_C/CNTR_C)*MT_C
수학식 5에서 Tj는 j번째 서브 블록(BLKj)의 현재 서브 온도값이고, MT_C는 현재의 메인 온도값이고, CNTj_C는 j번째 서브 온도 신호(SPj)의 현재의 서브 온도 카운트값이고, CNTR_C는 기준 펄스 신호(SRP)의 현재의 기준 카운트값이다. 수학식 5의 계산은 기준 펄스 신호(SRP) 및 서브 온도 제어 신호들(SPi)의 센싱 주기(tSI), 즉 샘플링 주기가 동일하고, 기준 펄스 신호(SRP) 및 서브 온도 신호들(SPi)의 주파수가 각각의 온도에 비례하나는 조건에 근거하고 있다. 이와 같이 구해진 현재의 서브 온도값들(Ti)을 이용하여, 각 서브 블록들(BLKi)의 개별적인 동작 속도를 조절할 수 있다.
일 실시예에서, 도 4의 프로세서(400)는 인터럽트 신호(INT)에 관계없이 주기적으로 온도 정보(DTI)를 온도 관리 유닛(100)으로부터 수신할 수 있다. 온도 정보(DTI)는 서브 온도 신호(SPi)의 샘플링값들 및 기준 펄스 신호(SRP)의 샘플링값을 포함한다. 프로세서(400)는 주기적으로 제공되는 온도 정보(DTI)에 기초하여 수학식 5와 같은 계산을 통하여 현재의 서브 온도값들(Ti)을 주기적으로 계산할 수 있다. 결과적으로, 도 24 내지 27을 참조하여 설명한 실시예의 경우에, 프로세서(400)는 메인 온도 신호(SMT)의 변화에 관계 없이 주기적으로 계산되는 현재의 서브 온도값들(Ti)에 기초하여 각 서브 블록들(BLKi)의 개별적인 동작 속도를 조절할 수 있다.
도 28은 본 발명의 실시예들에 따른 시스템 온 칩의 온도 관리 회로의 레이아웃을 나타내는 도면이다.
도 28을 참조하면, 시스템 온 칩(40)의 온도 관리 회로는 온도 관리 유닛(TMU), 메인 센서(MS)(200), 복수의 서브 센서들(SS1,SS2,SS3,SS4)(310, 320, 330, 340) 및 복수의 히트 브리지들(heat bridges)(35, 36, 37, 38)을 포함한다. 도 28에는 편의상 4개의 서브 센서들만을 도시하였으나 서브 센서들의 개수는 시스템 온 칩(40)의 구성에 따라서 다양하게 변경될 수 있다. 도 2에 도시된 바와 같은 신호들 및 온도 관리 회로 이외의 시스템 온 칩(40)의 다른 구성 요소들은 도시를 생략하였다.
도 2의 시스템 온 칩(10)의 온도 관리 회로와 비교하여, 도 28의 시스템 온 칩(40)의 온도 관리 회로는 복수의 부가적인 히트 브리지들(35, 36, 37, 38)을 더 포함한다. 이하 도 2의 설명과 중복되는 설명은 생략한다.
히트 브리지들(35, 36, 37, 38)은 시스템 온 칩(40)이 집적되는 반도체 기판보다 높은 열전도율을 가지며 서브 센서들(310, 320, 330, 340)의 각각을 메인 센서(200)와 열적으로 연결한다. 본 발명의 실시예들에 따른 온도 관리 회로의 성능은 메인 센서(200)에 의해 측정되는 메인 온도가 시스템 온 칩(40)의 전체적인 온도를 어느 정도 정확하게 반영하고 있는지에 의존한다.
도 2를 참조하여 전술한 바와 같이, 메인 센서(200)는 시스템 온 칩(40)의 전체적인 메인 온도를 정확하게 반영할 수 있는 위치에 집적될 수 있다. 예를 들어, 메인 센서(200)와 각 서브 센서들(310, 320, 330, 340) 사이의 거리들의 편차가 최소가 되는 위치에 메인 센서(200)가 집적될 수 있다. 메인 센서(200)와 각 서브 센서들(310, 320, 330, 340) 사이의 열전도율들이 상이한 경우에는 이를 고려하여 메인 센서(200)의 위치를 결정할 수 있다. 히트 브리지들(35, 36, 37, 38)은 상대적으로 높은 열전도율을 가지므로 메인 센서(200)와 각 서브 센서들(310, 320, 330, 340) 사이의 열전도율들의 편차를 감소하는데 기여할 수 있고, 따라서 메인 센서(200)에 의해 측정되는 메인 온도와 시스템 온 칩(40)의 실제적인 전체 온도 사이의 오차를 감소할 수 있다.
전술한 바와 같이, 메인 센서(200)와 서브 센서들(310, 320, 330, 340)은 시스템 온 칩(10)이 집적되는 반도체 기판에 함께 집적되는 온 칩 센서들일 수 있다. 온 칩 센서들의 출력 신호들은 측정하고자 하는 온도들을 정확하게 반영할 수 있을 뿐만 아니라 시스템의 전체적인 크기를 감소할 수 있다.
도 29는 도 28의 온도 관리 회로에 포함되는 히트 브리지의 일 예를 나타내는 도면이다.
도 29를 참조하면, 반도체 기판을 이용하여 제1 서브 센서(310), 메인 센서(200) 및 이들을 열적으로 연결하는 제1 히트 브리지(35)를 형성할 수 있다. 도 28에 도시된 나머지 히트 브리지들(36, 37, 38)도 유사한 구조로 형성될 수 있다. 도 29에 도시된 바와 같이, 제1 히트 브리지(35)는 반도체 기판의 상부 표면에 형성되는 전극들(351, 352), 비아(Via)와 같은 수직 컨택들(353, 354) 및 금속 라인(355)을 포함할 수 있다. 전극들(351, 352)은 허용되는 설계 마진의 범위 내에서 가능한 넓은 면적으로 형성될 수 있다. 금속 라인(355)은 신호 라인들 및 전압 라인들을 형성하는 금속층에 패턴화되어 형성될 수 있다.
이와 같이, 높은 열전도율을 갖는 히트 브리지들(35, 36, 37, 38)을 이용하여 서브 센서들(310, 320, 330, 340)의 각각을 메인 센서(200)와 열적으로 결합시킴으로써 온도 관리 회로 및 이를 포함하는 시스템 온 칩의 성능을 더욱 향상시킬 수 있다.
도 30은 본 발명의 실시예들에 따른 시스템 온 칩을 전자 기기에 응용한 예를 나타내는 블록도이다.
도 30을 참조하면, 전자 기기(1000)는 시스템 온 칩(1010), 메모리 장치(1020), 저장 장치(1030), 입출력 장치(1040), 파워 서플라이(1050) 및 이미지 센서(1060)를 포함할 수 있다. 한편, 도 30에는 도시되지 않았지만, 전자 기기(1000)는 비디오 카드, 사운드 카드, 메모리 카드, USB 장치 등과 통신하거나, 또는 다른 전자 기기들과 통신할 수 있는 포트(port)들을 더 포함할 수 있다.
시스템 온 칩(1010)은 본 발명의 실시예들에 따른 온도 관리 회로를 포함한다. 상기 온도 관리 회로는 전술한 바와 같이 온도 관리 유닛(TMU), 디지털 신호를 발생하는 메인 센서(미도시) 및 펄스 신호들을 발생하는 복수의 서브 센서들(미도시)을 포함한다. 시스템 온 칩(1010)은 각각의 열원으로서 작용하는 복수의 서브 블록들을 포함할 수 있으며, 하나 이상의 프로세서를 포함할 수 있다. 예를 들어 상기 서브 블록들의 각각은 CPU와 메모리 콘트롤러 등이 포함되는 코아 블록(CORE_BLK), 디스플레이 콘트롤러 블록(DISP_BLK), 파일 시스템 블록(FSYS_BLK), GPU(graphic processing unit) 블록(G3D_BLK), 이미지 신호 프로세서 블록(ISP_BLK), 멀티 포맷 코덱 블록(MFC_BLK) 등을 포함할 수 있다.
시스템 온 칩(1010)은 어드레스 버스(address bus), 제어 버스(control bus) 및 데이터 버스(data bus)를 통하여 메모리 장치(1020), 저장 장치(1030), 입출력 장치(1040) 및 이미지 센서(2060)와 통신을 수행할 수 있다. 실시예에 따라, 시스템 온 칩(1010)은 주변 구성요소 상호연결(Peripheral Component Interconnect; PCI) 버스와 같은 확장 버스에도 연결될 수 있다.
메모리 장치(1020)는 전자 기기(1000)의 동작에 필요한 데이터 및 프로그램 코드를 저장할 수 있다. 예를 들어, 메모리 장치(1020)는 디램(DRAM), 모바일 디램, 에스램(SRAM), 피램(PRAM), 에프램(FRAM), 알램(RRAM) 및/또는 엠램(MRAM)으로 구현될 수 있다. 저장 장치(1030)는 솔리드 스테이트 드라이브(solid state drive), 하드 디스크 드라이브(hard disk drive), 씨디롬(CD-ROM) 등을 포함할 수 있다. 입출력 장치(1040)는 키보드, 키패드, 마우스 등과 같은 입력 수단 및 프린터, 디스플레이 등과 같은 출력 수단을 포함할 수 있다. 파워 서플라이(1050)는 전자 기기(1000)의 동작에 필요한 동작 전압을 공급할 수 있다.
이미지 센서(1060)는 상기 버스들 또는 다른 통신 링크를 통해서 시스템 온 칩(1010)과 연결되어 통신을 수행할 수 있다. 이미지 센서(1060)는 시스템 온 칩(1010)과 함께 하나의 칩에 집적될 수도 있고, 서로 다른 칩에 각각 집적될 수도 있다.
도 30에 도시된 전자 기기(1000)의 구성 요소들의 적어도 일부는 다양한 형태들의 패키지로 구현될 수 있다. 예를 들어, 적어도 일부의 구성들은 PoP(Package on Package), Ball grid arrays(BGAs), Chip scale packages(CSPs), Plastic Leaded Chip Carrier(PLCC), Plastic Dual In-Line Package(PDIP), Die in Waffle Pack, Die in Wafer Form, Chip On Board(COB), Ceramic Dual In-Line Package(CERDIP), Plastic Metric Quad Flat Pack(MQFP), Thin Quad Flatpack(TQFP), Small Outline(SOIC), Shrink Small Outline Package(SSOP), Thin Small Outline(TSOP), Thin Quad Flatpack(TQFP), System In Package(SIP), Multi Chip Package(MCP), Wafer-level Fabricated Package(WFP), Wafer-Level Processed Stack Package(WSP) 등과 같은 패키지들을 이용하여 실장될 수 있다.
한편, 전자 기기(1000)는 적어도 하나의 시스템 온 칩을 포함하는 모든 장치 및 시스템으로 해석되어야 할 것이다. 예를 들어, 전자 기기(1000)는 디지털 카메라, 이동 전화기, 피디에이(Personal Digital Assistants; PDA), 피엠피(Portable Multimedia Player; PMP), 스마트폰 등을 포함할 수 있다.
도 31은 도 30의 전자 기기에서 사용되는 인터페이스의 일 예를 나타내는 블록도이다.
도 31을 참조하면, 전자 기기(1100)는 MIPI 인터페이스를 사용 또는 지원할 수 있는 데이터 처리 장치로 구현될 수 있고, 애플리케이션 프로세서 칩 형태의 시스템 온 칩(1110), 이미지 센서(1140) 및 디스플레이(1150) 등을 포함할 수 있다. 시스템 온 칩(1110)은 본 발명의 실시예들에 따른 온도 관리 회로를 포함한다.
상기 온도 관리 회로는 전술한 바와 같이 온도 관리 유닛(TMU)(100), 전력 관리 유닛(PMU)(500), 디지털 신호를 발생하는 메인 센서(미도시) 및 펄스 신호들을 발생하는 복수의 서브 센서들(미도시)을 포함한다. 시스템 온 칩(1110)의 CSI 호스트(1112)는 카메라 시리얼 인터페이스(Camera Serial Interface; CSI)를 통하여 이미지 센서(1140)의 CSI 장치(1141)와 시리얼 통신을 수행할 수 있다. 일 실시예에서, CSI 호스트(1112)는 디시리얼라이저(DES)를 포함할 수 있고, CSI 장치(1141)는 시리얼라이저(SER)를 포함할 수 있다. 시스템 온 칩(1110)의 DSI 호스트(1111)는 디스플레이 시리얼 인터페이스(Display Serial Interface; DSI)를 통하여 디스플레이(1150)의 DSI 장치(1151)와 시리얼 통신을 수행할 수 있다.
일 실시예에서, DSI 호스트(1111)는 시리얼라이저(SER)를 포함할 수 있고, DSI 장치(1151)는 디시리얼라이저(DES)를 포함할 수 있다. 나아가, 전자 기기(1100)는 시스템 온 칩(1110)과 통신을 수행할 수 있는 알에프(Radio Frequency; RF) 칩(1160)을 더 포함할 수 있다. 전자 기기(1100)의 PHY(1113)와RF 칩(1160)의 PHY(1161)는 MIPI(Mobile Industry Processor Interface) DigRF에 따라 데이터 송수신을 수행할 수 있다. 또한, 시스템 온 칩(1110)은 PHY(1161)의 MIPI DigRF에 따른 데이터 송수신을 제어하는 DigRF MASTER(1114)를 더 포함할 수 있다.
한편, 전자 기기(1100)는 지피에스(Global Positioning System; GPS)(1120), 스토리지(1170), 마이크(1180), 디램(Dynamic Random Access Memory; DRAM)(1185) 및 스피커(1190)를 포함할 수 있다. 또한, 전자 기기(1100)는 초광대역(Ultra WideBand; UWB)(1210), 무선 랜(Wireless Local Area Network; WLAN)(1220) 및 와이맥스(Worldwide Interoperability for Microwave Access; WIMAX)(1230) 등을 이용하여 통신을 수행할 수 있다. 도 31에 도시된 전자 기기(1100)의 구조 및 인터페이스는 하나의 예시로서 이에 한정되는 것이 아니다
본 발명의 실시예들에 따른 전력 관리 회로 및 전력 관리 방법은 효율적인 온도 관리가 요구되는 시스템 온 칩, 이를 포함하는 장치 및 시스템에 유용하게 적용될 수 있으며, 특히 소형화, 고성능 및 효율적인 전력관리가 요구되는 디지털 카메라, 이동 전화기, 피디에이(PDA), 피엠피(PMP), 스마트폰 등의 휴대 기기에 더욱 유용하게 적용될 수 있다.
상기에서는 본 발명이 바람직한 실시예를 참조하여 설명하였지만, 해당 기술분야의 숙련된 당업자는 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 것이다.
TMU, 100: 온도 관리 유닛 MS, 200: 메인 센서
SSi, 310, 320, 330, 340: 서브 센서
SMT: 메인 온도 신호 SPi: 서브 온도 신호
RCLK: 기준 클록 신호 SRP: 기준 펄스 신호
INT: 인터럽트 신호 TRP: 트리핑 신호
120: 센서 제어부 140: 레지스터부
160: 온도 샘플링부 180: 인터럽트 발생부

Claims (28)

  1. 메인 센서를 이용하여 시스템 온 칩의 전체적인 메인 온도에 상응하는 디지털 신호를 메인 온도 신호로서 발생하는 단계;
    복수의 서브 센서들을 이용하여 상기 시스템 온 칩의 서브 블록들의 서브 온도들에 각각 비례하는 주파수들을 갖는 펄스 신호들을 서브 온도 신호들로서 발생하는 단계;
    상기 메인 온도 신호 및 상기 서브 온도 신호들에 기초하여 상기 시스템 온 칩의 동작을 제어하는 단계;
    상기 메인 온도 신호를 센싱 주기마다 래치하고 이전의 메인 온도값 및 현재의 메인 온도값을 저장하는 단계; 및
    상기 서브 온도 신호들의 펄스들을 상기 센싱 주기마다 카운팅하고 현재의 서브 온도 카운트값들을 저장하는 단계를 포함하는 시스템 온 칩의 온도 관리 방법.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 제1 항에 있어서, 상기 시스템 온 칩의 동작을 제어하는 단계는,
    적어도 하나의 온도 임계값, 상기 이전의 메인 온도값 및 상기 현재의 메인 온도값에 기초하여 인터럽트 신호를 발생하는 단계; 및
    상기 인터럽트 신호 및 상기 현재의 서브 온도 카운트값들에 기초하여 상기 서브 블록들의 각각의 동작 속도를 조절하는 단계를 포함하는 것을 특징으로 하는 시스템 온 칩의 온도 관리 방법.
  6. 삭제
  7. 제5 항에 있어서, 상기 서브 블록들의 각각의 동작 속도를 조절하는 단계는,
    상기 인터럽트 신호에 응답하여 상기 현재의 서브 온도 카운트값들의 크기를 비교하는 단계; 및
    상기 현재의 서브 온도 카운트값들의 크기의 비교 결과에 기초하여 상기 서브 블록들의 각각의 동작 속도를 조절하는 단계를 포함하는 것을 특징으로 하는 시스템 온 칩의 온도 관리 방법.
  8. 제7 항에 있어서,
    상기 인터럽트 신호가 상기 메인 온도의 증가를 나타내는 경우에는 상기 현재의 서브 온도 카운트값이 큰 상기 서브 블록의 동작 속도를 우선적으로 감소하고,
    상기 인터럽트 신호가 상기 메인 온도의 감소를 나타내는 경우에는 상기 현재의 서브 온도 카운트값이 작은 상기 서브 블록의 동작 속도를 우선적으로 증가하는 것을 특징으로 하는 시스템 온 칩의 온도 관리 방법.
  9. 제5 항에 있어서, 상기 서브 블록들의 각각의 동작 속도를 조절하는 단계는,
    상기 인터럽트 신호에 응답하여 상기 현재의 서브 온도 카운트값들의 산포도를 계산하는 단계; 및
    상기 현재의 서브 온도 카운트값들의 산포도에 기초하여 상기 서브 블록들의 각각의 동작 속도를 조절하는 단계를 포함하는 것을 특징으로 하는 시스템 온 칩의 온도 관리 방법.
  10. 삭제
  11. 삭제
  12. 제1 항에 있어서, 상기 시스템 온 칩의 동작을 제어하는 단계는,
    상기 현재의 메인 온도값과 최대 온도 임계값을 비교하는 단계: 및
    상기 현재의 메인 온도값이 상기 최대 온도 임계값보다 큰 경우에 상기 시스템 온 칩에 인가되는 외부 전원 전압을 차단하는 단계를 포함하는 것을 특징으로 하는 시스템 온 칩의 온도 관리 방법.
  13. 제1 항에 있어서,
    온도에 무관한 기준 주파수를 갖는 기준 클록 신호를 상기 센싱 주기마다 카운팅하여 현재의 기준 카운트값을 저장하는 단계;
    상기 현재의 서브 온도 카운트값들, 상기 현재의 기준 카운트값 및 상기 기준 주파수에 기초하여 상기 서브 온도들에 각각 비례하는 현재의 서브 온도 주파수들을 계산하는 단계; 및
    상기 현재의 서브 온도 주파수들에 기초하여 현재의 서브 온도값들을 계산하는 단계를 더 포함하는 것을 특징으로 하는 시스템 온 칩의 온도 관리 방법.
  14. 제1 항에 있어서,
    상기 메인 센서에 인접하여 배치되는 부가적인 서브 센서를 이용하여 상기 메인 온도에 비례하는 주파수를 갖는 기준 펄스 신호를 발생하는 단계;
    상기 기준 펄스 신호의 펄스들을 상기 센싱 주기마다 카운팅하여 현재의 기준 카운트값을 저장하는 단계; 및
    상기 현재의 서브 온도 카운트값들, 상기 현재의 메인 온도값 및 상기 현재의 기준 카운트값에 기초하여 현재의 서브 온도값들을 결정하는 단계를 더 포함하는 것을 특징으로 하는 시스템 온 칩의 온도 관리 방법.
  15. 각각의 고유 기능에 의해 구분되고 독립적인 각각의 열원(heat source)으로서 작용하는 복수의 서브 블록들을 포함하는 시스템 온 칩으로서,
    온도 정보에 기초하여 상기 시스템 온 칩의 동작을 제어하기 위한 온도 관리 신호를 발생하는 프로세서;
    상기 온도 관리 신호에 응답하여 상기 시스템 온 칩의 전원 전압 및 동작 주파수 중 적어도 하나를 조절하는 전력 관리 유닛;
    상기 시스템 온 칩의 전체적인 메인 온도에 상응하는 디지털 신호를 메인 온도 신호로서 발생하는 메인 센서;
    상기 서브 블록들의 서브 온도들에 각각 비례하는 주파수들을 갖는 펄스 신호들을 서브 온도 신호들로서 발생하는 복수의 서브 센서들; 및
    상기 메인 온도 신호 및 상기 서브 온도 신호들에 기초하여 상기 온도 정보를 제공하는 온도 관리 유닛을 포함하고,
    상기 메인 온도 신호를 센싱 주기마다 래치하고 이전의 메인 온도값 및 현재의 메인 온도값을 저장하며, 상기 서브 온도 신호들의 펄스들을 상기 센싱 주기마다 카운팅하고 현재의 서브 온도 카운트값들을 저장하는 시스템 온 칩.
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
KR1020120001139A 2012-01-04 2012-01-04 온도 관리 회로, 이를 포함하는 시스템 온 칩 및 온도 관리 방법 KR101885857B1 (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020120001139A KR101885857B1 (ko) 2012-01-04 2012-01-04 온도 관리 회로, 이를 포함하는 시스템 온 칩 및 온도 관리 방법
US13/656,383 US9405337B2 (en) 2012-01-04 2012-10-19 Temperature management circuit, system on chip including the same and method of managing temperature
DE102012110694A DE102012110694A1 (de) 2012-01-04 2012-11-08 Temperaturmanagementschaltung, Ein-Chip-System, welches dieselbe aufweist, und Verfahren zum Managen der Temperatur
TW101143023A TWI619012B (zh) 2012-01-04 2012-11-19 溫度管理電路、包含該電路的系統晶片以及管理溫度的方法
JP2012285174A JP6185718B2 (ja) 2012-01-04 2012-12-27 システムオンチップの温度管理方法
CN201310002266.5A CN103197747B (zh) 2012-01-04 2013-01-04 温度管理电路、包括其的片上系统和管理温度的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120001139A KR101885857B1 (ko) 2012-01-04 2012-01-04 온도 관리 회로, 이를 포함하는 시스템 온 칩 및 온도 관리 방법

Publications (2)

Publication Number Publication Date
KR20130080305A KR20130080305A (ko) 2013-07-12
KR101885857B1 true KR101885857B1 (ko) 2018-08-06

Family

ID=48608028

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120001139A KR101885857B1 (ko) 2012-01-04 2012-01-04 온도 관리 회로, 이를 포함하는 시스템 온 칩 및 온도 관리 방법

Country Status (6)

Country Link
US (1) US9405337B2 (ko)
JP (1) JP6185718B2 (ko)
KR (1) KR101885857B1 (ko)
CN (1) CN103197747B (ko)
DE (1) DE102012110694A1 (ko)
TW (1) TWI619012B (ko)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015041395A (ja) 2013-08-20 2015-03-02 キヤノン株式会社 情報処理装置及びその制御方法、並びに、そのプログラムと記憶媒体
JP6417700B2 (ja) * 2014-04-23 2018-11-07 富士通株式会社 半導体部品および電子機器
US9552034B2 (en) * 2014-04-29 2017-01-24 Qualcomm Incorporated Systems and methods for providing local hardware limit management and enforcement
JP2015219927A (ja) * 2014-05-14 2015-12-07 マイクロン テクノロジー, インク. 半導体装置
US9280188B2 (en) * 2014-06-03 2016-03-08 Mediatek Inc. Thermal control method and thermal control system
US9108448B1 (en) * 2014-08-06 2015-08-18 Funai Electric Co., Ltd. Temperature control circuit for an inkjet printhead
US9841325B2 (en) * 2014-08-29 2017-12-12 Oracle International Corporation High accuracy, compact on-chip temperature sensor
US9846541B2 (en) 2014-12-11 2017-12-19 Toshiba Memory Corporation Memory system for controlling perforamce by adjusting amount of parallel operations
CN105823971B (zh) * 2015-01-09 2018-11-16 中芯国际集成电路制造(上海)有限公司 芯片运行状态监测系统及监测方法
CN105824727B (zh) * 2015-01-09 2019-05-28 中芯国际集成电路制造(上海)有限公司 芯片运行状态监测系统及监测方法
KR102239356B1 (ko) 2015-02-17 2021-04-13 삼성전자주식회사 클록 제어 유닛 또는 전원 제어 유닛을 포함하는 저장 장치와 메모리 시스템, 그리고 그것의 동작 방법
US9625986B2 (en) 2015-03-13 2017-04-18 Kabushiki Kaisha Toshiba Semiconductor device and temperature control method of semiconductor device
KR102316441B1 (ko) 2015-04-14 2021-10-25 삼성전자주식회사 스토리지 장치 및 스토리지 장치의 동작 방법
JP2017058146A (ja) * 2015-09-14 2017-03-23 三菱電機株式会社 寿命推定回路およびそれを用いた半導体装置
CN105652916B (zh) * 2016-01-06 2017-12-01 京东方科技集团股份有限公司 处理器温度控制电路
CN106020170B (zh) 2016-07-07 2019-03-15 工业和信息化部电子第五研究所 SoC健康监测的方法、装置及系统
US10309838B2 (en) 2016-09-08 2019-06-04 Qualcomm Incorporated Temporal temperature sensor position offset error correction
US10255960B2 (en) * 2016-09-13 2019-04-09 Toshiba Memory Corporation Write pulse generator in a resistive memory
US10141938B2 (en) * 2016-09-21 2018-11-27 Xilinx, Inc. Stacked columnar integrated circuits
JP6678094B2 (ja) * 2016-12-05 2020-04-08 ルネサスエレクトロニクス株式会社 温度計測回路、方法、及びマイクロコンピュータユニット
CN108614756B (zh) * 2016-12-12 2021-12-24 中国航空工业集团公司西安航空计算技术研究所 具有温度监控功能的fc-ae-asm协议处理芯片
KR102325564B1 (ko) 2017-03-08 2021-11-12 삼성전자주식회사 전자 장치의 동적 열 관리 방법
TWI652567B (zh) 2017-12-26 2019-03-01 技嘉科技股份有限公司 可分區散熱的散熱裝置及具散熱裝置之主機板
JP7199860B2 (ja) * 2018-07-17 2023-01-06 キヤノン株式会社 集積回路装置
JP2020017133A (ja) * 2018-07-26 2020-01-30 キオクシア株式会社 ストレージ装置及び制御方法
US10664027B2 (en) * 2018-10-09 2020-05-26 Intel Corporation Methods, systems and apparatus for dynamic temperature aware functional safety
WO2020147105A1 (zh) * 2019-01-18 2020-07-23 深圳市汇顶科技股份有限公司 触控屏温度状态的检测方法、装置、触控芯片及电子设备
JP2020201074A (ja) * 2019-06-07 2020-12-17 株式会社村田製作所 温度検出回路及びモジュール
CN112882819B (zh) * 2019-11-29 2022-03-08 上海商汤智能科技有限公司 芯片工作频率的设置方法和装置
CN111722967A (zh) * 2020-06-23 2020-09-29 青岛歌尔智能传感器有限公司 高低温测试方法、系统、处理端及计算机可读存储介质
TWI760854B (zh) * 2020-09-22 2022-04-11 瑞昱半導體股份有限公司 晶片、佈局設計系統與佈局設計方法
TWI746336B (zh) * 2021-01-04 2021-11-11 仁寶電腦工業股份有限公司 儲存裝置以及儲存裝置管理方法
US11852544B2 (en) * 2021-02-25 2023-12-26 Infineon Technologies LLC Temperature sensor for non-volatile memory
TWI806035B (zh) * 2021-04-20 2023-06-21 瑞昱半導體股份有限公司 電路系統與電路內讀取溫度值的方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020147932A1 (en) * 2001-04-05 2002-10-10 International Business Machines Corporation Controlling power and performance in a multiprocessing system
KR100819954B1 (ko) 2003-03-21 2008-04-07 인텔 코포레이션 온 다이 온도 및/또는 전압 변화를 검출하는 방법 및 집적 회로 칩

Family Cites Families (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5873053A (en) * 1997-04-08 1999-02-16 International Business Machines Corporation On-chip thermometry for control of chip operating temperature
US6412977B1 (en) * 1998-04-14 2002-07-02 The Goodyear Tire & Rubber Company Method for measuring temperature with an integrated circuit device
US6091255A (en) * 1998-05-08 2000-07-18 Advanced Micro Devices, Inc. System and method for tasking processing modules based upon temperature
US6172611B1 (en) 1998-10-19 2001-01-09 Telcom Semiconductor, Inc. Independent hardware thermal sensing and monitoring
US6789037B2 (en) * 1999-03-30 2004-09-07 Intel Corporation Methods and apparatus for thermal management of an integrated circuit die
JP3769200B2 (ja) * 2001-03-06 2006-04-19 インターナショナル・ビジネス・マシーンズ・コーポレーション 冷却ファンの制御方法および装置
US6914764B2 (en) * 2002-07-11 2005-07-05 International Business Machines Corporation On-chip thermal sensing circuit
US6847911B2 (en) * 2002-08-02 2005-01-25 Infineon Technologies Ag Method and apparatus for temperature throttling the access frequency of an integrated circuit
US7168853B2 (en) * 2003-01-10 2007-01-30 International Business Machines Corporation Digital measuring system and method for integrated circuit chip operating parameters
US6934658B2 (en) * 2003-03-27 2005-08-23 International Business Machines Corporation Computer chip heat responsive method and apparatus
US6934652B2 (en) * 2003-11-10 2005-08-23 Sun Microsystems, Inc. On-chip temperature measurement technique
JP3781758B2 (ja) 2004-06-04 2006-05-31 株式会社ソニー・コンピュータエンタテインメント プロセッサ、プロセッサシステム、温度推定装置、情報処理装置および温度推定方法
JP3805344B2 (ja) 2004-06-22 2006-08-02 株式会社ソニー・コンピュータエンタテインメント プロセッサ、情報処理装置およびプロセッサの制御方法
JP4465598B2 (ja) 2004-07-05 2010-05-19 ソニー株式会社 集積回路およびその処理制御方法、並びに、プログラム
US7347621B2 (en) 2004-07-16 2008-03-25 International Business Machines Corporation Method and system for real-time estimation and prediction of the thermal state of a microprocessor unit
US7150561B1 (en) * 2004-09-16 2006-12-19 National Semiconductor Corporation Zero temperature coefficient (TC) current source for diode measurement
US7180380B2 (en) * 2005-04-20 2007-02-20 Advanced Micro Devices, Inc. Zoned thermal monitoring
DE102005025168B4 (de) 2005-06-01 2013-05-29 Qimonda Ag Elektronische Speichervorrichtung und Verfahren zum Betreiben einer elektronischen Speichervorrichtung
US7535020B2 (en) * 2005-06-28 2009-05-19 Kabushiki Kaisha Toshiba Systems and methods for thermal sensing
KR100652422B1 (ko) 2005-08-10 2006-12-01 삼성전자주식회사 온-칩 온도 센서 및 온도 검출 방법, 이를 이용한 리프레쉬제어 방법
JP2007250591A (ja) 2006-03-13 2007-09-27 Toshiba Corp 温度制御システム
JP2007281139A (ja) 2006-04-05 2007-10-25 Toshiba Corp 温度制御システム
KR100816690B1 (ko) 2006-04-13 2008-03-27 주식회사 하이닉스반도체 온도 감지장치를 구비하는 반도체메모리소자
US7507019B2 (en) * 2006-05-19 2009-03-24 Covidien Ag Thermometer calibration
US20070290702A1 (en) 2006-06-19 2007-12-20 Credence Systems Corporation System and method for thermal management and gradient reduction
JP2008026948A (ja) 2006-07-18 2008-02-07 Renesas Technology Corp 半導体集積回路
KR100810061B1 (ko) 2006-11-02 2008-03-05 주식회사 하이닉스반도체 반도체 메모리 소자의 온도 정보 출력장치 및 내부온도 측정방법
US8423832B2 (en) * 2006-11-07 2013-04-16 Hewlett-Packard Development Company, L.P. System and method for preventing processor errors
US8122265B2 (en) 2006-12-29 2012-02-21 Intel Corporation Power management using adaptive thermal throttling
JP5063124B2 (ja) * 2007-01-25 2012-10-31 三菱電機株式会社 半導体装置
TWI388974B (zh) * 2007-03-01 2013-03-11 Via Tech Inc 根據工作溫度的變化來動態改變功率損耗的微處理器及方法
US7525860B2 (en) * 2007-04-30 2009-04-28 Qimonda North American Corp. System and method for monitoring temperature in a multiple die package
US7870407B2 (en) * 2007-05-18 2011-01-11 Advanced Micro Devices, Inc. Dynamic processor power management device and method thereof
KR100854463B1 (ko) 2007-05-21 2008-08-27 주식회사 하이닉스반도체 온도센서회로 및 이를 이용한 반도체 메모리 장치
US7877222B2 (en) * 2007-07-20 2011-01-25 International Business Machines Corporation Structure for a phase locked loop with adjustable voltage based on temperature
US20090235108A1 (en) * 2008-03-11 2009-09-17 Gold Spencer M Automatic processor overclocking
KR101520358B1 (ko) 2008-12-09 2015-05-14 삼성전자주식회사 온도변화에 따른 출력특성을 보상한 온도감지기 및 온도보상방법
US9043795B2 (en) * 2008-12-11 2015-05-26 Qualcomm Incorporated Apparatus and methods for adaptive thread scheduling on asymmetric multiprocessor
KR20100079184A (ko) * 2008-12-30 2010-07-08 주식회사 동부하이텍 온도 측정 장치
US8169764B2 (en) 2009-02-20 2012-05-01 Apple Inc. Temperature compensation in integrated circuit
JP5498047B2 (ja) * 2009-04-01 2014-05-21 株式会社東芝 半導体集積回路
TWI368839B (en) * 2009-04-21 2012-07-21 Univ Nat Sun Yat Sen System and method for controlling chip temperature
KR20110034729A (ko) * 2009-09-29 2011-04-06 삼성전자주식회사 프로세서를 포함하는 장치의 전력 관리 방법
TWI425337B (zh) * 2009-12-28 2014-02-01 Asustek Comp Inc 具超/降頻控制功能之電腦系統及其相關控制方法
US8595731B2 (en) 2010-02-02 2013-11-26 International Business Machines Corporation Low overhead dynamic thermal management in many-core cluster architecture
KR101151780B1 (ko) 2010-06-29 2012-06-05 이재용 비상구 유도등 및 그 비상구 유도등의 화재정보 처리방법
US8909383B2 (en) * 2011-12-22 2014-12-09 International Business Machines Corporation Proactive cooling of chips using workload information and controls

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020147932A1 (en) * 2001-04-05 2002-10-10 International Business Machines Corporation Controlling power and performance in a multiprocessing system
KR100819954B1 (ko) 2003-03-21 2008-04-07 인텔 코포레이션 온 다이 온도 및/또는 전압 변화를 검출하는 방법 및 집적 회로 칩

Also Published As

Publication number Publication date
DE102012110694A1 (de) 2013-07-04
US20130169347A1 (en) 2013-07-04
JP2013140979A (ja) 2013-07-18
TW201329703A (zh) 2013-07-16
KR20130080305A (ko) 2013-07-12
CN103197747A (zh) 2013-07-10
CN103197747B (zh) 2017-07-18
DE102012110694A8 (de) 2013-09-26
US9405337B2 (en) 2016-08-02
TWI619012B (zh) 2018-03-21
JP6185718B2 (ja) 2017-08-23

Similar Documents

Publication Publication Date Title
KR101885857B1 (ko) 온도 관리 회로, 이를 포함하는 시스템 온 칩 및 온도 관리 방법
TWI594115B (zh) 熱控制裝置及方法
US7276925B2 (en) Operating an integrated circuit at a minimum supply voltage
US7427158B2 (en) Advanced thermal sensor
US9503058B1 (en) Relaxation oscillator
US8415972B2 (en) Variable-width power gating module
EP3164780B1 (en) Multi-domain heterogeneous process-voltage-temperature tracking for integrated circuit power reduction
Wilcox et al. Steamroller module and adaptive clocking system in 28 nm CMOS
TWI576592B (zh) 用於控制定製電路及記憶體的動態邊際調諧
US9459314B1 (en) Circuit and method for real-time monitoring of process, temperature, and voltage variations
US9503068B1 (en) Supply voltage envelope detection
CN107112994B (zh) 用于集成电路的电源管理系统
US20140028364A1 (en) Critical path monitor hardware architecture for closed loop adaptive voltage scaling and method of operation thereof
Shan et al. In-situ timing monitor-based adaptive voltage scaling system for wide-voltage-range applications
US8315830B2 (en) On-chip variation, speed and power regulator
JP2008180635A (ja) 半導体装置
US10650112B1 (en) Multi-bit clock gating cell to reduce clock power
US20230195191A1 (en) Fast droop detection circuit
Wirnshofer et al. An energy-efficient supply voltage scheme using in-situ pre-error detection for on-the-fly voltage adaptation to PVT variations
US11615230B2 (en) Wide range clock monitor system
CN115053200A (zh) 自适应上电复位发生器系统和用于可编程逻辑设备的方法
Wirnshofer et al. Design of In-situ Delay Monitors

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