Data transmission method, server system, equipment and medium

By segmenting the data during the hot-swap process in the server device, the target sampling pulse is determined and the interference signal is filtered out, the serial port abnormality caused by jitter interference during the hot-swap process is solved, and the stability and anti-interference of data transmission are achieved.

CN120234276AInactive Publication Date: 2025-07-01INSPUR SUZHOU INTELLIGENT TECH CO LTD

Patent Information

Application Number
CN202510725085.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-30
Publication Date
2025-07-01
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

In server devices, jitter interference during hot plugging causes the data received by the serial port to contain interference signals, and may even cause the risk of the entire machine to go down.

Method used

The serial port protocol receives the first target data in bits, determines its corresponding sampling pulse and performs segmentation processing, obtains the target sampling pulse, and determines the second target data based on the target sampling pulse to filter out interference signals and improves the anti-interference of the data.

Benefits of technology

Maintain data stability during hot swapping, avoid doping of interfering signals, ensure normal use of the serial port, avoid downtime of the entire machine, and improve the anti-interference of data transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120234276A_ABST
    Figure CN120234276A_ABST
Patent Text Reader

Abstract

The invention discloses a data transmission method, a server system, equipment and a medium, and relates to the technical field of data transmission, and the method comprises the steps: determining a sampling pulse corresponding to first target data, obtaining a plurality of sampling pulses in a segment through the segmentation processing of the sampling pulse, and taking the plurality of sampling pulses as target sampling pulses, so as to improve the accuracy of collecting effective data. According to the method, interference signals caused by corresponding jitter instability conditions under serial port hot plugging are avoided, and the target sampling pulses obtained after segmentation processing are used for keeping data stability and avoiding high possibility of doping of the interference signals at the same time. And determining the second target data based on the target sampling pulse, and improving the anti-interference performance of the second target data under the bit. The technical problems that normal serial port use cannot be maintained when jitter interference occurs in the hot plug process, and even the whole machine crashes can be solved, and the technical effect of improving the anti-interference performance of data is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of data transmission, and particularly to a data transmission method, a server system, a device, and a medium. Background Art

[0002] In server devices, the serial port on the motherboard is connected to the serial port of the external communication device on the management board in a plug-and-play manner. When the server management board is re-plugged during replacement, jitter may occur, resulting in the data received by the serial port containing interference signals, and there may even be a risk of the entire machine crashing.

[0003] Therefore, how to maintain normal serial port use in the presence of jitter interference during hot plugging is an urgent problem to be solved by those skilled in the art. Summary of the Invention

[0004] This application provides a data transmission method, a server system, a device, and a medium to at least solve the problem in the related art that normal serial port use cannot be maintained during hot plugging with jitter interference, and even the entire machine may crash.

[0005] This application provides a data transmission method, including: Receiving first target data in units of bits through a serial port protocol; Determining a sampling pulse corresponding to the first target data, and performing segmented processing on the sampling pulse corresponding to the first target data to obtain a corresponding target sampling pulse; Determining second target data based on the target sampling pulse as the first target data.

[0006] This application also provides a server system, including a motherboard and a server management board; the motherboard and the server management board are connected by a serial port; The motherboard is configured to execute the steps of the above-mentioned data transmission method to complete the data transmission of the server management board during the hot plugging process of the server management board.

[0007] This application also provides an electronic device, including: a memory for storing a computer program; a processor for implementing the steps of any of the above data transmission methods when executing the computer program.

[0008] This application also provides a computer-readable storage medium, in which a computer program is stored, and when the computer program is executed by a processor, the steps of any of the above data transmission methods are implemented.

[0009] Through this application, on the one hand, the first target data in bits is received through the serial port protocol to complete the reception of the data mixed with interference signals transmitted, the sampling pulse corresponding to the first target data is determined, and the corresponding target sampling pulse is obtained by segmenting the sampling pulse. Considering that in the conventional technical features, collecting data once as the validity of the high and low level signals of the final data corresponds to exactly collecting the high and low level signals corresponding to the interference signal, resulting in error information in the data collection process. In this application, multiple sampling pulses within a segment are obtained through the segmentation processing of the sampling pulse as the target sampling pulse to improve the accuracy of collecting valid data. Considering that the data of the sampling pulse corresponding to the middle segment is the most stable in the whole sampling pulse, to avoid the interference signal caused by the unstable jitter corresponding to the hot plugging of the serial port. Here, the target sampling pulse obtained through the segmentation processing is used to maintain the data stability while avoiding the higher possibility of doping of the interference signal. On the other hand, the second target data is determined based on the target sampling pulse, and the validity of the data under this bit is determined, so as to filter out the interference signal under this bit and improve the anti-interference ability of the second target data under this bit. In the case of jitter during the hot plugging process, there is no need to power on and off the whole machine. By filtering the interference signal, the normal use of the serial port is maintained, enabling the data transmission to be completed without the user's awareness. Therefore, the technical problem that the normal use of the serial port cannot be maintained and even the whole machine crashes during the hot plugging process with jitter interference can be solved. By adopting the method of segmenting the sampling pulse of the first target data to obtain the target sampling pulse and finally determining the validity of the second target data, the technical effect of improving the anti-interference ability of the data is achieved. Description of the Drawings

[0010] To more clearly illustrate the embodiments of the present application, the drawings required for use in the embodiments will be briefly introduced below. Obviously, the drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other drawings can be obtained based on these drawings.

[0011] Figure 1 It is a schematic structural diagram of a server system provided by an embodiment of the present application; Figure 2 It is a flowchart of a data transmission method provided by an embodiment of the present application; Figure 3 It is a schematic diagram of the transmitted data corresponding to the serial port protocol transmission process provided by an embodiment of the present application; Figure 4 It is a schematic diagram of sampling pulse acquisition provided by an embodiment of the present application; Figure 5Schematic diagram of a serial port receiving module provided by an embodiment of the present application; Figure 6 Structural schematic diagram of a data transmission device provided by an embodiment of the present application. Specific implementation manners

[0012] Next, the technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application.

[0013] It should be noted that in the description of the present application, the terms "include", "comprise" or any other variant thereof are intended to cover a non-exclusive inclusion, so that a process, method, article or device including a series of elements not only includes those elements, but also includes other elements not expressly listed, or further includes elements inherent to such process, method, article or device. The terms "first", "second", etc. in the present application are used to distinguish similar objects and are not used to describe a specific order or sequence.

[0014] In order to enable those skilled in the art of the present technology to better understand the solution of the present application, the present application will be further described in detail below in conjunction with the accompanying drawings and specific implementation manners.

[0015] In combination with the specific application environment architecture or specific hardware architecture on which the execution of the data transmission method depends, the specific application environment architecture or specific hardware architecture will be described herein.

[0016] A serial port is a general asynchronous transceiver. When sending data, it converts parallel data into serial data for transmission, and when receiving data, it converts the received serial data into parallel data. Therefore, it can achieve full-duplex transmission and reception of data. Although the application scenarios of the serial port are greatly limited by the transmission distance and transmission rate, it is widely used in general scenarios where the rate requirement is not high. Especially, it is widely used in server systems and also widely used in the debug serial port interface of the motherboard with Peripheral Component Interconnect Express (PCIE) expansion. As an information interface, the serial port is relatively easy to implement.

[0017] The serial port is an interface for printing by the Central Processing Unit (CPU) commonly used in server products and an interface for printing by the Baseboard Management Controller (BMC). It is an essential interface for debugging. Previously, CPUs generally used Low Pin Count (LPC) mapping to implement the printing output display on the CPU side. Now, more and more CPUs directly use the transmit and receive pins of the serial port to achieve this. This requires an external serial port receiving device to implement the printing and receiving of serial port information. When the external serial port receiving device is hot-plugged, or when the motherboard where the CPU is located is hot-plugged, the serial port can work stably and has the hot-plugging property.

[0018] The general serial port receiving code module implements the serial port receiving function according to the serial port receiving protocol, but does not consider the impact brought by the jitter during hot-plugging. This will cause the failure of the serial port to respond during multiple plugging and unplugging processes of the serial port. Therefore, it is necessary to add a certain fault tolerance processing mechanism to the multi-serial port receiving code module. In actual server devices, the printing serial port on the CPU side is on the motherboard, while the serial port for external communication access and network devices are generally on the Chassis Management Controller (CMC) at a convenient position for plugging and unplugging on the chassis, which can also be called the management board. Figure 1 The structural schematic diagram of a server system provided by an embodiment of the present application is shown as Figure 1 shown, including a motherboard and a server management board, and data is transmitted through the serial port between the motherboard and the server management board. During the daily use of the management board, hot-plugging is inevitable. For example, when replacing the management board, there is a hot-plugging process and jitter may occur. To avoid this jitter, the whole machine needs to be powered off and then powered on again for the serial port to be used, which is very inconvenient for users. The data transmission method provided by the present application can solve the above technical problems.

[0019] Figure 2 The flowchart of a data transmission method provided by an embodiment of the present application is shown as Figure 2 shown, and the method includes: S11: Receive first target data in units of bits through the serial port protocol; S12: Determine the sampling pulse corresponding to the first target data, and perform segmented processing on the sampling pulse corresponding to the first target data to obtain the corresponding target sampling pulse; S13: Determine second target data based on the target sampling pulse as the first target data.

[0020] Specifically, data transmission is performed according to the serial port protocol.Figure 3 This is a schematic diagram of transmission data corresponding to the serial port protocol transmission process provided by the embodiments of the present application. As Figure 3 shown, during the transmission process, it includes a start bit, bit data, and a stop bit. The bit data is at least one first target data formed in units of bits. It should be noted that this embodiment is also applicable to the start bit during the serial port protocol transmission. In actual situations, an interference signal may appear, which is not a real start signal but will cause a falling edge to occur. If no judgment and processing are performed during this process, it will be misidentified as a start signal and directly enter the receiving state, resulting in receiving incorrect data and missing the correct data reception. It can solve the problem that the high level changes to the low level due to signal jitter. The Universal Asynchronous Receiver / Transmitter (UART) communication protocol stipulates that if the level changes from high to low, it is considered a communication start signal, and the receiving side starts to prepare to receive data. If a falling edge from high to low appears due to hot plugging jitter, the receiving end may misidentify the start of communication and switch the communication state machine, which may lead to abnormal serial port communication. This embodiment can filter out the initial jitter, set the communication state machine to IDLE, and avoid mistransmitting the start signal. Therefore, at the start of the start bit, it is also possible to determine whether it is a real start bit through the data transmission method of the present application.

[0021] The determination of the sampling pulse corresponding to the first target data in step S12, corresponding to the reception of the first target data under one bit, will be collected and received by multiple sampling pulses. Conventional received data is generally received at the middle sampling point, considering that the middle sampling point is the most stable, similar to Inter-Integrated Circuit (I2C) data communication, and the sampling pulse at the middle moment of sampling is considered to be stable level data. However, in actual hot plugging scenarios, it is unreliable to only sample the middle sampling point once as the level of this data. It is possible to exactly collect an interference signal or an interference sampling pulse, resulting in an incorrect result. Therefore, the present application performs segmented processing on the sampling pulse corresponding to the first target data to select the multiple sampling pulses of the target segment after segmentation for state judgment.

[0022] Therefore, it is necessary to first determine the sampling pulse corresponding to the first target data. The determination process here is based on different clock cycles and can consider the characteristics of the clock signal, the stable time of the data signal, and the timing requirements. It is not limited here and can be set according to the actual situation.

[0023] In some embodiments, determining the sampling pulse corresponding to the first target data includes: Obtain the clock frequency of the logic device, the first-time data of clock signal transmission, and the serial port baud rate; Determine the second-time data of unit-bit data transmission according to the relationship between unit time and unit bit; Determine the count data of the logic device according to the second-time data and the first-time data; Determine the number of sampling pulses according to the count data and the preset number of interval times.

[0024] Specifically, obtain the clock frequency of the logic device. For example, the clock frequency of a Complex Programmable Logic Device (CPLD) is 50M, the first-time data of clock signal transmission is 20ns, that is, the clock period is 20ns. The serial port baud rate is the number of bits transmitted per second.

[0025] Determine the second-time data of unit-bit data transmission according to the relationship between unit time and unit bit. Combining the above example, the serial port baud rate is 115200bps. Converting 1s to 1000000000ns, it takes 1000000000 / 115200 = 8680ns to transmit one bit, that is, the second-time data.

[0026] Dividing the second-time data by the first-time data gives the count data of the logic device, which is 8680 / 20 = 434. That is, it takes 434 times to transmit the first target data corresponding to one bit.

[0027] Determine the sampling pulse data volume according to the count data and the preset number of interval times. Here, the preset number of interval times can be the number of times the CPLD is set in advance to collect data, so as to complete 16 samplings for one-bit sampling. Figure 4 This is a schematic diagram of sampling pulse acquisition provided by an embodiment of the present application. As Figure 4 shown, 16 times here is the number of sampling pulses.

[0028] The determination process of the sampling pulse number provided in this embodiment facilitates sampling at multiple subsequent positions, minimizing sampling errors caused by factors such as clock jitter, signal propagation delay, and unstable data signals. Also, to ensure that the data signal tends to a stable state during sampling and avoid the occurrence of metastable state problems. Here, the metastable state refers to the state where the data signal is not completely stable at the sampling moment, and at the same time, the anti-interference ability is improved.

[0029] The corresponding target sampling pulse obtained by segmenting the sampling pulse in step S12. To avoid the problem of interference signals caused by the sampling process of intermediate sampling points at one time, the present application processes the pulse signal in the multi-sampling stable state of the sampling pulse to increase the possibility of data sampling. Here, the segmentation process is for the target sampling pulse of the target segmentation that starts from the middle number of the sampling pulse and forms an intermediate segment by the convergence of the previous segment and the subsequent segment, so as to implement the sampling pulse for multiple acquisitions.

[0030] In step S13, the second target data is determined based on the sampling pulses for multiple acquisitions, and the interference of the second target data is filtered to achieve the validity of the second target data, which can be completed by the sampling processing method. Here, the sampling processing is based on the statistical processing of the level signals corresponding to the sampling pulses for multiple samplings. It can be the statistical processing of the types of level signals, or the neutralization of different level signals by averaging. It is not limited here and can be set according to the actual situation.

[0031] It should be noted that the second target data here is the data that needs to be transmitted correctly. The first target data in step S11 is only a general term for the data corresponding to this bit. It may be a correct signal without interference, or a signal affected by interference signals that needs to be filtered through steps S12 and S13 to be used as the transmitted data.

[0032] Through the embodiments of the present application, on the one hand, the first target data in bits is received through the serial port protocol to complete the reception of the data mixed with interference signals transmitted, the sampling pulse corresponding to the first target data is determined, and the corresponding target sampling pulse is obtained by segmenting the sampling pulse. Considering that in the conventional technical features, collecting data once as the validity of the high and low level signals of the final data corresponds to exactly collecting the high and low level signals corresponding to the interference signals, resulting in error information in the data collection process. The present application obtains multiple sampling pulses within a segment as the target sampling pulse by segmenting the sampling pulse, so as to improve the accuracy of collecting valid data. Considering that the data of the sampling pulse corresponding to the middle segment in the whole sampling pulse is the most stable, to avoid the interference signals caused by the unstable jitter corresponding to the hot plugging of the serial port. Here, the target sampling pulse obtained by segmenting can maintain data stability while avoiding a high possibility of doping with interference signals. On the other hand, the second target data is determined based on the target sampling pulse, and the validity of the data under this bit is determined, so as to filter out the interference signals under this bit and improve the anti-interference ability of the second target data under this bit. In the case of jitter during the hot plugging process, there is no need to power on and off the whole machine. By filtering the interference signals, the normal use of the serial port is maintained, enabling the data transmission to be completed without the user's awareness. Therefore, the technical problem that the normal use of the serial port cannot be maintained and even the whole machine crashes during the hot plugging process with jitter interference can be solved. By filtering each bit of data, that is, after obtaining the target sampling pulse by segmenting the sampling pulse of the first target data, the validity of the second target data is finally determined, resulting in the technical effect of improving the anti-interference ability of the data.

[0033] In some embodiments, segmenting the sampling pulse corresponding to the first target data to obtain the corresponding target sampling pulse includes: Determining the middle number corresponding to the number of sampling pulses; Based on the middle number, deriving and determining the target number before the middle number by the first preset number and after the middle number by the second preset number to obtain the target sampling pulse corresponding to the target number.

[0034] Such as Figure 4As shown, determine the intermediate number corresponding to the number of sampling pulses. How to determine the target number corresponding to the target segment is based on the intermediate number and deduced left and right. Considering that the sampling pulses at the moment of just changing and changing again correspond to unstable time periods, the data collected is also unstable, that is, the collected sampling pulses are invalid and can be directly ignored. The sampling pulse at the intermediate moment corresponding to the intermediate number is relatively stable. However, the data at this moment is not collected only once. Considering the possible existence of interference signals, it is necessary to collect multiple times, which corresponds to deducing the target number from the first preset number before the intermediate number and the second preset number after the intermediate number to obtain the target sampling pulse corresponding to the target number. The specific settings of the first preset number and the second preset number are not limited and can be set according to the actual situation or empirical values as long as the target sampling pulse can be collected.

[0035] Based on the intermediate number, this embodiment provides a method of deducing the target number from the first preset number before the intermediate number and the second preset number after the intermediate number to obtain the target sampling pulse corresponding to the target number. Considering that the surrounding sampling pulses corresponding to the intermediate number are in a stable state, it is more authoritative than only collecting the sampling pulse at the intermediate sampling point once. Through redundant sampling, even if a certain sampling point is affected by noise or interference, other sampling points can still provide accurate data. Multi-point sampling can effectively suppress burst noise and short-term interference. Even if a certain sampling point is interfered, the data of other sampling points can still be used for accurate judgment. It can reduce the misjudgment caused by the single-point sampling error, thereby significantly reducing the bit error rate. Through the comprehensive judgment of multiple sampling points, the original data can be restored more accurately.

[0036] In some embodiments, the determination process of the first preset number and the second preset number includes: Obtain the first initial preset number and the second initial preset number; wherein, both the first initial preset number and the second initial preset number are less than half of the number of sampling pulses; Based on the intermediate number, deduce the initial target number from the first initial preset number before the intermediate number and the second initial preset number after the intermediate number; Obtain the initial target sampling pulse corresponding to the initial target number to determine the initial second target data; Obtain the fourth target data transmitted through the serial port protocol corresponding to the non-plugging stage; If the initial second target data is the same as the fourth target data after comparison, determine that the first initial preset number and the second initial preset number correspond to the final first preset number and the second preset number; If the initial second target data is different from the fourth target data after comparison, perform signal power analysis processing on the initial second target data to obtain the corresponding power data; In the case where the power data exceeds the power threshold, the first initial preset number of times and / or the second initial preset number of times are respectively adjusted by reducing the step size to determine a new first initial preset number of times and / or a new second initial preset number of times, and return to the step of deriving and determining the initial target number of times based on the intermediate number of times, forward to the first initial preset number of times before the intermediate number of times and backward to the second initial preset number of times after the intermediate number of times, so as to determine a new initial second target data until the new initial second target data is the same as the new fourth target data.

[0037] Specifically, in this embodiment, considering the stability of the intermediate sampling pulse under one bit, therefore, both the first initial preset number of times and the second initial preset number of times are less than half of the number of sampling pulses to avoid collecting unstable sampling pulses.

[0038] Derive and determine the initial target number of times forward to the first initial preset number of times before the intermediate number of times and backward to the second initial preset number of times after the intermediate number of times to obtain the corresponding initial target sampling pulses, that is, determine the initial second target data. The determination process here is consistent with the determination process of step S13.

[0039] Obtain the fourth target data transmitted through the serial port protocol corresponding to the non-plugging and unplugging stage. Here, the fourth target data is clean data without being affected by the interference signal corresponding to hot plugging. Compare the initial second target data with the fourth target data. If they are the same, it is determined that the determination of the first initial preset number of times and the second initial preset number of times is relatively reliable. If they are different, it means that the initially determined first initial preset number of times and second initial preset number of times are not reliable. To further determine whether it is accurate, the initial second target data is subjected to signal power analysis processing to determine the power data. Here, mainly by statistically analyzing the characteristics of the received data to judge whether the corresponding interference signal has been filtered out. Here, it can be noise detection. In addition to the currently used signal power analysis, signal frequency analysis can also be used (analyze the frequency distribution of the signal through methods such as Fourier transform. If abnormal frequency components are found, it indicates the existence of interference) to determine whether there is an interference signal.

[0040] Currently, the signal power analysis method is adopted. In the case where the power data exceeds the power threshold, it means that there is still interference. Then, the first initial preset number of times and / or the second initial preset number of times need to be respectively adjusted by reducing the step size to determine a new first initial preset number of times and / or a new second initial preset number of times. Here, it should be noted that the step size can be reduced only corresponding to the first initial preset number of times, or corresponding to the second initial preset number of times, or both the first initial preset number of times and the second initial preset number of times can be reduced. Regarding the reduction of the step size, the reduction degrees corresponding to the two can be the same or different, which is not limited here and can be set according to the actual situation.

[0041] Return to the step of deriving and determining the initial target number of times based on the intermediate number of times, from the first initial preset number of times before the intermediate number of times to the second initial preset number of times after the intermediate number of times, to determine the new initial second target data until the comparison between the new initial second target data and the new fourth target data is the same.

[0042] In the determination process of the first preset number of times and the second preset number of times provided in this embodiment, compared with the setting of empirical values, the number of times corresponding to the multi-point sampling process has reliability and accuracy, improving the anti-interference ability of the data.

[0043] In some embodiments, determining the second target data based on the target sampling pulse includes: Obtain the level signal corresponding to the target sampling pulse; Perform sampling processing on the level signal to determine the final level signal; Use the data corresponding to the final level signal as the second target data.

[0044] Specifically, for the sampling processing of the level signal of the target sampling pulse here to determine the final level signal, the size of the level signal types can be statistically calculated by probability, or the final level signal can be statistically calculated by averaging, which is not limited here. Regarding the statistical method, it can be the quantity statistics corresponding to the level signal types, or it can be statistically calculated by a program method, which is not limited here.

[0045] The sampling processing method of the level signal of the target sampling pulse provided in this embodiment improves the accuracy and effectiveness of the data in the process of determining the final level signal.

[0046] In some embodiments, performing sampling processing on the level signal to determine the final level signal includes: Obtain the level signal types corresponding to the level signal; Statistically calculate the corresponding level quantity according to the level signal types; Determine the final level signal according to the level quantity corresponding to the level signal types.

[0047] Specifically, statistically calculating the corresponding level quantity based on the level signal types, the level signal is generally the first level signal and the second level signal, and there is no intermediate level signal here. One of the first level signal and the second level signal is a high level signal, and the other is a low level signal. Which one is specifically defined as the high level signal and which one is the low level signal can be set according to the actual situation.

[0048] Statistically calculate the level quantity of different level signal types to determine the final level signal. For example, if the number of high level signals is greater than the number of low level signals, then determine that the high level signal is valid, and convert it to the data "1" based on the high level signal as the second target data.

[0049] The method for counting the number of types of level signals provided in this embodiment is simple and easy to understand, which can improve the speed of data judgment while ensuring the validity of data.

[0050] In some embodiments, determining the final level signal according to the number of levels corresponding to the type of level signal includes: If the number of the first level signals is greater than the number of the second level signals, then determine the final level signal as the first level signal; If the number of the first level signals is less than the number of the second level signals, then determine the final level signal as the second level signal; If the number of the first level signals is equal to the number of the second level signals, then add 1 or subtract 1 to the first preset number of times or the second preset number of times to obtain an odd target number of times, and return to the step of obtaining the type of level signal corresponding to the level signal, and re-determine the final level signal.

[0051] Specifically, based on the comparison between the number of the first level signals and the number of the second level signals, the level signal with the largest number is determined as the final level signal. If the number of both level signals is the same, it means that the data of the current bit unit is not reliable, further indicating that the number of current target sampling pulses is even. It is necessary to add 1 or subtract 1 to the first preset number of times or the second preset number of times to obtain an odd target number of times, so as to re-determine the corresponding type of level signal and re-determine the final level signal.

[0052] In the process of comparing the number of the first level signals and the number of the second level signals provided in this embodiment, when the situation of equality occurs, the final level signal is further re-determined to prevent the occurrence of corresponding incorrect data determined by unreliable data and improve the reliability of data.

[0053] In other embodiments, determining the final level signal based on sampling processing of the level signal includes: Organize the level signal in binary form to obtain the corresponding target sub-data; Determine the first quantity corresponding to the third target data in the target sub-data; wherein, the third target data is one of the binary data; Obtain the reference data; wherein, the reference data is the data corresponding to the highest bit of the binary code being 1 and converted to decimal; Determine the final level signal according to the relationship between the first quantity and the reference data.

[0054] Specifically, it can be determined by a program in combination with a numerical comparator. The level signal is sorted in binary form to obtain the corresponding target sub-data. For example, the target number of times is the level signal corresponding to the sampling pulses from the 6th to the 11th time of acquisition, that is, the received binary target sub-data is 110011. Among them, the first quantity corresponding to the third target data, that is, the quantity of "1" or "0" appearing. Due to considering the validity of the data, the corresponding validity here is the quantity of "1" appearing. Combining the above example, it is 4. The reference data is based on binary coding (421 coding). When the highest bit is 1, the corresponding validity is (1XX). Therefore, when the highest bit of the binary coding is 1, the corresponding decimal is 4. That is to say, as long as the first quantity is greater than or equal to the reference data, the true value of the target sampling pulse is 1. When it is less than the reference data, its true value is 0, which corresponds to whether the final level signal is a high-level signal or a low-level signal.

[0055] For the setting of the comparator here, the first input terminal inputs the first quantity, the second input terminal inputs the reference data, and the output terminal is the final level signal.

[0056] While comparing through the setting of the comparator provided in this embodiment, combined with binary data conversion, only comparing the highest bit of the reference data can realize the judgment of sampling data and improve the simplicity of data judgment.

[0057] Figure 5 It is a schematic diagram of a serial port receiving module provided by an embodiment of the present application. As Figure 5 shown, the Rx receiving pin at the input end, that is, the serial data input (receiving signal); Clk is the 50Mhz clock input of the CPLD (clock signal); Baud_set, this serial port receiving module has flexible baud rate settings for various common serial ports (baud rate setting signal); Rst_n, this module has a power-on reset function to initialize the values of internal registers (reset signal); Rx_data[7:0], the serial 8-bit data finally received by the serial port receiving module (receiving data signal); The Rx_done flag is the flag of the final reception completion to ensure the complete reception of data (reception completion signal).

[0058] Furthermore, the present application also provides a server system, including a main board and a server management board; the main board and the server management board are connected by a serial port; The main board is used to execute the steps of the above data transmission method to complete the data transmission of the server management board during the hot plugging process of the server management board.

[0059] Combined Figure 1 seen, for the description of the features in the embodiment corresponding to the server system, reference can be made to the relevant description in the embodiment corresponding to the data transmission method, which will not be elaborated here one by one.

[0060] Through the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiments can be implemented by means of software plus a necessary general hardware platform. Of course, it can also be implemented by hardware, but in many cases, the former is a better implementation method.

[0061] The embodiment of the present application also provides a data transmission device. Figure 6 As shown in the structural schematic diagram of a data transmission device provided by an embodiment of the present application, Figure 6 as shown, the device includes: A receiving module 11, configured to receive first target data in units of bits through a serial port protocol; A first determination module 12, configured to determine a sampling pulse corresponding to the first target data, and perform segmentation processing on the sampling pulse corresponding to the first target data to obtain a corresponding target sampling pulse; A second determination module 13, configured to determine second target data based on the target sampling pulse as the first target data.

[0062] For the description of the features in the corresponding embodiment of the data transmission device, reference can be made to the relevant description of the corresponding embodiment of the data transmission method, which will not be elaborated here one by one.

[0063] The embodiment of the present application also provides an electronic device, including a memory and a processor. A computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any one of the above data transmission method embodiments.

[0064] The embodiment of the present application also provides a computer-readable storage medium, in which a computer program is stored. The computer program is configured to execute the steps in any one of the above data transmission method embodiments when running.

[0065] In an exemplary embodiment, the above computer-readable storage medium may include, but is not limited to: various media such as a USB flash drive, a read-only memory (ROM for short), a random access memory (RAM for short), a mobile hard disk, a magnetic disk, or an optical disc that can store a computer program.

[0066] The embodiment of the present application also provides a computer program product. The above computer program product includes a computer program, and when the computer program is executed by a processor, it implements the steps in any one of the above data transmission method embodiments.

[0067] Embodiments of the present application also provide another computer program product, including a non-volatile computer-readable storage medium storing a computer program, where the computer program, when executed by a processor, implements the steps in any of the above-described embodiments of the data transmission method.

[0068] Those skilled in the art can further realize that the units and algorithm steps of each example described in combination with the embodiments disclosed herein can be implemented by electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of each example have been generally described according to their functions in the above description. Whether these functions are executed in a hardware or software manner depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present application.

[0069] The above has introduced in detail a data transmission method, server system, device, and medium provided by the present application. Specific examples are used herein to elaborate on the principle and implementation manner of the present application. The description of the above embodiments is only used to help understand the method and its core idea of the present application. It should be noted that for those of ordinary skill in the art, without departing from the principle of the present application, several improvements and modifications can be made to the present application, and these improvements and modifications also fall within the protection scope of the present application.

Claims

1. A data transmission method, characterized in that, Including: Receiving first target data in bits through a serial port protocol; Determining a sampling pulse corresponding to the first target data, and performing segmented processing on the sampling pulse corresponding to the first target data to obtain a corresponding target sampling pulse; Determining second target data based on the target sampling pulse to be used as the first target data.

2. The data transmission method according to claim 1, wherein Determining the sampling pulse corresponding to the first target data includes: Obtaining the clock frequency of a logic device, first time data for clock signal transmission, and the serial port baud rate; Determining second time data for unit bit data transmission according to the relationship between unit time and unit bit; Determining the count data of the logic device according to the second time data and the first time data; Determining the number of sampling pulses according to the count data and a preset interval number.

3. The data transmission method according to claim 2, wherein Performing segmented processing on the sampling pulse corresponding to the first target data to obtain a corresponding target sampling pulse includes: Determining an intermediate number corresponding to the number of sampling pulses; Based on the intermediate number, deriving and determining a target number for the first preset number before the intermediate number and the second preset number after the intermediate number to obtain a target sampling pulse corresponding to the target number.

4. The data transmission method according to claim 3, wherein Determining second target data based on the target sampling pulse includes: Obtaining a level signal corresponding to the target sampling pulse; Performing sampling processing based on the level signal to determine a final level signal; Taking the data corresponding to the final level signal as the second target data.

5. The data transmission method according to claim 4, wherein Performing sampling processing based on the level signal to determine a final level signal includes: Obtaining the type of level signal corresponding to the level signal; Counting the corresponding level quantity according to the type of level signal; Determining the final level signal according to the level quantity corresponding to the type of level signal.

6. The data transmission method according to claim 4, wherein Performing sampling processing based on the level signal to determine a final level signal includes: Sorting the level signal in binary form to obtain a corresponding target sub-data; Determining a first quantity corresponding to third target data in the target sub-data; wherein, the third target data is one of the data of the binary data; Obtaining reference data; wherein, the reference data is data corresponding to the highest bit of the binary code being 1 and converted to decimal; Determining the final level signal according to the relationship between the first quantity and the reference data.

7. The data transmission method according to claim 3, wherein The determination process of the first preset number and the second preset number includes: Obtaining a first initial preset number and a second initial preset number; wherein, both the first initial preset number and the second initial preset number are less than half of the number of sampling pulses; Based on the intermediate number, deriving and determining an initial target number for the first initial preset number before the intermediate number and the second initial preset number after the intermediate number; Obtaining an initial target sampling pulse corresponding to the initial target number to determine initial second target data; Obtaining fourth target data transmitted through the serial port protocol corresponding to the non-plugged stage; If the initial second target data is the same as the fourth target data after comparison, determining that the first initial preset number and the second initial preset number correspond to the final first preset number and second preset number; If the initial second target data is different from the fourth target data, signal power analysis processing is performed on the initial second target data to obtain corresponding power data; In the case where the power data exceeds the power threshold, the first initial preset number of times and / or the second initial preset number of times are respectively adjusted by reducing the step size to determine a new first initial preset number of times and / or a new second initial preset number of times, and return to the step of deriving and determining the initial target number of times based on the intermediate number of times, forward to the first initial preset number of times before the intermediate number of times and backward to the second initial preset number of times to determine a new initial second target data until the new initial second target data is the same as the new fourth target data.

8. A server system, characterized in that, It includes a main board and a server management board; the main board and the server management board are connected by a serial port; The main board is configured to execute the steps of the data transmission method according to any one of claims 1 to 7 above to complete the data transmission of the server management board during the hot plugging process of the server management board.

9. An electronic device, characterized in that, It includes: A memory for storing a computer program; A processor for implementing the steps of the data transmission method according to any one of claims 1 to 7 when executing the computer program.

10. A computer-readable storage medium, characterized in that, A computer program is stored in the computer-readable storage medium, wherein the computer program, when executed by a processor, implements the steps of the data transmission method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • PSD (position sensitive detector) signal noise reduction method with high precision

    CN104215265A

  • Method for switching different carrier wave ratios in frequency-division synchronous modulation

    CN104852660A

  • Improved nonlinear pulse noise reduction method based on partial transmission sequence

    CN105978842A

  • Method for generating sampling pulse in digital asynchronous communication system

    CN114363125A

Cited By

  • Sampling point determination method and device, equipment, storage medium and program product

    CN121191465A

  • Sampling point determination method and device, equipment, storage medium and program product

    CN121191465B