This application relates to thermal mitigation and, more specifically, to providing thermal mitigation to a computing device using an in-package and off-chip temperature sensor.
A conventional modern smart phone may include a system on chip (SOC), which has a processor and other operational circuits. Specifically, an SOC in a smart phone may include a processor chip within a package, where the package is mounted on a printed circuit board (PCB) internally to the phone. The phone includes an external housing and a display, such as a liquid crystal display (LCD). A human user when using the phone physically touches the external housing and the display.
As the SOC operates, it generates heat. In one example, the SOC within a smart phone may reach temperatures of 80° C.-100° C. Furthermore, conventional smart phones do not include fans to dissipate heat. During use, such as when a human user is watching a video on a smart phone, the SOC generates heat, and the heat is spread through the internal portions of the phone to the outside surface of the phone.
The outside surface of the phone is sometimes referred to as the “skin.” The outside surface includes the part of the external housing that is physically on the outside of the phone as well as any other externally-exposed portions, such as an LCD display. It is generally accepted that the skin of the phone should not reach temperatures higher than about 40° C.-45° C. due to safety and ergonomic reasons. As noted above, the SOC within the smart phone may reach temperatures of 80° C.-100° C., although the temperature of the SOC is not felt directly at the skin of the phone. Instead, heat dissipation within the phone often means that the skin temperature of the phone is at a lower temperature than the SOC temperature. Furthermore, whereas changes to SOC temperature may be relatively quick (e.g., seconds), changes to device skin temperature may be relatively slow (e.g., tens of seconds or minutes).
Conventional smart phones include algorithms to control the skin temperature by reducing a frequency of operation of the SOC when a temperature sensor in the SOC reaches a threshold level. However, SOC temperature can be a poor proxy for device skin temperature.
Various embodiments include systems and methods that mitigate temperature by measuring temperature off-chip and in-package and reducing performance of a processor, if appropriate, based at least in part on the temperature measurement.
In one embodiment, a method includes receiving an electrical signal from a temperature sensor, wherein the temperature sensor is disposed within a package including a processor chip, further wherein the temperature sensor is thermally separated from the processor chip by materials within the package, generating temperature information from the electrical signal, processing the temperature information to determine that a performance of the processor chip should be mitigated, and mitigating the performance of the processor chip in response to the temperature information, wherein processing the temperature information and mitigating the performance of the processor are performed by the processor chip.
In another embodiment, a system includes a computer processor configured to execute machine-readable instructions and to consume power from a system battery, the computer processor being disposed within a package having a dielectric substrate and providing electrical communication between the computer processor and a plurality of electrical components of the system, a physical housing enclosing at least a portion of the system, the package being disposed within the system so that it is enclosed within the physical housing, the computer processor further being in thermal contact with the physical housing through the package, and a temperature measuring device disposed within the package and thermally separated from the computer processor by materials of the package, the temperature measuring device being in electrical communication with the computer processor. The computer processor is configured to perform the following operation: receive electrical signals from the temperature measuring device, in response to the electrical signals from the temperature measuring device, determine that a thermal mitigation operation should be undertaken, and reduce an operating parameter of the computer processor in accordance with the thermal mitigation operation.
In another embodiment, a system includes means for providing information indicating a temperature of a chip package within the system, means for comparing the temperature of the chip package to a temperature threshold and for generating a control signal in response to determining that the temperature of the chip package exceeds the temperature threshold, means for reducing an operating parameter of the means for comparing in response to the control signal; and a physical housing enclosing at least the means for comparing and the means for providing, the means for comparing further being in thermal contact with the means for providing through a substrate of the chip package.
In yet another embodiment, a computer program product having a computer readable medium tangibly recording computer program logic for mitigating temperature of a chip, the computer program product includes code to generate temperature information from a sensor within a chip package and at a location physically separate from the chip within the chip package, code to compare the temperature information to a programmed temperature threshold, wherein comparing the temperature information to the programmed temperature threshold is performed by the chip, code to reduce an operating parameter of the chip in response to comparing the temperature information to the programmed temperature threshold, and code to increase the operating parameter of the chip in response to determining that the temperature information indicates a reduction in temperature.
Various embodiments include systems and methods to utilize a temperature reading from off-chip and in-package to better estimate the device skin temperature. In one embodiment, a package includes an SOC that is physically disposed within the package. The package itself includes a substrate which contacts bumps on the SOC. The SOC bumps provide electrical communication with the processing circuits within the SOC. The bumps on the SOC are in electrical communication with metal layers and vias of the package, and the package includes solder balls that are configured to be in electrical communication with traces on a printed circuit board. The substrate itself includes alternating layers of metal and dielectric material, where the metal layers are connected to each other using vias. The package also includes adhesive materials to mechanically and physically attach the SOC within the structure of the package. Examples of packages are shown in more detail with respect to
Various embodiments place at least one temperature sensor within the package but not in direct, physical contact with the chip. In many mobile device designs, it is expected that the SOC will produce most of the internal heat. In this example, the SOC produces heat, and that heat is dissipated throughout the package. Accordingly, the temperature sensor is exposed to the heat of the SOC, but that heat is dissipated by the materials that separate the SOC from the temperature sensor. For instance, the temperature sensed by the temperature sensor is affected by the respective thermal conductivities of the constituent physical parts of the package, such as plastic molding, solder resist, conductive wire, and dielectric material.
Accordingly, while the temperature of the SOC may reach for instance 80° C.-100° C., the temperature experienced by the temperature sensor is expected to be somewhat lower than that. Furthermore, because the materials of the package provide for heat dissipation before that heat reaches the temperature sensor, the temperature sensor is expected to provide temperature readings that are more closely aligned with that of the device skin than would temperature readings acquired from the SOC itself.
Of course, the temperature sensor may be placed at any appropriate part of the package while not directly touching the SOC. Examples include the temperature sensor being placed within the dielectric material of the package substrate, the temperature sensor being placed underneath the substrate and next to conductive balls on the underside of the package, and the temperature sensor being placed on top of the substrate. The embodiments may use any appropriate temperature sensor, such as a thermistor that changes its resistance with temperature.
The process described above may be embodied as computer executable code that is read and executed by a kernel process of the processor. In another embodiment, the process may be embodied as a hardware process built in to the processor. However, in many embodiments, thermal changes at the skin of the device and at the SOC change on the order of seconds or minutes, so that software is generally fast-acting enough.
An example method embodiment may be performed by a software kernel of the SOC that is tasked with thermal mitigation. The SOC is in electrical communication with the temperature sensor and continually measures temperature using the temperature sensor. For example, if the temperature sensor is a thermistor, the SOC may apply a voltage across the thermistor and measure resistance changes by translating electrical current or voltage measurements into digital signals that can be read by the thermal mitigation process of the software kernel. When the thermal mitigation process detects that the sensed temperature is above a threshold, the thermal mitigation process may decrease the frequency of operation of the SOC (or of a component of the SOC), thereby generating less heat within the package.
The relationship of device skin temperature to in-package temperature is dependent upon the materials used in the package and the materials and design of the mobile device. The relationship may be determined through experimentation and/or knowledge of the device design. For instance, it may be expected that in-package temperature is approximately 10° C. higher than device skin temperature, so that the temperature threshold may be set at 50° C., which is 10° C. higher than the uncomfortable device skin temperature of 40° C. Of course, lowering a frequency of operation or other operating parameter of the SOC may be temporary, so that the process may return the operating frequency to a higher frequency after it detects lower temperatures.
As shown in
As a computer processor operates, it produces heat, which dissipates throughout the physical structure of computing device 100. Depending on the specific thermal properties of computing device 100, heat from the operation of the processor may reach uncomfortable or near-uncomfortable temperatures on the outside surface 120 of computing device 100. The computer processor within computing device 100 provides functionality to control the heat felt on the outside surface of the computing device 100 by measuring temperature readings at one or more temperature sensors and adjusting a frequency and/or voltage of the processor if appropriate.
Battery 205, power management integrated circuit 210, and SOC 230 are disposed within the computing device 100 so that they are enclosed within the physical housing of the computing device 100 as indicated by exterior surface 120. Furthermore, SOC 230 is included within package 240. Battery 205, power management integrated circuit (PMIC) 210, and SOC 230 are also in thermal contact with the physical housing so that the heat generated by those items is conducted to the exterior surface 120 of the device 100. Heat generated by SOC 230 is conducted to the exterior surface 120 of the device 100 through package 240. Package 240 further includes thermal sensor 245.
Computing device 100 includes battery 205, which may be any appropriate battery now known or later developed. For instance, battery 205 may include a lithium-ion battery or other power source. Battery 205 is coupled to battery rail 206, which distributes power from the battery 205. Battery rail 206 is coupled to device display 110 and to PMIC 210. In some embodiments, the power from battery rail 206 may be regulated or otherwise conditioned before being provided to display 110, however for ease of illustration, battery rail 206 in this example is provided directly to display 110.
PMIC 210 receives power from battery rail 206 and regulates the voltage to provide an output voltage that is usable by SOC 230. SOC 230 has four cores, 231-234. Examples of cores include a central processing unit (CPU), a graphics processing unit (GPU), a modem, and the like. Although not shown in
PMIC 210 provides power to SOC 230, and specifically provides power to the cores 231-234 by four separate power rails 211 in this embodiment. The scope of embodiments is not limited to any particular SOC architecture, as any appropriate number of cores and PMIC power rails may be used in a particular embodiment. For instance, other embodiments may include 16 cores, 32 cores, or other number.
SOC 230 includes functionality to measure temperature using temperature sensor 245 and to keep an outside surface of the device within a defined temperature band by mitigating performance of SOC 230 based on temperature measurements from temperature sensor 245. An example method is shown in
Temperature sensor 245 is in electrical communication with on-chip circuitry through use of conductive contacts 310. On-chip circuitry in this example includes circuits and logic that are implemented within SOC 230 (
The analog output signal from operational amplifier 332 is received by analog to digital converter (ADC) 331, and ADC 331 produces a digital signal indicative of the temperature information received from operational amplifier 332. ADC 331 passes the digital signal to thermal management unit 335 for further processing. Thermal management unit 335 in one example includes hardware logic to provide thermal management services to SOC 230.
In another embodiment, thermal management unit 335 represents thermal management processes that are provided by a software kernel of the SOC 230. For instance, SOC 230 may include a software kernel, which operates when SOC 230 is powered up and receiving a clock signal. Thermal management unit 335 may in that instance include a software process that is built into kernel 330 to perform the method described with respect to
Thermal management unit 335 receives the digital signal from ADC 331, and the digital signal includes data indicative of a temperature measured by sensor 245. Thermal management unit 335 includes at least one programmed temperature threshold that corresponds to a package temperature associated with an undesirable rise in skin temperature. Thermal management unit 335 receives the digital signal from ADC 331 and compares temperature information of that digital signal to the programmed temperature threshold. If the temperature is below the temperature threshold, then thermal management unit 335 may simply continue monitoring on a periodic basis or at other appropriate times. However, thermal management unit 335 may reduce an operating parameter of SOC 230 in response to determining that the temperature indicated by the digital signal has exceeded the threshold. Examples of reducing an operating parameter include reducing a voltage and/or a frequency of operation of SOC 230. The example of
Thermal management unit 335 may reduce the clock frequencies provided to the cores or increase the clock frequencies provided to the cores by sending commands to clock control unit 312. Clock control unit 312 may be physically a part of SOC 230 or separate therefrom, as the scope of embodiments is not limited to any particular clocking architecture. Clock control unit 312 may control for instance a phase locked loop (PLL) or other appropriate circuit that provides a periodic clock signal in order to raise or lower the operating frequency of one or more of the cores 231-234.
In one example, when thermal management circuit 335 compares the temperature to the temperature threshold then determines that it is appropriate to lower a frequency of operation, thermal management unit 335 sends a control signal to clock control unit 312 instructing clock control unit 312 to reduce the frequency of operation. Furthermore, thermal management circuit 335 may continue to monitor the temperature data from the digital signal and compare it to either the same or a different threshold, and when the temperature drops below either the same or a different threshold, thermal management circuit 335 may increase the frequency of operation by sending another control signal to clock control unit 312.
The temperature threshold (or thresholds) that are used by thermal management unit 335 may depend upon the particular thermal conductive properties of a given device. A given device, such as computing device 100 of
On the other hand, some computing devices may have different levels of heat spreading, such that heat from the SOC is conducted from the SOC less evenly. Therefore, the heat is concentrated to specific areas of the skin of the device. Such areas may become heated more quickly, and the heat may be removed from the surface by ambient air less efficiently since less surface area is heated. Such a computing device may utilize thermal mitigation algorithms more often in order to avoid heating those specific areas beyond a level that is comfortable for a human user.
Each model of computing device has its own thermal properties. Therefore, a thermal algorithm that is designed specifically for a particular model of computing device may not work well for different models of computing devices. In the example above, thermal management unit 335 compares temperature data of the digital signal to a programmed threshold. The threshold corresponds to a sensed temperature where it is expected that the device skin temperature has reached an uncomfortable level or will reach an uncomfortable level within seconds or minutes unless mitigation is performed. Of course, an uncomfortable level for the device skin may be set by engineers to be 40° C.-45° C. or other appropriate temperature level. Furthermore, the threshold may be different for different device models and types. As explained above, the thermal conductive properties of a particular device depends upon the physical makeup and arrangement of the materials of the device.
In some embodiments, it is assumed that the temperature sensed by the temperature sensor in the package increases over time in a curve that is very similar to a curve for the device skin temperature. In fact, for some devices during normal operation after several minutes, a temperature curve for the package temperature follows a temperature curve for the device skin temperature but with a constant offset (e.g., 10° C.). Therefore, in some embodiments, thermal management unit 335 is configured so that the threshold corresponds to that constant offset. In one example if 40° C. is considered an uncomfortable device skin temperature, and the offset is 10° C., the threshold is set at 50° C. Of course, these numbers are examples only, and particular uncomfortable device skin temperatures and offsets are device-dependent.
It is generally expected that the temperature that is sensed by the in-package sensor will be higher than a device skin temperature but lower than a temperature of the SOC, at least during normal operation. Furthermore, the SOC may experience more rapid changes in temperature than does the device skin. A temperature sensor in the package but separate from the chip would be expected to experience temperature changes more slowly than those experienced by the SOC, so that the material of the package acts as a low pass filter with respect to frequency of temperature changes. Of course, it is also expected that temperature changes of the temperature sensor in the package would be more rapid than those experienced by the device skin itself. In some instances, thermal management unit 335 may take into account the speed at which temperature changes at the temperature sensor versus the device skin.
In some embodiments, the temperature threshold used by thermal management unit 335 may be a design parameter that is known by simulation during the design phase of the device. In other embodiments, the temperature threshold may be determined through experimentation with a physical embodiment of the device. For instance, a computer-aided design program may be used by a designer to determine the heat conductive properties of the device as the device is being designed. Additionally or alternatively, a designer may take temperature readings of the skin of the device as well as readings from the in-package temperature sensor in a controlled environment in order to determine appropriate values for one or more thresholds. Such design and/or testing may be performed by a designer or manufacturer of the device.
In one example use case, a manufacturer or designer of a computing device determines one or more temperature thresholds. The designer or manufacturer then saves that information into memory of SOC 230 for use by thermal management unit 335. This process is performed before delivering finished units to consumers, so that the finished product includes robust thermal mitigation functionality built into it.
Beginning with
Package 240 includes multiple layers in this example. The topmost layer is a black plastic molding 410, which operates to shield SOC 230 from the environment and to mechanically secure SOC 230 to package 240. The substrate portion of package 240 includes alternating layers of dielectric material 415 and metal layers 412 connected by vias. The examples of
Further in the example of
Moving to the example of
Moving to
The embodiments of
A flow diagram of an example method 700 of providing thermal mitigation is illustrated in
At action 710, the system receives an electrical signal from a temperature sensor. For example, in the embodiment of
At action 720, the system generates temperature information from the electrical signal. For instance, in the embodiment of
At action 730, the system processes the temperature information to determine that a performance of the processor chip should be mitigated. For instance, in the example of
In alternative embodiment, action 730 may include estimating a device skin temperature using the temperature information. For instance, if there is a known offset (e.g., 10° C.) between the in-package temperature and a skin temperature of the device, the offset may be used to estimate the skin temperature of the device from the temperature information (e.g., by subtracting 10° C. from the in-package temperature). In such an embodiment, the temperature threshold may correspond to a limit of the device skin (e.g., 40° C.). In such an instance, action 730 may include comparing the estimated skin temperature to the skin temperature threshold and determining to mitigate the temperature based on that comparison.
At action 740, system mitigates the performance of the processor chip in response to the temperature information. For instance, in the example of
In one example, the thermal management unit 335 reduces an operating frequency of one or more cores in the SOC, thereby reducing power consumption. However, action 740 may include any appropriate thermal mitigation technique, such as putting cores in an idle state. For instance, in the example of
The scope of embodiments is not limited to the specific method shown in
Various embodiments may provide one or more advantages over conventional solutions. For instance, it may be difficult to capture a temperature reading directly from the skin of a computing device, especially for more compact and mobile computing devices such as phones and tablets. Nevertheless, skin temperature can be very relevant to a user's perception of comfort. Some conventional solutions use temperature readings gathered from sensors on the processor and base thermal mitigation decisions on that temperature reading. But temperature readings gathered from thermal sensors on the processor may not provide an accurate indication of skin temperature, thereby causing intervention of a thermal mitigation process too early or too often and sacrificing performance of the system.
By contrast, the systems described herein provide thermal mitigation using temperature readings gathered from one or more temperature sensors physically separate from the chip but nevertheless in the same package as the chip. The physical materials of the package spread the heat produced by the chip and act as a low pass filter, so that a temperature reading from an in-package temperature sensor more closely matches a temperature curve of the device skin as compared to a temperature sensor on-chip. Some embodiments described herein may improve the operation of a processor chip by allowing for more accurate thermal management, thereby providing comfort and safety for human users.
As those of some skill in this art will by now appreciate and depending on the particular application at hand, many modifications, substitutions and variations can be made in and to the materials, apparatus, configurations and methods of use of the devices of the present disclosure without departing from the spirit and scope thereof. In light of this, the scope of the present disclosure should not be limited to that of the particular embodiments illustrated and described herein, as they are merely by way of some examples thereof, but rather, should be fully commensurate with that of the claims appended hereafter and their functional equivalents.