WO2023116625A1 - 一种数据编码方法及通信装置 - Google Patents
一种数据编码方法及通信装置 Download PDFInfo
- Publication number
- WO2023116625A1 WO2023116625A1 PCT/CN2022/140005 CN2022140005W WO2023116625A1 WO 2023116625 A1 WO2023116625 A1 WO 2023116625A1 CN 2022140005 W CN2022140005 W CN 2022140005W WO 2023116625 A1 WO2023116625 A1 WO 2023116625A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- pdu
- information
- coded
- encoded
- packets
- Prior art date
Links
- 238000004891 communication Methods 0.000 title claims abstract description 292
- 238000000034 method Methods 0.000 title claims abstract description 138
- 230000015654 memory Effects 0.000 claims description 27
- 238000004590 computer program Methods 0.000 claims description 11
- 230000011664 signaling Effects 0.000 claims description 2
- 230000005540 biological transmission Effects 0.000 abstract description 20
- 230000006870 function Effects 0.000 description 35
- 238000012545 processing Methods 0.000 description 27
- 238000010586 diagram Methods 0.000 description 20
- 230000009286 beneficial effect Effects 0.000 description 13
- 238000013461 design Methods 0.000 description 6
- 230000001360 synchronised effect Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005429 filling process Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0064—Concatenated codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0041—Arrangements at the transmitter end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0071—Use of interleaving
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0075—Transmission of coding parameters to receiver
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
- H04L1/0079—Formats for control data
- H04L1/008—Formats for control data where the control data relates to payload of a different packet
Definitions
- the present application relates to the field of communication technologies, and in particular to a data encoding method and a communication device.
- the steps of the method specifically include: first, the sending end splits the upper-layer protocol data unit (Protocol Data Unit, PDU) to obtain K original data packets; then the sending end will pass a linear block code (M, K) to the K
- the original data packets are encoded to obtain M coded packets; the sender adds a header to each coded packet to obtain M LPC PDUs, and transmits the M LPC PDUs to the lower layer; when the receiver obtains at least K correct LPC
- the encoded packet is obtained by removing the header of the LPC PDU; the receiving end then determines K original data packets by decoding at least K encoded packets; the receiving end can restore the upper layer PDU by concatenating the K original data packets. Based on this method, if the number of split original data packets increases, the header overhead of the encoded packets will increase, which will still affect the data transmission efficiency.
- the present application provides a data encoding method and a communication device, which are beneficial to reducing header overhead of encoded packets.
- the present application provides a data encoding method, the method comprising: acquiring S encoded packets corresponding to L first protocol data units PDUs, the number of encoded packets corresponding to one first PDU is one or more, L is a positive integer, and S is a positive integer; each of the N coded packet groups is concatenated to obtain N second PDUs, and the N coded packet groups are obtained by dividing S coded packets, one
- the coded packet group includes one or more coded packets. Different coded packet groups include different coded packets. Any two coded packets included in the same coded packet group correspond to different first PDUs; a second PDU corresponds to a coded packet group.
- the PDU header of a second PDU carries the first sequence number and bitmap, the first sequence number is used to determine the encoded packet number corresponding to the encoded packet included in the second PDU, and the bitmap includes H bits, one bit corresponds to a first PDU, and the bit indicates whether the encoded packet in the first PDU corresponding to the bit is included in the second PDU, and the number of encoded packets included in a second PDU is less than or equal to H, and H is a positive integer; Output N second PDUs.
- the PDU header of the second PDU can share some parameters of the header of the encoded packet, thereby reducing overhead of the header of the encoded packet and improving data transmission efficiency.
- the number of coded packets included in one coded packet group does not exceed A, and the number of coded packets corresponding to a first PDU does not exceed N, where L is less than or equal to H, A is less than or equal to H, and A Greater than or equal to L, A is a positive integer greater than or equal to 1.
- the number of encoded packets included in one encoded packet group does not exceed A, and the total number of encoded packets corresponding to any X first PDUs in the L first PDUs does not exceed N, wherein, Less than or equal to H, A less than or equal to H, and A greater than or equal to Both A and X are positive integers greater than 1.
- the number of coded packets included in one coded packet group does not exceed A
- the number of coded packets corresponding to a first PDU does not exceed B
- A is less than or equal to L
- A is less than or equal to H
- N Y ⁇ B
- Both A and Y are positive integers greater than 1.
- the header of the coded packet includes first information, and the first information is used to determine the number of original data packets of the first PDU corresponding to the coded packet. Based on this method, the receiving end can determine whether the first PDU can be restored according to the number of original data packets, thereby improving decoding efficiency,
- the method further includes: encoding the second information to generate first encoded information, the second information is used to indicate the number of original data packets of the first PDU, and the length of the second information is W Bits, the length of the first coded information is E bits, E ⁇ W, W and E are both positive integers; wherein, the first PDU corresponds to M coded packets, and the first information in the M coded packets constitutes the first coded information, M is a positive integer, and E is greater than or equal to M. Based on this method, the packet header parameters of the coded packets are further compressed to reduce header overhead.
- the PDU header of the second PDU carries a second sequence number
- the second sequence number is used to determine the sequence number of the first PDU corresponding to the encoded packet included in the second PDU. Based on this method, the receiving end can determine the sequence number of the first PDU corresponding to the encoded packet included in the currently received second PDU, thereby improving decoding efficiency.
- the encoded packet header further carries third information, and the third information is used to determine the sequence number of the first PDU corresponding to the encoded packet. Based on this method, the receiving end can determine the sequence number of the first PDU corresponding to the encoded packet, thereby improving decoding efficiency.
- the method further includes: encoding the fourth information to generate second encoded information, the fourth information indicates the sequence number of the first PDU corresponding to the encoded packet, and the length of the fourth information is Q bits , the length of the second coded information is P bits, P ⁇ Q, P and Q are both positive integers; wherein, the first PDU corresponds to M coded packets, and the third information in the M coded packets constitutes the second coded information, M is a positive integer, and P is greater than or equal to M. Based on this method, the packet header parameters of the coded packets are further compressed to reduce header overhead.
- the present application provides a data decoding method, the method comprising: acquiring G second protocol data units PDUs, one second PDU corresponding to one coded packet group, and including all coded packets in the coded packet group;
- a coded packet group includes one or more coded packets.
- Different coded packet groups include different coded packets. Any two coded packets included in the same coded packet group correspond to different first PDUs; the PDU header of a second PDU carries the first PDU.
- a sequence number and a bitmap the first sequence number is used to determine the coded packet number corresponding to the coded packet included in the second PDU, the bitmap includes H bits, one bit corresponds to a first PDU, and the bit indicates whether the second PDU includes The number of coded packets in the first PDU corresponding to the bit, the number of coded packets included in a second PDU is less than or equal to H, and H is a positive integer; G second PDUs are divided to obtain F coded packets, and F is a positive integer; based on G The first sequence number and bitmap carried in the PDU header of the second PDU restore one or more first PDUs.
- the number of coded packets included in one coded packet group does not exceed A
- the number of coded packets corresponding to a first PDU does not exceed N
- G second PDUs correspond to L first PDUs, where L Less than or equal to H, A less than or equal to H, A greater than or equal to L, L and A are positive integers greater than 1.
- the beneficial effect of the second aspect can refer to the content described in the first aspect.
- a coded packet group includes a number of coded packets not exceeding A, G second PDUs correspond to L first PDUs, and any X first PDUs in the L first PDUs correspond to coded packets
- the total quantity does not exceed N, where, Less than or equal to H, A less than or equal to H, and A greater than or equal to L, A and X are all positive integers greater than 1.
- the number of coded packets included in one coded packet group does not exceed A
- the number of coded packets corresponding to a first PDU does not exceed B
- one or more first PDUs are restored, and the specific implementation manner is: based on the first information carried in the header of the encoded packet corresponding to the target first PDU, the number of original data packets of the target first PDU is determined; if In the F coded packets, the number V of coded packets corresponding to the target first PDU is greater than or equal to the number of original data packets of the target first PDU, then the target first PDU is restored based on the V coded packets corresponding to the target first PDU, wherein, The total number of encoded packets corresponding to the target first PDU is M, V is less than or equal to M, and V is a positive integer.
- the number of original data packets of the target first PDU is determined based on the first information carried in the header of the encoded packet corresponding to the target first PDU.
- the specific implementation method is: based on the V codes corresponding to the target first PDU.
- the first information carried in the packet header restores the first encoding information
- the first encoding information is generated based on the encoding of the second information
- the second information indicates the number of original data packets of the target first PDU
- the length of the second information is W bits.
- the length of the first information is R bits, R ⁇ V ⁇ W, W and R are both positive integers; the number of original data packets of the target first PDU is determined according to the second information corresponding to the first encoding information.
- the PDU header of the second PDU carries a second sequence number
- the second sequence number is used to determine the sequence number of the first PDU corresponding to the encoded packet included in the second PDU.
- the header of the coded packet corresponding to the target first PDU further includes third information, and the third information is used to determine the sequence number of the target first PDU.
- the method further includes: restoring the second coded information based on the third information carried in the headers of the V coded packets corresponding to the target first PDU, the length of the fourth information is Q bits, and the second coded information It is generated based on the fourth information encoding, the fourth information indicates the sequence number of the target first PDU, the length of the third information is U bits, U ⁇ V ⁇ Q, Q and U are both positive integers and greater than 1; according to the second The fourth information corresponding to the encoded information determines the sequence number of the target first PDU.
- the present application provides a communication device.
- the device may be a first communication device, or a device in the first communication device, or a device that can be matched with the first communication device.
- the communication device may also be a system on a chip.
- the communication device can execute the method described in the first aspect.
- the functions of the communication device may be realized by hardware, or may be realized by executing corresponding software by hardware.
- the hardware or software includes one or more units or modules corresponding to the above functions.
- the unit or module can be software and/or hardware.
- the present application provides a communication device.
- the device may be a second communication device, or a device in the second communication device, or a device that can be matched with the second communication device.
- the communication device may also be a system on a chip.
- the communication device can execute the method described in the second aspect.
- the functions of the communication device may be realized by hardware, or may be realized by executing corresponding software by hardware.
- the hardware or software includes one or more units or modules corresponding to the above functions.
- the unit or module can be software and/or hardware.
- the present application provides a communication device, the communication device includes a processor, and when the processor invokes a computer program in a memory, the method in the first aspect or the second aspect is executed.
- the communication device further includes a memory, and the memory and the processor are coupled to each other.
- the memory is integrated with the processor.
- the communication device further includes a transceiver, where the transceiver is configured to send and receive data and/or signaling.
- the present application provides a communication device, the communication device includes a processor and an interface circuit, and the interface circuit is used to receive signals from other communication devices other than the communication device and transmit them to the processor or transmit signals from the processor The signal is sent to other communication devices other than the communication device, and the processor implements the method in the first aspect or the second aspect through a logic circuit or executing code instructions.
- the present application provides a computer-readable storage medium, in which a computer program or instruction is stored, and when the computer program or instruction is executed by a communication device, the method in the first aspect or the second aspect is implemented.
- an embodiment of the present application provides a computer program or a computer program product, including codes or instructions, and when the codes or instructions are run on a computer, the computer executes the method in the first aspect or the second aspect.
- the embodiment of the present application provides a communication system, and the system includes the communication devices provided in the third aspect and the fourth aspect.
- FIG. 1 is a schematic diagram of a communication network architecture provided in an embodiment of the present application
- Fig. 2 is a schematic flowchart of a data encoding and data decoding method provided by an embodiment of the present application
- Fig. 3 is a schematic diagram of an information encoding provided by an embodiment of the present application.
- Fig. 4 is a schematic diagram of another information encoding provided by the embodiment of the present application.
- FIG. 5 is a schematic diagram of a method for processing a first PDU provided in an embodiment of the present application
- FIG. 6 is a schematic structural diagram of an encoding packet group provided by an embodiment of the present application.
- Fig. 7 is a schematic diagram of a coded packet interleaving method provided by an embodiment of the present application.
- Fig. 8 is a schematic diagram of another coded packet interleaving method provided by the embodiment of the present application.
- FIG. 9 is a schematic diagram of another coded packet interleaving method provided by an embodiment of the present application.
- Fig. 10 is a schematic diagram of another coded packet interleaving method provided by the embodiment of the present application.
- Fig. 11 is a schematic diagram of another coded packet interleaving method provided by the embodiment of the present application.
- Fig. 12 is a schematic diagram of another coded packet interleaving method provided by the embodiment of the present application.
- FIG. 13 is a schematic diagram of a PDU header structure of a second PDU provided by an embodiment of the present application.
- Fig. 14 is a schematic structural diagram of a communication device provided by an embodiment of the present application.
- FIG. 15 is a schematic structural diagram of another communication device provided by an embodiment of the present application.
- FIG. 16 is a schematic structural diagram of a chip provided by an embodiment of the present application.
- system architecture of the method provided by the embodiments of the present application will be briefly described below. It can be understood that the system architecture described in the embodiments of the present application is for more clearly illustrating the technical solutions of the embodiments of the present application, and does not constitute a limitation on the technical solutions provided by the embodiments of the present application.
- the technical solutions of the embodiments of the present application can be applied to various communication systems, such as satellite communication systems and traditional mobile communication systems.
- the satellite communication system may be integrated with a traditional mobile communication system (ie, a ground communication system).
- Communication systems such as: wireless local area network (wireless local area network, WLAN) communication system long term evolution (long term evolution, LTE) system, fifth generation (5th generation, 5G) system or new wireless (new radio, NR), sixth generation (6th generation, 6G) system, and other future communication systems, etc., also support communication systems that integrate multiple wireless technologies.
- they can also be applied to drones, satellite communication systems, and high altitude platform stations (HAPS) ) communication and other non-terrestrial networks (non-terrestrial network, NTN) integrated terrestrial mobile communication network system.
- HAPS high altitude platform stations
- FIG. 1 is an example of a communication system applicable to an embodiment of the present application.
- the communication system includes at least one network device and at least one terminal device. See Figure 1, including network equipment and 6 terminal equipment.
- the 6 terminal devices may be cellular phones, smart phones, portable computers, handheld communication devices, handheld computing devices, satellite radios, global positioning systems, PDAs and/or any other suitable devices for communicating over a wireless communication system, And can be connected with network equipment. These six terminal devices are all capable of communicating with network devices.
- the number of terminal devices in FIG. 1 is just an example, and may be less or more.
- the network equipment in this application can be an evolved base station (evolved Node B, eNB or eNodeB) in LTE; or a base station in a 5G network, a broadband network gateway (broadband network gateway, BNG), an aggregation switch or a non-third-generation
- eNB evolved Node B
- BNG broadband network gateway
- aggregation switch or a non-third-generation
- the partner project (3rd generation partnership project, 3GPP) access device and the like are not specifically limited in this embodiment of the present application.
- the base stations in this embodiment of the present application may include various forms of base stations, such as: macro base stations, micro base stations (also called small stations), relay stations, access points, next-generation base stations (gNodeB, gNB), transmission Access point (transmitting and receiving point, TRP), transmitting point (transmitting point, TP), mobile switching center and device-to-device (Device-to-Device, D2D), vehicle-to-everything (V2X) , machine-to-machine (machine-to-machine, M2M) communication, Internet of Things (Internet of Things) communication, devices that undertake base station functions, etc., are not specifically limited in this embodiment of the present application.
- base stations such as: macro base stations, micro base stations (also called small stations), relay stations, access points, next-generation base stations (gNodeB, gNB), transmission Access point (transmitting and receiving point, TRP), transmitting point (transmitting point, TP), mobile switching center and device-to-device (Device
- Network devices can communicate and interact with core network devices to provide communication services to terminal devices.
- the core network device is, for example, a device in a 5G network core network (core network, CN).
- core network As a bearer network, the core network provides an interface to the data network, and provides communication connection, authentication, management, policy control, and bearer for data services for user equipment (UE).
- Network devices are connected to core network devices through wireless or wired methods.
- Core network equipment and network equipment can be independent and different physical equipment; or the functions of the core network equipment and the logical functions of the network equipment are integrated on the same physical equipment; or the functions of part of the core network equipment and the functions of some network equipment integrated on the same physical device.
- the terminal equipment mentioned in the embodiment of the present application may be a device with a wireless transceiver function, and specifically may refer to user equipment (user equipment, UE), access terminal, subscriber unit (subscriber unit), subscriber station, mobile station (mobile station), remote station, remote terminal, mobile device, user terminal, wireless communication device, user agent, or user device.
- user equipment user equipment, UE
- access terminal subscriber unit (subscriber unit), subscriber station, mobile station (mobile station), remote station, remote terminal, mobile device, user terminal, wireless communication device, user agent, or user device.
- the terminal device may also be a satellite phone, a cellular phone, a smartphone, a wireless data card, a wireless modem, a machine type communication device, may be a cordless phone, a session initiation protocol (SIP) phone, a wireless local loop (wireless local loop) loop, WLL) station, personal digital assistant (PDA), handheld device with wireless communication function, computing device or other processing device connected to a wireless modem, vehicle-mounted device, communication device carried on high-altitude aircraft, wearable Devices, drones, robots, devices in device-to-device (D2D), terminals in vehicle to everything (V2X), virtual reality (VR) terminals, Augmented reality (augmented reality, AR) terminal equipment, wireless terminals in industrial control, wireless terminals in self driving, wireless terminals in remote medical, smart grid ), wireless terminals in transportation safety, wireless terminals in smart city, wireless terminals in smart home or terminal equipment in future communication networks, etc., this application No limit.
- SIP session initiation protocol
- WLL wireless local loop
- a terminal device may refer to a device for implementing a terminal function, or may be a device capable of supporting the terminal device to implement the function, such as a chip system, and the device may be installed in the terminal device.
- the terminal device can also be a vehicle detector, a sensor in a gas station.
- a network device may refer to a device used to realize the function of a network device, which may be a network device, or a device capable of supporting the network device to realize the function, such as a chip system or a combined device or component that can realize the function of the network device. installed in network equipment.
- the first communication device on the sending side may be a terminal device, and the second communication device on the receiving side may be a network device.
- the first communication device on the sending side may be a network device, and the second communication device on the receiving side may be a terminal device.
- both the first communication device on the sending side and the second communication device on the receiving side are terminal devices, which is not limited in this embodiment of the present application.
- the steps of the method specifically include: first, the sending end splits the upper-layer protocol data unit (Protocol Data Unit, PDU) to obtain K original data packets; then the sending end will pass a linear block code (M, K) to the K
- the original data packets are encoded to obtain M coded packets; the sender adds a header to each coded packet to obtain M LPC PDUs, and transmits the M LPC PDUs to the lower layer; when the receiver obtains at least K correct LPC After the PDU, the encoded packet is obtained by removing the header of the LPC PDU; the receiving end then determines K original data packets by decoding at least K encoded packets; the receiving end can restore the upper layer PDU by concatenating the K original data packets.
- PDU Protocol Data Unit
- the introduction of the LPC layer can improve the spectral efficiency without reducing the reliability of data transmission.
- the length of a packet data convergence protocol (Packet Data Convergence Protocol, PDCP) PDU is usually 1500 bytes, and the length of the PDU header of the LPC PDU is usually 3-4 bytes, but as shown in Table 1, when the split original data
- PDCP Packet Data Convergence Protocol
- Table 1 When the number of packets increases, the header overhead of the prior art becomes relatively large. As the number of original data packets increases, the overhead of the packet header will increase significantly. Excessive header overhead will affect data transmission efficiency.
- each LPC packet into a PDU and delivering it to the lower layer will cause a significant decrease in the proportion of the payload in the PDU (the payload refers to the data in the PDU except all headers).
- the payload refers to the data in the PDU except all headers.
- RLC Radio Link Control
- K The number of original data packets (ie K) Length of LPC PDU head overhead ratio
- K 2 750 bytes + (3-4) bytes 0.40%-0.53%
- K 4 375 bytes + (3-4) bytes 0.80%-1.06%
- K 8 150 bytes + (3-4) bytes 2.00%-2.67%
- K 12 125 bytes + (3-4) bytes 2.40%-3.20%
- K The number of original data packets (ie K) Length of RLC PDU payload ratio
- K 2 750 bytes + (3-4) bytes + (0-5) bytes 98.80%-99.60%
- K 4 375 bytes + (3-4) bytes + (0-5) bytes 97.60%-99.20%
- K 8 150 bytes + (3-4) bytes + (0-5) bytes 94.00%-98.00%
- K 12 125 bytes + (3-4) bytes + (0-5) bytes 92.80%-97.60%
- Fig. 2 is a schematic flowchart of a data encoding and data decoding method provided by an embodiment of the present application. As shown in FIG. 2 , the method includes the following steps 201 to 207 . The method shown in FIG. 2 may be executed by the first communication device and the second communication device. Alternatively, the execution body of the method shown in FIG. 2 may be a chip in the first communication device and a chip in the second communication device. FIG. 2 is illustrated by taking the first communication device and the second communication device as execution subjects of the method as an example.
- the first communication device acquires S coded packets corresponding to L first PDUs.
- the first PDU is a PDU received by the first communication device from the output of the first protocol layer through the second protocol layer, and the first protocol layer is a high-level protocol layer corresponding to the second protocol layer.
- the number of coded packets corresponding to one first PDU is one or more, L is a positive integer, S is a positive integer, and the S coded packets corresponding to the L first PDUs refer to the L first PDUs.
- the total number of encoded packets corresponding to one PDU is S.
- the number of coded packets corresponding to the i-th first PDU is M i , where the value of i does not exceed L and is a positive integer, M i is a positive integer.
- the second protocol layer can be a protocol layer such as a PDCP layer, an RLC layer, or a media access control (Media Access Control, MAC) layer.
- the second protocol layer is an RLC layer
- the first protocol layer is a PDCP layer
- the first PDU is a PDCP PDU.
- the second protocol layer may also be a new layer between protocol layers such as the PDCP layer, the RLC layer, or the MAC layer.
- the second protocol layer may be a network coding (Network Coding, NC) layer, which The NC layer is between the PDCP layer and the RLC layer, the first protocol layer is the PDCP layer, and the first PDU is the PDCP PDU.
- NC Network Coding
- the second protocol layer may also be embedded in protocol layers such as the PDCP layer, the RLC layer, and the MAC layer, and is a part thereof.
- the second protocol layer may be embedded in the RLC layer, which is Part of the RLC layer, the first protocol layer is the PDCP layer, and the first PDU is the PDCP PDU.
- the method further includes: the first communication device receives the output from the first protocol layer through the second protocol layer The target first PDU, the target first PDU is any first PDU in the L first PDUs; the first communication device adds an indication field and a padding field to the target first PDU based on the preset data packet length, and the indication field uses Based on indicating the length of the filling field; the first communication device divides the target first PDU after adding the indication field and the filling field into K original data packets based on the preset data packet size, and the length of one original data packet is equal to the preset data packet length; The first communication device encodes the K original data packets to generate M encoded packets, the length of the encoded packets is the same as that of the original data packets, M is greater than K, and the header of the encoded packets includes information indicating the number K of the original data packets.
- the second communication device receives the output from the first protocol layer through the second protocol layer The target first PDU, the target first PDU is any first PDU
- the first communication device when the first communication device receives the target first PDU transmitted from the first protocol layer, it first performs padding processing on the target first PDU to obtain the target PDU after adding the indication field and the padding field.
- first PDU The purpose of the filling process is to divide the filled first PDU into an integer number of original data packets based on the preset data packet length.
- the indicator field is added to the head of the first PDU, and the padding field is added to the tail of the first PDU.
- the indicator field can be placed in the first PDU
- the length of the indication field can be defined in advance, and the embodiment of the present application does not limit the length of the indication field.
- the first communication device divides the target first PDU after adding the indication field and the padding field to obtain K original data packets, wherein the length of each original data packet is the preset data packet length.
- the first communication device can encode the K original data packets to obtain M encoded packets.
- the first communication device can encode the K original data packets through a linear block code (M, K) to obtain M coded packets, in this implementation manner, the second communication device only needs to obtain K or more coded packets from the M coded packets to restore the first PDU.
- sequence numbers of the L first PDUs may be continuous, or non-continuous but have a certain pattern, or may not have a pattern, which is not limited in this embodiment of the present application .
- the header of the coded packet includes first information, and the first information is used to determine the number of original data packets of the first PDU corresponding to the coded packet.
- the second communication device can determine the number of original data packets of the first PDU corresponding to the encoded packet based on the first information of the header of the encoded packet, so that it can determine how many encoded packets corresponding to the first PDU need to be obtained before the first PDU can be restored. PDUs.
- the second communication device determines that the number of original data packets of the first PDU corresponding to the encoded packet is K through the header of the encoded packet, and thus determines that K and more than K encoded packets corresponding to the first PDU need to be obtained, Only then can the corresponding first PDU be restored.
- the first information may directly indicate the number of original data packets of the first PDU.
- the second communication device can accurately determine the number of original data packets of the first PDU only by obtaining one encoded packet corresponding to the first PDU.
- the first information indicates the number of original data packets of the first PDU in an indirect manner
- the second communication device needs to acquire multiple encoded packets corresponding to the first PDU in order to determine the number of original data packets of the first PDU.
- the method is as follows: the first communication device encodes the second information to generate first encoded information, the second information indicates the number of original data packets of the first PDU, the length of the second information is W bits, and the length of the first encoded information is E bits, E ⁇ W, W and E are both positive integers; among them, the first PDU corresponds to M coded packets, and the first information in M coded packets constitutes the first coded information, M is a positive integer, and E is greater than or equal to M.
- the second information indicates the number of original data packets of the first PDU.
- the length of the second information is 4 bits
- the first communication device encodes the second information to generate a first code of 7 bits Information
- the first communication device divides the 7-bit first coded information into 7 parts, one part corresponds to 1-bit first information, and distributes the 7 first information to the 7 coded packet headers corresponding to the first PDU
- the header of each coded packet includes 1 bit of first information, wherein, in order to ensure that each coded packet header can be allocated at least 1 bit of first information, if the length of the second information is Wbit, the number of original data packets K requires Greater than or equal to W.
- the header overhead of the encoded packet is reduced.
- the total length of the multiple first information acquired by the second communication device needs to be greater than the length of the second information
- the second communication device can restore the first coding information, thereby determining the number of original data packets of the first PDU, that is, the second communication needs to receive at least 4 coding packets corresponding to the first PDU, that is, at least 4 different coding packets can be obtained.
- the length of the four first information is 4 bits, which is equal to the length of 4 bits of the second information, so that the first encoded information can be restored and the number of original data packets of the first PDU can be determined. Based on this implementation manner, it is beneficial to reduce header overhead of encoding packet headers.
- the first communication device may encode the second information by using an (E, W) linear block code to generate the first encoded information.
- the first communication device may also use other encoding manners to encode the second information, which is not limited in this embodiment of the present application.
- the encoded packet header further carries third information, and the third information is used to determine the sequence number of the first PDU corresponding to the encoded packet.
- the first communication device obtains L first PDUs, and the sequence numbers of the L first PDUs may also be regular or irregular, and the first communication device only needs to The sequence number of the first PDU can be determined through the third information. Based on this implementation manner, it is possible for the first communication device to obtain L first PDUs more flexibly.
- the third information may directly indicate the sequence number of the first PDU corresponding to the encoded packet.
- the second communication device can accurately determine the sequence number of the first PDU only by obtaining an encoded packet corresponding to the first PDU.
- the third information may indirectly indicate the serial number of the first PDU corresponding to the encoded packet, and the second communication device needs to acquire multiple encoded packets corresponding to the first PDU to determine the serial number of the first PDU.
- the specific implementation method It is: first encode the fourth information to generate second encoded information, the fourth information indicates the sequence number of the first PDU corresponding to the encoded packet, the length of the fourth information is Q bits, and the length of the second encoded information is P bits , P ⁇ Q, P and Q are both positive integers; wherein, the first PDU corresponds to M coded packets, and the third information in the M coded packets constitutes the second coded information, M is a positive integer, and P is greater than or equal to M. Exemplarily, as shown in FIG.
- the fourth information indicates the sequence number of the first PDU corresponding to the encoded packet.
- the length of the fourth information is 12 bits
- the first communication device encodes the fourth information to generate a 16-bit The second code information
- the first communication device divides the 16-bit second code information into 8 parts, one part corresponds to the 2-bit third information, and distributes the 8 third information to the 8 codes corresponding to the first PDU
- the header of each coded packet includes 2-bit third information, wherein, in order to ensure that each coded packet header can be allocated at least 1-bit third information, if the length of the fourth information is Qbit, the original The number K of data packets must be greater than or equal to Q.
- the header overhead of the encoded packet is reduced.
- the total length of the multiple third information obtained by the second communication device needs to be greater than the length of the fourth information
- the second communication device can restore the second encoding information, so as to determine the sequence number of the first PDU, that is, the second communication needs to receive at least 6 encoding packets corresponding to the first PDU, that is, at least 6 encoding packets from different encoding packets must be obtained.
- the length of the six pieces of third information is 12 bits, which is equal to the length of 12 bits of the third information, so that the second coded information can be restored and the sequence number of the first PDU can be determined. Based on this implementation manner, it is beneficial to reduce header overhead of encoding packet headers.
- the first communication device may encode the fourth information by using a (P, Q) linear block code to generate the second encoded information.
- the first communication device may also use other encoding manners to encode the fourth information, which is not limited in this embodiment of the present application.
- the first communication device concatenates each of the N coded packet groups to obtain N second PDUs.
- the N coded packet groups are obtained by dividing S coded packets.
- One coded packet group includes One or more coded packets, one second PDU corresponds to one coded packet group, and includes all coded packets in the coded packet group, and the PDU header of one second PDU carries the first sequence number and bitmap.
- one coded packet group includes one or more coded packets, different coded packet groups include different coded packets, and any two coded packets included in the same coded packet group correspond to different first PDUs; a second The PDU corresponds to a coded packet group and includes all coded packets in the coded packet group.
- FIG. 6 includes coded packets corresponding to L first PDUs, and N coded packet groups, and the sequence numbers of the L first PDUs are 1-L, where the sequence number is i
- the number of encoded packets corresponding to the first PDU of is M i , and i is a positive integer not exceeding L.
- encoded packet group 1 contains All coded packets with sequence number 1 in the coded packets corresponding to the first PDU with sequence numbers 1 ⁇ L, in addition, coded packets can also have other grouping methods, Figure 6 is only an example proposed by this application , which is not limited in this embodiment of the present application.
- the first sequence number is used to determine the coded packet number corresponding to the coded packet included in the second PDU, and the second communication device can determine the sequence number of the corresponding coded packet group of the second PDU based on the first sequence number , sort the second PDU so as to restore the first PDU.
- the first sequence number indicates the sequence number of the encoded packet group corresponding to the second PDU.
- the bitmap is used to enable the second communication device to determine the encoded packet contained in the second PDU, the bitmap includes H bits, one bit corresponds to a first PDU, and the bit indicates whether the first PDU corresponding to the bit is included in the second PDU Among the coded packets, the number of coded packets included in one second PDU is less than or equal to H, where H is a positive integer.
- the bitmap includes 8 bits, corresponding to 8 first PDUs, the sequence numbers of the 8 first PDUs are 1-8, and the i-th bit in the bitmap represents the first PDU with the sequence number i Corresponding coded packet, wherein, i is a positive integer not exceeding 8, if the bitmap is represented as 00000001, it means that the second PDU only contains the coded packet with the sequence number 8, if the bitmap is represented as 11111111, it means that the second PDU
- the second PDU includes 8 coded packets corresponding to the 8 first PDUs with sequence numbers 1-8. Based on this method, the PDU header of the second PDU can share some parameters of the header of the encoded packet, thereby reducing the header overhead of the encoded packet.
- the first communication device may concatenate each encoded packet in the N encoded packet groups through an A ⁇ N interleaver.
- the number of coded packets included in a coded packet group does not exceed A, and the number of coded packets corresponding to a first PDU does not exceed N, where L is less than or equal to H, A is less than or equal to H, A is greater than or equal to L, and A is greater than or equal to A positive integer equal to 1.
- Figure 7 includes encoded packets corresponding to L first PDUs, and the sequence numbers corresponding to the L first PDUs include 1 ⁇ L, according to the order of the sequence numbers of the first PDUs, from Arranged in order from top to bottom, the i-th row corresponds to the M i coded packets of the i-th first PDU, i is a positive integer not exceeding L, and the interleaver used in Figure 7 is a column interleaver (rowinterleaver), that is Each column of encoded packets is a set of encoded packet groups, and one encoded packet group corresponds to one second PDU.
- the shape of the interleaver is not necessarily a rectangle, the difference between Figure 8 and Figure 7 is that the interleaver used in Figure 8 is a diagonal interleaver (diagonal interleaver), other Parts are the same as those in FIG. 7 , and will not be repeated here.
- the first communication device may also use other interleavers or interleaving methods to concatenate each encoded packet in the N encoded packet groups.
- the first communication device may concatenate each encoded packet in the N encoded packet groups through an A ⁇ N interleaver.
- a coded packet group includes a number of coded packets that does not exceed A, and the total number of coded packets corresponding to any X first PDUs in the L first PDUs does not exceed N, wherein, Less than or equal to H, A less than or equal to H, and A greater than or equal to Both A and X are positive integers greater than 1.
- Figure 9 includes coded packets corresponding to L first PDUs, and the sequence numbers corresponding to the L first PDUs include 1 ⁇ L, according to the order of the sequence numbers of the first PDUs, from Arranged in sequence from top to bottom, where X represents the number of first PDUs corresponding to each row of coded packets, for example, in Figure 9, X is equal to 2, which means that each row of coded packets corresponds to 2 first PDUs, the method used in Figure 9
- the interleaver is a column interleaver, that is, each column of encoded packets is a set of encoded packet groups, and one encoded packet group corresponds to one second PDU.
- the shape of the interleaver is not necessarily rectangular.
- the difference between Figure 9 and Figure 10 is that the interleaver used in Figure 10 is a diagonal interleaver, and the other parts are the same as those in Figure 9 The same, and will not be repeated here.
- the first communication device may also use other interleavers or interleaving methods to concatenate each encoded packet in the N encoded packet groups.
- the first communication device may concatenate each encoded packet in the N encoded packet groups through an A ⁇ B interleaver.
- Figure 11 includes encoded packets corresponding to L first PDUs, and the sequence numbers corresponding to the L first PDUs include 1 ⁇ L, according to the order of the sequence numbers of the first PDUs, from Arranged in order from top to bottom, Y indicates that the L first PDUs need to be interleaved Y times through the interleaver.
- Y is 2, which means that the interleaver needs to perform two interleavings, and the first time is for the sequence number
- the coded packets corresponding to the first PDUs from 1 to A are interleaved, and the second time is to interleave the coded packets corresponding to the first PDUs with sequence numbers A+1 to L.
- the interleaver used in FIG. 11 is a column interleaver, that is, each column of coded packets is a group of coded packets, and one coded packet group corresponds to one second PDU.
- the shape of the interleaver is not necessarily rectangular.
- the difference between Figure 11 and Figure 12 is that the interleaver used in Figure 12 is a diagonal interleaver, and the other parts are the same as those in Figure 11 The same, and will not be repeated here.
- the first communication device may also use other interleavers or interleaving methods to concatenate each encoded packet in the N encoded packet groups.
- the PDU header of the second PDU carries a second sequence number
- the second sequence number is used to determine the sequence number of the first PDU corresponding to the encoded packet included in the second PDU.
- the encoding The header of the packet does not need to carry the third information.
- the sequence numbers of the L first PDUs acquired by the first communication device are required to be continuous, or non-continuous but with certain rules.
- the second sequence numbers can be the sequence numbers of the L first PDUs.
- the largest or smallest serial number in the serial number can also be the serial number of any first PDU, but it is necessary to predefine the offset value of each first PDU serial number corresponding to the second serial number to facilitate the second communication
- the device can determine the sequence number of the first PDU corresponding to the encoded packet included in the second PDU according to the second sequence number. Based on this implementation, the header of the encoded packet does not need to include the sequence number of the first PDU, and the sequence number of the first PDU can be shared by the PDU header of the second PDU, thereby reducing the header overhead of the encoded packet.
- FIG. 13 is a schematic structural diagram of a PDU header of a second PDU provided in an embodiment of the present application.
- the PDU header of the second PDU includes 5 bytes. In the first byte, it includes a D/C field, an R field, and a second sequence number, wherein the length of the D/C field is 1 bit, and the D/C field uses
- the two R fields are reserved fields, with a total of 3 bits.
- the second sequence number is represented by 4 bits and the second byte in the first byte, and the second sequence number is used to determine the sequence number of the first PDU corresponding to the encoded packet included in the second PDU.
- the third byte represents the first serial number, which is used to determine the coded packet number corresponding to the coded packet included in the second PDU
- the fourth byte and the fifth represent a bitmap
- the bitmap includes 16 bits , one bit corresponds to a first PDU, and the bit indicates whether the encoded packet in the first PDU corresponding to the bit is included in the second PDU.
- Figure 13 is only a schematic structural diagram of the PDU header of a second PDU provided by the embodiment of the present application.
- the PDU header structure of the second PDU can also be in other forms, and the embodiment of the present application does not limit the structure of the PDU header of the second PDU. .
- the first communication device outputs N second PDUs.
- the first communication device outputs N second PDUs. Specifically, the first communication device transmits the N second PDUs to the third protocol layer for processing, and the third protocol layer is the second protocol layer.
- the lower protocol layer for example, if the second protocol layer is the RLC layer, the first communication device transmits the N second PDUs to the MAC layer for processing.
- the first communications device sends the target data packet to the second communications device.
- the second communication device receives the target data packet sent by the first communication device.
- the first communication device sends one or more target data packets to the second communication device, where the target data packets are generated based on N second PDUs.
- the second communication device receives the target data packet sent by the first communication device, wherein, due to the instability of data transmission, the second communication device may only receive part of the target data packet sent by the first communication device.
- the second communications device acquires G second PDUs.
- the second PDU is a PDU received by the second communication device from the output of the third protocol layer through the second protocol layer.
- a second PDU corresponds to a coded packet group, and includes all coded packets in the coded packet group; a coded packet group includes one or more coded packets, different coded packet groups include different coded packets, and the same coded packet group includes Any two encoded packets correspond to different first PDUs; the PDU header of a second PDU carries the first sequence number and bitmap.
- the parameters carried in the PDU header of the second PDU refer to the description in step 202, which will not be repeated in this embodiment of the present application.
- the first communication device outputs N second PDUs, but the second communication device does not necessarily obtain all the second PDUs output by the first communication device, and the second communication device may only obtain N G second PDUs in the second PDUs, where G is less than or equal to N.
- the second communication device divides the G second PDUs to obtain F coded packets.
- the second communication device divides the G second PDUs to obtain F coded packets.
- the specific implementation method is: the second communication device divides the G second PDUs based on the preset data packet length to obtain F coded packets.
- packet, the length of an encoded packet is the preset data packet length. Since the first communication device divides the target first PDU after adding the indication field and the padding field into K original data packets based on the preset data packet size, the length of one original data packet is equal to the preset data packet length, and the length of the encoded packet is the same as the original The lengths of the data packets are the same, therefore, the second communication device can accurately divide the second PDU based on the preset data packet length to obtain coded packets.
- the second communication device restores one or more first PDUs based on the first sequence numbers and bitmaps carried in the PDU headers of the G second PDUs.
- the PDU header of the second PDU carries the first sequence number and bitmap, and the first sequence number is used to determine the coded packet number corresponding to the coded packet included in the second PDU.
- the second communication device can The first sequence number carried in the PDU header of the second PDU determines the position sequence of the encoded packets corresponding to the second PDU, so that the G encoded packets are arranged in sequence.
- the bitmap is used to enable the second communication device to determine the encoded packet contained in the second PDU, the bitmap includes H bits, one bit corresponds to a first PDU, and the bit indicates whether the first PDU corresponding to the bit is included in the second PDU Among the coded packets, the number of coded packets included in one second PDU is less than or equal to H, where H is a positive integer. Based on this implementation manner, the parameters in the header of the encoded packet can be shared by the PDU header of the second PDU, which is beneficial to reduce header overhead of the header of the encoded packet.
- the specific implementation manner in which the second communication device restores the one or more first PDUs may be to use an A ⁇ N interleaver to restore the one or more first PDUs.
- the type of the interleaver may be a column interleaver or a diagonal interleaver, which is not limited in this embodiment of the present application.
- the number of coded packets included in a coded packet group does not exceed A, and the number of coded packets corresponding to a first PDU does not exceed N, where L is less than or equal to H, A is less than or equal to H, A is greater than or equal to L, and A is greater than or equal to A positive integer equal to 1.
- L is less than or equal to H
- A is less than or equal to H
- A is greater than or equal to L
- A is greater than or equal to A positive integer equal to 1.
- the type of the interleaver in FIG. 7 is a column interleaver
- the type of the interleaver in FIG. 8 is a diagonal interleaver.
- the embodiment of the present application does not limit the type of the interleaver.
- the second communication device arranges from left to right according to the first serial number carried in the PDU header of the second PDU, and determines the specific position of each encoded packet according to the corresponding relationship between the bitmap and the position of the encoded packet.
- the second communication device may also use other interleavers or interleaving methods to restore the first PDU.
- a specific implementation manner in which the second communication device restores the one or more first PDUs may be to use an A ⁇ N interleaver to restore the one or more first PDUs.
- a coded packet group includes a number of coded packets that does not exceed A, and the total number of coded packets corresponding to any X first PDUs in the L first PDUs does not exceed N, wherein, Less than or equal to H, A less than or equal to H, and A greater than or equal to Both A and X are positive integers greater than 1.
- the type of the interleaver in FIG. 9 is a column interleaver
- the second communication device 10 is a diagonal interleaver.
- the embodiment of the present application does not limit the type of the interleaver.
- the second communication device arranges from left to right according to the first sequence number carried by the PDU header of the second PDU, and determines the specific position of each encoded packet according to the corresponding relationship between the bitmap and the position of the encoded packet.
- the second communication device may also use other interleavers or interleaving methods to restore the first PDU.
- a specific implementation manner in which the second communication device restores the one or more first PDUs may be to use an A ⁇ B interleaver to restore the one or more first PDUs.
- the type of the interleaver may be a column interleaver or a diagonal interleaver, which is not limited in this embodiment of the present application.
- the type of the interleaver in FIG. 11 is a column interleaver
- the type of the interleaver in FIG. 12 is a diagonal interleaver.
- the embodiment of the present application does not limit the type of the interleaver.
- the second communication device arranges from left to right according to the first serial number carried in the PDU header of the second PDU, and determines the specific position of each encoded packet according to the corresponding relationship between the bitmap and the position of the encoded packet.
- the second communication device may also use other interleavers or interleaving methods to restore the first PDU.
- the interleaver or the interleaving method adopted by the second communication device is predetermined and the same as the interleaver or the interleaving method adopted by the first communication device.
- the specific implementation manner in which the second communication device restores one or more first PDUs is that the second communication device determines the target first PDU based on the first information carried in the header of the encoded packet corresponding to the target first PDU.
- V coded packets restore the target first PDU, wherein the total number of coded packets corresponding to the target first PDU is M, V is less than or equal to M, and V is a positive integer. Due to the instability of data transmission, the first communication device outputs N second PDUs, but the second communication device does not necessarily obtain all the second PDUs sent by the first communication device. Therefore, the target obtained by the second communication device
- the number V of encoded packets of the first PDU may be smaller than the number of original data packets of the target first PDU, or may be greater than or equal to the number of original data packets of the target first PDU.
- the second communication device can restore the target first PDU; the acquired number of encoded packets of the target first PDU V If the number of original data packets is less than the target first PDU, the second communication device cannot restore the target first PDU. Based on this implementation manner, data transmission efficiency can be improved without reducing data transmission reliability.
- the first information may directly indicate the number of original data packets of the first PDU.
- the second communication device only needs to obtain one encoded packet corresponding to the first PDU to accurately determine the number of original data packets of the first PDU.
- the first information indicates the number of original data packets of the first PDU in an indirect manner
- the second communication device needs to acquire multiple encoded packets corresponding to the first PDU in order to determine the number of original data packets of the first PDU
- the second The communication device determines the number of original data packets of the target first PDU based on the first information carried in the header of the encoded packet corresponding to the target first PDU.
- the specific implementation method is: the second communication device carries The first information restores the first encoded information.
- the first encoded information is generated based on the second information encoding.
- the second information indicates the number of original data packets of the target first PDU.
- the length of the second information is W bits.
- the first information The length of is R bits, R ⁇ V ⁇ W, W and R are both positive integers; the second communication device determines the number of original data packets of the target first PDU according to the second information corresponding to the first encoding information.
- the length of the first encoded information is 7 bits
- the first encoded information is generated by the first communication device by encoding the second information
- the length of the second information is 4 bits
- the first communication device divides the 7-bit first encoded information into There are 7 copies, one copy corresponds to 1 bit of first information, and the 7 first information are allocated to the 7 coded packet headers corresponding to the first PDU.
- the header of each coded packet includes 1 bit of first information
- the header overhead of the encoded packet is reduced.
- the total length of the multiple first information acquired by the second communication device needs to be greater than the length of the second information
- the second communication device can restore the first encoding information, so as to determine the number of original data packets of the first PDU, that is, the second communication needs to receive at least 4 encoding packets corresponding to the first PDU, that is, at least 4 different first PDUs must be obtained.
- the length of the four first pieces of information is 4 bits, which is equal to the length of 4 bits of the second piece of information, so that the first coded information can be restored and the number of original data packets of the first PDU can be determined. Based on this implementation manner, it is beneficial to reduce header overhead of encoding packet headers.
- the PDU header of the second PDU carries a second sequence number
- the second sequence number is used to determine the sequence number of the first PDU corresponding to the encoded packet included in the second PDU.
- the second sequence numbers of the G second PDUs acquired by the second communication device are all the same. It should be noted that the second communication device will obtain multiple second PDUs. Among the multiple second PDUs, some of the first PDUs corresponding to the second PDUs are the same, and there are also some of the first PDUs corresponding to the second PDUs. The reason is that the second communication device may have performed multiple concatenations of coded packets.
- the first concatenation is the coded packets corresponding to the first PDU with sequence numbers 1 to 8, and the second concatenation
- the coded packets corresponding to the first PDUs with sequence numbers 9-16 among the multiple second PDUs obtained by the second communication device, there may be some second PDUs corresponding to the first PDUs with sequences 1-8, and some second PDUs
- the second communication device may determine and classify the second PDU based on the second sequence number, and group the second PDUs obtained after the same concatenation together, so as to restore the first PDU. Based on this implementation manner, it is beneficial to restore the second PDU more accurately.
- the header of the encoded packet corresponding to the target first PDU further includes third information, and the third information is used to determine the sequence number of the target first PDU.
- the third information may directly indicate the sequence number of the first PDU corresponding to the encoded packet.
- the second communication device can accurately determine the sequence number of the first PDU only by obtaining an encoded packet corresponding to the first PDU.
- the third information may indirectly indicate the serial number of the first PDU corresponding to the encoded packet, and the second communication device needs to acquire multiple encoded packets corresponding to the first PDU to determine the serial number of the first PDU.
- the specific implementation method It is: the second communication device restores the second coded information based on the third information carried in the headers of the V coded packets corresponding to the target first PDU, the length of the fourth information is Q bits, and the second coded information is generated based on the coding of the fourth information , the fourth information indicates the sequence number of the target first PDU, the length of the third information is U bits, U ⁇ V ⁇ Q, Q and U are both positive integers and greater than 1; determined according to the fourth information corresponding to the second encoding information The sequence number of the target first PDU.
- the length of the second encoded information is 16 bits
- the second encoded information is generated by the first communication device after encoding based on the fourth information
- the length of the fourth information is 12 bits
- the first communication device uses the 16-bit second encoded information It is divided into 8 parts, one part corresponds to the 2-bit third information, and the 8 third information are allocated to the 8 coded packet headers corresponding to the first PDU. Therefore, the header of each coded packet includes 2-bit third information , compared with the 12-bit fourth information carried in the header of each encoded packet, the header overhead of the encoded packet is reduced.
- the second communication device can restore the second encoding information, so as to determine the sequence number of the target first PDU, that is, the second communication needs to receive at least 6 encoding packets corresponding to the first PDU, that is, at least 6 encoding packets from different encodings must be obtained.
- the length of the six third information is 12 bits, which is equal to the length of the third information of 12 bits, so that the second encoded information can be restored and the sequence number of the first PDU can be determined. Based on this implementation manner, it is beneficial to reduce header overhead of encoding packet headers.
- the second communication device after the second communication device determines that the number of encoded packets corresponding to the target first PDU is greater than or equal to the number of original data packets corresponding to the target first PDU, the second communication device based on the number of encoded packets corresponding to the target first PDU.
- the specific implementation of restoring the target first PDU by V coded packets can be as follows: firstly, the second communication device decodes based on the V coded packets to obtain K original data packets corresponding to the target first PDU; padding rule, determine the position of the indication field and read the length of the filling field indicated by the indication field; finally the second communication device removes the indication field and the filling field in the K original data packets, and will remove the K of the indication field and the filling field
- the original data packets are concatenated according to the order of numbers, and the first PDU of the target is restored.
- the first communication device obtains each coded packet corresponding to the 16 first PDUs.
- the number of coded packets corresponding to a first PDU does not exceed 16.
- the header of the coded packet only carries the K value indicating the number of original data packets of the first PDU.
- the coded packet The length of the packet header is 1 byte; the first communication device concatenates each of the 16 encoded packet groups through a 16 ⁇ 16 interleaver to obtain 16 second PDUs.
- the PDU header structure of the second PDU is as follows As shown in Figure 13, the length of the PDU header is 5 bytes. Wherein, the length of a first PDU is 1500 bytes.
- Table 3 shows the size of header overhead of encoded packets using the method proposed in this application. Compared with Table 1, it can be seen that the method proposed in this application can reduce the header overhead of encoded packets.
- the third protocol layer is the RLC layer
- a new RLC PDU header will be added when the second PDU is transmitted to the RLC layer.
- the length of the PDU header of the RLC PDU is usually 0-5 bytes, as shown in Table 4.
- the payload ratio of the RLC PDU obtained by the proposed method is compared with that shown in Table 2. Based on the method described in this application, the payload ratio of the RLC PDU can also be improved.
- both the first communication device and the second communication device may include a hardware structure and/or a software module, in the form of a hardware structure, a software module, or a hardware structure plus a software module to realize the above functions. Whether one of the above-mentioned functions is executed in the form of a hardware structure, a software module, or a hardware structure plus a software module depends on the specific application and design constraints of the technical solution.
- FIG. 14 shows a schematic structural diagram of a communication device according to an embodiment of the present application.
- the communication device may be the first communication device or the second communication device, or a device in the first communication device or the second communication device, or a device that can be matched with the first communication device or the second communication device.
- the communication device may include a module or unit corresponding to the method/operation/step/action performed by the first communication device or the second communication device in the above method embodiments, and the unit may be a hardware
- the circuit may also be software, or may be implemented by combining hardware circuits with software.
- the device may be, or may be, a device in the first communication device, or a device that can be matched and used with the first communication device.
- the communication device may also be a system on a chip.
- the communication device shown in FIG. 14 may be the first communication device, or a device in the first communication device, or a device that can be matched with the first communication device. Wherein, the communication device may also be a system on a chip.
- the apparatus may be used to execute part or all of the functions of the first communication device in the method embodiment described in FIG. 2 above.
- the communication device shown in FIG. 14 may include a communication unit 1401 and a processing unit 1402 . Wherein, the processing unit 1402 is configured to perform data processing.
- the communication unit 1401 is integrated with a receiving unit and a sending unit.
- the communication unit 1401 may also be called a transceiver unit. Alternatively, the communication unit 1401 may also be split into a receiving unit and a sending unit.
- the processing unit 1402 and the communication unit 1401 below have the same principle, and will not be described in detail below. in:
- the communication unit 1401 is configured to obtain S coded packets corresponding to L first protocol data units PDUs, the number of coded packets corresponding to one first PDU is one or more, L is a positive integer, and S is a positive integer; the processing Unit 1402, configured to concatenate each of the N coded packet groups to obtain N second PDUs, the N coded packet groups are obtained by dividing S coded packets, and one coded packet group includes one or multiple coded packets, different coded packet groups include different coded packets, any two coded packets included in the same coded packet group correspond to different first PDUs; a second PDU corresponds to a coded packet group, and includes coded packet groups All encoded packets in; the PDU header of a second PDU carries the first sequence number and bitmap, the first sequence number is used to determine the encoded packet number corresponding to the encoded packet included in the second PDU, the bitmap includes H bits, one The bit corresponds to a first PDU, the bit indicates whether the encoded
- the number of coded packets included in one coded packet group does not exceed A, and the number of coded packets corresponding to a first PDU does not exceed N, where L is less than or equal to H, A is less than or equal to H, and A Greater than or equal to L, A is a positive integer greater than or equal to 1.
- the number of encoded packets included in one encoded packet group does not exceed A, and the total number of encoded packets corresponding to any X first PDUs in the L first PDUs does not exceed N, wherein, Less than or equal to H, A less than or equal to H, and A greater than or equal to Both A and X are positive integers greater than 1.
- the number of coded packets included in one coded packet group does not exceed A
- the number of coded packets corresponding to a first PDU does not exceed B
- A is less than or equal to L
- A is less than or equal to H
- N Y ⁇ B
- Both A and Y are positive integers greater than 1.
- the header of the coded packet includes first information, and the first information is used to determine the number of original data packets of the first PDU corresponding to the coded packet.
- the processing unit 1402 is further configured to encode the second information to generate first encoded information, the second information is used to indicate the number of original data packets of the first PDU, and the second information
- the length is W bits
- the length of the first coded information is E bits
- E ⁇ W, W and E are both positive integers
- the first PDU corresponds to M coded packets
- the first information in the M coded packets constitutes the first Encoding information
- M is a positive integer
- E is greater than or equal to M.
- the PDU header of the second PDU carries a second sequence number
- the second sequence number is used to determine the sequence number of the first PDU corresponding to the encoded packet included in the second PDU.
- the encoded packet header further carries third information, and the third information is used to determine the sequence number of the first PDU corresponding to the encoded packet.
- the processing unit 1402 is further configured to encode the fourth information to generate second encoded information, the fourth information indicates the sequence number of the first PDU corresponding to the encoded packet, and the length of the fourth information is Q bits, the length of the second encoded information is P bits, P ⁇ Q, P and Q are both positive integers; wherein, the first PDU corresponds to M encoded packets, and the third information in M encoded packets constitutes the second encoded information, M is a positive integer, and P is greater than or equal to M.
- the communication device shown in FIG. 14 may be the second communication device, or a device in the second communication device, or a device that can be matched with the second communication device. Wherein, the communication device may also be a system on a chip.
- the apparatus may be used to execute part or all of the functions of the second communication device in the method embodiment described in FIG. 2 above.
- the communication device shown in FIG. 14 may include a communication unit 1401 and a processing unit 1402 . in:
- the communication unit 1401 is configured to obtain G second protocol data units PDUs, one second PDU corresponds to one coded packet group, and includes all coded packets in the coded packet group; one coded packet group includes one or more coded packets, Different coded packet groups include different coded packets, and any two coded packets included in the same coded packet group correspond to different first PDUs; the PDU header of a second PDU carries the first sequence number and bitmap, and the first sequence number is used To determine the coded packet number corresponding to the coded packet included in the second PDU, the bitmap includes H bits, one bit corresponds to a first PDU, and the bit indicates whether to include the coded packet in the first PDU corresponding to the bit in the second PDU, one The number of encoded packets included in the second PDU is less than or equal to H, and H is a positive integer; the processing unit 1402 is used to divide G second PDUs to obtain F encoded packets, and F is a positive integer; the processing unit 1402 is also
- the number of coded packets included in one coded packet group does not exceed A
- the number of coded packets corresponding to a first PDU does not exceed N
- G second PDUs correspond to L first PDUs, where L Less than or equal to H, A less than or equal to H, A greater than or equal to L, L and A are positive integers greater than 1.
- a coded packet group includes a number of coded packets not exceeding A, G second PDUs correspond to L first PDUs, and any X first PDUs in the L first PDUs correspond to coded packets
- the total quantity does not exceed N, where, Less than or equal to H, A less than or equal to H, and A greater than or equal to L, A and X are all positive integers greater than 1.
- the number of coded packets included in one coded packet group does not exceed A
- the number of coded packets corresponding to a first PDU does not exceed B
- the processing unit 1402 when the processing unit 1402 restores one or more first PDUs, the processing unit 1402 is specifically configured to: determine the target first PDU based on the first information carried in the header of the encoded packet corresponding to the target first PDU. The number of original data packets of the PDU; if among the F coded packets, the number of coded packets V corresponding to the target first PDU is greater than or equal to the number of original data packets of the target first PDU, then based on the V coded packets corresponding to the target first PDU Restore the target first PDU, wherein the total number of encoded packets corresponding to the target first PDU is M, V is less than or equal to M, and V is a positive integer.
- the processing unit 1402 determines the number of original data packets of the target first PDU based on the first information carried in the header of the encoded packet corresponding to the target first PDU.
- the processing unit 1402 is specifically configured to: The first information carried by the V coded packet headers corresponding to a PDU restores the first coded information, the first coded information is generated based on the coded second information, the second information indicates the number of original data packets of the target first PDU, and the second The length of the information is W bits, the length of the first information is R bits, R ⁇ V ⁇ W, W and R are both positive integers; determine the original data packet of the target first PDU according to the second information corresponding to the first encoding information quantity.
- the PDU header of the second PDU carries a second sequence number
- the second sequence number is used to determine the sequence number of the first PDU corresponding to the encoded packet included in the second PDU.
- the header of the coded packet corresponding to the target first PDU further includes third information, and the third information is used to determine the sequence number of the target first PDU.
- the processing unit 1402 is further configured to: restore the second encoded information based on the third information carried in the headers of the V encoded packets corresponding to the target first PDU, the length of the fourth information is Q bits, The second encoding information is generated based on the fourth information encoding, the fourth information indicates the sequence number of the target first PDU, the length of the third information is U bits, U ⁇ V ⁇ Q, Q and U are both positive integers and greater than 1 ; Determine the sequence number of the target first PDU according to the fourth information corresponding to the second encoding information.
- FIG. 15 shows a schematic structural diagram of a communication device.
- the communication apparatus 1500 may be the first communication device in the above method embodiment, and may also be a chip, a chip system, or a processor that supports the first communication device to implement the above method.
- the communication device may be used to implement the methods described in the foregoing method embodiments, and for details, reference may be made to the descriptions in the foregoing method embodiments.
- the communication apparatus 1500 may be the second communication device in the above method embodiment, or may be a chip, a chip system, or a processor that supports the second communication device to implement the above method.
- the communication device may be used to implement the methods described in the foregoing method embodiments, and for details, reference may be made to the descriptions in the foregoing method embodiments.
- the communication device 1500 may include one or more processors 1501 .
- the processor 1501 may be a general-purpose processor or a special-purpose processor. For example, it can be a baseband processor or a central processing unit.
- the baseband processor can be used to process communication protocols and communication data
- the central processing unit can be used to control communication devices (such as base stations, baseband chips, terminals, terminal chips, DU or CU, etc.), execute software programs, and process Data for Software Programs.
- the communication device 1500 may include one or more memories 1502, on which instructions 1504 may be stored, and the instructions may be executed on the processor 1501, so that the communication device 1500 executes the above method Methods described in the Examples.
- data may also be stored in the memory 1502 .
- the processor 1501 and the memory 1502 can be set separately or integrated together.
- the communication device 1500 may further include a transceiver 1505 and an antenna 1506 .
- the transceiver 1505 may be called a transceiver unit, a transceiver, or a transceiver circuit, etc., and is used to realize a transceiver function.
- the transceiver 1505 may include a receiver and a transmitter, and the receiver may be called a receiver or a receiving circuit for realizing a receiving function; the transmitter may be called a transmitter or a sending circuit for realizing a sending function.
- the communication apparatus 1500 is a first communication device: the processor 1501 is configured to perform a data processing operation of the first communication device in the foregoing method embodiments.
- the transceiver 1505 is configured to perform the data transceiving operation of the first communication device in the foregoing method embodiments.
- the communication apparatus 1500 is a second communication device: the processor 1501 is configured to perform a data processing operation of the second communication device in the foregoing method embodiment.
- the transceiver 1505 is configured to perform the data transceiving operation of the second communication device in the foregoing method embodiments.
- the processor 1501 may include a transceiver for implementing receiving and sending functions.
- the transceiver may be a transceiver circuit, or an interface, or an interface circuit.
- the transceiver circuits, interfaces or interface circuits for realizing the functions of receiving and sending can be separated or integrated together.
- the above-mentioned transceiver circuit, interface or interface circuit may be used for reading and writing code/data, or the above-mentioned transceiver circuit, interface or interface circuit may be used for signal transmission or transfer.
- the processor 1501 may store instructions 1503, and the instructions 1503 run on the processor 1501, and may cause the communication device 1500 to execute the methods described in the foregoing method embodiments.
- the instruction 1503 may be fixed in the processor 1501, in this case, the processor 1501 may be implemented by hardware.
- the communication device 1500 may include a circuit, and the circuit may implement the function of sending or receiving or communicating in the foregoing method embodiments.
- the processor and the transceiver described in the embodiment of the present application can be implemented in integrated circuit (integrated circuit, IC), analog IC, radio frequency integrated circuit RFIC, mixed signal IC, application specific integrated circuit (application specific integrated circuit, ASIC), printed circuit board (printed circuit board, PCB), electronic equipment, etc.
- the communication device described in the above embodiments may be a terminal device, a first communication device or a second communication device, but the scope of the communication device described in the embodiment of this application is not limited thereto, and the structure of the communication device may not be changed from that shown in Figure 15. limits.
- a communication device may be a stand-alone device or may be part of a larger device.
- the communication device may be:
- a set of one or more ICs may also include storage components for storing data and instructions;
- ASIC such as modem (Mobile Station Modem, MSM);
- the communication device may be a chip or a chip system
- the chip shown in FIG. 16 includes a processor 1601 and an interface 1602 .
- a memory 1603 may also be included.
- the number of processors 1601 may be one or more, and the number of interfaces 1602 may be more than one.
- the interface 1602 is used to input or output signals
- the processor 1601 is configured to execute data processing operations of the terminal device in the above method embodiments.
- the interface 1602 is used to input or output signals
- the processor 1601 is configured to execute data processing operations of the network device in the above method embodiments.
- the processor in the embodiment of the present application may be an integrated circuit chip that has a signal processing capability.
- each step of the above-mentioned method embodiments may be completed by an integrated logic circuit of hardware in a processor or instructions in the form of software.
- the above-mentioned processor can be a general-purpose processor, a digital signal processor (digital signal processor, DSP), an ASIC, a field programmable gate array (field programmable gate array, FPGA) or other programmable logic devices, discrete gates or transistor logic devices , Discrete hardware components.
- the memory in the embodiments of the present application may be a volatile memory or a nonvolatile memory, or may include both volatile and nonvolatile memories.
- the non-volatile memory can be read-only memory (read-only memory, ROM), programmable read-only memory (programmable ROM, PROM), erasable programmable read-only memory (erasable PROM, EPROM), electrically programmable Erases programmable read-only memory (electrically EPROM, EEPROM) or flash memory.
- Volatile memory can be random access memory (RAM), which acts as external cache memory.
- RAM random access memory
- SRAM static random access memory
- DRAM dynamic random access memory
- DRAM synchronous dynamic random access memory
- SDRAM double data rate synchronous dynamic random access memory
- ESDRAM enhanced synchronous dynamic random access memory
- SLDRAM direct memory bus random access memory
- direct rambus RAM direct rambus RAM
- the present application also provides a computer-readable medium for storing computer software instructions, and when the instructions are executed by a communication device, the functions of any one of the above method embodiments are realized.
- the present application also provides a computer program product, which is used for storing computer software instructions, and when the instructions are executed by a communication device, the functions of any one of the above method embodiments are realized.
- all or part may be implemented by software, hardware, firmware or any combination thereof.
- software When implemented using software, it may be implemented in whole or in part in the form of a computer program product.
- the computer program product includes one or more computer instructions. When the computer instructions are loaded and executed on the computer, the processes or functions according to the embodiments of the present application will be generated in whole or in part.
- the computer can be a general purpose computer, a special purpose computer, a computer network, or other programmable devices.
- 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 transmitted from a website, computer, server or data center Transmission to another website site, computer, server or data center by wired (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.).
- the computer-readable storage medium may be any available medium that can be accessed by a computer, or a data storage device such as a server or a data center integrated with one or more available media.
- the available medium may be a magnetic medium (for example, a floppy disk, a hard disk, a magnetic tape), an optical medium (for example, a high-density digital video disc (digital video disc, DVD)), or a semiconductor medium (for example, a solid state drive (solid state drive, SSD)) etc.
- a magnetic medium for example, a floppy disk, a hard disk, a magnetic tape
- an optical medium for example, a high-density digital video disc (digital video disc, DVD)
- a semiconductor medium for example, a solid state drive (solid state drive, SSD)
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请公开了一种数据编码方法及通信装置,其中,该方法包括:获取L个第一协议数据单元PDU对应的S个编码包;对N个编码包组中的每个所述编码包组进行级联,得到N个第二PDU,N个编码包组为对S个编码包进行划分得到,同一所述编码包组包括的任意两个编码包对应不同的第一PDU;一个第二PDU的PDU头携带第一序列号和位图,第一序列号用于确定第二PDU包括的编码包对应的编码包编号,该位图包括H个比特,一个比特对应一个第一PDU,该比特指示第二PDU中是否包括该比特对应的第一PDU中的编码包;输出N个第二PDU。基于本申请所描述的方法,有利于降低编码包的头开销,提高数据的传输效率。
Description
本申请要求于2021年12月21日提交中国专利局、申请号为202111571393.8、申请名称为“一种数据编码方法及通信装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及通信技术领域,尤其涉及一种数据编码方法及通信装置。
随着通信网络的发展,人们对于数据传输的速率与可靠性要求越来越高。第三代合作伙伴计划(the 3rd Generation Partner Project,3GPP)Release 18的讨论指出通过一种线性包编码(Linear Packet Coding,LPC)技术,可以在不降低数据传输可靠性的同时提高数据传输效率。该方法步骤具体包括:首先发送端对上层的协议数据单元(Protocol Data Unit,PDU)进行拆分,得到K个原数据包;然后发送端将通过一个线性分组码(M,K)对这K个原数据包进行编码得到M个编码包;发送端为每个编码包加上包头后得到M个LPC PDU,并将该M个LPC PDU向下层传输;当接收端获取至少K个正确的LPC PDU后,通过移除LPC PDU的包头得到编码包;接收端再通过解码至少K个编码包确定K个原数据包;接收端级联该K个原数据包即可还原上层的PDU。基于该方法,若拆分的原数据包数量越多,编码包的包头开销将会越大,仍然会影响数据的传输效率。
发明内容
本申请提供了一种数据编码方法及通信装置,有利于降低编码包的头开销。
第一方面,本申请提供了一种数据编码的方法,该方法包括:获取L个第一协议数据单元PDU对应的S个编码包,一个第一PDU对应的编码包数量为一个或者多个,L为正整数,S为正整数;对N个编码包组中的每个编码包组进行级联,得到N个第二PDU,N个编码包组为对S个编码包进行划分得到,一个编码包组包括一个或多个编码包,不同的编码包组包括的编码包不同,同一编码包组包括的任意两个编码包对应不同的第一PDU;一个第二PDU对应一个编码包组,且包括编码包组中的所有编码包;一个第二PDU的PDU头携带第一序列号和位图,第一序列号用于确定第二PDU包括的编码包对应的编码包编号,位图包括H个比特,一个比特对应一个第一PDU,比特指示第二PDU中是否包括比特对应的第一PDU中的编码包,一个第二PDU包括的编码包数量小于或等于H,H为正整数;输出N个第二PDU。
基于第一方面所描述的方法,第二PDU的PDU头可以分担编码包包头的部分参数,从而可以降低编码包的头开销,提高数据的传输效率。
在一种可能的实现方式中,一个编码包组包括编码包的数量不超过A,一个第一PDU对应的编码包数量不超过N,其中,L小于或等于H,A小于或等于H,A大于或等于L,A为大于或等于1的正整数。
在一种可能的实现方式中,一个编码包组包括编码包的数量不超过A,L个第一PDU中 任意X个第一PDU对应的编码包总数量不超过N,其中,
小于或等于H,A小于或等于H,且A大于或等于
A和X均为大于1的正整数。
在一种可能的实现方式中,编码包的包头包括第一信息,第一信息用于确定编码包对应的第一PDU的原数据包的数量。基于该方法,接收端能够根据的原数据包数量确定是否能够还原第一PDU,从而提高解码效率,
在一种可能的实现方式中,该方法还包括:对第二信息进行编码,生成第一编码信息,第二信息用于指示第一PDU的原数据包的数量,第二信息的长度为W比特,第一编码信息的长度为E比特,E≥W,W和E均为正整数;其中,第一PDU对应M个编码包,M个编码包中的第一信息组成第一编码信息,M为正整数,E大于或者等于M。基于该方法,对编码包的包头参数进行了进一步压缩,降低了头开销。
在一种可能的实现方式中,第二PDU的PDU头携带第二序列号,第二序列号用于确定第二PDU包括的编码包对应的第一PDU的序列号。基于该方法,能够使接收端确定当前接收到的第二PDU中包括的编码包对应的第一PDU的序列号,提高解码效率。
在一种可能的实现方式中,编码包包头还携带第三信息,第三信息用于确定编码包对应的第一PDU的序列号。基于该方法,能够使接收端确定编码包对应的第一PDU的序列号,提高解码效率。
在一种可能的实现方式中,该方法还包括:对第四信息进行编码,生成第二编码信息,第四信息指示编码包对应的第一PDU的序列号,第四信息的长度为Q比特,第二编码信息的长度为P比特,P≥Q,P和Q均为正整数;其中,第一PDU对应M个编码包,M个编码包中的第三信息组成第二编码信息,M为正整数,P大于或者等于M。基于该方法,对编码包的包头参数进行了进一步压缩,降低了头开销。
第二方面,本申请提供了一种数据解码的方法,该方法包括:获取G个第二协议数据单元PDU,一个第二PDU对应一个编码包组,且包括编码包组中的所有编码包;一个编码包组包括一个或多个编码包,不同的编码包组包括的编码包不同,同一编码包组包括的任意两个编码包对应不同的第一PDU;一个第二PDU的PDU头携带第一序列号和位图,第一序列号用于确定第二PDU包括的编码包对应的编码包编号,位图包括H个比特,一个比特对应一个第一PDU,比特指示第二PDU中是否包括比特对应的第一PDU中的编码包,一个第二PDU包括的编码包数量小于或等于H,H为正整数;分割G个第二PDU得到F个编码包,F为正整数;基于G个第二PDU的PDU头携带的第一序列号和位图,还原一个或多个第一PDU。
在一种可能的实现方式中,一个编码包组包括编码包的数量不超过A,一个第一PDU对应的编码包数量不超过N,G个第二PDU对应L个第一PDU,其中,L小于或等于H,A小于或等于H,A大于或等于L,L和A为大于1的正整数。其中,第二方面的有益效果可参照第一方面中所描述的内容。
在一种可能的实现方式中,一个编码包组包括编码包的数量不超过A,G个第二PDU对应L个第一PDU,L个第一PDU中任意X个第一PDU对应的编码包总数量不超过N,其中,
小于或等于H,A小于或等于H,且A大于或等于
L、A和X为均大于1的正整数。
在一种可能的实现方式中,一个编码包组包括编码包的数量不超过A,一个第一PDU对 应的编码包数量不超过B,G个第二PDU对应L个第一PDU,其中,A小于或等于L,A小于或等于H,N=Y×B,
A、L和Y均为大于1的正整数。
在一种可能的实现方式中,还原一个或多个第一PDU,具体实现方式为:基于目标第一PDU对应的编码包包头携带的第一信息确定目标第一PDU的原数据包数量;若在F个编码包中,目标第一PDU对应的编码包数量V大于或者等于目标第一PDU的原数据包数量,则基于目标第一PDU对应的V个编码包还原目标第一PDU,其中,目标第一PDU对应的编码包总数量为M,V小于或等于M,V为正整数。
在一种可能的实现方式中,基于目标第一PDU对应的编码包包头携带的第一信息确定目标第一PDU的原数据包数量,具体实现方式为:基于目标第一PDU对应的V个编码包包头携带的第一信息还原第一编码信息,第一编码信息是基于第二信息编码生成的,第二信息指示目标第一PDU的原数据包的数量,第二信息的长度为W比特,第一信息的长度为R比特,R×V≥W,W和R均为正整数;根据第一编码信息对应的第二信息确定目标第一PDU的原数据包的数量。
在一种可能的实现方式中,第二PDU的PDU头携带第二序列号,第二序列号用于确定第二PDU包括的编码包对应的第一PDU的序列号。
在一种可能的实现方式中,目标第一PDU对应的编码包包头还包括第三信息,第三信息用于确定目标第一PDU的序列号。
在一种可能的实现方式中,该方法还包括:基于目标第一PDU对应的V个编码包包头携带的第三信息还原第二编码信息,第四信息的长度为Q比特,第二编码信息是基于第四信息编码生成的,第四信息指示目标第一PDU的序列号,第三信息的长度为U比特,U×V≥Q,Q和U均为正整数且大于1;根据第二编码信息对应的第四信息确定目标第一PDU的序列号。
第三方面,本申请提供了一种通信装置,该装置可以是第一通信设备,也可以是第一通信设备中的装置,或者是能够和第一通信设备匹配使用的装置。其中,该通信装置还可以为芯片系统。该通信装置可执行第一方面所述的方法。该通信装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的单元或模块。该单元或模块可以是软件和/或硬件。该通信装置执行的操作及有益效果可以参见上述第一方面所述的方法以及有益效果,重复之处不再赘述。
第四方面,本申请提供了一种通信装置,该装置可以是第二通信设备,也可以是第二通信设备中的装置,或者是能够和第二通信设备匹配使用的装置。其中,该通信装置还可以为芯片系统。该通信装置可执行第二方面所述的方法。该通信装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的单元或模块。该单元或模块可以是软件和/或硬件。该通信装置执行的操作及有益效果可以参见上述第二方面所述的方法以及有益效果,重复之处不再赘述。
第五方面,本申请提供了一种通信装置,所述通信装置包括处理器,当所述处理器调用存储器中的计算机程序时,如第一方面或第二方面中的方法被执行。
一种可能的实现中,该通信装置还包括存储器,该存储器和处理器相互耦合。可选的,该存储器与处理器集成在一起。
一种可能的实现中,该通信装置还包括收发器,该收发器用于收发数据和/或信令。
第六方面,本申请提供了一种通信装置,通信装置包括处理器和接口电路,该接口电路用于接收来自通信装置之外的其它通信装置的信号并传输至处理器或将来自处理器的信号发送给通信装置之外的其它通信装置,处理器通过逻辑电路或执行代码指令用于实现如第一方 面或第二方面中的方法。
第七方面,本申请提供了一种计算机可读存储介质,存储介质中存储有计算机程序或指令,当计算机程序或指令被通信装置执行时,实现如第一方面或第二方面中的方法。
第八方面,本申请实施例提供一种计算机程序或计算机程序产品,包括代码或指令,当代码或指令在计算机上运行时,使得计算机执行如第一方面或第二方面中的方法。
第九方面,本申请实施例提供一种通信系统,该系统包括上述第三方面和第四方面提供的通信装置。
图1是本申请实施例中提供的一种通信网络架构示意图;
图2是本申请实施例提供的一种数据编码和数据解码方法的流程示意图;
图3是本申请实施例提供的一种信息编码的示意图;
图4是本申请实施例提供的又一种信息编码的示意图;
图5是本申请实施例提供的一种处理第一PDU的方法示意图;
图6是本申请实施例提供的编码包组的结构示意图;
图7是本申请实施例提供的一种编码包交织方法的示意图;
图8是本申请实施例提供的又一种编码包交织方法的示意图;
图9是本申请实施例提供的又一种编码包交织方法的示意图;
图10是本申请实施例提供的又一种编码包交织方法的示意图;
图11是本申请实施例提供的又一种编码包交织方法的示意图;
图12是本申请实施例提供的又一种编码包交织方法的示意图;
图13为本申请实施例提供的一种第二PDU的PDU头结构示意图;
图14是本申请实施例提供的一种通信装置的结构示意图;
图15是本申请实施例提供的又一种通信装置的结构示意图;
图16是本申请实施例提供的芯片的结构示意图。
下面结合附图对本申请具体实施例作进一步的详细描述。
为便于理解本申请实施例的技术方案,下面将对本申请实施例提供的方法的系统架构进行简要说明。可理解的,本申请实施例描述的系统架构是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定。
本申请实施例的技术方案可以应用于各种通信系统,例如:卫星通信系统、传统的移动通信系统。其中,所述卫星通信系统可以与传统的移动通信系统(即地面通信系统)相融合。通信系统例如:无线局域网(wireless local area network,WLAN)通信系统长期演进(long term evolution,LTE)系统、第五代(5th generation,5G)系统或新无线(new radio,NR),第六代(6th generation,6G)系统,以及其他未来的通信系统等,还支持多种无线技术融合的通信系统,例如,还可以应用于无人机、卫星通信系统、高空平台(high altitude platform station,HAPS)通信等非地面网络(non-terrestrial network,NTN)融合地面移动通信网络的系统。
图1为适用于本申请实施例的通信系统的示例。通信系统包括至少一个网络设备以及至少一个终端设备。参见图1,包括网络设备和6个终端设备。这6个终端设备可以是蜂窝电 话、智能电话、便携式电脑、手持通信设备、手持计算设备、卫星无线电装置、全球定位系统、PDA和/或用于在无线通信系统上通信的任意其它适合设备,且均可以与网络设备连接。这六个终端设备均能够与网络设备通信。当然图1中的终端设备的数量只是举例,还可以更少或更多。
本申请中的网络设备可以是LTE中的演进型基站(evolved Node B,eNB或eNodeB);或者5G网络中的基站,宽带网络业务网关(broadband network gateway,BNG),汇聚交换机或非第三代合作伙伴项目(3rd generation partnership project,3GPP)接入设备等,本申请实施例对此不作具体限定。示例性的,本申请实施例中的基站可以包括各种形式的基站,例如:宏基站、微基站(也称为小站)、中继站、接入点、下一代基站(gNodeB,gNB)、传输接入点(transmitting and receiving point,TRP)、发射点(transmitting point,TP)、移动交换中心以及设备到设备(Device-to-Device,D2D)、车辆外联(vehicle-to-everything,V2X)、机器到机器(machine-to-machine,M2M)通信、物联网(Internet of Things)通信中承担基站功能的设备等,本申请实施例对此不作具体限定。
网络设备可以和核心网设备进行通信交互,向终端设备提供通信服务。核心网设备例如为5G网络核心网(core network,CN)中的设备。核心网作为承载网络提供到数据网络的接口,为用户设备(user equipment,UE)提供通信连接、认证、管理、策略控制以及对数据业务完成承载等。网络设备通过无线或有线方式与核心网设备连接。核心网设备与网络设备可以是独立的不同的物理设备;或者核心网设备的功能与网络设备的逻辑功能集成在同一个物理设备上;又或者部分核心网设备的功能和部分的网络设备的功能集成在同一个物理设备上。
本申请实施例中提及的终端设备,可以是一种具有无线收发功能的设备,具体可以指用户设备(user equipment,UE)、接入终端、用户单元(subscriber unit)、用户站、移动台(mobile station)、远方站、远程终端、移动设备、用户终端、无线通信设备、用户代理或用户装置。终端设备还可以是卫星电话、蜂窝电话、智能手机、无线数据卡、无线调制解调器、机器类型通信设备、可以是无绳电话、会话启动协议(session initiation protocol,SIP)电话、无线本地环路(wireless local loop,WLL)站、个人数字处理(personal digital assistant,PDA)、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、车载设备、高空飞机上搭载的通信设备、可穿戴设备、无人机、机器人、设备到设备通信(device-to-device,D2D)中的终端、车到一切(vehicle to everything,V2X)中的终端、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程医疗(remote medical)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端或者未来通信网络中的终端设备等,本申请不作限制。
另外,本申请实施例中,终端设备可以是指用于实现终端的功能的装置,也可以是能够支持终端设备实现该功能的装置,例如芯片系统,该装置可以被安装在终端设备中。例如终端设备也可以是车辆探测器、加油站中的传感器。网络设备可以是指用于实现网络设备的功能的装置可以是网络设备,也可以是能够支持网络设备实现该功能的装置,例如芯片系统或可实现网络设备功能的组合器件、部件,该装置可以被安装在网络设备中。
本申请实施例中,发送侧的第一通信设备可以是终端设备,接收侧的第二通信设备可以是网络设备。或者,发送侧的第一通信设备可以是网络设备,接收侧的第二通信设备可以是终端设备。或者发送侧的第一通信设备和接收侧的第二通信设备均为终端设备,本申请实施 例对此不作限定。
随着通信网络的发展,人们对于数据传输的速率与可靠性要求越来越高。第三代合作伙伴计划(the 3rd Generation Partner Project,3GPP)Release 18的讨论指出通过一种线性包编码(Linear Packet Coding,LPC)技术,可以在不降低数据传输可靠性的同时提高数据传输效率。该方法步骤具体包括:首先发送端对上层的协议数据单元(Protocol Data Unit,PDU)进行拆分,得到K个原数据包;然后发送端将通过一个线性分组码(M,K)对这K个原数据包进行编码得到M个编码包;发送端为每个编码包加上包头后得到M个LPC PDU,并将该M个LPC PDU向下层传输;当接收端获取至少K个正确的LPC PDU后,通过移除LPC PDU的包头得到编码包;接收端再通过解码至少K个编码包确定K个原数据包;接收端级联该K个原数据包即可还原上层的PDU。
LPC层的引入能在不降低数据传输可靠性的同时改善频谱效率。一个分组数据汇聚协议(Packet Data Convergence Protocol,PDCP)PDU的长度通常为1500字节,LPC PDU的PDU头长度通常为3-4个字节,但是如表1所示,当拆分的原数据包数量越多时,现有技术的头开销就变得比较大,随着原数据包的个数上升,包头的开销会大幅度上升,头开销过高会影响数据的传输效率。除此之外,将每个LPC包封装成一个PDU向下层传递会造成PDU中的有效载荷(有效载荷是指PDU中除去所有包头以外的数据)占比大幅度下降。如表2所示,每个LPC PDU传输到无线链路控制(Radio Link Control,RLC)层时会加上新的RLC PDU头,其中,RLC PDU的PDU头长度通常为0-5个字节,当随着K值增加,每个RLC PDU的有效载荷占比显著下降,这也会影响数据的传输效率。
表1
原数据包个数(即K) | LPC PDU的长度 | 头开销占比 |
K=2 | 750字节+(3-4)字节 | 0.40%-0.53% |
K=4 | 375字节+(3-4)字节 | 0.80%-1.06% |
K=8 | 150字节+(3-4)字节 | 2.00%-2.67% |
K=12 | 125字节+(3-4)字节 | 2.40%-3.20% |
表2
原数据包的个数(即K) | RLC PDU的长度 | 有效载荷占比 |
K=2 | 750字节+(3-4)字节+(0-5)字节 | 98.80%-99.60% |
K=4 | 375字节+(3-4)字节+(0-5)字节 | 97.60%-99.20% |
K=8 | 150字节+(3-4)字节+(0-5)字节 | 94.00%-98.00% |
K=12 | 125字节+(3-4)字节+(0-5)字节 | 92.80%-97.60% |
下面进一步对本申请实施例提供的数据编码方法、数据解码方法及通信装置进行详细描述。
图2是本申请实施例提供的一种数据编码和数据解码方法的流程示意图。如图2所示,该方法包括如下步骤201~步骤207。图2所示的方法执行主体可以为第一通信设备和第二通信设备。或者,图2所示的方法执行主体可以为第一通信设备中的芯片和第二通信设备中的芯片。图2以第一通信设备和第二通信设备为方法的执行主体为例进行说明。
201、第一通信设备获取L个第一PDU对应的S个编码包。
本申请实施例中,第一PDU是第一通信设备通过第二协议层接收来自第一协议层输出的PDU,第一协议层为第二协议层对应的高层协议层。其中,在L个第一PDU中,一个第一PDU对应的编码包数量为一个或者多个,L为正整数,S为正整数,L个第一PDU对应的S 个编码包指L个第一PDU对应的编码包总数为S个。示例性的,在L个第一PDU中,第i个第一PDU对应的编码包数量为M
i,其中,i取值不超过L,且为正整数,
M
i为正整数。
可选地,第二协议层可以为PDCP层、RLC层或者媒介访问控制(Media Access Control,MAC)层等协议层,示例性的,第二协议层为RLC层,第一协议层为PDCP层,第一PDU为PDCP PDU。
可选地,第二协议层也可以为PDCP层、RLC层或者MAC层等协议层之间的一个新层,示例性的,第二协议层可以为网络编码(Network Coding,NC)层,该NC层在PDCP层和RLC层之间,第一协议层为PDCP层,第一PDU为PDCP PDU。
可选地,该第二层协议层也可以嵌套在PDCP层、RLC层、MAC层等协议层中,是其中的一部分,示例性的,第二协议层可以嵌套在RLC层中,是RLC层的一部分,第一协议层为PDCP层,第一PDU为PDCP PDU。
在一种可能的实现方式中,在第一通信设备获取L个第一PDU对应的S个编码包之前,该方法还包括:第一通信设备通过第二协议层接收来自第一协议层输出的目标第一PDU,该目标第一PDU为L个第一PDU中的任意一个第一PDU;第一通信设备基于预设数据包长度在目标第一PDU上增加指示字段和填充字段,指示字段用于指示填充字段的长度;第一通信设备基于预设数据包大小将增加指示字段和填充字段后的目标第一PDU分割为K个原数据包,一个原数据包长度等于预设数据包长度;第一通信设备对K个原数据包进行编码,生成M个编码包,编码包的长度与原数据包的长度相同,M大于K,编码包包头包括指示原数据包数量K的信息。基于该实现方式,第二通信设备只需获取到M个编码包中的K个或者K个以上的编码包,即可还原第一PDU,提高了数据传输的可靠性,同时也改善了频谱效率。
示例性的,如图3所示,第一通信设备在接收到第一协议层传输下来的目标第一PDU时,首先对目标第一PDU进行填充处理,得到增加指示字段和填充字段后的目标第一PDU。填充处理的目的是为了能基于预设数据包长度将填充后的第一PDU分割为整数个原数据包。图3中,指示字段加在了第一PDU的头部,填充字段加在了第一PDU的尾部,可选地,在预先定义偏移量的情况下,该指示字段可以放在第一PDU的任意位置,该指示字段的长度可以预先定义,本申请实施例对指示字段的长度不作限定。然后,第一通信设备基于预设数据包长度将增加指示字段和填充字段后的目标第一PDU进行分割处理,得到K个原数据包,其中每个原数据包的长度均为预设数据包长度。最后,第一通信设备可以对K个原数据包进行编码,得到M个编码包,可选地,第一通信设备可以通过线性分组码(M,K)对K个原数据包进行编码,得到M个编码包,在该实现方式中,第二通信设备只需获取到M个编码包中的K个或者K个以上的编码包,即可还原第一PDU。
在一种可能的实现方式中,L个第一PDU的序列号可以是连续的,也可以是非连续的但具有一定规律的,或者也可以是不具有规律的,本申请实施例对此不作限定。
在一种可能的实现方式中,编码包的包头包括第一信息,第一信息用于确定编码包对应的第一PDU的原数据包的数量。第二通信设备可以基于编码包包头的第一信息,确定该编码包对应的第一PDU的原数据包数量,从而可以判断当需要获取到多少个第一PDU对应的编码包,才能还原第一PDU。示例性的,当第二通信设备通过编码包包头确定该编码包对应的第一PDU的原数据包数量为K,从而确定需要获取K个及K个以上的第一PDU对应的编码包后,才能还原对应的第一PDU。
可选地,第一信息可以直接指示第一PDU的原数据包的数量。基于该实现方式,第二通信设备只需要获取到一个第一PDU对应的编码包,即可准确地确定第一PDU的原数据包数量。
可选地,第一信息以间接的方式指示第一PDU的原数据包数量,第二通信设备需要获取多个第一PDU对应的编码包,才能确定第一PDU的原数据包数量,具体实现方法为:第一通信设备对第二信息进行编码,生成第一编码信息,第二信息指示第一PDU的原数据包的数量,第二信息的长度为W比特,第一编码信息的长度为E比特,E≥W,W和E均为正整数;其中,第一PDU对应M个编码包,M个编码包中的第一信息组成第一编码信息,M为正整数,E大于或者等于M。示例性的,如图5所示,第二信息指示第一PDU原数据包数量,图5中,第二信息长度为4bit,第一通信设备对第二信息进行编码,生成7bit的第一编码信息,第一通信设备将该7bit的第一编码信息分为7份,一份即对应1bit的第一信息,并将7个第一信息分配到第一PDU对应的7个编码包包头中,每个编码包的包头包括1bit的第一信息,其中,为了能够保证每个编码包包头都能至少分配到1bit的第一信息,若第二信息的长度为Wbit,原数据包的数量K要求大于或等于W。相比于每个编码包的包头携带4bit的第二信息,降低了编码包的头开销,在该情况下,第二通信设备获取到的多个第一信息的总长度需要大于第二信息长度,第二通信设备才能还原第一编码信息,从而确定第一PDU的原数据包数量,即第二通信需要接收到至少4个第一PDU对应的编码包,即获取到至少来自4个不同编码包的第一信息,4个第一信息的长度为4bit等于第二信息的长度4bit,从而才能还原第一编码信息,确定第一PDU的原数据包数量。基于该实现方式,有利于降低编码包包头的头开销。
进一步可选地,第一通信设备可以通过(E,W)线性分组码对第二信息进行编码,生成第一编码信息。除此以外,第一通信设备还可以采用其它编码方式对第二信息进行编码,本申请实施例对此不作限定。
在一种可能的实现方式中,编码包包头还携带第三信息,第三信息用于确定编码包对应的第一PDU的序列号。在编码包包头携带第三信息的情况下,第一通信设备获取L个第一PDU,L个第一PDU的序列号也可以是具有规律的或者是不具有规律的,第一通信设备仅需通过第三信息即可确定第一PDU的序列号。基于该实现方式,可以使第一通信设备能够更加灵活地获取L个第一PDU。
可选地,该第三信息可以直接指示编码包对应的第一PDU的序列号。基于该实现方式,第二通信设备只需要获取到一个第一PDU对应的编码包,即可准确地确定第一PDU的序列号。
可选地,该第三信息可以间接指示编码包对应的第一PDU的序列号,第二通信设备需要获取多个第一PDU对应的编码包,才能确定第一PDU的序列号,具体实现方式为:第一对第四信息进行编码,生成第二编码信息,第四信息指示编码包对应的第一PDU的序列号,第四信息的长度为Q比特,第二编码信息的长度为P比特,P≥Q,P和Q均为正整数;其中,第一PDU对应M个编码包,M个编码包中的第三信息组成第二编码信息,M为正整数,P大于或者等于M。示例性的,如图4所示,第四信息指示编码包对应的第一PDU的序列号,图4中,第四信息长度为12bit,第一通信设备对第四信息进行编码,生成16bit的第二编码信息,然后第一通信设备将该16bit的第二编码信息分为8份,一份即对应2bit的第三信息,并将8个第三信息分配到第一PDU对应的8个编码包包头中,因此,每个编码包的包头包括2bit的第三信息,其中,为了能够保证每个编码包包头都能至少分配到1bit的第三信息,若 第四信息的长度为Qbit,原数据包的数量K要求大于或等于Q。相比于每个编码包的包头携带12bit的第四信息,降低了编码包的头开销,在该情况下,第二通信设备获取到的多个第三信息的总长度需要大于第四信息长度,第二通信设备才能还原第二编码信息,从而确定第一PDU的序列号,即第二通信需要接收到至少6个第一PDU对应的编码包,即获取到至少6个来自不同编码包的第三信息,6个第三信息的长度为12bit等于第三信息的长度12bit,从而才能还原第二编码信息,确定第一PDU的序列号。基于该实现方式,有利于降低编码包包头的头开销。
进一步可选地,第一通信设备可以通过(P,Q)线性分组码对第四信息进行编码,生成第二编码信息。除此以外,第一通信设备还可以采用其它编码方式对第四信息进行编码,本申请实施例对此不作限定。
202、第一通信设备对N个编码包组中的每个编码包组进行级联,得到N个第二PDU,N个编码包组为对S个编码包进行划分得到,一个编码包组包括一个或多个编码包,一个第二PDU对应一个编码包组,且包括编码包组中的所有编码包,一个第二PDU的PDU头携带第一序列号和位图。
本申请实施例中,一个编码包组包括一个或多个编码包,不同的编码包组包括的编码包不同,同一编码包组包括的任意两个编码包对应不同的第一PDU;一个第二PDU对应一个编码包组,且包括编码包组中的所有编码包。示例性的,如图6所示,图6中包括L个第一PDU对应的编码包,以及N个编码包组,L个第一PDU的序列号为1~L,其中,序列号为i的第一PDU对应的编码包数量为M
i,i为不超过L的正整数,在图6中,编码包的分组是基于编码包的序列号确定的,例如,编码包组1中包含了序列号为1~L的第一PDU对应的编码包中所有序列号为1的编码包,除此以外,编码包还可以有其它的分组方法,图6仅为本申请所提出的一种示例,本申请实施例对此不作限定。
本申请实施例中,第一序列号用于确定第二PDU包括的编码包对应的编码包编号,第二通信设备可以基于第一序列号来确定该第二PDU的对应的编码包组的序号,对第二PDU进行排序,以便于还原第一PDU,可选地,第一序列号指示第二PDU对应的编码包组序号。位图用于使第二通信设备确定该第二PDU中包含的编码包情况,位图包括H个比特,一个比特对应一个第一PDU,比特指示第二PDU中是否包括比特对应的第一PDU中的编码包,一个第二PDU包括的编码包数量小于或等于H,H为正整数。示例性的,位图包括8个比特,对应8个第一PDU,该8个第一PDU的序列号为1~8,位图中,第i个比特表示为序列号为i的第一PDU对应的编码包,其中,i为不超过8的正整数,若位图表示为00000001,则表示该第二PDU中只包含序列号为8的编码包,若位图表示为11111111,说明该第二PDU中包括序列号为1~8的8个第一PDU对应的8个编码包。基于该方法,第二PDU的PDU头可以分担编码包包头的部分参数,从而可以降低编码包的头开销。
在一种可能的实现方式中,第一通信设备可以通过A×N交织器对N个编码包组中的每个编码包进行级联。一个编码包组包括编码包的数量不超过A,一个第一PDU对应的编码包数量不超过N,其中,L小于或等于H,A小于或等于H,A大于或等于L,A为大于或等于1的正整数。示例性的,如图7所示,图7中包括了L个第一PDU对应的编码包,L个第一PDU对应的序列号包括1~L,按照第一PDU的序列号的顺序,从上到下依次排列,第i行对应的是第i个第一PDU的M
i个编码包,i为不超过L的正整数,图7中采用的交织器为列交织器(rowinterleaver),即每一列编码包为一组编码包组,一个编码包组对应一个第二PDU。又示例性的,如图8所示,交织器的形状也不一定是矩形,图8与图7不同之处在于,图8 中所采用的交织器为对角交织器(diagonal interleaver),其它部分与图7相同,在此不作赘述。除了上述的两种示例以外,第一通信设备还可以采用其它交织器或者交织方法对N个编码包组中的每个编码包进行级联。
在一种可能的实现方式中,第一通信设备可以通过A×N交织器对N个编码包组中的每个编码包进行级联。一个编码包组包括编码包的数量不超过A,L个第一PDU中任意X个第一PDU对应的编码包总数量不超过N,其中,
小于或等于H,A小于或等于H,且A大于或等于
A和X均为大于1的正整数。示例性的,如图9所示,图9中包括了L个第一PDU对应的编码包,L个第一PDU对应的序列号包括1~L,按照第一PDU的序列号的顺序,从上到下依次排列,其中,X表示每行编码包对应的第一PDU的数量,例如图9中,X等于2,即表示每行的编码包对应2个第一PDU,图9中采用的交织器为列交织器,即每一列编码包为一组编码包组,一个编码包组对应一个第二PDU。又示例性的,如图8所示,交织器的形状也不一定是矩形,图9与图10不同之处在于,图10中所采用的交织器为对角交织器,其它部分与图9相同,在此不作赘述。除了上述的两种示例以外,第一通信设备还可以采用其它交织器或者交织方法对N个编码包组中的每个编码包进行级联。
在一种可能的实现方式中,第一通信设备可以通过A×B交织器对N个编码包组中的每个编码包进行级联。一个编码包组包括编码包的数量不超过A,一个第一PDU对应的编码包数量不超过B,其中,A小于或等于L,A小于或等于H,N=Y×B,
A和Y均为大于1的正整数。示例性的,如图11所示,图11中包括了L个第一PDU对应的编码包,L个第一PDU对应的序列号包括1~L,按照第一PDU的序列号的顺序,从上到下依次排列,Y表示L个第一PDU需要通过交织器进行Y次交织,例如,图11中,Y为2,指交织器需要进行两次交织,其中,第一次是对序列号1至A的第一PDU对应的编码包进行交织,第二次是对序列号为A+1至L的第一PDU对应的编码包进行交织,因此,最后生成的第二PDU为2*B个。图11中采用的交织器为列交织器,即每一列编码包为一组编码包组,一个编码包组对应一个第二PDU。又示例性的,如图12所示,交织器的形状也不一定是矩形,图11与图12不同之处在于,图12中所采用的交织器为对角交织器,其它部分与图11相同,在此不作赘述。除了上述两种示例以外,第一通信设备还可以采用其它交织器或者交织方法对N个编码包组中的每个编码包进行级联。
在一种可能的实现方式中,第二PDU的PDU头携带第二序列号,第二序列号用于确定第二PDU包括的编码包对应的第一PDU的序列号,在该情况下,编码包包头无需携带第三信息,第一通信设备获取的L个第一PDU的序列号要求为连续的,或者是非连续的但具有一定规律的,该第二序列号可以为L个第一PDU的序列号中最大的或者最小序列号,也可以为任意一个第一PDU的序列号,但需要预定义每个第一PDU序列号对应于该第二序列号的偏移值,以便于第二通信设备能够根据该第二序列号确定第二PDU中包括的编码包对应的第一PDU的序列号。基于该实现方式,编码包包头无需包括第一PDU的序列号,可以将第一PDU的序列号通过第二PDU的PDU头去分担,从而可以降低编码包的头开销。
示例性的,如图13所示,图13是本申请实施例提供的一种第二PDU的PDU头结构示意图。该第二PDU的PDU头包括5个字节,在第1个字节中,包括D/C字段,R字段,第二序列号,其中,D/C字段长度为1bit,D/C字段用于指示该第二PDU包括的编码包是否是控制包,若该字段为D,则不为控制包,若该字段为C,则为控制包,两个R字段为保留字段,共3bit。用第一字节中的4bit和第2个字节表示第二序列号,第二序列号用于确定第二PDU包括的编码包对应的第一PDU的序列号。第3个字节表示第一序列号,第一序列号用 于确定第二PDU包括的编码包对应的编码包编号,第4个字节和第5个表示位图,位图包括16个比特,一个比特对应一个第一PDU,该比特指示第二PDU中是否包括比特对应的第一PDU中的编码包。图13仅为本申请实施例提供的一种第二PDU的PDU头的结构示意图,该第二PDU的PDU头结构还可以为其它形式,本申请实施例对第二PDU的PDU头结构不作限定。
203、第一通信设备输出N个第二PDU。
本申请实施例中,第一通信设备输出N个第二PDU,具体地可以为,第一通信设备将N个第二PDU传输至第三协议层处理,第三协议层为第二协议层的低层协议层,示例性的,若第二协议层为RLC层,则第一通信设备将N个第二PDU传输至MAC层进行处理。
204、第一通信设备向第二通信设备发送目标数据包。对应的,第二通信设备接收第一通信设备发送的目标数据包。
本申请实施例中,第一通信设备向第二通信设备发送一个或者多个目标数据包,其中,该目标数据包是基于N个第二PDU生成的。第二通信设备接收来自第一通信设备发送的目标数据包,其中,由于数据传输的不稳定性,因此,第二通信设备可能只能接收到第一通信设备发送的部分目标数据包。
205、第二通信设备获取G个第二PDU。
本申请实施例中,第二PDU是第二通信设备通过第二协议层接收来自第三协议层输出的PDU。一个第二PDU对应一个编码包组,且包括编码包组中的所有编码包;一个编码包组包括一个或多个编码包,不同的编码包组包括的编码包不同,同一编码包组包括的任意两个编码包对应不同的第一PDU;一个第二PDU的PDU头携带第一序列号和位图。第二PDU的PDU头携带的参数可参见步骤202中的描述,本申请实施例在此不作赘述。由于数据传输存在不稳定性,第一通信设备输出了N个第二PDU,但第二通信设备不一定获取到第一通信设备输出的所有第二PDU,第二通信设备可能只能获取到N个第二PDU中的G个第二PDU,G小于或者等于N。
206、第二通信设备分割G个第二PDU得到F个编码包。
在一种可能的实现方式中,第二通信设备分割G个第二PDU得到F个编码包,具体实现方式为:第二通信设备基于预设数据包长度分割G个第二PDU得到F个编码包,一个编码包的长度为预设数据包长度。由于第一通信设备基于预设数据包大小将增加指示字段和填充字段后的目标第一PDU分割为K个原数据包,一个原数据包长度等于预设数据包长度,编码包的长度与原数据包的长度相同,因此,第二通信设备能够基于预设数据包长度准确地分割第二PDU得到编码包。
207、第二通信设备基于G个第二PDU的PDU头携带的第一序列号和位图,还原一个或多个第一PDU。
本申请实施例中,第二PDU的PDU头携带第一序列号和位图,第一序列号用于确定第二PDU包括的编码包对应的编码包编号,第二通信设备可以根据第二PDU的PDU头携带的第一序列号确定该第二PDU对应的编码包的位置顺序,从而将G个编码包按序排列。位图用于使第二通信设备确定该第二PDU中包含的编码包情况,位图包括H个比特,一个比特对应一个第一PDU,比特指示第二PDU中是否包括比特对应的第一PDU中的编码包,一个第二PDU包括的编码包数量小于或等于H,H为正整数。基于该实现方式,可以通过第二PDU的PDU头分担编码包包头中的参数,有利于降低编码包包头的头开销。
在一种可能的实现方式中,第二通信设备还原一个或多个第一PDU的具体实现方式可以 为,通过A×N交织器还原一个或多个第一PDU。该交织器的类型可以是列交织器或者对角交织器,本申请实施例对此不作限定。一个编码包组包括编码包的数量不超过A,一个第一PDU对应的编码包数量不超过N,其中,L小于或等于H,A小于或等于H,A大于或等于L,A为大于或等于1的正整数。示例性的,如图7和图8所示,图7中交织器的类型是列交织器,图8中交织器的类型是对角交织器,本申请实施例对交织器的类型不作限定。第二通信设备根据第二PDU的PDU头携带的第一序列号,从左往右依次排列,并根据位图和编码包的位置的对应关系,确定各个编码包的具体位置。除了上述的两种示例以外,第二通信设备还可以采用其它交织器或者交织方法对还原第一PDU。
在一种可能的实现方式中,可选地,第二通信设备还原一个或多个第一PDU的具体实现方式可以为,通过A×N交织器还原一个或多个第一PDU。一个编码包组包括编码包的数量不超过A,L个第一PDU中任意X个第一PDU对应的编码包总数量不超过N,其中,
小于或等于H,A小于或等于H,且A大于或等于
A和X均为大于1的正整数。示例性的,如图9和图10所示,图9中交织器的类型是列交织器,图10中交织器的类型是对角交织器,本申请实施例对交织器的类型不作限定。第二通信设备根据第二PDU的PDU头携带的第一序列号,从左往右依次排列,并根据位图和编码包的位置的对应关系,确定各个编码包的具体位置。除了上述的两种示例以外,第二通信设备还可以采用其它交织器或者交织方法对还原第一PDU。
在一种可能的实现方式中,第二通信设备还原一个或多个第一PDU的具体实现方式可以为,通过A×B交织器还原一个或多个第一PDU。该交织器的类型可以是列交织器或者对角交织器,本申请实施例对此不作限定。一个编码包组包括编码包的数量不超过A,一个第一PDU对应的编码包数量不超过B,其中,A小于或等于L,A小于或等于H,N=Y×B,
A和Y均为大于1的正整数。示例性的,如图11和图12所示,图11中交织器的类型是列交织器,图12中交织器的类型是对角交织器,本申请实施例对交织器的类型不作限定。第二通信设备根据第二PDU的PDU头携带的第一序列号,从左往右依次排列,并根据位图和编码包的位置的对应关系,确定各个编码包的具体位置。除了上述的两种示例以外,第二通信设备还可以采用其它交织器或者交织方法对还原第一PDU。
需要说明的是,第二通信设备采用的交织器或者交织方法与第一通信设备的交织器或者交织方法是预先确定的,且两者相同的。
在一种可能的实现方式中,第二通信设备还原一个或多个第一PDU的具体实现方式为,第二通信设备基于目标第一PDU对应的编码包包头携带的第一信息确定目标第一PDU的原数据包数量;若在F个编码包中,目标第一PDU对应的编码包数量V大于或者等于目标第一PDU的原数据包数量,则第二通信设备基于目标第一PDU对应的V个编码包还原目标第一PDU,其中,目标第一PDU对应的编码包总数量为M,V小于或等于M,V为正整数。由于数据传输存在不稳定性,第一通信设备输出了N个第二PDU,但第二通信设备不一定获取到第一通信设备发送的所有第二PDU,因此,第二通信设备获取到的目标第一PDU的编码包数量V可能小于目标第一PDU的原数据包数量,也可能大于或等于目标第一PDU的原数据包数量。若获取到的目标第一PDU的编码包数量V大于或等于目标第一PDU的原数据包数量,则第二通信设备可以还原目标第一PDU;获取到的目标第一PDU的编码包数量V小于目标第一PDU的原数据包数量,则第二通信设备无法还原目标第一PDU。基于该实现方式,能够在不降低数据传输可靠性的同时提高数据的传输效率。
可选地,第一信息可以直接指示第一PDU的原数据包的数量。基于该实现方式,第二通 信设备只需要获取到一个第一PDU对应的编码包,即可准确地确定第一PDU的原数据包数量。
可选地,第一信息以间接的方式指示第一PDU的原数据包数量,第二通信设备需要获取多个第一PDU对应的编码包,才能确定第一PDU的原数据包数量,第二通信设备基于目标第一PDU对应的编码包包头携带的第一信息确定目标第一PDU的原数据包数量,具体实现方式为:第二通信设备基于目标第一PDU对应的V个编码包包头携带的第一信息还原第一编码信息,第一编码信息是基于第二信息编码生成的,第二信息指示目标第一PDU的原数据包的数量,第二信息的长度为W比特,第一信息的长度为R比特,R×V≥W,W和R均为正整数;第二通信设备根据第一编码信息对应的第二信息确定目标第一PDU的原数据包的数量。示例性的,第一编码信息的长度为7bit,第一编码信息是第一通信设备通过编码第二信息生成的,第二信息长度为4bit,第一通信设备将该7bit的第一编码信息分为7份,一份即对应1bit的第一信息,并将7个第一信息分配到第一PDU对应的7个编码包包头中,因此,每个编码包的包头包括1bit的第一信息,相比于每个编码包的包头携带4bit的第二信息,降低了编码包的头开销,在该情况下,第二通信设备获取到的多个第一信息的总长度需要大于第二信息长度,第二通信设备才能还原第一编码信息,从而确定第一PDU的原数据包数量,即第二通信需要接收到至少4个第一PDU对应的编码包,即获取到至少4个不同的第一信息,4个第一信息的长度为4bit等于第二信息的长度4bit,从而才能还原第一编码信息,确定第一PDU的原数据包数量。基于该实现方式,有利于降低编码包包头的头开销。
在一种可能的实现方式中,第二PDU的PDU头携带第二序列号,第二序列号用于确定第二PDU包括的编码包对应的第一PDU的序列号。其中,第二通信设备获取到的G个第二PDU的第二序列号均相同。需要说明的是,第二通信设备会获取到多个第二PDU,多个第二PDU中,存在部分第二PDU对应的第一PDU是相同的,也存在部分第二PDU对应的第一PDU是不相同,原因是,第二通信设备可能进行了多次编码包的级联,例如,第一次级联的是序列号1~8的第一PDU对应的编码包,第二次级联的是序列号9~16的第一PDU对应的编码包,第二通信设备获取到的多个第二PDU中,可能存在一些第二PDU对应序列1~8的第一PDU,还有一些第二PDU对应的序列9~16的第一PDU。第二通信设备可以基于第二序列号确定分类第二PDU,将经过同一次级联后得到的第二PDU分在一起,从而还原第一PDU。基于该实现方式,有利于能够更加准确地还原第二PDU。
在又一种可能的实现方式中,目标第一PDU对应的编码包包头还包括第三信息,第三信息用于确定目标第一PDU的序列号。
可选地,该第三信息可以直接指示编码包对应的第一PDU的序列号。基于该实现方式,第二通信设备只需要获取到一个第一PDU对应的编码包,即可准确地确定第一PDU的序列号。
可选地,该第三信息可以间接指示编码包对应的第一PDU的序列号,第二通信设备需要获取多个第一PDU对应的编码包,才能确定第一PDU的序列号,具体实现方式为:第二通信设备基于目标第一PDU对应的V个编码包包头携带的第三信息还原第二编码信息,第四信息的长度为Q比特,第二编码信息是基于第四信息编码生成的,第四信息指示目标第一PDU的序列号,第三信息的长度为U比特,U×V≥Q,Q和U均为正整数且大于1;根据第二编码信息对应的第四信息确定目标第一PDU的序列号。示例性的,第二编码信息长度为16bit,第二编码信息是第一通信设备基于第四信息编码后生成的,第四信息长度为12bit,然后第一通信设备将该16bit的第二编码信息分为8份,一份即对应2bit的第三信息,并将8个第三信 息分配到第一PDU对应的8个编码包包头中,因此,每个编码包的包头包括2bit的第三信息,相比于每个编码包的包头携带12bit的第四信息,降低了编码包的头开销,在该情况下,第二通信设备获取到的多个第三信息的总长度需要大于第四信息长度,第二通信设备才能还原第二编码信息,从而确定目标第一PDU的序列号,即第二通信需要接收到至少6个第一PDU对应的编码包,即获取到至少6个来自不同编码包的第三信息,6个第三信息的长度为12bit等于第三信息的长度12bit,从而才能还原第二编码信息,确定第一PDU的序列号。基于该实现方式,有利于降低编码包包头的头开销。
在一种可能的实现方式中,第二通信设备在确定目标第一PDU对应的编码包数量大于或者等于目标第一PDU对应的原数据包数量后,第二通信设备基于目标第一PDU对应的V个编码包还原目标第一PDU的具体实现方式可以为:首先第二通信设备基于V个编码包进行解码,得到目标第一PDU对应的K个原数据包;然后第二通信设备根据预先定义的填充规则,确定指示字段位置并读取指示字段所指示的填充字段长度;最后第二通信设备移除K个原数据包中的指示字段和填充字段,将移除指示字段和填充字段的K个原数据包按照编号顺序进行级联,还原目标第一PDU。
下面采用一个实际的例子,体现本申请所描述的有益效果。第一通信设备获取16个第一PDU对应的每个编码包,一个第一PDU对应的编码包数量不超过16,编码包的包头仅携带指示第一PDU的原数据包数量K值,编码包的包头长为1字节;第一通信设备通过16×16交织器对16个编码包组中的每个编码包组进行级联,得到16个第二PDU,第二PDU的PDU头结构如图13所示,该PDU头的长度为5个字节。其中,一个第一PDU的长度为1500字节。表3展示了采用本申请所提出的方法编码包的头开销大小,对比表1所示,可见本申请所提出的方法能够降低编码包的头开销。假定第三协议层为RLC层,第二PDU传输到RLC层时会加上新的RLC PDU头,RLC PDU的PDU头长度通常为0-5个字节,如表4展示了采用本申请所提出的方法得到的RLC PDU的有效载荷比,对比表2所示,基于本申请所描述的方法,也能提高RLC PDU的有效载荷比。
表3
表4
为了实现上述本申请实施例提供的方法中的各功能,第一通信设备和第二通信设备均可以包括硬件结构和/或软件模块,以硬件结构、软件模块、或硬件结构加软件模块的形式来实现上述各功能。上述各功能中的某个功能以硬件结构、软件模块、还是硬件结构加软件模块的方式来执行,取决于技术方案的特定应用和设计约束条件。
请参见图14,图14示出了本申请实施例的一种通信装置的结构示意图。该通信装置可以是第一通信设备或者第二通信设备,也可以是第一通信设备或者第二通信设备中的装置,或者是能够和第一通信设备或者第二通信设备匹配使用的装置。一种可能的实现中,该通信装置可以包括执行上述方法实施例中第一通信设备或者第二通信设备执行的方法/操作/步骤/动作所一一对应的模块或单元,该单元可以是硬件电路,也可是软件,也可以是硬件电路结合软件实现。
一种可能的实现中,该装置可以是,也可以是第一通信设备中的装置,或者是能够和第一通信设备匹配使用的装置。其中,该通信装置还可以为芯片系统。
图14所示的通信装置可以是第一通信设备,也可以是第一通信设备中的装置,或者是能够和第一通信设备匹配使用的装置。其中,该通信装置还可以为芯片系统。该装置可以用于执行上述图2所描述的方法实施例中第一通信设备的部分或全部功能。图14所示的通信装置可以包括通信单元1401和处理单元1402。其中,处理单元1402,用于进行数据处理。通信单元1401集成有接收单元和发送单元。通信单元1401也可以称为收发单元。或者,也可将通信单元1401拆分为接收单元和发送单元。下文的处理单元1402和通信单元1401同理,下文不再赘述。其中:
该通信单元1401,用于获取L个第一协议数据单元PDU对应的S个编码包,一个第一PDU对应的编码包数量为一个或者多个,L为正整数,S为正整数;该处理单元1402,用于对N个编码包组中的每个编码包组进行级联,得到N个第二PDU,N个编码包组为对S个编码包进行划分得到,一个编码包组包括一个或多个编码包,不同的编码包组包括的编码包不同,同一编码包组包括的任意两个编码包对应不同的第一PDU;一个第二PDU对应一个编码包组,且包括编码包组中的所有编码包;一个第二PDU的PDU头携带第一序列号和位图,第一序列号用于确定第二PDU包括的编码包对应的编码包编号,位图包括H个比特,一个比特对应一个第一PDU,比特指示第二PDU中是否包括比特对应的第一PDU中的编码包,一个第二PDU包括的编码包数量小于或等于H,H为正整数;该通信单元1401,还用于输出N个第二PDU。
在一种可能的实现方式中,一个编码包组包括编码包的数量不超过A,一个第一PDU对应的编码包数量不超过N,其中,L小于或等于H,A小于或等于H,A大于或等于L,A为大于或等于1的正整数。
在一种可能的实现方式中,一个编码包组包括编码包的数量不超过A,L个第一PDU中任意X个第一PDU对应的编码包总数量不超过N,其中,
小于或等于H,A小于或等于H,且A大于或等于
A和X均为大于1的正整数。
在一种可能的实现方式中,编码包的包头包括第一信息,第一信息用于确定编码包对应的第一PDU的原数据包的数量。
在一种可能的实现方式中,该处理单元1402,还用于对第二信息进行编码,生成第一编码信息,第二信息用于指示第一PDU的原数据包的数量,第二信息的长度为W比特,第一编码信息的长度为E比特,E≥W,W和E均为正整数;其中,第一PDU对应M个编码包,M个编码包中的第一信息组成第一编码信息,M为正整数,E大于或者等于M。
在一种可能的实现方式中,第二PDU的PDU头携带第二序列号,第二序列号用于确定第二PDU包括的编码包对应的第一PDU的序列号。
在一种可能的实现方式中,编码包包头还携带第三信息,第三信息用于确定编码包对应的第一PDU的序列号。
在一种可能的实现方式中,该处理单元1402,还用于对第四信息进行编码,生成第二编码信息,第四信息指示编码包对应的第一PDU的序列号,第四信息的长度为Q比特,第二编码信息的长度为P比特,P≥Q,P和Q均为正整数;其中,第一PDU对应M个编码包,M个编码包中的第三信息组成第二编码信息,M为正整数,P大于或者等于M。
通信装置的其他可能的实现方式,可参见上述图2对应的方法实施例中对第一通信设备功能的相关描述,在此不赘述。
另一种可能的实现中图14所示的通信装置可以是第二通信设备,也可以是第二通信设备中的装置,或者是能够和第二通信设备匹配使用的装置。其中,该通信装置还可以为芯片系统。该装置可以用于执行上述图2所描述的方法实施例中第二通信设备的部分或全部功能。图14所示的通信装置可以包括通信单元1401和处理单元1402。其中:
该通信单元1401,用于获取G个第二协议数据单元PDU,一个第二PDU对应一个编码包组,且包括编码包组中的所有编码包;一个编码包组包括一个或多个编码包,不同的编码包组包括的编码包不同,同一编码包组包括的任意两个编码包对应不同的第一PDU;一个第二PDU的PDU头携带第一序列号和位图,第一序列号用于确定第二PDU包括的编码包对应的编码包编号,位图包括H个比特,一个比特对应一个第一PDU,比特指示第二PDU中是否包括比特对应的第一PDU中的编码包,一个第二PDU包括的编码包数量小于或等于H,H为正整数;该处理单元1402,用于分割G个第二PDU得到F个编码包,F为正整数;该处理单元1402,还用于基于G个第二PDU的PDU头携带的第一序列号和位图,还原一个或多个第一PDU。
在一种可能的实现方式中,一个编码包组包括编码包的数量不超过A,一个第一PDU对应的编码包数量不超过N,G个第二PDU对应L个第一PDU,其中,L小于或等于H,A小于或等于H,A大于或等于L,L和A为大于1的正整数。
在一种可能的实现方式中,一个编码包组包括编码包的数量不超过A,G个第二PDU对应L个第一PDU,L个第一PDU中任意X个第一PDU对应的编码包总数量不超过N,其中,
小于或等于H,A小于或等于H,且A大于或等于
L、A和X为均大于1的正整数。
在一种可能的实现方式中,一个编码包组包括编码包的数量不超过A,一个第一PDU对应的编码包数量不超过B,G个第二PDU对应L个第一PDU,其中,A小于或等于L,A小于或等于H,N=Y×B,
A、L和Y均为大于1的正整数。
在一种可能的实现方式中,该处理单元1402还原一个或多个第一PDU时,该处理单元 1402具体用于:基于目标第一PDU对应的编码包包头携带的第一信息确定目标第一PDU的原数据包数量;若在F个编码包中,目标第一PDU对应的编码包数量V大于或者等于目标第一PDU的原数据包数量,则基于目标第一PDU对应的V个编码包还原目标第一PDU,其中,目标第一PDU对应的编码包总数量为M,V小于或等于M,V为正整数。
在一种可能的实现方式中,该处理单元1402基于目标第一PDU对应的编码包包头携带的第一信息确定目标第一PDU的原数据包数量,该处理单元1402具体用于:基于目标第一PDU对应的V个编码包包头携带的第一信息还原第一编码信息,第一编码信息是基于第二信息编码生成的,第二信息指示目标第一PDU的原数据包的数量,第二信息的长度为W比特,第一信息的长度为R比特,R×V≥W,W和R均为正整数;根据第一编码信息对应的第二信息确定目标第一PDU的原数据包的数量。
在一种可能的实现方式中,第二PDU的PDU头携带第二序列号,第二序列号用于确定第二PDU包括的编码包对应的第一PDU的序列号。
在一种可能的实现方式中,目标第一PDU对应的编码包包头还包括第三信息,第三信息用于确定目标第一PDU的序列号。
在一种可能的实现方式中,该处理单元1402,还用于:基于目标第一PDU对应的V个编码包包头携带的第三信息还原第二编码信息,第四信息的长度为Q比特,第二编码信息是基于第四信息编码生成的,第四信息指示目标第一PDU的序列号,第三信息的长度为U比特,U×V≥Q,Q和U均为正整数且大于1;根据第二编码信息对应的第四信息确定目标第一PDU的序列号。
通信装置的其他可能的实现方式,可参见上述图2对应的方法实施例中对第二通信设备功能的相关描述,在此不赘述。
图15给出了一种通信装置的结构示意图。所述通信装置1500可以是上述方法实施例中的第一通信设备,还可以是支持第一通信设备实现上述方法的芯片、芯片系统、或处理器等。该通信装置可用于实现上述方法实施例中描述的方法,具体可以参见上述方法实施例中的说明。
或者,所述通信装置1500可以是上述方法实施例中的第二通信设备,还可以是支持第二通信设备实现上述方法的芯片、芯片系统、或处理器等。该通信装置可用于实现上述方法实施例中描述的方法,具体可以参见上述方法实施例中的说明。
所述通信装置1500可以包括一个或多个处理器1501。所述处理器1501可以是通用处理器或者专用处理器等。例如可以是基带处理器或中央处理器。基带处理器可以用于对通信协议以及通信数据进行处理,中央处理器可以用于对通信装置(如,基站、基带芯片,终端、终端芯片,DU或CU等)进行控制,执行软件程序,处理软件程序的数据。
可选的,所述通信装置1500中可以包括一个或多个存储器1502,其上可以存有指令1504,所述指令可在所述处理器1501上被运行,使得所述通信装置1500执行上述方法实施例中描述的方法。可选的,所述存储器1502中还可以存储有数据。所述处理器1501和存储器1502可以单独设置,也可以集成在一起。
可选的,所述通信装置1500还可以包括收发器1505、天线1506。所述收发器1505可以称为收发单元、收发机、或收发电路等,用于实现收发功能。收发器1505可以包括接收器和发送器,接收器可以称为接收机或接收电路等,用于实现接收功能;发送器可以称为发送机或发送电路等,用于实现发送功能。
所述通信装置1500为第一通信设备:处理器1501用于执行上述方法实施例中第一通信设备的数据处理操作。收发器1505用于执行上述方法实施例中第一通信设备的数据收发操作。
或者,所述通信装置1500为第二通信设备:处理器1501用于执行上述方法实施例中第二通信设备的数据处理操作。收发器1505用于执行上述方法实施例中第二通信设备的数据收发操作。
另一种可能的设计中,处理器1501中可以包括用于实现接收和发送功能的收发器。例如该收发器可以是收发电路,或者是接口,或者是接口电路。用于实现接收和发送功能的收发电路、接口或接口电路可以是分开的,也可以集成在一起。上述收发电路、接口或接口电路可以用于代码/数据的读写,或者,上述收发电路、接口或接口电路可以用于信号的传输或传递。
又一种可能的设计中,可选的,处理器1501可以存有指令1503,指令1503在处理器1501上运行,可使得所述通信装置1500执行上述方法实施例中描述的方法。指令1503可能固化在处理器1501中,该种情况下,处理器1501可能由硬件实现。
又一种可能的设计中,通信装置1500可以包括电路,所述电路可以实现前述方法实施例中发送或接收或者通信的功能。本申请实施例中描述的处理器和收发器可实现在集成电路(integrated circuit,IC)、模拟IC、射频集成电路RFIC、混合信号IC、专用集成电路(application specific integrated circuit,ASIC)、印刷电路板(printed circuit board,PCB)、电子设备等上。
以上实施例描述中的通信装置可以是终端设备、第一通信设备或者第二通信设备,但本申请实施例中描述的通信装置的范围并不限于此,而且通信装置的结构可以不受图15的限制。通信装置可以是独立的设备或者可以是较大设备的一部分。例如所述通信装置可以是:
(1)独立的集成电路IC,或芯片,或,芯片系统或子系统;
(2)具有一个或多个IC的集合,可选的,该IC集合也可以包括用于存储数据,指令的存储部件;
(3)ASIC,例如调制解调器(Mobile Station Modem,MSM);
(4)可嵌入在其他设备内的模块;
(5)接收机、终端、智能终端、蜂窝电话、无线设备、手持机、移动单元、车载设备、网络设备、云设备、人工智能设备等等;
(6)其他等等。
对于通信装置可以是芯片或芯片系统的情况,可参见图16所示的芯片的结构示意图。图16所示的芯片包括处理器1601、接口1602。可选的,还可包括存储器1603。其中,处理器1601的数量可以是一个或多个,接口1602的数量可以是多个。
一种设计中,对于芯片用于实现本申请实施例中终端设备的功能的情况:
所述接口1602,用于输入或输出信号;
所述处理器1601,用于执行上述方法实施例中终端设备的数据处理操作。
另一种设计中,对于芯片用于实现本申请实施例中网络设备的功能的情况:
所述接口1602,用于输入或输出信号;
所述处理器1601,用于执行上述方法实施例中网络设备的数据处理操作。
可以理解的是,本申请实施例中的一些可选的特征,在某些场景下,可以不依赖于其他特征,比如其当前所基于的方案,而独立实施,解决相应的技术问题,达到相应的效果,也可以在某些场景下,依据需求与其他特征进行结合。相应的,本申请实施例中给出的通信装置也可以相应的实现这些特征或功能,在此不予赘述。
应理解,本申请实施例中的处理器可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(digital signal processor,DSP)、ASIC、现场可编程门阵列(field programmable gate array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
可以理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
本申请还提供了一种计算机可读介质,用于储存计算机软件指令,当所述指令被通信装置执行时,实现上述任一方法实施例的功能。
本申请还提供了一种计算机程序产品,用于储存计算机软件指令,当所述指令被通信装置执行时,实现上述任一方法实施例的功能。
上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,高密度数字视频光盘(digital video disc,DVD))、或者半导体介质(例如,固态硬盘(solid state drive,SSD))等。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (24)
- 一种数据编码的方法,其特征在于,所述方法包括:获取L个第一协议数据单元PDU对应的S个编码包,一个所述第一PDU对应的编码包数量为一个或者多个,所述L为正整数,所述S为正整数;对N个编码包组中的每个所述编码包组进行级联,得到N个第二PDU,所述N个编码包组为对所述S个编码包进行划分得到,一个所述编码包组包括一个或多个编码包,不同的所述编码包组包括的编码包不同,同一所述编码包组包括的任意两个编码包对应不同的第一PDU;一个所述第二PDU对应一个所述编码包组,且包括所述编码包组中的所有编码包;一个所述第二PDU的PDU头携带第一序列号和位图,所述第一序列号用于确定所述第二PDU包括的编码包对应的编码包编号,所述位图包括H个比特,一个所述比特对应一个所述第一PDU,所述比特指示所述第二PDU中是否包括所述比特对应的所述第一PDU中的编码包,一个所述第二PDU包括的编码包数量小于或等于所述H,所述H为正整数;输出所述N个第二PDU。
- 根据权利要求1所述的方法,其特征在于,一个所述编码包组包括编码包的数量不超过A,一个所述第一PDU对应的编码包数量不超过所述N,其中,所述L小于或等于所述H,所述A小于或等于所述H,所述A大于或等于所述L,所述A为大于或等于1的正整数。
- 根据权利要求1~4中任意一项所述的方法,其特征在于,所述编码包的包头包括第一信息,所述第一信息用于确定所述编码包对应的第一PDU的原数据包的数量。
- 根据权利要求5中所述的方法,其特征在于,所述方法还包括:对第二信息进行编码,生成第一编码信息,所述第二信息用于指示第一PDU的原数据包的数量,所述第二信息的长度为W比特,所述第一编码信息的长度为E比特,E≥W,所述W和所述E均为正整数;其中,所述第一PDU对应M个编码包,所述M个编码包中的第一信息组成所述第一编码信息,所述M为正整数,E大于或者等于M。
- 根据权利要求5或6所述的方法,其特征在于,所述第二PDU的PDU头携带第二序列号,所述第二序列号用于确定所述第二PDU包括的编码包对应的第一PDU的序列号。
- 根据权利要求5或6所述的方法,其特征在于,所述编码包包头还携带第三信息,所 述第三信息用于确定所述编码包对应的第一PDU的序列号。
- 根据权利要求8所述的方法,其特征在于,所述方法还包括:对第四信息进行编码,生成第二编码信息,所述第四信息指示所述编码包对应的第一PDU的序列号,所述第四信息的长度为Q比特,所述第二编码信息的长度为P比特,P≥Q,所述P和所述Q均为正整数;其中,所述第一PDU对应M个编码包,所述M个编码包中的第三信息组成所述第二编码信息,所述M为正整数,P大于或者等于M。
- 一种数据解码的方法,其特征在于,所述方法包括:获取G个第二协议数据单元PDU,一个所述第二PDU对应一个编码包组,且包括所述编码包组中的所有编码包;一个编码包组包括一个或多个编码包,不同的编码包组包括的编码包不同,同一编码包组包括的任意两个编码包对应不同的第一PDU;一个所述第二PDU的PDU头携带第一序列号和位图,所述第一序列号用于确定所述第二PDU包括的编码包对应的编码包编号,所述位图包括H个比特,一个所述比特对应一个第一PDU,所述比特指示所述第二PDU中是否包括所述比特对应的第一PDU中的编码包,一个所述第二PDU包括的编码包数量小于或等于所述H,所述H为正整数;分割所述G个第二PDU得到F个编码包,所述F为正整数;基于所述G个第二PDU的PDU头携带的所述第一序列号和位图,还原一个或多个第一PDU。
- 根据权利要求10所述的方法,其特征在于,一个所述编码包组包括编码包的数量不超过A,一个所述第一PDU对应的编码包数量不超过所述N,所述G个第二PDU对应L个第一PDU,其中,所述L小于或等于所述H,所述A小于或等于所述H,所述A大于或等于所述L,所述L和所述A为大于或等于1的正整数。
- 根据权利要求10~13中任意一项所述的方法,其特征在于,所述还原一个或多个第一PDU,包括:基于所述目标第一PDU对应的编码包包头携带的第一信息确定所述目标第一PDU的原数据包数量;若在F个编码包中,所述目标第一PDU对应的编码包数量V大于或者等于所述目标第 一PDU的原数据包数量,则基于所述目标第一PDU对应的V个编码包还原所述目标第一PDU,其中,所述目标第一PDU对应的编码包总数量为M,所述V小于或等于所述M,所述V为正整数。
- 根据权利要求14所述的方法,其特征在于,基于目标第一PDU对应的编码包包头携带的第一信息确定所述目标第一PDU的原数据包数量,包括:基于所述目标第一PDU对应的V个编码包包头携带的第一信息还原第一编码信息,所述第一编码信息是基于第二信息编码生成的,所述第二信息指示所述目标第一PDU的原数据包的数量,所述第二信息的长度为W比特,所述第一信息的长度为R比特,R×V≥W,所述W和所述R均为正整数;根据所述第一编码信息对应的第二信息确定所述目标第一PDU的原数据包的数量。
- 根据权利要求14或15所述的方法,其特征在于,所述第二PDU的PDU头携带第二序列号,所述第二序列号用于确定所述第二PDU包括的编码包对应的第一PDU的序列号。
- 根据权利要求14或15所述的方法,其特征在于,所述目标第一PDU对应的编码包包头还包括第三信息,所述第三信息用于确定所述目标第一PDU的序列号。
- 根据权利要求17所述的方法,其特征在于,所述方法还包括:基于所述目标第一PDU对应的V个编码包包头携带的第三信息还原第二编码信息,所述第四信息的长度为Q比特,所述第二编码信息是基于第四信息编码生成的,所述第四信息指示所述目标第一PDU的序列号,所述第三信息的长度为U比特,U×V≥Q,所述Q和所述U均为正整数且大于1;根据所述第二编码信息对应的第四信息确定所述目标第一PDU的序列号。
- 一种通信装置,其特征在于,所述通信装置包括用于执行权利要求1~9中任一项所述的方法的模块或单元。
- 一种通信装置,其特征在于,所述通信装置包括用于执行权利要求10~18中任一项所述的方法的模块或单元。
- 一种通信装置,其特征在于,包括与存储器耦合的处理器,所述处理器用于执行所述存储器中存储的计算机程序或指令,以实现如权利要求1~9中任一项所述的方法或如权利要求10~18中任一项所述的方法。
- 根据权利要求21所述的装置,其特征在于,所述装置还包括所述存储器,和/或收发器,所述收发器用于收发数据和/或信令。
- 一种通信装置,其特征在于,包括处理器和接口电路,所述接口电路用于接收来自所述通信装置之外的其它通信装置的信号并传输至所述处理器或将来自所述处理器的信号发送给所述通信装置之外的其它通信装置,所述处理器通过逻辑电路或执行指令用于实现如权利 要求1~9中任一项所述的方法,或,所述处理器通过逻辑电路或执行指令用于实现如权利要求10~18中任一项所述的方法。
- 一种计算机可读存储介质,其特征在于,所述存储介质中存储有计算机程序或指令,当所述计算机程序或指令被通信装置执行时,如权利要求1~9中任一项所述的方法被执行,或,如权利要求10~18中任一项所述的方法被执行。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP22909937.9A EP4440016A1 (en) | 2021-12-21 | 2022-12-19 | Data coding method and communication devices |
US18/748,396 US20240348367A1 (en) | 2021-12-21 | 2024-06-20 | Data encoding method and communication apparatus |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111571393.8 | 2021-12-21 | ||
CN202111571393.8A CN116318524A (zh) | 2021-12-21 | 2021-12-21 | 一种数据编码方法及通信装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US18/748,396 Continuation US20240348367A1 (en) | 2021-12-21 | 2024-06-20 | Data encoding method and communication apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023116625A1 true WO2023116625A1 (zh) | 2023-06-29 |
Family
ID=86801888
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2022/140005 WO2023116625A1 (zh) | 2021-12-21 | 2022-12-19 | 一种数据编码方法及通信装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240348367A1 (zh) |
EP (1) | EP4440016A1 (zh) |
CN (1) | CN116318524A (zh) |
WO (1) | WO2023116625A1 (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180212713A1 (en) * | 2017-01-20 | 2018-07-26 | InterfereX Communications Inc. | Systems and methods to optimize partitioning of a data segment into data packets for channel encoding |
WO2021179827A1 (zh) * | 2020-03-11 | 2021-09-16 | 华为技术有限公司 | 一种通信的方法及装置 |
WO2021233929A1 (en) * | 2020-05-20 | 2021-11-25 | Canon Kabushiki Kaisha | Method for pdcp network coding in 5g-ran or 4g e-utran |
WO2021249080A1 (zh) * | 2020-06-08 | 2021-12-16 | 华为技术有限公司 | 编码方法及装置 |
-
2021
- 2021-12-21 CN CN202111571393.8A patent/CN116318524A/zh active Pending
-
2022
- 2022-12-19 EP EP22909937.9A patent/EP4440016A1/en active Pending
- 2022-12-19 WO PCT/CN2022/140005 patent/WO2023116625A1/zh active Application Filing
-
2024
- 2024-06-20 US US18/748,396 patent/US20240348367A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180212713A1 (en) * | 2017-01-20 | 2018-07-26 | InterfereX Communications Inc. | Systems and methods to optimize partitioning of a data segment into data packets for channel encoding |
WO2021179827A1 (zh) * | 2020-03-11 | 2021-09-16 | 华为技术有限公司 | 一种通信的方法及装置 |
WO2021233929A1 (en) * | 2020-05-20 | 2021-11-25 | Canon Kabushiki Kaisha | Method for pdcp network coding in 5g-ran or 4g e-utran |
WO2021249080A1 (zh) * | 2020-06-08 | 2021-12-16 | 华为技术有限公司 | 编码方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
EP4440016A1 (en) | 2024-10-02 |
CN116318524A (zh) | 2023-06-23 |
US20240348367A1 (en) | 2024-10-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10863578B2 (en) | Data transmission method, device and system | |
WO2021179827A1 (zh) | 一种通信的方法及装置 | |
WO2021169522A1 (zh) | 数据处理方法及装置 | |
US20220377707A1 (en) | Communication Method and Communication Apparatus | |
US20240106569A1 (en) | Data processing method and apparatus | |
WO2022137659A1 (ja) | 端末及び通信方法 | |
JP2024531285A (ja) | ダウンリンク制御情報のアライン方法及びその装置 | |
WO2022133918A1 (zh) | 解码失败的处理方法、装置和系统 | |
WO2023116625A1 (zh) | 一种数据编码方法及通信装置 | |
CN111108808B (zh) | 用于数据传输的方法、发送端设备和接收端设备 | |
WO2022193919A1 (zh) | 一种编码和译码方法及装置 | |
WO2022042215A1 (zh) | 一种数据传输方法以及装置 | |
TW202236811A (zh) | 極化編碼調製、解調解碼的方法和裝置 | |
WO2020233401A1 (zh) | 通信方法和装置 | |
US20210211933A1 (en) | Data transmission method and device | |
CN113541857A (zh) | 一种编码方法及通信装置 | |
WO2022171019A1 (zh) | 一种编码和译码方法及相关装置 | |
WO2022206267A1 (zh) | 一种harq反馈方法、装置及计算机可读存储介质 | |
WO2023273973A1 (zh) | 一种通信方法及通信装置 | |
EP4355002A1 (en) | Communication method and apparatus, and device and storage medium | |
WO2022068612A1 (zh) | 一种上行协作传输方法及其装置 | |
EP4412116A1 (en) | Coding method, decoding method and communication apparatus | |
WO2022205230A1 (zh) | 一种分组数据汇聚协议实体的超帧号确定方法及其装置 | |
WO2022222726A1 (zh) | 一种数据处理的方法以及装置 | |
WO2022011715A1 (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: 22909937 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2022909937 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 2022909937 Country of ref document: EP Effective date: 20240625 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |