This disclosure relates to controlling temperatures of devices conductively during testing.
During testing, it is common to control the temperature of a device under test (DUT), e.g., to ensure that the DUT remains operational over a specified temperature range. For this reason, the testing environment immediately around the DUT is closely regulated. In some test systems, the temperature within the testing environment is adjusted by using a hot or cold airflow that is common to all of the DUTs in the immediate vicinity.
An example test system comprises a transporter having test sockets, with each test socket being configured to receive a device to be tested by the test system, and with each test socket comprising an element that is controllable to change a temperature of a device in the test socket through thermal conduction. A test rack included the test system comprises slots. The transporter is configured for movement into, and out of, a slot of the test rack to test devices in the test sockets. The example test system may include one or more of the following features, either alone or in combination.
The element may be controllable to change the temperature of the device relative to an ambient temperature of the slot. Each test socket may comprise a thermal conductor configured to transfer thermal energy, through conduction, between the element and the device. The thermal conductor may comprise a component that is thermally conductive and that is in thermal contact with the element. The thermal conductor may comprise an interface material that is in contact with the device and that is contactable by the component. The interface material may comprise thermally-conductive tape or thermally-conductive paste.
The test system may comprise a circuit board that mates to the socket, with the component being mounted on the circuit board and being movable relative to the circuit board to contact the interface material. The component may comprise springs to enable movement relative to the device. The component may not be movable relative to the device.
The element may comprise a circuit board that mates to the socket and that increases in temperature in response to an electrical signal. The element may be mounted on the thermal conductor. The element may comprise a passive electrical component that increases in temperature in response to an electrical signal. The element may comprise an active electrical component that increases in temperature in response to an electrical signal. The element may comprise a Peltier device having a part that decreases in temperature in response to an electrical signal.
Each test socket may comprise a thermally-insulating structure surrounding, at least partly, the device, with the thermally-insulating structure inhibiting transfer of thermal energy from the test socket to other test sockets in the transporter. Each test socket comprises a temperature sensor to sense a temperature of at least one of the device or the element. The test system may comprise one or more processing devices to control a temperature of the element based on the temperature sensed by the temperature sensor.
Each element of each test socket may be controllable independently of elements of other test sockets in order to achieve heating or cooling of a device in the test socket concurrently and asynchronously.
Testing performed on devices in the test sockets may comprise functional testing. Testing performed on devices in the test sockets may comprise reliability testing. The reliability testing may comprise burn-in testing.
The test sockets may comprise a first test socket and a second test socket, with a first element in the first test socket being controllable independently of, and asynchronously of, a second element in the second test socket in order to provide independent and asynchronous control over temperatures of devices in the first and second test sockets.
The transporter may comprise a window to receive an air flow to change a temperature of a device in a test socket. The element of the test socket may be controllable based on temperature changes to the device resulting from the air flow.
An example test system may comprise at least one robotic arm operable to rotate through a predetermined arc about, and extend radially from, a first axis substantially normal to a floor; racks arranged around the robotic arm for servicing by the robotic arm; test slots housed by each rack; and transporters that are configured for capture by the at least one robotic arm, and that are configured for movement into, and out of, the test slots, with each transporter having test sockets, with each of the test sockets for holding a device to be tested by the test system when the transporter is in a test slot. For each transporter, a test socket may comprise a thermal circuit to control, through conduction, a temperature of a device held therein independently of control implemented, in others of the test sockets of the transporter, over temperatures of devices held in the others of the test sockets. The example test system may include one or more of the following features, either alone or in combination.
The thermal circuit may comprise an element that is controllable to change in temperature relative to an ambient temperature of a slot containing the transporter. The thermal circuit may comprise a thermal conductor configured to transfer thermal energy, through conduction, between the element and the device. The thermal conductor may comprise a component that is thermally conductive and that is in thermal contact with the element. The thermal conductor may comprise an interface material that is in contact with the device and that is contactable by the component.
The interface material may comprise thermally-conductive tape. The interface material may comprise thermally-conductive paste.
The test system may comprise a circuit board that mates to the socket, with the component being mounted on the circuit board and being movable relative to the circuit board to contact the interface material. The component may comprise springs to enable movement relative to the device. The component may not be movable relative to the device.
The element may be mounted on the thermal conductor. The element may comprise a circuit board that mates to the socket and that increases in temperature in response to an electrical signal. The element may comprise a passive electrical component that increases in temperature in response to an electrical signal. The element may comprise an active electrical component that increases in temperature in response to an electrical signal. The element may comprise a Peltier device having a part that decreases in temperature in response to an electrical signal.
Each test socket may comprise a thermally-insulating structure surrounding, at least partly, the device, with the thermally-insulating structure inhibiting transfer of thermal energy from the test socket to other test sockets in the transporter. Each test socket comprises a temperature sensor to sense a temperature of at least one of the device or the element. The test system may comprise one or more processing devices to control a temperature of the element based on the temperature sensed by the temperature sensor. The test system may comprise a temperature sensor to detect a temperature associated with the test socket; and one or more processing devices to control the element based on the temperature detected.
Any two or more of the features described in this specification, including in this summary section, can be combined to form implementations not specifically described herein.
The test systems and techniques described herein, or portions thereof, can be implemented as/controlled by a computer program product that includes instructions that are stored on one or more non-transitory machine-readable storage media, and that are executable on one or more processing devices to control (e.g., coordinate) the operations described herein. The test systems and techniques described herein, or portions thereof, can be implemented using one or more apparatus, methods, and/or electronic systems that can include one or more processing devices and memory to store executable instructions to implement various operations.
The details of one or more implementations are set forth in the accompanying drawings and the description below. Other features and advantages will be apparent from the description and drawings, and from the claims.
Like reference symbols in the various drawings indicate like elements.
Described herein are example systems for testing devices, including, but not limited to, semiconductor devices used in solid state storage devices (SSDs). The example systems include transporters that are movable, by a robot, into, and out of, a test slot in a test rack. Each transporter includes multiple test sockets, and each test socket holds a device. In operation, the robot moves a transporter containing devices that have been tested out of a test slot, and moves a transporter containing devices that are to be tested into the test slot. While in the test slot, various types of tests are performed on the devices. Because the devices are in separate test sockets, they may be tested independently, concurrently, and asynchronously. Large numbers of test slots, coupled with multiple sockets per transporter, enables devices to be tested en masse. Use of a robot at least partially automates the testing process as described herein, increasing testing throughput over less automated systems.
Among the tests performed on the devices in the test slots are thermal tests. For example, devices are heated and cooled, and their operational characteristics are determined at resulting reduced and elevated temperatures. Heretofore, heating or cooling in a slot-based test system was implemented by passing hot or cold air through the test slot. However, in a system that includes multiple devices in a single transporter, each of which may be tested differently or be at a different stage in the testing process, convective thermal control alone can be limiting. Accordingly, the example systems described herein use conduction to either heat or cool devices in the test sockets. In an example implementation, each test socket includes an element that is controllable independently of elements of other test sockets in the same transporter in order to heat or cool a device in the test socket through conduction. As a result, the temperature of devices in the same transporter can be controlled independently, concurrently, and asynchronously, thereby enabling thermal testing of different devices in the same transporter to be performed independently concurrently, and asynchronously. So, for example, different types of devices may be loaded into the same transporter, and different thermal tests may be performed on those different types of devices at different times, as described herein.
Devices tested by the system may include any appropriate semiconductor or other testable device. The devices may include, but are not limited to, devices at the integrated circuit (IC) package level, which may be used in various applications, such as solid state drives. A solid-state drive (SSD) is a data storage device that uses solid-state memory to store persistent data. An SSD using SRAM (static random access memory) or DRAM (dynamic random access memory (instead of flash memory) is often called a RAM-drive. The term solid-state distinguishes solid-state electronics from electromechanical devices.
An example implementation of the above-described test system is shown in
Referring to
Referring also to
Test electronics 22 can also include test circuitry 34 in communication with at least one test slot 18. The test circuitry 34 tests whether one or more devices held and/or supported in a test slot 18 by a storage device transporter 16, are functioning properly. Test circuitry 34 may control functional testing and reliability (e.g., burn-in) testing. A functionality test may include testing the amount of power received by the device, the operating temperature, the ability to read and write data, and the ability to read and write data at different temperatures (e.g. read while hot and write while cold, or vice versa). A functionality test may test every memory sector of the device or only random samplings. A functionality test may test an operating temperature of the device and also the data integrity of communications with the device. A burn-in test may include reading to, and writing from, each sector of a device, such as a memory, and determining whether the device is reliable based on those operations. Test circuitry 34 may include a cluster controller 35 and at least one interface circuit 36 in electrical communication with a cluster controller 35. A connection interface circuit 37 is in electrical communication with devices received within the test slots 18 and with interface circuit 36. The interface circuit 36 is configured to communicate test routines to the devices in the test slot. The test circuitry 34 may include a communication switch 39 (e.g. Gigabit Ethernet) to provide electrical communication between the cluster controller 28 and the computer. The computer 20, communication switch 39, cluster controllers 28, 35, and the interface circuits may communicate over an Ethernet network or by other appropriate electronic communication media.
Referring to
Each test socket in a transporter is configured to test a device (a DUT) independently concurrently, and asynchronously from other test sockets in that same transporter. For example, in
Transporter 45 includes an electrical connector 50, which mates to a counterpart connector in a test slot 18. The resulting connection enables transmission, to and from the transporter, of information including, but not limited to, test signals, test results, control signals, and so forth. Any appropriate information that is transmissible over one or more electrical connections may be transmitted to and from the transporter. The information may be transmitted to/from test electronics 22 (or to/from computer 20, as appropriate)
In this example, transporter 45 also includes circuit board 51 containing electrical conduits. The electrical conduits route signals between connector 50 and corresponding test sockets, thus enabling independent and separate communication between individual test sockets and the test electronics (or computer). Among the information communicated are control signals for controlling the temperatures of the test sockets. As described herein, the temperatures of individual test sockets within a single transporter may be controlled independently, concurrently, and asynchronously. For example, at the same time, a device in test socket 46 may be heated, while a device in test socket 47 may be cooled, and a device in test socket 48 may be maintained at the test slot ambient temperature (e.g., no heating or cooling). The independent, concurrent, and asynchronous control over device temperature may be implemented through conductive thermal energy transfer, as described herein.
Socket 46 includes pins 54a such as POGO® pins, to enable temporary electrical connection to the device in test socket 46, namely DUT 55, absent solder. Test and/or control signals may be sent over this electrical connection between the DUT and the test electronics. DUT 55 may be any type of device that is appropriate for connection to socket 46 and for testing with test system 10. Examples of devices that may be tested are described herein.
Socket 46 also includes assembly 56 for controlling the temperature of DUT 55. In this example, electrical connection to assembly 56 includes pins 54b, such as POGO® pins. Test and/or control signals may be sent over this electrical connection between assembly 56 and the test electronics.
In this example, assembly 56 includes a circuit board 59 to which electrical connection is made. Assembly 56 also includes a thermal control element 60 (or simply, “element 60”). Element 60 is controllable to change the temperature of the device relative to an ambient temperature of a slot in which the device is located, as described herein. Element 60 may be mounted on circuit board 59, as shown, or it may be beneath circuit board 59, internal to circuit board 59, mounted to thermal conductor 61 (described below), or at any other appropriate location internal or external to socket 46. Element 60 includes any appropriate active or passive electrical or thermal device that is controllable (e.g., based on one or more electrical signal(s)) to change a temperature of a device in the test socket through thermal conduction. For example, element 60 may be, or include, a passive device, such as a resistor or a capacitor, that increases in temperature in response to an electrical signal; or an active device, such as a transistor, that increases in temperature in response to an electrical signal. Element 60 may be, or include, traces on circuit board 59 or circuit board 59 itself, either or both of which may heat through conduction of electricity. Element 60 may be, or include, a Peltier device having a part that decreases in temperature in response to an electrical signal. A Peltier device operates to cool the DUT by drawing heat from the DUT. Other types of heating or cooling elements may also be used.
Element 60 and thermal conductor 61 together form a thermal circuit allowing exchange, through conduction, of thermal energy with the DUT. For example, the resulting thermal circuit may conduct heat to the DUT to warm the DUT, or conduct heat away from the DUT to cool the DUT. Thermal conductor 61 (or simply, “conductor 61”) may be a single structure or include multiple structures. In this example, conductor 61 includes a thermally-conductive component 63 (or simply, “component 63”) and a thermally conductive interface material 64 (or simply, “material 64”). In this example, component 63 is made of metal or any other appropriate thermally-conductive material. Component 63 conducts heat between the DUT and element 60. In this example, material 64 is a thermally-conductive tape or paste that is applied directly to the DUT. For example, the conductive tape or paste may be made of graphite or any other appropriate thermally-conductive material. Component 63 comes into contact with interface material 64, thereby completing the thermal circuit that transfers heat between element 60 and the DUT.
In some implementations, component 63 may be movable relative to circuit board 59 and socket 46. That is, component 63 is mounted on circuit board 59 and is movable in response to contact with the DUT. For example, component 63 may contain one or more springs 67 that enable component 63 to move relative to circuit board in order to compensate for variations in socket depth. Component 63 may be movable within a block 69 that holds the component (e.g., component 63 may act as a piston within block 69). That is, component 63 includes a plunger 65 and a housing 69, which the plunger contacts at a ridge in the housing, with the downward contact forcing the housing downwardly. Block 69 may be made of a thermally-conductive or insulating material. In some implementations, block 69 may not be included in the assembly.
In some implementations, component 63 is not movable relative to circuit board 59 in the socket. For example, component 63 need not include a spring that enables the movement shown in
Referring back to
Any appropriate type of testing may be performed on the devices in the test sockets. For example, functional tests may be performed on devices in the test sockets. Functional tests typically test the operation of devices. Reliability tests may also be performed on devices in the test sockets. Reliability tests, such as burn-in, test whether the device has portions that are faulty or inoperable. Due to the structure and function of the test sockets described herein, different devices in the same transporter/test slot may be subjected to different types of testing. Referring to
Referring to
In some implementations, convective heating and/or cooling may also be used in the test system in addition to conductive heating. For example, as shown in
While this specification describes example transporters related to “testing” and a “test system,” the devices and method described herein may be used in any appropriate system, and are not limited to a testing context or to the example test systems described herein.
Testing performed as described herein may be implemented using hardware or a combination of hardware and software. For example, a test system like the ones described herein may include various controllers and/or processing devices located at various points. A central computer may coordinate operation among the various controllers or processing devices. The central computer, controllers, and processing devices may execute various software routines to effect control and coordination of testing and calibration.
Testing can be controlled, at least in part, using one or more computer program products, e.g., one or more computer program tangibly embodied in one or more information carriers, such as one or more non-transitory machine-readable media, for execution by, or to control the operation of, one or more data processing apparatus, e.g., a programmable processor, a computer, multiple computers, and/or programmable logic components.
A computer program can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program can be deployed to be executed on one computer or on multiple computers at one site or distributed across multiple sites and interconnected by a network.
Actions associated with implementing all or part of the testing and calibration can be performed by one or more programmable processors executing one or more computer programs to perform the functions described herein. All or part of the testing and calibration can be implemented using special purpose logic circuitry, e.g., an FPGA (field programmable gate array) and/or an ASIC (application-specific integrated circuit). Processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer. Generally, a processor will receive instructions and data from a read-only storage area or a random access storage area or both. Elements of a computer (including a server) include one or more processors for executing instructions and one or more storage area devices for storing instructions and data. Generally, a computer will also include, or be operatively coupled to receive data from, or transfer data to, or both, one or more machine-readable storage media, such as mass PCBs for storing data, e.g., magnetic, magneto-optical disks, or optical disks. Machine-readable storage media suitable for embodying computer program instructions and data include all forms of non-volatile storage area, including by way of example, semiconductor storage area devices, e.g., EPROM, EEPROM, and flash storage area devices; magnetic disks, e.g., internal hard disks or removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks.
Any “electrical connection” as used herein may imply a direct physical connection or a connection that includes intervening components but that nevertheless allows electrical signals to flow between connected components. Any “connection” involving electrical circuitry mentioned herein, unless stated otherwise, is an electrical connection and not necessarily a direct physical connection regardless of whether the word “electrical” is used to modify “connection”.
Elements of different implementations described herein may be combined to form other embodiments not specifically set forth above. Elements may be left out of the structures described herein without adversely affecting their operation. Furthermore, various separate elements may be combined into one or more individual elements to perform the functions described herein.