A data transmission method, device, electronic device, storage medium and program

By dynamically calculating the number of integer valid bytes transmitted in the data transmission unit, the memory usage and latency issues caused by inconsistent bandwidth in the data transmission unit are resolved, achieving more efficient data transmission.

CN121567658BActive Publication Date: 2026-04-28CIX TECH (SUZHOU) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
CIX TECH (SUZHOU) CO LTD
Filing Date
2026-01-20
Publication Date
2026-04-28

AI Technical Summary

Technical Problem

When processing non-integer valid bytes, existing data transmission units cause inconsistent effective bandwidth of output data, which can easily lead to buffer storage space overflow or underrun problems, increasing memory requirements and transmission latency.

Method used

By dynamically calculating the number of integer valid bytes transmitted in the current data transmission unit, and then accumulating and truncating the current number of non-integer valid bytes transmitted and the remaining number of non-integer valid bytes transmitted in the previous data transmission unit, the number of integer valid bytes transmitted in the data transmission unit is optimized.

Benefits of technology

It improves the effective data utilization of the data transmission unit, reduces memory space occupation and transmission latency, and improves data transmission efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121567658B_ABST
    Figure CN121567658B_ABST
Patent Text Reader

Abstract

Embodiments of the present application disclose a data transmission method and device, electronic equipment, storage medium and program, wherein the method comprises: determining a current non-integer effective transmission byte number of a current data transmission unit and a remaining non-integer effective transmission byte number of a previous data transmission unit of the current data transmission unit; dynamically calculating a current integer effective transmission byte number of the current data transmission unit according to the current non-integer effective transmission byte number and the remaining non-integer effective transmission byte number of the previous data transmission unit; wherein the current data transmission unit transmits effective byte data based on the current integer effective transmission byte number. The technical scheme of the embodiments of the present application can improve the utilization rate of the current data transmission unit in transmitting effective data, thereby reducing the memory space occupied by the transmitted data and the data transmission delay, and improving the efficiency of data transmission.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of data transmission processing technology, and in particular to a data transmission method, apparatus, electronic device, storage medium and program. Background Technology

[0002] In data transmission applications, data needs to be packaged according to a standard-defined format and transmitted using basic data transmission units.

[0003] Because data transmission units need to consider various data support scenarios, such as different data formats, data transmission rates, and data volumes, it is difficult to keep the bandwidth of the input data stream consistent with the specified output transmission bandwidth of the PHY (Physical, port physical layer) layer. To ensure that the effective input data bandwidth of the transmitted data stream matches the effective output data bandwidth of the PHY, the data transmission unit may not contain only the number of bytes of valid data during data packetization. The remaining space is filled with placeholder data without actual content, primarily for protocol synchronization, padding, or testing purposes. Due to the diversity of supported data transmission volumes, data formats, and PHY-supported bandwidths, the number of bytes of valid transmission calculated for a single data transmission unit is often not an integer. In general hardware design, software will round up or down to handle the non-integer portion.

[0004] In the process of developing this invention, the inventors discovered the following defects in the prior art: When the fractional part of the effective transmission byte of a data transmission unit is directly discarded, the effective bandwidth of the output data is less than the input bandwidth. As the input data accumulates, if the buffer storage space inside the data receiver is set to a small depth, overflow is likely to occur, leading to data loss. In this case, a larger memory space is generally required at the data receiver to avoid overflow. When the fractional part of the effective transmission byte of the data transmission unit is rounded up, the effective bandwidth of the output is greater than the input bandwidth. This can cause the buffer storage space inside the data receiver to be prone to underrun. Therefore, a larger memory space is also required, and data must be read and packaged only after a certain amount of data has accumulated in the storage space. This design not only increases the size of the storage space but also increases the data transmission latency. Summary of the Invention

[0005] This invention provides a data transmission method, apparatus, electronic device, storage medium, and program that can improve the utilization rate of effective data transmission by the data transmission unit, thereby reducing the memory space occupied by transmitted data and data transmission latency, and improving data transmission efficiency.

[0006] According to one aspect of the present invention, a data transmission method is provided, comprising:

[0007] Determine the current number of non-integer valid bytes transmitted in the current data transmission unit and the remaining number of non-integer valid bytes transmitted in the previous data transmission unit of the current data transmission unit;

[0008] The current integer valid transmission byte count of the current data transmission unit is dynamically calculated based on the current non-integer valid transmission byte count and the remaining non-integer valid transmission byte count of the previous data transmission unit.

[0009] The current data transmission unit transmits valid byte data based on the current integer number of valid bytes to be transmitted.

[0010] According to another aspect of the present invention, a data transmission apparatus is provided, comprising:

[0011] The non-integer transmission byte count determination module is used to determine the current non-integer valid transmission byte count of the current data transmission unit and the remaining non-integer valid transmission byte count of the previous data transmission unit of the current data transmission unit;

[0012] The integer transmission byte count determination module is used to dynamically calculate the current integer transmission byte count of the current data transmission unit based on the current non-integer valid transmission byte count and the remaining non-integer valid transmission byte count of the previous data transmission unit;

[0013] The current data transmission unit transmits valid byte data based on the current integer number of valid bytes to be transmitted.

[0014] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising:

[0015] At least one processor; and

[0016] A memory communicatively connected to the at least one processor; wherein,

[0017] The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the data transmission method described in any embodiment of the present invention.

[0018] According to another aspect of the present invention, a computer-readable storage medium is provided, the computer-readable storage medium storing computer instructions for causing a processor to execute and implement the data transmission method described in any embodiment of the present invention.

[0019] According to another aspect of the present invention, a computer program product is also provided, comprising a computer program that, when executed by a processor, implements the data transmission method described in any embodiment of the present invention.

[0020] This invention, through determining the current non-integer valid transmission byte count of the current data transmission unit and the remaining non-integer valid transmission byte count of the previous data transmission unit, dynamically calculates the current integer valid transmission byte count of the current data transmission unit based on these two numbers. This allows the current data transmission unit to transmit valid byte data based on the current integer valid transmission byte count, solving problems such as high memory usage and large transmission latency in existing data transmission units. It improves the utilization rate of valid data transmission, thereby reducing memory space usage and transmission latency, and ultimately increasing data transmission efficiency.

[0021] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description

[0022] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0023] Figure 1 This is a schematic diagram of the structure of an existing TU transmission unit;

[0024] Figure 2 This is a flowchart of a data transmission method provided in Embodiment 1 of the present invention;

[0025] Figure 3 This is a schematic diagram illustrating the dynamic change of the number of valid integer bytes transmitted in a data transmission unit according to Embodiment 1 of the present invention;

[0026] Figure 4 This is a flowchart of a data transmission method provided in Embodiment 2 of the present invention;

[0027] Figure 5 This is a schematic diagram of image data transmission based on a TU transmission unit according to Embodiment 2 of the present invention;

[0028] Figure 6 This is a schematic diagram of a data transmission device provided in Embodiment 3 of the present invention;

[0029] Figure 7 This is a schematic diagram of the structure of an electronic device provided in Embodiment 4 of the present invention. Detailed Implementation

[0030] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.

[0031] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0032] In some typical application scenarios, DisplayPort (DP) will be used as an example to illustrate the above technical issues. DisplayPort is a high-speed standard interface for digital display technology defined by VESA (Video Electronics Standards Association), and is widely used in the PC (Personal Computer) and consumer electronics industries. It can support high-resolution and high-bandwidth video data stream transmission. DP transmission of video image data needs to be packaged according to the standard-defined format, and the basic image data transmission unit is a TU (Transfer Unit). The protocol defines the range of TU as 32 to 64 bytes. However, because it supports multiple frame rates, resolutions, and different image data formats, it is difficult to keep the data bandwidth of the input video stream consistent with the output transmission bandwidth specified by the PHY layer. In order to keep the effective input data bandwidth of the video stream consistent with the effective data bandwidth of the PHY output, when packaging TU data, the TU may not contain all effective pixel bytes; the remaining space will be filled with dummy data. Figure 1 This is a schematic diagram of the existing TU transmission unit. (Example) Figure 1 As shown, the valid data part in the TU structure can transmit valid video data, and the dummy data can be filled according to the transmission requirements. BE stands for Blanking End (a control mark symbol defined by the protocol), FS stands for Fill Start (fill start point), and FE stands for Fill End (fill end point).

[0033] Due to the diversity of supported video stream resolutions, pixel data formats, and PHY bandwidth, the calculated number of valid pixel bytes is often not an integer. In a specific example, suppose the video stream resolution is... The data format is RGB888, and the corresponding pixel clock is 148.5MHz. When this video stream is transmitted at a lane link rate of 8.1Gbps on the PHY of 4 lanes (a lane is an independent channel for data transmission; multiple lanes can transmit data in parallel to increase the total bandwidth; the link rate is the data transmission rate of a single lane), the number of pixels that can be effectively transmitted in each TU (64 bytes) can be calculated as follows: .

[0034] When the fractional part of the effective transmission bytes of the TU is directly discarded, the effective bandwidth of the output image data will be less than the input bandwidth. As the input image data accumulates, if the internal buffer storage space of the data receiver is set to a small depth, overflow is likely to occur, leading to image data loss. To support multiple image resolutions, a larger memory space is generally used to avoid overflow. When rounding up, the effective output bandwidth is greater than the input bandwidth of the image data. In this case, the internal buffer storage space is prone to underrun. Therefore, a larger memory space needs to be configured on the data receiver, and data should only be read and packaged after a certain amount of pixel data has accumulated in the storage space. This not only increases the storage space occupied by the transmitted data but also increases the transmission latency of the image data.

[0035] Example 1

[0036] Figure 2 This is a flowchart of a data transmission method provided in Embodiment 1 of the present invention. This embodiment is applicable to situations where valid byte data is transmitted based on a dynamically calculated integer number of valid bytes in the data transmission unit. This method can be executed by a data transmission device, which can be implemented in software and / or hardware, and is generally integrated into an electronic device. This electronic device can be a terminal device or a server device, as long as it can execute the data transmission method. The present invention does not limit the specific type of electronic device. Correspondingly, as... Figure 2 As shown, the method includes the following operations:

[0037] S210. Determine the current number of non-integer valid bytes transmitted in the current data transmission unit and the remaining number of non-integer valid bytes transmitted in the previous data transmission unit of the current data transmission unit.

[0038] The current data transmission unit can be the transmission unit that currently needs to transmit data. The current number of non-integer valid transmission bytes can be the value of the non-integer valid transmission bytes calculated by the current data transmission unit, i.e., the fractional part of the calculated valid transmission bytes for the current data transmission unit. The remaining number of non-integer valid transmission bytes of the previous data transmission unit can be understood as the value of the non-integer valid transmission bytes calculated by the previous data transmission unit, i.e., the fractional part remaining after the dynamic calculation of the valid transmission bytes of the previous data transmission unit for the current data transmission unit. The current number of non-integer valid transmission bytes and the remaining number of non-integer valid transmission bytes can be calculated from the actual number of non-integer valid transmission bytes, or they can be calculated after precision truncation of the actual number of non-integer valid transmission bytes. This embodiment of the invention does not limit this.

[0039] A data transmission unit can be a basic transmission unit used to transmit a certain data type. A segment of data to be transmitted can be transmitted in segments through multiple data transmission units. In this embodiment of the invention, the structure of the data transmission unit may include valid data, padding data, and control flags. Valid data is used to transmit actual data, while padding data is used to meet transmission bandwidth requirements; it contains no actual data content and can be used to fill in some or all of the actual data when additional padding is needed. Control flags can be used to mark or identify various types of data in the data transmission unit. In summary, the structure of the data transmission unit optimizes transmission efficiency while ensuring data integrity through control flags and padding data. The data transmission unit can be used to transmit various types of data, including but not limited to images, voice, and text, as long as data can be transmitted through the data transmission unit. This embodiment of the invention does not limit the data types that the data transmission unit can transmit.

[0040] For example, the data transmission unit can be a TU transmission unit in a DP video image transmission application scenario, used to transmit image data. Alternatively, the data transmission unit can also be a PCI Express (Peripheral Component Interconnect express, or PCIe for short, a high-speed serial computer expansion bus standard) TLP (Transaction Layer Packet) data packet. This embodiment of the invention does not limit the specific type of data transmission unit or the type of data transmission scenario in which it is specifically applied.

[0041] In this embodiment of the invention, if it is determined that the number of validly transmitted bytes calculated by a single data transmission unit is not an integer, then for the current data transmission unit, its current non-integer valid transmitted byte count and non-integer cumulative transmitted byte count can be determined based on the fractional part of its theoretically calculated valid transmitted byte count. The current non-integer valid transmitted byte count of the current data transmission unit can represent the maximum retained value of the fractional part of the effective transmitted byte count theoretically calculated based on a single data transmission unit, while the non-integer cumulative transmitted byte count of the current data transmission unit can represent the number of bytes temporarily discarded by the current data transmission unit for cumulative transmission by subsequent data transmission units. The maximum value of the non-integer valid transmitted byte count can be the fractional part of the theoretically calculated effective transmitted byte count of a single data transmission unit itself; correspondingly, the minimum value of the non-integer cumulative transmitted byte count can be 0. When the non-integer cumulative transmitted byte count of a data transmission unit is non-zero, the non-integer cumulative transmitted byte count of each data transmission unit can be temporarily discarded for transmission, and except for the first data transmission unit, other data transmission units can calculate the number of non-integer valid transmitted bytes that can be accumulated to the next data transmission unit, i.e., the remaining non-integer valid transmitted byte count, based on the non-integer valid transmitted byte count.

[0042] S220. Dynamically calculate the current integer valid transmission byte count of the current data transmission unit based on the current non-integer valid transmission byte count and the remaining non-integer valid transmission byte count of the previous data transmission unit; wherein, the current data transmission unit transmits valid byte data based on the current integer valid transmission byte count.

[0043] The current number of valid integer bytes to be transmitted can be the number of valid bytes that the current data transmission unit can transmit.

[0044] In this embodiment of the invention, during the data transmission process using the data transmission unit, the fractional part of the number of bytes transmitted by the data transmission unit is no longer directly rounded up or down to obtain a fixed number of valid data transmission bytes. Instead, the integer number of valid data transmission bytes for each data transmission unit is dynamically calculated based on the non-integer number of valid transmission bytes for each data transmission unit and the remaining non-integer number of valid transmission bytes for the preceding data transmission unit. That is, the integer number of valid data transmission bytes used by each data transmission unit is dynamically changed. Optionally, the remaining non-integer number of valid transmission bytes can be stored in hardware.

[0045] Specifically, for the current data transmission unit, the current integer valid transmission byte count can be dynamically calculated based on the current non-integer valid transmission byte count and the remaining non-integer valid transmission byte count of the previous data transmission unit. This calculation fully utilizes the current non-integer valid transmission byte count and the remaining non-integer valid transmission byte count of the previous data transmission unit for cumulative calculation. This allows the maximum retained fractional value of the valid transmission byte count of adjacent data transmission units to be concatenated with the accumulated fractional value. Once it is determined that a concatenated integer byte can be obtained, it is added to the valid data byte count. Therefore, the integer valid transmission byte count of different data transmission units is dynamically changing.

[0046] Optionally, the number of non-integer valid transmitted bytes of the data transmission unit can be directly accumulated based on the number of bytes transmitted, or the number of non-integer valid transmitted bytes of the data transmission unit can be truncated with precision before the accumulation calculation. The embodiments of the present invention do not limit the specific accumulation method of the number of non-integer valid transmitted bytes.

[0047] For example, assuming the number of non-integer valid bytes transmitted in a data transmission unit is 0.8, without precision truncation, the number of non-integer valid bytes transmitted in each data transmission unit can be 0.8. Accordingly, the first data transmission unit has 0.8 non-integer valid bytes transmitted, and the remaining number of non-integer valid bytes transmitted is 0.8; the second data transmission unit has 0.8 non-integer valid bytes transmitted, and the sum is 0.8 + 0.8 = 1.6, so the remaining number of non-integer valid bytes transmitted in the second data transmission unit is 0.6; the third data transmission unit has 0.8 non-integer valid bytes transmitted, and the sum is 0.8 + 0.6 = 1.4, so the remaining number of non-integer valid bytes transmitted in the second data transmission unit is 0.4, and so on. Since hardware registers can only store integer data and cannot store decimal data, the number of non-integer valid bytes transmitted can be stored in software when precision truncation is not performed.

[0048] For example, assuming the number of non-integer valid bytes transmitted by a data transmission unit is 0.8, if hardware registers are used to store information related to the number of non-integer valid bytes transmitted, then the number of non-integer valid bytes transmitted can be truncated to a higher precision. Thus, the number of non-integer valid bytes transmitted by each data transmission unit can be the precision-processed value. For example, when the precision processing method is 1 / 64, because... Therefore, the number of non-integer valid bytes transmitted in each data transmission unit can be 51, and the cumulative number of non-integer transmitted bytes is 0.2 (the temporarily discarded portion). Accordingly, the number of non-integer valid bytes transmitted in the first data transmission unit is registered as 51, and the remaining number of non-integer valid bytes transmitted is also registered as 51; the number of non-integer valid bytes transmitted in the second data transmission unit is registered as 51, and the cumulative result is... Therefore, the remaining non-integer valid transmission bytes of the second data transmission unit is 38; the value of the non-integer valid transmission bytes registered in the third data transmission unit is 51, and the cumulative result is... If so, the number of remaining non-integer valid bytes transmitted in the second data transmission unit is 25, and so on.

[0049] Figure 3 This is a schematic diagram illustrating the dynamic change of the number of valid integer bytes transmitted in a data transmission unit according to Embodiment 1 of the present invention. In a specific example, such as... Figure 3 As shown, taking the TU transmission unit in a DP video image transmission application scenario as an example, the maximum retained value of the decimal part of the effective transmitted bytes in the TU transmission unit, along with the sum of the remaining bytes from the decimal part, may be concatenated to obtain a complete integer byte. If it is determined that an integer byte can be obtained through concatenation, this integer byte can be added to the number of bytes of effective data. Therefore, the number of integer bytes of effective data in the TU can exhibit an irregular and dynamic change pattern of N, N+1, N, N, N+1... To simplify the explanation, Figure 3 Not all control markings for each TU transmission unit are shown.

[0050] The above technical solution accumulates the non-integer portion of the number of valid data bytes transmitted in each data transmission unit. When the accumulated non-integer portion exceeds the integer number of bytes transmitted in a certain data transmission unit, the hardware truncates the integer portion and automatically adds it to the integer valid transmission byte count of the next data transmission unit. It also stores the remaining non-integer valid transmission byte count for continued cyclical accumulation in subsequent data transmission units. This ensures that the integer valid transmission byte count in each data transmission unit dynamically changes based on the accumulated non-integer portion of the valid data byte count during data packet transmission. Consequently, the effective bandwidth of the data input and data transmission unit output remains almost consistent over a period of time, effectively solving the problems of high memory consumption and large transmission latency caused by existing data transmission units that directly use a fixed integer valid transmission byte count.

[0051] This invention, through determining the current non-integer valid transmission byte count of the current data transmission unit and the remaining non-integer valid transmission byte count of the previous data transmission unit, dynamically calculates the current integer valid transmission byte count of the current data transmission unit based on these two numbers. This allows the current data transmission unit to transmit valid byte data based on the current integer valid transmission byte count, solving problems such as high memory usage and large transmission latency in existing data transmission units. It improves the utilization rate of valid data transmission, thereby reducing memory space usage and transmission latency, and ultimately increasing data transmission efficiency.

[0052] Example 2

[0053] Figure 4 This is a flowchart of a data transmission method provided in Embodiment 2 of the present invention. This embodiment is based on the above embodiment and is further specified. In this embodiment, various specific optional implementation methods are given for determining the current non-integer valid transmission byte count of the current data transmission unit, determining the remaining non-integer valid transmission byte count of the previous data transmission unit, and dynamically calculating the current integer valid transmission byte count of the current data transmission unit. Accordingly, as shown... Figure 4 As shown, the method in this embodiment may include:

[0054] S410. Determine the target precision processing method of the data transmission unit, and determine the current non-integer valid transmission byte number of the current data transmission unit according to the target precision processing method of the data transmission unit.

[0055] Among them, the target precision processing method can be used to precisely extract the non-integer part of the effective transmitted data bytes of the data transmission unit.

[0056] In this embodiment of the invention, the number of non-integer valid transmitted bytes of the data transmission unit can be truncated with precision. It is understood that the precision processing method used by the data transmission unit may differ under different data transmission scenarios and different data transmission requirements. Therefore, it is first necessary to determine the target precision processing method adapted to the data transmission unit, so as to determine the current number of non-integer valid transmitted bytes and the non-integer cumulative transmitted bytes of the current data transmission unit based on the target precision processing method of the data transmission unit.

[0057] For example, assuming the number of non-integer valid bytes transmitted by the data transmission unit is 0.8, if the precision processing method adapted to this data transmission unit is determined to be 1 / 64, since... Then the number of non-integer valid bytes transmitted in each data transmission unit can be 51, and the number of non-integer cumulative bytes transmitted is 0.2.

[0058] In an optional embodiment of the present invention, determining the target precision processing method of the data transmission unit may include: determining the associated influencing factors of precision processing; wherein, the associated influencing factors of precision processing may include the transmission bandwidth of the data transmission output terminal and the associated data volume of the transmission data stream; and determining the target precision processing method of the data transmission unit based on the values ​​of the associated influencing factors of precision processing.

[0059] Among them, the associated data volume of the transmitted data stream can reflect the data volume-related attributes of the transmitted data stream.

[0060] For example, when the data transmission unit is used to transmit video data, the associated data volume of the transmitted data stream can be the resolution of the transmitted data stream. When the data transmission unit is used to transmit text data, the associated data volume of the transmitted data stream can be the transmission rate of the transmitted data stream.

[0061] Optionally, a comprehensive analysis can be conducted on the correlation between two precision processing factors in the data transmission scenario involving the data transmission unit: the transmission bandwidth at the data transmission output end and the data volume of the transmitted data stream. This analysis determines the target precision processing method suitable for the data transmission unit. Specifically, the smaller the transmission bandwidth at the data transmission output end, the smaller the value used for precision processing; conversely, the larger the associated data volume of the transmitted data stream, the smaller the value used for precision processing. It can be understood that a smaller value used for precision processing results in a smaller number of non-integer cumulative transmitted bytes, meaning less data is temporarily discarded by each data transmission unit, effectively avoiding significant data overflow.

[0062] In an optional embodiment of the present invention, determining the target precision processing method of the data transmission unit based on the values ​​of the associated influencing factors of the precision processing may include: determining a first alternative precision processing method based on the transmission bandwidth of the data transmission output terminal; determining a second alternative precision processing method based on the associated data volume of the transmitted data stream; and selecting the precision processing method with the smaller value from the first alternative precision processing method and the second alternative precision processing method as the target precision processing method of the data transmission unit.

[0063] The first alternative accuracy processing method can be an accuracy processing method determined based on the transmission bandwidth of the data transmission output end. The second alternative accuracy processing method can be an accuracy processing method determined based on the associated data volume of the transmitted data stream.

[0064] Specifically, the transmission bandwidth factor at the data transmission output end in the data transmission application scenario can be analyzed to determine the first alternative precision processing method suitable for the transmission bandwidth factor. The associated data volume of the transmitted data stream involved in the data transmission requirements can also be analyzed to determine the second alternative precision processing method suitable for the associated data volume factor of the transmitted data stream. If the first and second alternative precision processing methods are the same, either the first or second alternative precision processing method can be used as the target precision processing method for the data transmission unit. If the first and second alternative precision processing methods are different, the alternative precision processing method with the smallest precision processing value can be selected as the target precision processing method for the data transmission unit. For example, when the first alternative precision processing method uses a precision truncation of 1 / 64 and the second alternative precision processing method uses a precision truncation of 1 / 128, the second alternative precision processing method can be selected as the target precision processing method for the data transmission unit. The advantage of this setting is that it can adapt to the adaptation requirements of all related influencing factors of precision processing, thereby improving the adaptability and accuracy of precision extraction processing.

[0065] Specifically, the number of remaining non-integer valid transmission bytes in the second-to-last data transmission unit of the current data transmission unit and the number of non-integer valid transmission bytes in the previous data transmission unit can be summed to obtain the cumulative result of non-integer transmission bytes. The non-integer value corresponding to the target precision processing method can then be extracted from the calculated cumulative result of non-integer transmission bytes as the number of remaining non-integer valid transmission bytes in the previous data transmission unit of the current data transmission unit.

[0066] After precision truncation, the accumulated result of non-integer transmitted bytes is also represented as an integer stored in a register. Therefore, the non-integer value corresponding to the target precision processing method extracted from the accumulated result of non-integer transmitted bytes is also represented as an integer stored in a register. For example, assuming the target precision processing method is 1 / 64, the accumulated result of non-integer transmitted bytes is... The specific method for extracting the non-integer value corresponding to the target precision processing method from the accumulated result of non-integer transmitted bytes is as follows: That is, the non-integer value corresponding to the target precision processing method is 25.

[0067] S420. Calculate the sum of the current number of non-integer valid transmitted bytes and the remaining number of non-integer valid transmitted bytes of the previous data transmission unit.

[0068] S430. Determine if the summation value is less than 1. If yes, execute S440; otherwise, execute S450.

[0069] S440. Determine the current number of valid integer bytes transmitted by the current data transmission unit as a first integer value.

[0070] S450. Determine the current integer number of valid transmitted bytes of the current data transmission unit as a second integer value.

[0071] The first integer value can be the integer part of the theoretically calculated effective number of bytes transmitted for a single data transmission unit. The second integer value can be 1 greater than the first integer value.

[0072] Specifically, when dynamically calculating the current integer valid transmission byte count of the current data transmission unit based on the current non-integer valid transmission byte count and the remaining non-integer valid transmission byte count of the previous data transmission unit, the sum of the current non-integer valid transmission byte count and the remaining non-integer valid transmission byte count of the previous data transmission unit can be calculated. If the sum of the current non-integer valid transmission byte count and the remaining non-integer valid transmission byte count of the previous data transmission unit is less than 1, it indicates that the accumulated value of the non-integer valid transmission bytes has not reached an integer. In this case, the sum can be used as the remaining non-integer valid transmission byte count of the current data transmission unit for further accumulation calculation, and the current integer valid transmission byte count of the current data transmission unit can be determined as the initially set first integer value. This first integer value can be the value obtained by rounding down the theoretically calculated effective transmission byte count for a single data transmission unit. If the sum of the current non-integer valid transmission byte count and the remaining non-integer valid transmission byte count of the previous data transmission unit is greater than or equal to 1, it indicates that the accumulated value of the non-integer valid transmission bytes has reached an integer. In this case, 1 can be added to the first integer value to obtain a second integer value, which is used as the current integer valid transmission byte count of the current data transmission unit. If the summation value equals 1, then the remaining number of valid non-integer bytes transmitted in the current data transmission unit is 0. If the summation value is greater than 1, then the remaining number of valid non-integer bytes transmitted in the current data transmission unit is the difference between the summation value and 1.

[0073] S460. Dynamically calculate the remaining non-integer valid transmission bytes of the current data transmission unit based on the current non-integer valid transmission bytes and the remaining non-integer valid transmission bytes of the previous data transmission unit.

[0074] S470. Dynamically calculate the number of integer valid bytes to be transmitted in the next data transmission unit based on the remaining non-integer valid bytes to be transmitted in the current data transmission unit and the number of non-integer valid bytes to be transmitted in the next data transmission unit.

[0075] After configuring the current integer valid number of bytes to be transmitted in the current data transmission unit, the next data transmission unit can be updated to the current data transmission unit, and the current integer valid number of bytes to be transmitted in the current data transmission unit can be calculated cyclically using the above data transmission method until it is determined that the current data transmission unit is updated to the last data transmission unit for transmitting data.

[0076] Specifically, the current number of non-integer valid transmitted bytes in the current data transmission unit and the remaining number of non-integer valid transmitted bytes in the previous data transmission unit can be summed to obtain the cumulative result of non-integer transmitted bytes. The non-integer value corresponding to the target precision processing method is then extracted from this cumulative result as the remaining number of non-integer valid transmitted bytes in the current data transmission unit. Further, the remaining number of non-integer valid transmitted bytes in the current data transmission unit and the non-integer valid transmitted bytes in the next data transmission unit are summed. If the summation value is less than 1, the integer valid transmitted bytes in the next data transmission unit are determined as the first integer value; if the summation value is greater than or equal to 1, the integer valid transmitted bytes in the next data transmission unit are determined as the second integer value, and so on.

[0077] Understandably, because a precision processing method is used to truncate the effective number of transmitted bytes, both the current non-integer effective number of transmitted bytes and the remaining non-integer effective number of transmitted bytes from the previous data transmission unit are represented as integers stored in registers. When calculating the non-integer effective number of transmitted bytes and the remaining non-integer effective number of transmitted bytes for each data transmission unit, it's not a simple matter of directly adding the values ​​stored in the non-integer portion; rather, the precision truncation method needs to be considered for conversion. If non-integer values ​​were stored in software, the stored values ​​could be directly added together.

[0078] Figure 5 This is a schematic diagram of image data transmission based on a TU transmission unit according to Embodiment 2 of the present invention. In a specific example, such as Figure 5 As shown, taking the TU transmission unit in a DP video image transmission application scenario as an example, assuming the TU length is set to 64 bytes, the number of pixels that can be effectively transmitted in each TU is calculated to be 8.8 bytes. Therefore, the number of bytes that can be effectively transmitted for a single TU is not an integer; its decimal part is 0.8 bytes. This decimal part 0.8 indicates that each TU (64 bytes) still needs to transmit 0.8 pixel bytes. Therefore, the basic integer effective transmission byte count for each TU can be 8. If processed with 1 / 64 precision... If the number is 51, the hardware will register the number 51 as the number of valid non-integer bytes to be transmitted, and discard 0.2, that is, 0.2 will be used as the number of cumulative non-integer bytes to be transmitted.

[0079] Correspondingly, such as Figure 5 As shown, the number of valid integer bytes transmitted in both TU0 and TU1 is 8 bytes, because the number of pixels in the non-integer part does not reach an integer value at this point. After accumulating two TUs, the cumulative result of the non-integer bytes transmitted in the third TU, TU2, is: Therefore, when sending the third TU (TU2), the hardware adjusts the number of valid pixel bytes, i.e., the number of integer valid transmission bytes, to N+1=9 bytes, and registers the remaining number of non-integer valid transmission bytes: 38. After TU2 is transmitted, the sum of the number of non-integer valid transmission bytes (51) of the fourth TU (TU3) and the remaining number of non-integer valid transmission bytes (38) of the previous data transmission unit (TU2) reaches an integer value again. Therefore, when sending the 4th TU (TU3), the hardware adjusts the number of valid pixel bytes (i.e., the integer valid transmission bytes) to N+1=9 bytes, and registers the remaining non-integer valid transmission bytes: 25. This continues, with TU4 having 9 valid pixel bytes (i.e., the integer valid transmission bytes), and TU5 having 8. Based on the sum and rounding of the current non-integer valid transmission bytes in each data transmission unit and the remaining non-integer valid transmission bytes in the preceding data transmission unit, the number of valid pixel bytes in subsequent TUs switches between 8 and 9, except for the last TU. It's understandable that the number of valid pixel bytes (i.e., the integer valid transmission bytes) in the last TU is less than or equal to 9, and the number of valid pixel bytes in the last TU could potentially be 1.

[0080] In the example above, the non-integer portion of the valid data transmitted by the data transmission unit is truncated to a precision of 1 / 64. This truncation method is software-configurable and can be set according to different non-integer values. When a line of pixel data transmission is complete, the maximum cumulative calculated result of the non-integer portion of the valid transmitted bytes truncated and discarded by each TU in the above example is... It's less than a byte, so almost no additional memory space is needed for storage. However, when the non-integer part of the effective transmitted bytes, 0.8, is directly discarded, the calculated cumulative value is: This means that at least 144 bytes of built-in memory is required. This calculation only considers the data storage space for one lane; in DP applications, typically four lanes transmit simultaneously, so the minimum required storage space is: The above example is just one video transmission scenario. In practical applications, it is necessary to consider supporting various higher resolutions, so the memory storage space required in actual designs is much larger. Therefore, it is evident that the data transmission method provided in this embodiment of the invention can significantly reduce the additional storage space and area resources required for data transmission.

[0081] The above data transmission method uses precision truncation to accumulate and round the non-integer parts of the valid transmitted bytes in the data transmission unit, which can dynamically adjust the number of integer valid transmitted bytes in each transmission unit. This effectively reduces memory storage space (area resources) and data transmission latency, and improves the utilization rate of valid data in the data transmission unit.

[0082] It should be noted that all information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for display, data used for analysis, etc.) involved in this disclosure are information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data comply with the relevant laws, regulations and standards of the relevant regions.

[0083] It should be noted that any arrangement or combination of the technical features in the above embodiments also falls within the protection scope of this invention.

[0084] Example 3

[0085] Figure 6 This is a schematic diagram of a data transmission device provided in Embodiment 3 of the present invention, as shown below. Figure 6 As shown, the device includes: a non-integer byte count determination module 610 and an integer byte count determination module 620, wherein:

[0086] The non-integer transmission byte count determination module 610 is used to determine the current non-integer valid transmission byte count of the current data transmission unit and the remaining non-integer valid transmission byte count of the previous data transmission unit of the current data transmission unit;

[0087] The integer transmission byte count determination module 620 is used to dynamically calculate the current integer transmission byte count of the current data transmission unit based on the current non-integer valid transmission byte count and the remaining non-integer valid transmission byte count of the previous data transmission unit;

[0088] The current data transmission unit transmits valid byte data based on the current integer number of valid bytes to be transmitted.

[0089] This invention, through determining the current non-integer valid transmission byte count of the current data transmission unit and the remaining non-integer valid transmission byte count of the previous data transmission unit, dynamically calculates the current integer valid transmission byte count of the current data transmission unit based on these two numbers. This allows the current data transmission unit to transmit valid byte data based on the current integer valid transmission byte count, solving problems such as high memory usage and large transmission latency in existing data transmission units. It improves the utilization rate of valid data transmission, thereby reducing memory space usage and transmission latency, and ultimately increasing data transmission efficiency.

[0090] Optionally, the non-integer transmission byte number determination module 610 is further configured to: determine the target precision processing method of the data transmission unit; and determine the current non-integer valid transmission byte number of the current data transmission unit according to the target precision processing method of the data transmission unit.

[0091] Optionally, the non-integer transmission byte number determination module 610 is further configured to: determine the associated influencing factors of precision processing; wherein, the associated influencing factors of precision processing include the transmission bandwidth of the data transmission output end and the associated data volume of the transmission data stream; and determine the target precision processing mode of the data transmission unit based on the values ​​of the associated influencing factors of precision processing.

[0092] Optionally, the non-integer transmission byte number determination module 610 is further configured to: determine a first alternative precision processing method based on the transmission bandwidth of the data transmission output terminal; determine a second alternative precision processing method based on the associated data volume of the transmission data stream; and select the precision processing method with the smaller value from the first alternative precision processing method and the second alternative precision processing method as the target precision processing method of the data transmission unit.

[0093] Optionally, the integer transmission byte count determination module 620 is further configured to: calculate the sum of the current non-integer valid transmission byte count and the remaining non-integer valid transmission byte count of the previous data transmission unit; if the sum is less than 1, determine the current integer valid transmission byte count of the current data transmission unit as a first integer value; if the sum is greater than or equal to 1, determine the current integer valid transmission byte count of the current data transmission unit as a second integer value; wherein the second integer value is 1 greater than the first integer value.

[0094] Optionally, the non-integer transmission byte count determination module 610 is further configured to: dynamically calculate the remaining non-integer transmission byte count of the current data transmission unit based on the current non-integer valid transmission byte count and the remaining non-integer valid transmission byte count of the previous data transmission unit; the integer transmission byte count determination module 620 is further configured to: dynamically calculate the integer valid transmission byte count of the next data transmission unit based on the remaining non-integer valid transmission byte count of the current data transmission unit and the non-integer valid transmission byte count of the next data transmission unit.

[0095] The aforementioned data transmission device can execute the data transmission method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects for executing the method. Technical details not described in detail in this embodiment can be found in the data transmission method provided in any embodiment of the present invention.

[0096] Since the data transmission device described above is capable of executing the data transmission method in the embodiments of the present invention, those skilled in the art can understand the specific implementation and various variations of the data transmission device in this embodiment based on the data transmission method described in the embodiments of the present invention. Therefore, how the data transmission device implements the data transmission method in the embodiments of the present invention will not be described in detail here. Any device used by those skilled in the art to implement the data transmission method in the embodiments of the present invention falls within the scope of protection of this application.

[0097] Example 4

[0098] Figure 7 A schematic diagram of an electronic device 10, which can be used to implement embodiments of the present invention, is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.

[0099] like Figure 7As shown, the electronic device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12 or a random access memory (RAM) 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 can perform various appropriate actions and processes based on the computer program stored in the ROM 12 or loaded from storage unit 18 into the RAM 13. The RAM 13 can also store various programs and data required for the operation of the electronic device 10. The processor 11, ROM 12, and RAM 13 are interconnected via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.

[0100] Multiple components in electronic device 10 are connected to I / O interface 15, including: input unit 16, such as keyboard, mouse, etc.; output unit 17, such as various types of displays, speakers, etc.; storage unit 18, such as disk, optical disk, etc.; and communication unit 19, such as network card, modem, wireless transceiver, etc. Communication unit 19 allows electronic device 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0101] Processor 11 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, digital signal processors (DSPs), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as data transfer methods.

[0102] Optionally, the data transmission method may include: determining the current number of non-integer valid transmission bytes of the current data transmission unit and the remaining number of non-integer valid transmission bytes of the previous data transmission unit; dynamically calculating the current number of integer valid transmission bytes of the current data transmission unit based on the current number of non-integer valid transmission bytes and the remaining number of non-integer valid transmission bytes of the previous data transmission unit; wherein the current data transmission unit transmits valid byte data based on the current number of integer valid transmission bytes.

[0103] In some embodiments, the data transfer method may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on electronic device 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the data transfer method described above may be performed. Alternatively, in other embodiments, processor 11 may be configured to perform the data transfer method by any other suitable means (e.g., by means of firmware).

[0104] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.

[0105] Computer programs used to implement the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.

[0106] In the context of this invention, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.

[0107] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0108] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or middleware components (e.g., application servers), or frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.

[0109] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability.

[0110] It should be understood that the various forms of processes shown above can be used to reorder, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this disclosure can be achieved, and this is not limited herein.

[0111] The specific embodiments described above do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.

Claims

1. A data transmission method, characterized in that, include: Determine the current number of non-integer valid bytes transmitted in the current data transmission unit and the remaining number of non-integer valid bytes transmitted in the previous data transmission unit of the current data transmission unit; The current integer valid transmission byte count of the current data transmission unit is dynamically calculated based on the current non-integer valid transmission byte count and the remaining non-integer valid transmission byte count of the previous data transmission unit. The current data transmission unit transmits valid byte data based on the current integer number of valid bytes. Determining the current non-integer valid transmission byte count of the current data transmission unit includes: The target precision processing method for the data transmission unit is determined; wherein, the target precision processing method is used to truncate the non-integer part of the effective transmitted data byte count of the data transmission unit. The number of non-integer valid bytes transmitted by the current data transmission unit is determined according to the target precision processing method of the data transmission unit.

2. The data transmission method according to claim 1, characterized in that, The method for determining the target precision of the data transmission unit includes: Identify the relevant influencing factors of precision processing; wherein, the relevant influencing factors of precision processing include the transmission bandwidth of the data transmission output end and the relevant data volume of the transmission data stream; The target accuracy processing method of the data transmission unit is determined based on the values ​​of the associated influencing factors of the accuracy processing.

3. The data transmission method according to claim 2, characterized in that, The target precision processing method of the data transmission unit is determined based on the values ​​of the associated influencing factors of the precision processing, including: The first alternative precision processing method is determined based on the transmission bandwidth of the data transmission output terminal; The second alternative precision processing method is determined based on the associated data volume of the transmitted data stream; The precision processing method with the smaller value is selected from the first and second alternative precision processing methods and used as the target precision processing method for the data transmission unit.

4. The data transmission method according to any one of claims 1-3, characterized in that, The current integer valid transmission byte count of the current data transmission unit is dynamically calculated based on the current non-integer valid transmission byte count and the remaining non-integer valid transmission byte count of the previous data transmission unit, including: Calculate the sum of the current number of non-integer valid transmitted bytes and the remaining number of non-integer valid transmitted bytes in the previous data transmission unit; If the summation value is determined to be less than 1, the current integer valid transmission byte count of the current data transmission unit is determined to be a first integer value; If the summation value is determined to be greater than or equal to 1, the current integer number of valid bytes transmitted by the current data transmission unit is determined to be a second integer value; The second integer value is 1 greater than the first integer value.

5. The data transmission method according to any one of claims 1-3, characterized in that, After dynamically calculating the current integer valid transmission byte count of the current data transmission unit based on the current non-integer valid transmission byte count and the remaining non-integer valid transmission byte count of the previous data transmission unit, the method further includes: The remaining non-integer valid transmission byte count of the current data transmission unit is dynamically calculated based on the current non-integer valid transmission byte count and the remaining non-integer valid transmission byte count of the previous data transmission unit. The integer valid transmission byte count of the next data transmission unit is dynamically calculated based on the remaining non-integer valid transmission byte count of the current data transmission unit and the non-integer valid transmission byte count of the next data transmission unit.

6. A data transmission device, characterized in that, include: The non-integer transmission byte count determination module is used to determine the current non-integer valid transmission byte count of the current data transmission unit and the remaining non-integer valid transmission byte count of the previous data transmission unit of the current data transmission unit; The integer transmission byte count determination module is used to dynamically calculate the current integer transmission byte count of the current data transmission unit based on the current non-integer valid transmission byte count and the remaining non-integer valid transmission byte count of the previous data transmission unit; The current data transmission unit transmits valid byte data based on the current integer number of valid bytes. The non-integer transmission byte count determination module is further configured to: determine the target precision processing method of the data transmission unit; wherein, the target precision processing method is used to truncate the non-integer part of the effective transmission data byte count of the data transmission unit; and determine the current non-integer effective transmission byte count of the current data transmission unit according to the target precision processing method of the data transmission unit.

7. An electronic device, characterized in that, The electronic device includes: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that is executed by the at least one processor to enable the at least one processor to perform the data transmission method according to any one of claims 1-5.

8. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that cause a processor to execute and implement the data transmission method according to any one of claims 1-5.

9. A computer program product, characterized in that, Includes a computer program / instruction, wherein the computer program / instruction, when executed by a processor, implements the data transmission method according to any one of claims 1-5.