The present invention relates to a semiconductor device and a method for controlling the same.
In recent years, the functions and the performance of semiconductor devices have been improving in accordance with miniaturization thereof, but as a result, the proportion of a leakage power (power consumed by a leakage current) in the consumed power tends to increase. It is known that the leakage power abruptly changes according to a temperature.
Incidentally, Patent literature 1 to 3 each disclose a technique for controlling an operating frequency (frequency of an operation clock) according to a temperature of a Central Processing Unit (CPU) or a processor.
The inventors have found various problems when developing semiconductor devices used for communication terminals and the like. Each of the embodiments disclosed in the present application provides a semiconductor device suitable, for example, for communication terminals and the like.
Other problems and novel characteristics will be apparent from the description of the present specification and the accompanying drawings.
In a semiconductor device according to one embodiment, when a measured temperature is higher than a predetermined reference temperature, an operating frequency is switched from a first frequency to a second frequency higher than the first frequency.
According to one embodiment, it is possible to provide a semiconductor device having a high quality that is suitable, for example, for an electronic device such as a wireless communication terminal.
Hereinafter, with reference to the drawings, specific exemplary embodiments will be described in detail. It should be noted, however, that the present invention is not limited to the following embodiments. The following descriptions and the drawings are simplified as appropriate for the sake of clarification of description.
First, the matters that had been examined in advance by the present inventors will be described.
As stated above, the increase in the leakage power in the consumed power, which occurs due to the miniaturization of semiconductor devices, is a problem. With reference to
The MOSFET shown in
As shown in
The subthreshold leakage current ISUB is a current that flows between the drain 93 and the source 92 when the MOSFET is OFF. The subthreshold leakage current ISUB tends to increase in accordance with a decrease in a threshold voltage in recent MOSFETs. The subthreshold leakage current ISUB has a large temperature dependency, and sharply increases in accordance with an increase in a junction temperature (channel temperature) of the MOSFET.
The gate leakage current (gate tunnel current) IGATE is a current that flows between the gate 91 and the silicon substrate 90 (or between the gate 91 and the source 92, or between the gate 91 and the drain 93) because of electrons tunneling through the thin gate insulating film 94.
The Gate-Induced Drain Leakage (GIDL) current IGIDL is a current that flows between the drain 93 and the silicon substrate 90 due to tunneling caused by an electric field between the gate 91 and the drain 92.
The gate leakage current IGATE and the GIDL current IGIDL increase due to a decrease in the thickness of the gate insulating film 94 according to the miniaturization of the MOSFET. On the other hand, the temperature dependencies of the gate leakage current IGATE and the GIDL current IGIDL are both small.
Referring next to
As shown in
The statuses of the semiconductor device will now be described. The statuses of the semiconductor device include three states: an active state, an idle state, and a shutdown state.
The active state is a state in which a power and a clock are supplied and processing is actually being carried out. This state is a state in which, when the semiconductor device is an application processor for a wireless communication terminal, for example, the semiconductor device actually carries out processing such as a wireless data communication, a music reproduction, or a video reproduction. In the active state, the active power PA, the idle power PI, and the leakage power PL are all generated.
The idle state (also called a stalled state) is a state in which, while the power and the clock are supplied, the processing is not actually carried out (i.e., a state in which a response from a target is awaited). In the idle state, the idle power PI and the leakage power PL are generated and the active power PA is not generated.
The shutdown state is a state in which the power and the clock are not supplied. In the shutdown state, none of the active power PA, the idle power PI, and the leakage power PL occurs.
As shown in
As shown in
In the graphs shown in
The operating frequency in
The present inventors have studied about the reduction in the power consumed in the semiconductor device. The details thereof will be described below.
First, with reference to
Note that
The display device 502 is a display device such as a liquid crystal display (LCD: Liquid Crystal Display), an organic EL display (OLED: Organic Light-Emitting Diode) and the like. The display device 502 is disposed such that the displaying face is positioned on the front face of the housing 501.
The touch panel 503 is disposed so as to cover the displaying face of the display device 502. Alternatively, it is disposed on the back side of the display device 502. The touch panel 503 senses the position on the displaying face touched by a user. That is, the user can intuitively operate the wireless communication terminal 500 by touching the displaying face of the display device 502 with a finger, a dedicated pen (generally referred to as a stylus) and the like.
The operation buttons 504 are used for auxiliary operating of the wireless communication terminal 500. Note that such operation buttons may not be provided depending on the wireless communication terminals.
The camera device 505 is a sub-camera whose lens unit is positioned on the front face of the housing 501. Note that such a sub-camera may not be provided depending on the wireless communication terminals.
The camera device 506 is a main camera whose lens unit is positioned on the back face of the housing 501.
With reference to
As shown in
The application processor (host IC) 601 is a semiconductor integrated circuit that reads programs stored in the main memory 604 to carry out processing for implementing various functions of the wireless communication device 600. For example, the application processor 601 reads an Operating System (OS) program from the main memory 604 and executes the same, and executes any application program that operates on the OS program.
The baseband processor 602 subjects data transmitted and received by the mobile communication terminal to baseband processing, which includes an encoding process (e.g., error correction coding of convolution codes, turbo codes and the like), a decoding process and the like. As to voice data, for example, the baseband processor 602 receives transmission voice data from the audio IC 610 and performs an encoding process on the received transmission voice data, and transmits the encoded transmission voice data to the RFIC 603. On the other hand, the baseband processor 602 receives reception voice data from the RFIC 603 and performs a decoding process on the received reception voice data, and transmits the decoded reception voice data to the audio IC 610.
The RFIC 603 performs analog RF signal processing. The analog RF signal processing includes frequency upconversion, frequency downconversion, amplification and the like. As to voice data, for example, the RFIC 603 generates a transmission RF signal from transmission voice data modulated by the baseband processor 602, and transmits the transmission RF signal via an antenna in a wireless manner. On the other hand, the RFIC 603 receives a reception RF signal via the antenna in a wireless manner and generates reception voice data from the reception RF signal, and transmits the generated reception voice data to the baseband processor 602.
The main memory (external memory) 604 stores programs and data that are used by the application processor 601. A volatile memory such as a Dynamic Random Access Memory (DRAM) is frequently used as the main memory 604. Data stored in the volatile memory is deleted when power supply is shut down. Needless to say, a non-volatile memory that retains stored data even when power supply is shut down may be used as the main memory 604.
The battery 605 is an electric battery, and used when the wireless communication device 600 operates independently of an external power supply. Note that the wireless communication device 600 may be supplied with power from the battery 605 even when it is connected to any external power supply. Further, it is preferable to use a secondary battery as the battery 605.
The power management IC 606 generates an internal power supply from the battery 605 or an external power supply. This internal power supply is supplied to each of the blocks in the wireless communication device 600. The power management IC 606 controls the voltage of the internal power supply for each block supplied with the internal power supply. The power management IC 606 performs the voltage control for the internal power supply based on instructions from the application processor 601. Further, the power management IC 606 can control supplying and blocking of the internal power supply for each block. In addition, the power management IC 606 also performs charging control for the battery 605 when supply from the external power supply is available.
The display unit 607 corresponds to the display device 502 shown in
The camera unit 608 acquires an image in accordance with an instruction from the application processor 601. The camera unit 608 corresponds to the camera devices 505 and 506 in
The operation input unit 609 is a user interface for the user to operate to provide an operation instruction to the wireless communication device 600. The operation input unit 609 corresponds to the touch panel 503 and the operation buttons 504 shown in
The audio IC 610 converts reception voice data, which is a digital signal received from the baseband processor 602, into an analog signal, and drives the speaker 612. Thus voice is output from the speaker 612. On the other hand, the audio IC 610 subjects voice, which is an analog signal detected by the microphone 611, to an analog-to-digital (A/D) conversion, and outputs the converted signal to the baseband processor 602.
Referring to
The application processor 601 according to the first embodiment is provided on one semiconductor chip. In the application processor 601, the power reduction mode controller 100 controls a power reduction mode according to a chip temperature (temperature of the semiconductor chip) measured by the temperature sensor TS. Specifically, when the chip temperature exceeds a predetermined reference temperature, the power reduction mode controller 100 selects a leakage power reduction mode (first mode) and sets a frequency of an operation clock of the CPU generated by the clock generation unit CPG to be high.
On the other hand, when the chip temperature of the application processor 601 is below the predetermined reference temperature, the power reduction mode controller 100 selects an idle power reduction mode (second mode) and sets the frequency of the operation clock of the CPU generated by the clock generation unit CPG to be low. In summary, the power reduction mode controller 100 controls the frequency of the operation clock generated by the clock generation unit CPG.
The CPU operates according to an operation clock ck1 output from the clock generation unit CPG. That is, the operating frequency of the CPU is a frequency of the operation clock ck1. When the system starts, the CPU outputs an initializing signal rst to the storage unit REG to initialize various data stored in the storage unit REG. The CPU then outputs to the reference temperature calculation unit RC a start request req1 to request the reference temperature calculation unit RC to start a subroutine 1 to calculate a reference temperature Tref. The details of the subroutine 1 will be described later. The CPU further outputs to the temperature monitoring unit TM a start request req2 to request the temperature monitoring unit TM to start a subroutine 2 to acquire a measured temperature Ta. The details of the subroutine 2 will be described later.
The temperature sensor TS is a so-called on-chip temperature sensor, and measures the chip temperature of the application processor 601 (may be referred to as a junction temperature or a channel temperature).
The temperature monitoring unit TM starts, in response to the start request req2 of the subroutine 2 output from the CPU, monitoring of the measured temperature Ta measured by the temperature sensor TS. The temperature monitoring unit TM includes a timer therein. The timer is, for example, a counter. The timer repeats, for example, counting from 0 to the maximum value. The temperature monitoring unit TM outputs a measurement request req5 to the temperature sensor TS at a timing at which the timer reaches the maximum value, for example, to acquire the measured temperature Ta from the temperature sensor TS. In summary, the temperature monitoring unit TM repeatedly acquires the measured temperature Ta from the temperature sensor TS. The temperature monitoring unit TM outputs the measured temperature Ta acquired from the temperature sensor TS to the mode determination unit MD. The maximum value (limit value) of the timer is stored, for example, in the storage unit REG. As a matter of course, the configuration of the timer is not limited to the aforementioned configuration.
The reference temperature calculation unit RC starts to calculate the reference temperature Tref in response to the start request req1 of the subroutine 1 output from the CPU. The reference temperature calculation unit RC includes a timer therein. This timer has a configuration similar to that of the timer of the temperature monitoring unit TM. The temperature monitoring unit TM outputs a measurement request req3 such as an active cycle ac1 to the cycle measurement unit CM at a timing at which the timer reaches the maximum value, for example. In summary, the reference temperature calculation unit RC repeatedly outputs the measurement request req3 to the cycle measurement unit CM. The maximum value (limit value) of the timer is stored, for example, in the storage unit REG. The active cycle ac1 [Hz] is, for example, a total number of cycles of the operation clock per unit time in which the semiconductor device is in the active state.
Further, the reference temperature calculation unit RC acquires, upon receiving a reference change request req4 output from the comparison unit CMP, a calculation basic data d1 from the storage unit REG and acquires a calculation measured data d2 from the cycle measurement unit CM. The reference temperature calculation unit RC calculates the reference temperature Tref using the calculation basic data d1 and the calculation measured data d2 that have been acquired to output the reference temperature Tref to the mode determination unit MD.
The calculation basic data d1 includes a reference temperature calculation formula and an element idle power. The reference temperature calculation formula is a calculation formula to calculate the reference temperature Tref. The element idle power [W/Hz] is an idle power PI per operating frequency (slope of the idle power PI shown in
The calculation measured data d2 includes an idle cycle CI and a shutdown rate r. The idle cycle CI [Hz] is a total number of cycles of the operation clock per unit time in which the semiconductor device is in the idle state. The shutdown rate r is a rate per unit time in which the semiconductor device is in the shutdown state. The shutdown rate r is expressed by a numerical value from 0 to 1. The shutdown rate r=0.2 means that the shutdown rate is 20%.
The cycle measurement unit CM measures the active cycle ac1, the idle cycle CI, and the shutdown rate r in response to the measurement request req3 output from the reference temperature calculation unit RC. The cycle measurement unit CM outputs the acquired active cycle ac1 to the comparison unit CMP. Further, the cycle measurement unit CM stores, in response to the reference change request req4 output from the comparison unit CMP, the acquired active cycle ac1 in the storage unit REG as a new reference active cycle ac2. On the other hand, the cycle measurement unit CM outputs the idle cycle CI and the shutdown rate r that have been measured to the reference temperature calculation unit RC as the calculation measured data d2.
The storage unit REG is a register that holds various data. The storage unit REG according to this embodiment holds limit values of the timers included in the temperature monitoring unit TM and the reference temperature calculation unit RC, the calculation basic data d1, and the reference active cycle ac2. The various data held by the storage unit REG is initialized according to the initializing signal rst output from the CPU when the system starts.
The comparison unit CMP compares the active cycle ac1 acquired from the cycle measurement unit CM with the reference active cycle ac2 held in the storage unit REG. When the change of the active cycle ac1 with respect to the reference active cycle ac2 is large, the comparison unit CMP outputs to the reference temperature calculation unit RC the reference change request req4 to change the reference temperature Tref. On the other hand, when the change of the active cycle ac1 with respect to the reference active cycle ac2 is small, the comparison unit CMP does not output the reference change request req4 to the reference temperature calculation unit RC.
More specifically, for example, the comparison unit CP does not output the reference change request req4 when ac2×0.9<ac1<ac2×1.1 is satisfied, whereas the comparison unit CP outputs the reference change request req4 when ac2×0.9<ac1<ac2×1.1 is not satisfied. As described above, the reference change request req4 output from the comparison unit CMP is also input to the cycle measurement unit CM. The cycle measurement unit CM stores the acquired active cycle ac1 in the storage unit REG as the new reference active cycle ac2. However, when the comparison unit CMP outputs the reference change request req4, the active cycle ac1 compared by the comparison unit CMP may be stored in the storage unit REG as the new reference active cycle ac2.
The mode determination unit MD compares the reference temperature Tref acquired from the reference temperature calculation unit RC with the measured temperature Ta acquired from the temperature monitoring unit TM to determine the power reduction mode. Specifically, for example, the idle power reduction mode is selected when Ta<Tref is satisfied, whereas the leakage power reduction mode is selected when Ta<Tref is not satisfied. The mode determination unit MD outputs a mode signal (control signal) mod according to the determination result to the clock generation unit CPG.
The clock generation unit CPG generates the operation clock ck1 of the CPU according to the mode signal mod output from the mode determination unit MD. Specifically, in the idle power reduction mode, the clock generation unit CPG sets the frequency of the operation clock ck1 to be output (operating frequency) to be low. In the leakage power reduction mode, the clock generation unit CPG sets the frequency of the operation clock ck1 to be output to be high.
The power supply controller PSC outputs a power supply enable signal psen1 to control ON/OFF of a power supply switch SW1 connected to the CPU. The ON/OFF of the power supply switch SW1 is controlled according to the state of the CPU. Specifically, when the CPU is in the active state or the idle state, the power supply switch SW1 is ON and a power supply voltage is supplied to the CPU. On the other hand, when the CPU is in the shutdown state, the power supply switch SW1 is OFF and the supply of the power supply voltage to the CPU is stopped. The power supply switch SW1 is composed of, for example, a MOSFET, and the power supply enable signal psen1 is input to the gate terminal (control terminal) of the power supply switch SW1.
Referring next to
When the system starts, the CPU starts the main routine. As shown in
Next, the CPU outputs to the reference temperature calculation unit RC the start request req1 of the subroutine 1 to calculate the reference temperature Tref. The reference temperature calculation unit RC starts the subroutine 1 in response to the start request req1 (Step S2). The details of the subroutine 1 will be described later.
Next, the CPU outputs to the temperature monitoring unit TM the start request req2 of the subroutine 2 to acquire the measured temperature Ta. The temperature monitoring unit TM starts, in response to the start request req2, the subroutine 2 (Step S3). The details of the subroutine 2 will be described later. The order of Step S2 and Step S3 may be reversed.
Next, the reference temperature calculation unit RC sets the reference temperature Tref acquired in the subroutine 1 to the mode determination unit MD (Step S4). Further, the temperature monitoring unit TM sets the measured temperature Ta acquired in the subroutine 2 to the mode determination unit MD (Step S5). Note that the order of Step S4 and Step S5 may be reversed.
Next, the mode determination unit MD compares the measured temperature Ta with the reference temperature Tref to determine whether Ta<Tref is satisfied (Step S6). When Ta<Tref is satisfied (YES in Step S6), the mode determination unit MD selects the idle power reduction mode and the clock generation unit CPG sets the frequency of the operation clock ck1 of the CPU to be low (Step S7). The clock generation unit CPG sets the frequency of the operation clock ck1 of the CPU to, for example, the minimum frequency at which the CPU can operate without disrupting the processing. After that, the process goes back to Step S4, and the mode determination is repeated.
On the other hand, when Ta<Tref is not satisfied (NO in Step S6), the mode determination unit MD selects the leakage power reduction mode and the clock generation unit CPG sets the frequency of the operation clock ck1 of the CPU to be high (Step S8). The clock generation unit CPG sets the frequency of the operation clock ck1 of the CPU to, for example, the maximum frequency at which the CPU can operate. After that, the process goes back to Step S4, and the mode determination is repeated.
Next, with reference to
The reference temperature calculation unit RC starts, in response to the start request req1 of the subroutine 1 from the CPU, the subroutine 1.
First, the reference temperature calculation unit RC resets the value of the timer included therein (Step S11).
Next, when the timer reaches the limit value (i.e., when the timer expires), the reference temperature calculation unit RC outputs the measurement request req3 for the active cycle ac1 to the cycle measurement unit CM (Step S12).
Next, the cycle measurement unit CM measures, in response to the measurement request req3 from the reference temperature calculation unit RC, the active cycle ac1 and outputs the active cycle ac1 to the comparison unit CMP (Step S13). The cycle measurement unit CM also measures the idle cycle CI [Hz] and the shutdown rate r in addition to the active cycle ac1.
Next, the comparison unit CMP compares the active cycle ac1 acquired from the cycle measurement unit CM with the reference active cycle ac2 stored in the storage unit REG. Specifically, the comparison unit CMP determines, for example, whether ac2×0.9<ac1<ac2×1.1 is satisfied (Step S14). That is, the comparison unit CMP determines whether the change of the active cycle ac1 with respect to the reference active cycle ac2 is smaller than 10%. The numerical value 10% is merely an example and may be set as appropriate according to the purpose, the application and the like.
When ac2×0.9<ac1<ac2×1.1 is satisfied (YES in Step S14), the comparison unit CMP does not output the reference change request req4 to the reference temperature calculation unit RC, and the process goes back to Step S11. That is, when the change of the active cycle ac1 with respect to the reference active cycle ac2 is small, the comparison unit CMP does not output the reference change request req4 to the reference temperature calculation unit RC.
On the other hand, when ac2×0.9<ac1<ac2×1.1 is not satisfied (NO in Step S14), the comparison unit CMP outputs the reference change request req4 to the reference temperature calculation unit RC (Step S15). That is, when the change of the active cycle ac1 with respect to the reference active cycle ac2 is large, the comparison unit CMP outputs the reference change request req4 to the reference temperature calculation unit RC. The reference change request req4 is also input to the cycle measurement unit CM.
Next, the cycle measurement unit CM stores, in response to the reference change request req4, the active cycle ac1 in the storage unit REG as the new reference active cycle ac2 (Step S16). That is, when the reference temperature Tref is updated, the reference active cycle ac1 is also updated.
Next, the reference temperature calculation unit RC calculates, in response to the reference change request req4, the idle power PI [W] using the element idle power EI [W/Hz] stored in the storage unit REG and the idle cycle CI [Hz] acquired from the cycle measurement unit CM (Step S17). Specifically, the idle power PI [W] is calculated from the expression of PI [W]=EI [W/Hz]×CI [Hz].
Next, the reference temperature calculation unit RC calculates the reference temperature Tref using the shutdown rate and the reference temperature calculation formula stored in the storage unit REG (Step S18). After that, the process goes back to Step S11 and repeats the flow of Steps S11-S18.
An example of the reference temperature calculation formula used to calculate the reference temperature Tref will be shown below.
First, the leakage current iL [A] per transistor can be expressed by the following Expression 1 using a coefficient α [A/nm], a gate width W [nm], a threshold voltage VT [V], a subthreshold coefficient n, and a temperature voltage Ut [V]. The coefficient α and the subthreshold coefficient n can be obtained from experiments and the like.
i
L
=αW exp{−VT/(nUt)} (Expression 1)
The temperature voltage Ut [V] may be expressed by the following Expression 2 using the Boltzmann constant k=1.38×10−23 [J/K], the absolute temperature T [K], and the quantum of electricity q=1.6×1019 [C].
Ut=kT/q (Expression 2)
Now, the leakage current IL [A] of the semiconductor device may be expressed by the following Expression 3 from Expressions 1 and 2 using the number of transistors N forming the semiconductor device and the shutdown rate r.
I
L
=αWN(1−r)exp{−qVT/(nkT)}× (Expression 3)
From Expression 3, the absolute temperature T [K] may be expressed by the following Expression 4.
T=−qV
T/(nk)/ln [IL/{αWN(1−r)}] (Expression 4)
The absolute temperature T [K] of Expression 4 may be expressed as a Celsius temperature TC [° C.](=T−T0 by the following Expression 5. The absolute temperature of 0° C.: T0 is 273.15 [K].
T
C
=−qV
T/(nk)/ln [IL/{αWN(1−r)}]−T0 (Expression 5)
The temperature when the ratio of the idle power PI [W] (=idle current II [A]×operating voltage V [V]) to the leakage power PL [W] (=leakage current IL [A]×operating voltage V [V]) is 1:m (i.e., the temperature when IL=mII=mPI/V) is denoted by a reference temperature Tref [° C.]. The reference temperature Tref [° C.] can be expressed by the following Expression 6 from Expression 5. While the value of m may be determined as appropriate, it may be, for example, about 10.
Tref=−qV
T/(nk)/ln [(mPI/V)/{αWN(1−r)}]−T0 (Expression 6)
This Expression 6 is the reference temperature calculation formula. By substituting the idle power PI [W] calculated in Step S17 and the shutdown rate r acquired from the cycle measurement unit CM into Expression 6, the reference temperature Tref [° C.] can be obtained.
Next, with reference to
The temperature monitoring unit TM starts the subroutine 2 in response to the start request req2 of the subroutine 2 from the CPU.
First, the temperature monitoring unit TM resets the value of the timer included therein (Step S21).
Next, when the timer reaches the limit value (i.e., when the timer expires), the temperature monitoring unit TM outputs the temperature measurement request req5 to the temperature sensor TS (Step S22).
Next, the temperature monitoring unit TM acquires the measured temperature Ta output from the temperature sensor TS in response to the measurement request req5 (Step S23). After that, the process goes back to Step S21 and the flow of Steps S21 to S23 is repeated.
Referring next to
In the graphs shown in
The operating frequency in
By comparing
Since the time during which the semiconductor device is in the active state in
Next, by comparing
The idle power PI per unit time in
In the example, the operating frequency is controlled to be decreased when the temperature is lower than the reference temperature Tref, and the operating frequency is controlled to be increased when the temperature is higher than the reference temperature Tref. On the contrary, in the comparative example, the operating frequency is controlled to be increased when the temperature is lower than the reference temperature Tref, and the operating frequency is controlled to be decreased when the temperature is higher than the reference temperature Tref.
As shown in
As described above, in the semiconductor device according to this embodiment, it is determined which one of the idle power PI that increases in proportion to the operation frequency and the leakage power PL that sharply increases in accordance with the increase in the temperature should be reduced to further contribute to the reduction in the consumed power as a whole by comparing the reference temperature Tref with the measured temperature Ta. The consumed power is reduced by appropriately controlling the operating frequency based on this comparison result.
Specifically, when the measured temperature Ta is smaller than the reference temperature Tref and the leakage power PL is small, the power reduction mode controller (controller) 100 controls the operating frequency to be low. Accordingly, the idle power PI is reduced, whereby it is possible to reduce the power consumption as a whole. On the other hand, when the measured temperature Ta is larger than the reference temperature Tref and the leakage power PL is large, the power reduction mode controller (controller) 100 controls the operating frequency to be high. In summary, the leakage power PL can be reduced by reducing the time during which the semiconductor device is in the active state (increasing the time during which the semiconductor device is in the shutdown state), whereby it is possible to reduce the power consumption as a whole.
Further, according to the reduction of the power consumption, heat generated from the semiconductor device can be suppressed. It is therefore possible to suppress thermal runaway of the semiconductor device according to the increase in the chip temperature. In summary, the reliability of the semiconductor device is also improved.
With reference to
The image processing unit IPU is a processor dedicated for image processing and is composed of, for example, a Digital Signal Processor (DSP). The image processing unit IPU receives an operation clock ck2 output from the clock generation unit CPG. In the semiconductor device according to this embodiment, the image processing unit IPU executes processing in, for example, the use case which requires image processing such as video reproduction, and is always in the shutdown state in the use case which does not require image processing.
The voice processing unit VPU is a processor dedicated for voice processing, and is composed of, for example, a Digital Signal Processor (DSP). The voice processing unit VPU receives an operation clock ck3 output from the clock generation unit CPG. In the semiconductor device according to this embodiment, the voice processing unit VPU executes processing in, for example, the use case which requires voice processing such as music reproduction, and is always in the shutdown state in the use case which does not require voice processing.
The power supply controller PSC outputs the power supply enable signal psen1 that controls ON/OFF of the power supply switch SW1 connected to the CPU. Further, the power supply controller PSC outputs a power supply enable signal psen2 that controls the ON/OFF of a power supply switch SW2 connected to the image processing unit IPU. Further, the power supply controller PSC outputs a power supply enable signal psen3 that controls the ON/OFF of a power supply switch SW3 connected to the voice processing unit VPU. The power supply switches SW1 to SW3 are each composed of, for example, a MOSFET, and the power supply enable signals psen1 to psen3 are input to the gate terminals (control terminals) of the power supply switches SW1 to SW3, respectively.
The ON/OFF of the power supply switch SW1 is controlled according to the state of the CPU. Specifically, when the CPU is in the active state or the idle state, the power supply switch SW1 is ON. On the other hand, when the CPU is in the shutdown state, the power supply switch SW1 is OFF.
Similarly, the ON/OFF of the power supply switch SW2 is controlled according to the state of the image processing unit IPU. Specifically, when the image processing unit IPU is in the active state or the idle state, the power supply switch SW2 is ON. On the other hand, when the image processing unit IPU is in the shutdown state, the power supply switch SW2 is OFF.
Similarly, the ON/OFF of the power supply switch SW3 is controlled according to the state of the voice processing unit VPU. Specifically, when the voice processing unit VPU is in the active state or the idle state, the power supply switch SW3 is ON. On the other hand, when the voice processing unit VPU is in the shutdown state, the power supply switch SW3 is OFF.
Since the other configurations are similar to those of the semiconductor device according to the first embodiment, detailed descriptions thereof will be omitted.
Next, with reference to
<1> Operation when System Starts
When the system starts, the CPU starts the main routine. First, as shown in
Next, the CPU outputs to the reference temperature calculation unit RC the start request req1 to request the reference temperature calculation unit RC to start the subroutine 1 to calculate the reference temperature Tref. Further, the CPU outputs to the temperature monitoring unit TM the start request req2 to request the temperature monitoring unit TM to start the subroutine 2 to acquire the measured temperature Ta.
The reference temperature calculation unit RC resets the internal timer in response to the start request req1 of the subroutine 1 and outputs the measurement request req3 of the various measured data to the cycle measurement unit CM when the timer expires. The cycle measurement unit CM measures, in response to the measurement request req3, the active cycle ac1 and the calculation measured data d2 (the idle cycle CI and the shutdown rate r). Next, the cycle measurement unit CM sends the acquired active cycle ac1 to the comparison unit CMP.
The comparison unit CMP compares the active cycle ac1 sent from the cycle measurement unit CM with the reference active cycle ac2 stored in the storage unit REG. Specifically, it is determined whether ac2×0.9<ac1<ac2×1.1 is satisfied, for example. That is, it is determined whether the change of the active cycle ac1 with respect to the reference active cycle ac2 is less than 10%. As described above, the numerical value 10% is merely an example.
Since the above determination is the first determination after the system starts, ac2×0.9<ac1<ac2×1.1 is not satisfied. Therefore, the comparison unit CMP outputs to the reference temperature calculation unit RC the reference change request req4 to change the reference temperature Tref. This reference change request req4 is, for example, an enable signal, and outputting the reference change request req4 means that the value of the enable signal is 1.
The reference change request req4 is also input to the cycle measurement unit CM. The cycle measurement unit CM sends, in response to the reference change request req4, the active cycle ac1 to the storage unit REG as the new reference active cycle ac2 (although not shown in
The reference temperature calculation unit RC requests, in response to the reference change request req4, the cycle measurement unit CM to send the calculation measured data d2 (the idle cycle CI and the shutdown rate r). The cycle measurement unit CM sends, in response to this request, the calculation measured data d2 to the reference temperature calculation unit RC.
Further, the reference temperature calculation unit RC requests the storage unit REG to send the calculation basic data d1 (the reference temperature calculation formula and the element idle power). The storage unit REG sends, in response to this request, the calculation basic data d1 to the reference temperature calculation unit RC.
The reference temperature calculation unit RC calculates the idle power PI [W] using the element idle power EI [W/Hz] acquired from the storage unit REG and the idle cycle CI [Hz] acquired from the cycle measurement unit CM. Specifically, the reference temperature calculation unit RC calculates the idle power PI [W] from the expression PI [W]=EI [W/Hz]×CI [Hz].
Next, the reference temperature calculation unit RC calculates the reference temperature Tref using the idle power PI calculated by the reference temperature calculation unit RC, the shutdown rate r acquired from the cycle measurement unit CM, and the reference temperature calculation formula acquired from the storage unit REG. In this example, Tref is 63.3° C. The reference temperature calculation unit RC sends the reference temperature Tref that is calculated to the mode determination unit MD.
On the other hand, the temperature monitoring unit TM resets, in response to the start request req2 of the subroutine 2, the internal timer, and outputs the temperature measurement request req5 to the temperature sensor TS when the timer expires. The temperature sensor TS acquires, in response to the measurement request req5, the measured temperature Ta and sends the measured temperature Ta to the temperature monitoring unit TM. In this example, Ta is 22° C. The temperature monitoring unit TM sends the measured temperature Ta acquired from the temperature sensor TS to the mode determination unit MD.
The mode determination unit MD compares the measured temperature Ta with the reference temperature Tref to determine whether Ta<Tref is satisfied. Since the measured temperature Ta is 22° C. and the reference temperature Tref is 63.3° C., Ta<Tref is satisfied. Therefore, the mode determination unit MD selects the idle power reduction mode. Accordingly, the clock generation unit CPG changes the frequency of the operation clock ck1 to be output (the operating frequency of the CPU) from a maximum frequency fmax [Hz] to an idle power reduction mode frequency f1 [Hz].
Next, the description will be made referring to
The reference temperature calculation unit RC resets the internal timer after sending the reference temperature Tref to the mode determination unit MD. The reference temperature calculation unit RC outputs the measurement request req3 of various measured data to the cycle measurement unit CM when the timer expires. The cycle measurement unit CM measures, in response to the measurement request req3, the active cycle ac1 and the calculation measured data d2 (the idle cycle CI and the shutdown rate r). The cycle measurement unit CM then sends the acquired active cycle ac1 to the comparison unit CMP.
The comparison unit CMP compares the active cycle ac1 sent from the cycle measurement unit CM with the reference active cycle ac1 stored in the storage unit REG. Specifically, it is determined whether ac2×0.9<ac1<ac2×1.1 is satisfied, for example. Since the use case is still music reproduction, ac2×0.9<ac1<ac2×1.1 is satisfied. Accordingly, the comparison unit CMP does not output the reference change request req4 to change the reference temperature Tref to the reference temperature calculation unit RC. If the reference change request req4 is the above enable signal, that the reference change request req4 is not output means that the value of the enable signal is 0.
On the other hand, the temperature monitoring unit TM resets the internal timer after sending the measured temperature Ta to the mode determination unit MD, and outputs the temperature measurement request req5 to the temperature sensor TS when the timer expires. The temperature sensor TS acquires, in response to the measurement request req5, the measured temperature Ta and sends the measured temperature Ta to the temperature monitoring unit TM. In this example, Ta=23° C. The temperature monitoring unit TM sends the measured temperature Ta acquired from the temperature sensor TS to the mode determination unit MD.
The mode determination unit MD compares the measured temperature Ta with the reference temperature Tref to determine whether Ta<Tref is satisfied. Since the measured temperature Ta is 23° C. and the reference temperature Tref is 63.3° C., Ta<Tref is satisfied. Therefore, the mode determination unit MD selects the idle power reduction mode. The operating frequency of the CPU has already reached the idle power reduction mode frequency f1 [Hz]. Therefore, the clock generation unit CPG does not switch the frequency of the operation clock ck1 to be output.
Next, the description will be made referring to
When the reference temperature calculation unit RC does not receive the reference change request req4 from the comparison unit CMP, the reference temperature calculation unit RC resets the internal timer. The reference temperature calculation unit RC then outputs the measurement request req3 of various measured data to the cycle measurement unit CM when the timer expires. The cycle measurement unit CM measures, in response to the measurement request req3, the active cycle ac1 and the calculation measured data d2 (the idle cycle CI and the shutdown rate r). The cycle measurement unit CM then sends the acquired active cycle ac1 to the comparison unit CMP.
The comparison unit CMP compares the active cycle ac1 sent from the cycle measurement unit CM with the reference active cycle ac1 stored in the storage unit REG. Specifically, it is determined whether ac2×0.9<ac1<ac2×1.1 is satisfied, for example. Since the use case has been changed from music reproduction to video reproduction, ac2×0.9<ac1<ac2×1.1 is not satisfied. Therefore, the comparison unit CMP outputs the reference change request req4 to change the reference temperature Tref to the reference temperature calculation unit RC.
This reference change request req4 is also input to the cycle measurement unit CM, and the cycle measurement unit CM sends, in response to the reference change request req4, the active cycle ac1 to the storage unit REG as the new reference active cycle ac1 (although not shown in
The reference temperature calculation unit RC requests, in response to the reference change request req4, the cycle measurement unit CM to send the calculation measured data d2 (the idle cycle CI and the shutdown rate r). In response to this request, the cycle measurement unit CM sends the calculation measured data d2 to the reference temperature calculation unit RC.
Further, the reference temperature calculation unit RC requests the storage unit REG to send the calculation basic data d1 (the reference temperature calculation formula and the element idle power). The storage unit REG sends, in response to this request, the calculation basic data d1 to the reference temperature calculation unit RC.
The reference temperature calculation unit RC calculates the idle power PI [W] using the element idle power EI [W/Hz] acquired from the storage unit REG and the idle cycle CI [Hz] acquired from the cycle measurement unit CM. The reference temperature calculation unit RC then calculates the reference temperature Tref using the idle power PI calculated by the reference temperature calculation unit RC, the shutdown rate r acquired from the cycle measurement unit CM, and the reference temperature calculation formula acquired from the storage unit REG. It is assumed here that Tref=64.4° C. The reference temperature calculation unit RC sends the calculated reference temperature Tref to the mode determination unit MD.
On the other hand, the temperature monitoring unit TM resets the internal timer after sending the measured temperature Ta to the mode determination unit MD, and outputs the temperature measurement request req5 to the temperature sensor TS when the timer expires. The temperature sensor TS acquires, in response to the measurement request req5, the measured temperature Ta and sends the measured temperature Ta to the temperature monitoring unit TM. In this example, Ta=44° C. The temperature monitoring unit TM sends the measured temperature Ta acquired from the temperature sensor TS to the mode determination unit MD.
The mode determination unit MD compares the measured temperature Ta with the reference temperature Tref to determine whether Ta<Tref is satisfied. Since the measured temperature Ta is 44° C. and the reference temperature Tref is 64.4° C., Ta<Tref is satisfied. Therefore, the mode determination unit MD selects the idle power reduction mode. At this time, the operating frequency of the CPU is the idle power reduction mode frequency f1 [Hz] in the music reproduction. Accordingly, the clock generation unit CPG switches the frequency of the operation clock ck1 to be output to an idle power reduction mode frequency f2 [Hz] in the video reproduction. Since a high-speed operation is required in the video reproduction compared to the operation in the music reproduction, f1<f2 is normally satisfied.
Next, the description will be made referring to
The reference temperature calculation unit RC resets the internal timer after sending the reference temperature Tref to the mode determination unit MD. The reference temperature calculation unit RC outputs the measurement request req3 of various measured data to the cycle measurement unit CM when the timer expires. The cycle measurement unit CM measures, in response to the measurement request req3, the active cycle ac1 and the calculation measured data d2 (the idle cycle CI and the shutdown rate r). The cycle measurement unit CM then sends the acquired active cycle ac1 to the comparison unit CMP.
The comparison unit CMP compares the active cycle ac1 sent from the cycle measurement unit CM with the reference active cycle ac1 stored in the storage unit REG. Specifically, it is determined whether ac2×0.9<ac1<ac2×1.1 is satisfied, for example. Since the use case is still the video reproduction, ac2×0.9<ac1<ac2×1.1 is satisfied. Accordingly, the comparison unit CMP does not output the reference change request req4 to change the reference temperature Tref to the reference temperature calculation unit RC.
On the other hand, the temperature monitoring unit TM resets the internal timer after sending the measured temperature Ta to the mode determination unit MD, and outputs the temperature measurement request req5 to the temperature sensor TS when the timer expires. The temperature sensor TS acquires, in response to the measurement request req5, the measured temperature Ta and sends the acquired measured temperature Ta to the temperature monitoring unit TM. In this example, Ta=70° C. The temperature monitoring unit TM sends the measured temperature Ta acquired from the temperature sensor TS to the mode determination unit MD.
The mode determination unit MD compares the measured temperature Ta with the reference temperature Tref to determine whether Ta<Tref is satisfied. In this example, the measured temperature Ta is 70° C. and the reference temperature Tref is 64.4° C., which means Ta<Tref is not satisfied. Therefore, the mode determination unit MD selects the leakage power reduction mode. Accordingly, the clock generation unit CPG switches the frequency of the operation clock ck1 to be output from the idle power reduction mode frequency f2 [Hz] to the maximum frequency fmax.
Next, the description will be made referring to
When the reference temperature calculation unit RC does not receive the reference change request req4 from the comparison unit CMP, the reference temperature calculation unit RC resets the internal timer. The reference temperature calculation unit RC outputs the measurement request req3 of the various measured data to the cycle measurement unit CM when the timer expires. The cycle measurement unit CM measures, in response to the measurement request req3, the active cycle ac1 and the calculation measured data d2 (the idle cycle CI and the shutdown rate r). Then, the cycle measurement unit CM sends the acquired active cycle ac1 to the comparison unit CMP.
The comparison unit CMP compares the active cycle ac1 sent from the cycle measurement unit CM with the reference active cycle ac1 stored in the storage unit REG. Specifically, it is determined, for example, whether ac2×0.9<ac1<ac2×1.1 is satisfied. Since the use case is still the video reproduction, ac2×0.9<ac1<ac2×1.1 is satisfied. Therefore, the comparison unit CMP does not output the reference change request req4 to change the reference temperature Tref to the reference temperature calculation unit RC.
On the other hand, the temperature monitoring unit TM resets the internal timer after sending the measured temperature Ta to the mode determination unit MD, and outputs the temperature measurement request req5 to the temperature sensor TS when the timer expires. The temperature sensor TS acquires, in response to the measurement request req5, the measured temperature Ta and sends the measured temperature Ta to the temperature monitoring unit TM. In this example, Ta is 60° C. The temperature monitoring unit TM sends the measured temperature Ta acquired from the temperature sensor TS to the mode determination unit MD.
The mode determination unit MD compares the measured temperature Ta with the reference temperature Tref to determine whether Ta<Tref is satisfied. Since the measured temperature Ta is 60° C. and the reference temperature Tref is 64.4° C., Ta<Tref is satisfied. Therefore, the mode determination unit MD selects the idle power reduction mode. Accordingly, the clock generation unit CPG switches the frequency of the operation clock ck1 to be output from the maximum frequency fmax to the idle power reduction mode frequency f2 [Hz].
As described above, in the semiconductor device according to this embodiment, it is determined which one of the idle power PI that increases in proportion to the operation frequency and the leakage power PL that sharply increases in accordance with the increase in the temperature should be reduced to further contribute to the reduction in the consumed power as a whole by comparing the reference temperature Tref with the measured temperature Ta. The consumed power is reduced by appropriately controlling the operating frequency based on this comparison result.
Specifically, when the measured temperature Ta is smaller than the reference temperature Tref and the leakage power PL is small, the idle power PI is reduced by decreasing the operating frequency, whereby the power consumption is reduced as a whole. On the other hand, when the measured temperature Ta is equal to or larger than the reference temperature Tref and the leakage power PL is large, the leakage power PL is reduced by increasing the operating frequency and decreasing the time during which the semiconductor device is in the active state (increasing the time during which the semiconductor device is in the shutdown state), whereby the power consumption is reduced as a whole.
Further, according to the reduction of the power consumption, heat generated from the semiconductor device can be suppressed. It is therefore possible to suppress thermal runaway of the semiconductor device according to the increase in the chip temperature. In summary, the reliability of the semiconductor device is also improved.
Referring next to
Since Steps S1 to S5 in
After Step S5, the mode determination unit MD compares the measured temperature Ta with a lower-limit reference temperature (first reference temperature)=Tref×0.8 to determine whether Ta<Tref×0.8 is satisfied (Step S61). When Ta<Tref×0.8 is satisfied (YES in Step S61), the mode determination unit MD selects the idle power reduction mode and the clock generation unit CPG sets the frequency of the operation clock ck1 of the CPU to be low (Step S7). The clock generation unit CPG sets the frequency of the operation clock ck1 of the CPU to, for example, the minimum frequency at which the CPU can operate without disrupting the processing. The process then goes back to Step S4 and the mode determination is repeated.
On the other hand, when Ta<Tref×0.8 is not satisfied (NO in Step S61), the mode determination unit MD compares the measured temperature Ta with an upper-limit reference temperature (second reference temperature)=Tref×1.2 to determine whether Ta>Tref×1.2 is satisfied (Step S62). When Ta>Tref×1.2 is satisfied (YES in Step S62), the mode determination unit MD selects the leakage power reduction mode and the clock generation unit CPG sets the frequency of the operation clock ck1 of the CPU to be high (Step S8). The clock generation unit CPG sets the frequency of the operation clock ck1 of the CPU to, for example, the maximum frequency at which the CPU can operate. The process then goes back to Step S4 and the mode determination is repeated.
On the other hand, when Ta>Tref×1.2 is not satisfied (NO in Step S62), the mode determination unit MD does not select any mode and the clock generation unit CPG does not change the frequency of the operation clock ck1 of the CPU. That is, the process goes back to Step S4 and the mode determination is repeated.
Specifically, the mode determination unit MD selects the leakage power reduction mode when the measured temperature Ta exceeds the upper-limit reference temperature (Tref×1.2 in
While the upper-limit reference temperature is Tref×1.2 and the lower-limit reference temperature is Tref×0.8 in the example in
In
In
As described above, in the semiconductor device according to the third embodiment, compared to the semiconductor device according to the first embodiment, the number of times that the operating frequency is switched is decreased, whereby it is possible to efficiently reduce the consumed power while making the operation of the semiconductor device stable.
In the foregoing, while the invention made by the inventors has been specifically explained based on the embodiments, it goes without saying that the present invention is not limited to the above-described embodiments, and that various modifications can be made within the range not departing from the gist of the present invention.
For example, besides changing the operating frequency based on the result of comparing the reference temperature Tref with the measured temperature Ta, the operating voltage may be changed as well.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2012/008187 | 12/21/2012 | WO | 00 |