Universal socket test card
By providing a test card containing general testing components and customized adapter components, the problem of the test socket in the prior art requires purchasing a real CPU or GPU, achieving a more efficient and economical testing process.
Patent Information
- Application Number
- CN202410447930.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-08-09
- Filing Date
- 2024-04-15
- Publication Date
- 2025-02-18
AI Technical Summary
The prior art requires purchasing a real CPU or GPU when testing sockets, resulting in increased testing time and cost. UPI BSI testing is unstable and prone to false failures, affecting the development cycle.
A test card is provided, including a universal test component and a custom adapter component, which simulates the test function through an FPGA or CPLD IC, and the adapter component is configured to connect to a specific socket type to enable testing of a CPU or GPU socket.
The test card can avoid the need to purchase a real CPU or GPU, reduce test costs and time, and improve test coverage and reduce the possibility of false failures.
Smart Images

Figure CN119470980A_ABST
Abstract
Description
Background Art
[0001] The motherboard and main logic board (MLB) are printed circuit boards (PCBs) coupled to the main components of a computing device. Examples of main components include a central processing unit (CPU), a graphics processing unit (GPU), memory, etc. In order to achieve connection with the CPU, the motherboard / MLB includes a CPU socket to which the CPU is attached. Similarly, the motherboard / MLB can use a GPU socket to achieve connection with the GPU. There are various methods for testing sockets, such as but not limited to UPI (Ultra Path Interconnect) Boundary Scan Interconnect (BSI) testing, Structural Test Plus (STP) testing, etc. BRIEF DESCRIPTION OF THE DRAWINGS
[0002] The present disclosure is described in detail according to one or more different embodiments with reference to the following drawings. The drawings are provided for illustrative purposes only and depict only typical or example embodiments.
[0003] Figure 1A is a perspective view of an example motherboard including a test card according to the presently disclosed technology.
[0004] Figure 1B is along Figure 1A The cross-sectional plane shown is cut Figure 1A A cross-sectional side view of a motherboard.
[0005] Figure 2 is a perspective view of an example test component according to the presently disclosed technology.
[0006] FIG. 3A to FIG. 3C are various views of an example adapter according to an example implementation of the presently disclosed technology.
[0007] FIG. 4A to FIG. 4C are various views of another example adapter according to example implementations of the presently disclosed technology.
[0008] Figure 5 is an example computing component that may be used to implement various features of a test socket in accordance with embodiments disclosed herein.
[0009] Figure 6 is an example computer system that can be used to implement various features of the socket testing of the present disclosure.
[0010] The drawings are not exhaustive and do not limit the disclosure to the precise forms disclosed. DETAILED DESCRIPTION
[0011] The currently disclosed technology relates to a test card, the test card includes a universal test component and a customized adapter component, the universal test component includes an integrated circuit (IC) with programmable logic provided for simulating test functions, and the customized adapter component can be provided as a printed circuit board (PCB). The programmable logic can be provided as an FPGA / CPLD IC (field programmable gate array integrated circuit / complex programmable logic device integrated circuit) programmed to perform the desired test function. The test component can be universal so that the test component can simulate the test function of any socket type via an adapter component, and the adapter component is customized to be inserted into a socket of a socket type corresponding to the adapter component by establishing an electrical connection and / or interfaced with the socket. More specifically, each instance of the customized adapter component is configured to interface with a specific socket type.
[0012] As described above, the motherboard includes sockets for attaching processing units such as CPUs and GPUs. The sockets are generally designed to be specific to the processing units. That is, for example, the motherboard uses a specific CPU socket type corresponding to a specific CPU to couple to a specific CPU. Different CPUs have different sizes, structures, and pin configurations. Therefore, different CPU socket types have different sizes, structures, and pin configurations to accommodate different CPUs. Therefore, different CPU socket types are not interchangeable between different CPUs; a specific CPU must be matched to a corresponding CPU socket type. Similarly, the motherboard uses a specific GPU socket type corresponding to a specific GPU to attach to a specific GPU. As used herein, "socket" will be understood to refer to a CPU socket, a GPU socket, etc., unless otherwise explicitly stated or in the context of the description.
[0013] As mentioned above, there are various methods to test the sockets on the motherboard. Examples of test methods include, but are not limited to, UBS testing, UPI BSI testing, STP testing, etc. The logic for performing these tests can be implemented in different test modules. The test modules are provided with programmed logic that, when executed, tests certain capabilities of the socket or the ability of the CPU to perform certain capabilities. For example, one test module can be programmed to perform the UPI BSI test method, which simulates the standard IEEE 1149.1 / 6 boundary scan capability and tests the socket's capabilities relative to the IEEE 1149.1 / 6 boundary scan capability. A different test module can be programmed to perform the STP test method, which is only applicable to the sockets that are tested by the CPU. CPU sockets manufactured and only work with specific Test that the controller devices work together.
[0014] Using conventional systems and methods, in order to test a socket, it is necessary to obtain CPUs from different CPU manufacturers (e.g. AMD, etc.) or GPU manufacturers (e.g. ) Purchase an actual real CPU (or GPU). The CPU (or GPU) manufacturer adds a test module to the actual real CPU (or GPU) as logic for executing each different test method. Then, the socket is tested using the actual real CPU (or GPU) by executing the on-chip test module.
[0015] However, these traditional methods have several disadvantages. Some CPU sockets encounter problems in UPI BSI testing and cannot perform the test correctly. Therefore, an additional serial vector format (SVF) file (which is a configuration file that defines the test function) needs to be programmed into the CPU before testing, which may increase the test time of each socket tested by 5 to 10 minutes. In some cases, in order to retest the motherboard, it is necessary to program the configuration file, perform the test, and improve the configuration file. This may cause the motherboard to be retested up to 3 times more than the normal expected test number. Further, the UPI BSI test may be unstable and often have false failures, which may also require retesting. In some cases, the instability and long test cycle of the UPI BSI test will result in the inability to perform the test at all according to the development cycle deadline. These factors and other factors often lead to delays in the test time of the UPI BSI test, which delays the downstream process due to the need to locate and report any problems to the manufacturer so that the manufacturer can solve the problem and proceed to the next stage of development. In addition, these factors and other factors may often lead to an increase in the cost of testing the CPU socket. Further, a real CPU needs to be purchased to test the CPU socket, which may not only increase the cost but also increase the time spent on testing the CPU socket.
[0016] The currently disclosed technology overcomes the above disadvantages by providing a test card, which includes an adapter component configured to be connected to a specific socket type corresponding to the adapter component and used as an interface between a universal test component and a socket of the corresponding socket type. The test component carries logic that simulates a test function for testing the socket. In some examples, the socket may be a CPU socket, while in other examples, the socket may be a GPU socket, etc. The adapter component may be provided as a PCB, and the test component may be provided as an FPGA IC or a CPLD IC programmed with logic that simulates the test function. The test function may be one of a UBS test, a BSI test, a UPI BSI test, etc. The adapter component may be configured to be connected to the corresponding socket type by having a connector (e.g., a pin configuration) corresponding to (e.g., matching or otherwise complementary to) the connector (e.g., a pin configuration) of the corresponding socket type. The test component may be a universal test module configured to interface with any number of CPU and / or GPU socket types.
[0017] In the illustrative example, the test card can be a CPU socket test card, and the socket test card comprises a test component programmed to simulate a universal boundary scan (UBS) and an adapter component configured to interface / connect with a specific CPU socket type corresponding to the adapter component. The UBS module can use the adapter component of the CPU socket that inserts the corresponding CPU socket type to test the CPU socket of the corresponding CPU socket type, so as to establish a connection (e.g., interface connection) between the test component and the CPU socket. By means of features of the present invention, a CPU socket test card can be provided to test various CPU sockets, so that the needs of purchasing a real CPU for testing the CPU socket can be avoided. In addition, due to the CPU socket test card of the present invention, the cost and / or time of testing the CPU socket can be reduced.
[0018] Figure 1A is a perspective view of an example motherboard 100 in which the presently disclosed technology may be implemented. Figure 1B is along Figure 1A 1 and 12. A cross-sectional side view of the motherboard 100 is shown taken along a cross-sectional plane 126. The motherboard 100 may include a PCB 102. A plurality of components may be electrically coupled to the PCB 102. Examples of components include a BIOS chip 104, a backup battery 106, peripheral connectors 108 such as a universal serial bus (USB), a serial port, a parallel port, an audio port, an Ethernet port, and the like, and memory 110, among others.
[0019] The motherboard may also include at least one socket 114. Some example motherboards include two or more sockets 114, and in some cases four sockets 114. For purposes of illustration, one socket 114 is shown in FIG. 1 , but additional sockets may be included, which may be substantially similar to the sockets 114 described herein.
[0020] The socket 114 may be adapted to receive a processing unit (not shown) corresponding to the socket and connect the processing unit to one or more of the components 104 to 112 or any other components not listed via the PCB 102. For example, the PCB 102 may include electrical connections in the form of electrical traces between the socket 114 and the components 104 to 112 and / or other components not listed, and between the components. The socket 114 may be coupled to the traces by any suitable means, such as soldering, compression, etc.
[0021] The socket 114 may be designed to receive a processing unit. For example, the socket 114 may include a vertical connector including a plurality of electrical connectors 116. The socket 114 may have a specific size, structure, and electrical connector configuration, depending on the type of socket implemented as the socket 114 (e.g., depending on the specific processing unit with which the socket 114 is configured to interface). In one example, the electrical connector 116 may include a plurality of pins, such as a planar grid array (LGA). That is, the socket 114 may be an LGA-type socket. In another example, the electrical connector 116 may include a plurality of through holes for receiving a plurality of pins, such as a pin grid array (PGA) formed on the mounting side of the processing unit. That is, the socket 114 may be a PGA-type socket. In yet another example, the socket 114 may be implemented as a ball grid array (BGA)-type socket. In any case, the number and configuration of the electrical connector 116 depends on the type of socket implemented as the socket 114. The processing unit may be coupled to the socket 114 by any suitable means (such as welding, compression, etc.).
[0022] The processing unit may be a central processing unit (CPU) or a graphics processing unit (GPU). In the case of a CPU, PCB 102 may also include a GPU (not shown in FIG. 1 ). Similarly, in the case of a GPU, PCB 102 may include a CPU. The processing unit may include a single processor or multiple processors. The processor(s) may include any suitable type of processor, such as, but not limited to, a processor composed of Processors provided by AMD and others.
[0023] The motherboard 100 also includes a test card 120 that can be received by the socket 114. The test card 120 includes a test component 124 and an adapter 122 (sometimes referred to herein as an "adapter PCB" or "adapter component"). The test component 124 (sometimes referred to herein as a "test module") can be an integrated circuit (IC) having programmable logic provided for simulating test functions. For example, the test component 124 can include programmable logic for simulating one or more of a UBS test, a BSI test, an STP test, a UPI BSI test, etc. The test component 124 is capable of testing any type of socket. The programmable logic can be provided as an FPGA or CPLD IC that is programmed to perform the implemented test functions.
[0024] The adapter 122 may be a custom adapter PCB that may be inserted into the socket 114 to interface or otherwise connect with the socket 114. The adapter 122 is configured according to the socket type implemented as the socket 114. For example, the adapter 122 may include a plurality of electrical connectors 128 that are complementary to the plurality of electrical connectors 116 of the socket 114. For example, in the case of an LGA socket, the socket mounting surface of the adapter 122 may include a plurality of through holes for receiving a plurality of pins of the socket 114. As another example, in the case of a PGA socket type, the socket mounting surface of the adapter 122 may include a plurality of pins that may be received by the plurality of through holes of the socket 114. In any case, the adapter 122 includes an electrical connector configuration that corresponds to (e.g., matches or otherwise complements) the complementary electrical connector configuration of the corresponding socket type. As described above, different socket types may have different electrical connector configurations, and the test component 124 includes an electrical connector configuration that corresponds to the electrical connector configuration of the socket 114. In some examples, each of the plurality of electrical connectors 128 is complementary to the connections of the plurality of electrical connectors 116, while in other examples, a subset of the plurality of electrical connectors 128 may be complementary (e.g., not all of the plurality of electrical connectors 128 need to be utilized depending on the type of socket implemented as the socket 114). Thus, the test card 120 may use the adapter 122 to plug into and / or interface with the socket 114 corresponding to the adapter 122 through an electrical connection established between the electrical connectors 116 and 128, thereby connecting the test component 124 to the socket 114 for simulating the test functions implemented on the test component.
[0025] The test card 120 can therefore be used as a "virtual" module for testing purposes. The "virtual" module can replace the real CPU or GPU and the dependence on the CPU / GPU supplier, while improving the overall test coverage. That is, the test card 120 including a test component 124 with a programming IC for simulating test functions (such as UBS) can be used as a virtual module, and the virtual module is interfaced with the socket 114 via an adapter 122. The test card 120 is attached to the adapter 122 that is inserted into the socket 114 of a specific socket type corresponding to the adapter 122. In this way, the test card 120 can be used to test the motherboard 100, for example, by simulating the BS test function to test the socket 114, for example, to determine whether the socket 114 has any open or short pins. Therefore, there is no need to purchase a real processing unit (e.g., CPU / GPU) to test the socket.
[0026] As described above, the adapter 122 is customized according to the socket type implemented as the socket 114. When testing multiple motherboards, each motherboard has a socket of a different socket type, a separate adapter 122 customized according to the socket type can be provided. However, by coupling to each adapter 122 using any means or method for connecting the adapter 122 to the test component 124, the test component 124 can be universally used for testing. For example, a customized adapter 122 can be configured to fit one type of socket (e.g., Intel CPU socket), while another customized adapter 122 can be configured to fit another type of socket (e.g., AMD CPU socket). In order to test the execution of BS test on two example sockets, the same test component 124 can be attached to each adapter 122. In some cases, the same instance of the test component 124 (e.g., the same in structure, configuration, logic, etc.) can be used to test each socket. In an example embodiment, the adapter 122 can be removed from the test component 124. In this case, the identical test component 124 can be interchanged between the adapters 122. In some embodiments, the power supply of the test component 124 can be supplied by the power supply of the motherboard. However, the power supplied to the test component 124 is not limited to that from the motherboard 100 , but may also be supplied from an external power source(s) (eg, an external power supplier).
[0027] Example socket types include, but are not limited to: Intel CPU socket S adapted to interface with SapphireRapids CPU provided by Intel Corporation (Intel); Intel CPU socket R adapted to interface with RocketLake CPU provided by Intel Corporation; AMD CPU socket G adapted to interface with Genoa CPU provided by AMD Corporation; Nvidia GPU socket X adapted to interface with Redstone GPU provided by Nvidia Corporation; and so on. Other example types may include sockets utilizing LGA, PGA, or BGA connectors with different connector configurations. As described above, a custom adapter 122 may be provided for each socket type and connected to a test component 124 for simulating the test functions on each corresponding socket type. In the case of a CPU socket, the test card 120 may be referred to as a CPU test card (or a CPU socket test card). In another example, in the case of a GPU socket, the test card 120 may be referred to as a GPU test card (or a GPU socket test card).
[0028] As described above, with the features of the currently disclosed technology, the overall test coverage can be improved. One reason is that the test component 124 is a virtual module that can test the power and ground pins, while the actual processing is not the case. In addition, for the test component 124 implemented as a CPLD, no heat sink is required on the fixture because the CPLD does not generate high heat, thus avoiding the increased fixture size, complexity and cost due to the inclusion of a heat sink. Therefore, with the help of the test card 120, the complexity of the fixture design can be reduced.
[0029] It should be understood that the illustration of Figure 1 is not intended to indicate that the motherboard 100 includes in every case all of the components shown in Figure 1. Further, any number of additional components may be included within the motherboard 100 depending on the details of the particular implementation.
[0030] In an illustrative example implementation of a server motherboard BSI test, where the socket 114 is a CPU socket 114, the electrical connector 116 may include a plurality of Joint Test Action Group (JTAG) pins that, when the test card 120 is pressed to contact the CPU socket 114, may be connected to corresponding JTAG ports included as part of the plurality of electrical connectors 128. As an illustrative example, the electrical connector 116 may include a test data input (TDI) pin 116a, a test data output (TDO) pin 116b, a test clock (TCK) pin 116c, a test mode select (TMS) pin 116d, and a test reset (TRST) pin 116e, and the plurality of electrical connectors 128 may include corresponding test data input (TDI) ports 128a, test data output (TDO) ports 128b, test clock (TCK) ports 128c, test mode select (TMS) ports 128d, and test reset (TRST) ports 128e. The JTAG pins 116a to 116e of the CPU socket 114 may also be connected to a metal JTAG test pad 130 disposed on the bottom surface of the motherboard 100. Since each motherboard has a different circuit design and component placement, the test pad 130 is not necessarily located at a fixed position on the bottom side of the motherboard 100 in various embodiments, but the test pad 130 may generally be positioned to coincide with the bottom side position of the socket 114.
[0031] To perform a BSI test, the motherboard 100 may be placed on a BSI test fixture (not shown) mounted with a test probe corresponding to and connected to each of the JTAG test pads 130. The test probe may also be connected to a computing platform, such as Figure 6 When power is supplied to the motherboard 100, the computing platform can be controlled to send boundary scan commands and signals to the test pads 130 and the JTAG pins 116a to 116e via the test probes, and finally send boundary scan commands and signals to the test card 120 through the JTAG ports 128a to 128e to start the BSI test simulated by the test card 120.
[0032] The test card 120 can simulate BSI testing (e.g., test functionality in this example) by generating boundary scan 1149.1 / 1149.6 signals (also referred to as scan signals) and applying these signals to the electrical connectors 116. Some of the electrical connectors 128 can be connected to electrical traces on the motherboard 100 that are connected to the components 104 to 112. For example, each electrical connector in a first subset of the electrical connectors 128 can be connected to the memory 110 via a corresponding electrical trace, and each electrical connector in a second subset of the electrical connectors 128 can be connected to the peripheral connector 108 via a corresponding electrical trace, such as Figure 1AAs shown. The components of the motherboard 100 (such as the memory 110 and the peripheral connector 108) can each include a customized test card inserted into the component for simulating BSI testing. The test card can be similar to the test component 124 disclosed herein, which includes programmable logic for simulating test functions (e.g., BSI testing in this example). Therefore, the boundary scan 1149.1 / 1149.6 signal applied to a given electrical connector 128 can be supplied to the test card, and the test card is inserted into the component (e.g., peripheral connector 108, memory 110, etc.) via the corresponding electrical traces and the interconnection between the corresponding electrical connector 116 and the electrical connector 128. The computing platform can then monitor the boundary scan 1149.1 / 1149.6 signal supplied to each component of the motherboard 100 to determine whether each electrical connector 116 of the socket 114 used by the motherboard 100 passes.
[0033] As another example, the test card 120 may also receive the boundary scan 1149.1 / 1149.6 signal generated at the test card of each component (e.g., peripheral connector 108, memory 110, etc.) of the motherboard 100 through the interconnection between the electrical connector 116 and the electrical connector 128. The received boundary scan 1149.1 / 1149.6 signal may be processed by the computing platform through the JTAG ports 127a to 128e and the JTAG pins 116a to 116e to determine whether each electrical connector 116 of the socket 114 used by the motherboard 100 passes.
[0034] By the above illustrative examples, all electrical connectors 116 of the sockets 114 used by the motherboard 100 can be tested by the test card 120. Further, all power and ground connectors 128 of the sockets 114 can also be tested by the test card 120 by substantially similar methods.
[0035] Figure 2 2 is a perspective view of an example test component 200 according to the presently disclosed technology. The test component 200 may be a combination of the above Figure 1A and Figure 1B 1. An example of a test component 124 is described. Thus, the test component 124 includes an integrated circuit (IC) having programmable logic provided for simulating test functions. The test component 200 can be universal because the programmable logic provided thereon can be executed to simulate the test functions implemented on any socket type.
[0036] The test component 200 includes a substrate 202 having programmable logic disposed thereon. The substrate 202 may include an FPGA or CPLD IC containing logic for emulating desired test functions. The test component 200 includes a vertical connector 204 disposed on an interface surface of the substrate 202. The vertical connector 204 is configured to interface with an adapter (e.g., Figure 1A and Figure 1B The vertical connector 204 may be configured to interface with or otherwise electrically connect to the adapter 122 of the receiving adapter. The vertical connector 204 includes a plurality of electrical connectors 206. In one example, the electrical connectors 206 may include a plurality of pins, such as a PGA. In another example, the electrical connectors 206 may include a plurality of through holes for receiving a plurality of pins, such as an LGA formed on an interface surface of a receiving adapter. In yet another example, the electrical connectors 206 may be implemented as a ball grid array (BGA) type.
[0037] FIG. 3A to FIG. 3C are various views of an example adapter 300 according to an example implementation of the presently disclosed technology. Figure 3A is a bottom perspective view of the adapter 300, Figure 3B is a top view of the adapter 300, and Figure 3C is a bottom view of the adapter 300 .
[0038] Adapter 300 includes a PCB 302 having an interface surface 304. Interface surface 304 includes a vertical connector 310, such as Figure 3B The vertical connector 310 is configured to be connected to a test component (e.g., Figure 1A and Figure 1B The test component 124 and / or Figure 2 The vertical connector 310 includes a plurality of electrical connectors 312 that correspond to (e.g., mate with or otherwise complement the electrical connectors of the test components. For example, the electrical connectors 312 may correspond to Figure 2 The electrical connector 312 may include an electrical connector 206 of the test component 200. In one example, the electrical connector 312 may include a plurality of pins, such as an LGA. In another example, the electrical connector 312 may include a plurality of through holes for receiving a plurality of pins, such as a PGA formed on an interface surface of a receiving adapter. In yet another example, the electrical connector 312 may be implemented as a BGA type.
[0039] PCB 302 also includes a mounting surface 306. Mounting surface 306 includes a vertical connector 320, such as Figure 3C The vertical connector 320 is configured to be connected to a socket (eg, Figure 1A and Figure 1B The vertical connector 320 includes a plurality of electrical connectors 322 that correspond to (e.g., mate with or otherwise complement the electrical connectors of the socket. For example, the electrical connectors 322 may correspond to Figure 1A and Figure 1B The electrical connector 322 may be configured to be connected to the electrical connector 116 of the socket 114. In one example, the electrical connector 322 may include a plurality of pins, such as a PGA. In another example, the electrical connector 322 may include a plurality of through holes for receiving a plurality of pins, such as an LGA of a receiving socket. In yet another example, the electrical connector 322 may be implemented as a BGA type.
[0040] As mentioned above, there are different socket types, and the adapter according to the present disclosure is adapted to correspond to a specific socket type. FIG. 3A to FIG. 3C In the example of FIG. 1 , electrical connectors 322 are provided in a specific configuration that is specific to the receptacle with which adapter 300 is configured to interface. In this example, adapter 300 may include 6,096 connectors that interface with the receptacle's 6,096 connectors, which are divided into Figure 3A and Figure 3C In this case, the adapter 300 can be configured to connect to an AMD CPU socket G.
[0041] The adapter 300 may include a pin mapping of the electrical connector 322 on the mounting surface 306 to the electrical connector 312 on the interface surface 304. This mapping may depend on the socket type. For example, the electrical connector 322 includes a connector that is complementary to the socket type to be tested (e.g., all connectors 322 correspond to the connectors of the socket or at least all connectors of the socket correspond to a subset of the electrical connector 322). Then, according to the test implemented by the test card for testing the socket, each connector electrical connector 322 may be mapped to the corresponding electrical connector 312 of the interface surface 304. Not all electrical connectors 312 of the interface surface 304 need to be mapped to the electrical connector 322, as long as each electrical connector 322 corresponding to the connector of the socket is mapped to the electrical connector 312.
[0042] FIG. 4A to FIG. 4C are various views of an example adapter 400 according to an example implementation of the presently disclosed technology. Figure 4A is a bottom perspective view of the adapter 400, Figure 4B is a top view of the adapter 400, and Figure 4C is a bottom view of the adapter 400 .
[0043] Adapter 400 includes a PCB 402 having an interface surface 404. Interface surface 404 includes vertical connectors 310, such as Figure 4B The vertical connector 310 is configured to be connected to a test component (e.g., Figure 1A and Figure 1B The test component 124 and / or Figure 2 As described above, the adapter 400 may include a vertical connector that is connected to the test component 200 included in the adapter 400. FIG. 3A to FIG. 3C The vertical connectors on the adapters 300 of the same test system are identical. Therefore, regardless of the socket type or motherboard being tested, the same test component can be interchangeably attached to each adapter. Therefore, each adapter can be connected to a universal test component.
[0044] Return to FIG. 4A to FIG. 4C PCB 402 also includes a mounting surface 406. Mounting surface 406 includes a vertical connector 420, such as Figure 4C The vertical connector 420 is configured to be connected to a socket (eg, Figure 1A and Figure 1B The vertical connector 420 includes a plurality of electrical connectors 422 that correspond to (e.g., mate with or otherwise complement the electrical connectors of the socket. For example, the electrical connectors 422 may correspond to Figure 1A and Figure 1B The electrical connector 422 may be configured to be connected to the electrical connector 116 of the socket 114. In one example, the electrical connector 422 may include a plurality of pins, such as a PGA. In another example, the electrical connector 422 may include a plurality of through holes for receiving a plurality of pins, such as an LGA of a receiving socket. In yet another example, the electrical connector 422 may be implemented as a BGA type.
[0045] As mentioned above, there are different socket types, and the adapter according to the present disclosure is adapted to correspond to a specific socket type. FIG. 4A to FIG. 4C In the example of FIG. 4 , the electrical connector 422 is provided in a specific configuration that is specific to the receptacle with which the adapter 400 is configured to interface. In this example, the adapter 400 may include a Figure 4C4,766 connectors are arranged to interface with 4,766 pins of the socket. In this case, adapter 400 can be configured to connect to Intel CPU socket S. In addition, as described above, adapter 400 can include a mapping of each electrical connector 422 to electrical connector 412 corresponding to the connector of the socket to be tested.
[0046] Figure 5 An example computing component that can be used to implement a test function of a socket according to various embodiments is illustrated. Figure 5 , the computing component 500 may be, for example, a server computer, a controller, or any other similar computing component capable of processing data. Figure 5 In the example implementation of FIG. 5 , computing component 500 includes a hardware processor 502 and a machine-readable storage medium 504 .
[0047] The hardware processor 502 may be one or more central processing units (CPUs), semiconductor-based microprocessors, and / or other hardware devices suitable for fetching and executing instructions stored in the machine-readable storage medium 504. The hardware processor 502 may fetch, decode, and execute instructions, such as instructions 506-508, to control a process or operation for testing a socket. As an alternative or in addition to fetching and executing instructions, the hardware processor 502 may include one or more electronic circuits, such as a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), or other electronic circuits, including electronic components for performing the functions of one or more instructions.
[0048] A machine-readable storage medium, such as machine-readable storage medium 504, may be any electronic, magnetic, optical, or other physical storage device that contains or stores executable instructions. Thus, machine-readable storage medium 504 may be, for example, a random access memory (RAM), a non-volatile RAM (NVRAM), an electrically erasable programmable read-only memory (EEPROM), a storage device, an optical disk, or the like. In some embodiments, machine-readable storage medium 504 may be a non-transitory storage medium, wherein the term "non-transitory" does not encompass transient propagating signals. As described in detail below, machine-readable storage medium 504 may be encoded with executable instructions (e.g., instructions 506 to 508).
[0049] The hardware processor 502 may execute instructions 506 to connect the test card to the socket on the motherboard using an adapter printed circuit board (PCB) corresponding to the socket type of the socket. Figure 1A Figures 4 through 4 provide examples of test cards and adapters.
[0050] The hardware processor 502 can execute instructions 508 to perform a test function to test the socket using a test component connected to an adapter printed circuit board (PCB). Figure 1A As discussed to FIG. 4 , the test component includes logic to simulate test functions that may be executed to test the socket.
[0051] Figure 6 A block diagram of an example computer system 600 is depicted in which various examples described herein may be implemented. The computer system 600 includes a bus 602 or other communication mechanism for communicating information, one or more hardware processors 604 coupled to the bus 602 for processing information. The hardware processor(s) 604 may be, for example, one or more general purpose microprocessors.
[0052] The computer system 600 also includes a main memory 606 coupled to the bus 602 for storing information and instructions to be executed by the processor 604, such as a random access memory (RAM), a cache, and / or other dynamic storage device. The main memory 606 can also be used to store temporary variables or other intermediate information during the execution of the instructions to be executed by the processor 604. Such instructions, when stored in a storage medium accessible to the processor 604, make the computer system 600 a special-purpose machine that is customized to perform the operations specified in the instructions. As an example, the test card 120 can be coupled to the computer system 600 via the communication interface 618, and the processor 606 can be configured to execute the instructions stored in the main memory 606 to determine whether the socket in which the test card 120 is received passes based on the test or scan signal generated and / or received by the test card 120.
[0053] The computer system 600 further includes a read only memory (ROM) 608 or other static storage device coupled to the bus 602 for storing static information and instructions for the processor 604. A storage device 610, such as a magnetic disk, optical disk, or USB thumb drive (flash memory drive), is provided and coupled to the bus 602 for storing information and instructions.
[0054] The computer system 600 may be coupled to a display 612, such as a liquid crystal display (LCD) (or touch screen), via the bus 602 for displaying information to a computer user. An input device 614, including alphanumeric and other keys, is coupled to the bus 602 for communicating information and command selections to the processor 604. Another type of user input device is a cursor control 616, such as a mouse, trackball, or cursor direction keys, for communicating direction information and command selections to the processor 604 and for controlling cursor movement on the display 612. In some embodiments, the same direction information and command selections as the cursor control may be implemented via receiving touches on a touch screen without a cursor.
[0055] The computing system 600 may include a user interface module for implementing a GUI, which may be stored in a mass storage device as executable software code executed by the computing device(s). By way of example, this module and other modules may include components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, programs, subroutines, program code segments, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables.
[0056] Generally, the words "component", "engine", "system", "database", "data store", etc. as used herein may refer to logic implemented in hardware or firmware, or to a set of software instructions written in a programming language such as Java, C or C++, which may have entry points and exit points. Software components can be compiled and linked into executable programs, installed in dynamic link libraries, or written in interpreted programming languages such as BASIC, Perl or Python. It should be understood that software components can be called from other components or from themselves, and / or can be called in response to detected events or interrupts. Software components configured for execution on a computing device can be provided on a computer-readable medium such as an optical disk, a digital video disk, a flash drive, a disk, or any other tangible medium, or can be provided as a digital download (and can be stored originally in a compressed format or an installable format that needs to be installed, decompressed or decrypted before execution). Such software code can be stored in part or in whole on a memory device of an executing computing device for execution by the computing device. Software instructions can be embedded in firmware such as an EPROM. It will be further understood that hardware components may include connected logic units such as gates and flip-flops, and / or may include programmable units such as programmable gate arrays or processors.
[0057] The computer system 600 may implement the techniques described herein using customized hard-wired logic, one or more ASICs or FPGAs, firmware, and / or program logic that is combined with the computer system to make or program the computer system 600 into a special-purpose machine. According to one embodiment, the techniques herein are performed by the computer system 600 in response to the processor(s) 604 executing one or more sequences of one or more instructions contained in the main memory 606. Such instructions may be read into the main memory 606 from another storage medium, such as the storage device 610. Execution of the sequences of instructions contained in the main memory 606 causes the processor(s) 604 to perform the process steps described herein. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software instructions.
[0058] As used herein, the term "non-transitory medium" and similar terms refer to any medium that stores data and / or instructions that cause a machine to operate in a particular manner. Such non-transitory media may include non-volatile media and / or volatile media. Non-volatile media include, for example, optical or magnetic disks, such as storage device 610. Volatile media include dynamic memory, such as main memory 606. Common forms of non-transitory media include, for example, floppy disks, floppy disks, hard disks, solid-state drives, magnetic tapes or any other magnetic data storage media, CD-ROMs, any other optical data storage media, any physical media with a pattern of holes, RAM, PROMs and EPROMs, flash EPROMs, NVRAMs, any other memory chips or boxes, and networked versions of the media.
[0059] Non-transient media are distinct from transmission media but can be used in conjunction with transmission media. Transmission media participate in the transfer of information between non-transient media. For example, transmission media include coaxial cables, copper wire, and optical fiber, including the wires that comprise bus 602. Transmission media can also take the form of acoustic or light waves, such as those generated during radio wave and infrared data communications.
[0060] Computer system 600 also includes a communication interface 618 coupled to bus 602. Network interface 618 provides a two-way data communication coupled to one or more network links, and the one or more network links are connected to one or more local networks. For example, communication interface 618 can be an integrated services digital network (ISDN) card, a cable modem, a satellite modem, or a modem for providing a data communication connection with a corresponding type of telephone line. As another example, network interface 618 can be a local area network (LAN) card for providing a data communication connection with a compatible LAN (or a WAN component for communicating with a WAN). Wireless links can also be implemented. In any such implementation, network interface 618 sends and receives an electrical signal, an electromagnetic signal, or an optical signal carrying a digital data stream representing various types of information.
[0061] A network link typically provides data communication through one or more networks to other data devices. For example, a network link can provide a connection through a local network to a host computer or to data devices operated by an Internet Service Provider (ISP). The ISP, in turn, provides data communication services through the global packet data communication network now commonly referred to as the "Internet". Both the local network and the Internet use electrical, electromagnetic, or optical signals that carry digital data streams. The signals through the various networks and the signals on the network link and the signals through the communication interface 618 (which carry digital data to and from the computer system 600) are example forms of transmission media.
[0062] Computer system 600 can send messages and receive data, including program code, through the network(s), network links and communications interface 618. In the Internet example, a server can transmit the requested code for an application program through the Internet, an ISP, a local network and communications interface 618.
[0063] The received code may be executed by processor 604 as it is received, and / or stored in storage device 610 or other non-volatile storage for later execution.
[0064] Each of the processes, methods, and algorithms described in the previous sections can be implemented in a code component executed by one or more computer systems or computer processors including computer hardware and automated in whole or in part by the code component. The one or more computer systems or computer processors can also operate to support the execution of related operations in a "cloud computing" environment, or operate as "software as a service (SaaS)". The processes and algorithms can be implemented in part or in whole in a dedicated circuit. The various features and processes described above can be used independently of each other, or can be combined in various ways. Different combinations and sub-combinations are intended to fall within the scope of the present disclosure, and some method boxes or process boxes can be omitted in some embodiments. The methods and processes described herein are also not limited to any particular order, and the boxes or states related to the methods and processes can be executed in other appropriate orders, or can be executed in parallel, or in some other way. Boxes or states can be added to or removed from the disclosed example embodiments. The execution of certain operations or processes can be distributed to computer systems or computer processors so that they do not reside only in a single machine, but are deployed across multiple machines.
[0065] As used herein, circuits can be implemented using any form of hardware, software or a combination thereof. For example, one or more processors, controllers, ASIC, PLA, PAL, CPLD, FPGA, logic components, software routines or other mechanisms can be implemented to form circuits. In an embodiment, various circuits described herein can be implemented as discrete circuits, or the functions and features described can be shared partially or entirely between one or more circuits. Although various features or functional elements can be described or advocated individually as separate circuits, these features and functions can also be shared among one or more common circuits, and this description should not require or imply that separate circuits are needed to implement such features or functions. In the case of using software to implement circuits in whole or in part, this software can be implemented to operate together with a computing system or processing system (such as computer system 600) that can perform the functions described about the software.
[0066] As used herein, the term "or" may be interpreted in an inclusive or exclusive sense. In addition, descriptions of resources, operations, or structures in the singular should not be understood to exclude the plural. Unless explicitly stated otherwise, or otherwise understood within the context as used, conditional language (such as, among others, "can," "could," "might," or "may") is generally intended to convey that certain embodiments include and other embodiments do not include certain features, elements, and / or steps.
[0067] Unless otherwise expressly stated, the terms and phrases used in this document and their variations should be interpreted as open-ended rather than restrictive. Adjectives such as "conventional", "traditional", "normal", "standard", "known" and terms of similar meaning should not be interpreted as limiting the items described to items available for a given time period or before a given time, but should be understood to cover traditional, conventional, normal or standard technologies that may be available or known at any time now or in the future. In some cases, the presence of broad words and phrases (such as "one or more", "at least", "but not limited to" or other similar phrases) should not be understood to mean that narrower situations are intended or required where such broad phrases may not be present.
Claims
1. A test card, comprising: Test components; as well as an adapter printed circuit board (PCB) configured to connect to a corresponding socket type on a motherboard and to serve as an interface between the test component and a socket of the corresponding socket type, The test component includes logic for simulating a test function for testing the socket.
2. The test card as claimed in claim 1, wherein: The test component is a field programmable gate array (FPGA) integrated circuit or a complex programmable logic device (CPLD) integrated circuit programmed with the logic that simulates the test function.
3. The test card of claim 2, wherein: The FPGA integrated circuit or the CPLD integrated circuit is programmed to function as a virtual CPU module emulating IEEE 1149.1 / 6 boundary scan capability.
4. The test card as claimed in claim 1, wherein: The test function is a Universal Boundary Scan (UBS) test.
5. The test card of claim 1, wherein: The test function is a boundary scan interconnect (BSI) test.
6. The test card of claim 5, wherein: The test component includes a plurality of Joint Test Action Group (JTAG) ports corresponding to JTAG pins of the socket.
7. The test card of claim 1, wherein: The adapter PCB is configured to connect with the corresponding socket type by having a pin configuration that matches the pin configuration of the corresponding socket type.
8. The test card of claim 7, wherein: The test component is configured to simulate the test function by generating a scan signal and applying the scan signal to a pin configuration of the adapter PCB, wherein the adapter PCB is configured to apply the scan signal to the pin configuration of the corresponding socket type.
9. The test card of claim 7, wherein: The test component is configured to simulate the test function by receiving a scan signal from the corresponding socket type via a pin configuration of the adapter PCB connected to a pin configuration of the corresponding socket type.
10. The test card of claim 1, wherein: The corresponding socket type is one of a CPU socket type and a GPU socket type.
11. The test card of claim 1, wherein: The test component is a universal test component in which the logic is programmed to test multiple socket types.
12. The test card of claim 1, wherein: The test component is a virtual CPU module programmed to emulate IEEE 1149.1 / 6 boundary scan capabilities.
13. A method comprising: Connect the test card to the socket on the motherboard using an adapter printed circuit board (PCB) corresponding to the socket type of the socket; as well as The receptacle is tested by performing a test function using a test component connected to the adapter printed circuit board (PCB), the test component including logic to simulate the test function.
14. The method of claim 13, wherein: The test component is a field programmable gate array (FPGA) integrated circuit or a complex programmable logic device (CPLD) integrated circuit programmed with the logic that simulates the test function.
15. The method of claim 13, wherein: The test function is one of a universal boundary scan (UBS) test, a boundary scan interconnect (BSI) test, and an IEEE 1149.1 / 6 boundary scan capability.
16. The method of claim 13, wherein: The adapter PCB is configured to connect with the corresponding socket type by having a pin configuration that matches the pin configuration of the corresponding socket type.
17. The method of claim 13, wherein: Executing the test function includes: The test component generates a scanning signal; applying the scan signal to the pins of the connection socket via pins of the adapter PCB connected to the pins of the connection socket; and It is determined whether each pin of the connection socket passes the test function based on the applied scan signal.
18. The method of claim 13, wherein: Executing the test function includes: receiving a scan signal by the test component via pins of the adapter PCB connected to pins of the connection socket; and Whether each pin of the connection socket passes the test function is determined based on the received scan signal.
19. The method of claim 13, further comprising programming the logic in the test component to simulate the test function.
20. A central processing unit (CPU) socket testing device, comprising: a test module including logic programmed to perform a test function on a CPU socket on a main logic board; as well as An adapter component is electrically connected to the test module, the adapter component including a vertical connector based on a CPU socket type of the CPU socket and configured to serve as an interface between the test module and the CPU socket.
Citation Information
Patent Citations
System and method for testing controllable integrated circuit based on programmable device
CN101029918A
Device, system and method for testing connectivity of pins of Socket connector
CN114062972A
Apparatus and associated methods and systems for characterizing system channels
CN114512176A
Detest apparatus and detest method
CN1677358A
CPU socket open-circuit detector
CN200989934Y
Cited By
Universal socket test card
US12618894B2