DUT testing with configurable cooling control using DUT internal temperature data

New cooling control techniques suitable for use in the testing of devices are disclosed. The new cooling control techniques are an improvement over existing cooling control techniques because the new cooling control techniques utilize inputs that are more representative of actual thermal conditions experienced by a DUT (device under test) and/or are more representative of various other parameters, such as DUT power consumption/dissipation, during testing. Also, the new cooling control techniques offer flexibility with respect to the cooling control algorithm to employ for the DUT during testing.

FIELD

Embodiments of the present invention relate to testing of devices. More specifically, embodiments relate to cooling control techniques suitable for use in the testing of devices, e.g., electronic devices.

BACKGROUND

During the testing of electronic devices, heat is generated and emitted to the surrounding external environment by the electronic devices. Managing this heat is a challenging task during the testing of the electronic devices. Numerous cooling mechanisms exist to dissipate the heat and to cool the electronic devices. There is a wide cost range for these cooling mechanisms. Each cooling mechanism has its advantages and deficiencies.

Some heat is required to warm the electronic device during testing. Cooling mechanisms are used to regulate the temperature of the electronic device at a desired temperature or desired temperature range during testing.

Factors that influence the effectiveness of a cooling mechanism include cooling capacity and cooling control of the cooling mechanism. Cooling capacity generally refers to an amount of heat the cooling mechanism is able to dissipate from a volume or an area within a time interval. Cooling control generally refers to aspects of manipulating the operation of the cooling mechanism to address current environmental conditions. As the manufacturing phase of electronic devices matures to volume production, the testing phase is pressured to adapt new techniques for cooling and for cooling control that are better suited for performing volume testing of electronic devices and that conform to testing specifications of designers and manufacturers.

SUMMARY

New cooling control techniques suitable for use in the testing of devices are disclosed. The new cooling control techniques are an improvement over existing cooling control techniques because the new cooling control techniques utilize inputs that are more representative of actual thermal conditions experienced by a DUT (device under test) and/or are more representative of various other parameters, such as DUT power consumption/dissipation, during testing. Also, the new cooling control techniques offer flexibility with respect to the cooling control algorithm to employ for the DUT during testing. Further, the new cooling control techniques are well suited for the testing of different types of devices (or DUTs) including, but not limited to, network cards, graphics cards, chips, microprocessors, hard disk drives (HDD), and solid state drives (SSD).

Better representation of actual thermal conditions experienced by the DUT and/or of various other parameters, such as DUT power consumption/dissipation, during testing is achieved by using internal temperature data from one or more internal temperature sensors of the DUT in the new cooling control techniques. Advantageous information (e.g., proprietary, confidential, and/or secret information) related to the internal temperature sensor of the DUT is unrevealed outside of the DUT during testing. Flexibility with respect to the cooling control algorithm employed for the DUT during testing permits utilization of a predetermined cooling control algorithm when desired, or permits utilization of a custom cooling control algorithm when desired in the new cooling control techniques, where the custom cooling control algorithm may be provided by a test user, device designer, or device manufacturer. The custom cooling control algorithm may be integrated into a testing apparatus in an automated and seamless manner. In an embodiment, it may be sufficient for the test user, device designer, or device manufacturer to supply the custom cooling algorithm, code, data, and/or files (e.g., configuration file(s)) that the testing apparatus accesses during a set-up process to automatically accept the internal temperature data from the internal temperature sensor and use the custom cooling algorithm in lieu of the predetermined cooling control algorithm (e.g., the default cooling control algorithm).

In one embodiment, a testing apparatus comprises a DUT (device under test) receiver operable to receive and secure DUT(s). The DUT(s) includes at least one internal temperature sensor operable to generate internal temperature data during testing. The testing apparatus further comprises a cooling control module operable to execute a predetermined cooling control algorithm with temperature data to obtain an algorithm result and operable to generate a cooling control signal based on the algorithm result during testing of the DUT(s). The temperature data is selectable from the internal temperature data and external temperature data of a surrounding environment external to and adjacent to the DUT(s). In addition, the testing apparatus also comprises a cooling mechanism coupled to the cooling control module and operable to cool the DUT(s) based on the cooling control signal. The external temperature data may originate from an external temperature sensor that may operate adjacent to the DUT(s).

In another embodiment, a testing apparatus comprises a DUT (device under test) receiver operable to receive and secure DUT(s). The DUT(s) includes at least one internal temperature sensor operable to generate internal temperature data during testing. The testing apparatus further comprises a custom cooling control module operable to execute a custom cooling control algorithm dependent on the DUT(s) with the internal temperature data from the DUT(s) to obtain an algorithm result and operable to generate a cooling control signal based on the algorithm result during testing of the DUT(s). Further, the testing apparatus also comprises a cooling mechanism operable to cool the DUT(s) based on the cooling control signal from execution of the custom cooling control algorithm. The external temperature data may originate from an external temperature sensor that may operate adjacent to the DUT(s). The testing apparatus may be operable to execute a predetermined cooling control algorithm.

In yet another embodiment, a method comprises initiating performance of a testing routine on DUT(s) (device(s) under test). The DUT(s) includes internal temperature sensor(s). The method further comprises measuring internal temperature of the DUT(s) by using the internal temperature sensor(s) to generate internal temperature data. In addition, the method also comprises executing a cooling control algorithm with temperature data to obtain an algorithm result. The temperature data is selectable from the internal temperature data and external temperature data of a surrounding environment external to and adjacent to the DUT(s). Further, the method also comprises generating a cooling control signal based on the algorithm result and cooling the DUT(s) based on the cooling control signal. The external temperature data may originate from an external temperature sensor that may operate adjacent to the DUT(s).

DETAILED DESCRIPTION

Reference will now be made in detail to embodiments, examples of which are illustrated in the accompanying drawings. While the disclosure will be described in conjunction with these embodiments, it should be understood that they are not intended to limit the disclosure to these embodiments. On the contrary, the disclosure is intended to cover alternatives, modifications and equivalents, which may be included within the spirit and scope of the disclosure as defined by the appended claims. Furthermore, in the following detailed description, numerous specific details are set forth in order to provide a thorough understanding. However, it will be recognized by one of ordinary skill in the art that embodiments may be practiced without these specific details.

New cooling control techniques suitable for use in the testing of devices are disclosed. The new cooling control techniques are an improvement over existing cooling control techniques because the new cooling control techniques utilize inputs that are more representative of actual thermal conditions experienced by a DUT (device under test) and/or are more representative of various other parameters, such as DUT power consumption/dissipation, during testing. Also, the new cooling control techniques offer flexibility with respect to the cooling control algorithm to employ for the DUT during testing. Either a predetermined cooling control algorithm or a custom cooling control algorithm may be executed for the DUT during testing. Further, the new cooling control techniques are well suited for the testing of different types of devices (or DUTs) including, but not limited to, network cards, graphics cards, chips, microprocessors, hard disk drives (HDD), and solid state drives (SSD).

Better representation of actual thermal conditions experienced by the DUT and/or of various other parameters, such as DUT power consumption/dissipation, during testing is achieved by using internal temperature data from an internal temperature sensor of the DUT in the new cooling control techniques. Advantageous information (e.g., proprietary, confidential, and/or secret information) related to the internal temperature sensor of the DUT is unrevealed outside of the DUT during testing. Flexibility with respect to the cooling control algorithm employed for the DUT during testing permits utilization of a predetermined cooling control algorithm when desired or a custom cooling control algorithm when desired in the new cooling control techniques, where the custom cooling control algorithm may be provided by a test user, device designer, or device manufacturer. The custom cooling control algorithm is integrated into a testing apparatus in an automated and seamless manner. In an embodiment, it may be sufficient for the test user, device designer, or device manufacturer to supply the custom cooling algorithm, code, data, and/or files (e.g., configuration file(s)) that the testing apparatus accesses during a set-up process to automatically accept the internal temperature data from the internal temperature sensor and use the custom cooling algorithm in lieu of the predetermined cooling control algorithm (e.g., the default cooling control algorithm).

The following discussion will focus on embodiments of a first cooling control loop in a DUT (device under test) testing module depicted inFIG. 1, a second cooling control loop in a DUT testing module depicted inFIG. 3, and a third cooling control loop in a DUT testing module depicted inFIG. 5. Thereafter, a detailed description of an exemplary DUT testing module that may employ the cooling control loop ofFIG. 1, 3, or5in accordance with an embodiment will be provided in connection withFIGS. 6 and 7.

FIG. 1depicts a first cooling control loop390A in a DUT (device under test) testing module300A in accordance with an embodiment. It should be understood that the DUT testing module300A is not limited to the illustration ofFIG. 1. The DUT testing module300A may be modular and may be capable of being inserted into a rack slot of a rack of customizable columns and rows. Continuing, the DUT testing module300A is operable to perform testing on a DUT220or a group of DUTs220by communicating power, instructions, signals, data, test results, and/or information with the DUT220or DUTs220. In addition, the DUT testing module300A may include processing, communication, and storage circuitry to conduct the test on the DUT220or DUTs220. Detailed description of an exemplary DUT testing module is provided in connection withFIGS. 6 and 7.

The DUT testing module300A includes a DUT receiver330, an external temperature sensor340for each DUT220or for a set of DUTs220, a cooling control module350, a cooling mechanism360, and a first cooling control loop390A. The DUT receiver330is operable to receive and to secure each DUT220for testing. Each DUT220is insertable into the DUT receiver330for testing by the DUT testing module300A and is removable from the DUT receiver330after completion of testing. Also, the DUT receiver330may have a respective socket or connector210for each DUT220to electrically and physically interface with the DUT testing module300A. A plurality of DUTs220may be secured to the DUT receiver330for concurrent testing of multiple DUTs220by the DUT testing module300A. Alternatively, one DUT220may be secured to the DUT receiver330for testing of a single DUT220by the DUT testing module300A.

During testing of the DUT220by the DUT testing module300A, the DUT220generates heat and emits the heat into the surrounding external environment. To maintain the DUT220at a desired operational temperature or desired operational temperature range, the first cooling control loop390A is operable to dissipate the heat and to cool the DUT220during testing of the DUT220by the DUT testing module300A.

In an embodiment, the first cooling control loop390A includes internal temperature sensors370and375of the DUT220and the external temperature sensor340, the cooling control module350, and the cooling mechanism360of the DUT testing module300A. It should be understood that the first cooling control loop390A is not limited to the illustration ofFIG. 1. For simplicity of discussion of the first cooling control loop390A, details of one DUT220(depicted in solid line) are shown in relation to the first cooling control loop390A inFIG. 1. It should be understood that the illustrated details of DUT220(shown in solid line) ofFIG. 1are equally applicable to details not depicted of the other DUTs220(shown in broken line) ofFIG. 1.

As shown inFIG. 1, the DUT220includes internal temperature sensors370and375that may be provided by and may be positioned at locations specified by a test user, device designer, or device manufacturer. Inside of the DUT220, the internal temperature sensors370and375measure internal temperature of the DUT220and generate internal temperature data372and377during testing of the DUT220by the DUT testing module300A. The internal temperature data372and377discloses the actual thermal conditions experienced by the DUT220during testing. Although two internal temperature sensors370and375are depicted inFIG. 1, the DUT220may have a single internal temperature sensor or may have more than two internal temperature sensors. It should be understood that the DUT220is not limited to the illustration ofFIG. 1.

Continuing, the internal temperature sensors370and375may be two standard temperature sensors, two custom temperature sensors, or one standard temperature sensor and one custom temperature sensor. The standard temperature sensor may be an “off-the-shelf” temperature sensor or may be a temperature sensor with functionality, e.g., communication capability, in compliance with a published standard protocol, e.g., SMART Data, Simple Sensor Interface, NIST (National Institute of Standards and Technology) protocol, etc. On the other hand, the custom temperature sensor may be a temperature sensor with a custom and proprietary design that may be kept secret or may not be publicly available, even to the provider of the DUT testing module300A.

Further, the positioning of the internal temperature sensors370and375inside the DUT220may yield a competitive advantage or trade secret which is the subject of efforts to protect and to prevent public dissemination thereof. It is desired to keep secret and to prevent the revealing of advantageous information. Examples of advantageous information include internal locations of the internal temperature sensors370and375inside the DUT220, internal heat-generating components whose heat is measured by the internal temperature sensors370and375based on the internal locations, and type of internal temperature sensor at each internal location. As will be explained in detail below, the first cooling control loop390A ensures the advantageous information is unrevealed outside of the DUT220during testing of the DUT220by the DUT testing module300A.

Continuing with the description of the first cooling control loop390A, the external temperature sensor340associated with the DUT220is operable to measure temperature of a surrounding environment external to and adjacent to (or in the vicinity of) the DUT220and to generate external temperature data345during testing of the DUT220by the DUT testing module300A. Each DUT220has a respective external temperature sensor340associated with the DUT220. The surrounding environment is heated by heat generated and emitted by the DUT220during testing. The external temperature data345from the external temperature sensor340represents an approximation of the actual thermal conditions experienced by the DUT220and/or of various other parameters, such as DUT power consumption/dissipation, during testing. The correlation between the approximation and the actual thermal conditions of the DUT220may vary over time, with type of form factor used, with power utilization, etc.

In an embodiment, the cooling control module350is operable to execute a predetermined cooling control algorithm with temperature data to obtain an algorithm result and is operable to generate a cooling control signal355based on the algorithm result during testing of the DUT220by the DUT testing module300A. The temperature data is selectable from the internal temperature data372and377and the external temperature data345. The predetermined cooling control algorithm may be sufficient to manage and to cool thermal conditions for a range of DUT sizes and DUT types during testing. The predetermined cooling control algorithm may focus on handling or preventing undesirable thermal conditions that are detrimental to testing and to generating reliable testing results irrespective of the actual DUT undergoing testing. Also, the predetermined cooling control algorithm may be a default cooling control algorithm of the DUT testing module300A. A custom cooling control algorithm may not be available or needed.

As shown inFIG. 1, the cooling control module350may receive the internal temperature data372and377and the external temperature data345. Although not shown inFIG. 1, there are internal temperature data372and377and external temperature data345associated with each DUT220of a group of DUTs220concurrently tested by the DUT testing module300A.

Alternatively, the external temperature data345and/or one of the internal temperature data372and377may be excluded and not received by the cooling control module350.

The advantageous information noted above is unrevealed outside of the DUT220during testing of the DUT220by the DUT testing module300A. Also, the countless number of designs for the internal temperature sensors370and375is not a barrier to use of the internal temperature data372and377during testing of the DUT220by the DUT testing module300A. These benefits are accomplished through the process of setting-up the DUT testing module300A for testing the DUT220. Setting-up the DUT testing module300A for testing the DUT220involves obtaining or receiving a testing routine that is executed by the DUT testing module300A to perform the testing of the DUT220. The testing routine may be provided by a test user, device designer, or device manufacturer. In an embodiment, the testing routine is configured to cause the DUT220to output the internal temperature data372and377during testing.

In response to the testing routine during testing of the DUT220, the DUT220outputs and makes available the internal temperature data372and377for the predetermined cooling control algorithm executed by the cooling control module350. This bypasses communication interaction between the internal temperature sensors370and375and the DUT testing module300A or components of the DUT testing module300A, maintaining the desired secrecy and nonpublic aspect of the advantageous information. Since the DUT220outputs and makes available the internal temperature data372and377, it is not necessary for the DUT testing module300A or components of the DUT testing module300A to recognize the internal temperature sensors370and375, to have the capability to communicate with the communication protocol of the internal temperature sensors370and375, or to know details of the internal locations of the internal temperature sensors370and375inside the DUT220.

Continuing, the cooling control module350may execute the predetermined cooling control algorithm with temperature data selectable from the internal temperature data372and377and the external temperature data345. For example, the cooling control module350may execute the predetermined cooling control algorithm with the internal temperature data372and377and the external temperature data345to obtain the algorithm result to generate the cooling control signal355. Alternatively, the cooling control module350may execute the predetermined cooling control algorithm with the internal temperature data372and377but not the external temperature data345to obtain the algorithm result to generate the cooling control signal355. In yet another alternative, the cooling control module350may execute the predetermined cooling control algorithm with one of the internal temperature data372and377but not the external temperature data345and not one of the internal temperature data372and377to obtain the algorithm result to generate the cooling control signal355.

Before using the internal temperature data372and377and the external temperature data345associated with an individual DUT220in the predetermined cooling control algorithm, the cooling control module350may determine whether the individual DUT220is undergoing testing due to the DUT testing module300A performing the testing routine on the individual DUT220. If the status of the testing of the individual DUT220is stopped, suspended, or interrupted, the cooling control module350may avoid using the internal temperature data372and377and the external temperature data345associated with the individual DUT220in the predetermined cooling control algorithm.

Although the cooling control module350may deal with the temperature data associated with each individual DUT220of a group of DUTs220concurrently tested by the DUT testing module300A, the predetermined cooling control algorithm may implement cooling decisions on the basis of the thermal condition of the group of DUTs220instead of the thermal condition of an individual DUT220.

Returning to the description of the first cooling control loop390A, the cooling mechanism360is coupled to the cooling control module350. Also, the cooling mechanism360is operable to cool the group of DUTs220based on the cooling control signal355during testing of the group of DUTs220by the DUT testing module300A. Alternatively, the cooling mechanism360is operable to cool a single DUT220based on the cooling control signal355during testing of the single DUT220by the DUT testing module300A. The cooling mechanism360effectuates cooling365to an extent corresponding to the cooling control signal355during testing of the group of DUTs220or testing of the single DUT220. Due to the cooling control signal355, the cooling mechanism360may experience time intervals of increased activity to boost cooling365, time intervals of decreased activity to lessen cooling365, and time intervals of steady activity to sustain cooling365at a particular level. Examples of the cooling mechanism360include, but not limited to, a fan, a blower, a chiller, and a liquid cooling system. In the case of the cooling mechanism360implemented as a fan, the cooling control signal355may correspond to an rpm (revolutions per minute) value at which the fan is to operate.

As discussed above, there is much flexibility with the first cooling control loop390A. Moreover, multiple cooling control modules350may be incorporated into the first cooling control loop390A to generate cooling control signals355for multiple cooling mechanisms360or for sub-components of the cooling mechanism360.

Numerous benefits are achieved. Various customizations are available and may be implemented as desired. There are improvements in cooling control. Better representation of actual thermal conditions experienced by the DUT220and/or of various other parameters, such as DUT power consumption/dissipation, during testing is achieved by using internal temperature data from one or more internal temperature sensors of the DUT220. This enables faster and more accurate response by the new cooling control. The response is faster because the new cooling control avoids the delay caused by the time interval required for heat to propagate from the DUT220to an external location where an external temperature sensor may be able to measure temperature fluctuations due to the DUT220. Also, the response is more accurate because the internal temperature data of the DUT220discloses the actual thermal conditions that need to be managed or cooled while external temperature data from the external temperature sensor discloses an approximation whose correlation with the actual thermal conditions of the DUT220may vary over time, with type of form factor used, with power utilization, etc. Further, advantageous information related to the internal temperature sensor of the DUT220is unrevealed outside of the DUT220during testing.

FIG. 2shows a flow diagram400of operation of the first cooling control loop390A ofFIG. 1in accordance with an embodiment. It should be understood that operation of the first cooling control loop390A is not limited to the illustration ofFIG. 2.

At Block410, the DUT testing module300A is set-up for testing a group of DUTs220. It is also possible to test a single DUT220. Setting-up the DUT testing module300A for testing the DUTs220involves obtaining or receiving a testing routine that is executed by the DUT testing module300A to perform the testing of the DUTs220. The testing routine may be provided by a test user, device designer, or device manufacturer. In an embodiment, the testing routine is configured to cause the DUTs220to output the internal temperature data372and377during testing. In response to the testing routine during testing of the DUTs220, the DUTs220output and make available the internal temperature data372and377for the predetermined cooling control algorithm executed by the cooling control module350. Also, selection of desired temperature data from the internal temperature data372and377and the external temperature data345is made for the DUT testing module300A and its components (e.g., the cooling control module350) to use during testing.

Continuing, the testing of the DUTs220is started by the DUT testing module300A, at Block420. As testing proceeds at Block430, the external temperature sensors340measure and generate the external temperature data345, as explained above. Additionally, the internal temperature sensors370and375measure and generate the internal temperature data372and377, as discussed above.

At Block440, the cooling control module350receives the internal temperature data372and377and the external temperature data345. As discussed above, the temperature data received by the cooling control module350may be customized. At Block450, the cooling control module350executes the predetermined cooling control algorithm with the internal temperature data372and377and the external temperature data345to obtain an algorithm result. As discussed above, the temperature data utilized by the cooling control module350to execute the predetermined cooling control algorithm may be customized. The cooling control module350generates a cooling control signal355based on the algorithm result during testing, at Block460.

Further, the cooling mechanism360cools the DUTs220based on the cooling control signal355, at Block470. The cooling mechanism360effectuates cooling365to an extent corresponding to the cooling control signal355, as discussed above.

FIG. 3illustrates a second cooling control loop390B in a DUT testing module300B in accordance with an embodiment. It should be understood that the second cooling control loop390B and the DUT testing module300B are not limited to the illustration ofFIG. 3. Except as discussed below, the description of the first cooling control loop390A and the DUT testing module300A ofFIG. 1is applicable to the second cooling control loop390B and the DUT testing module300B ofFIG. 3.

As depicted inFIG. 3, the DUT testing module300B includes a DUT receiver330, an external temperature sensor340for each DUT220, a cooling control module350, a custom cooling control module380, and a second cooling control loop390B. In an embodiment, the second cooling control loop390B includes internal temperature sensors370and375of the DUT220and the external temperature sensor340, the cooling control module350, the custom cooling control module380, and the cooling mechanism360of the DUT testing module300B. For simplicity of discussion of the second cooling control loop390B, details of one DUT220(depicted in solid line) are shown in relation to the second cooling control loop390B inFIG. 3. It should be understood that the illustrated details of DUT220(shown in solid line) ofFIG. 3are equally applicable to details not depicted of the other DUTs220(shown in broken line) ofFIG. 3. Further, although the cooling control module350and the custom cooling control module380are separately shown inFIG. 3, it should be understood that the cooling control module350and the custom cooling control module380may be combined and/or integrated.

While the cooling control module350is operable to execute a predetermined cooling control algorithm (e.g., default cooling control algorithm), the custom cooling control module380is operable to execute a custom cooling control algorithm to obtain an algorithm result and is operable to generate a control signal385based on the algorithm result during testing of the DUT220by the DUT testing module300B. A test user, device designer, or device manufacturer may provide the custom cooling control algorithm. The custom cooling control module380may utilize the internal temperature data372and377, the external temperature data340, or any combination thereof to obtain the algorithm result. It should be understood that the custom cooling control algorithm may be unrelated to the predetermined cooling control algorithm or may be a modified version of or modifications to the predetermined cooling control algorithm.

The custom cooling control algorithm addresses the thermal conditions of DUT(s) of specific size(s) and/or type(s) to improve the progress of testing and to reduce negative thermal influences on the DUT(s) of specific size(s) and/or type(s) during testing, leading to better and faster testing results. With the custom cooling control algorithm, damage due to thermal conditions to the DUT is avoided during testing because cooling may be managed to prevent occurrence of specific thermal conditions that lead to damage or failure of the DUT or a component of the DUT. Since there is a relationship between performance and temperature, the custom cooling control algorithm may manage the cooling of the DUT to keep the thermal conditions to which the DUT or a component of the DUT is subjected below a specific threshold. Consequently, testing of the DUT may progress at a higher rate than it is possible when the specific threshold is exceeded during testing. Also, the custom cooling control algorithm may deal with or avert temperature rise ramps that are steep or that lead to unreliable testing results, leading to desired temperature rise ramps and better testing results. The custom cooling control algorithm may be proprietary, confidential, and/or secret. Also, the custom cooling control algorithm may be configured with attributes, properties, and/or characteristics of a DUT(s) of specific size(s) and/or type(s) to ensure the thermal conditions the DUT is exposed to are not harmful to and are suitable for the attributes, properties, and/or characteristics of the DUT. That is, the custom cooling control algorithm is dependent on the DUT.

The custom cooling control module380is integrated into the DUT testing module300B in an automated and seamless manner. In an embodiment, the custom cooling control module380comprises a plug-in. Alternatively, the custom cooling control module380comprises an extensible component.

As shown inFIG. 3, the custom cooling control module380is configurable via input382. The custom cooling control algorithm, code, files, data, etc. may be provided via input382. In an embodiment, the custom cooling control module380is compliant with an API (application programming interface) made available by the DUT testing module300B. By satisfying the API, the custom cooling control module380may be automatically integrated while setting-up the DUT testing module300B for testing the DUT220. Consequently, the DUT testing module300B may utilize the custom cooling control module380and the custom cooling control algorithm for managing the cooling of the DUT220instead of using the cooling control module350and the predetermined cooling control algorithm (e.g., the default cooling control algorithm) for managing the cooling of the DUT220. In an embodiment, it may be sufficient for the test user, device designer, or device manufacturer to supply the custom cooling algorithm, code, data, and/or files (e.g., configuration file(s)) that the DUT testing module300B accesses during a set-up process to automatically accept the internal temperature data372and377from the internal temperature sensors370and375and use the custom cooling algorithm in lieu of the predetermined cooling control algorithm (e.g., the default cooling control algorithm).

As shown inFIG. 3, the custom cooling control module380may receive the internal temperature data372and377and the external temperature data345. Although not shown inFIG. 3, there are internal temperature data372and377and external temperature data345associated with each DUT220of a group of DUTs220concurrently tested by the DUT testing module300B.

Alternatively, the external temperature data345and/or one of the internal temperature data372and377may be excluded and not received by the custom cooling control module380.

The advantageous information noted above is unrevealed outside of the DUT220during testing of the DUT220by the DUT testing module300B. Setting-up the DUT testing module300B for testing the DUT220may also involve obtaining or receiving a testing routine that is executed by the DUT testing module300B to perform the testing of the DUT220. The testing routine may be provided by a test user, device designer, or device manufacturer. In an embodiment, the testing routine is configured to cause the DUT220to output the internal temperature data372and377during testing. In response to the testing routine during testing of the DUT220, the DUT220outputs and makes available the internal temperature data372and377for the custom cooling control algorithm executed by the custom cooling control module380.

Continuing, the custom cooling control module380may execute the custom cooling control algorithm with temperature data selectable from the internal temperature data372and377and the external temperature data345. For example, the custom cooling control module380may execute the custom cooling control algorithm with the internal temperature data372and377and the external temperature data345to obtain the algorithm result to generate the control signal385. The cooling control module350receives the control signal385and passes the control signal385as the cooling control signal355to the cooling mechanism360. In an embodiment, the control signal385is unaltered through the cooling control module350to pass as the cooling control signal355to the cooling mechanism360. Alternatively, the cooling control module350executes an operation(s) with the control signal385to generate the cooling control signal355.

Alternatively, the custom cooling control module380may execute the custom cooling control algorithm with the internal temperature data372and377but not the external temperature data345to obtain the algorithm result to generate the control signal385. In yet another alternative, the custom cooling control module380may execute the custom cooling control algorithm with one of the internal temperature data372and377but not the external temperature data345and not one of the internal temperature data372and377to obtain the algorithm result to generate the control signal385.

Returning to the description of the second cooling control loop390B, the cooling control module350receives the control signal385and passes the control signal385as the cooling control signal355to the cooling mechanism360. The cooling mechanism360is operable to cool the group of DUTs220or the single DUT220based on the cooling control signal355during testing of the group of DUTs220or testing of the single DUT220by the DUT testing module300B. The cooling mechanism360effectuates cooling365to an extent corresponding to the cooling control signal355during testing of the group of DUTs220or testing of the single DUT220. Due to the cooling control signal355, the cooling mechanism360may experience time intervals of increased activity to boost cooling365, time intervals of decreased activity to lessen cooling365, and time intervals of steady activity to sustain cooling365at a particular level. Examples of the cooling mechanism360include, but not limited to, a fan, a blower, a chiller, and a liquid cooling system. In the case of the cooling mechanism360implemented as a fan, the cooling control signal355may correspond to an rpm (revolutions per minute) value at which the fan is to operate.

As discussed above, there is much flexibility with the second cooling control loop390B. Moreover, multiple custom cooling control modules380may be incorporated into the second cooling control loop390B to generate control signals385for multiple cooling mechanisms360or for sub-components of the cooling mechanism360.

Flexibility with respect to the cooling control algorithm employed for the DUT during testing permits utilization of a custom cooling control algorithm instead of a predetermined cooling control algorithm. The predetermined cooling control algorithm may be sufficient to manage and to cool thermal conditions for a range of DUT sizes and DUT types during testing. Unlike the predetermined cooling control algorithm, the custom cooling control algorithm addresses the thermal conditions of DUT(s) of specific size(s) and/or type(s) to improve the progress of testing and to reduce negative thermal influences on the DUT(s) of specific size(s) and/or type(s) during testing, leading to better and faster testing results. The custom cooling control algorithm is integrated into the DUT testing module300B in an automated and seamless manner.

FIG. 4depicts a flow diagram600of operation of the second cooling control loop390B ofFIG. 3in accordance with an embodiment. It should be understood that operation of the second cooling control loop390B is not limited to the illustration ofFIG. 4.

At Block610, the DUT testing module300B is set-up for testing a group of DUTs220. It is also possible to test a single DUT220. Setting-up the DUT testing module300B for testing the DUTs220involves automatically integrating the custom cooling control module380for use by the DUT testing module300B for testing the DUTs220. Consequently, the DUT testing module300B may utilize the custom cooling control module380and the custom cooling control algorithm for managing the cooling of the DUTs220instead of using the cooling control module350and the predetermined cooling control algorithm (e.g., default cooling control algorithm) for managing the cooling of the DUTs220. Also, selection of desired temperature data from the internal temperature data372and377and the external temperature data345is made for the DUT testing module300B and its components to use during testing.

Continuing, the testing of the DUTs220is started by the DUT testing module300B, at Block620. During testing at Block630, the external temperature sensors340measure and generate the external temperature data345, as explained above. Additionally, the internal temperature sensors370and375measure and generate the internal temperature data372and377, as discussed above.

At Block640, the custom cooling control module380receives the internal temperature data372and377and the external temperature data345. As discussed above, the temperature data received by the custom cooling control module380may be customized. At Block650, the custom cooling control module380executes the custom cooling control algorithm with the internal temperature data372and377and the external temperature data345to obtain an algorithm result. As discussed above, the temperature data utilized by the custom cooling control module380to execute the custom cooling control algorithm may be customized. The custom cooling control module380generates a control signal385based on the algorithm result during testing, at Block660. The cooling control module350receives the control signal385and passes the control signal385as the cooling control signal355to the cooling mechanism360. Alternatively, the cooling control module350executes an operation(s) with the control signal385to generate the cooling control signal355.

Further, the cooling mechanism360cools the DUTs220based on the cooling control signal355, at Block670. The cooling mechanism360effectuates cooling365to an extent corresponding to the cooling control signal355, as described above.

FIG. 5shows a third cooling control loop390C in a DUT testing module300C in accordance with an embodiment. It should be understood that the third cooling control loop390C and the DUT testing module300C are not limited to the illustration ofFIG. 5. Except as discussed below, the description ofFIGS. 1 and 3is applicable to the third cooling control loop390C and the DUT testing module300C ofFIG. 5.

As depicted inFIG. 5, the DUT testing module300C includes a DUT receiver330, an external temperature sensor340for each DUT220, a cooling control module350, a custom cooling control module380, and a third cooling control loop390C. For simplicity of discussion of the third cooling control loop390C, details of one DUT220(depicted in solid line) are shown in relation to the third cooling control loop390C inFIG. 5. It should be understood that the illustrated details of DUT220(shown in solid line) ofFIG. 5are equally applicable to details not depicted of the other DUTs220(shown in broken line) ofFIG. 5. Further, although the cooling control module350and the custom cooling control module380are separately shown inFIG. 5, it should be understood that the cooling control module350and the custom cooling control module380may be combined and/or integrated.

In an embodiment, the third cooling control loop390C and the DUT testing module300C offer flexibility with respect to the cooling control algorithm employed for the DUT220during testing. The third cooling control loop390C and the DUT testing module300C permit utilization of the cooling control module350and the predetermined cooling control algorithm when desired or utilization of the custom cooling control module380and the custom cooling control algorithm when desired. Setting-up the DUT testing module300C for testing the DUT220involves setting the cooling control algorithm to be implemented by the custom cooling control module380and the custom cooling control algorithm or setting the cooling control algorithm to be implemented by the cooling control module350and the predetermined cooling control algorithm. As discussed above, the custom cooling control module380may be automatically integrated while setting-up the DUT testing module300C for testing the DUT220. Also, configuration of the cooling control module350may occur while setting-up the DUT testing module300C for testing the DUT220. It should be understood that the custom cooling control algorithm may be unrelated to the predetermined cooling control algorithm or may be a modified version of or modifications to the predetermined cooling control algorithm.

FIG. 6depicts a perspective view of an exemplary DUT (device under test) testing module that may employ the cooling control loop ofFIG. 1, 3, or5in accordance with an embodiment. It should be understood that the exemplary DUT testing module300is not limited to the illustration ofFIG. 6. The exemplary DUT testing module300is modularized and is capable of being inserted into a rack supporting a plurality of modules with communication and power signals carried from the back of the exemplary DUT testing module300to one or more central control computers or testing stations (not shown).

The exemplary DUT testing module300includes a DIB (DUT interface board)200and a test execution module (or primitive)100electrically coupled to the DIB200. Further, the exemplary DUT testing module300is modular and has testing logic for testing the DUTs in the DIB200. In this capacity, the testing logic supplies high speed communication and power. As described above, the primitive is modular, that is, individual exemplary DUT testing modules300may be inserted into respective rack slots to create a rack of customizable columns and rows in an ambient air environment (e.g., a testing floor or lab), eliminating the need for an environmental testing chamber.

The test execution module100is operable to perform the testing on a DUT220or DUTs220by communicating power, instructions, signals, data, test results, and/or information with the DUT220or DUTs220. The test execution module100includes processing, communication, and storage circuitry to conduct the test on the DUTs220. Further, the first cooling control loop390A (FIG. 1), the second cooling control loop390B (FIG. 3), or the third cooling control loop390C (FIG. 5) may be implemented with the test execution module100and the DIB200to control the cooling of the DUTs220by receiving input signals from external temperature sensors in the vicinity of the DUTs220and/or input signals from internal temperature sensors inside the DUTs220and by adjusting the rotational speeds of the appropriate bottom fan230a-230dand top fan240a-240d(FIG. 6andFIG. 7). Also, the test execution module100includes an air conduit110to release air flow291from the DIB200into the surrounding environment.

Continuing withFIG. 6, the DIB200is disposed in front of and is electrically coupled to the test execution module100. The DIB200may operate as a DUT receiver330to receive and secure the DUTs220for testing. The DIB200contains a partial enclosure, in that vents on the bottom and top allow air movement therein. Moreover, the DIB200includes a cover201(or housing), a slanted part202, a slot295, a plurality of sockets210to receive and secure the DUTs220via the slot295, and a loadboard211(FIG. 7) on which the sockets210are securely attached. The sockets210are arranged into a row and physically and electrically connect to the DUTs. Also, the loadboard211(FIG.7) electrically and physically interfaces with the test execution module100to support communication of power, instructions, signals, data, test results, and/or information between the DUT220and the test execution module100. The load board, on one side that mates with the testing logic100has a universal connection layout that matches the testing logic100connection layout. On the other side, the load board comprises sockets210that are specific (physically and electrically) to a type of DUT being tested. The DIB200addresses the problems caused by the availability of numerous form factors and standards, such as M.2, U.2, SATA 2.5″, etc. Instead of the test execution module100being designed to accommodate a specific form factor and/or standard, in this fashion multiple DIBs200are designed for each one of the various form factors and/or standards and are removable/replaceable from the test execution module100.

Further, dual-fan cooling with ambient air is integrated into the DIB200. The dual-fan cooling with ambient air includes bottom fans230a-230dinside of the cover201of the DIB200and top fans240a-240dinside of and obscured by the cover201of the DIB200. The bottom fan230cand the top fan240care visible inFIG. 7. In an embodiment, each bottom fan230a-230dis vertically aligned with a respective top fan240a-240d. Support structure232(FIG. 7) securely attaches bottom fans230a-230dto the DIB200. Similarly, support structure242(FIG. 7) securely attaches top fans230a-230dto the DIB200. The rotational speed of the bottom fans and the top fans may be separately adjustable.

Continuing, the DIB200includes air guides250a-250c(FIGS. 6 and 7) and a temperature sensor strip260(FIG. 7) with a plurality of external temperature sensors.

Referring again to the dual-fan cooling with ambient air of the DIB200, The bottom fans230a-230dare operable to draw ambient air290from the surrounding environment via a gap between the slanted part202(FIGS. 6 and 7) and the bottom fans230a-230d.

The top fan240aand the bottom fan230aare operable to generate a vertical ambient air flow290afrom the bottom fan230ato the top fan240ato cool the plurality of DUTs220within the length and width dimensions of the top and bottom fans240aand230a. Also, the top fan240band the bottom fan230bare operable to generate a vertical ambient air flow290bfrom the bottom fan230bto the top fan240bto cool the plurality of DUTs220within the length and width dimensions of the top and bottom fans240band230b. In addition, the top fan240cand the bottom fan230care operable to generate a vertical ambient air flow290cfrom the bottom fan230cto the top fan240cto cool the plurality of DUTs220within the length and width dimensions of the top and bottom fans240cand230c. Further, the top fan240dand the bottom fan230dare operable to generate a vertical ambient air flow290dfrom the bottom fan230dto the top fan240dto cool the plurality of DUTs220within the length and width dimensions of the top and bottom fans240dand230d.

The air guides250a-250c(FIGS. 6 and 7) are operable to control a direction of the vertical ambient air flow. The air guides250a-250c(FIGS. 6 and 7) reduce ambient air loss through the slot295and assist in directing the vertical ambient air flow towards the top fans240a-240d.

From the top fans240a-240d, the air conduit110(FIGS. 6 and 7) adjacent to the top fans240a-240dreceives and releases the vertical ambient air flows291into the surrounding environment.

In an embodiment, the plurality of DUTs220have exposed top and bottom sides and can be arranged on a 13.3 mm pitch in one example. The vertical ambient air flows290a-290ddissipate heat from the exposed top and bottom sides to cool the plurality of DUTs220. The exposed top and bottom sides of the plurality of DUTs220are vertically aligned with a direction of the vertical ambient air flows290a-290dto increase the cooling effect of the vertical ambient air flows290a-290don the plurality of DUTs220.

FIG. 7shows a cutaway view of the exemplary DUT testing module ofFIG. 6in accordance with an embodiment. One fan unit slice (top fan240cand bottom fan230c) is depicted inFIG. 7. The other three fan unit slices (top fan240aand bottom fan230a, top fan240band bottom fan230b, and top fan240dand bottom fan230d) are similar in operation to the fan unit slice (top fan240cand bottom fan230c) shown inFIG. 7. It should be understood that the fan unit slice (top fan240cand bottom fan230c) of the exemplary DUT testing module300is not limited to the illustration ofFIG. 7.

The path280of ambient air through the bottom fan230cand top fan240cof the exemplary DUT testing300(FIG. 6) is illustrated. Initially, the bottom fan230cdraws ambient air from the surrounding environment via the gap between the slanted part202and the bottom fan230c. Then, the bottom fan230cdirects the ambient air upward to the top fan240cwhile concurrently the top fan240calso directs the ambient air upwards. Thereafter, the ambient air is released via the air conduit110into the surrounding environment.

The vertical ambient air flow290c(FIG. 6) from the bottom fan230cand the top fan240cbenefits by the existence of a lower air pressure adjacent to the bottom of the top fan240crelative to the air pressure down towards the bottom fan230c. Air naturally flows from areas of higher air pressure to areas of lower air pressure.

In an embodiment, the lower air pressure adjacent to the bottom of the top fan240cis achieved by operating the top fan240cat a rotational speed that is greater than a rotational speed of the bottom fan230cin generating the vertical ambient air flow290c. This improves the cooling effectiveness of the vertical ambient air flow290cand helps to prevent the escape of air from the vertical ambient air flow290cthrough the slot295in the DIB200and outward into a face of an operator monitoring a robotic handler for insertion and/or removal of DUTs220or manually handling the insertion and/or removal of DUTs220from the DIB200via the slot295. In an embodiment, the fan selected to be the top fan240chas a maximum rotational speed greater than the maximum rotational speed of the fan selected to be the bottom fan230c. Exemplary values for the maximum rotational speeds are 75 rps (revolutions per second) for the top fan240cand 60 rps for the bottom fan230c.

The volume and speed of the vertical ambient air flow290cdue to the top fan240cand bottom fan230care factors in determining the range of temperatures in which the vertical ambient air flow290cis sufficient to cool the DUTs220during testing. The rotational speeds of the top fan240cand bottom fan230cmay be adjusted in accordance with the amount of cooling that is needed until a set point or desired temperature is reached with respect to the DUTs220during testing.

As depicted inFIG. 7, the sizes of top fan240cand bottom fan230care sufficient for the vertical ambient air flow290c(FIG. 6) to extend across eight DUTs220for providing the cooling effect. Exemplary values for the sizes are 92 mm×38 mm for the top fan240cand 92 mm×25.4 mm for the bottom fan230c, however, any suitable size can be employed. It is also possible to reduce the number of DUTs220to expand the range of temperatures in which the vertical ambient air flow290cis sufficient to cool the DUTs220during testing.

The foregoing descriptions of specific embodiments have been presented for purposes of illustration and description. They are not intended to be exhaustive or to limit the disclosure to the precise forms disclosed, and many modifications and variations are possible in light of the above teaching. The embodiments were chosen and described in order to best explain the principles of the disclosure and its practical application, to thereby enable others skilled in the art to best utilize the disclosure and various embodiments with various modifications as are suited to the particular use contemplated. It is intended that the scope of the disclosure be defined by the Claims appended hereto and their equivalents.