Thermal mitigation using feature-based duty cycling

EP4710186A1Pending Publication Date: 2026-03-18QUALCOMM INC
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
EP · EP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-02-29
Publication Date
2026-03-18

AI Technical Summary

Technical Problem

Conventional thermal management solutions for mobile devices often result in poor user experience due to abrupt shutdowns or performance throttling when high-power features are restricted to prevent thermal issues, as they fail to balance performance and power consumption effectively.

Method used

Implementing a feature-based duty cycling algorithm that dynamically adjusts the activation ratio of high-power and low-power operation features based on temperature thresholds, allowing high-power features to run without abrupt resets by reducing their duty cycles when temperatures rise and increasing them when temperatures fall within safe limits.

Benefits of technology

This approach effectively manages thermal conditions, preventing thermal runaway while maintaining high performance and user experience by balancing power consumption and performance, ensuring the device operates within thermal limits without sudden shutdowns.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure US2024017817_14112024_PF_FP_ABST
    Figure US2024017817_14112024_PF_FP_ABST
Patent Text Reader

Abstract

Various embodiments include systems and methods for thermal mitigation using feature-based duty cycling. A computing device processor may be configured to duty cycle activation of a first operation feature that operates at a first power level and activation of a second operation feature that is different from the first operation feature and operates at a second power level different from the first power level over an interval according to an interval duty cycle ratio. The interval duty cycle ratio may represent the percentage of time that the first operation feature is activated versus the percentage of time that the second operation feature is. The processor may monitor temperatures of the computing device during the interval and adjust the interval duty cycle ratio for a subsequent interval based on the temperatures. The processor may dynamically adjust the duty cycle ratio to maintain temperatures of the computing device within a thermal range.
Need to check novelty before this filing date? Find Prior Art

Description

TITLEThermal Mitigation Using Feature-Based Duty CyclingRELATED APPLICATIONS

[0001] This application claims the benefit of priority from Israeli Patent Application No. 302712, filed May 7, 2023; the entire contents of which is herein incorporated by reference.BACKGROUND

[0002] Cellular and wireless communication technologies have seen explosive growth over the past several years. Wireless service providers now offer a wide array of features and services that provide their users with unprecedented levels of access to information, resources and communications. To keep pace with these service enhancements, mobile electronic devices (e.g., cellular phones, tablets, laptops, etc.) have become more feature rich and complex than ever, and now commonly include multiple processors, system-on-chips (SoCs), multiple memories, and other resources (e.g., power rails, etc.) that allow mobile device users to execute complex and power intensive software applications (e.g., video streaming, video processing, etc.) on their mobile devices. As mobile devices and related technologies continue to grow in popularity and use, improving the performance capabilities and power consumption characteristics of mobile devices are expected to become important and challenging design criteria for mobile device designers.SUMMARY

[0003] Various aspects include methods of and computing devices implementing the methods of managing thermal conditions of a computing device. Various aspects may include performing duty cycle activation of a first operation feature that operates at a first power level and a second operation feature that is different from the first operation feature and operates at a second power level different from the first power level over an interval according to an interval duty cycle ratio that represents apercentage of time that the first operation feature is activated on the computing device versus a percentage of time that the second operation feature is activated on the computing device, monitoring a temperature of the computing device during the interval, and adjusting the interval duty cycle ratio for a subsequent interval based on the monitored temperature.

[0004] In some aspects, duty cycle activation of the first operation feature and the second operation feature over the interval may be performed in response to determining that the temperature of the computing device is above a thermal threshold value. In some aspects, adjusting the interval duty cycle ratio for a subsequent interval based on the monitored temperature may include decreasing the percentage of time that the first operation feature is activated on the computing device versus the percentage of time that the second operation feature is activated on the computing device in response to determining that the monitored temperature is above a thermal threshold value and increasing. In some aspects, adjusting the interval duty cycle ratio for a subsequent interval based on the monitored temperature may include increasing the percentage of time that the first operation feature is activated on the computing device versus the percentage of time that the second operation feature is activated on the computing device in response to determining that the monitored temperature is below a thermal threshold value and decreasing.

[0005] Some aspects may further include monitoring the temperature of the computing device during each interval, and adjusting the interval duty cycle ratio for each subsequent interval to maintain the monitored temperature of the computing device below a thermal limit and above a thermal threshold.

[0006] In some aspects, the first operation feature consumes more power than the second operation feature of the computing device. In some aspects, performing duty cycle activation of the first operation feature and the second operation feature may include performing duty cycle activation of a dense motion map (DMM) and a descriptor matching estimation (DME). In some aspects, performing duty cycle activation of the first operation feature and the second operation feature may includeperforming duty cycle activation of an auto high dynamic range (Auto HDR) two- exposure configuration and an Auto HDR single-exposure configuration.

[0007] Further aspects may include a computing device having a processor configured with processor-executable instructions to perform various operations corresponding to any of the methods described above. Further aspects may include a non-transitory processor-readable storage medium having stored thereon processorexecutable instructions configured to cause a processor to perform various operations corresponding to any of the methods described above. Further aspects may include a computing device having various means for performing functions corresponding to any of the methods described above.BRIEF DESCRIPTION OF THE DRAWINGS

[0008] The accompanying drawings, which are incorporated herein and constitute part of this specification, illustrate exemplary embodiments of the claims, and together with the general description given and the detailed description, serve to explain the features herein.

[0009] FIG. 1 is a component block diagram illustrating a computing system that could be configured to implement some embodiments.

[0010] FIG. 2 is a timing diagram illustrating thermal conditions responding to duty cycling in accordance with some embodiments.

[0011] FIGS. 3-5 are process flow diagrams illustrating methods of thermal mitigation using feature-based duty cycling in accordance with some embodiments.

[0012] FIG. 6 is a component block diagram illustrating an example mobile communication device (smartphone) suitable for use with various embodiments.DETAILED DESCRIPTION

[0013] Various embodiments will be described in detail with reference to the accompanying drawings. Wherever possible, the same reference numbers will beused throughout the drawings to refer to the same or like parts. References made to particular examples and implementations are for illustrative purposes and are not intended to limit the scope of the claims.

[0014] Various embodiments include methods that may be implemented in a computing device to manage thermal conditions using feature-based duty cycling. Various embodiments may include activating duty cycles of multiple different operation features that exhibit different power consumption levels according to an interval duty cycle ratio that represents a percentage of time that the multiple different operation features are activated, monitoring the temperature of the computing device during the interval, and adjusting the interval duty cycle ratio for subsequent intervals based on the monitored temperature. Duty cycles of operation feature(s) that exhibit high power consumption levels (compared to other operation feature(s)) may be reduced while duty cycles of operation feature(s) that exhibit lower power consumption levels may be increased when the temperature of the computing device exceeds a thermal threshold value. Similarly, duty cycles of operation feature(s) that exhibit high power consumption levels (compared to other operation feature(s)) may be increased while duty cycles of operation feature(s) that exhibit lower power consumption levels may be increased when the temperature of the computing device is less than a thermal threshold value.

[0015] The terms “computing device” and “mobile device” may be used herein to refer to any one or all of quantum computing devices, edge devices, Internet access gateways, modems, routers, network switches, residential gateways, access points, integrated access devices (IAD), mobile convergence products, networking adapters, multiplexers, personal computers, laptop computers, tablet computers, user equipment (UE), smartphones, personal or mobile multi-media players, personal data assistants (PDAs), palm-top computers, wireless electronic mail receivers, multimedia Internet enabled cellular telephones, gaming systems (e.g., PlayStation™, Xbox™, Nintendo Switch™, etc.), wearable devices (e.g., smartwatch, smart glasses, head-mounted display, fitness tracker, etc.), media players (e.g., DVD players, ROKU™,AppleTV™, etc.), digital video recorders (DVRs), automotive displays, portable projectors, 3D holographic displays, and other similar devices that include a display and a programmable processor that can be configured to provide the functionality of various embodiments. The term “mobile device” is used herein to computing devices that may be handheld, such as smartphones, digital cameras, personal or mobile multimedia players, palm-top computers, wireless electronic mail receivers, multimedia Internet enabled cellular telephones, and similar computing devices subject to thermal constraints to avoid injuring users.

[0016] The term “system on chip” (SoC) is used herein to refer to a single integrated circuit (IC) chip that contains multiple resources or independent processors integrated on a single substrate. A single SoC may contain circuitry for digital, analog, mixed- signal, and radio-frequency functions. A single SoC also may include any number of general-purpose or specialized processors (e.g., network processors, digital signal processors, modem processors, video processors, etc.), memory blocks (e.g., ROM, RAM, Flash, etc.), and resources (e.g., timers, voltage regulators, oscillators, etc.). For example, an SoC may include an applications processor that operates as the SoC’s main processor, central processing unit (CPU), microprocessor unit (MPU), arithmetic logic unit (ALU), etc. SoCs also may include software for controlling integrated resources and processors, as well as for controlling peripheral devices.

[0017] The term “system in a package” (SIP) may be used herein to refer to a single module or package that contains multiple resources, computational units, cores or processors on two or more IC chips, substrates, or SoCs. For example, a SIP may include a single substrate on which multiple IC chips or semiconductor dies are stacked in a vertical configuration. Similarly, the SIP may include one or more multichip modules (MCMs) on which multiple ICs or semiconductor dies are packaged into a unifying substrate. A SIP also may include multiple independent SOCs coupled together via high-speed communication circuitry and packaged in close proximity, such as on a single motherboard, in a single UE, or in a single CPU device. Theproximity of the SoCs facilitates high-speed communications and the sharing of memory and resources.

[0018] The term “operation feature” is used herein to refer generally to an operating mode, an operational option, a feature of operation, or other option or setting associated with the operation of an application, device functionality, or operating of a computing device. Similarly, the terms “first operation feature” and “second operation feature” are used herein to refer to two different and mutually exclusive features of operation of an application, device functionality, or operating mode of a computing device. A non-limiting example of an operation feature used in describing various embodiments is the auto high dynamic range (HDR) feature (a first operation feature) that captures two images or frames that are combined into a single image compared to a second operation feature in which only one image is captured. These two example operation features of a camera application are different, and the first operation feature of capturing two images per final image consumes more power (i.e., is a higher power feature) than the second operation feature of capturing one image to output an image. Another example of alternative operation features used in describing various embodiments is the dense motion map (DMM) operation feature of video capture applications compared to the descriptor matching estimation (DME) operation feature of video capture applications. Other applications and functionalities may include alternative operating modes or features that exhibit different power consumption levels, and thus may be controlled according to various embodiments to manage computing device temperatures.

[0019] Auto High Dynamic Range (HDR) is a feature used in digital photography to capture a greater range of brightness levels in a single image. Auto HDR solutions capture multiple images with different exposure settings and then merge them into a single image. For example, when the Auto HDR operation feature is enabled in a mobile device, the mobile device camera may captures two images - one with a short exposure time to capture the details in the bright areas, and another with a longer exposure time to capture the details in the darker areas. The mobile device may thencombine the two images to create a single image that contains both the bright and dark details. Auto HDR solutions also enable a camera pipeline to dynamically switch between two exposure settings and one exposure. The two-exposure configuration is a high-power consumption operation feature compared to the single exposure operation feature because two frames are processed and eventually merged to generate the final encoded frame.

[0020] A dense motion map (DMM) is an operation feature that generates a representation of the movement of objects in a video sequence. A DMM may be a pixel-wise motion vector field that assigns a motion vector to each pixel in the image. Each motion vector may represent the displacement of the corresponding pixel between consecutive frames of the video. DMM may be used to analyze the motion patterns of objects in a video, such as tracking the movement of a moving car or detecting the flow of water in a river. DMM is a high-power consumption operation feature compared to descriptor matching estimation (DME).

[0021] Descriptor matching estimation (DME) is an operation feature that calculates motion vectors for each pixel in a video sequence to generate a dense motion map. There are various techniques for DME, including optical flow and block matching. Optical flow is a computer vision technique used to estimate the motion vector of each pixel by tracking the intensity changes between consecutive frames. The block matching technique may include dividing the image into small blocks and matching them with corresponding blocks in the next frame to estimate the motion vectors. DME is a low-power consumption operation feature compared to the DMM operation feature.

[0022] The term “thermally constrained” may be used herein to refer to a state in which the temperature of a computing device or component reaches a level that exceeds the thermal design limits of the computing device or component. When a computing device is thermally constrained, the heat generated by the computing device or component is not dissipated effectively and / or the computing device’s temperature may be rising to potentially dangerous levels. This may cause thecomputing device to slow down or malfunction, and in some cases, even cause permanent damage to the computing device. Thermally constrained devices or components are particularly common in high-performance applications such as graphics processing, machine learning, and multimedia playback, in which large amounts of heat may be generated in a short period of time. To prevent thermal issues, manufacturers often use thermal management solutions such as heat sinks, fans, and cooling systems to dissipate heat and keep devices within safe temperature limits.

[0023] The term “thermal runaway” may be used herein to refer to a phenomenon in which the temperature of a computing device (e.g., mobile device, etc.) rises uncontrollably due to an increase in heat generated within the system. This may occur when the heat generated by the computing device components exceeds the capacity of the cooling system to dissipate the heat, resulting in a self-sustaining chain reaction that causes the temperature to rise rapidly. Thermal runaway may be particularly dangerous in mobile devices as it may cause permanent damage to the computing device or pose a risk to user safety.

[0024] The term “thermal envelope” may be used herein to refer to the upper threshold of heat that a computing device or component is designed to handle without causing thermal issues. It may represent the thermal design limits of a computing device and may be measured in watts or temperature units. The thermal envelope is an important consideration for device manufacturers, as it sets the upper limit for the amount of heat that may be generated by the computing device without causing thermal throttling, thermal runaway, or permanent damage to the computing device.

[0025] Manufacturers may use a variety of thermal management components (e.g., heat sinks, fans, cooling systems, etc.) to ensure that a computing device stays within its design thermal envelope. These components are generally designed to dissipate heat and keep the computing device within safe temperature limits. By staying within the thermal envelope, computing devices may operate effectively and safely, providing users with a reliable and consistent experience.

[0026] In addition to the above-mentioned components, some computing devices may be configured to implement dynamic voltage scaling or other additional techniques in which the operating frequency of a processor or component is reduced and / or in which some components in the mobile device are powered down for periods of time. For example, some computing devices may implement thermal throttling techniques that reduce the performance of the computing device or shut it down completely when the temperature reaches a predetermined threshold. While such solutions may be effective in preventing thermal issues, they may also result in a poor user experience. For example, if a user is in the middle of a graphics-intensive game, they may be frustrated if the game suddenly shuts down due to thermal constraints. Users may be similarly frustrated if high-end graphics processors or image processing features of an application are shut down frequently or for extended periods of time due to thermal issues.

[0027] Various embodiments overcome these and other limitations of conventional thermal management solutions by implementing an operation feature-based duty cycling algorithm that balances tradeoffs between performance and power consumption in the computing device. Some embodiments may control the temperature of the computing device by duty cycling a high power consumption operation feature (e.g., DMM, etc.) and a corresponding low power operation feature (e.g., DME, etc.). Some embodiments may dynamically adjust the duty ratio of high vs. low power consumption operation features to balance tradeoffs between performance and power consumption in the computing device.

[0028] For example, in some embodiments, a computing device may be configured to operate high-power consumption operation features and monitor the temperature of the computing device to determine whether the temperature of the computing device has risen above a thermal threshold value. In response to determining that the temperature of the computing device is above the thermal threshold value, the computing device may commence duty cycling the activation of a high-power consumption operation feature (e.g., AutoHDR with a two exposure setting, DMM,etc.) and a low-power consumption operation feature (e.g., AutoHDR with a one exposure setting, DME, etc.) over an interval according to an interval duty cycle ratio that represents the percentage of time that the high-power consumption operation feature is activated on the computing device versus the percentage of time that the low-power consumption operation feature is activated on the computing device.

[0029] A processor within the computing device may monitor the temperature of the computing device during an interval when a duty cycling of operation features are applied and, based on the monitored temperature, adjust the duty cycle ratio (i.e., the ratio of duty cycles used for the high-power operation feature and the low power operation feature) for the next or subsequent interval. In response to determining that the monitored temperature exceeds a thermal threshold value and is increasing, the computing device processor may decrease the percentage of time that the high-power consumption operation feature (e.g., AutoHDR with a two exposure setting) is activated on the computing device and / or increase the percentage of time that the low- power consumption operation feature (e.g., AutoHDR with a one exposure setting) is activated on the computing device. In subsequent intervals, the processor of the computing device may progressively increase the percentage of time the low-power consumption operation feature executes on the computing device until the monitored temperature is below a thermal threshold value. In response to determining that the monitored temperature is below the thermal threshold value and decreasing, the computing device may increase the percentage of time that the high-power consumption operation feature is activated on the computing device versus the percentage of time that the low-power consumption operation feature is activated on the computing device. This may ensure that the mobile device is operating at the highest performance level while keeping the temperatures below the thermal threshold value.

[0030] Various embodiments may be implemented on a number of single-processor and multiprocessor computer systems, including a system-on-chip (SOC) or system in a package (SIP). FIG. 1 illustrates an example computing system or SIP 100architecture that may be used in mobile computing devices implementing various embodiments.

[0031] The example SIP 100 illustrated in FIG. 1 includes two SOCs 102, 104, a clock 106, a voltage regulator 108, and a wireless transceiver 166. The first and second SOC 102, 104 may communicate via interconnection / bus module 150. The various processors 110, 112, 114, 116, 118, 121, 122, may be interconnected to each other and to one or more memory elements 120, system components and resources 124 and a thermal management unit 132 via an interconnection / bus module 126. Similarly, the processor 152 may be interconnected to the power management unit 154, the mmWave transceivers 156, memory 158, and various additional processors 160 via the interconnection / bus module 164. The interconnection / bus module 126, 150, 164 may include an array of reconfigurable logic gates and / or implement a bus architecture (e.g., CoreConnect, AMBA, etc.). Communications may be provided by advanced interconnects, such as high-performance networks-on-chip (NoCs).

[0032] In some embodiments, the first SOC 102 may operate as the central processing unit (CPU) of the mobile computing device that carries out the instructions of software application programs by performing the arithmetic, logical, control and input / output (I / O) operations specified by the instructions. In some embodiments, the second SOC 104 may operate as a specialized processing unit. For example, the second SOC 104 may operate as a specialized 5G processing unit responsible for managing high volume, high speed (e.g., 5 Gbps, etc.), and / or very high-frequency short wavelength (e.g., 28 GHz mmWave spectrum, etc.) communications.

[0033] The first SOC 102 may include a digital signal processor (DSP) 110, a modem processor 112, a graphics processor 114, an application processor 116, one or more coprocessors 118 (e.g., vector co-processor) connected to one or more of the processors, memory 120, deep processing unit (DPU) 121, artificial intelligence processor 122, system components and resources 124, an interconnection / bus module 126, one or more temperature sensors 130, a thermal management unit 132, and athermal power envelope (TPE) component 134. The second SOC 104 may include a 5G modem processor 152, a power management unit 154, an interconnection / bus module 164, a plurality ofmmWave transceivers 156, memory 158, and various additional processors 160, such as an applications processor, packet processor, etc.

[0034] Each processor 110, 112, 114, 116, 118, 121, 122, 152, 160 may include one or more cores, and each processor / core may perform operations independent of the other processors / cores. For example, the first SOC 102 may include a processor that executes a first type of operating system (e.g., FreeBSD, LINUX, OS X, etc.) and a processor that executes a second type of operating system (e.g., MICROSOFT WINDOWS 10). In addition, any or all of the processors 110, 112, 114, 116, 118, 121, 122, 152, 160 may be included as part of a processor cluster architecture (e.g., a synchronous processor cluster architecture, an asynchronous or heterogeneous processor cluster architecture, etc.).

[0035] In the various embodiments, any or all of the processors 110, 112, 114, 116, 118, 121, 122, 152, 160 may be configured to stabilize frames per second (FPS) by repeatedly applying a target FPS value and a current FPS value to an enhanced proportional-integral-derivative (PID) controller to generate frequency adjustment values, and using the frequency adjustment values to adjust or scale the processing frequencies in the SIP 100 until the current FPS value is within the threshold range of the target FPS value. Adjusting processing frequencies may include setting the maximum and minimum frequency values of any or all of the processors, nodes or clusters discussed in this application.

[0036] The first and second SOC 102, 104 may include various system components, resources, and custom circuitry for managing sensor data, analog-to-digital conversions, wireless data transmissions, and for performing other specialized operations, such as decoding data packets and processing encoded audio and video signals for rendering in a web browser. For example, the system components and resources 124 of the first SOC 102 may include power amplifiers, voltage regulators,oscillators, phase-locked loops, peripheral bridges, data controllers, memory controllers, system controllers, Access ports, timers, and other similar components used to support the processors and software clients running on a mobile computing device. The system components and resources 124 may also include circuitry to interface with peripheral devices, such as cameras, electronic displays, wireless communication devices, external memory chips, etc.

[0037] The first and / or second SOCs 102, 104 may further include an input / output module (not illustrated) for communicating with resources external to the SOC, such as a clock 106, a voltage regulator 108, and a wireless transceiver 166 (e.g., cellular wireless transceiver, Bluetooth transceiver, etc.). Resources external to the SOC (e.g., clock 106, voltage regulator 108, wireless transceiver 166) may be shared by two or more of the internal SOC processors / cores.

[0038] In addition to the example SIP 100 discussed above, various embodiments may be implemented in a wide variety of computing systems, which may include a single processor, multiple processors, multicore processors, or any combination thereof.

[0039] FIG. 2 illustrates the relationships between duty cycles and device temperatures, which may be junction temperature (Tj), skin temperature (Tskin), or a ratio of junction-to-skin temperature (Tj / Tskin). The junction temperature (Tj) may be the temperature at the point where the computing device’s active regions meet the metal contacts. The skin temperature (Tskin) may be the temperature of the computing device's outer skin or the temperature at the surface of the computing device. The Tj / Tskin ratio may indicate how efficiently the computing device is dissipating heat. A high Tj / Tskin ratio may mean that the junction temperature of the computing device is much higher than the temperature at its outer skin, which may indicate poor thermal performance. A low Tj / Tskin ratio may mean that the computing device is dissipating heat effectively, and its junction temperature is closer to its skin temperature.

[0040] With reference to FIGS. 1 and 2, a processor (e.g., SIP 100, etc.) of a computing device may be configured to use dynamic power optimization techniques for thermal mitigation. For example, the Auto HDR technique allows a camera pipeline to switch between two exposures and one exposure dynamically. The two- exposure configuration consumes more power than the single exposure, as two frames are processed and merged to generate the final encoded frame. Similarly, DMM and DME are two motion estimation algorithms, with DMM consuming more power but providing better image quality than DME. The average power consumption of the computing device may be reduced by enabling and duty cycling the power-hungry operation features for a certain time window 202-210.

[0041] For example, initially, in time window 202, all operation features are enabled 100% of the time. As the computing device temperature starts rising, power-hungry operation features are duty cycled in time windows 204-210 to reduce the average power consumption and device temperature. For example, at the end of the first time window 202, the computing device may determine that the computing device temperature has risen above a thermal threshold and is rising. In response, in time window 204, the computing device may operate the camera pipeline with two exposures with DMM enabled for 500ms and one exposure with DME enabled for 500ms, resulting in a 50% operation feature duty cycle over a one second duration.

[0042] At the end of the time window 204, the computing device processor may determine that the computing device temperature is still above the thermal threshold and is rising. In response, the computing device processor may decrease the percentage of time that the high-power consumption operation features (e.g., two exposures with DMM, etc.) are activated to 25% and / or increase the percentage of time that the low-power consumption operation features (e.g., one exposure with DME, etc.) are activated to 75% in the next time window 206.

[0043] At the end of the time window 206, the computing processor device may determine that the computing device temperature is still above the thermal threshold but is falling. Because the temperature is falling, the computing device does notfurther adjust the duty cycle for the next time window 208 but continues to operate in the 25% duty cycle (e.g., 25% high-power consumption operation features and 75% low-power consumption operation features, etc.).

[0044] At the end of the time window 208, the computing device processor may determine that the computing device temperature is now below the thermal threshold and is continuing to decrease. In response, the computing device processor may increase the percentage of time that the high-power consumption operation features (e.g., two exposures with DMM, etc.) are activated to 50% and / or decrease the percentage of time that the low-power consumption operation features (e.g., one exposure with DME, etc.) are activated to 50% in the next time window 210 to improve performance of the computing device. The technique may prevent a thermal runaway and may provide the end-user with reasonable image quality. Various embodiments provide a way to control power consumption while allowing high-power consumption operation features to run without abrupt device resets or time constraints, thereby improving the user experience. These techniques may be applied to different use cases, not just multimedia, and may help avoid thermal runaway and device resets due to excessive heat generation.

[0045] FIG. 3 illustrates a method 300 for thermal mitigation using feature-based duty cycling in accordance with some embodiments. Method 300 may be performed by a processor (e.g., SOC 102, 104, processors 110, 112, 114, 116, 118, 121, 122, etc.) of a computing device (e.g., 600). With reference to FIGs. 1-3, means for performing functions of the method 300 may include a processor (e.g., SOC 102, 104, processors 110, 112, 114, 116, 118, 121, 122, etc.).

[0046] In block 302, the processor may duty cycle the activation of a first operation feature that operates at a first power level and a second operation feature that is different from the first operation feature and operates at a second power level different from the first power level over an interval according to an interval duty cycle ratio that represents a percentage of time that the first operation feature is activated on the computing device versus a percentage of time that the second operation feature isactivated on the computing device. For example, the first operation feature may be a high-power consumption operation feature (e.g., two exposures with DMM, etc.) and the second operation feature may be a low-power consumption operation feature (e.g., one exposure with DME, etc.). Such feature-based duty cycling of high-power consumption operation features with their corresponding low-power consumption operation features may reduce power consumption in the computing device.

[0047] In block 304, the processor may monitor the temperature of the computing device during the current interval. In some embodiments, the processor may monitor the temperature of the computing device via the temperature sensors 130, a thermal management unit 132, and / or a thermal power envelope (TPE) component 134 discussed above. In some embodiments, the monitored device temperatures may include a junction temperature (Tj), a skin temperature (Tskin), and / or a ratio of junction-to-skin temperature (Tj / Tskin). In some embodiments, the processor may monitor its own temperature using an on-chip thermal sensor that measures the temperature of the processor die itself, generates an analog voltage signal that corresponds to the temperature of the processor die, sends the signal to the processor’s internal monitoring circuitry for conversion to a digital value that can be read and processed by the processor’s firmware.

[0048] In block 306, the processor may adjust the interval duty cycle ratio (e.g., 100%, 50%, 25%, etc.) for a subsequent interval based on the monitored temperature. For example, the processor may decrease the percentage of time that the first operation feature that operates at a high-power level (i.e., a high-power consumption feature) is activated on the computing device and / or increase the percentage of time that the second operation feature that is a low-power consumption feature is activated on the computing device in response to determining that the monitored temperature is above a thermal threshold value and increasing. The processor may increase the percentage of time that the first operation feature (high-power consumption operation feature) is activated on the computing device and / or decrease the percentage of time that the second operation feature (low-power consumption operation feature) isactivated on the computing device in response to determining that the monitored temperature is below the thermal threshold value and decreasing.

[0049] The processor may continue to monitor the temperature in block 304 and adjust the duty cycle ratio in block 306 to balance tradeoffs between performance and power consumption while staying within the thermal envelope and preventing thermal runaway.

[0050] FIG. 4 illustrates a method 400 for thermal mitigation using feature-based duty cycling in accordance with some embodiments. Method 400 may be performed by a processor in a computing device (e.g., SOC 102, 104, processors 110, 112, 114, 116, 118, 121, 122, etc.). With reference to FIGs. 1-4, means for performing functions of the method 400 may include a processor (e.g., SOC 102, 104, processors 110, 112, 114, 116, 118, 121, 122, etc.).

[0051] In determination block 402, the processor may determine whether the temperature of the computing device exceeds a thermal threshold value. In response to determining that the temperature does not exceed the thermal threshold value (i.e., determination block 402 = “No”), the processor may activate the first operation feature (high-power consumption operation feature) and / or operate at 100% duty cycle in block 404. This is because the computing device temperature is sufficiently low so that thermal runaway is not yet a concern and thus the computing device may operate in full-performance mode.

[0052] In response to determining that the temperature exceeds the thermal threshold value (i.e., determination block 402 = “Yes”), the processor may perform the operations discussed above with reference to blocks 302-306 of the method 300 as described to balance tradeoffs between performance and power consumption while staying within the thermal envelope and preventing thermal runaway.

[0053] FIG. 5 illustrates a method 500 for thermal mitigation using feature-based duty cycling in accordance with some embodiments. With reference to FIGs. 1-5, method 500 may be performed by a processor in a computing device (e.g., SOC 102, 104,processors 110, 112, 114, 116, 118, 121, 122, etc.). Means for performing functions of the method 500 may include a processor (e.g., SOC 102, 104, processors 110, 112, 114, 116, 118, 121, 122, etc.).

[0054] In blocks 302 and 304, the processor may perform the operations of the like numbered blocks of the method 300 as described. In determination block 502, the processor may determine whether the computing device temperature is above a thermal threshold value.

[0055] In response to determining that the computing device temperature is above the thermal threshold value (i.e., determination block 502 = “Yes”), the processor may determine whether the computing device temperature is rising in determination block 504.

[0056] In response to determining that the computing device temperature is not rising (i.e., determination block 504 = “No”), the processor may use the current interval duty cycle ratio for the subsequent interval and continue monitoring the temperature of the computing device in block 304. That is, because the temperature is not rising (or is falling), the processor does not further adjust the duty cycle for the next time window but continues to operate in the current duty cycle (e.g., 50% high-power consumption operation features and 50% low-power consumption operation features, etc.).

[0057] In response to determining that the computing device temperature is rising (i.e., determination block 504 = “Yes”), the processor may adjust the interval duty cycle ratio for a subsequent interval by decreasing the percentage of time that the first operation feature is activated and / or increasing the percentage of time that the second operation feature is activated in block 506 in embodiments in which the first operation feature operates at a power level (first power level) that is greater than the power level of the second operation feature. For example, the processor may adjust the duty cycle ratio from 50% a high-power consumption operation feature to 25% the high-power consumption operation feature to reduce power consumption and heat generation in the computing device.

[0058] In response to determining that the computing device temperature is not above the thermal threshold value (i.e., determination block 502 = “No”), the processor may determine whether the computing device temperature is falling in determination block 508.

[0059] In response to determining that the computing device temperature is not falling (i.e., determination block 508 = “No”), the processor may use the current interval duty cycle ratio for the subsequent interval and continue monitoring the temperature of the computing device in block 304 as described.

[0060] In response to determining that the computing device temperature is falling (i.e., determination block 508 = “Yes”), the processor may adjust the interval duty cycle ratio for a subsequent interval by increasing the percentage of time that the first operation feature is activated and / or decreasing the percentage of time that the second operation feature is activated in block 510 in embodiments in which the first operation feature operates at a power level (first power level) that is greater than the power level of the second operation feature. For example, the processor may adjust the duty cycle ratio from 50% to 75% to improve the performance of the computing device.

[0061] After adjusting the interval duty cycle ratio in either of blocks 506 or 510, the processor may again monitor a temperature of the computing device during the next interval in block 304 as described and continue to perform the operations of the method 500.

[0062] Method 500 may prevent a thermal runaway and may provide the end-user with reasonable image quality. Method 500 may also provide a way to control power consumption while allowing high-power consumption operation features to run without abrupt device resets or time constraints, thereby improving the user experience.

[0063] Various embodiments (including, but not limited to, embodiments described above with reference to FIGS. 1-5) may be implemented in a wide variety of wireless devices and computing systems including a smartphone 600, an example of which isillustrated in FIG. 6. With reference to FIGS. 1-6, the smartphone 600 may include a first SOC 102 coupled to a second SOC 104. The first and second SoCs 102, 104 may be coupled to internal memory 616, a display 612, and to a speaker 166. The first and second SOCs 102, 104 may also be coupled to at least one subscriber identity module (SIM) 640 and / or a SIM interface that may store information supporting a first 5GNR subscription and a second 5GNR subscription, which support service on a 5G non- standalone (NS A) network.

[0064] The smartphone 600 may include an antenna 604 for sending and receiving electromagnetic radiation that may be connected to a wireless transceiver 166 coupled to one or more processors in the first and / or second SOCs 102, 104. The smartphone 600 may also include menu selection buttons or rocker switches 620 for receiving user inputs.

[0065] The smartphone 600 also includes a sound encoding / decoding (CODEC) circuit 610, which digitizes sound received from a microphone into data packets suitable for wireless transmission and decodes received sound data packets to generate analog signals that are provided to the speaker to generate sound. Also, one or more of the processors in the first and second circuitries 102, 104, wireless transceiver 166 and CODEC 610 may include a digital signal processor (DSP) circuit (not shown separately).

[0066] The processors or processing units discussed in this application may be any programmable microprocessor, microcomputer, or multiple processor chip or chips that can be configured by software instructions (applications) to perform a variety of functions, including the functions of various embodiments described. In some computing devices, multiple processors may be provided, such as one processor within first circuitry dedicated to wireless communication functions and one processor within a second circuitry dedicated to running other applications. Software applications may be stored in the memory before they are accessed and loaded into the processor. The processors may include internal memory sufficient to store the application software instructions.

[0067] Implementation examples are described in the following paragraphs. While some of the following implementation examples are described in terms of example methods, further example implementations may include: the example methods discussed in the following paragraphs implemented by a computing device including a processor configured with processor-executable instructions to perform operations of the methods of the following implementation examples; the example methods discussed in the following paragraphs implemented by a computing device including means for performing functions of the methods of the following implementation examples; and the example methods discussed in the following paragraphs may be implemented as a non-transitory processor-readable storage medium having stored thereon processor-executable instructions configured to cause a processor of a computing device to perform the operations of the methods of the following implementation examples.

[0068] Implementation examples are described in the following paragraphs. While some of the following implementation examples are described in terms of example methods that may be performed in a computing device by a processor, further example implementations may include: a computing device including a processor configured to perform the methods of the following implementation examples; a computing device including means for performing functions of the following implementation examples; and a non-transitory, processor-readable memory having stored thereon processorexecutable instructions configured to cause a processor in a computing device perform the methods of the following implementation examples.

[0069] Example 1. A method of managing thermal conditions of a computing device, including: performing duty cycle activation of a first operation feature and a second operation feature that is different from the first operation feature and operates at a second power level different from the first power level over an interval using an interval duty cycle ratio that represents a percentage of time that the first operation feature is activated versus a percentage of time that the second operation feature isactivated; monitoring a temperature of the computing device during the interval; and adjusting the interval duty cycle ratio for a subsequent interval based on the monitored temperature.

[0070] Example 2. The method of example 1, wherein duty cycle activation of the first operation feature and the second operation feature over the interval is performed in response to determining that the temperature of the computing device is above a thermal threshold value.

[0071] Example 3. The method of any of examples 1-2, wherein adjusting the interval duty cycle ratio for a subsequent interval based on the monitored temperature includes decreasing the percentage of time that the first operation feature is activated on the computing device versus the percentage of time that the second operation feature is activated on the computing device in response to determining that the monitored temperature is above a thermal threshold value and increasing.

[0072] Example 4. The method of any of examples 1-3, wherein adjusting the interval duty cycle ratio for a subsequent interval based on the monitored temperature includes increasing the percentage of time that the first operation feature is activated on the computing device versus the percentage of time that the second operation feature is activated on the computing device in response to determining that the monitored temperature is below a thermal threshold value and decreasing.

[0073] Example 5. The method of any of examples 1-4, further including: monitoring the temperature of the computing device during each interval; and adjusting the interval duty cycle ratio for each subsequent interval to maintain the monitored temperature of the computing device below a thermal limit and above a thermal threshold.

[0074] Example 6. The method of any of examples 1-5, wherein the first operation feature consumes more power than the second operation feature of the computing device.

[0075] Example 7. The method of example 6, wherein performing duty cycle activation of the first operation feature and the second operation feature includes performing duty cycle activation of a dense motion map (DMM) and a descriptor matching estimation (DME).

[0076] Example s. The method of example 6, wherein performing duty cycle activation of the first operation feature and the second operation feature includes performing duty cycle activation of an auto high dynamic range (Auto HDR) two- exposure configuration and an Auto HDR single-exposure configuration.

[0077] As used in this application, the terms “component,” “module,” “system,” and the like are intended to include a computer-related entity, such as, but not limited to, hardware, firmware, a combination of hardware and software, software, or software in execution, which are configured to perform particular operations or functions. For example, a component may be, but is not limited to, a process running on a processor, a processor, an object, an executable, a thread of execution, a program, and / or a computer. By way of illustration, both an application running on a computing device and the computing device may be referred to as a component. One or more components may reside within a process and / or thread of execution and a component may be localized on one processor or core and / or distributed between two or more processors or cores. In addition, these components may execute from various non- transitory computer readable media having various instructions and / or data structures stored thereon. Components may communicate by way of local and / or remote processes, function or procedure calls, electronic signals, data packets, memory read / writes, and other known network, computer, processor, and / or process related communication methodologies.

[0078] Various embodiments illustrated and described are provided merely as examples to illustrate various features of the claims. However, features shown and described with respect to any given embodiment are not necessarily limited to the associated embodiment and may be used or combined with other embodiments thatare shown and described. Further, the claims are not intended to be limited by any one example embodiment. For example, one or more of the operations of the methods may be substituted for or combined with one or more operations of the methods.

[0079] The foregoing method descriptions and the process flow diagrams are provided merely as illustrative examples and are not intended to require or imply that the operations of various embodiments must be performed in the order presented. As will be appreciated by one of skill in the art the order of operations in the foregoing embodiments may be performed in any order. Words such as “thereafter,” “then,” “next,” etc. are not intended to limit the order of the operations; these words are simply used to guide the reader through the description of the methods. Further, any reference to claim elements in the singular, for example, using the articles “a,” “an” or “the” is not to be construed as limiting the element to the singular.

[0080] The various illustrative logical blocks, modules, circuits, and algorithm operations described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and operations have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the claims.

[0081] The hardware used to implement the various illustrative logics, logical blocks, modules, and circuits described in connection with the embodiments disclosed herein may be implemented or performed with a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designedto perform the functions described herein. A general-purpose processor may be a microprocessor, but, in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. Alternatively, some operations or methods may be performed by circuitry that is specific to a given function.

[0082] In one or more embodiments, the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored as one or more instructions or code on a non- transitory computer-readable medium or non-transitory processor-readable medium. The operations of a method or algorithm disclosed herein may be embodied in a processor-executable software module, which may reside on a non-transitory computer-readable or processor-readable storage medium. Non-transitory computer- readable or processor-readable storage media may be any storage media that may be accessed by a computer or a processor. By way of example but not limitation, such non-transitory computer-readable or processor-readable media may include RAM, ROM, EEPROM, FLASH memory, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that may be used to store target program code in the form of instructions or data structures and that may be accessed by a computer. Disk and disc, as used herein, includes compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk, and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above are also included within the scope of non-transitory computer-readable and processor-readable media. Additionally, the operations of a method or algorithm may reside as one or any combination or set of codes and / or instructions on a non-transitory processor-readable medium and / orcomputer-readable medium, which may be incorporated into a computer program product.

[0083] The preceding description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the claims. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the scope of the claims. Thus, the present disclosure is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the following claims and the principles and novel features disclosed herein.

Claims

CLAIMSWhat is claimed is:

1. A computing device, comprising: a processor configured to: perform duty cycle activation of either a first operation feature that operates at a first power level or a second operation feature that is different from the first operation feature and operates at a second power level different from the first power level over an interval according to an interval duty cycle ratio that represents a percentage of time that the first operation feature is activated versus a percentage of time that the second operation feature is activated; monitor a temperature of the computing device during the interval; and adjust the interval duty cycle ratio for a subsequent interval based on the monitored temperature.

2. The computing device of claim 1, wherein the processor is configured to perform duty cycle activation of the first operation feature and the second operation feature over the interval in response to determining that the temperature of the computing device is above a thermal threshold value.

3. The computing device of claim 1, wherein the processor is further configured to monitor the temperature of the computing device during each interval and adjust the interval duty cycle ratio for each subsequent interval to maintain the monitored temperature of the computing device below a thermal limit and above a thermal threshold.

4. The computing device of claim 1, wherein the first power level of the first operation feature is greater than the second power level of the second operation feature of the computing device.

5. The computing device of claim 4, wherein the processor is configured to adjust the interval duty cycle ratio for the subsequent interval based on the monitored temperature by decreasing the percentage of time that the first operation feature is activated versus the percentage of time that the second operation feature is activated in response to determining that the monitored temperature is above a thermal threshold value and increasing.

6. The computing device of claim 4, wherein the processor is configured to adjust the interval duty cycle ratio for the subsequent interval based on the monitored temperature by increasing the percentage of time that the first operation feature is activated versus the percentage of time that the second operation feature is activated in response to determining that the monitored temperature is below a thermal threshold value and decreasing.

7. The computing device of claim 4, wherein the processor is configured to perform duty cycle activation of the first operation feature of the computing device and the second operation feature of the computing device by performing duty cycle activation of a dense motion map (DMM) and a descriptor matching estimation (DME).

8. The computing device of claim 4, wherein the processor is configured to perform duty cycle activation of the first operation feature and the second operation feature by performing duty cycle activation of an auto high dynamic range (Auto HDR) two- exposure configuration and an Auto HDR single-exposure configuration.

9. A method of managing thermal conditions of a computing device, comprising: performing duty cycle activation of a first operation feature that operates at a first power level and a second operation feature that is different from the first operation feature and operates at a second power level different from the first power level over an interval according to an interval duty cycle ratio that represents a percentage of time that the first operation feature is activated versus a percentage of time that the second operation feature is activated on the computing device; monitoring a temperature of the computing device during the interval; and adjusting the interval duty cycle ratio for a subsequent interval based on the monitored temperature.

10. The method of claim 9, wherein duty cycle activation of the first operation feature and the second operation feature over the interval is performed in response to determining that the temperature of the computing device is above a thermal threshold value.

11. The method of claim 9, further comprising: monitoring the temperature of the computing device during each interval; and adjusting the interval duty cycle ratio for each subsequent interval to maintain the monitored temperature of the computing device below a thermal limit and above a thermal threshold.

12. The method of claim 9, wherein the first operation feature consumes more power than the second operation feature of the computing device.

13. The method of claim 12, wherein adjusting the interval duty cycle ratio for a subsequent interval based on the monitored temperature comprises decreasing the percentage of time that the first operation feature is activated on the computing device versus the percentage of time that the second operation feature is activated on thecomputing device in response to determining that the monitored temperature is above a thermal threshold value and increasing.

14. The method of claim 12, wherein adjusting the interval duty cycle ratio for a subsequent interval based on the monitored temperature comprises increasing the percentage of time that the first operation feature is activated on the computing device versus the percentage of time that the second operation feature is activated on the computing device in response to determining that the monitored temperature is below a thermal threshold value and decreasing.

15. The method of claim 12, wherein performing duty cycle activation of the first operation feature and the second operation feature comprises performing duty cycle activation of a dense motion map (DMM) and a descriptor matching estimation (DME).

16. The method of claim 12, wherein performing duty cycle activation of the first operation feature and the second operation feature comprises performing duty cycle activation of an auto high dynamic range (Auto HDR) two-exposure configuration and an Auto HDR single-exposure configuration.

17. A computing device, comprising: means for performing duty cycle activation of a first operation feature that operates at a first power level and a second operation feature that is different from the first operation feature and operates at a second power level different from the first power level over an interval according to an interval duty cycle ratio that represents a percentage of time that the first operation feature is activated on the computing device versus a percentage of time that the second operation feature is activated on the computing device;means for monitoring a temperature of the computing device during the interval; and means for adjusting the interval duty cycle ratio for a subsequent interval based on the monitored temperature.

18. The computing device of claim 17, wherein means for performing duty cycle activation of the first operation feature and the second operation feature over the interval comprises means for performing duty cycle activation of the first operation feature and the second operation feature in response to determining that the temperature of the computing device is above a thermal threshold value.

19. The computing device of claim 17, further comprising: means for monitoring the temperature of the computing device during each interval; and means for adjusting the interval duty cycle ratio for each subsequent interval to maintain the monitored temperature of the computing device below a thermal limit and above a thermal threshold.

20. The computing device of claim 17, wherein the first operation feature consumes more power than the second operation feature of the computing device.

21. The computing device of claim 20, wherein means for adjusting the interval duty cycle ratio for a subsequent interval based on the monitored temperature comprises means for decreasing the percentage of time that the first operation feature is activated on the computing device versus the percentage of time that the second operation feature is activated on the computing device in response to determining that the monitored temperature is above a thermal threshold value and increasing.

22. The computing device of claim 20, wherein means for adjusting the interval duty cycle ratio for a subsequent interval based on the monitored temperature comprises means for increasing the percentage of time that the first operation feature is activated on the computing device versus the percentage of time that the second operation feature is activated on the computing device in response to determining that the monitored temperature is below a thermal threshold value and decreasing.

23. The computing device of claim 20, wherein means for performing duty cycle activation of the first operation feature and the second operation feature comprises means for performing duty cycle activation of a dense motion map (DMM) and a descriptor matching estimation (DME).

24. The computing device of claim 20, wherein means for performing duty cycle activation of the first operation feature and the second operation feature comprises means for performing duty cycle activation of an auto high dynamic range (Auto HDR) two-exposure configuration and an Auto HDR single-exposure configuration.

25. A non-transitory processor-readable medium having stored thereon processorexecutable instructions configured to cause a processor of a computing device to perform operations comprising: performing duty cycle activation of a first operation feature that operates at a first power level and a second operation feature that is different from the first operation feature and operates at a second power level different from the first power level over an interval according to an interval duty cycle ratio that represents a percentage of time that the first operation feature is activated on the computing device versus a percentage of time that the second operation feature is activated on the computing device; monitoring a temperature of the computing device during the interval; andadjusting the interval duty cycle ratio for a subsequent interval based on the monitored temperature.

26. The non-transitory processor-readable medium of claim 25, wherein the stored processor-executable instructions are configured to cause the processor of the computing device to perform operations such that adjusting the interval duty cycle ratio for a subsequent interval based on the monitored temperature comprises decreasing the percentage of time that the first operation feature is activated on the computing device versus the percentage of time that the second operation feature is activated on the computing device in response to determining that the monitored temperature is above a thermal threshold value and increasing.

27. The non-transitory processor-readable medium of claim 25, wherein the stored processor-executable instructions are configured to cause the processor of the computing device to perform operations such that adjusting the interval duty cycle ratio for a subsequent interval based on the monitored temperature comprises increasing the percentage of time that the first operation feature is activated on the computing device versus the percentage of time that the second operation feature is activated on the computing device in response to determining that the monitored temperature is below a thermal threshold value and decreasing.

28. The non-transitory processor-readable medium of claim 25, wherein the stored processor-executable instructions are configured to cause the processor of the computing device to perform operations further comprising: monitoring the temperature of the computing device during each interval; and adjusting the interval duty cycle ratio for each subsequent interval to maintain the monitored temperature of the computing device below a thermal limit and above a thermal threshold.

29. The non-transitory processor-readable medium of claim 28, wherein the stored processor-executable instructions are configured to cause the processor of the computing device to perform operations such that performing duty cycle activation of the first operation feature and the second operation feature comprises performing duty cycle activation of a dense motion map (DMM) and a descriptor matching estimation (DME).

30. The non-transitory processor-readable medium of claim 28, wherein the stored processor-executable instructions are configured to cause the processor of the computing device to perform operations such that performing duty cycle activation of the first operation feature and the second operation feature comprises performing duty cycle activation of an auto high dynamic range (Auto HDR) two-exposure configuration and an Auto HDR single-exposure configuration.