Fault Detection Method and System for Computer Memory Modules

By obtaining the audio and image data after self-test of the computer memory stick, automatically identifying and matching the fault code, and combining with the robotic arm plugging and unplugging, the problems of traditional low detection efficiency and easy damage to the contact pin are solved, and efficient and stable memory stick fault detection is achieved.

CN120234199BActive Publication Date: 2025-08-01SHENZHEN HUISHEN ELECTRONIC TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510703201.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-05-29
Publication Date
2025-08-01
Estimated Expiration
2045-05-29

AI Technical Summary

Technical Problem

The fault detection efficiency of traditional computer memory sticks is low, and the contact pins of the fault detection card are easily damaged.

Method used

The microphone device obtains the prompt audio data and sub-screen image data played after self-test, recognizes the prompt sequence in the audio data and the character information in the image data, automatically matches the fault code, and automatically plugs and unplugs the memory stick with the robotic arm to avoid manual intervention.

Benefits of technology

It realizes automation of memory stick fault detection, improves detection efficiency and accuracy, and reduces the risk of contact pin damage.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120234199B_ABST
    Figure CN120234199B_ABST
Patent Text Reader

Abstract

The present invention relates to the technical field of electronic digital data processing, and specifically relates to a method and system for detecting faults of a computer memory module. The method includes: after the computer motherboard with the memory module inserted performs a self-check through the BIOS, obtaining audio data of a prompt sound played after the self-check from a microphone device, and obtaining sub-screen image data output after the self-check through a USB connection; identifying a prompt sound sequence in the audio data; matching the prompt sound sequence with a preset prompt sound sequence to determine the major fault category to which the memory module belongs; identifying character information in the sub-screen image data; respectively matching each standard fault code under the major fault category with the character information in the sub-screen image data to determine the fault code in the sub-screen image data; and determining a fault detection result of the memory module according to the fault code. Using this method can improve the efficiency of fault detection of the memory module.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of electronic digital data processing, and in particular to a computer memory bar fault detection method and system. Background Art

[0002] Memory modules are essential components of computers, requiring strict quality control during the manufacturing process. Therefore, fault detection is crucial. Memory module failures can cause frequent system crashes, blue screens, or unexpected reboots, impacting normal use. They can also trigger motherboard throttling, resulting in performance degradation.

[0003] Traditionally, a fault diagnosis card is inserted into the motherboard. The card then checks various components on the motherboard, including the memory module, and displays a fault code. The fault code on the card is then used to determine the type of fault in the memory module. However, this method is relatively inefficient. Summary of the Invention

[0004] In order to solve the technical problem of low fault detection efficiency, the present invention aims to provide a method and system for detecting faults in a computer memory module. The technical solutions adopted are as follows:

[0005] The present invention provides a method for detecting a fault of a computer memory module, the method comprising:

[0006] After the computer motherboard with the memory stick inserted performs a self-test through the BIOS, the audio data of the prompt tone played after the self-test is obtained from the microphone device, and the secondary screen image data output after the self-test is obtained through the USB connection;

[0007] identifying a tone sequence in the audio data;

[0008] Matching the prompt tone sequence with a preset prompt tone sequence to determine the major fault category to which the memory module belongs;

[0009] Recognizing character information in the secondary screen image data;

[0010] Matching each standard fault code under the fault category with the character information in the secondary screen image data to determine the fault code in the secondary screen image data;

[0011] A fault detection result of the memory module is determined according to the fault code.

[0012] According to the computer memory module fault detection method provided by the present invention, before obtaining the audio data of the prompt sound played after the self-test from the microphone device and obtaining the secondary screen image data output after the self-test through the USB connection, the method further includes:

[0013] Control the robotic arm to insert the memory module into the computer motherboard to trigger the computer motherboard to perform a self-check through the BIOS.

[0014] According to the method for detecting faults of a computer memory module provided by the present invention, the identifying the beep sequence in the audio data includes:

[0015] Perform binarization processing on the amplitude values of the audio data to obtain binarized audio data;

[0016] Determine the audio intervals corresponding to multiple beeps respectively according to the values in the binarized audio data;

[0017] Perform binarization processing on the duration of each audio interval to obtain a beep sequence.

[0018] According to the method for detecting faults of a computer memory module provided by the present invention, the identifying the character information in the secondary screen image data includes:

[0019] Process the secondary screen image data to obtain modulo data of the fault information;

[0020] Reconstruct the modulo data into a two-dimensional matrix;

[0021] Identify the minimum bounding rectangle of each foreground element in the two-dimensional matrix;

[0022] Match the data in each minimum bounding rectangle with a standard character template to determine the character information in the secondary screen image data.

[0023] According to the method for detecting faults of a computer memory module provided by the present invention, the matching each standard fault code under the fault category with the character information in the secondary screen image data respectively to determine the fault code in the secondary screen image data includes:

[0024] Select each standard fault code under the fault category in order from longest to shortest;

[0025] In each round of matching, slide a sliding window with the same length as the currently selected standard fault code on the remaining unmatched character information in the secondary screen image data;

[0026] Calculate the similarity degree between the characters in the sliding window and the currently selected standard fault code respectively at each position where the sliding window slides to;

[0027] Determine whether the currently selected standard fault code exists in the secondary screen image data according to the similarity degree at each position where it slides to.

[0028] According to the computer memory module fault detection method provided by the present invention, the fault detection result includes the fault class to which the memory module belongs;

[0029] Determining the fault detection result of the memory module according to the fault code includes:

[0030] For each memory module, the respective fault codes in the secondary screen image data corresponding to the memory module are combined into a fault code sequence in the order of appearance.

[0031] Cluster according to the fault code sequences corresponding to the respective memory modules, and determine the fault classes to which the respective memory modules belong according to the clustering result.

[0032] According to the computer memory module fault detection method provided by the present invention, the fault detection result includes the main fault cause of the memory module;

[0033] Determining the fault detection result of the memory module according to the fault code includes:

[0034] Determine the fault information weights corresponding to the respective fault codes in the secondary screen image data according to the appearance probability and context association degree of each fault code at each appearance position;

[0035] Select the main fault code from the various fault codes in the secondary screen image data according to the fault information weights, and determine the main fault cause of the memory module according to the main fault code.

[0036] According to the computer memory module fault detection method provided by the present invention, the method further includes:

[0037] Determine the window corresponding to each fault code in the secondary screen image data at each appearance position; the window is obtained by expanding a preset number of strings before and after the appearance position of the fault code.

[0038] Determine the context association degree of the fault code at each appearance position according to the matching result of each string in the window corresponding to the appearance position of the fault code and the standard fault code.

[0039] Determine the appearance probability of the fault code at the appearance position according to the appearance position of the fault code each time and the number of times the fault code appears at the historical appearance position.

[0040] According to the computer memory module fault detection method provided by the present invention, after matching the prompt tone sequence with a preset prompt tone sequence to determine the major fault class to which the memory module belongs, the method further includes:

[0041] If the major fault category to which the memory module belongs is that the memory module is not connected, control the robotic arm to insert the contact pins of the memory module into the cleaning device; the cleaning device is used to clean the oxide layer on the contact pins by friction;

[0042] Control the robotic arm to take out the memory module from the cleaning device and re-insert it into the computer motherboard to trigger the computer motherboard to perform self-check through the BIOS;

[0043] Return to execute the subsequent steps of obtaining the audio data of the prompt sound played after self-check from the microphone device and obtaining the sub-screen image data output after self-check through USB connection after the computer motherboard with the memory module inserted performs self-check through the BIOS.

[0044] The present invention provides a fault detection system for a computer memory module. The system includes a memory and a processor; the memory is used to store executable program codes; the processor is used to call and run the executable program codes from the memory to implement the fault detection method for the computer memory module provided by the present invention.

[0045] The present invention has the following beneficial effects: After the computer motherboard with the memory module inserted performs self-check through the BIOS, obtain the audio data of the prompt sound played after self-check from the microphone device, and obtain the sub-screen image data output after self-check through USB connection. Then, identify the prompt sound sequence in the audio data, match the prompt sound sequence with the preset prompt sound sequence to determine the major fault category to which the memory module belongs, identify the character information in the sub-screen image data, match each standard fault code under the major fault category with the character information in the sub-screen image data respectively to determine the fault code in the sub-screen image data, and finally determine the fault detection result of the memory module according to the fault code, realizing automatic fault detection of the memory module, avoiding the problem of low efficiency caused by manually determining the fault type of the memory module according to the fault codes on the fault detection card, and improving the fault detection efficiency of the memory module. BRIEF DESCRIPTION OF THE DRAWINGS

[0046] In order to more clearly illustrate the technical solutions and advantages in the embodiments of the present invention or the prior art, the following will briefly introduce the drawings required for the description of the embodiments or the prior art. Obviously, the following drawings are only some embodiments of the present invention. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.

[0047] Figure 1 It is a schematic flow chart of a fault detection method for a computer memory module provided by an embodiment of the present invention;

[0048] Figure 2 Schematic diagram of the connection method of the USB-to-serial port module in a method for detecting faults in a computer memory module provided by an embodiment of the present invention;

[0049] Figure 3 and Figure 4 Simulation effect diagram of a robotic arm grasping and placing a product at a specific position on an assembly line in a method for detecting faults in a computer memory module provided by an embodiment of the present invention;

[0050] Figure 5 Schematic diagram of the structure of a cleaning device in a method for detecting faults in a computer memory module provided by an embodiment of the present invention;

[0051] Figure 6 [[ID=!15]]Schematic diagram of the structure of a system for detecting faults in a computer memory module provided by an embodiment of the present invention. Detailed implementation manners

[0052] In order to further elaborate on the technical means and effects adopted by the present invention to achieve the intended invention purpose, the following, in conjunction with the accompanying drawings and preferred embodiments, details the specific implementation manners, structures, features, and effects of a method and system for detecting faults in a computer memory module proposed according to the present invention. In the following description, different "one embodiment" or "another embodiment" do not necessarily refer to the same embodiment. In addition, the specific features, structures, or characteristics in one or more embodiments can be combined in any suitable form.

[0053] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the technical field to which the present invention belongs.

[0054] The following specifically describes the specific solutions of a method and system for detecting faults in a computer memory module provided by the present invention with reference to the accompanying drawings.

[0055] Please refer to[[ID=3!0]] Figure 1 , which shows a flowchart of a method for detecting faults in a computer memory module provided by an embodiment of the present invention, including the following steps:

[0056] Step 102, after the computer motherboard with the memory module inserted performs a self-check through the BIOS, obtain the audio data of the prompt sound played after the self-check from the microphone device, and obtain the sub-screen image data output after the self-check through a USB connection.

[0057] It should be noted that there seems to be an error in ID=15 in the original text. The correct translation is provided above. Also, there seems to be an error in ID=30 in the original text. The correct translation is provided above.The BIOS (Basic Input / Output System) is a set of programs embedded in a ROM (Read-Only Memory) chip on the computer motherboard. It stores the computer's most important basic input and output programs, the post-boot self-test program, and the system startup program. It reads and writes specific system configuration information from the CMOS (Complementary Metal Oxide Semiconductor). Every time the computer is powered on, the BIOS performs a self-test on various components, including the system's circuitry, memory, keyboard, video, hard drive, and floppy drive. It also analyzes the hard drive system configuration and initializes the configured basic I / O (Input / Output) settings. Once everything is normal, it boots the operating system. After the memory stick is inserted into the computer motherboard, the BIOS begins a power-on self-test. The BIOS self-test results can be displayed on the secondary screen as fault codes (this invention does not use the secondary screen for display; instead, it uses a USB connection to obtain image data from the secondary screen for character recognition).

[0058] In one embodiment, the computer memory module fault detection method of each embodiment of the present invention can be executed by a microcontroller unit (MCU). In one embodiment, the computer memory module fault detection method of each embodiment of the present invention can be executed by a microcontroller unit in a Raspberry Pi.

[0059] Specifically, the microphone device captures the audio data of the prompt tone played after the self-test and transmits the audio data to the microcontroller unit. The microcontroller unit is connected to the mainboard via a USB (Universal Serial Bus) to obtain the secondary screen image data output from the mainboard after the self-test.

[0060] In one embodiment, since there may be certain noise influences in the factory assembly line, a sound insulation cover can be used to cover the sound module when acquiring audio data through the microphone device, thereby improving the detection accuracy of the audio data of the prompt sound.

[0061] In one embodiment, a USB to serial port module is used. Figure 2 As shown, the pins 3V3, TXD, RXD, and GND are connected to the 3V3 power, RXD, TXD, and Ground on the Raspberry Pi, respectively. In another embodiment, the Raspberry Pi is directly connected to the USB port of the motherboard and needs to use a standard USB communication protocol, such as USB 2.0 or USB 3.0.

[0062] In one embodiment, after the hardware connection, it is necessary to download the Raspberry Pi driver and configure the serial port value. For example: the driver configuration can be CH340 and CH9344. The serial port value can be set to 115200.

[0063] It can be understood that the used Raspberry Pi does not include a screen and only requires the micro - control unit of the Raspberry Pi core. The micro - control unit does not directly obtain the fault code, but obtains the data of the display image (i.e., the blue screen) of the fault code through the secondary screen (i.e., the secondary screen image data). Specifically, the micro - control unit obtains the data packet that conforms to the USB transmission data type output after self - test through the USB connection, which contains the secondary screen image data.

[0064] Step 104, identify the beep sequence in the audio data.

[0065] In one embodiment, according to the amplitude value of the audio data, the audio intervals corresponding to multiple beeps in the audio data can be identified, the duration of each audio interval can be determined, and the long beeps and short beeps can be identified according to the duration of each audio interval to obtain the beep sequence. For example: the long beep is set to 1 and the short beep is set to 0, so as to obtain the beep sequence (a sequence containing 0 and 1).

[0066] Step 106, match the beep sequence with the preset beep sequence to determine the major fault category to which the memory module belongs.

[0067] In one embodiment, multiple standard preset beep sequences can be set in the database in advance, the beep sequence is respectively matched with each preset beep sequence, and the preset major fault category corresponding to the successfully matched preset beep sequence is determined as the major fault category to which the memory module belongs.

[0068] As shown in Table 1 below, it shows the meanings represented by various beep forms. Therefore, matching the beep sequence with the preset beep sequence can determine the major fault category to which the memory module belongs.

[0069] Table 1 Meanings of Beeps

[0070]

[0071] In one embodiment, if the major fault category to which the memory module belongs is that the memory module is not connected, clean the contact pins of the memory module, and re - insert the cleaned memory module into the computer motherboard to trigger the computer motherboard to perform self - test through the BIOS, return to execute after the computer motherboard with the memory module inserted performs self - test through the BIOS, obtain the audio data of the beep played after self - test from the microphone device, and obtain the secondary screen image data output after self - test through the USB connection and subsequent steps.

[0072] It can be understood that the major category of faults to which the memory module belongs is that the memory module is not connected. There may be two situations: one is a memory module fault, and the other is that the memory module is not inserted properly or the contact pins of the memory module are oxidized. Therefore, by cleaning the contact pins of the memory module and then reinserting the cleaned memory module into the computer motherboard, the problem of false detection of faults caused by the memory module not being inserted properly or the contact pins of the memory module being oxidized can be reduced.

[0073] Step 108, identify the character information in the secondary screen image data.

[0074] In one embodiment, the microcontroller unit processes the secondary screen image data to obtain the modulo data of the fault information. Then the modulo data is reconstructed into a two-dimensional matrix, and the character information in the secondary screen image data is determined according to the two-dimensional matrix.

[0075] Step 110, match each standard fault code under the major fault category with the character information in the secondary screen image data respectively to determine the fault code in the secondary screen image data.

[0076] In one embodiment, each standard fault code under the major fault category can be selected in order from longest to shortest. In each round of matching, the currently selected standard fault code is matched with the currently remaining unmatched character information in the secondary screen image data to determine whether the currently selected standard fault code exists in the secondary screen image data and its location.

[0077] It can be understood that since the lengths of different standard fault codes are different, there is an inclusion relationship between the standard fault codes, which is likely to cause false matching. For example: there are two standard fault codes, 0001F and 00. If the standard fault code 00 is used to match the character information in the secondary screen image data, it is possible to match 0001F, resulting in false matching. Therefore, by selecting each standard fault code under the major fault category in order from longest to shortest for matching, and the already matched character information no longer participates in subsequent matching, the situation of false matching caused by the inclusion relationship between the standard fault codes can be avoided.

[0078] Step 112, determine the fault detection result of the memory module according to the fault code.

[0079] In one embodiment, the fault detection result may include at least one of the fault category to which the memory module belongs and the main fault cause of the memory module.

[0080] In one embodiment, memory modules belonging to the same fault category can be placed in the same location. Anti-oxidation films can be pasted on the memory modules without faults, and then they can be packaged. For the memory modules placed in the same location, corresponding treatments are carried out according to their respective main fault causes.

[0081] In one embodiment, the robotic arm can be controlled to place the memory modules belonging to the same fault class at the same position.

[0082] For the above-mentioned method for detecting faults in computer memory modules, after the computer motherboard with the memory module inserted performs a self-check through the BIOS, the audio data of the prompt sound played after the self-check is obtained from the microphone device, and the secondary screen image data output after the self-check is obtained through a USB connection. Then, the prompt sound sequence in the audio data is identified, and the prompt sound sequence is matched with a preset prompt sound sequence to determine the major fault class to which the memory module belongs. The character information in the secondary screen image data is identified, and each standard fault code under the major fault class is respectively matched with the character information in the secondary screen image data to determine the fault code in the secondary screen image data. Finally, the fault detection result of the memory module is determined according to the fault code, realizing automatic fault detection of the memory module, avoiding the problem of low efficiency caused by manually determining the fault type of the memory module according to the fault code on the fault detection card, and improving the fault detection efficiency of the memory module. In addition, since the fault detection card is plugged and unplugged through contact pins (i.e., "gold fingers"), the contact pins are easily damaged. However, in the present invention, the audio data of the prompt sound played after the self-check is obtained from the microphone device, and the secondary screen image data output after the self-check is obtained through a USB connection, without the need for plugging and unplugging of the contact pins. Therefore, the problem of damage to the contact pins that easily occurs when using the fault detection card is avoided, and the stability of the memory module fault detection is improved. By identifying the character information in the secondary screen image data and performing the matching of the fault codes, the present invention also improves the accuracy of the memory module fault detection.

[0083] In one embodiment, before obtaining the audio data of the prompt sound played after the self-check from the microphone device and obtaining the secondary screen image data output after the self-check through a USB connection, the method further includes: controlling the robotic arm to insert the memory module into the computer motherboard to trigger the computer motherboard to perform a self-check through the BIOS.

[0084] It can be understood that since the position of the motherboard is fixed in the pipeline for memory module fault detection and the actions of plugging and unplugging the memory module on the motherboard are relatively repetitive, the robotic arm can be used to replace manual labor.

[0085] Refer to Figure 3 and Figure 4 , which are the simulation effect diagrams of the robotic arm grasping and placing products at specific positions on the production line. The robotic arm grabs the memory modules to be subjected to fault detection on the production line, and the robotic arm inserts the memory modules into the memory positions of the motherboard for subsequent fault detection.

[0086] In one embodiment, the servo motor in the robotic arm can be controlled by a microcontroller unit to achieve the clamping effect.

[0087] In the above embodiments, the manipulator is controlled to insert the memory module into the computer motherboard to trigger the computer motherboard to perform self-check through the BIOS, which can improve the automation level of the pipeline for memory module fault detection and improve the efficiency of memory module fault detection.

[0088] In one embodiment, identifying a tone sequence in audio data includes: performing binarization processing on the amplitude values of the audio data to obtain binarized audio data; determining audio intervals corresponding to multiple tones respectively according to the values in the binarized audio data; and performing binarization processing on the duration of each audio interval to obtain the tone sequence.

[0089] In one embodiment, the amplitude values less than the first threshold can be set to 0, and the amplitude values greater than or equal to the first threshold can be set to 1 to obtain the binarized audio data.

[0090] In one embodiment, the first histogram of the amplitude values can be counted, and the segmentation point with the largest variance between two classes in the first histogram can be calculated through the Otsu algorithm to obtain the first threshold.

[0091] In one embodiment, according to the binarized amplitude values in the binarized audio data, an interval with consecutive binarized amplitude values that are non-zero and the number of which meets the preset condition is set as an audio interval. Among them, the preset condition is that the number is greater than or equal to the preset quantity. The preset quantity can be set according to the actual situation. For example: the preset quantity can be 3. That is, an interval with more than 3 consecutive binarized amplitude values that are non-zero is set as an audio interval.

[0092] In one embodiment, determining the duration of each audio interval { }, setting the duration less than the second threshold to 0 (corresponding to a short tone), and setting the duration greater than or equal to the second threshold to 1 (corresponding to a long tone) to obtain the tone sequence.

[0093] In one embodiment, the second histogram of the durations of each historical audio interval in the historical data can be counted, and the segmentation point with the largest variance between two classes in the second histogram can be calculated through the Otsu algorithm to obtain the second threshold.

[0094] In the above embodiments, binarization processing is performed on the amplitude values of the audio data to obtain binarized audio data, and according to the values in the binarized audio data, audio intervals corresponding to multiple tones are determined respectively, so that the intervals with tones in the audio data can be accurately segmented out. Then, binarization processing is performed on the duration of each audio interval to obtain the tone sequence, so that the long tones and short tones in the tone can be accurately distinguished.

[0095] In one embodiment, identifying character information in the secondary screen image data includes: obtaining modulo data of fault information by processing the secondary screen image data; reconstructing the modulo data into a two-dimensional matrix; identifying the minimum bounding rectangles of each foreground element in the two-dimensional matrix; and matching the data within each minimum bounding rectangle with a standard character template to determine the character information in the secondary screen image data.

[0096] Among them, the modulo data is one-dimensional data. The two-dimensional matrix is composed of 0s and 1s, where 0 corresponds to the background and 1 corresponds to the foreground (i.e., character information). The foreground element refers to the part composed of the positions where 1s continuously exist in the two-dimensional matrix. The standard character template is also a matrix composed of 0s and 1s obtained through modulo operation.

[0097] In one embodiment, the modulo data can be reconstructed into a two-dimensional matrix according to the resolution of the secondary screen image (i.e., the number of pixel points per row).

[0098] In one embodiment, determine the minimum bounding rectangles corresponding to the positions where 1s continuously exist (i.e., foreground elements) in the two-dimensional matrix. Each minimum bounding rectangle is equivalent to separately segmenting each character in the secondary screen image data.

[0099] In one embodiment, during the process of matching the data within each minimum bounding rectangle with the standard character template, the minimum bounding rectangle and the standard character template can be uniformly scaled to a preset size to generate binary hash codes corresponding to the data within the minimum bounding rectangle and the data of the standard character template respectively. For each minimum bounding rectangle, count the number of different bits (i.e., Hamming distance) between the binary hash code of this minimum bounding rectangle and each standard character template respectively, perform normalization processing on the Hamming distance, and select the standard character template corresponding to the minimum value in the normalized Hamming distance as the character represented by the data within this minimum bounding rectangle. It can be understood that since the text sizes of the minimum bounding rectangle and the standard character template are different, the direct matching effect is not ideal. Therefore, in this embodiment, the hash algorithm is used for matching, which can more accurately achieve character matching.

[0100] In the above embodiments, the modulo data of fault information is obtained by processing the secondary screen image data, the modulo data is reconstructed into a two-dimensional matrix, the minimum bounding rectangles of each foreground element in the two-dimensional matrix are identified, and the data within each minimum bounding rectangle is matched with the standard character template, so that each individual character in the secondary screen image data can be accurately determined.

[0101] In one embodiment, each standard fault code under a major fault category is respectively matched with the character information in the secondary screen image data to determine the fault code in the secondary screen image data, including: successively selecting each standard fault code under the major fault category in the order from the largest to the smallest in length; in each round of matching, sliding a sliding window with the same length as the currently selected standard fault code on the currently remaining unmatched character information in the secondary screen image data; respectively calculating the similarity degree between the characters in the sliding window and the currently selected standard fault code at each position where the sliding window slides to; and determining whether the currently selected standard fault code exists in the secondary screen image data according to the similarity degree at each sliding-to position.

[0102] In one embodiment, at each position where the sliding window slides to, each character in the sliding window is respectively matched with each character in the currently selected standard fault code, and the similarity degree between the characters in the sliding window and the currently selected standard fault code is determined according to the matching result of each character.

[0103] In one embodiment, when each character in the sliding window is respectively matched with each character in the currently selected standard fault code, it is possible to determine the difference between the value (American Standard Code for Information Interchange) of each character in the sliding window and the character at the corresponding position in the currently selected standard fault code, and determine the similarity degree between the characters in the sliding window and the currently selected standard fault code according to the difference between the values corresponding to each character. value difference.

[0104] In one embodiment, the similarity degree between the characters in the sliding window and the currently selected standard fault code is negatively correlated with the sum of the differences between the values corresponding to each character. value differences.

[0105] In one embodiment, when the sum of the differences between the values corresponding to each character is 0, the similarity degree between the characters in the sliding window and the currently selected standard fault code is equal to 1, and as the sum of the differences between the values corresponding to each character increases, the similarity degree between the characters in the sliding window and the currently selected standard fault code decays exponentially. value differences value differences increases, the similarity degree between the characters in the sliding window and the currently selected standard fault code decays exponentially.

[0106] In one embodiment, the similarity degree between the characters in the sliding window and the currently selected standard fault code can be calculated according to the following formula:

[0107]

[0108] where Indicates the similarity degree between the characters within the sliding window at position a and the j-th standard fault code. Indicates the value of the z-th character within the sliding window at position a and the value of the z-th character in the j-th standard fault code. Indicates the number of characters in the j-th standard fault code. Indicates the exponential function with base e.

[0109] In one embodiment, the similarity degree between the characters within the sliding window and the currently selected standard fault code can be normalized to obtain a normalized similarity degree. If the normalized similarity degree is equal to 1, the currently selected standard fault code exists at the corresponding position of the sliding window. If the normalized similarity degree is not equal to 1, the currently selected standard fault code does not exist at the corresponding position of the sliding window.

[0110] When matching the standard fault code, the distance between characters needs to be considered to avoid mis-matching. For example: When matching the standard fault code "001F", it may happen to match "00,1F". Therefore, to solve this problem, the distance between the windows enclosing each character in the above-mentioned sliding window should be less than a preset distance threshold, and only then can the characters in the sliding window be considered to belong to the same string. For example: The preset distance threshold can be set to 0.6.

[0111] In the above embodiment, the standard fault codes under the fault category are sequentially selected for matching in the order from longest to shortest, and the character information that has been successfully matched no longer participates in the subsequent matching, so as to avoid mis-matching caused by the inclusion relationship between the standard fault codes. In each round of matching, a sliding window with the same length as the currently selected standard fault code is slid on the currently remaining unmatched character information in the secondary screen image data. At each position where the sliding window slides, the similarity degree between the characters within the sliding window and the currently selected standard fault code is calculated. According to the similarity degrees at each sliding position, it can be accurately determined whether the currently selected standard fault code exists in the secondary screen image data and its existence position.

[0112] In one embodiment, the fault detection result includes the fault category to which the memory module belongs; determining the fault detection result of the memory module according to the fault code includes: for each memory module, forming a fault code sequence by the various fault codes in the secondary screen image data corresponding to the memory module in the order of appearance; clustering according to the fault code sequences corresponding to the memory modules, and determining the fault categories to which the memory modules belong according to the clustering result.

[0113] In one embodiment, clustering is performed according to the fault code sequences corresponding to each memory module to obtain a plurality of clustering clusters, and each clustering cluster corresponds to a fault class. The memory modules in the same clustering cluster are classified into the same fault class.

[0114] In one embodiment, clustering can be performed according to the DTW (Dynamic Time Warping) distances between the fault code sequences of each memory module.

[0115] In the above embodiment, for each memory module, each fault code in the secondary screen image data corresponding to the memory module is formed into a fault code sequence in the order of appearance. Clustering is performed according to the fault code sequences corresponding to each memory module. According to the clustering result, the fault class to which each memory module belongs can be accurately determined, so that the memory modules can be accurately sorted, and the memory modules of the same fault class are placed at the same position.

[0116] In one embodiment, the fault detection result includes the main fault cause of the memory module; determining the fault detection result of the memory module according to the fault code includes: determining the fault information weight corresponding to each fault code in the secondary screen image data according to the appearance probability and context association degree of each fault code at each appearance position; selecting the main fault code from each fault code in the secondary screen image data according to the fault information weight, and determining the main fault cause of the memory module according to the main fault code.

[0117] In one embodiment, the fault information weight of the fault code is positively correlated with the appearance probability of the fault code at each appearance position. The fault information weight of the fault code is positively correlated with the context association degree of the fault code at each appearance position.

[0118] In one embodiment, for each type of fault code in the secondary screen image data, calculate the product of the appearance probability and the context association degree of the type of fault code at each appearance position, and then sum the products corresponding to each appearance position of the type of fault code to obtain the fault information weight of the type of fault code.

[0119] In one embodiment, the fault information weight corresponding to the j-th type of fault code in the secondary screen image data can be determined according to the following formula:

[0120]

[0121] where represents the fault information weight corresponding to the j-th type of fault code in the secondary screen image data. represents the appearance probability of the j-th type of fault code in the secondary screen image data at the c-th appearance position. Indicates the degree of context association of the j-th fault code at the c-th occurrence position in the secondary screen image data. Indicates the total number of occurrences of the j-th fault code in the secondary screen image data.

[0122] In one embodiment, the fault code with the largest fault information weight can be determined as the main fault code, and the cause of the fault represented by the main fault code can be determined as the main cause of the memory module fault.

[0123] In the above embodiment, since fault codes usually occur concentratedly, the fault information weight of the fault code can be more accurately measured according to the degree of context association of the fault code at each occurrence position. Combining with the occurrence probability of the fault code at each occurrence position, the fault information weights corresponding to various fault codes in the secondary screen image data can be accurately determined. According to the fault information weights, the main fault code can be accurately selected from various fault codes in the secondary screen image data, so as to accurately determine the main cause of the memory module fault.

[0124] In one embodiment, the method further includes: determining a window corresponding to each fault code in the secondary screen image data at each occurrence position; the window is obtained by expanding a preset number of strings before and after the occurrence position of the fault code; according to the matching results of each string in the window corresponding to the fault code at each occurrence position with the standard fault code, determining the degree of context association of the fault code at each occurrence position; according to the occurrence position of the fault code each time and the number of times the fault code appears at the historical occurrence position, determining the occurrence probability of the fault code at the occurrence position.

[0125] For example: taking the current fault code as the center, a 5x(1) window is constructed, and the window contains 5 strings. That is, the window corresponding to the current fault code includes the current fault code, the two strings in front of the current fault code, and the two strings behind.

[0126] In one embodiment, the matching result of the string with the standard fault code can be determined according to the normalized similarity degree between the string and the standard fault code. If the normalized similarity degree is equal to 1, the matching result is set to 1. If the normalized similarity degree is not equal to 1, the matching result is set to 0.

[0127] In one embodiment, the matching results of each string in the window corresponding to the fault code at each occurrence position with the standard fault code are summed to obtain the degree of context association of the fault code at each occurrence position. The formula is as follows:

[0128]

[0129] Wherein, Indicates the degree of context association of the j-th fault code at the c-th occurrence position in the secondary screen image data. Indicates the matching result of the string at the c-th occurrence position of the j-th fault code in the window corresponding to the secondary screen image data with the standard fault code. Indicates the number of strings in the window corresponding to the c-th occurrence position of the j-th fault code in the secondary screen image data. Indicates the result of summing up the matching results of each string in the window corresponding to the c-th occurrence position of the j-th fault code in the secondary screen image data with the standard fault code.

[0130] In one embodiment, according to the ratio of the row where the fault code appears to the total number of rows, the relative position of the fault code is determined. According to the number of times the fault code appears in this row historically and the historical statistical quantity, the historical occurrence probability of the fault code at this occurrence position is determined. The occurrence probability of the fault code at this occurrence position is positively correlated with the relative position of the fault code. The occurrence probability of the fault code at this occurrence position is positively correlated with the historical occurrence probability.

[0131] In one embodiment, according to the product of the relative position of the fault code and the historical occurrence probability, the occurrence probability of the fault code at this occurrence position is determined. The formula is as follows:

[0132]

[0133] Wherein, Indicates the occurrence probability of the fault code in the row. Indicates the row where the fault code appears. Indicates the total number of rows. Indicates the relative position of the fault code. Indicates the number of times the fault code appears in the row historically. Indicates the historical statistical quantity. Indicates the occurrence probability of the fault code in the row.

[0134] In the above embodiment, according to the matching results of each string in the window corresponding to each occurrence position of the fault code with the standard fault code, the degree of context association of the fault code at each occurrence position can be accurately determined. According to each occurrence position of the fault code and the number of times the fault code appears at the historical occurrence position, the occurrence probability of the fault code at the occurrence position can be accurately determined.

[0135] In one embodiment, after matching the prompt tone sequence with a preset prompt tone sequence to determine the major fault category to which the memory module belongs, the method further includes: if the major fault category to which the memory module belongs is that the memory module is not connected, controlling the robotic arm to insert the contact pins of the memory module into a cleaning device; the cleaning device is used to clean the oxide layer on the contact pins by friction; controlling the robotic arm to take out the memory module from the cleaning device and re-insert it into the computer motherboard to trigger the computer motherboard to perform a self-check through the BIOS; returning to execute the steps of obtaining the audio data of the prompt tone played after the self-check from the microphone device and obtaining the secondary screen image data output after the self-check through a USB connection and subsequent steps after the computer motherboard with the memory module inserted performs a self-check through the BIOS.

[0136] See Figure 5 , which is a schematic structural diagram of the cleaning device. The cleaning device can be made of rubber material, and there is a gap in the middle of the rubber material for inserting the contact pins, and the oxide layer on the contact pins (i.e., "gold fingers") is cleaned by the friction of the rubber.

[0137] In the above embodiment, since the major fault category to which the memory module belongs is that the memory module is not connected, there may be two situations: one is a memory module fault, and the other is that the memory module is not inserted properly or the contact pins of the memory module are oxidized. Therefore, by cleaning the contact pins of the memory module and then re-inserting the cleaned memory module into the computer motherboard, the problem of false fault detection caused by the memory module not being inserted properly or the contact pins of the memory module being oxidized can be reduced. By using the robotic arm to pick up and insert the memory module, the detection efficiency can be improved. In addition, the cleaning device cleans the oxide layer on the contact pins through friction, with high efficiency and good cleaning effect.

[0138] Please refer to Figure 6 , which shows a schematic structural diagram of a fault detection system for a computer memory module provided by an embodiment of the present invention, including a memory and a processor; the memory is used to store executable program code; the processor is used to call and run the executable program code from the memory to implement the following steps: after the computer motherboard with the memory module inserted performs a self-check through the BIOS, obtaining the audio data of the prompt tone played after the self-check from the microphone device and obtaining the secondary screen image data output after the self-check through a USB connection; identifying the prompt tone sequence in the audio data; matching the prompt tone sequence with a preset prompt tone sequence to determine the major fault category to which the memory module belongs; identifying the character information in the secondary screen image data; matching each standard fault code under the major fault category with the character information in the secondary screen image data to determine the fault code in the secondary screen image data; and determining the fault detection result of the memory module according to the fault code.

[0139] In one embodiment, the processor further implements the following steps: controlling the robotic arm to insert the memory module into the computer motherboard to trigger the computer motherboard to perform a self-check through the BIOS.

[0140] In one embodiment, the processor further implements the following steps: binarizing the amplitude values of the audio data to obtain binarized audio data; determining the audio intervals corresponding to multiple beep sounds according to the values in the binarized audio data; binarizing the duration of each audio interval to obtain a beep sound sequence.

[0141] In one embodiment, the processor further implements the following steps: processing the secondary screen image data to obtain modulo data of the fault information; reconstructing the modulo data into a two-dimensional matrix; identifying the minimum bounding rectangles of each foreground element in the two-dimensional matrix; matching the data within each minimum bounding rectangle with a standard character template to determine the character information in the secondary screen image data.

[0142] In one embodiment, the processor further implements the following steps: sequentially selecting each standard fault code under the major fault category in descending order of length; in each round of matching, sliding a sliding window with the same length as the currently selected standard fault code over the remaining unmatched character information in the secondary screen image data; calculating the similarity between the characters in the sliding window and the currently selected standard fault code at each position where the sliding window slides; determining whether the currently selected standard fault code exists in the secondary screen image data according to the similarity at each position where the sliding window slides.

[0143] In one embodiment, the fault detection result includes the fault category to which the memory module belongs; the processor further implements the following steps: for each memory module, forming a fault code sequence by arranging the various fault codes in the secondary screen image data corresponding to the memory module in the order of appearance; performing clustering according to the fault code sequences corresponding to each memory module, and determining the fault category to which each memory module belongs according to the clustering result.

[0144] In one embodiment, the fault detection result includes the main fault cause of the memory module; the processor further implements the following steps: determining the fault information weights corresponding to the various fault codes in the secondary screen image data according to the appearance probability and context correlation degree of the various fault codes in the secondary screen image data at each appearance position; selecting the main fault code from the various fault codes in the secondary screen image data according to the fault information weights, and determining the main fault cause of the memory module according to the main fault code.

[0145] In one embodiment, the processor further implements the following steps: determining a window corresponding to each failure code in the secondary screen image data at each occurrence position; the window is obtained by expanding a preset number of strings before and after the occurrence position of the failure code; determining the context association degree of the failure code at each occurrence position according to the matching results between each string in the window corresponding to the failure code at each occurrence position and the standard failure code; and determining the occurrence probability of the failure code at the occurrence position according to each occurrence position of the failure code and the number of times the failure code appears at the historical occurrence position.

[0146] In one embodiment, the processor further implements the following steps: if the major failure category to which the memory module belongs is that the memory module is not connected, controlling the robotic arm to insert the contact pins of the memory module into the cleaning device; the cleaning device is used to clean the oxide layer on the contact pins by friction; controlling the robotic arm to take out the memory module from the cleaning device and re-insert it into the computer motherboard to trigger the computer motherboard to perform a self-check through the BIOS; returning to execute, after the computer motherboard with the memory module inserted performs a self-check through the BIOS, obtaining the audio data of the prompt sound played after the self-check from the microphone device, and obtaining the secondary screen image data output after the self-check and subsequent steps through a USB connection.

[0147] The technical features of the above embodiments can be combined arbitrarily. For the sake of concise description, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered as the scope recorded in this specification.

[0148] The above-described embodiments merely represent several implementation manners of the present application. Their descriptions are relatively specific and detailed, but they should not be construed as limiting the scope of the patent of the present application. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present application, several deformations and improvements can still be made, and these all belong to the protection scope of the present application.

[0149] It should be noted that: the above sequence of the embodiments of the present invention is only for description and does not represent the superiority or inferiority of the embodiments. The processes depicted in the drawings do not necessarily require the specific order or continuous order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0150] Each embodiment in this specification is described in a progressive manner. The same or similar parts between each embodiment can be referred to each other, and the key point of each embodiment is to illustrate the differences from other embodiments.

Claims

1. A method for detecting faults in a computer memory module, characterized in that, The method includes: After the computer motherboard with the memory module inserted performs a self-check through the BIOS, obtain the audio data of the prompt sound played after the self-check from the microphone device, and obtain the sub-screen image data output after the self-check through a USB connection; Identify the prompt sound sequence in the audio data; wherein, the method for identifying the prompt sound sequence is: perform binarization processing on the amplitude values of the audio data to obtain binarized audio data; determine the audio intervals corresponding to multiple prompt sounds according to the values in the binarized audio data; perform binarization processing on the duration of each audio interval to obtain the prompt sound sequence; Match the prompt sound sequence with a preset prompt sound sequence to determine the major fault category to which the memory module belongs; Identify the character information in the sub-screen image data; Match each standard fault code under the major fault category with the character information in the sub-screen image data respectively to determine the fault code in the sub-screen image data; Determine the fault detection result of the memory module according to the fault code.

2. The method for detecting a fault of a computer memory module according to claim 1, wherein, Before obtaining the audio data of the prompt sound played after the self-check from the microphone device and obtaining the sub-screen image data output after the self-check through a USB connection, the method further includes: Control the robotic arm to insert the memory module into the computer motherboard to trigger the computer motherboard to perform a self-check through the BIOS.

3. The fault detection method of a computer memory module according to claim 1, characterized in that, The identifying the character information in the sub-screen image data includes: Process the sub-screen image data to obtain the modulo data of the fault information; Reconstruct the modulo data into a two-dimensional matrix; Identify the minimum bounding rectangles of each foreground element in the two-dimensional matrix; Match the data within each minimum bounding rectangle with a standard character template to determine the character information in the sub-screen image data.

4. The fault detection method of the computer memory module according to claim 1, wherein, The matching each standard fault code under the major fault category with the character information in the sub-screen image data respectively to determine the fault code in the sub-screen image data includes: Select each standard fault code under the major fault category in descending order of length; In each round of matching, slide a sliding window with the same length as the currently selected standard fault code on the remaining unmatched character information in the sub-screen image data; Calculate the similarity degree between the characters in the sliding window and the currently selected standard fault code at each position where the sliding window slides; Determine whether the currently selected standard fault code exists in the sub-screen image data according to the similarity degree at each position where it slides.

5. The method for detecting a fault of a computer memory module according to claim 1, characterized in that, The fault detection result includes the fault category to which the memory module belongs; The determining the fault detection result of the memory module according to the fault code includes: For each memory module respectively, form a fault code sequence by arranging the various fault codes in the sub-screen image data corresponding to the memory module in the order of appearance; Perform clustering according to the fault code sequences corresponding to each memory module, and determine the fault categories to which each memory module belongs according to the clustering result.

6. The method for detecting faults of a computer memory module according to claim 1, characterized in that, The fault detection result includes the main fault cause of the memory module; Determining the fault detection result of the memory module according to the fault code includes: Determining the fault information weights corresponding to various fault codes in the secondary screen image data respectively according to the occurrence probabilities and context association degrees of various fault codes in the secondary screen image data at each occurrence position; Selecting the main fault codes from various fault codes in the secondary screen image data according to the fault information weights, and determining the main fault causes of the memory module according to the main fault codes.

7. The method for detecting a fault of a computer memory module according to claim 6, characterized in that, The method further includes: Determining the window corresponding to each fault code in the secondary screen image data at each occurrence position; the window is obtained by expanding a preset number of strings before and after the occurrence position of the fault code; Determining the context association degree of the fault code at each occurrence position according to the matching results of each string in the window corresponding to the occurrence position of the fault code and the standard fault code; Determining the occurrence probability of the fault code at the occurrence position according to each occurrence position of the fault code and the number of times the fault code appears at the occurrence position in history.

8. The method for detecting a fault of a computer memory module according to any one of claims 1 to 7, characterized in that After matching the prompt tone sequence with the preset prompt tone sequence to determine the major fault category to which the memory module belongs, the method further includes: If the major fault category to which the memory module belongs is that the memory module is not connected, controlling the robotic arm to insert the contact pins of the memory module into the cleaning device; the cleaning device is used to clean the oxide layer on the contact pins by friction; Controlling the robotic arm to take out the memory module from the cleaning device and re-insert it into the computer motherboard to trigger the computer motherboard to perform self-checking through the BIOS; Returning to execute the step of obtaining the audio data of the prompt tone played after self-checking from the microphone device and obtaining the secondary screen image data output after self-checking and subsequent steps after the computer motherboard with the memory module inserted performs self-checking through the BIOS.

9. A fault detection system for a computer memory module, characterized in that, The system includes a memory and a processor; the memory is used to store executable program codes; The processor is used to call and run the executable program codes from the memory to implement the fault detection method of the computer memory module according to any one of claims 1 to 8.

Citation Information

Patent Citations

  • Equipment fault detection method and device, equipment, medium and program product

    CN118500535A

  • Power equipment operation fault identification and reasoning method and system

    CN119149910A