[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

WO2022193098A1 - 数据传输方法、通信设备及系统 - Google Patents

数据传输方法、通信设备及系统 Download PDF

Info

Publication number
WO2022193098A1
WO2022193098A1 PCT/CN2021/080868 CN2021080868W WO2022193098A1 WO 2022193098 A1 WO2022193098 A1 WO 2022193098A1 CN 2021080868 W CN2021080868 W CN 2021080868W WO 2022193098 A1 WO2022193098 A1 WO 2022193098A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
encoding
target
fec
mode
Prior art date
Application number
PCT/CN2021/080868
Other languages
English (en)
French (fr)
Inventor
糟永明
王晶
杜思清
宦卿
张佳页
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to CN202180095359.XA priority Critical patent/CN117083820A/zh
Priority to PCT/CN2021/080868 priority patent/WO2022193098A1/zh
Publication of WO2022193098A1 publication Critical patent/WO2022193098A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Definitions

  • the present application relates to the field of communication technologies, and in particular, to a data transmission method, communication device and system.
  • the rate of data transmission between communication devices is getting higher and higher.
  • the communication device needs to perform error correction on the data in the process of data transmission.
  • the sender (a certain communication device) and the receiver (another communication device) of the data perform error correction on the data based on forward error correction (Forward Error Correction, FEC) encoding and decoding.
  • FEC Forward Error Correction
  • the sender will use FEC coding to encode the data, and then send the encoded data to the receiver.
  • the receiving end will use FEC decoding to decode and correct the data.
  • the present application provides a data transmission method, a communication device and a system, which can solve the problems of high delay and encoding overhead in encoding and decoding data by using FEC encoding and decoding, and the power consumption of the communication device is large.
  • the technical solution is as follows:
  • a data transmission method is provided, and the data transmission method can be performed by a first device, and the first device supports a variety of forward error correction (Forward Error Correction, FEC) encoding methods, each of the FEC All coding methods have corresponding parameter conditions.
  • the method includes: when the state parameter of the channel between the first device and the second device satisfies the parameter condition corresponding to the target FEC encoding mode, the first device encodes the target data by using the target FEC encoding mode to obtain the first encoded data , and send the first encoded data to the second device through the channel.
  • FEC Forward Error Correction
  • the target FEC encoding mode is one FEC encoding mode among multiple FEC encoding modes supported by the first device, and the first encoded data encoded by using the target FEC encoding mode carries: for indicating the target FEC encoding way identification.
  • the first device supports multiple FEC coding modes, and for each FEC coding mode in the multiple FEC coding modes, the first device can use the channel state parameter and the FEC coding mode according to the channel state parameter. According to the parameter conditions corresponding to the mode, this FEC encoding mode is selectively used to encode the target data. Therefore, the first device may use the FEC encoding mode for encoding, or the first device may not use the FEC encoding mode for encoding. In this way, it is avoided that the first device always uses this FEC encoding method to encode, resulting in high data transmission delay and high power consumption of the communication device.
  • the first device since the first encoded data carries an identifier for indicating the target FEC encoding mode, the first device does not need to send a message to the second device to notify the second device before sending the first encoded data to the second device
  • the adopted encoding mode includes the target FEC encoding mode, so the communication complexity between the first device and the second device is reduced.
  • the second device no matter what encoding method the first device adopts for encoding, the second device only needs to use the corresponding decoding method to decode according to the identifier used to indicate the encoding method carried in the received encoded data. The way is simpler.
  • the first device when the state parameter satisfies the parameter conditions corresponding to at least two FEC encoding methods, the first device will use the at least two FEC encoding methods to encode different target data respectively, and send all the encoded data. to the second device. For example, the first device divides the data to be encoded into at least two pieces of target data, and the at least two pieces of target data are in one-to-one correspondence with the at least two FEC encoding modes. After that, the first device encodes a corresponding piece of target data by using each of the at least two FEC encoding modes.
  • the first device may use the multiple FEC encoding methods for encoding, the first device may also use some of the multiple FEC encoding methods for encoding, and the first device may not use the multiple FEC encoding methods. Encoding with FEC encoding. In this way, it is avoided that the first device always uses the multiple FEC encoding methods to encode, resulting in high data transmission delay and high power consumption of the communication device.
  • the second device supports the decoding mode corresponding to the FEC encoding mode, and the FEC encoding mode and the decoding mode corresponding to the FEC encoding mode can implement error correction for multiple bits in the data. , therefore, the reliability of data transmission is high.
  • a target encoding mode may be selected from a variety of FEC encoding modes to encode the target data according to the state parameters of the channel.
  • the target FEC encoding method used in the encoding can adapt to the state of the channel, so that different FEC encoding methods can be used to correct errors for the data according to different channel states, thereby weakening the errors in the process of channel transmission of data. .
  • the codeword lengths of the multiple FEC encoding modes have a linear relationship.
  • the multiple FEC coding circuits corresponding to the multiple FEC coding modes may multiplex at least part of the structure, and the multiple FEC coding circuits corresponding to the multiple FEC coding modes The circuit may also reuse at least part of the structure, thereby reducing the size of the first device and the second device.
  • the first device may not only support the above-mentioned multiple FEC encoding modes, but also support auxiliary encoding modes other than the multiple FEC encoding modes, and the second device may also support decoding modes corresponding to the auxiliary encoding modes.
  • the first device may also use an auxiliary encoding mode to perform encoding
  • the second device may use a decoding mode corresponding to the auxiliary encoding mode to perform decoding.
  • the adoption of the FEC encoding method among the foregoing multiple FEC encoding methods is conditional, and the use of the auxiliary encoding method may be unconditional.
  • the auxiliary coding modes may include one coding mode or multiple coding modes.
  • the auxiliary encoding method includes: at least one of a Cyclic Redundancy Check (CRC) encoding method, an Error Correction Code (Error Correction Code, ECC) encoding method, and other FEC encoding methods, the other FEC encoding methods It is different from the above-mentioned various FEC encoding methods.
  • CRC Cyclic Redundancy Check
  • ECC Error Correction Code
  • the first device may use the auxiliary encoding method to encode the initial data to obtain the target data.
  • the first device may further encode the first encoded data in the auxiliary encoding manner to obtain the second encoded data ; At this time, the first device may send the second encoded data to the second device through the channel, so as to send the first encoded data to the second device through the channel.
  • the method further includes: the first device encodes the auxiliary data by using the auxiliary encoding method to obtain third encoded data, and then sends the second device through the channel to the second device. third encoded data.
  • both the target data and the auxiliary data are data to be coded, the difference is that the target data is coded using the above-mentioned target FEC coding method, and the auxiliary data is coded using the auxiliary coding method.
  • both the target data and the auxiliary data are data to be coded, the difference is that the target data is coded using the above-mentioned target FEC coding method, and the auxiliary data is coded using the auxiliary coding method.
  • the first device uses the target FEC encoding method to encode a part of data (eg, target data), and uses an auxiliary encoding method to encode another part of data (eg, auxiliary data).
  • a part of data eg, target data
  • an auxiliary encoding method to encode another part of data (eg, auxiliary data).
  • the transmission reliability of the part of the data is relatively high.
  • the data transmission delay caused by the auxiliary encoding method is smaller than the data transmission delay caused by the FEC encoding method, and the equipment power consumption caused by the auxiliary encoding method is also smaller than the equipment power consumption caused by the FEC encoding method, the other part
  • the time delay and device power consumption caused by data encoding are small.
  • the state parameters include: at least one of bit error rate, packet loss rate, insertion loss, return loss, channel noise, baud rate and data transmission rate.
  • the state parameter may also have other implementation manners, which are not limited in this application.
  • the first device may send test data to the second device through the channel, and at least some of the status parameters use to reflect the transmission of the test data.
  • the test data may be service data carrying service information, or may not be service data (for example, test data without service information transmitted before service data transmission), which is not limited in this application.
  • the status parameter is used to indicate the transmission quality
  • the parameter condition corresponding to the FEC encoding mode is used to indicate that the transmission quality is within the quality range corresponding to the FEC encoding mode.
  • the quality ranges corresponding to different FEC coding modes may be the same or different. There may or may not be an intersection between these quality ranges, which is not limited in this application.
  • the error correction capability of the FEC coding mode and the parameter condition corresponding to the FEC coding mode the error correction capability and the quality range indicated by the parameter condition.
  • the quality in the negative correlation.
  • the state parameter can satisfy the parameter condition corresponding to the FEC encoding method with higher error correction capability.
  • the target FEC coding mode is the FEC coding mode with higher error correction capability, so the data transmission quality can be effectively improved.
  • the state parameter can satisfy the parameter conditions corresponding to the FEC encoding mode with low error correction capability.
  • the target FEC encoding method is the FEC encoding method with low error correction ability. Since the error correction ability of the FEC encoding method is positively related to the power consumption of the communication equipment caused by the FEC encoding method, it can ensure high data transmission quality. In the case of reducing the power consumption of communication equipment.
  • the above state parameter may be determined independently by the first device, or may be determined with the assistance of the second device, which is not limited in this application.
  • the first device may receive the at least part of the parameters sent by the second device according to the test data, and then The state parameter is determined based on the at least part of the parameters.
  • the first device may receive the reference information of the at least part of the parameters sent by the second device according to the test data , and then obtain the state parameter according to the reference information.
  • the method further includes: receiving notification information sent by the second device through the channel, where the notification information is used to indicate Whether the state parameter satisfies the parameter condition corresponding to the target FEC coding mode.
  • the first device may use the target FEC encoding method to encode the target data when the notification information is used to indicate that the state parameter satisfies the parameter condition corresponding to the target FEC encoding method.
  • another data transmission method is provided, and the data transmission method can be used for a second device, the second device supports decoding modes corresponding to multiple FEC encoding modes, and each of the FEC encoding modes has a corresponding parameter conditions.
  • the method includes: receiving first encoded data sent by the first device through a channel between the first device and the second device; The first encoded data is decoded and error corrected by using a decoding mode corresponding to the target FEC encoding mode.
  • the target FEC encoding mode is one FEC encoding mode among the multiple FEC encoding modes, and the first encoded data carries: an identifier used to indicate the target FEC encoding mode.
  • the above-mentioned first encoded data is data obtained by the first device using the target FEC encoding mode when the state parameter of the channel between the first device and the second device meets the parameter conditions corresponding to the target FEC encoding mode.
  • the codeword lengths of the multiple FEC encoding modes have a linear relationship.
  • the multiple FEC coding circuits corresponding to the multiple FEC coding modes may multiplex at least part of the structure, and the multiple FEC coding circuits corresponding to the multiple FEC coding modes The circuit may also reuse at least part of the structure, thereby reducing the size of the first device and the second device.
  • the second device may not only support decoding modes corresponding to the above-mentioned multiple FEC encoding modes, but also support decoding modes corresponding to auxiliary encoding modes other than the multiple FEC encoding modes.
  • This application does not limit the types of auxiliary coding modes, and the auxiliary coding modes may include one coding mode or multiple coding modes.
  • the auxiliary encoding method includes: at least one of a cyclic redundancy check (Cyclic Redundancy Check, CRC) encoding method and an error correction code (Error Correction Code, ECC) encoding method, and the auxiliary encoding method may also include a variety of the above-mentioned encoding methods. Other FEC encoding methods with different FEC encoding methods.
  • the second device may use the decoding mode corresponding to the auxiliary encoding mode to Decode the target data.
  • the target data is: data obtained by decoding and error-correcting the first encoded data by using a decoding mode corresponding to the target FEC encoding mode.
  • the second device receiving the first encoded data sent by the first device includes: the second device receiving the second encoded data sent by the first device, where the second encoded data is The first device encodes the data obtained by encoding the first encoded data in the auxiliary encoding manner. Before decoding and error correcting the first encoded data by using the decoding mode corresponding to the target FEC encoding mode, the second device may use the decoding mode corresponding to the auxiliary encoding mode to decode the second encoded data , to obtain the first encoded data.
  • the method further includes: the second device receives the third encoded data sent by the first device through the channel, and then uses the decoding mode corresponding to the auxiliary encoding mode to The third encoded data is decoded.
  • the third encoded data is data obtained by encoding auxiliary data in the auxiliary encoding manner.
  • the state parameters include: at least one of bit error rate, packet loss rate, insertion loss, return loss, channel noise, baud rate and data transmission rate.
  • the state parameter may also have other implementation manners, which are not limited in this application.
  • the second device may also receive test data sent by the first device through the channel, and at least some of the parameters in the state parameters are used for Reflect the transmission of the test data.
  • the test data may be service data carrying service information, or may not be service data (for example, test data without service information transmitted before service data transmission), which is not limited in this application.
  • the status parameter is used to indicate the transmission quality
  • the parameter condition corresponding to the FEC encoding mode is used to indicate that the transmission quality is within the quality range corresponding to the FEC encoding mode.
  • the quality ranges corresponding to different FEC coding modes may be the same or different. There may or may not be an intersection between these quality ranges, which is not limited in this application.
  • the error correction capability of the FEC coding mode and the parameter condition corresponding to the FEC coding mode the error correction capability and the quality range indicated by the parameter condition.
  • the quality in the negative correlation.
  • the state parameter can satisfy the parameter condition corresponding to the FEC encoding method with higher error correction capability.
  • the target FEC coding mode is the FEC coding mode with higher error correction capability, so the data transmission quality can be effectively improved.
  • the state parameter can satisfy the parameter conditions corresponding to the FEC encoding mode with low error correction capability.
  • the target FEC encoding method is the FEC encoding method with low error correction ability. Since the error correction ability of the FEC encoding method is positively related to the power consumption of the communication equipment caused by the FEC encoding method, it can ensure high data transmission quality. In the case of reducing the power consumption of communication equipment.
  • the above state parameter may be determined independently by the first device, or may be determined with the assistance of the second device, which is not limited in this application.
  • the second device may further determine the at least part of the parameters according to the test data, and then send the test data to the first device.
  • the at least some of the parameters are sent. In this way, the first device can acquire the at least part of the parameters.
  • the second device may further determine the reference information of the at least part of the parameters according to the test data, and report to the The first device sends the reference information. In this way, the first device can determine at least some of the above parameters according to the reference information.
  • the second device may also determine, according to the state parameter, whether the state parameter satisfies the parameter condition corresponding to the target FEC encoding mode;
  • the second device may send notification information to the first device through the channel, where the notification information is used to indicate whether the state parameter satisfies the parameter condition corresponding to the target FEC coding mode.
  • a communication device configured to be a first device, the first device supports multiple FEC coding modes, and each of the FEC coding modes has corresponding parameter conditions.
  • the communication device includes: an encoding module and a sending module.
  • the encoding module is configured to encode the target data by the first device using the target FEC encoding method when the state parameter of the channel between the first device and the second device satisfies the parameter conditions corresponding to the target FEC encoding method to obtain the first encoding data.
  • the sending module is configured to send the first encoded data to the second device through the channel.
  • the target FEC encoding mode is one FEC encoding mode among multiple FEC encoding modes supported by the first device, and the first encoded data encoded by using the target FEC encoding mode carries: for indicating the target FEC encoding way identification.
  • the codeword lengths of the multiple FEC encoding modes have a linear relationship.
  • the multiple FEC coding circuits corresponding to the multiple FEC coding modes may multiplex at least part of the structure, and the multiple FEC coding circuits corresponding to the multiple FEC coding modes The circuit may also reuse at least part of the structure, thereby reducing the size of the first device and the second device.
  • the first device may not only support the above-mentioned multiple FEC encoding modes, but also support auxiliary encoding modes other than the multiple FEC encoding modes, and the second device may also support decoding modes corresponding to the auxiliary encoding modes.
  • the first device may also use an auxiliary encoding mode to perform encoding
  • the second device may use a decoding mode corresponding to the auxiliary encoding mode to perform decoding.
  • This application does not limit the types of auxiliary coding modes, and the auxiliary coding modes may include one coding mode or multiple coding modes.
  • the auxiliary encoding method includes at least one of a CRC encoding method and an ECC encoding method, and the auxiliary encoding method may also include other FEC encoding methods different from the above-mentioned multiple FEC encoding methods.
  • the encoding module is further configured to encode the initial data in the auxiliary encoding mode to obtain the target data before encoding the target data in the target FEC encoding mode.
  • the encoding module is further configured to encode the first encoded data by using the auxiliary encoding method after encoding the target data by using the target FEC encoding method, to obtain the first encoded data.
  • Second coded data at this time, the above-mentioned sending module may send the second coded data to the second device through the channel, so as to realize sending the first coded data to the second device through the channel.
  • the encoding module is further configured to encode the auxiliary data in the auxiliary encoding manner to obtain third encoded data.
  • the above-mentioned sending module is further configured to send the third encoded data to the second device through the channel.
  • the state parameters include: at least one of bit error rate, packet loss rate, insertion loss, return loss, channel noise, baud rate and data transmission rate.
  • the state parameter may also have other implementation manners, which are not limited in this application.
  • the above-mentioned sending module is further configured to send test data to the second device through the channel before the first device encodes the target data in the target FEC encoding manner, at least part of the state parameters.
  • the parameter is used to reflect the transmission situation of the test data.
  • the test data may be service data carrying service information, or may not be service data (for example, test data without service information transmitted before service data transmission), which is not limited in this application.
  • the status parameter is used to indicate the transmission quality
  • the parameter condition corresponding to the FEC encoding mode is used to indicate that the transmission quality is within the quality range corresponding to the FEC encoding mode.
  • the quality ranges corresponding to different FEC coding modes may be the same or different. There may or may not be an intersection between these quality ranges, which is not limited in this application.
  • the error correction capability of the FEC coding mode and the parameter condition corresponding to the FEC coding mode for the error correction capability of the FEC coding mode and the parameter condition corresponding to the FEC coding mode: the error correction capability and the quality range indicated by the parameter condition.
  • the quality in the negative correlation for the error correction capability of the FEC coding mode and the parameter condition corresponding to the FEC coding mode: the error correction capability and the quality range indicated by the parameter condition.
  • the above state parameter may be determined independently by the first device, or may be determined with the assistance of the second device, which is not limited in this application.
  • the first device may further include a receiving module and a processing module.
  • the receiving module may be configured to receive the at least part of the parameters sent by the second device according to the test data after the sending module sends the test data to the second device through the channel.
  • the processing module is configured to determine the state parameter according to the at least part of the parameters.
  • the first device may further include a receiving module and a processing module.
  • the receiving module may be configured to receive the reference information of the at least part of the parameters sent by the second device according to the test data after the sending module sends the test data to the second device through the channel.
  • the processing module is configured to obtain the state parameter according to the reference information.
  • the first device may further include a receiving module.
  • the receiving module is configured to receive notification information sent by the second device through the channel before the encoding module uses the target FEC encoding method to encode the target data, where the notification information is used to indicate whether the state parameter satisfies the requirements. Describe the parameter conditions corresponding to the target FEC coding mode.
  • the encoding module may use the target FEC encoding method to encode the target data when the notification information is used to indicate that the state parameter satisfies the parameter condition corresponding to the target FEC encoding method.
  • another communication device may be a second device, the second device supports decoding modes corresponding to multiple FEC encoding modes, and each of the FEC encoding modes has corresponding parameter conditions .
  • the communication device includes: a receiving module and a decoding module.
  • the receiving module is configured to receive the first encoded data sent by the first device through the channel between the first device and the second device; the decoding module is configured to indicate the target FEC according to the data carried by the first encoded data
  • the identifier of the encoding mode, and the decoding mode corresponding to the target FEC encoding mode is used to decode and error correct the first encoded data.
  • the target FEC encoding mode is one FEC encoding mode among the multiple FEC encoding modes
  • the first encoded data carries: an identifier used to indicate the target FEC encoding mode.
  • the above-mentioned first encoded data is data obtained by the first device using the target FEC encoding mode when the state parameter of the channel between the first device and the second device meets the parameter conditions corresponding to the target FEC encoding mode.
  • the codeword lengths of the multiple FEC encoding modes have a linear relationship.
  • the multiple FEC coding circuits corresponding to the multiple FEC coding modes may multiplex at least part of the structure, and the multiple FEC coding circuits corresponding to the multiple FEC coding modes The circuit may also reuse at least part of the structure, thereby reducing the size of the first device and the second device.
  • the second device may not only support decoding modes corresponding to the above-mentioned multiple FEC encoding modes, but also support decoding modes corresponding to auxiliary encoding modes other than the multiple FEC encoding modes.
  • This application does not limit the types of auxiliary coding modes, and the auxiliary coding modes may include one coding mode or multiple coding modes.
  • the auxiliary encoding method includes: at least one of a cyclic redundancy check (Cyclic Redundancy Check, CRC) encoding method and an error correction code (Error Correction Code, ECC) encoding method, and the auxiliary encoding method may also include a variety of the above-mentioned encoding methods. Other FEC encoding methods with different FEC encoding methods.
  • the decoding module after the decoding module uses the decoding mode corresponding to the target FEC encoding mode to decode and correct the errors of the first encoded data, it can use the decoding mode corresponding to the auxiliary encoding mode to decode the first encoded data.
  • the target data is: data obtained by decoding and error-correcting the first encoded data by using a decoding mode corresponding to the target FEC encoding mode.
  • the receiving module may receive the first encoded data by receiving the second encoded data sent by the first device.
  • the second encoded data is data obtained by encoding the first encoded data by the first device using the auxiliary encoding manner.
  • the decoding module may use the decoding mode corresponding to the auxiliary encoding mode to decode the second encoded data before decoding and error correcting the first encoded data by using the decoding mode corresponding to the target FEC encoding mode, The first encoded data is obtained.
  • the above receiving module is further configured to receive third encoded data sent by the first device through the channel.
  • the above-mentioned decoding module is further configured to decode the third encoded data by using a decoding mode corresponding to the auxiliary encoding mode.
  • the third encoded data is data encoded by using the auxiliary encoding method.
  • the state parameters include: at least one of bit error rate, packet loss rate, insertion loss, return loss, channel noise, baud rate and data transmission rate.
  • the state parameter may also have other implementation manners, which are not limited in this application.
  • the receiving module may also receive test data sent by the first device through the channel, and at least some of the parameters in the state parameters are used for Reflect the transmission of the test data.
  • the test data may be service data carrying service information, or may not be service data (for example, test data without service information transmitted before service data transmission), which is not limited in this application.
  • the status parameter is used to indicate the transmission quality
  • the parameter condition corresponding to the FEC encoding mode is used to indicate that the transmission quality is within the quality range corresponding to the FEC encoding mode.
  • the quality ranges corresponding to different FEC coding modes may be the same or different. There may or may not be an intersection between these quality ranges, which is not limited in this application.
  • the error correction capability of the FEC coding mode and the parameter condition corresponding to the FEC coding mode the error correction capability and the quality range indicated by the parameter condition.
  • the quality in the negative correlation.
  • the state parameter can satisfy the parameter condition corresponding to the FEC encoding method with higher error correction capability.
  • the target FEC coding mode is the FEC coding mode with higher error correction capability, so the data transmission quality can be effectively improved.
  • the state parameter can satisfy the parameter conditions corresponding to the FEC encoding mode with low error correction capability.
  • the target FEC encoding method is the FEC encoding method with low error correction ability. Since the error correction ability of the FEC encoding method is positively related to the power consumption of the communication equipment caused by the FEC encoding method, it can ensure high data transmission quality. In the case of reducing the power consumption of communication equipment.
  • the above state parameter may be determined independently by the first device, or may be determined with the assistance of the second device, which is not limited in this application.
  • the communication device further includes a processing module and a sending module.
  • the processing module is configured to, after the receiving module receives the test data sent by the first device through the channel, determine the at least part of the parameters according to the test data.
  • the sending module is configured to send the at least part of the parameters to the first device. In this way, the first device can acquire the at least part of the parameters.
  • the communication device further includes a processing module and a sending module.
  • the processing module is configured to, after receiving the test data sent by the first device through the channel, determine the reference information of the at least part of the parameters according to the test data.
  • the sending module is configured to send the reference information to the first device. In this way, the first device can determine at least some of the above parameters according to the reference information.
  • the communication device further includes a processing module and a sending module, and the processing module is configured to determine whether the state parameter satisfies the target according to the state parameter before the receiving module receives the first encoded data sent by the first device.
  • the sending module may be configured to send notification information to the first device through the channel, where the notification information is used to indicate whether the state parameter satisfies the parameter condition corresponding to the target FEC coding mode.
  • a communication device in a fifth aspect, includes: a processor and a memory, where a program is stored in the memory; the processor is configured to call the program stored in the memory, so that the communication device A data transmission method as described in any design of the first aspect is performed.
  • a communication device comprising: a processor and a memory, where a program is stored in the memory; the processor is configured to call the program stored in the memory, so that the communication device A data transmission method as described in any one of the designs of the second aspect is performed.
  • a communication system in a seventh aspect, includes a first device and a second device.
  • the first device is: the communication device according to any one of the designs in the third aspect; the second device is: the communication device according to any one of the designs in the fourth aspect.
  • the first device is: the communication device according to any one of the designs in the fifth aspect; the second device is: the communication device according to any one of the designs in the sixth aspect.
  • a computer storage medium is provided, and a computer program is stored in the storage medium;
  • the computer program runs on a computer, the computer executes the data transmission method described in any design of the first aspect
  • the computer program when the computer program is run on a computer, the computer executes the data transmission method described in any design of the second aspect.
  • a computer program product containing instructions, when the computer program product is run on a communication device, the communication device is made to execute the data transmission method described in any one of the designs of the first aspect; or, when the computer program product is executed When running on the communication device, the communication device is caused to execute the data transmission method described in any design of the second aspect;
  • FIG. 1 is a schematic structural diagram of a communication system according to an embodiment of the present application.
  • FIG. 2 is a schematic structural diagram of a communication device according to an embodiment of the present application.
  • FIG. 3 is a flowchart of a data transmission method provided by an embodiment of the present application.
  • FIG. 4 is a schematic diagram of a channel provided by an embodiment of the present application.
  • FIG. 5 is a schematic structural diagram of a message provided by an embodiment of the present application.
  • FIG. 6 is a schematic diagram of a process for obtaining first encoded data according to an embodiment of the present application.
  • FIG. 8 is a schematic structural diagram of the first initial data provided by an embodiment of the present application.
  • FIG. 9 is a schematic structural diagram of a first target data provided by an embodiment of the present application.
  • FIG. 10 is a schematic structural diagram of a second encoded data provided by an embodiment of the application.
  • FIG. 11 is a flowchart of another data transmission method provided by an embodiment of the present application.
  • FIG. 12 is a schematic structural diagram of a second type of initial data provided by an embodiment of the present application.
  • FIG. 13 is a schematic structural diagram of a second type of target data provided by an embodiment of the present application.
  • FIG. 14 is a schematic structural diagram of a third type of initial data provided by an embodiment of the present application.
  • 15 is a schematic structural diagram of a third type of target data provided by an embodiment of the present application.
  • 16 is a schematic structural diagram of a fourth type of target data provided by an embodiment of the present application.
  • 17 is a schematic structural diagram of a fifth type of target data provided by an embodiment of the present application.
  • FIG. 18 is a block diagram of a communication device provided by an embodiment of the present application.
  • FIG. 19 is a block diagram of another communication device provided by an embodiment of the present application.
  • FIG. 1 is a schematic structural diagram of a communication system provided by an embodiment of the present application.
  • the communication system 0 may include multiple communication devices (such as a first device 01 and a second device 02 in FIG. 1 ).
  • each communication device in the communication system can be used as a data sender or as a data receiver.
  • the first device 01 is used as the data sender
  • the second device 02 is used as the data receiver as an example. .
  • the communication device may be any device capable of transmitting data, such as a server, a server cluster, a gateway, a router, a mobile phone, a tablet computer, a desktop computer, a security device, a smart screen, or an interface unit in an electronic device.
  • the first device is an interface unit between a system on chip (System on Chip, SOC) in the electronic device and a peripheral device
  • the second device is the peripheral device.
  • SOC System on Chip
  • the communication device may include: a processing unit; the processing unit is configured to couple with the storage unit, and after reading the instructions in the storage unit, execute the method performed by the communication device as described in the embodiments of the present application according to the instructions.
  • the number of processing units may be multiple, and the storage unit coupled with the processing unit may be independent of the processing unit or the communication device, or may be within the processing unit or the communication device.
  • the storage unit may be a physically independent unit, or may be a storage space on a cloud server or a network hard disk.
  • the communication device 200 includes: a processing unit 202 and a storage unit 201, wherein the storage unit 201 is used to store a program, and the processing unit 202 is used to call the program stored in the storage unit 201, so that the communication device executes a corresponding method or function.
  • the communication device 200 may further include at least one communication interface 203 and at least one communication bus 204 .
  • the storage unit 201 , the processing unit 202 and the communication interface 203 are communicatively connected through a communication bus 204 .
  • the communication interface 203 is used to communicate with other devices under the control of the processing unit 202 , and the processing unit 202 can call the program stored in the storage unit 201 through the communication bus 204 .
  • Communication devices in a communication system have a channel between them, and these communication devices can communicate (eg, transmit data) through the channel.
  • the channel may be a wired network-based channel or a wireless network-based channel.
  • the wired network may include but is not limited to: Universal Serial Bus (English: Universal Serial Bus; Abbreviation: USB)
  • the wireless network may include but not limited to: Wireless Fidelity (English: Wireless Fidelity; Abbreviation: WIFI), Bluetooth, Infrared, Zigbee (English: Zigbee) or data, etc.
  • the amount of data transmitted between communication devices is increasing, and the data transmission rate is also getting higher and higher.
  • the functions of the communication equipment to collect images are becoming more and more powerful, the resolution of the images collected by the communication equipment is getting higher and higher (such as the resolution called 4K, the resolution called 8K), and the data of the images with higher resolution is getting higher and higher.
  • the image needs to be transmitted, the amount of data transmitted between the communication devices will be large.
  • communication equipment also needs to transmit large amounts of data quickly.
  • the data transmitting end (a certain communication device) and the receiving end (another communication device) perform error correction on the data based on the FEC encoding and decoding method.
  • the FEC encoding and decoding method to encode and decode data will introduce a large delay and encoding overhead, and will increase the power consumption of the communication device.
  • An embodiment of the present application provides a data transmission method, in which a communication device supports multiple FEC encoding and decoding methods.
  • the communication device can determine whether to use each FEC encoding and decoding mode to encode and decode the data according to the state parameters of the channel. Therefore, the selection of multiple FEC encoding and decoding methods is realized, the probability of using multiple FEC encoding and decoding methods to encode and decode data is reduced, and the high delay of data transmission, high encoding overhead and high power consumption of communication equipment are reduced. high probability.
  • FIG. 3 is a flowchart of a data transmission method provided by an embodiment of the present application, and the data transmission method may be used for the first device and the second device in the communication system shown in FIG. 1 .
  • the data transmission method may include:
  • Step 101 The first device sends test data to the second device through the channel between the first device and the second device.
  • the first device Before transmitting data to the second device, the first device can first send test data to the second device, so that the first device and the second device can base on the data. The test data is used to test the channel.
  • the first device may also send a notification message to the second device, where the notification message is used to notify the second device that the first device is about to send the test data, and the second device may receive the test according to the notification message data.
  • data may continue to be transmitted between the first device and the second device, and when the first device does not need to send data to the second device, the first device may send data to the second device.
  • the second device sends idle data, and the second device does not need to process the idle data after receiving the idle data.
  • the first device may send idle data to the second device, and the second device does not need to process the idle data.
  • test data may be business data that carries business information, or of course it may not be business data (for example, test data that does not carry business information transmitted before the business data is transmitted), and this embodiment of the present application does not make any provision for this. limited.
  • Step 102 The second device determines a state parameter of the channel according to the test data, where the state parameter is used to reflect the transmission situation of the test data.
  • the state parameter may include at least one of parameters such as a bit error rate, a packet loss rate, a baud rate, and a data transmission rate, which is not limited in this embodiment of the present application.
  • the second device may determine the state parameter of the channel according to the transmission situation of the test data. For example, assuming that the state parameter includes the packet loss rate, the first device and the second device pre-agreed on the total number of data packets included in the test data (for example, the total number is indicated in the above notification message), the second device can The number of data packets contained in the test data is divided by the total number to obtain the packet loss rate.
  • Step 103 The second device sends the state parameter to the first device through the channel.
  • the second device may send the state parameter to the first device through the channel, so that the first device can determine whether to use each of the multiple FEC encoding modes for encoding according to the state parameter.
  • the first device continues to send idle data to the second device after sending the test data to the second device, then in the process of the second device sending the status parameter to the first device in step 103, the first device The idle data is also continuously sent to the second device.
  • the channel through which the second device sends the state parameter to the first device is the channel through which the first device sends data to the second device.
  • the channel through which the second device sends the status parameter to the first device may not be the channel through which the first device sends data to the second device.
  • there are multiple channels between the first device and the second device for the first device to transmit data to the second device and at least one clock channel is also provided between the first device and the second device, and a serial A line clock signal (Serial Clock, SCL) channel and a serial data signal (Serial Data, SDA) channel, the second device can send status parameters to the first device through any channel, the SCL channel or the SDA channel.
  • the second device may directly send the state parameter to the first device, or may carry the state parameter in a message and send it to the first device.
  • the structure of the message may be as shown in FIG. 5 , and the message may include: prefix (Premble), data synchronization information (Sync), control/data information ( C/D), equalization code stream (Equalization_Code_Stream), pseudo-random binary sequence (PRBS), pseudo-random binary sequence of bit error rate (PRBS for BER), IDLE (idle bit).
  • the bit error rate may be included in the pseudorandom binary sequence of the bit error rate.
  • Step 104 The first device determines whether the state parameter satisfies the parameter conditions corresponding to the target FEC encoding mode among the multiple FEC encoding modes, and the target FEC encoding mode is one FEC encoding mode among the multiple FEC encoding modes.
  • Step 105 is executed when the state parameter satisfies the parameter conditions corresponding to the target FEC encoding mode among the multiple FEC encoding modes.
  • Each of the multiple FEC encoding methods has corresponding parameter conditions.
  • the first device needs to determine whether the state parameter satisfies the parameter conditions corresponding to the target FEC encoding method in step 104, and if the state parameter satisfies the target FEC encoding method When the corresponding parameter conditions are met, step 105 may be performed to use the target FEC encoding mode for encoding. However, when the state parameter does not meet the parameter conditions corresponding to the target FEC encoding mode, the first device does not need to use the target FEC encoding mode for encoding. In this case, the first device can directly send the target data to be transmitted to the second device.
  • the target FEC encoding mode is one FEC encoding mode among multiple FEC encoding modes.
  • the first device can refer to step 104 to determine whether The FEC encoding method is used for encoding, and details are not described herein in this embodiment of the present application.
  • the first device can support multiple FEC encoding modes, and each FEC encoding mode has corresponding parameter conditions.
  • the first device can determine whether the state parameter satisfies the parameter conditions corresponding to each FEC encoding mode, and when the state parameter satisfies the parameter conditions corresponding to a certain FEC encoding mode, the first device can determine that the FEC encoding mode can be used for transmission. the target data to encode.
  • the first device may determine that the target data cannot be encoded by this FEC encoding mode. Therefore, the situation of high data transmission delay and high power consumption of the first device and the second device caused by the use of this FEC encoding method can be avoided.
  • the first device When the state parameter does not meet the parameter conditions corresponding to each FEC encoding mode, the first device does not need to use the FEC encoding mode to encode the target data to be transmitted.
  • the first device when the state parameter satisfies the parameter conditions corresponding to at least two FEC encoding methods, the first device will use the at least two FEC encoding methods to encode different target data respectively, and send all the encoded data. to the second device. For example, the first device divides the data to be encoded into at least two pieces of target data, and the at least two pieces of target data are in one-to-one correspondence with the at least two FEC encoding modes. After that, the first device encodes a corresponding piece of target data by using each of the at least two FEC encoding modes.
  • the state parameter may include at least one parameter
  • the parameter conditions corresponding to the FEC encoding method may include the conditions of at least part of the parameters in the at least one parameter
  • the parameter conditions corresponding to different FEC encoding methods may be for the same parameter. , or for different parameters.
  • the status parameters include: bit error rate, packet loss rate, and data transmission rate
  • multiple FEC encoding modes include: FEC encoding modes 1, 2, and 3.
  • the parameter conditions corresponding to FEC coding mode 1 include: a certain range of bit error rate, a certain range of packet loss rate, and a certain range of data transmission rate;
  • the parameter conditions corresponding to FEC coding mode 2 include: bit error rate A certain range and a certain range of the data transmission rate;
  • the parameter conditions corresponding to the FEC coding mode 3 include: a certain range of the packet loss rate.
  • the state parameter of the channel is used to indicate: the transmission quality of the channel, and the parameter condition corresponding to the FEC coding scheme is used to indicate that the transmission quality is within the quality range corresponding to the FEC coding scheme.
  • the quality ranges corresponding to different FEC coding modes may be the same or different. There may or may not be an intersection between these quality ranges, which is not limited in this embodiment of the present application.
  • the transmission quality indicated by the status parameter when the transmission quality indicated by the status parameter is outside the quality range corresponding to each FEC encoding method, the status parameter will not satisfy the parameter conditions corresponding to any FEC encoding method, so the subsequent first device will not use The FEC encoding method encodes the data.
  • the transmission quality indicated by the status parameter when the transmission quality indicated by the status parameter is higher than the upper limit of the quality range corresponding to each FEC encoding method, the transmission quality indicated by the status parameter is higher. At this time, even if the FEC encoding method is not used to encode the data, the It can ensure high quality of data transmission.
  • the state parameter when the transmission quality indicated by the state parameter is within the quality range corresponding to the at least one FEC encoding mode, the state parameter satisfies the parameter conditions corresponding to the at least one FEC encoding mode, and the at least one FEC encoding mode is used in this case.
  • Encoding the target data in different ways can improve the quality of data transmission and ensure the reliability of data transmission.
  • the data transmission method provided by the embodiment of the present application can reduce the data transmission delay as much as possible and reduce the power consumption of the communication device under the condition of ensuring high data transmission quality.
  • Step 105 The first device encodes the target data by using the target FEC encoding mode to obtain first encoded data.
  • the first device may use the target FEC encoding mode to encode the target data to obtain the first encoded data.
  • the first device uses the target FEC encoding method to encode the target data
  • the second device in order to facilitate the second device to use the decoding method corresponding to the target FEC encoding method to decode and correct errors, it can be used in the first encoded data.
  • the encoded data obtained by encoding the target data in Mode 1 may include: an identification bit, an information bit and a check bit, wherein the identification bit is used to carry and indicate the Mode 1.
  • the information bit is used to carry the target data, and the check bit is used to carry the check data.
  • the first device when the first device uses the target FEC encoding method to encode the target data, the first device can cut the target data into a plurality of first data blocks, and then obtain at least one data block based on the plurality of first data blocks. Second data blocks, each of which may include at least one first data block. Finally, the first device may use the target FEC encoding method to generate the check digit of each second data block, and obtain the encoded data of each second data block (including the second data block and its check digit). In addition, the first device also needs to add an identification bit (used to indicate the target FEC encoding mode) before the encoded data of the at least one second data block, so as to obtain encoded data corresponding to the target FEC encoding mode. As shown in FIG.
  • the first device may cut the target data into 6 first data blocks, and then obtain 3 second data blocks based on the 6 first data blocks, and each second data block may include 2 the first data block.
  • the first device may use the target FEC encoding method to generate the check digit of each second data block, and obtain the encoded data of each second data block (including the second data block and its check digit).
  • the first device also needs to add an identification bit (used to indicate the target FEC encoding mode) before the encoded data of the three second data blocks to obtain the first encoded data.
  • the FEC encoding method in this embodiment of the present application may be based on any error correction technology, such as Reed-Solomon (Reed-solomon, RS) technology, Bose–Chaudhuri–Hocquenghem codes (BCH) Or a low density parity check code (Low Density Parity Check Code, LDPC), etc., which is not limited in this embodiment of the present application.
  • error correction technology such as Reed-Solomon (Reed-solomon, RS) technology, Bose–Chaudhuri–Hocquenghem codes (BCH) Or a low density parity check code (Low Density Parity Check Code, LDPC), etc.
  • Step 106 The first device sends the first encoded data to the second device through the channel.
  • Step 107 The second device decodes and corrects errors for the first encoded data by using a decoding mode corresponding to the target FEC encoding mode according to the identifier used to indicate the target FEC encoding mode in the first encoded data.
  • the second device supports decoding modes corresponding to the foregoing multiple FEC encoding modes. It should be noted that the technology used in the encoding mode and the corresponding decoding mode is the same, and the encoding process of the encoding mode is opposite to the decoding process of the decoding mode.
  • the second device can determine the target FEC encoding mode according to the identifier in the encoded data, and use the target FEC encoding method.
  • the decoding mode corresponding to the FEC encoding mode decodes and corrects the encoded data.
  • the second device may perform a subsequent process based on the decoded data. If the second device finds that there is an error in the encoded data, and the second device can correct the error based on the decoding mode corresponding to the target FEC encoding mode, the second device can correct the error, and then use the decoded data to correct the error. The data performs subsequent processes. If the second device cannot correct the error based on the decoding mode corresponding to the target FEC encoding mode, the second device may send the encoded data to the first device to trigger the first device to resend the data.
  • the first device supports multiple FEC coding modes, and for each FEC coding mode in the multiple FEC coding modes, the first device parameters, and the parameter conditions corresponding to the FEC encoding mode, selectively use the FEC encoding mode to encode the target data. Therefore, the first device may use the FEC encoding mode for encoding, or the first device may not use the FEC encoding mode for encoding. In this way, it is avoided that the first device always uses this FEC encoding method to encode, resulting in high data transmission delay and high power consumption of the communication device.
  • the first device since the first encoded data carries an identifier for indicating the target FEC encoding mode, the first device does not need to send a message to the second device to notify the second device before sending the first encoded data to the second device
  • the adopted encoding mode includes the target FEC encoding mode, so the communication complexity between the first device and the second device is reduced.
  • the second device no matter what encoding method the first device adopts for encoding, the second device only needs to use the corresponding decoding method to decode according to the identifier used to indicate the encoding method carried in the received encoded data. The way is simpler.
  • the first device may use the multiple FEC encoding methods for encoding, the first device may also use some of the FEC encoding methods for encoding, and the first device may not use the FEC encoding methods.
  • the multiple FEC encoding methods are encoded. In this way, it is avoided that the first device always uses the multiple FEC encoding methods to encode, resulting in high data transmission delay and high power consumption of the communication device.
  • the second device supports the decoding mode corresponding to the FEC encoding mode, and the FEC encoding mode and the decoding mode corresponding to the FEC encoding mode can realize the decoding of multiple bits in the data. Error correction, therefore, the reliability of data transmission in this embodiment of the present application is relatively high.
  • a target encoding mode may be selected from a variety of FEC encoding modes to encode the target data according to the state parameter of the channel.
  • the target FEC encoding method used in the encoding can adapt to the state of the channel, so that different FEC encoding methods can be used to correct errors for the data according to different channel states, thereby weakening the errors in the process of channel transmission of data. .
  • the state parameter of the above-mentioned channel is used to indicate the transmission quality
  • the parameter condition corresponding to the FEC coding scheme is used to indicate that the transmission quality is within the quality range corresponding to the FEC coding scheme
  • the error correction capability of the FEC coding mode and the parameter conditions corresponding to the FEC coding mode is negatively correlated with the quality in the quality range indicated by the parameter condition.
  • the state parameter when the transmission quality indicated by the state parameter is low, the state parameter can satisfy the parameter condition corresponding to the FEC encoding method with higher error correction capability. At this time, if the state parameter satisfies the parameter condition corresponding to the target FEC encoding method, Then, the target FEC coding mode is the FEC coding mode with higher error correction capability, so the data transmission quality can be effectively improved.
  • the state parameter can satisfy the parameter conditions corresponding to the FEC encoding mode with low error correction capability.
  • the target FEC encoding method is the FEC encoding method with low error correction ability. Since the error correction ability of the FEC encoding method is positively related to the power consumption of the communication equipment caused by the FEC encoding method, it can ensure high data transmission quality. In the case of reducing the power consumption of communication equipment.
  • the multiple FEC encoding modes include: a first FEC encoding mode and a second FEC encoding mode.
  • the error correction capability of the first FEC coding scheme is greater than that of the second FEC coding scheme.
  • the parameter conditions corresponding to the first FEC encoding mode are: the bit error rate is greater than 1E-12 (representing 10 to the power of -12), and the data transmission rate is greater than 16 Gbps (Gbps represents 1000 megabits per second).
  • the parameter conditions corresponding to the second FEC coding mode are: the bit error rate is less than or equal to 1E-12, and/or the data transmission rate is less than or equal to 16 Gbps.
  • the quality in the range of transmission quality indicated by the parameter condition corresponding to the first FEC encoding method is relatively low.
  • the state parameter satisfies the parameter condition corresponding to the first FEC encoding method, it indicates that the current transmission quality is low.
  • the first FEC encoding mode with higher error correction capability is the target FEC encoding mode adopted for encoding, so as to improve the transmission quality of data.
  • the quality in the range of the transmission quality indicated by the parameter condition corresponding to the second FEC encoding method is relatively high.
  • the status parameter satisfies the parameter condition corresponding to the second FEC encoding method, it indicates that the current transmission quality is relatively high, and the correction can be determined at this time.
  • the second FEC encoding mode with lower error capability is the target FEC encoding mode adopted for encoding, so as to reduce the power consumption of the communication device.
  • the first device may support multiple FEC coding modes.
  • the codewords of the various FEC coding modes are different. in.
  • the encoded data obtained by the first device encoding the data in a certain FEC encoding manner may include at least one code word (Code Word), and the code word may be referred to as a code word of the FEC encoding manner.
  • the code word may include information bits and check bits, the information bits are used to carry the encoded data, the check bits are used to carry the check data obtained by FEC encoding, and the different code words may refer to: the type of the code word (such as RS or BCH, LDPC), at least one of the length of the codeword, the length of the information bits, the length of the check bits, and the length of the information bits that can be corrected by the check bits are different.
  • the length of the information bits that can be corrected by the check bit is used to represent the error correction capability of the FEC coding method.
  • the first device may support: the first FEC encoding mode and the second FEC encoding mode
  • the characteristics of the codeword of the first FEC encoding mode may be expressed as RS (228, 220, 4, 8)
  • the second FEC encoding mode The characteristics of the codeword can be represented as RS(114, 110, 2, 8).
  • RS(228, 220, 4, 8) indicates that the type of the codeword of the first FEC coding mode is RS, the length of the codeword is 228 symbols (Symbol), and the length of the information bits in the codeword is 220 symbol, the length of the check digit in the codeword is 8 symbols, and the length of the information bit that can be error-corrected by the check digit in the codeword is 4 symbols.
  • RS(114, 110, 2, 8) indicates that the type of the codeword in the second FEC coding mode is RS, the length of the codeword is 114 symbols, the length of the information bits in the codeword is 110 symbols, and the codeword is The length of the check digit in the codeword is 8 symbols, and the length of the information bit that can be corrected by the check digit in the codeword is 2 symbols. It can be seen that the lengths of the code words in the first FEC encoding method and the second FEC encoding method are different, the lengths of the information bits in the code words are different, and the lengths of the information bits that can be corrected by the check bits are different (the first FEC encoding method and the second FEC encoding method have different lengths. The error correction capabilities of the two FEC coding methods are different).
  • the first device may include a plurality of FEC encoding circuits corresponding to the multiple FEC encoding modes one-to-one, and the first device may use the FEC encoding mode corresponding to the encoding circuit to perform encoding through each FEC encoding circuit.
  • the second device may include multiple FEC decoding circuits one-to-one corresponding to the multiple FEC encoding modes, and the second device may use the decoding mode corresponding to the FEC encoding mode corresponding to the decoding circuit to perform decoding and error correction through each FEC decoding circuit .
  • the first device may further include: a first selection circuit, the first selection circuit is connected to the plurality of FEC encoding circuits, when the first device determines the FEC encoding mode in which the state parameter satisfies the corresponding parameter condition among the multiple FEC encoding modes , the first device will generate a first control signal, the first control signal can trigger the first selection circuit to open the FEC encoding circuits corresponding to the FEC encoding methods, so that the corresponding FEC encoding methods are used for subsequent encoding by the FEC encoding circuits.
  • the second device may also include a second selection circuit, the second selection circuit is connected to the plurality of FEC decoding circuits, and when the second device determines the decoding method to be used, the second device will generate a second control signal , the second control signal can trigger the second selection circuit to turn on the FEC decoding circuits corresponding to the FEC encoding modes corresponding to these decoding modes, so as to facilitate subsequent decoding and error correction using the corresponding decoding modes by these FEC decoding circuits.
  • the first selection circuit and the second selection circuit may be a data selector (multiplexer, MUX) or an auxiliary channel (Auxiliary, AUX).
  • the control signal may include a plurality of control bits corresponding to various FEC encoding modes one-to-one, and each control bit in the first control signal It is used to indicate whether to enable the FEC encoding circuit corresponding to the corresponding FEC encoding mode, and each control bit in the second control signal is used to indicate whether to enable the FEC decoding circuit corresponding to the corresponding FEC encoding mode.
  • the first control signal may include two bits, and the first bit of the two bits is the same as the first FEC coding mode.
  • the second bit corresponds to the second FEC coding mode.
  • the first control signal when the first control signal is 00, it means that the state parameter does not meet the parameter conditions corresponding to the first FEC encoding method, and the state parameter does not meet the parameter conditions corresponding to the second FEC encoding method, the first selection circuit will Turn off both the FEC encoding circuit corresponding to the first FEC encoding mode and the FEC encoding circuit corresponding to the second FEC encoding mode.
  • the first control signal is 01, it means that the state parameter does not meet the parameter conditions corresponding to the first FEC encoding mode, and the state parameter meets the parameter conditions corresponding to the second FEC encoding mode, and the first selection circuit will correspond to the first FEC encoding mode
  • the FEC encoding circuit of the second FEC encoding mode is turned off, and the FEC encoding circuit corresponding to the second FEC encoding mode is turned on.
  • the first control signal When the first control signal is 10, it indicates that the state parameter satisfies the parameter conditions corresponding to the first FEC encoding mode, and the state parameter does not meet the parameter conditions corresponding to the second FEC encoding mode, and the first selection circuit will correspond to the first FEC encoding mode
  • the FEC encoding circuit of the second FEC encoding mode is turned on, and the FEC encoding circuit corresponding to the second FEC encoding mode is turned off.
  • the first control signal When the first control signal is 11, it indicates that the state parameter satisfies the parameter conditions corresponding to the first FEC encoding mode, and the state parameter satisfies the parameter conditions corresponding to the second FEC encoding mode, and the first selection circuit will select the corresponding parameters of the first FEC encoding mode. Both the FEC encoding circuit and the FEC encoding circuit corresponding to the second FEC encoding mode are turned on.
  • the codeword lengths of the multiple FEC encoding modes have a linear relationship.
  • the multiple FEC coding circuits corresponding to the multiple FEC coding modes may multiplex at least part of the structure, and the multiple FEC coding circuits corresponding to the multiple FEC coding modes The circuit may also reuse at least part of the structure, thereby reducing the size of the first device and the second device.
  • the state parameter is used to reflect the transmission situation of the test data, and all the state parameters are determined by the second device and then sent to the first device as an example.
  • a part of the parameters in the state parameters can also be used to reflect the transmission situation of the test data, and the part of the parameters in the state parameters is determined by the second device and then sent to the first device.
  • the first device also needs to determine another part of the parameters in the state parameters by itself, and then obtain the state parameters according to the received part of the parameters and another part of the parameters determined by itself.
  • the state parameters may include: bit error rate, packet loss rate, insertion loss, return loss, channel noise, baud rate and data transmission rate, and some of the above parameters may include: bit error rate, packet loss rate, wave Bit rate and data transmission rate, another part of the parameters can include: insertion loss, return loss and channel noise.
  • a part of the above parameters may include: bit error rate, baud rate, and data transmission rate, and another part of the parameters may include: packet loss rate, insertion loss, return loss, and channel noise.
  • all the state parameters may also be determined by the first device, which is not limited in this embodiment of the present application.
  • steps 102 and 103 in FIG. 3 do not need to be executed, and after the first device sends test data to the second device in step 101, the second device can use the test data according to the test data.
  • Reference information of the state parameter is determined, and the reference information is sent to the first device through the channel. Afterwards, the first device may obtain the above-mentioned state parameter according to the reference information.
  • the reference information may be information required by the first device to obtain the status parameter.
  • the reference information may be the number of data packets included in the test data received by the second device. After receiving the reference information, the first device may The number is divided by the total number of packets in the test data to obtain the packet loss rate of the test data.
  • part of the multiple parameters may be determined by the first device, and another part of the parameters may be determined by the second device and then sent to the first device.
  • the first device may determine the part of the parameters by itself, or the first device may also receive reference information of the part of the parameters sent by the second device, and determine the part of the parameters according to the reference information.
  • the status parameters include: packet loss rate, bit error rate, and data transmission rate, wherein the packet loss rate and bit error rate can be determined by the second device and sent to the first device, and the data transmission rate can be determined by the first device itself .
  • the first device may include a speed cut state register, the state value of the speed cut state register is used to indicate the data transmission rate, for example, the speed cut state register has two state values: 0 and 1, and the state value 0 indicates a low speed transmission state , the data transmission rate at this time is lower than the rate threshold, the state value 1 indicates the high-speed transmission state, and the data transmission rate at this time is higher than the rate threshold.
  • the speed threshold can be any value, such as 6Gbps or 16Gbps.
  • the first device may determine the data transfer rate by reading the state value of the speed cut state register.
  • the second device may also read the state value of the speed cut state register in the second device to determine the data transmission rate.
  • the state parameter may include at least one of: bit error rate, packet loss rate, insertion loss, return loss, channel noise, baud rate, and data transmission rate .
  • the first device determines whether the state parameter satisfies the parameter condition corresponding to the target FEC coding mode as an example.
  • the second device determines whether the state parameter satisfies the parameter conditions corresponding to the target FEC encoding mode, and then the second device sends the first device to indicate whether the state parameter meets the parameter conditions corresponding to the target FEC encoding mode.
  • notification information The first device may determine, according to the notification information, whether the state parameter satisfies the parameter condition corresponding to the target FEC coding mode.
  • the second device does not need to perform the above step 103.
  • the process of determining the target encoding mode among the multiple FEC encoding modes by the second device according to the state parameter reference may be made to the foregoing step 104, which is not repeated in this embodiment of the present application.
  • the first device may further support an auxiliary encoding mode
  • the second device may also support a decoding mode corresponding to the auxiliary encoding mode.
  • the first device may also use an auxiliary encoding mode different from the above-mentioned multiple FEC encoding modes for encoding, and the second device may use a decoding mode corresponding to the auxiliary encoding mode for decoding.
  • the adoption of the FEC coding mode among the various FEC coding modes in the foregoing embodiments is subject to conditions, while the use of the auxiliary coding mode may not be subject to conditions.
  • auxiliary encoding modes may include one encoding mode or multiple encoding modes.
  • the auxiliary encoding method includes at least one of a CRC encoding method and an ECC encoding method, and the auxiliary encoding method may also include other FEC encoding methods different from the above-mentioned multiple FEC encoding methods.
  • the second device when the auxiliary coding mode has an error correction capability, when the second device uses the decoding mode corresponding to the auxiliary coding mode to perform decoding, the second device may also use the decoding mode corresponding to the auxiliary coding mode to perform error correction.
  • the auxiliary coding mode has the error detection capability
  • the second device when the second device uses the decoding mode corresponding to the auxiliary coding mode to perform decoding, the second device may also use the decoding mode corresponding to the auxiliary coding mode to perform error detection.
  • the decoding mode corresponding to the auxiliary coding mode is used to perform error detection or error correction. The content of error detection or error correction is not repeated in this embodiment of the present application.
  • the first device may first use the FEC coding mode (such as the above-mentioned target FEC coding mode) to perform coding, and then use the auxiliary coding mode to perform coding.
  • the data transmission method further includes: the first device encodes the first encoded data in an auxiliary encoding manner to obtain the second encoded data, and in step 106, the first device can pass the channel
  • the second encoded data is sent to the second device to implement sending the first encoded data to the second device.
  • the second device receives the second encoded data in step 106 , and before step 107 , the second device can decode the second encoded data by using a decoding mode corresponding to the auxiliary encoding mode to obtain the above-mentioned first encoded data.
  • the first device may first use the auxiliary coding mode to perform coding, and then use the FEC coding mode (such as the above-mentioned target FEC coding mode) to perform coding.
  • the data transmission method further includes: the first device encodes the initial data in an auxiliary encoding manner to obtain the above-mentioned target data.
  • the second device may use a decoding mode corresponding to the auxiliary encoding mode to decode the target data.
  • the target data is data obtained by decoding and error correcting the first encoded data by using a decoding mode corresponding to the target FEC encoding mode.
  • the first device may use an FEC encoding mode (such as the above-mentioned target FEC encoding mode) and an auxiliary encoding mode for encoding, respectively.
  • the embodiment shown in FIG. 3 further includes: the first device encodes the auxiliary data in an auxiliary coding manner to obtain third encoded data; after that, the first device sends the third encoded data to the second device through a channel.
  • the second device may decode the third encoded data by using a decoding mode corresponding to the auxiliary encoding mode.
  • both the target data and the auxiliary data are data to be coded, the difference is that the target data is coded using the above-mentioned target FEC coding method, and the auxiliary data is coded using the auxiliary coding method.
  • the first device uses the target FEC encoding method to encode a part of data (eg, target data), and uses an auxiliary encoding method to encode another part of data (eg, auxiliary data). In this way, the transmission reliability of the part of the data is relatively high.
  • the data transmission delay caused by the auxiliary encoding method is smaller than the data transmission delay caused by the FEC encoding method, and the equipment power consumption caused by the auxiliary encoding method is also smaller than the equipment power consumption caused by the FEC encoding method, the other part The time delay and device power consumption caused by data encoding are small.
  • the above-mentioned auxiliary coding modes may include multiple coding modes, and the first device may firstly use a part of the auxiliary coding modes for coding, and then use the FEC coding mode (such as the above-mentioned target FEC coding mode) for coding, and then use the FEC coding mode for coding. Another part of the auxiliary coding mode is used for coding.
  • the second device may first decode by using the decoding mode corresponding to the other part of the encoding mode, then decode by using the decoding mode corresponding to the FEC encoding mode, and then decode by using the decoding mode corresponding to the part of the encoding mode.
  • the first device When the first device not only uses the target FEC encoding method to encode, but also uses the auxiliary encoding method to encode, the reliability of data transmission can be further improved. Moreover, when the state parameter does not meet the parameter conditions corresponding to any FEC encoding mode, the first device may use the auxiliary encoding mode to perform encoding, so as to ensure the reliability of data transmission.
  • the data transmission delay caused by the auxiliary encoding method is smaller than the data transmission delay caused by the FEC encoding method, and the device power consumption caused by the auxiliary encoding method is also smaller than that caused by the FEC encoding method.
  • the first device can use the auxiliary encoding method for encoding, so that the data transmission delay can be reduced as much as possible on the basis of ensuring the reliability of data transmission, and the Small device power consumption.
  • whether the first device uses the auxiliary coding mode for encoding, and the coding order of the auxiliary coding mode may be pre-configured on the first device; whether the second device uses the decoding mode corresponding to the auxiliary coding mode for decoding, and this
  • the decoding order of the decoding mode may also be pre-configured on the second device.
  • the first device may use the auxiliary encoding mode to perform encoding according to the encoding order
  • the second device may use the decoding mode corresponding to the auxiliary encoding mode to perform decoding according to the decoding order.
  • the auxiliary coding mode may have corresponding parameter conditions.
  • the first device may also judge whether the above state parameters satisfy the parameter conditions corresponding to the auxiliary coding mode. If the state parameters satisfy the auxiliary coding mode Only when the parameter conditions corresponding to the mode are met, the auxiliary encoding mode is allowed to be used for encoding.
  • the encoded data obtained by encoding carries an identifier for indicating the auxiliary encoding manner.
  • the second device may detect whether the encoded data carries an identifier for indicating the auxiliary encoding mode before decoding using the decoding mode corresponding to the auxiliary encoding mode according to the decoding order.
  • the second device uses the decoding mode corresponding to the auxiliary encoding mode to decode, otherwise the second device will not use the decoding mode corresponding to the auxiliary encoding mode to decode.
  • the target FEC encoding mode among the various FEC encoding modes may be combined with the auxiliary encoding mode for encoding.
  • the data transmission method provided by the embodiments of the present application will be further explained below through several examples.
  • the auxiliary coding mode may be an auxiliary coding mode based on any coding technology. It should be noted that, if any encoding technology does not include the FEC encoding method, the auxiliary encoding method based on this encoding technology includes: all encoding methods in this encoding technology. If any one of the encoding technologies includes the FEC encoding mode, the auxiliary encoding mode based on the encoding technology includes: encoding modes other than the FEC encoding mode in the encoding technology.
  • FIG. 7 is a flowchart of another data transmission method provided by an embodiment of the present application.
  • the auxiliary coding mode is based on the Mobile Industry Processor Interface (MIPI) Camera Serial Interface 2 (CSI-2) ) in the D-Physical Layer (D-Port Physical Layer, D-PHY) auxiliary coding mode as an example, wherein, D-PHY is a physical layer port in CSI-2.
  • the D-PHY technology includes: ECC encoding mode and CRC encoding mode, and does not include FEC encoding mode. Therefore, the auxiliary encoding mode based on D-PHY includes: ECC encoding mode and CRC encoding mode.
  • the data transmission method includes:
  • Step 201 The first device sends test data to the second device through the channel between the first device and the second device.
  • step 201 reference may be made to step 101, which is not repeated in this embodiment of the present application.
  • Step 202 The second device determines a state parameter of the channel according to the test data, where the state parameter is used to reflect the transmission situation of the test data.
  • step 202 reference may be made to step 102, which is not repeated in this embodiment of the present application.
  • Step 203 The second device sends the state parameter to the first device through the channel.
  • step 203 reference may be made to step 103, which is not repeated in this embodiment of the present application.
  • Step 204 The first device adds a data type identifier (Data ID), a number of bytes (WC) and a virtual channel identifier (VCX) before the data block to be transmitted to obtain initial data.
  • Data ID data type identifier
  • WC number of bytes
  • VCX virtual channel identifier
  • the data block to be transmitted may be a data block obtained by cutting the data to be transmitted by the first device, and the data block may include 8 bits.
  • the structure of the initial data is shown in FIG. 8 , and the initial data includes: data type identifiers, WC, VCX, and data blocks (payload) arranged in sequence.
  • WC is used to mark the number of bytes in the payload, and WC includes 16 bits.
  • Step 205 The first device encodes the initial data by using a D-PHY-based auxiliary encoding manner to obtain target data.
  • the first device may use the ECC encoding mode to encode the data type symbol, WC and VCX in the initial data to obtain an ECC error correction check code (which may include 6 bits), and use the CRC encoding mode to encode the initial data.
  • the data block in is encoded to obtain a CRC check code (which can include 16 bits).
  • the first device may add the ECC error correction check code and the CRC check code to the header and the end of the data block in the initial data to obtain the target data.
  • the structure of the target data is shown in FIG. 9 , and the target data includes: data type symbols, WC, VCX, ECC error correction check code, data block and CRC check code arranged in sequence.
  • Step 206 The first device determines whether the state parameter satisfies the parameter conditions corresponding to the target FEC encoding mode among the multiple FEC encoding modes, and the target FEC encoding mode is any one of the multiple FEC encoding modes.
  • Step 207 is performed when the state parameter satisfies the parameter conditions corresponding to the target FEC encoding mode among the multiple FEC encoding modes.
  • the first device When the state parameter does not meet the parameter conditions corresponding to the target FEC encoding mode, the first device does not need to use the target FEC encoding mode for encoding, and at this time, the first device can directly send the target data to the second device.
  • the second device may directly use a decoding mode corresponding to the D-PHY-based auxiliary encoding mode to decode the target data, obtain initial data, and perform step 211 .
  • step 206 reference may be made to step 104, which is not repeated in this embodiment of the present application.
  • Step 207 The first device encodes the target data by using the target FEC encoding method to obtain first encoded data.
  • step 207 reference may be made to step 105, which is not repeated in this embodiment of the present application.
  • Step 208 The first device sends the first encoded data to the second device through the channel.
  • step 208 reference may be made to step 106, which is not repeated in this embodiment of the present application.
  • Step 209 The second device decodes and corrects errors of the first encoded data by using the decoding mode corresponding to the target FEC encoding mode according to the identifier used to indicate the target FEC encoding mode in the first encoded data to obtain the target data.
  • step 209 reference may be made to step 107, which is not repeated in this embodiment of the present application.
  • Step 210 The second device uses a decoding mode corresponding to the D-PHY-based auxiliary encoding mode to decode the target data to obtain initial data.
  • the decoding process in which the second device adopts the decoding mode corresponding to the D-PHY-based auxiliary encoding mode is the inverse process of the encoding process in which the first device adopts the D-PHY-based auxiliary encoding mode.
  • the second device may perform a subsequent process based on the decoded data. If the second device finds that there is an error in the encoded data, and the second device can correct the error based on the decoding method, the second device can correct the error, and then execute the subsequent process based on the decoded data. If the second device cannot correct the error based on the decoding method, the second device may send the encoded data to the first device to trigger the first device to resend the data.
  • Step 211 The second device removes the data type identifier, WC and VCX in the initial data to obtain the data block to be transmitted.
  • an FEC encoding mode in which the state parameter meets the corresponding parameter condition is taken as an example.
  • the first device does not need to perform steps 206 and 207, and in step 208, the first device sends the encoded data encoded by the auxiliary encoding method to the second device.
  • the second device receives the encoded data, since the identifier indicating the target FEC encoding mode is not detected, the second device does not need to perform step 209, but directly adopts the D-PHY-based encoding method in step 210.
  • the decoding mode corresponding to the auxiliary encoding mode decodes the received encoded data to obtain the initial data.
  • the first device may also use another encoding manner to encode the first encoded data to obtain encoded data (referred to as second encoded data) corresponding to the other encoding manner, in step 208 , the first device may send the second encoded data.
  • the second encoded data may include: a transmission start bit (Start of Transmission, SOT), the first encoded data, and an end of transmission bit (End of Transmission, EOT) arranged in sequence.
  • the first device uses another encoding method to encode the first encoded data
  • the second device can use the decoding method corresponding to the other encoding method to encode the received code
  • the data is decoded to obtain the first encoded data, and after that, step 209 is performed.
  • FIG. 11 is a flowchart of another data transmission method provided by an embodiment of the present application.
  • the auxiliary encoding method is a high-definition multimedia interface (High-Definition Multimedia Interface, HDMI)-based encoding method.
  • HDMI encoding technology includes: ECC encoding method, CRC encoding method and FEC encoding method. Since HDMI encoding technology includes FEC encoding method, the auxiliary encoding method based on HDMI includes: encoding method other than FEC encoding method in HDMI encoding technology , such as ECC encoding and CRC encoding.
  • the data transmission method includes:
  • Step 301 The first device sends test data to the second device through the channel between the first device and the second device.
  • step 301 reference may be made to step 101, which is not repeated in this embodiment of the present application.
  • Step 302 The second device determines a state parameter of the channel according to the test data, where the state parameter is used to reflect the transmission situation of the test data.
  • step 302 reference may be made to step 102, which is not repeated in this embodiment of the present application.
  • Step 303 The second device sends the state parameter to the first device through the channel.
  • step 303 reference may be made to step 103, which is not repeated in this embodiment of the present application.
  • Step 304 The first device adds a prefix, data synchronization information (Sync), control/data information (C/D) and reserved bits (Rsvd) before the data block to be transmitted to obtain initial data.
  • Sync data synchronization information
  • C/D control/data information
  • Rsvd reserved bits
  • the prefix is used to indicate that the type of data block (Payload) is Data Island (a data type) or Video Data (another data type).
  • the structure of the initial data is shown in FIG. 12 , and the initial data includes: prefix, Sync, C/D, Rsvd, and data block arranged in sequence.
  • Step 305 The first device encodes the initial data by using an HDMI-based auxiliary encoding manner to obtain target data.
  • the first device may use the ECC encoding mode to encode the data block in the initial data to obtain an ECC error correction check code (which may include 6 bits), and use the CRC encoding mode to encode the data block in the initial data. Encoding obtains a CRC check code (which may include 16 bits). After that, the first device may add the ECC error correction check code and the CRC check code to the end of the data block in the initial data to obtain the target data.
  • the structure of the target data is shown in Figure 13.
  • the target data includes: prefix, Sync, C/D, Rsvd, data block, ECC error correction check code and CRC check code arranged in sequence.
  • the first device may also determine that the state parameter satisfies the parameter conditions corresponding to the HDMI-based auxiliary encoding method. At this time, the first device is in the HDMI-based auxiliary encoding method. Before the encoding mode encodes the initial data, an identifier for indicating the HDMI-based auxiliary encoding mode may be added to the initial data. The initial data at this time is shown in Figure 14, and the identification of the auxiliary encoding method based on HDMI can be the packet loss rate confirmation field (Package Loss Rate_Ensure, PLR_EN) in Figure 14. The first device encodes the initial data by using an HDMI-based auxiliary encoding method, and the obtained target data may be as shown in FIG. 15 .
  • Package Loss Rate_Ensure, PLR_EN Package Loss Rate_Ensure
  • Step 306 The first device determines whether the state parameter satisfies the parameter conditions corresponding to the target FEC encoding mode among the multiple FEC encoding modes, and the target FEC encoding mode is any one of the multiple FEC encoding modes.
  • Step 307 is performed when the state parameter satisfies the parameter conditions corresponding to the target FEC encoding mode among the multiple FEC encoding modes.
  • the first device When the state parameter does not meet the parameter conditions corresponding to the target FEC encoding mode, the first device does not need to use the target FEC encoding mode for encoding, and at this time, the first device can directly send the target data to the second device.
  • the second device may directly use the decoding mode corresponding to the HDMI-based auxiliary encoding mode to decode the target data to obtain initial data, and perform step 311 .
  • step 306 reference may be made to step 104, which is not repeated in this embodiment of the present application.
  • Step 307 The first device encodes the target data by using the target FEC encoding method to obtain first encoded data.
  • step 307 reference may be made to step 105, which is not repeated in this embodiment of the present application.
  • Step 308 The first device sends the first encoded data to the second device through the channel.
  • step 308 reference may be made to step 106, which is not repeated in this embodiment of the present application.
  • Step 309 the second device decodes and corrects errors of the first encoded data by using the decoding mode corresponding to the target FEC encoding mode according to the identifier used to indicate the target FEC encoding mode in the encoding mode to obtain the target data.
  • step 309 reference may be made to step 107, which is not repeated in this embodiment of the present application.
  • Step 310 The second device uses a decoding mode corresponding to the HDMI-based auxiliary encoding mode to decode the target data to obtain initial data.
  • the decoding process in which the second device adopts the decoding mode corresponding to the HDMI-based auxiliary encoding mode is an inverse process of the encoding process in which the first device adopts the HDMI-based auxiliary encoding mode.
  • the second device may perform a subsequent process based on the decoded data. If the second device finds that there is an error in the encoded data, and the second device can correct the error based on the decoding method, the second device can correct the error, and then execute the subsequent process based on the decoded data. If the second device cannot correct the error based on the decoding method, the second device may send the encoded data to the first device to trigger the first device to resend the data.
  • step 305 the first device adds an identifier for indicating an HDMI-based auxiliary encoding method in the encoding process
  • the second device needs to detect whether the target data contains an identifier for indicating an HDMI-based auxiliary encoding method.
  • the identifier of the auxiliary encoding method The second device executes step 310 only when the target data includes an identifier for indicating an HDMI-based auxiliary encoding mode; otherwise, the second device skips step 310 and directly executes step 311 .
  • Step 311 The second device removes the prefix, Sync, C/D and Rsvd in the initial data to obtain a data block to be transmitted.
  • an FEC encoding mode in which the state parameter meets the corresponding parameter condition is taken as an example.
  • the first device does not need to perform steps 306 and 307, and in step 308 the first device sends the encoded data (such as the above target data) encoded by the auxiliary encoding method to the second device.
  • the second device receives the encoded data, since the identifier indicating the target FEC encoding mode is not detected, the second device does not need to perform step 309, but directly adopts the HDMI-based auxiliary encoding mode in step 310.
  • the received encoded data is decoded to obtain initial data.
  • the first device may also use another encoding manner to encode the first encoded data to obtain encoded data (referred to as second encoded data) corresponding to the other encoding manner, in step 308 , the first device may send the second encoded data.
  • second encoded data For the structure of the second encoded data, reference may be made to FIG. 10 .
  • the first device uses another encoding method to encode the first encoded data
  • the second device can use the decoding method corresponding to the other encoding method to encode the received first encoding data.
  • the second encoded data is decoded to obtain the first encoded data, and then step 309 is performed.
  • the data transmission method provided by the embodiments of the present application is briefly described by taking the auxiliary coding mode based on D-PHY and the auxiliary coding mode based on HDMI as examples.
  • the auxiliary coding mode in the embodiment of the present application may also be replaced with an auxiliary coding mode based on C-PHY (a physical layer port in MIPI CSI-2), an auxiliary coding mode based on MIPI CSI-3, a Auxiliary encoding for Display Port (DP).
  • the auxiliary coding method based on C-PHY (a physical layer port in MIPI CSI-2) is similar to the auxiliary coding method based on D-PHY.
  • the ECC encoding method is used to encode the data type identifier, WC and VCX, and the ECC error correction check code is obtained, while the auxiliary encoding method based on C-PHY uses the CRC encoding method to encode the data type.
  • the structure of the target data obtained by encoding the data block based on the auxiliary coding method of C-PHY can be shown in Figure 16.
  • the target data includes: VCX, data type identifier, WC, PH-CRC check code, data arranged in sequence Block and PD-CRC check codes.
  • the target data may include at least two sets of additional information arranged in sequence (including VCX, data type identifier, WC, and PH-CRC check code).
  • the target data includes two sets of additional information arranged in sequence as an example.
  • the auxiliary coding method based on MIPI CSI-3 is similar to the auxiliary coding method based on MIPI CSI-2 (such as based on D-PHY in MIPI CSI-2). However, in the auxiliary encoding method based on MIPI CSI-3, additional information will be added before the data block, and the data block will be encoded by the International Telephone and Brass Consultative Committee (CCITT) CRC encoding method, and the CRC calibration method will be obtained. Check the code, and add the CRC check code to the end of the data block to obtain the target data.
  • CITT International Telephone and Telephone Consultative Committee
  • the additional information may include: Data Link Layer Control Symbol Identifier (ESC_DL), Start of Frame (Start of Frame, SOF), Traffic Type (Traffic Class, TC), reserved bits, ESC_DL, L2 layer service data unit end frame identifier (End of Frame for even L2 Service Data Unit, EOF_EVEN) and frame sequence number (Frame_seq.Number).
  • the target data includes: ESC_DL, SOF, TC, reserved bits, data blocks, ESC_DL, EOF_EVEN, frame serial number and CRC check code arranged in sequence.
  • the DP-based auxiliary encoding method is similar to the HDMI-based auxiliary encoding method. Therefore, the data transmission method using the DP-based auxiliary encoding method is the same as the data transmission method using the HDMI-based auxiliary encoding method (the method shown in Figure 11). similar.
  • the step of encoding by using the FEC encoding method is performed by the physical layer in the first device
  • the step of using the FEC encoding method encoding is performed. The steps are performed by the link layer in the first device.
  • the above-mentioned first device and second device are both communication devices in the communication system provided by the embodiments of the present application, and the architecture of the communication device generally includes: a transaction layer, a link layer, and a physical layer arranged in sequence from top to bottom.
  • the transaction layer can receive the data to be encoded from the application layer.
  • the upper layer in the transaction layer, link layer and physical layer will transmit the received data to the lower layer.
  • the data transmitted to the physical layer can be transmitted to other layers through the port of the physical layer. equipment.
  • the data input from the port of the physical layer can be transmitted to the upper layer in turn, until it is transmitted from the transaction layer to the application layer.
  • the step of encoding in the first device may be performed by at least one functional layer among a transaction layer, a link layer, and a physical layer.
  • the encoding step may include: encoding using the target FEC encoding method, encoding using an auxiliary encoding method, and the like.
  • the step of decoding in the second device may be performed by at least one functional layer of a transaction layer, a link layer and a physical layer.
  • the step of decoding may include: a step of decoding and error correction using a decoding mode corresponding to the target FEC encoding mode, a step of decoding using a decoding mode corresponding to the auxiliary encoding mode, and the like. In this way, it is possible to perform error correction on errors in data transmission by at least one functional layer among the transaction layer, the link layer and the physical layer.
  • the steps of encoding and decoding are performed by a certain functional layer (such as the link layer or the physical layer, etc.) in the communication device, so that it is impossible to realize the error when transmitting data to multiple functional layers in the communication device.
  • Error correction when the encoding step in the first device may be performed by multiple functional layers in the transaction layer, the link layer, and the physical layer, the decoding step in the second device may be performed by the transaction layer, the link layer and the physical layer.
  • error correction can be implemented for errors during data transmission by multiple functional layers in the transaction layer, the link layer and the physical layer.
  • the data transmission method provided by the present application is described in detail above with reference to FIGS. 1 to 17 . It can be understood that, in order to realize the functions described by the above methods, the device needs to include hardware and/or software corresponding to each function. module. In conjunction with the execution process of each method described in the embodiments disclosed herein, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is performed by hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art may use different ways to implement the described functionality for each particular application in conjunction with the embodiments, but such implementations should not be considered beyond the scope of this application.
  • the corresponding device may be divided into functional modules according to the above method embodiments.
  • each functional module may be divided corresponding to each function, or two or more functions may be integrated into one processing module.
  • the above-mentioned integrated modules can be implemented in the form of hardware. It should be noted that the division of modules in this embodiment is schematic, and specifically as a possible division manner of logical functions, there may be other division manners in actual implementation.
  • FIG. 18 is a block diagram of a communication device provided by an embodiment of the application, and the communication device may belong to the first device in the foregoing embodiments, for example.
  • the first device supports multiple FEC coding modes, and each of the FEC coding modes has corresponding parameter conditions.
  • the communication device includes: an encoding module 1801 and a sending module 1802 .
  • the encoding module 1801 is configured to encode the target data by the first device using the target FEC encoding method to obtain the first encoded data when the state parameter of the channel between the first device and the second device satisfies the parameter conditions corresponding to the target FEC encoding method .
  • the target FEC encoding mode is one FEC encoding mode among multiple FEC encoding modes supported by the first device, and the first encoded data encoded by using the target FEC encoding mode carries: for indicating the target FEC encoding way identification.
  • the sending module 1802 is configured to send the first encoded data to the second device through the channel.
  • the sending module 1802 reference may be made to the content related to the first device in the foregoing step 106, step 208 and step 308.
  • the codeword lengths of the multiple FEC encoding modes have a linear relationship.
  • the multiple FEC coding circuits corresponding to the multiple FEC coding modes may multiplex at least part of the structure, and the multiple FEC coding circuits corresponding to the multiple FEC coding modes The circuit may also reuse at least part of the structure, thereby reducing the size of the first device and the second device.
  • the first device may not only support the above-mentioned multiple FEC encoding modes, but also support auxiliary encoding modes other than the multiple FEC encoding modes, and the second device may also support decoding modes corresponding to the auxiliary encoding modes.
  • the first device may also use an auxiliary encoding mode to perform encoding
  • the second device may use a decoding mode corresponding to the auxiliary encoding mode to perform decoding.
  • This application does not limit the types of auxiliary coding modes, and the auxiliary coding modes may include one coding mode or multiple coding modes.
  • the auxiliary encoding method includes at least one of a CRC encoding method and an ECC encoding method, and the auxiliary encoding method may also include other FEC encoding methods different from the above-mentioned multiple FEC encoding methods.
  • the encoding module 1801 is further configured to encode the initial data in the auxiliary encoding mode to obtain the target data before encoding the target data in the target FEC encoding mode.
  • the encoding module 1801 For the operations performed by the encoding module 1801, reference may be made to the content related to the first device in the foregoing steps 205 and 305.
  • the encoding module 1801 is further configured to encode the first encoded data by using the auxiliary encoding method after encoding the target data by using the target FEC encoding method, to obtain second encoded data; at this time, the sending module 1802 may send the second encoded data to the second device through the channel, so as to send the first encoded data to the second device through the channel .
  • the encoding module 1801 is further configured to encode the target data by using the auxiliary encoding manner to obtain third encoded data.
  • the above-mentioned sending module 1802 is further configured to send the third encoded data to the second device through the channel.
  • the state parameters include: at least one of bit error rate, packet loss rate, insertion loss, return loss, channel noise, baud rate and data transmission rate.
  • the state parameter may also have other implementation manners, which are not limited in this application.
  • the above-mentioned sending module 1802 is further configured to send test data to the second device through the channel before the first device encodes the target data by using the target FEC encoding method, at least one of the status parameters. Some parameters are used to reflect the transmission of the test data.
  • the test data may be service data carrying service information, or may not be service data (for example, test data without service information transmitted before service data transmission), which is not limited in this application.
  • the status parameter is used to indicate the transmission quality
  • the parameter condition corresponding to the FEC encoding mode is used to indicate that the transmission quality is within the quality range corresponding to the FEC encoding mode.
  • the quality ranges corresponding to different FEC coding modes may be the same or different. There may or may not be an intersection between these quality ranges, which is not limited in this application.
  • the error correction capability of the FEC coding mode and the parameter condition corresponding to the FEC coding mode for the error correction capability of the FEC coding mode and the parameter condition corresponding to the FEC coding mode: the error correction capability and the quality range indicated by the parameter condition.
  • the quality in the negative correlation for the error correction capability of the FEC coding mode and the parameter condition corresponding to the FEC coding mode: the error correction capability and the quality range indicated by the parameter condition.
  • the above state parameter may be determined independently by the first device, or may be determined with the assistance of the second device, which is not limited in this application.
  • the first device may further include a receiving module and a processing module (neither are shown in FIG. 18 ).
  • the receiving module may be configured to receive the at least part of the parameters sent by the second device according to the test data after the sending module sends the test data to the second device through the channel.
  • the processing module is configured to determine the state parameter according to the at least part of the parameters. For the operations performed by the receiving module, reference may be made to the content related to the first device in the foregoing steps 103 , 203 and 303 .
  • the first device may further include a receiving module and a processing module (neither are shown in FIG. 18 ).
  • the receiving module may be configured to receive the reference information of the at least part of the parameters sent by the second device according to the test data after the sending module sends the test data to the second device through the channel.
  • the processing module is configured to obtain the state parameter according to the reference information.
  • the first device may further include a receiving module (neither are shown in FIG. 18 ).
  • the receiving module is configured to receive notification information sent by the second device through the channel before the encoding module uses the target FEC encoding method to encode the target data, where the notification information is used to indicate whether the state parameter satisfies the requirements. Describe the parameter conditions corresponding to the target FEC coding mode.
  • the encoding module 1801 may use the target FEC encoding method to encode the target data when the notification information is used to indicate that the state parameter satisfies the parameter condition corresponding to the target FEC encoding method.
  • FIG. 19 is a block diagram of another communication device provided by an embodiment of the application.
  • the communication device may belong to the second device in the foregoing embodiments.
  • the second device supports decoding modes corresponding to multiple FEC encoding modes, and each of the FEC encoding modes has corresponding parameter conditions.
  • the communication device includes: a receiving module 1901 and a decoding module 1902 .
  • the receiving module 1901 is configured to receive the first encoded data sent by the first device through the channel between the first device and the second device.
  • the first encoded data carries: an identifier used to indicate the target FEC encoding mode.
  • the target FEC coding mode is one of the multiple FEC coding modes, and the above-mentioned first coded data is that the state parameter of the channel between the first device and the second device of the first device satisfies the target FEC
  • the data obtained by encoding the target FEC encoding mode is used.
  • the decoding module 1902 is configured to decode and error correct the first encoded data by using a decoding mode corresponding to the target FEC encoding mode according to the identifier carried by the first encoded data and used to indicate the target FEC encoding mode.
  • a decoding mode corresponding to the target FEC encoding mode according to the identifier carried by the first encoded data and used to indicate the target FEC encoding mode.
  • the codeword lengths of the multiple FEC encoding modes have a linear relationship.
  • the multiple FEC coding circuits corresponding to the multiple FEC coding modes may multiplex at least part of the structure, and the multiple FEC coding circuits corresponding to the multiple FEC coding modes The circuit may also reuse at least part of the structure, thereby reducing the size of the first device and the second device.
  • the second device may not only support decoding modes corresponding to the above-mentioned multiple FEC encoding modes, but also support decoding modes corresponding to auxiliary encoding modes other than the multiple FEC encoding modes.
  • This application does not limit the types of auxiliary coding modes, and the auxiliary coding modes may include one coding mode or multiple coding modes.
  • at least one of the CRC encoding method and the ECC encoding method, and the auxiliary encoding method may also include other FEC encoding methods different from the above-mentioned various FEC encoding methods.
  • the decoding module 1902 may use a decoding mode corresponding to the auxiliary encoding mode to decode the target data.
  • the target data is: data obtained by decoding and error-correcting the first encoded data by using a decoding mode corresponding to the target FEC encoding mode.
  • the receiving module 1901 may receive the first encoded data by receiving the second encoded data sent by the first device.
  • the second encoded data is data obtained by encoding the first encoded data by the first device using the auxiliary encoding manner.
  • the decoding module 1902 may use the decoding mode corresponding to the auxiliary encoding mode to decode the second encoded data before decoding and error correcting the first encoded data using the decoding mode corresponding to the target FEC encoding mode to obtain the first encoded data.
  • the foregoing receiving module 1901 is further configured to receive third encoded data sent by the first device through the channel.
  • the above-mentioned decoding module 1902 is further configured to decode the third encoded data by using a decoding mode corresponding to the auxiliary encoding mode.
  • the third encoded data is data encoded by using the auxiliary encoding method.
  • the state parameters include: at least one of bit error rate, packet loss rate, insertion loss, return loss, channel noise, baud rate and data transmission rate.
  • the state parameter may also have other implementation manners, which are not limited in this application.
  • the receiving module 1901 may also receive test data sent by the first device through the channel, and at least some of the parameters in the state parameters are to reflect the transmission of the test data.
  • the test data may be service data carrying service information, or may not be service data (for example, test data without service information transmitted before service data transmission), which is not limited in this application.
  • the status parameter is used to indicate the transmission quality
  • the parameter condition corresponding to the FEC encoding mode is used to indicate that the transmission quality is within the quality range corresponding to the FEC encoding mode.
  • the quality ranges corresponding to different FEC coding modes may be the same or different. There may or may not be an intersection between these quality ranges, which is not limited in this application.
  • the error correction capability of the FEC coding mode and the parameter condition corresponding to the FEC coding mode for the error correction capability of the FEC coding mode and the parameter condition corresponding to the FEC coding mode: the error correction capability and the quality range indicated by the parameter condition.
  • the quality in the negative correlation for the error correction capability of the FEC coding mode and the parameter condition corresponding to the FEC coding mode: the error correction capability and the quality range indicated by the parameter condition.
  • the above state parameter may be determined independently by the first device, or may be determined with the assistance of the second device, which is not limited in this application.
  • the communication device further includes a processing module and a sending module (neither are shown in FIG. 19 ).
  • the processing module is configured to, after the receiving module receives the test data sent by the first device through the channel, determine the at least part of the parameters according to the test data.
  • the sending module is configured to send the at least part of the parameters to the first device. In this way, the first device can acquire the at least part of the parameters.
  • the processing module reference may be made to the content related to the second device in the foregoing step 102 , step 202 and step 302 .
  • the operations performed by the sending module reference may be made to the content related to the second device in the foregoing step 103 , step 203 and step 303 .
  • the communication device further includes a processing module and a sending module (neither are shown in FIG. 19 ).
  • the processing module is configured to, after receiving the test data sent by the first device through the channel, determine the reference information of the at least part of the parameters according to the test data.
  • the sending module is configured to send the reference information to the first device. In this way, the first device can determine at least some of the above parameters according to the reference information.
  • the communication device further includes a processing module and a sending module (neither are shown in FIG. 19 ), the processing module is configured to determine according to the state parameter before the receiving module receives the first encoded data sent by the first device. Whether the state parameter satisfies the parameter condition corresponding to the target FEC coding mode.
  • the sending module may be configured to send notification information to the first device through the channel, where the notification information is used to indicate whether the state parameter satisfies the parameter condition corresponding to the target FEC coding mode.
  • the communication device for the first device or the second device provided by the present application may include a processing module, a storage module and a communication module.
  • the processing module can be used to control and manage the actions of the communication device, for example, it can be used to support the communication device to perform the actions performed by the first device or the second device in the above steps 101 to 107, or it can be used to support
  • the communication device performs the actions performed by the first device or the second device in the above steps 201 to 211 , or can be used to support the communication device to perform the actions performed by the first device or the second device in the above steps 301 to 311 .
  • the memory module may be used to support the communication device to execute stored program codes and data, and the like.
  • the communication module can be used for communication between the communication device and other devices.
  • the processing module may be a processor or a controller. It may implement or execute the various exemplary logical blocks, modules and circuits described in connection with this disclosure.
  • the processor may also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of digital signal processing (DSP) and a microprocessor, and the like.
  • the storage module may be a memory.
  • the communication module may specifically be a device that interacts with other devices, such as a radio frequency circuit, a Bluetooth chip, and a Wi-Fi chip.
  • the processing module is a processor
  • the storage module is a memory
  • the communication module is a communication interface
  • the communication device involved in this embodiment may be a communication device having the structure shown in FIG. 2 .
  • the above-mentioned modules and the like included in the communication device may be computer programs stored in the memory, and are called by the processor to implement the corresponding execution functions of the modules.
  • An embodiment of the present application further provides a communication system, where the communication system includes the above-mentioned first device and the second device.
  • the embodiments of the present application provide a computer storage medium, where a computer program is stored in the storage medium; when the computer program runs on the computer, the computer program enables the computer to execute any one of the data transmission methods provided by the embodiments of the present application.
  • the embodiments of the present application also provide a computer program product containing instructions, when the computer program product runs on the communication device, the communication device is made to execute any one of the data transmission methods provided in the embodiments of the present application by the first device or the third device. 2. The method performed by the device.
  • the above-mentioned embodiments it may be implemented in whole or in part by software, hardware, firmware or any combination thereof.
  • software it may be implemented in whole or in part in the form of a computer program product comprising one or more computer instructions.
  • the computer program instructions When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of the present application are generated.
  • the computer may be a general purpose computer, a computer network, or other programmable device.
  • the computer instructions may be stored in or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be downloaded from a website, computer, server, or data
  • the center transmits to another website site, computer, server, or data center by wire (eg, coaxial cable, optical fiber, digital subscriber line) or wireless (eg, infrared, wireless, microwave, etc.).
  • the computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server, a data center, or the like that includes one or more available media integrated.
  • the usable media may be magnetic media (eg, floppy disks, hard disks, magnetic tapes), optical media, or semiconductor media (eg, solid state drives), and the like.
  • first and second etc. are used for descriptive purposes only and should not be construed to indicate or imply relative importance.
  • the term “at least one” refers to one or more, and “plurality” refers to two or more, unless expressly limited otherwise.
  • the disclosed systems, devices, etc. may be implemented by other structural manners.
  • the device embodiments described above are only illustrative.
  • the division of modules is only a logical function division. In actual implementation, there may be other division methods.
  • multiple modules may be combined or integrated into another A system, or some feature, can be ignored, or not implemented.
  • the shown or discussed mutual coupling or direct coupling or communication connection may be through some interfaces, indirect coupling or communication connection of devices or modules, and may be in electrical or other forms.
  • Units described as separate components may or may not be physically separated, and components described as units may or may not be physical units, and may be located in one place or distributed to multiple devices. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution in this embodiment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

一种数据传输方法、通信设备及系统,涉及通信技术领域。该方法包括:在第一设备和第二设备之间信道的状态参数满足目标FEC编码方式对应的参数条件时,第一设备采用目标FEC编码方式对目标数据进行编码,得到第一编码数据,并通过该信道向第二设备发送第一编码数据。其中,目标FEC编码方式为第一设备支持的多种FEC编码方式中的一种FEC编码方式,第一编码数据携带有:用于指示目标FEC编码方式的标识。由于第一设备可以选择性地采用目标FEC编码方式对目标数据进行编码,因此能够避免总是采用目标FEC编码方式对数据进行编码所带来的较高时延和开销,本申请用于通信设备。

Description

数据传输方法、通信设备及系统 技术领域
本申请涉及通信技术领域,特别涉及一种数据传输方法、通信设备及系统。
背景技术
在通信技术领域,通信设备之间传输数据的速率越来越高,为了保证数据传输的可靠性,通信设备在传输数据的过程中需要对数据进行纠错。
通常情况下,数据的发送端(某一通信设备)和接收端(另一通信设备)基于前向纠错(Forward Error Correction,FEC)编解码的方式对数据进行纠错。示例地,发送端会采用FEC编码的方式对数据进行编码,再将编码得到的数据发送至接收端。接收端在接收到该数据后,会采用FEC解码的方式对该数据进行解码和纠错。
但是,采用FEC编解码的方式对数据进行编解码,会引入较大的延时和编码开销,且会增加通信设备的功耗。
发明内容
本申请提供了一种数据传输方法、通信设备及系统,能够解决采用FEC编解码的方式对数据进行编解码的延时和编码开销较高,且通信设备的功耗较大的问题,所述技术方案如下:
第一方面,提供了一种数据传输方法,该数据传输方法可以由第一设备执行,所述第一设备支持多种前向纠错(Forward Error Correction,FEC)编码方式,每种所述FEC编码方式均具有对应的参数条件。所述方法包括:在第一设备和第二设备之间信道的状态参数满足目标FEC编码方式对应的参数条件时,第一设备采用该目标FEC编码方式对目标数据进行编码,得到第一编码数据,并通过该信道向第二设备发送该第一编码数据。其中,所述目标FEC编码方式为第一设备支持的多种FEC编码方式中的一种FEC编码方式,采用目标FEC编码方式编码得到的第一编码数据携带有:用于指示所述目标FEC编码方式的标识。
本申请提供的数据传输方法中,第一设备支持多种FEC编码方式,并且,对于多种FEC编码方式中的每种FEC编码方式,第一设备可以根据信道的状态参数,以及该种FEC编码方式对应的参数条件,选择性地采用该种FEC编码方式对目标数据进行编码。所以,第一设备可能会采用该FEC编码方式编码,第一设备也可能会不采用该种FEC编码方式编码。这样一来,就避免了第一设备始终采用该种FEC编码方式编码导致数据传输时延较高,且通信设备功耗较高的情况发生。
另外,由于第一编码数据携带有用于指示所述目标FEC编码方式的标识,因此,第一设备无需在向第二设备发送第一编码数据之前,另外向第二设备发送消息以告知第二设备采用的编码方式包括该目标FEC编码方式,所以,降低了第一设备和第二设备之间的通信 复杂度。并且,不论第一设备采用何种编码方式进行编码,第二设备仅需根据接收到的编码数据中携带的用于指示编码方式的标识,采用相应地解码方式进行解码即可,可见数据传输的方式较为简单。
需要说明的是,当状态参数满足至少两种FEC编码方式对应的参数条件时,第一设备会采用该至少两种FEC编码方式分别对不同的目标数据进行编码,并将编码得到的数据均发送至第二设备。比如,第一设备将待编码的数据分为至少两份目标数据,该至少两份目标数据与该至少两种FEC编码方式一一对应。之后,第一设备采用该至少两种FEC编码方式中的每种FEC编码方式对对应的一份目标数据进行编码。
在本申请中,第一设备可能会采用该多种FEC编码方式编码,第一设备也可能会采用该多种FEC编码方式中的部分FEC编码方式编码,第一设备也可能会不采用该多种FEC编码方式编码。这样一来,就避免了第一设备始终采用该多种FEC编码方式编码导致数据传输时延较高,且通信设备功耗较高的情况发生。
并且,由于本申请中第一设备支持FEC编码方式,第二设备支持FEC编码方式对应的解码方式,且FEC编码方式和FEC编码方式对应的解码方式能够实现对数据中多个比特位的纠错,因此,数据传输的可靠性较高。
进一步地,本申请中可以根据信道的状态参数,从多种FEC编码方式中选择目标编码方式对目标数据进行编码。这样就使得编码所采用的目标FEC编码方式能够适配信道的状态,从而可以针对不同的信道的状态,采用不同的FEC编码方式对数据进行纠错,从而弱化信道传输数据的过程中出现的错误。
可选地,该多种FEC编码方式的码字长度具有线性关系。在多种FEC编码方式的码字长度具有线性关系时,该多种FEC编码方式对应的多个FEC编码电路可以存在复用至少部分结构的情况,该多种FEC编码方式对应的多个FEC解码电路也可以存在复用至少部分结构的情况,从而减小了第一设备和第二设备的体积。
可选地,第一设备不仅可以支持上述多种FEC编码方式,还可以支持除该多种FEC编码方式之外的辅助编码方式,第二设备还可以支持辅助编码方式对应的解码方式。第一设备还可以采用辅助编码方式进行编码,第二设备可以采用该辅助编码方式对应的解码方式进行解码。在这种情况下,前述多种FEC编码方式中的FEC编码方式的采用有条件限制,而辅助编码方式的采用可以没有条件限制。
本申请不对辅助编码方式的种类进行限定,并且辅助编码方式可以包括一种编码方式或多种编码方式。比如,辅助编码方式包括:循环冗余校验(Cyclic Redundancy Check,CRC)编码方式、错误纠正码(Error Correction Code,ECC)编码方式以及其他FEC编码方式中的至少一种,该其他FEC编码方式与上述多种FEC编码方式均不相同。
在一种可选方案中,第一设备在采用所述目标FEC编码方式对目标数据进行编码之前,可以采用所述辅助编码方式对初始数据进行编码,得到所述目标数据。
在另一种可选方案中,第一设备在采用所述目标FEC编码方式对目标数据进行编码之后,还可以采用所述辅助编码方式对所述第一编码数据进行编码,得到第二编码数据;此时,第一设备可以通过所述信道向所述第二设备发送所述第二编码数据,以实现通过所述信道向所述第二设备发送所述第一编码数据。
在又一种可选方案中,所述方法还包括:第一设备采用所述辅助编码方式对辅助数据 进行编码,得到第三编码数据,再通过所述信道向所述第二设备发送所述第三编码数据。需要说明的是,目标数据和辅助数据均为待编码的数据,不同的是,目标数据采用上述目标FEC编码方式编码,而辅助数据采用辅助编码方式编码。需要说明的是,目标数据和辅助数据均为待编码的数据,不同的是,目标数据采用上述目标FEC编码方式编码,而辅助数据采用辅助编码方式编码。可见,第一设备采用目标FEC编码方式对一部分数据(如目标数据)进行编码,以及采用辅助编码方式对另一部分数据(如辅助数据)进行编码。这样一来,该一部分数据的传输可靠性较高。并且,在辅助编码方式所引起的数据传输时延小于FEC编码方式引起的数据传输时延,且辅助编码方式带来的设备功耗也小于FEC编码方式带来的设备功耗时,该另一部分数据编码所带来的时延和设备功耗均较小。
可选地,所述状态参数包括:误码率、丢包率、插入损耗、回波损耗、信道噪声、波特率和数据传输速率中的至少一种。状态参数还可以有其他实现方式,本申请对此不作限定。
可选地,在第一设备采用所述目标FEC编码方式对目标数据进行编码之前,第一设备可以通过所述信道向所述第二设备发送测试数据,所述状态参数中的至少部分参数用于反映所述测试数据的传输情况。该测试数据可以是携带有业务信息的业务数据,当然也可以不是业务数据(比如在传输业务数据之前传输的不携带有业务信息的测试数据),本申请对此不作限定。
可选地,所述状态参数用于指示:传输质量,所述FEC编码方式对应的参数条件用于指示:所述传输质量位于所述FEC编码方式对应的质量范围内。不同FEC编码方式对应的质量范围可以相同也可以不同。这些质量范围之间可以存在交集,也可以不存在交集,本申请对此不作限定。
可选地,在所述多种FEC编码方式中,对于所述FEC编码方式的纠错能力和所述FEC编码方式对应的参数条件:所述纠错能力与所述参数条件所指示的质量范围中的质量负相关。一方面,当状态参数所指示的传输质量较低时,该状态参数能够满足纠错能力较高的FEC编码方式对应的参数条件,此时,若状态参数满足目标FEC编码方式对应的参数条件,则目标FEC编码方式为纠错能力较高的FEC编码方式,所以,能够有效提升数据的传输质量。另一方面,当状态参数所指示的传输质量较高时,该状态参数能够满足纠错能力较低的FEC编码方式对应的参数条件,此时,若状态参数满足目标FEC编码方式对应的参数条件,则目标FEC编码方式为纠错能力较低的FEC编码方式,由于FEC编码方式的纠错能力与FEC编码方式所引起的通信设备功耗正相关,所以,能够在保证数据的传输质量较高的情况下,降低通信设备的功耗。
上述状态参数可以是第一设备独立确定的,也可以是在第二设备的辅助下确定出的,本申请对此不作限定。
在一种可选方案中,第一设备在通过所述信道向所述第二设备发送测试数据之后,可以接收所述第二设备根据所述测试数据发送的所述至少部分参数,之后,再根据所述至少部分参数,确定所述状态参数。
在另一种可选方案中,第一设备在通过所述信道向所述第二设备发送测试数据之后,可以接收所述第二设备根据所述测试数据发送的所述至少部分参数的参考信息,之后,再根据所述参考信息,得到所述状态参数。
可选地,第一设备在采用所述目标FEC编码方式对目标数据进行编码之前,所述方法还包括:通过所述信道接收所述第二设备发送的通知信息,所述通知信息用于指示所述状态参数是否满足所述目标FEC编码方式对应的参数条件。第一设备可以在所述通知信息用于指示所述状态参数满足所述目标FEC编码方式对应的参数条件时,采用所述目标FEC编码方式对目标数据进行编码。
第二方面,提供了另一种数据传输方法,该数据传输方法可以用于第二设备,所述第二设备支持多种FEC编码方式对应的解码方式,每种所述FEC编码方式均具有对应的参数条件。所述方法包括:通过第一设备与所述第二设备之间的信道,接收所述第一设备发送的第一编码数据;根据第一编码数据携带的用于指示目标FEC编码方式的标识,采用目标FEC编码方式对应的解码方式,对所述第一编码数据进行解码和纠错。其中,所述目标FEC编码方式为所述多种FEC编码方式中的一种FEC编码方式,所述第一编码数据携带有:用于指示所述目标FEC编码方式的标识。上述第一编码数据为第一设备在所述第一设备和第二设备之间信道的状态参数满足目标FEC编码方式对应的参数条件时,采用所述目标FEC编码方式编码得到的数据。
可选地,该多种FEC编码方式的码字长度具有线性关系。在多种FEC编码方式的码字长度具有线性关系时,该多种FEC编码方式对应的多个FEC编码电路可以存在复用至少部分结构的情况,该多种FEC编码方式对应的多个FEC解码电路也可以存在复用至少部分结构的情况,从而减小了第一设备和第二设备的体积。
可选地,第二设备不仅可以支持上述多种FEC编码方式对应的解码方式,还可以支持除该多种FEC编码方式之外的辅助编码方式对应的解码方式。本申请不对辅助编码方式的种类进行限定,并且辅助编码方式可以包括一种编码方式或多种编码方式。比如,辅助编码方式包括:循环冗余校验(Cyclic Redundancy Check,CRC)编码方式和错误纠正码(Error Correction Code,ECC)编码方式中的至少一种,辅助编码方式也可以包括与上述多种FEC编码方式不同的其他FEC编码方式。
在一种可选方案中,第二设备在采用所述目标FEC编码方式对应的解码方式,对所述第一编码数据进行解码和纠错之后,可以采用所述辅助编码方式对应的解码方式对目标数据进行解码。其中,所述目标数据为:采用所述目标FEC编码方式对应的解码方式,对所述第一编码数据进行解码和纠错得到的数据。
在另一种可选方案中,第二设备接收所述第一设备发送的第一编码数据,包括:第二设备接收所述第一设备发送的第二编码数据,所述第二编码数据为所述第一设备采用所述辅助编码方式对所述第一编码数据进行编码得到的数据。第二设备在采用所述目标FEC编码方式对应的解码方式,对所述第一编码数据进行解码和纠错之前,可以采用所述辅助编码方式对应的解码方式对所述第二编码数据进行解码,得到所述第一编码数据。
在又一种可选方案中,所述方法还包括:第二设备接收所述第一设备通过所述信道发送的第三编码数据,再采用所述辅助编码方式对应的解码方式,对所述第三编码数据进行解码。其中,所述第三编码数据为采用所述辅助编码方式对辅助数据编码得到的数据。
可选地,所述状态参数包括:误码率、丢包率、插入损耗、回波损耗、信道噪声、波特率和数据传输速率中的至少一种。状态参数还可以有其他实现方式,本申请对此不作限定。
可选地,第二设备在接收所述第一设备发送的第一编码数据之前,还可以通过所述信道接收所述第一设备发送的测试数据,所述状态参数中的至少部分参数用于反映所述测试数据的传输情况。该测试数据可以是携带有业务信息的业务数据,当然也可以不是业务数据(比如在传输业务数据之前传输的不携带有业务信息的测试数据),本申请对此不作限定。
可选地,所述状态参数用于指示:传输质量,所述FEC编码方式对应的参数条件用于指示:所述传输质量位于所述FEC编码方式对应的质量范围内。不同FEC编码方式对应的质量范围可以相同也可以不同。这些质量范围之间可以存在交集,也可以不存在交集,本申请对此不作限定。
可选地,在所述多种FEC编码方式中,对于所述FEC编码方式的纠错能力和所述FEC编码方式对应的参数条件:所述纠错能力与所述参数条件所指示的质量范围中的质量负相关。一方面,当状态参数所指示的传输质量较低时,该状态参数能够满足纠错能力较高的FEC编码方式对应的参数条件,此时,若状态参数满足目标FEC编码方式对应的参数条件,则目标FEC编码方式为纠错能力较高的FEC编码方式,所以,能够有效提升数据的传输质量。另一方面,当状态参数所指示的传输质量较高时,该状态参数能够满足纠错能力较低的FEC编码方式对应的参数条件,此时,若状态参数满足目标FEC编码方式对应的参数条件,则目标FEC编码方式为纠错能力较低的FEC编码方式,由于FEC编码方式的纠错能力与FEC编码方式所引起的通信设备功耗正相关,所以,能够在保证数据的传输质量较高的情况下,降低通信设备的功耗。
上述状态参数可以是第一设备独立确定的,也可以是在第二设备的辅助下确定出的,本申请对此不作限定。
在一种可选方案中,第二设备在通过所述信道接收所述第一设备发送的测试数据之后,还可以根据所述测试数据确定所述至少部分参数,之后再向所述第一设备发送所述至少部分参数。这样一来,第一设备便能够获取到该至少部分参数。
在另一种可选方案中,第二设备在通过所述信道接收所述第一设备发送的测试数据之后,还可以根据所述测试数据确定所述至少部分参数的参考信息,并向所述第一设备发送所述参考信息。这样一来,第一设备便可以根据该参考信息确定上述至少部分参数。
可选地,第二设备在接收所述第一设备发送的第一编码数据之前,还可以根据所述状态参数确定所述状态参数是否满足所述目标FEC编码方式对应的参数条件;之后,第二设备可以通过所述信道向所述第一设备发送通知信息,所述通知信息用于指示所述状态参数是否满足所述目标FEC编码方式对应的参数条件。
第三方面,提供了一种通信设备,该通信设备可以是第一设备,所述第一设备支持多种FEC编码方式,每种所述FEC编码方式均具有对应的参数条件。所述通信设备包括:编码模块和发送模块。其中,编码模块用于在第一设备和第二设备之间信道的状态参数满足目标FEC编码方式对应的参数条件时,第一设备采用该目标FEC编码方式对目标数据进行编码,得到第一编码数据。发送模块用于通过该信道向第二设备发送该第一编码数据。其中,所述目标FEC编码方式为第一设备支持的多种FEC编码方式中的一种FEC编码方式,采用目标FEC编码方式编码得到的第一编码数据携带有:用于指示所述目标FEC编码方式的标识。
可选地,该多种FEC编码方式的码字长度具有线性关系。在多种FEC编码方式的码字长度具有线性关系时,该多种FEC编码方式对应的多个FEC编码电路可以存在复用至少部分结构的情况,该多种FEC编码方式对应的多个FEC解码电路也可以存在复用至少部分结构的情况,从而减小了第一设备和第二设备的体积。
可选地,第一设备不仅可以支持上述多种FEC编码方式,还可以支持除该多种FEC编码方式之外的辅助编码方式,第二设备还可以支持辅助编码方式对应的解码方式。第一设备还可以采用辅助编码方式进行编码,第二设备可以采用该辅助编码方式对应的解码方式进行解码。本申请不对辅助编码方式的种类进行限定,并且辅助编码方式可以包括一种编码方式或多种编码方式。比如,辅助编码方式包括:CRC编码方式和ECC编码方式中的至少一种,辅助编码方式也可以包括与上述多种FEC编码方式不同的其他FEC编码方式。
在一种可选方案中,上述编码模块还用于在采用所述目标FEC编码方式对目标数据进行编码之前,可以采用所述辅助编码方式对初始数据进行编码,得到所述目标数据。
在另一种可选方案中,上述编码模块还用于在采用所述目标FEC编码方式对目标数据进行编码之后,还可以采用所述辅助编码方式对所述第一编码数据进行编码,得到第二编码数据;此时,上述发送模块可以通过所述信道向所述第二设备发送所述第二编码数据,以实现通过所述信道向所述第二设备发送所述第一编码数据。
在又一种可选方案中,上述编码模块还用于采用所述辅助编码方式对辅助数据进行编码,得到第三编码数据。上述发送模块还用于通过所述信道向所述第二设备发送所述第三编码数据。
可选地,所述状态参数包括:误码率、丢包率、插入损耗、回波损耗、信道噪声、波特率和数据传输速率中的至少一种。状态参数还可以有其他实现方式,本申请对此不作限定。
可选地,上述发送模块还用于在第一设备采用所述目标FEC编码方式对目标数据进行编码之前,通过所述信道向所述第二设备发送测试数据,所述状态参数中的至少部分参数用于反映所述测试数据的传输情况。该测试数据可以是携带有业务信息的业务数据,当然也可以不是业务数据(比如在传输业务数据之前传输的不携带有业务信息的测试数据),本申请对此不作限定。
可选地,所述状态参数用于指示:传输质量,所述FEC编码方式对应的参数条件用于指示:所述传输质量位于所述FEC编码方式对应的质量范围内。不同FEC编码方式对应的质量范围可以相同也可以不同。这些质量范围之间可以存在交集,也可以不存在交集,本申请对此不作限定。
可选地,在所述多种FEC编码方式中,对于所述FEC编码方式的纠错能力和所述FEC编码方式对应的参数条件:所述纠错能力与所述参数条件所指示的质量范围中的质量负相关。
上述状态参数可以是第一设备独立确定的,也可以是在第二设备的辅助下确定出的,本申请对此不作限定。
在一种可选方案中,第一设备还可以包括接收模块和处理模块。接收模块可以用于在发送模块通过所述信道向所述第二设备发送测试数据之后,接收所述第二设备根据所述测试数据发送的所述至少部分参数。处理模块用于根据所述至少部分参数,确定所述状态参 数。
在另一种可选方案中,第一设备还可以包括接收模块和处理模块。接收模块可以用于在发送模块通过所述信道向所述第二设备发送测试数据之后,可以接收所述第二设备根据所述测试数据发送的所述至少部分参数的参考信息。处理模块用于根据所述参考信息,得到所述状态参数。
可选地,第一设备还可以包括接收模块。接收模块用于在编码模块采用所述目标FEC编码方式对目标数据进行编码之前,通过所述信道接收所述第二设备发送的通知信息,所述通知信息用于指示所述状态参数是否满足所述目标FEC编码方式对应的参数条件。编码模块可以在所述通知信息用于指示所述状态参数满足所述目标FEC编码方式对应的参数条件时,采用所述目标FEC编码方式对目标数据进行编码。
第四方面,提供了另一种通信设备,该通信设备可以为第二设备,所述第二设备支持多种FEC编码方式对应的解码方式,每种所述FEC编码方式均具有对应的参数条件。所述通信设备包括:接收模块和解码模块。其中,接收模块用于通过第一设备与所述第二设备之间的信道,接收所述第一设备发送的第一编码数据;解码模块用于根据第一编码数据携带的用于指示目标FEC编码方式的标识,采用目标FEC编码方式对应的解码方式,对所述第一编码数据进行解码和纠错。其中,所述目标FEC编码方式为所述多种FEC编码方式中的一种FEC编码方式,所述第一编码数据携带有:用于指示所述目标FEC编码方式的标识。上述第一编码数据为第一设备在所述第一设备和第二设备之间信道的状态参数满足目标FEC编码方式对应的参数条件时,采用所述目标FEC编码方式编码得到的数据。
可选地,该多种FEC编码方式的码字长度具有线性关系。在多种FEC编码方式的码字长度具有线性关系时,该多种FEC编码方式对应的多个FEC编码电路可以存在复用至少部分结构的情况,该多种FEC编码方式对应的多个FEC解码电路也可以存在复用至少部分结构的情况,从而减小了第一设备和第二设备的体积。
可选地,第二设备不仅可以支持上述多种FEC编码方式对应的解码方式,还可以支持除该多种FEC编码方式之外的辅助编码方式对应的解码方式。本申请不对辅助编码方式的种类进行限定,并且辅助编码方式可以包括一种编码方式或多种编码方式。比如,辅助编码方式包括:循环冗余校验(Cyclic Redundancy Check,CRC)编码方式和错误纠正码(Error Correction Code,ECC)编码方式中的至少一种,辅助编码方式也可以包括与上述多种FEC编码方式不同的其他FEC编码方式。
在一种可选方案中,上述解码模块在采用所述目标FEC编码方式对应的解码方式,对所述第一编码数据进行解码和纠错之后,可以采用所述辅助编码方式对应的解码方式对目标数据进行解码。其中,所述目标数据为:采用所述目标FEC编码方式对应的解码方式,对所述第一编码数据进行解码和纠错得到的数据。
在另一种可选方案中,上述接收模块可以通过接收所述第一设备发送的第二编码数据,接收上述第一编码数据。其中,所述第二编码数据为所述第一设备采用所述辅助编码方式对所述第一编码数据进行编码得到的数据。解码模块在采用所述目标FEC编码方式对应的解码方式,对所述第一编码数据进行解码和纠错之前,可以采用所述辅助编码方式对应的解码方式对所述第二编码数据进行解码,得到所述第一编码数据。
在又一种可选方案中,上述接收模块还用于接收所述第一设备通过所述信道发送的第 三编码数据。上述解码模块还用于采用所述辅助编码方式对应的解码方式,对所述第三编码数据进行解码。其中,所述第三编码数据为采用所述辅助编码方式编码得到的数据。
可选地,所述状态参数包括:误码率、丢包率、插入损耗、回波损耗、信道噪声、波特率和数据传输速率中的至少一种。状态参数还可以有其他实现方式,本申请对此不作限定。
可选地,上述接收模块在接收所述第一设备发送的第一编码数据之前,还可以通过所述信道接收所述第一设备发送的测试数据,所述状态参数中的至少部分参数用于反映所述测试数据的传输情况。该测试数据可以是携带有业务信息的业务数据,当然也可以不是业务数据(比如在传输业务数据之前传输的不携带有业务信息的测试数据),本申请对此不作限定。
可选地,所述状态参数用于指示:传输质量,所述FEC编码方式对应的参数条件用于指示:所述传输质量位于所述FEC编码方式对应的质量范围内。不同FEC编码方式对应的质量范围可以相同也可以不同。这些质量范围之间可以存在交集,也可以不存在交集,本申请对此不作限定。
可选地,在所述多种FEC编码方式中,对于所述FEC编码方式的纠错能力和所述FEC编码方式对应的参数条件:所述纠错能力与所述参数条件所指示的质量范围中的质量负相关。一方面,当状态参数所指示的传输质量较低时,该状态参数能够满足纠错能力较高的FEC编码方式对应的参数条件,此时,若状态参数满足目标FEC编码方式对应的参数条件,则目标FEC编码方式为纠错能力较高的FEC编码方式,所以,能够有效提升数据的传输质量。另一方面,当状态参数所指示的传输质量较高时,该状态参数能够满足纠错能力较低的FEC编码方式对应的参数条件,此时,若状态参数满足目标FEC编码方式对应的参数条件,则目标FEC编码方式为纠错能力较低的FEC编码方式,由于FEC编码方式的纠错能力与FEC编码方式所引起的通信设备功耗正相关,所以,能够在保证数据的传输质量较高的情况下,降低通信设备的功耗。
上述状态参数可以是第一设备独立确定的,也可以是在第二设备的辅助下确定出的,本申请对此不作限定。
在一种可选方案中,通信设备还包括处理模块和发送模块。处理模块用于在接收模块通过所述信道接收所述第一设备发送的测试数据之后,根据所述测试数据确定所述至少部分参数。发送模块用于向所述第一设备发送所述至少部分参数。这样一来,第一设备便能够获取到该至少部分参数。
在另一种可选方案中,通信设备还包括处理模块和发送模块。处理模块用于在通过所述信道接收所述第一设备发送的测试数据之后,根据所述测试数据确定所述至少部分参数的参考信息。发送模块用于向所述第一设备发送所述参考信息。这样一来,第一设备便可以根据该参考信息确定上述至少部分参数。
可选地,通信设备还包括处理模块和发送模块,处理模块用于在接收模块接收所述第一设备发送的第一编码数据之前,根据所述状态参数确定所述状态参数是否满足所述目标FEC编码方式对应的参数条件。发送模块可以用于通过所述信道向所述第一设备发送通知信息,所述通知信息用于指示所述状态参数是否满足所述目标FEC编码方式对应的参数条件。
第五方面,提供了一种通信设备,所述通信设备包括:处理器和存储器,所述存储器中存储有程序;所述处理器用于调用所述存储器中存储的程序,以使得所述通信设备执行如第一方面中任一设计所述的数据传输方法。
第六方面,提供了一种通信设备,所述通信设备包括:处理器和存储器,所述存储器中存储有程序;所述处理器用于调用所述存储器中存储的程序,以使得所述通信设备执行如第二方面中任一设计所述的数据传输方法。
第七方面,提供了一种通信系统,所述通信系统包括第一设备和第二设备。
所述第一设备为:第三方面任一设计所述的通信设备;所述第二设备为:第四方面任一设计所述的通信设备。
或者,所述第一设备为:第五方面任一设计所述的通信设备;所述第二设备为:第六方面任一设计所述的通信设备。
第八方面,提供了一种计算机存储介质,所述存储介质内存储有计算机程序;
所述计算机程序在计算机上运行时,使得计算机执行第一方面任一设计所述的数据传输方法;
或者,所述计算机程序在计算机上运行时,使得计算机执行第二方面任一设计所述的数据传输方法。
第九方面,提供了一种包含指令的计算机程序产品,当计算机程序产品在通信设备上运行时,使得通信设备执行如第一方面任一设计所述的数据传输方法;或者,当计算机程序产品在通信设备上运行时,使得通信设备执行如第二方面任一设计所述的数据传输方法;
第二方面至第九方面中任一种设计方式所带来的技术效果可参见第一方面中相应设计方式所带来的技术效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种通信系统的结构示意图;
图2为本申请实施例提供的一种通信设备的结构示意图;
图3为本申请实施例提供的一种数据传输方法的流程图;
图4为本申请实施例提供的一种信道的示意图;
图5为本申请实施例提供的一种消息的结构示意图;
图6为本申请实施例提供的一种得到第一编码数据的过程示意图;
图7为本申请实施例提供的另一种数据传输方法的流程图;
图8为本申请实施例提供的第一种初始数据的结构示意图;
图9为本申请实施例提供的第一种目标数据的结构示意图;
图10为本申请实施例提供的一种第二编码数据的结构示意图;
图11为本申请实施例提供的另一种数据传输方法的流程图;
图12为本申请实施例提供的第二种初始数据的结构示意图;
图13为本申请实施例提供的第二种目标数据的结构示意图;
图14为本申请实施例提供的第三种初始数据的结构示意图;
图15为本申请实施例提供的第三种目标数据的结构示意图;
图16为本申请实施例提供的第四种目标数据的结构示意图;
图17为本申请实施例提供的第五种目标数据的结构示意图;
图18为本申请实施例提供的一种通信设备的框图;
图19为本申请实施例提供的另一种通信设备的框图。
具体实施方式
为使本申请的原理、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
图1为本申请实施例提供的一种通信系统的结构示意图,如图1所示,该通信系统0可以包括多个通信设备(如图1中的第一设备01和第二设备02)。
需要说明的是,图1中仅示出了通信系统中的两个通信设备,通信系统中通信设备的个数也可以大于2,比如该个数可以为10、100或1000等,本申请实施例对此不作限定。通信系统中每个通信设备可以作为数据的发送端,也可以作为数据的接收端,本申请实施例中以第一设备01为数据的发送端,且第二设备02为数据的接收端为例。
通信设备可以是任一种能够传输数据的设备,比如,服务器、服务器集群、网关、路由器、手机、平板电脑、台式电脑、安防设备、智慧屏或者电子设备中的接口单元等。例如,第一设备为电子设备内的片上系统(System on Chip,SOC)与外围设备的接口单元,第二设备为该外围设备。
示例地,通信设备可以包括:处理单元;处理单元用于与存储单元耦合,并读取存储单元中的指令之后,根据指令执行如本申请实施例描述的由通信设备执行的方法。其中,处理单元的个数可以为多个,与处理单元耦合的存储单元可以独立于处理单元之外或独立于通信设备之外,也可以在处理单元或通信设备之内。存储单元可以是物理上独立的单元,也可以是云服务器上的存储空间或网络硬盘等。可选地,存储单元可以为一个或多个。当存储单元的个数为多个时,可以位于相同的或不同的位置,并且可以独立或配合使用。示例性地,当存储单元位于通信设备内部时,请参考图2,图2为本申请实施例提供的一种通信设备的结构示意图。该通信设备200包括:处理单元202和存储单元201,其中,存储单元201用于存储程序,处理单元202用于调用存储单元201中存储的程序,以使得该通信设备执行相应的方法或功能。可选地,如图2所示,该通信设备200还可以包括至少一个通信接口203和至少一个通信总线204。存储单元201、处理单元202以及通信接口203通过通信总线204通信连接。其中,通信接口203用于在处理单元202的控制下与其他设备通信,处理单元202可以通过通信总线204调用存储单元201中存储的程序。
通信系统中的通信设备间具有信道,这些通信设备可以通过该信道通信(如传输数据)。该信道可以是基于有线网络的信道,也可以是基于无线网络的信道。其中,有线网络可以包括但不限于:通用串行总线(英文:Universal Serial Bus;简称:USB),无线网络可以包括但不限于:无线保真(英文:Wireless Fidelity;简称:WIFI)、蓝牙、红外、紫蜂(英文:Zigbee)或数据等。
随着科技的发展,目前通信设备之间传输的数据的量越来越大,且数据的传输速率也越来越高。比如,通信设备采集图像的功能越来越强大,通信设备采集的图像的分辨率越来越高(比如称为4K的分辨率,称为8K的分辨率),分辨率较高的图像的数据量较大,若需要传输该图像,则会使得通信设备之间传输的数据的量较大。又比如,在高清直播场 景下,通信设备也需要快速传输数据量较大的数据。
快速传输数据量较大的数据较容易出现误码,通常情况下,为了保证数据传输的可靠性,通信设备在传输数据的过程中需要对数据进行纠错。
相关技术中,数据的发送端(某一通信设备)和接收端(另一通信设备)基于FEC编解码的方式对数据进行纠错。但是,采用FEC编解码的方式对数据进行编解码,会引入较大的延时和编码开销,且会增加通信设备的功耗。
本申请实施例提供了一种数据传输方法,在该数据传输方法中,通信设备支持多种FEC编解码方式。并且,通信设备可以根据信道的状态参数来判定是否采用每种FEC编解码方式对数据进行编解码。从而实现了对多种FEC编解码方式进行选择,降低了采用多种FEC编解码方式对数据进行编解码的概率,降低了数据传输的时延较高、编码开销较高以及通信设备功耗较大的概率。
示例地,图3为本申请实施例提供的一种数据传输方法的流程图,该数据传输方法可以用于图1所示的通信系统中的第一设备和第二设备。如图3所示,该数据传输方法可以包括:
步骤101、第一设备通过第一设备和第二设备之间的信道向第二设备发送测试数据。
第一设备和第二设备之间具有用于数据传输的信道,第一设备在向第二设备传输数据之前,可以先向第二设备发送测试数据,以便于第一设备和第二设备基于该测试数据进行信道的测试。
示例地,第一设备在发送测试数据之前,还可以向第二设备发送通知消息,该通知消息用于通知第二设备:第一设备即将发送测试数据,第二设备可以根据该通知消息接收测试数据。
可选地,第一设备和第二设备在启动之后,第一设备和第二设备之间可以持续有数据在传输,第一设备在无需向第二设备发送数据时,第一设备可以向第二设备发送空闲数据,第二设备在接收到该空闲数据之后无需对该空闲数据进行处理。示例地,第一设备在步骤101中向第二设备发送测试数据之后,可以向第二设备发送空闲数据,第二设备无需处理该空闲数据。
需要说明的是,该测试数据可以是携带有业务信息的业务数据,当然也可以不是业务数据(比如在传输业务数据之前传输的不携带有业务信息的测试数据),本申请实施例对此不作限定。
步骤102、第二设备根据测试数据确定信道的状态参数,该状态参数用于反映测试数据的传输情况。
示例地,状态参数可以包括:误码率、丢包率、波特率和数据传输速率等参数中的至少一种,本申请实施例对此不作限定。
第二设备在接收到该测试数据后,可以根据该测试数据的传输情况确定信道的状态参数。示例地,假设该状态参数包括丢包率,第一设备和第二设备预先约定了测试数据包含的数据包的总数(比如在上述通知消息中指示该总数),第二设备可以将接收到的测试数据所包含的数据包的个数与该总数相除,从而得到该丢包率。
步骤103、第二设备通过信道向第一设备发送状态参数。
第二设备在得到信道的状态参数后,可以将该状态参数通过信道发送至第一设备,以便于第一设备根据该状态参数确定是否采用多种FEC编码方式中的每种FEC编码方式编码。
需要说明的是,假设第一设备在向第二设备发送测试数据之后,持续向第二设备发送空闲数据,则在步骤103中第二设备向第一设备发送状态参数的过程中,第一设备还会持续向第二设备发送该空闲数据。
步骤103中以第二设备向第一设备发送状态参数的通道是第一设备向第二设备发送数据的信道为例。当然,第二设备向第一设备发送状态参数的通道也可以不是第一设备向第二设备发送数据的信道。如图4所示,第一设备与第二设备之间具有用于第一设备向第二设备传输数据的多条信道,第一设备和第二设备之间还具有至少一条时钟通道,以及串行时钟信号(Serial Clock,SCL)通道和串行数据信号(Serial Data,SDA)通道,第二设备可以通过任一信道、SCL通道或SDA通道向第一设备发送状态参数。
第二设备可以向第一设备直接发送状态参数,也可以将状态参数携带在消息中发送至第一设备。示例地,以状态参数包括误码率为例,该消息的结构可以如图5所示,该消息可以包括:依次排布的前缀(Premble)、数据同步信息(Sync)、控制/数据信息(C/D)、均衡码流(Equalization_Code_Stream)、伪随机二进制序列(PRBS)、误码率的伪随机二进制序列(PRBS for BER)、IDLE(闲置位)。误码率的伪随机二进制序列中可以包含误码率。
步骤104、第一设备判断状态参数是否满足多种FEC编码方式中目标FEC编码方式对应的参数条件,目标FEC编码方式为多种FEC编码方式中的一种FEC编码方式。在状态参数满足多种FEC编码方式中目标FEC编码方式对应的参数条件时,执行步骤105。
多种FEC编码方式中的每种FEC编码方式均具有对应的参数条件,第一设备在步骤104中需要判断状态参数是否满足目标FEC编码方式对应的参数条件,并在状态参数满足目标FEC编码方式对应的参数条件时,可以执行步骤105以采用该目标FEC编码方式进行编码。但是,在状态参数不满足目标FEC编码方式对应的参数条件时,第一设备无需采用该目标FEC编码方式进行编码,此时,第一设备可以直接将待传输的目标数据发送至第二设备。
目标FEC编码方式为多种FEC编码方式中的一种FEC编码方式,对于多种FEC编码方式中除目标FEC编码方式之外的每种FEC编码方式,第一设备均可以参考步骤104以确定是否采用该FEC编码方式进行编码,本申请实施例在此不做赘述。
可以理解为,第一设备可以支持多种FEC编码方式,并且每种FEC编码方式具有对应的参数条件。第一设备可以判断状态参数是否满足该每种FEC编码方式对应的参数条件,当状态参数满足某一种FEC编码方式对应的参数条件时,第一设备可以确定可以采用该种FEC编码方式对待传输的目标数据进行编码。
当状态参数不满足某一种FEC编码方式对应的参数条件时,第一设备可以确定不能采用该种FEC编码方式对目标数据进行编码。从而能够避免采用该种FEC编码方式编码所引起的数据传输时延较高,以及第一设备和第二设备的功耗较高的情况。
当状态参数不满足每种FEC编码方式对应的参数条件时,第一设备无需采用FEC编码方式对待传输的目标数据进行编码。
需要说明的是,当状态参数满足至少两种FEC编码方式对应的参数条件时,第一设备 会采用该至少两种FEC编码方式分别对不同的目标数据进行编码,并将编码得到的数据均发送至第二设备。比如,第一设备将待编码的数据分为至少两份目标数据,该至少两份目标数据与该至少两种FEC编码方式一一对应。之后,第一设备采用该至少两种FEC编码方式中的每种FEC编码方式对对应的一份目标数据进行编码。
还需要说明的是,状态参数可以包括至少一种参数,FEC编码方式对应的参数条件可以包括该至少一种参数中至少部分参数的条件,不同FEC编码方式对应的参数条件可以是针对相同的参数,也可以是针对不同的参数。比如,状态参数包括:误码率、丢包率和数据传输速率,多种FEC编码方式包括:FEC编码方式1、2和3。其中,FEC编码方式1对应的参数条件包括:误码率的某一范围,丢包率的某一范围,以及数据传输速率的某一范围;FEC编码方式2对应的参数条件包括:误码率的某一范围和数据传输速率的某一范围;FEC编码方式3对应的参数条件包括:丢包率的某一范围。
可选地,信道的状态参数用于指示:信道的传输质量,FEC编码方式对应的参数条件用于指示:传输质量位于所述FEC编码方式对应的质量范围内。不同FEC编码方式对应的质量范围可以相同也可以不同。这些质量范围之间可以存在交集,也可以不存在交集,本申请实施例对此不做限定。
一方面,在状态参数所指示的传输质量位于每种FEC编码方式对应的质量范围外时,该状态参数不会满足任一种FEC编码方式对应的参数条件,所以,后续第一设备不会采用FEC编码方式对数据进行编码。并且,当状态参数所指示的传输质量高于每种FEC编码方式对应的质量范围的上限时,状态参数所指示的传输质量较高,此时,即使不采用FEC编码方式对数据进行编码,也能够保证数据传输的质量较高。
另一方面,在状态参数所指示的传输质量位于至少一种FEC编码方式对应的质量范围内时,状态参数满足该至少一种FEC编码方式对应的参数条件,此时采用该至少一种FEC编码方式分别对目标数据进行编码能够提升数据传输质量,保证数据传输的可靠性。
所以,本申请实施例提供的数据传输方法能够实现在保证数据传输的质量较高的情况下,尽量减小数据传输时延,以及减小通信设备的功耗。
步骤105、第一设备采用目标FEC编码方式对目标数据进行编码,得到第一编码数据。
第一设备在确定状态参数满足目标FEC编码方式对应的参数条件时,可以采用目标FEC编码方式对目标数据进行编码,得到第一编码数据。
进一步地,当第一设备采用目标FEC编码方式对目标数据进行编码时,为了便于第二设备采用该目标FEC编码方式对应的解码方式进行解码和纠错,可以在该第一编码数据中携带用于指示该目标FEC编码方式的标识。示例地,假设目标FEC编码方式为方式1,采用方式1对目标数据进行编码得到的编码数据可以包括:标识位、信息位和校验位,其中,标识位用于携带用于指示该方式1的标识,信息位用于携带目标数据,校验位用于携带校验数据。
可选地,第一设备在采用目标FEC编码方式对目标数据进行编码时,第一设备可以将目标数据切割为多个第一数据块,之后,再基于该多个第一数据块得到至少一个第二数据块,每个第二数据块可以包括至少一个第一数据块。最后,第一设备可以采用目标FEC编码方式生成每个第二数据块的校验位,得到每个第二数据块的编码数据(包括该第二数据块及其校验位)。并且,第一设备还需在该至少一个第二数据块的编码数据前增加标识位 (用于指示目标FEC编码方式),以得到目标FEC编码方式对应的编码数据。如图6所示,第一设备可以将目标数据切割为6个第一数据块,之后,再基于该6个第一数据块得到3个第二数据块,每个第二数据块可以包括2个第一数据块。最后,第一设备可以采用目标FEC编码方式生成每个第二数据块的校验位,得到每个第二数据块的编码数据(包括该第二数据块及其校验位)。并且,第一设备还需在该3个第二数据块的编码数据前增加标识位(用于指示目标FEC编码方式),以得到第一编码数据。
需要说明的是,本申请实施例中的FEC编码方式可以基于任一种纠错技术,比如里德-所罗门码(Reed-solomon,RS)技术、循环码(Bose–Chaudhuri–Hocquenghem codes,BCH)或者低密度奇偶校验码(Low Density Parity Check Code,LDPC)等,本申请实施例对此不作限定。
步骤106、第一设备通过信道向第二设备发送第一编码数据。
步骤107、第二设备根据第一编码数据中用于指示目标FEC编码方式的标识,采用目标FEC编码方式对应的解码方式,对第一编码数据进行解码和纠错。
第二设备支持上述多种FEC编码方式对应的解码方式。需要说明的是,编码方式与对应的解码方式所采用的技术相同,编码方式的编码过程与解码方式的解码过程相反。
由于第一编码数据中携带有用于指示目标FEC编码方式的标识,所以,第二设备在接收到该编码数据后,可以根据该编码数据中的该标识,确定目标FEC编码方式,并采用该目标FEC编码方式对应的解码方式对该编码数据进行解码和纠错。
第二设备在采用目标FEC编码方式对应的解码方式对编码数据解码的过程中,若发现编码数据中并无错误,则可以基于解码得到的数据执行后续流程。若第二设备发现编码数据中有错误,且第二设备能够基于该目标FEC编码方式对应的解码方式对该错误进行纠错,则第二设备可以对该错误进行纠错,再基于解码得到的数据执行后续流程。若第二设备无法基于该目标FEC编码方式对应的解码方式对该错误进行纠错,则第二设备可以将该编码数据发送至第一设备,以触发第一设备重新发送数据。
综上所述,本申请实施例提供的数据传输方法中,第一设备支持多种FEC编码方式,并且,对于多种FEC编码方式中的每种FEC编码方式,第一设备可以根据信道的状态参数,以及该种FEC编码方式对应的参数条件,选择性地采用该种FEC编码方式对目标数据进行编码。所以,第一设备可能会采用该FEC编码方式编码,第一设备也可能会不采用该种FEC编码方式编码。这样一来,就避免了第一设备始终采用该种FEC编码方式编码导致数据传输时延较高,且通信设备功耗较高的情况发生。
另外,由于第一编码数据携带有用于指示所述目标FEC编码方式的标识,因此,第一设备无需在向第二设备发送第一编码数据之前,另外向第二设备发送消息以告知第二设备采用的编码方式包括该目标FEC编码方式,所以,降低了第一设备和第二设备之间的通信复杂度。并且,不论第一设备采用何种编码方式进行编码,第二设备仅需根据接收到的编码数据中携带的用于指示编码方式的标识,采用相应地解码方式进行解码即可,可见数据传输的方式较为简单。
在本申请实施例中,第一设备可能会采用该多种FEC编码方式编码,第一设备也可能会采用该多种FEC编码方式中的部分FEC编码方式编码,第一设备也可能会不采用该多种FEC编码方式编码。这样一来,就避免了第一设备始终采用该多种FEC编码方式编码导致 数据传输时延较高,且通信设备功耗较高的情况发生。
并且,由于本申请实施例中第一设备支持FEC编码方式,第二设备支持FEC编码方式对应的解码方式,且FEC编码方式和FEC编码方式对应的解码方式能够实现对数据中多个比特位的纠错,因此,本申请实施例中数据传输的可靠性较高。
进一步地,本申请实施例中可以根据信道的状态参数,从多种FEC编码方式中选择目标编码方式对目标数据进行编码。这样就使得编码所采用的目标FEC编码方式能够适配信道的状态,从而可以针对不同的信道的状态,采用不同的FEC编码方式对数据进行纠错,从而弱化信道传输数据的过程中出现的错误。
可选地,当上述信道的状态参数用于指示传输质量,且FEC编码方式对应的参数条件用于指示:传输质量位于FEC编码方式对应的质量范围内时,在多种FEC编码方式中,对于FEC编码方式的纠错能力和FEC编码方式对应的参数条件:纠错能力与参数条件所指示的质量范围中的质量负相关。
一方面,当状态参数所指示的传输质量较低时,该状态参数能够满足纠错能力较高的FEC编码方式对应的参数条件,此时,若状态参数满足目标FEC编码方式对应的参数条件,则目标FEC编码方式为纠错能力较高的FEC编码方式,所以,能够有效提升数据的传输质量。
另一方面,当状态参数所指示的传输质量较高时,该状态参数能够满足纠错能力较低的FEC编码方式对应的参数条件,此时,若状态参数满足目标FEC编码方式对应的参数条件,则目标FEC编码方式为纠错能力较低的FEC编码方式,由于FEC编码方式的纠错能力与FEC编码方式所引起的通信设备功耗正相关,所以,能够在保证数据的传输质量较高的情况下,降低通信设备的功耗。
示例地,假设多种FEC编码方式包括:第一FEC编码方式和第二FEC编码方式。第一FEC编码方式的纠错能力大于第二FEC编码方式的纠错能力。第一FEC编码方式对应的参数条件为:误码率大于1E-12(表示10的-12次方),且数据传输速率大于16Gbps(Gbps表示每秒1000兆位)。第二FEC编码方式对应的参数条件为:误码率小于或等于1E-12,和/或,数据传输速率小于或等于16Gbps。可见,第一FEC编码方式对应的参数条件所指示的传输质量的范围中的质量较低,当状态参数满足第一FEC编码方式对应的参数条件时,说明当前的传输质量较低,此时可以确定纠错能力较高的第一FEC编码方式为编码所采用的目标FEC编码方式,以提升数据的传输质量。第二FEC编码方式对应的参数条件所指示的传输质量的范围中的质量较高,当状态参数满足第二FEC编码方式对应的参数条件时,说明当前的传输质量较高,此时可以确定纠错能力较低的第二FEC编码方式为编码所采用的目标FEC编码方式,以降低通信设备的功耗。
图3所示的实施例中,第一设备可以支持多种FEC编码方式。
该多种FEC编码方式的码字不同。其中。第一设备在采用某一种FEC编码方式对数据进行编码得到的编码数据可以包括至少一个码字(Code Word),该码字可以称为该种FEC编码方式的码字。示例地,码字可以包括信息位和校验位,信息位用于携带被编码的数据,校验位用于携带FEC编码得到的校验数据,码字不同可以是指:码字的类型(如RS或者 BCH、LDPC)、码字的长度、信息位的长度、校验位的长度以及校验位能够纠错的信息位的长度中的至少一种不同。其中,校验位能够纠错的信息位的长度用于表征FEC编码方式的纠错能力。
例如,第一设备可以支持:第一FEC编码方式和第二FEC编码方式,第一FEC编码方式的码字的特征可以表示为RS(228,220,4,8),第二FEC编码方式的码字的特征可以表示为RS(114,110,2,8)。其中,RS(228,220,4,8)表示第一FEC编码方式的码字的类型为RS,该码字的长度为228个符号(Symbol),该码字中信息位的长度为220个符号,该码字中校验位的长度为8个符号,该码字中校验位能够纠错的信息位的长度为4个符号。RS(114,110,2,8)表示第二FEC编码方式的码字的类型为RS,该码字的长度为114个符号,该码字中信息位的长度为110个符号,该码字中校验位的长度为8个符号,该码字中校验位能够纠错的信息位的长度为2个符号。可见,第一FEC编码方式和第二FEC编码方式的码字的长度不同,码字中信息位的长度不同,且校验位能够纠错的信息位的长度不同(第一FEC编码方式和第二FEC编码方式的纠错能力不同)。
第一设备可以包括与该多种FEC编码方式一一对应的多个FEC编码电路,第一设备可以通过每个FEC编码电路采用该编码电路对应的FEC编码方式进行编码。第二设备可以包括与该多种FEC编码方式一一对应的多个FEC解码电路,第二设备可以通过每个FEC解码电路采用该解码电路对应的FEC编码方式对应的解码方式进行解码和纠错。
第一设备还可以包括:第一选择电路,该第一选择电路与该多个FEC编码电路连接,第一设备在确定出多种FEC编码方式中状态参数满足对应的参数条件的FEC编码方式时,第一设备会生成第一控制信号,该第一控制信号可以触发第一选择电路开启这些FEC编码方式对应的FEC编码电路,以便于后续通过这些FEC编码电路采用相应地FEC编码方式进行编码。相应地,第二设备也可以包括第二选择电路,该第二选择电路与该多个FEC解码电路连接,第二设备在确定出需要采用的解码方式时,第二设备会生成第二控制信号,该第二控制信号可以触发第二选择电路开启这些解码方式对应的FEC编码方式所对应的FEC解码电路,以便于后续通过这些FEC解码电路采用相应地解码方式进行解码和纠错。该第一选择电路和第二选择电路可以为数据选择器(multiplexer,MUX)或辅助通道(Auxiliary,AUX)等。
示例地,对于第一控制信号和第二控制信号中的每个控制信号,该控制信号可以包括与多种FEC编码方式一一对应的多个控制位,第一控制信号中的每个控制位用于指示是否开启对应的FEC编码方式对应的FEC编码电路,第二控制信号中的每个控制位用于指示是否开启对应的FEC编码方式对应的FEC解码电路。
例如,假设多个FEC编码方式包括第一FEC编码方式和第二FEC编码方式,第一控制信号可以包括两个比特位,这两个比特位中的第一个比特位与第一FEC编码方式对应,第二个比特位与第二FEC编码方式对应。如表1所示,当第一控制信号为00时,表示状态参数不满足第一FEC编码方式对应的参数条件,且状态参数不满足第二FEC编码方式对应的参数条件,第一选择电路会将第一FEC编码方式对应的FEC编码电路和第二FEC编码方式对应的FEC编码电路均关闭。当第一控制信号为01时,表示状态参数不满足第一FEC编码方式对应的参数条件,且状态参数满足第二FEC编码方式对应的参数条件,第一选择电路会将第一FEC编码方式对应的FEC编码电路关闭,并将第二FEC编码方式对应的FEC 编码电路开启。当第一控制信号为10时,表示状态参数满足第一FEC编码方式对应的参数条件,且状态参数不满足第二FEC编码方式对应的参数条件,第一选择电路会将第一FEC编码方式对应的FEC编码电路开启,并将第二FEC编码方式对应的FEC编码电路关闭。当第一控制信号为11时,表示状态参数满足第一FEC编码方式对应的参数条件,且状态参数满足第二FEC编码方式对应的参数条件,第一选择电路会将第一FEC编码方式对应的FEC编码电路以及第二FEC编码方式对应的FEC编码电路均开启。
表1
Figure PCTCN2021080868-appb-000001
可选地,该多种FEC编码方式的码字长度具有线性关系。在多种FEC编码方式的码字长度具有线性关系时,该多种FEC编码方式对应的多个FEC编码电路可以存在复用至少部分结构的情况,该多种FEC编码方式对应的多个FEC解码电路也可以存在复用至少部分结构的情况,从而减小了第一设备和第二设备的体积。
图3所示的实施例中以状态参数用于反映测试数据的传输情况,且由第二设备确定全部的状态参数之后发送给第一设备为例。
一方面,也可以是状态参数中的一部分参数用于反映测试数据的传输情况,且由第二设备确定状态参数中的该一部分参数之后发送给第一设备。此时,第一设备还需自行确定出状态参数中的另一部分参数,进而根据接收到一部分参数和自行确定出的另一部分参数,得到状态参数。
示例地,假设状态参数可以包括:误码率、丢包率、插入损耗、回波损耗、信道噪声、波特率和数据传输速率,上述一部分参数可以包括:误码率、丢包率、波特率和数据传输速率,另一部分参数可以包括:插入损耗、回波损耗和信道噪声。或者,上述一部分参数可以包括:误码率、波特率和数据传输速率,另一部分参数可以包括:丢包率、插入损耗、回波损耗和信道噪声。
另一方面,该状态参数也可以全部由第一设备确定,本申请实施例对此不作限定。
示例地,当状态参数由第一设备确定时,图3中的步骤102和步骤103无需执行,且在步骤101中第一设备向第二设备发送测试数据后,第二设备可以根据该测试数据确定状态参数的参考信息,并通过信道向第一设备发送该参考信息。之后,第一设备可以根据该参考信息得到上述状态参数。
需要说明的是,该参考信息可以是第一设备得到状态参数所需的信息。
比如,当状态参数包括丢包率时,该参考信息可以是第二设备接收到的测试数据所包含的数据包的个数,第一设备在接收到该参考信息后,可以将参考信息中的个数与测试数据中数据包的总数相除,以得到测试数据的丢包率。
可选地,当状态参数包括多种参数时,该多种参数中的一部分参数可以由第一设备确定,而另一部分参数由第二设备确定后发送给第一设备。其中,第一设备可以自行确定该一部分参数,或者,第一设备也可以接收第二设备发送的该一部分参数的参考信息,并根据该参考信息确定该一部分参数。
比如,状态参数包括:丢包率、误码率和数据传输速率,其中,丢包率和误码率可以由第二设备确定并发送至第一设备,数据传输速率可以由第一设备自行确定。示例地,第一设备可以包括切速状态寄存器,该切速状态寄存器的状态值用于指示数据传输速率,比如切速状态寄存器具有两种状态值:0和1,状态值0表示低速传输状态,此时的数据传输速率低于速率阈值,状态值1表示高速传输状态,此时的数据传输速率高于速率阈值。该速度阈值可以是任意数值,如6Gbps或16Gbps等。第一设备可以通过读取该切速状态寄存器的状态值来确定该数据传输速率。可选地,当第二设备需要确定数据传输速率时,第二设备也可以读取第二设备中的切速状态寄存器的状态值,以确定该数据传输速率。
可选地,无论状态参数以何种方式确定,该状态参数均可以包括:误码率、丢包率、插入损耗、回波损耗、信道噪声、波特率和数据传输速率中的至少一种。
上述实施例中以第一设备确定状态参数是否满足目标FEC编码方式对应的参数条件为例。可选地,也可以是第二设备确定状态参数是否满足目标FEC编码方式对应的参数条件,再由第二设备向第一设备发送用于指示状态参数是否满足目标FEC编码方式对应的参数条件的通知信息。第一设备可以根据该通知信息确定确定状态参数是否满足目标FEC编码方式对应的参数条件。
在这种情况下,第二设备无需执行上述步骤103。并且,第二设备根据状态参数确定该多种FEC编码方式中目标编码方式的过程可以参考上述步骤104,本申请实施例在此不做赘述。
以上讲述了对多种FEC编码方式中的FEC编码方式选择性地采用的过程。在此基础上,第一设备还可以支持辅助编码方式,第二设备还可以支持辅助编码方式对应的解码方式。第一设备还可以采用与上述多种FEC编码方式不同的辅助编码方式进行编码,第二设备可以采用该辅助编码方式对应的解码方式进行解码。在这种情况下,前述实施例中多种FEC编码方式中的FEC编码方式的采用有条件限制,而辅助编码方式的采用可以没有条件限制。
本申请实施例对辅助编码方式的种类不作限定,并且辅助编码方式可以包括一种编码方式或多种编码方式。比如,辅助编码方式包括:CRC编码方式和ECC编码方式中的至少一种,辅助编码方式也可以包括与上述多种FEC编码方式不同的其他FEC编码方式。
可选地,当辅助编码方式具有纠错能力时,第二设备在采用该辅助编码方式对应的解码方式进行解码时,还可以采用该辅助编码方式对应的解码方式进行纠错。当辅助编码方式具有检错能力时,第二设备在采用该辅助编码方式对应的解码方式进行解码时,还可以采用该辅助编码方式对应的解码方式进行检错。下述实施例中并未提到采用辅助编码方式对应的解码方式进行检错或纠错的内容,在下述实施例中可以根据辅助编码方式的能力,相应增加采用辅助编码方式对应的解码方式进行检错或纠错的内容,本申请实施例在此不做赘述。
示例地,第一设备可以先采用FEC编码方式(如上述目标FEC编码方式)进行编码,再采用辅助编码方式进行编码。此时,在图3中步骤105之后,该数据传输方法还包括:第一设备采用辅助编码方式对第一编码数据进行编码,得到第二编码数据,在步骤106中,第一设备可以通过信道向第二设备发送第二编码数据,以实现向第二设备发送第一编码数据。相应地,第二设备会在步骤106中接收到第二编码数据,第二设备在步骤107之前,可以采用辅助编码方式对应的解码方式对第二编码数据进行解码,得到上述第一编码数据。
又示例地,第一设备可以先采用辅助编码方式进行编码,再采用FEC编码方式(如上述目标FEC编码方式)进行编码。此时,在图3中步骤105之前,该数据传输方法还包括:第一设备采用辅助编码方式对初始数据进行编码,得到上述目标数据。相应地,第二设备在步骤107之后,可以采用辅助编码方式对应的解码方式,对目标数据进行解码。该目标数据为采用目标FEC编码方式对应的解码方式对第一编码数据解码和纠错得到的数据。
再示例地,第一设备可以分别采用FEC编码方式(如上述目标FEC编码方式)和辅助编码方式进行编码。此时,图3所示的实施例还包括:第一设备采用辅助编码方式对辅助数据进行编码,得到第三编码数据;之后,第一设备通过信道向第二设备发送第三编码数据。相应地,第二设备在接收到该第三编码数据后,可以采用辅助编码方式对应的解码方式对该第三编码数据进行解码。
需要说明的是,目标数据和辅助数据均为待编码的数据,不同的是,目标数据采用上述目标FEC编码方式编码,而辅助数据采用辅助编码方式编码。可见,第一设备采用目标FEC编码方式对一部分数据(如目标数据)进行编码,以及采用辅助编码方式对另一部分数据(如辅助数据)进行编码。这样一来,该一部分数据的传输可靠性较高。并且,当辅助编码方式所引起的数据传输时延小于FEC编码方式引起的数据传输时延,且辅助编码方式带来的设备功耗也小于FEC编码方式带来的设备功耗时,该另一部分数据编码所带来的时延和设备功耗均较小。
再示例地,上述辅助编码方式可以包括多种编码方式,第一设备可以先采用辅助编码方式中的一部分编码方式进行编码,再采用FEC编码方式(如上述目标FEC编码方式)进行编码,再采用辅助编码方式中的另一部分编码方式进行编码。第二设备可以先采用该另一部分编码方式对应的解码方式解码,再采用FEC编码方式对应的解码方式解码,再采用该一部分编码方式对应的解码方式解码。
当第一设备不仅采用目标FEC编码方式编码,还采用辅助编码方式编码时,数据传输的可靠性能够得到进一步地提升。并且,在状态参数不满足任一种FEC编码方式对应的参数条件时,第一设备可以采用辅助编码方式进行编码,从而能够保证数据传输的可靠性。
可选的,辅助编码方式所引起的数据传输时延小于FEC编码方式引起的数据传输时延,且辅助编码方式带来的设备功耗也小于FEC编码方式带来的设备功耗,所以,在状态参数不满足任一种FEC编码方式对应的参数条件时,第一设备可以采用辅助编码方式进行编码,从而能够在保证数据传输的可靠性的基础上,尽量减小数据传输时延,以及减小设备功耗。
可选地,第一设备是否采用辅助编码方式进行编码,以及辅助编码方式的编码顺序,可以是第一设备上预先配置的;第二设备是否采用辅助编码方式对应的解码方式进行解码,以及该解码方式的解码顺序也可以是第二设备上预先配置好的。第一设备可以根据该编码顺序采用辅助编码方式进行编码,第二设备可以根据该解码顺序采用辅助编码方式对应的 解码方式进行解码。
在此基础上,辅助编码方式可以具有对应的参数条件,第一设备在采用辅助编码方式进行编码前,也可以先判断上述状态参数是否满足辅助编码方式对应的参数条件,在状态参数满足辅助编码方式对应的参数条件时,才允许采用辅助编码方式进行编码。
此时,若第一设备采用辅助编码方式编码,则编码得到的编码数据携带有用于指示该辅助编码方式的标识。第二设备在接收到编码数据后,在根据解码顺序采用辅助编码方式对应的解码方式解码前,可以检测该编码数据中是否携带有用于指示辅助编码方式的标识。在该编码数据中携带有该标识时,第二设备才采用辅助编码方式对应的解码方式解码,否则第二设备不会采用辅助编码方式对应的解码方式解码。
根据以上内容可知,本申请实施例提供的数据传输方法中,可以在多种FEC编码方式中目标FEC编码方式的基础上,结合辅助编码方式进行编码。以下将通过几个示例对本申请实施例提供的数据传输方法进行进一步地解释说明。
辅助编码方式可以是基于任一种编码技术的辅助编码方式。需要说明的是,若该任一种编码技术不包括FEC编码方式,则基于该种编码技术的辅助编码方式包括:该种编码技术中的所有编码方式。若该任一种编码技术包括FEC编码方式,则基于该种编码技术的辅助编码方式包括:该种编码技术中除FEC编码方式之外的编码方式。
示例地,图7为本申请实施例提供的另一种数据传输方法的流程图,该数据传输方法中以辅助编码方式为基于移动产业处理器接口(MIPI)相机串行接口2(CSI-2)中D-物理层端口(D-Port Physical Layer,D-PHY)的辅助编码方式为例,其中,D-PHY是CSI-2中的一种物理层端口。D-PHY技术包括:ECC编码方式和CRC编码方式,且不包括FEC编码方式,因此,基于D-PHY的辅助编码方式包括:ECC编码方式和CRC编码方式。
如图7所示,该数据传输方法包括:
步骤201、第一设备通过第一设备和第二设备之间的信道向第二设备发送测试数据。
步骤201可以参考步骤101,本申请实施例在此不做赘述。
步骤202、第二设备根据测试数据确定信道的状态参数,该状态参数用于反映测试数据的传输情况。
步骤202可以参考步骤102,本申请实施例在此不做赘述。
步骤203、第二设备通过信道向第一设备发送状态参数。
步骤203可以参考步骤103,本申请实施例在此不做赘述。
步骤204、第一设备在待传输的数据块前添加数据类型符(Data ID)、字节数(WC)和虚拟通道标识符(VCX),得到初始数据。
该待传输的数据块可以是由第一设备对待传输数据进行切割得到的数据块,数据块可以包括8个比特位。
示例地,该初始数据的结构如图8所示,该初始数据包括:依次排布的数据类型符、WC、VCX和数据块(payload)。其中,WC用于标记Payload中字节的数量,WC包括16个比特位。
步骤205、第一设备采用基于D-PHY的辅助编码方式对初始数据进行编码,得到目标数据。
示例地,第一设备可以采用ECC编码模式对初始数据中的数据类型符、WC和VCX进行编码得到ECC纠检错校验码(可以包括6个比特位),以及采用CRC编码模式对初始数据中的数据块进行编码得到CRC校验码(可以包括16个比特位)。之后,第一设备可以将ECC纠检错校验码和CRC校验码添加至初始数据中数据块的包头和包尾,得到目标数据。目标数据的结构如图9所示,目标数据包括:依次排布的数据类型符、WC、VCX、ECC纠检错校验码、数据块和CRC校验码。
步骤206、第一设备判断状态参数是否满足多种FEC编码方式中目标FEC编码方式对应的参数条件,目标FEC编码方式为多种FEC编码方式中的任一种FEC编码方式。在状态参数满足多种FEC编码方式中目标FEC编码方式对应的参数条件时,执行步骤207。
在状态参数不满足目标FEC编码方式对应的参数条件时,第一设备无需采用该目标FEC编码方式进行编码,此时,第一设备可以直接将目标数据发送至第二设备。第二设备可以直接采用基于D-PHY的辅助编码方式对应的解码方式,对目标数据进行解码,得到初始数据,并执行步骤211。
步骤206可以参考步骤104,本申请实施例在此不做赘述。
步骤207、第一设备采用目标FEC编码方式对目标数据进行编码,得到第一编码数据。
步骤207可以参考步骤105,本申请实施例在此不做赘述。
步骤208、第一设备通过信道向第二设备发送第一编码数据。
步骤208可以参考步骤106,本申请实施例在此不做赘述。
步骤209、第二设备根据第一编码数据中用于指示目标FEC编码方式的标识,采用目标FEC编码方式对应的解码方式,对第一编码数据进行解码和纠错,得到目标数据。
步骤209可以参考步骤107,本申请实施例在此不做赘述。
步骤210、第二设备采用基于D-PHY的辅助编码方式对应的解码方式,对目标数据进行解码,得到初始数据。
第二设备采用基于D-PHY的辅助编码方式对应的解码方式解码的过程,是第一设备采用基于D-PHY的辅助编码方式编码的过程的逆过程。
第二设备在采用基于D-PHY的辅助编码方式对应的解码方式对编码数据解码的过程中,若发现编码数据中并无错误,则可以基于解码得到的数据执行后续流程。若第二设备发现编码数据中有错误,且第二设备能够基于该解码方式对该错误进行纠错,则第二设备可以对该错误进行纠错,再基于解码得到的数据执行后续流程。若第二设备无法基于该解码方式对该错误进行纠错,则第二设备可以将该编码数据发送至第一设备,以触发第一设备重新发送数据。
步骤211、第二设备去除初始数据中的数据类型符、WC和VCX,得到待传输的数据块。
图7所示的实施例中以多种FEC编码方式中存在状态参数满足对应的参数条件的FEC编码方式为例,当状态参数不满足多种FEC编码方式中每种FEC编码方式对应的参数条件时,第一设备无需执行步骤206和步骤207,且在步骤208中第一设备向第二设备发送采用辅助编码方式编码得到的编码数据。第二设备在接收到该编码数据后,由于并未检测到用于指示目标FEC编码方式的标识,因此,第二设备也无需执行步骤209,而是直接在步骤210中采用基于D-PHY的辅助编码方式对应的解码方式,对接收到的编码数据进行解码,得到初始数据。
可选地,在步骤208之前,第一设备还可以采用另一编码方式对第一编码数据进行编码,以得到该另一编码方式对应的编码数据(称为第二编码数据),在步骤208中,第一设备可以发送该第二编码数据。例如,如图10所示,该第二编码数据可以包括:依次排布的传输起始位(Start of Transmission,SOT)、第一编码数据和传输结束位(End of Transmission,EOT)。
相应地,若在步骤208之前,第一设备采用另一编码方式对第一编码数据进行编码,则第二设备在步骤209之前,可以采用该另一编码方式对应的解码方式对接收到的编码数据进行解码,以得到第一编码数据,之后,再执行步骤209。
又示例地,图11为本申请实施例提供的另一种数据传输方法的流程图,该数据传输方法中以辅助编码方式为基于高清多媒体接口(High-Definition Multimedia Interface,HDMI)的编码方式为例。HDMI编码技术包括:ECC编码方式、CRC编码方式以及FEC编码方式,由于HDMI编码技术包括FEC编码方式,所以,基于HDMI的辅助编码方式包括:HDMI的编码技术中除FEC编码方式之外的编码方式,如ECC编码方式和CRC编码方式。
如图11所示,该数据传输方法包括:
步骤301、第一设备通过第一设备和第二设备之间的信道向第二设备发送测试数据。
步骤301可以参考步骤101,本申请实施例在此不做赘述。
步骤302、第二设备根据测试数据确定信道的状态参数,该状态参数用于反映测试数据的传输情况。
步骤302可以参考步骤102,本申请实施例在此不做赘述。
步骤303、第二设备通过信道向第一设备发送状态参数。
步骤303可以参考步骤103,本申请实施例在此不做赘述。
步骤304、第一设备在待传输的数据块前添加前缀、数据同步信息(Sync)、控制/数据信息(C/D)和预留位(Rsvd),得到初始数据。
前缀用于表明数据块(Payload)的类型是Data Island(一种数据类型)或Video Data(另一种数据类型)。示例地,该初始数据的结构如图12所示,该初始数据包括:依次排布的前缀、Sync、C/D、Rsvd和数据块。
步骤305、第一设备采用基于HDMI的辅助编码方式对初始数据进行编码,得到目标数据。
示例地,第一设备可以采用ECC编码模式对初始数据中的数据块进行编码得到ECC纠检错校验码(可以包括6个比特位),以及采用CRC编码模式对初始数据中的数据块进行编码得到CRC校验码(可以包括16个比特位)。之后,第一设备可以将ECC纠检错校验码和CRC校验码添加至初始数据中数据块的包尾,得到目标数据。目标数据的结构如图13所示,目标数据包括:依次排布的前缀、Sync、C/D、Rsvd、数据块、ECC纠检错校验码和CRC校验码。
可选地,第一设备在采用基于HDMI的辅助编码方式对初始数据进行编码前,还可以确定状态参数满足基于HDMI的辅助编码方式对应的参数条件,此时,第一设备在基于HDMI的辅助编码方式对初始数据进行编码前,可以在初始数据中添加用于指示基于HDMI的辅助编码方式的标识。此时的初始数据如图14所示,基于HDMI的辅助编码方式的标识 可以是图14中的丢包率确认字段(Package Loss Rate_Ensure,PLR_EN)。第一设备采用基于HDMI的辅助编码方式对该初始数据进行编码,得到的目标数据可以如图15所示。
步骤306、第一设备判断状态参数是否满足多种FEC编码方式中目标FEC编码方式对应的参数条件,目标FEC编码方式为多种FEC编码方式中的任一种FEC编码方式。在状态参数满足多种FEC编码方式中目标FEC编码方式对应的参数条件时,执行步骤307。
在状态参数不满足目标FEC编码方式对应的参数条件时,第一设备无需采用该目标FEC编码方式进行编码,此时,第一设备可以直接将目标数据发送至第二设备。第二设备可以直接采用基于HDMI的辅助编码方式对应的解码方式,对目标数据进行解码,得到初始数据,并执行步骤311。
步骤306可以参考步骤104,本申请实施例在此不做赘述。
步骤307、第一设备采用目标FEC编码方式对目标数据进行编码,得到第一编码数据。
步骤307可以参考步骤105,本申请实施例在此不做赘述。
步骤308、第一设备通过信道向第二设备发送第一编码数据。
步骤308可以参考步骤106,本申请实施例在此不做赘述。
步骤309、第二设备根据编码方式中用于指示目标FEC编码方式的标识,采用目标FEC编码方式对应的解码方式,对第一编码数据进行解码和纠错,得到目标数据。
步骤309可以参考步骤107,本申请实施例在此不做赘述。
步骤310、第二设备采用基于HDMI的辅助编码方式对应的解码方式,对目标数据进行解码,得到初始数据。
第二设备采用基于HDMI的辅助编码方式对应的解码方式解码的过程,是第一设备采用基于HDMI的辅助编码方式编码的过程的逆过程。
第二设备在采用基于HDMI的辅助编码方式对应的解码方式对编码数据解码的过程中,若发现编码数据中并无错误,则可以基于解码得到的数据执行后续流程。若第二设备发现编码数据中有错误,且第二设备能够基于该解码方式对该错误进行纠错,则第二设备可以对该错误进行纠错,再基于解码得到的数据执行后续流程。若第二设备无法基于该解码方式对该错误进行纠错,则第二设备可以将该编码数据发送至第一设备,以触发第一设备重新发送数据。
可选地,若步骤305中第一设备在编码过程中添加了用于指示基于HDMI的辅助编码方式的标识,则在步骤310之前,第二设备需要检测目标数据中是否包含用于指示基于HDMI的辅助编码方式的标识。在目标数据包含用于指示基于HDMI的辅助编码方式的标识时,第二设备才执行步骤310;否则,第二设备跳过步骤310直接执行步骤311。
步骤311、第二设备去除初始数据中的前缀、Sync、C/D和Rsvd,得到待传输的数据块。
图11所示的实施例中以多种FEC编码方式中存在状态参数满足对应的参数条件的FEC编码方式为例,当状态参数不满足多种FEC编码方式中每种FEC编码方式对应的参数条件时,第一设备无需执行步骤306和步骤307,且在步骤308中第一设备向第二设备发送采用辅助编码方式编码得到的编码数据(如上述目标数据)。第二设备在接收到编码数据后,由于并未检测到用于指示目标FEC编码方式的标识,因此,第二设备也无需执行步骤309,而是直接在步骤310中采用基于HDMI的辅助编码方式对应的解码方式,对接收到的编码数据进行解码,得到初始数据。
可选地,在步骤308之前,第一设备还可以采用另一编码方式对第一编码数据进行编码,以得到该另一编码方式对应的编码数据(称为第二编码数据),在步骤308中,第一设备可以发送该第二编码数据。该第二编码数据的结构可以参考图10。
相应地,若在步骤308之前,第一设备采用另一编码方式对第一编码数据进行编码,则第二设备在步骤309之前,可以采用该另一编码方式对应的解码方式对接收到的第二编码数据进行解码,以得到第一编码数据,之后,再执行步骤309。
以上实施例中以基于D-PHY的辅助编码方式,以及基于HDMI的辅助编码方式为例,对本申请实施例提供的数据传输方法进行了简单说明。可选地,本申请实施例中的辅助编码方式还可以替换为基于C-PHY(MIPI CSI-2中的一种物理层端口)的辅助编码方式、基于MIPI CSI-3的辅助编码方式、基于显示端口(Display Port,DP)的辅助编码方式。
基于C-PHY(MIPI CSI-2中的一种物理层端口)的辅助编码方式与基于D-PHY的辅助编码方式类似。但基于D-PHY的辅助编码方式中采用ECC编码方式对数据类型符、WC和VCX编码,得到ECC纠检错校验码,而基于C-PHY的辅助编码方式中采用CRC编码方式对数据类型符、WC和VCX编码,得到包头CRC(Packet Header-CRC,PH-CRC)校验码;并且,基于C-PHY的辅助编码方式中采用CRC编码方式对数据块编码得到的CRC校验码称为:有效载荷数据CRC(Payload Data-CRC,PD-CRC)校验码。基于C-PHY的辅助编码方式对数据块编码得到的目标数据的结构可以如图16所示,该目标数据包括:依次排布的VCX、数据类型符、WC、PH-CRC校验码、数据块和PD-CRC校验码。目标数据可以包括依次排布的至少两组附加信息(包括VCX、数据类型符、WC、PH-CRC校验码),图16中以目标数据包括依次排布的两组附加信息为例。可选地,VCX和数据类型符之间还可以有预留位,图16中未示出。
基于MIPI CSI-3的辅助编码方式与基于MIPI CSI-2(如基于MIPI CSI-2中D-PHY)的辅助编码方式类似。但基于MIPI CSI-3的辅助编码方式中会在数据块前添加附加信息,并采用国际电话电报咨询委员会(International Telephone and Telegraph Consultative Committee,CCITT)CRC的编码方式对数据块进行编码,得到CRC校验码,并将CRC校验码添加至数据块的尾部,得到目标数据。其中,附加信息可以包括:数据链路层控制标识符(Data Link Layer Control Symbol Identifier,ESC_DL)、帧起始位(Start of Frame,SOF)、流量类型(Traffic Class,TC)、预留位、ESC_DL、L2层服务数据单元结束帧标识符(End of Frame for even L2 Service Data Unit,EOF_EVEN)和帧序列号(Frame_seq.Number)。示例地,该目标数据的结构如图17所示,该目标数据包括:依次排布的ESC_DL、SOF、TC、预留位、数据块、ESC_DL、EOF_EVEN和帧序列号和CRC校验码。
基于DP的辅助编码方式与基于HDMI的辅助编码方式类似,所以,应用基于DP的辅助编码方式的数据传输方法,与应用基于HDMI的辅助编码方式的数据传输方法(如图11所示的方法)类似。其中,应用基于HDMI的辅助编码方式的数据传输方法中采用FEC编码方式编码的步骤由第一设备中的物理层执行,而应用基于HDMI的辅助编码方式的数据传输方法中采用FEC编码方式编码的步骤由第一设备中的链路层执行。
上述第一设备和第二设备都是本申请实施例提供的通信系统中的通信设备,通信设备的架构通常包括:从上到下依次排布的事务层、链路层和物理层。事务层能够接收来自应用层的待编码的数据,事务层、链路层和物理层中的上层会将接收到的数据传输至下层,传输至物理层的数据可以通过物理层的端口传输至其他设备。从物理层的端口输入的数据可以依次向上层传输,直至由事务层传输至应用层。
本申请实施例中,第一设备中编码的步骤可以由事务层、链路层和物理层中的至少一个功能层执行。其中,编码的步骤可以包括:采用目标FEC编码方式编码的步骤,采用辅助编码方式编码的步骤等。第二设备中解码的步骤可以由事务层、链路层和物理层中的至少一个功能层执行。其中,解码的步骤可以包括:采用目标FEC编码方式对应的解码方式解码和纠错的步骤,采用辅助编码方式对应的解码方式解码的步骤等。这样一来,能够实现对事务层、链路层和物理层中至少一个功能层传输数据时的错误进行纠错。
相关技术中,编解码的步骤由通信设备中的某一个功能层(如链路层或物理层等)执行,这样一来,就无法实现对通信设备中的多个功能层传输数据时的错误进行纠错。而本申请实施例中,当第一设备中编码的步骤可以由事务层、链路层和物理层中的多个功能层执行,第二设备中解码的步骤可以由事务层、链路层和物理层中的多个功能层执行时,能够实现对事务层、链路层和物理层中的多个功能层传输数据时的错误进行纠错。
上文中结合图1至图17,详细描述了本申请所提供的数据传输方法,可以理解的是,设备为了实现上述各方法所描述的功能,其需包含执行各个功能相应的硬件和/或软件模块。结合本文中所公开的实施例描述的各方法的执行过程,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以结合实施例对每个特定的应用来使用不同方式来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本实施例可以根据上述方法实施例对相应的设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块可以采用硬件的形式实现。需要说明的是,本实施例中对模块的划分是示意性的,具体作为一种逻辑功能可能的划分方式,实际实现时可以有另外的划分方式。
当采用功能模块划分方式时,下面将结合图18和图19描述本申请所提供的通信设备。
图18为本申请实施例提供的一种通信设备的框图,该通信设备例如可以属于前述各实施例中的第一设备。所述第一设备支持多种FEC编码方式,每种所述FEC编码方式均具有对应的参数条件。如图18所示,该通信设备包括:编码模块1801和发送模块1802。
编码模块1801用于在第一设备和第二设备之间信道的状态参数满足目标FEC编码方式对应的参数条件时,第一设备采用该目标FEC编码方式对目标数据进行编码,得到第一编码数据。其中,所述目标FEC编码方式为第一设备支持的多种FEC编码方式中的一种FEC编码方式,采用目标FEC编码方式编码得到的第一编码数据携带有:用于指示所述目标FEC编码方式的标识。编码模块1801用于执行的操作可以参考上述步骤105、步骤207和步骤307中与第一设备相关的内容。
发送模块1802用于通过该信道向第二设备发送该第一编码数据。发送模块1802用于执行的操作可以参考上述步骤106、步骤208和步骤308中与第一设备相关的内容。
可选地,该多种FEC编码方式的码字长度具有线性关系。在多种FEC编码方式的码字长度具有线性关系时,该多种FEC编码方式对应的多个FEC编码电路可以存在复用至少部分结构的情况,该多种FEC编码方式对应的多个FEC解码电路也可以存在复用至少部分结构的情况,从而减小了第一设备和第二设备的体积。
可选地,第一设备不仅可以支持上述多种FEC编码方式,还可以支持除该多种FEC编码方式之外的辅助编码方式,第二设备还可以支持辅助编码方式对应的解码方式。第一设备还可以采用辅助编码方式进行编码,第二设备可以采用该辅助编码方式对应的解码方式进行解码。本申请不对辅助编码方式的种类进行限定,并且辅助编码方式可以包括一种编码方式或多种编码方式。比如,辅助编码方式包括:CRC编码方式和ECC编码方式中的至少一种,辅助编码方式也可以包括与上述多种FEC编码方式不同的其他FEC编码方式。
在一种可选方案中,上述编码模块1801还用于在采用所述目标FEC编码方式对目标数据进行编码之前,可以采用所述辅助编码方式对初始数据进行编码,得到所述目标数据。编码模块1801用于执行的操作可以参考上述步骤205和步骤305中与第一设备相关的内容。
在另一种可选方案中,上述编码模块1801还用于在采用所述目标FEC编码方式对目标数据进行编码之后,还可以采用所述辅助编码方式对所述第一编码数据进行编码,得到第二编码数据;此时,上述发送模块1802可以通过所述信道向所述第二设备发送所述第二编码数据,以实现通过所述信道向所述第二设备发送所述第一编码数据。
在又一种可选方案中,上述编码模块1801还用于采用所述辅助编码方式对目标数据进行编码,得到第三编码数据。上述发送模块1802还用于通过所述信道向所述第二设备发送所述第三编码数据。
可选地,所述状态参数包括:误码率、丢包率、插入损耗、回波损耗、信道噪声、波特率和数据传输速率中的至少一种。状态参数还可以有其他实现方式,本申请对此不作限定。
可选地,上述发送模块1802还用于在第一设备采用所述目标FEC编码方式对目标数据进行编码之前,通过所述信道向所述第二设备发送测试数据,所述状态参数中的至少部分参数用于反映所述测试数据的传输情况。该测试数据可以是携带有业务信息的业务数据,当然也可以不是业务数据(比如在传输业务数据之前传输的不携带有业务信息的测试数据),本申请对此不作限定。发送模块1802用于执行的操作可以参考上述步骤101、步骤201和步骤301中与第一设备相关的内容。
可选地,所述状态参数用于指示:传输质量,所述FEC编码方式对应的参数条件用于指示:所述传输质量位于所述FEC编码方式对应的质量范围内。不同FEC编码方式对应的质量范围可以相同也可以不同。这些质量范围之间可以存在交集,也可以不存在交集,本申请对此不作限定。
可选地,在所述多种FEC编码方式中,对于所述FEC编码方式的纠错能力和所述FEC编码方式对应的参数条件:所述纠错能力与所述参数条件所指示的质量范围中的质量负相关。
上述状态参数可以是第一设备独立确定的,也可以是在第二设备的辅助下确定出的,本申请对此不作限定。
在一种可选方案中,第一设备还可以包括接收模块和处理模块(图18中均未示出)。 接收模块可以用于在发送模块通过所述信道向所述第二设备发送测试数据之后,接收所述第二设备根据所述测试数据发送的所述至少部分参数。处理模块用于根据所述至少部分参数,确定所述状态参数。接收模块用于执行的操作可以参考上述步骤103、步骤203和步骤303中与第一设备相关的内容。
在另一种可选方案中,第一设备还可以包括接收模块和处理模块(图18中均未示出)。接收模块可以用于在发送模块通过所述信道向所述第二设备发送测试数据之后,可以接收所述第二设备根据所述测试数据发送的所述至少部分参数的参考信息。处理模块用于根据所述参考信息,得到所述状态参数。
可选地,第一设备还可以包括接收模块(图18中均未示出)。接收模块用于在编码模块采用所述目标FEC编码方式对目标数据进行编码之前,通过所述信道接收所述第二设备发送的通知信息,所述通知信息用于指示所述状态参数是否满足所述目标FEC编码方式对应的参数条件。编码模块1801可以在所述通知信息用于指示所述状态参数满足所述目标FEC编码方式对应的参数条件时,采用所述目标FEC编码方式对目标数据进行编码。
图19为本申请实施例提供的另一种通信设备的框图,该通信设备例如可以属于前述各实施例中的第二设备。所述第二设备支持多种FEC编码方式对应的解码方式,每种所述FEC编码方式均具有对应的参数条件。如图19所示,该通信设备包括:接收模块1901和解码模块1902。
接收模块1901用于通过第一设备与所述第二设备之间的信道,接收所述第一设备发送的第一编码数据。其中,所述第一编码数据携带有:用于指示所述目标FEC编码方式的标识。所述目标FEC编码方式为所述多种FEC编码方式中的一种FEC编码方式,上述第一编码数据为第一设备在所述第一设备和第二设备之间信道的状态参数满足目标FEC编码方式对应的参数条件时,采用所述目标FEC编码方式编码得到的数据。接收模块1901用于执行的操作可以参考上述步骤106、步骤208和步骤308中与第二设备相关的内容。
解码模块1902用于根据第一编码数据携带的用于指示目标FEC编码方式的标识,采用目标FEC编码方式对应的解码方式,对所述第一编码数据进行解码和纠错。解码模块1902用于执行的操作可以参考上述步骤107、步骤209和步骤309中与第二设备相关的内容。
可选地,该多种FEC编码方式的码字长度具有线性关系。在多种FEC编码方式的码字长度具有线性关系时,该多种FEC编码方式对应的多个FEC编码电路可以存在复用至少部分结构的情况,该多种FEC编码方式对应的多个FEC解码电路也可以存在复用至少部分结构的情况,从而减小了第一设备和第二设备的体积。
可选地,第二设备不仅可以支持上述多种FEC编码方式对应的解码方式,还可以支持除该多种FEC编码方式之外的辅助编码方式对应的解码方式。本申请不对辅助编码方式的种类进行限定,并且辅助编码方式可以包括一种编码方式或多种编码方式。比如,CRC编码方式和ECC编码方式中的至少一种,辅助编码方式也可以包括与上述多种FEC编码方式不同的其他FEC编码方式。
在一种可选方案中,上述解码模块1902在对所述第一编码数据进行解码和纠错之后,可以采用所述辅助编码方式对应的解码方式对目标数据进行解码。其中,所述目标数据为:采用所述目标FEC编码方式对应的解码方式,对所述第一编码数据进行解码和纠错得到的数据。解码模块1902用于执行的操作可以参考上述步骤210和步骤310中与第二设备相关 的内容。
在另一种可选方案中,上述接收模块1901可以通过接收所述第一设备发送的第二编码数据,接收上述第一编码数据。其中,所述第二编码数据为所述第一设备采用所述辅助编码方式对所述第一编码数据进行编码得到的数据。解码模块1902在采用所述目标FEC编码方式对应的解码方式,对所述第一编码数据进行解码和纠错之前,可以采用所述辅助编码方式对应的解码方式对所述第二编码数据进行解码,得到所述第一编码数据。
在又一种可选方案中,上述接收模块1901还用于接收所述第一设备通过所述信道发送的第三编码数据。上述解码模块1902还用于采用所述辅助编码方式对应的解码方式,对所述第三编码数据进行解码。其中,所述第三编码数据为采用所述辅助编码方式编码得到的数据。
可选地,所述状态参数包括:误码率、丢包率、插入损耗、回波损耗、信道噪声、波特率和数据传输速率中的至少一种。状态参数还可以有其他实现方式,本申请对此不作限定。
可选地,上述接收模块1901在接收所述第一设备发送的第一编码数据之前,还可以通过所述信道接收所述第一设备发送的测试数据,所述状态参数中的至少部分参数用于反映所述测试数据的传输情况。该测试数据可以是携带有业务信息的业务数据,当然也可以不是业务数据(比如在传输业务数据之前传输的不携带有业务信息的测试数据),本申请对此不作限定。
可选地,所述状态参数用于指示:传输质量,所述FEC编码方式对应的参数条件用于指示:所述传输质量位于所述FEC编码方式对应的质量范围内。不同FEC编码方式对应的质量范围可以相同也可以不同。这些质量范围之间可以存在交集,也可以不存在交集,本申请对此不作限定。
可选地,在所述多种FEC编码方式中,对于所述FEC编码方式的纠错能力和所述FEC编码方式对应的参数条件:所述纠错能力与所述参数条件所指示的质量范围中的质量负相关。
上述状态参数可以是第一设备独立确定的,也可以是在第二设备的辅助下确定出的,本申请对此不作限定。
在一种可选方案中,通信设备还包括处理模块和发送模块(图19中均未示出)。处理模块用于在接收模块通过所述信道接收所述第一设备发送的测试数据之后,根据所述测试数据确定所述至少部分参数。发送模块用于向所述第一设备发送所述至少部分参数。这样一来,第一设备便能够获取到该至少部分参数。处理模块用于执行的操作可以参考上述步骤102、步骤202和步骤302中与第二设备相关的内容。发送模块用于执行的操作可以参考上述步骤103、步骤203和步骤303中与第二设备相关的内容。
在另一种可选方案中,通信设备还包括处理模块和发送模块(图19中均未示出)。处理模块用于在通过所述信道接收所述第一设备发送的测试数据之后,根据所述测试数据确定所述至少部分参数的参考信息。发送模块用于向所述第一设备发送所述参考信息。这样一来,第一设备便可以根据该参考信息确定上述至少部分参数。
可选地,通信设备还包括处理模块和发送模块(图19中均未示出),处理模块用于在接收模块接收所述第一设备发送的第一编码数据之前,根据所述状态参数确定所述状态参 数是否满足所述目标FEC编码方式对应的参数条件。发送模块可以用于通过所述信道向所述第一设备发送通知信息,所述通知信息用于指示所述状态参数是否满足所述目标FEC编码方式对应的参数条件。
在采用集成的单元的情况下,本申请所提供的用于第一设备或第二设备的通信设备可以包括处理模块、存储模块和通信模块。其中,处理模块可以用于对通信设备的动作进行控制管理,例如,可以用于支持通信设备执行上述步骤101至步骤107中由第一设备或第二设备执行的动作,或者,可以用于支持通信设备执行上述步骤201至步骤211中由第一设备或第二设备执行的动作,或者,可以用于支持通信设备执行上述步骤301至步骤311中由第一设备或第二设备执行的动作。存储模块可以用于支持通信设备执行存储程序代码和数据等。通信模块,可以用于通信设备与其他设备的通信。
其中,处理模块可以是处理器或控制器。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理(digital signal processing,DSP)和微处理器的组合等等。存储模块可以是存储器。通信模块具体可以为射频电路、蓝牙芯片、Wi-Fi芯片等与其他设备交互的设备。
在一个实施例中,当处理模块为处理器,存储模块为存储器,通信模块为通信接口时,本实施例所涉及的通信设备可以为具有图2所示结构的通信设备。在一种实现方式中,本通信设备中包括的上述各个模块等可以为存储器中存储的计算机程序,并由处理器调用以实现各个模块相应的执行功能。
本申请实施例还提供了一种通信系统,该通信系统包括上述第一设备和第二设备。
本申请实施例提供了一种计算机存储介质,所述存储介质内存储有计算机程序;所述计算机程序在计算机上运行时,使得计算机执行本申请实施例提供的任一种数据传输方法中由第一设备或第二设备执行的方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当计算机程序产品在通信设备上运行时,使得通信设备执行本申请实施例提供的任一种数据传输方法中由第一设备或第二设备执行的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现,所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机的可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者包含一个或多个可用介质集成的服务器、数据中心等数据存储装置。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质,或者半导体介质(例如固态硬盘)等。
在本申请中,术语“第一”和“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。术语“至少一个”指一个或多个,“多个”指两个或两个以上,除非另有明确的限定。
本申请实施例提供的方法实施例和设备实施例等不同类型的实施例均可以相互参考,本申请实施例对此不做限定。本申请实施例提供的方法实施例操作的先后顺序能够进行适当调整,操作也能够根据情况进行相应增减,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本申请的保护范围之内,因此不再赘述。
在本申请提供的相应实施例中,应该理解到,所揭露的系统和设备等可以通过其它的构成方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,设备或模块的间接耦合或通信连接,可以是电性或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元描述的部件可以是或者也可以不是物理单元,既可以位于一个地方,或者也可以分布到多个设备上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (26)

  1. 一种数据传输方法,其特征在于,用于第一设备,所述第一设备支持多种前向纠错FEC编码方式,每种所述FEC编码方式均具有对应的参数条件,所述方法包括:
    在所述第一设备和第二设备之间信道的状态参数满足目标FEC编码方式对应的参数条件时,采用所述目标FEC编码方式对目标数据进行编码,得到第一编码数据;其中,所述目标FEC编码方式为所述多种FEC编码方式中的一种FEC编码方式,所述第一编码数据携带用于指示所述目标FEC编码方式的标识;
    通过所述信道向所述第二设备发送所述第一编码数据。
  2. 根据权利要1所述的方法,其特征在于,所述多种FEC编码方式的码字长度具有线性关系。
  3. 根据权利要求1或2所述的方法,其特征在于,所述第一设备还支持辅助编码方式,在采用所述目标FEC编码方式对目标数据进行编码之前,所述方法还包括:
    采用所述辅助编码方式对初始数据进行编码,得到所述目标数据。
  4. 根据权利要求1或2所述的方法,其特征在于,所述第一设备还支持辅助编码方式,在采用所述目标FEC编码方式对目标数据进行编码之后,所述方法还包括:
    采用所述辅助编码方式对所述第一编码数据进行编码,得到第二编码数据;
    通过所述信道向所述第二设备发送所述第一编码数据,包括:
    通过所述信道向所述第二设备发送所述第二编码数据。
  5. 根据权利要求1或2所述的方法,其特征在于,所述第一设备还支持辅助编码方式,所述方法还包括:
    采用所述辅助编码方式对辅助数据进行编码,得到第三编码数据;
    通过所述信道向所述第二设备发送所述第三编码数据。
  6. 根据权利要求1至5任一所述的方法,其特征在于,所述状态参数包括:误码率、丢包率、插入损耗、回波损耗、信道噪声、波特率和数据传输速率中的至少一种。
  7. 根据权利要求1至6任一所述的方法,其特征在于,在采用所述目标FEC编码方式对目标数据进行编码之前,所述方法还包括:
    通过所述信道向所述第二设备发送测试数据,所述状态参数中的至少部分参数用于反映所述测试数据的传输情况。
  8. 一种数据传输方法,其特征在于,用于第二设备,所述第二设备支持多种前向纠错FEC编码方式对应的解码方式,每种所述FEC编码方式均具有对应的参数条件,所述方法包括:
    在所述第一设备和第二设备之间信道的状态参数满足目标FEC编码方式对应的参数条件 时,通过第一设备与所述第二设备之间的信道,接收所述第一设备发送的第一编码数据;其中,所述目标FEC编码方式为所述多种FEC编码方式中的一种FEC编码方式,所述第一编码数据携带有:所述目标FEC编码方式的标识;
    根据所述目标FEC编码方式的标识,采用所述目标FEC编码方式对应的解码方式,对所述第一编码数据进行解码和纠错。
  9. 根据权利要8所述的方法,其特征在于,所述多种FEC编码方式的码字长度具有线性关系。
  10. 根据权利要求8或9所述的方法,其特征在于,所述第二设备还支持辅助编码方式对应的解码方式,在采用所述目标FEC编码方式对应的解码方式,对所述第一编码数据进行解码和纠错之后,所述方法还包括:
    采用所述辅助编码方式对应的解码方式对目标数据进行解码;
    其中,所述目标数据为:采用所述目标FEC编码方式对应的解码方式,对所述第一编码数据进行解码和纠错得到的数据。
  11. 根据权利要求8或9所述的方法,其特征在于,所述第二设备还支持辅助编码方式对应的解码方式,接收所述第一设备发送的第一编码数据,包括:
    接收所述第一设备发送的第二编码数据,所述第二编码数据为所述第一设备采用所述辅助编码方式对所述第一编码数据进行编码得到的数据;
    在采用所述目标FEC编码方式对应的解码方式,对所述第一编码数据进行解码和纠错之前,所述方法还包括:
    采用所述辅助编码方式对应的解码方式对所述第二编码数据进行解码,得到所述第一编码数据。
  12. 根据权利要求8或9所述的方法,其特征在于,所述第二设备还支持辅助编码方式对应的解码方式,所述方法还包括:
    接收所述第一设备通过所述信道发送的第三编码数据,所述第三编码数据为采用所述辅助编码方式编码得到的数据;
    采用所述辅助编码方式对应的解码方式,对所述第三编码数据进行解码。
  13. 根据权利要求8至12任一所述的方法,其特征在于,所述状态参数包括:误码率、丢包率、插入损耗、回波损耗、信道噪声、波特率和数据传输速率中的至少一种。
  14. 根据权利要求8至13任一所述的方法,其特征在于,在所述接收所述第一设备发送的第一编码数据之前,所述方法还包括:
    通过所述信道接收所述第一设备发送的测试数据,所述状态参数中的至少部分参数用于反映所述测试数据的传输情况。
  15. 一种通信设备,其特征在于,所述通信设备为第一设备,所述第一设备支持多种前向纠错FEC编码方式,每种所述FEC编码方式均具有对应的参数条件,所述通信设备包括:
    编码模块,用于在所述第一设备和第二设备之间信道的状态参数满足目标FEC编码方式对应的参数条件时,采用所述目标FEC编码方式对目标数据进行编码,得到第一编码数据;其中,所述目标FEC编码方式为所述多种FEC编码方式中的一种FEC编码方式,所述第一编码数据携带用于指示所述目标FEC编码方式的标识;
    发送模块,用于通过所述信道向所述第二设备发送所述第一编码数据。
  16. 根据权利要求15所述的通信设备,其特征在于,所述多种FEC编码方式的码字长度具有线性关系。
  17. 根据权利要求15或16所述的通信设备,其特征在于,所述第一设备还支持辅助编码方式,所述编码模块还用于:
    在采用所述目标FEC编码方式对目标数据进行编码之前,采用所述辅助编码方式对初始数据进行编码,得到所述目标数据。
  18. 根据权利要求15或16所述的通信设备,其特征在于,所述第一设备还支持辅助编码方式,所述编码模块还用于:
    在采用所述目标FEC编码方式对目标数据进行编码之后,采用所述辅助编码方式对所述第一编码数据进行编码,得到第二编码数据;
    所述发送模块用于通过所述信道向所述第二设备发送所述第二编码数据。
  19. 一种通信设备,其特征在于,所述通信设备为第二设备,所述第二设备支持多种前向纠错FEC编码方式对应的解码方式,每种所述FEC编码方式均具有对应的参数条件,所述通信设备包括:
    接收模块,用于在所述第一设备和第二设备之间信道的状态参数满足目标FEC编码方式对应的参数条件时,通过第一设备与所述第二设备之间的信道,接收所述第一设备发送的第一编码数据;其中,所述目标FEC编码方式为所述多种FEC编码方式中的一种FEC编码方式,所述第一编码数据携带有:所述目标FEC编码方式的标识;
    解码模块,用于根据所述目标FEC编码方式的标识,采用所述目标FEC编码方式对应的解码方式,对所述第一编码数据进行解码和纠错。
  20. 根据权利要19所述的通信设备,其特征在于,所述多种FEC编码方式的码字长度具有线性关系。
  21. 根据权利要求19或20所述的通信设备,其特征在于,所述第二设备还支持辅助编码方式对应的解码方式,所述解码模块还用于:
    在采用所述目标FEC编码方式对应的解码方式,对所述第一编码数据进行解码和纠错之后,采用所述辅助编码方式对应的解码方式对目标数据进行解码;
    其中,所述目标数据为:采用所述目标FEC编码方式对应的解码方式,对所述第一编码数据进行解码和纠错得到的数据。
  22. 根据权利要求19或20所述的方法,其特征在于,所述第二设备还支持辅助编码方式对应的解码方式,所述接收模块用于:接收所述第一设备发送的第二编码数据,所述第二编码数据为所述第一设备采用所述辅助编码方式对所述第一编码数据进行编码得到的数据;
    所述编码模块还用于:在采用所述目标FEC编码方式对应的解码方式,对所述第一编码数据进行解码和纠错之前,采用所述辅助编码方式对应的解码方式对所述第二编码数据进行解码,得到所述第一编码数据。
  23. 一种通信设备,其特征在于,所述通信设备包括:处理器和存储器,所述存储器中存储有程序;
    所述处理器用于调用所述存储器中存储的程序,以使得所述通信设备执行如权利要求1至7任一项所述的数据传输方法。
  24. 一种通信设备,其特征在于,所述通信设备包括:处理器和存储器,所述存储器中存储有程序;
    所述处理器用于调用所述存储器中存储的程序,以使得所述通信设备执行如权利要求8至14任一项所述的数据传输方法。
  25. 一种通信系统,其特征在于,所述通信系统包括:第一设备和第二设备;
    所述第一设备为权利要求15至18任一所述的通信设备,所述第二设备为权利要求19至22任一所述的通信设备;
    或者,所述第一设备为权利要求23所述的通信设备,所述第二设备为权利要求24所述的通信设备。
  26. 一种计算机可读存储介质,其特征在于,所述存储介质内存储有计算机程序;
    所述计算机程序在计算机上运行时,使得计算机执行权利要求1至7任一所述的数据传输方法;
    或者,所述计算机程序在计算机上运行时,使得计算机执行权利要求8至14任一所述的数据传输方法。
PCT/CN2021/080868 2021-03-15 2021-03-15 数据传输方法、通信设备及系统 WO2022193098A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202180095359.XA CN117083820A (zh) 2021-03-15 2021-03-15 数据传输方法、通信设备及系统
PCT/CN2021/080868 WO2022193098A1 (zh) 2021-03-15 2021-03-15 数据传输方法、通信设备及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2021/080868 WO2022193098A1 (zh) 2021-03-15 2021-03-15 数据传输方法、通信设备及系统

Publications (1)

Publication Number Publication Date
WO2022193098A1 true WO2022193098A1 (zh) 2022-09-22

Family

ID=83321591

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/080868 WO2022193098A1 (zh) 2021-03-15 2021-03-15 数据传输方法、通信设备及系统

Country Status (2)

Country Link
CN (1) CN117083820A (zh)
WO (1) WO2022193098A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024131847A1 (zh) * 2022-12-20 2024-06-27 北京字跳网络技术有限公司 音频处理方法、装置、电子设备及计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6208663B1 (en) * 1997-08-29 2001-03-27 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for block ARQ with reselection of FEC coding and/or modulation
CN1642064A (zh) * 2005-01-06 2005-07-20 东南大学 移动通信系统中基于最佳传输帧长的链路自适应实现方法
CN102695102A (zh) * 2011-03-21 2012-09-26 中兴通讯股份有限公司 一种下行数据传输方法、系统及装置
CN107888331A (zh) * 2016-09-30 2018-04-06 中兴通讯股份有限公司 数据发送方法、装置及信源
CN110876066A (zh) * 2018-09-03 2020-03-10 中国移动通信有限公司研究院 一种自适应前向纠错方法、装置、介质和设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6208663B1 (en) * 1997-08-29 2001-03-27 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for block ARQ with reselection of FEC coding and/or modulation
CN1642064A (zh) * 2005-01-06 2005-07-20 东南大学 移动通信系统中基于最佳传输帧长的链路自适应实现方法
CN102695102A (zh) * 2011-03-21 2012-09-26 中兴通讯股份有限公司 一种下行数据传输方法、系统及装置
CN107888331A (zh) * 2016-09-30 2018-04-06 中兴通讯股份有限公司 数据发送方法、装置及信源
CN110876066A (zh) * 2018-09-03 2020-03-10 中国移动通信有限公司研究院 一种自适应前向纠错方法、装置、介质和设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024131847A1 (zh) * 2022-12-20 2024-06-27 北京字跳网络技术有限公司 音频处理方法、装置、电子设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN117083820A (zh) 2023-11-17

Similar Documents

Publication Publication Date Title
JP5981351B2 (ja) ワイギグ用の応用階層順方向エラー訂正フレームワーク
US7525993B2 (en) Robust transmission system and method for mobile television applications
EP2819334B1 (en) Method and system for enhancing transmission reliability of video information over wireless channels
TWI501579B (zh) 使用透過單播系統接收之增量冗餘以在廣播系統中接收資料的接收器與接收方法
JP5233165B2 (ja) データ伝送装置
WO2018202057A1 (zh) 传输数据的方法、基站和终端设备
US20160134393A1 (en) Data packet transmission/reception apparatus and method
WO2022078426A1 (zh) 数据传输方法、系统和计算机可读存储介质
WO2010039013A2 (en) Symbol-level random network coded cooperation with hierarchical modulation in relay communication
WO2022156767A1 (zh) 数据传输的方法、装置、设备、系统及计算机可读存储介质
WO2017092617A1 (zh) 一种错误估计的方法、基站及终端
US20150180609A1 (en) Apparatus and method for transmitting and receiving an application layer-forward error correction packet in multimedia communication system
CN111600677B (zh) 一种数据传输方法及装置
JP7092795B2 (ja) データ処理方法およびデータ処理装置
TWI229991B (en) Wireless communication method and wireless communication device
WO2022193098A1 (zh) 数据传输方法、通信设备及系统
JP2017513395A (ja) ブロードキャスティング及び/又は通信システムにおけるパケットの生成及び復元のための方法及び装置
RU2646346C2 (ru) Устройство и способ передачи и приема пакета с прямой коррекцией ошибок
US20200186288A1 (en) Data Processing Method And Related Apparatus
US20220149988A1 (en) Method for Adjusting Transmission Rate, Processor, Network Device, and Network System
US8861548B2 (en) Method and apparatus for transmitting data in cable network
US20240275574A1 (en) Data transmission method, apparatus, device, and system, and readable storage medium
JP7318033B2 (ja) 無線通信装置および無線通信方法
WO2024193265A1 (zh) 一种数据传输方法及相关装置
US20240323927A1 (en) Channel coding method and apparatus

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21930694

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 202180095359.X

Country of ref document: CN

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21930694

Country of ref document: EP

Kind code of ref document: A1