Signal transmission method, signal reception method, and apparatus

By dynamically adjusting the generator polynomial based on coverage conditions and information type in the AIoT system, and using adaptive coding for tags, the problem of limited uplink coverage in the AIoT system is solved, achieving efficient communication and low power consumption in different scenarios.

WO2026144819A1PCT designated stage Publication Date: 2026-07-09HUAWEI TECH CO LTD

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
HUAWEI TECH CO LTD
Filing Date
2025-12-04
Publication Date
2026-07-09

Smart Images

  • Figure CN2025140173_09072026_PF_FP_ABST
    Figure CN2025140173_09072026_PF_FP_ABST
Patent Text Reader

Abstract

The present application relates to the field of communications, and provides a signal transmission method, a signal reception method, and an apparatus, which are conducive to meeting communication requirements in various scenarios. The signal transmission method comprises: determining a first generator polynomial or a second generator polynomial, the first generator polynomial or the second generator polynomial being associated with a first parameter or an information type of a first message, the first generator polynomial being a generator polynomial for a first number of encoding branches, the second generator polynomial being a generator polynomial for a second number of encoding branches, and the first parameter comprising one or more of the following: the length of a first sequence, the number of repetitions of the first sequence, the number of repetitions of the first message, the bandwidth of a first signal, or the signal quality of a received signal; and transmitting the first signal, wherein the first signal carries the first sequence and the first message, when the first generator polynomial is determined, the first message is obtained by performing encoding on the basis of the first generator polynomial, and when the second generator polynomial is determined, the first message is obtained by performing encoding on the basis of the second generator polynomial.
Need to check novelty before this filing date? Find Prior Art

Description

Signal Transmission and Reception Methods and Devices

[0001] This application claims priority to Chinese Patent Application No. 202411987464.6, filed with the China National Intellectual Property Administration on December 30, 2024, entitled “Signal Transmission and Reception Method and Apparatus”, the entire contents of which are incorporated herein by reference. Technical Field

[0002] This application relates to the field of communications, and particularly to signal transmission and reception methods and apparatus in the field of communications. Background Technology

[0003] To improve communication performance, the transmitting end can employ encoding methods such as forward error correction (FEC) to enhance data transmission reliability when sending data to the receiving end. For example, in ambient internet of things (AIoT) communication systems, tags (devices) typically have power consumption limitations, causing their uplink signal transmission power to be usually below a certain threshold. Therefore, to improve the uplink coverage of tags, convolutional codes are often used for channel coding. However, the communication requirements may differ across different application scenarios.

[0004] Therefore, there is an urgent need to provide a method to meet communication needs in various scenarios. Summary of the Invention

[0005] This application provides a signal transceiver method and apparatus. The tag can determine the generator polynomial for encoding based on parameters related to coverage conditions or information type. Thus, under different coverage conditions or with different information types, the matching generator polynomial can be used for encoding, which helps to meet the communication needs in various scenarios.

[0006] In a first aspect, a signal transmission method is provided, the method comprising: determining a first generator polynomial or a second generator polynomial, the first generator polynomial or the second generator polynomial being associated with a first parameter or an information type of a first message. The first generator polynomial is a generator polynomial of a first number of coded branches, and the second generator polynomial is a generator polynomial of a second number of coded branches, wherein the first number is greater than the second number.

[0007] The first parameter includes one or more of the following: the length of the first sequence, the number of repetitions of the first sequence, the number of repetitions of the first message, the bandwidth of the first signal or the signal quality of the received signal, and the first sequence includes a preamble, an intermediate preamble or a postamble.

[0008] The method further includes: a first AIoT device sending a first signal, the first signal carrying a first sequence and a first message; wherein, when a first generator polynomial is determined, the first message is obtained by encoding the first encoding bit based on the first generator polynomial, and when a second generator polynomial is determined, the first message is obtained by encoding the first encoding bit based on the second generator polynomial.

[0009] In one possible implementation, the method is performed by a first AIoT device. The first AIoT device can be understood as a tag. The first AIoT device can be the tag itself or a component applied to the tag (e.g., a chip, chip system, circuitry, software and / or hardware module, etc.).

[0010] In the signal transmission and reception method of this application, the first AIoT device can determine a first generator polynomial or a second generator polynomial based on a first parameter that reflects the coverage conditions and / or the information type of the first message. Thus, when the coverage conditions are good and / or the information type does not require improved coding performance, the convolutional encoder can be controlled by a switch to use a smaller number (second number) of coding branches for encoding based on the second generator polynomial, thereby meeting communication requirements while reducing the power consumption of the first AIoT device.

[0011] In cases of poor coverage and / or where the information type requires improved coding performance, the convolutional encoder can be controlled by a switch to use a larger number (first number) of coding branches to encode based on the first generator polynomial, thereby improving coding performance to meet communication requirements.

[0012] Since the first or second generator polynomial is determined based on a first parameter and / or information type that reflects the coverage conditions, data transmission based on the determined first or second generator polynomial can adapt to the communication requirements of the current application scenario. Furthermore, compared to using a first number of coding branches based on the first generator polynomial in all cases, the tag's power consumption can be reduced.

[0013] In conjunction with the first aspect, in certain implementations of the first aspect, the first generator polynomial is associated with the first parameter, including: determining the first generator polynomial based on the first parameter; determining the first generator polynomial based on the first parameter includes: determining the first generator polynomial under the condition that a first condition is met, the first condition including one or more of the following: the length of the first sequence is greater than or equal to a first threshold; the length of the first sequence belongs to a first length set; the number of repetitions of the first sequence is greater than or equal to a second threshold; the number of repetitions of the first sequence belongs to a first number set; the number of repetitions of the first message is greater than or equal to a third threshold; the number of repetitions of the first message belongs to a second number set; the bandwidth is less than or equal to a fourth threshold; the bandwidth belongs to a first bandwidth set; or, the signal quality is less than or equal to a fifth threshold.

[0014] The length of the first sequence can be indicated by the reader via signaling; a longer first sequence indicates potentially worse coverage conditions. The number of repetitions of the first sequence and the first message can also be indicated by the reader via signaling; a higher number of repetitions of the first sequence and / or the first message indicates potentially worse coverage conditions. The bandwidth of the first signal can also be indicated by the reader via signaling; a lower bandwidth indicates potentially worse coverage conditions. The signal quality can be measured by the first AIoT device; a lower signal quality indicates potentially worse coverage conditions. Therefore, the first AIoT device can determine the first generator polynomial based on one or more of the above factors.

[0015] In this way, under poor coverage conditions (such as meeting one or more of the above conditions), the first AIoT device can determine the first generator polynomial, and then encode based on the first generator polynomial, which can improve the encoding performance and thus meet the communication requirements under poor coverage conditions (such as meeting one or more of the above conditions).

[0016] In conjunction with the first aspect, in some implementations of the first aspect, the second generator polynomial is associated with the first parameter, including: determining the second generator polynomial based on the first parameter; determining the second generator polynomial based on the first parameter includes: determining the second generator polynomial under the condition that a second condition is met, the second condition including one or more of the following: the length of the first sequence is less than a sixth threshold; the length of the first sequence belongs to a second length set; the number of repetitions of the first sequence is less than a seventh threshold; the number of repetitions of the first sequence belongs to a third number set; the number of repetitions of the first message is less than an eighth threshold; the number of repetitions of the first message belongs to a fourth number set; the bandwidth is greater than a ninth threshold; the bandwidth belongs to a second bandwidth set; or, the signal quality is greater than a tenth threshold.

[0017] Among these factors, a shorter length of the first sequence indicates potentially better coverage conditions; a smaller number of repetitions of the first sequence and / or a smaller number of repetitions of the first message indicates potentially better coverage conditions; a larger bandwidth of the first signal indicates potentially better coverage conditions; and higher signal quality indicates potentially better coverage conditions. Therefore, the first AIoT device can determine the second generator polynomial based on one or more of these factors.

[0018] Thus, under good coverage conditions (such as meeting one or more of the above conditions), the first AIoT device can determine the second generator polynomial, and then encode based on the second generator polynomial. This allows the first AIoT device to meet communication requirements while minimizing power consumption.

[0019] In conjunction with the first aspect, in some implementations of the first aspect, the first generating polynomial or the second generating polynomial is associated with the information type of the first message, including: determining the first generating polynomial or the second generating polynomial based on the information type; determining the first generating polynomial or the second generating polynomial based on the information type includes: determining the first generating polynomial when the information type is a first type; and determining the second generating polynomial when the information type is a second type.

[0020] The first type can be, for example, control information, and the second type can be, for example, data information.

[0021] Thus, when the types of information transmitted uplink are different, the first AIoT device may determine different generator polynomials. For example, for information types that require improved coding performance (first type), a first generator polynomial can be determined; for information types that do not require improved coding performance (second type), a second generator polynomial can be determined, so that the power consumption of the first AIoT device can be reduced.

[0022] In conjunction with the first aspect, in some implementations of the first aspect, the coefficients of the first generator polynomial are related to whether the first message employs an interleaving operation.

[0023] The interleaving operation may include one or more of the following: interleaving at the output bit sequence granularity, interleaving at the bit granularity, or interleaving in rows (or columns). See the description below for details.

[0024] It is understandable that when interleaving operations include row-by-row interleaving operations or column-by-column interleaving operations, whether the first message uses interleaving operations may affect the order in which the encoded branch reads data (i.e., input bits). Therefore, in order to provide better coding performance whether interleaving operations are used or not, matching coefficients can be used for interleaving operations and not using interleaving operations respectively.

[0025] Furthermore, the encoding results differ depending on whether the first message employs interleaving or not. To improve encoding performance, the coefficients of the generator polynomial used in the first message can be different depending on whether interleaving or not.

[0026] In conjunction with the first aspect, in some implementations of the first aspect, when the first message employs an interleaving operation, the coefficients of the first generator polynomial include the first coefficient; when the first message does not employ an interleaving operation, the coefficients of the first generator polynomial include the second coefficient.

[0027] Specifically, when the first message employs an interleaving operation, the coefficients of the first generator polynomial, including the first coefficient, can be understood as the first message being associated with the first coefficient through interleaving. When the first message does not employ an interleaving operation, the coefficients of the first generator polynomial, including the second coefficient, can be understood as the first message not employing an interleaving operation being associated with the second coefficient. The first coefficient and the second coefficient are different.

[0028] In conjunction with the first aspect, in some implementations of the first aspect, the candidate values ​​of the first coefficient belong to the first set; and / or, the candidate values ​​of the second coefficient belong to the second set, and the intersection of the first set and the second set is an empty set.

[0029] The first set and the second set may each include one or more coefficients. These coefficients may be octal, binary, or hexadecimal values, etc. The first set and / or the second set may be predefined by the protocol or configured by the reader via signaling. This allows the first AIoT device to determine a first coefficient from the first set, or a second coefficient from the second set.

[0030] In conjunction with the first aspect, in some implementations of the first aspect, the first set includes 141, where 141 is an octal value; and / or, the second set includes 67, where 67 is an octal value.

[0031] In conjunction with the first aspect, in some implementations of the first aspect, the first generator polynomial includes the generator polynomial of each of the first number of coding branches; the first coefficient or the second coefficient is the coefficient of the generator polynomial of M coding branches in the first number of coding branches, the first number of coding branches includes the second number of coding branches and M coding branches, M is greater than or equal to 1, and M is less than or equal to the difference between the first number and the second number.

[0032] The second number of coding branches can be understood as the baseline coding branches, while the first number of coding branches can be understood as newly added coding branches based on the second number of coding branches (i.e., nested newly added coding branches) to enhance coding performance. The newly added coding branches include M coding branches.

[0033] Thus, under different circumstances, the first AIoT device can encode using a first number of encoding branches or a second number of encoding branches based on switch control. The first and second number of encoding branches can be implemented using a single set of circuits. Furthermore, the first generator polynomial corresponding to the first number of encoding branches includes the second generator polynomial corresponding to the second number of encoding branches. Compared to the first AIoT device using two different sets of circuits and / or two completely different sets of generator polynomials, the increase in encoding complexity is relatively small.

[0034] In conjunction with the first aspect, in some implementations of the first aspect, the coefficients of the second generator polynomial include 133, 171, and 165, where 133, 171, and 165 are octal values.

[0035] In conjunction with the first aspect, in some implementations of the first aspect, the encoding branch is a convolutional encoding branch, and the register length of the encoding branch is 7.

[0036] In conjunction with the first aspect, in some implementations of the first aspect, the first message is obtained by encoding the first encoding bit based on the second generator polynomial; the method further includes: receiving a second message, the second message being used to indicate encoding by the first generator polynomial; sending a second signal, the second signal carrying a second sequence and a third message, the third message being obtained by encoding the second encoding bit based on the first generator polynomial, the second sequence including a preamble, an intermediate preamble, or a postamble.

[0037] In this way, when the tag is encoded based on the second generator polynomial, if the communication requirements cannot be met, such as the reader failing to successfully receive the first message from the first AIoT device, the first AIoT device can be instructed to improve the encoding performance, thereby improving the reliability of data transmission.

[0038] Secondly, a signal receiving method is provided, the method comprising: determining a first generator polynomial or a second generator polynomial, the first generator polynomial or the second generator polynomial being associated with one of the following information: a first parameter, or, the information type of a first message; the first generator polynomial being the generator polynomial of a first number of coded branches, the second generator polynomial being the generator polynomial of a second number of coded branches, the first number being greater than the second number.

[0039] The first parameter includes one or more of the following: the length of the first sequence, the number of repetitions of the first sequence, the number of repetitions of the first message, the bandwidth of the first signal, or the signal quality of the signal received by the first environment IoT AIoT device. The first sequence includes a preamble, an intermediate preamble, or a postamble.

[0040] The method further includes: receiving a first signal based on a first generator polynomial or a second generator polynomial, the first signal carrying a first sequence and a first message; wherein, if the first generator polynomial is determined, the first message is decoded based on the first generator polynomial; if the second generator polynomial is determined, the first message is decoded based on the second generator polynomial.

[0041] In one possible implementation, the method is performed by a second AIoT device. The second AIoT device can be understood as a reader. Furthermore, the second AIoT device can be the reader itself, or a component applied within the reader (e.g., a chip, chip system, circuit, software, and / or hardware module, etc.).

[0042] In conjunction with the second aspect, in some implementations of the second aspect, the method further includes: receiving information for indicating signal quality.

[0043] In conjunction with the second aspect, in some implementations of the second aspect, the first generator polynomial is associated with the first parameter, including: determining the first generator polynomial based on the first parameter; determining the first generator polynomial based on the first parameter includes: determining the first generator polynomial under the condition that a first condition is met, the first condition including one or more of the following: the length of the first sequence is greater than or equal to a first threshold; the length of the first sequence belongs to a first length set; the number of repetitions of the first sequence is greater than or equal to a second threshold; the number of repetitions of the first sequence belongs to a first number set; the number of repetitions of the first message is greater than or equal to a third threshold; the number of repetitions of the first message belongs to a second number set; the bandwidth is less than or equal to a fourth threshold; the bandwidth belongs to a first bandwidth set; or, the signal quality is less than or equal to a fifth threshold.

[0044] In conjunction with the second aspect, in some implementations of the second aspect, the second generator polynomial is associated with the first parameter, including: determining the second generator polynomial based on the first parameter; determining the second generator polynomial based on the first parameter includes: determining the second generator polynomial under the condition that a second condition is met, the second condition including one or more of the following: the length of the first sequence is less than a sixth threshold; the length of the first sequence belongs to a second length set; the number of repetitions of the first sequence is less than a seventh threshold; the number of repetitions of the first sequence belongs to a third number set; the number of repetitions of the first message is less than an eighth threshold; the number of repetitions of the first message belongs to a fourth number set; the bandwidth is greater than a ninth threshold; the bandwidth belongs to a second bandwidth set; or, the signal quality is greater than a tenth threshold.

[0045] In conjunction with the second aspect, in some implementations of the second aspect, the first generator polynomial or the second generator polynomial is associated with the information type of the first message, including: determining the first generator polynomial or the second generator polynomial based on the information type; determining the first generator polynomial or the second generator polynomial based on the information type includes: determining the first generator polynomial when the information type is a first type; and determining the second generator polynomial when the information type is a second type.

[0046] In conjunction with the second aspect, in some implementations of the second aspect, the coefficients of the first generator polynomial are related to whether the first message employs a deinterleaving operation.

[0047] In conjunction with the second aspect, in some implementations of the second aspect, when the first message employs a deinterleaving operation, the coefficients of the first generator polynomial include the first coefficient; when the first message does not employ a deinterleaving operation, the coefficients of the first generator polynomial include the second coefficient. The deinterleaving operation can be understood as the inverse operation of the interleaving operation described above.

[0048] In conjunction with the second aspect, in some implementations of the second aspect, the candidate values ​​of the first coefficient belong to the first set; and / or, the candidate values ​​of the second coefficient belong to the second set, and the intersection of the first set and the second set is an empty set.

[0049] In conjunction with the second aspect, in some implementations of the second aspect, the first set includes 141, where 141 is an octal value; and / or, the second set includes 67, where 67 is an octal value.

[0050] In conjunction with the second aspect, in some implementations of the second aspect, the first generator polynomial includes the generator polynomial of each of the first number of coded branches; the first coefficient or the second coefficient is the coefficient of the generator polynomial of M coded branches in the first number of coded branches, the first number of coded branches includes the second number of coded branches and M coded branches, M is greater than or equal to 1, and M is less than or equal to the difference between the first number and the second number.

[0051] In conjunction with the second aspect, in some implementations of the second aspect, the coefficients of the second generator polynomial include 133, 171, and 165, where 133, 171, and 165 are octal values.

[0052] In conjunction with the second aspect, in some implementations of the second aspect, the encoding branch is a convolutional encoding branch, and the register length of the encoding branch is 7.

[0053] In conjunction with the second aspect, in some implementations of the second aspect, the first message is decoded based on the second generator polynomial; the method further includes: sending a second message, the second message being used to indicate encoding by the first generator polynomial; receiving a second signal, the second signal carrying a second sequence and a third message, and decoding the third message based on the first generator polynomial, the second sequence including a preamble, an intermediate preamble, or a postamble.

[0054] Thirdly, a communication device is provided that can be used in a first AIoT device of the first aspect or a second AIoT device of the second aspect. The communication device can be a tag or a reader, or a device in the tag or reader (e.g., a chip, a chip system, or a circuit, such as a circuit or chip in the tag or reader responsible for communication functions (e.g., a modem chip, also known as a baseband chip, or a system-on-chip (SoC) chip containing a modem core or a system-in-package (SIP) chip)), or a device that can be used in conjunction with a tag or reader, or a logic module or software that can implement all or part of the tag or reader functions.

[0055] In one possible implementation, the communication device may include modules or units that perform the methods / operations / steps / actions described in the first or second aspect. These modules or units may be hardware circuits, software, or a combination of hardware circuits and software.

[0056] In one possible implementation, the communication device is used in a first AIoT device according to the first aspect. The communication device may include a processing unit and a transceiver unit. The processing unit is used to determine a first generator polynomial or a second generator polynomial, the first generator polynomial or the second generator polynomial being associated with an information type of a first parameter or a first message. The transceiver unit is used to send a first signal to a second AIoT device, the first signal carrying a first sequence and a first message; wherein, if the first generator polynomial is determined, the first message is obtained by encoding the first encoding bits based on the first generator polynomial; if the second generator polynomial is determined, the first message is obtained by encoding the first encoding bits based on the second generator polynomial.

[0057] Alternatively, the communication device can be used in a second AIoT device according to the second aspect, and the communication device may include a processing unit and a transceiver unit. The processing unit is configured to determine a first generator polynomial or a second generator polynomial, the first generator polynomial or the second generator polynomial being associated with an information type of a first parameter or a first message. The transceiver unit is configured to receive a first signal from the first AIoT device based on the first generator polynomial or the second generator polynomial, the first signal carrying a first sequence and a first message; wherein, if the first generator polynomial is determined, the first message is decoded based on the first generator polynomial, and if the second generator polynomial is determined, the first message is decoded based on the second generator polynomial.

[0058] Fourthly, this application provides another communication device, including a processor coupled to a memory, which can be used to execute instructions in the memory to implement the method in any of the possible implementations of the first or second aspect described above. Optionally, the communication device further includes a memory. Optionally, the communication device further includes a communication interface, to which the processor is coupled.

[0059] In one implementation, the communication device is a tag or a reader. When the communication device is a tag or a reader, the communication interface can be a transceiver or an input / output interface.

[0060] In another implementation, the communication device is a chip applicable to a tag or reader. When the communication device is a chip applicable to a tag or reader, the communication interface can be an input / output interface.

[0061] Fifthly, a processor is provided, comprising: an input circuit, an output circuit, and a processing circuit. The processing circuit is configured to receive signals through the input circuit and transmit signals through the output circuit, causing the processor to execute the method in any possible implementation of the first or second aspect described above.

[0062] In the specific implementation process, the processor can be a chip, the input circuit can be an input pin, the output circuit can be an output pin, and the processing circuit can be a transistor, gate circuit, flip-flop, and various logic circuits. The input signal received by the input circuit can be received and input by, for example, but not limited to, a receiver, and the signal output by the output circuit can be output to, for example, but not limited to, a transmitter and transmitted by the transmitter. Furthermore, the input circuit and the output circuit can be the same circuit, which is used as the input circuit and the output circuit at different times. This application does not limit the specific implementation of the processor and various circuits.

[0063] In a sixth aspect, a communication device is provided, including a processor and a memory. The processor is configured to read instructions stored in the memory, receive signals via a receiver, and transmit signals via a transmitter to execute the method in any possible implementation of the first or second aspect described above.

[0064] Optionally, the processor may be one or more, and the memory may be one or more.

[0065] Optionally, the memory may be integrated with the processor, or the memory may be separated from the processor.

[0066] In the specific implementation process, the memory can be a non-transitory memory, such as read-only memory (ROM), which can be integrated with the processor on the same chip or set on different chips. This application does not limit the type of memory or the way the memory and processor are set.

[0067] It should be understood that the relevant information interaction process, such as sending a first signal, can be a process of the processor outputting a first signal, and receiving a second message can be a process of the processor receiving a second message. Specifically, the processed output signal can be output to the transmitter, and the input signal received by the processor can come from the receiver. Here, the transmitter and receiver can be collectively referred to as a transceiver.

[0068] The communication device in the sixth aspect above can be a chip. The processor can be implemented in hardware or software. When implemented in hardware, the processor can be a logic circuit, integrated circuit, etc. When implemented in software, the processor can be a general-purpose processor that reads software code stored in memory. The memory can be integrated into the processor or located outside the processor and exist independently.

[0069] In a seventh aspect, a communication device is provided, including a module for performing a method as described in any possible implementation of the first or second aspect.

[0070] Eighthly, this application provides a chip or chip system including at least one processor for supporting the implementation of the functions involved in the first aspect and any possible implementation of the first aspect, or for supporting the implementation of the functions involved in the second aspect and any possible implementation of the second aspect.

[0071] In one possible design, the chip or chip system further includes a memory for storing program instructions and data, which is located within or outside the processor.

[0072] The chip system can consist of chips or include chips and other discrete components.

[0073] A ninth aspect provides a communication system comprising a first AIoT device and a second AIoT device; wherein the first AIoT device is configured to execute a method in any possible implementation of the first aspect, and the second AIoT device is configured to execute a method in any possible implementation of the second aspect.

[0074] In a tenth aspect, a computer program product is provided, the computer program product comprising: a computer program (also referred to as code or instructions), which, when the computer program is run, causes a computer to perform the method in any possible implementation of the first or second aspect described above.

[0075] Eleventhly, a computer-readable storage medium is provided that stores a computer program (also referred to as code or instructions) that, when run on a computer, causes the computer to perform the method in any possible implementation of the first or second aspect described above. Attached Figure Description

[0076] Figure 1 is a schematic diagram of the first communication system applied in the embodiments of this application;

[0077] Figure 2 is a schematic diagram of a second communication system applied in an embodiment of this application;

[0078] Figure 3 is a schematic diagram of the third communication system applied in the embodiments of this application;

[0079] Figure 4 is a schematic diagram of a convolutional encoder;

[0080] Figure 5 is a schematic diagram of the first type of convolutional encoder provided in the embodiments of this application;

[0081] Figure 6 is a schematic flowchart of a signal transmission and reception method provided in an embodiment of this application;

[0082] Figure 7 is a schematic diagram of a frame structure for D2R transmission provided in an embodiment of this application;

[0083] Figure 8 is a schematic diagram of a second type of convolutional encoder provided in an embodiment of this application;

[0084] Figure 9 is a schematic diagram of a third type of convolutional encoder provided in an embodiment of this application;

[0085] Figure 10 is a schematic diagram of the fourth type of convolutional encoder provided in the embodiments of this application;

[0086] Figure 11 is a schematic diagram of the fifth type of convolutional encoder provided in the embodiments of this application;

[0087] FIG. 12 is a schematic comparison diagram of decoding performance when different coding branches are used for coding and / or the repetition times are different according to an embodiment of the present application;

[0088] FIG. 13 is a schematic block diagram of a first communication device according to an embodiment of the present application;

[0089] FIG. 14 is a schematic block diagram of a second communication device according to an embodiment of the present application;

[0090] FIG. 15 is a schematic block diagram of a third communication device according to an embodiment of the present application. Detailed implementation manners

[0091] The technical solutions in the present application will be described below with reference to the accompanying drawings.

[0092] For the convenience of understanding the embodiments of the present application, the following points are first explained:

[0093] First, in the embodiments of the present application, terms such as "first" and "second" are used to distinguish identical or similar items with basically the same functions and roles. For example, the first value and the second value are only used to distinguish different values, and do not limit their sequence. Those skilled in the art can understand that terms such as "first" and "second" do not limit the quantity and execution order, and terms such as "first" and "second" do not necessarily mean different.

[0094] It should be noted that in the embodiments of the present application, words such as "exemplarily" or "for example" are used to indicate examples, illustrations or explanations. Any embodiment or design solution described as "exemplarily" or "for example" in the present application should not be construed as more preferred or more advantageous than other embodiments or design solutions. Exactly speaking, the use of words such as "exemplarily" or "for example" aims to present related concepts in a specific manner.

[0095] In the embodiments of the present application, "at least one" means one or more, and "multiple" means two or more. "And / or" describes the association relationship of associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, and B exists alone, where A and B can be singular or plural. The character " / " generally indicates that the associated objects before and after are in an "or" relationship. "At least one (item)" or its similar expression means any combination of these items, including any combination of single item (item) or plural items (items). For example, at least one (item) of a, b, or c can represent: a, b, c, a - b, a - c, b - c, or a - b - c, where a, b, and c can be single or multiple.

[0096] Second, in the embodiments of this application, "send" and "receive" indicate the direction of signal transmission. For example, "send information to the second device" can be understood as the destination of the information being the second device, which may include sending directly via the air interface or sending indirectly via the air interface from other units or modules. "Receive configuration information from charging" can be understood as the source of the configuration information being the second device, which may include receiving directly from the second device via the air interface or receiving indirectly from the second device via the air interface from other units or modules. "Send" can also be understood as the "output" of the chip interface, and "receive" can also be understood as the "input" of the chip interface.

[0097] In other words, sending and receiving can be done between devices, such as between a second device and a first device; or it can be done within a device, such as between components, modules, chips, software modules, or hardware modules within a device via a bus, wiring, or interface.

[0098] It is understandable that information may undergo necessary processing, such as encoding and modulation, before being sent from the source to the destination. Similarly, the destination, upon receiving information from the source, can also perform corresponding processing, such as decoding and demodulation, to interpret the valid information from the source. Similar expressions in this application can be understood in a similar way and will not be elaborated further.

[0099] Third, for ease of understanding, this document provides several examples of messages or signals, such as a first signal, a second signal, a first message, a second message, or a third message. These signals or messages and their names are merely examples and should not be construed as limiting this application.

[0100] Fourth, in the embodiments of this application, "instruction" can include direct instruction and indirect instruction, as well as explicit instruction and implicit instruction. The information indicated by a certain piece of information (as described below, the instruction information) is called the information to be instructed. In the specific implementation process, there are many ways to indicate the information to be instructed, such as, but not limited to, directly indicating the information to be instructed, such as the information to be instructed itself or its index. It can also indirectly indicate the information to be instructed by indicating other information, where there is a correlation between the other information and the information to be instructed; or it can only indicate a part of the information to be instructed, while the other parts of the information to be indicated are known or pre-agreed upon. For example, the instruction of specific information can be achieved by using a pre-agreed (e.g., protocol predefined) arrangement of various pieces of information, thereby reducing the instruction overhead to a certain extent. This application does not limit the specific method of instruction.

[0101] It is understandable that, for the sender of the instruction information, the instruction information can be used to indicate the information to be indicated, and for the receiver of the instruction information, the instruction information can be used to determine the information to be indicated.

[0102] Fifth, the tables in the embodiments of this application are merely examples. The values ​​of the information in each table are only examples and can be configured to other values; this application is not limited thereto. The tables do not limit the scope of protection of this application. For example, appropriate modifications and adjustments can be made based on the tables described above, such as splitting, merging, etc. Furthermore, the parameter names shown in the headings of each table can also use other names understandable to the communication device, and the values ​​or representations of the parameters can also be other values ​​or representations understandable to the communication device. Moreover, in the implementation of the above tables, other data structures can also be used, such as arrays, queues, containers, stacks, linear lists, pointers, linked lists, trees, graphs, structures, classes, heaps, hash tables, or hash tables, etc.

[0103] Sixth, in the embodiments of this application, descriptions such as "when," "under the circumstances," "if," and "if" all refer to the fact that the device (e.g., network device or terminal device) will make corresponding processing under certain objective circumstances. They are not time limits, nor do they require the device (e.g., network device or terminal device) to make a judgment action when implementing it, nor do they mean that there are other limitations.

[0104] Seventh, the predefined terms in this application can be understood as: definition, pre-defined, storage, pre-storage, pre-negotiation, pre-configuration, solidification, or pre-firing.

[0105] Eighth, the term "storage" in this application can refer to storage in one or more memory devices. These memory devices can be separate installations or integrated into an encoder, decoder, processor, or communication device. Alternatively, some memory devices can be separately installed, while others can be integrated into the decoder, processor, or communication device. The type of memory can be any form of storage medium, and this application does not limit this.

[0106] The technical solutions of this application can be applied to various communication systems, such as: Long Term Evolution (LTE) systems, LTE Frequency Division Duplex (FDD) systems, LTE Time Division Duplex (TDD) systems, 5th Generation (5G) systems, or New Radio (NR) systems, and future communication systems.

[0107] The terminal equipment in this application embodiment can also be referred to as: user equipment (UE), mobile station (MS), mobile terminal (MT), access terminal, user unit, user station, mobile station, mobile station, remote station, remote terminal, mobile device, user terminal, terminal, wireless communication equipment, user agent, or user device, etc.

[0108] Terminal devices can be devices that provide voice / data connectivity to users, such as handheld devices with wireless connectivity, in-vehicle devices, etc. Currently, examples of terminal devices include: mobile phones, tablets, laptops, PDAs, mobile internet devices (MIDs), point-of-sale (POS) machines, customer-premises equipment (CPEs), light user equipment (UEs), reduced capability UEs (REDCAP UEs), wearable devices, virtual reality (VR) devices, augmented reality (AR) devices, wireless terminals in industrial control, wireless terminals in self-driving vehicles, wireless terminals in remote medical surgery, wireless terminals in smart grids, wireless terminals in transportation safety, wireless terminals in smart cities, wireless terminals in smart homes, cellular phones, cordless phones, SIP phones, wireless local loop (WLL) stations, and personal digital assistants (PDAs). This application does not limit the scope to include devices such as personal assistants (PDAs), handheld devices with wireless communication capabilities, computing devices or other processing devices connected to a wireless modem, in-vehicle devices, wearable devices, terminal devices in 5G networks, or terminal devices in future evolved public land mobile networks (PLMNs).

[0109] By way of example and not limitation, in this application, the terminal device can be a terminal device in an Internet of Things (IoT) system. The Internet of Things is an important component of future information technology development. Its main technical characteristic is connecting objects to networks through communication technologies, thereby realizing an intelligent network of human-machine interconnection and object-to-object interconnection. Exemplarily, the terminal device in the embodiments of this application can be a wearable device. Wearable devices, also known as wearable smart devices, are a general term for devices that apply wearable technology to intelligently design and develop everyday wearables, such as glasses, gloves, watches, clothing, and shoes. Wearable devices are portable devices that can be worn directly on the body or integrated into a user's clothing or accessories. Wearable devices are not merely hardware devices; they can also achieve powerful functions through software support, data interaction, and cloud interaction. Broadly defined, wearable smart devices include those with comprehensive functions, large size, and the ability to achieve complete or partial functions without relying on a smartphone, such as smartwatches or smart glasses, as well as those focused on a specific application function and requiring the use of other devices such as smartphones, such as various smart bracelets and smart jewelry for vital sign monitoring.

[0110] By way of example and not limitation, in the embodiments of this application, the terminal device can also be a terminal device in machine-type communication (MTC). Furthermore, the terminal device can also be an on-board module, on-board component, on-board chip, or on-board unit, etc., built into a vehicle as one or more components or units. The vehicle can implement the methods provided in this application through the built-in on-board module, on-board component, on-board chip, or on-board unit, etc. Therefore, the embodiments of this application can also be applied to vehicle networking, such as vehicle to everything (V2X), long term evolution-vehicle (LTE-V) technology, and vehicle-to-vehicle (V2V) technology.

[0111] The network devices involved in this application may include access network devices.

[0112] Access network equipment, also known as radio access network (RAN) equipment, is a device that communicates with terminal devices and has wireless transceiver capabilities. RAN equipment provides wireless communication services, allowing terminals to access the wireless network. RAN equipment can be a node in the radio access network, often referred to as a RAN node.

[0113] In one possible scenario, a RAN node can be a base station (BS), an evolved NodeB (eNodeB), a transmission reception point (TRP), a home evolved NodeB (or home Node B, HNB), a Wi-Fi access point (AP), a mobile switching center, a next-generation NodeB (gNB) in a 5G mobile communication system, a next-generation base station in a future mobile communication system, or a base station in a future mobile communication system. A RAN node can also be a device that performs base station functions in device-to-device (D2D) communication systems, vehicle-to-everything (V2X) communication systems, machine-to-machine (M2M) communication systems, and internet-to-things (IoT) communication systems. A RAN node can also be a RAN node in a non-terrestrial network (NTN), meaning that a RAN node can be deployed on a high-altitude platform or a satellite. RAN nodes can be macro base stations, micro base stations, indoor stations, relay nodes, donor nodes, etc., or radio controllers in cloud radio access network (CRAN) scenarios, or nodes in open radio access network (O-RAN or ORAN) scenarios. Optionally, RAN nodes can also be servers, wearable devices, vehicles, or in-vehicle equipment. For example, in V2X technology, RAN nodes can be roadside units (RSUs). Of course, RAN nodes can also be nodes in the core network.

[0114] In another possible scenario, multiple RAN nodes collaborate to assist the terminal in achieving wireless access, with each RAN node performing a portion of the base station's functions. For example, RAN nodes can be central units (CUs), distributed units (DUs), CU-control plane (CPs), CU-user plane (UPs), or radio units (RUs), etc. CUs and DUs can be separate entities or included in the same network element, such as a baseband unit (BBU). RUs can be included in radio frequency equipment or radio frequency units, such as remote radio units (RRUs), active antenna units (AAUs), or remote radio heads (RRHs).

[0115] In different systems, CU (or CU-CP and CU-UP), DU, or RU may have different names, but those skilled in the art will understand their meaning. For example, in the ORAN system, CU can also be called open CU (O-CU), DU can also be called open DU (O-DU), CU-CP can also be called open CU-CP (O-CU-CP), CU-UP can also be called open CU-UP (O-CU-UP), and RU can also be called open RU (O-RU).

[0116] Any one of the CU (or CU-CP, CU-UP), DU, and RU units can be implemented through software modules, hardware modules, or a combination of software and hardware modules. That is, the wireless access network device in this application can be a virtualized device, for example, implemented through general-purpose hardware and instantiated virtualization functions, or dedicated hardware and instantiated virtualization functions. The general-purpose hardware can be a server, such as a cloud server.

[0117] The following describes some of the technical terms used in this application.

[0118] 1. Convolutional code

[0119] Convolutional coding is a coding technique used for error detection and correction. It involves performing modulo-2 multiplication on the input bit sequence with one or more generator polynomials, then outputting the results in parallel to form the encoded sequence. The output of a convolutional code can be one or more bit sequences, where the number of streams of these bit sequences is the same as the number of generator polynomials. That is, each output bit sequence corresponds to one generator polynomial.

[0120] It should be understood that in the embodiments of this application, the bit sequence may also be referred to as a bit stream or data stream, etc. This application does not specifically limit it in this regard.

[0121] Convolutional codes can be implemented using a convolutional code encoder. A convolutional code encoder, also known as a convolutional encoder, convolutional code structure, or convolutional coding structure, can include a register (or shift register) and a modulo-2 adder.

[0122] 2. Generating polynomials

[0123] This describes the output generation rules of a convolutional code encoder. A convolutional code encoder typically consists of a shift register and a modulo-2 adder. The generator polynomial defines how to combine the input bit sequence and the register state to generate the output bit sequence. For example, referring to Figure 4, each coding branch in the convolutional code encoder shown in Figure 4 corresponds to a generator polynomial, such as generator polynomial G0 for coding branch 403; generator polynomial G1 for coding branch 404; and generator polynomial G2 for coding branch 405.

[0124] 3. Bit rate, also known as FEC bit rate, usually refers to the ratio of the number of bits before encoding to the number of bits after encoding during data transmission. The number of bits before encoding can also be called the number of information bits. Bit rate determines the efficiency and reliability of data transmission.

[0125] Bitrate is typically expressed as a fraction or ratio, such as 1 / 2, 2 / 3, 3 / 4, or 1 / 4. This ratio represents the proportion of the number of bits before encoding to the number of bits after encoding (the number of bits before encoding plus the number of redundant bits). Therefore, a smaller bitrate indicates more redundant bits, which can result in higher data transmission efficiency and reliability; conversely, a larger bitrate indicates fewer redundant bits, which can result in lower data transmission efficiency and reliability.

[0126] For example: a code rate of 1 / 2 means that for every 1x bits of encoded pre-bits transmitted, an additional 1x bits of redundant bits need to be transmitted, for a total of 2x bits transmitted; a code rate of 2 / 3 means that for every 2y bits of encoded pre-bits transmitted, an additional 1y bits of redundant bits need to be transmitted, for a total of 3y bits transmitted; a code rate of 3 / 4 means that for every 3z bits of encoded pre-bits transmitted, an additional 1z bits of redundant bits need to be transmitted, for a total of 4z bits transmitted, where x, y, and z are positive numbers.

[0127] 4. Preamble: A specific sequence of bits added to the beginning of a data frame or data packet. The main purpose of the preamble is to provide synchronization information to the receiving end, enabling it to correctly identify and decode subsequent data.

[0128] 5. Midamble: This refers to a specific bit sequence inserted in the middle of a data frame or data packet. The main purpose of the midamble is to provide additional synchronization and channel estimation information in long data frames, thereby improving the reliability and accuracy of data transmission.

[0129] 6. Postamble: Also known as a postsynchronization signal, it refers to a sequence of signals or codes sent after data transmission has ended. Its main function is to mark the end of data transmission and help the receiving end correctly identify and process the received data.

[0130] Postcodes can take, but are not limited to, the following forms: end-of-frame marker (in a frame structure, a specific bit sequence used to identify the end of a frame); checksum or cyclic checksum (sometimes postcodes may contain checksums or cyclic checksums to detect and correct errors during transmission); synchronization signal (in some communication systems, postcodes may contain synchronization signals to resynchronize the receiver); and padding bits (in some cases, postcodes may include padding bits to ensure that the length of the data block meets specific requirements).

[0131] To improve communication performance, such as increasing data transmission efficiency and reliability, channel coding can be used on the data sent from the transmitter to the receiver. Channel coding methods include, for example, FEC coding. This approach is also applicable to ambient internet of things (AIoT) systems.

[0132] AIoT, also known as Ambient Internet of Things, integrates various environmental IoT devices (AIoT devices) into our daily environment, enabling these devices to operate continuously and communicate with each other without active user intervention. For example, AIoT technology can be applied to scenarios such as inventory management, sensing, control, and positioning.

[0133] For hundreds or even trillions of AIoT devices, powering all of them with manual replacement or rechargeable batteries would result in high maintenance costs, serious environmental problems, and even safety hazards in some use cases, such as wireless sensors in the power and oil industries. Therefore, to reduce the size, complexity, and power consumption of IoT devices, AIoT devices can be battery-free or have energy storage capabilities that do not require manual replacement or charging.

[0134] It should be understood that AIoT devices can also be referred to as tags, A-IoT devices, tags, electronic AIoT devices, AIoT tags, smart AIoT devices, transponders, data carriers, or devices, etc., and this application does not specifically limit the terminology. For ease of understanding, tags will be used as an example in the following description.

[0135] To accommodate different use cases, labels can include multiple types of devices. For example, they include: label 1 (device 1), label 2a (device 2a), label 2b (device 2b), and label c (device c).

[0136] Device 1 can also be referred to as a Type 1 tag or AIoT device 1, etc. It lacks downlink and uplink power amplification capabilities and has a limited frequency modulation range. Device 1 can obtain power from carrier waves (CW) emitted by other devices. For example, it can transmit signals to other devices by reflecting carrier waves emitted by other devices. This method of sending signals to other devices by reflecting carrier waves can also be called backscatter. The device that transmits (or provides) the carrier wave can also be called a CW device or a CW node.

[0137] Device 2a and device 2b can be understood as type 2 tags or type 2 AIoT devices.

[0138] In this context, device 2a is a tag that needs to transmit signals via backscattering. Device 2b is a tag that can generate signals internally (actively transmit signals), meaning that device 2b does not need to transmit signals via carrier reflection.

[0139] Device C, also known as AIoT device C, is a tag that can generate signals internally (actively send signals), meaning that device C does not need to send signals by reflecting a carrier wave.

[0140] Compared to devices 1, 2a, and 2b, device c can be understood as a wide-area coverage type label, meaning that device c has a larger uplink coverage area. Devices 1, 2a, and 2b, on the other hand, can be understood as local-area coverage type labels, meaning that their uplink coverage area is smaller.

[0141] It should be understood that a larger uplink coverage area can be interpreted as an uplink coverage area greater than or equal to a certain threshold, and a smaller uplink coverage area can be interpreted as an uplink coverage area less than a certain threshold; or, a larger uplink coverage area and a smaller uplink coverage area are relative, that is, the uplink coverage area of ​​device c is greater than the uplink coverage areas of device 1, device 2a, and device 2b. This application does not make specific limitations in this regard.

[0142] To facilitate understanding of the embodiments of this application, the communication system (AIoT system) including AIoT devices will be described below with reference to Figures 1 to 3.

[0143] Figure 1 is a schematic diagram of a first communication system 100 applied in an embodiment of this application. The communication system 100 may include at least one reader, such as the network device 110 shown in Figure 1; the communication system 100 may also include at least one tag, such as the tag 120 shown in Figure 1, the tag 120 may be device 1 or device 2a, that is, the tag 120 needs to send uplink signals by backscattering; the communication system may also include a CW device (or CW node), such as the terminal device 130 shown in Figure 1.

[0144] The network device 110 and the terminal device 130 can communicate via a wireless link. In one possible scenario, the network device 110 can act as a transmitter and the terminal device 130 can act as a receiver, with the network device 110 sending downlink signals to the terminal device 130. In another possible scenario, the network device 110 can act as a receiver and the terminal device 130 can act as a transmitter, with the terminal device 130 sending uplink signals to the network device 110.

[0145] It is understood that in the communication system 100, network device 110 can be a network device operating in a limited-range mode, such as a base station operating in a limited-range mode. Terminal device 130 can be understood as an auxiliary terminal device or auxiliary UE of network device 110. Therefore, network device 110 can instruct terminal device 130 to transmit a carrier.

[0146] Network device 110 and tag 120 can communicate with each other. In one possible scenario, terminal device 130 can send a carrier wave to tag 120 so that tag 120 can send a reflected signal (or uplink signal) to network device 110 by reflecting the carrier wave; in another possible scenario, network device 110 can act as a transmitter and tag 120 can act as a receiver, with network device 110 sending downlink signals to tag 120.

[0147] Figure 2 is a schematic diagram of a second communication system 200 applied in an embodiment of this application. The communication system 200 may include at least one reader, such as the network device 210 shown in Figure 2; the communication system 200 may also include at least one tag, such as the tag 220 shown in Figure 2, which may be device 2b or device c. That is, the tag 220 may generate signals internally.

[0148] The network device 210 and the tag 220 can communicate via a wireless link. In one possible scenario, the network device 210 can act as a transmitter and the tag 220 can act as a receiver, with the network device 210 sending downlink signals to the tag 220. In another possible scenario, the network device 210 can act as a receiver and the tag 220 can act as a transmitter, with the tag 220 sending uplink signals to the network device 210.

[0149] Figure 3 is a schematic diagram of a third communication system 300 applied in an embodiment of this application. The communication system 300 may include at least one network device, such as network device 310 shown in Figure 3; the communication system 300 may also include at least one reader, such as terminal device 320 shown in Figure 3; the communication system 300 may also include at least one tag, such as tag 330 shown in Figure 3, tag 330 may be device 1 or device 2a, that is, tag 330 needs to send uplink signals by backscattering.

[0150] In the communication system 300, the network device 310 is usually located outdoors, meaning that the distance between the network device 310 and the tag 330 is usually quite far. Therefore, the network device 310 can communicate with the tag 330 through an intermediate node, such as the terminal device 320 shown in Figure 3.

[0151] The network device 310 and the terminal device 320 can communicate via a wireless link. In one possible scenario, the network device 310 can act as a transmitter and the terminal device 320 can act as a receiver, with the network device 310 sending downlink signals to the terminal device 320. In another possible scenario, the network device 310 can act as a receiver and the terminal device 320 can act as a transmitter, with the terminal device 320 sending uplink signals to the network device 310.

[0152] Furthermore, the terminal device 320 and the tag 330 can also communicate. In one possible scenario, the terminal device 320 can act as a transmitter and the tag 330 can act as a receiver, with the terminal device 320 sending signals to the tag 330; in another possible scenario, the tag 330 sends signals to the terminal device 320 via backscattering.

[0153] The carrier reflected by tag 330 can be a carrier transmitted from terminal device 320 to tag 330, meaning the intermediate node can act as a CW device. Alternatively, the communication system 300 may also include another CW device for transmitting a carrier, such as terminal device 340 shown in Figure 3. Terminal device 340 can transmit a carrier to tag 330 based on instructions from network device 310.

[0154] It should be understood that communication methods between a reader and a tag are exemplarily illustrated in communication systems 100, 200, and 300. Optionally, communication systems 100, 200, or 300 may also include multiple readers and / or multiple tags. This application embodiment does not limit this.

[0155] It should be understood that each communication device in the aforementioned communication systems 100, 200, and 300 can be configured with multiple antennas. These multiple antennas may include at least one transmitting antenna for transmitting signals and at least one receiving antenna for receiving signals. Additionally, each communication device also includes a transmitter chain and a receiver chain, which, as will be understood by those skilled in the art, may include multiple components related to signal transmission and reception (e.g., processors, modulators, multiplexers, demodulators, demultiplexers, or antennas). Therefore, communication devices can communicate with each other using multi-antenna technology.

[0156] Optionally, the communication system 100, communication system 200 or communication system 300 may also include other network entities such as network controllers and mobility management entities, and the embodiments of this application are not limited thereto.

[0157] It should be understood that the methods provided in the embodiments of this application can be applied to a variety of communication systems, including 5G NR systems and 5.5G systems. The communication systems shown in Figures 1 to 3 are only examples. This application does not limit the specific architecture of the applicable system, nor does it limit the number and form of various devices contained in each communication system.

[0158] In AIoT systems, tags can also improve uplink coverage through channel coding. Since tags are typically power-constrained devices—for example, device 1 typically has an output power of about 1 microwatt (μW); devices 2a and 2b typically have an output power of no more than a few hundred μW; and device c typically has an output power of 1 milliwatt (mW)—tags are usually encoded using convolutional codes, which have lower complexity. This allows for improved uplink coverage without exceeding the tag's power consumption limits.

[0159] For example, the convolutional encoder used for tag encoding can be as shown in Figure 4. This convolutional encoder includes registers and a modulo-2 adder. The number of registers can be six, and the registers can be represented by, for example, "D", such as register 401 in Figure 4. The modulo-2 adder can be represented by "⊕", such as modulo-2 adder 402 in Figure 4.

[0160] Furthermore, this convolutional encoder includes three encoding branches, such as encoding branches 403, 404, and 405 in Figure 4. After the convolutional encoder receives a bit sequence as input, such as c... k The bit sequence can be processed by encoding branch 403, encoding branch 404 and encoding branch 405 respectively, and encoding branch 403, encoding branch 404 and encoding branch 405 can each output a bit sequence.

[0161] It should be understood that for each coded branch, the input bit sequence is processed bit by bit, thus outputting a bit sequence. The output bit sequence is determined by the generator polynomial of that coded branch.

[0162] For example, the coefficients (or values) of the generator polynomial G0 of the encoded branch 403 can be 133, which is an octal value. The octal 133 converted to binary is 1011011, which can determine which bit in the current state of the register to perform modulo-2 addition.

[0163] Since octal 133 is converted to binary as 1011011, each "1" can represent a tap position. That is, for 1011011, from left to right, the 1st, 3rd, 4th, 6th and 7th bits have taps, so the bits at these tap positions in the register will be selected for modulo-2 addition.

[0164] It should be understood that for the input bit sequence, it will be input into the register bit by bit. Whenever a new input bit arrives, the bit in the register is shifted one bit to the left (or to the right, depending on the specific implementation), and the new input bit is placed at the rightmost (or leftmost) end of the register. This allows the state of the register to be continuously updated.

[0165] In encoding branch 403, the bits at the tap positions in the current state of the register can be selected based on 1011011, and modulo-2 addition can be performed. The resulting sequence after modulo-2 addition can be output. For example, assuming the register states are: r6, r5, r4, r3, r2, r1, and r0, where each value in r6, r5, r4, r3, r2, r1, and r0 can be 1 or 0, then based on 1011011, modulo-2 addition can be performed on r6, r4, r3, r1, and r0. Based on this register state, the output bits can be the bit sequence obtained by performing modulo-2 addition on r6, r4, r3, r1, and r0 respectively. Then, the input bit sequence (c...) k A new bit can be input into the register, and the bits in the register are shifted one bit to the left (or right, depending on the specific implementation). The new input bit is then placed at the rightmost (or leftmost) end of the register, updating the register state. Afterward, based on the updated register state, bits at the tap positions can still be selected according to the sequence 1011011 for modulo-2 addition, and the resulting bit sequence is output. This process is repeated until the input bit sequence (c) is reached. k Enter the entire register.

[0166] It should be understood that for these six registers, the output of one register can be the input of the next. In this way, the input bit sequence can sequentially affect the state of the registers and participate in the generation of the output bits through the definition of the generator polynomial. Based on the last state of the last register and the 1011011 output bit, a bit sequence output by the coded branch 403 can be obtained, for example, as...

[0167] The coefficients (or values) of the generator polynomial G1 in the coded branch 404 can be 171, which is an octal value. The octal value 171 converted to binary is 001111001, which, after removing leading zeros, is 1111001. Each "1" represents a tap position. That is, for 1111001, from left to right, bits 1, 2, 3, 4, and 7 have taps. Therefore, the bits at these tap positions in the register will be selected for modulo-2 addition.

[0168] It should be understood that, similar to the processing method of coding branch 403, coding branch 404 can also output a bit sequence, for example, called... 404 output of the encoded branch Method and encoding branch 403 output The method is similar, as described above, and will not be repeated here.

[0169] It should also be understood that, for the other coding branches shown in the embodiments of this application, the manner in which each coding branch outputs its bit sequence is the same as that of coding branch 403. The method is similar, and for the sake of brevity, it will not be elaborated on further below.

[0170] The coefficient G2 of the generator polynomial of the encoded branch 405 can be 165, which is an octal value. The octal 165 converted to binary is 001110101, which, if leading zeros are removed, is 1110101. Each "1" represents a tap position. That is, for 1110101, from left to right, bits 1, 2, 3, 5, and 7 have taps. Therefore, the bits at these tap positions in the register will be selected for modulo-2 addition.

[0171] Similar to the processing method of encoding branch 403, encoding branch 405 can also output a bit sequence, for example, called...

[0172] Furthermore, by concatenating the three output bit sequences, the input bit sequence (c) can be obtained. k The encoding result of the three output bit sequences. For example, when the three output bit sequences are concatenated, the encoding result can be, for example, as follows:

[0173] Therefore, by using convolutional coding, the final coding result increases redundant information. For example, in the coding method shown in Figure 4, when the number of repetitions of the uplink signal is 1, the code rate (or the mother code rate) can be 1 / 3, which makes the reliability of the transmitted encoded data higher.

[0174] While the above encoding methods can improve the uplink coverage of the tag, in some scenarios, the uplink coverage may still not meet communication requirements. For example, if the reader is located at the edge of the tag's uplink coverage or outside of it, the probability of the reader successfully receiving the signal from the tag may be low. If the uplink coverage of the tag is further improved through channel coding, the complexity of channel coding usually increases, which may lead to an increase in the tag's output power consumption.

[0175] As mentioned above, tags are typically devices with power consumption limitations, especially for local coverage tags (device 1, device 2a, and device 2b). However, wide-area tags (device c) usually have higher output power consumption compared to local coverage tags. Therefore, for wide-area tags (device c), the encoding complexity can be appropriately increased to improve encoding performance and thus increase uplink coverage.

[0176] However, since wide-area tags (device c) are also devices with power consumption limitations, how to further improve the uplink coverage of tags while keeping the increase in output power consumption small, so as to meet the communication needs of various scenarios, is an urgent problem to be solved.

[0177] In view of this, this application proposes a signal transmission and reception method. Based on the coding branches shown in Figure 4, additional coding branches can be added. For example, the number of newly added coding branches can be a first number, and the generator polynomial of this first number of coding branches is a first generator polynomial. Then, if the tag needs to improve its coding performance, the tag can encode the data using the first number of coding branches based on the first generator polynomial. If the tag does not need to improve its coding performance, the tag can encode the data using a second number of coding branches based on a second generator polynomial. The second number of coding branches is a subset of the first number of coding branches.

[0178] Specifically, the tag can determine whether to improve encoding performance (i.e., determine the first generator polynomial or the second generator polynomial) based on a first parameter and / or the information type of the first message sent to the reader. The first parameter may include parameters that reflect uplink coverage conditions. Therefore, the tag can determine the first generator polynomial or the second generator polynomial based on different uplink coverage conditions or information types.

[0179] In this way, when the tag does not require improved encoding performance, the convolutional encoder can be controlled by a switch to use a smaller number (the second number) of encoding branches based on the second generator polynomial for encoding, as shown in Figure 4, resulting in lower tag power consumption. When the tag requires improved encoding performance, the convolutional encoder can be controlled by a switch to use a larger number (the first number) of encoding branches based on the first generator polynomial for encoding, thus improving encoding performance. On the one hand, compared to using the first number of encoding branches based on the first generator polynomial in all cases, the tag's power consumption can be reduced. On the other hand, since the choice between encoding using the first or second generator polynomial is determined based on a first parameter or information type that reflects the coverage conditions, the determined first or second generator polynomial usually meets the communication requirements of the current uplink coverage conditions, or usually meets the communication requirements corresponding to the information type. Therefore, it can meet the communication needs of various application scenarios.

[0180] For example, as shown in FIG5, FIG5 is a schematic diagram of a convolutional encoder provided in an embodiment of this application. As shown in FIG5, compared with the convolutional encoder shown in FIG4, the convolutional encoder shown in FIG5 adds an encoding branch 501 to the encoding branches 403, 404, and 405. The tag can then control the convolutional encoder via a switch to encode through encoding branches 403, 404, 405, and 501, that is, encoding based on generator polynomials G0, G1, G2, and G3. In addition to the outputs of encoding branches 403, 404, and 405... as well as These three bit sequences can also be used to encode branch 501 based on the generator polynomial G3 output. This allows tags to be based on as well as The four output bit sequences determine the encoding result.

[0181] When the number of repetitions of the uplink signal is 1, the code rate (or mother code rate) can be 1 / 4. Compared with the code rate of 1 / 3 when encoding based on encoding branch 403, encoding branch 404 and encoding branch 405, the code rate is reduced and the encoding performance is improved, thereby increasing the uplink coverage range.

[0182] It should be understood that the coefficients of the generator polynomial G3 of the newly added coding branch 501 can be, for example, 166, where 166 is an octal value. This 166 is merely an example; in practical applications, 166 can be replaced with other coefficients as needed. This application does not impose specific limitations on this.

[0183] Furthermore, when the tag determines that improved encoding performance is not required, the tag can also control the convolutional encoder via a switch to perform encoding through encoding branches 403, 404, and 405, that is, encoding based on generator polynomials G0, G1, and G2. In this case, the encoding method is similar to that shown in Figure 4, which allows for lower power consumption of the tag.

[0184] Furthermore, although the number of encoding branches used in the two cases above differs, the encoding in both cases can be implemented using the same circuit. That is, when the tag needs to indicate encoding performance, the generator polynomials G0, G1, G2, and G3 are the original G0, G1, and G2 with the addition of G3, and the encoding branches are the original encoding branches 403, 404, and 405 with the addition of encoding branch 501. Therefore, in both cases, the tag does not use two completely different generator polynomials, and there is no need to use two completely different circuits. This improves encoding performance without significantly increasing the tag's encoding complexity, thus minimizing the increase in power consumption.

[0185] It should be understood that device c can be encoded using the methods described in the embodiments of this application, but the embodiments of this application are not limited to this scheme and are not limited to device c. Other types of tags or other types of devices can also adopt this encoding method. This application does not make specific limitations in this regard.

[0186] The signal transmission and reception method of this application will be described in detail below with reference to Figures 6 to 12. The embodiments shown in this application illustrate the signal transmission and reception method provided by this application from the perspective of device interaction. The specific form and number of each device shown are merely examples and should not constitute any limitation on the implementation of the method provided by this application.

[0187] The signal transmission and reception method of this application embodiment will be described in detail below, taking tags and readers as the main implementers.

[0188] The tag can also be referred to as the first AIoT device. The first AIoT device can be the tag itself, or a chip, chip system, or processor that supports the tag in implementing a signal transmission method, or a logic module or software that can implement all or part of the tag's functions. The reader can also be referred to as the second AIoT device. The second AIoT device can be the reader itself, or a chip, chip system, or processor that supports the reader in implementing a signal reception method, or a logic module or software that can implement all or part of the reader's functions. This application does not make any specific limitations in this regard.

[0189] Figure 6 is a schematic flowchart of a signal transmission and reception method 600 provided in an embodiment of this application. It is applicable to communication system 100, communication system 200, or communication system 300. As shown in Figure 6, method 600 includes the following steps:

[0190] S601, The tag determines a first generator polynomial or a second generator polynomial, which is associated with the information type of a first parameter or a first message. The first generator polynomial is the generator polynomial of a first number of encoded branches, and the second generator polynomial is the generator polynomial of a second number of encoded branches, where the first number is greater than the second number.

[0191] The first parameter includes one or more of the following: the length of the first sequence, the number of repetitions of the first sequence, the number of repetitions of the first message, the bandwidth of the first signal, or the signal quality of the received signal. The first sequence includes a preamble, an intermediate preamble, or a postamble. Determining the first generator polynomial or the second generator polynomial can also be understood as selecting the first generator polynomial or the second generator polynomial.

[0192] The first generator polynomial includes a first number of generator polynomials, and the second generator polynomial includes a second number of generator polynomials. Both the first and second numbers are positive integers. For example, if the second number is 3 and the first number is 4, then the first number of coding branches could be, for example, coding branches 403, 404, 405, and 501 as shown in Figure 5, and the second number of coding branches could be, for example, coding branches 403, 404, and 405 as shown in Figure 5; or, the second number is 3 and the first number is 5, as shown in Figure 8.

[0193] It should be understood that in the embodiments of this application, the first quantity and the second quantity are only examples. In actual application scenarios, the first quantity and / or the second quantity can also be set to a larger or smaller quantity as needed. This application does not make any specific limitations in this regard.

[0194] The first signal can be understood as the uplink signal sent by the tag. Before sending the uplink signal, the tag can first determine the generator polynomial used to encode the data carried by the uplink signal, that is, determine the first generator polynomial or the second generator polynomial.

[0195] It should be understood that in AIoT systems, uplink signals typically refer to signals sent from the tag (device, D) to the reader (reader, R). Therefore, uplink signals can also be called D2R transmission. Similarly, downlink signals can be called R2D transmission. For the sake of simplicity, this will not be elaborated further below.

[0196] For the uplink signal (first signal), as shown in Figure 7, it typically carries (or includes or carries) a preamble and a first message, and may also carry a midamble and / or a postamble. The first message carried by the first signal can be understood, for example, as a message transmitted through a physical device reader channel (PDRCH), which is used in the figure to represent the first message transmitted through the PDRCH. The first sequence can be understood as one of the preamble, midamble, or postamble.

[0197] The preamble can be understood as a specific bit sequence. The first signal includes the preamble, which is usually located at the beginning of the frame structure of the first signal. The first message can be understood as a message transmitted via PDRCH, and the first message may include, for example, the encoded pre-bits transmitted by the tag to the reader (as described below as the first encoded pre-bits), which are also called information bits. The first signal may also include intermediate preambles, which may be inserted into the first message, and there may be one or more intermediate preambles. The first signal may also include a post-preamble, which is usually located at the end of the frame structure of the first signal.

[0198] For the first signal, the part that is encoded is usually the first message carried in the first signal, and the first sequence (preamble, intermediate preamble, or postamble) included in the first signal is usually not encoded. Therefore, the first message can be understood as the bit before encoding being encoded based on the first generator polynomial or the second generator polynomial.

[0199] However, since the first sequence may affect the success rate of the reader in decoding the first signal, both the first sequence and the first message may affect the choice of the generator polynomial.

[0200] Since the first generator polynomial and the second generator polynomial can be used to achieve different coding performances, the uplink coverage range can be different. Therefore, the required generator polynomial can be determined based on the uplink coverage conditions (channel conditions, etc.) and / or the channel type carrying the uplink signal.

[0201] The first parameter can be understood as a parameter that can be used to indicate the uplink coverage conditions. The uplink coverage conditions affect the uplink coverage range. For example, the worse the uplink coverage conditions, the smaller the uplink coverage range may be, which may not meet the communication requirements. In this case, encoding based on the first generator polynomial may be necessary. Conversely, the better the uplink coverage conditions, the larger the uplink coverage range may be, which may meet the communication requirements. In this case, encoding based on the second generator polynomial may be necessary.

[0202] The first parameter may include: the length of the first sequence, the number of repetitions of the first sequence, the number of repetitions of the first message, the bandwidth of the first signal, or the signal quality of the received signal. These can be understood as parameters that can be used to reflect uplink coverage conditions.

[0203] The length of the first sequence, also known as the sequence length, can be understood as the number of bits included in the first sequence. The repetition count of the first sequence can be understood as the number of times the first sequence is repeatedly transmitted when the first signal is sent. The repetition count of the first message can also be understood as the number of times the first message is repeatedly transmitted when the first signal is sent. For the first signal, the part that usually needs to be repeatedly transmitted is the first message; therefore, the repetition count of the first message can also be called the repetition count of the first signal. The bandwidth of the first signal is the bandwidth of the transmitted first signal. The signal quality of the received signal can be used to indicate the signal quality of the downlink signal (R2D transmission) received by the tag from the reader. The signal quality of the received signal can be measured by the tag.

[0204] It should be understood that, in the embodiments of this application, signal quality can also be understood as signal strength, and can be represented by, but is not limited to, one or more of the following: reference signal received power (RSRP), reference signal received quality (RSRQ), signal to interference plus noise ratio (SINR), or received signal strength indication (RSSI).

[0205] The information type of the first message can be, for example, control information (or control signaling) or data. The required coverage may differ for different information types, so the tag can also determine the generator polynomial based on the information type.

[0206] S602, the tag sends a first signal to the reader, the first signal carrying a first sequence and a first message; wherein, if a first generator polynomial is determined, the first message is obtained by encoding the first encoding bits based on the first generator polynomial; if a second generator polynomial is determined, the first message is obtained by encoding the first encoding bits based on the second generator polynomial. Correspondingly, the reader receives the first signal from the tag.

[0207] It should be understood that receiving the first signal may include: the reader performing demodulation and equalization processing on the first signal to obtain the first message; and decoding the first message to determine the first encoded bits. The reader's decoding of the first message can be understood as the inverse operation of the tag encoding the first encoded bits. For example, if the first message is obtained by encoding the first encoded bits based on the first generator polynomial determined by the tag, then correspondingly, the reader can determine the first generator polynomial and decode the first message based on it. If the first message is obtained by encoding the first encoded bits based on the second generator polynomial determined by the tag, then correspondingly, the reader can determine the second generator polynomial and decode the first message based on it.

[0208] The first bit before encoding can also be understood as information bits. To improve the reliability of these data transmissions, they need to be encoded. Therefore, a bit sequence input to the convolutional encoder can be understood as the bit sequence of the first bit before encoding.

[0209] It should be understood that when the first generator polynomial is determined in S601, the first message is obtained by encoding the first encoding bit based on the first generator polynomial; when the second generator polynomial is determined in S601, the first message is obtained by encoding the first encoding bit based on the second generator polynomial. For example, the first generator polynomial may be, for example, G0, G1, G2, and G3 shown in FIG. 5, and the second generator polynomial may be, for example, G0, G1, and G2 shown in FIG. 5. Alternatively, the first generator polynomial may be, for example, G0, G1, G2, G3, and G4 shown in FIG. 8; and the second generator polynomial may be, for example, G0, G1, G2, and G3 shown in FIG. 8, or include G0, G1, and G2 shown in FIG. 8.

[0210] It should also be understood that when the reader receives and decodes the first signal, it needs to determine the encoding method of the first message carried in the first signal, that is, it needs to determine whether the first message is obtained by encoding based on the first generator polynomial or the second generator polynomial. Therefore, the reader also needs to determine the first generator polynomial or the second generator polynomial based on the first parameter and / or the channel type carrying the first signal. Furthermore, if the reader determines the first generator polynomial, it can decode the first message based on the first generator polynomial; if the reader determines the second generator polynomial, it can decode the first message based on the second generator polynomial.

[0211] It should be noted that the first parameters, which may include the length of the first sequence, the number of repetitions of the first sequence, the number of repetitions of the first message, and the bandwidth of the first signal, can be configured by the reader via signaling, and thus the reader can determine these parameters. When it is necessary to determine the first or second generator polynomial based on the signal quality of the tag-received signal, since the signal quality of the tag-received signal is measured by the tag, method 600 may further include: the tag sending information indicating the signal quality of the tag-received signal to the reader; correspondingly, the reader can receive the information from the tag indicating the signal quality of the tag-received signal and can determine the signal quality measured by the tag. This facilitates the determination of the first or second generator polynomial based on the signal quality.

[0212] In the signal transmission and reception method of this application, the tag can determine a first generator polynomial or a second generator polynomial based on a first parameter reflecting the coverage conditions and / or the information type of the first message. Thus, when the coverage conditions are good and / or the information type does not require improved coding performance, the convolutional encoder can be controlled by a switch to use a smaller number (second number) of coding branches for encoding based on the second generator polynomial, thereby meeting communication requirements while minimizing tag power consumption. When the coverage conditions are poor and / or the channel type requires improved coding performance, the convolutional encoder can be controlled by a switch to use a larger number (first number) of coding branches for encoding based on the first generator polynomial, improving coding performance and uplink coverage to meet communication requirements. Since the first generator polynomial or the second generator polynomial is determined based on the first parameter reflecting the coverage conditions and / or the information type of the first message, data transmission based on the determined first generator polynomial or the second generator polynomial can meet the communication requirements under the current coverage conditions or the communication requirements for transmitting the first message. Furthermore, compared to using a first number of coding branches to encode based on a first generator polynomial in all cases, the power consumption of the tag can be reduced.

[0213] It is understandable that the reader and the tag determine the generator polynomial based on the first parameter and / or the information type of the first message in a similar way. The following will take the tag's method of determining the generator polynomial as an example to explain in detail how the reader and the tag determine the generator polynomial based on the first parameter and / or the information type of the first message.

[0214] The first method: Determine the generator polynomial based on the first parameter (one or more of the following methods 1 to 5).

[0215] Method 1: Determine the generator polynomial based on the length of the first sequence.

[0216] Optionally, a first generator polynomial is determined when the length of the first sequence is greater than or equal to a first threshold or the length of the first sequence belongs to a first length set; and / or a second generator polynomial is determined when the length of the first sequence is less than a sixth threshold or the length of the first sequence belongs to a second length set.

[0217] It should be understood that the longer the length of the first sequence, the worse the current uplink coverage conditions may be, and the label can determine the first generator polynomial; the shorter the length of the first sequence, the better the current uplink coverage conditions may be, and the label can determine the second generator polynomial.

[0218] In one possible approach, a first generator polynomial is determined when the length of the first sequence is greater than or equal to a first threshold; and / or a second generator polynomial is determined when the length of the first sequence is less than a sixth threshold.

[0219] In one scenario, the first threshold and the sixth threshold can be the same threshold. For example, suppose this threshold is L. m If the length of the first sequence is greater than or equal to L, then m At that time, the first generator polynomial can be determined; the length of the first sequence is less than L. m When the second generator polynomial is determined, it can be determined.

[0220] It should be noted that in Method 1, determining the first generator polynomial when the value equals the first threshold (or the sixth threshold) is merely an example. The label can also determine the second generator polynomial when the value equals the first threshold (or the sixth threshold). Therefore, Method 1 can also be replaced with: determining the first generator polynomial when the length of the first sequence is greater than the first threshold; and / or determining the second generator polynomial when the length of the first sequence is less than or equal to the sixth threshold.

[0221] In another scenario, the first threshold and the sixth threshold can also be different. Furthermore, determining the second generator polynomial when the length of the first sequence is less than the sixth threshold can be replaced by determining the second generator polynomial when the length of the first sequence is less than or equal to the sixth threshold. Also, when the first threshold and the sixth threshold are different, the sixth threshold can be a value less than the first threshold.

[0222] Based on the above embodiments, the first threshold and the sixth threshold can be predefined values, values ​​configured by the reader through signaling, or values ​​pre-placed in the tag, so that the tag can determine the generator polynomial.

[0223] In another possible approach, a first generating polynomial is determined when the length of the first sequence belongs to a first length set; and / or, a second generating polynomial is determined when the length of the first sequence belongs to a second length set.

[0224] The first length set may include one or more lengths, and the second length set may also include one or more lengths. The intersection of the first length set and the second length set is an empty set, meaning that the first length set and the second length set do not contain any lengths of the same type. Furthermore, the maximum value among the lengths included in the second length set may be less than the minimum value among the lengths included in the first length set.

[0225] It should be understood that in the embodiments of this application, the length of the first sequence can also be referred to as the sequence length of the first sequence, and this application does not specifically limit it in this regard.

[0226] For example, the second length set includes lengths of: L1, L2, ... L m-1 The first set of lengths includes lengths of: L m L m+1 L m+2 ..., L n Let m be an integer greater than 1, and n be an integer greater than m. The largest length in the second length set is less than the smallest length in the first length set. Then the length of the first sequence is L. m L m+1 L m+2 ..., L n When one of the following is true, the label can determine the first generator polynomial; when the length of the first sequence is L1, L2, ... L... m-1 When one of them is used, the label can determine the second generator polynomial.

[0227] Based on the above embodiments, optionally, the length of the first sequence can be indicated by the reader via signaling. For example, method 600 further includes: the reader sending information 1 to the tag, information 1 indicating the length of the first sequence; correspondingly, the tag receives information 1 from the reader and can determine the length of the first sequence based on information 1. The generator polynomial can then be determined in any of the above manner.

[0228] Information 1 can be carried, for example, in a query signaling message. This signaling message can be understood as a signaling message that can be used to wake up the tag and initiate the tag identification process. The reader can use this signaling message to query the tags within the reader's coverage area in order to identify and read the information from those tags.

[0229] In one example, information 1 can be carried in the first sequence field of the Query signaling. When the first sequence is a preamble, this field is the preamble field; when the first sequence is an intermediate preamble, this field is the intermediate preamble field; when the first sequence is a postamble, this field is the postamble field. Information 1 can be, for example, 1 or 0. When information 1 is 1 (or 0), it can indicate that the length of the first sequence is greater than or equal to a first threshold; or that the length of the first sequence belongs to a first length set; or it can be directly used to indicate a length greater than or equal to the first threshold or directly indicate a length in the first length set. Therefore, when information 1 is 1 (or 0), the label can determine the first generator polynomial. Alternatively, when information 1 is 0 (or 1), it can indicate that the length of the first sequence is less than a sixth threshold; or that the length of the first sequence belongs to a second length set; or it can be directly used to indicate a length less than the sixth threshold or directly indicate a degree in the second length set. Therefore, when information 1 is 0 (or 1), the label can determine the second generator polynomial.

[0230] It should be understood that in this example, information 1 can also be information other than 1 or 0. For example, information 1 can also be 001, 100 or 1100, etc. This application does not make any specific limitation on this.

[0231] In another example, information 1 could be carried in the uplink coverage (UC) sequence field of the query signaling. The UC field can be understood as a field used to indicate parameters to the label; it can also be called by other names. Information 1 could be, for example, 100, 000, 001, 010, or 011. When information 1 is 100, it could indicate that the length of the first sequence is greater than or equal to a first threshold; or that the length of the first sequence belongs to a first length set; or it could be used directly to indicate a length greater than or equal to the first threshold or directly to indicate a length in the first length set. Therefore, when information 1 is 100, the label can determine the first generator polynomial. When information 1 is one of 000, 001, 010, or 011, for example, it could indicate that the length of the first sequence is in a second length set, and the label can determine the second generator polynomial. Here, 000, 001, 010, and 011 can, for example, be used to indicate one or more sequence lengths in the second length set.

[0232] That is, the protocol can predefine the correspondence between various indexes or identifiers and lengths. This allows the label to determine the length of the first sequence based on information 1 (which can be indexes or identifiers), and then determine the first or second generator polynomial.

[0233] It should be understood that in this example, information 1 can also be information composed of more or fewer bits. For example, information 1 can also be 0001, 11100 or 10, etc. This application does not make any specific limitation on this.

[0234] Method 2: Determine the generator polynomial based on the number of repetitions of the first sequence.

[0235] Optionally, a first generator polynomial is determined when the number of repetitions of the first sequence is greater than or equal to a second threshold or when the number of repetitions of the first sequence belongs to the first set of numbers; and / or a second generator polynomial is determined when the number of repetitions of the first sequence is less than a seventh threshold or when the number of repetitions of the first sequence belongs to the third set of numbers.

[0236] It should be understood that the greater the number of repetitions in the first sequence, the worse the uplink coverage condition may be, and the label can determine the first generator polynomial; the less the number of repetitions in the first sequence, the better the uplink coverage condition may be, and the label can determine the second generator polynomial.

[0237] In one possible approach, a first generator polynomial is determined when the number of repetitions of the first sequence is greater than or equal to a second threshold; and / or, a second generator polynomial is determined when the number of repetitions of the first sequence is less than a seventh threshold.

[0238] In one scenario, the second threshold and the seventh threshold can be the same threshold. For example, suppose this threshold is R. a If the number of repetitions in the first sequence is greater than or equal to R, then a When the first generator polynomial is determined, the number of repetitions in the first sequence is less than R. a When the second generator polynomial is determined, it can be determined.

[0239] It should be noted that determining the first generator polynomial when it equals the second threshold (or the seventh threshold) in Method 2 is merely an example. The label can also determine the second generator polynomial when it equals the second threshold (or the seventh threshold). Therefore, Method 2 can also be replaced by: determining the first generator polynomial when the number of repetitions of the first sequence is greater than the second threshold; and / or determining the second generator polynomial when the number of repetitions of the first sequence is less than or equal to the seventh threshold.

[0240] In another scenario, the second threshold and the seventh threshold can also be different. In this case, determining the second generator polynomial when the number of repetitions of the first sequence is less than the seventh threshold can be replaced by determining the second generator polynomial when the number of repetitions of the first sequence is less than or equal to the seventh threshold. Furthermore, when the second threshold and the seventh threshold are different, the seventh threshold can be a value less than the second threshold.

[0241] Based on the above embodiments, the second threshold and the seventh threshold can be predefined values, values ​​configured by the reader through signaling, or values ​​preset in the tag, so that the tag can determine the generator polynomial.

[0242] In another possible approach, a first generator polynomial is determined when the number of repetitions in the first sequence belongs to the first set of numbers; and / or, a second generator polynomial is determined when the number of repetitions in the first sequence belongs to the third set of numbers.

[0243] The first set of numbers can include one or more repetitions, and the third set of numbers can also include one or more repetitions. The intersection of the first and third sets of numbers is an empty set, meaning that the first and third sets of numbers do not contain the same number of repetitions. Furthermore, the maximum value among the repetitions included in the third set of numbers can be less than the minimum value among the repetitions included in the first set of numbers.

[0244] For example, the third set of numbers includes sequences that repeat the following times: R1, R2, ..., R a-1 The number of repetitions of the sequence included in the first set of numbers is: R a R a+1 R a+2 ..., R b Let a be an integer greater than 1, and b be an integer greater than a. The maximum repetition count in the third set of numbers is less than the minimum repetition count in the first set of numbers. Therefore, the repetition count in the first sequence is R. a R a+1 R a+2 ..., R b When one of them is true, the label can determine the first generator polynomial; the repetition counts in the first sequence are R1, R2, ..., R. a-1 When one of them is used, the label can determine the second generator polynomial.

[0245] Based on the above embodiments, optionally, the number of repetitions of the first sequence can be indicated by the reader via signaling. For example, method 600 further includes: the reader sending information 2 to the tag, information 2 indicating the number of repetitions of the first sequence; correspondingly, the tag receives information 2 from the reader and can determine the number of repetitions of the first sequence based on information 2. The generator polynomial can then be determined in any of the above manner.

[0246] Information 2 can be carried in a query signaling message, for example.

[0247] For example, information 2 can be carried in the bit repetition (BR) field of the Query signaling. The BR field can be understood as a field used to indicate parameters to the tag, and this field can also be called by other names. Information 2 can be, for example, a combination of two bits, such as 00, 10, 01, or 11. When information 2 is 00, it can indicate that the number of repetitions of the first sequence is greater than or equal to the second threshold; or it can indicate that the number of repetitions of the first sequence belongs to the first set of numbers; or it can be used directly to indicate a number of repetitions greater than or equal to the second threshold or directly to indicate a number of repetitions in the first set of numbers. Therefore, when information 2 is 00, the tag can determine the first generator polynomial. When information 2 is one of 10, 01, or 11, for example, it can indicate that the number of repetitions of the first sequence is in the third set of numbers, and the tag can determine the second generator polynomial. 10, 01, or 11 can, for example, indicate one or more repetitions in the third set of numbers.

[0248] That is, the protocol can, for example, predefine the correspondence between various indexes or identifiers and the number of repetitions of the first sequence. This allows the label to determine the number of repetitions of the first sequence based on information 2 (which can be indexes or identifiers), and thus determine the first generator polynomial or the second generator polynomial.

[0249] It should be understood that in this example, information 2 can also be information composed of more or fewer bits. For example, information 2 can also be 0001, 100 or 1, etc. This application does not make any specific limitation on this.

[0250] Method 3: Determine the generator polynomial based on the number of repetitions of the first message.

[0251] Optionally, a first generator polynomial is determined when the number of repetitions of the first message is greater than or equal to a third threshold or when the number of repetitions of the first message belongs to a second set of numbers; and / or a second generator polynomial is determined when the number of repetitions of the first message is less than an eighth threshold or when the number of repetitions of the first message belongs to a fourth set of numbers.

[0252] It should be understood that the greater the number of repetitions of the first message, the worse the uplink coverage conditions may be, and the label can determine the first generator polynomial; the less the number of repetitions of the first message, the better the uplink coverage conditions may be, and the label can determine the second generator polynomial.

[0253] In one possible approach, a first generator polynomial is determined when the number of repetitions of the first message is greater than or equal to a third threshold; and / or a second generator polynomial is determined when the number of repetitions of the first message is less than an eighth threshold.

[0254] In one scenario, the third threshold and the eighth threshold can be the same threshold. For example, suppose this threshold is Y. c If the number of repetitions of the first message is greater than or equal to Y, then... c At that time, the first generator polynomial can be determined; the number of repetitions of the first message is less than Y. c When the second generator polynomial is determined, it can be determined.

[0255] It should be noted that determining the first generator polynomial when the value equals the third threshold (or the eighth threshold) in Method 3 is merely an example. The second generator polynomial can also be determined when the value equals the third threshold (or the eighth threshold). Therefore, Method 3 can also be replaced with: determining the first generator polynomial when the number of repetitions of the first message is greater than the third threshold; and / or determining the second generator polynomial when the number of repetitions of the first message is less than or equal to the eighth threshold.

[0256] In another scenario, the third threshold and the eighth threshold can also be different. Therefore, determining the second generator polynomial when the number of repetitions of the first message is less than the eighth threshold can be replaced by determining the second generator polynomial when the number of repetitions of the first message is less than or equal to the eighth threshold. Furthermore, when the third threshold and the eighth threshold are different, the eighth threshold can be a value less than the third threshold.

[0257] Based on the above embodiments, the third threshold and the eighth threshold can be predefined values, values ​​configured by the reader through signaling, or values ​​preset in the tag, so that the tag can determine the generator polynomial.

[0258] In another possible approach, the first generator polynomial is determined when the number of repetitions of the first message belongs to the second set of numbers; and / or, the second generator polynomial is determined when the number of repetitions of the first message belongs to the fourth set of numbers.

[0259] The second set of numbers can include one or more repetitions, and the fourth set of numbers can also include one or more repetitions. The intersection of the second and fourth sets of numbers is an empty set, meaning that the second and fourth sets of numbers do not contain the same number of repetitions. Furthermore, the maximum value among the repetitions included in the fourth set of numbers can be less than the minimum value among the repetitions included in the second set of numbers.

[0260] For example, the fourth set of repetitions includes the following repetition counts: Y1, Y2, ..., Y... c-1 The second set of numbers includes the number of repetitions: Y c Y c+1 Y c+2 ..., Y dLet c be an integer greater than 1, and d be an integer greater than c. The maximum repetition count in the fourth set is less than the minimum repetition count in the second set. Therefore, the repetition count of the first message is Y. c Y c+1 Y c+2 ..., Y d When one of them is true, the label can determine the first generator polynomial; when the repetition count of the first message is Y1, Y2, ..., Y... c-1 When one of them is used, the label can determine the second generator polynomial.

[0261] Based on the above embodiments, optionally, the number of repetitions of the first message can be indicated by the reader via signaling. For example, method 600 further includes: the reader sending information 3 to the tag, information 3 indicating the number of repetitions of the first message; correspondingly, the tag receives information 3 from the reader and can determine the number of repetitions of the first message based on information 3. The generator polynomial can then be determined in any of the above manner.

[0262] Information 3 can be carried in a query signaling message, for example.

[0263] For example, information 3 can be carried in the BR field of the Query signaling. The BR field can be understood as a field used to indicate parameters to the tag, and this field can also be called by other names. Information 3 can be, for example, a combination of two bits, such as 00, 10, 01, or 11. When information 3 is 00, it can indicate that the number of repetitions of the first message is greater than or equal to the third threshold; or it can indicate that the number of repetitions of the first message belongs to the second set of numbers; or it can be used directly to indicate a number of repetitions greater than or equal to the third threshold or directly to indicate a number of repetitions in the second set of numbers. Therefore, when information 3 is 00, the tag can determine the first generator polynomial. When information 3 belongs to one of 10, 01, or 11, for example, it can indicate that the number of repetitions of the first message belongs to the fourth set of numbers, and the tag can determine the second generator polynomial. Here, 10, 01, or 11 can, for example, indicate one or more repetitions in the fourth set of numbers.

[0264] That is, the protocol can, for example, predefine the correspondence between various indexes or identifiers and the number of repetitions of the first message. This allows the tag to determine the number of repetitions of the first message based on information 3 (which can be indexes or identifiers), and thus determine the first generator polynomial or the second generator polynomial.

[0265] It should be understood that in this example, information 3 can also be information composed of more or fewer bits. For example, information 3 can also be 0111, 110 or 1, etc. This application does not make any specific limitation on this.

[0266] Method 4: Determine the generator polynomial based on the bandwidth of the first signal.

[0267] Optionally, a first generator polynomial is determined when the bandwidth of the first signal is less than or equal to a fourth threshold or when the bandwidth of the first signal belongs to a first bandwidth set; and / or a second generator polynomial is determined when the bandwidth of the first signal is greater than a ninth threshold or when the bandwidth of the first signal belongs to a second bandwidth set.

[0268] It should be understood that the smaller the bandwidth of the first signal, the worse the uplink coverage conditions may be, and the tag can determine the first generator polynomial; the larger the bandwidth of the first signal, the better the uplink coverage conditions may be, and the tag can determine the second generator polynomial.

[0269] In one possible approach, a first generator polynomial is determined when the bandwidth of the first signal is less than or equal to a fourth threshold; and / or a second generator polynomial is determined when the bandwidth of the first signal is greater than a ninth threshold.

[0270] In one case, the fourth threshold and the ninth threshold can be the same threshold. For example, suppose this threshold is S. e If the bandwidth of the first signal is less than or equal to S e At that time, the first generator polynomial can be determined; the bandwidth of the first signal is greater than S. e When the second generator polynomial is determined, it can be determined.

[0271] It should be noted that determining the first generator polynomial when it equals the fourth threshold (or the ninth threshold) in Method 4 is merely an example. The label can also determine the second generator polynomial when it equals the fourth threshold (or the ninth threshold). Therefore, Method 4 can also be replaced with: determining the first generator polynomial when the bandwidth of the first signal is less than the fourth threshold; and / or determining the second generator polynomial when the bandwidth of the first signal is greater than or equal to the ninth threshold.

[0272] In another scenario, the fourth threshold and the ninth threshold can also be different. Therefore, determining the second generator polynomial when the bandwidth of the first signal is greater than the ninth threshold can be replaced by determining the second generator polynomial when the bandwidth of the first signal is greater than or equal to the ninth threshold. Furthermore, when the fourth threshold and the ninth threshold are different, the ninth threshold can be a value greater than the fourth threshold.

[0273] Based on the above embodiments, the fourth threshold and the ninth threshold can be predefined values, values ​​configured by the reader through signaling, or values ​​preset in the tag, so that the tag can determine the generator polynomial.

[0274] In another possible approach, a first generator polynomial is determined when the bandwidth of the first signal belongs to a first set of bandwidths; and / or, a second generator polynomial is determined when the bandwidth of the first signal belongs to a second set of bandwidths.

[0275] The first bandwidth set may include one or more bandwidths, and the second bandwidth set may also include one or more bandwidths. The intersection of the first bandwidth set and the second bandwidth set is an empty set, meaning that the first bandwidth set and the second bandwidth set do not contain the same bandwidths. Furthermore, the minimum value of the bandwidths included in the second bandwidth set may be greater than the maximum value of the bandwidths included in the first bandwidth set.

[0276] For example, the first bandwidth set includes bandwidths S1, S2, ..., S... e The second bandwidth set includes the following bandwidth: S e+1 S e+2 S f Let e ​​be an integer greater than 1, and f be an integer greater than e. The largest bandwidth in the first bandwidth set is less than the smallest bandwidth in the second bandwidth set. Then the bandwidths of the first signal are S1, S2, ..., S... e When one of them is present, the label can determine the first generator polynomial; when the bandwidth of the first signal is S e+1 S e+2 S f When one of them is used, the label can determine the second generator polynomial.

[0277] Based on the above embodiments, optionally, the bandwidth of the first signal can be indicated by the reader via signaling. For example, method 600 further includes: the reader sending information 4 to the tag, information 4 indicating the bandwidth of the first signal; correspondingly, the tag receives information 4 from the reader and can determine the bandwidth of the first signal based on information 4. The generator polynomial can then be determined in any of the above manner.

[0278] Information 4 can be carried in a query signaling message, for example.

[0279] In one example, information 4 could be carried in the index field of the Query signaling. Information 4 could be a combination of 4 bits. For example, when information 4 is one of 0101, 1001, 1100, 1110, or 1111, it could indicate that the bandwidth of the first signal belongs to a first bandwidth set, and the tag could determine the first generator polynomial; 0101, 1001, 1100, 1110, and 1111 could, for example, indicate one or more bandwidths in the first bandwidth set. When information 4 is one of 0001, 0010, 0011, 0100, 0110, 0111, 1000, 1010, 1011, or 1101, it could indicate that the bandwidth of the first signal is in a second bandwidth set, and the tag could determine the second generator polynomial. 0001, 0010, 0011, 0100, 0110, 0111, 1000, 1010, 1011, or 1101 can, for example, indicate one or more bandwidths in the second bandwidth set.

[0280] In another example, information 4 could be carried in the UC field of the Query signaling. Information 4 could be a combination of 3 bits. For example, when information 4 is 100, it could indicate that the bandwidth of the first signal is less than or equal to a fourth threshold; or that the bandwidth of the first signal belongs to a first bandwidth set; or it could be used directly to indicate a repetition number less than or equal to the fourth threshold or directly to indicate a repetition number in the first bandwidth set. Therefore, when information 4 is 100, the tag can determine the first generator polynomial. When information 4 is one of 000, 001, 010, or 011, for example, it could indicate that the bandwidth of the first signal is in a second bandwidth set, and the tag can determine the second generator polynomial. 000, 001, 010, or 011 could, for example, indicate one or more bandwidths in the second bandwidth set.

[0281] That is, the protocol can predefine the correspondence between various indexes or identifiers and the bandwidth of the first signal. This allows the tag to determine the bandwidth of the first signal based on information 4 (which can be indexes or identifiers), and then determine the first generator polynomial or the second generator polynomial.

[0282] It should be understood that in this example, information 4 can also be information composed of more or fewer bits. For example, information 3 can also be 10111, 10 or 1, etc. This application does not make any specific limitation on this.

[0283] Method 5: Determine the generator polynomial based on the signal quality of the received downlink signal.

[0284] It should be understood that, for the sake of brevity, the following description will use the term "signal quality" to refer to the quality of the received downlink signal, and will not be elaborated upon further.

[0285] Optionally, a first generator polynomial is determined when the signal quality is less than or equal to a fifth threshold; and / or a second generator polynomial is determined when the signal quality is greater than a tenth threshold.

[0286] It should be understood that the lower the signal quality, the worse the uplink coverage conditions may be, and thus the first generator polynomial can be determined; the higher the signal quality, the better the uplink coverage conditions may be, and thus the second generator polynomial can be determined.

[0287] In one scenario, the fifth threshold and the tenth threshold can be the same threshold. For example, suppose this threshold is RSRP. thd If the signal quality is less than or equal to RSRP thd At that time, the first generator polynomial can be determined; the signal quality is greater than RSRP. thd When the second generator polynomial is determined, it can be determined.

[0288] It should be noted that determining the first generator polynomial when the signal quality equals the fifth threshold (or tenth threshold) in Method 5 is merely an example. The label can also determine the second generator polynomial when the signal quality equals the fifth threshold (or tenth threshold). Therefore, Method 5 can also be replaced with: determining the first generator polynomial when the signal quality is less than the fifth threshold; and / or, determining the second generator polynomial when the signal quality is greater than or equal to the tenth threshold.

[0289] In another scenario, the fifth threshold and the tenth threshold can also be different. Therefore, determining the second generator polynomial when the signal quality is greater than the tenth threshold can be replaced by determining the second generator polynomial when the signal quality is greater than or equal to the tenth threshold. Furthermore, when the fifth threshold and the tenth threshold are different, the tenth threshold can be a value greater than the fifth threshold.

[0290] Based on the above embodiments, the fifth threshold and the tenth threshold can be predefined values, values ​​configured by the reader through signaling, or values ​​preset in the tag, so that the tag can determine the generator polynomial.

[0291] It should be understood that methods 1 and 5 shown above can be implemented separately, or one or more of methods 1 to 5 can be implemented in combination. That is, the label can determine the generator polynomial based on the judgment conditions in one or more methods. For the sake of brevity, these will not be elaborated further here.

[0292] The second method: determine the generator polynomial based on the information type of the first message.

[0293] It should be understood that, for the sake of brevity, the information type of the first message will be referred to as the information type in the following text, and will not be elaborated on further.

[0294] Optionally, determining the first or second generator polynomial based on the information type includes: determining the first generator polynomial when the information type is a first type; and determining the second generator polynomial when the information type is a second type.

[0295] The first and second types represent different information types. The required uplink coverage range may differ for different information types. Therefore, the generator polynomial can be determined based on the information type.

[0296] For example, the first type of information can be control information (or control signaling); then, when the information type of the first message is control information, the tag can determine a first generator polynomial to achieve higher encoding performance and a larger uplink coverage range when sending control information to the reader. The second type of information can be data (or service data); then, when the information type of the first message is data, the tag can determine a second generator polynomial to achieve lower power consumption when sending data to the reader.

[0297] It should be understood that the control information and data shown above are merely examples. In actual application scenarios, the first and second types can also be other information types, such as the first type being data and the second type being control information. This application does not impose specific limitations on this.

[0298] It should also be understood that the first and second methods shown above can be implemented separately, that is, the tag can determine the generator polynomial based on the first parameter or the channel type; or, the first and second methods can be implemented in combination, that is, the tag can determine the generator polynomial based on the first parameter and the information type. This application does not impose specific limitations on this.

[0299] It should also be noted that the way the reader determines the first or second generator polynomial is the same as the way the tag determines the first or second generator polynomial, as described above, and will not be repeated here.

[0300] The above explains how to determine the generator polynomial. The first generator polynomial can be similar to the generator polynomial shown in Figure 5, i.e., the first number is 4. The first generator polynomial consists of G0, G1, G2, and G3, where G0 is the generator polynomial of coding branch 403, G1 is the generator polynomial of coding branch 404, G2 is the generator polynomial of coding branch 405, and G3 is the generator polynomial of coding branch 501. The second number can be 3, and the second generator polynomial consists of G0, G1, and G2, where G0 is the generator polynomial of coding branch 403, G1 is the generator polynomial of coding branch 404, and G2 is the generator polynomial of coding branch 405. Alternatively, the first number can be more, for example, it can be 5, in which case the convolutional encoder can be as shown in Figure 8.

[0301] It is understood that the coding branches in the first number of coding branches can be arbitrarily interchanged, and the coding branches in the second number of coding branches can also be arbitrarily interchanged. For example, in both the convolutional encoder shown in Figure 5 and the convolutional encoder shown in Figure 8, the coding branches can be arbitrarily interchanged. For example, taking a convolutional code encoder whose first generator polynomial consists of G0, G1, G2, and G3 as an example, where G0 corresponds to the first coding branch (e.g., coding branch 403), G1 corresponds to the second coding branch (e.g., coding branch 404), G2 corresponds to the third coding branch (e.g., coding branch 405), and G3 corresponds to the fourth coding branch (e.g., coding branch 501), it is equivalent to a convolutional code encoder where G3 corresponds to the first coding branch, G0 corresponds to the second coding branch, G1 corresponds to the third coding branch, and G2 corresponds to the fourth coding branch; it is also equivalent to a convolutional code encoder where G4 corresponds to the first coding branch, G3 corresponds to the second coding branch, G2 corresponds to the third coding branch, and G1 corresponds to the fourth coding branch; and it is also equivalent to a convolutional code encoder where G2 corresponds to the first coding branch, G4 corresponds to the second coding branch, G1 corresponds to the third coding branch, and G3 corresponds to the fourth coding branch. Similarly, the second number of coding branches can also be arbitrarily interchanged. This application does not impose specific limitations on this.

[0302] Referring to Figure 8, the convolutional encoder shown in Figure 8 adds encoding branches 501 and 601 to the existing encoding branches 403, 404, and 405. The tag can then control the convolutional encoder via a switch, performing encoding through encoding branches 403, 404, 405, 501, and 601, i.e., encoding based on the generator polynomials G0, G1, G2, G3, and G4. Therefore, in addition to the outputs of encoding branches 403, 404, and 405... as well as These three bit sequences can also be used to encode branch 501 based on the generator polynomial G3 output. Furthermore, the 601 encoding branch can also be based on the generator polynomial G4 output. This allows tags to be based on as well as The five output bit sequences determine the encoding result. Therefore, when the uplink signal repetition count is 1, the code rate (or mother code rate) can be 1 / 5, which can improve encoding performance and increase the uplink coverage range.

[0303] The tag can also be controlled by a switch to encode the convolutional encoder through encoding branches 403, 404, 405, and 501, i.e., based on the generator polynomials G0, G1, G2, and G3. Then, in addition to the outputs of encoding branches 403, 404, and 405... as well as These three bit sequences can also be used to encode branch 501 based on the generator polynomial G3 output. This allows tags to be based on as well as The four output bit sequences determine the encoding result. Therefore, when the uplink signal repetition count is 1, the code rate (or mother code rate) can be 1 / 4, which can improve encoding performance and increase the uplink coverage.

[0304] Furthermore, the tag can also control the convolutional encoder via a switch, performing encoding through encoding branches 403, 404, and 405, i.e., encoding based on generator polynomials G0, G1, and G2. When the uplink signal repetition count is 1, the code rate (or mother code rate) can be 1 / 3. This encoding method is similar to that shown in Figure 4, resulting in lower tag power consumption.

[0305] The first generating polynomial determined above can be G0, G1, G2, G3, and G4, with a first quantity of 5, and the second generating polynomial can be G0, G1, G2, and G3, with a second quantity of 4; or, the first generating polynomial can be G0, G1, G2, G3, and G4, with a first quantity of 5, and the second generating polynomial can be G0, G1, and G2, with a second quantity of 3; or, the first generating polynomial can be G0, G1, G2, and G3, with a first quantity of 4, and the second generating polynomial can be G0, G1, and G2.

[0306] It should be understood that in the coding branches shown in Figure 8, the coefficients of the generator polynomial G3 of coding branch 501 can be, for example, 166; and the coefficients of the generator polynomial G4 of coding branch 601 can be, for example, 103. 166 and 103 can be octal values. Furthermore, 166 and 103 are merely examples. In practical applications, 166 and / or 103 can be replaced with other coefficients as needed, and this application does not impose specific limitations on this.

[0307] Furthermore, when there are more than two generator polynomials that can be selected for the label, such as in the convolutional encoder shown in Figure 8, the label can be encoded using three coding branches based on generator polynomials G0, G1, and G2; it can also be encoded using four coding branches based on generator polynomials G0, G1, G2, and G3; or it can be encoded using five coding branches based on generator polynomials G0, G1, G2, G3, and G4. The label can then, for example, choose one of these three generator polynomials. The method for determining the generator polynomial for the label is similar to the first and / or second methods described above, and for simplicity, they will not be shown here individually.

[0308] In addition to the methods mentioned above, tags can also determine the generator polynomial based on the reader's instructions.

[0309] For example, if in S602 the first message is obtained by encoding the first encoded bits based on the second generator polynomial, then after S602, method 600 may further include: the reader sending a second message to the tag, the second message indicating encoding by the first generator polynomial; correspondingly, the tag receiving the second message from the reader. The tag sends a second signal to the reader based on the second message, the second signal carrying a second sequence and a third message, the third message being obtained by encoding the second encoded bits based on the first generator polynomial, the second sequence including a preamble, an intermediate preamble, or a postamble; correspondingly, the reader receiving the second signal from the tag and decoding the third message based on the first generator polynomial.

[0310] Receiving the second signal may include: the reader performing demodulation and equalization processing on the second signal to obtain the third message; so that the reader can decode the third message based on the first generator polynomial to determine the second encoded first bit.

[0311] It should be understood that when the first message is obtained by encoding the bits before encoding the first message based on the second generator polynomial, the encoding performance of the first message is poor. The reader may fail to receive the first message and / or the block error rate (BLER) of decoding the first message may exceed a certain threshold. The reader's failure to receive the first message can also be understood as the reader failing to receive part or all of the content in the first message.

[0312] In other words, when the reader determines that encoding based on the second generator polynomial cannot meet the communication requirements, it can instruct the tag to improve the encoding performance.

[0313] The second message indicates encoding using the first generator polynomial. Alternatively, it can be replaced with: indicating ways to improve encoding performance or indicating ways to increase the number of encoding branches, so that the tag can be encoded using a greater number of encoding branches.

[0314] The second signal can be similar to the first signal. For example, if the first signal includes one or more of the preamble, intermediate preamble, or postamble, the second signal can also include that one or more of them. Furthermore, the first encoded preamble bit corresponding to the first message and the second encoded preamble bit corresponding to the third message can be the same or different. When the first encoded preamble bit and the second encoded preamble bit are the same, the first message is obtained by encoding the encoded preamble bit based on the second generator polynomial; the third message is obtained by encoding the encoded preamble bit based on the first generator polynomial.

[0315] In this way, if the tag fails to transmit the first bit of the encoded data via the first message, the encoding performance can be improved to transmit the first bit of the encoded data via the third message. This increases the probability that the reader will successfully decode and obtain the first bit of the encoded data.

[0316] It should be understood that, in the embodiments of this application, regardless of whether it is the first or second pre-encoded bit, if the tag is encoded based on the first generator polynomial, then the reader can correspondingly decode based on the first generator polynomial; if the tag is encoded based on the second generator polynomial, then the reader can correspondingly decode based on the second generator polynomial. Furthermore, decoding can be understood as the inverse operation of encoding.

[0317] The above shows how to determine the number of generator polynomials (the number of encoded branches). The following explains how to determine the coefficients of the generator polynomials using labels.

[0318] As an optional embodiment, the coefficients of the first generator polynomial are related to whether the first message employs an interleaving operation.

[0319] The coefficients of the first generator polynomial are related to whether the first message uses an interleaving operation. This can be understood as follows: the coefficients of the first generator polynomial can differ depending on whether the first message uses an interleaving operation or not. The coefficients of the first generator polynomial can also be referred to as its values, and can be represented in various ways, such as octal, binary, or hexadecimal. Furthermore, the coefficients of the first generator polynomial can include the coefficients (or values) of each generator polynomial in the first generator polynomial. For example, when the first generator polynomial includes G0, G1, G2, and G3, the coefficients of the first generator polynomial can include the coefficients (or values) of G0, G1, G2, and G3. That is, the coefficients of the first generator polynomial can be used to describe the values ​​of each generator polynomial included in the first generator polynomial.

[0320] In addition, interleaving operations may include one or more of the following interleaving operations: interleaving at the output bit sequence granularity, interleaving at the bit granularity, or interleaving in a row (or column).

[0321] The interleaving operation at the bit sequence granularity can be as follows: each coding branch outputs a bit sequence, and after obtaining a first number of bit sequences, these first number of bit sequences are interleaved. For example, assuming the first number is 4, and the bit sequences output by the 4 coding branches are: as well as If interleaving is not used, the encoded results can be concatenated sequentially, for example. as well as The encoding result could be, for example: When using interleaving operations, as well as If the positions of the elements can be interchanged, the encoding result can be, for example: That is, the bits in each output bit sequence are not interleaved, but the output bit sequences are interleaved with each other.

[0322] Bit-level interleaving can be understood as interleaving the bits in the output bit sequence. For example, suppose the first number is 4, and the bit sequence output by the 4 coded branches is: as well as And assume for: for: for: and for: Therefore, during bit-level interleaving, the bits in each output bit sequence can be interleaved. For example, the encoding result can be: wait.

[0323] The interleaving operations in the row list can be performed as follows.

[0324] Optionally, each of the first number of encoded branches can employ a row-listed interleaving operation. Taking one of the encoded branches as an example, suppose the input bit sequence (c kIf the length of the array is P, which includes P bits, then the bit sequence is filled into a matrix (called the filling matrix) in the order of rows and columns. The size of the matrix can be u×v, where u is the number of rows and v is the number of columns, such as 32 columns, and P can be less than or equal to u×v. This gives us the filled matrix.

[0325] Furthermore, this encoding branch can also perform column swaps on the padded matrix to obtain a column-swapped matrix. This encoding branch can read the data in the column-swapped matrix in row-to-row order, process the input bit sequence, and output a bit sequence.

[0326] For example, u = 2, v = 3. Assume the input bit sequence is: d1, d2, d3, d4, d5, d6. The matrix size is 2×3. Then, following the row-by-row order, the input bit sequence is filled into this matrix, resulting in the following filled matrix:

[0327] Then, the encoding branch can perform column swaps on the padded matrix, resulting in a matrix with the following column swaps:

[0328] Based on the matrix after the column swap, the encoding branch reads the data in the matrix in the order of rows and columns. The order in which the encoding branch reads the data can be d2, d5, d1, d4, d3, d6. The encoding branch can then process the data in the order it is read, similar to how encoding branch 403 processes the input bit sequence mentioned above, and then outputs a bit sequence.

[0329] It should be understood that if P is less than u×v, then some positions in the resulting filled matrix may be empty. That is, for a u×v filled matrix, a bit sequence of number P can be filled into the matrix bit by bit in a row-by-row order. However, since P is less than u×v, after the bit sequence completely fills the filled matrix, some positions may remain unfilled. These unfilled positions can be filled with null, where null indicates that no element is present at that position.

[0330] For example, in the example above, if the input bit sequence is d1, d2, d3, d4, d5, then the input bit sequence is filled into the matrix according to the row-by-row order, and the resulting filled matrix can be:

[0331] Then, the encoding branch can perform column swaps on the padded matrix, resulting in a matrix with the following column swaps:

[0332] Furthermore, based on the matrix after the column swap, the encoding branch reads the data in the matrix after the column swap in the order of row and column. The order in which the encoding branch reads the data can be d3, d2, d5, d1, d4.

[0333] It should be understood that the encoded branch can perform column swaps on the padded matrix according to the first swap rule. The first swap rule can be preset in the label or a predefined swap rule. For example, it can be the same rule as the example above (completely reversing the column order), where the elements of the last column become the elements of the first column, the second-to-last column becomes the elements of the second column, the third-to-last column becomes the elements of the third column, and so on, until the first column of the original matrix becomes the last column of the new matrix; or it can be swapping the i-th column with the (i+1)-th column, where i is an odd number greater than or equal to 1 and less than or equal to v. For example, swapping the 1st and 2nd columns, the 3rd and 4th columns, and so on. This application does not specifically limit the first swap rule.

[0334] It should also be understood that in column-wise interleaving, each coding branch fills the input bit sequence into the matrix in column-wise order to obtain the filled matrix; and the coding branch can perform row swaps on the filled matrix to obtain a row-swapped matrix; and read the data in the row-swapped matrix in column-wise order. The specific implementation is similar to that of row-wise interleaving, and will not be described in detail here.

[0335] It should be noted that the encoded branches can perform row swaps on the padded matrix according to the second swap rule. The second swap rule is similar to the first swap rule; for example, it can be preset in the labels or a predefined swap rule. For instance, it could be swapping the j-th row with the (j+1)-th row, where j is an odd number greater than or equal to 1 and less than or equal to u. For example, swapping the 1st row with the 2nd row, the 3rd row with the 4th row, and so on. This application does not specifically limit the second swap rule.

[0336] Alternatively, the interleaving operation can include multiple aspects mentioned above. For example, the first message can also employ both bit-sequence-level interleaving and bit-level interleaving operations, resulting in an encoding outcome such as... Alternatively, the first message may employ both row-based interleaving and bit-sequence-level interleaving. This application does not impose specific limitations on this.

[0337] It should be understood that the interleaving operations shown above are only examples. In actual application scenarios, the specific implementation of interleaving operations may be adjusted as needed, or other interleaving operations may be used as needed. This application does not make any specific limitations on this.

[0338] It should be noted that when the first message employs an interleaving operation, a deinterleaving operation is required when the reader receives and decodes the first message. The deinterleaving operation can be understood as the inverse operation of the interleaving operation. For the sake of brevity, the implementation method of the deinterleaving operation will not be described in detail here.

[0339] Therefore, the encoding results differ depending on whether the first message uses interleaving or not. To improve encoding performance, the coefficients of the generator polynomial used in the first message can be different depending on whether interleaving or not.

[0340] Optionally, when the first message employs an interleaving operation, the coefficients of the first generator polynomial include the first coefficient; when the first message does not employ an interleaving operation, the coefficients of the first generator polynomial include the second coefficient.

[0341] The first coefficient and the second coefficient can be different coefficients. The first coefficient can include coefficients of one or more generator polynomials, and the second coefficient can also include coefficients of one or more generator polynomials, which can be all or part of the generator polynomials in the first generator polynomial. For example, the first coefficient can include coefficients of one generator polynomial, and the second coefficient can also include coefficients of one generator polynomial; or, if the first coefficient is 4, then the first coefficient can also be the coefficients of 4 generator polynomials, and the second coefficient can also include coefficients of 4 generator polynomials.

[0342] Furthermore, when the first coefficient includes the coefficients of multiple generator polynomials and the second coefficient includes the coefficients of multiple generator polynomials, the coefficients of the multiple generator polynomials included in the first coefficient and the multiple generator polynomials included in the second coefficient can be completely different, that is, the coefficients of each generator polynomial are different; or, the coefficients of the multiple generator polynomials included in the first coefficient and the multiple generator polynomials included in the second coefficient can also be partially different, that is, the coefficients of some generator polynomials are different, while the coefficients of other generator polynomials are the same.

[0343] It can be understood that when the first message uses an interleaving operation, the coefficients of the first generator polynomial, including the first coefficient, can also be understood as: using an interleaving operation is associated with the first coefficient, or using an interleaving operation has a first association relationship with the first coefficient; when the first message does not use an interleaving operation, the coefficients of the first generator polynomial, including the second coefficient, can also be understood as: not using an interleaving operation is associated with the second coefficient, or not using an interleaving operation has a second association relationship with the second coefficient.

[0344] The first and second association relationships can be configured by the reader via signaling or predefined. Therefore, when the tag determines whether the first message uses an interleaving operation, the coefficients of the first generator polynomial can be determined.

[0345] For example, the first coefficient and the second coefficient can be the coefficients of a generator polynomial. When the first generator polynomial includes G0, G1, G2, and G3, the first coefficient and the second coefficient can be, for example, the coefficients of G3. For example, the first coefficient can be 141, and the second coefficient can be 67; 67 and 141 can be octal values. Furthermore, the coefficients of G0 can be, for example, 133, the coefficients of G1 can be, for example, 171, and the coefficients of G2 can be, for example, 165. Therefore, when the first message uses an interleaving operation, the coefficients of the first generator polynomial include: 133, 171, 165, and 141; when the first message does not use an interleaving operation, the coefficients of the first generator polynomial include: 133, 171, 165, and 67. All the coefficients shown can be octal values.

[0346] The coefficients of the generator polynomials, other than the first and second coefficients, can be configured by the reader via signaling or predefined, so that the tag can determine the first generator polynomial.

[0347] Alternatively, the first and second coefficients can be coefficients of multiple generator polynomials, for example, the coefficients of all generator polynomials in the first generator polynomial. In this case, the first generator polynomial might include G0, G1, G2, and G3. When the first message uses interleaving, the first coefficients could be, for example, 133, 171, 165, and 141; when the first message does not use interleaving, the second coefficients could be, for example, 133, 171, 165, and 67. The coefficients of some generator polynomials in the first and second coefficients may differ.

[0348] The first and second coefficients can be configured by the reader via signaling or they can be predefined, so that the tag can determine the first generator polynomial.

[0349] Based on the above embodiments, the first coefficient and the second coefficient can be determined, for example, in the following ways.

[0350] Optionally, the candidate values ​​of the first coefficient belong to the first set, the candidate values ​​of the second coefficient belong to the second set, and the intersection of the first set and the second set is an empty set.

[0351] In this context, the candidate value of the first coefficient belonging to the first set can also be understood as the first coefficient being determined from the first set; similarly, the candidate value of the second coefficient belonging to the second set can also be understood as the second coefficient being determined from the second set.

[0352] The first set may include one or more coefficients, and the second set may include one or more coefficients. The number of coefficients included in the first set and the number of coefficients included in the second set may be the same or different. The coefficients included in the first set can be understood as the coefficients associated when the first message uses an interleaving operation; the coefficients included in the second set can be understood as the coefficients associated when the first message does not use an interleaving operation.

[0353] The coefficients included in the first set and the coefficients included in the second set can be configured by the reader via signaling or can be predefined.

[0354] When the coefficients included in the first set and the coefficients included in the second set are configured by the reader via signaling, the coefficients included in the first set and the second set can be different under different circumstances. This provides the reader with greater flexibility in configuring the coefficients included in the first set and the second set. When the coefficients included in the first set and the second set are predefined, the signaling overhead is lower.

[0355] Building upon the above example, optionally, the first set may include 141, where 141 is an octal value; the second set may include 67, where 67 is an octal value. For example, the first set may include one or more items from {141, 151, 161, 163, 116, 103, 175, 127}. The second set may include one or more items from {67, 23, 145, 167}. The coefficients included in both the first and second sets may be octal values.

[0356] Let's assume the first generator polynomial includes G0, G1, G2, and G3. The first and second coefficients are the coefficients (or values) of G3. When the first message uses interleaving, the coefficients of G3 can be determined from {141, 151, 161, 163, 116, 103, 175, 127}; when the first message does not use interleaving, the coefficients of G3 can be determined from {67, 23, 145, 167}. In the first set, the first coefficient can be, for example, 141. In the second set, the second coefficient can be, for example, 67, to improve coding performance. Alternatively, when the first message uses interleaving, the first generator polynomial can include: G0, G1, G2, and G3. 3a G 3a The coefficients can be determined from {141, 151, 161, 163, 116, 103, 175, 127}; when the first message does not employ interleaving, the first generator polynomial may include: G0, G1, G2, and G... 3b G 3b The coefficients can be determined from {67, 23, 145, 167}.

[0357] In this way, when the tag determines whether the first message is to be interleaved, candidate values ​​for the first coefficient or the second coefficient can be determined. Furthermore, the value of the first coefficient can be configured by the reader via signaling; or, the value of the second coefficient can be configured by the reader via signaling. Alternatively, the values ​​of the first and second coefficients can also be determined based on predefined rules. For example, the first coefficient can be 141 from the first set; the second coefficient can be 67 or 167 from the second set, etc.

[0358] For example, Tables 1 and 2 show the signal-to-noise ratio (SNR) obtained from simulation results for different values ​​of the first or second coefficient. That is, for different values ​​of the first or second coefficient, a function (or curve) representing the relationship between BLER and SNR can be obtained through simulation. The SNR values ​​shown in Tables 1 and 2 are the SNR values ​​when BLER is 0.1. These SNR values ​​can be understood as the threshold for the reader to decode the first message, reflecting the coding performance. The smaller the SNR, the lower the decoding threshold, i.e., the better the coding performance; the larger the SNR, the higher the decoding threshold, i.e., the worse the coding performance.

[0359] Referring to Table 1, which shows the SNR corresponding to the first coefficient being 141, 151, 161, 163, 116, 103, 175, and 127, it can be seen from Table 1 that when the first coefficient is a value from the first set, the corresponding SNR is close to -14.5 dB.

[0360] Table 1

[0361] Referring to Table 2, which shows the SNR corresponding to the second coefficient being 67, 23, 145, and 167, it can be seen that when the second coefficient is 67 (from the second set), the corresponding SNR is -13.64 dB; when the second coefficient is 167 (from the second set), the corresponding SNR is -13.60 dB. Compared to the second coefficient being 23 or 145, the SNR is reduced by approximately 0.2-0.3 dB when the second coefficient is 67 or 167. Therefore, the coding performance is better when the second coefficient is 67 or 167.

[0362] Table 2

[0363] It can be understood that the first generator polynomial includes the generator polynomial of each coding branch in the first number of coding branches, and the second generator polynomial includes the generator polynomial of each coding branch in the second number of coding branches. Furthermore, the first number of coding branches may include the second number of coding branches and M coding branches, where M is greater than or equal to 1, and M is less than or equal to the difference between the first number and the second number.

[0364] That is, the first number of coding branches can be understood as adding coding branches on the basis of the second number of coding branches, and the added coding branches include M coding branches.

[0365] For example, the second number can be 3, and the second number of coding branches can include coding branch 403, coding branch 404, and coding branch 405 in Figure 5. The first number of coding branches includes the second number of coding branches, that is, it includes coding branch 403, coding branch 404, and coding branch 405, and the first number of coding branches also adds coding branch 501 on the basis of the second number of coding branches. Therefore, the first number of coding branches also includes M coding branches, which can be coding branch 501.

[0366] In this case, the first or second coefficient mentioned above can be the coefficients of the generator polynomials of the M coded branches. For example, the first or second coefficient can be the coefficients of the generator polynomial of coded branch 501.

[0367] Alternatively, the second number can be 3, and the second number of coding branches can include coding branches 403, 404, and 405 in Figure 8. The first number of coding branches includes the second number of coding branches, namely coding branches 403, 404, and 405, and the first number of coding branches also adds coding branches 501 and 601 to the second number of coding branches. Therefore, the M coding branches included in the first number of coding branches can be coding branches 501 and / or 601.

[0368] In this case, the first or second coefficient mentioned above can be the coefficients of the generator polynomials of the M coding branches. Furthermore, the M coding branches can be some of the newly added coding branches. For example, if the M coding branches are coding branch 501 in the newly added coding branches 501 and 601, then the first or second coefficient can be the coefficients of the generator polynomial of coding branch 501; or, if the M coding branches are coding branch 601 in the newly added coding branches 501 and 601, then the first or second coefficient can be the coefficients of the generator polynomial of coding branch 601. Alternatively, the M coding branches can be all of the newly added coding branches. For example, if the M coding branches are newly added coding branches 501 and 601, then the first or second coefficient includes the coefficients of the generator polynomials of coding branch 501 and 601, for example, the first coefficient is 166 and 103, and the second coefficient is 67 and 103, etc.

[0369] It should be understood that since the first number of coding branches is an additional coding branch added on top of the second number of coding branches, the first generator polynomial is also an additional generator polynomial of the newly added coding branches on top of the second generator polynomial. Therefore, the second number of coding branches can be called, for example, baseline convolutional codes or baseline convolutional coding branches; the first number of coding branches can also be called nested newly added coding branches, nested coding branches, or nested convolutional coding branches, etc. This application does not specifically limit this.

[0370] Furthermore, the first generator polynomial includes the second generator polynomial. The coefficients of the second generator polynomial can be, for example, as shown in Figure 4. Assuming the second generator polynomial includes G0, G1, and G2, the coefficients of G0 could be, for example, 133; the coefficients of G1 could be, for example, 171; and the coefficients of G2 could be, for example, 165, etc. Then the coefficients of the first generator polynomial can also include 133, 171, and 165. 133, 171, and 165 are octal values.

[0371] The coefficients of the second generator polynomial can be configured by the reader via signaling or they can be predefined, so that the tag can determine the second generator polynomial.

[0372] It should be noted that the coefficients of the generator polynomials shown in the embodiments of this application are merely examples, and the coefficients of each generator polynomial can also be represented in other ways, such as by binary or hexadecimal numerical representations. This application does not impose specific limitations on this.

[0373] Based on the above embodiments, optionally, the register length (or constraint length) can be 7. That is, the register can simultaneously include 7 bits.

[0374] It should be understood that in the embodiments of this application, for the first number of coding branches, the position of the newly added coding branch relative to the baseline coding branch is not limited, as follows.

[0375] Taking a first quantity of 4 as an example, the first quantity of coding branches can be as shown in Figure 5, where coding branch 501 is the newly added coding branch, and coding branches 403, 404, and 405 are the baseline coding branches. The relative positions of coding branch 501 with coding branches 403, 404, and 405 can also be replaced with other values.

[0376] In one example, the first number of coding branches can also be as shown in Figure 9. Then, the encoding result of concatenating the four bit sequences output sequentially from coding branches 501, 403, 404, and 405 can be: The first generator polynomial can be represented by: G3, G0, G1, G2.

[0377] In another example, the first number of coding branches can also be as shown in Figure 10. The encoding result of concatenating the four bit sequences output sequentially from coding branches 403, 501, 404, and 405 can be: The first generator polynomial can be represented by: G0, G3, G1, G2.

[0378] In another example, the first number of coding branches can also be as shown in Figure 11. The encoding result of concatenating the four bit sequences output sequentially from coding branches 403, 404, 501, and 405 can be: The first generator polynomial can be represented by: G0, G1, G3, G2.

[0379] It should be understood that the above description is based on an example with a first quantity of 4. When the first quantity is 5, the position of the newly added coding branch relative to the baseline coding branch can also be arbitrary. For example, referring to Figure 8, other coding branches can also be inserted between coding branch 501 and coding branch 601, and the positions of coding branch 501 and / or coding branch 601 relative to coding branches 403, 404, and 405 can also be arbitrary. For the sake of simplicity, they will not be shown one by one here.

[0380] The encoding method provided in this application improves the encoding performance of the reader by improving the encoding performance when the tag is encoded using a first number of encoding branches based on a first generator polynomial compared to encoding using a second number of encoding branches based on a second generator polynomial. For example, as shown in Figure 12, the curves in Figure 12 represent simulation results obtained when interleaving (deinterleaving at the receiver) is used. With a second number of branches (3), a first number of branches (4), encoding using the second generator polynomial, a register length of 7, and a repetition count (rep) of 4 for the first message, the code rate is 1 / 12. The relationship between the BLER and SNR of the first signal can be shown as curve 1201, and the SNR threshold (SNR thd) for decoding the first signal is approximately -13.0 dB, which can be the SNR corresponding to a BLER of 0.1. Encoding using the second number of encoding branches based on the second generator polynomial can, for example, be represented by a 1 / 3 convolutional code (CC). The second generator polynomial consists of G0, G1, and G2, with G0 having a coefficient of 133, G1 having a coefficient of 171, and G2 having a coefficient of 165. All coefficients are octal values.

[0381] When using a first number of coding branches and encoding based on a first generator polynomial, with a register length of 7 and a first message repetition count of 3, the code rate is 1 / 12. The relationship between the BLER and SNR of the first signal can be shown as curve 1202, and the decoding threshold for the first signal is approximately -13.6 dB, which can be the SNR corresponding to a BLER of 0.1. Encoding using a first number of coding branches and based on the first generator polynomial can be represented as 1 / 4CC. The first generator polynomial consists of G0, G1, G2, and G3, with coefficients of 133 for G0, 171 for G1, 165 for G2, and 141 for G3. All coefficients are octal values.

[0382] When using a first number of coding branches and encoding based on a first generator polynomial, with a register length of 7 and a first message repetition count of 4, the code rate is 1 / 16. The relationship between the BLER and SNR of the first signal can be shown as curve 1203, and the threshold for decoding the first signal is approximately -14.5dB, which can be the SNR corresponding to a BLER of 0.1. Encoding using the first number of coding branches and based on the first generator polynomial can be represented as 1 / 4CC. The first generator polynomial consists of G0, G1, G2, and G3, with coefficients of 133 for G0, 171 for G1, 165 for G2, and 141 for G3. All coefficients are octal values.

[0383] When using the second number of coding branches and encoding based on the second generator polynomial, with a register length of 7 and a first message repetition count of 4, the code rate is 1 / 12 when using the first number of coding branches and encoding based on the first generator polynomial, with a register length of 7 and a first message repetition count of 3. The resource overhead required to transmit the first signal is similar in both methods. However, using the first number of coding branches and encoding based on the first generator polynomial improves the decoding performance by approximately 0.6 dB. Therefore, the encoding method of this application can improve decoding performance and thus increase uplink coverage under the same resource overhead.

[0384] It should be noted that the order of the methods listed above does not imply the order of execution. The execution order of each process should be determined by its function and internal logic.

[0385] It should also be noted that the convolutional encoders provided in the embodiments of this application are merely examples and are not limited to having the same structure as those shown in the figures, nor do they constitute a limitation on the embodiments of this application.

[0386] The signal transmission and reception method of the present application embodiments has been described in detail above with reference to Figures 5 to 12. The communication device of the present application embodiments will be described in detail below with reference to Figures 13 to 15. The communication device includes modules or units for performing each part of the above embodiments. The modules or units can be software, hardware, or a combination of software and hardware. The following is only a brief illustrative description of the communication device; for details of the implementation, please refer to the description of the foregoing method embodiments, which will not be repeated below.

[0387] Figure 13 is a schematic block diagram of a communication device 1300 provided in an embodiment of this application. As shown in Figure 13, the communication device 1300 includes a processing module 1301 and a transceiver module 1302.

[0388] In one possible implementation, the communication device 1300 is used to implement the steps corresponding to the tag in the method 600 described above.

[0389] Processing module 1301 is used to determine a first generator polynomial or a second generator polynomial, wherein the first generator polynomial or the second generator polynomial is associated with the information type of the first parameter or the first message; the first generator polynomial is the generator polynomial of a first number of coded branches, and the second generator polynomial is the generator polynomial of a second number of coded branches, wherein the first number is greater than the second number.

[0390] The first parameter includes one or more of the following: the length of the first sequence, the number of repetitions of the first sequence, the number of repetitions of the first message, the bandwidth of the first signal or the signal quality of the received signal, and the first sequence includes a preamble, an intermediate preamble or a postamble.

[0391] The transceiver module 1302 is used to send a first signal, the first signal carrying a first sequence and a first message; wherein, when a first generator polynomial is determined, the first message is obtained by encoding the first encoding bit based on the first generator polynomial, and when a second generator polynomial is determined, the first message is obtained by encoding the first encoding bit based on the second generator polynomial.

[0392] Optionally, the first message is obtained by encoding the first encoding bit based on the second generator polynomial; the transceiver module 1302 is used to: receive the second message, which is used to indicate encoding by the first generator polynomial; and send the second signal, which carries the second sequence and the third message, which is obtained by encoding the second encoding bit based on the first generator polynomial, and the second sequence includes a preamble, an intermediate preamble, or a postamble.

[0393] It should be understood that in this possible implementation, the steps and / or processes performed by the communication device 1300 are similar to those performed by the tag in the above method embodiments. For example, the communication device 1300 may also determine the first generator polynomial or the second generator polynomial in the manner shown in the above method embodiments, and may also determine the coefficients of the first generator polynomial in the manner shown in the above method embodiments. Refer to the description above; further details will not be repeated here.

[0394] In another possible implementation, the communication device 1300 is used to implement the steps corresponding to the reader in the method 600 described above.

[0395] Processing module 1301 is used to determine a first generator polynomial or a second generator polynomial, the first generator polynomial or the second generator polynomial being associated with one of the following: a first parameter, or the information type of a first message; the first generator polynomial is the generator polynomial of a first number of coded branches, the second generator polynomial is the generator polynomial of a second number of coded branches, the first parameter includes one or more of the following: the length of a first sequence, the number of repetitions of the first sequence, the number of repetitions of the first message, the bandwidth of the first signal or the signal quality measured by the tag, the first sequence including a preamble, an intermediate preamble or a postamble, and the first number being greater than the second number; transceiver module 1302 is used to receive a first signal, the first signal carrying the first sequence and the first message, and, if the first generator polynomial is determined, decode the first message based on the first generator polynomial; or, if the second generator polynomial is determined, decode the first message based on the second generator polynomial.

[0396] Optionally, the transceiver module 1302 is also configured to: receive information indicating signal quality.

[0397] Optionally, the first message is decoded based on the second generator polynomial; the transceiver module 1302 is further configured to: send a second message, the second message being used to indicate encoding by the first generator polynomial; receive a second signal, the second signal carrying a second sequence and a third message, and decode the third message based on the first generator polynomial, the second sequence including a preamble, an intermediate preamble, or a postamble.

[0398] It should be understood that in this possible implementation, the steps and / or processes performed by the communication device 1300 are similar to those performed by the reader in the above method embodiments. For example, the communication device 1300 may also determine the first generator polynomial or the second generator polynomial in the manner shown in the above method embodiments, and may also determine the coefficients of the first generator polynomial in the manner shown in the above method embodiments. Refer to the description above; further details will not be repeated here.

[0399] It should be understood that the communication device 1300 here is embodied in the form of a functional module. The term "module" here can refer to application-specific integrated circuits (ASICs), electronic circuits, processors (e.g., shared processors, proprietary processors, or group processors, etc.) and memories for executing one or more software or firmware programs, integrated logic circuits, and / or other suitable components supporting the described functions. In an alternative example, those skilled in the art will understand that the communication device 1300 can be specifically a tag or reader as described in the above embodiments. The communication device 1300 can be used to execute the various processes and / or steps corresponding to the tag or reader in the above method embodiments; to avoid repetition, these will not be described again here.

[0400] The communication device 1300 described above has the function of implementing the corresponding steps performed by the tag or reader in the above method; the above functions can be implemented by hardware or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above functions. In the embodiments of this application, the communication device 1300 in FIG13 can also be a chip, such as a SOC.

[0401] Figure 14 shows a schematic diagram of the structure of a communication device 1400 provided in an embodiment of this application. The communication device 1400 includes a processor 1401, a transceiver 1402, and a memory 1403. The processor 1401, transceiver 1402, and memory 1403 communicate with each other via internal interconnection paths. The memory 1403 stores instructions, such as computer-defined code. The processor 1401 executes the instructions stored in the memory 1403 to control the transceiver 1402 to send and / or receive signals.

[0402] It should be understood that the communication device 1400 may specifically be a tag or reader as described in the above embodiments, and may be used to execute the various steps and / or processes corresponding to the tag or reader in the above method embodiments. Optionally, the memory 1403 may include read-only memory and random access memory, and provide instructions and data to the processor. A portion of the memory may also include non-volatile random access memory. For example, the memory may also store device type information. The processor 1401 may be used to execute instructions stored in the memory, and when the processor 1401 executes instructions stored in the memory, the processor 1401 is used to execute the various steps and / or processes of the above method embodiments. For example, the processor 1401 may execute the various steps and / or processes of determining a first generator polynomial or a second generator polynomial, and may also execute the various steps and / or processes of determining the coefficients of the first generator polynomial.

[0403] The transceiver 1402 may include a transmitter 14021, a receiver 14022, and an antenna 14023. The transmitter 14021 can be used to implement the various steps and / or processes corresponding to the transceiver for performing the transmission action. For example, the transmitter 14021 can be used to transmit information to another device through the antenna 14023. The receiver 14022 can be used to implement the various steps and / or processes corresponding to the transceiver for performing the reception action. For example, the receiver 14022 can be used to receive information from another device through the antenna 14023. For example, when the communication device 1400 is a tag, the transmitter 14021 can perform the steps of transmitting a first signal and transmitting a second signal, and the receiver 14022 can perform the step of receiving a second message; when the communication device 1400 is a reader, the transmitter 14021 can perform the step of transmitting a second message, and the receiver 14022 can perform the steps of receiving the first signal and receiving the second signal.

[0404] It should be understood that, in the embodiments of this application, the processor may be a central processing unit (CPU), a microprocessor unit (MPU), a microcontroller unit (MCU), a graphics processing unit (GPU), or other general-purpose processors, digital signal processors (DSPs), ASICs, field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor.

[0405] In implementation, each step of the above method can be completed by integrated logic circuits in the processor's hardware or by instructions in software. The steps of the method disclosed in the embodiments of this application can be directly manifested as execution by a hardware processor, or as a combination of hardware and software modules within the processor. The software modules can reside in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. This storage medium is located in memory, and the processor executes the instructions in the memory, combining them with its hardware to complete the steps of the above method. To avoid repetition, detailed descriptions are omitted here.

[0406] Figure 15 shows a schematic diagram of another communication device 1500 provided in an embodiment of this application. This communication device 1500 can be a chip system, or it can be an apparatus configured with a chip system to implement the methods described in the above method embodiments. In this embodiment, the chip system can be composed of chips, or it can include chips and other discrete devices.

[0407] As shown in Figure 15, the communication device 1500 may include a processor 1510, which can be used to execute computer programs or instructions stored in memory to perform various steps and / or processes corresponding to the tag or reader in the above method embodiments. For example, the processor 1510 can execute various steps and / or processes of the tag or reader determining the first generator polynomial or the second generator polynomial in the above method embodiments, and can also execute various steps and / or processes of determining the coefficients of the first generator polynomial.

[0408] In one possible implementation, the communication device 1500 further includes a communication interface 1520. The communication interface 1520 can be used to communicate with other devices via a transmission medium, thereby enabling the communication device 1500 to communicate with other devices. The communication interface 1520 may be, for example, a transceiver, an input / output interface, pins, a bus, a transceiver circuit, or a device capable of transmitting and receiving functions. The processor 1510 can utilize the communication interface 1520 to input and output data to execute the various steps and / or processes corresponding to the tag or reader in the above method embodiments. For example, when the communication device 1500 is a tag, the communication interface 1520 can execute the steps of sending a first signal, sending a second signal, and receiving a second message; when the communication device 1500 is a reader, the communication interface 1520 can execute the steps of sending a second message, receiving a first signal, and receiving a second signal.

[0409] In one possible implementation, the communication device 1500 further includes at least one memory 1530 for storing program instructions and / or data. The memory 1530 is coupled to the processor 1510. The coupling in this embodiment is an indirect coupling or communication connection between devices, units, or modules, and can be electrical, mechanical, or other forms, for information exchange between devices, units, or modules. The processor 1510 may operate in conjunction with the memory 1530. The processor 1510 may execute program instructions stored in the memory 1530.

[0410] Optionally, the memory 1530 may be a memory disposed in the device 1500. Exemplarily, the memory 1530 may be integrated with the processor 1510; or, the memory 1530 may be disposed separately from the processor 1510.

[0411] Optionally, memory 1530 may be memory outside of device 1500. It may also be memory outside of communication devices.

[0412] This application also provides a communication system, which includes a tag or a reader. The tag is used to execute the steps and / or processes executed by the tag in the above method embodiments; the reader is used to execute the steps and / or processes executed by the reader in the above method embodiments.

[0413] This application also provides a chip system for performing the methods shown in the above method embodiments.

[0414] This application also provides a computer-readable storage medium for storing a computer program for implementing the methods shown in the above-described method embodiments.

[0415] This application also provides a computer program product, which includes a computer program (also referred to as code or instructions) that, when run on a computer, allows the computer to perform the methods shown in the above-described method embodiments.

[0416] Those skilled in the art will recognize that the modules and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0417] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and modules described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.

[0418] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple modules or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or modules may be electrical, mechanical, or other forms.

[0419] The modules described as separate components may or may not be physically separate. The components shown as modules may or may not be physical modules; that is, they may be located in one place or distributed across multiple network modules. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.

[0420] In addition, the functional modules in the various embodiments of this application can be integrated into one processing module, or each module can exist physically separately, or two or more modules can be integrated into one module.

[0421] If the aforementioned functions are implemented as software functional modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, essentially, or the part that contributes to existing technology, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, ROM, random access memory (RAM), magnetic disks, or optical disks.

[0422] The above description is merely a specific embodiment of this application, but the protection scope of the embodiments of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the embodiments of this application should be included within the protection scope of the embodiments of this application. Therefore, the protection scope of the embodiments of this application should be determined by the protection scope of the claims.

Claims

1. A signal transmission method, characterized in that, include: A first generator polynomial or a second generator polynomial is determined, which is associated with one of the following: a first parameter, or the information type of a first message; the first generator polynomial is the generator polynomial of a first number of coded branches, and the second generator polynomial is the generator polynomial of a second number of coded branches; the first parameter includes one or more of the following: the length of a first sequence, the number of repetitions of the first sequence, the number of repetitions of the first message, the bandwidth of a first signal or the signal quality of a received signal; the first sequence includes a preamble, an intermediate preamble, or a postamble; and the first number is greater than the second number. The first signal is sent, the first signal carrying the first sequence and the first message; wherein, when the first generator polynomial is determined, the first message is obtained by encoding the first encoding bit based on the first generator polynomial, and when the second generator polynomial is determined, the first message is obtained by encoding the first encoding bit based on the second generator polynomial.

2. The method according to claim 1, characterized in that, The first generator polynomial is associated with the first parameter, including: determining the first generator polynomial based on the first parameter; Determining the first generator polynomial based on the first parameter includes: The first generating polynomial is determined if the first condition is met, wherein the first condition includes one or more of the following: The length of the first sequence is greater than or equal to the first threshold; The length of the first sequence belongs to the first length set; The number of repetitions of the first sequence is greater than or equal to the second threshold; The number of repetitions in the first sequence belongs to the first set of numbers; The number of times the first message is repeated is greater than or equal to the third threshold; The number of repetitions of the first message belongs to the second set of numbers; The bandwidth is less than or equal to the fourth threshold; The bandwidth belongs to the first bandwidth set; or, The signal quality is less than or equal to the fifth threshold.

3. The method according to claim 1 or 2, characterized in that, The second generator polynomial is associated with the first parameter, including: determining the second generator polynomial based on the first parameter; Determining the second generator polynomial based on the first parameter includes: The second generating polynomial is determined if the second condition is met, which includes one or more of the following: The length of the first sequence is less than the sixth threshold; The length of the first sequence belongs to the second length set; The number of repetitions of the first sequence is less than the seventh threshold; The number of repetitions in the first sequence belongs to the third set of numbers; The number of times the first message is repeated is less than the eighth threshold; The number of repetitions of the first message belongs to the fourth set of repetitions; The bandwidth is greater than the ninth threshold; The bandwidth belongs to the second bandwidth set; or, The signal quality is greater than the tenth threshold.

4. The method according to any one of claims 1 to 3, characterized in that, The first generating polynomial or the second generating polynomial is associated with the information type of the first message, including: determining the first generating polynomial or the second generating polynomial based on the information type; Determining the first generating polynomial or the second generating polynomial based on the information type includes: When the information type is a first type, the first generator polynomial is determined; when the information type is a second type, the second generator polynomial is determined.

5. The method according to any one of claims 1 to 4, characterized in that, The coefficients of the first generator polynomial are related to whether the first message uses an interleaving operation.

6. The method according to claim 5, characterized in that, When the first message uses an interleaving operation, the coefficients of the first generator polynomial include a first coefficient; when the first message does not use an interleaving operation, the coefficients of the first generator polynomial include a second coefficient.

7. The method according to claim 6, characterized in that, The candidate values ​​of the first coefficient belong to the first set; and / or, the candidate values ​​of the second coefficient belong to the second set, and the intersection of the first set and the second set is an empty set.

8. The method according to claim 7, characterized in that, The first set includes 141, where 141 is an octal value; and / or, the second set includes 67, where 67 is an octal value.

9. The method according to any one of claims 6 to 8, characterized in that, The first generating polynomial includes the generating polynomial of each of the first number of coding branches; the first coefficient or the second coefficient is the coefficient of the generating polynomial of M coding branches in the first number of coding branches, the first number of coding branches includes the second number of coding branches and the M coding branches, M is greater than or equal to 1, and M is less than or equal to the difference between the first number and the second number.

10. The method according to any one of claims 1 to 9, characterized in that, The coefficients of the second generating polynomial include 133, 171, and 165, where 133, 171, and 165 are octal values.

11. The method according to any one of claims 1 to 10, characterized in that, The first message is obtained by encoding the first bit before encoding based on the second generator polynomial; The method further includes: Receive a second message, which indicates encoding via the first generator polynomial; A second signal is sent, the second signal carrying a second sequence and a third message, the third message being obtained by encoding the first bit of the second encoding based on the first generator polynomial, and the second sequence including a preamble, an intermediate preamble, or a postamble.

12. A signal receiving method, characterized in that, include: A first generator polynomial or a second generator polynomial is determined, and the first generator polynomial or the second generator polynomial is associated with one of the following: a first parameter, or the information type of a first message; the first generator polynomial is the generator polynomial of a first number of coded branches, and the second generator polynomial is the generator polynomial of a second number of coded branches; the first parameter includes one or more of the following: the length of a first sequence, the number of repetitions of the first sequence, the number of repetitions of the first message, the bandwidth of a first signal, or the signal quality of a signal received by a first environmental IoT AIoT device; the first sequence includes a preamble, an intermediate preamble, or a postamble; and the first number is greater than the second number. Based on the first generator polynomial or the second generator polynomial, the first signal is received, the first signal carrying the first sequence and the first message; wherein, if the first generator polynomial is determined, the first message is decoded based on the first generator polynomial; if the second generator polynomial is determined, the first message is decoded based on the second generator polynomial.

13. The method according to claim 12, characterized in that, The first generator polynomial is associated with the first parameter, including: determining the first generator polynomial based on the first parameter; Determining the first generator polynomial based on the first parameter includes: The first generating polynomial is determined if the first condition is met, wherein the first condition includes one or more of the following: The length of the first sequence is greater than or equal to the first threshold; The length of the first sequence belongs to the first length set; The number of repetitions of the first sequence is greater than or equal to the second threshold; The number of repetitions in the first sequence belongs to the first set of numbers; The number of times the first message is repeated is greater than or equal to the third threshold; The number of repetitions of the first message belongs to the second set of numbers; The bandwidth is less than or equal to the fourth threshold; The bandwidth belongs to the first bandwidth set; or, The signal quality is less than or equal to the fifth threshold.

14. The method according to claim 12 or 13, characterized in that, The second generator polynomial is associated with the first parameter, including: determining the second generator polynomial based on the first parameter; Determining the second generator polynomial based on the first parameter includes: The second generating polynomial is determined if the second condition is met, which includes one or more of the following: The length of the first sequence is less than the sixth threshold; The length of the first sequence belongs to the second length set; The number of repetitions of the first sequence is less than the seventh threshold; The number of repetitions in the first sequence belongs to the third set of numbers; The number of times the first message is repeated is less than the eighth threshold; The number of repetitions of the first message belongs to the fourth set of repetitions; The bandwidth is greater than the ninth threshold; The bandwidth belongs to the second bandwidth set; or, The signal quality is greater than the tenth threshold.

15. The method according to any one of claims 12 to 14, characterized in that, The first generating polynomial or the second generating polynomial is associated with the information type of the first message, including: determining the first generating polynomial or the second generating polynomial based on the information type; Determining the first generating polynomial or the second generating polynomial based on the information type includes: When the information type is a first type, the first generator polynomial is determined; when the information type is a second type, the second generator polynomial is determined.

16. The method according to any one of claims 12 to 15, characterized in that, The coefficients of the first generator polynomial are related to whether the first message uses a deinterleaving operation.

17. The method according to claim 16, characterized in that, When the first message employs a deinterleaving operation, the coefficients of the first generator polynomial include a first coefficient; when the first message does not employ a deinterleaving operation, the coefficients of the first generator polynomial include a second coefficient.

18. The method according to claim 17, characterized in that, The candidate values ​​of the first coefficient belong to the first set; and / or, the candidate values ​​of the second coefficient belong to the second set, and the intersection of the first set and the second set is an empty set.

19. The method according to claim 18, characterized in that, The first set includes 141, where 141 is an octal value; and / or, the second set includes 67, where 67 is an octal value.

20. The method according to any one of claims 17 to 19, characterized in that, The first generating polynomial includes the generating polynomial of each of the first number of coding branches; the first coefficient or the second coefficient is the coefficient of the generating polynomial of M coding branches in the first number of coding branches, the first number of coding branches includes the second number of coding branches and the M coding branches, M is greater than or equal to 1, and M is less than or equal to the difference between the first number and the second number.

21. The method according to any one of claims 12 to 20, characterized in that, The coefficients of the second generating polynomial include 133, 171, and 165, where 133, 171, and 165 are octal values.

22. The method according to any one of claims 12 to 21, characterized in that, The first message is decoded based on the second generator polynomial; The method further includes: Send a second message, which indicates encoding via the first generator polynomial; A second signal is received, the second signal carrying a second sequence and a third message, and the third message is decoded based on the first generator polynomial, wherein the second sequence includes a preamble, an intermediate preamble, or a postamble.

23. A communication device, characterized in that, Includes modules for performing the method as described in any one of claims 1 to 11, or the method as described in any one of claims 12 to 22.

24. A chip, characterized in that, Includes a processor to cause the chip to perform the method of any one of claims 1 to 11, or the method of any one of claims 12 to 22.

25. A communication device, characterized in that, include: A processor coupled to a memory for storing a computer program, which, when invoked by the processor, causes the apparatus to perform the method of any one of claims 1 to 11, or the method of any one of claims 12 to 22.

26. A communication system, characterized in that, It includes a first environmental Internet of Things (AIoT) device and a second AIoT device, wherein the first AIoT device is used to perform the method as described in any one of claims 1 to 11, and the second AIoT device is used to perform the method as described in any one of claims 12 to 22.

27. A computer-readable storage medium, characterized in that, Used to store computer programs, the computer programs including instructions for implementing the method as described in any one of claims 1 to 11, or the method as described in any one of claims 12 to 22.

28. A computer program product, the computer program product comprising instructions, characterized in that, When the instructions are executed on a computer, the computer causes the computer to implement the method as described in any one of claims 1 to 11, or the method as described in any one of claims 12 to 22.