An encoding method, a decoding method, related apparatus and equipment
By using a concatenated coding method of TBCC or HBCC with Miller or Manchester coding in cellular passive IoT systems, combined with CRC coding, the problem of high uplink channel coding complexity of passive tags is solved, thereby improving noise immunity and extending communication distance.
Patent Information
- Application Number
- CN202410805052.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-06-20
- Publication Date
- 2026-01-30
- Estimated Expiration
- 2044-06-20
AI Technical Summary
In cellular passive IoT systems, how can we improve noise immunity while reducing the channel coding complexity of passive tag uplink backhaul links to meet the needs of long-distance communication?
A concatenated coding method using tail-biting convolutional code (TBCC) or head-biting convolutional code (HBCC) with Miller coding or Manchester coding, combined with cyclic redundancy check (CRC) coding, is adopted to reduce coding complexity and retain codeword clock information, thereby improving anti-interference performance.
Without increasing decoding complexity, it improves the noise immunity of the uplink of the cellular passive system, extends the communication distance of a single station, and enhances the encoding and decoding performance and anti-interference capability.
Smart Images

Figure CN118826959B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of communication technology, and specifically to an encoding method, a decoding method, related apparatus and equipment. Background Technology
[0002] In traditional cellular communication systems, channel coding is typically used to improve the noise immunity of the cellular system and achieve long-distance communication transmission. In cellular passive IoT systems, to achieve large-scale deployment of passive tags at low cost, the circuit structure of passive tags is usually designed to be extremely simple. However, in practical deployment environments, it is necessary not only to improve the channel adaptability of the uplink and downlink of passive tags, but also to consider the power consumption of passive tags. Therefore, reducing the channel coding complexity of the uplink backhaul link of passive tags is one of the key challenges in the design of cellular passive IoT backhaul link systems. Summary of the Invention
[0003] To address the existing technical problems, embodiments of the present invention provide an encoding method, a decoding method, related apparatus, and equipment.
[0004] To achieve the above objectives, the technical solution of this invention is implemented as follows:
[0005] This invention provides an encoding method, characterized in that the method includes:
[0006] The first device performs a first encoding on the first information sequence to obtain a second information sequence; or, the first device performs a first encoding on the first information sequence and performs a second encoding on the second information sequence after the first encoding to obtain a third information sequence.
[0007] Wherein, the first encoding is either Tail-Biting Convolutional Code (TBCC) encoding or Head-Biting Convolutional Code (HBCC) encoding; and / or, the second encoding is either Miller encoding or Manchester encoding.
[0008] In the above scheme, the first information sequence is either an information sequence with added cyclic redundancy check (CRC) encoding or the original information sequence.
[0009] In the above scheme, the CRC encoding length and / or CRC generator polynomial are associated with the TBCC generator polynomial or the HBCC generator polynomial.
[0010] In the above scheme, the number of first registers used for the first encoding is 2, 3, or 6.
[0011] In the above scheme, the method further includes: the first device modulates the second information sequence or the third information sequence and then outputs a modulated signal.
[0012] This invention also provides a decoding method, the method comprising:
[0013] The second device obtains the soft information corresponding to each information bit in the fourth information sequence, performs a first decoding on the soft information of each information bit in the fourth information sequence, and obtains the decoding result.
[0014] The first decoding is either TBCC decoding or HBCC decoding.
[0015] In the above scheme, the second device obtains the soft information corresponding to each information bit in the fourth information sequence, including:
[0016] The second device obtains the initial soft information for each information bit in the fourth information sequence;
[0017] The threshold value is determined based on the initial soft information of each information bit;
[0018] The soft information of each information bit is determined based on the threshold value and the initial soft information of each information bit.
[0019] In the above scheme, the second device obtains the initial soft information for each information bit in the fourth information sequence, including:
[0020] The second device obtains first information within a first length and second information within a second length for each information bit in the fourth information sequence; the first length and the second length constitute the transmission duration for each information bit; the first information represents the soft information of each information bit within the first length, and the second information represents the soft information of each information bit within the second length;
[0021] Initial soft information is determined based on the first information and the second information.
[0022] In the above scheme, determining the threshold value based on the initial soft information of each information bit includes: taking the absolute value of the initial soft information of each information bit, determining the maximum and minimum values among the absolute values, taking the average value of the maximum and minimum values, and using the average value as the threshold value.
[0023] In the above scheme, determining the soft information of each information bit based on the threshold value and the initial soft information of each information bit includes: subtracting the absolute value of the threshold value from the absolute value of the initial soft information of each information bit to obtain the soft information of each information bit.
[0024] In the above scheme, the fourth information sequence is an information sequence obtained by performing a first encoding on the fifth information sequence and then performing a second encoding; wherein, the first encoding is tail-biting convolutional code (TBCC) encoding or head-biting convolutional code (HBCC) encoding; and / or, the second encoding is Miller encoding or Manchester encoding.
[0025] In the above scheme, the fifth information sequence is either an information sequence with added CRC encoding or the original information sequence.
[0026] In the above scheme, when the fifth information sequence is an information sequence with added CRC encoding, the first decoding of the soft information of each piece of information in the fourth information sequence to obtain the decoding result includes:
[0027] The second device performs a first decoding on the soft information of each information bit in the fourth information sequence to determine at least one decoding path, and the end state of the at least one decoding path corresponds to at least one state of the second register of the first decoding.
[0028] Based on the at least one decoding path, determine the CRC check result for each decoding path;
[0029] The first decoding path that passes the CRC check is determined, and the decoding result is obtained based on the first decoding path.
[0030] This invention also provides an encoding device applied to a first device. The device includes: an encoding unit, configured to perform a first encoding on a first information sequence to obtain a second information sequence; or, to perform a first encoding on the first information sequence and a second encoding on the second information sequence after the first encoding to obtain a third information sequence; wherein the first encoding is TBCC encoding or HBCC encoding; and / or, the second encoding is Miller encoding or Manchester encoding.
[0031] This invention also provides a decoding apparatus applied to a second device. The apparatus includes a decoding unit configured to obtain soft information corresponding to each information bit in a fourth information sequence, and to perform a first decoding on the third information sequence using the soft information of each information bit in the fourth information sequence to obtain a decoding result; wherein the first decoding is TBCC decoding or HBCC decoding.
[0032] This invention also provides a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the steps of the encoding or decoding method described in this invention.
[0033] This invention also provides a device including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the program, it implements the steps of the encoding or decoding method described in this invention.
[0034] This invention also provides a computer program product, including computer program instructions that cause a computer to perform the steps of the encoding or decoding method described in this invention.
[0035] The encoding method, decoding method, related apparatus, and equipment provided in the embodiments of the present invention involve a first device performing a first encoding on a first information sequence to obtain a second information sequence; or, performing a first encoding on the first information sequence and a second encoding on the second information sequence after the first encoding to obtain a third information sequence; wherein, the first encoding is tail-biting convolutional code (TBCC) encoding or head-biting convolutional code (HBCC) encoding; and / or, the second encoding is Miller encoding or Manchester encoding; a second device obtains soft information corresponding to each information bit in a fourth information sequence, performs a first decoding on the soft information of each information bit, and obtains a decoding result, wherein the first decoding is TBCC decoding or HBCC decoding. Thus, this invention proposes a first encoding method with lower complexity that is more suitable for cellular passive radio frequency identification (RFID). It uses convolutional channel coding to improve the uplink noise immunity of the cellular passive system; or it adopts a concatenated encoding method of first and second codes, which uses convolutional channel coding to improve the uplink noise immunity of the cellular passive system, and utilizes the rich rising and falling edges of Miller or Manchester coding to fully preserve the codeword clock information. This improves encoding and decoding performance without adding extra decoding complexity, further enhancing anti-interference performance and extending the single-station communication distance. During decoding by the second device, a newly designed soft information calculation rule solves the problem that after the concatenated encoding of first and second codes, the amplitude and polarity of the codewords change during decoding, preventing the code from corresponding to Viterbi decoding and thus failing to output to the TBCC / HBCC decoding module for bit decision. This achieves decoding of the concatenated encoding of first and second codes. Attached Figure Description
[0036] Figures 1a to 1c This is a schematic diagram of a conventional RFID coding method;
[0037] Figure 2 This is a schematic diagram of the cellular passive system architecture according to an embodiment of the present invention;
[0038] Figure 3 This is a flowchart illustrating the encoding method according to an embodiment of the present invention;
[0039] Figure 4 This is a schematic diagram of a device transmitting data in the encoding method of this invention.
[0040] Figure 5 This is a schematic diagram of the TBCC encoding principle in the encoding method of this invention embodiment;
[0041] Figure 6 This is a flowchart illustrating the decoding method according to an embodiment of the present invention;
[0042] Figure 7 This is a schematic diagram of a device receiving data in the decoding method of this invention.
[0043] Figure 8 This is a schematic diagram illustrating the soft information calculation in the decoding method of this invention.
[0044] Figure 9 This is a schematic diagram of a decoding process in the decoding method of this invention.
[0045] Figure 10 A comparative diagram showing different combinations of encoding and decoding methods;
[0046] Figure 11 This is a schematic diagram of the composition structure of the encoding device according to an embodiment of the present invention;
[0047] Figure 12 This is a schematic diagram of the composition of the decoding device according to an embodiment of the present invention;
[0048] Figure 13 This is a schematic diagram of the hardware composition structure of the device according to an embodiment of the present invention. Detailed Implementation
[0049] The present invention will now be described in further detail with reference to the accompanying drawings and specific embodiments.
[0050] The technical solutions of this invention can be applied to various communication systems, such as GSM (Global System of Mobile communication), LTE (Long Term Evolution), or 5G systems. Optionally, a 5G system or 5G network can also be referred to as a New Radio (NR) system or NR network.
[0051] For example, the communication system used in this embodiment of the invention may include network devices and terminal devices (also referred to as terminals, communication terminals, etc.); the network device may be a device that communicates with the terminal device. The network device can provide communication coverage within a certain area and can communicate with terminals located within that area. Optionally, the network device may be a base station in various communication systems, such as an evolved Node B (eNB) in an LTE system, or a gNB in a 5G or NR system.
[0052] It should be understood that devices with communication functions in the network / system of this application embodiment can be referred to as communication devices. Communication devices may include network devices and terminals with communication functions. Network devices and terminal devices can be the specific devices described above, which will not be repeated here. Communication devices may also include other devices in the communication system, such as network controllers, mobility management entities, and other network entities. This embodiment of the present invention does not limit these.
[0053] It should be understood that the terms "system" and "network" are often used interchangeably in this document. The term "and / or" in this document merely describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone. Furthermore, the character " / " in this document generally indicates that the preceding and following related objects have an "or" relationship.
[0054] The terms “first,” “second,” etc., used in the specification and claims of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented, for example, in orders other than those illustrated or described herein. Furthermore, the terms “comprising” and “having,” and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0055] Before providing a detailed description of the encoding and decoding methods of the embodiments of the present invention, some related technical solutions involved in the embodiments of the present invention will be briefly described first.
[0056] To meet the massive connectivity demands of the Internet of Things (IoT), low-speed and ultra-low-speed IoT has become a development trend. RFID, as a lightweight solution for connecting things, has been widely used in industry. However, due to its inherent design limitations, its current use is limited to local area networks, with the effective communication distance between the reader and tag being only a few dozen meters, significantly restricting RFID's application scenarios. Passive RFID systems based on cellular networks, leveraging the strong communication capabilities of base stations, extend the reading distance to the hundreds of meters level, greatly expanding RFID's application scenarios. The 3rd Generation Partnership Project (3GPP) sets the expected communication distance for cellular passive IoT technology at 30-50 meters indoors and around 200 meters outdoors, at least three times that of RFID. To meet the application requirements for long-distance coverage, it is necessary to focus on extending the backscatter communication distance and conduct key technology research on low-redundancy, high-performance coding schemes.
[0057] RFID systems typically use linear coding. Reader-to-tag communication employs Pulse-Interval Encoding (PIE), while tag-to-reader communication uses FM0 coding (also known as Bi-Phase Space Coding) or Miller coding. Even with Miller coding, which has a minimum code rate of 1 / 16, the uplink transmission distance is still limited. It cannot withstand interference in long-range wireless transmission environments, significantly degrading system communication quality. Therefore, it is urgent to consider uplink coding schemes for cellular passive IoT systems to meet the communication distance expectations set by 3GPP.
[0058] FM0 encoding uses level changes within a bit window to represent logic. Specifically, if the level toggles at the beginning of the bit window, it represents logic "1"; if the level toggles not only at the beginning of the bit window but also in the middle, it represents logic "0". See [link to documentation] for details. Figure 1a As shown. It should be noted that, Figure 1a This is just one example of FM0 encoding; data 0 and data 1 can also be represented by other levels, such as... Figure 1a In this example, logic "1" is represented by a continuously high-level signal for a duration of T. In other examples, logic "1" can also be represented by a continuously low-level signal for a duration of T. For example... Figure 1a In this example, logic "0" is represented by the level flipping from high to low within a duration T. In other examples, logic "0" can also be represented by the level flipping from low to high within a duration T, but this will not be described in detail here.
[0059] Miller coding, also known as delay modulation coding, is a variant of biphase coding. Its coding rules are as follows: the original symbol "1" does not change at the beginning, but changes at the center point, represented by 10 or 01. When the information code contains consecutive "1"s, the following "1"s are interleaved; "0"s in the information code are encoded as bipolar non-return-to-zero codes "00" or "11", meaning there is no change in the middle of the symbol; when the information code contains a single "0", there are no changes at the leading edge, middle, or trailing edge; when the information code contains consecutive "0"s, there is a change at the interval between two "0" symbols. For details, please refer to [reference needed]. Figure 1b As shown. The subcarrier length (or transmission duration, period) N varies for each symbol or bit. N can be 2, 4, 8, etc. In other embodiments, N can also take other values, which will not be described in detail here.
[0060] Manchester encoding uses level transitions to represent binary numbers 1 or 0. Each symbol is represented by two level signals with different phases, where the 0 and 1 symbols are out of phase. See details for further information. Figure 1c As shown.
[0061] There are two main architectures for novel passive IoT communication systems based on cellular networks: one is the direct cellular connection type, where the base station and the tag communicate directly, and the base station simultaneously supports downlink signal excitation and uplink data reception; the other is the relay user equipment (UE) type, where the transmission of excitation signals and the reception of backscattered signals are achieved through UE relay, such as... Figure 2 As shown. For example, tags are typically affixed to the managed items (such as people, goods, vehicles, etc.); the reader sends instructions to the tag, and after receiving the signal energy, the tag can send information such as codes to the reader; the reader receives the information fed back by the tag, performs command interaction, and demodulates the encoded information.
[0062] Traditional cellular systems enhance information bit redundancy by channel coding the Media / Medium Access Control (MAC) layer transport blocks to combat noise interference in long-distance transmission channels and improve communication system reliability. However, RFID systems are inherently lightweight communications; tags are lightweight terminals in terms of power consumption and computing power, making it impossible to simply reuse the encoding and decoding methods of existing communication terminals. A simplified encoding and decoding design is needed while ensuring anti-interference performance to reduce power consumption at the tag transmitter and complete channel encoding and decoding without increasing system redundancy. This improves error correction capabilities and further extends communication transmission distance. Therefore, researching novel channel coding technologies for long-distance cellular passive IoT is essential.
[0063] Traditional Miller codes contain rich clock information and have good anti-interference capabilities, making them a preferred code type for uplink data communication in RFID systems. Furthermore, Manchester coding incorporates both clock and data into the data stream, transmitting clock synchronization signals to the peer along with code information. Each bit in the code contains a transition, providing self-synchronization capabilities. In contrast, traditional channel coding methods lack inter-code clock information, hindering synchronization. Therefore, this invention introduces forward error correction coding schemes commonly used in cellular systems, studies convolutional coding schemes, or a low-complexity cascaded coding scheme of TBCC / HBCC + Miller / Manchester coding to improve the noise immunity of the cellular passive IoT backhaul link.
[0064] This invention provides an encoding method. Figure 3 This is a flowchart illustrating the encoding method of an embodiment of the present invention; as shown below. Figure 3 As shown, the method includes:
[0065] Step 101: The first device performs a first encoding on the first information sequence to obtain a second information sequence; or, performs a first encoding on the first information sequence and performs a second encoding on the second information sequence after the first encoding to obtain a third information sequence; wherein, the first encoding is a tail-biting convolutional code (TBCC) encoding or a head-biting convolutional code (HBCC) encoding; and / or, the second encoding is a Miller encoding or a Manchester encoding.
[0066] In this embodiment, the first device is an information transmitter. In a passive RFID system (or a cellular passive RFID system), the first device can be a tag; in other communication systems, the first device can also be other lightweight terminals, thereby reducing the encoding power consumption of the transmitter.
[0067] In the uplink of a cellular passive RFID system, passive tags use short code transmission. Due to their passive nature, it is necessary to reduce the coding complexity during tag encoding to lower energy consumption, increase antenna transmission power, and thus improve the overall system reception performance. TBCC or HBCC encoding exhibits excellent bit error rate performance under short code and low code rate conditions (typically with an information bit length less than 256 bits), and its encoding / decoding complexity is lower than that of polar codes. Considering power consumption, TBCC or HBCC channel coding techniques, which are more suitable for passive tag encoding, are used to improve uplink anti-interference performance.
[0068] In this embodiment, the first device performs a first encoding on the first information sequence and uses convolutional channel coding to improve the uplink noise immunity of the cellular passive system; or it uses a first encoding + second encoding concatenated encoding and uses convolutional channel coding to improve the uplink noise immunity of the cellular passive system. By utilizing the rich rising and falling edges of Miller encoding or Manchester encoding, the codeword clock information is fully preserved, which not only improves the encoding and decoding performance, but also does not add extra decoding complexity, further improving the anti-interference performance and extending the single-station communication range.
[0069] In this embodiment, the first information sequence is an information sequence to be encoded using the first encoding, or to be encoded using a concatenated first encoding and second encoding; for example, it can be the original information sequence, or it can be an information sequence encoded using another encoding technique, or it can be an information sequence processed from the original information sequence, such as adding other bits to the original information sequence. It can be understood that the second information sequence is an information sequence encoded using the first encoding on the first information sequence, and the third information sequence is an information sequence encoded using a concatenated first encoding and second encoding on the first information sequence.
[0070] In this embodiment, the first encoding is either tail-biting convolutional code (TBCC) encoding or head-biting convolutional code (HBCC) encoding; the second encoding is either Miller encoding or Manchester encoding. It can be understood that, when using the first encoding + second encoding concatenated encoding method, the first device can first encode the first information sequence using TBCC, and then encode the TBCC-encoded information sequence using Miller to obtain the third information sequence; alternatively, the first device can first encode the first information sequence using TBCC, and then encode the TBCC-encoded information sequence using Manchester encoding to obtain the third information sequence; alternatively, the first device can first encode the first information sequence using HBCC, and then encode the HBCC-encoded information sequence using Miller encoding to obtain the third information sequence; alternatively, the first device can first encode the first information sequence using HBCC, and then encode the HBCC-encoded information sequence using Manchester encoding to obtain the third information sequence.
[0071] In some alternative embodiments, the number of first registers used for the first encoding is 2, 3, or 6.
[0072] It should be noted that the compilation and decoding complexity of TBCC / HBCC is related to the number of registers; the more registers there are, the higher the compilation and decoding complexity.
[0073] In conventional technical solutions, the number of first registers used for the first encoding is 6. In this embodiment of the invention, the number of first registers can also be 2 or 3. Combining the characteristics of TBCC / HBCC encoding, this embodiment of the invention further reduces power consumption by reducing the number of first registers, which can be reduced to as low as one-third of the number of Long Term Evolution (LTE) convolutional code registers, thereby achieving a reduction in the power consumption of passive tag encoding.
[0074] In some optional embodiments of the present invention, the first information sequence is an information sequence after adding cyclic redundancy check (CRC) encoding or the original information sequence.
[0075] In this embodiment, the first information sequence can be an information sequence obtained by CRC encoding the original information sequence. Specifically, the information sequence is CRC encoded, and check bits for CRC are added to or after the information sequence to obtain the first information sequence.
[0076] In this embodiment, the first device can determine whether to perform CRC encoding on the information sequence to obtain the first information sequence based on the content or type of the information sequence. As an example, the first device can decide whether to perform CRC encoding on the information sequence based on whether the message to be fed back contains specific information content. If the message to be fed back contains specific information content, such as sensor information, then CRC encoding is performed on the information sequence; if the message to be fed back does not contain specific information content, such as sensor information, then CRC encoding is not performed on the information sequence. As another example, the first device can decide whether to perform CRC encoding on the information sequence based on the type of the message to be fed back. If the message to be fed back is EPC, then CRC encoding is performed on the information sequence; if the message to be fed back is RN16, then CRC encoding is not performed on the information sequence. For the case where the first information sequence is an information sequence with added CRC encoding, the receiving end (such as the second device) can use CRC check information to trim incorrect decoding paths, effectively improving the encoding gain.
[0077] In some alternative embodiments, CRC encoding is an error-correcting encoding. Since the codeword polynomial c(x) of the cyclic code is divisible by the CRC generator polynomial g(x), if the y(x) received by the receiver is not divisible by g(x), it indicates that there are error bits in the y(x) received by the receiver.
[0078] In some alternative embodiments, the CRC encoding length and / or CRC generator polynomial are associated with the TBCC generator polynomial or the HBCC generator polynomial.
[0079] In this embodiment, considering that the longer the CRC encoding length, the higher the decoding complexity, a suitable CRC encoding length and / or CRC generating polynomial is selected for different TBCC or HBCC generating polynomials (which can also be combined with the bit length of the original information sequence). In practical applications, the corresponding CRC encoding length and / or CRC generating polynomial can be determined by simulation to determine different TBCC or HBCC generating polynomials.
[0080] In some alternative embodiments, there is an optimal combination of the TBCC / HBCC generator polynomial g and the CRC generator polynomial. The performance achieved by the convolutional code (CC) with a constraint length of N + CRC encoding length m is close to that of the CC code with a constraint length of N + m (excluding CRC encoding), although the latter has a much higher complexity. Multiple combinations are designed to meet the actual system requirements for different terminal capabilities. For example, considering a CRC encoding length m of 5, 6, or 16, if the TBCC / HBCC generator polynomial is g = [5,7] or g = [13,17], then when the CRC encoding length m is 6, the CRC polynomial is [110111]; when the CRC encoding length m is 16, the CRC polynomial is [100010001111].
[0081] In some optional embodiments of the present invention, the method further includes: the first device modulates the second information sequence or the third information sequence and then outputs a modulated signal.
[0082] In this embodiment, considering the low-power characteristics of passive tags, the first device can use On-Off Keying (OOK) (also known as Binary Amplitude Shift Keying) or Binary Phase Shift Keying (BPSK) modulation to modulate the encoded information sequence and output a modulated signal. In other optional embodiments, the first device can also use other modulation methods to modulate the second information sequence, which will not be elaborated in this embodiment. In some optional embodiments, when the first device obtains the second information sequence by using only the first encoding of the first information sequence, the first device can modulate the second information sequence and output a modulated signal. In other optional embodiments, when the first device obtains the third information sequence by concatenating the first encoding and the second encoding of the first information sequence, the first device can modulate the third information sequence and output a modulated signal.
[0083] Figure 4 This is a schematic diagram of a device transmitting data in the encoding method of this invention; as shown. Figure 4 As shown, the method may include:
[0084] Step 1: After generating bits or a bit sequence, the first device can perform CRC encoding to generate a CRC checksum, which is then added to the initially generated bit sequence to obtain the first bit sequence. Since the codeword polynomial c(x) of the cyclic code is divisible by the CRC generator polynomial g(x), if the received y(x) is not divisible by g(x), it indicates that the received y(x) contains an error bit.
[0085] It should be noted that in step one, CRC encoding is an optional step. Alternatively, the generated bits or bit sequences can be directly encoded using TBCC / HBCC. This will not be elaborated on here.
[0086] Step 2: Perform TBCC / HBCC encoding on the first bit sequence. Taking TBCC encoding as an example, the initial state of the registers is pre-encoded during TBCC encoding. This means that before encoding, the last v bits of the bit sequence are stored in v shift registers, so that the registers return to their initial state after encoding. This eliminates the need for the appended tail-zero bits, reducing code rate loss and improving communication efficiency. The improvement in code rate loss has the same effect as truncation, but compared to truncation, the receiver can receive all relevant information, resulting in higher decoding accuracy. For details, please refer to [link to relevant documentation]. Figure 5 As shown.
[0087] Taking HBCC encoding as an example, HBCC encoding initializes the register's initial state. Before encoding, the first v bits of the bit sequence are input into the register to initialize its state, and then convolutional encoding is performed. After all codewords are completed, the first bit is appended to the end of the codeword for input. Since HBCC does not require buffering the complete information sequence, but only requires the number of bits in the register to start encoding, HBCC encoding can further reduce the overall encoding latency, improve the timeliness of encoding, and reduce the response time required for the tag.
[0088] Step 3: Perform Miller encoding on the bit sequence obtained from Step 2 using TBCC or HBCC encoding to obtain the second bit sequence. Specifically, the rules for Miller encoding include: when the data in the bit sequence is "1", use 01 or 10 to represent it; when the data is "0", use 00 and 11 alternately to represent it.
[0089] It should be noted that step three can also use Manchester encoding to obtain the second information sequence. Specifically, the Manchester encoding rules include: each bit has a transition in the middle, and the transition in the middle of the bit serves as both a clock signal and a data signal; a transition from low to high represents "0", and a transition from high to low represents "1".
[0090] Step 4: Modulation. The second bit sequence is modulated using OOK or BPSK modulation methods. Further processing can be applied to the modulated signal using shaping filters or oversampling, and finally transmitted via a radio frequency (RF) antenna.
[0091] Based on the above embodiments, this invention also provides a decoding method. Figure 6 This is a flowchart illustrating the decoding method according to an embodiment of the present invention; as shown below. Figure 6 As shown, the method includes:
[0092] Step 201: The second device obtains the soft information corresponding to each information bit in the fourth information sequence, performs a first decoding on the soft information of each information bit in the fourth information sequence, and obtains a decoding result; wherein, the first decoding is TBCC decoding or HBCC decoding.
[0093] In this embodiment, the second device is an information receiving end. In a passive RFID system (or a cellular passive RFID system), the second device can be a reader / writer or a receiver, or it can be something like... Figure 2 The central node is shown.
[0094] In this embodiment, the fourth information sequence can be an information sequence to be decoded. For example, it can be an information sequence obtained by encoding the information sequence by the tag in the uplink of a cellular passive RFID system.
[0095] In some optional embodiments, the fourth information sequence is an information sequence obtained by performing a first encoding on the fifth information sequence followed by a second encoding; wherein the first encoding is TBCC encoding or HBCC encoding; and / or, the second encoding is Miller encoding or Manchester encoding.
[0096] In this embodiment, the information sending end (such as the first device) can process the information sequence using a first encoding + second encoding concatenation encoding method. Then, the fourth information sequence is the information sequence obtained by performing the first encoding on the fifth information sequence and then performing the second encoding.
[0097] In other alternative embodiments, the information sending end (such as the first device) may process the information sequence using only the first encoding method. In this case, the fourth information sequence is the information sequence obtained after the fifth information sequence is encoded using the first encoding method. Then, after receiving the fourth information sequence, the second device can directly perform the first decoding on the fourth information sequence to obtain the decoding result.
[0098] In some alternative embodiments, the fifth information sequence is an information sequence with added CRC encoding or the original information sequence.
[0099] In this embodiment, the fifth information sequence can be an information sequence obtained by CRC encoding the original information sequence. Specifically, the information sequence is CRC encoded, and check bits for CRC are added to or after the information sequence to obtain the fifth information sequence.
[0100] In this embodiment, the information sending end (such as the first device) can determine whether to perform CRC encoding on the information sequence to obtain the first information sequence based on the content or type of the information sequence. As an example, the first device can decide whether to perform CRC encoding on the information sequence based on whether the message to be fed back contains specific information content. If the message to be fed back contains specific information content, such as sensor information, then CRC encoding is performed on the information sequence; if the message to be fed back does not contain specific information content, such as sensor information, then CRC encoding is not performed on the information sequence. As another example, the first device can decide whether to perform CRC encoding on the information sequence based on the type of the message to be fed back. If the message to be fed back is EPC, then CRC encoding is performed on the information sequence; if the message to be fed back is RN16, then CRC encoding is not performed on the information sequence. For the case where the fourth information sequence is an information sequence with added CRC encoding, the receiving end (such as the second device) can use CRC check information to trim incorrect decoding paths, effectively improving the encoding gain.
[0101] In this embodiment, the second device, acting as the information receiver, performs a first decoding on the received fourth information sequence. This first decoding is the reverse process of encoding performed by the first device, acting as the information sender. It can be understood that the number of second registers used by the second device during the first decoding process is the same as the number of first registers used by the first device during the encoding process of the information sequence.
[0102] In some alternative embodiments, the first decoding is TBCC decoding or HBCC decoding. In this embodiment, a Viterbi decoder may be used for the first decoding.
[0103] In some optional embodiments, after the transmitting end (such as the first device) obtains the second information sequence through the first encoding method, or obtains the third information sequence through the first encoding + the second encoding, it can further modulate the second or third information sequence to obtain a modulated signal, thereby transmitting the modulated signal. Correspondingly, after receiving the modulated signal, the second device, as the receiving end, demodulates the modulated signal to obtain the fourth information sequence. It can be understood that the fourth information sequence is obtained by the second device after demodulating the received modulated signal.
[0104] In this embodiment, after the transmitting end uses concatenated encoding of the first code + the second code, the receiving end originally needed to perform the second decoding (Miller decoding or Manchester decoding) first, and then perform the first decoding on the result of the second decoding. Taking Miller decoding as an example, the Miller decoding rule is: if there is no phase polarity change in each backscatter-link frequency (BLF), the decoding is "0"; if there is a phase polarity change, the decoding is "1". Considering that after TBCC / HBCC-Miller concatenated encoding, the amplitude and polarity of the codewords change when the receiving end performs Miller decoding, it cannot be mapped to Viterbi decoding and cannot be output to the TBCC / HBCC decoding module for bit decision. Therefore, this embodiment of the invention designs a new soft value calculation rule to jointly optimize and update the soft information calculation. Based on this, this embodiment of the invention adopts a new soft information calculation rule, calculates the soft information of each piece of information, and then performs TBCC decoding or HBCC decoding on the fourth information sequence based on the soft information of each piece of information to obtain the decoding result.
[0105] Figure 7 This is a schematic diagram of a device receiving data in the decoding method of this invention; as shown. Figure 7 As shown, the method includes:
[0106] Step 1: Demodulation. The second device receives the OOK or BPSK modulated signal. This modulated signal is affected by noise, which is eliminated by a low-pass filter after demodulation. It can be understood that after passing through... Figure 7 After the downsampling / shaping filtering, DC removal, preamble detection, symbol synchronization, and subcarrier removal operations shown in the diagram, the second device obtains the fourth information sequence.
[0107] Step 2: Calculation of soft information update.
[0108] In this embodiment, the soft information is a multi-level quantization value used as input to the TBCC / HBCC decoder, rather than the two-level quantization value of 0 / 1 used in conventional schemes. The TBCC / HBCC decoder has both soft-decision and hard-decision methods. The path metric of the soft-decision decoding algorithm uses "soft distance" instead of Hamming distance, which has better performance than hard-decision decoding. Because this embodiment uses a second encoding (Miller encoding or Manchester encoding) in the encoding stage, the calculation method of the soft information differs from common schemes. Since the amplitude and polarity of the codeword change during Miller decoding, it cannot be mapped to Viterbi decoding. Therefore, the output of the demodulator is updated with soft information before being output to the TBCC / HBCC decoding module, which uses a Viterbi decoder for decoding. As the initial input to the Viterbi decoder, Viterbi decoding without specifying an initial state is performed. The paths are sorted from largest to smallest by cumulative state metric, and the path with the largest cumulative state metric that conforms to the TBCC / HBCC encoding structure is found.
[0109] In some optional embodiments, the second device obtains soft information corresponding to each information bit in the fourth information sequence, including: the second device obtains initial soft information for each information bit in the fourth information sequence; determines a threshold value based on the initial soft information for each information bit; and determines the soft information for each information bit based on the threshold value and the initial soft information for each information bit.
[0110] In this embodiment, the second device first determines the initial soft information of each information bit; then it determines a threshold value based on the initial soft information of all information bits, and adjusts the initial soft information of each information bit according to the threshold value to obtain the soft information of each information bit.
[0111] In some optional embodiments, the second device obtains initial soft information for each information bit in the fourth information sequence, including: the second device obtaining first information within a first length and second information within a second length for each information bit in the fourth information sequence; the first length and the second length constitute the transmission duration for each information bit; the first information represents the soft information of each information bit within the first length, and the second information represents the soft information of each information bit within the second length; and initial soft information is determined based on the first information and the second information.
[0112] In this embodiment, the first length and the second length constitute the transmission duration or transmission period for each information bit, or it can also be referred to as the subcarrier length corresponding to each information bit. As an example, the first length for an information bit can be the first half of the transmission duration or the first half of the subcarrier length for that information bit, and the second length for an information bit can be the second half of the transmission duration or the second half of the subcarrier length for that information bit. Alternatively, the first length can be for the second half of the transmission duration or the second half of the subcarrier length, and the second length can be for the first half of the transmission duration or the first half of the subcarrier length; this embodiment does not impose any limitations.
[0113] In this embodiment, the first information can be used as soft information for each information bit within a first length, and the second information can be used as soft information for each information bit within a second length. If the first length is the first half of the duration or the first half of the subcarrier length, and the second length is the second half of the duration or the second half of the subcarrier length, then the initial soft information for each information bit can be obtained by subtracting the first information from the second information.
[0114] In some optional embodiments, the first information and / or the second information are related to the transmission duration or subcarrier length N of each information bit and the number of information M to be decoded. In some optional embodiments, if no transition or phase polarity reversal occurs at the midpoint of the transmission period of the information bit, the first information and / or the second information can be obtained by N*M. In other optional embodiments, if a transition or phase polarity reversal occurs at the midpoint of the transmission period of the information bit, the first information and / or the second information can be obtained by (-N*M).
[0115] Figure 8 This is a schematic diagram illustrating the soft information calculation in the decoding method of this invention; as shown. Figure 8 As shown, assuming that the codeword "01 0" is encoded by Miller8 (N=8), the receiving end contains a total of M (M=3) 0 / 1 bits of information to be decoded.
[0116] The soft information for each information bit is calculated separately for the first half and the second half of its duration. For the first bit 0, the soft information for the first half of the duration is A = N*M, and the soft information for the second half of the duration is B = N*M. Therefore, the initial soft information for the first bit 0 is N1 = AB = 0. For the second bit 1, the soft information for the first half of the duration is C = -N*M, and the soft information for the second half of the duration is D = N*M. Therefore, the initial soft information for the second bit 0 is N2 = CD = -2*N*M. This process is repeated for each bit to obtain its initial soft information. See [reference needed] for details. Figure 8 As shown.
[0117] In some optional embodiments, determining the threshold value based on the initial soft information of each information bit includes: taking the absolute value of the initial soft information of each information bit, determining the maximum and minimum values among the absolute values, taking the average value of the maximum and minimum values, and using the average value as the threshold value.
[0118] In this embodiment, the second device counts the absolute value of the initial soft information for each information bit. The absolute value of the initial soft information can be represented as abs(N1), abs(N2), ..., abs(N... M ); abs indicates taking the absolute value.
[0119] In this embodiment of the invention, the peak-to-average method can be used to update the threshold value. Specifically, the peak-to-average method can be expressed as:
[0120] Th=(max(abs(N1),abs(N2),abs(N3),…,abs(N M ))+min(abs(N1),abs(N2),abs(N3),
[0121] …,abs(N M ))) / 2
[0122] Where max(abs(N1), abs(N2), abs(N3), ..., abs(N) M )) represents the maximum value after taking the absolute value of all initial soft information; min(abs(N1), abs(N2), abs(N3), ..., abs(N) M )) represents the minimum value after taking the absolute value of all initial soft information; Th represents the threshold value.
[0123] In some optional embodiments, determining the soft information of each information bit based on the threshold value and the initial soft information of each information bit includes: subtracting the absolute value of the threshold value from the absolute value of the initial soft information of each information bit to obtain the soft information of each information bit.
[0124] In this embodiment, the soft information of each information bit or bit is obtained by subtracting the absolute value of the obtained threshold value from the absolute value of the initial soft information of each information bit. For example, the soft information of each information bit can be represented as: Th-abs(N) i ); where Th represents the threshold value, abs(N) i ) represents the absolute value of the initial soft information of the i-th information bit. This allows us to obtain the soft information of the i-th information bit for the TBCC / HBCC decoding module to make bit decisions.
[0125] In some optional embodiments, when the fifth information sequence is an information sequence with added CRC encoding, the first decoding of the soft information of each information bit in the fourth information sequence to obtain a decoding result includes: the second device performing a first decoding of the soft information of each information bit in the fourth information sequence to determine at least one decoding path, wherein the end state of the at least one decoding path corresponds to at least one state of the second register of the first decoding; determining the CRC check result of each decoding path based on the at least one decoding path; determining the first decoding path whose CRC check result is a passed check, and obtaining a decoding result based on the first decoding path.
[0126] In some optional embodiments, if the fourth information sequence is an information sequence obtained by first encoding the fifth information sequence, and the fifth information sequence is an information sequence with added CRC encoding, then the second device performs a first decoding on the fourth information sequence to determine at least one decoding path. The end state of the at least one decoding path corresponds to at least one state of the second register of the first decoding. Based on the at least one decoding path, the CRC check result of each decoding path is determined. The first decoding path with the CRC check result is determined to be the first decoding path that has passed the check, and the decoding result is obtained based on the first decoding path.
[0127] In this embodiment, depending on the encoding method of the information sending end, for the information sequence encoded using only the first encoding method, the second device can perform a first decoding on the demodulated information sequence to obtain a decoding result; for the information sequence encoded using the concatenated encoding of the first encoding and the second encoding, the second device uses the above method to determine the soft information of each information bit, and then performs a first decoding on the soft information corresponding to each information bit in the information sequence to obtain a decoding result.
[0128] In this embodiment, during the first decoding of the fourth information sequence, the second device can specify the end state of the generated decoding path as the state of a specified register, that is, the end state of the at least one decoding path corresponds one-to-one with the state of the second register of the first decoding.
[0129] In this embodiment, the decoding result includes the decoding result obtained based on at least one decoding path. Determining the CRC check result of each decoding path can be achieved by performing a CRC check on each decoding path to obtain a CRC check result; determining whether the decoding result passes the CRC check. If the first decoding path passes the CRC check, the decoding result corresponding to the first decoding path can be determined as the final decoding result.
[0130] In some optional embodiments, determining the CRC check result of each decoding path based on the at least one decoding path includes: performing a CRC check on the third decoding path when there is at least one second decoding path in the at least one decoding path and a third decoding path in the at least one second decoding path; and determining the CRC check result of the decoding result when the third decoding path passes the CRC check, wherein the CRC check result indicates that the decoding result passes the CRC check; wherein the second decoding path is the decoding path whose initial state and the ending state are the same, and the third decoding path is the decoding path with the largest cumulative state metric among the at least one decoding path.
[0131] It is understandable that, when the third decoding path passes CRC verification, the accuracy of the decoding result corresponding to the third decoding path is relatively high.
[0132] Specifically, the second decoding path is a decoding path whose initial state and ending state are the same, equivalent to a decoding path conforming to the TBCC / HBCC encoding structure. The initial state is the decoding path state before register decoding, and the ending state is the decoding path state after register decoding. The cumulative state metric is the cumulative state metric corresponding to each decoding path obtained during the first decoding process of the information sequence, and can be used to characterize the reliability of the path. Typically, the cumulative state metric for Viterbi decoding uses Euclidean distance accumulation.
[0133] Figure 9 This is a schematic diagram of a decoding process in the decoding method of this invention; as shown below. Figure 9 As shown, this embodiment employs a first encoding + second encoding concatenated encoding method for the information transmitting end. The second device, acting as the receiving end, receives the BPSK modulated waveform from the channel and performs BPSK demodulation on the BPSK modulated waveform to obtain the information sequence. Based on the demodulated information sequence, the soft information of each information bit is determined. Since the BPSK modulated waveform is affected by noise signals, a low-pass filter can be used to eliminate the noise after demodulation. The soft information of each information bit in the information sequence is then subjected to parallel List Biterbi decoding. If the decoding result passes the CRC check, the corresponding decoded value is output. If the decoding result fails the CRC check, it is determined whether the parameter L of the parallel List Biterbi decoding is equal to a preset limit value. If L is not equal to the preset limit value, L is modified to the limit value, and decoding is performed again. If L is equal to the preset limit value, a retransmission of the demodulated signal is requested, and the current decoding algorithm ends.
[0134] Figure 10A comparative diagram showing different combinations of encoding and decoding methods; such as Figure 10 As shown, simulation parameters for reducing the number of registers by concatenating TBCC and CRC encodings are configured as follows: information bit length is 112, CRC encoding length is 6, CRC generator polynomial is [110111], total code rate is 1 / 2, TBCC encoding uses a constraint length of 3 (2 shift registers), and TBCC generator polynomials are [5,7]; or, TBCC encoding uses a constraint length of 4 (3 shift registers), and TBCC generator polynomials are [13,17]. The optimal combination of CRC and TBCC generator polynomials can be obtained through prior searching. Simulation curves can be referenced. Figure 10 As shown.
[0135] Simulation results: Under OOK modulation, the Miller8+TBCC encoding scheme outperforms the Miller8 scheme by 4.2dB performance gain; under BPSK modulation, the TBCC encoding scheme (constraint length of 4 (number of shift registers of 3), TBCC generator polynomial of [13,17]) outperforms the Miller8 scheme by approximately 3dB performance gain; under BPSK modulation, the TBCC encoding scheme (constraint length of 3 (number of shift registers of 2), TBCC generator polynomial of [5,7]) outperforms the Miller8 scheme by approximately 2.7dB performance gain.
[0136] TBCC's noise immunity is significantly better than that of Miller8, which is used in existing RFID systems with a code rate as low as 1 / 16, and can greatly improve the uplink noise immunity of cellular passive IoT systems.
[0137] Considering the low-power design of the tags, and given that the encoding and decoding complexity of convolutional codes is related to the number of registers, a simplified design to reduce the number of registers in convolutional coding is considered. 3GPP uses a 6-bit register and employs an encoding and decoding method combining CRC and TBCC. Compared to direct TBCC encoding, this reduces the number of registers to as low as 1 / 3 (2-bit registers) of the LTE convolutional code registers, further reducing tag encoding power consumption, adapting to tag capabilities, and using CRC to verify the decoding path, mitigating the interference performance loss caused by reducing the number of registers. Furthermore, TBCC / HBCC and Miller / Manchester codes are concatenated for encoding, preserving the rich clock information of Miller / Manchester codes for synchronization, while further improving the interference resistance of the cellular passive communication system and extending the communication range of a single station.
[0138] Based on the above embodiments, this invention also provides an encoding device, which is applied to a first device. Figure 11This is a schematic diagram of the composition structure of the encoding device according to an embodiment of the present invention; as shown Figure 11 As shown, the apparatus includes: an encoding unit 31, configured to perform a first encoding on a first information sequence to obtain a second information sequence; or, to perform a first encoding on the first information sequence and a second encoding on the second information sequence after the first encoding to obtain a third information sequence; wherein the first encoding is TBCC encoding or HBCC encoding; and / or, the second encoding is Miller encoding or Manchester encoding.
[0139] In some optional embodiments of the present invention, the first information sequence is an information sequence with added CRC encoding or the original information sequence.
[0140] In some alternative embodiments of the present invention, the CRC encoding length and / or CRC generator polynomial are associated with the TBCC generator polynomial or the HBCC generator polynomial.
[0141] In some alternative embodiments of the present invention, the number of first registers used for the first encoding is 2, 3 or 6.
[0142] In some optional embodiments of the present invention, the device further includes a communication unit 32 for modulating the second information sequence or the third information sequence and then outputting a modulated signal.
[0143] In this embodiment of the invention, the encoding unit 31 in the device can be implemented by a central processing unit (CPU), a digital signal processor (DSP), a microcontroller unit (MCU), or a field-programmable gate array (FPGA) in practical applications; the communication unit 32 in the device can be implemented by a communication module (including: basic communication kit, operating system, communication module, standardized interface and protocol, etc.) and a transceiver antenna in practical applications.
[0144] It should be noted that the encoding device provided in the above embodiments is only illustrated by the division of the above program modules. In practical applications, the above processing can be assigned to different program modules as needed, that is, the internal structure of the device can be divided into different program modules to complete all or part of the processing described above. In addition, the encoding device and encoding method embodiments provided in the above embodiments belong to the same concept, and their specific implementation process can be found in the method embodiments, which will not be repeated here.
[0145] This invention also provides an encoding device, which is applied to a second device. Figure 12 This is a schematic diagram of the composition structure of the decoding device according to an embodiment of the present invention; as shown below. Figure 12 As shown, the device includes: a decoding unit 41, used to obtain soft information corresponding to each information bit in the fourth information sequence, and to perform a first decoding on the soft information of each information bit in the fourth information sequence to obtain a decoding result; wherein, the first decoding is TBCC decoding or HBCC decoding.
[0146] In some optional embodiments of the present invention, the decoding unit 41 is configured to obtain the initial soft information of each information bit in the fourth information sequence; determine a threshold value based on the initial soft information of each information bit; and determine the soft information of each information bit based on the threshold value and the initial soft information of each information bit.
[0147] In some optional embodiments of the present invention, the decoding unit 41 is configured to obtain first information within a first length and second information within a second length for each information bit in the third information sequence; the first length and the second length constitute the transmission duration of each information bit; the first information represents the soft information of each information bit within the first length, and the second information represents the soft information of each information bit within the second length; and initial soft information is determined based on the first information and the second information.
[0148] In some optional embodiments of the present invention, the decoding unit 41 is used to take the absolute value of the initial soft information of each information bit, determine the maximum and minimum values among the absolute values, take the average value of the maximum and minimum values, and use the average value as the threshold value.
[0149] In some optional embodiments of the present invention, the decoding unit 41 is used to subtract the threshold value from the absolute value of the initial soft information of each information bit to obtain the soft information of each information bit.
[0150] In some optional embodiments of the present invention, the fourth information sequence is an information sequence obtained by performing a first encoding on the fifth information sequence and then performing a second encoding; wherein, the first encoding is TBCC encoding or HBCC encoding; and / or, the second encoding is Miller encoding or Manchester encoding.
[0151] In some optional embodiments of the present invention, the fifth information sequence is an information sequence after adding cyclic redundancy check (CRC) encoding or the original information sequence.
[0152] In some optional embodiments of the present invention, when the fifth information sequence is an information sequence after adding cyclic redundancy check (CRC) encoding, the decoding unit 41 is used to perform a first decoding on the soft information of each information bit in the fourth information sequence, determine at least one decoding path, the end state of the at least one decoding path corresponds to at least one state of the second register of the first decoding; determine the CRC check result of each decoding path according to the at least one decoding path; determine the first decoding path that has passed the CRC check result, and obtain the decoding result based on the first decoding path.
[0153] In this embodiment of the invention, the decoding unit 41 in the device can be implemented by a CPU, DSP, MCU or FPGA in practical applications.
[0154] It should be noted that the decoding device provided in the above embodiments is only illustrated by the division of the above program modules. In practical applications, the above processing can be assigned to different program modules as needed, that is, the internal structure of the device can be divided into different program modules to complete all or part of the processing described above. In addition, the decoding device and decoding method embodiments provided in the above embodiments belong to the same concept, and their specific implementation process can be found in the method embodiments, which will not be repeated here.
[0155] This invention also provides a device, which is either a first device or a second device. Figure 13 This is a schematic diagram of the hardware composition structure of the device according to an embodiment of the present invention, such as... Figure 13 As shown, the device includes a memory 52, a processor 51, and a computer program stored in the memory 52 and executable on the processor 51. When the processor 51 executes the program, it implements the steps of the encoding method of the present invention applied to the first device, or the processor 51 implements the steps of the decoding method of the present invention applied to the second device.
[0156] Optionally, the device may also include at least one network interface 53. The various components within the device are coupled together via a bus system 54. It is understood that the bus system 54 is used to implement communication between these components. In addition to a data bus, the bus system 54 also includes a power bus, a control bus, and a status signal bus. However, for clarity, in… Figure 13 The general labeled all buses as Bus System 54.
[0157] It is understood that memory 52 can be volatile memory or non-volatile memory, or both. Non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), magnetic random access memory (FRAM), flash memory, magnetic surface memory, optical disc, or compact disc read-only memory (CD-ROM); magnetic surface memory can be disk storage or magnetic tape storage. Volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Synchronous Static Random Access Memory (SSRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), Enhanced Synchronous Dynamic Random Access Memory (ESDRAM), SyncLink Dynamic Random Access Memory (SLDRAM), and Direct Rambus Random Access Memory (DRRAM).The memory 52 described in this embodiment of the invention is intended to include, but is not limited to, these and any other suitable types of memory.
[0158] The methods disclosed in the above embodiments of the present invention can be applied to processor 51, or implemented by processor 51. Processor 51 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the integrated logic circuit of the hardware in processor 51 or by instructions in the form of software. The processor 51 may be a general-purpose processor, DSP, or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. Processor 51 can implement or execute the methods, steps and logic block diagrams disclosed in the embodiments of the present invention. The general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of the present invention can be directly manifested as being executed by a hardware decoding processor, or being executed by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium, which is located in memory 52. Processor 51 reads the information in memory 52 and completes the steps of the aforementioned method in combination with its hardware.
[0159] In an exemplary embodiment, the device may be implemented by one or more application-specific integrated circuits (ASICs), DSPs, programmable logic devices (PLDs), complex programmable logic devices (CPLDs), FPGAs, general-purpose processors, controllers, MCUs, microprocessors, or other electronic components to perform the aforementioned method.
[0160] In an exemplary embodiment, the present invention also provides a computer-readable storage medium, such as a memory 52 including a computer program, which can be executed by a processor 51 of the device to perform the steps described in the foregoing method. The computer-readable storage medium may be a memory such as FRAM, ROM, PROM, EPROM, EEPROM, Flash Memory, magnetic surface memory, optical disc, or CD-ROM; or it may be various devices including one or any combination of the above-mentioned memories.
[0161] The computer-readable storage medium provided in the embodiments of the present invention stores a computer program thereon. When the program is executed by a processor, it implements the steps of the encoding method of the present invention applied to a first device, or when the program is executed by a processor, it implements the steps of the decoding method of the present invention applied to a second device.
[0162] This application also provides a computer program product, including a computer program that can be executed by a device (such as the device's processor 51) to complete any of the aforementioned steps of the encoding method applied to the first device, or to complete any of the aforementioned steps of the decoding method applied to the second device.
[0163] The methods disclosed in the several method embodiments provided in this application can be arbitrarily combined without conflict to obtain new method embodiments.
[0164] The features disclosed in the several product embodiments provided in this application can be arbitrarily combined without conflict to obtain new product embodiments.
[0165] The features disclosed in the several method or device embodiments provided in this application can be arbitrarily combined without conflict to obtain new method or device embodiments.
[0166] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. The device embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods, such as: multiple units or components can be combined, or integrated into another system, or some features can be ignored or not executed. In addition, the coupling, direct coupling, or communication connection between the various components shown or discussed can be through some interfaces, and the indirect coupling or communication connection between devices or units can be electrical, mechanical, or other forms.
[0167] The units described above as separate components may or may not be physically separate. The components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of the units may be selected to achieve the purpose of this embodiment according to actual needs.
[0168] In addition, in the various embodiments of the present invention, each functional unit can be integrated into one processing unit, or each unit can be a separate unit, or two or more units can be integrated into one unit; the integrated unit can be implemented in hardware or in the form of hardware plus software functional units.
[0169] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it performs the steps of the above method embodiments. The aforementioned storage medium includes various media that can store program code, such as mobile storage devices, ROM, RAM, magnetic disks, or optical disks.
[0170] Alternatively, if the integrated units of this invention are implemented as software functional modules and sold or used as independent products, they can also be stored in a computer-readable storage medium. Based on this understanding, the technical solutions of the embodiments of this invention, or the parts that contribute to the prior art, 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 methods described in the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, ROM, RAM, magnetic disks, or optical disks.
[0171] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention 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 present invention should be included within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.
Claims
1. An encoding method characterized by comprising: The method comprises: The first device encodes a first information sequence to obtain a second information sequence; or, the first device encodes a first information sequence, and encodes the second information sequence obtained after the first encoding to obtain a third information sequence; The first encoding is tail biting convolutional code (TBCC) encoding or head biting convolutional code (HBCC) encoding; and / or, the second encoding is Miller encoding or Manchester encoding; The first information sequence is an information sequence after adding cyclic redundancy check (CRC) encoding or an original information sequence; The CRC encoding length and / or the CRC generator polynomial are associated with a TBCC generator polynomial or an HBCC generator polynomial.
2. The method of claim 1, wherein, The first register quantity for the first encoding is 2, 3 or 6.
3. The method of claim 1, wherein, The method further comprises: The first device modulates the second information sequence or the third information sequence, and outputs a modulated signal.
4. A decoding method, comprising: The method comprises: The second device obtains soft information corresponding to each information bit in a fourth information sequence, and performs first decoding on the soft information of each information bit in the fourth information sequence to obtain a decoding result; The first decoding is tail biting convolutional code (TBCC) decoding or head biting convolutional code (HBCC) decoding; The second device obtains soft information corresponding to each information bit in a fourth information sequence, and comprises: The second device obtains initial soft information of each information bit in the fourth information sequence; A threshold value is determined according to the initial soft information of each information bit; Soft information of each information bit is determined according to the threshold value and the initial soft information of each information bit; The second device obtains initial soft information of each information bit in the fourth information sequence, and comprises: The second device respectively obtains first information within a first length and second information within a second length of each information bit in the fourth information sequence; the first length and the second length are composed of a transmission duration of each information bit; the first information represents soft information of each information bit within the first length, and the second information represents soft information of each information bit within the second length; The initial soft information is determined based on the first information and the second information.
5. The method of claim 4, wherein, The threshold value is determined according to the initial soft information of each information bit, and comprises: After taking an absolute value of the initial soft information of each information bit, a maximum value and a minimum value in the absolute values are determined, an average value of the maximum value and the minimum value is taken, and the average value is taken as the threshold value.
6. The method of claim 4, wherein, Soft information of each information bit is determined according to the threshold value and the initial soft information of each information bit, and comprises: The threshold value is subtracted from an absolute value of the initial soft information of each information bit respectively to obtain the soft information of each information bit.
7. The method of claim 4, wherein, The fourth information sequence is an information sequence obtained by performing first encoding on a fifth information sequence and then performing second encoding. The first encoding is tail biting convolutional code (TBCC) encoding or head biting convolutional code (HBCC) encoding; and / or, the second encoding is Miller encoding or Manchester encoding.
8. The method of claim 7, wherein, The fifth information sequence is an information sequence after adding cyclic redundancy check (CRC) encoding or an original information sequence.
9. The method of claim 8, wherein, In the case that the fifth information sequence is an information sequence after adding cyclic redundancy check (CRC) encoding, the first decoding of the soft information of each information in the fourth information sequence comprises: The second device performs first decoding on the soft information of each information bit in the fourth information sequence, determines at least one decoding path, and the ending state of each decoding path corresponds to at least one state of the second register of the first decoding respectively; According to the at least one decoding path, the cyclic redundancy check (CRC) check result of each decoding path is determined; The first decoding path with a cyclic redundancy check (CRC) check result is determined, and the decoding result is obtained based on the first decoding path.
10. An encoding apparatus, comprising: The device is applied to a first device, and the device comprises an encoding unit configured to perform first encoding on a first information sequence to obtain a second information sequence, or perform first encoding on the first information sequence and perform second encoding on the second information sequence after the first encoding to obtain a third information sequence; wherein the first encoding is tail biting convolutional code (TBCC) encoding or head biting convolutional code (HBCC) encoding; and / or the second encoding is Miller encoding or Manchester encoding; the first information sequence is an information sequence after adding cyclic redundancy check (CRC) encoding or an original information sequence; the CRC encoding length and / or the CRC generator polynomial are associated with the TBCC generator polynomial or the HBCC generator polynomial.
11. A decoding device, comprising: The device is applied to a second device, and the device comprises a decoding unit configured to obtain the soft information corresponding to each information bit in a fourth information sequence, perform first decoding on the soft information of each information bit in the fourth information sequence, and obtain a decoding result; wherein the first decoding is tail biting convolutional code (TBCC) decoding or head biting convolutional code (HBCC) decoding. The decoding unit is configured to obtain the initial soft information of each information bit in the fourth information sequence, determine a threshold value according to the initial soft information of each information bit, and determine the soft information of each information bit according to the threshold value and the initial soft information of each information bit. The decoding unit is configured to obtain the first information within a first length and the second information within a second length of each information bit in the fourth information sequence respectively; the first length and the second length consist of the transmission duration of each information bit; the first information represents the soft information of each information bit within the first length, and the second information represents the soft information of each information bit within the second length; and the initial soft information is determined based on the first information and the second information.
12. A computer readable storage medium having stored thereon a computer program, characterized in that, The program is executed by a processor to implement the steps of the method of any one of claims 1 to 3; or the program is executed by a processor to implement the steps of the method of any one of claims 4 to 9.
13. A communication device comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, wherein, The processor, when executing the program, implements the steps of the method of any one of claims 1 to 3; or the processor, when executing the program, implements the steps of the method of any one of claims 4 to 9.
14. A computer program product, characterised in that, The computer program product comprises computer program instructions, which cause a computer to execute the steps of the method of any one of claims 1 to 3; or the computer program instructions cause a computer to execute the steps of the method of any one of claims 4 to 9.
Citation Information
Patent Citations
Wireless signal decoding method and decoding device
CN112910469A
Tail biting convolutional code encoding method and decoding method adopting hash function
CN116743189A