Detailed Description
The following concepts related to the embodiments of the present application are first described to facilitate understanding of the technical solutions of the present application.
1. Channel coding, namely, coding the information bits to be transmitted by using coding, adding redundant bits to obtain coded bits, and correcting transmission errors by using corrected information bits. Among them, the coding types are relatively many, including Block CHECK CHARACTER (BCC), recursive systematic convolutional codes (recursive system convolutional, RSC), turbo codes, RM codes, LDPC codes, BCH codes, RS codes, (u|u+v) codes, polarization (polar) codes, etc.
2. And carrying out channel coding on the information bits to obtain at least one codeword. Illustratively, grouping information bits according to a dimension of encoding may result in at least one information code group, and encoding the information code group with encoding may result in at least one codeword. Wherein the information code groups are in one-to-one correspondence with the code words, i.e. each information code group corresponds to a code word. Specifically, each bit in the codeword is a symbol (or bit, each symbol takes a 0 or 1).
3. The code generation matrix refers to the basis of coding and characterizes the code structure of the coder. Different generation matrices can be corresponding to different coding modes. For example, for Turbo codes, a plurality of component encoders may be included, each component encoder may be an RSC encoder, each RSC encoder may correspond to one RSC generating matrix, and the data may be convolved by the RSC generating matrix of one RSC encoder to obtain a corresponding codeword.
4. The identification method of the channel code comprises the following steps:
The transmitter of the signal encodes the signal to be transmitted and the signal needs to be decoded at the receiver according to the encoded correlation parameters. In the actual decoding process, the receiver may not know a part of a priori information of the signal transmitted by the transmitter, and in order to implement processing of the received signal, the receiver needs to use a channel coding identification method to perform subsequent signal detection and the like, so as to obtain the transmitted information bit.
In decoding the signal, decoded information bits can be obtained from hard decision information and soft decision information. Wherein the hard decision information includes a value on each symbol, such as 0 or 1. The soft decision information may include a log-likelihood ratio (LLR) of a posterior probability corresponding to each symbol, or the like. Where LLR represents the posterior probability of 0 per symbol versus the posterior probability of 1 for symbol. Where the posterior probability refers to a probability that the codeword c is 0 or 1 (e.g., p (c= 0|r) or p (c= 1|r)), and the posterior probability log likelihood ratio refers to a ratio L (c|r) of the posterior probabilities (e.g., p (c= 0|r)/p (c= 1|r)).
The identification method of the channel coding is mainly divided into two types, namely linear block code identification and convolutional code identification. The present application relates generally to the identification of convolutional codes. The method type of convolutional code recognition comprises 3 types, namely conventional convolutional code recognition, punctured convolutional code recognition and punctured Turbo code recognition.
1) Identification of conventional convolutional codes
For example, conventional convolutional codes may include RSC codes, BCC codes, and the like.
The method is based on the constraint relation between a codeword sequence and a check matrix, solves a linear equation set to obtain the check matrix corresponding to the encoder, and specifically comprises a blind code identification method based on Gaussian elimination, walsh-Hadamard analysis, euclidean and the like.
In the blind coding identification method based on the Gaussian elimination method, a linear equation set corresponding to the constraint relation can be directly solved according to the constraint relation satisfied between the received codeword sequence and the check matrix, so that the check matrix corresponding to the encoder is obtained. However, the blind code recognition method based on the Gaussian elimination method is only suitable for simple conventional convolutional code recognition, and the method has the defects of multiple solutions of equation sets, poor fault tolerance and the like when solving the linear equation sets corresponding to the constraint relation.
Based on the Walsh-Hadamard analysis method, the Walsh-Hadamard transformation can be utilized to solve a linear equation set of the constraint relation, so as to further obtain a check matrix corresponding to the code. In the Euclidean-based blind identification method, the relation between the received codeword sequence and the polynomials in the generator matrix is analyzed and deduced by combining the coding and verification principle of the convolutional code, the coding identification problem is converted into the greatest common divisor problem of searching two polynomials on a finite field, and then the generator polynomial corresponding to the encoder is obtained by utilizing the traditional Euclidean algorithm. However, the Walsh-Hadamard analysis method and the euclidean-based blind code identification method are only suitable for the conventional convolutional code blind identification of 1/2 code rate, the convolutional code or the Turbo code of other code rates can not be identified, and the application range is limited.
2) Identification of punctured convolutional codes
The punctured convolutional codes may include punctured Turbo codes, punctured RSC codes, punctured BCC codes, and the like.
Because the puncturing convolutional codes with arbitrary code rate of (n-1)/n can be obtained by the source convolutional codes with 1/2 code rate through a specific puncturing matrix, the identification of the puncturing convolutional codes can be based on the equivalent transformation of a polynomial in a generating matrix, and the source convolutional code generating matrix and the puncturing matrix with 1/2 code rate can be solved, so that the coding mode can be identified. However, the method is only suitable for identifying the punctured convolutional code with the code rate of (n-1)/n, and can not be expanded to other punctured convolutional codes or punctured Turbo codes with other code rates, so that the application range is limited.
3) Puncturing convolutional code with periodicity of puncturing matrix and identification of puncturing Turbo code with periodicity of puncturing matrix
The puncturing matrix may be periodic for punctured convolutional codes and punctured Turbo codes. The periodic convolution code or Turbo code of the puncturing matrix refers to that after the mother code encoder outputs code words, the characteristics of periodicity of the puncturing matrix are utilized, and the generating matrix and the puncturing matrix of the mother code encoder are combined to determine the simplest information recovery matrix. Therefore, the information bit soft information and the codeword soft information before puncturing are recovered through the simplest information recovery matrix, and the blind code identification of periodic puncturing is completed.
4) Identification of aperiodic convolutional or Turbo codes for puncturing matrices
Taking a long term evolution (long term evolution, LTE) system as an example, an LTE transmitter first passes through a Turbo mother code encoder with a code rate of r=1/3, and redundant code words are entirely punctured during rate matching, so that code words with different rates are constructed, and therefore, the puncturing positions of code words corresponding to each component encoder after rate dematching of an LTE receiver are random and have no periodicity, namely, a puncturing matrix has no periodicity. When the period of the puncturing matrix is long or no period, the simplest information recovery matrix is difficult to solve, and the convolutional code or the Turbo code without period puncturing cannot be identified.
In view of this, the embodiment of the application provides a code identification method, which can be applied to a coding device of a receiving end. The method provided by the embodiment of the application is described below with reference to the accompanying drawings.
The technical scheme of the embodiment of the application can be applied to various groups of mobile communication systems supporting channel coding, such as a universal mobile telecommunications system (universal mobile telecommunication system, UMTS), a worldwide interoperability for microwave access (worldwide interoperability for microwave access, wiMAX) communication system, a long term evolution (long term evolution, LTE) system, an enhanced LTE (LTE-Advanced, LTE-A) system, a New Radio (NR) system, an NR-car and anything communication (vehicle-to-everything, V2X) system or other next generation communication systems, and can also be applied to a wireless local area network (wireless local area network, WLAN) supporting IR-HARQ, such as any one of the protocols of the International Institute of Electrical and Electronics Engineers (IEEE) 802.11 series currently adopted by the WLAN. For example, to the 802.11ay standard, or to the 802.11ay next generation standard, etc. The embodiment of the present application will be described by taking the communication system shown in fig. 1a as an example.
As shown in fig. 1a, the communication system may include one or more Basic Service Sets (BSS), where network nodes in the basic service sets include an Access Point (AP) and a Station (STA), and the transmitting end and the receiving end of the embodiments of the present application may be the AP or the STA in the communication system, or may be a chip located in the AP or the STA. The scheme of the embodiment of the application can be applied to communication between the AP and the STA, can also be applied to communication between the AP and the STA, can be one-to-one communication and can also be one-to-many and many-to-many communication. For example, communication between one AP and one STA (for example, as shown in the left part of fig. 1 a) may be performed, in which the AP communicates with multiple STAs (as shown in the right part of fig. 1 a), communication between multiple APs and multiple STAs may be performed, or simultaneous communication between multiple STAs and the AP may be performed.
The encoding method provided by the embodiment of the application can be applied to various groups of communication scenes, such as one or more of enhanced mobile broadband (enhanced mobile broadband, eMBB), ultra-reliable low-latency communication (ultra reliable low latency communication, URLLC), machine type communication (MACHINE TYPE communication, MTC), large-scale machine type communication (MASSIVE MACHINE TYPE communication, mMTC), device-to-device (D2D), vehicle-to-vehicle (vehicle to everything, V2X), vehicle-to-vehicle (vehicle to vehicle, V2V), internet of things (internet of things, ioT) and the like. The coding method provided by the embodiment of the application can be suitable for services which need low-time delay and high-reliability transmission, such as unmanned, industrial automation, traffic safety and control, remote service and the like.
The network elements or devices involved in the communication system shown in fig. 1a are described below.
The AP may be a device with a wireless transceiver function, such as a directional multi-gigabit (directional multi-gigabit, DMG) AP, an enhanced directional multi-gigabit (enhanced directional multi-gigabit, EDMG) AP, or an AP supporting 60GHz, but the embodiment of the present application is not limited thereto. The AP may also be referred to as a base station.
The STA may be a device having a wireless transceiving function, for example, a wireless device supporting 60GHz communication. The STA may also be referred to as a subscriber unit, access terminal, mobile station, remote terminal, mobile device, user terminal, wireless communication device, user agent, user equipment, or User Equipment (UE). Specifically, the mobile terminal may be a terminal device (terminal equipment) or a User Equipment (UE) or a Mobile Station (MS) or a Mobile Terminal (MT), etc. Specifically, the terminal may be a mobile phone (mobile phone), a tablet computer, or a computer with a wireless transceiver function, and may also be a Virtual Reality (VR) terminal, an augmented reality (augmented reality, AR) terminal, a wireless terminal in industrial control, a wireless terminal in unmanned driving, a wireless terminal in telemedicine, a wireless terminal in a smart grid, a wireless terminal in a smart city (SMART CITY), a smart home, a vehicle-mounted terminal, and the like.
In the embodiment of the present application, the receiving end and the transmitting end are relative concepts, and the receiving end may refer to a device for receiving and decoding a message sent by the transmitting end by using the code identification method in the present application.
For example, the transmitting end may be the AP101 in the left diagram of fig. 1a, and the receiving end may be the STA102 in the left diagram of fig. 1 a.
Further, FIG. 1a is an exemplary framework diagram, the number of nodes included in FIG. 1a is not limited, and the communication system may include other nodes, such as gateway devices, application servers, etc., in addition to the functional nodes shown in FIG. 1a, without limitation. The sending end and the receiving end of the embodiment of the application can be network nodes in the communication system, and can also be chips in the network nodes in the WALN communication system.
Referring to fig. 1b, another communication system according to an embodiment of the present application is shown. Fig. 1b includes a network device and a terminal device.
Among other things, a network device, including for example AN Access Network (AN) device, such as a base station (e.g., AN access point), may refer to a device in the access network that communicates with a wireless terminal device over one or more cells over AN air interface, or a network device in a vehicle-to-everything (V2X) technology is, for example, a Road Side Unit (RSU). The base station may be configured to encode information bits and transmit the encoded information to the terminal device. Correspondingly, the terminal equipment receives the information sent by the base station and decodes the information. The terminal device may in turn be configured to encode information bits and transmit the encoded information to the base station. Correspondingly, the base station receives the information sent by the terminal equipment and decodes the information. The RSU may be a fixed infrastructure entity supporting V2X applications, which may exchange messages with other entities supporting V2X applications. The network device may also coordinate attribute management for the air interface. For example, the network device may include an evolved base station (NodeB or eNB or e-NodeB, evolutional Node B) in an LTE system or long term evolution advanced (long term evolution-a), or may also include a next generation NodeB (next generation node B, gNB) in a fifth generation mobile communication technology (the 5th generation,5G) NR system (also simply referred to as an NR system), or may also include a centralized unit (centralized unit, CU) and a Distributed Unit (DU) in a Cloud access network (Cloud radio access network, cloud RAN) system, and embodiments of the present application are not limited.
The network devices may also include core network devices including, for example, access and mobility management functions (ACCESS AND mobility management function, AMF) or user plane functions (user plane function, UPF) and the like. The embodiment of the application mainly relates to an access network, so that the network devices refer to access network devices unless otherwise specified hereinafter.
Terminal devices, including devices that provide voice and/or data connectivity to a user, specifically, devices that provide voice to a user, or devices that provide data connectivity to a user, or devices that provide voice and data connectivity to a user. For example, may include a handheld device having wireless connectivity, or a processing device connected to a wireless modem. The terminal device may communicate with the core network via a radio access network (radio access network, RAN), exchange voice or data with the RAN, or interact voice and data with the RAN. The terminal device may include a User Equipment (UE), a wireless terminal device, a mobile terminal device, a device-to-device (D2D) terminal device, a vehicle-to-device (V2X) terminal device, a machine-to-machine/machine-type communication (M2M/MTC) terminal device, an internet of things (internet of things, ioT) terminal device, a subscription unit (subscriber unit), a subscription station (subscriber station), a mobile station (mobile station), a remote station, an Access Point (AP), a remote terminal (remote terminal), an access terminal (ACCESS TERMINAL), a user terminal (user terminal), a user agent (user agent), or a user equipment (user device), etc. For example, mobile telephones (or "cellular" telephones) computers with mobile terminal devices, portable, pocket, hand-held, computer-built mobile devices, and the like may be included. Such as personal communication services (personal communication service, PCS) phones, cordless phones, session initiation protocol (session initiation protocol, SIP) phones, wireless local loop (wireless local loop, WLL) stations, personal Digital Assistants (PDAs), and the like. But also limited devices such as devices with lower power consumption, or devices with limited memory capabilities, or devices with limited computing capabilities, etc. Examples include bar codes, radio frequency identification (radio frequency identification, RFID), sensors, global positioning systems (global positioning system, GPS), laser scanners, and other information sensing devices.
By way of example, and not limitation, in embodiments of the present application, the terminal device may also be a wearable device. The wearable device can also be called as a wearable intelligent device or an intelligent wearable device, and is a generic name for intelligently designing daily wear and developing wearable devices, such as glasses, gloves, watches, clothes, shoes, and the like, by applying wearable technology. The wearable device is a portable device that is worn directly on the body or integrated into the clothing or accessories of the user. The wearable device is not only a hardware device, but also can realize a powerful function through software support, data interaction and cloud interaction. The generalized wearable intelligent device comprises full functions, large size and complete or partial functions which can be realized independently of a smart phone, such as a smart watch, a smart glasses and the like, and is only focused on certain application functions, and needs to be matched with other devices such as the smart phone for use, such as various smart bracelets, smart helmets, smart jewelry and the like for physical sign monitoring.
While the groups of terminal devices described above, if located on a vehicle (e.g., placed in a vehicle or mounted in a vehicle), may be considered as in-vehicle terminal devices, for example, also referred to as in-vehicle units (OBUs).
In the embodiment of the application, the terminal equipment can also comprise a relay. Or it is understood that all that is capable of data communication with a base station can be seen as a terminal device.
In the embodiment of the present application, the device for implementing the function of the terminal device may be the terminal device, or may be a device capable of supporting the terminal device to implement the function, for example, a chip system, and the device may be installed in the terminal device. In the embodiment of the application, the chip system can be composed of chips, and can also comprise chips and other discrete devices. In the technical solution provided in the embodiment of the present application, the device for implementing the function of the terminal is a terminal device, which is described in the technical solution provided in the embodiment of the present application.
The network device operates, for example, in LTE, LTE-a, NR or other communication systems.
The network device in fig. 1b is for example a base station. The network device may correspond to different devices in different systems, for example, eNB in a 4G system, and access network device in 5G in a 5G system, for example, gNB. Of course, the technical solution provided by the embodiment of the present application may also be applied to a future mobile communication system, so that the network device in fig. 1b may also correspond to a network device in a future mobile communication system. In fig. 1b, the network device is a base station, and in fact, referring to the foregoing description, the network device may also be an RSU or the like. In addition, the terminal device in fig. 1b is taken as an example of a mobile phone, and as can be seen from the foregoing description of the terminal device, the terminal device in the embodiment of the present application is not limited to the mobile phone.
For example, the application is applicable to blind code identification in collaborative communication scenarios. As shown in fig. 2a, in the communication scenario, for example, in the present wireless communication scenario, in order to fully utilize spectrum resources and improve spectrum efficiency, an adaptive modulation and coding (Adaptive Modulation and Coding, AMC) technology is adopted to measure channel state Information (CHANNEL STATE Information, CSI), so as to dynamically adjust and change modulation and coding parameters and the like. Due to the time-variability of CSI, terminal devices (e.g., handsets, customer premise equipment (Customer Premise Equipment, CPE), etc.) need to frequently send channel quality indication (Channel Quality Indication, CQI) signaling to network devices (e.g., LTE base stations). Because the signaling interaction between the terminal equipment and the network equipment is too frequent, the problems of signaling loss, signal interference, interruption and the like easily occur in the transmission process, so that related control signaling between the terminal equipment and the network equipment cannot be accurately transmitted, communication cannot be established, and the communication performance of the terminal equipment is affected.
In addition, for another example, the application can also be applied to blind code recognition in a non-cooperative communication scenario, where a third party terminal device (such as a terminal device accessing a network in an access manner such as wireless local area network (WIRELESS FIDELITY, wi-Fi) or bluetooth) blindly recognizes a scenario of an LTE signal, and the communication scenario is shown in fig. 2 b.
In particular, in a non-cooperative communication scenario, a third-party terminal device actively or passively intercepts a communication signal of a communication system (such as an LTE user terminal and an LTE base station), and in order to obtain transmission information of the communication signal, the third-party terminal device must decode the signal. Because the third party and the communication system are different systems, and belong to non-cooperative communication, the third party cannot accurately obtain the coding parameter signaling interacted by the communication system, so that decoding cannot be accurately performed.
The following describes a code recognition method provided by the embodiment of the present application with reference to the communication systems shown in fig. 1 a-1 b and the application scenarios shown in fig. 2 a-2 b. Wherein the terms and the like may refer to actions involved between the embodiments of the present application. The message names of interactions between the devices or parameter names in the messages in the embodiments of the present application are just an example, and other names may be used in specific implementations without limitation.
Fig. 3a is a flowchart of a coding identification method according to an embodiment of the present application, where the method may be performed by a decoding device at a receiving end, where the decoding device may be an AP or an STA located in fig. 1a, or located in a network device or a terminal device in fig. 1 b. As shown in fig. 3a, the method may include:
S301, receiving a first signal.
Wherein upon receiving the first signal, a parameter of the signaling of the first signal may be obtained.
One possible implementation manner may perform blind detection on a field corresponding to the first signal, to obtain first data of the first signal.
The signaling in the first data may include bandwidth signaling, synchronization signaling, modulation signaling, etc., as shown in fig. 3 b.
One possible implementation manner uses key signaling such as bandwidth signaling, synchronization signaling, etc. in the data segment to preprocess the data segment of the received signal. The preprocessing of the data segment by the receiver may include determining a bandwidth parameter of the first signal according to the bandwidth signaling, synchronizing the received first signal according to the synchronization signaling, demodulating the first data in the first signal according to the modulation signaling, and so on.
S302, determining a candidate coding set of the first signal according to the signaling parameters of the first signal.
Wherein N sets of candidate coding parameters may be included in the candidate coding set. The set of candidate coding parameters may include, but is not limited to, at least one of candidate coding modes, candidate puncturing matrices, candidate coding rates.
Wherein the N sets of candidate coding parameters may be determined according to a communication system to which the first signal corresponds.
In some embodiments, the candidate coding mode may be determined according to a communication system corresponding to the first signal. For example, when it is determined that the communication system corresponding to the first signal is an LTE communication system, it may be determined that the coding scheme of the first signal is a Turbo coding scheme without periodic puncturing. When the communication system corresponding to the first signal is determined to be a Wi-Fi communication system, the coding mode of the first signal can be determined to be a punctured BCC coding mode.
In one possible implementation, the candidate puncturing matrix may be determined according to a communication system to which the first signal corresponds.
For example, when the communication system corresponding to the first signal is determined to be an LTE communication system, a possible puncturing matrix in the punctured Turbo coding mode may be determined as a candidate puncturing matrix according to the standard of the LTE communication system. When the communication system corresponding to the first signal is determined to be a Wi-Fi communication system, a possible puncturing matrix in the punctured BCC coding mode can be determined as a candidate puncturing matrix according to the standard of the LTE communication system.
After determining the coding mode, the candidate coding rate may be determined according to the signaling of the first signal.
One possible implementation manner, the receiving end may determine the candidate coding rate according to the bandwidth signaling and the modulation signaling in the first signal.
For example, when the bandwidth signaling included in the data segment of the LTE uplink signal received at the receiver is 5MHz and the modulation signaling is 16-QAM, it may be determined that the candidate coding rate corresponding to the LTE uplink signal includes {2/3,3/4}, according to the standard of the LTE communication system.
For the p-th group of candidate coding parameters in the N groups of candidate coding parameters, p is sequentially taken to be any positive integer from 1 to N, and the following S303-S305 are executed:
S303, supplementing the puncturing position of the first data according to puncturing Yu Juzhen in the p-th group of candidate coding parameters in the candidate coding set, and determining the second data.
For example, as shown in fig. 3e, the puncturing matrix may be 3 symbols for one period, and delete the 1 st symbol. Through the puncturing matrix, the codeword before puncturing can be punctured in the encoding process, so as to obtain a punctured codeword, i.e. a codeword corresponding to data (for example, first data in the first signal) sent by the sending end to the receiving end.
Accordingly, in the decoding process, the receiving end may supplement the puncturing position of the received first data according to the puncturing matrix in the p-th set of candidate coding parameters, for example, may supplement 0, so that, according to the first data (i.e., the second data) after the puncturing bit is supplemented, the decoding is performed by the coding mode in the p-th set of candidate coding parameters, that is, S304 is performed, so as to obtain the decoded bit sequence of the first data.
S304, decoding the second data according to the p-th group candidate coding parameters in the candidate coding set, and determining the decoded bit sequence.
S303 and S304 may also be understood as decoding the first data according to the p-th set of candidate coding parameters in the candidate coding set, and determining a decoded bit sequence, that is, determining bit information corresponding to the first data under the p-th set of candidate coding parameters.
For example, the bit information corresponding to the first data of the first signal under the p-th set of candidate coding parameters may be codeword soft information corresponding to the first data of the first signal under the p-th set of candidate coding parameters determined according to the p-th set of candidate coding parameters. And decoding the codeword soft information corresponding to the first data of the first signal to determine the information bit soft information of the first data. For another example, the bit information corresponding to the first data of the first signal under the p-th group of candidate coding parameters may also be hard information of the information bit corresponding to the first data of the first signal under the p-th group of candidate coding parameters, which is not limited herein.
In some embodiments, taking the first data in the first signal as an example, the receiving end may identify the first data in the first signal according to the p-th group of candidate coding parameters in the candidate coding set, determine codeword soft information corresponding to the first data under the i-th group of coding candidates, and further determine information bit soft information possibly corresponding to the first data.
S3041, determining a BCC generation matrix corresponding to the p-th group candidate coding parameters according to the p-th group candidate coding parameters.
In example 1, when the coding candidate mode is a Turbo coding mode, a parent code encoder for Turbo coding and a child encoder included in the parent code encoder may be determined according to the p-th group of candidate coding parameters.
For example, the p-th group candidate coding parameters are a Turbo coding mode without periodic puncturing, puncturing Yu Juzhen is a puncturing matrix with a pre-puncturing code rate of 1/3 to a post-puncturing code rate of 1/2, and the coding code rate is 1/2. At this time, the Turbo mother code encoder may include a first sub-encoder and a second sub-encoder. Wherein the first sub-encoder may be a sub-encoder of component RSC1 and the second sub-encoder may be a sub-encoder of component RSC 2.
It should be noted that, the sub-encoder of the component RSC1 and the sub-encoder of the component RSC2 may be the same encoder, or may be different encoders, and may be set according to the needs of the communication system. The receiving end may select the sub-encoder of the component RSC1 to determine the codeword soft information of the first data in the first signal and correspondingly decode, or may select the sub-encoder of the component RSC2 to determine the codeword soft information of the first data in the first signal and correspondingly decode, which is not limited herein.
The following description will take, as an example, a sub-encoder selecting the component RSC1 to determine codeword soft information of first data in the first signal and decode correspondingly. As shown in fig. 3c, the coding block diagram of the Turbo mother code encoder of the LTE uplink signal is shown, where the information bits are first coded by the Turbo mother code encoder with a code rate R of 1/3, that is, the information bits of the fourth data are first coded by the component encoder RSC 1. After interleaving, the information bits of the fourth data are encoded by the component encoder RSC 2.
Taking component encoder RSC1 as an example, the RSC generation matrix corresponding to component encoder RSC1 satisfies:
Wherein, the
g0(D)=1+D2+D3 (2)
g1(D)=1+D +D3 (3)
As shown in fig. 3d, after the information bits are encoded by the Turbo mother code encoder, rate matching is performed by the puncturing matrix, and the whole segment of the redundant code element is punctured, so that a code word with a 1/2 code rate is generated. Taking fourth data as data of the first data before encoding (i.e. information bits of the first data) as an example, the fourth data is 500 bits, after the fourth data passes through the RSC1 encoder, a codeword with 1500 bits can be obtained, and then 1000 bits of the first data can be obtained through the puncturing matrix. Therefore, for the candidate puncturing Yu Juzhen and the candidate coding rate, a mother code encoder of the Turbo coding and a child encoder included in the mother code encoder can be determined.
The first data in the encoded first signal is the data after RSC encoding and puncturing, and still is difficult to identify.
In the application, in order to simplify the decoding of the RSC generation matrix, the RSC generation matrix in the Turbo mother code encoder can be equivalent to the BCC generation matrix. Thus, the blind identification problem of the component encoder RSC is converted into a corresponding blind identification problem of the BCC encoder.
For example, taking the generator matrix of the component encoder RSC1 as an example, a BCC generator matrix equivalent to the component encoder RSC1 may be determined. The BCC generation matrix equivalent to the component encoder RSC1 satisfies:
G′(D)=[g0(D),g1(D)]
=[1+D2+D3,1+D +D3] (4)
Thus, according to the p-th set of candidate encoding parameters, the second data may be decoded to obtain soft information for each information bit of the second data.
In example 2, when the encoding candidate is RSC encoding, the RSC encoder may be determined according to the p-th group of candidate encoding parameters. Thus, from the RSC encoder, an equivalent BCC generation matrix is determined.
For example, according to the p-th group of candidate coding parameters, determining that the coding rate is 1/3 in the RSC encoder, and the generating matrix of the RSC encoder satisfies the above formula (1), the equivalent BCC generating matrix of the RSC encoder satisfies the above formula (4).
Example 3, when the coding candidate is a BCC coding, the BCC encoder may be determined based on the p-th set of candidate coding parameters. I.e. the BCC generation matrix can be determined from the p-th set of candidate coding parameters.
S3042, decoding codeword soft information corresponding to the first data according to the BCC generation matrix corresponding to the p-th group candidate coding parameters to obtain a decoded bit sequence, namely information bit soft information of the first data.
In combination with example 1, codeword soft information for first data in a first signal may be determined based on a candidate coding scheme, a candidate puncturing matrix, and a candidate coding rate.
Continuing with the above example, considering that the BCC generation matrix corresponding to the candidate coding scheme is determined according to the first sub-encoder (component encoder RSC 1), codeword soft information of the first data corresponding component encoder RSC1 may be extracted based on the component encoder RSC1 and the puncturing matrix. Take 1000 bits as an example of the first data. And determining 1500 bits of the first data before puncturing through the candidate puncturing matrix, namely inserting corresponding bits at puncturing positions according to puncturing Yu Juzhen, for example, the bits at the puncturing positions are 0, so as to obtain second data. Therefore, by means of the coding principle of the component encoder RSC1, the second data is analyzed by combining the puncturing positions in 1500 bits of the first data before puncturing and the first data (namely the second data), so as to obtain codeword soft information corresponding to the first data before puncturing. I.e. codeword soft information for each bit over 1500 bits.
Furthermore, the receiving end can decode the codeword soft information of the first data according to the BCC generation matrix corresponding to the p-th group of candidate coding parameters to obtain the decoded information bit soft information of the first data.
The information bit soft information of the first data may be determined by a soft output viterbi decoding (soft-output viterbi decoding, SOVA) algorithm, or may be determined by other soft output decoding algorithms, for example, a BCJR algorithm, a log-MAP algorithm, or the like, which is not limited herein.
Taking the fourth data as 500 bits, the first data includes 1000 bits of data as an example, by decoding the codeword soft information of the first data and the BCC generation matrix, each information bit soft information on the information bits of the first data (i.e., soft information of each information bit on 500 information bits of the fourth data) can be obtained.
In connection with example 2, codeword soft information for the first data may be extracted based on the BCC generator matrix and the puncturing matrix equivalent to the RSC encoder. Namely, determining puncturing positions in 1500 bits of the first data before puncturing according to the puncturing matrix, and then obtaining codeword soft information on each bit corresponding to the first data before puncturing by combining the puncturing positions in 1500 bits of the first data before puncturing and the first data according to the BCC generating matrix equivalent to the RSC encoder.
In connection with example 3, codeword soft information for the first data may be extracted based on the BCC encoder and the puncturing matrix. Namely, determining puncturing positions in 1500 bits of the first data before puncturing according to the puncturing matrix, and then combining the puncturing positions in 1500 bits of the first data before puncturing with the first data according to the BCC encoder to obtain codeword soft information on each bit corresponding to the first data before puncturing.
And S305, encoding the bit sequence according to the p-th group candidate encoding parameters, and determining third data.
For example, the information bit soft information of the first data may be encoded according to the p-th set of candidate encoding parameters to determine the third data. The third data is codeword soft information obtained by encoding the information bit soft information of the first data.
In one possible implementation manner, according to the BCC generation matrix corresponding to the p-th set of candidate coding parameters, the BCC coding is performed on the information bit soft information of the first data to obtain third data.
In connection with example 1, taking the information bits of the first data as 500 bits, the codeword of the first data includes a codeword of 1500 bits as an example. The receiving end can encode the information bit soft information of the first data according to the BCC generating matrix equivalent to the component encoder RSC1 corresponding to the p-th group of candidate encoding parameters by a soft-input soft-output (SISO) encoding method to generate codeword soft information (1500-bit codeword soft information) of the third data.
In connection with example 2, taking the information bits of the first data as 500 bits, the codeword of the first data includes a codeword of 1500 bits as an example. The receiving end can generate codeword soft information (codeword soft information of 1500 bits) of the third data according to the information bit soft information of the first data and the equivalent BCC generation matrix of the RSC encoder corresponding to the p-th set of candidate coding parameters.
In connection with example 3, taking the information bits of the first data as 500 bits, the codeword of the first data includes a codeword of 1500 bits as an example. The receiving end may encode the information bit soft information of the first data according to the BCC generation matrix corresponding to the p-th set of candidate encoding parameters, to generate codeword soft information (codeword soft information of 1500 bits) of the third data.
S306, determining the data to be verified corresponding to the p-th group of candidate coding parameters according to the third data and the first data.
For example, the data to be verified may be soft information of the codeword to be verified corresponding to the p-th set of candidate coding parameters determined according to the third data and the first data.
In order to better verify the candidate codes, in the application, the receiving end can also determine soft information corresponding to the p-th group candidate coding parameters of the first data according to the third data and the first data. For example, the soft information corresponding to the p-th candidate coding parameter may be codeword soft information to be verified corresponding to the p-th candidate coding parameter of the first data, where the codeword soft information to be verified may be used to verify codeword soft information obtained by candidate coding.
The code word soft information corresponding to the p-th group candidate coding parameter of the first data can be determined according to the code word soft information corresponding to the puncturing bit of the puncturing matrix in the third data and the code word of the first data.
For example, the puncturing matrix of the first data is, as shown in fig. 3f, 4 symbols for 1 period, with the 1 st symbol in each period as the puncturing position. Therefore, the codeword soft information of the puncturing bit corresponding to the puncturing matrix in the third data (codeword soft information of the 1 st bit in each period of 4 code elements and 1 period) can be used as the codeword soft information of the complementary puncturing position of the second data, and the data to be verified (i.e. codeword soft information to be verified) corresponding to the p-th group candidate coding parameter of the first data can be obtained.
S307, determining a group of target coding parameters of the first signal according to N data to be verified corresponding to the N groups of candidate coding parameters.
One possible implementation manner is to determine the posterior probability log-likelihood ratios of the syndromes of the N data to be verified respectively, for example, the receiving end may determine the posterior probability log-likelihood ratios of the syndromes of the N codeword soft information to be verified corresponding to the N sets of candidate coding parameters of the first data according to the N codeword soft information to be verified corresponding to the N sets of candidate coding parameters.
Therefore, the likelihood probability of the posterior probability log likelihood ratio of the syndromes of the N data to be verified can be respectively determined, and a group of candidate coding parameters corresponding to the maximum likelihood probability is taken as the group of target coding parameters. For example, by a maximum likelihood method, a maximum likelihood probability value in a posterior probability log likelihood ratio of the syndromes of the N codeword soft information to be verified corresponding to the N sets of candidate coding parameters is determined, and the candidate coding parameters corresponding to the maximum likelihood probability are decided as a set of target coding parameters of the first signal.
For example, the p-th set of candidate encoding parameters is θp ′,θ′ εΘ, and the size of the BCC generator matrix is (n 0-q)×n0,n0 represents the number of bits of the codeword after encoding the fourth data, n 0 -q represents the number of information bits corresponding to the fourth data. In combination with the above example, n 0 is 1500 bits, and n 0 -q is 500 bits.
Under the condition that the p-th group candidate coding parameter is θp ′, the codeword obtained by coding the information bits before coding (fourth data) through the BCC generation matrix can be expressed as:
in GF (2) domain, the parity check matrix corresponding to the BCC generator matrix satisfies
In a non-zero vectorRepresenting the index of the non-zero entry in the i-th row of the parity check matrix H, the index of the non-zero entry in the i-th row of the parity check matrix H satisfies:
πi=[πi(1),πi(2),…,πi(Ni)]T
Wherein N i represents the number of non-zero elements of the ith row in the parity check matrix H, wherein 0 is less than or equal to pi i(1)<πi(2)<…<πi(Ni)≤n0 -1.
The i-th row in the parity check matrix H includes 4 non-zero elements, i.e., N i =4. And the non-zero elements are located in columns 1,4, 5 and 8. Then pi i (1) is 1, pi i (2) is 4, pi i (3) is 4, and pi i (4) is 8. I.e. the index pi i=[1,4,5,8]T of the non-zero entry in row i.
For the p-th group candidate coding parameter θp ′, the parity check relation of the coded codeword satisfies when the p-th group candidate coding parameter is consistent with the target coding parameter θ of the transmitting end:
Hcθp′=0,if and only ifθ=θp′
the parity relation of the encoded codeword for the i-th row, i.e. the i-th syndrome, satisfies:
wherein 1≤i≤n 0 -q, and wherein a represents the sum in the GF (2) domain.
In combination with the above example, it is possible to obtain that the i-th parity relation (i-th syndrome) satisfies:
c1⊕c4⊕c5⊕c8=0
For the parity check matrix H of (n 0 -q) rows, (n 0 -q) parity check relations (syndromes) can be obtained.
Therefore, the ith syndrome can be determined according to the parity check relation of the code word after the coding of the ith row, and the posterior probability log likelihood ratio of the ith syndrome of the code word soft information to be verified corresponding to the p-th group candidate coding parameter of the first data is determined according to the ith syndrome.
That is, according to the ith syndrome, determining the codeword soft information of pi i (j) bits corresponding to the p-th candidate coding parameter of the first dataWherein j is more than or equal to 1 and N i.
In combination with the above example, the index pi i=[1,4,5,8]T,Ni =4 of the non-zero entry in the i-th row. The code word soft information on pi i (j) bits included in the syndrome of the ith code word soft information to be verified corresponding to the p-th group candidate coding parameter of the first data can be determined to be the 1 st code word bit soft information of the code word soft information to be verified corresponding to the p-th group candidate coding parameter of the first data, the 4 th code word bit soft information of the code word soft information to be verified corresponding to the p-th group candidate coding parameter of the first data, the 5 th code word bit soft information of the code word soft information to be verified corresponding to the p-th group candidate coding parameter of the first data, and the 8 th code word bit soft information of the code word soft information to be verified corresponding to the p-th group candidate coding parameter of the first data.
Thus, the codeword soft information on pi i (j) bits corresponding to the ith syndrome of the codeword soft information to be verified corresponding to the p-th set of candidate encoding parameters of the first dataAnd determining the posterior probability log-likelihood ratio of the ith syndrome of the codeword soft information to be verified, which corresponds to the p-th group of candidate coding parameters of the first data.
For the p-th candidate coding parameter θp ′, the posterior probability log-likelihood ratio of the ith syndrome of the codeword soft information to be verified corresponding to the p-th candidate coding parameter of the first dataThe method meets the following conditions:
Wherein, the And the code word soft information to be verified corresponding to the p-th candidate coding parameters of the first data of the i-th row pi i (j) is represented.
And determining the posterior probability log-likelihood ratio of the syndrome of the codeword to be verified corresponding to the p-th group candidate coding parameter of the first data according to the posterior probability log-likelihood ratio of the (n 0 -q) syndromes of the codeword to be verified corresponding to the p-th group candidate coding parameter of the first data.
In one possible implementation manner, the posterior probability log likelihood ratio of the syndrome of the codeword to be verified corresponding to the p-th set of candidate coding parameters of the first data may be determined after averaging according to the posterior probability log likelihood ratio of the (n 0 -q) syndromes of the codeword to be verified corresponding to the p-th set of candidate coding parameters of the first data.
For example, the posterior probability log likelihood ratio of the syndrome of the codeword soft information to be verified corresponding to the p-th set of candidate coding parameters of the first data satisfies:
Wherein, the M is more than or equal to 0 and less than or equal to (n) 0 -q). M is a positive integer. For cases where n0-q gammas are negative numbers and there is no positive number, the largest gamma can be directly selected as the posterior probability log likelihood ratio for the syndrome.
Optionally, the posterior probability log likelihood ratio of the syndrome of the codeword soft information to be verified corresponding to the p-th group candidate coding parameter of the first data comprisesThe posterior probability log likelihood ratio of the M syndromes being the positive number. Thus, interference of the posterior probability log likelihood ratio of the non-positive number syndrome can be avoided.
After determining the posterior probability log-likelihood ratio of the syndrome of the codeword soft information to be verified corresponding to the p-th set of candidate coding parameters of the first data, the coding parameters of the first signal may be determined according to the posterior probability log-likelihood ratio of the syndrome of the codeword soft information to be verified corresponding to the p-th set of candidate coding parameters of the first data.
One possible implementation manner uses soft information of syndrome posterior probability of codeword soft information to be verified corresponding to a p-th set of candidate coding parameters of the first data as an identification metric, and uses a maximum likelihood method, so that the p-th set of candidate coding parameters corresponding to the maximum identification metric is used as a set of target coding parameters of the identified first signal.
For example, according to the syndrome posterior probability log likelihood ratios of the N codeword soft information to be verified corresponding to the N sets of candidate coding parameters, when the posterior probability log likelihood ratios of the syndromes of the codeword soft information to be verified corresponding to the set of candidate coding parameters are maximum, the candidate coding parameters corresponding to the codeword soft information to be verified corresponding to the set of candidate coding parameters are used as a set of target coding parameters of the first signal. Specifically, the posterior probability log-likelihood ratio of the syndrome of the codeword soft information to be verified corresponding to a set of target coding parameters of the first signal and the posterior probability log-likelihood ratio of the syndrome of the codeword soft information to be verified corresponding to other sets of candidate coding parameters in the candidate coding set satisfy:
The posterior probability log likelihood ratio of the syndromes of the N code word soft information to be verified corresponding to the N groups of candidate coding parameters of the first data is used as the recognition measure, the recognition measure has higher degree of distinction between classes, and a group of target coding parameters of the first signal can be recognized more accurately.
Of course, the application can also identify and measure the N code word soft information to be verified corresponding to the N groups of candidate coding parameters of the first data in other modes, thereby determining a group of target coding parameters of the first signal.
And S308, decoding the first signal according to a set of target coding parameters of the first signal to obtain a bit sequence of the first signal.
For example, when it is determined that the coding scheme in the other set of target coding parameters is a periodically-puncturing-free Turbo coding scheme, a Turbo encoder may be determined according to the identified puncturing matrix and the coding rate, so as to decode the first signal according to the Turbo encoder.
For another example, when the encoding mode in the other encoding parameters is determined to be the punctured RSC encoding mode, the RSC encoder may be determined according to the identified puncturing matrix and the encoding code rate, so as to decode the first signal according to the RSC encoder.
For another example, when the coding scheme in the other coding parameters is determined to be the punctured BCC coding scheme, a BCC encoder may be determined according to the identified puncturing matrix and coding rate, so as to decode the first signal according to the BCC encoder.
According to the method, N groups of candidate coding parameters are determined according to the signaling in the first signal, the codeword soft information to be verified corresponding to each group of candidate coding parameters is determined according to the N groups of candidate coding parameters, the identification metric suitable for the puncturing coding method is selected, namely the posterior probability log likelihood ratio of the syndrome of the codeword soft information to be verified corresponding to each group of candidate coding parameters, and one group of target coding parameters of the first signal can be better identified through higher inter-class discrimination, so that the technical problem that the periodic puncturing convolutional codes cannot be identified in the prior art is solved, the identifiable range of the convolutional codes is expanded, and the coding identification performance is improved.
Example one
In the following, a specific example is taken to illustrate a code identification method in the present application, and fig. 4 is a flowchart of a code identification method provided in an embodiment of the present application, where the method may be performed by a decoding device of a receiving end, where the decoding device may be an AP or an STA located in fig. 1a, or a network device or a terminal device located in fig. 1 b. As shown in fig. 4, the method may include:
s401, the receiving end receives the first signal.
The receiving end may obtain the parameter of the signaling of the first signal according to the first signal.
And S402, the receiving end determines whether to carry out coding identification according to the signaling parameters in the first data. If yes, S403 is executed, and if no, S4010 is executed.
The receiving end can determine whether to perform coding identification according to whether the first signal includes information of coding parameters. In some embodiments, the information of the coding parameters may include information of coding parameters such as coding mode, puncturing matrix, coding rate, etc.
For example, the first data does not include information of the encoding parameter, it may be determined that encoding identification is required, that is, S403 is performed. The first data includes information of the encoding parameter, it may be determined that the first signal does not need to be encoded for identification, that is, S4010 is performed.
For the p-th group of candidate coding parameters in the N groups of candidate coding parameters, p is sequentially taken to be any positive integer from 1 to N, and the following S403-S408 are executed:
s403, the receiving end determines a candidate coding set according to the signaling parameter of the first signal.
The receiving end determines a candidate code set of the first signal in combination with parameters of signaling of the first signal in S402, for example, parameters of signaling such as bandwidth signaling, modulation signaling, etc.
In example 1, for example, the receiving end determines that the adopted coding mode is a Turbo coding mode according to the communication system corresponding to the first signal. Further, the receiving end determines candidate puncturing Yu Juzhen and candidate coding rate in the Turbo coding mode according to the bandwidth signaling and the modulation signaling. Thus, a candidate set of encodings of the first signal is determined.
In example 2, for example, the receiving end determines, according to the communication system corresponding to the first signal, that the adopted coding mode is an RSC coding mode. Further, the receiving end determines candidate puncturing Yu Juzhen and candidate coding rate in the RSC coding mode according to the bandwidth signaling and the modulation signaling. Thus, a candidate set of encodings of the first signal is determined.
S404, the receiving end determines a BCC generation matrix corresponding to the p-th group candidate coding parameter according to the p-th group candidate coding parameter in the candidate coding set.
In example 1, for example, when the receiving end determines that the coding mode adopted by the first signal is a Turbo coding mode, the receiving end may determine, according to the candidate puncturing Yu Juzhen and the candidate coding rate, a Turbo mother code encoder before puncturing, and an RSC encoder in the mother code encoder. Thus, according to the RSC generation matrix of the RSC encoder, the BCC generation matrix corresponding to the p-th group of candidate coding parameters is determined. Reference is specifically made to S3041.
Example 2, when the encoding candidate mode is the RSC encoding mode, the candidate puncturing Yu Juzhen and the candidate encoding rate are determined according to parameters of signaling such as bandwidth signaling, modulation signaling, and the like, and the standard of the communication system. Thereby, the RSC generation matrix corresponding to the p-th group candidate coding parameter is determined. And determining an equivalent BCC generation matrix according to the RSC generation matrix.
And S405, the receiving end decodes the first data in the first signal according to the BCC generation matrix corresponding to the p-th group candidate coding parameters, and determines the information bit soft information corresponding to the first data.
With reference to example 1, the receiving end may extract codeword soft information corresponding to a sub-encoder (component RSC encoder) in the Turbo encoder from the first signal under the p-th set of candidate encoding parameters (corresponding to one candidate Turbo encoder) based on the hypothesis test theory, further decode the first signal with the BCC generation matrix of the p-th set of candidate encoding parameters in S404, and output information bit soft information after the first signal is decoded under the candidate Turbo encoder by the BCC generation matrix corresponding to the p-th set of candidate encoding parameters.
With reference to example 2, the receiving end may determine, based on the hypothesis test theory, codeword soft information corresponding to the first signal from the first signal according to candidate puncturing Yu Juzhen under the p-th set of candidate coding parameters (corresponding to one candidate RSC encoder), further decode the first signal with reference to the BCC generation matrix corresponding to the p-th set of candidate coding parameters in S404, and output the codeword soft information corresponding to the first signal under the candidate RSC encoder through the decoded information bit soft information corresponding to the BCC generation matrix corresponding to the p-th set of candidate coding parameters.
And S406, the receiving end codes the information bit soft information corresponding to the first data according to the BCC generation matrix corresponding to the p-th group candidate coding parameter, and determines the third data.
With reference to example 1, under each group of candidate Turbo encoders, the BCC soft information corresponding to the first data output in S406 is subjected to BCC soft encoding by using a BCC generation matrix corresponding to the p-th group of candidate encoding parameters of the component RSC encoder in the Turbo encoder, so as to obtain codeword soft information, i.e., third data, of the information bit soft information corresponding to the first data.
With reference to example 2, under each set of candidate RSC encoders, the BCC generation matrix corresponding to the p-th set of candidate encoding parameters of the RSC encoder is used to perform BCC soft encoding on the information bit soft information corresponding to the first data output in S405, so as to obtain codeword soft information of the information bit soft information corresponding to the first data, that is, third data.
S407, the receiving end determines the codeword soft information to be verified corresponding to the p-th group candidate coding parameters according to the first data and the third data.
And determining codeword soft information of the third data corresponding to the puncturing position in the first data through the puncturing matrix corresponding to the third data and the p-th set of candidate coding parameters, so that codeword soft information to be verified corresponding to the p-th set of candidate coding parameters can be obtained by supplementing the codeword soft information of the third data corresponding to the puncturing position in the first data to the codeword soft information of the puncturing position in the first data.
S408, the receiving end determines the posterior probability log likelihood ratio of the syndrome of the codeword soft information to be verified corresponding to the p-th group candidate coding parameter according to the codeword soft information to be verified corresponding to the p-th group candidate coding parameter.
And determining the posterior probability log-likelihood ratio of the syndrome of the codeword to be verified corresponding to the p-th group candidate coding parameter by utilizing the codeword to be verified soft information corresponding to the p-th group candidate coding parameter in S407, thereby using the posterior probability log-likelihood ratio of the syndrome of the codeword to be verified corresponding to the p-th group candidate coding parameter as the identification measure for identifying the coding parameter of the encoder.
S409, the receiving end determines a group of target coding parameters of the first signal based on maximum likelihood estimation and on posterior probability log likelihood ratio judgment of syndromes of N code word soft information to be verified corresponding to N groups of candidate coding parameters.
And S4010, the receiving end decodes the first signal according to the group of target coding parameters.
When the first signal contains information of the coding parameters, it can be determined that the first data does not need coding identification, and the receiver can determine the coding parameters of the first signal according to the information of the coding parameters in the first data, and decode the first data.
When the first data does not include the information of the coding parameter, the first data may be decoded according to the coding parameter of the identified Turbo coding scheme. Or when the first data does not include the information of the coding parameter, the first data may be decoded according to the coding parameter of the identified RSC coding mode.
By the method, under the condition that the puncturing matrix of the Turbo code has no period, the blind code recognition problem of the Turbo code is equivalent to RSC blind code recognition, and further equivalent to simple BCC blind code recognition, so that the problem of the lack of the blind code recognition method of the periodically-punctured Turbo code is effectively solved. The method and the device improve the problems that the prior art is only suitable for simple or fixed code rate conventional convolutional code identification, fixed code rate puncturing convolutional code identification and short puncturing period Turbo code identification. In addition, besides identifying the Turbo code without the puncturing period, the RSC code with the puncturing period and the RSC code without the deleting period can be effectively identified. When the code mode is determined to be the RSC code mode, the RSC blind code identification can be equivalent to simple BCC blind code identification, the difficulty of RSC blind code identification is reduced, the identifiable range of the convolutional code is expanded, the conventional convolutional code identification of any code rate, the Turbo code blind identification of any code rate are included, and the RSC code blind identification of any code rate is wide in application range. In addition, the method is suitable for scenes with the change of the coding parameters or the missing of the coding parameters by an identification measurement method (posterior probability log likelihood ratio of a syndrome) with high degree of discrimination among classes.
Example two
In the following, a specific example is taken to illustrate a code identification method in the present application, and fig. 5 is a flowchart of a code identification method provided in an embodiment of the present application, where the method may be performed by a decoding device of a receiving end, where the decoding device may be an AP or an STA located in fig. 1a, or located in a network device or a terminal device in fig. 1 b. As shown in fig. 5, the method may include:
S501, a receiving end receives a first signal.
The receiving end may obtain the parameter of the signaling of the first signal according to the first signal.
S502, the receiving end determines whether to carry out coding identification according to the signaling parameters in the first data. If yes, S504 is executed, and if no, S5010 is executed.
The receiving end can determine whether to perform coding identification according to whether the first signal includes information of coding parameters. In some embodiments, the information of the coding parameters may include information of coding parameters such as coding mode, puncturing matrix, coding rate, etc.
For example, the first data does not include information of the encoding parameter, it may be determined that encoding identification is required, that is, S503 is performed. The first data includes information of the encoding parameter, it may be determined that the first signal does not need to be encoded for identification, that is, S5010 is performed.
And S503, the receiving end determines a candidate coding set of the BCC coding mode according to the signaling parameter of the first signal.
And the receiving end determines that the adopted coding mode is a BCC coding mode according to the communication system corresponding to the first signal. Further, in combination with the parameters of the signaling of the first signal in S501, for example, parameters of the signaling such as bandwidth signaling, modulation signaling, etc., a candidate coding set of the first signal is determined.
Example 3, when the coding candidate is BCC coding, the candidate puncturing Yu Juzhen and the candidate coding rate are determined according to parameters of signaling such as bandwidth signaling and modulation signaling, and standards of the communication system. Thus, each set of candidate coding parameters in the candidate coding set is determined.
For the p-th group of candidate coding parameters in the N groups of candidate coding parameters, p is sequentially taken to be any positive integer from 1 to N, and the following S504-S508 are executed:
s504, the receiving end determines a BCC generation matrix according to the p-th group candidate coding parameters in the candidate coding set.
Example 3, when the coding candidate is BCC coding, the candidate puncturing Yu Juzhen and the candidate coding rate are determined according to parameters of signaling such as bandwidth signaling and modulation signaling, and standards of the communication system. Thus, the BCC generation matrix corresponding to the p-th set of candidate coding parameters is determined.
And S505, the receiving end decodes the first data in the first signal according to the BCC generation matrix, and determines the information bit soft information corresponding to the first data.
With reference to example 3, the receiving end may extract, based on the hypothesis test theory, codeword soft information corresponding to a BCC encoder from the first signal according to puncturing Yu Juzhen under a p-th set of candidate encoding parameters (corresponding to one candidate BCC encoder), and decode the codeword soft information of the first signal according to the BCC generation matrix to obtain information bit soft information of the first signal after corresponding decoding under the candidate BCC encoder.
And S506, the receiving end encodes the information bit soft information corresponding to the first data according to the BCC generation matrix to determine the third data.
With reference to example 3, under each group of candidate BCC encoders, the BCC soft information corresponding to the first data output in S505 is subjected to BCC soft encoding by the BCC generation matrix corresponding to the BCC encoder, so as to obtain codeword soft information of the information bit soft information corresponding to the first data, i.e. third data.
S507, the receiving end determines the codeword soft information to be verified corresponding to the p-th group candidate coding parameters according to the first data and the third data.
And determining codeword soft information of the third data corresponding to the puncturing position in the first data through the puncturing matrix corresponding to the third data and the p-th set of candidate coding parameters, so that codeword soft information to be verified corresponding to the p-th set of candidate coding parameters can be obtained by supplementing the codeword soft information of the third data corresponding to the puncturing position in the first data to the codeword soft information of the puncturing position in the first data.
S508, the receiving end determines the posterior probability log likelihood ratio of the syndrome of the codeword soft information to be verified corresponding to the p-th group candidate coding parameter according to the codeword soft information to be verified corresponding to the p-th group candidate coding parameter.
And determining the posterior probability log-likelihood ratio of the syndrome of the codeword to be verified corresponding to the p-th group candidate coding parameter by utilizing the codeword to be verified soft information corresponding to the p-th group candidate coding parameter in S507, thereby using the posterior probability log-likelihood ratio of the syndrome of the codeword to be verified corresponding to the p-th group candidate coding parameter as the identification measure for identifying the coding parameter of the encoder.
S509, the receiving end determines a group of target coding parameters of the first signal based on maximum likelihood estimation and on posterior probability log likelihood ratio judgment of syndromes of N code word soft information to be verified corresponding to N groups of candidate coding parameters.
And S5010, the receiving end decodes the first signal according to a group of target coding parameters of the first signal.
When the first signal contains information of the coding parameters, it can be determined that the first data does not need coding identification, and the receiver can determine the coding parameters of the first signal according to the information of the coding parameters in the first data, and decode the first data.
When the first data does not include the information of the encoding parameter, the first data may be decoded according to the encoding parameter of the identified BCC encoding scheme.
By the method, the identifiable range of the convolution code is expanded, so that besides the Turbo code or the RSC code without the puncturing period, the BCC code with the puncturing period and the BCC code without the deleting period can be effectively identified. The method is not only aimed at the problem of blind code identification of the periodic Turbo code or the RSC code, but also suitable for blind identification of multiple groups of punctured convolutional code types, and expands the application range of code identification.
Referring to fig. 6, a schematic structural diagram of a communication device according to an embodiment of the present application is provided, where the communication device 600 includes a receiving module 610 and a processing module 620. The communication device may be used to implement the functionality relating to the terminal device in any of the method embodiments described above. The communication means may be, for example, a terminal device, such as a hand-held terminal device or a vehicle-mounted terminal device, a chip or a circuit included in the terminal device, or a device including the terminal device, such as various types of vehicles, or the like. The communication device may be used to implement the functionality relating to the terminal device in any of the method embodiments described above. The communication means may be, for example, a terminal device or a chip or a circuit comprised in a terminal device.
The communication device is illustrated, when performing the operations or steps of the corresponding terminal device in the method embodiments shown in fig. 3a, fig. 4 and fig. 5, the receiving module 610 is configured to receive a first signal, the processing module 620 is configured to determine a candidate encoding set according to a signaling parameter of the first signal, where the candidate encoding set includes N groups of candidate encoding parameters, where N is a positive integer greater than 1, for a p-th group of candidate encoding parameters in the N groups of candidate encoding parameters, the p sequentially takes any one positive integer from 1 to N, perform the steps of supplementing a puncturing position of first data in the first signal according to a puncturing Yu Juzhen in the p-th group of candidate encoding parameters, obtain second data, decode the second data according to the p-th group of candidate encoding parameters, obtain a decoded bit sequence, encode the bit sequence according to the p-th group of candidate encoding parameters, determine, according to the first data and the third data, determine that the p-th group of candidate encoding parameters corresponds to the p-th group of candidate encoding parameters, and determine that the N-th group of candidate encoding parameters corresponds to the N-th group of candidate encoding parameters is the first data, and the N-th candidate encoding parameters is determined according to the N-th group of candidate encoding parameters.
One possible implementation manner, the candidate coding parameters comprise at least one of a coding mode, a puncturing matrix and a coding rate.
In a possible implementation manner, the processing module 620 is specifically configured to determine the candidate code set according to a signaling parameter of the first signal, where the signaling parameter of the first signal includes at least one of a bandwidth parameter and a modulation parameter.
In a possible implementation manner, the processing module 620 is specifically configured to determine a block convolutional code BCC generation matrix corresponding to the p-th set of candidate coding parameters, and decode the second data according to the BCC generation matrix corresponding to the p-th set of candidate coding parameters to obtain the decoded bit sequence.
The processing module 620 is specifically configured to determine a first sub-encoder included in a Turbo encoder corresponding to the p-th set of candidate coding parameters according to a puncturing matrix and a coding rate included in the p-th set of candidate coding parameters, and determine a BCC generation matrix corresponding to the p-th set of candidate coding parameters according to a recursive systematic convolutional code RSC generation matrix of the first sub-encoder.
The processing module 620 is specifically configured to determine an RSC generation matrix of an encoder corresponding to the RSC coding mode according to the puncturing matrix and the coding rate included in the p-th set of candidate coding parameters, and determine a BCC generation matrix corresponding to the p-th set of candidate coding parameters according to the RSC generation matrix.
The processing module 620 is specifically configured to determine, according to the puncturing matrix and the coding rate included in the p-th set of candidate coding parameters, a BCC generation matrix corresponding to the p-th set of candidate coding parameters.
In a possible implementation manner, the processing module 620 is specifically configured to determine, according to codeword soft information included in the third data and corresponding to puncturing bits of the puncturing matrix in the p-th set of candidate coding parameters, and a codeword of the first data, to-be-verified data corresponding to the p-th set of candidate coding parameters.
In a possible implementation manner, the processing module 620 is specifically configured to determine, for any one to-be-verified data of the N to-be-verified data, a posterior probability log likelihood ratio of a syndrome of the to-be-verified data and likelihood probability of the posterior probability log likelihood ratio, and take a set of candidate encoding parameters corresponding to the N likelihood probabilities when the likelihood probability is the maximum as the set of target encoding parameters.
The processing module 620 involved in the communication device may be implemented by at least one processor or processor-related circuit component and the receiving module 610 may be implemented by at least one transceiver or transceiver-related circuit component or communication interface. The operation and/or function of each module in the communication device is to implement the corresponding flow of the method shown in fig. 3a, fig. 4 or fig. 5, respectively, and is not described herein for brevity. Optionally, the communication device may further include a storage module, where the storage module may be configured to store data and/or instructions, and the receiving module 610 and/or the processing module 620 may read the data and/or instructions in the access module, so that the communication device implements a corresponding method. The memory module may be implemented, for example, by at least one memory. The storage module, the processing module and the transceiver module may exist separately, or may be integrated in whole or in part, for example, the storage module and the processing module are integrated, or the processing module and the transceiver module are integrated, etc.
In connection with each network element shown in fig. 1a and 1b, for example, an AP, an STA, a base station, or a terminal device may employ the constituent structure shown in fig. 7 or include the components shown in fig. 7. Fig. 7 is a schematic diagram of a communication device 700 according to an embodiment of the present application, for example, the communication device 700 may be an AP or a chip in the AP, a baseband chip, or a system on a chip. Similarly, the network device and the terminal device shown in fig. 1b may adopt the constituent structure shown in fig. 7 or include the components shown in fig. 7. For example, the apparatus 700 may be a chip or a system on a chip in a network device or a terminal device. As shown in fig. 7, the apparatus 700 may include a processor 701, a communication line 702, and a transceiver circuit 703. Further, the apparatus 700 may also include a memory 704. The processor 701, the memory 704, and the transceiver circuit 703 may be connected via a communication line 702.
The processor 701 may be a central processing unit (central processing unit, CPU), a general purpose processor network processor (network processor, NP), a digital signal processor (DIGITAL SIGNAL processing, DSP), a microprocessor, a microcontroller, a programmable logic device (programmable logic device, PLD), or any combination thereof. The processor 701 may also be other means for performing processing functions, such as a circuit, device, or software module. The processor 701 may have functions of encoding, modulating, demodulating, decoding, etc.
Communication lines 702 are used to carry information between the various components included in the apparatus 700.
Transceiver circuitry 703 for communicating with other devices or other communication networks. The other communication network may be an ethernet, a radio access network (radio access network, RAN), a wireless local area network (wireless local area networks, WLAN), etc. The transceiver circuit 703 may be a radio frequency module or any means capable of enabling communication. The embodiment of the present application is described by taking the transceiver circuit 703 as an example of a radio frequency module, where the radio frequency module may include an antenna, a radio frequency circuit, and the radio frequency circuit may include a radio frequency integrated chip, a power amplifier, and the like.
Memory 704 for storing instructions. Wherein the instructions may be a computer program for performing the code recognition method of the present application.
The memory 704 may be a read-only memory (ROM) or other type of static storage device capable of storing static information and/or instructions, a random access memory (random access memory, RAM) or other type of dynamic storage device capable of storing information and/or instructions, an EEPROM, a CD-ROM or other optical disk storage, magnetic disk storage medium or other magnetic storage device, including compact disk, laser disk, optical disk, digital versatile disk, blu-ray disk, etc.
It should be noted that, the memory 704 may exist independently of the processor 701 or may be integrated with the processor 701. Memory 704 may be used to store instructions or program code or some data, etc. Memory 704 may be located within device 700 or external to device 700, without limitation. A processor 701 is configured to execute instructions stored in a memory 704 to implement an encoding method according to the following embodiments of the present application.
In one example, processor 701 may include one or more CPUs, such as CPU0 and CPU1 in fig. 7.
As an alternative implementation, the apparatus 700 includes a plurality of processors, for example, the processor 707 may be included in addition to the processor 701 in fig. 7.
As an alternative implementation, the apparatus 700 further comprises an output device 705 and an input device 707. By way of example, input device 707 is a keyboard, mouse, microphone, or joystick, and output device 705 is a display screen, speaker (speaker), or the like.
It should be noted that the apparatus 700 may be a desktop computer, a portable computer, a network server, a mobile phone, a tablet computer, a wireless AP, an embedded device, a chip system, or a device having a similar structure in fig. 7. Furthermore, the constituent structures shown in fig. 7 do not constitute limitations of the apparatus, and the apparatus may include more or less components than those shown in fig. 7, or may combine some components, or may be arranged in different components, in addition to those shown in fig. 7.
In the embodiment of the application, the chip system can be composed of chips, and can also comprise chips and other discrete devices.
The embodiment of the application also provides a chip system, which comprises a processor, wherein the processor is coupled with a memory, and the memory is used for storing a program or instructions, and when the program or instructions are executed by the processor, the chip system is enabled to realize the method of the corresponding terminal equipment or the method of the corresponding network equipment in any method embodiment.
Alternatively, the processor in the system-on-chip may be one or more. The processor may be implemented in hardware or in software. When implemented in hardware, the processor may be a logic circuit, an integrated circuit, or the like. When implemented in software, the processor may be a general purpose processor, implemented by reading software code stored in a memory.
Alternatively, the memory in the system-on-chip may be one or more. The memory may be integral with the processor or separate from the processor, and the application is not limited. The memory may be a non-transitory processor, such as a ROM, which may be integrated on the same chip as the processor, or may be separately provided on different chips, and the type of memory and the manner of providing the memory and the processor are not particularly limited in the present application.
The chip system may be a field programmable gate array (field programmable GATE ARRAY, FPGA), an Application Specific Integrated Chip (ASIC), a system on chip (SoC), a central processing unit (central processor unit, CPU), a network processor (network processor, NP), a digital signal processing circuit (DIGITAL SIGNAL processor, DSP), a microcontroller (micro controller unit, MCU), a programmable controller (programmable logic device, PLD) or other integrated chip, for example.
It should be understood that the steps in the above-described method embodiments may be accomplished by integrated logic circuitry in hardware in a processor or instructions in the form of software. The steps of the method disclosed in connection with the embodiments of the present application may be embodied directly in a hardware processor for execution, or in a combination of hardware and software modules in the processor for execution.
Embodiments of the present application also provide a computer-readable storage medium having stored therein computer-readable instructions which, when read and executed by a computer, cause the computer to perform the method of any of the method embodiments described above.
Embodiments of the present application also provide a computer program product which, when read and executed by a computer, causes the computer to perform the method of any of the method embodiments described above.
The embodiment of the application also provides a communication system which comprises the network equipment and at least one terminal equipment. Optionally, the communication system may further comprise a core network device.
It is to be appreciated that the processor referred to in the embodiments of the present application may be a CPU, but may also be other general purpose processors, DSP, ASIC, FPGA or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, or the like. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
It should also be understood that the memory referred to in embodiments of the present application may be volatile memory or nonvolatile memory, or may include both volatile and nonvolatile memory. The nonvolatile memory may be a read-only memory (ROM), a programmable ROM, an erasable ROM, an electrically erasable ROM, or a flash memory, among others. The volatile memory may be random access memory (random access memory, RAM) which acts as external cache memory. By way of example, and not limitation, many forms of RAM are available, such as static random access memory, dynamic random access memory, synchronous dynamic random access memory, double data rate synchronous dynamic random access memory, enhanced synchronous dynamic random access memory, synchronous link dynamic random access memory, and direct memory bus random access memory.
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, discrete hardware components, the memory (storage module) is integrated into the processor.
It should be noted that the memory described herein is intended to comprise, without being limited to, these and any other suitable types of memory.
It should be understood that the various numbers related to the various embodiments of the present application are merely for convenience of description, and the size of the sequence numbers of the above-mentioned processes or steps does not mean the order of execution, and the order of execution of the processes or steps should be determined by the functions and inherent logic thereof, and should not constitute any limitation on the implementation process of the embodiments of the present application.
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
It will be clear to those skilled in the art that, for convenience and brevity of description, specific working procedures of the above-described systems, apparatuses and units may refer to corresponding procedures in the foregoing method embodiments, and are not repeated herein.
In the several embodiments provided by the present application, it should be understood that the disclosed systems, devices, and methods may be implemented in other manners. For example, the apparatus embodiments described above are merely illustrative, e.g., the division of the units is merely a logical function division, and there may be additional divisions when actually implemented, e.g., multiple units or components may be combined or integrated into another system, or some features may be omitted or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or units, which may be in electrical, mechanical or other form.
The units described as separate units may or may not be physically separate, and units shown as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in the embodiments of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit.
The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application may be embodied essentially or in a part contributing to the prior art or in a part of the technical solution, in the form of a software product stored in a storage medium, comprising several instructions for causing a computer device (which may be a personal computer, a server, a network device, etc.) to perform all or part of the steps of the method according to the embodiments of the present application. The storage medium includes various media capable of storing program codes such as a U disk, a mobile hard disk, a ROM, a RAM, a magnetic disk or an optical disk.
In various embodiments of the application, where no special description or logic conflict exists, terms and/or descriptions between the various embodiments are consistent and may reference each other, and features of the various embodiments may be combined to form new embodiments based on their inherent logic.