Apparatus and methods for cooling of an integrated circuit

Systems and methods for cooling an Integrated Circuit (IC) are provided. In one embodiment, the system includes a vessel for holding a coolant in a liquid phase, where the IC is at least in part thermally coupled to the coolant to transfer heat generated by the IC to the coolant. The system also includes a controller for periodically increasing a heat flux supplied by the IC to the coolant followed by a reduction of the heat flux supplied by the IC to the coolant. Methods for controlling the operational parameters of the IC to periodically increasing and then decreasing the heat flux supplied by the IC to the coolant are also provided. A sensor may be used to sense a state of phase change of the coolant and which generates a signal that the controller uses to adjust the heat flux supplied by the IC.

FIELD OF THE INVENTION

The invention generally relates to cooling of integrated circuits and more particularly to apparatus and methods for cooling of an integrated circuit by use of a liquid coolant.

BACKGROUND

The amount of power an integrated circuit (IC) produces fluctuates based on computational workload of the IC. In general, an increase in power results in an increase in temperature of the IC and in particular an increase in the transistors junction temperature. As the junction temperature increases so does the probability of getting logic errors in the IC and after a certain temperature the IC can no longer be expected to function properly. Thus, when there is a high computational workload of an IC, there is a desire to ensure that the IC functions properly by controlling the temperature of the IC.

One conventional method for controlling the temperature of an IC includes monitoring the IC's temperature with a thermal sensor and adjusting the speed of a fan directed to a heat sink coupled to the IC accordingly. Another conventional method for controlling the temperature of an IC includes monitoring the IC's temperature and lowering the clock frequency of the IC accordingly when the temperature increases.

However, the computing power of ICs is generally limited by thermal management issues and as such when it is desirable for an IC to be processing at a high computational workload, conventional methods for controlling the temperature of ICs may not allow for adequate temperature control that ensure that the IC functions properly while still meeting the desired high computational workload.

In light of the above, there is a need for improving the way that the temperature of ICs is managed and/or the manner in which ICs are cooled.

SUMMARY

In accordance with a broad aspect, a system for cooling an Integrated Circuit (IC) having at least one surface is provided. The system includes a vessel for holding a coolant in a liquid phase, the at least one surface being thermally coupled to the coolant to transfer heat generated by the IC to the coolant. The coolant and the IC are characterized by a steady-state Critical Heat Flux (CHF) value. The system also includes a controller for periodically increasing a heat flux supplied by the IC to the coolant above the steady-state CHF value followed by a reduction of the heat flux supplied by the IC to the coolant below the steady-state CHF value.

In accordance with another broad aspect, a system for cooling an IC in thermal contact with a coolant in a liquid phase is provided. The system includes at least one sensor for sensing a phase change state of the coolant and for generating a signal and a controller for processing the signal to output a control signal for regulating a heat energy transfer from the IC to the coolant on the basis of the control signal.

In accordance with a further broad aspect, a system for cooling an IC having at least one surface is provided. The system includes a vessel for holding a coolant in a liquid phase, the at least one surface being thermally coupled to the coolant to transfer heat generated by the IC to the coolant. The system also includes a sensor to sense a state of phase change of the coolant and which generates a signal and a controller for adjusting a heat flux supplied by the IC to the coolant in response to the signal.

These and other aspects of the invention will now become apparent to those of ordinary skill in the art upon review of the following description of embodiments of the invention in conjunction with the accompanying drawings.

It is to be expressly understood that the description and drawings are only for the purpose of illustrating certain embodiments of the invention and are an aid for understanding. They are not intended to be a definition of the limits of the invention.

DETAILED DESCRIPTION

In general, a cooling system is provided for cooling an integrated circuit that is at least in part thermally coupled to a liquid coolant that is held in a vessel. Examples of implementation of invention is illustrated in the annexed drawings and further described below.

The Cooling System

FIG. 1Ashows a cooling system100A for cooling an integrated circuit (IC)102in accordance with a specific and non-limiting example of implementation. As shown, the cooling system100A includes a vessel104for holding a coolant108in a liquid phase, a controller106and an optional sensor110.

The IC102may be implemented using any suitable hardware components for implementing a central processing unit (CPU) including a microcontroller, field-programmable gate array (FPGA), application-specific integrated circuit (ASIC), digital signal processor (DSP), graphics processing unit (GPU), any other suitable semiconductor device, or any other suitable device. The IC102may be configured such that when it is running (e.g., powered on and in operation) it may process various data. The IC102may be suitable for a server, such as in servers running in data centers. When the IC102is running, it produces heat based on a number of factors including the voltage level, the clock/frequency speed/rate, and/or the workload of the IC102. As such, when the IC102is running, the temperature of the IC102is based at least in part on the heat produced by the IC102. As the temperature of the IC102increases, a critical temperature may be reached, at which the IC102must be shut down or throttled down to prevent it from overheating. A specific and non-limiting example of the cooling system100A is illustrated inFIG. 3B, where the IC102is packaged in a module. The module includes the IC102, a substrate304, as well as other structural elements (e.g., solder joints, underfill material, etc.). The IC102is attached to an electronic device302, such as a motherboard via a socket (not illustrated). As such, the IC102may be associated with various electronic components external to the IC102and connected via the electronic device302.

Referring back toFIG. 1A, the vessel104may be made of any suitable material for containing the liquid coolant108. In some embodiments, the vessel104may be made according to the vessel/cooling chamber described in International Publication No. WO 2014/040182, the content of which is hereby incorporated by reference. As shown in the example ofFIG. 1A, the IC102is immersed in the coolant108of the vessel104. In other examples, not illustrated, the IC102may be contained in a module to isolate direct contact of the coolant108with the IC102. The vessel104may be made of a metallic component in order to isolate the IC102from external electromagnetic interferences or the vessel104may be made of a composite material and a suitable electromagnetic shielding, such as copper meshing can be applied on it. In the example ofFIG. 3B, the vessel104is defined by the inside cavity of a heat sink assembly306. It is appreciated that, in the example ofFIG. 3B, at least part of the IC102is in direct contact with coolant108. It is also appreciated that the size of the vessel104may vary in various embodiments. Regardless of the specific means of constructing the vessel104and/or the size of the vessel, the vessel104is designed for holding a coolant108in a liquid phase.

The liquid coolant108may be dielectric to avoid short-circuiting the electrical connections between the IC102and the various associated electronic components. In general, at least part or at least one surface of the IC102is thermally coupled to the coolant108to transfer heat generated by the IC102to the coolant108. Although in the example inFIG. 1A, the IC102is immersed in coolant108of the vessel104, in other embodiments such as the one shown inFIG. 1B, a surface124of the IC102is thermally coupled to the coolant108via the surface122of the vessel104to transfer heat generated by the IC102to the coolant108. It is appreciated that the cooling system100B ofFIG. 1B, is a variant of the cooling system100A, in which the vessel104is coupled to the package structure of the IC102. In cases where the vessel104is coupled to the package structure of the IC102, a heat sink assembly such as an integrated heat spreader (IHS) may be coupled to the package structure of the IC102such that the vessel104is coupled to the IHS and/or the coolant108is thermally coupled to the IHS.

The liquid coolant108can be engineered with a specific boiling point at a temperature selected according to cooling requirements. Since the phase transition from liquid to vapor takes-up a significant amount of energy, the boiling point may be selected to be lower than the maximal operational temperature of the IC102. In other words, if the temperature of the IC102progressively increases, the coolant108should start boiling before the point at which the critical temperature is reached and the IC102must be shut down or throttled down to prevent it from overheating. The temperature differential, which is the difference between the IC's102critical temperature, which is considered to be the upper limit of its operational temperature range and the liquid boiling temperature (e.g., the boiling point), may be determined according to the specifications of the IC102and of the coolant108. It is however preferred that the boiling point of the coolant108be below the IC's102critical temperature. As such, the coolant108has at least one boiling point. The boiling point of the coolant108may be relatively low when compared to other liquids. For example, the coolant108when compared with water may have a lower boiling point. More specifically, in some embodiments, the maximum boiling point of the coolant is no greater than 90 degree Celsius, in some cases no greater than 80 degree Celsius, in some cases no greater than 70 degree Celsius, in some cases no greater than 60 degree Celsius, and in some cases even less. The chemical sold by3M under the trademark Novec is an example of coolant108that may be used in applications in which the coolant108is in direct contact with the electronic circuitry of the IC102. Coolants with multiple boiling points may be used, as described in International Publication No. WO 2014/040182.

For ease of readability of the rest of this document, unless specified otherwise, reference to the cooling system100A is to be understood to be reference to the IC102associated with the vessel104holding the coolant108regardless of whether the IC102is immersed in coolant108of the vessel104(e.g., as shown inFIG. 1A) or the IC102is coupled to the vessel104such that at least one surface of the IC102is thermally coupled to the coolant108(e.g., as shown inFIG. 1B).

As at least one surface of the IC102is thermally coupled to the coolant108, heat flows from the IC102to coolant108, when the IC102is running. This flow of heat from the IC102to coolant108constitutes heat flux, which is the rate of heat energy transferred through a given surface per unit time.

The controller106is configured for controlling various parameters of the cooling system100A. More specifically, the controller106is configured for providing control algorithms for adjusting the heat transfer capabilities of the cooling system100A. The control algorithms for adjusting the heat transfer capabilities of the cooling system100A may include controlling one or more control parameters of the cooling system100A and/or controlling one or more operational parameters of the IC102in order to adjust the temperature of the IC102. As should become more readily apparent later in this document, the controller106may be configured for periodically increasing and/or decreasing the heat flux supplied by the IC102to the coolant108. The various aspects that the controller106is configured to control are discussed further throughout this document.

In the examples shown inFIGS. 1A and 1B, the controller106is external to the IC102. In such cases, the controller106may be configured as shown inFIGS. 2A and 2B. As shown inFIGS. 2A and 2B, the controller106includes a processor292, computer readable memory290and input/output circuitry294. The processor292, the computer readable memory290and the input/output circuitry294may communicate with each other via one or more suitable data communication buses. In the specific and non-limiting examples inFIGS. 2A and 2B, the processor292is different from the IC102; however, in other specific and non-limiting examples of implementation, such as shown inFIG. 2C, the IC102includes the processor292.FIG. 2Cillustrates a controller106′, which is a variant of the controller106such that the IC102includes the processor292. Although inFIG. 2C, the computer readable memory290and the input/output circuitry294is shown as external to the IC102, in other embodiments, the computer readable memory290and/or the input/output circuitry294are included in the IC102. It is also appreciated that the controller106′ may be implemented on the IC102, such as shown inFIGS. 1C and 1D. More specifically, the cooling system100C ofFIG. 1Cis a variant of the cooling system100A, in which the controller106′ is implemented on the IC102. More specifically, the cooling system100D ofFIG. 1Dis a variant of the cooling system100A, in which the controller106′ is implemented on the IC102and where the sensor110is implemented on the IC102.

Although the controller106is illustrated and discussed in this document as a digital controller, the controller106may be implemented as an analog controller in other embodiments. The analog controller may include various electronic components that typically would not include the processor292and the computer readable memory290. In other words, the controller106may be implemented to perform analog signal processing which is conducted on continuous analog signals by some analog means (as opposed to the discrete digital signal processing where the signal processing is carried out by a digital process). It is appreciated that the controller106may include both analog and digital components in various implementations of the controller106.

For ease of readability of the rest of this document, unless specified otherwise, reference to the cooling system100A is to be understood to be reference to the controller106regardless of whether the controller106is implemented external to the IC102(e.g., as shown inFIGS. 1A and 1B) or the controller106′ (and/or the processor292) is implemented on the IC102(e.g., as shown inFIGS. 1C and 1D).

Turning now to the structure of the controller106, the computer readable memory290may be any type of non-volatile memory (e.g., flash memory, read-only memory (ROM), magnetic computer storage devices or any other suitable type of memory) or semi-permanent memory (e.g., random access memory (RAM) or any other suitable type of memory). Although only a single computer readable memory290is illustrated, the controller106may have more than one computer readable memory module. The computer readable memory290stores program code and/or instructions, which may be executed by the processor292. The program code and/or instructions executable by the processor292may include software implementing control algorithms for adjusting the heat transfer capabilities of the cooling system100A (e.g., increasing and/or decreasing the heat flux supplied by the IC102to the coolant108). The computer readable memory290may also include one or more databases for the storage of data.

The processor292may be implemented using any suitable hardware component for implementing a central processing unit (CPU) including a microcontroller, field-programmable gate array (FPGA), application-specific integrated circuit (ASIC), digital signal processor (DSP), integrated circuit (IC), graphics processing unit (GPU) or any other suitable device. The processor292is in communication with the computer readable memory290, such that the processor292is configured to read data obtained from the computer readable memory290such as information pertaining to the control algorithms and execute instructions stored in the computer readable memory290such as defined by the control algorithms for adjusting the heat transfer capabilities of the cooling system100A. Although only a single processor292is illustrated, it is appreciated that more than one processor may be used.

The controller106may runs an operating system stored in the computer readable memory290such as Android, iOS, Windows 7, Windows 8, Linux and Unix operating systems, to name a few non-limiting possibilities. The processor292may execute instructions stored in the computer readable memory290to run the operating system such that the control algorithms for adjusting the heat transfer capabilities of the cooling system100A can then be executed. It is appreciated that the controller106may be adapted to run on operating systems that may be developed in the future.

The input/output circuitry294may be used to communicate with the IC102. That is, the controller106may transmit or receive signals via the input/output circuitry294to or from the IC102. The transmitted signals from the controller106to the IC102may be one or more control signals that include control information for controlling at least one operational parameter (e.g., clock frequency, supply voltage, number of active cores, etc.) of the IC102that controls a rate of heat energy produced by the IC102and more specifically for increasing and/or decreasing the heat flux supplied by the IC102to the coolant108. In other words, the control signal from the controller106to the IC102may be used to control at least one operational parameter of the IC102in order to control the temperature of the IC102. The input/output circuitry294may also be used to communicate with the sensor110. That is, the controller106may transmit or receive signals via the input/output circuitry294to or from the sensor110. The received signals at the controller106from the sensor110may include information pertaining to measurements taken by the sensor110. The input/output circuitry294may optionally be also used to communicate with control components296. That is, the controller106may transmit or receive signals via the input/output circuitry294to or from the control components296. The control components296may be used to adjust at least one operational parameter of the cooling system100A that controls the rate of heat energy absorbed by the coolant108. The transmitted signals from the controller106to the control components296may include control information for controlling at least one operational parameter of the cooling system100A that controls the rate of heat energy absorbed by the coolant108.

The optional sensor110may include one or more optical, acoustic, temperature, pressure, conductivity sensors and/or any other suitable sensors. The sensor110may measure various characteristics of the cooling system100A. More specifically, the sensor110may be used to measure a state and/or phase change such as a state of the coolant108or various properties of the coolant108at the surface of the vessel104adjacent to the IC102or on the surface of the IC102.

For example, the sensor110may monitor the boiling of the liquid near the surface of the IC102. In particular, the sensor110observes the state of phase change of coolant from liquid to gas, by determining the morphology of the bubbles generated at the surface of the IC102. This could include measuring the bubble density, such as the mean number of bubbles per unit area or the area of the IC surface that is occupied by bubbles. In other words, the sensor110may be a boiling monitor. A first example of a boiling monitor includes having a light source on one side of the surface of the IC102, where a detector measures the amount of light from the light source being transmitted through the boiling liquid. The light source could be a LED, a LED collimated with a lens, or a laser. A second example of a boiling monitor includes having a camera with a lens assembly to image the surface of the IC102. Image processing software measures the density of bubbles or the area of bubbles on the IC102. The lens assembly could have a relatively shallow focal depth so that bubbles that have detached from the surface of the IC102do not appear sharply in the image. A third example of a boiling monitor is having an ultrasound emitter sending a pulse into the liquid and an ultrasound receiver measures the amplitude or time of arrival of the pulse. The pulse could propagate at a grazing angle to the surface of the IC102or it could come at a substantially sharper angle and be reflected by the surface.

The sensor110may be a temperature sensor. The temperature sensor may be located on the IC102for measuring the temperature of the IC102, may be located in the vessel104for measuring the coolant108, or located both on the IC102and in the vessel104. For example, the temperature sensor may be positioned near the surface of the IC102and used to measure the surface temperature of the IC102or the temperature of the coolant near the surface of the IC102.

The sensor110may be a pressure sensor for measuring the pressure of the coolant108within the vessel104. This embodiment requires a closed vessel104designed to allow a pressure build-up when coolant boils.

Irrespective of its specific implementation, the sensor110is configured to sense a state of phase change of the coolant108and to generate a signal, which is transmitted to the controller106indicative of the state of phase change of the coolant108. The received signal from the sensor110to the controller106, is then processed by the controller106to generate the control signal to the IC102for regulating the transfer of thermal energy between the IC102and the coolant108.

The cooling system100A may also include other components not shown in the block diagram ofFIG. 1A, such as mechanisms for installing/removing the IC102from the vessel104, mechanism for controlling the pressure of the coolant108in the vessel104, mechanisms for inducing a liquid flow within the vessel and/or near the surface of the IC102and/or mechanisms for vibrating the IC102in the vessel104. Such aforementioned mechanisms may be controllable via the control components296by control signals from the controller106.

It is further appreciated that the cooling system100A may be implemented in various forms and that the examples given above are only some examples of implementation of the cooling system100A.

Heat Flow from IC to Coolant

The heat flow mechanics from the IC102to the coolant108will now be described by reference toFIGS. 4A to 4DandFIG. 5.FIGS. 4A to 4Dillustrate specific and non-limiting examples of the coolant108in various states of phase change as heat flows from the IC102to the coolant108.FIG. 5illustrates a specific and non-limiting example of a heat flux curve for the heat transfer from the IC102to the coolant108. Heat flux is the rate of heat energy transfer through a given surface per unit time, in this example the heat flux is the rate of heat energy transferred through the surface of the IC102per unit time. The x-axis of the graph inFIG. 5is the excess temperature, Tw-Tsat′(in Celsius), where Twis the surface temperature of the IC102and Tsat′is saturated fluid temperature of the coolant108, and the y-axis of the graph is the heat flux, qw″ (W/m2). The excess temperature corresponds to a difference between the surface temperature of the IC102in relation to a saturated fluid temperature of the coolant108.FIG. 5shows four regions1,2,3and4, where in the first region1natural heat convection occurs, which is illustrated inFIG. 4A. Then in region2, nucleate boiling occurs. Nucleate boiling is a type of boiling that takes place when the surface temperature of the IC102is hotter than the saturated fluid temperature of the coolant108by a certain amount. At first isolated bubbles212occur, as shown inFIG. 4B, and then as the excess temperature increases columns and slugs214occur, as shown inFIG. 4C. Then at the burnout point, qmax″ the bubbles collapse into a substantially continuous dry film216, leading to a dry IC102, which is shown inFIG. 4D. In region3, transition boiling occurs which may include unstable film and partial nucleate boiling and then in region4, film boiling occurs.

ConsideringFIGS. 4A to 4DandFIG. 5in further detail, thermal energy is directed from the IC102to the adjoining liquid coolant108and defines the heat flux from the IC102into the coolant108. At first, thermal energy that is directed from the IC102to the adjoining liquid coolant108, which has the effect of elevating the temperature of the liquid coolant108via convection heat transfer.FIG. 4Aillustrates an example where convection heat transfer from the IC102to the coolant108is occurring. When heat flows from the IC102to the coolant108, the temperature of the coolant108increases, to the point where vapor bubbles212nucleate at the surface of the IC102, as shown inFIG. 4B. As such, a phase change occurs that takes up the thermal energy from the IC102. In other words, when the temperature of the IC102exceeds the boiling point of the liquid coolant108, it causes the liquid coolant108to evaporate. The latent heat of vaporization associated with this phase transition helps increase the magnitude of the heat flow from the IC102to the liquid coolant108beyond the heat flow due to convection. This process is most efficient when the bubbles212nucleate easily, and when they also detach easily. After detachment, the bubbles212generally rise in the liquid coolant108(due to buoyancy forces), and therefore contribute to transporting heat away from the IC102. A number of regimes can thus be observed in the cooling process: (i) at low IC surface temperatures, bubbles do not form, and heat is transported by convection in the liquid coolant108(e.g., as inFIG. 4A); (ii) as the IC surface temperature increases, bubbles nucleate and detach at an increasing rate, leading to efficient heat transfer (e.g., as inFIG. 4B); (iii) the density of bubbles on the IC surface becomes large at higher IC surface temperatures (e.g., as inFIG. 4C), and the bubbles collapse to form a continuous film (e.g., as inFIG. 4D), leading to a dry IC surface and less efficient heat transfer; (iv) at very high temperatures, conduction and radiation heat transfer through the vapor film eventually lead to high heat fluxes again. The maximum heat flux at the end of regime (iii) is called the “critical heat flux” (CHF), indicated by qmax″ inFIG. 5. Passed that operational point, the heat flux decreases as the excess temperature increases. It is essentially a thermal runaway condition where heat is no longer efficiently removed from the IC surface, which can damage the IC.

The specific critical heat flux value for the setup shown in3B for instance is defined by the setup parameters, such as the physical properties of the coolant108, the characteristics of the surface (e.g., the at least one surface of the IC102that is thermally coupled to the coolant102or the IHS, if one is used) and the ambient pressure among others.

The CHF shown inFIG. 5by qmax″ corresponds to heat flux measured in a steady-state situation, where power has been applied to the IC102for a long enough time for the heat flux to have stabilized. In transient conditions, heat transfer inertia between the heat input of the IC102and the response of the liquid coolant108exists. This heat transfer inertia defines a window of time during which the heat flux can exceed the steady-state CHF value without creating a burnout. In other words, during that window the coolant108is able to absorb the heat flux, which exceeds the steady-state CHF value for the particular setup, but without the bubbles collapsing to form a dry surface. As such, one aspect of some embodiments described herein is to periodically increase the heat output produced by the IC102in order to temporarily produce a heat flux above the steady-state CHF value. The heat output of the IC102is then lowered, but before a burn out occurs. The process can be repeated indefinitely.

The heat flux is a value that cannot be readily measured. However, the heat flux can be correlated to the temperature of the IC102surface. For a given setup, the heat flux can be computed and the temperature at which the CHF occurs, determined. Then by monitoring the temperature of the IC102surface, one can determine the operational point relative to the CHF. With reference to regions1and2inFIG. 5, as the temperature of the IC102increases the steady-state heat flux of the IC102into the coolant108also increases until a maximum is reached; thereafter, as the temperature of the IC102increases the steady-state heat flux of the IC102into the coolant108decreases, as shown in region3inFIG. 5. As such, an aspect of some embodiments described herein is to monitor the surface temperature of the IC102and manage the operational parameters of the IC102based on the identified surface temperature of the IC102at which CHF is reached.

Similarly, the CHF can also be derived from other parameters than the setup, such as for instance the morphology of the bubbles at the surface of the IC102, as it is discussed below.

FIG. 6illustrates an example of a steady-state heat flux curve11. Higher heat fluxes may be achieved in a transient state versus a steady-state and in particular a heat flux that is above the steady-state heat flux curve11and above the steady-state CHF value may be achieved by operating the IC102in a transient (non-stationary) condition.

Operating the IC for Transient Heat Flow

The controller106may be programmed to take advantage of the heat transfer inertia between the heat input of the IC102and the response of the liquid coolant108. Accordingly, the temperature of the IC102may be adequately controlled in spite the fact that the heat flux is temporarily above the steady-state CHF value. At or near the end period of the time window defined by the heat inertia, where the heat flux exceeds the steady-state CHF, the heat flux is lowered below the steady-state CHF value such as to prevent burnout. Therefore, by periodically increasing the heat flux to the coolant108and then decreasing it, it is possible to transfer an increased amount of thermal energy to the coolant108, as an average. With reference toFIG. 6, by periodically increasing the heat flux to the coolant108and then decreasing it is possible to transfer an increased heat flux that is above the steady-state heat flux curve11and in particular is above the steady-state CHF value.

The control of the heat flux of the IC102into the coolant108may be implemented as temperature control of the IC102in one example of implementation. For example, the surface temperature of the IC102at which steady state CHF is achieved may be known (e.g., by previous measurements or testing) and based on this, the operational parameters of the IC102may be controlled such that a first desired surface temperature of the IC102is achieved, where the first desired surface temperature of the IC102is below the temperature at which steady-state CHF is achieved. Then, the operational parameters of the IC102may be controlled such that a second desired surface temperature of the IC102is achieved, where the second desired surface temperature of the IC102is above the first desired surface temperature of the IC102and above the temperature at which steady-state CHF is achieved. Further, the operational parameters of the IC102are controlled such that the second desired surface temperature of the IC102is maintained for a specified period of time. After the specified period of time, the operational parameters of the IC102may be controlled to return the surface temperature of the IC back to the first surface temperature of the IC102. The first desired surface temperature of the IC102, the second desired surface temperature of the IC102and the specified period of time at which the second desired surface temperature of the IC102is maintained may be determined by previous measurements and/or testing. In other words, the selection of the two temperatures to periodically fluctuate between and the duration of time between temperature fluctuations may be determined through testing that is specific to the IC102and the coolant108. In one example of implementation, the temperature of the IC is cycled rapidly between a low temperature and a higher temperature, so that the dry film condition is never fully reached.

It is appreciated that when the heat flux into the coolant108from the IC102fluctuates over time, the heat transfer process is expected to be different than in the steady-state situation. As such, when the power of the IC102is increased rapidly, via control signals from the controller106, from a lower value to a larger value this may put the coolant108in the nucleate boiling regime and, for instance, a delay may be observed before boiling starts, resulting in an initially smaller heat flux into the coolant108. The steady-state heat flux is reached sometime after the power has stabilized and bubbles have started nucleating and detaching at a regular rate. Similarly, a heat flux above the steady-state CHF value can be achieved for a brief period of time if the power is increased from below the steady-state CHF value to a value above it, and is lowered to a value below the steady-state CHF before the bubbles on the surface of IC102have had a chance to collapse into a continuous film.

FIG. 15shows a flowchart1500for periodically adjusting a rate of heat energy produced by the IC102in accordance with an embodiment of the invention. At step1502, the window of time and excess heat flux above the CHF value is determined by the controller106. This step may be done by obtaining this information from the computer readable memory290. At step1504, at least one operational parameter of the IC102that controls the rate of heat energy produced by the IC102and that determines the heat flux from the IC102to the coolant108is increased to drive the heat flux above the CHF value. Such adjusting may include the controller106sending control signals to the IC102and the IC102, in response to the received control signals, adjusting the rate of heat energy produced by the IC102accordingly. At step1506, at least one operational parameter of the IC102that controls the rate of heat energy produced by the IC102such that the heat flux from the IC102to the coolant108is decreased below the steady-state CHF value is adjusted. Such adjusting may include the controller106sending control signals to the IC102and the IC102, in response to the received control signals, adjusting the rate of heat energy produced by the IC102accordingly. As such, the controller106is configured such that it causes the heat flux supplied by the IC102to the coolant108to be periodically increased above the steady-state CHF value followed by a reduction of the heat flux supplied by the IC102to the coolant108below the steady-state CHF value. The controller106can determine the operational point with relation to the CHF value by sensing the surface temperature of the IC102. The operational parameter of the IC that is adjusted in flowchart1500may be the clock frequency of the IC102, number of active cores of the IC102, the specific cores of the IC102that are activated or deactivated (e.g., cores1and2vs cores3and4), and/or supply voltage of the IC102. In other words, the heat flux of the IC102into the coolant108may be varied by adjusting a clock frequency of the IC102, by selectively activating or de-activating cores of the IC102and/or by adjusting a supply voltage of the IC102.

It is appreciated that by controlling the clock frequency of the IC102, by selectively activating or de-activating cores of the IC102and/or by adjusting a supply voltage of the IC102the surface temperature of the IC102may be controller. As such, based on known characteristics of the IC102and the coolant108, based on previous measurements obtained by testing the IC102and the coolant108, based on some direct measurement of the surface temperature of the IC102(e.g., with use of sensors) and/or some combination of above, that the specific clock frequency of the IC102, the specific number and particular activate or de-activate cores of the IC102and/or the specific supply voltage of the IC102, may be determined for achieving the desired surface temperature of the IC102.

As the controller106may be configured for adjusting at least one operational parameter of the IC102(e.g., clock frequency, supply voltage, number of active cores) that controls a rate of heat energy produced by the IC, the controller106may be configured via the processor292to run control algorithms being stored as instructions in the computer readable memory290. The processor292when executing the instructions corresponding to the control algorithms, cause the controller106to send control signals to the IC102, which may be via the input/output circuitry294. These control signals may cause the heat flux from the IC102to the coolant108to be periodically increased above the steady-state CHF value followed by a reduction of the heat flux supplied by the IC102to the coolant108below the steady-state CHF value.

It is appreciated that the IC102and the coolant108may be characterized by a threshold heat flux. In some cases, the threshold heat flux may be the steady-state CHF and in other cases the threshold heat flux is below the steady-state CHF. The controller106may then periodically increase the heat flux supplied by the IC102in to the coolant108above the threshold heat flux value followed by a reduction of the heat flux supplied by the IC102to the coolant108below the threshold heat flux value. Although in the embodiments described above the controller106is described in controlling the heat flux of the IC102into the coolant108in relation to a steady-state CHF value, in other embodiments controlling the heat flux of the IC102into the coolant108is in relation to the threshold heat flux value.

Managing the Heat Transfer from IC to Coolant Via Use of Sensor

Another aspect of the controller106is that it may be configured to manage the heat transfer from the IC102to liquid coolant108by monitoring the state of phase change of the liquid coolant108into gas. The sensor110is used to find out the state of phase change of the coolant108. The sensor110may measure optical, acoustic, temperature, pressure or conductivity parameters and generates a signal, which conveys phase change information. The phase change information signal is processed by the controller106to derive a control signal, which varies one or more parameters of the cooling system100A on the basis of the observed phase change state. For instance, one controlled parameter is the heat input, in other words the heat released by the IC102. The amount of heat can be managed by changing the frequency of the IC102, performing selective core de-activation or varying the supply voltage of the IC102. Another controlled parameter is the ability of the coolant to take-up heat. For instance, to increase the heat intake, an active cooling action can be implemented, such as creating a forced liquid flow across the surface of the IC102to prevent formation of a dry film. Another active cooling option is to induce vibrations on the IC surface to facilitate bubble release. Yet another active cooling option is to pressurize the vessel104containing the coolant108such as to control the boiling point of the coolant108; by increasing the pressure, the bubble release from the IC surface is made less intense, hence the formation of a dry film is less likely.

By way of a specific and non-limiting example, the sensor110may be a boiling monitor that is used to measure the density of bubbles on the surface of the IC102.FIGS. 3A and 3Billustrate the cooling system100A for cooling the IC102in accordance with embodiments of the invention, where the sensor110is configured to measure the density of bubbles on the surface of the IC102. The sensor110provides a signal to the controller106indicative of the density of bubbles on the surface of the IC102. The controller106may then process the received signal from the sensor106to adjust a control algorithm that determines the amount of power generate by the IC102. For instance, the control algorithm may cause the controller106to send control signals to the IC102and/or to the control components296to adjust one or more parameters of the cooling system100A. More specifically, the control signal may be a control signal to adjust at least one parameter of the IC102such as changing the frequency of the IC102, performing selective core de-activation and/or varying the supply voltage of the IC102. The control signal may also or alternatively be a control signal to adjust at least one control parameter of the cooling system100A such as creating a forced liquid flow across the surface of the IC, induce vibrations on the IC surface and/or adjust the pressure of the coolant108within the vessel104. The control algorithm may allow the IC102to operate at a power level that is above the CHF, until sensor110detects that the bubble film on the IC is about to collapse. When such condition is detected, the control algorithm may adjust the at least one control parameter of the cooling system100A so the IC's heat flux is below the CHF for a sufficient period of time for the film to return to a stable condition. The algorithm may also be adjusted to maintain a specific density of bubbles that is optimal for a specific application of running the IC102. It is appreciated that such control algorithm may allow for the controller106to operate the heat flux of the IC102into the coolant108to be very close to the CHF, at the CHF value or periodically above the steady-state CHF value.

FIG. 7shows a flowchart700for adjusting at least one parameter of the IC102in accordance with an embodiment of the invention. At step702, the controller106monitors the signals received from the sensor110such that it processes the received signal conveying sensor data from the sensor110to determine if a parameter of the IC102should be adjusted to control the heat released by the IC102. At step704, based on the determination made at step702, the controller106adjusts at least one parameter of the IC102, where the at least one parameter may be clock frequency of the IC102, the number of cores, and/or input voltage of the IC102. The flowchart700may more specifically follow the process in any ofFIG. 8, 9 or 10, discussed below.

FIG. 8shows a flowchart800for adjusting a frequency of the IC102in accordance with an embodiment of the invention. At step802, the sensor data from the sensor110is processed by the controller106and at step804it is compared to a threshold value to see if the clock frequency of the IC102should be increased (step808) or decreased (step806). For example, the sensor data may include information pertaining to the state of the coolant108adjacent to the surface of the IC102. The measured state of the coolant108may then be compared by the controller106to a look-up table stored in the memory290to determine a desirable clock frequency of the IC102. The look-up table may list suitable clock frequencies for the IC102based on respective states of the coolant108.

FIG. 9shows a flowchart900for adjusting a number of cores of the IC102in accordance with an embodiment of the invention. At step902, the sensor data from the sensor110is processed by the controller106and at step904it is compared to a threshold value to see if the number of active cores of the IC102should be increased (step908) or decreased (step906). For example, the sensor data may include information pertaining to the state of the coolant108adjacent to the surface of the IC102. The measured state of the coolant108may then be compared by the controller106to a look-up table stored in the memory290to determine a desirable number of active cores and/or the specific cores to activate or deactivate. The look-up table may list suitable number of active cores and/or which specific cores to be activated or deactivated of the IC102based on respective states of the coolant108. It is appreciated that moving the workload from one core of the IC102to another core may require one or more sensors for monitoring each of the cores of the IC102, such that output signals from the one or more sensors may then be processed by the IC102and/or the controller106to determine which of cores to activate or deactivate.

FIG. 10shows a flowchart1000for adjusting voltage of the IC102in accordance with an embodiment of the invention. At step1002, the sensor data from the sensor110is processed by the controller106and at step1004it is compared to a threshold value to see if the voltage of the IC102should be increased (step1008) or decreased (step1006). For example, the sensor data may include information pertaining to the state of the coolant108adjacent to the surface of the IC102. The measured state of the coolant108may then be compared by the controller106to a look-up table stored in the memory290to determine a desirable supply voltage for the IC102. The look-up table may list suitable supply voltages for the IC102based on respective states of the coolant108.

FIG. 11shows a flowchart1100for adjusting a control parameter of the cooling system100A in accordance with an embodiment of the invention. At step1102, the controller106monitors the sensor110such that it receives a signal conveying sensor data from the sensor110and then processes the sensor data to determine if a control parameter of the cooling system100A should be adjusted to manage the heat released by the IC102. At step1104, based on the determination made at step1102, the controller106adjusts at least one control parameter of the cooling system100A, where the at least one control parameter may be the pressure of the coolant108, an amount of vibrations on the IC to facilitate bubble release and/or the amount flow of the coolant108in the vessel104. The flowchart1100may more specifically follow the process in any ofFIG. 12, 13 or 14, discussed below.

FIG. 12shows a flowchart1200for adjusting pressure of the cooling system100A in accordance with an embodiment of the invention. At step1202, the sensor data from the sensor110is processed by the controller106and at step1204it is compared to a threshold value to see if the pressure of the coolant108in the vessel104should be increased (step1206) or decreased (step1208). For example, the sensor data may include information pertaining to the state of the coolant108adjacent to the surface of the IC102and of the pressure of the coolant108in vessel104. The measured state of the coolant108along with the current pressure may then be processed by the controller to determine the desirable pressure of the coolant108in the vessel104.

FIG. 13shows a flowchart1300for adjusting vibrations of the cooling system100A in accordance with an embodiment of the invention. At step1302, the sensor data from the sensor110is processed by the controller106and at step1304it is compared to a threshold value to see if the amount of vibrations of the IC surface should be increased (step1206) or decreased (step1208). For example, the sensor data may include information pertaining to the state of the coolant108adjacent to the surface of the IC102. In such case, the current amount of vibrations being induced by the mechanism for inducting vibration on the IC102may be controlled by the controller106. The measured state of the coolant108along with the known current amount of vibrations may then be processed by the controller106to determine the desirable amount of vibrations on the IC102to facilitate bubble release.

FIG. 14shows a flowchart1400for adjusting flow of a coolant of a cooling system in accordance with an embodiment of the invention. At step1402, the sensor data from the sensor110is processed by the controller106and at step1404it is compared to a threshold value to see if the flow of the coolant108in the vessel104should be increased (step1406) or decreased (step1408). For example, the sensor data may include information pertaining to the state of the coolant108adjacent to the surface of the IC102. In such case, the current amount of coolant flow being induced by the mechanism for inducting coolant flow within the vessel104may be controlled by the controller106. The measured state of the coolant108along with the known current amount coolant flow may then be processed by the controller106to determine the desirable amount of coolant flow within the vessel104.

Although reference is made throughout this documents that the IC102is immersed in the coolant108of the vessel104, it is appreciated that the electronic device302including the IC102may be immersed in the coolant108of the vessel104in other embodiments.

Certain additional elements that may be needed for operation of some embodiments have not been described or illustrated as they are assumed to be within the purview of those of ordinary skill in the art. Moreover, certain embodiments may be free of, may lack and/or may function without any element that is not specifically disclosed herein.

Any feature of any embodiment discussed herein may be combined with any feature of any other embodiment discussed herein in some examples of implementation.

The user of headings in the document is for illustrative purposes only and is not intended to be limiting.

Although various embodiments and examples have been presented, this was for the purpose of describing, but not limiting, the invention. Various modifications and enhancements will become apparent to those of ordinary skill in the art and are within the scope of the invention, which is defined by the appended claims.