WO2019109239A1 - 数据传输的方法、发射端设备和接收端设备 - Google Patents

数据传输的方法、发射端设备和接收端设备 Download PDF

Info

Publication number
WO2019109239A1
WO2019109239A1 PCT/CN2017/114573 CN2017114573W WO2019109239A1 WO 2019109239 A1 WO2019109239 A1 WO 2019109239A1 CN 2017114573 W CN2017114573 W CN 2017114573W WO 2019109239 A1 WO2019109239 A1 WO 2019109239A1
Authority
WO
WIPO (PCT)
Prior art keywords
edac
data
application layer
policy information
transmission
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/CN2017/114573
Other languages
English (en)
French (fr)
Inventor
邹景华
郁新华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Goodix Technology Co Ltd
Original Assignee
Shenzhen Goodix Technology Co Ltd
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 Shenzhen Goodix Technology Co Ltd filed Critical Shenzhen Goodix Technology Co Ltd
Priority to CN201780002019.1A priority Critical patent/CN110121850B/zh
Priority to PCT/CN2017/114573 priority patent/WO2019109239A1/zh
Publication of WO2019109239A1 publication Critical patent/WO2019109239A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

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
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems

Definitions

  • the present application relates to the field of communications, and more particularly, to a method of data transmission, a transmitting end device, and a receiving end device.
  • ARQ Automatic Repeat-reQuest
  • the use of the ARQ mechanism for data transmission has problems such as large data transmission delay, low data transmission throughput, and large system power consumption, especially when the environmental interference noise is large.
  • ARQ mechanism for data transmission how to ensure reliable transmission while reducing data transmission delay, increasing data transmission throughput and reducing system power consumption is an urgent problem to be solved.
  • the embodiment of the present application provides a data transmission method, a transmitting end device, and a receiving end device.
  • the transmitting end device uses an Error Detection and Correction (EDAC) policy information detecting application.
  • EDAC Error Detection and Correction
  • an embodiment of the present application provides a data transmission method, including:
  • the transmission data is sent to the receiving end device, so that the receiving end device detects and corrects errors and feedbacks of the application layer data during the transmission according to the EDAC policy information.
  • the method for data transmission uses an ARQ mechanism for data transmission.
  • the transmitting end device uses the EDAC policy information to detect errors in the transmission process of the application layer data and correct errors, and reduce data.
  • the number of retransmissions reduces data transmission delay, increases data transmission throughput, and reduces system power consumption.
  • the method before the generating the data, the method further includes:
  • EDAC indication information is added in the application layer data, and the EDAC indication information is used to indicate whether the EDAC policy information exists.
  • the receiving end device may determine, according to the EDAC indication information, whether to detect an error occurring in the transmission process of the application layer data according to the EDAC policy information and correct the error that occurs.
  • the adding the EDAC policy information in the application layer data includes:
  • the EDAC policy information is determined according to a Forward Error Correction (FEC) and a preset error correctable bit number, and the EDAC policy information is added in the application layer data.
  • FEC Forward Error Correction
  • the method before the EDAC policy information is added to the application layer data, the method further includes:
  • the Received Signal Strength Indicator (RSSI) of the received data in the first duration and the Packet Error Rate (PER) of the received data in the first duration are counted. analysis;
  • the RSSI of the received data in the first duration is less than the first threshold, and/or, if the PER of the received data in the first duration is greater than the second threshold, it is determined to use the EDAC policy information.
  • the method before the EDAC policy information is added to the application layer data, the method further includes:
  • Interleaving encodes a sequence of bits in the application layer data.
  • the EDAC policy information is used to detect errors in the transmission process of the application layer data and correct errors, and the interleaving code should be The bit sequence in the layer data is used, thereby reducing the number of data retransmissions, thereby reducing the data transmission delay, increasing the data transmission throughput rate, and reducing the system power consumption.
  • the method is applied to Bluetooth Low Energy (BLE) communication.
  • BLE Bluetooth Low Energy
  • an embodiment of the present application provides a data transmission method, including:
  • the method for data transmission uses an ARQ mechanism for data transmission.
  • the transmitting end device uses the EDAC policy information to detect an error occurring in the transmission process of the application layer data and correct the error that occurs, thereby Reduce the number of data retransmissions, which in turn reduces data transmission delay, increases data transmission throughput, and reduces system power consumption.
  • the transmission data further includes EDAC indication information, where the EDAC indication information is used to indicate whether the EDAC policy information is present.
  • the method further includes:
  • the receiving end device may determine, according to the EDAC indication information, whether to detect an error occurring in the transmission process of the transmission data according to the EDAC policy information and correct the error that occurs.
  • the error that occurs in the transmission process of the application layer data is detected and corrected according to the EDAC policy information, including:
  • the feedback to the transmitting device according to the result of the detection and correction includes:
  • NACK non-acknowledgement
  • an acknowledgment frame (ACK) is sent to the transmitting device, and the ACK is used to indicate that the transmission data is successfully received.
  • ACK acknowledgment frame
  • the method before detecting, according to the EDAC policy information, an error that occurs during the transmission of the application layer data, the method further includes:
  • the step of detecting and correcting the application layer data is entered.
  • the method further includes:
  • the step of feeding back to the transmitting device based on the result of the detection and correction is entered.
  • the method further includes:
  • the transmission data is deinterleaved.
  • the transmission data is deinterleaved.
  • the number of data retransmissions is further reduced, thereby reducing the data transmission delay, increasing the data transmission throughput rate, and reducing the system power consumption.
  • the method is applied to BLE communication.
  • the embodiment of the present application provides a transmitting end device, which can execute the module or unit of the method in the first aspect or any optional implementation manner of the first aspect.
  • the embodiment of the present application provides a receiving end device, which can execute the module or unit of the method in the second aspect or any optional implementation manner of the second aspect.
  • a transmitter device comprising a processor, a memory, and a communication interface.
  • the processor is coupled to the memory and communication interface.
  • the memory is for storing instructions for the processor to execute, and the communication interface is for communicating with other network elements under the control of the processor.
  • the processor executes the instructions stored by the memory, the execution causes the processor to perform the method of the first aspect or any of the possible implementations of the first aspect.
  • a receiving end device comprising a processor, a memory, and a communication interface.
  • the processor is coupled to the memory and communication interface.
  • the memory is for storing instructions for the processor to execute, and the communication interface is for communicating with other network elements under the control of the processor.
  • the processor executes the instructions stored by the memory, the execution causes the processor to perform the method of any of the possible implementations of the second aspect or the second aspect.
  • a computer storage medium storing program code for instructing a computer to perform the method of any of the first aspect or the first aspect of the first aspect. instruction.
  • a computer storage medium storing program code for instructing a computer to perform the method in any one of the possible implementation manners of the second aspect or the second aspect instruction.
  • a computer program product comprising instructions, when executed on a computer, causes the computer to perform the methods described in the various aspects above.
  • FIG. 1 shows a wireless communication system to which the embodiment of the present application is applied.
  • FIG. 2 shows another wireless communication system to which the embodiment of the present application is applied.
  • FIG. 3 is a system block diagram of a BLE wireless connection in the embodiment of the present application.
  • Figure 4 is a schematic diagram showing the structure of a BLE user air interface data packet.
  • FIG. 5 is a schematic flowchart of a method for data transmission according to an embodiment of the present application.
  • FIG. 6 is a schematic flowchart of determining whether to enable the EDAC mechanism according to an embodiment of the present application.
  • FIG. 7 is a schematic diagram of an EDAC policy information carrying manner according to an embodiment of the present application.
  • FIG. 8 is a schematic diagram of another EDAC policy information bearer according to an embodiment of the present application.
  • FIG. 9 is a schematic diagram of a method of data transmission according to an embodiment of the present application.
  • FIG. 10 is a schematic flowchart of another method for data transmission according to an embodiment of the present application.
  • FIG. 11 is a schematic diagram of another method of data transmission according to an embodiment of the present application.
  • FIG. 12 is a schematic block diagram of a transmitting end device according to an embodiment of the present application.
  • FIG. 13 is a schematic block diagram of a receiving end device according to an embodiment of the present application.
  • FIG. 14 is a schematic block diagram of an apparatus for data transmission provided by an embodiment of the present application.
  • FIG. 15 is a schematic structural diagram of a system chip according to an embodiment of the present application.
  • GSM Global System of Mobile communication
  • CDMA Code Division Multiple Access
  • WCDMA Wideband Code Division Multiple Access
  • GPRS General Packet Radio Service
  • LTE Long Term Evolution
  • FDD Frequency Division Duplex
  • TDD Time Division Duplex
  • UMTS Universal Mobile Telecommunication System
  • WiMAX Worldwide Interoperability for Microwave Access
  • the embodiment of the present application may be applied to communication between a terminal device and a network device (for example, a base station), for example, the terminal device sends data to the network device by using an uplink (UL), or the network device passes the network device.
  • the downlink (DL) transmits data to the terminal device.
  • FIG. 1 shows an application scenario applied by an embodiment of the present application, which may be a wireless communication system 100.
  • the wireless communication system 100 can include a network device 110.
  • Network device 110 may be a device that communicates with a terminal device.
  • the network device 110 can provide communication coverage for a particular geographic area and can communicate with terminal devices, such as User Equipment (UE), located within the coverage area.
  • UE User Equipment
  • the network device 110 may be a base station (Base Transceiver Station, BTS) in a GSM system or a CDMA system, or may be a base station (NodeB, NB) in a WCDMA system, or may be an evolved base station in an LTE system.
  • BTS Base Transceiver Station
  • NodeB NodeB
  • the network device can be a relay station, an access point, an in-vehicle device, a wearable device, A network side device in a future 5G network or a network device in a publicly available Public Land Mobile Network (PLMN) in the future.
  • PLMN Public Land Mobile Network
  • the wireless communication system 100 also includes at least one terminal device 120 located within the coverage of the network device 110.
  • Terminal device 120 can be mobile or fixed.
  • the terminal device 120 may refer to an access terminal, a user equipment (UE), a subscriber unit, a subscriber station, a mobile station, a mobile station, a remote station, a remote terminal, a mobile device, a user terminal, a terminal, a wireless communication device, and a user. Agent or user device.
  • UE user equipment
  • the access terminal can be a cellular phone, a cordless phone, a session initiation protocol (Session) Initiation Protocol (SIP) phone, Wireless Local Loop (WLL) station, Personal Digital Assistant (PDA), handheld device with wireless communication capabilities, computing device or other processing device connected to the wireless modem , in-vehicle devices, wearable devices, terminal devices in future 5G networks, or terminal devices in future evolved PLMNs.
  • Session Session
  • SIP Session Initiation Protocol
  • WLL Wireless Local Loop
  • PDA Personal Digital Assistant
  • FIG. 1 exemplarily shows one network device and two terminal devices.
  • the wireless communication system 100 may include a plurality of network devices and may include other numbers of terminal devices within the coverage of each network device. The application embodiment does not limit this.
  • the wireless communication system 100 may further include other network entities, such as a network controller, a mobility management entity, and the like.
  • network entities such as a network controller, a mobility management entity, and the like.
  • D2D device-to-device
  • BLE Bluetooth Low Energy
  • V2V Vehicle to Vehicle
  • V2X Vehicle to Everything
  • the embodiment of the present application can be applied to communication between the terminal device and the terminal device.
  • the terminal device and the terminal device directly communicate through a side link (Sidelink, SL).
  • Sidelink Sidelink
  • FIG. 2 is a schematic diagram of another application scenario of the embodiment of the present application, which may be a wireless communication system 200.
  • the wireless communication system 200 includes a terminal device 10 and a terminal device 20, and the terminal device 10 and the terminal device 20 can communicate by a D2D communication mode (for example, BLE).
  • a D2D communication mode for example, BLE
  • the terminal device 10 and The terminal device 20 directly communicates through a D2D link, that is, a side line link (SL).
  • SL side line link
  • the terminal device 10 or the terminal device 20 may be a terminal device capable of implementing D2D communication.
  • it may be an in-vehicle terminal device, and may also refer to an access terminal, a user equipment (UE), a subscriber unit, a subscriber station, a mobile station, a mobile station, a remote station, a remote terminal, a mobile device, a user terminal, a terminal, and a wireless communication device.
  • UE user equipment
  • subscriber unit a subscriber station
  • mobile station a mobile station
  • a remote station a remote terminal
  • a mobile device a user terminal, a terminal, and a wireless communication device.
  • user agent or user device may be a terminal device capable of implementing D2D communication.
  • the access terminal can be a cellular telephone, a cordless telephone, a Session Initiation Protocol (SIP) telephone, a wireless local loop (WLL) station, a personal digital processing (PDA), a handheld device with wireless communication capabilities, a computing device, or a connection to a wireless modem.
  • SIP Session Initiation Protocol
  • WLL wireless local loop
  • PDA personal digital processing
  • the embodiment of the present application is not limited to the other processing device, the wearable device, the terminal device in the future 5G network, or the terminal device in the future evolved PLMN.
  • FIG. 3 is a system block diagram of a terminal device (eg, an Android phone) and a BLE device in a BLE wireless connection.
  • a terminal device eg, an Android phone
  • the BLE controller subsystem is generally an all-in-one chip. It usually integrates Wireless Fidelity (WIFI)/Global Positioning System (GPS)/Frequency Modulation (FM). Radio frequency (RF), running the BLE control subsystem firmware in the chip, handling the controller's business logic, and interacting with the host controller interface (HCI) and the host (Host) .
  • WIFI Wireless Fidelity
  • GPS Global Positioning System
  • FM Frequency Modulation
  • RF Radio frequency
  • the BLE main stack (Host Stack) runs on the access point (AP).
  • AP access point
  • the protocol stack in the Android system covers HCI-HOST, logical link control and adaptation protocol (Logical Link Control and Adaptation). Protocol, L2CAP, Service Model (SM), Attribute Protocol (ATT) for discovering, reading, and writing peer devices, and Generic Access Profile (GAP) protocol stack.
  • HCI-HOST logical link control and adaptation protocol
  • SM Service Model
  • ATT Attribute Protocol
  • GAP Generic Access Profile
  • the User Application Program (User Application) is a Bluetooth application developed by the user for data transfer between different Bluetooth devices.
  • the BLE device is usually composed of a BLE integrated circuit (SOC) and other peripheral components.
  • SOC BLE integrated circuit
  • the BLE SOC chip it consists of RF, Controller, Host and User App.
  • the embodiments of the present application may be applied to a system block diagram in the BLE wireless connection as shown in FIG. 3.
  • Figure 4 is a schematic diagram showing the structure of a BLE user air interface data packet.
  • APP Data refers to application data of a user application, which is related to a specific service and is provided by an application layer.
  • the main data packet (Host Packet) is based on the APP Data, and is composed of an ATT header and an L2CAP header. If the data signature function is enabled, the signature data needs to be added.
  • the stack is responsible for the package.
  • Control Packet (Controller Packet) is based on the Host Packet and adds a Link Layer Header (LL Header). If link encryption is enabled, the primary data packet needs to be encrypted and added. Message Identification Code (MIC).
  • MIC Message Identification Code
  • the Air Packet is composed of a Preamble, an Access Address, and a Cyclic Redundancy Check (CRC) based on the Controller Packet.
  • the CRC is used to calculate the Controller Packet part. Get, receive the air interface packet When the CRC check is made, it can be found whether there is a bit error in the data transmission and reception process.
  • the first data in the embodiment of the present application may be the application layer data as shown in FIG. 4, and the EDAC policy information in the embodiment of the present application may be carried in a field on a Service Data Unit (SDU) of the application layer data.
  • SDU Service Data Unit
  • FIG. 5 is a schematic flowchart of a method 300 for data transmission according to an embodiment of the present application.
  • the method 300 may be performed by a transmitting device, which may be the network device 110 or the terminal device 120 as shown in FIG. 1, or the terminal device 10 as shown in FIG.
  • the terminal device 20, the receiving device in the method 300 may be the terminal device 120 or the network device 110 as shown in FIG. 1 , or the terminal device 20 or the terminal device 10 as shown in FIG. 2
  • the method 300 includes The following content.
  • the EDAC policy information is used to detect errors in the application layer data during transmission and to correct errors that occur.
  • the EDAC policy information can be implemented based on Error Checking And Correcting (ECC).
  • the EDAC policy information may be determined according to the FEC algorithm and a preset error correctable number of bits.
  • the preset number of correctable bits refers to the number of bits that the EDAC policy information can correct.
  • one type of EDAC policy information can detect 2 bit errors and correct 1 bit error in 512 bits of data. At this time, the preset error correctable number of bits is 1 bit.
  • EDAC indication information (eg, EDAC Flag) is added to the transmission data.
  • the EDAC indication information is carried in a field before the application layer data
  • the EDAC policy information is carried in a field after the application layer data.
  • the EDAC indication information is carried in a field before the application layer data
  • the EDAC policy information is carried in a field in the application layer data.
  • the EDAC indication information may indicate whether the EDAC policy information is present.
  • the EDAC indication information may be a flag bit, and the flag bit may be 0 or 1.
  • the ODAC policy information may be used to indicate that the application layer data is incorrectly transmitted during transmission. And to correct the error, you can use 1 to indicate that the EDAC policy information is not used to detect the error of the application layer data during transmission and correct the error.
  • whether the EDAC policy information is used to detect an error occurring in the transmission process of the application layer data and correct the error that occurs may be determined according to the current communication environment.
  • electromagnetic interference e.g., interference generated when the same frequency electromagnetic signal is transmitted
  • multiple bits in the application layer data may be erroneous during transmission.
  • the transmitting device performs statistical analysis on the RSSI of the received data in the first duration and the PER of the received data in the first duration.
  • the transmitting end device statistically analyzes the RSSI of receiving data in the first time period and the PER of the received data in the first time period, and may be the RSSI of receiving data and the PER of the received data when communicating with the receiving end device, or may be Is the RSSI of the received data and the PER of the received data when communicating with other devices.
  • the RSSI of the received data in the first duration is less than the first threshold, and/or, if the PER of the received data in the first duration is greater than the second threshold, determining to use the EDAC policy information to detect the application layer data in the transmission process Errors in the corrections and corrections.
  • the RSSI of the received data in the first duration is greater than or equal to the first threshold, and/or, if the PER of the received data in the first duration is less than or equal to the second threshold, determining to not use the EDAC policy information to detect the application Layer data errors during transmission and correction of errors.
  • the transmitting device acquires data; in 61, the transmitting device performs a CRC check after acquiring the data; in 62, the transmitting device counts the current communication within the first time period. Environmental quality; in 63, the transmitting device judges that the EDAC mechanism is enabled; in 64, the transmitting device determines that the EDAC mechanism is not enabled.
  • the transmitting device if the RSSI of the received data in the first duration is less than the first threshold, and/or, if the PER of the received data in the first duration is greater than the second threshold, the transmitting device is considered to be currently located.
  • the environment is a strong signal environment, and the PER is high, there is strong interference, or the current environment of the transmitting device is considered to be a weak signal environment, close to the receiving sensitivity limit.
  • EDAC mechanism is enabled to improve the transmission bandwidth of effective application data and reduce the delay of data transmission.
  • the current environment of the transmitting device is considered to be compared. Clean, the EDAC mechanism is disabled, saving transmission bandwidth.
  • the method 300 further includes:
  • Interleaving encodes a sequence of bits in the application layer data.
  • interleaving coding can reduce the influence of the erroneous bits generated by the application layer data during the transmission process on the identification of the application layer data.
  • the data of the 11th-15th bit is incorrect during the transmission, resulting in 100-bit data being unrecognizable.
  • the 11th-15th data is evenly distributed over 100 bits.
  • the data of the 11th bit is distributed in the 1st-20th
  • the data of the 12th bit is distributed in the 21st-40th
  • the data of the 13th bit is distributed in the 41st to 60th
  • the data distribution of the 14th bit In the 61st-80th, the 15th bit of data is distributed in the 81st-100th, so that there is a 1-bit error in every 20 bits, which does not affect the overall identification of 100-bit data.
  • the application layer data sent by the transmitting device can be verified by using a CRC.
  • the method 300 of data transmission uses an ARQ mechanism for data transmission.
  • the receiving end device feeds back ACK when receiving data normally; when receiving data fails, the receiving end device feeds back NACK to request the transmitting end device to perform data retransmission.
  • the transmitting end device uses the EDAC policy information to detect errors in the transmission process of the application layer data and correct errors, and reduce data.
  • the number of retransmissions reduces data transmission delay, increases data transmission throughput, and reduces system power consumption.
  • determining to use the EDAC policy information to detect application layer data during transmission The current error and correcting the error, and interleaving the bit sequence in the encoded application layer data, thereby reducing the number of data retransmissions, thereby reducing the data transmission delay, increasing the data transmission throughput rate, and reducing the system function. Consumption.
  • method 400 is illustrated in FIG.
  • the method 400 includes:
  • the transmitting device acquires application layer data.
  • the transmitting end device may be a terminal device (for example, an Android mobile phone) that supports BLE communication.
  • a terminal device for example, an Android mobile phone
  • the application layer data is APP data in a BLE user air interface data packet structure.
  • the transmitting device determines to allow EDAC.
  • the transmitting device can determine whether to allow EDAC according to the environment in which it is currently located.
  • the RSSI of the received data in the first duration is less than the first threshold, and/or, if the PER of the received data in the first duration is greater than the second threshold, it is determined that the application layer data is detected by using the EDAC policy information. Errors that occur during transmission and correct errors that occur.
  • the transmitting device determines that EDAC is not allowed.
  • the information detects errors in the application layer data during transmission and corrects errors that occur.
  • the transmitting end device interleaves the application layer data.
  • the transmitting device adds EDAC policy information to the application layer data.
  • a field carrying the EDAC policy information is added to the application layer data.
  • the EDAC policy information is used to detect errors in the application layer data during transmission and to correct errors that occur.
  • the EDAC policy information may be determined according to an FEC algorithm and a preset error correctable number of bits.
  • EDAC indication information is added in the application layer data, where the EDAC indication information is used to indicate whether the EDAC policy information exists.
  • a field carrying EDAC indication information is added to the application layer data.
  • the transmitting device sends the application layer data.
  • the transmitting device performs step 440, step 450, and when determining that the EDAC is allowed.
  • Step 460 the transmitting device performs step 460 when it is determined that the EDAC is not allowed.
  • the EDAC mechanism can be dynamically determined.
  • the above method 400 only needs to add corresponding processing in the Bluetooth application, and does not need to modify the Bluetooth protocol stack, and has high implementation technical feasibility on the mobile phone side.
  • the transmitting device determines to use the EDAC policy information to detect errors in the transmission process of the application layer data and correct errors caused by the current communication environment, thereby reducing the number of data retransmissions. In turn, the data transmission delay is reduced, the data transmission throughput rate is increased, and the system power consumption is reduced.
  • FIG. 10 is a schematic flowchart of a method 500 for data transmission according to an embodiment of the present application.
  • the method 500 is performed by a receiving end device, which may be the network device 110 or the terminal device 120 as shown in FIG. 1, or may be the terminal device 10 or the terminal as shown in FIG.
  • the device 20, the transmitting device in the method 500 may be the terminal device 120 or the network device 110 as shown in FIG. 1, or the terminal device 20 or the terminal device 10 as shown in FIG. 2, the method 500 includes the following content.
  • the EDAC policy information is used to detect errors in the application layer data during transmission and to correct errors that occur.
  • the transmission data further includes EDAC indication information, where the EDAC indication information is used to indicate whether the EDAC policy information is present.
  • the method also includes before the application layer data is detected and corrected according to the EDAC policy information. include:
  • step 520 in the method 500 may specifically be:
  • the accumulated error bit of the application layer data after error correction is detected.
  • Step 530 in the method 500 may specifically be:
  • an ACK is sent to the transmitting device, and the ACK is used to indicate that the transmission data is successfully received.
  • the method 500 further includes:
  • step 520 the step of detecting and correcting the application layer data is entered (ie, step 520).
  • the method 500 further includes:
  • step 530 the step of feeding back to the transmitting device based on the result of the detection and correction is entered (ie, step 530).
  • the receiving end device detects and corrects an error occurring in the transmission process of the application layer data according to the EDAC policy information, detecting the accumulated error bit number in the application layer data.
  • the receiving end device sends a NACK to the transmitting end device, where the NACK is used to indicate that the transmission data is not successfully received.
  • the receiving end device sends an ACK to the transmitting end device, where the ACK is used to indicate that the transmission data is successfully received.
  • the second CRC checks that the transmission data is successful, and the receiving end device sends an ACK to the transmitting end device, where the ACK is used to indicate that the transmission data is successfully received.
  • the receiving end device has a certain error tolerance to the received data. For example, in 512-bit data, there are 2 bit errors allowed, and after FEC error correction, when the accumulated error bits are counted Within the error tolerance of the receiving device, the data is considered to be received correctly.
  • the method 500 further includes:
  • the transmission data is deinterleaved.
  • the method 500 is applied to BLE communication.
  • the method 500 described above can be implemented by dedicated Bluetooth chip hardware.
  • steps in the method 500 of data transmission may refer to the description of the corresponding steps in the method 300 of data transmission, and are not described herein for brevity.
  • the EDAC policy information is used to detect the application layer data in the transmission data during the transmission process. Errors occur and correct errors, thereby reducing the number of data retransmissions, thereby reducing data transmission delay, increasing data transmission throughput, and reducing system power consumption.
  • the transmission data is deinterleaved, thereby further reducing the number of data retransmissions.
  • the method 600 includes:
  • the receiving end device receives application layer data from the transmitting end device.
  • the transmitting device may be a terminal device (for example, an Android mobile phone) that supports BLE communication.
  • the sink device can be a BLE device (eg, a smart bracelet).
  • the application layer data is application layer data in a BLE user air interface packet structure.
  • the receiving end device performs a first CRC check on the received application layer data.
  • step 603 when the first CRC check is successful, step 603 is performed.
  • step 604 is performed.
  • the receiving end device sends an ACK to the transmitting end device.
  • the receiving end device sends an ACK to the transmitting end device, and is used to indicate that the data sent by the transmitting end device is successfully received.
  • the receiving end device determines whether to use the EDAC mechanism.
  • the receiving end device may determine whether to use the EDAC mechanism by using the EDAC indication information included in the application layer data.
  • the EDAC indication information included in the application layer data indicates the presence of EDAC policy information, it is determined to use the EDAC mechanism.
  • step 605 when it is determined that the EDAC mechanism is used, step 605 is performed.
  • step 606 is performed.
  • the receiving end device performs error correction according to the EDAC and calculates the accumulated error bit number.
  • the receiving device detects the error of the application layer data during the transmission and corrects the error according to the EDAC policy information.
  • the application layer data contains EDAC policy information.
  • the EDAC policy information is determined according to the FEC algorithm and the preset number of correctable bits.
  • the receiving device can calculate the cumulative number of error bits after performing EDAC error correction.
  • the receiving end device sends a NACK to the transmitting end device.
  • the receiving end device sends a NACK to the transmitting end device, and is used to indicate that the data sent by the transmitting end device is not successfully received.
  • the receiving end device After EDAC error correction, the receiving end device performs a second CRC check.
  • step 610 is performed.
  • step 609 may be performed first, and then step 610 is performed.
  • step 608 is performed.
  • step 610 is performed.
  • step 609 may be performed first, and then step 610 is performed.
  • step 606 is performed.
  • the receiving end device performs deinterleaving processing on data that the CRC check succeeds or the CRC check fails but the number of error bits is less than the third threshold.
  • the receiving end device sends an ACK to the transmitting end device.
  • the receiving end device reports data to the host.
  • the receiving end device requests the transmitting end device to retransmit the data.
  • the BLE data transmission and reception in a noisy environment provides a set of effective error correction methods, improves the system transmission bandwidth in the application environment, and is compatible with the Bluetooth protocol stack of the existing mobile phone, and can be used in the BLE wireless data. Applications in areas such as transmission.
  • FIG. 12 is a schematic block diagram of a transmitting end device 700 according to an embodiment of the present application. As shown in FIG. 12, the transmitting device 700 includes:
  • the processing unit 710 is configured to acquire application layer data.
  • the processing unit 710 is further configured to add error detection and correction EDAC policy information to the application layer data to generate transmission data.
  • the sending unit 720 is configured to send the transmission data to the receiving end device, so that the receiving end device detects and corrects an error and feedback of the application layer data during the transmission according to the EDAC policy information.
  • the processing unit 710 is further configured to add EDAC indication information to the application layer data, where the EDAC indication information is used to indicate whether the EDAC policy information is present.
  • processing unit 710 is specifically configured to:
  • the EDAC policy information is determined according to the forward error correction FEC algorithm and the preset error correctable bit number, and the EDAC policy information is added in the application layer data.
  • the processing unit 710 before the processing unit 710 adds the EDAC policy information to the application layer data, the processing unit 710 is further configured to:
  • the RSSI of the received data in the first duration is less than the first threshold, and/or, if the PER of the received data in the first duration is greater than the second threshold, it is determined to use the EDAC policy information.
  • the processing unit 710 before the processing unit 710 adds the EDAC policy information in the application layer data, the processing unit 710 is further configured to interleave the bit sequence in the application layer data.
  • the transmitting device 700 may correspond to the transmitting device in the method 300 of the present application, and the foregoing and other operations and/or functions of the respective units in the transmitting device 700 are respectively implemented in FIG. The corresponding process of the transmitting device in the method 300 is not repeated here for brevity.
  • FIG. 13 is a schematic block diagram of a sink device 800 in accordance with an embodiment of the present application. As shown in FIG. 13, the receiving device 800 includes:
  • the receiving unit 810 is configured to receive transmission data sent by the transmitting end device, where the transmission data includes application layer data including error detection and correction EDAC policy information;
  • the processing unit 820 is configured to detect and correct an error that occurs in the transmission process of the application layer data according to the EDAC policy information.
  • the processing unit 820 is further configured to feed back to the transmitting device according to the result of the detecting and correcting.
  • the transmission data further includes EDAC indication information, where the EDAC indication information is used to indicate whether the EDAC policy information exists;
  • the processing unit 820 is further configured to determine, according to the EDAC indication information, that the EDAC policy information exists according to the EDAC indication information, before the processing unit 820 detects and corrects an error that occurs in the transmission of the application layer data according to the EDAC policy information.
  • processing unit 820 is specifically configured to:
  • an ACK is sent to the transmitting device, and the ACK is used to indicate that the transmission data is successfully received.
  • the processing unit 820 is further configured to: before detecting, according to the EDAC policy information, an error that occurs in the transmission process of the application layer data, the processing unit 820 is further configured to:
  • the step of detecting and correcting the application layer data is entered.
  • the processing unit 820 detects and corrects an error that occurs in the transmission process of the application layer data according to the EDAC policy information, the processing unit 820 is further configured to:
  • the step of feeding back to the transmitting device based on the result of the detection and correction is entered.
  • the processing unit 820 is further configured to perform deinterleaving processing on the transmission data.
  • the receiving end device 800 may correspond to the receiving end device in the method 500 of the present application, and the above and other operations and/or functions of the respective units in the receiving end device 800 are respectively implemented in order to implement FIG.
  • the corresponding process of the receiving device in the method 500 is not repeated here for brevity.
  • FIG. 14 is a schematic block diagram of a device 900 for data transmission provided by an embodiment of the present application, where the device 900 includes:
  • a memory 910 configured to store a program, where the program includes a code
  • transceiver 920 configured to communicate with other devices
  • the processor 930 is configured to execute program code in the memory 910.
  • the transceiver 920 is configured to perform specific signal transceiving under the driving of the processor 930.
  • the processor 930 may implement the method 300 in FIG. 5 or implement the operations performed by the transmitting device in the method 400 in FIG. 9.
  • the processor 930 may implement the method 300 in FIG. 5 or implement the operations performed by the transmitting device in the method 400 in FIG. 9.
  • the processor 930 can also implement the method 500 in FIG. 10 or implement the operations performed by the receiving device in the method 600 in FIG. 11.
  • the processor 930 can also implement the method 500 in FIG. 10 or implement the operations performed by the receiving device in the method 600 in FIG. 11.
  • the processor 930 may be a central processing unit (CPU), and the processor 930 may also be other general-purpose processors, digital signal processors (DSPs), and application specific integrated circuits. (ASIC), off-the-shelf programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, and more.
  • the general purpose processor may be a microprocessor or the processor or any conventional processor or the like.
  • the memory 910 can include read only memory and random access memory and provides instructions and data to the processor 930. A portion of the memory 910 may also include a non-volatile random access memory. For example, the memory 910 can also store information of the device type.
  • the transceiver 920 can be used to implement signal transmission and reception functions, such as frequency modulation and demodulation functions or upconversion and down conversion functions.
  • the device 900 for data transmission can be a chip or a chipset.
  • the steps of the method disclosed in the embodiments of the present application may be directly implemented as a hardware processor, or may be performed by a combination of hardware and software modules in the processor.
  • the software module can be located in a conventional storage medium such as random access memory, flash memory, read only memory, programmable read only memory or electrically erasable programmable memory, registers, and the like.
  • the storage medium is located in the memory, and the processor 930 reads the information in the memory and completes the steps of the above method in combination with the hardware thereof. To avoid repetition, it will not be described in detail here.
  • FIG. 15 is a schematic structural diagram of a system chip 1000 according to an embodiment of the present application.
  • the system chip 1000 of FIG. 15 includes an input interface 1001, an output interface 1002, a processor 1003, and a memory 1004 that can be connected by an internal communication connection line.
  • the processor 1003 is configured to execute code in the memory 1004.
  • the processor 1003 when the code is executed, the processor 1003 implements a method performed by the transmitting device in the method embodiment. For the sake of brevity, it will not be repeated here.
  • the processor 1003 when the code is executed, the processor 1003 implements a method performed by the receiving device in the method embodiment. For the sake of brevity, it will not be repeated here.
  • the disclosed systems, devices, and methods may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the unit is only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be in an electrical, mechanical or other form.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the functions may be stored in a computer readable storage medium if implemented in the form of a software functional unit and sold or used as a standalone product.
  • the technical solution of the present application which is essential or contributes to the prior art, or a part of the technical solution, may be embodied in the form of a software product, which is stored in a storage medium, including Several instructions are used to make a computer device (which can be a personal computer, a server, Either a network device or the like) performs all or part of the steps of the method described in the various embodiments of the present application.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like.

Landscapes

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

Abstract

本申请实施例提供了一种数据传输的方法、发射端设备和接收端设备,在采用ARQ机制进行数据传输时,发射端设备根据当前所处的通信环境,确定使用EDAC策略信息检测数据在传输过程中出现的错误及纠正所出现的错误,减少数据重传次数,进而,降低了数据的传输时延、增加了数据传输吞吐率、降低了系统功耗。该方法包括:获取应用层数据;在该应用层数据中添加EDAC策略信息,生成传输数据;向接收端设备发送该传输数据,以使该接收端设备根据该EDAC策略信息检测和纠正该应用层数据在传输过程中出现的错误并反馈。

Description

数据传输的方法、发射端设备和接收端设备 技术领域
本申请涉及通信领域,并且更具体地,涉及一种数据传输的方法、发射端设备和接收端设备。
背景技术
自动重传请求(Automatic Repeat-reQuest,ARQ)是保证数据可靠传输的一种常用的技术手段。采用ARQ机制进行数据传输,即数据发送方在发送一个数据包后,需要等待接收方对该数据包的接收确认信息,如果没有收到接收确认信息,则会对该数据包进行重传,直至数据发送成功,同时,在重传期间,无法发送新的数据。
然而,采用ARQ机制进行数据传输,存在数据传输时延大、数据传输吞吐率低和系统功耗大等问题,尤其是在环境干扰噪声较大时,上述问题更为明显。在采用ARQ机制进行数据传输时,如何在保证可靠传输的同时,降低数据的传输时延、增加数据传输吞吐率、降低系统功耗是一项亟待解决的问题。
发明内容
本申请实施例提供了一种数据传输的方法、发射端设备和接收端设备,在采用ARQ机制进行数据传输时,发射端设备使用错误检测与纠正(Error Detection and Correction,EDAC)策略信息检测应用层数据在传输过程中出现的错误及纠正所出现的错误,同时可以结合交织编码进行校验,减少数据重传次数,进而,降低了数据的传输时延、增加了数据传输吞吐率、降低了系统功耗。
第一方面,本申请实施例提供了数据传输的方法,包括:
获取应用层数据;
在该应用层数据中添加EDAC策略信息,生成传输数据;
向接收端设备发送该传输数据,以使该接收端设备根据该EDAC策略信息检测和纠正该应用层数据在传输过程中出现的错误并反馈。
可选地,该数据传输的方法采用ARQ机制进行数据传输。
因此,在本申请实施例的数据传输的方法中,在采用ARQ机制进行数据传输时,发射端设备使用EDAC策略信息检测应用层数据在传输过程中出现的错误及纠正所出现的错误,减少数据重传次数,进而,降低了数据的传输时延、增加了数据传输吞吐率、降低了系统功耗。
可选地,在第一方面的一种实现方式中,根据当前所处的通信环境,确定使用EDAC策略信息检测该应用层数据在传输过程中出现的错误及纠正所出现的错误。
进一步地,减少了因通信环境差而造成的数据重传。
可选地,在第一方面的一种实现方式中,在生成该传输数据之前,该方法还包括:
在该应用层数据中添加EDAC指示信息,该EDAC指示信息用于指示该EDAC策略信息是否存在。
因此,在本申请实施例的数据传输的方法中,接收端设备可以根据EDAC指示信息确定是否根据EDAC策略信息检测应用层数据在传输过程中出现的错误及纠正所出现的错误。
可选地,在第一方面的一种实现方式中,该在该应用层数据中添加EDAC策略信息,包括:
根据前向纠错(Forward Error Correction,FEC)和预设的可纠错的比特数,确定该EDAC策略信息并在该应用层数据中添加该EDAC策略信息。
可选地,在第一方面的一种实现方式中,在该应用层数据中添加EDAC策略信息之前,该方法还包括:
在当前所处的通信环境下,对第一时长内接收数据的信号强度指示(Received Signal Strength Indicator,RSSI)和该第一时长内所接收数据的误包率(Packet Error Rate,PER)进行统计分析;
若该第一时长内接收数据的RSSI小于第一阈值,和/或,若该第一时长内所接收数据的PER大于第二阈值时,确定使用该EDAC策略信息。
可选地,在第一方面的一种实现方式中,在该应用层数据中添加EDAC策略信息之前,该方法还包括:
交织编码该应用层数据中的比特序列。
因此,在本申请实施例的数据传输的方法中,使用EDAC策略信息检测应用层数据在传输过程中出现的错误及纠正所出现的错误,以及交织编码应 用层数据中的比特序列,从而,减少数据重传次数,进而,降低了数据的传输时延、增加了数据传输吞吐率、降低了系统功耗。
可选地,在第一方面的一种实现方式中,该方法应用于低功耗蓝牙(Bluetooth Low Energy,BLE)通信。
第二方面,本申请实施例提供了一种数据传输的方法,包括:
接收发射端设备发送的传输数据,该传输数据包括含有错误检测与纠正EDAC策略信息的应用层数据;
根据该EDAC策略信息检测和纠正该应用层数据在传输过程中出现的错误;
根据检测和纠正的结果向该发射端设备反馈。
可选地,该数据传输的方法采用ARQ机制进行数据传输。
因此,在本申请实施例的数据传输的方法中,在采用ARQ机制进行数据传输时,发射端设备使用EDAC策略信息检测应用层数据在传输过程中出现的错误及纠正所出现的错误,从而,减少数据重传次数,进而,降低了数据的传输时延、增加了数据传输吞吐率、降低了系统功耗。
可选地,在第二方面的一种实现方式中,该传输数据还包括EDAC指示信息,该EDAC指示信息用于指示该EDAC策略信息是否存在;
在根据该EDAC策略信息检测和纠正该应用层数据在传输中出现的错误之前,该方法还包括:
根据该EDAC指示信息,确定该EDAC策略信息存在。
因此,在本申请实施例的数据传输的方法中,接收端设备可以根据EDAC指示信息确定是否根据EDAC策略信息检测传输数据在传输过程中出现的错误及纠正所出现的错误。
可选地,在第二方面的一种实现方式中,根据该EDAC策略信息检测和纠正该应用层数据在传输过程中出现的错误,包括:
根据前向纠错FEC算法对该应用层数据进行纠错;
检测纠错后该应用层数据的累计错误比特;
该根据检测和纠正的结果向该发射端设备反馈,包括:
若该累计错误比特大于第三阈值,向该发射端设备发送非确认帧(Non-ACKnowledge Character,NACK),该NACK用于指示未成功接收该传输数据;
若该累计错误比特小于或者等于第三阈值,向该发射端设备发送确认帧(ACKnowledge Character,ACK),该ACK用于指示成功接收该传输数据。
可选地,在第二方面的一种实现方式中,在根据该EDAC策略信息检测和纠正该应用层数据在传输过程中出现的错误之前,该方法还包括:
对该传输数据进行第一循环冗余校验(Cyclic Redundancy Check,CRC);
若第一CRC失败,进入检测和纠正该应用层数据的步骤。
可选地,在第二方面的一种实现方式中,在根据该EDAC策略信息检测和纠正该应用层数据在传输过程中出现的错误之后,该方法还包括:
对该传输数据进行第二CRC;
若第二CRC失败,进入根据检测和纠正的结果向该发射端设备反馈的步骤。
可选地,在第二方面的一种实现方式中,若向该发射端设备发送该ACK时,该方法还包括:
对该传输数据进行解交织处理。
因此,在本申请实施例的数据传输的方法中,在根据EDAC策略信息检测传输数据中的应用层数据在传输过程中出现的错误及纠正所出现的错误之后,对传输数据进行解交织处理,从而,进一步减少数据重传次数,进而,降低了数据的传输时延、增加了数据传输吞吐率、降低了系统功耗。
可选地,在第二方面的一种实现方式中,该方法应用于BLE通信。
第三方面,本申请实施例提供了一种发射端设备,可以执行第一方面或第一方面的任一可选的实现方式中的方法的模块或者单元。
第四方面,本申请实施例提供了一种接收端设备,可以执行第二方面或第二方面的任一可选的实现方式中的方法的模块或者单元。
第五方面,提供了一种发射端设备,该发射端设备包括处理器、存储器和通信接口。处理器与存储器和通信接口连接。存储器用于存储指令,处理器用于执行该指令,通信接口用于在处理器的控制下与其他网元进行通信。该处理器执行该存储器存储的指令时,该执行使得该处理器执行第一方面或第一方面的任意可能的实现方式中的方法。
第六方面,提供了一种接收端设备,该接收端设备包括处理器、存储器和通信接口。处理器与存储器和通信接口连接。存储器用于存储指令,处理器用于执行该指令,通信接口用于在处理器的控制下与其他网元进行通信。 该处理器执行该存储器存储的指令时,该执行使得该处理器执行第二方面或第二方面的任意可能的实现方式中的方法。
第七方面,提供了一种计算机存储介质,该计算机存储介质中存储有程序代码,该程序代码用于指示计算机执行上述第一方面或第一方面的任一种可能的实现方式中的方法的指令。
第八方面,提供了一种计算机存储介质,该计算机存储介质中存储有程序代码,该程序代码用于指示计算机执行上述第二方面或第二方面的任一种可能的实现方式中的方法的指令。
第九方面,提供了一种包括指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
附图说明
图1示出了本申请实施例应用的一种无线通信系统。
图2示出了本申请实施例应用的另一种无线通信系统。
图3示出了本申请实施例中一种BLE无线连接的系统框图。
图4是BLE用户空口数据包结构组成示意图。
图5是根据本申请实施例的一种数据传输的方法的示意性流程图。
图6是根据本申请实施例中判断是否启用EDAC机制的示意性流程图。
图7是根据本申请实施例的一种EDAC策略信息承载方式示意图。
图8是根据本申请实施例的另一种EDAC策略信息承载方式示意图。
图9是根据本申请实施例的一种数据传输的方法的示意图。
图10是根据本申请实施例的另一种数据传输的方法的示意性流程图。
图11是根据本申请实施例的另一种数据传输的方法的示意图。
图12是根据本申请实施例的一种发射端设备的示意性框图。
图13是根据本申请实施例的一种接收端设备的示意性框图。
图14示出了本申请实施例提供的数据传输的设备的示意性框图。
图15是根据本申请实施例的系统芯片的示意性结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
应理解,本申请实施例的技术方案可以应用于各种通信系统,例如,全球移动通讯(Global System of Mobile communication,GSM)系统、码分多址(Code Division Multiple Access,CDMA)系统、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)系统、通用分组无线业务(General Packet Radio Service,GPRS)、长期演进(Long Term Evolution,LTE)系统、LTE频分双工(Frequency Division Duplex,FDD)系统、LTE时分双工(Time Division Duplex,TDD)、通用移动通信系统(Universal Mobile Telecommunication System,UMTS)、全球互联微波接入(Worldwide Interoperability for Microwave Access,WiMAX)通信系统、新无线(New Radio,NR)或未来的5G系统等。
可选地,本申请实施例可以应用于终端设备与网络设备(例如,基站)之间的通信,例如,终端设备通过上行链路(Uplink,UL)向网络设备发送数据,或者,网络设备通过下行链路(Downlink,DL)向终端设备发送数据。
例如,如图1示出了本申请实施例应用的一种应用场景,该应用场景可以是无线通信系统100。该无线通信系统100可以包括网络设备110。网络设备110可以是与终端设备通信的设备。网络设备110可以为特定的地理区域提供通信覆盖,并且可以与位于该覆盖区域内的终端设备,例如用户设备(User Equipment,UE),进行通信。可选地,该网络设备110可以是GSM系统或CDMA系统中的基站(Base Transceiver Station,BTS),也可以是WCDMA系统中的基站(NodeB,NB),还可以是LTE系统中的演进型基站(Evolutional Node B,eNB或eNodeB),或者是云无线接入网络(Cloud Radio Access Network,CRAN)中的无线控制器,或者该网络设备可以为中继站、接入点、车载设备、可穿戴设备、未来5G网络中的网络侧设备或者未来演进的公共陆地移动网络(Public Land Mobile Network,PLMN)中的网络设备等。
该无线通信系统100还包括位于网络设备110覆盖范围内的至少一个终端设备120。终端设备120可以是移动的或固定的。可选地,终端设备120可以指接入终端、用户设备(UE)、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置。接入终端可以是蜂窝电话、无绳电话、会话启动协议(Session  Initiation Protocol,SIP)电话、无线本地环路(Wireless Local Loop,WLL)站、个人数字处理(Personal Digital Assistant,PDA)、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、车载设备、可穿戴设备、未来5G网络中的终端设备或者未来演进的PLMN中的终端设备等。
图1示例性地示出了一个网络设备和两个终端设备,可选地,该无线通信系统100可以包括多个网络设备并且每个网络设备的覆盖范围内可以包括其它数量的终端设备,本申请实施例对此不做限定。
可选地,该无线通信系统100还可以包括网络控制器、移动管理实体等其他网络实体,本申请实施例对此不作限定。
还应理解,本申请实施例的技术方案还可以应用于设备与设备(Device-to-Device,D2D)通信,例如,设备与设备之间的低功耗蓝牙(Bluetooth Low Energy,BLE)通信、车对车(Vehicle to Vehicle,V2V)通信或车辆到其他设备(Vehicle to Everything,V2X)通信。
可选地,本申请实施例可以应用于终端设备与终端设备之间的通信,例如,终端设备和终端设备通过侧行链路(Sidelink,SL)直接进行通信。
例如,图2是本申请实施例的另一个应用场景的示意图,该应用场景可以是无线通信系统200。如图2所示,该无线通信系统200包括终端设备10和终端设备20,终端设备10和终端设备20可以通过D2D通信模式(例如,BLE)进行通信,在进行D2D通信时,终端设备10和终端设备20通过D2D链路即侧行链路(SL)直接进行通信。
终端设备10或终端设备20可以是能够实现D2D通信的终端设备。例如,可以是车载终端设备,也可以指接入终端、用户设备(UE)、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置。接入终端可以是蜂窝电话、无绳电话、会话启动协议(SIP)电话、无线本地环路(WLL)站、个人数字处理(PDA)、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、可穿戴设备、未来5G网络中的终端设备或者未来演进的PLMN中的终端设备等,本申请实施例并不限定。
图3是终端设备(例如,安卓手机)和BLE设备在BLE无线连接中的系统框图。
BLE控制(controller)子系统一般是一颗多合一的芯片,通常会集成无线保真技术(Wireless Fidelity,WIFI)/全球定位系统(Global Positioning System,GPS)/调频(Frequency Modulation,FM)多模系统射频(Radio Frequency,RF),在芯片中运行BLE控制子系统固件,负责处理controller的业务逻辑,并通过主控制器接口(Host controller Interface,HCI)和主机(Host)之间进行数据交互。
BLE主协议栈(Host Stack)部分运行在接入点(Access Point,AP)之上,目前安卓系统中的协议栈涵盖了HCI-HOST、逻辑链路控制和适配协议(Logical Link Control and Adaptation Protocol,L2CAP)、业务模型(Service Model,SM)、用于发现、读、写对端设备的协议(Attribute Protocol,ATT)、通用访问应用(Generic Access Profile,GAP)协议栈。
用户应用(User Application Program,User APP)是用户开发的蓝牙应用,用于在不同的蓝牙设备之间进行数据传递。
BLE设备这端一般由一颗BLE集成芯片(System on a Chip,SOC)和其他外围元器件组成。在BLE SOC芯片中,包括RF、Controller、Host和User App组成。
可选地,本申请实施例可以应用于如图3所示的BLE无线连接中的系统框图。
图4是BLE用户空口数据包结构组成示意图。
应用层数据(APP Data)是指用户应用的应用数据,与具体业务相关,由应用层提供。
主数据包(Host Packet)是在APP Data的基础上,添加ATT报文头(ATT header)、L2CAP报文头(L2CAP Header)组成,如果启用数据签名功能,则需要添加签名数据,由主协议栈负责组包。
控制数据包(Controller Packet)是在Host Packet的基础上,添加链路层报文头(Link Layer Header,LL Header)组成,如果启用链路加密,还需要对主数据包进行加密计算,添加消息识别码(Message Identification Code,MIC)。
空口数据包(Air Packet)是在Controller Packet的基础上,添加前导序列(Preamble)、接入地址(Access Address)和循环冗余校验码(CRC)组成,其中CRC是对Controller Packet部分进行计算得到,在接收空口数据包 时,通过CRC校验可以发现数据传输接收过程中是否存在比特错误的情况。
本申请实施例中的第一数据可以是如图4所示的应用层数据,本申请实施例中的EDAC策略信息可以承载于应用层数据的服务数据单元(Service Data Unit,SDU)上的字段内。
图5是根据本申请实施例的一种数据传输的方法300的示意性流程图。如图5所示,该方法300可以由发射端设备执行,该发射端设备可以是如图1所示的网络设备110或终端设备120,也可以是如图2中所示的终端设备10或终端设备20,该方法300中的接收端设备可以是如图1所示的终端设备120或网络设备110,也可以是如图2中所示的终端设备20或终端设备10,该方法300包括以下内容。
310,获取应用层数据。
320,在该应用层数据中添加EDAC策略信息,生成传输数据。
该EDAC策略信息用于检测该应用层数据在传输过程中出现的错误及纠正所出现的错误。
该EDAC策略信息可以基于错误检查和纠正(Error Checking And Correcting,ECC)实现。
可选地,可以根据该FEC算法和预设的可纠错的比特数,确定该EDAC策略信息。
该预设的可纠错的比特数是指该EDAC策略信息能够纠错的比特数。
例如,某一种EDAC策略信息可以在512比特的数据中,检测2个比特的错误和纠正1个比特的错误,此时,该预设的可纠错的比特数为1个比特。
随着被校验数据(应用层数据)的比特数的增多,该EDAC策略信息所占用的比特数也相应地增加。
可选地,在传输数据中添加EDAC指示信息(例如,EDAC Flag)。
例如,如图6所示,该EDAC指示信息承载在该应用层数据之前的字段内,该EDAC策略信息承载在该应用层数据之后的字段内。
又例如,如图7所示,该EDAC指示信息承载在该应用层数据之前的字段内,该EDAC策略信息承载在该应用层数据中的字段内。
该EDAC指示信息可以指示该EDAC策略信息是否存在。
例如,该EDAC指示信息可以是标志位,该标志位可以是0或1,可以用0指示使用该EDAC策略信息检测该应用层数据在传输过程中出现的错误 及纠正所出现的错误,可以用1指示不使用该EDAC策略信息检测该应用层数据在传输过程中出现的错误及纠正所出现的错误。
可选地,可以根据当前所处的通信环境,确定是否使用EDAC策略信息检测该应用层数据在传输过程中出现的错误及纠正所出现的错误。
应理解,电磁干扰(例如,同频电磁信号的传输时产生的干扰)会影响当前所处的通信环境。
例如,在存在电磁干扰时,应用层数据中的多个比特在传输的过程中就可能出现错误。
在当前所处的通信环境下,发射端设备对第一时长内接收数据的RSSI和该第一时长内所接收数据的PER进行统计分析。
例如,发射端设备统计分析自己在第一时长内接收数据的RSSI和第一时长内所接收数据的PER,可以是与接收端设备进行通信时接收数据的RSSI和所接收数据的PER,也可以是与其他设备进行通信时接收数据的RSSI和所接收数据的PER。
应理解,还可以统计分析一些表征当前所处的通信环境的其他因素,本申请实施例对此不作限定。
若该第一时长内接收数据的RSSI小于第一阈值,和/或,若该第一时长内所接收数据的PER大于第二阈值时,确定使用该EDAC策略信息检测该应用层数据在传输过程中出现的错误及纠正所出现的错误。
若该第一时长内接收数据的RSSI大于或者等于第一阈值,和/或,若该第一时长内所接收数据的PER小于或者等于第二阈值时,确定不使用该EDAC策略信息检测该应用层数据在传输过程中出现的错误及纠正所出现的错误。
如图8所示,在60中,发射端设备获取数据;在61中,发射端设备在获取数据之后,进行CRC校验;在62中,发射端设备统计第一时长内当前所处的通信环境质量;在63中,发射端设备判断启用EDAC机制;在64中,发射端设备判断不启用EDAC机制。
如图8所示,若该第一时长内接收数据的RSSI小于第一阈值,和/或,若该第一时长内所接收数据的PER大于第二阈值时,则认为发射端设备当前所处环境为强信号环境,且PER较高,存在较强的干扰,或者,认为发射端设备当前所处环境为弱信号环境,接近接收灵敏度极限,在这种情况下, 启用EDAC机制,实现提高有效应用数据的传输带宽,降低数据传输的延迟的目的。
若该第一时长内接收数据的RSSI大于或者等于第一阈值,和/或,若该第一时长内所接收数据的PER小于或者等于第二阈值时,则认为发射端设备当前所处环境比较干净,则停用EDAC机制,节省传输带宽。
可选地,在步骤320之前,该方法300还包括:
交织编码该应用层数据中的比特序列。
采用交织编码可以降低应用层数据在传输过程中所产生的错误比特对应用层数据的识别的影响。
例如,在100比特的数据中,第11-15比特的数据在传输的过程中发生了错误,导致100比特的数据无法识别,在交织编码之后,第11-15比特的数据均匀分布在100比特的数据中,如第11比特的数据分布在第1-20内,第12比特的数据分布在第21-40内,第13比特的数据分布在第41-60内,第14比特的数据分布在第61-80内,第15比特的数据分布在第81-100内,这样每20比特中存在1比特错误,就不影响100比特的数据的整体识别。
可选地,发射端设备发送的应用层数据可以采用CRC进行校验。
应理解,发射端设备在应用层数据中添加该EDAC策略信息以及交织编码该应用层数据中的比特序列,不会对接收端设备正常的CRC校验造成影响。
可选地,该数据传输的方法300采用ARQ机制进行数据传输。
应理解,采用ARQ机制进行数据传输时,接收端设备在正常接收数据时,反馈ACK;接收端设备在接收数据失败时,反馈NACK,以请求发射端设备进行数据重传。
330,向接收端设备发送该传输数据,以使接收端设备根据该EDAC策略信息检测和纠正该应用层数据在传输过程中出现的错误并反馈。
因此,在本申请实施例的数据传输的方法中,在采用ARQ机制进行数据传输时,发射端设备使用EDAC策略信息检测应用层数据在传输过程中出现的错误及纠正所出现的错误,减少数据重传次数,进而,降低了数据的传输时延、增加了数据传输吞吐率、降低了系统功耗。
进一步地,减少了因通信环境差而造成的数据重传。
更进一步地,确定使用EDAC策略信息检测应用层数据在传输过程中出 现的错误及纠正所出现的错误,同时交织编码应用层数据中的比特序列,从而,减少数据重传次数,进而,降低了数据的传输时延、增加了数据传输吞吐率、降低了系统功耗。
可选地,作为一个实施例,如图9所示的方法400。该方法400包括:
410,发射端设备获取应用层数据。
可选地,该发射端设备可以是支持BLE通信的终端设备(例如,安卓手机)。
可选地,该应用层数据为BLE用户空口数据包结构中的APP数据。
420,发射端设备确定允许EDAC。
可选地,发射端设备可以根据自身当前所处的环境,确定是否允许EDAC。
例如,若该第一时长内接收数据的RSSI小于第一阈值,和/或,若该第一时长内所接收数据的PER大于第二阈值时,确定使用该EDAC策略信息检测该应用层数据在传输过程中出现的错误及纠正所出现的错误。
430,发射端设备确定不允许EDAC。
可选地,若该第一时长内接收数据的RSSI大于或者等于第一阈值,和/或,若该第一时长内所接收数据的PER小于或者等于第二阈值时,确定不使用该EDAC策略信息检测该应用层数据在传输过程中出现的错误及纠正所出现的错误。
440,发射端设备交织编码该应用层数据。
450,发射端设备在该应用层数据中添加EDAC策略信息。
例如,在该应用层数据中添加承载该EDAC策略信息的字段。
该EDAC策略信息用于检测该应用层数据在传输过程中出现的错误及纠正所出现的错误。
可选地,可以根据FEC算法和预设的可纠错的比特数,确定该EDAC策略信息。
可选地,在该应用层数据中添加EDAC指示信息,该EDAC指示信息用于指示该EDAC策略信息是否存在。
例如,在该应用层数据中添加承载EDAC指示信息的字段。
460,发射端设备发送该应用层数据。
应理解,发射端设备在确定允许EDAC时,执行步骤440、步骤450和 步骤460,发射端设备在确定不允许EDAC时,执行步骤460。
可以根据实际需求,在权衡EDAC带来的数据传输额外开销与错误纠正能力后,选择合适的EDAC算法。另外也可以在数据发送过程中,对当前无线环境进行实时判断,动态决定是否启用EDAC机制。
上述方法400,只需要在蓝牙应用中增加相应处理即可,无需对蓝牙协议栈进行修改,在手机侧具有较高的实现技术可行性。
因此,在采用ARQ机制进行数据传输时,发射端设备根据当前所处的通信环境,确定使用EDAC策略信息检测应用层数据在传输过程中出现的错误及纠正所出现的错误,减少数据重传次数,进而,降低了数据的传输时延、增加了数据传输吞吐率、降低了系统功耗。
进一步地,减少了因通信环境差而造成的数据重传。
更进一步地,确定使用EDAC策略信息检测应用层数据在传输过程中出现的错误及纠正所出现的错误,同时交织编码应用层数据中的比特序列,从而,减少数据重传次数,进而,降低了数据的传输时延、增加了数据传输吞吐率、降低了系统功耗。
图10是根据本申请实施例的一种数据传输的方法500的示意性流程图。如图10所示,该方法500由接收端设备执行,该接收端设备可以是如图1所示的网络设备110或终端设备120,也可以是如图2中所示的终端设备10或终端设备20,该方法500中的发射端设备可以是如图1所示的终端设备120或网络设备110,也可以是如图2中所示的终端设备20或终端设备10,该方法500包括以下内容。
510,接收发射端设备发送的传输数据,该传输数据包括含有错误检测与纠正EDAC策略信息的应用层数据。
520,根据该EDAC策略信息检测和纠正该应用层数据在传输过程中出现的错误。
530,根据检测和纠正的结果向该发射端设备反馈。
该EDAC策略信息用于检测该应用层数据在传输过程中出现的错误及纠正所出现的错误。
可选地,该传输数据还包括EDAC指示信息,该EDAC指示信息用于指示该EDAC策略信息是否存在。
在根据该EDAC策略信息检测和纠正该应用层数据之前,该方法还包 括:
根据该EDAC指示信息,确定该EDAC策略信息存在。
可选地,该方法500中的步骤520具体可以是:
根据前向纠错FEC算法对该应用层数据进行纠错;
检测纠错后该应用层数据的累计错误比特。
该方法500中的步骤530具体可以是:
若该累计错误比特大于第三阈值,向该发射端设备发送NACK,该NACK用于指示未成功接收该传输数据;
若该累计错误比特小于或者等于第三阈值,向该发射端设备发送ACK,该ACK用于指示成功接收该传输数据。
可选地,在根据该EDAC策略信息检测和纠正该应用层数据在传输过程中出现的错误之前,该方法500还包括:
对该传输数据进行第一CRC;
若第一CRC失败,进入检测和纠正该应用层数据的步骤(即步骤520)。
可选地,在根据该EDAC策略信息检测和纠正该应用层数据在传输过程中出现的错误之后,该方法500还包括:
对该传输数据进行第二CRC;
若第二CRC失败,进入根据检测和纠正的结果向该发射端设备反馈的步骤(即步骤530)。
可选地,在接收端设备根据EDAC策略信息,检测和纠正该应用层数据在传输过程中出现的错误时,检测该应用层数据中的累计错误比特数。
第二CRC校验该传输数据失败且该累计错误比特数大于第三阈值时,接收端设备向该发射端设备发送NACK,该NACK用于指示未成功接收该传输数据。
第二CRC校验该传输数据失败且该累计错误比特数小于或者等于第三阈值时,接收端设备向该发射端设备发送ACK,该ACK用于指示成功接收该传输数据。
第二CRC校验该传输数据成功,接收端设备向该发射端设备发送ACK,该ACK用于指示成功接收该传输数据。
接收端设备对所接收的数据有一定的错误容忍度,例如,512比特的数据中,允许存在2个比特的错误,进行了FEC纠错后,当累计错误比特数 在接收端设备的错误容忍度内,则认为数据正确接收。
可选地,若向该发射端设备发送该ACK时,该方法500还包括:
对该传输数据进行解交织处理。
该方法500应用于BLE通信。可以通过专用蓝牙芯片硬件实现上述方法500。
应理解,数据传输的方法500中的步骤可以参考数据传输的方法300中的相应步骤的描述,为了简洁,在此不再赘述。
因此,在本申请实施例的数据传输的方法中,在采用ARQ机制进行数据传输时,接收端设备根据CRC校验传输数据失败时,使用EDAC策略信息检测传输数据中的应用层数据在传输过程中出现的错误及纠正所出现的错误,从而,减少数据重传次数,进而,降低了数据的传输时延、增加了数据传输吞吐率、降低了系统功耗。
进一步地,对传输数据进行解交织处理,从而,进一步减少数据重传次数。
可选地,可以作为一个实施例,如图11所示的方法600。该方法600包括:
601,接收端设备从发射端设备接收应用层数据。
该发射端设备可以是支持BLE通信的终端设备(例如,安卓手机)。该接收端设备可以是BLE设备(例如,智能手环)。该应用层数据为BLE用户空口数据包结构中的应用层数据。
602,接收端设备对所接收的应用层数据进行第一CRC校验。
如图11所示,在第一CRC校验成功时,执行步骤603。在第一CRC校验失败时,执行步骤604。
603,接收端设备向发射端设备发送ACK。
接收端设备向发射端设备发送ACK,用于指示成功接收发射端设备发送的数据。
604,接收端设备判断是否使用EDAC机制。
可选地,接收端设备可以通过应用层数据中包含的EDAC指示信息来确定是否使用EDAC机制。
例如,在应用层数据中包含的EDAC指示信息指示存在EDAC策略信息时,确定使用EDAC机制。
如图11所示,在确定使用EDAC机制时,执行步骤605。在确定不使用EDAC机制时,执行步骤606。
605,接收端设备根据EDAC进行纠错及计算累计错误比特数。
接收端设备根据EDAC策略信息检测应用层数据在传输过程中出现的错误及纠正所出现的错误。应用层数据中包含EDAC策略信息。
可选地,EDAC策略信息是根据FEC算法和预设的可纠错的比特数确定。
接收端设备可以在进行EDAC纠错后,计算累计错误比特数。
606,接收端设备向发射端设备发送NACK。
接收端设备向发射端设备发送NACK,用于指示未成功接收发射端设备发送的数据。
607,在经过EDAC纠错之后,接收端设备进行第二CRC校验。
如图11所示,在第二CRC校验成功时,执行步骤610。
可选地,如图11所示,在第二CRC校验成功时,可以先执行步骤609,然后执行步骤610。
在第二CRC校验失败时,执行步骤608。
608,判断累计错误比特数是否小于第三阈值。
如图11所示,在累计错误比特数小于第三阈值时,执行步骤610。
可选地,如图11所示,在累计错误比特数小于第三阈值时,可以先执行步骤609,然后执行步骤610。
在累计错误比特数大于或者等于第三阈值时,执行步骤606。
609,接收端设备对CRC校验成功或者CRC校验失败但错误比特数小于第三阈值的数据进行解交织处理。
610,接收端设备向发射端设备发送ACK。
611,接收端设备向主机上报数据。
612,接收端设备请求发射端设备重传数据。
通过上述方法600,在噪声环境下的BLE数据收发,提供了一套行之有效的错误纠正方法,提高应用环境下的系统传输带宽,并兼容现有手机的蓝牙协议栈,可以在BLE无线数据传输等领域进行应用。
图12是根据本申请实施例的发射端设备700的示意性框图。如图12所示,该发射端设备700包括:
处理单元710,用于获取应用层数据;
该处理单元710,还用于在该应用层数据中添加错误检测与纠正EDAC策略信息,生成传输数据;
发送单元720,用于向接收端设备发送该传输数据,以使该接收端设备根据该EDAC策略信息检测和纠正该应用层数据在传输过程中出现的错误并反馈。
可选地,在该处理单元710生成该传输数据之前,该处理单元710还用于在该应用层数据中添加EDAC指示信息,该EDAC指示信息用于指示该EDAC策略信息是否存在。
可选地,该处理单元710具体用于:
根据前向纠错FEC算法和预设的可纠错的比特数,确定该EDAC策略信息并在该应用层数据中添加该EDAC策略信息。
可选地,该处理单元710在该应用层数据中添加EDAC策略信息之前,该处理单元710还用于:
在当前所处的通信环境下,对第一时长内接收数据的信号强度指示RSSI和该第一时长内所接收数据的误包率PER进行统计分析;
若该第一时长内接收数据的RSSI小于第一阈值,和/或,若该第一时长内所接收数据的PER大于第二阈值时,确定使用该EDAC策略信息。
可选地,该处理单元710在该应用层数据中添加EDAC策略信息之前,该处理单元710还用于交织编码该应用层数据中的比特序列。
应理解,根据本申请实施例的发射端设备700可对应于本申请方法300中的发射端设备,并且发射端设备700中的各个单元的上述和其它操作和/或功能分别为了实现图5所示方法300中发射端设备的相应流程,为了简洁,在此不再赘述。
图13是根据本申请实施例的接收端设备800的示意性框图。如图13所示,该接收端设备800包括:
接收单元810,用于接收发射端设备发送的传输数据,该传输数据包括含有错误检测与纠正EDAC策略信息的应用层数据;
处理单元820,用于根据该EDAC策略信息检测和纠正该应用层数据在传输过程中出现的错误;
该处理单元820,还用于根据检测和纠正的结果向该发射端设备反馈。
可选地,该传输数据还包括EDAC指示信息,该EDAC指示信息用于指示该EDAC策略信息是否存在;
该处理单元820在根据该EDAC策略信息检测和纠正该应用层数据在传输中出现的错误之前,该处理单元820还用于根据该EDAC指示信息,确定根据该EDAC策略信息存在。
可选地,该处理单元820具体用于:
根据前向纠错FEC算法对该应用层数据进行纠错;
检测纠错后该应用层数据的累计错误比特;
若该累计错误比特大于第三阈值,向该发射端设备发送NACK,该NACK用于指示未成功接收该传输数据;
若该累计错误比特小于或者等于第三阈值,向该发射端设备发送ACK,该ACK用于指示成功接收该传输数据。
可选地,该处理单元820在根据该EDAC策略信息检测和纠正该应用层数据在传输过程中出现的错误之前,该处理单元820还用于:
对该传输数据进行第一循环冗余校验CRC;
若第一CRC失败,进入检测和纠正该应用层数据的步骤。
可选地,该处理单元820在根据该EDAC策略信息检测和纠正该应用层数据在传输过程中出现的错误之后,该处理单元820还用于:
对该传输数据进行第二CRC;
若第二CRC失败,进入根据检测和纠正的结果向该发射端设备反馈的步骤。
可选地,若该接收端设备向该发射端设备发送该ACK时,该处理单元820还用于对该传输数据进行解交织处理。
应理解,根据本申请实施例的接收端设备800可对应于本申请方法500中的接收端设备,并且接收端设备800中的各个单元的上述和其它操作和/或功能分别为了实现图10所示方法500中接收端设备的相应流程,为了简洁,在此不再赘述。
图14示出了本申请实施例提供的数据传输的设备900的示意性框图,该设备900包括:
存储器910,用于存储程序,该程序包括代码;
收发器920,用于和其他设备进行通信;
处理器930,用于执行存储器910中的程序代码。
可选地,收发器920用于在处理器930的驱动下执行具体的信号收发。
可选地,当该代码被执行时,该处理器930可以实现图5中的方法300或实现图9中的方法400中发射端设备执行的各个操作,为了简洁,在此不再赘述。
可选地,当该代码被执行时,该处理器930还可以实现图10中的方法500或实现图11中的方法600中接收端设备执行的各个操作,为了简洁,在此不再赘述。
应理解,在本申请实施例中,该处理器930可以是中央处理单元(Central Processing Unit,CPU),该处理器930还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器910可以包括只读存储器和随机存取存储器,并向处理器930提供指令和数据。存储器910的一部分还可以包括非易失性随机存取存储器。例如,存储器910还可以存储设备类型的信息。
收发器920可以是用于实现信号发送和接收功能,例如频率调制和解调功能或叫上变频和下变频功能。
在实现过程中,上述方法的至少一个步骤可以通过处理器930中的硬件的集成逻辑电路完成,或该集成逻辑电路可在软件形式的指令驱动下完成该至少一个步骤。因此,数据传输的设备900可以是个芯片或者芯片组。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器930读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
图15是根据本申请实施例的系统芯片1000的示意性结构图。图15的系统芯片1000包括输入接口1001、输出接口1002、处理器1003以及存储器1004之间可以通过内部通信连接线路相连,该处理器1003用于执行该存储器1004中的代码。
可选地,当该代码被执行时,该处理器1003实现方法实施例中由发射端设备执行的方法。为了简洁,在此不再赘述。
可选地,当该代码被执行时,该处理器1003实现方法实施例中由接收端设备执行的方法。为了简洁,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器, 或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

Claims (22)

  1. 一种数据传输的方法,其特征在于,包括:
    获取应用层数据;
    在所述应用层数据中添加错误检测与纠正EDAC策略信息,生成传输数据;
    向接收端设备发送所述传输数据,以使所述接收端设备根据所述EDAC策略信息检测和纠正所述应用层数据在传输过程中出现的错误并反馈。
  2. 根据权利要求1所述的方法,其特征在于,在生成所述传输数据之前,所述方法还包括:
    在所述应用层数据中添加EDAC指示信息,所述EDAC指示信息用于指示所述EDAC策略信息是否存在。
  3. 根据权利要求1或2所述的方法,其特征在于,所述在所述应用层数据中添加EDAC策略信息,包括:
    根据前向纠错FEC算法和预设的可纠错的比特数,确定所述EDAC策略信息并在所述应用层数据中添加所述EDAC策略信息。
  4. 根据权利要求1至3中任一项所述的方法,其特征在于,在所述应用层数据中添加EDAC策略信息之前,所述方法还包括:
    在当前所处的通信环境下,对第一时长内接收数据的信号强度指示RSSI和所述第一时长内接收数据的误包率PER进行统计分析;
    若所述第一时长内接收数据的RSSI小于第一阈值,和/或,若所述第一时长内接收数据的PER大于第二阈值时,确定使用所述EDAC策略信息。
  5. 根据权利要求1至4中任一项所述的方法,其特征在于,在所述应用层数据中添加EDAC策略信息之前,所述方法还包括:
    交织编码所述应用层数据中的比特序列。
  6. 一种数据传输的方法,其特征在于,包括:
    接收发射端设备发送的传输数据,所述传输数据包括含有错误检测与纠正EDAC策略信息的应用层数据;
    根据所述EDAC策略信息检测和纠正所述应用层数据在传输过程中出现的错误;
    根据检测和纠正的结果向所述发射端设备反馈。
  7. 根据权利要求6所述的方法,其特征在于,所述传输数据还包括EDAC 指示信息,所述EDAC指示信息用于指示所述EDAC策略信息是否存在;
    在根据所述EDAC策略信息检测和纠正所述应用层数据在传输中出现的错误之前,所述方法还包括:
    根据所述EDAC指示信息,确定所述EDAC策略信息存在。
  8. 根据权利要求6或7所述的方法,其特征在于,根据所述EDAC策略信息检测和纠正所述应用层数据在传输过程中出现的错误,包括:
    根据前向纠错FEC算法对所述应用层数据进行纠错;
    检测纠错后所述应用层数据的累计错误比特;
    所述根据检测和纠正的结果向所述发射端设备反馈,包括:
    若所述累计错误比特大于第三阈值,向所述发射端设备发送NACK,所述NACK用于指示未成功接收所述传输数据;
    若所述累计错误比特小于或者等于第三阈值,向所述发射端设备发送ACK,所述ACK用于指示成功接收所述传输数据。
  9. 根据权利要求6至8中任一项所述的方法,其特征在于,在根据所述EDAC策略信息检测和纠正所述应用层数据在传输过程中出现的错误之前,所述方法还包括:
    对所述传输数据进行第一循环冗余校验CRC;
    若第一CRC失败,进入检测和纠正所述应用层数据的步骤。
  10. 根据权利要求9所述的方法,其特征在于,在根据所述EDAC策略信息检测和纠正所述应用层数据在传输过程中出现的错误之后,所述方法还包括:
    对所述传输数据进行第二CRC;
    若第二CRC失败,进入根据检测和纠正的结果向所述发射端设备反馈的步骤。
  11. 根据权利要求6至10中任一项所述的方法,其特征在于,若向所述发射端设备发送所述ACK时,所述方法还包括:
    对所述传输数据进行解交织处理。
  12. 一种发射端设备,其特征在于,包括:
    处理单元,用于获取应用层数据;
    所述处理单元,还用于在所述应用层数据中添加错误检测与纠正EDAC策略信息,生成传输数据;
    发送单元,用于向接收端设备发送所述传输数据,以使所述接收端设备根据所述EDAC策略信息检测和纠正所述应用层数据在传输过程中出现的错误并反馈。
  13. 根据权利要求12所述的发射端设备,其特征在于,在所述处理单元生成所述传输数据之前,所述处理单元还用于在所述应用层数据中添加EDAC指示信息,所述EDAC指示信息用于指示所述EDAC策略信息是否存在。
  14. 根据权利要求12或13所述的发射端设备,其特征在于,所述处理单元具体用于:
    根据前向纠错FEC算法和预设的可纠错的比特数,确定所述EDAC策略信息并在所述应用层数据中添加所述EDAC策略信息。
  15. 根据权利要求12至14中任一项所述的发射端设备,其特征在于,所述处理单元在所述应用层数据中添加EDAC策略信息之前,所述处理单元还用于:
    在当前所处的通信环境下,对第一时长内接收数据的信号强度指示RSSI和所述第一时长内所接收数据的误包率PER进行统计分析;
    若所述第一时长内接收数据的RSSI小于第一阈值,和/或,若所述第一时长内接收数据的PER大于第二阈值时,确定使用所述EDAC策略信息。
  16. 根据权利要求12至15中任一项所述的发射端设备,其特征在于,所述处理单元在所述应用层数据中添加EDAC策略信息之前,所述处理单元还用于交织编码所述应用层数据中的比特序列。
  17. 一种接收端设备,其特征在于,包括:
    接收单元,用于接收发射端设备发送的传输数据,所述传输数据包括含有错误检测与纠正EDAC策略信息的应用层数据;
    处理单元,用于根据所述EDAC策略信息检测和纠正所述应用层数据在传输过程中出现的错误;
    所述处理单元,还用于根据检测和纠正的结果向所述发射端设备反馈。
  18. 根据权利要求17所述的接收端设备,其特征在于,所述传输数据还包括EDAC指示信息,所述EDAC指示信息用于指示所述EDAC策略信息是否存在;
    所述处理单元在根据所述EDAC策略信息检测和纠正所述应用层数据 在传输中出现的错误之前,所述处理单元还用于根据所述EDAC指示信息,确定所述EDAC策略信息存在。
  19. 根据权利要求17或18所述的接收端设备,其特征在于,所述处理单元具体用于:
    根据前向纠错FEC算法对所述应用层数据进行纠错;
    检测纠错后所述应用层数据的累计错误比特;
    若所述累计错误比特大于第三阈值,向所述发射端设备发送NACK,所述NACK用于指示未成功接收所述传输数据;
    若所述累计错误比特小于或者等于第三阈值,向所述发射端设备发送ACK,所述ACK用于指示成功接收所述传输数据。
  20. 根据权利要求17至19中任一项所述的接收端设备,其特征在于,所述处理单元在根据所述EDAC策略信息检测和纠正所述应用层数据在传输过程中出现的错误之前,所述处理单元还用于:
    对所述传输数据进行第一循环冗余校验CRC;
    若第一CRC失败,进入检测和纠正所述应用层数据的步骤。
  21. 根据权利要求20所述的接收端设备,其特征在于,所述处理单元在根据所述EDAC策略信息检测和纠正所述应用层数据在传输过程中出现的错误之后,所述处理单元还用于:
    对所述传输数据进行第二CRC;
    若第二CRC失败,进入根据检测和纠正的结果向所述发射端设备反馈的步骤。
  22. 根据权利要求17至21中任一项所述的接收端设备,其特征在于,若所述接收端设备向所述发射端设备发送所述ACK时,所述处理单元还用于对所述传输数据进行解交织处理。
PCT/CN2017/114573 2017-12-05 2017-12-05 数据传输的方法、发射端设备和接收端设备 Ceased WO2019109239A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201780002019.1A CN110121850B (zh) 2017-12-05 2017-12-05 数据传输的方法、发射端设备和接收端设备
PCT/CN2017/114573 WO2019109239A1 (zh) 2017-12-05 2017-12-05 数据传输的方法、发射端设备和接收端设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/114573 WO2019109239A1 (zh) 2017-12-05 2017-12-05 数据传输的方法、发射端设备和接收端设备

Publications (1)

Publication Number Publication Date
WO2019109239A1 true WO2019109239A1 (zh) 2019-06-13

Family

ID=66751285

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/114573 Ceased WO2019109239A1 (zh) 2017-12-05 2017-12-05 数据传输的方法、发射端设备和接收端设备

Country Status (2)

Country Link
CN (1) CN110121850B (zh)
WO (1) WO2019109239A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110463108A (zh) * 2019-06-25 2019-11-15 北京小米移动软件有限公司 反馈方法、装置及存储介质
CN111787603A (zh) * 2020-07-10 2020-10-16 深圳传音通讯有限公司 移动终端的数据传输方法、移动终端及存储介质
WO2025112835A1 (zh) * 2023-11-29 2025-06-05 华为技术有限公司 一种容错数据传输的方法和通信装置

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111901070B (zh) * 2020-08-28 2022-09-09 上海国微思尔芯技术股份有限公司 一种数据传输方法
CN121239361A (zh) * 2024-06-28 2025-12-30 华为技术有限公司 容错通信方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5822339A (en) * 1996-05-30 1998-10-13 Rockwell International Data decoder and method to correct inversions or phase ambiguity for M-ary transmitted data
CN102104463A (zh) * 2009-12-22 2011-06-22 中兴通讯股份有限公司 数据报文请求重传方法及装置
CN104184543A (zh) * 2013-05-24 2014-12-03 华为技术有限公司 一种数据传输的方法、装置和系统
CN104378444A (zh) * 2014-11-27 2015-02-25 电子科技大学 用于通过传输协议在测井数据链路上传输数据的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5822339A (en) * 1996-05-30 1998-10-13 Rockwell International Data decoder and method to correct inversions or phase ambiguity for M-ary transmitted data
CN102104463A (zh) * 2009-12-22 2011-06-22 中兴通讯股份有限公司 数据报文请求重传方法及装置
CN104184543A (zh) * 2013-05-24 2014-12-03 华为技术有限公司 一种数据传输的方法、装置和系统
CN104378444A (zh) * 2014-11-27 2015-02-25 电子科技大学 用于通过传输协议在测井数据链路上传输数据的方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110463108A (zh) * 2019-06-25 2019-11-15 北京小米移动软件有限公司 反馈方法、装置及存储介质
CN110463108B (zh) * 2019-06-25 2023-04-18 北京小米移动软件有限公司 反馈方法、装置及存储介质
US12225403B2 (en) 2019-06-25 2025-02-11 Beijing Xiaomi Mobile Software Co., Ltd. Feedback method and system
CN111787603A (zh) * 2020-07-10 2020-10-16 深圳传音通讯有限公司 移动终端的数据传输方法、移动终端及存储介质
WO2025112835A1 (zh) * 2023-11-29 2025-06-05 华为技术有限公司 一种容错数据传输的方法和通信装置

Also Published As

Publication number Publication date
CN110121850B (zh) 2022-05-31
CN110121850A (zh) 2019-08-13

Similar Documents

Publication Publication Date Title
TWI741147B (zh) 傳輸回饋訊息的方法和終端設備
CN110121850B (zh) 数据传输的方法、发射端设备和接收端设备
CN110235398A (zh) 用于部分重传的方法
CN107005367B (zh) 用于传输保护的通信装置、方法和节点
WO2018014162A1 (zh) 传输数据的方法和装置
US12335034B2 (en) Coding method and apparatus
WO2023273754A1 (zh) 一种混合自动重传请求反馈的方法和装置
US12279202B2 (en) Device-to-device relay processing method, device and apparatus, and storage medium
CN108270525A (zh) 冗余版本传输方法及设备
CN110366833B (zh) 用于确认信令的重传定时
CN109314590B (zh) 上行传输的方法和装置
EP3657892B1 (en) Method and device for transmitting data
TWI685225B (zh) 通信方法和終端設備
CN109921884B (zh) 数据收发的方法、装置和通信系统
CN113169824A (zh) 一种数据译码方法及相关设备
CN109644088B (zh) 基于载波聚合的反馈方法和设备
CN108809489B (zh) 状态报告的上报方法、终端及网络侧设备
WO2019191885A1 (zh) 传输配置信息、接收配置信息的方法和设备
CN113783665B (zh) 通信方法及装置
WO2019228241A1 (zh) 信号处理的方法和装置
WO2018201905A1 (zh) 一种数据传输方法、终端以及基站

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: 17934138

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17934138

Country of ref document: EP

Kind code of ref document: A1