This application pertains to the field of communications technologies, and specifically relates to a decoding method, a device, and a readable storage medium.
Although conventional orthogonal space time block code (OSTBC) coding codebooks including Alamouti codes can achieve a full diversity gain and a full rate, the codebooks are all designed for conventional active radio frequency communication, without considering modulation characteristics and implementation complexity of passive terminals like backscatter communication. In addition, a decoder needs to know channel state information (CSI) between all transmit antennas and receive antennas.
Currently, there is an urgent need for a differential space time block code decoding method that can reduce system implementation complexity without requiring a decoder to know CSI between all transmit antennas and receive antennas.
Embodiments of this application provide a decoding method, a device, and a readable storage medium.
According to a first aspect, a decoding method is provided and includes: determining, by a decoder, an encoding coefficient vector based on a received signal and an NSTBC codebook; and decoding, by the decoder, original encoded input symbols in a current symbol period based on the encoding coefficient vector, a DSTBC encoding mode, and the NSTBC codebook.
According to a second aspect, a decoding apparatus is provided and includes: a first determining module, configured to determine, by a decoder, an encoding coefficient vector based on a received signal and an NSTBC codebook; and a differential decoding module, configured to decode, by the decoder, original encoded input symbols in a current symbol period based on the encoding coefficient vector, a DSTBC encoding mode, and the NSTBC codebook.
According to a third aspect, a decoder is provided. The decoder includes a processor and a memory. The memory stores a program or instructions capable of running on the processor. When the program or instructions are executed by the processor, the steps of the method according to the first aspect are implemented.
According to a fourth aspect, a decoder is provided and includes a processor and a communication interface. The processor is configured to: determine, by the decoder, an encoding coefficient vector based on a received signal and an NSTBC codebook; and decode, by the decoder, original encoded input symbols in a current symbol period based on the encoding coefficient vector, a DSTBC encoding mode, and the NSTBC codebook.
According to a fifth aspect, a readable storage medium is provided. The readable storage medium stores a program or instructions. When the program or instructions are executed by a processor, the steps of the method according to the first aspect are implemented.
According to a sixth aspect, a chip is provided. The chip includes a processor and a communication interface. The communication interface is coupled to the processor. The processor is configured to run a program or instructions to implement the method according to the first aspect.
According to a seventh aspect, a computer program product is provided. The computer program product is stored in a storage medium. The computer program product is executed by at least one processor to implement the steps of the method according to the first aspect.
According to an eighth aspect, a communication device is provided. The communication device is configured to perform the steps of the method according to the first aspect.
The following clearly describes the technical solutions in the embodiments of this application with reference to the accompanying drawings in the embodiments of this application. Apparently, the described embodiments are only some rather than all of the embodiments of this application. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments of this application shall fall within the protection scope of this application.
The terms “first”, “second”, and the like in this specification and claims of this application are used to distinguish between similar objects instead of describing a specified order or sequence. It should be understood that the terms used in this way are interchangeable in appropriate circumstances, so that the embodiments of this application can be implemented in other orders than the order illustrated or described herein. In addition, objects distinguished by “first” and “second” usually fall within one class, and a quantity of objects is not limited. For example, there may be one or more first objects. In addition, the term “and/or” in the specification and claims indicates at least one of connected objects, and the character “/” generally represents an “or” relationship between associated objects.
It should be noted that technologies described in the embodiments of this application are not limited to a long term evolution (LTE)/LTE-Advanced (LTE-A) system, and can also be used in other wireless communications systems, such as code division multiple access (CDMA), time division multiple access (TDMA), frequency division multiple access (FDMA), orthogonal frequency division multiple access (OFDMA), single-carrier frequency-division multiple access (SC-FDMA), and other systems. The terms “system” and “network” in the embodiments of this application are usually used interchangeably. The described technologies may be used for the foregoing systems and radio technologies, and may also be used for other systems and radio technologies. However, in the following descriptions, a new radio (NR) system is described for an illustrative purpose, and NR terms are used in most of the following descriptions. These technologies may also be applied to other applications than an NR system application, for example, a 6th Generation (6G) communications system.
In the embodiments of this application, a decoder may be deployed on a receiving device, for example, may be a terminal or a network-side device. The terminal may be a terminal-side device such as a mobile phone, a tablet personal computer, a laptop computer or a notebook computer, a personal digital assistant (PDA), a palmtop computer, a netbook, an ultra-mobile personal computer (UMPC), a mobile Internet device (MID), an augmented reality (AR) or virtual reality (VR) device, a robot, a wearable device, vehicle user equipment (VUE), pedestrian user equipment (PUE), a smart home (a home device having a wireless communication function, such as a refrigerator, a television, a washing machine, or furniture), a game console, a personal computer (PC), a teller machine, or a self-service machine. The wearable device includes a smartwatch, a smart band, a smart headphone, smart glasses, smart jewelry (a smart bracelet, a smart wrist chain, a smart ring, a smart necklace, a smart anklet, a smart ankle chain, or the like), a smart wristband, smart clothing, or the like. It should be noted that a specific type of the terminal is not limited in the embodiments of this application. The network-side device may include an access network device or a core network device. The access network device may also be referred to as a radio access network device, a radio access network (RAN), a radio access network function, or a radio access network element. The access network device may include a base station, a wireless local area network (WLAN) access point, a Wireless Fidelity (Wi-Fi) node, or the like. The base station may be referred to as a NodeB, an evolved NodeB (eNB), an access point, a base transceiver station (BTS), a radio base station, a radio transceiver, a basic service set (BSS), an extended service set (ESS), a home NodeB, a home evolved NodeB, a transmission and reception point (TRP), or another appropriate term in the art. As long as the same technical effect is achieved, the base station is not limited to specific technical terms. It should be noted that in the embodiments of this application, only a base station in an NR system is used as an example for description, but a specific type of the base station is not limited. The core network device may include but is not limited to at least one of the following: a core network node, a core network function, a mobility management entity (MME), an access and mobility management function (AMF), a session management function (SMF), a user plane function (UPF), a policy control function (PCF), a policy and charging rules function (PCRF), an edge application server discovery function (EASDF), unified data management (UDM), a unified data repository (UDR), a home subscriber server (HSS), a centralized network configuration (CNC), a network repository function (NRF), a network exposure function (NEF), a local NEF (Local NEF or L-NEF), a binding support function (BSF), an application function (AF), or the like. It should be noted that in the embodiments of this application, only a core network device in the NR system is used as an example for description, but a specific type of the core network device is not limited.
For better understanding the technical solutions of this application, the following content is first described.
A future 6G communications network needs to support the massive Internet of Everything, where a quantity of IoT devices will reach hundreds of billions, and a connection density thereof will be 10-100 times higher than that of 5G, reaching a connection density of 10-100/m2. The massive IoT devices pose new challenges in terms of cost and power consumption. Cellular networking, low cost, low power consumption, and even passive zero power consumption are main trends in development of IoT devices in the future. Conventional passive terminals are limited by power consumption and hardware capabilities of the terminals, and communication distances of most of the terminals are less than 10 meters, far from a goal of cellular coverage of 100 meters. Therefore, how to effectively increase communication distances of passive terminals has become a difficulty that needs to be resolved after cellular networking of this technology.
Backscatter communication (BSC) controls an amplitude or a phase of a signal by changing a load impedance. Considering other non-ideal factors in a modulation circuit for backscatter communication, there are more or less errors in an amplitude or a phase of an output signal. However, as long as these signal errors are within a resolvable range, there is no impact on signal demodulation. Therefore, if there are fewer load impedances or fewer types of load impedances to be controlled on each antenna, a tolerable error may be greater, and a probability of error detection is smaller. In addition, due to power consumption and capability limitations of a backscatter communication device (BSC UE), in some cases, waste of power consumption and resources caused by sending pilots is not desired, that is, a decoder is required to complete signal demodulation without knowing CSI information.
Backscatter communication means that a backscatter communication device uses a radio frequency signal from another device or in an environment to perform signal modulation to transmit information of the backscatter communication device. A modulation circuit for backscatter communication is shown in
where Z0 is an antenna characteristic impedance, Z1 is a load impedance, j represents a complex number, and θT represents a phase. Assuming that the incident signal is Sin(t), an output signal is Sout(t)=Sin(t)|Γ|ejθT. Therefore, corresponding amplitude modulation, frequency modulation, or phase modulation can be implemented by properly controlling the reflection coefficient. Based on this, the backscatter communication device may be a tag in a conventional radio frequency identification (RFID), or the passive or semi-passive Internet of Things (IoT), which is collectively referred to as BSC UE herein for convenience.
Space time block codes STBCs are widely applied in cellular communication and wireless local area networks. By introducing signal redundancy in space domain and time domain and properly constructing a block encoding transmission matrix, the STBC achieves a diversity gain and an antenna gain without increasing a bandwidth.
An OSTBC is a special linear STBC, and its linear space time block code S meets the following single condition:
where l represents an identity matrix with M dimensions, i represents an ith element in the M dimensions, si is a diagonal element, an element in an ith row in S represents a symbol transmitted on an ith transmit antenna within M moments, and an element in a jth column in S represents a symbol transmitted at a jth moment on a ntth antenna. In the transmission matrix S, columns that meet the foregoing formula are mutually orthogonal, which means that signal sequences transmitted on different antennas are also orthogonal, thereby ensuring that the STBC can achieve a full diversity gain at the same time. A corresponding decoder only needs to perform simple maximum ratio combining (MRC) to sequentially decouple transmitted symbols on different antennas, and perform detection and estimation by using a maximum likelihood detection (ML) algorithm.
An Alamouti code is a most representative OSTBC code and can achieve a full diversity gain and a full rate gain.
Assuming that channels from the two transmit antennas to receive antennas are represented as h1 and h2 respectively and meet time-invariant characteristics in two adjacent symbol periods, that is:
The following may be obtained by substituting the received signals r1 and r2:
Finally, signals s1 and s2 can be estimated by using an ML detector.
In addition to the typical Alamouti block code, a codebook of typical two-antenna OSTBCs is shown in Table 1.
In recent years, with deep research on backscatter communication, some researchers put forward a concept of backscatter diversity and design a corresponding space time block codeword. Based on this type of codeword, hardware implementation complexity is reduced, and a probability of error detection is reduced by optimizing a codebook of conventional Alamouti codes.
Two-antenna transmit diversity is used as an example, that is, a codeword matrix S in this case has 2×2 dimensions, and its coding structure is:
According to the foregoing coding structure, it is assumed that in a current symbol period, a symbol transmitted on antenna 1 is denoted as s1, and that a symbol transmitted on antenna 2 is denoted as s2*. In a next symbol period, a symbol transmitted on antenna 1 is denoted as s2, and a symbol transmitted on antenna 2 is denoted as (−s1*). According to a definition of an OSTBC codeword, S2 belongs to the OSTBC codeword, and therefore can achieve a full diversity gain and full rate transmission. The following analyzes differences between this type of codeword and the conventional Alamouti code in backscatter communication.
Assuming that transmission is performed based on a binary phase shift keying (BPSK) modulation symbol, according to a backscatter communication mapping principle, mapping rules for symbols 0 and 1 and reflection coefficients are:
In other words, the symbols 0 and 1 are represented by controlling two phase-inverted load impedances. Therefore, a coding table for transmitting different symbols simultaneously on two antennas by using a diversity encoding codeword S2 is Table 4. For comparison, Table 2 and Table 3 also provide coding tables for transmitting different symbols simultaneously on two antennas by using an Alamouti codeword and an extended Alamouti codeword. The extended Alamouti codeword is:
As can be learned according to Table 2, based on the designed NSTBC codebook, antenna 1 requires only two coefficients |Γ|ejθ and |Γ|ej(θ+π); and antenna 2 also requires only two coefficients |Γ| e−jθ and |Γ|e−j(θ+π), that is, only two types of load impedances are required on each antenna. As can be learned according to Tables 3 and 4, based on the Alamouti codeword and the extended Alamouti codeword, both antenna 1 and antenna 2 require four coefficients |Γ|ejθ, |Γ⊕ej(θ+π), |Γ|e−jθ, and |Γ⊕e−j(θ+π), that is, four types of load impedances are required on each antenna.
For the conventional OSTBC and NSTBC, the decoder uses a coherent detection decoding scheme. Therefore, the decoder requires accurate channel state information (CSI) from a transmit antenna to a receive antenna. However, in high-speed movement scenarios or scenarios with fast-changing channel fading conditions, or scenarios in which it is difficult to transmit pilots due to power limitations in backscatter communication, it is difficult for the decoder to perform channel estimation accurately or costs of accurate channel estimation are high. In this case, the decoder cannot obtain accurate CSI information. The differential space time block code is a scheme in which neither the encoder nor the decoder needs to know CSI information, encoding and decoding are simple, and diversity gains can be obtained. The following uses two-antenna transmission and single-antenna reception as examples for description.
At a transmitting encoder, it is assumed that the encoder transmits the following symbols in symbol period 1 and symbol period 2 according to the Alamouti scheme:
Signals s1 and s2 transmitted at the two times do not carry information and are used only as reference signals. Next, the encoder performs transmission in a differential encoding mode. Assuming that in a (2t−1)th symbol period, symbols transmitted on a first antenna and a second antenna are s2t−1 and s2t respectively, in a 2tth symbol period, symbols transmitted on the first antenna and the second antenna are −s2t* and s2t−1* respectively. In a (2t+1)th symbol period, a group of 2m bits arrives at the encoder, and a corresponding coefficient vector (A(D2t+1), B(D2t+1)) is generated. The encoder calculates, based on symbol vectors transmitted in the previous two symbol periods and the current coefficient vector (A(D2t+1), B(D2t+1)), symbols transmitted in the current (2t+1)th symbol period:
In addition, based on the Alamouti codebook, transmitted symbols −s2t+2* and s2t+1* on the two antennas in a (2t+2)th symbol period are calculated respectively, where the coefficient vector (A(D2t+1), B(D2t+1)) meets:
According to the foregoing encoding rules, the transmitted symbols are repeatedly encoded.
At a receiving decoder, assuming that signals r2t−1, r2t, r2t+1, and r2t+2 are received, and that a channel matrix is defined as:
and that a noise signal is defined as:
Therefore,
After combining processing, the following may be obtained:
For simplicity, the following formulas are defined:
Therefore, the following may be obtained:
According to the previous mathematical derivation,
Therefore,
Signals at four moments are processed as follows:
After expansion, the following is obtained:
For simplicity, the following formulas are defined:
The following may be obtained:
In combination with the previous mathematical derivation, the following is obtained:
Because all coefficient vectors in a coefficient vector set V are equal in length and (A(D2t+1), B(D2t+1)) is in a one-to-one correspondence with input symbol information, a receiver selects a coefficient vector (Ã(D2t+1, {tilde over (B)}(D2t+1)) with a shortest Euclidean distance for determining a signal vector (1, 2) as a decoding output:
After (A(D2t+1), B(D2t+1)) is obtained through calculation, it is demapped to original symbols to restore original bits.
Although conventional OSTBC coding codebooks including Alamouti codes can achieve a full diversity gain and a full rate, the codebooks are all designed for conventional active radio frequency communication, without considering modulation characteristics and implementation complexity of passive terminals like backscatter communication. In addition, the decoder needs to know channel state information CSI between all transmit antennas and receive antennas.
Based on the NSTBC codebook proposed for backscatter communication, hardware implementation complexity is reduced, and a probability of error detection is reduced by optimizing the codebook of conventional Alamouti codes. However, this mode requires the decoder to know CSI information between all transmit antennas and receive antennas. Although the conventional Alamouti-based differential space time block code does not require the decoder to know CSI information between all transmit antennas and receive antennas, modulation characteristics and implementation complexity of passive terminals like backscatter communication are not considered.
A decoding method provided in the embodiments of this application is hereinafter described in detail by using some embodiments and application scenarios thereof with reference to the accompanying drawings.
Referring to
Step 201: A decoder determines an encoding coefficient vector based on a received signal and an NSTBC codebook.
Step 202: The decoder decodes original encoded input symbols in a current symbol period based on the encoding coefficient vector, a DSTBC encoding mode, and the NSTBC codebook.
In this embodiment of this application, on one hand, based on the received signal and a structure of the NSTBC codebook, a signal vector is constructed, and the encoding coefficient vector is calculated; and on the other hand, the original encoded input symbols in the current symbol period are calculated and restored based on the calculated encoding coefficient vector, the DSTBC encoding mode, and the NSTBC codebook. Based on this decoding mode, original symbols can be restored in absence of a pilot, and system overheads can be reduced. In addition, based on the NSTBC codebook, a quantity or types of load impedances on each antenna can be reduced, and a probability of error detection can be effectively reduced, while a diversity gain is ensured.
The decoding method provided in this embodiment of this application is a new decoding method obtained by combining the DSTBC encoding mode and the NSTBC codebook and extracting advantages of the two. This new decoding method may also be referred to as a differential NSTBC decoding mode.
It should be noted that the signal vector may also be referred to as a statistical signal vector. The original encoded input symbols refer to symbols that have been encoded by an encoder and that have not been subjected to channel gains and/or noise. Different from signals directly received by the decoder, the original encoded input symbols are symbols that need to be obtained by the decoder through decoding.
Before a differential NSTBC decoding scheme is described in detail, a differential NSTBC encoding process is briefly described. The process is as follows:
In a specific implementation, a codebook structure of the NSTBC codebook meets:
In a specific implementation, that a decoder determines an encoding coefficient vector based on a received signal and a new space time block code NSTBC codebook includes:
Specifically, that the decoder determines an encoding coefficient vector of the decoder in the current symbol period based on the signal vector in the foregoing (2) includes:
It should be noted that all coefficient vectors in the coefficient vector set V are equal in length and that (A(D2t+1), B(D2t+1)) is in a one-to-one correspondence with input symbols. The decoder selects the encoding coefficient vector (Ã(D2t+1), {tilde over (B)}(D2t+1)) with a shortest Euclidean distance to the signal vector (1, 2) as a decision output based on the foregoing formula, which is generally estimated by using a maximum likelihood algorithm.
Specifically, that the decoder decodes original encoded input symbols in a current symbol period based on the encoding coefficient vector of the decoder in the current symbol period, a DSTBC encoding mode, and the NSTBC codebook includes:
In a specific implementation, the method further includes:
In this embodiment of this application, the decoder determines the original bits or the original symbols by directly querying the table. An advantage of this processing is that the original bits or the original symbols are restored and determined by directly querying the mapping table, so that implementation complexity and a decoding delay are both lower.
The original bits or the original symbols refer to initial data bits or initial symbols to be encoded at the encoder, and the initial reference symbols refer to reference symbols on the transmit antennas in an initial symbol period, that is, in a first symbol period. In this embodiment of this application, the decoder performs decoding processing in the foregoing manner, and finally the decoder obtains the initial data bits or the initial symbols.
In a specific implementation, the method further includes:
In this embodiment of this application, the decoder directly calculates the original bits or the original symbols. An advantage of this processing is that the decoder does not need to store the mapping table, but decodes the original encoded input symbols through real-time calculation.
In a specific implementation, the method further includes: the decoder determines that original encoded input symbols or initial reference symbols in a first symbol period are (s1, s2*) and that original encoded input symbols in a second symbol period are (s2, −s1*); and
In this way, the decoder completes decoding processing in the first two symbol periods. The foregoing decoding processing manner in the (2t+1)th symbol period can be used in the third symbol period and subsequent symbol periods.
In a specific implementation, that the decoder determines a signal vector based on the received signal and the NSTBC codebook includes:
For example, in the (2t−1)th symbol period and the 2tth symbol period, received signals are:
Specifically, the signal vector (1, 2) meets:
Specifically, (S1, S2) meets:
The foregoing describes the process in which the decoder decodes the original encoded input symbols in the current symbol period. The entire differential NSTBC decoding transmission may be completed by repeating the foregoing process.
The technical solutions in the embodiments of this application are hereinafter described with reference to specific implementations.
In an implementation, two transmit antennas and a single receive antenna are used as an example for description.
Assuming that signals received by the receive antenna in a (2t−1)th symbol period, a 2tth symbol period, a (2t+1)th symbol period, and a (2t+2)th symbol period are r2t−1, r2t, r2t+1, and r2t+2 respectively, and that a channel matrix is defined as:
The vectors of the signals received in the (2t−1)th symbol period and the (2t+1)th symbol period are processed as follows:
After combining processing, the following is obtained:
For simplicity, a statistical signal component 1, a noise interference component N1, and a wanted signal component S1 are respectively defined as:
Therefore, the first statistical signal component 1 can be obtained:
Similarly, a received signal vector is defined as:
Received signal vectors in the (2t−1)th symbol period and the (2t+1)th symbol period are processed as follows:
After combining processing, the following is obtained:
For simplicity, a statistical signal component 3Z2, a noise interference component N2, and a wanted signal component S2 are respectively defined as:
Therefore, the second statistical signal component 2 can be obtained:
Therefore, a statistical signal vector of received signals is obtained through calculation:
After obtaining the statistical signal vector (1, 2) of the received signals, a decoder selects an encoding coefficient vector (Ã(D2t+1), {tilde over (B)}(D2t+1)) with a shortest Euclidean distance to the statistical signal vector (1, 2) as a decision output:
After the original encoded input symbols (s2t+1, s2t+2*) on the two antennas in the (2t+1)th symbol period are decoded, the original input symbols (s2t+1, s2t+2) and corresponding input bits can be restored.
In this implementation, the decoder does not need to store a mapping table, but decodes an original input signal through real-time calculation.
In another implementation, different from the foregoing implementation in which the corresponding original encoded input symbols (s2t+1, s2t+2*) are obtained through calculation after the encoding coefficient vector (Ã(D2t+1), {tilde over (B)}(D2t+1)) is obtained, in the implementation of the present invention, original input symbols are demapped and decoded by querying a mapping table. A specific solution is as follows:
BPSK is used as an example to describe differential NSTBC decoding. Assuming that BPSK modulation is used, a set of constellation points is {−1/√{square root over (2)}, 1/√{square root over (2)}}, where √{square root over (2)} in the set of constellation points is to ensure normalization processing of transmit power, and a set of encoding coefficient vectors is V. Assuming that two reference modulation signals are s1=s2=1/√{square root over (2)}, and that two input information bits at an input end of an encoder are c1 and c2, the first bit c1 is mapped to a symbol s3, the second bit c2 is mapped to a symbol s4, and the symbols s3 and s4 are both BPSK constellation points. A mapping relationship is:
According to a definition of an encoding coefficient vector,
Based on different values of the input bits c1 and c2, a mapping table between the input bits and (A(D3), B(D3)) may be obtained:
Mapping table between coefficient vectors and input bits in BPSK modulation
Because the mapping table is applicable to a coefficient vector (Ã, {tilde over (B)}) in different symbol periods after initial reference symbols are determined, after a coefficient vector (Ã(D2t+1), {tilde over (B)}(D2t+1)) is obtained through calculation, the input symbols or input bits (c1, c2) can be demapped and obtained by querying the mapping table.
An advantage of this implementation is that the original input symbols are restored by directly querying the mapping table without calculation, so that implementation complexity and a decoding delay are both lower.
The decoding method provided in this embodiment of this application may be performed by a decoding apparatus. A decoding apparatus provided in an embodiment of this application is described by assuming that the decoding apparatus performs the decoding method in this embodiment of this application.
Referring to
In this embodiment of this application, on one hand, based on the received signal and a structure of the NSTBC codebook, a signal vector is constructed, and the encoding coefficient vector is calculated; and on the other hand, the original encoded input symbols in the current symbol period are calculated and restored based on the calculated encoding coefficient vector, the DSTBC encoding mode, and the NSTBC codebook. Based on this decoding mode, original symbols can be restored in absence of a pilot, and system overheads can be reduced. In addition, based on the NSTBC codebook, a quantity or types of load impedances on each antenna can be reduced, and a probability of error detection can be effectively reduced, while a diversity gain is ensured.
In a specific implementation, a codebook structure of the NSTBC codebook meets:
In a specific implementation, the first determining module is specifically configured to:
In a specific implementation, the first determining module is specifically configured to:
In a specific implementation, the differential decoding module is specifically configured to:
In a specific implementation, the apparatus further includes:
In a specific implementation, the apparatus further includes:
In a specific implementation, the apparatus further includes:
In a specific implementation, the first determining module is specifically configured to:
In a specific implementation, the signal vector (1, 2) meets:
In a specific implementation, (S1, S2) meets:
The decoding apparatus in this embodiment of this application may be an electronic device, for example, an electronic device with an operating system, or may be a component in an electronic device, for example, an integrated circuit or a chip. The electronic device may be a terminal, or may be other devices than a terminal. For example, the terminal may include but is not limited to the foregoing illustrated type of the terminal 11. The other devices may be a server, a network attached storage (NAS), and the like. This is not specifically limited in this embodiment of this application.
The decoding apparatus provided in this embodiment of this application can implement each process implemented by the method embodiment in
Optionally, as shown in
An embodiment of this application further provides a decoder, including a processor and a communication interface. The processor is configured to: determine, by the decoder, an encoding coefficient vector based on a received signal and an NSTBC codebook; and decode, by the decoder, original encoded input symbols in a current symbol period based on the encoding coefficient vector, a DSTBC encoding mode, and the NSTBC codebook.
Specifically, for a case that the decoder is a terminal,
The terminal 500 includes but is not limited to at least some components such as a radio frequency unit 501, a network module 502, an audio output unit 503, an input unit 504, a sensor 505, a display unit 506, a user input unit 507, an interface unit 508, a memory 509, and a processor 510.
A person skilled in the art may understand that the terminal 500 may further include a power supply (for example, a battery) supplying power to all components. The power supply may be logically connected to the processor 510 through a power management system. In this way, functions such as charge management, discharge management, and power consumption management are implemented by using the power management system. The terminal structure shown in
It should be understood that, in this embodiment of this application, the input unit 504 may include a graphics processing unit (GPU) 5041 and a microphone 5042. The graphics processing unit 5041 processes image data of a still picture or video obtained by an image capture apparatus (such as a camera) in a video capture mode or an image capture mode. The display unit 506 may include a display panel 5061, and the display panel 5061 may be configured in a form of a liquid crystal display, an organic light-emitting diode, or the like. The user input unit 507 includes at least one of a touch panel 5071 and other input devices 5072. The touch panel 5071 is also referred to as a touchscreen. The touch panel 5071 may include two parts: a touch detection apparatus and a touch controller. The other input devices 5072 may include but are not limited to a physical keyboard, a function button (such as a volume control button or a power button), a trackball, a mouse, and a joystick. Details are not described herein again.
In this embodiment of this application, after receiving downlink data from a network-side device, the radio frequency unit 501 may transmit the downlink data to the processor 510 for processing. In addition, the radio frequency unit 501 may send uplink data to the network-side device. Usually, the radio frequency unit 501 includes but is not limited to an antenna, an amplifier, a transceiver, a coupler, a low noise amplifier, a duplexer, and the like.
The memory 509 may be configured to store software programs or instructions and various data. The memory 509 may primarily include a first storage area for storing programs or instructions and a second storage area for storing data. The first storage area may store an operating system, an application program or instructions required by at least one function (such as an audio play function and an image play function), and the like. In addition, the memory 509 may include a volatile memory or a non-volatile memory, or the memory 509 may include both a volatile memory and a non-volatile memory. The non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), a static random access memory (SRAM), a dynamic random access memory (DRAM), a synchronous dynamic random access memory (SDRAM), a double data rate synchronous dynamic random access memory (DDR SDRAM), an enhanced synchronous dynamic random access memory (ESDRAM), a synchlink dynamic random access memory (SLDRAM), and a direct rambus random access memory (DRRAM). The memory 509 in this embodiment of this application includes but is not limited to these and any other suitable types of memories.
The processor 510 may include one or more processing units. Optionally, the processor 510 integrates an application processor and a modem processor. The application processor mainly processes operations related to the operating system, a user interface, an application program, and the like. The modem processor mainly processes a wireless communication signal. For example, the modem processor is a baseband processor. It may be understood that the modem processor may alternatively not be integrated in the processor 510.
The processor 510 is configured to determine, by a decoder, an encoding coefficient vector based on a received signal and an NSTBC codebook.
The processor 510 is configured to decode, by the decoder, original encoded input symbols in a current symbol period based on the encoding coefficient vector, a DSTBC encoding mode, and the NSTBC codebook.
In this embodiment of this application, on one hand, based on the received signal and a structure of the NSTBC codebook, a signal vector is constructed, and the encoding coefficient vector is calculated; and on the other hand, the original encoded input symbols in the current symbol period are calculated and restored based on the calculated encoding coefficient vector, the DSTBC encoding mode, and the NSTBC codebook. Based on this decoding mode, original symbols can be restored in absence of a pilot, and system overheads can be reduced. In addition, based on the NSTBC codebook, a quantity or types of load impedances on each antenna can be reduced, and a probability of error detection can be effectively reduced, while a diversity gain is ensured.
In a specific implementation, a codebook structure of the NSTBC codebook meets:
In a specific implementation, the processor 510 is specifically configured to:
In a specific implementation, the processor 510 is specifically configured to:
In a specific implementation, the processor 510 is specifically configured to:
In a specific implementation, the processor 510 is configured to determine, by the decoder, original bits or original symbols based on a preset mapping table between the original bits or the original symbols and (Ã(D2t+1), {tilde over (B)}(D2t+1)), where
In a specific implementation, the processor 510 is configured to determine, by the decoder, original symbols (s2t+1, s2t+2) based on the decoded original encoded input symbols (s2t+1, s2t+2*); and
In a specific implementation, the processor 510 is configured to determine, by the decoder, that original encoded input symbols in a first symbol period are (s1, s2*) and that original encoded input symbols in a second symbol period are (s2, −s1*), where
In a specific implementation, the processor 510 is specifically configured to:
In a specific implementation, the signal vector (1, 2) meets:
In a specific implementation, (S1, S2) meets:
Specifically, in a case that the decoder is a network-side device, as shown in
The method in the foregoing method embodiment may be implemented in the baseband apparatus 63. The baseband apparatus 63 includes a baseband processor.
The baseband apparatus 63 may include, for example, at least one baseband unit, where a plurality of chips are disposed on the baseband unit. As shown in
The network-side device may further include a network interface 66, where the interface is, for example, a common public radio interface (CPRI).
Specifically, the network-side device 600 in this embodiment of the present invention further includes a program or instructions stored in the memory 65 and capable of running on the processor 64. When the processor 64 invokes the program or instructions in the memory 65, the method performed by each module shown in
An embodiment of this application further provides a readable storage medium. The readable storage medium stores a program or instructions. When the program or instructions are executed by a processor, each process of the foregoing embodiment of the decoding method is implemented, with the same technical effect achieved. To avoid repetition, details are not described herein again.
The processor is a processor in the terminal in the foregoing embodiment. The readable storage medium includes a computer-readable storage medium, such as a computer read-only memory ROM, a random access memory RAM, a magnetic disk, or an optical disc.
In addition, an embodiment of this application provides a chip. The chip includes a processor and a communication interface. The communication interface is coupled to the processor. The processor is configured to run a program or instructions to implement each process of the foregoing embodiment of the decoding method, with the same technical effect achieved. To avoid repetition, details are not described herein again. It should be understood that the chip provided in this embodiment of this application may also be referred to as a system-level chip, a system chip, a chip system, a system-on-chip, or the like.
In addition, an embodiment of this application provides a computer program product. The computer program product is stored in a storage medium. The computer program product is executed by at least one processor to implement each process of the foregoing embodiment of the decoding method, with the same technical effect achieved. To avoid repetition, details are not described herein again.
It should be noted that in this specification, the term “comprise”, “include”, or any of their variants are intended to cover a non-exclusive inclusion, so that a process, a method, an article, or an apparatus that includes a list of elements not only includes those elements but also includes other elements that are not expressly listed, or further includes elements inherent to such process, method, article, or apparatus. In absence of more constraints, an element preceded by “includes a . . . ” does not preclude existence of other identical elements in the process, method, article, or apparatus that includes the element. In addition, it should be noted that the scope of the method and apparatus in the implementations of this application is not limited to performing the functions in an order shown or discussed, and may further include performing the functions in a substantially simultaneous manner or in a reverse order depending on the functions used. For example, the method described may be performed in an order different from that described, and various steps may be added, omitted, or combined. In addition, features described with reference to some examples may be combined in other examples.
According to the foregoing description of the implementations, a person skilled in the art may clearly understand that the methods in the foregoing embodiments may be implemented by using software in combination with a necessary general hardware platform, and certainly may alternatively be implemented by using hardware. However, in most cases, the former is a preferred implementation. Based on such an understanding, the technical solutions of this application essentially or the part contributing to the prior art may be implemented in a form of a computer software product. The computer software product is stored in a storage medium (such as a ROM/RAM, a magnetic disk, or an optical disc), and includes several instructions for instructing a terminal (which may be a mobile phone, a computer, a server, an air conditioner, a network device, or the like) to perform the methods described in the embodiments of this application.
The foregoing describes the embodiments of this application with reference to the accompanying drawings. However, this application is not limited to the foregoing specific embodiments. The foregoing specific embodiments are merely illustrative rather than restrictive. Inspired by this application, a person of ordinary skill in the art may develop many other manners without departing from principles of this application and the protection scope of the claims, and all such manners fall within the protection scope of this application.
Number | Date | Country | Kind |
---|---|---|---|
202111658371.5 | Dec 2021 | CN | national |
This application is a continuation of International Application No. PCT/CN2022/141969 filed on Dec. 26, 2022, which claims priority to Chinese Patent Application No. 202111658371.5 filed on Dec. 30, 2021, which are incorporated herein by reference in their entireties.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/CN2022/141969 | Dec 2022 | WO |
Child | 18744230 | US |