CN111262647A - Data transmission method and device - Google Patents

Data transmission method and device Download PDF

Info

Publication number
CN111262647A
CN111262647A CN201811454565.1A CN201811454565A CN111262647A CN 111262647 A CN111262647 A CN 111262647A CN 201811454565 A CN201811454565 A CN 201811454565A CN 111262647 A CN111262647 A CN 111262647A
Authority
CN
China
Prior art keywords
data blocks
different
blocks
data
parameter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201811454565.1A
Other languages
Chinese (zh)
Other versions
CN111262647B (en
Inventor
刘哲
彭金磷
唐浩
周国华
唐臻飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201811454565.1A priority Critical patent/CN111262647B/en
Priority to PCT/CN2019/116023 priority patent/WO2020108259A1/en
Publication of CN111262647A publication Critical patent/CN111262647A/en
Application granted granted Critical
Publication of CN111262647B publication Critical patent/CN111262647B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0015Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0033Systems modifying transmission characteristics according to link quality, e.g. power backoff arrangements specific to the transmitter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/08Arrangements for detecting or preventing errors in the information received by repeating transmission, e.g. Verdan system

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The application provides a method and a device for data transmission, wherein the method comprises the following steps: encoding N data blocks by adopting a first encoding mode to generate M encoding blocks, wherein one encoding block in the M encoding blocks is an encoding block obtained by encoding d data blocks in the N data blocks, a first parameter in the first encoding mode is used for determining the d data blocks in the N data blocks, the first parameter is related to the transmission times of the N data blocks, M and N are integers which are larger than 1 and larger than N, d is an integer which is larger than or equal to 1 and is smaller than or equal to N; and transmitting a first coding block group, wherein the first coding block group comprises the M coding blocks. The technical scheme of the embodiment of the application can improve the reliability of data transmission and reduce the time delay of the data transmission.

Description

Data transmission method and device
Technical Field
The present application relates to the field of communications, and in particular, to a method and an apparatus for data transmission in the field of communications.
Background
In the communication technology, when a network device communicates with a terminal device, data of a transmission node of an application layer is finally mapped onto a Physical Downlink Shared Channel (PDSCH) or a Physical Uplink Shared Channel (PUSCH) channel. Data of a transmitting node in an application layer is mapped to a PDSCH channel of the transmitting node, that is, mapped to a part of Physical Resource Block (PRB) resources to transmit data information of the transmitting node. When a part of PRB resources are interfered, for example, by impulse noise of the industrial internet, the receiving node device cannot correctly demodulate data sent by the sending node on the PDSCH channel, so that multiple retransmissions may be needed.
However, with the development of technologies, there are some services that have high requirements on reliability of data transmission, such as industrial internet services, vehicle-to-vehicle (V2X) communication systems (e.g., vehicle-to-vehicle (V2V), vehicle-to-infrastructure (V2I), vehicle-to-human (V2P), vehicle-to-network (V2N), etc.), where X represents any thing (analyzing).
Disclosure of Invention
The application provides a data transmission method and device, which can improve the reliability of data transmission and reduce the time delay of data transmission.
In a first aspect, a method for data transmission is provided, including: encoding N data blocks by adopting a first encoding mode to generate M encoding blocks, wherein a first parameter in the first encoding mode is used for determining d data blocks in the N data blocks, the first parameter is related to the transmission times of the N data blocks, one encoding block in the M encoding blocks is obtained by encoding d data blocks in the N data blocks, M and N are integers which are larger than 1 and larger than N, d is an integer which is larger than or equal to 1, and d is smaller than or equal to N; and sending a first coding block group, wherein the first coding block group comprises the M coding blocks.
For example, the first coding block group may be transmitted in a multicast manner or a broadcast manner.
In the data transmission method of the embodiment of the application, N data blocks are encoded by using a first encoding method to generate M encoding blocks, where for different transmission times of the N data blocks or different timeslot numbers corresponding to the N data blocks, the first parameter may be different. Since the first parameter is different, d data blocks of the N data blocks determined according to the first parameter are also different. That is to say, for different transmission times, at least one different coding block exists in the M coding blocks transmitted each time in two adjacent transmissions, so that multiple transmission failures caused by the influence of the same environmental interference when the same coding block is repeatedly transmitted for multiple times are avoided. By the data transmission method, the probability of successful data reception can be improved, the retransmission times can be reduced, the reliability of data transmission can be improved, and the time delay of data transmission can be reduced.
It should be noted that, in the embodiment of the present application, one transmission of N data blocks may be understood as performing one transmission of N data blocks as a whole. The N data blocks are transmitted once as a whole, which may be a transmission after at least one data block of the N data blocks is encoded, that is, a transmission of a coding block corresponding to at least one data block of the N data blocks may be regarded as a transmission of the N data blocks.
The term "transmission" in the embodiments of the present application should be understood flexibly, that is, the term "transmission" sometimes has the meaning of "transmission" and sometimes has the meaning of "reception". When the node is a sending node, the sending node can send coding blocks corresponding to the N data blocks; when the node is a receiving node, the receiving node may receive an encoded block corresponding to the N data blocks.
It should be understood that in embodiments of the present application, one data block may be one set of bits. For example, a data block may be a set of bits to be transmitted by a transmitting node; alternatively, the data block may be a set of bits to be received by the receiving node.
With reference to the first aspect, in certain implementations of the first aspect, the first parameter includes at least one of an index value of d of the N data blocks, an offset value of d of the N data blocks, or a number size of d of the N data blocks.
It should be understood that the number of d data blocks in the N data blocks may be a value of d, or may be a value corresponding to d (i.e., may be understood as one or more values output by a function with d as an input). The value of d may be different for different transmission times of the N data blocks.
Illustratively, the first parameter may be an index value of d data blocks of the N data blocks. For different transmission times, the index values of d data blocks in the N data blocks can be different at least one, so that d different data blocks can be determined; or, the number of the time slots corresponding to the transmission of the N data blocks is different, and at least one of the index values of the d data blocks in the N data blocks may be different, so that the d different data blocks may be determined.
It should be understood that the slots above and below may also be other time domain resources, such as symbols, minislots, subframes, or frames.
Illustratively, the first parameter may be an offset value of d data blocks of the N data blocks. For different transmission times of the N data blocks, the offset values of the d data blocks can be different, so that d different data blocks can be determined; or, different timeslot numbers corresponding to the N data blocks to be transmitted are different, and the offset values of the d data blocks may be different, so that the d different data blocks can be determined.
Illustratively, the first parameter may be a number size of d data blocks out of the N data blocks. For different transmission times of the N data blocks, the number of the d data blocks can be different, so that d different data blocks can be determined; or, different timeslot numbers corresponding to the N data blocks are different, and the number of the d data blocks may be different, so that the d different data blocks may be determined.
Illustratively, the first parameter may include index values of d of the N data blocks and a number size of the d of the N data blocks. For different transmission times or different slot numbers corresponding to the N data blocks, at least one difference may exist in the index values of d data blocks in the N data blocks, and the number of d data blocks in the N data blocks may be different, so that d different data blocks may be determined.
For example, it may be the first transfer that determines d1 data blocks, the second transfer that determines d2 data blocks, and the d1 and d2 data blocks may all be different, or partially different; d1 may or may not be equal to d2 and d 2.
It should be noted that, in the embodiment of the present application, the first parameter may be one parameter, and the first parameter may also be one parameter set.
In a possible implementation manner, the first parameter may be an index value of d data blocks in the N data blocks, or may be a value corresponding to the index value of the d data blocks (that is, one or more values of an output of a function in which the index values of the d data blocks are used as inputs may be understood). And at least one difference exists in the determined index values of the d data blocks for different transmission times of the N data blocks or different time slot numbers corresponding to the N data blocks.
In a possible implementation manner, the first parameter may be offset values of d data blocks in the N data blocks, or may be values corresponding to the offset values of the d data blocks (i.e., one or more values of an output of a function in which the offset values of the d data blocks are used as inputs may be understood). The offset values of the d data blocks may be different for different transmission times of the N data blocks or different slot numbers corresponding to the transmission of the N data blocks.
In one possible implementation, the first parameter may include an index value of d data blocks of the N data blocks and a number size of the d data blocks. The first parameter may also include values corresponding to the index values of the d data blocks and the number size of the d data blocks (i.e., one or more values of the output of a function in which the index values of the d data blocks and the number size of the d data blocks are used as inputs may be understood). For different transmission times of the N data blocks or different slot numbers corresponding to the transmission of the N data blocks, the index values of the d data blocks and the number of the d data blocks may be different.
For example, the number of d data blocks may be the same size, and the index values of the d data blocks may be different. The number of d data blocks may be different, and the index values of the d data blocks may be different.
In a possible implementation manner, the first parameter may include an index value of d data blocks and an offset value of d data blocks in the N data blocks, or the first parameter may include values corresponding to the index value of d data blocks and the offset value of d data blocks (i.e., may be understood as one or more values of an output of a function in which the index value of d data blocks and the offset value of d data blocks are used as inputs). For different transmission times of the N data blocks or different slot numbers corresponding to the transmission of the N data blocks, the index values of the d data blocks and the offset values of the d data blocks may be different.
In a possible implementation manner, the first parameter may include an offset value of d data blocks and a number size of the d data blocks in the N data blocks, or the first parameter may include values corresponding to the offset value of the d data blocks and the number size of the d data blocks (i.e., may be understood as one or more values of an output of a function in which the offset value of the d data blocks and the number size of the d data blocks are used as inputs). For different transmission times of the N data blocks or different time slot numbers corresponding to the transmission of the N data blocks, the offset values of the d data blocks and the number of the d data blocks are different in size.
In a possible implementation manner, the first parameter may include an index value of d data blocks in the N data blocks, an offset value of the d data blocks, and a number size of the d data blocks, or the first parameter may include values corresponding to the index value of the d data blocks in the N data blocks, the offset value of the d data blocks, and the number size of the d data blocks (that is, may be understood as one or more values of an output of a function in which the index value of the d data blocks, the offset value of the d data blocks, and the number size of the d data blocks are used as inputs). For different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks, the index values of the d data blocks, the offset values of the d data blocks, and the number of the d data blocks may be different.
The foregoing is a possible implementation manner, and the present application does not make any specific limitation on the first parameter or an implementation manner of determining d data blocks in the N data blocks by using the first parameter.
With reference to the first aspect, in certain implementations of the first aspect, the first parameter is related to the number of transmissions of the N data blocks, and includes: the first parameter is different for different transmission times.
That is, d data blocks of the N data blocks determined according to the first parameter may be different for different transmission times.
In other words, the first parameter may be different for different transmission times, and d data blocks of the N data blocks determined according to the first parameter are also different because the first parameter is different. That is, for different transmission times, at least one different data block exists in the determined d data blocks. That is, there is at least one different encoded block among the M encoded blocks generated for different numbers of transmissions.
With reference to the first aspect, in certain implementations of the first aspect, offset values of d data blocks of the N data blocks are different for different transmission times; or, for different transmission times, the number of d data blocks in the N data blocks is different in size; or, for different transmission times, the index values of d data blocks in the N data blocks are different from the offset values of d data blocks in the N data blocks; or, for different transmission times, the index values of d data blocks in the N data blocks are different from the number of d data blocks in the N data blocks; or, for different transmission times, the offset values of d data blocks in the N data blocks are different from the number of d data blocks in the N data blocks; or, for different transmission times, the index values of d data blocks in the N data blocks, the offset values of d data blocks in the N data blocks, and the number of d data blocks in the N data blocks are different.
For example, for different transmission times of the N data blocks, the number of the selected d data blocks may be the same and the index values of the d data blocks are different, or the number of the selected d data blocks may be different. The coding block in the M coding blocks can be obtained by coding the d data blocks, and the M coding blocks are different for different transmission times because the d data blocks are different for different transmission times.
In the embodiment of the application, for different transmission times of N data blocks/different time slot numbers corresponding to N data blocks, at least one different coding block exists in M coding blocks transmitted each time in two adjacent transmissions, so that multiple transmission failures caused by the influence of the same environment interference when the same coding block is repeatedly transmitted for multiple times are avoided, and therefore the data transmission method of the embodiment of the application is beneficial to improving the reliability of data transmission and reducing the time delay of data transmission.
With reference to the first aspect, in certain implementations of the first aspect, the method further includes: receiving a negative reply from at least one node device; and sending a second coding block group, wherein the second coding block group comprises M coding blocks, and at least one different coding block exists between the second coding block group and the first coding block group.
It should be noted that, in the embodiment of the present application, the sending node may receive a negative reply sent by the receiving node, and the negative reply may be NACK information or a Scheduling Request (SR) sent by any one of the receiving nodes, and is used to indicate that at least N coding blocks are not successfully decoded. The negative reply may be a trigger condition that triggers the sending node to retransmit the data.
In a possible implementation, the receiving node may send a positive reply to the sending node when the receiving node successfully decodes at least N encoded blocks in the first encoded block set, i.e. when the receiving node may determine information of N data blocks sent by the sending node.
In a possible implementation, when the receiving node successfully decodes at least N coding blocks in the first coding block group, that is, when the receiving node can determine information of N data blocks transmitted by the transmitting node, the receiving node may not transmit a negative reply or a positive reply within a preset duration.
With reference to the first aspect, in certain implementations of the first aspect, the method further includes: and sending first information, wherein the first information is used for indicating target equipment corresponding to at least one data block in the N data blocks.
Illustratively, the first information may be used to indicate a target device to which each of the N data blocks corresponds.
For example, the N data blocks may be two data blocks, the two data blocks may respectively correspond to two receiving nodes, and the first information may be used to indicate that the first data block corresponds to the first receiving node and to indicate that the second data block corresponds to the second receiving node.
For example, the first information may be used to indicate a target device to which a part of the N data blocks corresponds.
For example, the N data blocks may be two data blocks, the two data blocks may respectively correspond to two receiving nodes, the first information may be used to indicate that the first data block corresponds to the first receiving node, and then the second data block may correspond to the second receiving node.
In one possible implementation, the first information may be carried in a Radio Resource Control (RRC) message. The scheduling information may be carried in the same RRC message as the first information, or may be carried in a different RRC message from the first information; alternatively, the scheduling information may be in a Physical Downlink Control Channel (PDCCH). The scheduling information is used to indicate a first time-frequency resource, and the first time-frequency resource is used to carry the M coding blocks.
It should be understood that the first time-frequency resource for carrying M coding blocks may be regarded as mapping the M coding blocks onto the first time-frequency resource after preprocessing.
In a possible implementation manner, the first information may be carried by a PDCCH, and the scheduling information may be carried in the same PDCCH as the first information or may be carried in a PDCCH different from the first information; alternatively, the scheduling information may be carried in an RRC message.
With reference to the first aspect, in certain implementations of the first aspect, the scheduling information may include at least one of the following information: the physical resource block system comprises a physical resource block PRB, a time domain resource, a modulation and demodulation strategy (MCS), a mapping mode and a physical resource block bundling size, wherein the mapping mode comprises centralized resource mapping and distributed resource mapping.
For example, in an embodiment of the present application, a sending node may transmit scheduling information in a multicast PDCCH, that is, a physical resource block PRB, a time domain resource, a modulation and demodulation strategy MCS, a mapping mode, and a physical resource block bundling size may be transmitted between the sending node and a receiving node through Downlink Control Information (DCI) carried on the multicast PDCCH, where the mapping mode includes at least one of a centralized resource mapping and a distributed resource mapping information.
Exemplarily, in an embodiment of the present application, the transmitting node may semi-statically configure resource transmission scheduling information through higher layer signaling, that is, a physical resource block PRB, a time domain resource, a modulation and demodulation strategy MCS, a mapping mode and a physical resource block bundling size may be transmitted between the transmitting node and the receiving node through RRC signaling, where the mapping mode includes at least one of centralized resource mapping and distributed resource mapping information.
For example, in an embodiment of the present application, a sending node may transmit the scheduling information in a semi-static resource scheduling manner, where a higher layer signaling (for example, RRC signaling) configures a period of the scheduling information, and in a semi-static scheduling system, resources (including uplink resources or downlink resources) are allocated or specified once through a PDCCH, and then the same physical resources may be periodically reused, where the physical resources include one or more of frequency domain resources, code domain resources, spatial domain resources, and power domain resources.
Exemplarily, in an embodiment of the present application, the scheduling information of one of the M coding blocks may also be predefined, that is, the transmitting node and the receiving node respectively transmit and receive one of the M coding blocks using predefined physical resource blocks PRB, time domain resources, modulation and demodulation strategies MCS, mapping modes, and so on.
With reference to the first aspect, in some implementations of the first aspect, the first coding scheme is a coding scheme using a fountain code.
For example, a transmitting node (or encoding apparatus) may encode N data blocks by an encoder (using, for example, a fountain code encoding scheme) to generate a plurality of (i.e., M, where the value of M may be infinite or regarded as infinite) encoded blocks/encoding units, or to generate a codeword sequence that is infinitely long or regarded as infinitely long, and a receiving node may decode at least N of the M encoded blocks/encoding units to obtain information of the N data blocks.
In a second aspect, a method for data transmission is provided, including: receiving a first coding block group, wherein the first coding block group comprises M coding blocks; decoding at least N of the M encoded blocks; and determining information of at least one data block in the N data blocks according to a second parameter and the at least N coding blocks, wherein the second parameter is used for determining that one coding block in the at least N coding blocks corresponds to d data blocks in the N data blocks, the second parameter is related to the transmission times of the N data blocks, M and N are integers which are larger than 1 and M is larger than N, d is an integer which is larger than or equal to 1, and d is smaller than or equal to N.
In the data transmission method of the embodiment of the application, the receiving node may decode at least N of the M coding blocks, and determine information of at least one of the N data blocks through the second parameter and the at least N coding blocks. The second parameter is related to the number of transmission times of the N data blocks, that is, the second parameter may be different for different number of transmission times of the N data blocks or different slot numbers corresponding to the N data blocks, that is, the determined information of at least one data block in the N data blocks may also be different. The influence of the same environment interference on repeated transmission for multiple times is avoided, information acquisition failure of the same data block caused by repeated transmission is avoided, and transmission failure of N data blocks is caused. By the data transmission method, the probability of successful data reception can be improved, the retransmission times can be reduced, the reliability of data transmission can be improved, and the time delay of data transmission can be reduced.
It should be noted that, in the embodiment of the present application, the second parameter may be the same parameter as the first parameter. The second parameter may also be a parameter corresponding to the first parameter (for example, one or more parameters generated by processing the first parameter), which is not limited in this application.
It should be noted that, in the embodiment of the present application, one transmission of N data blocks may be understood as performing one transmission of N data blocks as a whole. The N data blocks are transmitted once as a whole, which may be a transmission after at least one data block of the N data blocks is encoded, that is, a transmission of a coding block corresponding to at least one data block of the N data blocks may be regarded as a transmission of the N data blocks.
The term "transmission" in the embodiments of the present application should be understood flexibly, that is, the term "transmission" sometimes has the meaning of "transmission" and sometimes has the meaning of "reception". When the node is a receiving node, the receiving node can receive the coding blocks corresponding to the N data blocks; when the node is a transmitting node, the transmitting node may transmit the encoded blocks corresponding to the N data blocks.
It should be understood that in embodiments of the present application, one data block may be one set of bits. For example, a data block may be a set of bits to be transmitted by a transmitting node; alternatively, the data block may be a set of bits to be received by the receiving node.
With reference to the second aspect, in some implementations of the second aspect, the second parameter includes at least one of an index value of d of the N data blocks, an offset value of d of the N data blocks, or a number size of d of the N data blocks.
In a possible implementation manner, the second parameter may be a quantity size of d data blocks in the N data blocks, where the quantity size may be a value of d, or a value corresponding to d (i.e., one or more values output by a function with d as an input may be understood). The value of d may be different for different transmission times of the N data blocks.
In a possible implementation manner, the second parameter may be an index value of d data blocks in the N data blocks, or may be a value corresponding to the index value of the d data blocks (that is, one or more values of an output of a function in which the index values of the d data blocks are used as inputs may be understood). And at least one difference exists in the determined index values of the d data blocks for different transmission times of the N data blocks or different time slot numbers corresponding to the N data blocks.
In a possible implementation manner, the second parameter may be offset values of d data blocks in the N data blocks, or may be values corresponding to the offset values of the d data blocks (that is, one or more values of an output of a function in which the offset values of the d data blocks are used as inputs may be understood). The offset values of the d data blocks may be different for different transmission times of the N data blocks or different slot numbers corresponding to the transmission of the N data blocks.
In one possible implementation, the second parameter may include an index value of d data blocks of the N data blocks and a number size of the d data blocks. The second parameter may also include values corresponding to the index values of the d data blocks and the number of the d data blocks (i.e., one or more values of the output of a function in which the index values of the d data blocks and the number of the d data blocks are used as inputs may be understood). For different transmission times of the N data blocks or different slot numbers corresponding to the transmission of the N data blocks, the index values of the d data blocks and the number of the d data blocks may be different.
For example, the number of d data blocks may be the same size, and the index values of the d data blocks may be different. The number of d data blocks may be different, and the index values of the d data blocks may be different.
In a possible implementation manner, the second parameter may include an index value of d data blocks and an offset value of d data blocks in the N data blocks, or the second parameter may include values corresponding to the index value of d data blocks and the offset value of d data blocks (i.e., may be understood as one or more values of an output of a function in which the index value of d data blocks and the offset value of d data blocks are used as inputs). For different transmission times of the N data blocks or different slot numbers corresponding to the transmission of the N data blocks, the index values of the d data blocks and the offset values of the d data blocks may be different.
In a possible implementation manner, the second parameter may include an offset value of d data blocks and a number size of the d data blocks in the N data blocks, or the second parameter may include values corresponding to the offset value of the d data blocks and the number size of the d data blocks (i.e., may be understood as one or more values of an output of a function in which the offset value of the d data blocks and the number size of the d data blocks are used as inputs). For different transmission times of the N data blocks or different time slot numbers corresponding to the transmission of the N data blocks, the offset values of the d data blocks and the number of the d data blocks are different in size.
In a possible implementation manner, the second parameter may include an index value of d data blocks in the N data blocks, an offset value of d data blocks, and a number size of d data blocks, or the second parameter may include values corresponding to the index value of d data blocks in the N data blocks, the offset value of d data blocks, and the number size of d data blocks (that is, may be understood as one or more values of an output of a function in which the index value of d data blocks, the offset value of d data blocks, and the number size of d data blocks are used as inputs). For different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks, the index values of the d data blocks, the offset values of the d data blocks, and the number of the d data blocks may be different.
The above is a possible implementation manner, and the present application does not set any specific limitation on the implementation manner of the second parameter.
With reference to the second aspect, in some implementations of the second aspect, the second parameter is related to the number of transmissions of the N data blocks, and includes: the second parameter is different for different transmission times.
With reference to the second aspect, in some implementations of the second aspect, the index values of d data blocks in the N data blocks are different for different transmission times; or, for different transmission times, the offset values of d data blocks in the N data blocks are different; or, for different transmission times, the number of d data blocks in the N data blocks is different in size; or, for different transmission times, the index values of d data blocks in the N data blocks are different from the offset values of d data blocks in the N data blocks; or, for different transmission times, the index values of d data blocks in the N data blocks are different from the number of d data blocks in the N data blocks; or, for different transmission times, the offset values of d data blocks in the N data blocks are different from the number of d data blocks in the N data blocks; or, for different transmission times, the index values of d data blocks in the N data blocks, the offset values of d data blocks in the N data blocks, and the number of d data blocks in the N data blocks are different.
With reference to the second aspect, in certain implementations of the second aspect, the method further includes: sending a negative reply when the at least N encoded blocks are not decoded correctly; receiving a second coding block group, where the second coding block group includes M coding blocks, and there is at least one different coding block between the second coding block group and the first coding block group.
It should be noted that, in the embodiment of the present application, the negative reply may be a negative reply sent by the receiving node to the sending node, and the negative reply may be NACK information or a Scheduling Request (SR) sent by any one of the receiving nodes, and is used to indicate that at least N coding blocks are not successfully decoded. The negative reply may be a trigger condition that triggers the sending node to retransmit the data.
In a possible implementation, the receiving node may send a positive reply to the sending node when the receiving node successfully decodes at least N encoded blocks in the first encoded block set, i.e. when the receiving node may determine information of N data blocks sent by the sending node.
In a possible implementation, when the receiving node successfully decodes at least N coding blocks in the first coding block group, that is, when the receiving node can determine information of N data blocks transmitted by the transmitting node, the receiving node may not transmit a negative reply or a positive reply within a preset duration.
With reference to the second aspect, in certain implementations of the second aspect, the method further includes: and receiving first information, wherein the first information is used for indicating target equipment corresponding to at least one data block in the N data blocks.
Illustratively, the first information may be used to indicate a target device to which each of the N data blocks corresponds.
For example, the N data blocks may be two data blocks, the two data blocks may respectively correspond to two receiving nodes, and the first information may be used to indicate that the first data block corresponds to the first receiving node and to indicate that the second data block corresponds to the second receiving node.
For example, the first information may be used to indicate a target device to which a part of the N data blocks corresponds.
For example, the N data blocks may be two data blocks, the two data blocks may respectively correspond to two receiving nodes, the first information may be used to indicate that the first data block corresponds to the first receiving node, and then the second data block may correspond to the second receiving node.
In one possible implementation, the first information may be carried in an RRC message. The scheduling information may be carried in the same RRC message as the first information, or may be carried in a different RRC message from the first information; alternatively, the scheduling information may also be in the PDCCH. The scheduling information is used to indicate a first time-frequency resource, and the first time-frequency resource is used to carry the M coding blocks.
It should be understood that the first time-frequency resource for carrying M coding blocks may be regarded as mapping the M coding blocks onto the first time-frequency resource after preprocessing.
In a possible implementation manner, the first information may be carried in a PDCCH, and the scheduling information may be carried in the same PDCCH as the first information or may be carried in a PDCCH different from the first information; alternatively, the scheduling information may be carried in an RRC message.
With reference to the second aspect, in some implementations of the second aspect, the scheduling information may include at least one of the following information: the physical resource block PRB, the time domain resource, the modulation and demodulation strategy MCS, the mapping mode and the physical resource block bundling size, wherein the mapping mode comprises centralized resource mapping and distributed resource mapping.
For example, in the embodiment of the present application, the receiving node may transmit the scheduling information by means of a multicast PDCCH, that is, the receiving node and the transmitting node may transmit a physical resource block PRB, a time domain resource, a modulation and demodulation policy MCS, a mapping mode, and a physical resource block bundling size by using downlink control information DCI carried on the multicast PDCCH, where the mapping mode includes at least one of a centralized resource mapping and a distributed resource mapping information.
Exemplarily, in an embodiment of the present application, the receiving node may transmit the scheduling information through a high layer signaling semi-static configuration resource, that is, the physical resource block PRB, the time domain resource, the modulation and demodulation strategy MCS, the mapping pattern and the physical resource block bundling size may be transmitted between the receiving node and the transmitting node through RRC signaling, where the mapping pattern includes at least one of a centralized resource mapping and a distributed resource mapping information.
For example, in the embodiment of the present application, the receiving node may transmit the scheduling information in a semi-static resource scheduling manner, and a higher layer signaling (for example, RRC signaling) configures a period of the scheduling information, in the semi-static scheduling system, resources (including uplink resources or downlink resources) are allocated or specified once through a PDCCH, and then the same physical resource may be periodically reused, where the physical resource may be one or more of frequency domain resources, code domain resources, spatial domain resources, and power domain resources.
Exemplarily, in an embodiment of the present application, the scheduling information of one of the M coding blocks may also be predefined, that is, the transmitting node and the receiving node respectively transmit and receive one of the M coding blocks using predefined physical resource blocks PRB, time domain resources, modulation and demodulation strategies MCS, mapping modes, and so on.
With reference to the second aspect, in some implementations of the second aspect, the first encoding manner is encoding by using a fountain code.
For example, a transmitting node (or encoding apparatus) may encode N data blocks by an encoder (using, for example, a fountain code encoding scheme) to generate a plurality of (i.e., M, where M may have an infinite value) encoded blocks/encoding units, or generate a codeword sequence that is infinitely long or can be regarded as infinitely long, and a receiving node may decode any at least N encoded blocks/encoding units to obtain information of the N data blocks.
In a third aspect, an apparatus is provided for performing the method of the first aspect or any possible implementation manner of the first aspect. In particular, the apparatus comprises means for performing the method of the first aspect described above or any one of the possible implementations of the first aspect.
In a fourth aspect, an apparatus is provided for performing the method of the second aspect or any possible implementation manner of the second aspect. In particular, the apparatus comprises means for performing the method of the second aspect or any of the possible implementations of the second aspect.
In a fifth aspect, an apparatus is provided that includes a processor. The processor is coupled to the memory and is operable to execute instructions in the memory to implement the method of the first aspect or any possible implementation manner of the first aspect.
Optionally, the apparatus further comprises a memory.
Optionally, the communication device further comprises a communication interface, the processor being coupled to the communication interface.
In one implementation, the apparatus is a transmitting node. When the apparatus is a transmitting node, the communication interface may be a transceiver, or an input/output interface.
In another implementation, the apparatus is a chip configured in a transmitting node. When the apparatus is a chip configured in a transmitting node, the communication interface may be an input/output interface of the chip.
Alternatively, the transceiver may be a transmit-receive circuit. Alternatively, the input/output interface may be an input/output circuit.
Illustratively, the apparatus may include a transceiving unit, which may include a receiving unit and a transmitting unit. For example, the transmitting unit may be a transmitter and the receiving unit may be a receiver; the apparatus may further comprise a processing unit, which may be a processor; the apparatus may further include a storage unit, which may be a memory; the storage unit is configured to store instructions, and the processing unit executes the instructions stored by the storage unit to cause the apparatus to perform the method of the first aspect or any possible implementation manner of the first aspect. When a chip within a device, the processing unit may be a processor, and the receiving/transmitting unit may be an input/output interface, a pin, a circuit, or the like; the processing unit executes instructions stored in a storage unit (e.g., a register, a cache, etc.) within the chip or a storage unit (e.g., a read-only memory, a random access memory, etc.) external to the chip within the apparatus, so as to cause the apparatus to perform the method in the first aspect or any possible implementation manner of the first aspect.
In a sixth aspect, an apparatus is provided that includes a processor. The processor is coupled to the memory and is operable to execute the instructions in the memory to implement the method of the second aspect or any possible implementation of the second aspect.
Optionally, the apparatus further comprises a memory.
Optionally, the communication device further comprises a communication interface, the processor being coupled to the communication interface.
In one implementation, the apparatus is a receiving node. When the apparatus is a receiving node, the communication interface may be a transceiver, or an input/output interface.
In another implementation, the apparatus is a chip configured in a receiving node. When the apparatus is a chip configured in the receiving node, the communication interface may be an input/output interface of the chip.
Alternatively, the transceiver may be a transmit-receive circuit. Alternatively, the input/output interface may be an input/output circuit.
Illustratively, the apparatus may include a transceiving unit, which may include a receiving unit and a transmitting unit. For example, the transmitting unit may be a transmitter and the receiving unit may be a receiver; the apparatus may further comprise a processing unit, which may be a processor; the apparatus may further include a storage unit, which may be a memory; the storage unit is configured to store instructions, and the processing unit executes the instructions stored by the storage unit to cause the apparatus to perform the method of the second aspect or any possible implementation manner of the second aspect. When a chip within a device, the processing unit may be a processor, and the receiving/transmitting unit may be an input/output interface, a pin, a circuit, or the like; the processing unit executes instructions stored in a storage unit (e.g., a register, a cache, etc.) within the chip or a storage unit (e.g., a read-only memory, a random access memory, etc.) external to the chip) within the apparatus, so as to cause the apparatus to perform the method in any possible implementation manner of the second aspect or the second aspect.
In a seventh aspect, a processor is provided, including: input circuit, output circuit and processing circuit. The processing circuitry is configured to receive signals via the input circuitry and to transmit signals via the output circuitry such that the processor performs the method of any aspect and any possible implementation of any aspect.
In a specific implementation process, the processor may be a chip, the input circuit may be an input pin, the output circuit may be an output pin, and the processing circuit may be a transistor, a gate circuit, a flip-flop, various logic circuits, and the like. The input signal received by the input circuit may be received and input by, for example and without limitation, a receiver, the signal output by the output circuit may be output to and transmitted by a transmitter, for example and without limitation, and the input circuit and the output circuit may be the same circuit that functions as the input circuit and the output circuit, respectively, at different times. The embodiment of the present application does not limit the specific implementation manner of the processor and various circuits.
In an eighth aspect, a processing apparatus is provided that includes a processor and a memory. The processor is configured to read instructions stored in the memory and may receive signals via the receiver and transmit signals via the transmitter to perform the method of any aspect and any possible implementation of the first aspect.
Optionally, the number of the processors is one or more, and the number of the memories is one or more.
Alternatively, the memory may be integral to the processor or provided separately from the processor.
In a specific implementation process, the memory may be a non-transient memory, such as a Read Only Memory (ROM), which may be integrated on the same chip as the processor, or may be separately disposed on different chips.
It should be understood that the related data interaction process, for example, the process of transmitting the first coding block group may be a process of outputting the first coding block group from the processor, and the process of receiving the first coding block group may be a process of receiving the first coding block group for the processor. In particular, the data output by the processor may be output to a transmitter and the input data received by the processor may be from a receiver. The transmitter and receiver may be collectively referred to as a transceiver, among others.
A processing device in the above eighth aspect may be a chip, the processor may be implemented by hardware or may be implemented by software, and when implemented by hardware, the processor may be a logic circuit, an integrated circuit, or the like; when implemented in software, the processor may be a general-purpose processor implemented by reading software code stored in a memory, which may be integrated with the processor, located external to the processor, or stand-alone.
In a ninth aspect, there is provided a computer program product, the computer program product comprising: a computer program (also referred to as code, or instructions), which when executed, causes a computer to perform the method of any of the above aspects and any possible implementation of any of the aspects.
A tenth aspect provides a computer-readable medium storing a computer program (which may also be referred to as code, or instructions) which, when run on a computer, causes the computer to perform the method of any of the above aspects and any possible implementation of any of the aspects.
In an eleventh aspect, there is provided a communication system comprising any one or more of: the aforementioned transmitting node, the aforementioned receiving node.
Drawings
FIG. 1 is a schematic diagram of an application scenario of an embodiment of the present application;
FIG. 2 is a diagram of multiple retransmissions according to the prior art;
FIG. 3 is a schematic diagram of a method of data transmission according to one embodiment of the present application;
FIG. 4 is a schematic diagram of an arrangement of devices according to an embodiment of the present application;
FIG. 5 is a schematic block diagram of another apparatus according to an embodiment of the present application;
FIG. 6 is a schematic block diagram of another apparatus according to an embodiment of the present application;
FIG. 7 is a schematic block diagram of another apparatus according to an embodiment of the present application;
fig. 8 is a schematic block diagram of another apparatus according to an embodiment of the present application.
Detailed Description
The technical solution in the present application will be described below with reference to the accompanying drawings.
The technical scheme of the embodiment of the application can be applied to various communication systems, for example: a global system for mobile communications (GSM) system, a Code Division Multiple Access (CDMA) system, a Wideband Code Division Multiple Access (WCDMA) system, a General Packet Radio Service (GPRS), a long term evolution (long term evolution, LTE) system, a LTE Frequency Division Duplex (FDD) system, a LTE Time Division Duplex (TDD), a Universal Mobile Telecommunications System (UMTS), a Worldwide Interoperability for Microwave Access (WiMAX) communication system, a future fifth generation (5G) or New Radio (NR) system, and the like.
Terminal equipment in the embodiments of the present application may refer to user equipment, access terminals, subscriber units, subscriber stations, mobile stations, remote terminals, mobile devices, user terminals, wireless communication devices, user agents, or user devices. The terminal device may also be a cellular phone, a cordless phone, a Session Initiation Protocol (SIP) phone, a Wireless Local Loop (WLL) station, a Personal Digital Assistant (PDA), a handheld device with wireless communication function, a computing device or other processing device connected to a wireless modem, a vehicle-mounted device, a wearable device, a terminal device in a future 5G network or a terminal device in a future evolved Public Land Mobile Network (PLMN), and the like, which are not limited in this embodiment.
The network device in this embodiment may be a device for communicating with a terminal device, where the network device may be a Base Transceiver Station (BTS) in a global system for mobile communications (GSM) system or a Code Division Multiple Access (CDMA) system, may also be a base station (NodeB) in a Wideband Code Division Multiple Access (WCDMA) system, may also be an evolved NodeB (eNB) or eNodeB) in an LTE system, may also be a wireless controller in a Cloud Radio Access Network (CRAN) scenario, or may be a relay station, an access point, a vehicle-mounted device, a wearable device, a network device in a future 5G network, or a network device in a future evolved PLMN network, and the like, and the present embodiment is not limited.
It should be noted that the method for transmitting data according to the embodiment of the present application may also be applied to a vehicle-to-X (V2X) communication system, where V2X may specifically include three application requirements of V2V (internet of vehicles), V2P (vehicle-to-pedestrian communication), and V2I/N (vehicle-to-infrastructure communication/network, base station communication). V2V refers to LTE-based inter-vehicle communication; V2P refers to LTE-based vehicle-to-person communication (including pedestrians, cyclists, drivers, or passengers); V2I refers to LTE based vehicle to Road Side Unit (RSU) communication, and further a V2N may be included in V2I, V2N refers to LTE based vehicle to base station/network communication.
In the embodiment of the application, the terminal device or the network device includes a hardware layer, an operating system layer running on the hardware layer, and an application layer running on the operating system layer. The hardware layer includes hardware such as a Central Processing Unit (CPU), a Memory Management Unit (MMU), and a memory (also referred to as a main memory). The operating system may be any one or more computer operating systems that implement business processing through processes (processes), such as a Linux operating system, a Unix operating system, an Android operating system, an iOS operating system, or a windows operating system. The application layer comprises applications such as a browser, an address list, word processing software, instant messaging software and the like. Furthermore, the embodiment of the present application does not particularly limit the specific structure of the execution main body of the method provided by the embodiment of the present application, as long as the communication can be performed according to the method provided by the embodiment of the present application by running the program recorded with the code of the method provided by the embodiment of the present application, for example, the execution main body of the method provided by the embodiment of the present application may be a terminal device or a network device, or a functional module capable of calling the program and executing the program in the terminal device or the network device.
In addition, various aspects or features of the present application may be implemented as a method, apparatus, or article of manufacture using standard programming and/or engineering techniques. The term "article of manufacture" as used herein is intended to encompass a computer program accessible from any computer-readable device, carrier, or media. For example, computer-readable media can include but are not limited to magnetic storage devices (e.g., hard disk, floppy disk, magnetic strips, etc.), optical disks (e.g., Compact Disk (CD), Digital Versatile Disk (DVD), etc.), smart cards, and flash memory devices (e.g., erasable programmable read-only memory (EPROM), card, stick, or key drive, etc.). In addition, various storage media described herein can represent one or more devices and/or other machine-readable media for storing information. The term "machine-readable medium" can include, without being limited to, wireless channels and various other media capable of storing, containing, and/or carrying instruction(s) and/or data.
Fig. 1 is a schematic diagram of a system 100 to which the method for data transmission according to the embodiment of the present application can be applied. As shown in fig. 1, the system 100 includes an access network device 102, and the access network device 102 may include 1 antenna or multiple antennas, e.g., antennas 104, 106, 108, 110, 112, and 114. Additionally, the access network device 102 can additionally include a transmitter chain and a receiver chain, each of which can comprise a plurality of components associated with signal transmission and reception (e.g., processors, modulators, multiplexers, demodulators, demultiplexers, antennas, etc.), as will be appreciated by one skilled in the art.
Access network device 102 may communicate with a plurality of terminal devices (e.g., terminal device 116 and terminal device 122). However, it is understood that access network device 102 may communicate with any number of terminal devices similar to terminal device 116 or terminal device 122. End devices 116 and 122 can be, for example, cellular phones, smart phones, laptops, handheld communication devices, handheld computing devices, satellite radios, global positioning systems, PDAs, and/or any other suitable device for communicating over wireless communication system 100.
As shown in fig. 1, terminal device 116 is in communication with antennas 112 and 114, where antennas 112 and 114 transmit information to terminal device 116 over a forward link (also called a downlink) 118 and receive information from terminal device 116 over a reverse link (also called an uplink) 120. In addition, terminal device 122 is in communication with antennas 104 and 106, where antennas 104 and 106 transmit information to terminal device 122 over forward link 124 and receive information from terminal device 122 over reverse link 126.
In a Frequency Division Duplex (FDD) system, forward link 118 may utilize a different frequency band than reverse link 120, and forward link 124 may employ a different frequency band than reverse link 126, for example.
As another example, in Time Division Duplex (TDD) systems and full duplex (full duplex) systems, forward link 118 and reverse link 120 may utilize a common frequency band and forward link 124 and reverse link 126 may utilize a common frequency band.
Each antenna (or group of antennas consisting of multiple antennas) and/or area designed for communication is referred to as a sector of the access network device 102. For example, antenna groups may be designed to communicate to terminal devices in a sector of the areas covered by access network device 102. The access network device may transmit signals to all terminal devices in its corresponding sector through single-antenna or multi-antenna transmit diversity. During communication by access network device 102 over forward links 118 and 124 with terminal devices 116 and 122, respectively, the transmitting antennas of access network device 102 may also utilize beamforming to improve signal-to-noise ratio of forward links 118 and 124. Furthermore, mobile devices in neighboring cells may experience less interference when access network device 102 utilizes beamforming to transmit to terminal devices 116 and 122 scattered randomly through an associated coverage area than if the access network device transmitted signals to all of its terminal devices through single or multiple antenna transmit diversity.
At a given time, access network device 102, terminal device 116, or terminal device 122 may be a wireless communication transmitting apparatus and/or a wireless communication receiving apparatus. When sending data, the wireless communication sending device may encode the data for transmission. Specifically, the wireless communication transmitting device may obtain (e.g., generate, receive from other communication devices, or save in memory, etc.) a number of data bits to be transmitted over the channel to the wireless communication receiving device. Such data bits may be contained in a transport block (or transport blocks) of data, which may be segmented to produce multiple code blocks.
Moreover, the communication system 100 may be a PLMN network, a device-to-device (D2D) network, a machine-to-machine (M2M) communication network, an internet of things (IoT) network, or other networks, fig. 1 is a simplified schematic diagram of an example, and other access network devices may be included in the network, which is not shown in fig. 1.
It should be appreciated that access network device 102 may be a sending node in embodiments of the present application and any number of terminal devices similar to terminal device 116 or terminal device 122 may be receiving nodes or target devices in embodiments of the present application. In addition, the sending node in this embodiment may also be a Programmable Logic Controller (PLC) in the industrial internet, and the receiving node may be any number of automatic guided devices (AGVs) in the industrial internet, which is not limited in this application.
When the network equipment communicates with the terminal equipment, the UE data of the application layer is finally mapped to a PDSCH or PUSCH channel. UE data of the application layer may be mapped onto a PDSCH channel of the UE, that is, only data information corresponding to a certain UE may be transmitted on a part of PRB resources.
The data information is influenced by the transmission environment during the transmission process. For example, in an industrial internet system, impulse noise of the industrial internet may be affected during data transmission. Electromagnetic pulse noise affecting 3GHz to 6GHz communication can be divided into two types:
the first type of electromagnetic impulse noise (case1) is a high frequency, long duration, periodic, single pulse.
The second type of electromagnetic impulse noise (case2) is high frequency, random pulse length, random arrival rate bursts.
When a part of PRB resources are interfered by case1 and case2 electromagnetic impulse noise, the terminal device cannot correctly demodulate data information on the PDSCH channel, so that the network device needs to perform data retransmission. However, in the retransmission process, the terminal device may be interfered by the same electromagnetic pulse noise, so that the terminal device still cannot correctly demodulate the data information, and finally the second data transmission fails. Therefore, under the condition of interference of a transmission environment, the terminal device may need to retransmit for multiple times in the data transmission process to correctly demodulate the data information, but the multiple retransmissions may result in that the requirement of time delay cannot be met.
For example, as shown in fig. 2, the downstream bandwidth includes 100 PRBs, where the PRBs 1-50 are used for transmitting data of AGVs 2, and the PRBs 51-100 are used for transmitting data of AGVs 1. The AGVs 1, 2 may experience different electromagnetic pulse noise when receiving signals because the AGVs 1, 2 are in different geographic locations. It is assumed that, at the first reception, the AGV1 is interfered with by the PRBs 51 to 100 of symbol 1, and the AGV2 is interfered with by the PRBs 1 to 50 of symbol 2, so that the AGV1 and the AGV2 cannot demodulate data correctly in the first reception, and the 2 nd transmission is required. If the AGV1 and the AGV2 of the 2 nd transmission are interfered by the same electromagnetic pulse, the AGV still fails to receive the second transmission, so the AGV of the 3 rd transmission may be required to correctly demodulate the data information sent to it by the PLC.
Under the condition of interference of a transmission environment, if data retransmitted by network equipment every time is the same, the reliability requirement of data information can be met only by retransmitting the terminal equipment for many times, and the retransmission times are more, so that the time delay requirement of the terminal equipment cannot be met.
Under the condition of being interfered by a transmission environment, how to reduce the retransmission times of data is a problem worthy of study on the premise of meeting the data transmission reliability.
In view of this, embodiments of the present application provide a method for data transmission, in which a sending node (e.g., a network device) may enable a receiving node to correctly demodulate data information with relatively fewer retransmission times. For example, when the sending node needs to send N data blocks, the sending node may encode the N data blocks by using a first encoding method to generate M encoded blocks corresponding to the N data blocks, where M is greater than or equal to N, and the first encoding method allows the receiving node to recover original data information when correctly decoding at least N encoded blocks, that is, allows the receiving node to correctly demodulate the N data block information when correctly decoding at least N encoded blocks. When retransmission is performed by the first coding scheme, information of a transmitted coding block is different from information of a coding block transmitted last time.
Fig. 3 shows a schematic flow chart of a data transmission method 200 according to an embodiment of the present application. The method 200 may be applied to the communication system 100 shown in fig. 1, but the embodiment of the present application is not limited thereto. Optionally, the method 200 may also be applied to vehicle-to-X (V2X), device-to-device (D2D) direct communication, relay communication, and other communication systems.
S210, a sending node (or an encoding end) may encode N data blocks that need to be sent to a receiving node (or a decoding end) by using a first encoding method, so as to generate M encoding blocks. Wherein one of the M coding blocks is a coding block obtained by coding d data blocks of the N data blocks, a first parameter in the first coding scheme is used to determine the d data blocks of the N data blocks, the first parameter is related to the transmission times of the N data blocks, M and N are integers greater than or equal to 1, M is greater than or equal to N, d is an integer greater than or equal to 1, and d is less than or equal to N.
For example, in an embodiment of the present application, the sending node may encode N data blocks by using the first encoding method, and generate M encoding blocks corresponding to the N data blocks, where the M encoding blocks may be encoding blocks having the same number as the N data blocks (that is, M may be equal to N), or encoding blocks having a number greater than the N data blocks (that is, M may be greater than N).
It should be noted that the first parameter may be different for different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks. Since the first parameter is different, d data blocks of the N data blocks determined according to the first parameter are also different. That is, for different transmission times or different slot numbers, at least one different data block exists in the determined d data blocks. That is, there is at least one different encoded block among the M encoded blocks generated for different numbers of transmissions.
It should be understood that a transmission of N data blocks at a time may be understood as a transmission of N data blocks as a whole at a time. The N data blocks are transmitted once as a whole, which may be a transmission after at least one data block of the N data blocks is encoded, that is, a transmission of a coding block corresponding to at least one data block of the N data blocks may be regarded as a transmission of the N data blocks.
It should also be understood that "transmission" in the embodiments of the present application should be flexibly understood, that is, "transmission" sometimes has the meaning of "transmission" and sometimes has the meaning of "reception". When the node is a sending node, the sending node can send coding blocks corresponding to the N data blocks; when the node is a receiving node, the receiving node may receive an encoded block corresponding to the N data blocks.
In embodiments of the present application, one data block may be one set of bits. For example, a data block may be a set of bits to be transmitted by a transmitting node; or may be a set of bits to be received by the receiving node.
In an embodiment of the present application, the receiving node may decode at least N of the M successful coding blocks when the sending node initially transmits, so that information of at least one of the N data blocks may be determined according to the second parameter. The receiving node may also be configured to decode at least N of the M coding blocks successfully after the transmitting node performs one or more retransmissions, so that information of at least one of the N data blocks may be determined according to the second parameter. At the time of one or more retransmissions, at least one different coding block exists in the M coding blocks of each transmission in two adjacent transmissions.
For example, for a successful transmission (e.g., when the initial transmission is successful), the receiving node may successfully decode at least N data blocks of the M coding blocks, so that information of at least one data block of the N data blocks may be obtained according to the second parameter. For two transmissions (e.g., initial transmission and retransmission) of the N data blocks, the receiving node may successfully decode at least N of the 2M coding blocks, so that information of at least one of the N data blocks may be obtained according to the second parameter. That is, for X transmissions, the receiving node may successfully decode at least N of the X × M coding blocks, so that information of at least one of the N data blocks may be obtained according to the second parameter.
In an embodiment of the present application, the first parameter may include at least one of an index value of d of the N data blocks, an offset value of d of the N data blocks, or a number size of d of the N data blocks.
In the embodiment of the present application, the first parameter may be different for different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks.
In a possible implementation manner, different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks may be used as the input variable x, and then the index values of d data blocks in the N data blocks are used as the values of the output function f (x). For different transmission times of the N data blocks or different slot numbers corresponding to the transmission of the N data blocks, the index values of the d data blocks may be different.
In a possible implementation manner, different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks may be used as the input variable x, and then the offset values of d data blocks in the N data blocks are used as the values of the output function f (x). The offset values of the d data blocks may be different for different transmission times of the N data blocks or different slot numbers corresponding to the transmission of the N data blocks.
In a possible implementation manner, different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks may be used as the input variable x, and the number of d data blocks in the N data blocks is used as the value of the output function f (x). The value of d may be different for different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks.
In a possible implementation manner, different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks may be used as the input variable x, and then the index values of d data blocks in the N data blocks and the offset values of d data blocks are used as the values of the output function f (x). For different transmission times of the N data blocks or different slot numbers corresponding to the transmission of the N data blocks, the index values of the d data blocks and the offset values of the d data blocks may be different.
In a possible implementation manner, different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks may be used as the input variable x, and the values of the index values of d data blocks in the N data blocks and the number of d data blocks are used as the values of the output function f (x). For different transmission times of the N data blocks or different slot numbers corresponding to the transmission of the N data blocks, the index values of the d data blocks and the number of the d data blocks may be different.
In a possible implementation manner, different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks may be used as the input variable x, and the offset values of d data blocks in the N data blocks and the number of d data blocks are used as the values of the output function f (x). For different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks, the offset values of the d data blocks and the number of the d data blocks may be different.
In a possible implementation manner, different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks may be used as the input variable x, and the values of the function f (x) whose output is the index values of d data blocks in the N data blocks, the offset values of d data blocks, and the number of d data blocks are taken as the values of the output. For different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks, the index values of the d data blocks, the offset values of the d data blocks, and the number of the d data blocks may be different.
It is understood that the function f (x) in the present application indicates that there is a correspondence between the input parameter x and the output parameter of the function f (x). Further, the correspondence is determined by the function.
Illustratively, the first parameter may be an index value of d data blocks of the N data blocks. I.e. the first parameter may be the number of d data blocks. The number of d data blocks may be the same for different transmission times or for the slot numbers corresponding to the transmission of N data blocks. When the number of the d data blocks is the same, at least one difference exists in the index values of the corresponding d data blocks, with different transmission times or the time slot numbers corresponding to the N data blocks.
For example, the N data blocks may be 5 data blocks having index values (numbers) of #1 to #5, the first parameter may be numbers #1 and #2 of d-2 data blocks for a first encoded block transmitted at a first time, the first encoded block may be obtained by Y1-X1 ⊕ X2 (where X1 may represent a data block having an index value of 1 and X2 may represent a data block having an index value of 2), the first parameter may be numbers #2 and #3 of d-2 data blocks for a first encoded block transmitted at a second time, that is, the first encoded block may be a data block having an index value of Y1-X2 ⊕ X3(X3 may represent a data block having an index value of 3) for a second time, that is, the two times of transmission are different, and the index of d data blocks in the N data blocks for the first parameter may be different.
For example, the N data blocks may be 5 data blocks with index values (numbers) of #1 to #5, the first data block is transmitted in a slot #0, the second data block is transmitted in a slot #6, the first parameter may be the numbers # (1+0mod 5) and # (2+0mod 5) of d-2 data blocks for the first coding block transmitted in a slot #0, that is, the numbers of d-2 data blocks are #1 and #2, that is, the first coding block may be Y25-X1 ⊕ X2 (where X1 may represent a data block with an index value of 1, X2 may represent a data block with an index value of 2), the first parameter may be the numbers (1+6mod 5) and X2 for the first coding block transmitted in a slot #6, that is, the first parameter may be the number of d-2 data blocks and may be (1+ 6) and the index value of N #3, that may be different data blocks, that is, when the first coding block includes the number of d-2 data block and the index value of N #3, the first coding block may be a different data block #3, that is a different data block # 3.
It should be noted that, when the first parameter is a parameter set, the parameter set may include a plurality of parameters. For two transmissions of N data blocks, the two transmissions correspond to two different sets of parameters, where the two different sets of parameters may have at least one different parameter. The above description of the first parameter applies to all embodiments in this application.
For example, the first parameter may include a slot number for transmitting the N data blocks and an index value of d data blocks. For the two transmissions of the N data blocks, the first parameter may include that the slot numbers corresponding to the transmissions of the N data blocks are the same, and the index values of the d data blocks included in the first parameter are different. The first parameter may also include different slot numbers for transmitting the N data blocks, and the first parameter may also include different index values for the d data blocks.
Illustratively, the first parameter may be a value of a number of d data blocks of the N data blocks. The number of d data blocks may be different for different transmission times of the N data blocks or different slot numbers corresponding to the transmission of the N data blocks.
For example, the N data blocks may be 5 data blocks having index values (numbers) of #1 to #5, the first parameter may be the size of the number of d data blocks, that is, d is 2, the numbers of the data blocks #1 and #2 may be determined according to d-2, that is, the first coding block may be Y1-X1 ⊕ X2 (where X1 may represent a data block having an index value of 1 and X2 may represent a data block having an index value of 2), the first parameter may be the size of the number of d data blocks, that is, d is 3, for the first coding block for the second transmission, and further, the numbers of the data blocks #1, #2 and #3 may be determined according to d-3, that is, the first coding block may be Y1-X1 ⊕ X2 ⊕ X3(X3 may represent a data block having an index value of 3) in the second transmission.
For example, the N data blocks may be 5 data blocks having index values (numbers) of #1 to #5, the first data block is transmitted in slot #0, the second data block is transmitted in slot #6, for the first coding block transmitted in slot #0, the first parameter may be the number size d of the data blocks of 2, the data block numbers of #1 and #2 may be determined according to d of 2, that is, the first coding block may be Y1 to X1 ⊕ X2 (where X1 may represent the data block having index value 1 and X2 may represent the data block having index value 2), for the first coding block transmitted in slot #6, the first parameter may be the number size d of the data block of X5636 to X3(X3 may represent the number of the data blocks of #1, #2 and #3, that is, for the second data block transmitted, that is, the first coding block may be Y1 to X56 2 ⊕ to X3(X3 may represent the number of the index blocks), that is, that the number of the data blocks may be different data blocks, that is, when the data blocks are transmitted twice, that is, the number of the first coding block numbers of the data blocks may be different data blocks.
Illustratively, the first parameter may be an index value including a number size of d data blocks of the N data blocks and the d data blocks. The first parameter may be different for different transmission times of the N data blocks, or different timeslot numbers corresponding to the transmission of the N data blocks.
For example, the N data blocks may be 5 data blocks having index values (numbers) of #1 to #5, for a first coding block transmitted for the first time, the first parameter may include the number size of the data blocks and the index values of the data blocks, that is, numbers #1 and #2 of d-2 and d-2 data blocks, that is, the first coding block may be Y1-X1 ⊕ X2 (where X1 may represent a data block having an index value of 1 and X2 may represent a data block having an index value of 2), for a first coding block transmitted for the second time, the first parameter may be the number size of the data blocks and the index values of the data blocks, that is, numbers #2, #3 and #4 of d-3 and d-3 data blocks, that is, for a first coding block transmitted for the second time, the first coding block may be Y1-X3 ⊕ X2 (X3 may represent a data block having an index value of 3, X4, that is, that when the first coding block transmitted for the second time, the first coding block may include different numbers of the data blocks, that is, and when the first coding block includes different index values, the number of the first coding block may also include different data blocks.
For example, the N data blocks may be 5 data blocks having index values (numbers) of #1 to #5, the first data block is transmitted in a time slot #0, the second data block is transmitted in a time slot #6, for a first coding block transmitted in the time slot #0, the first parameter may be the number size of the data blocks and the index values of the data blocks, that is, the numbers #1 and #2 of d-2 data blocks may be used, that is, the first coding block may be Y1-X1 ⊕ X2 (where X1 may represent a data block having an index value of 1 and X2 may represent a data block having an index value of 2), for a first coding block transmitted in the time slot #6, the first parameter may be d 3 and the numbers # (1+6mod 5), (2+6mod 5) and (3+6mod 5) of 3 data blocks, that is, when the number of d-3 data blocks and the number #3, that is, the number of the first coding block may be N #3, that is equal to the number of the first coding block #3, that is equal to the number of the first coding block #3, that is equal to the number of the first coding block #3, that is equal.
Illustratively, the first parameter may be an offset value of d data blocks of the N data blocks. For different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks, the first parameter, that is, the offset values of the d data blocks in the N data blocks, may be different.
For example, N data blocks may be 5 data blocks having index values (numbers) of #1 to #5, assuming that the number size of d data blocks is 2, for the first coding block transmitted for the first time, the first parameter may be an offset value of d data blocks of the N data blocks, that is, may be understood as an offset value of 0 with respect to the data block number #1, that is, may determine two data blocks of numbers #1 and #2, the first coding block may be Y1 ═ X1 ⊕ X2 (where X1 may represent a data block having an index value of 1 and X2 may represent a data block having an index value of 2), for the first coding block transmitted for the second time, the first parameter may be an offset value of d data blocks of the N data blocks, that is, may be understood as an offset value of 1 with respect to the data block number #1, that may determine two data blocks having numbers #2 and #3, that is, that the first coding block may be Y1 ═ X1 at the time of the second transmission, that may be understood as an offset value of X2 ⊕, that may include different numbers of the first transmission, that is, and that the first parameter may include the number of the first transmission parameter 6778, that is, that includes different data blocks.
It should be understood that the above is a possible implementation, and the first parameter is not limited in any way by this application.
By way of example and not limitation, in embodiments of the present application, the first encoding manner may be the following encoding manner:
a transmitting node (or encoding apparatus) may encode N data blocks by an encoder (e.g., using a fountain code encoding scheme) to generate a plurality (i.e., M, where the value of M may be infinite or regarded as infinite) of encoded blocks/encoding units, or to generate a codeword sequence that is infinitely long or regarded as infinitely long, and may obtain information of the N data blocks by decoding at least N of the M encoded blocks/encoding units.
It should be understood that the above-mentioned example encoding method is only one example of the first encoding method in the embodiment of the present application, and the first encoding method in the embodiment of the present application is not particularly limited, and the first encoding method in the embodiment of the present application may be another fountain code implementation method or another encoding method as long as the function of the first encoding method in the embodiment of the present application is the same.
According to the data transmission method of the embodiment of the application, at least one different coding block exists in the M coding blocks generated corresponding to the first transmission of the N data blocks and the M coding blocks generated corresponding to the second transmission of the N data blocks. That is, in the embodiment of the present application, at the time of one or more retransmissions, at least one different coded block exists in M coded blocks of each transmission in two adjacent transmissions. The receiving node may determine information for N data blocks if it succeeds in decoding at least N encoded blocks.
S220, the sending node sends a first coding block group, where the first coding block group includes the M coding blocks.
For example, the first coding block group may be transmitted in a unicast manner, a multicast manner, or a broadcast manner.
Specifically, in the embodiment of the present application, the transmission for the first coding block group may include the following cases:
case1
The sending node may send the first coding block group to the plurality of receiving nodes in a unicast manner, for one or more receiving nodes.
Case2
The transmitting node may transmit the first coding block set to the plurality of receiving nodes in a broadcast manner with respect to one or more receiving nodes. When the first coding block group is sent in a broadcast manner, the sending node needs to indicate scheduling information of M coding blocks and determine time-frequency resources mapped by the M coding blocks in the broadcast first coding block group.
It should be understood that the time-frequency resource mapped by the M coding blocks may be regarded as the time-frequency resource mapped after the M coding blocks are preprocessed.
Case 3
The transmitting node may transmit the first set of coding blocks to the plurality of receiving nodes in a multicast format for one or more receiving nodes. When the first coding block group is sent in a multicast mode, a sending node needs to indicate scheduling information of M coding blocks and determine time-frequency resources mapped by the M coding blocks in the multicast first coding block group.
It should be understood that the time-frequency resource mapped by the M coding blocks may be regarded as the time-frequency resource mapped after the M coding blocks are preprocessed.
As an optional embodiment, the scheduling information includes at least one of the following information: the physical resource block PRB, the time domain resource, the modulation and demodulation strategy MCS, the mapping mode and the physical resource block bundling size, wherein the mapping mode comprises centralized resource mapping and distributed resource mapping.
For example, in the embodiment of the present application, the transmitting node may transmit the scheduling information by means of a multicast PDCCH, that is, the transmitting node and the receiving node may transmit physical resource blocks PRB, time domain resources, modulation and demodulation policies MCS, a mapping mode and a physical resource block bundling size by means of DCI carried on the multicast PDCCH, where the mapping mode includes at least one of a centralized resource mapping and a distributed resource mapping information.
Exemplarily, in an embodiment of the present application, the transmitting node may semi-statically configure resource transmission scheduling information through higher layer signaling, that is, a physical resource block PRB, a time domain resource, a modulation and demodulation strategy MCS, a mapping mode and a physical resource block bundling size may be transmitted between the transmitting node and the receiving node through RRC signaling, where the mapping mode includes at least one of centralized resource mapping and distributed resource mapping information.
For example, in an embodiment of the present application, a sending node may transmit the scheduling information in a semi-persistent resource scheduling manner, and a higher layer signaling (e.g., RRC signaling) configures a period of the scheduling information, in a semi-persistent scheduling system, a resource (including an uplink resource or a downlink resource) is allocated or specified once through a PDCCH, and then the same physical resource may be periodically reused, where the physical resource may be one or more of a frequency domain resource, a code domain resource, a spatial domain resource, and a power domain resource.
Exemplarily, in the embodiment of the present application, the scheduling information of the M coding blocks may also be predefined, that is, the transmitting node and the receiving node transmit the M coding blocks using predefined physical resource blocks PRB, time domain resources, modulation and demodulation strategies MCS, mapping modes, and so on.
As an optional embodiment, the method further comprises: the sending node sends first information, wherein the first information is used for indicating target equipment corresponding to at least one data block in the N data blocks.
Illustratively, the first information may be used to indicate a target device to which each of the N data blocks corresponds.
For example, the N data blocks may be two data blocks, the two data blocks may respectively correspond to two receiving nodes, and the first information may be used to indicate that the first data block corresponds to the first receiving node and to indicate that the second data block corresponds to the second receiving node.
For example, the first information may be used to indicate a target device to which a part of the N data blocks corresponds.
For example, the N data blocks may be two data blocks, the two data blocks may respectively correspond to two receiving nodes, the first information may be used to indicate that the first data block corresponds to the first receiving node, and then the second data block may correspond to the second receiving node.
In one possible implementation, the first information may be carried in an RRC message. The scheduling information may be carried in the same RRC message as the first information, or may be carried in a different RRC message from the first information; alternatively, the scheduling information may also be in the PDCCH. The scheduling information is used to indicate a first time-frequency resource, and the first time-frequency resource is used to carry the M coding blocks.
It should be understood that the first time-frequency resource for carrying M coding blocks may be regarded as mapping the M coding blocks onto the first time-frequency resource after preprocessing.
In a possible implementation manner, the first information may be carried in a PDCCH, and the scheduling information may be carried in the same PDCCH as the first information or may be carried in a PDCCH different from the first information; alternatively, the scheduling information may be carried in an RRC message.
Illustratively, the scheduling information may include at least one of the following information:
the physical resource block PRB, the time domain resource, the modulation and demodulation strategy MCS, the mapping mode and the physical resource block bundling size, wherein the mapping mode comprises centralized resource mapping and distributed resource mapping.
Next, an information process in which the receiving node acquires the first coding block group and decodes the N data blocks will be described.
A receiving node may receive a first coding block group, the first coding block group comprising M coding blocks; decoding at least N of the M encoded blocks; and determining information of at least one data block in the N data blocks according to a second parameter and the at least N coding blocks, wherein the second parameter is used for determining that one coding block in the at least N coding blocks corresponds to d data blocks in the N data blocks, the second parameter is related to the transmission times of the N data blocks, M and N are integers which are larger than 1 and M is larger than N, d is an integer which is larger than or equal to 1, and d is smaller than or equal to N.
Illustratively, in the embodiments of the present application, the M coding blocks received by the receiving node may be coding blocks with the number equal to that of N data blocks (i.e., M may be equal to N), or may be coding blocks with the number greater than that of N data blocks (i.e., M may be greater than N).
In an embodiment of the present application, the receiving node may decode at least N of the M coding blocks and determine information of at least one of the N data blocks by the second parameter and the N coding blocks. The second parameter is related to the number of transmission times of the N data blocks, that is, the second parameter may be different for different number of transmission times of the N data blocks, that is, the determined information of at least one data block in the N data blocks may also be different. The influence of the same environment interference on repeated transmission for multiple times is avoided, the information acquisition failure of the same data block caused by the repeated transmission is avoided, and the transmission failure of N data blocks is caused. By the data transmission method, the probability of successful data reception can be improved, the retransmission times can be reduced, the reliability of data transmission can be improved, and the time delay of data transmission can be reduced.
It is to be understood that in embodiments of the present application, the second parameter may be the same parameter as the first parameter. The second parameter may also be a parameter corresponding to the first parameter (for example, one or more parameters generated by processing the first parameter), which is not limited in this application.
It should be noted that, in the embodiment of the present application, one transmission of N data blocks may be understood as performing one transmission of N data blocks as a whole. The N data blocks are transmitted once as a whole, which may be a transmission after at least one data block of the N data blocks is encoded, that is, a transmission of a coding block corresponding to at least one data block of the N data blocks may be regarded as a transmission of the N data blocks.
The term "transmission" in the embodiments of the present application should be understood flexibly, that is, the term "transmission" sometimes has the meaning of "transmission" and sometimes has the meaning of "reception". When the node is a receiving node, the receiving node can receive the coding blocks corresponding to the N data blocks; when the node is a transmitting node, the transmitting node may transmit the encoded blocks corresponding to the N data blocks.
For example, the second parameter may include at least one of an index value of d of the N data blocks, an offset value of d of the N data blocks, or a size of a number of d of the N data blocks.
In an embodiment of the application, the second parameter is different for different transmission times.
It should be noted that, the number of d data blocks in the N data blocks may be a value of d, or may be a value corresponding to d (that is, one or more values output by a function with d as an input may be understood). The value of d may be different for different transmission times of the N data blocks.
For example, the second parameter may be an index value of d data blocks in the N data blocks, or may be a value corresponding to the index value of the d data blocks (i.e., one or more values of an output of a function that takes the index value of the d data blocks as an input may be understood). And at least one difference exists in the determined index values of the d data blocks for different transmission times of the N data blocks or different time slot numbers corresponding to the N data blocks.
For example, the second parameter may be offset values of d data blocks in the N data blocks, or may be values corresponding to the offset values of the d data blocks (i.e., one or more values of the output of a function having the offset values of the d data blocks as input may be understood). The offset values of the d data blocks may be different for different transmission times of the N data blocks or different slot numbers corresponding to the transmission of the N data blocks.
Illustratively, the second parameter may include index values of d data blocks of the N data blocks and a number size of the d data blocks. The second parameter may also include values corresponding to the index values of the d data blocks and the number of the d data blocks (i.e., one or more values of the output of a function in which the index values of the d data blocks and the number of the d data blocks are used as inputs may be understood). For different transmission times of the N data blocks or different slot numbers corresponding to the transmission of the N data blocks, the index values of the d data blocks and the number of the d data blocks may be different.
For example, the number of d data blocks may be the same size, and the index values of the d data blocks may be different. The number of d data blocks may be different, and the index values of the d data blocks may be different.
For example, the second parameter may include an index value of d data blocks and an offset value of d data blocks in the N data blocks, or the second parameter may include values corresponding to the index value of d data blocks and the offset value of d data blocks (i.e., one or more values of an output of a function that takes the index value of d data blocks and the offset value of d data blocks as inputs). For different transmission times of the N data blocks or different slot numbers corresponding to the transmission of the N data blocks, the index values of the d data blocks and the offset values of the d data blocks may be different.
For example, the second parameter may include offset values of d data blocks and number sizes of the d data blocks in the N data blocks, or the second parameter may include values corresponding to the offset values of the d data blocks and the number sizes of the d data blocks (i.e., one or more values of an output of a function that takes the offset values of the d data blocks and the number sizes of the d data blocks as inputs). For different transmission times of the N data blocks or different time slot numbers corresponding to the transmission of the N data blocks, the offset values of the d data blocks and the number of the d data blocks are different in size.
For example, the second parameter may include an index value of d data blocks of the N data blocks, an offset value of d data blocks, and a number size of d data blocks, or the second parameter may include values corresponding to the index value of d data blocks of the N data blocks, the offset value of d data blocks, and the number size of d data blocks (i.e., one or more values that may be understood as an output of a function having the index value of d data blocks, the offset value of d data blocks, and the number size of d data blocks as inputs). For different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks, the index values of the d data blocks, the offset values of the d data blocks, and the number of the d data blocks may be different.
The above is a possible implementation manner, and the present application does not set any specific limitation on the implementation manner of the second parameter.
In the embodiment of the present application, the second parameter may be different for different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks.
In a possible implementation manner, different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks may be used as the input variable k, and then the index values of d data blocks in the N data blocks are used as the values of the output function y (k). For different transmission times of the N data blocks or different slot numbers corresponding to the transmission of the N data blocks, the index values of the d data blocks may be different.
In a possible implementation manner, different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks may be used as the input variable k, and then the offset values of d data blocks in the N data blocks are used as the values of the output function y (k). The offset values of the d data blocks may be different for different transmission times of the N data blocks or different slot numbers corresponding to the transmission of the N data blocks.
In a possible implementation manner, different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks may be used as the input variable k, and the number of d data blocks in the N data blocks is used as the value of the output function y (k). The value of d may be different for different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks.
In a possible implementation manner, different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks may be used as the input variable k, and the index values of d data blocks in the N data blocks and the offset values of d data blocks are used as the values of the output function y (k). For different transmission times of the N data blocks or different slot numbers corresponding to the transmission of the N data blocks, the index values of the d data blocks and the offset values of the d data blocks may be different.
In a possible implementation manner, different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks may be used as the input variable k, and the index values of d data blocks in the N data blocks and the number of d data blocks are used as the values of the output function y (k). For different transmission times of the N data blocks or different slot numbers corresponding to the transmission of the N data blocks, the index values of the d data blocks and the number of the d data blocks may be different.
In a possible implementation manner, different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks may be used as the input variable k, and the offset values of d data blocks in the N data blocks and the number of d data blocks are used as the values of the output function y (k). For different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks, the offset values of the d data blocks and the number of the d data blocks may be different.
In a possible implementation manner, different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks may be used as the input variable k, and the values of the function y (k) whose output is the index values of d data blocks in the N data blocks, the offset values of d data blocks, and the number of d data blocks are used as the values of the output. For different transmission times of the N data blocks or different timeslot numbers corresponding to the transmission of the N data blocks, the index values of the d data blocks, the offset values of the d data blocks, and the number of the d data blocks may be different.
It is understood that the function y (k) in the present application indicates that there is a correspondence between the input parameter k and the output parameter of the function y (k). Further, the correspondence is determined by the function.
By way of example and not limitation, a receiving node may attempt to decode M encoded blocks of a received first group of encoded blocks, for example.
If the receiving node can correctly decode at least N coding blocks in the first coding block group, the receiving node may determine information of N data blocks sent by the sending node.
As an alternative embodiment, when the receiving node successfully decodes at least N coding blocks in the first coding block group, i.e. the receiving node can determine the information of the N data blocks sent by the sending node, the receiving node may send an affirmative reply to the sending node.
As an alternative embodiment, when the receiving node successfully decodes at least N coding blocks in the first coding block group, that is, when the receiving node can determine the information of N data blocks sent by the sending node, the receiving node may not send a negative reply or a positive reply within a preset duration.
As an alternative embodiment, the receiving node fails to decode at least N encoded blocks in the first group of encoded blocks. For example, if the receiving node fails to decode at least N encoded blocks, that is, the receiving node cannot determine the information of the N data blocks sent by the sending node, the receiving node may send a negative reply to the sending node, where the negative reply is used to indicate that the receiving node failed to decode at least N encoded blocks in the first encoded block group, that is, to indicate that the receiving node cannot restore the information of the N data blocks through the encoded blocks.
It should be noted that, in the embodiment of the present application, the negative reply sent by the receiving node may be NACK information or a scheduling request SR sent by any receiving node, which is used to indicate that at least N coding blocks are not successfully decoded. The negative reply may be a trigger condition that triggers the sending node to retransmit the data.
For example, for two transmissions (e.g., initial transmission and retransmission) of N data blocks, the receiving node may successfully decode at least N of the 2M coding blocks, thereby obtaining information of the N data blocks. That is, for X transmissions, it may be that the receiving node successfully decodes at least N of the X × M encoded blocks, thereby obtaining information of N data blocks.
Optionally, the method further comprises:
and receiving first information, wherein the first information is used for indicating target equipment corresponding to at least one data block in the N data blocks.
When the receiving node successfully decodes at least N encoded blocks, the receiving node may determine, according to information indicating a target device corresponding to at least one data block of the N data blocks included in the first information, a certain data block or certain data blocks of the N data blocks that need to be received.
For example, the N data blocks may include data blocks that the sending node sends to multiple receiving nodes, and the first receiving node determines, according to the information of the N data blocks and the first information, information of the data blocks that the sending node sends to the first receiving node.
Illustratively, the first information may be carried in an RRC message. The scheduling information may be carried in the same RRC message as the first information, or may be carried in a different RRC message from the first information; alternatively, the scheduling information may be in a Physical Downlink Control Channel (PDCCH). The scheduling information is used to indicate a first time-frequency resource, and the first time-frequency resource is used to carry the M coding blocks.
It should be understood that the first time-frequency resource for carrying M coding blocks may be regarded as mapping the M coding blocks onto the first time-frequency resource after preprocessing.
For example, the first information may be carried in a PDCCH, and the scheduling information may be carried in the same PDCCH as the first information or may be carried in a PDCCH different from the first information; alternatively, the scheduling information may be carried in an RRC message.
Optionally, the scheduling information may include at least one of the following information: the physical resource block PRB, the time domain resource, the modulation and demodulation strategy MCS, the mapping mode and the physical resource block bundling size, wherein the mapping mode comprises centralized resource mapping and distributed resource mapping.
It should be understood that the sequence numbers of the above-mentioned processes do not mean the execution sequence, and the execution sequence of each process should be determined by its function and inherent logic, and should not constitute any limitation to the implementation process of the embodiments of the present application.
As described above in detail, according to the method for data transmission in the embodiment of the present application, in the present application, a sending node (e.g., a coding device) may generate M coding blocks by coding N data blocks in a first coding manner, and for two adjacent transmissions, at least one different coding block exists in the M coding blocks transmitted each time, thereby avoiding multiple transmission failures caused by the influence of the same environmental interference when the same coding block is repeatedly transmitted multiple times, improving the high reliability of data transmission, and reducing the latency requirement of data transmission. It should be understood that the transmitting node (e.g., encoding device), receiving node (e.g., decoding device) of the embodiments of the present application may execute the foregoing methods of the embodiments of the present application, that is, the following specific working processes of various products, and reference may be made to the corresponding processes in the foregoing method embodiments.
Hereinafter, an apparatus according to an embodiment of the present application will be described in detail with reference to fig. 4 to 8.
Fig. 4 shows a schematic block diagram of an apparatus 400 provided in an embodiment of the present application (the apparatus 400 in fig. 4 may be a network device in fig. 1). The apparatus corresponds to the sending node in the above embodiment, and specifically, the apparatus 400 may be a sending node (e.g., an encoding device) or may be a chip in the sending node. The apparatus 400 comprises: a processing unit 410 and a transceiving unit 420.
A processing unit 410, configured to encode N data blocks by using a first encoding scheme to generate M encoding blocks, where one encoding block of the M encoding blocks is an encoding block obtained by encoding d data blocks of the N data blocks, a first parameter in the first encoding scheme is used to determine d data blocks of the N data blocks, the first parameter is related to the number of transmission times of the N data blocks, M and N are integers greater than 1 and M is greater than N, d is an integer greater than or equal to 1, and d is less than or equal to N.
A transceiving unit 420, configured to transmit a first coding block group, where the first coding block group includes the M coding blocks.
In the data transmission method of the embodiment of the application, N data blocks are encoded by using a first encoding method to generate M encoding blocks, where for different transmission times of the N data blocks or different timeslot numbers corresponding to the N data blocks, the first parameter may be different. Since the first parameter is different, d data blocks of the N data blocks determined according to the first parameter are also different. That is to say, for different transmission times, at least one different coding block exists in the M coding blocks transmitted each time in two adjacent transmissions, so that multiple transmission failures caused by the influence of the same environmental interference when the same coding block is repeatedly transmitted for multiple times are avoided. By the data transmission method, the probability of successful data reception can be improved, the retransmission times can be reduced, the reliability of data transmission can be improved, and the time delay of data transmission can be reduced.
Optionally, the first parameter includes at least one of an index value of d of the N data blocks, an offset value of d of the N data blocks, or a number size of d of the N data blocks.
Optionally, the first parameter is related to the number of transmissions of the N data blocks, and includes: the first parameter is different for different transmission times.
Optionally, for different transmission times, the d data blocks in the N data blocks determined according to the first parameter are different.
Optionally, for different transmission times, the index values of d data blocks in the N data blocks are different; or, for different transmission times, the offset values of d data blocks in the N data blocks are different; or, for different transmission times, the number of d data blocks in the N data blocks is different in size; or, for different transmission times, the index values of d data blocks in the N data blocks are different from the offset values of d data blocks in the N data blocks; or, for different transmission times, the index values of d data blocks in the N data blocks are different from the number of d data blocks in the N data blocks; or, for different transmission times, the offset values of d data blocks in the N data blocks are different from the number of d data blocks in the N data blocks; or, for different transmission times, the index values of d data blocks in the N data blocks, the offset values of d data blocks in the N data blocks, and the number of d data blocks in the N data blocks are different.
Optionally, the transceiver unit 420 is further configured to: receiving a negative reply sent from at least one node device;
the transceiving unit 420 is further configured to: and sending a second coding block group, wherein the second coding block group comprises M coding blocks, and at least one different coding block exists between the second coding block group and the first coding block group.
In the embodiment of the present application, when the sending node receives a negative reply sent by the receiving node, the negative reply may be NACK information or a scheduling request sent by any one receiving node, and is used to indicate that at least N coding blocks are not successfully decoded. The negative reply may be a trigger condition for triggering the sending node to perform data retransmission, in an embodiment of the present application, the first coding block group initially transmitted and the second coding block group retransmitted are different, and at least one different coding block exists in the first coding block group and the second coding block group.
Optionally, the transceiver unit 420 is further configured to: and sending first information, wherein the first information is used for indicating target equipment corresponding to at least one data block in the N data blocks.
In one possible implementation, the first information may be carried in an RRC message. The scheduling information may be carried in the same RRC message as the first information, or may be carried in a different RRC message from the first information; alternatively, the scheduling information may be in a Physical Downlink Control Channel (PDCCH). The scheduling information is used to indicate a first time-frequency resource, and the first time-frequency resource is used to carry the M coding blocks.
It should be understood that the first time-frequency resource for carrying M coding blocks may be regarded as mapping the M coding blocks onto the first time-frequency resource after preprocessing.
In a possible implementation manner, the first information may be carried in a PDCCH, and the scheduling information may be carried in the same PDCCH as the first information or may be carried in a PDCCH different from the first information; alternatively, the scheduling information may be carried in an RRC message.
Optionally, the scheduling information includes at least one of the following information: the physical resource block PRB, the time domain resource, the modulation and demodulation strategy MCS, the mapping mode and the physical resource block bundling size, wherein the mapping mode comprises centralized resource mapping and distributed resource mapping.
Optionally, the first coding mode is a mode of coding by using a fountain code.
It should be appreciated that the apparatus 400 herein is embodied in the form of a functional unit. The term "unit" herein may refer to an Application Specific Integrated Circuit (ASIC), an electronic circuit, a processor (e.g., a shared, dedicated, or group processor) and memory that execute one or more software or firmware programs, a combinational logic circuit, and/or other suitable components that support the described functionality. In an optional example, it may be understood by those skilled in the art that the apparatus 400 may be specifically a sending node in the foregoing embodiment, and the apparatus 400 may be configured to perform each procedure and/or step corresponding to the sending node in the foregoing method embodiment, and in order to avoid repetition, details are not described here again.
The apparatus 400 of each of the above schemes has a function of implementing corresponding steps executed by a sending node in the above method; the functions can be realized by hardware, and the functions can also be realized by executing corresponding software by hardware. The hardware or software comprises one or more modules corresponding to the functions; for example, the transceiver unit may include a transmitting unit and a receiving unit, wherein the transmitting unit may be replaced by a transmitter, the receiving unit may be replaced by a receiver, other units, such as a processing unit and the like, may be replaced by a processor, and the transceiving operation and the related processing operation in each method embodiment are respectively performed.
In the embodiment of the present application, the apparatus in fig. 4 may also be a chip or a chip system, for example: system on chip (SoC). Correspondingly, the receiving unit and the transmitting unit may be a transceiver circuit of the chip, and are not limited herein.
Fig. 5 shows a schematic block diagram of an apparatus 500 provided in an embodiment of the present application (the apparatus 500 in fig. 5 may be any one of the terminal devices in fig. 1). The apparatus corresponds to the receiving node in the above embodiment, and specifically, the apparatus 500 may be a receiving node (e.g., a decoding device) or a chip in the receiving node. The apparatus 500 comprises: a processing unit 510 and a transceiving unit 520.
The transceiver unit 520 is configured to receive a first coding block group, where the first coding block group includes M coding blocks.
The processing unit 510 is configured to decode at least N of the M coding blocks.
The processing unit 510 is further configured to determine information of at least one data block of N data blocks according to a second parameter and the at least N coding blocks, where the second parameter is used to determine that one coding block of the at least N coding blocks corresponds to d data blocks of the N data blocks, the second parameter is related to the number of transmissions of the N data blocks, M and N are integers greater than 1 and M is greater than N, d is an integer greater than or equal to 1, and d is less than or equal to N.
In the data transmission method of the embodiment of the application, the receiving node may decode at least N coding blocks of the M coding blocks, and determine information of at least one data block of the N data blocks through the second parameter and the N coding blocks. The second parameter is related to the number of transmission times of the N data blocks, that is, the second parameter may be different for different number of transmission times of the N data blocks, that is, the determined information of at least one data block in the N data blocks may also be different. The influence of the same environment interference on repeated transmission for multiple times is avoided, the information acquisition failure of the same data block caused by the repeated transmission is avoided, and the transmission failure of N data blocks is caused. By the data transmission method, the probability of successful data reception can be improved, the retransmission times can be reduced, the reliability of data transmission can be improved, and the time delay of data transmission can be reduced.
It should be noted that, in the embodiment of the present application, the second parameter may be the same parameter as the first parameter. The second parameter may also be a parameter corresponding to the first parameter (for example, one or more parameters generated by processing the first parameter), which is not limited in this application.
Optionally, the second parameter includes at least one of an index value of d of the N data blocks, an offset value of d of the N data blocks, or a number size of d of the N data blocks.
Optionally, the second parameter is related to the number of transmissions of the N data blocks, and includes: the second parameter is different for different transmission times.
Optionally, for different transmission times, the d data blocks in the N data blocks determined according to the second parameter are different.
Optionally, for different transmission times, the offset values of d data blocks in the N data blocks are different; or, for different transmission times, the number of d data blocks in the N data blocks is different in size; or, for different transmission times, the index values of d data blocks in the N data blocks are different from the offset values of d data blocks in the N data blocks; or, for different transmission times, the index values of d data blocks in the N data blocks are different from the number of d data blocks in the N data blocks; or, for different transmission times, the offset values of d data blocks in the N data blocks are different from the number of d data blocks in the N data blocks; or, for different transmission times, the index values of d data blocks in the N data blocks, the offset values of d data blocks in the N data blocks, and the number of d data blocks in the N data blocks are different.
Optionally, the transceiver unit 520 is further configured to: transmitting a negative reply when the at least N encoded blocks are not decoded correctly; the transceiver unit 520 is further configured to: receiving a second coding block group, where the second coding block group includes M coding blocks, and there is at least one different coding block between the second coding block group and the first coding block group.
Optionally, the transceiver unit 520 is further configured to: receiving first information, wherein the first information is used for indicating target equipment corresponding to at least one data block in the N data blocks; the processing unit 510 is specifically configured to: and determining the information of the data block which needs to be received in the N data blocks according to the information of the N data blocks and the first information.
In one possible implementation, the first information may be carried in an RRC message. The scheduling information may be carried in the same RRC message as the first information, or may be carried in a different RRC message from the first information; alternatively, the scheduling information may be in a Physical Downlink Control Channel (PDCCH). The scheduling information is used to indicate a first time-frequency resource, and the first time-frequency resource is used to carry the M coding blocks.
It should be understood that the first time-frequency resource for carrying M coding blocks may be regarded as mapping the M coding blocks onto the first time-frequency resource after preprocessing.
In a possible implementation manner, the first information may be carried in a PDCCH, and the scheduling information may be carried in the same PDCCH as the first information or may be carried in a PDCCH different from the first information; alternatively, the scheduling information may be carried in an RRC message.
Optionally, the scheduling information includes at least one of the following information: the physical resource block PRB, the time domain resource, the modulation and demodulation strategy MCS, the mapping mode and the physical resource block bundling size, wherein the mapping mode comprises centralized resource mapping and distributed resource mapping.
Optionally, the first coding mode is a mode of coding by using a fountain code.
It should be appreciated that the apparatus 500 herein is embodied in the form of a functional unit. The term "unit" herein may refer to an Application Specific Integrated Circuit (ASIC), an electronic circuit, a processor (e.g., a shared, dedicated, or group processor) and memory that execute one or more software or firmware programs, a combinational logic circuit, and/or other suitable components that support the described functionality. In an optional example, it may be understood by those skilled in the art that the apparatus 500 may be specifically a receiving node in the foregoing embodiment, and the apparatus 500 may be configured to perform each procedure and/or step corresponding to the sending node in the foregoing method embodiment, and in order to avoid repetition, details are not described here again.
The apparatus 500 of each of the above aspects has a function of implementing corresponding steps executed by the receiving node in the above method; the functions can be realized by hardware, and the functions can also be realized by executing corresponding software by hardware. The hardware or software comprises one or more modules corresponding to the functions; for example, the transceiver unit may include a transmitting unit and a receiving unit, the transmitting unit may be replaced by a transmitter, the receiving unit may be replaced by a receiver, other units, such as a processing unit, may be replaced by a processor, and the transceiving operation and the related processing operation in the respective method embodiments are respectively performed.
In the embodiment of the present application, the apparatus in fig. 5 may also be a chip or a chip system, for example: system on chip (SoC). Correspondingly, the receiving unit and the transmitting unit may be a transceiver circuit of the chip, and are not limited herein.
Fig. 6 illustrates another apparatus 600 provided by an embodiment of the present application. The apparatus 600 includes a processor 610, a transceiver 620, and a memory 630. Wherein the processor 610, the transceiver 620 and the memory 630 are in communication with each other through an internal connection path, the memory 630 is used for storing instructions, and the processor 610 is used for executing the instructions stored in the memory 630 to control the transceiver 620 to transmit and/or receive signals.
In one possible design, the processor 610 is configured to: encoding N data blocks by adopting a first encoding mode to generate M encoding blocks, wherein a first parameter in the first encoding mode is used for determining d data blocks in the N data blocks, the first parameter is related to the transmission times of the N data blocks, one encoding block in the M encoding blocks is obtained by encoding d data blocks in the N data blocks, M and N are integers which are larger than 1 and larger than N, d is an integer which is larger than or equal to 1, and d is smaller than or equal to N; the transceiver 620 is configured to: and sending a first coding block group, wherein the first coding block group comprises the M coding blocks.
It should be understood that the apparatus 600 may be embodied as a sending node (e.g., an encoding device) in the foregoing embodiments, and may be configured to perform each step and/or flow corresponding to the sending node in the foregoing method embodiments. Alternatively, the memory 630 may include both read-only memory and random access memory, and provides instructions and data to the processor. The portion of memory may also include non-volatile random access memory. For example, the memory may also store device type information. The processor 610 may be configured to execute instructions stored in the memory, and when the processor 610 executes the instructions stored in the memory, the processor 610 is configured to perform the various steps and/or procedures of the method embodiments corresponding to the sending node described above.
In one possible design, the transceiver 620 is configured to: receiving a first coding block group, wherein the first coding block group comprises M coding blocks; the processor 610 is configured to: decoding at least N of the M encoded blocks; the processor 610 is further configured to: and determining information of at least one data block in the N data blocks according to a second parameter and the at least N coding blocks, wherein the second parameter is used for determining that one coding block in the at least N coding blocks corresponds to d data blocks in the N data blocks, the second parameter is related to the transmission times of the N data blocks, M and N are integers which are larger than 1 and M is larger than N, d is an integer which is larger than or equal to 1, and d is smaller than or equal to N.
It should be understood that the apparatus 600 may be embodied as a receiving node in the foregoing embodiments, and may be used to execute each step and/or flow corresponding to the receiving node in the foregoing method embodiments. Alternatively, the memory 630 may include both read-only memory and random access memory, and provides instructions and data to the processor. The portion of memory may also include non-volatile random access memory. For example, the memory may also store device type information. The processor 610 may be configured to execute instructions stored in the memory, and when the processor 610 executes the instructions stored in the memory, the processor 610 is configured to perform the various steps and/or processes of the method embodiments corresponding to the receiving node described above.
It should be understood that in the embodiment of the present application, the processor of the above apparatus may be a Central Processing Unit (CPU), and the processor may also be other general processors, Digital Signal Processors (DSPs), Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, and the like. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
In one possible implementation, the memory 630 may be included in the processor 610. Alternatively, it is understood that the processor 610 itself can execute the function of the memory 630 for storing instructions, which is not limited in this application.
Fig. 7 is a schematic structural diagram of an apparatus 700 according to an embodiment of the present application, which may be, for example, a schematic structural diagram when a sending node is a network device. The network device 700 may be applied in a system as shown in fig. 1, and performs the functions of the sending node in the above-described method embodiments.
As shown, the exemplary network device 700 may include one or more radio frequency units, such as a Remote Radio Unit (RRU) 710 and one or more baseband units (BBUs) (also referred to as digital units, DUs) 720. The RRU710 may be referred to as a communication unit or a transceiver unit, and corresponds to the transceiver unit 420 in fig. 4. Alternatively, the transceiver unit 710 may also be referred to as a transceiver, a transceiver circuit, a transceiver, or the like, and may include at least one antenna 711 and a radio frequency unit 712.
Alternatively, the transceiver unit 420 may include a receiving unit and a transmitting unit, where the receiving unit may correspond to a receiver (or receiver or receiving circuit), and the transmitting unit may correspond to a transmitter (or transmitter or transmitting circuit). The RRU710 is mainly used for transceiving radio frequency signals and converting the radio frequency signals to baseband signals, for example, for transmitting the first coding block group to a receiving node. The BBU720 part is mainly used for performing baseband processing, controlling network equipment and the like. The RRU710 and the BBU720 may be physically disposed together or may be physically disposed separately, i.e., distributed base stations.
The BBU720 is a control center of a network device, and may also be referred to as a processing unit, and may correspond to the processing unit 410 included in the apparatus 400, and is mainly used for performing baseband processing functions, such as channel coding, multiplexing, modulation, spreading, and the like. For example, the BBU (processing unit) may be configured to control the base station to perform the operation procedure related to the network device in the foregoing method embodiment, for example, encode N data blocks by using the first encoding method to generate M encoding blocks, and the like.
In an example, the BBU720 may be formed by one or more boards, and the boards may support a radio access network of a single access system (e.g., an LTE network) together, or may support radio access networks of different access systems (e.g., an LTE network, a 5G network, or other networks) respectively. The BBU720 also includes a memory 721 and a processor 722. The memory 721 is used to store the necessary instructions and data. The processor 722 is configured to control the network device to perform necessary actions, for example, to control the network to execute the operation flows of the above method embodiments with respect to the network device. The memory 721 and processor 722 may serve one or more boards. That is, the memory and processor may be provided separately on each board. Multiple boards may share the same memory and processor. In addition, each single board can be provided with necessary circuits.
It should be appreciated that the network device 700 shown in fig. 7 is capable of implementing various processes involving a sending node in the method embodiment of fig. 3. The operations and/or functions of the modules in the network device 700 are respectively for implementing the corresponding flows in the above-described method embodiments. Reference may be made specifically to the description of the above method embodiments, and a detailed description is appropriately omitted herein to avoid redundancy.
BBU720 described above may be used to perform actions described in the previous method embodiments that are implemented internally by the sending node, while RRU710 may be used to perform actions described in the previous method embodiments that the sending node sends to or receives from the receiving node. Please refer to the description of the previous embodiment of the method, which is not repeated herein.
The embodiment of the application also provides a processing device, which comprises a processor and an interface; the processor is configured to perform the method of any of the above method embodiments.
It should be understood that the processing means may be a chip. For example, the processing device may be a Field Programmable Gate Array (FPGA), an Application Specific Integrated Circuit (ASIC), a system on chip (SoC), a Central Processing Unit (CPU), a Network Processor (NP), a digital signal processing circuit (DSP), a Microcontroller (MCU), a programmable logic controller (PLD), or other integrated chips.
Exemplarily, fig. 8 is a schematic structural diagram of an apparatus 800 provided in an embodiment of the present application. The apparatus 800 may be a schematic structural diagram when the receiving node is a terminal device, and is applied to the system shown in fig. 1, and executes the functions of the receiving node in the foregoing method embodiment.
As shown, the receiving node 800 includes a processor 810 and a transceiver 820.
Optionally, the receiving node 800 further comprises a memory 830. The processor 810, the transceiver 802 and the memory 830 can communicate with each other via internal connection paths to transmit control and/or data signals, the memory 830 is used for storing a computer program, and the processor 810 is used for calling and running the computer program from the memory 830 to control the transceiver 820 to transmit and receive signals.
Optionally, receiving node 800 may further include an antenna 840, configured to send uplink data or uplink control signaling output by transceiver 820 through a wireless signal.
The processor 810 and the memory 830 may be combined into a processing device, and the processor 810 is configured to execute the program codes stored in the memory 830 to realize the functions. In particular implementations, the memory 830 may be integrated with the processor 810 or may be separate from the processor 810. The processor 810 may correspond to the processing unit 510 of the apparatus 500.
The transceiver 820 may correspond to the transceiver unit 520 in fig. 5, and may also be referred to as a communication unit. The transceiver 820 may include a receiver (or receiver, receiving circuit) and a transmitter (or transmitter, transmitting circuit). Wherein the receiver is used for receiving signals, and the transmitter is used for transmitting signals.
It should be appreciated that the apparatus 800 shown in fig. 8 is capable of implementing various processes involving a receiving node in the method embodiment shown in fig. 3. The operations and/or functions of the respective modules in the receiving node 800 are respectively for implementing the corresponding flows in the above-described method embodiments. Reference may be made specifically to the description of the above method embodiments, and a detailed description is appropriately omitted herein to avoid redundancy.
The processor 810 described above may be used to perform the actions described in the previous method embodiments as being implemented internally by the receiving node, while the transceiver 820 may be used to perform the actions described in the previous method embodiments as being transmitted to or received from the transmitting node by the receiving node. Please refer to the description of the previous embodiment of the method, which is not repeated herein.
Optionally, the receiving node 800 may further include a power supply 850 for providing power to various devices or circuits in the receiving node.
In addition to this, to make the functionality of the receiving node more complete, the receiving node 800 may further comprise one or more of an input unit 860, a display unit 870, audio circuitry 880, a camera 890, and sensors 801, etc., which may further comprise a speaker 882, a microphone 884, etc.
According to the method provided by the embodiment of the present application, the present application further provides a computer program product, which includes: computer program code which, when run on a computer, causes the computer to perform the method of the embodiment shown in fig. 3.
According to the method provided by the embodiment of the present application, the present application also provides a computer readable medium, which stores program codes, and when the program codes are executed on a computer, the computer is caused to execute the method of the embodiment shown in fig. 3.
According to the method provided by the embodiment of the present application, the present application further provides a system, which includes the foregoing one or more sending nodes and one or more receiving nodes.
In the above embodiments, the implementation may be wholly or partially realized by software, hardware, firmware, or any combination thereof. When implemented in software, 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 loaded and executed on a computer, cause the processes or functions described in accordance with the embodiments of the application to occur, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored on a computer readable storage medium or transmitted from one computer readable storage medium to another, for example, from one website, computer, server, or data center to another website, computer, server, or data center via wire (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that incorporates one or more of the available media. The usable medium may be a magnetic medium (e.g., a floppy disk, a hard disk, a magnetic tape), an optical medium (e.g., a Digital Video Disk (DVD)), or a semiconductor medium (e.g., a Solid State Disk (SSD)), among others.
The transmitting node and the receiving node in the above-mentioned respective apparatus embodiments and the transmitting node or the receiving node in the method embodiments may completely correspond, and the respective steps are executed by respective modules or units, for example, the transceiver unit (transceiver) executes the steps of receiving or transmitting in the method embodiments, and other steps besides transmitting and receiving may be executed by the processing unit (processor). The functions of the specific elements may be referred to in the respective method embodiments. The number of the processors may be one or more.
In the present application, "at least one" means one or more, "a plurality" means two or more. "and/or" describes the association relationship of the associated objects, meaning that there may be three relationships, e.g., a and/or B, which may mean: a alone, both A and B, and B alone, where A, B may be singular or plural. The character "/" generally indicates that the former and latter associated objects are in an "or" relationship. "at least one of the following" or similar expressions refer to any combination of these items, including any combination of the singular or plural items. For example, at least one (one) of a, b, or c, may represent: a, b, c, a-b, a-c, b-c or a-b-c, wherein a, b and c can be single or multiple.
As used in this specification, the terms "component," "module," "system," and the like are intended to refer to a computer-related entity, either hardware, firmware, a combination of hardware and software, or software in execution. For example, a component may be, but is not limited to being, a process running on a processor, an object, an executable, a thread of execution, a program, and/or a computer. By way of illustration, both an application running on a computing device and the computing device can be a component. One or more components can reside within a process and/or thread of execution and a component may be localized on one computer and/or distributed between two or more computers. In addition, these components can execute from various computer readable media having various data structures stored thereon. The components may communicate by way of local and/or remote processes such as in accordance with a signal having one or more data packets (e.g., data from two components interacting with another component in a local system, distributed system, and/or across a network such as the internet with other systems by way of the signal).
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
It is clear to those skilled in the art that, for convenience and brevity of description, the specific working processes of the above-described systems, apparatuses and units may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus and method may be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit.
The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application or portions thereof that substantially contribute to the prior art may be embodied in the form of a software product stored in a storage medium and including instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a read-only memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
The above description is only for the specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present application, and shall be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (27)

1. A method of data transmission, comprising:
encoding N data blocks by adopting a first encoding mode to generate M encoding blocks, wherein one encoding block in the M encoding blocks is an encoding block obtained by encoding d data blocks in the N data blocks, a first parameter in the first encoding mode is used for determining the d data blocks in the N data blocks, the first parameter is related to the transmission times of the N data blocks, M and N are integers which are larger than 1 and larger than N, d is an integer which is larger than or equal to 1, and d is smaller than or equal to N;
and sending a first coding block group, wherein the first coding block group comprises the M coding blocks.
2. The method of claim 1, wherein the first parameter comprises at least one of an index value of d of the N data blocks, an offset value of d of the N data blocks, or a size of a number of d of the N data blocks.
3. The method according to claim 1 or 2, wherein the first parameter is related to the number of transmissions of the N data blocks, and comprises:
the first parameter is different for different transmission times.
4. The method of claim 3, wherein the index values of d of the N data blocks are different for different transmission times; or
For different transmission times, the offset values of d data blocks in the N data blocks are different; or
For different transmission times, the number of d data blocks in the N data blocks is different in size; or
For different transmission times, the index values of d data blocks in the N data blocks are different from the offset values of d data blocks in the N data blocks; or
For different transmission times, the index values of d data blocks in the N data blocks are different from the number of d data blocks in the N data blocks in size; or
For different transmission times, the offset values of d data blocks in the N data blocks are different from the number of d data blocks in the N data blocks; or
For different transmission times, the index values of the d data blocks in the N data blocks, the offset values of the d data blocks in the N data blocks, and the number of the d data blocks in the N data blocks are different in size.
5. The method according to any one of claims 1 to 4, further comprising:
receiving a negative reply from at least one node device;
and sending a second coding block group, wherein the second coding block group comprises M coding blocks, and at least one different coding block exists between the second coding block group and the first coding block group.
6. The method according to any one of claims 1 to 5, wherein the first encoding mode is a mode of encoding with fountain codes.
7. A method of data transmission, comprising:
receiving a first coding block group, wherein the first coding block group comprises M coding blocks;
decoding at least N of the M encoded blocks;
and determining information of at least one data block in the N data blocks according to a second parameter and the at least N coding blocks, wherein the second parameter is used for determining that one coding block in the at least N coding blocks corresponds to d data blocks in the N data blocks, the second parameter is related to the transmission times of the N data blocks, M and N are integers which are larger than 1 and M is larger than N, d is an integer which is larger than or equal to 1, and d is smaller than or equal to N.
8. The method of claim 7, wherein the second parameter comprises at least one of an index value of d of the N data blocks, an offset value of d of the N data blocks, or a size of a number of d of the N data blocks.
9. The method according to claim 7 or 8, wherein the second parameter is related to the number of transmissions of the N data blocks, and comprises:
the second parameter is different for different transmission times.
10. The method of claim 9, wherein the index values of d of the N data blocks are different for different transmission times; or
For different transmission times, the offset values of d data blocks in the N data blocks are different; or
For different transmission times, the number of d data blocks in the N data blocks is different in size; or
For different transmission times, the index values of d data blocks in the N data blocks are different from the offset values of d data blocks in the N data blocks; or
For different transmission times, the index values of d data blocks in the N data blocks are different from the number of d data blocks in the N data blocks in size; or
For different transmission times, the offset values of d data blocks in the N data blocks are different from the number of d data blocks in the N data blocks; or
For different transmission times, the index values of the d data blocks in the N data blocks, the offset values of the d data blocks in the N data blocks, and the number of the d data blocks in the N data blocks are different in size.
11. The method according to any one of claims 7 to 10, further comprising:
transmitting a negative reply when the at least N encoded blocks are not decoded correctly;
receiving a second coding block group, where the second coding block group includes M coding blocks, and there is at least one different coding block between the second coding block group and the first coding block group.
12. The method according to any one of claims 7 to 11, wherein the first encoding mode is a mode of encoding with fountain codes.
13. An apparatus, comprising:
a processing unit, configured to encode N data blocks by using a first encoding scheme to generate M encoding blocks, where one encoding block of the M encoding blocks is an encoding block obtained by encoding d data blocks of the N data blocks, a first parameter in the first encoding scheme is used to determine d data blocks of the N data blocks, the first parameter is related to the number of transmission times of the N data blocks, M and N are integers greater than 1 and M is greater than N, d is an integer greater than or equal to 1, and d is less than or equal to N;
a transceiver unit, configured to transmit a first coding block group, where the first coding block group includes the M coding blocks.
14. The apparatus of claim 13, wherein the first parameter comprises at least one of an index value of d of the N data blocks, an offset value of d of the N data blocks, or a size of a number of d of the N data blocks.
15. The apparatus according to claim 13 or 14, wherein the first parameter is related to the number of transmissions of the N data blocks, and comprises:
the first parameter is different for different transmission times.
16. The apparatus of claim 15, wherein index values of d data blocks in the N data blocks are different for different transmission times; or
For different transmission times, the offset values of d data blocks in the N data blocks are different; or
For different transmission times, the number of d data blocks in the N data blocks is different in size; or
For different transmission times, the index values of d data blocks in the N data blocks are different from the offset values of d data blocks in the N data blocks; or
For different transmission times, the index values of d data blocks in the N data blocks are different from the number of d data blocks in the N data blocks in size; or
For different transmission times, the offset values of d data blocks in the N data blocks are different from the number of d data blocks in the N data blocks; or
For different transmission times, the index values of the d data blocks in the N data blocks, the offset values of the d data blocks in the N data blocks, and the number of the d data blocks in the N data blocks are different in size.
17. The apparatus according to any of claims 13 to 16, wherein the transceiver unit is further configured to:
receiving a negative reply sent from at least one node device;
the transceiver unit is further configured to:
and sending a second coding block group, wherein the second coding block group comprises M coding blocks, and at least one different coding block exists between the second coding block group and the first coding block group.
18. The apparatus according to any one of claims 13 to 17, wherein the first encoding is a fountain code encoding.
19. An apparatus, comprising:
a transceiving unit, configured to receive a first coding block group, where the first coding block group includes M coding blocks;
a processing unit for decoding at least N of the M encoded blocks;
the processing unit is further configured to determine information of at least one data block of N data blocks according to a second parameter and the at least N coding blocks, where the second parameter is used to determine that one coding block of the at least N coding blocks corresponds to d data blocks of the N data blocks, the second parameter is related to the number of transmissions of the N data blocks, M and N are integers greater than 1 and M is greater than N, d is an integer greater than or equal to 1, and d is less than or equal to N.
20. The apparatus of claim 19, wherein the second parameter comprises at least one of an index value of d of the N data blocks, an offset value of d of the N data blocks, or a size of a number of d of the N data blocks.
21. The apparatus according to claim 19 or 20, wherein the second parameter is related to the number of transmissions of the N data blocks, and comprises:
the second parameter is different for different transmission times.
22. The apparatus of claim 21,
for different transmission times, the index values of d data blocks in the N data blocks are different; or
For different transmission times, the offset values of d data blocks in the N data blocks are different; or
For different transmission times, the number of d data blocks in the N data blocks is different in size; or
For different transmission times, the index values of d data blocks in the N data blocks are different from the offset values of d data blocks in the N data blocks; or
For different transmission times, the index values of d data blocks in the N data blocks are different from the number of d data blocks in the N data blocks in size; or
For different transmission times, the offset values of d data blocks in the N data blocks are different from the number of d data blocks in the N data blocks; or
For different transmission times, the index values of the d data blocks in the N data blocks, the offset values of the d data blocks in the N data blocks, and the number of the d data blocks in the N data blocks are different in size.
23. The apparatus according to any of claims 19 to 22, wherein the transceiver unit is further configured to:
transmitting a negative reply when the at least N encoded blocks are not decoded correctly;
the transceiver unit is further configured to:
receiving a second coding block group, where the second coding block group includes M coding blocks, and there is at least one different coding block between the second coding block group and the first coding block group.
24. The apparatus of any one of claims 19 to 23, wherein the first encoding is performed using a fountain code.
25. An apparatus, comprising: a processor coupled with a memory, the memory to store a program or instructions that, when executed by the processor, cause the apparatus to perform the method of any of claims 1-6 or claims 7-12.
26. A computer program product comprising computer program code, which, when run on a computer, causes the computer to carry out the method of any one of the preceding claims 1-6 or claims 7-12.
27. A chip, comprising: a processor for reading instructions stored in a memory, which when executed by the processor, cause the chip to implement the method of any of claims 1-6 or claims 7-12.
CN201811454565.1A 2018-11-30 2018-11-30 Data transmission method and device Active CN111262647B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201811454565.1A CN111262647B (en) 2018-11-30 2018-11-30 Data transmission method and device
PCT/CN2019/116023 WO2020108259A1 (en) 2018-11-30 2019-11-06 Data transmission method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811454565.1A CN111262647B (en) 2018-11-30 2018-11-30 Data transmission method and device

Publications (2)

Publication Number Publication Date
CN111262647A true CN111262647A (en) 2020-06-09
CN111262647B CN111262647B (en) 2021-08-03

Family

ID=70854698

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811454565.1A Active CN111262647B (en) 2018-11-30 2018-11-30 Data transmission method and device

Country Status (2)

Country Link
CN (1) CN111262647B (en)
WO (1) WO2020108259A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022078225A1 (en) * 2020-10-15 2022-04-21 华为技术有限公司 Communication method, apparatus, and system

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101662346A (en) * 2008-08-29 2010-03-03 富士通株式会社 Automatic retransmission control method, communication system as well as transmitter and receiver thereof
CN102208969A (en) * 2010-03-31 2011-10-05 华为技术有限公司 Retransmission method, retransmission apparatus and communication system
CN107294652A (en) * 2016-04-13 2017-10-24 中兴通讯股份有限公司 A kind of data mixing retransmission processing method and device
CN107302422A (en) * 2016-04-13 2017-10-27 电信科学技术研究院 The data repeating method and equipment of a kind of multithread space division multiplexing
WO2018004320A1 (en) * 2016-07-01 2018-01-04 엘지전자 주식회사 Data reception method and device, and data transmission method and device
CN108289011A (en) * 2017-01-07 2018-07-17 华为技术有限公司 A kind of method and apparatus of data transmission
CN108322936A (en) * 2017-01-16 2018-07-24 中兴通讯股份有限公司 The method and device that data retransmit

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102355341B (en) * 2011-10-12 2013-11-27 东南大学 Network coding method of hybrid automatic request retransmission for long-term evolution system
CN106936545B (en) * 2017-03-24 2020-09-11 宇龙计算机通信科技(深圳)有限公司 Data transmission method and device

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101662346A (en) * 2008-08-29 2010-03-03 富士通株式会社 Automatic retransmission control method, communication system as well as transmitter and receiver thereof
CN102208969A (en) * 2010-03-31 2011-10-05 华为技术有限公司 Retransmission method, retransmission apparatus and communication system
CN107294652A (en) * 2016-04-13 2017-10-24 中兴通讯股份有限公司 A kind of data mixing retransmission processing method and device
CN107302422A (en) * 2016-04-13 2017-10-27 电信科学技术研究院 The data repeating method and equipment of a kind of multithread space division multiplexing
WO2018004320A1 (en) * 2016-07-01 2018-01-04 엘지전자 주식회사 Data reception method and device, and data transmission method and device
CN108289011A (en) * 2017-01-07 2018-07-17 华为技术有限公司 A kind of method and apparatus of data transmission
CN108322936A (en) * 2017-01-16 2018-07-24 中兴通讯股份有限公司 The method and device that data retransmit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022078225A1 (en) * 2020-10-15 2022-04-21 华为技术有限公司 Communication method, apparatus, and system

Also Published As

Publication number Publication date
WO2020108259A1 (en) 2020-06-04
CN111262647B (en) 2021-08-03

Similar Documents

Publication Publication Date Title
CN110291739B (en) Method and device for transmitting side link resource signaling and computer readable medium
CN109392152B (en) Communication method and communication device
CN110741578B (en) Channel state information feedback for flexible uplink control signaling
US11589371B2 (en) Methods for network assisted beamforming for sidelink unicast communication
CN110035529B (en) Resource allocation method and communication device
CN109511171B (en) Communication method and device
US10492179B2 (en) Resource signaling for PUCCH
CN113748633A (en) Method and terminal device for transmitting data
KR102247385B1 (en) Transmission method, network equipment, and terminal equipment
CN111757518B (en) Information transmission method and communication device
KR102543108B1 (en) Methods for transmitting services, mobile stations and network devices
EP3627932A1 (en) Communication method, terminal device and network device
CN107409006B (en) Hybrid automatic repeat request method and device for polarization code
CN110612763B (en) Method and device for transmitting information
CN110730513B (en) Communication method and device
CN111262647B (en) Data transmission method and device
CN111435847B (en) Method and device for transmitting information
CN112449761B (en) Data transmission method and terminal equipment
CN111405659B (en) Data transmission method, network equipment and terminal equipment
CN113517959B (en) Feedback information sending method, device and storage medium
CN110752905B (en) Communication method and device
CN111770571A (en) Communication method and terminal device
CN111147205A (en) Communication method and device
OA19791A (en) Resource signaling for pucch.

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant