Encoding method and communication apparatus
By performing fragmentation and padding on OFDM symbols during LDPC encoding, the problem of PSDU variation caused by excessive punching is solved, thereby improving the stability of signal-to-noise ratio and communication quality.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2025-12-19
- Publication Date
- 2026-07-30
AI Technical Summary
Existing LDPC encoding may suffer from excessive puncturing during the encoding process, which causes changes in the size of the Physical Layer Service Data Unit (PSDU), affecting the signal-to-noise ratio fluctuation during decoding at the receiver and reducing communication quality.
By filling the last OFDM symbol corresponding to the first codeword into the fourth fragment in the pre-padding step of forward error correction coding, the number of bits of the first codeword after padding meets the requirements of the receiver, avoiding or reducing the post-padding step of forward error correction coding, and reducing the number and magnitude of PSDU changes.
It effectively reduces the fluctuation of the signal-to-noise ratio during decoding at the receiver, thereby improving communication quality and reliability.
Smart Images

Figure CN2025143992_30072026_PF_FP_ABST
Abstract
Description
An encoding method and a communication device
[0001] This application claims priority to Russian patent application No. 2025101189, filed on January 22, 2025, with the Russian Federal Intellectual Property Office, entitled "An Encoding Method and Communication Apparatus", the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the field of channel coding technology, and more specifically, to a coding method and a communication apparatus. Background Technology
[0003] In the field of channel coding, low-density parity check (LDPC) codes are the most mature and widely used channel coding scheme. LDPC coding has performance close to the Shannon limit and also includes many other advantages. For example, by using LDPC coding, the error correction capability of communication data can be improved, thereby improving the reliability of the communication system and the accuracy of data transmission.
[0004] However, current LDPC encoding may puncture the generated codewords after encoding the data bits and parity bits to align with the number of bits required by the receiver decoder. During this puncturing process, over-puncturing may occur, resulting in the removal of too many parity bits. As a result, the size of the physical layer service data unit (PSDU) will change slightly, leading to a significant change or fluctuation in the signal-to-noise ratio required for successful decoding at the receiver, ultimately resulting in a degraded communication quality. Summary of the Invention
[0005] This application provides an encoding method that can effectively reduce the number and magnitude of PSDU changes, thereby reducing signal-to-noise ratio fluctuations during decoding at the receiver.
[0006] Firstly, an encoding method is provided. This method can be executed by a transmitting end. Unless otherwise specified, "transmitting end" in this application can refer to the transmitting end itself (e.g., an access point (AP)), a component of the transmitting end (e.g., a processor, chip, or chip system, such as the circuit or chip responsible for communication functions in the access point (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 logic module or software that can implement all or part of the transmitting end's functions. For ease of description, the following explanation uses the transmitting end as an example.
[0007] The encoding method includes: generating a second codeword based on a first padding number and a first codeword, wherein the first codeword is obtained based on a low-density parity-check code (LDPC), and the first codeword corresponds to multiple orthogonal frequency division multiplexing (OFDM) symbols, wherein the multiple OFDM symbols include a first OFDM symbol, wherein the number of bits carried in the first OFDM symbol after padding the first codeword based on the first padding number conforms to N. CBPS The N CBPS The first padding number is the number of bits corresponding to each OFDM symbol among the plurality of OFDM symbols received by the receiving end. The first padding number is determined based on the initial padding factor. When the initial padding factor is less than 4, the first padding number is determined based on the initial padding factor.
[0008] Multiple orthogonal frequency division multiplexing (OFDM) symbols are transmitted, and the multiple OFDM symbols carry a second codeword.
[0009] Based on the above technical solution, by padding the last OFDM symbol corresponding to the first codeword into the fourth segment during the pre-FEC padding step, the number of bits in the padded first codeword conforms to N. CBPS This reduces the number of bits that need to be padded in the post-FEC padding step to a minimum or avoids the execution of the post-FEC padding step altogether. Therefore, it can effectively reduce the number of PSDU changes and / or the magnitude of changes, thereby reducing the signal-to-noise ratio fluctuation during decoding at the receiver.
[0010] In conjunction with the first aspect, in some implementations of the first aspect, the method further includes: the first padding number being based on the initial padding coefficient a. initIt is determined that the first fill number is based on the following parameter: the initial fill coefficient a. init The number of space-time block codes m STBC The number of bits N in each OFDM symbol CBPS The number of bits N of the first codeword carried by the first OFDM symbol CBPS,short .
[0011] In conjunction with the first aspect, in some implementations of the first aspect, the method further includes: determining a first padding number, wherein when the initial padding coefficient is equal to 4, the first padding number is determined based on the following parameter: the number of space-time block codes m. STBC and the number of bits N of each OFDM symbol CBPS .
[0012] Based on the above technical solution, when the initial padding coefficient is equal to 4, that is, when the remaining bits of the first codeword before padding are 0, the number of bits N of each OFDM symbol corresponding to the first codeword after padding is used. CBPS Calculating the first padding number allows for a quick determination of the number of bits required to pad the fourth segment of the first OFDM symbol. This is because when the OFDM symbol to be padded is the last OFDM symbol carrying the first codeword, N... CBPS It can be determined by the OFDM symbols other than the last OFDM symbol among the multiple OFDM symbols corresponding to the first codeword.
[0013] In conjunction with the first aspect, in some implementations of the first aspect, the initial filling coefficient a init When the number of fillers is less than 4, the first number of fillers N avbits,padding The following conditions must be met: N avbits,padding =m STBC ·(N CBPS -a init ·N CBPS,short ).
[0014] In conjunction with the first aspect, in some implementations of the first aspect, the initial filling coefficient a init When the number of fillers is equal to 4, the first filler number N avbits,padding The following conditions must be met: N avbits,padding =m STBC ·N CBPS .
[0015] In conjunction with the first aspect, in some implementations of the first aspect, the N CBPS The maximum number of bits in the first OFDM symbol carrying the first codeword.
[0016] Based on the above technical solution, when NCBPS When the maximum number of bits of the first codeword carried by the first OFDM symbol is reached, it means that after the first OFDM symbol corresponding to the first codeword is filled into the fourth segment in the pre-FEC padding step, the post-FEC padding step is no longer needed. This can further reduce the number of changes in the PSDU size, thereby reducing the fluctuation of the signal-to-noise ratio during decoding at the receiver.
[0017] In conjunction with the first aspect, in some implementations of the first aspect, the method includes: sending a first parameter to the receiving end, the first parameter being used to determine the length of the data bits of the first codeword, the first parameter being determined based on the initial padding coefficient.
[0018] Based on the above technical solution, by sending the first parameter to the receiving end, the padding processing strategy adopted by the sending end can be clearly declared, that is, it can reflect the value of the initial padding coefficient, so that the receiving end can use the value to calculate the length of the codeword data bits when decoding.
[0019] In conjunction with the first aspect, in some implementations of the first aspect, the method includes: the first parameter Δ a The following conditions must be met: Δ a =aa init Wherein, the value of 'a' indicates that the number of bits in the first OFDM symbol conforms to the stated N. CBPS The a init The initial fill factor is denoted as .
[0020] Based on the above technical solution, the padding method described in this application's embodiments will fix 'a' to 4. Therefore, other parameters are needed to reflect the padding status of the transmitting end. The method described in this application's embodiments pads the first OFDM symbol with bits up to the fourth fragment, thus the initial padding coefficient 'a' is... init The value can accurately reflect the padding status of the sender to the receiver, thus facilitating the calculation of the code length during decoding.
[0021] In conjunction with the first aspect, in some implementations of the first aspect, the method includes: sending first indication information to the receiving end, the first indication information being used to indicate that the first parameter is determined based on the initial filling coefficient.
[0022] Based on the above technical solution, in addition to using the first parameter to calculate the code length, the receiving end can also use the first padding coefficient to calculate the code length. Therefore, by declaring to the receiving end in advance that the first parameter used to calculate the data code length is determined based on the initial padding coefficient, the receiving end can use the corresponding code length calculation formula to perform the calculation, thus avoiding errors during decoding.
[0023] Secondly, an encoding method is provided. This method can be executed by a receiving end. Unless otherwise specified, "receiving end" in this application can refer to the receiving end itself (e.g., an access point (AP)), a component of the receiving end (e.g., a processor, chip, or chip system, such as the circuit or chip in the access point responsible for communication functions (e.g., a modem chip, also known as a baseband chip, or a SoC chip or SIP chip containing a modem core)), or a logic module or software that can implement all or part of the functions of the receiving end. For ease of description, the following description uses the execution by the receiving end as an example.
[0024] The encoding method includes:
[0025] Multiple Orthogonal Frequency Division Multiplexing (OFDM) symbols are received. These OFDM symbols carry a second codeword, which is generated based on a first padding number and a first codeword. The first codeword is obtained based on a Low-Density Parity-Check (LDPC) code. The first codeword corresponds to the multiple OFDM symbols, which include a first OFDM symbol. The number of bits carried in the first OFDM symbol after padding with the first padding number conforms to N. CBPS The N CBPS The first padding number is the number of coded bits corresponding to each of the plurality of OFDM symbols received by the receiving end. The first padding number is determined based on the initial padding coefficient. When the initial padding coefficient is less than 4, the first padding number is determined based on the initial padding coefficient.
[0026] In conjunction with the second aspect, in some implementations of the second aspect, the method includes: the first padding number is based on the initial padding coefficient a. init It is determined that the first fill number is determined based on the following parameter: the initial fill coefficient a. init The number of space-time block codes m STBC The number of bits N in each OFDM symbol CBPS The number of bits N of the first codeword on the first OFDM symbol CBPS,short .
[0027] In conjunction with the second aspect, in some implementations of the second aspect, the method includes: when the initial padding coefficient is equal to 4, the first padding number is determined based on the following parameter: the number of space-time block codes m. STBC and the number of bits N of each OFDM symbol CBPS .
[0028] In conjunction with the second aspect, in some implementations of the second aspect, the initial filling coefficient a init When the number of fillers is less than 4, the first number of fillers N avbits,padding The following conditions must be met: N avbits,padding =m STBC ·(N CBPS -a init ·N CBPS,short ).
[0029] In conjunction with the second aspect, in some implementations of the second aspect, the initial filling coefficient a init When the number equals 4, the first number of charges N avbits,padding The following conditions must be met: N avbits,padding =m STBC ·N CBPS .
[0030] In conjunction with the second aspect, in some implementations of the second aspect, the N CBPS The maximum number of bits in the first OFDM symbol carrying the first codeword.
[0031] In conjunction with the second aspect, in some implementations of the second aspect, the method includes: obtaining the first codeword from the plurality of OFDM symbols; receiving a first parameter from the transmitting end, the first parameter being determined based on the initial padding coefficient; determining the number of data bits in the first OFDM symbol based on the first parameter; and determining the number of data bits in the first codeword based on the number of data bits in the first OFDM symbol.
[0032] In conjunction with the second aspect, in some implementations of the second aspect, the first parameter Δ a The following conditions must be met: Δ a =aa init Wherein, the value of 'a' indicates that the number of bits in the first OFDM symbol conforms to the stated N. CBPS The a init The initial fill factor is denoted as .
[0033] In conjunction with the second aspect, in some implementations of the second aspect, the method further includes: receiving first indication information from the transmitting end, the first indication information being used to indicate that the first parameter is determined based on the initial padding coefficient.
[0034] In conjunction with the second aspect, in some implementations of the second aspect, the number of data bits of the first codeword is PSDU. LENGTH and the first parameter Δ a The relationship between them satisfies the following condition: when the first parameter Δ a When greater than 0:
[0035] Among them, the The N is the sign for rounding down. DBPS N is the number of data bits in the second OFDM symbol. SYM N is the number of the plurality of OFDM symbols. SD,short The number of subcarriers carrying the data bits of the first OFDM symbol, where T represents the number of bits of the second codeword carried by the first OFDM symbol padded to the maximum value, and N... BPSCS N is the number of bits in the second codeword carried on each subcarrier corresponding to the first OFDM symbol. SS Let N be the spatial stream number corresponding to the second codeword, R be the code rate of the second codeword, and N be the... tail N is the number of tail bits on the PPDU corresponding to the second codeword. service The number of bits in the service field of the PPDU corresponding to the second codeword; or, when the first parameter Δ a When equal to 0:
[0036] In conjunction with the second aspect, in some implementations of the second aspect, the value of T is 4.
[0037] The technical effects of the methods shown in the second aspect above can be referenced in the first aspect and its possible designs.
[0038] Thirdly, a communication apparatus is provided for performing the method provided in the first aspect. Specifically, the apparatus may include units and / or modules for performing the method provided in any of the above implementations of the first aspect, such as processing units and / or communication units.
[0039] In one implementation, the communication unit can be a transceiver or an input / output interface; the processing unit can be at least one processor. Optionally, the transceiver can be a transceiver circuit. Optionally, the input / output interface can be an input / output circuit.
[0040] In another implementation, the device is a chip, chip system, or circuit used in a transmitting device. When the device is a chip, chip system, or circuit used in a terminal device, the communication unit can be an input / output interface, interface circuit, output circuit, input circuit, pin, or related circuit on the chip, chip system, or circuit; the processing unit can be at least one processor, processing circuit, or logic circuit.
[0041] Fourthly, a communication apparatus is provided for performing the method provided in the second aspect. Specifically, the apparatus may include units and / or modules for performing the method provided in any of the above implementations of the second aspect, such as processing units and / or communication units.
[0042] In one implementation, the communication unit can be a transceiver or an input / output interface; the processing unit can be at least one processor. Optionally, the transceiver can be a transceiver circuit. Optionally, the input / output interface can be an input / output circuit.
[0043] In another implementation, the device is a chip, chip system, or circuit used in a receiving device. When the device is a chip, chip system, or circuit used in a terminal device, the communication unit can be an input / output interface, interface circuit, output circuit, input circuit, pin, or related circuit on the chip, chip system, or circuit; the processing unit can be at least one processor, processing circuit, or logic circuit.
[0044] Fifthly, a communication device is provided, the device comprising: a memory for storing a program; and at least one processor for executing the computer program or instructions stored in the memory to perform any of the above-described implementation methods of the first to second aspects.
[0045] Sixthly, this application provides a processor for performing the methods provided in the above aspects.
[0046] Unless otherwise specified, or if it does not contradict its actual function or internal logic in the relevant description, the transmission and acquisition / reception operations involved in the processor can be understood as processor output and reception, input and other operations, or as transmission and reception operations performed by radio frequency circuits and antennas. This application does not limit them in this regard.
[0047] In a seventh aspect, a computer-readable storage medium is provided that stores program code for execution by a device, the program code including a method for performing any of the above-described implementations of the first to second aspects.
[0048] Eighthly, a computer program product containing instructions is provided, which, when run on a computer, causes the computer to perform the method provided by any of the above implementations of the first to second aspects.
[0049] Ninth aspect, a chip is provided, the chip including a processor and a communication interface, the processor reads instructions stored in a memory through the communication interface and executes the method provided by any of the above implementations of the first to second aspects.
[0050] Optionally, as one implementation, the chip also includes a memory that stores computer programs or instructions. The processor is used to execute the computer programs or instructions stored in the memory. When the computer programs or instructions are executed, the processor is used to execute the methods provided by any of the above implementation methods.
[0051] In a tenth aspect, a communication system is provided, comprising a transmitting end device as described in the first aspect above and a receiving end device as described in the second aspect. Attached Figure Description
[0052] Figure 1 is a schematic diagram of an application scenario applicable to the embodiments of this application.
[0053] Figure 2 is a schematic diagram of the process of generating codewords to be transmitted in a WLAN according to an embodiment of this application.
[0054] Figure 3 is a schematic diagram of a segmentation-based filling method provided in an embodiment of this application.
[0055] Figure 4 is a schematic diagram of another piecewise filling method provided in an embodiment of this application.
[0056] Figure 5 is a schematic diagram of codeword transmission under another padding processing method provided in the embodiments of this application.
[0057] Figure 6 is a schematic diagram of a filling method based on check bits provided in an embodiment of this application.
[0058] Figure 7 is a schematic diagram of the number of encoded bits under simulation conditions provided in an embodiment of this application.
[0059] Figure 8 is a schematic diagram illustrating the change in the number of OFDM symbols during an encoding process provided in an embodiment of this application.
[0060] Figure 9 is a schematic diagram of the number of bits filled in the post-padding step of forward error correction coding according to an embodiment of this application.
[0061] Figure 10 is a schematic diagram of the code rate change during the encoding process under different padding methods provided in the embodiments of this application.
[0062] Figure 11 is a schematic diagram of signal-to-noise ratio fluctuation under different filling methods provided in the embodiments of this application.
[0063] Figure 12 is a schematic diagram of the communication device provided in an embodiment of this application.
[0064] Figure 13 is a schematic diagram of the communication device provided in an embodiment of this application.
[0065] Figure 14 is a schematic diagram of a chip system provided in an embodiment of this application. Detailed Implementation
[0066] To facilitate understanding of the embodiments of this application, the following points will be explained first.
[0067] First, in this application, "for indicating" can include both direct and indirect indication. When describing an indication message as indicating A, it can include whether the indication message directly indicates A or indirectly indicates A, but does not necessarily mean that the indication message carries A.
[0068] The information indicated by the instruction 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 be indirectly indicated by indicating other information, where there is a relationship between the other information and the information to be instructed. It can also indicate only a part of the information to be indicated, while the other parts are known or pre-agreed upon. For example, the instruction of specific information can be achieved by using a pre-agreed (e.g., protocol-defined) arrangement of various pieces of information, thereby reducing instruction overhead to some extent. At the same time, common parts of various pieces of information can be identified and indicated uniformly to reduce the instruction overhead caused by individually indicating the same information.
[0069] Second, in this application, "at least one" refers to one or more, and "more than one" refers to two or more (including two). Furthermore, in the embodiments of this application, "first," "second," and various numerical designations (e.g., "#1," "#2," etc.) are merely for descriptive convenience and are not intended to limit the scope of the embodiments of this application. The sequence numbers of the processes below do not imply the order of execution; the execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application. It should be understood that the objects described in this way can be interchanged where appropriate to describe solutions other than those in the embodiments of this application. Moreover, in the embodiments of this application, terms such as "S410" are merely identifiers for descriptive convenience and do not limit the order of execution steps.
[0070] Third, in the embodiments of this application, the words "exemplary" or "for example" are used to indicate that they are examples, illustrations, or descriptions. Any embodiment or design that is described as "exemplary" or "for example" in this application should not be construed as being more preferred or advantageous than other embodiments or design options. Specifically, the use of the words "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.
[0071] Fourth, in the embodiments of this application, the terms "of", "corresponding (relevant)", "corresponding", and "associate" can sometimes be used interchangeably. It should be noted that when their differences are not emphasized, their intended meanings are consistent.
[0072] Fifth, in the embodiments of this application, "under the circumstances", "when", and "if" can sometimes be used interchangeably. It should be noted that when the distinction is not emphasized, their intended meanings are consistent.
[0073] Sixth, the term "and / or" in this article is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. Additionally, the character " / " in this article generally indicates that the preceding and following related objects have an "or" relationship.
[0074] Seventh, the terms "message", "information", or "information element (IE)" can be used interchangeably in this article. There are no restrictions on the names of messages, information, or frames, as long as they can achieve the corresponding functions.
[0075] Eighth, in this application, "send" and "receive" indicate the direction of signal transmission. For example, "send information to XX" can be understood as the destination of the information being XX, and "send information" can include direct transmission or indirect transmission through other units or modules. "Receive information from YY" can be understood as the source of the information being YY, and "receive information" can include direct reception from YY or indirect reception from YY through other units or modules. Besides air interface transmission or reception signals implemented at the whole-machine level such as network devices or terminal devices, "send" can also be understood as the "output" of a chip interface, and "receive" can also be understood as the "input" of a chip interface. For example, a modem or system-on-a-chip (SoC) chip or system-in-package (SIP) chip transmits or receives signals. "Send" or "receive" can also be performed through device components, for example, by using buses, traces, or interfaces to transmit or receive signals through several parts, modules, or chips of a device.
[0076] Ninth, in the accompanying drawings relating to the message structure in the embodiments of this application, some examples of field lengths in the message are given. It should be understood that the byte lengths shown in the accompanying drawings of the embodiments of this application are merely examples, and in actual applications, the length of any byte may vary.
[0077] Tenth, the accompanying drawings of the message structure in the embodiments of this application provide examples of field names in the message. It should be understood that the field names shown in the accompanying drawings of the embodiments of this application are merely examples, and in actual applications, the name of any field may change.
[0078] The technical solutions in this application will now be described with reference to the accompanying drawings.
[0079] The technical solutions provided in this application can be applied to wireless local area network (WLAN) scenarios. For example, they support IEEE 802.11 related standards, such as 802.11ax, 802.11be (Wi-Fi 7), also known as Extremely High Throughput (EHT), 802.11bn (Wi-Fi 8), or the next-generation Wi-Fi 8 standard. They also include 802.11ad, 802.11ay standards, or Integrated mmWave (IMMW) protocols or Spark Link / Near Link protocols. They can also be applied to wireless personal area network systems based on ultra-wideband (UWB), such as the 802.15 series standards, and to sensing systems, such as the 802.11bf series standards. The 802.11ax standard is known as the high-efficiency (HE) standard, and the 802.11be standard is known as the extremely high throughput (EHT) standard. 802.11bf includes two main categories: low-frequency (e.g., sub7GHz) and high-frequency (e.g., 60GHz) standards. Sub7GHz implementations primarily rely on 802.11ac, 802.11ax, 802.11be, and next-generation standards, while 60GHz implementations primarily rely on 802.11ad, 802.11ay, and next-generation standards. 802.11ad can also be called the directional multi-gigabit (DMG) standard, and 802.11ay can also be called the enhanced directional multi-gigabit (EDMG) standard.
[0080] Although the embodiments of this application are primarily illustrated using the deployment of WLAN networks, particularly those employing the IEEE 802.11 system standard, those skilled in the art will readily understand that the various aspects involved in the embodiments of this application can be extended to other networks employing various standards or protocols, such as high-performance radio local area networks (HIPERLANs), wireless wide area networks (WWANs), wireless personal area networks (WPANs), or other networks now known or developed in the future. Therefore, regardless of the coverage area and wireless access protocol used, the various aspects provided in the embodiments of this application can be applied to any suitable wireless network.
[0081] The technical solutions of this application embodiment can also be applied to various communication systems, such as: WLAN communication systems, wireless fidelity (Wi-Fi) systems, 5th generation (5G) systems or new radio (NR) systems, next-generation communication systems, Internet of Things (IoT) networks or vehicle-to-everything (V2X) networks, etc.
[0082] The communication systems described above that are applicable to this application are merely illustrative examples, and the communication systems applicable to this application are not limited to these. They will be uniformly described here and will not be repeated below.
[0083] In the field of channel coding, low-density parity check (LDPC) codes are the most mature and widely used channel coding scheme. LDPC codes have performance close to the Shannon limit and have many advantages, such as good error rate performance without deep interleaving, good frame error rate performance, and support for parallel decoding, resulting in low decoding latency. Therefore, IEEE protocols such as 802.11n, 802.11ac, and 802.11ax have proposed LDPC codes as the standard channel coding scheme for wireless local area networks (WLANs).
[0084] Figure 1 is a schematic diagram of a communication system applicable to an embodiment of this application. The communication system includes an encoding end and a decoding end. The encoding end can be a transmitting end, and the corresponding decoding end can be a receiving end. The encoding end is not limited to one or more, and the decoding end is not limited to one or more. For example, one of the encoding end and the decoding end can be an access point (AP) in a WLAN scenario, and the other can be a station (STA). Embodiments of this application are applicable to wireless communication between an AP and a STA. Optionally, it can include communication scenarios such as the AP communicating with a single STA, or the AP communicating with multiple STAs. Communication between the AP and multiple STAs can further include downlink transmission of signals from the AP to one or more STAs, and uplink transmission of signals from one or more STAs to the AP. Figure 1(a) shows a scenario where an AP communicates with a single STA. Figure 1(b) shows a scenario where an AP communicates with multiple STAs. In the embodiments described below, the encoding end can be the STA in the uplink transmission shown in Figure 1, or it can be the AP in the downlink transmission.
[0085] For example, an Access Point (AP) can serve as an access point for a STA (such as a mobile phone) to access a wired (or wireless) network. It is primarily deployed in homes, buildings, and campuses, with a typical coverage radius of tens to hundreds of meters. Of course, it can also be deployed outdoors. An access point acts as a bridge connecting wired and wireless networks, its main function being to connect various wireless network clients together and then connect the wireless network to the Ethernet. Specifically, an access point can be a terminal device (such as a mobile phone) or a network device (such as a router) with a Wi-Fi chip. Access points can be devices that support the 802.11be standard. Access points can also be devices that support various WLAN standards of the 802.11 standard, such as 802.11bp, 802.1bn, 802.11be, 802.11ax, 802.11ac, 802.11n, 802.11g, 802.11b, and 802.11a. An access point (AP) is a device with wireless communication capabilities. The AP can be a complete device, or it can be a chip, processing system, or functional module installed within a complete device. The device with these chips, processing systems, or functional modules installed can implement the methods and functions of the embodiments in this application under the control of these chips, processing systems, or functional modules. The access point in this application can be an AMP AP, a high-efficiency (HE) AP, or an extremely high-throughput (EHT) AP, or it can be an access point applicable to a future generation of Wi-Fi standards.
[0086] For example, the STA can be a wireless communication chip, a wireless sensor, or a wireless communication terminal, and can also be referred to as a user. For example, the site can be a mobile phone supporting Wi-Fi communication, a tablet computer supporting Wi-Fi communication, a set-top box supporting Wi-Fi communication, a smart TV supporting Wi-Fi communication, a smart wearable device supporting Wi-Fi communication, an in-vehicle communication device supporting Wi-Fi communication, a computer supporting Wi-Fi communication, a tag supporting Wi-Fi communication, a sensor supporting Wi-Fi communication, etc. Optionally, the site can support various wireless local area networks (WLAN) standards of the 802.11 family, such as 802.11bp, 802.11bn, 802.11be, 802.11ax, 802.11ac, 802.11n, 802.11g, 802.11b, and 802.11a. The STA in this application can be an HE STA supporting AMP or an EHT STA supporting AMP, or it can be an STA supporting AMP that is compatible with a future generation of Wi-Fi standards. A STA is a device with wireless communication capabilities. The STA can be a complete device, or it can be a chip, processing system, or functional module installed in a complete device. Devices with these chips, processing systems, or functional modules installed can implement the methods and functions of the embodiments of this application under the control of the chips, processing systems, or functional modules.
[0087] Referring to Figure 2, which is a schematic diagram of the process of generating codewords to be transmitted in WLAN. The codewords to be transmitted are the codewords required by the receiver. They are generated by the transmitter through processes such as LDPC encoding and puncturing. LDPC encoding occurs during the transmission of data bits at the physical layer of the transmitter. These data bits are carried as code blocks on PSDUs by the media access control (MAC) layer of the transmitter and sent to the physical layer for the aforementioned LDPC encoding.
[0088] The generation process of the codeword to be transmitted is summarized below with reference to Figure 2. Figure 2(a) includes steps 1 and 2 of the above generation process, and Figure 2(b) includes step 3 of the above generation process.
[0089] Step 1: Receive a code block from the Media Access Control layer, which contains data bit information that needs to be transmitted from the sender to the receiver.
[0090] Step 2: Divide the code block into multiple codewords with the same number of data bits. Each codeword corresponds to data bit #a, data bit #b, data bit #n, etc. Then, add cyclic redundancy check (CRC) bits to each codeword. Finally, calculate the length L of the data bits in each codeword. LDPC And the number of codewords N CW .
[0091] Step 3: Add shortening zero bits to the above codewords. Taking the codeword containing data bit #a as an example, fill a certain number of zeros into the matrix to which the data bits of the codeword belong, so as to meet the number of data bits required to enter the encoder.
[0092] Step 4: Encode the codeword obtained in Step 3 with the parity bit, then delete the shortened 0 bit mentioned above, and finally generate the first codeword. The above encoding process can be called LDPC encoding.
[0093] Step 5: After generating the first codeword through the above steps, the number of encoded bits in the first codeword is compared with the number of encoded bits required by the receiver. The number of encoded bits in the first codeword can be the sum of the number of data bits and the number of parity bits. If the number of encoded bits in the first codeword is less than the number required by the receiver, repeat bits are added to the first codeword. These repeat bits carry information from a portion of the data bits in the first codeword. Alternatively, if the number of encoded bits in the first codeword is greater than the number required by the receiver, the first codeword is perforated, and some of the parity bits are perforated to ensure that the number of encoded bits in the first codeword matches the number required by the receiver. In other words, the number of encoded bits in the first codeword is the same as the number required by the receiver. This can be understood as the first codeword that meets the receiver's bit requirement being the codeword to be transmitted.
[0094] It should be understood that the method used to generate the first codeword in the codeword containing data bits #b, data bits #n, etc., can be the same as the method used to generate the first codeword in the codeword containing data bit #a.
[0095] However, during the process of punching the first codeword in step 5, over-punching may occur. In other words, the number of encoded bits of the first codeword after over-punching is less than the number of encoded bits required by the receiver.
[0096] According to formula (1) or formula (2), it can be determined whether the first character has excessive punching: N punc,init>0.3×N CW ×L LDPC ×(1-R init (2)
[0097] Where, N punc,init N represents the number of parity bits punched during the over-punching process. CW L is the number of encoded bits in the first codeword before punching. LDPC R is the code length of the first codeword. init N is the bitrate of the first codeword. shrt To shorten the number of 0 bits. If N punc,init If formula (1) or (2) is satisfied, then the first code character exhibits over-punching during the punching process.
[0098] In this case, embodiments of this application propose a filling method for excessive perforation.
[0099] To facilitate understanding of the technical solutions in the embodiments of this application, the orthogonal frequency division multiplexing (OFDM) symbols involved in the embodiments of this application will be briefly described first.
[0100] OFDM symbols consist of a set of orthogonal subcarriers. Because the subcarriers are mutually orthogonal, they can transmit information simultaneously on the same frequency band, achieving efficient spectrum utilization and avoiding mutual interference.
[0101] During the LDPC encoding transmission and reception process, the transmitting end, i.e., the encoding end, determines the number of bytes to be transmitted. This number of bytes can be the number of data bits in the code block sent from the Media Access Control layer to the physical layer as shown in Figure 2. Then, using OFDM symbols as units, the corresponding number of data bits are LDPC encoded, and the OFDM symbol carrying the LDPC encoded bits is sent to the receiving end.
[0102] Figure 3 is a schematic diagram of a padding method for addressing excessive puncturing. In this method, after excessive puncturing occurs in the first codeword, the first OFDM symbol carrying the first codeword undergoes segment-based padding. The segment-based padding method includes two padding steps: pre-forward error correction padding (pre-FEC padding) and post-forward error correction padding (post-FEC padding). It should be understood that there can be multiple OFDM symbols carrying the first codeword, and each of these multiple OFDM symbols can include multiple subcarriers for carrying the first codeword. The first OFDM symbol can be the last OFDM symbol among these multiple OFDM symbols. In fragmented padding, the multiple subcarriers of the first OFDM symbol can be divided into four fragmented regions. Parity bits are then sequentially padded to the first codeword carried on the subcarriers in each of the four fragmented regions until the total number of coded bits for the first OFDM symbol is the same as the number of coded bits required by the receiver for each OFDM symbol among multiple OFDM symbols. Furthermore, the final number of coded bits carried on the subcarriers in each fragmented region of the first OFDM symbol is the same or similar. This can be understood as follows: in this case, the total number of coded bits for all OFDM symbols carrying the first codeword meets the receiver's requirements.
[0103] As an example rather than a limitation, Figure 3 shows the last OFDM symbol formed after over-puncturing of the first codeword, i.e., the first OFDM symbol. After filling the four segments of this first OFDM symbol, the bits carrying the first codeword on the first OFDM symbol can be divided into remaining bits (RB) after over-puncturing and padding bits. The remaining bits can be the number of coded bits of the first codeword before padding, and the padding bits are the parity bits to be filled in the two padding steps mentioned above. When the sum of the number of padding bits and the number of remaining bits is the same as the number of coded bits of the first codeword that the receiver needs to carry for each OFDM symbol in multiple OFDM symbols, the number of coded bits of the first OFDM symbol falls on the last segment of the four segments, i.e., the fourth segment, indicating that the first OFDM symbol has reached the maximum number of coded bits of the first codeword under the current modulation mechanism. For the relationship between the modulation mechanism and the maximum number of coded bits, refer to the description following formula (7).
[0104] The following section, with reference to Figure 3, details the forward error correction coding padding steps in the above-mentioned piecewise padding process.
[0105] (1) The transmitting end first calculates the number of encoded bits of the first codeword carried by the first OFDM symbol after over-puncturing according to formula (3), which is also the number of remaining bits after over-puncturing. N RB =mod(8·APEP_LENGTH+N) tail,cw +N service,cw N DBPS,init (3)
[0106] In formula (1), N RB This indicates the number of encoded bits in the first OFDM symbol after over-punching of the first codeword; APEP_LENGTH indicates the number of bytes of pre-end of frame padding in an aggregated-medium access control protocol data unit (A-MPDU) frame, which can be understood as the number of bytes of data bits to be transmitted by the MAC layer; N tail,cw This indicates the number of bits at the end of the encoding; for LDPC encoding, this value can be 0; N service,cw The number of bits in the service field on the Physical Layer Service Data Unit (PSDU) for transmitting the first codeword; this value is 16; N DBPS In this embodiment, N represents the number of data bits per symbol (DBPS) on each OFDM symbol. DBPS This refers to the number of data bits contained in each OFDM symbol after the fragmentation-based padding process. It can also be understood as the number of data bits corresponding to each OFDM symbol among the multiple OFDM symbols received by the receiver.
[0107] (2) The sending end is based on N RB And with formulas (4) and (5), the initial fill factor a of the first OFDM symbol can be calculated. init And the initial number of OFDM symbols.
[0108] Where, N DBPS,short N represents the number of data bits on the first OFDM symbol mentioned above. DBPS,short =N CBPS,short ·R init R init N is the bitrate of the first codeword; CBPS,short =N SD,short ·N SS,init ·N BPSCS,init NCBPS,short N represents the number of coded bits on the subcarrier carrying data bits in the first OFDM symbol described above. SD,short N is the number of subcarriers that carry data bits in the first OFDM symbol, predefined in the communication protocol standard for a corresponding resource unit (RU) or multiple resource unit (MRU); SS,init N is the number of spatial streams used to transmit the first codeword. BPSCS,init The number of coded bits per subcarrier per spatial stream, in this embodiment, is N. BPSCS,init N is the number of coded bits on each subcarrier included in each OFDM symbol carrying the first codeword. SYM,init This represents the number of OFDM symbols corresponding to the first codeword before padding.
[0109] Based on formulas (2) and (3), it can be understood that when the remaining bits of the first OFDM symbol carrying the first codeword, that is, the number of encoded bits carrying the first codeword before the above two padding steps, are 0, the initial padding coefficient a init The initial padding coefficient a is 4. When the first OFDM symbol carrying the first codeword has a number of encoded bits in its four segmented regions before the two padding steps mentioned above, the initial padding coefficient a is 4. init Less than 4, its value can be
[0110] (3) The first OFDM symbol carrying the first codeword needs to be padded with N bits using the following formula (6). avbits,padding After completing the two filling steps described above, the number of punctured check bits N of the first codeword is recalculated using formula (7). punc Among them, N avbits,padding N represents the number of bits padded to the first OFDM symbol in the case of excessive puncturing of the first codeword. This number of padded bits can be a set of parity bits. punc To fill N with the first codeword carried by multiple OFDM symbols before over-punching. avbits,padding The number of parity bits that were actually punched in the first codeword mentioned above. N punc =max(0,(N) CW ×L LDPC )-N avbits -N shrt (7)
[0111] Where, N CBPSIn this embodiment of the application, N represents the number of code bits per symbol (CBPS). CBPS The number of coded bits corresponding to each OFDM symbol among multiple OFDM symbols received by the receiver can also be understood as the number of padding bits N. avbits,padding The number of coded bits for each OFDM symbol in a series of subsequent OFDM symbols. A method for determining N. CBPS The method is, N CBPS The OFDM symbols other than the first OFDM symbol among the multiple OFDM symbols carrying the first codeword can be determined. It is important to note that the number of coded bits N required by the receiver for each OFDM symbol varies depending on the modulation and coding rates. CBPS The difference, used as an example rather than a limitation, is in BPSK modulation with a coding rate of 1 / 2, N CBPS For example, in 64QAM modulation, the coding rate is 3 / 4, N. CBPS It is 432 bits. N CW L represents the number of encoded bits of the first codeword carried by multiple OFDM symbols before puncturing. LDPC The code length of the data bits in the first codeword.
[0112] Furthermore, the transmitting end calculates the first padding coefficient a and N according to the following formula (8). SYM :
[0113] Where, N SYM The number of OFDM symbols corresponding to the first codeword after completing the above two filling steps.
[0114] Based on formulas (6) and (8), it can be understood that when the initial filling coefficient a init When the value is 4, the first padding factor a is 1. The first padding factor can also be called the actual padding factor, which means that the number of bits that can be filled in the first segment of the first OFDM symbol carrying the first codeword is filled to the maximum value, and the number of parity bits filled is N. avbits,padding And when the initial fill factor a init When the value is less than 4, the number of parity bits to be padded is N. avbits,padding The first fill factor 'a' is then a init +1 indicates that the first fill factor is based on fill N. avbits,padding The number of bits in the first OFDM symbol is determined by the fragment position it falls on. For example, if the number of bits in the padded first OFDM symbol falls on the second fragment, it means that the number of encoded bits on the second fragment has reached the maximum number of bits that can be accommodated, and the first padding coefficient 'a' is 2. Similarly, it can be seen that when padding N... avbits,paddingSubsequently, when the number of bits in the first OFDM symbol falls on the third and fourth fragments, the first padding coefficient a is 3 and 4, respectively.
[0115] The above padding method is the forward error correction coding padding step in the fragmentation-based padding process. In this step, when the first padding coefficient 'a' is not equal to 4, it indicates that the first OFDM symbol carrying the first codeword has not been padded to the maximum number of coded bits that the first OFDM symbol can accommodate. That is, the number of coded bits of the first OFDM symbol does not meet the number of coded bits required by the receiver for each of the multiple OFDM symbols to carry the first codeword. In other words, the number of coded bits of the first codeword carried by the multiple OFDM symbols is still less than the number of coded bits required by the receiver. Here, the number of coded bits of the first OFDM symbol is the sum of the number of coded bits on its four fragments, and the maximum number of coded bits that the first OFDM symbol can accommodate is the sum of the maximum number of coded bits on its four fragments. In this case, the backward error correction coding padding step will continue to pad the first OFDM symbol to reach its maximum number of coded bits, that is, to make the number of coded bits of the first codeword carried by the multiple OFDM symbols the same as the number of coded bits required by the receiver. After the first codeword with excessive puncturing is encoded with the parity bits filled in the above two steps, a second codeword is generated. This second codeword meets the number of encoded bits required by the receiver.
[0116] Furthermore, the transmitting end will embed the generated second codeword onto a physical layer protocol data unit (PPDU) and send it to the receiving end. For example, this PPDU can be a High Efficiency PPDU (HE PPDU) introduced in the 802.11ax standard. The preamble of the HE PPDU includes HE SIG-A (High Efficiency Signal A). HE SIG-A is a new field introduced in the 802.11ax standard, used to transmit detailed information about the PPDU. For example, the B8 bits of HE SIG-A carry information about LDPC extra symbol segments. When the value of the LDPC extra symbol segment is 1, it can indicate to the receiving end that the transmitting end has performed the above-mentioned fragmentation-based padding process. For example, bits B11 and B12 of HE SIG-A carry information about the first padding coefficient in the aforementioned fragmentation-based padding process. Therefore, the receiving end can use the numerical information of the first padding coefficient provided by bits B11 and B12 to calculate the code length of the data bits after decoding the second codeword, thereby completing the decoding of the second codeword and obtaining the data information carried by the data bits.
[0117] The following section will detail the process of calculating the code length of the second codeword during decoding at the receiving end.
[0118] (1) The receiving end first determines the second filling coefficient a based on formula (9). RX The second padding factor can be used by the receiver to determine the number of data bits on the first OFDM symbol carrying the second codeword. It should be noted that the first OFDM symbol of the second codeword corresponds to the first OFDM symbol of the first codeword; that is, the first OFDM symbol of the second codeword can be generated from the first OFDM symbol of the first codeword after over-puncturing, based on fragmentation padding processing.
[0119] (2) The receiver calculates the number of data bits on the first OFDM symbol carrying the second codeword based on formula (10).
[0120] Where, N DBPS,last,RX N is the number of data bits on the first OFDM symbol carrying the second codeword. SS,RX The spatial stream number for transmitting the second codeword; R RX N is the bitrate of the second codeword; BPSCS,RXThe number of coded bits on each subcarrier included in the OFDM symbol carrying the second codeword.
[0121] (3) The receiver calculates the number N of OFDM symbols corresponding to the second codeword based on formula (11). SYM,RX .
[0122] Where, N SYM This represents the number of OFDM symbols carrying the first codeword after the piecewise padding process.
[0123] (4) The receiving end calculates the code length of the second codeword based on formula (12).
[0124] Among them, PSDU LENGTH N is the code length of the data bits after decoding the second codeword, or the length of the PSDU on the PPDU carrying the second codeword. tail N is the number of tail bits on the PPDU used to transmit the second codeword. service The number of bits in the service field of the PPDU for transmitting the second codeword.
[0125] In the padding process described in Figure 3, padding the first codeword often requires two steps: forward error correction coding padding and backward error correction coding padding. For example, in the forward error correction coding padding step, if the remaining bits of the first OFDM symbol are 0, the first padding coefficient is only 1. That is, in this step, the number of coded bits of the first segment region can only be filled up to the maximum number of bits it can accommodate. The number of bits of the remaining three segment regions needs to be filled up to the maximum number of bits they can accommodate in the backward error correction coding padding step, so that the number of coded bits of the first codeword carried by multiple OFDM symbols is the same as the number of coded bits required by the receiver. In the above process, multiple padding steps will cause the PSDU to change multiple times, and a large number of parity bits may be filled in the backward error correction coding step, resulting in a large fluctuation in the PSDU. This can be understood as the number of bits in the first codeword changing multiple times, and the number of padding bits in the backward error correction coding step of the first codeword may be more than the number of padding bits in the forward error correction coding padding step. The multiple changes in PSDU mean that when the receiver is decoding, the signal-to-noise ratio required by the receiver during decoding will fluctuate to a certain extent, which will lead to a decrease in communication quality.
[0126] In this case, referring to Figure 4, this application embodiment proposes another filling method for excessive puncturing. In the forward error correction coding filling step, the first OFDM symbol after excessive puncturing can be filled to its maximum number of bits. This avoids filling the first OFDM symbol in the backward error correction coding filling step or reduces the number of parity bits filled in the backward error correction coding filling step, thereby reducing the number and magnitude of PSDU changes.
[0127] It should be understood that the first OFDM symbol can be the last OFDM symbol among multiple OFDM symbols corresponding to the first codeword. As an example and not a limitation, this embodiment will use the first OFDM symbol as the last OFDM symbol to describe the filling method.
[0128] The fragment-based padding method includes two padding steps: forward error correction coding padding and backward error correction coding padding. In this embodiment, during the forward error correction coding padding step, the first codewords carried on the first to fourth fragments of the first OFDM symbol are padded, that is, the number of coded bits carried by the first OFDM symbol after padding reaches its maximum capacity. This can also be understood as padding the number of coded bits carried by the first OFDM symbol to meet the N... CBPS Among them, N CBPS In this embodiment of the application, N represents the number of code bits per symbol (CBPS). CBPS The number of coded bits corresponding to each OFDM symbol among multiple OFDM symbols received by the receiving end can be composed of the number of coded bits of the first codeword and the number of bits of the first padding number.
[0129] After the aforementioned forward error correction coding padding step, the number of coded bits carried by the first OFDM symbol is the same as the number of coded bits carried by the first codeword in other OFDM symbols, and the number of coded bits on the multiple OFDM symbols carrying the first codeword can meet the requirements of the receiver.
[0130] The following, with reference to Figure 4, details the piecewise filling process provided in this application embodiment. As shown in Figure 4, the method includes the following steps.
[0131] S410, the transmitting end generates a second codeword based on the first padding number and the first codeword.
[0132] As an example and not a limitation, the first codeword is obtained based on a low-density parity-check (LDPC) code. The first codeword corresponds to multiple orthogonal frequency division multiplexing (OFDM) symbols, including the first OFDM symbol. The number of bits carried in the first OFDM symbol after padding with a first number of parity bits conforms to N. CBPS N CBPS The first padding number is the number of bits corresponding to each OFDM symbol among the multiple OFDM symbols received by the receiver. The first padding number is determined based on the initial padding factor. When the initial padding factor is less than 4, the first padding number is determined based on the initial padding factor.
[0133] Specifically, the first padding number can be the number of coded bits that need to be padded in the first OFDM symbol carrying the first codeword. In other words, after the first codeword is padded with the parity bits based on the first padding number, the number of bits carried in the first OFDM symbol conforms to N. CBPS This can be understood as follows: after the first codeword is padded with a first number of parity bits, the number of encoded bits of the multiple OFDM symbols carrying the first codeword meets the number of encoded bits required by the receiver. In other words, the number of encoded bits of the multiple OFDM symbols carrying the first codeword is the same as the number of encoded bits required by the receiver.
[0134] One implementation is that when the initial fill factor is less than 4, the first fill number can be determined based on the initial fill factor, where the first fill number N is... avbits,padding With the initial fill factor a init The relationship between N satisfies the following condition: avbits,padding =m STBC ·(N CBPS -a init ·N CBPS,short (13)
[0135] Where, m STBC The number of block codes when N is empty. CBPS,short N is the number of coded bits on the subcarrier carrying data bits in the first OFDM symbol. CBPS This refers to the number of coded bits corresponding to each OFDM symbol among multiple OFDM symbols received by the receiver. It can also be understood as the number of coded bits on the first OFDM symbol after padding.
[0136] For example, when the transmitting end communicates with the receiving end and does not use multiple antennas to transmit a copy of the first codeword, m STBC The value is 1. If there are remaining bits in the first OFDM symbol, i.e., N RBIf the value is not 0, then the number of parity bits needs to be filled from the position of the remaining bit in the segment region up to the fourth segment region. The initial filling coefficient a can be obtained by formula (3). init The value of N is less than 4. CBPS,short The number N can be determined by the number of bits on each subcarrier included in the OFDM symbol carrying the first codeword. CBPS,short The following conditions must be met: N CBPS,short =N SD,short ·N SS,init ·N BPSCS,init N SD,short N is the number of subcarriers that carry data bits in the first OFDM symbol, predefined in the communication protocol standard for a corresponding resource unit (RU) or multiple resource unit (MRU); SS,init N is the number of spatial streams used to transmit the first codeword. BPSCS,init The number of bits on each subcarrier included in the OFDM symbol carrying the first codeword.
[0137] Another implementation is that when the initial fill factor is 4, the first fill number N is... avbits,padding The following conditions must be met: N avbits,padding =m STBC ·N CBPS (14)
[0138] Specifically, if the number of remaining bits on the first OFDM symbol carrying the first codeword is 0, then bits need to be padded from the first segment up to the fourth segment. Therefore, the first padding number is m. STBC ·N CBPS .
[0139] Furthermore, in the aforementioned pre-FEC padding step, after padding the first OFDM symbol, the number of coded bits for each OFDM symbol among the multiple OFDM symbols carrying the first codeword conforms to N. CBPSHowever, this does not necessarily mean that the total number of coded bits of the multiple OFDM symbols carrying the first codeword has reached the number of coded bits required by the receiver. That is, even after the first OFDM symbol carrying the first codeword is padded to the fourth segment, it may still not meet the number of coded bits required by the receiver. In this case, a backward error correction coding post-padding step is used to continue padding the first OFDM symbol with the number of check bits until it meets the number of coded bits required by the receiver. It should be noted that, in this case, although the padding method in Figure 3 also uses two-step padding, the method in this embodiment fills the fourth segment region with the number of coded bits of the first OFDM symbol carrying the first codeword in the forward error correction coding pre-padding step, thereby minimizing the number of check bits that need to be filled in the backward error correction coding padding step, and may even avoid the execution of the backward error correction coding padding step altogether. Therefore, regardless of whether the backward error correction coding padding step is performed, the method described in this embodiment can reduce the fluctuation of the signal-to-noise ratio required by the receiver for decoding. The one-step padding method that only performs the forward error correction coding padding step reduces the number of PSDU changes, while the two-step padding method reduces the magnitude of PSDU changes.
[0140] Furthermore, after determining the first padding number, the first codeword after excessive puncturing is first re-encoded with the parity bit corresponding to the first padding number to generate the second codeword. It should be noted that the embodiments of this application do not limit the type of bit corresponding to the first padding number. The first padding number can also correspond to data bits. For example, the data bits can be the repeating bits of the aforementioned first codeword.
[0141] S420: The transmitting end transmits multiple OFDM symbols, and correspondingly, the receiving end receives multiple OFDM symbols. These multiple OFDM symbols carry a second codeword.
[0142] After generating the second codeword, the number N of parity bits for puncturing the second codeword can be calculated using the above formula (7). punc If the number of parity bits in the puncture matches the target number of the first codeword during the first puncture, it means that the second codeword meets the number of encoded bits required by the receiver. In this case, the transmitter can send multiple OFDM symbols, which carry the second codeword.
[0143] Based on the above embodiments, by filling the fourth segment region with the first OFDM symbol corresponding to the first codeword in the pre-padding step of forward error correction coding, the number of bits of the first codeword after padding conforms to N. CBPSThis reduces the number of bits that need to be padded in the forward error correction coding post-padding step to a minimum or avoids the execution of the forward error correction coding post-padding step. Therefore, it can effectively reduce the number of PSDU changes and / or the change magnitude, thereby reducing the signal-to-noise ratio fluctuation during receiver decoding.
[0144] Optionally, the method 400 further includes: S430, the receiving end obtains the first codeword by parsing the second codeword carried by multiple OFDM symbols.
[0145] The method 400 described above will be explained in detail below with reference to Figure 5. As shown in Figure 5, method 500 includes the following steps.
[0146] S510, the transmitting end determines the number of remaining bits of the first codeword after over-puncturing, the initial padding factor, and the number of OFDM symbols corresponding to the first codeword after over-puncturing.
[0147] Optionally, the number of remaining bits N of the first OFDM symbol after over-puncturing can be determined sequentially using formulas (3), (4), and (5) as shown in Figure 3. RB Initial fill factor a init The number N of OFDM symbols corresponding to the first codeword after over-punching SYM,init .
[0148] For example, in formula (3), the number of bytes of data bits to be transmitted by the MAC layer, APEP_LENGTH, can be the number of data bits of the first codeword, N. DBPS In this embodiment, N represents the number of data bits per symbol (DBPS) on each OFDM symbol. DBPS N is the number of data bits in each OFDM symbol among multiple OFDM symbols, satisfying the following condition: DBPS =N CBPS ·R init , where R init N represents the bitrate of the first codeword after over-punching. CBPS The number of coded bits corresponding to each OFDM symbol among multiple OFDM symbols received by the receiver can also be understood as the number of coded bits on the first OFDM symbol after padding. One way to determine N... CBPS The method is that when the first OFDM symbol to be filled is the last OFDM symbol carrying the first codeword, N CBPS The OFDM symbol can be determined from the OFDM symbols other than the first OFDM symbol among the multiple OFDM symbols carrying the first codeword. It is important to note that the number of coded bits N of each OFDM symbol received by the receiver varies depending on the modulation and coding rates. CBPSThe difference, used as an example rather than a limitation, is in BPSK modulation with a coding rate of 1 / 2, N CBPS For example, in 64QAM modulation, the coding rate is 3 / 4, N. CBPS It is 432 bits.
[0149] S520, the transmitting end determines the first padding number of the first OFDM symbol.
[0150] S530, the sending end generates the second codeword.
[0151] The specific implementation methods of S520 and S530 can be referred to S410 above.
[0152] S540: The transmitting end sends the second codeword, and the receiving end receives the second codeword accordingly.
[0153] Optionally, before sending the second codeword, the sending end can first update the number of punctures in the parity bit of the second codeword. If the number of punctures does not meet the target number of the first codeword when it was punctured for the first time, then the sending end sends the second codeword to the receiving end.
[0154] The specific implementation of S540 can be found in S420 above.
[0155] In S550, the transmitting end sends the first parameter, and the receiving end receives the second codeword accordingly.
[0156] Specifically, the first parameter is used to determine the length of the data bits in the second codeword. In the method described in Figure 2, the length of the data bits in the second codeword is determined by a first padding factor. In this embodiment, the first parameter is determined based on the initial padding factor and satisfies the following condition: Δ a =aa init (15)
[0157] Since the method described in this embodiment involves filling the number of coded bits in the first to fourth segments of the first OFDM symbol during the forward error correction coding padding step to the maximum number of bits it can accommodate at the current modulation and coding rate, the first padding coefficient can always be equal to 4. And a init The value of Δ is greater than or equal to 1 and less than or equal to 4, therefore Δ a The value range is greater than or equal to 0 and less than or equal to 3. As an example and not a limitation, the above second codeword can be carried on an HE PPDU and sent to the receiving end, and the first parameter can be transmitted by bits B11 and / or B12 of the HE SIG-A preamble in the PPDU.
[0158] It should be understood that the second codeword and the first parameter can be sent in the same message, that is, S540 and S550 can be executed simultaneously, or the second codeword and the first parameter can be sent in different messages, that is, S540 and S550 can be executed separately. This application embodiment does not limit this.
[0159] S560, the sending end sends the first indication information, and correspondingly, the receiving end receives the first indication information.
[0160] Specifically, the first indication information can be used to indicate to the receiving end that the first parameter is determined based on the initial padding coefficient, that is, to convey to the receiving end that the padding method used by the sending end is the fragmentation-based padding processing method shown in Figure 4 or Figure 5. The receiving end will use different formulas to calculate the code length of the data bits in the second codeword according to different padding methods. As an example and not a limitation, the first indication information can be carried in the B14 bits of HE SIG-A in the PPDU transmitting the second codeword, that is, the reserved bits.
[0161] Optionally, the first indication information can also be used to indicate to the receiving end that the first padding number is determined based on the initial padding coefficient. Therefore, it can also indicate to the receiving end that the padding method used is the piecewise padding processing method described in Figure 4 or Figure 5.
[0162] Optionally, the first indication information can also be used to directly indicate to the receiving end whether the filling method used by the sending end is the method shown in Figure 3 or the method shown in Figure 4, without limiting the specific indication method of the first indication information.
[0163] S570, the receiver determines the second padding factor.
[0164] Specifically, when the receiving end confirms from the received first indication information that the filling method used by the sending end is the method described in Figure 4 or Figure 5, the second filling coefficient a can be determined based on formula (16). RX The second padding factor can be used by the receiver to determine the number of data bits on the first OFDM symbol carrying the second codeword. RX =4-Δ a (16)
[0165] Formula (16) can be combined with formula (15) to obtain a. RX =a init Therefore, the number of data bits of the second codeword carried on the first OFDM symbol can be based on the initial padding factor a. init It is determined that the value of the second filling coefficient is greater than or equal to 1 and less than or equal to 4.
[0166] Optionally, when the receiving end confirms from the received first indication information that the filling method used by the sending end is the method described in Figure 3, the second filling coefficient is calculated using the method described in Figure 3.
[0167] S580, the receiver determines the number of data bits on the first OFDM symbol carrying the second codeword.
[0168] Specifically, based on the second padding factor, the number of data bits on the first OFDM symbol can be determined, and its value can be used to determine the length of the data bits in the second codeword. The number of data bits N on the first OFDM symbol... DBPS,last,RX With the second filling factor a RX The relationship satisfies formula (17):
[0169] Where, N SD,short N is the number of subcarriers that carry data bits in the first OFDM symbol, predefined in the communication protocol standard for a corresponding resource unit (RU) or multiple resource unit (MRU); SS RX represents the spatial stream number for transmitting the second codeword; N BPSCS,RX The number of coded bits per subcarrier per spatial stream, in this embodiment, is N. BPSCS,RX N represents the number of coded bits on each subcarrier carrying the OFDM symbol for the second codeword. DBPS The number of data bits on each OFDM symbol carrying the second codeword data bits.
[0170] One implementation is that if a RX Less than 4, i.e., Δ a If the value is greater than 0, it indicates that the first OFDM symbol already contains the encoded bits of the first codeword before the sender fills the check bits into the first OFDM symbol. Therefore, N is calculated using the method based on the second filling factor. DBPS,last,RX .
[0171] Another implementation is that if a RX It equals 4, that is, Δ aA value of 0 indicates that before the transmitter filled the first OFDM symbol with check bits, there were no data bits or check bits on that first OFDM symbol, and the number of remaining bits on its four corresponding segments was 0. Therefore, when the receiver calculates the number of data bits on the first OFDM symbol corresponding to the second codeword (i.e., the last OFDM symbol), it is actually calculating the number of data bits on the second-to-last OFDM symbol, hence its value is N. DBPS Therefore, in this case, when the receiver decodes the second codeword, in order to ensure the codeword length of the second codeword is accurate, it will pre-calculate the number of OFDM symbols carrying the data bits of the second codeword. The value of this number is the total number of OFDM symbols carrying the second codeword minus one, and the codeword length of the second codeword is calculated using this value.
[0172] S590, the receiver determines the number of OFDM symbols carrying the second codeword data bits.
[0173] Specifically, the receiving end determines the number of OFDM symbols carrying the first codeword transmitted from the sending end, and a RX The value of can determine the number N of OFDM symbols carrying the second codeword data bits. SYM,RX N SYM,RX It can be used to calculate the code length of the second codeword during decoding at the receiving end, and it satisfies the following conditions:
[0174] Where, N SYM After padding the first codeword, the number of OFDM symbols carrying the first codeword can be determined according to formula (8), m STBC The number of block codes when empty.
[0175] One implementation is that if a RX Less than 4, i.e., Δ a If the value is greater than 0, it indicates that the first OFDM symbol contained data bits before the transmitter filled it. Therefore, all OFDM symbols carrying the second codeword contain data bits, and thus N SYM RX equals the number of OFDM symbols carrying the first codeword.
[0176] Another implementation is as described in S470, a RX It equals 4, that is, Δ a When the value is 0, it indicates that there are no data bits on the first OFDM symbol before the transmitter fills it. Therefore, the actual number of OFDM symbols carrying the second codeword data bits is (N). SYM -m STBC(This is an example, not a limitation, of when the sender and receiver communicate without using multiple antennas to transmit a copy of the first codeword, m) STBC The value is 1.
[0177] S591, the receiving end determines the code length of the second codeword.
[0178] Specifically, the receiving end can determine the code length of the second codeword by the number of OFDM symbols carrying the data bits of the second codeword and the number of bits on the first OFDM symbol corresponding to the second codeword. The code length of the second codeword can satisfy the following conditions:
[0179] Among them, PSDU LENGTH N is the code length of the data bits after decoding the second codeword, or the length of the PSDU on the PPDU carrying the second codeword. tail N is the number of tail bits on the PPDU corresponding to the second codeword. service This refers to the number of bits in the service field of the PPDU corresponding to the second codeword.
[0180] One implementation is that if a RX Less than 4, i.e., Δ a If the result is greater than 0, Δ can be determined by integrating formulas (17), (18), and (19). a When it is greater than 0, the first parameter Δ a The code length PSDU of the second codeword LENGTH The relationship satisfies the following conditions:
[0181] Where, N SYM The number of OFDM symbols carrying the first codeword after padding. N is the sign for rounding down. DBPS N represents the number of data bits in each OFDM symbol among multiple OFDM symbols. SD ,short represents the number of subcarriers carrying the data bits of the first OFDM symbol, and the value of T represents the number of bits of the second codeword carried by the first OFDM symbol, padded to the maximum value, where T can be 4. N BPSCS , RX N is the number of bits in the second codeword carried on each subcarrier in the first OFDM symbol. SS RX is the space stream number corresponding to the second codeword, R RX N is the bitrate of the second codeword. tail N is the number of tail bits on the PPDU corresponding to the second codeword. service This refers to the number of bits in the service field of the PPDU corresponding to the second codeword.
[0182] Another implementation is that if a RX It equals 4, that is, Δ a Equal to 0, by integrating formulas (17), (18) and (19), Δ can be determined. a When equal to 0, the first parameter Δ a The code length PSDU of the second codeword LENGTH The relationship satisfies the following conditions:
[0183] Based on the above embodiments, by padding the first OFDM symbol carrying the first codeword with the number of parity bits up to the fourth segment region during the forward error correction coding padding step, the number of coded bits on each OFDM symbol carrying the first codeword after padding conforms to N. CBPS This reduces the number of bits that need to be padded in the backward error correction coding padding step to a minimum or avoids the execution of the backward error correction coding padding step, thereby reducing the fluctuation of the PSDU or the number of fluctuations, and thus reducing the fluctuation of the signal-to-noise ratio required for decoding at the receiver.
[0184] Optionally, the first fill number N is performed after over-drilling. avbits,padding In this codeword, the bits it carries can also be repeat bits, which carry information from a portion of the data bits in the first codeword. Adding repeat bits to the first codeword increases the proportion of data bits, thereby increasing its code rate and accelerating the transmission of the first codeword.
[0185] It should be understood that S510, S550, S560, S570, S580, S590 and S591 in the method described in Figure 5 are optional methods for implementing the embodiments of this application, and the embodiments of this application do not limit the methods implemented in the above steps.
[0186] Furthermore, the methods described in Figures 4 and 5 can not only be used to increase the number of padding bits after excessive puncturing of the first codeword, but also in step 5 of Figure 2. Step 5 involves padding the first codeword with repeat bits after it has been generated if the number of bits in the first codeword is less than the number of bits required by the receiver. These repeat bits carry information about some of the data bits in the first codeword. As shown in Figure 6, a schematic diagram of the padding method based on check bits, in step 5, when the number of encoded bits in the first codeword is less than the number of encoded bits required by the receiver, the method described in Figures 4 and 5 can be used to calculate the number of bits N to be padded. avbits,padding The first codeword is then filled with the corresponding number of parity bits. The first codeword after filling with parity bits has stronger stability than the first codeword after filling with duplicate bits in step 5 of Figure 2.
[0187] The following figures, with reference to Figures 7 to 11, illustrate the signal-to-noise ratio (SNR) fluctuations provided in the embodiments of this application. Simulations were performed using the methods described in Figures 3 and 4, respectively, and the simulations were conducted in a simulation environment with HE SU PPDU format, a transmission bandwidth of 40MHz, and a spatial stream number of 1. Figure 7 shows the number of encoded bits during the simulation using the methods described in Figures 3 and 4; Figure 8 shows the change in the number of OFDM symbols during the encoding process; Figure 9 shows the number of bits padded in the backward error correction coding padding step; Figure 10 shows the change in code rate during the encoding process; and Figure 11 shows the SNR fluctuations.
[0188] As can be seen from the simulation results in Figures 7 to 11, the signal-to-noise ratio fluctuation of the first codeword with the same number of codes is significantly lower when using the method described in Figure 4 than when using the method described in Figure 3.
[0189] Specifically, Figure 7 shows the simulation conditions of the methods described in Figures 3 and 4 under the same PSDU load and the same number of codes. In the method described in Figure 4, the simulation process is divided into two categories: allowing the addition of additional symbols and disallowing the addition of additional symbols. Allowing the addition of additional symbols means that parity bits or data bits can be added during the filling process, while disallowing the addition of additional symbols means that no bits are added during the filling process. According to the change in the number of OFDM symbols during the filling process shown in Figure 8, when adding the same number of OFDM symbols, i.e., performing the first filling number N... avbits,padding In the case of padding, compared to the method described in Figure 3, the scheme of the method described in Figure 4, which allows for the addition of extra symbols, may have smaller PSDU load variations. This is because the method described in Figure 3 may pad parity bits in the backward error correction coding padding step, while the method described in Figure 8 may only need to pad parity bits in the forward error correction coding padding step. The results shown in Figure 9 also indirectly prove the results shown in Figure 8. Figure 9 shows that the method described in Figure 3 usually involves a backward error correction coding padding step, while the simulation results of the two methods described in Figure 4 do not show a backward error correction coding padding step.
[0190] Figures 10 and 11 show the final results of this simulation. Figure 10 shows the change in code rate during the fragmentation filling process, while Figure 11 shows the change in signal-to-noise ratio during the fragmentation filling process. Under the same conditions shown in Figure 7, it can be clearly seen from Figure 10 that the code rate of the method described in Figure 4, which allows the addition of additional symbols, is always lower than or equal to that of the method described in Figure 3. This indicates that during the filling process, the method described in Figure 4 adds more parity bits, which is consistent with the situation in the forward error correction coding filling step of the method described in Figure 4, where parity bits are filled to the fourth fragment for the first OFDM symbol corresponding to the codeword. It is also consistent with the situation in the method described in Figure 3, where parity bits are filled to any fragment from the first to the fourth fragment for the first OFDM symbol carrying the first codeword.
[0191] Based on the results shown in Figure 11, it is clear that the signal-to-noise ratio (SNR) fluctuation required for decoding at the receiving end using the method described in Figure 4 is much smaller than that caused by the method described in Figure 3. In other words, reducing the number or amplitude of PSDU size variations using the method described in Figure 4 can alleviate SNR fluctuations during decoding. As can be seen from the figure, the SNR fluctuation of the method described in Figure 3 is between 1.5 dB and 2.5 dB, while the maximum SNR fluctuation of the method described in Figure 4 does not exceed 1.5 dB. Furthermore, in scenarios involving higher codeword transmission rates, the SNR fluctuation generated by the method described in Figure 3 will be even lower.
[0192] The encoding method provided in the embodiments of this application has been described in detail above. The communication device provided in this application will be described below.
[0193] Figure 12 is a schematic block diagram of the communication device 10 provided in an embodiment of this application.
[0194] The communication device 10 can be an encoding device or a communication device applied to the encoding device to implement the method executed by the encoding device, such as a chip, chip system, or circuit.
[0195] Alternatively, the communication device 10 may be a decoding device, or a communication device applied to the decoding device that can implement the methods executed by the decoding device, such as a chip, chip system, or circuit.
[0196] The device 10 includes a transceiver module 11 and a processing module 12. The transceiver module 11 can realize corresponding communication functions, and the processing module 12 is used for data processing. In other words, the transceiver module 11 is used to perform receiving and sending related operations, and the processing module 12 is used to perform other operations besides receiving and sending. The transceiver module 11 can also be called a communication interface or a communication unit.
[0197] In one possible implementation, the device 10 may further include a storage module 13, which can be used to store instructions and / or data. The processing module 12 can read the instructions and / or data in the storage module to enable the device to perform the actions of the device in the aforementioned method embodiments.
[0198] In one design, the device 10 may correspond to the transmitting end in the above method embodiments, or to a component of the transmitting end (such as a chip).
[0199] The device 10 can implement the steps or processes executed by the sending end in the above method embodiment. The transceiver module 11 can be used to execute the transceiver-related operations of the sending end in the above method embodiment, and the processing module 12 can be used to execute the processing-related operations of the sending end in the above method embodiment.
[0200] In one implementation, the processing module 12 can be used to determine the number N of remaining bits in the first OFDM symbol carrying the first code after over-puncturing. RB The number N of OFDM symbols corresponding to the first codeword before over-punching SYM,init The number of remaining bits N RB The number N of the aforementioned OFDM symbols can be determined based on APEP_LENGTH. SYM,init It can be based on APEP_LENGTH, the number of data bits N contained in each OFDM symbol corresponding to the first codeword after padding. DBPS It's confirmed.
[0201] In another implementation, processing module 12 can be used by the sending end to determine the value of the initial padding coefficient a. init It can be based on the number of remaining bits N RB The number of coded bits N on the subcarrier carrying data bits in the first OFDM symbol. CBPS,short It's confirmed.
[0202] In another implementation, processing module 12 can be used by the sending end to determine the number N bits to be padded in the pre-FEC padding step. avbits,padding In the method described in Figure 3, its value is based on the number of coded bits N of the first OFDM symbol carrying the first codeword. CBPS,short The number of bits N in each OFDM symbol carrying the first codeword after padding. CBPS Space-time block code m STBC It is determined, and in the method described in Figure 4, its value is based on the initial fill factor a. init The number of coded bits N on the subcarrier carrying data bits in the first OFDM symbol. CBPS,short The number of bits N in each OFDM symbol carrying the first codeword after padding. CBPS It's confirmed.
[0203] In another implementation, the processing module 12 can be used by the transmitting end to determine the first padding coefficient a and the number N of OFDM symbols corresponding to the padded first codeword. SYM The first padding factor 'a' can be determined based on the position of the fragmented region where the number of bits in the padded first OFDM symbol falls, and the number N of the aforementioned OFDM symbols... SYM It can be based on the number N of OFDM symbols corresponding to the first codeword before over-punching. SYM,init It's confirmed.
[0204] In another implementation, the processing module 12 can be used by the transmitting end to determine the number of punctures in the first codeword, which can be based on the code length L of the first codeword. LDPC The number of bits N in the first codeword before punching CW The number of bits N that shorten 0 bits shrt The bitrate R of the first codeword init It's confirmed.
[0205] In another implementation, processing module 12 can be used to generate a second codeword and a first parameter. The second codeword can be the number of padding bits N determined based on the first codeword and the method described in Figure 3 or Figure 4. avbits,padding The first parameter generated during encoding can be determined based on the initial padding coefficient.
[0206] In another implementation, the transceiver module 11 can be used to send a second codeword and first indication information from the sending end to the receiving end. The first indication information can be used to indicate that the first parameter is determined based on the initial padding coefficient.
[0207] When the device 10 is used to execute the method in FIG4, the transceiver module 11 can be used to execute the steps of sending and receiving information in the method, such as steps S540 and S550; the processing module 12 can be used to execute the processing steps in the method, such as steps S410, S420, S510, S570 and S580.
[0208] It should be understood that the specific process of each unit performing the above-mentioned corresponding steps has been described in detail in the above method embodiments, and will not be repeated here for the sake of brevity.
[0209] In another design, the device 10 may correspond to the receiving end in the above method embodiment, or to a component of the receiving end (such as a chip).
[0210] The device 10 can implement the steps or processes executed by the receiving end in the above method embodiment. The transceiver module 11 can be used to perform the transceiver-related operations of the receiving end in the above method embodiment, and the processing module 12 can be used to perform the processing-related operations of the receiving end in the above method embodiment.
[0211] In one implementation, the transceiver module 11 can be used to receive a second codeword and a first indication information from the transmitting end. The second codeword can be the number of padding bits N determined based on the first codeword and the method described in Figure 3 or Figure 4. avbits,padding The first indication information generated during encoding can be used to instruct the receiving end, and the first parameter of the sending end is determined based on the initial padding coefficient.
[0212] In another implementation, processing module 12 can be used at the receiving end to determine the second padding coefficient a.RX In the method described in Figure 2, a RX It can be determined based on the first padding factor at the sending end.
[0213] In another implementation, the processing module 12 can be used by the receiver to determine the number of data bits on the last OFDM symbol carrying the second codeword, the value of which can be determined based on the second padding factor.
[0214] In another implementation, the processing module 12 can be used by the receiving end to determine the code length of the second codeword, i.e., the code length of the data bits. This code length can be based on the number N of data bits on the first OFDM symbol carrying the second codeword. DBPS,last,RX The number of data bits N contained in each OFDM symbol carrying the second codeword DBPS Until it is determined.
[0215] When the device 10 is used to execute the method in FIG4, the transceiver module 11 can be used to execute the steps of sending and receiving information in the method, such as steps S440 and S450; the processing module 12 can be used to execute the processing steps in the method, such as S460, S470, S480 and S490.
[0216] It should be understood that the specific process of each unit performing the above-mentioned corresponding steps has been described in detail in the above method embodiments, and will not be repeated here for the sake of brevity.
[0217] It should also be understood that the device 10 here is embodied in the form of a functional module. The term "module" here can refer to an application-specific integrated circuit (ASIC), electronic circuitry, a processor (e.g., a shared processor, a proprietary processor, or a group processor, etc.) and memory for executing one or more software or firmware programs, integrated logic circuitry, and / or other suitable components supporting the described functions. In an alternative example, those skilled in the art will understand that device 10 may be specifically a first station in the above embodiments, used to execute the various processes and / or steps corresponding to the first station in the above method embodiments; or, device 10 may be specifically a second station in the above embodiments, used to execute the various processes and / or steps corresponding to the second station in the above method embodiments.
[0218] The apparatus 10 of each of the above-described schemes has the function of implementing the corresponding steps performed by the equipment (such as the first station and the second station) in the above-described methods. This function can be implemented by hardware or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above-described functions; for example, the transceiver module can be replaced by a transceiver (for example, the transmitting unit in the transceiver module can be replaced by a transmitter, and the receiving unit in the transceiver module can be replaced by a receiver), and other units, such as processing modules, can be replaced by processors, which respectively execute the transceiver operations and related processing operations in each method embodiment.
[0219] In addition, the transceiver module 11 can also be a transceiver circuit (for example, it may include a receiving circuit and a transmitting circuit), and the processing module can be a processing circuit.
[0220] Figure 13 is a schematic diagram of another communication device 20 provided in an embodiment of this application. The device 20 includes a processor 21, which is used to execute computer programs or instructions stored in a memory 22, or to read data / signaling stored in the memory 22, to perform the methods in the above-described method embodiments. In one possible implementation, the processor 21 may be one or more.
[0221] As shown in Figure 11, one possible implementation of the device 20 includes a memory 22 for storing computer programs or instructions and / or data. The memory 22 may be integrated with the processor 21 or it may be separate. In another possible implementation, there may be one or more memories 22.
[0222] As shown in Figure 11, one possible implementation of the device 20 includes a transceiver 23 for receiving and / or transmitting signals. For example, a processor 21 controls the transceiver 23 to receive and / or transmit signals.
[0223] As one option, the device 20 is used to implement the operations performed by the first station, the second station, or the third station in the various method embodiments described above.
[0224] It should be understood that the processor mentioned in the embodiments of this application can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor can be a microprocessor or any conventional processor.
[0225] It should also be understood that the memory mentioned in the embodiments of this application can be volatile memory and / or non-volatile memory. 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), or flash memory. Volatile memory can be random access memory (RAM). For example, RAM can be used as an external cache. By way of example and not limitation, RAM includes the following forms: static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous linked dynamic random access memory (SLDRAM), and direct rambus RAM (DR RAM).
[0226] It should be noted that when the processor is a general-purpose processor, DSP, ASIC, FPGA, or other programmable logic device, discrete gate or transistor logic device, or discrete hardware component, the memory (storage module) can be integrated into the processor.
[0227] It should also be noted that the memory described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0228] Figure 14 is a schematic diagram of a chip system 30 provided in an embodiment of this application. The chip system 30 (or may also be called a processing system) includes logic circuitry 31 and an input / output interface 32.
[0229] The logic circuit 31 can be a processing circuit in the chip system 30. The logic circuit 31 can be coupled to a memory unit, calling instructions from the memory unit, enabling the chip system 30 to implement the methods and functions of the embodiments of this application. The input / output interface 32 can be an input / output circuit in the chip system 30, outputting processed information from the chip system 30, or inputting data or signaling information to be processed into the chip system 30 for processing.
[0230] As one approach, the chip system 30 is used to implement the operations performed by the first site and / or the second site in the various method embodiments described above.
[0231] For example, logic circuit 31 is used to implement the processing-related operations performed by the first station and the second station in the above method embodiment; input / output interface 32 is used to implement the sending and / or receiving-related operations performed by the terminal device in the above method embodiment.
[0232] This application also provides a computer-readable storage medium storing computer instructions for implementing the methods executed by the device in the above-described method embodiments.
[0233] For example, when the computer program is executed by the computer, it enables the computer to implement the methods executed by the first station and the second station in the various embodiments of the above methods.
[0234] This application also provides a computer program product comprising instructions which, when executed by a computer, implement the methods executed by the first site and the second site in the above-described method embodiments.
[0235] This application also provides a communication system, including the aforementioned first station and second station.
[0236] The explanations and beneficial effects of the relevant contents in any of the devices provided above can be found in the corresponding method embodiments provided above, and will not be repeated here.
[0237] Those skilled in the art will recognize that the units 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.
[0238] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0239] 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 units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units 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 units may be electrical, mechanical, or other forms.
[0240] The units described 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 can be selected to achieve the purpose of this embodiment according to actual needs.
[0241] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0242] If the aforementioned functions are implemented as software functional units 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 the prior art, 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, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0243] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
[0244] Those skilled in the art will recognize that, based on the units and algorithm steps described in conjunction with the embodiments disclosed herein, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is implemented in hardware or by computer software driving hardware 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.
Claims
1. An encoding method, characterized in that, include: A second codeword is generated based on a first padding number and a first codeword. The first codeword is obtained based on a low-density parity-check code (LDPC). The first codeword corresponds to multiple orthogonal frequency division multiplexing (OFDM) symbols, including the first OFDM symbol. The number of bits carried in the first OFDM symbol after padding based on the first padding number conforms to N. CBPS The N CBPS The first padding number is the number of bits corresponding to each OFDM symbol among the plurality of OFDM symbols received by the receiving end. The first padding number is determined based on the initial padding factor. When the initial padding factor is less than 4, the first padding number is determined based on the initial padding factor. Multiple orthogonal frequency division multiplexing (OFDM) symbols are transmitted, and the multiple OFDM symbols carry a second codeword.
2. The method according to claim 1, characterized in that, The first fill number is based on the initial fill factor a. init Confirmed, including: The first fill number is determined based on the following parameter: the initial fill coefficient a. init The number of space-time block codes m STBC The number of bits N in each OFDM symbol CBPS The number N of coded bits on the subcarrier carrying the data bits of the first codeword in the first OFDM symbol. CBPS,short .
3. The method according to claim 1 or 2, characterized in that, The method includes: When the initial padding factor is equal to 4, the first padding number is determined based on the following parameter: the number of space-time block codes m. STBC and the number of bits N of each OFDM symbol CBPS .
4. The method according to any one of claims 1 to 3, characterized in that, When the initial fill factor a init When the number of fillers is less than 4, the first number of fillers N avbits,padding The following conditions must be met: N avbits,padding =m STBC ·(N CBPS -a init ·N CBPS,short ).
5. The method according to claim 3, characterized in that, When the initial fill factor a init When the first filling number N equals 4, avbits,padding The following conditions must be met: N avbits,padding =m STBC ·N CBPS .
6. The method according to any one of claims 1 to 5, characterized in that, The N CBPS The maximum number of bits in the first OFDM symbol carrying the first codeword.
7. The method according to any one of claims 1 to 6, characterized in that, The method includes: Send a first parameter, which is used to determine the length of the data bits of the first codeword, and the first parameter is determined based on the initial padding coefficient.
8. The method according to claim 7, characterized in that, The method includes: The first parameter Δ a The following conditions must be met: D a =aa init Wherein, the value of 'a' represents the number of bits of the first OFDM symbol that conforms to the value of N. CBPS The a init The initial fill factor is denoted as .
9. The method according to claim 8, characterized in that, The method further includes: Send a first indication message, which indicates that the first parameter is determined based on the initial fill factor.
10. An encoding method, characterized in that, include: Multiple Orthogonal Frequency Division Multiplexing (OFDM) symbols are received. These OFDM symbols carry a second codeword, which is generated based on a first padding number and a first codeword. The first codeword is obtained based on a Low-Density Parity-Check (LDPC) code. The first codeword corresponds to the multiple OFDM symbols, which include a first OFDM symbol. The number of bits carried in the first OFDM symbol after padding with the first padding number conforms to N. CBPS The N CBPS The first padding number is the number of coded bits corresponding to each of the plurality of OFDM symbols received by the receiving end. The first padding number is determined based on the initial padding coefficient. When the initial padding coefficient is less than 4, the first padding number is determined based on the initial padding coefficient.
11. The method according to claim 10, characterized in that, The first fill number is based on the initial fill factor a. init Confirmed, including: The first fill number is determined based on the following parameter: the initial fill coefficient a. init The number of space-time block codes m STBC The number of bits N in each OFDM symbol CBPS The number of bits N of the first codeword on the first OFDM symbol CBPS,short .
12. The method according to claim 10 or 11, characterized in that, The method includes: When the initial padding factor is equal to 4, the first padding number is determined based on the following parameter: the number of space-time block codes m. STBC and the number of bits N of each OFDM symbol CBPS .
13. The method according to any one of claims 10 to 12, characterized in that, When the initial fill factor a init When the number of fillers is less than 4, the first number of fillers N avbits,padding The following conditions must be met: N avbits,padding =m STBC ·(N CBPS -a init ·N CBPS,short ).
14. The method according to claim 12, characterized in that, When the initial fill factor a init When the number of fillers is equal to 4, the first filler number N avbits,padding The following conditions must be met: N avbits,padding =m STBC ·N CBPS .
15. The method according to any one of claims 10 to 14, characterized in that, The N CBPS The maximum number of bits in the first OFDM symbol carrying the first codeword.
16. The method according to any one of claims 10 to 15, characterized in that, Obtaining the first codeword from the plurality of OFDM symbols includes: Receive a first parameter, which is determined based on the initial fill factor; Based on the first parameter, determine the number of data bits in the first OFDM symbol; The number of data bits in the first codeword is determined based on the number of data bits in the first OFDM symbol.
17. The method according to claim 16, characterized in that, The method includes: The first parameter Δ a The following conditions must be met: D a =aa init Wherein, the value of 'a' represents the number of bits of the first OFDM symbol that conforms to the value of N. CBPS The a init The initial fill factor is denoted as .
18. The method according to claim 17, characterized in that, The method further includes: Receive first indication information, the first indication information being used to indicate that the first parameter is determined based on the initial fill factor.
19. The method according to claim 16 or 17, characterized in that, The first codeword's data bit count PSDU LENGTH and the first parameter Δ a The relationship between them satisfies the following conditions: When the first parameter Δ a When greater than 0: Among them, the The N is the sign for rounding down. DBPS N represents the number of data bits in each of the plurality of OFDM symbols. SYM N is the number of the plurality of OFDM symbols. SD,short The number of subcarriers carrying the data bits of the first OFDM symbol, where T represents the number of bits of the second codeword carried by the first OFDM symbol padded to the maximum value, and N... BPSCS N is the number of bits in the second codeword carried on each subcarrier corresponding to the first OFDM symbol. SS Let N be the spatial stream number corresponding to the second codeword, R be the code rate of the second codeword, and N be the... tail N is the number of tail bits on the PPDU corresponding to the second codeword. service The number of bits in the service field on the PPDU corresponding to the second codeword; or, When the first parameter Δ a When equal to 0:
20. The method according to claim 19, characterized in that, The value of T is 4.
21. A communication device, wherein the communication device is a transmitting end device or is applied to a transmitting end device, characterized in that, The device includes at least one processor coupled to a memory for storing computer programs or instructions, the at least one processor for executing the computer programs or instructions in the memory, causing the device to perform the method as described in any one of claims 1 to 9.
22. A communication device, wherein the communication device is a receiving end device or is applied to a receiving end device, characterized in that, The device includes at least one processor coupled to a memory for storing computer programs or instructions, the at least one processor for executing the computer programs or instructions in the memory, causing the device to perform the method as described in any one of claims 10 to 20.
23. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program or instructions that, when executed on a computer, cause the computer to perform the method as described in any one of claims 1 to 20.
24. A chip system, characterized in that, include: At least one processor is configured to retrieve and run a computer program from memory, causing a communication device equipped with the chip system to perform the method of any one of claims 1 to 20.
25. A computer program product, characterized in that, When the computer program product is run on a computer, it causes the computer to perform the method as described in any one of claims 1 to 20.