Wireless communication systems are widely deployed to provide various telecommunication services such as telephony, video, data, messaging, and broadcasts. A wireless network may include one or more network nodes that support communication for wireless communication devices, such as a user equipment (UE). A UE may communicate with a network node via downlink communications and uplink communications. “Downlink” (or “DL”) refers to a communication link from the network node to the UE, and “uplink” (or “UL”) refers to a communication link from the UE to the network node.
In some implementations, a method includes performing a decoding, by a user equipment (UE), of downlink control information (DCI) received via a physical downlink control channel (PDCCH) based on: detecting, by the UE, a UE-specific scrambling sequence and a radio network temporary identifier (RNTI) corresponding to the UE-specific scrambling sequence; and a skipping, by the UE, of a de-scrambling operation prior to the decoding of the DCI, wherein information regarding the UE-specific scrambling sequence and the RNTI is not previously stored by the UE; and refraining, by the UE, from decoding a plurality of possible UE-specific scrambling sequences based on the skipping of the de-scrambling operation prior to the decoding of the DCI.
In some implementations, a receiver includes one or more memories, and one or more processors, communicatively coupled to the one or more memories, configured to: perform a decoding of DCI received via a PDCCH based on: a detection of a receiver-specific scrambling sequence and an RNTI corresponding to the receiver-specific scrambling sequence; and a skipping of a de-scrambling operation prior to the decoding of the DCI, wherein information regarding the receiver-specific scrambling sequence and the RNTI is not previously stored by the receiver; and refraining from decoding a plurality of possible receiver-specific scrambling sequences based on the skipping of the de-scrambling operation prior to the decoding of the DCI.
In some implementations, a non-transitory computer-readable medium storing a set of instructions includes one or more instructions that, when executed by one or more processors of a device, cause the device to: perform a decoding of DCI received via a PDCCH based on: a detection of a device-specific scrambling sequence and an RNTI corresponding to the device-specific scrambling sequence; and a skipping of a de-scrambling operation prior to the decoding of the DCI, wherein information regarding the device-specific scrambling sequence and the RNTI is not previously stored by the device; and refrain from decoding a plurality of possible device-specific scrambling sequences based on the skipping of the de-scrambling operation prior to the decoding of the DCI.
The following detailed description of example implementations refers to the accompanying drawings. The same reference numbers in different drawings may identify the same or similar elements.
In a New Radio (NR) system, downlink control information (DCI) may be carried via a physical downlink control channel (PDCCH). A network node may transmit the DCI via the PDCCH. A UE may receive the DCI via the PDCCH. The DCI may be signaled using physical resource blocks, but an indication of which physical resource blocks are used may not be indicated to the UE, in order to save resources. The UE may perform a blind detection process, where multiple DCI candidates may be monitored to detect and decode any DCI intended for the UE. In blind detection, the UE may perform de-scrambling, de-interleaving, and polar decoding operations for various DCI candidates. The UE may perform a cyclic redundancy check (CRC) after de-masking CRC bits using its radio network temporary identifier (RNTI). The blind decoding process causes a computational burden to the UE.
In some implementations, in order to reduce the detection complexity, the descrambling operation may be skipped, and descrambling may be performed after polar decoding using a properly transformed scrambling sequence, which may remove the requirement to perform polar decoding for all possible UE-specific scrambling sequences. Moreover, a UE-specific scrambling sequence may be detected from the decoded DCI, which may remove the requirement to perform descrambling for all possible UE-specific scrambling sequences.
In some implementations, the UE may detect the DCI and the UE-specific scrambling sequence without performing descrambling over frozen bits of polar codes using successive cancellation list (SCL) decoding. The UE may perform detection of the UE-specific scrambler and the corresponding RNTI by skipping a descrambling operation before decoding and performing an SCL decoding, when the UE-specific scrambler and the RNTI for the downlink transmission are not known at the UE (e.g., the receiver). As a result, the UE may not need to perform SCL decoding for all possible UE-specific scrambling sequences in cases where the descrambling is performed before decoding, thereby saving resources at the UE.
In some implementations, alternatively, the UE may detect the DCI and the UE-specific scrambling sequence without performing descrambling over frozen bits of polar codes using guessing random additive noise decoding (GRAND). The UE may perform detection of the UE-specific scrambler and the corresponding RNTI by skipping a descrambling operation before decoding and performing a polar decoding by GRAND, when the UE-specific scrambler and the RNTI for the downlink transmission are not known at the UE (e.g., the receiver). As a result, the UE may not need to perform polar decoding for all possible UE-specific scrambling sequences in cases where the descrambling is performed before decoding, thereby saving resources at the UE.
As shown by
Further, u∈2N may denote the uncoded bit vector containing the information bits and redundant bits. The indexes of information bits in the vector u may be selected from the index set denoted by , whereas the indexes of redundant bits may be selected from the index set denoted by c. Denoting the coded bit vector d∈2N, the polar encoding operation may be written as:
where
and ⊗ is the Kronecker product. Addition and multiplication operations may be performed in the binary field 2. The generator matrix G satisfies G=G−1. An alternative representation of x may be written as:
where ∈2K and ∈2(N-K) are vectors composed of the elements u with indexes from and c respectively and and are matrices composed of the rows of G with indexes from and c, respectively, and columns of G with indexes from ={1, 2, . . . , N}. By convention and in NR, the elements of vector c are set as 0.
After encoding, a sub-block interleaving may be applied to the codeword. After sub-block interleaving, rate-matching may be applied in the forms of shortening, puncturing, and repetition. The length of the codeword after rate-matching may be denoted by E, e.g., b∈2E. In puncturing, the first (N−E) bits of the interleaved codeword may not be transmitted, whereas in shortening, the last (N−E) bits of the interleaved codeword may not be transmitted. In repetition, the first (E−N) bits of the interleaved codeword may be repeated. After rate-matching, the resulting vector b may be scrambled by a scrambling sequence c∈2E, which may result in the vector {tilde over (b)}2E.
The scrambling operation after rate matching may be described as:
where {tilde over (b)}i, bi, ci ∈2. The sequence c may be defined by:
where Nc=1600. The sequence x1 may be initialized by x1,0=1, x1,i=0, i=1, 2, . . . , 30. The sequence x2 may be initialized by cinit=Σi=030x2,i2i, where cinit=(nRNTI·216+nID)mod 2
The parameter nID ∈{0, 1, . . . , 65535} may equal the parameter PDCCH demodulation reference signal (DMRS) scrambling identifier (ID) (pdcch-DMRS-ScramblingID) if configured, and the parameter nRNTI may be equal to a cell radio network temporary identifier (C-RNTI) when the parameter pdcch-DMRS-ScramblingID is configured.
As indicated above,
The physical resource blocks on which DCI is carried may not be signaled to UEs, in order to save resources. Instead, each UE may perform a blind detection process, where multiple DCI candidates may be monitored to detect and decode any DCI intended for the UE. In blind detection, the UE may perform de-scrambling, de-interleaving, and polar decoding operations for various DCI candidates. The UE may perform a CRC check after de-masking the CRC bits using its RNTI. The blind decoding process may cause a computational burden to the UE, as the blind decoding process may require multiple runs of receiver operations to obtain u from {tilde over (b)}.
The computational burden may be even higher for multi-UE emulation platforms, where multiple UE IDs need to be monitored for possible transmission. More specifically, monitoring for each UE ID may require performing de-scrambling operations with UE-specific scrambling sequences, each followed by reverse rate-matching, sub-block deinterleaving, and polar decoding operations. Scrambling sequences may be generated in a UE-specific manner based on nID with 65,536 different initialization seeds, resulting in 65,536 different sequences. In multi-UE emulation platforms, DCI detection may be a challenge when the platform is not instructed about the RNTIs of the transmitting UEs, which may lead to performing 65,536 de-scrambling and decoding operations for each possible candidate. The UE-specific RNTI may be detected by selecting the scrambling sequence and the corresponding RNTI with which the CRC check passes.
In order to reduce the detection complexity, the descrambling operation may be skipped, and descrambling may be performed after polar decoding using a properly transformed scrambling sequence, which may remove the requirement to perform polar decoding for all possible UE-specific scrambling sequences. Moreover, the UE-specific scrambling sequence may be detected from the decoded DCI, which may remove the requirement to perform descrambling for all possible UE-specific scrambling sequences.
In some implementations, the UE may detect the DCI and the UE-specific scrambling sequence without performing descrambling over frozen bits of polar codes using SCL decoding. The DCI may be decoded when the UE-specific scrambling sequence used in the PDCCH is not known at the network node (e.g., the transmitter). The UE may perform detection of the UE-specific scrambler and the corresponding RNTI by skipping a descrambling operation before decoding and performing an SCL decoding, when the UE-specific scrambler and the RNTI for the downlink transmission are not known at the UE (e.g., the receiver). As a result, the UE may not need to perform SCL decoding for all possible UE-specific scrambling sequences in cases where the descrambling is performed before decoding. Such an approach may be targeted to work at high signal-to-noise-ratio (SNR) values and with a non-punctured PDCCH.
In some implementations, alternatively, the UE may detect the DCI and the UE-specific scrambling sequence without performing descrambling over frozen bits of polar codes using GRAND. The DCI may be decoded when the UE-specific scrambling sequence used in the PDCCH is not known at the network node (e.g., the transmitter). The UE may perform detection of the UE-specific scrambler and the corresponding RNTI by skipping a descrambling operation before decoding and performing a polar decoding by GRAND, when the UE-specific scrambler and the RNTI for the downlink transmission are not known at the UE (e.g., the receiver). As a result, the UE may not need to perform polar decoding for all possible UE-specific scrambling sequences in cases where the descrambling is performed before decoding.
As shown by
Benefiting from the relation G=G−1, the following may be defined:
Next, a sub-block interleaver represented by a matrix D of dimensions N×N may be defined. The interleaver output, e∈2N, may be expressed in terms of d as:
Using D−1=DT, the corresponding de-interleaving operation may be written as:
In some implementations, the length of the vector b may be redefined as E′, e.g., b∈2E′, where E′=min(E, N). Then, the relation between e and b may be written as bi-k=ei, ∀i∈ε, where ε={k, k+1, . . . , k+E′−1}. The variable k may depend on the variables E, N, and the rate-matching scheme, and may be expressed as:
In some implementations, for the cases of puncturing, shortening, and repetition, the relations between d and b may be defined as:
In a case where an additional interleaver is used after rate matching and before scrambling, matrix D may be modified to reflect the operation. Further, {tilde over (b)}, c∈2E′ and b may be related as:
As shown in
In some implementations, z∈2N may be written in terms of b and c using Equation (2) and Equation (9) as follows:
Alternatively, Equation (10) may be rewritten as:
The vector c′, and equivalently c, may be obtained from q by:
In some implementations, the matrices G and D may be invertible, so a one-to-one relationship may exist between q and c′, e.g., for each c′ (or equivalently c), there exists a unique q. The vector u may include the frozen bits, e.g., c ∈2(N-K), and the CRC-attached, RNTI masked, and interleaved DCI bit vector, e.g., ∈2K. The frozen bits of the DCI vector may be set to 0, e.g., c =0. Consequently, Equation (11) may be used to derive:
In some implementations, in the case of puncturing, e.g., ε={N−E+1, N−E+2, . . . , N}, Equation (6) and Equation (7) may be rewritten as:
which may follow from the assumption that the indexes of bits to be non-punctured before interleaving are also in the set ε. Since Gεε is lower triangular with ones (1s) on the diagonal, dε=uεGεε and Gεε−1 may be shown to exist, so that uε=dεGεε−1. Accordingly, Equation (9) and Equation (11) may be rewritten as:
In some implementations, using c =0, the following may be written:
Equation (14) and Equation (19) may imply that the vector q may be estimated from decoded DCI vector z by observing the bits in the frozen bit locations and determining the q with the same bits in the frozen bit locations. The estimate for q may be denoted as {circumflex over (q)}∈2N. A straightforward approach to obtain {circumflex over (q)} may be to store all q vectors for all possible c vectors and perform an exhaustive search to set {circumflex over (q)} as the q vector satisfying (14) or (19). Once {circumflex over (q)} is obtained, an estimate û∈2N for u may be obtained by:
In some implementations, the correctness of {circumflex over (q)} may be dependent on the operating SNR since c needs to be observed correctly to obtain {circumflex over (q)}. However, {circumflex over (q)} may not be unique even if c is correctly observed, as multiple c′ may yield q vectors with identical bits in c. Consequently, the uniqueness of {circumflex over (q)} may be dependent on the number and locations of the indexes in the set . Nevertheless, if there are multiple estimates {circumflex over (q)}, u may be determined using the non-unique multiple {circumflex over (q)} vectors by using each {circumflex over (q)} vector to obtain a different û vector and performing a CRC check to validate û. The CRC in DCI may be masked by the RNTI. Therefore, the RNTI corresponding to {circumflex over (q)} may be determined in scenarios in which the RNTI is not known and the initialization seed for c is calculated from the RNTI. A straightforward approach to obtain the RNTI corresponding to {circumflex over (q)} may be to store RNTI values and q vectors for all possible c vectors, perform an exhaustive search to set {circumflex over (q)} as the q vector satisfying Equation (14) or Equation (19), and select the corresponding RNTI. If the CRC check passes, {circumflex over (q)} and û may be assumed to be estimated correctly.
As indicated above,
As shown by reference number 302, the network node may transmit DCI to the UE. The network node may transmit the DCI via a PDCCH. The DCI may carry control information used to schedule user data, a physical downlink shared channel (PDSCH), and a physical uplink shared channel (PUSCH).
As shown by reference number 304, the UE may perform a decoding of the DCI received via the PDCCH. The UE may perform the decoding of the DCI (e.g., the UE may decode the DCI) based on a detection, by the UE, of a UE-specific scrambling sequence and an RNTI corresponding to the UE-specific scrambling sequence, and based on a skipping, by the UE, of a de-scrambling operation prior to the decoding of the DCI. The skipping of the de-scrambling operation involves not performing the de-scrambling operation over frozen bits of polar codes. Information regarding the UE-specific scrambling sequence and the RNTI may not be previously stored by the UE. The UE may refrain from decoding a plurality of possible UE-specific scrambling sequences based on the skipping of the de-scrambling operation prior to the decoding of the DCI.
In some implementations, the decoding may be an SCL decoding. The UE, when performing the SCL decoding, may determine a set of indexes c that includes frozen bit indexes that are common for a plurality of DCI candidates. The UE, when performing the SCL decoding, may start the SCL decoding of a bit-level PDCCH without first performing the de-scrambling operation. The UE, when performing the SCL decoding, may continue the SCL decoding with frozen bit locations treated as information bits up to a predetermined frozen bit location, where the predetermined frozen bit location may be associated with a detection bit location. The UE, when performing the SCL decoding, may obtain frozen bits of a decoded DCI vector c from a path for SCL at the detection bit location. The UE, when performing the SCL decoding, may obtain, from the bits of the decoded DCI vector c, a vector {circumflex over (q)} and the RNTI corresponding to the vector {circumflex over (q)}. The UE, when performing the SCL decoding, may complete the SCL decoding. Multiple SCL processes may be run with remaining frozen bits set according to the vector {circumflex over (q)} and DCI candidate numerologies to obtain multiple decoded sequences, for the vector {circumflex over (q)} and each DCI candidate numerology, or a single SCL process may be run by treating remaining bits as information bits to obtain a single decoded sequence. The UE, when performing the SCL decoding, may perform the de-scrambling operation, after the SCL decoding of the DCI, over the single decoded sequence or the multiple decoded sequences, and check an RNTI masked CRC to verify detection for a plurality of possible RNTIs and DCI candidates.
In some implementations, the decoding may be GRAND. The GRAND may be with or without rate matching. The UE, when performing the GRAND, may identify, during a blind detection for the PDCCH, an aggregation level (AL) candidate. The UE, when performing the GRAND, may sort a plurality of putative noise sequences in accordance with a predefined order. The UE, when performing the GRAND, may start the GRAND decoding of a bit-level PDCCH without first performing the de-scrambling operation by applying a next putative noise sequence of the plurality of putative noise sequences. The UE, when performing the GRAND, may obtain a decoded DCI vector c for each of a plurality of DCI candidates. The UE, when performing the GRAND, may obtain, from the decoded DCI vector c , a vector {circumflex over (q)} and the RNTI corresponding to the vector {circumflex over (q)} for each of the plurality of DCI candidates. The UE, when performing the GRAND, may perform the de-scrambling operation over one or more decoded sequences, and check an RNTI masked CRC to verify detection for a plurality of possible RNTIs and the plurality of DCI candidates. In some implementations, the GRAND may be completed based on a DCI candidate, of the plurality of DCI candidates, and the RNTI passing a CRC check, or remaining putative noise sequences may be applied based on no DCI candidates and no RNTI passing the CRC check. The GRAND may be stopped based on a maximum number of putative noise sequences being applied, or the GRAND may be stopped based on the plurality of putative noise sequences with error bit locations less than or equal to a maximum number of error locations being applied.
In some implementations, the UE may determine the DCI without the descrambling operation using SCL decoding for polar codes. The SCL decoding may improve the error performance of successive cancellation (SC) decoding. The SCL decoding may involve performing L SC decoding operations in parallel and outputting L candidate decoded bit sequences instead of a single decoded bit sequence, as in SC decoding. The SCL decoding may involve SC decoding for L=1. The UE may perform the detection of the UE-specific scrambler and the corresponding RNTI by skipping the descrambling operation and by performing the SCL decoding when the UE-specific scrambler and the RNTI for the downlink transmission are not known at the UE. Consequently, SCL decoding may not need to be performed for all possible UE-specific scrambling sequences for cases in which the descrambling operation is performed before decoding.
In some implementations, the SCL decoding process may be used to decode DCI when the UE-specific sequence used in the PDCCH is not known at the UE (e.g., the receiver). During the SCL decoding process, the UE may determine the set , which may me u e the frozen bit indexes that are common among all considered DCI candidates. The UE may start SCL decoding of bit level PDCCH without first performing descrambling. The UE may perform SCL decoding with frozen locations treated as information bits up to a predetermined frozen bit location (which may be referred to as a detection bit location), which may be the largest frozen bit location in the set c. The UE may obtain c from the single path for SC and the most likely path for SCL at the detection bit location. Then, the UE may obtain vector {circumflex over (q)} (or vectors {circumflex over (q)} if the estimation is non-unique) from c and obtain the RNTI corresponding to {circumflex over (q)} (or RNTIs if the estimation is non-unique). The UE may complete the SCL decoding. Multiple SCL processes may be run with the remaining frozen bits set according to obtained vector {circumflex over (q)} (or vectors {circumflex over (q)} if the estimation is non-unique) and DCI candidate numerologies to obtain multiple decoded sequences, for the obtained vector {circumflex over (q)} (or vectors {circumflex over (q)} if the estimation is non-unique) and each DCI candidate numerology. A single SCL process may be run by treating all remaining bits as information bits to obtain a single decoded sequence. The UE may perform the descrambling over the decoded sequence or multiple decoded sequences using Equation (20) and check the RNTI masked CRC to verify detection for all possible RNTIs and DCI candidates.
In some implementations, an analysis may be performed to show that the detection probability, which may be defined as the probability of detecting {circumflex over (q)} correctly given that correct DCI is decoded, of the SCL decoding process may increase with increasing SNR, even though no frozen bits are used in decoding. The polarized channel WN(i): Ui→(Y1N, U1i-1), ∀i∈{0, 1, . . . , N} may be defined, with transition probabilities according to:
where WN(y1N|x1N)=Πi=1NWN (yi|xi), y1N are the observations of the N bits x1N at the outputs of N copies of a binary symmetric memoryless channel W and x1N are the codeword bits for the uncoded bit vector u1N. The SCL may perform sequential decoding, meaning that ui may be decoded one-by-one in the order of their indexes. At each bit location i, an SCL decoder may calculate the myopic likelihood Qi(ũ1i, y1N), where ũ1i are partial bit sequences at the decoding paths of the SCL decoder. Further, Qi(ũ1i, y1N) may be proportional to Pr(U1N=ũ1i, Y1N=y1N). The set of partial sequences may be defined with a larger likelihood than a fraction, α, of that of the true sequence after ui and may be decoded as:
where α≤1 [5]. For α=1, the set may include the paths ũ1i that are at least as likely as the true path u1i at the detection bit location.
When the bits z1i are assumed to be sufficient to detect {circumflex over (q)} uniquely, the detection probability may be inversely related to the cardinality of S1(i) (u1i, y1N), e.g.,
The expected value of logarithm of |Sα(i)(u1i, y1N)| may be upper bounded by
where H (WN(i)) denotes the entropy of the polarized channel WN(i). M. In Equation (24), all bits up to bit location i may be treated as information bits during decoding. Equation (24) may imply that the expected number of decoding paths that are more likely than the true path at bit location i decreases with decreasing uncertainty in the channel (increasing channel reliability). Combining Equation (23) and Equation (24) may result in:
which may also imply that the probability of detection increases with increasing channel reliability.
In some implementations, the SCL decoding process, as described herein, may return poor results when puncturing is performed in the PDCCH, even at a relatively high SNR regime. From Equation (15) and Equation (16), the first k bits may be observed to be punctured from the encoded DCI vector, which may be defined as frozen bits according to the 3GPP specifications, which may require setting the corresponding log-likelihood ratio (LLR) values to 0 (zero) at the SCL decoder input for the decoding process. The SCL decoder may obtain the decision LLRs as 0 for the first k decoded bits. Since the SCL decoding is started with frozen locations treated as information bits up to a predetermined frozen bit location, multiple paths may be created during the decoding of the first k bits, which may have the same path metric as the decision LLRs for the bits obtained as 0. When the detection bit location is reached, multiple paths may have the smallest path metric. When L≤2i, where i denotes the detection bit location, path eliminations may need to be performed before {circumflex over (q)} is estimated, which may result in the path to yield the correct {circumflex over (q)} being eliminated, since all paths will have the same path metric. In a case where i is set to satisfy L≥2i instead of the largest frozen bit location that is common among all considered DCI candidates, {circumflex over (q)} may be obtained non-uniquely and the number of {circumflex over (q)} vectors used to complete the SCL decoding may yield a relatively high computational burden, for practical values of L, such as L≤8 ({circumflex over (q)} is non-unique due to both having multiple paths with the same metric and the insufficient number of elements in c ).
In some implementations, the performance of the SCL decoding process may be evaluated in terms of detection probability, false alarm probability, false detection probability, and BLER with respect to SNR. The detection probability is the probability of detecting {circumflex over (q)} correctly, given that correct DCI is decoded. The false alarm probability is the probability of detecting a scrambling sequence and a DCI candidate that passes the CRC check even though there is no downlink transmission. The false detection probability is the probability of detecting a false scrambling sequence and a DCI candidate that passes the CRC check. The sets and may be selected according to the 3GPP specifications. Two DCI candidates with different K values other than the transmitted DCI may be considered to perform blind detection. The coded bits may be modulated by binary phase shift keying (BPSK) and passed through an additive white Gaussian noise (AWGN) channel.
In some implementations, when evaluating the detection, false alarm, and false detection probabilities for N=128 and N=256, respectively, the detection probability for N=256 may be observed to be smaller than that of N=128 for a given SNR. This phenomenon may occur due to the increased probability of error at the decoder input with increase codeword length, the effect of which may be directly observed at the decoder decisions due to lack of frozen bits. The phenomenon may also be verified from Equation (23), where H (WN(m)) increases with increasing N for m∈{0, . . . , i}, which only includes frozen bits. When evaluating the BLER performance for N=128 and N=256, respectively, the BLER performance may be closely related to the detection performance. Accordingly, the BLER performance may be observed to be inversely proportional with the detection probabilities.
In some implementations, the UE may determine the DCI without the descrambling operation using GRAND. GRAND is a decoding technique that is suitable for a block code with structured or unstructured codebooks. GRAND may be used to guess the additive noise on the received codeword. Putative noise sequences may be generated according to their likelihood and subtracted from the received codeword until a valid codeword is obtained. A GRAND decoder may include a putative noise sequence generator and a codebook membership checker. The UE may perform the detection of the UE-specific scrambler and the corresponding RNTI by skipping the descrambling operation and performing GRAND for the PDCCH, with and without rate-matching, when the UE-specific scrambler and the RNTI for the downlink transmission are not known at the UE. Consequently, polar decoding may not need to be performed for all possible UE-specific scrambling sequences in cases in which the descrambling operation is performed before decoding.
In some implementations, GRAND may be used to obtain z from a noisy observation of w. GRAND is a decoding technique based on guessing the additive noise on the noise observation of the codeword. The noise guessing process may be performed by sorting the putative noise sequences starting from the most likelihood one and removing each putative noise sequence from the noisy observation one-by-one until a valid codeword is obtained. The putative noise sequences may be determined by applying a mask over the received noisy codeword, where a reliability threshold may be used to determine the unreliable bits and select the putative noise sequences as combinations of the selected bits.
In some implementations, in GRAND, the noisy observation of d may be denoted as
In some implementations, the next step for the GRAND decoder may be to check whether {circumflex over (d)} is in the codebook of the employed channel coding scheme. In case {circumflex over (d)} is a codeword of the channel coding scheme, the decoder may output the decoded bits û corresponding to {circumflex over (d)}. Otherwise, the decoder may move to the putative noise sequence with the next highest likelihood.
In some implementations, the GRAND for polar codes may be without rate matching, as well as for when rate matching is applied. When the rate matching is applied, for a shortening case, Equation (26) may be used for decoding with the noisy vector
In some implementations, a punctured polar code may be decoded by GRAND. The sets ⊂ may be defined to represent the sets of bit indexes that are punctured and transmitted, respectively. Then, the punctured and transmitted codeword bits may be expressed as:
may be chosen to include the frozen bit indexes starting from the first index, and thus, the receiver has a priori knowledge that =0. Then, may be obtained by:
The matrix inverse may exist since is lower triangular with ones (1s) on the diagonal. Accordingly, the GRAND decoder may calculate the decoded bit vector from the noisy observation x and a putative noise sequence e using Equation (26) and Equation (28) as:
Then, the validity of the decoded data may be performed by a CRC check over the information bits in .
In some implementations, GRAND may be applied to obtain the estimate {circumflex over (z)}∈2N from a noisy observation
Equation (30) may be valid for the cases without rate-matching, shortening, and puncturing. In the case of shortening, the vectors
However, may be unknown due to the omitted descrambling operation. On the other hand, =0 in accordance with the Third Generation Partnership Project (3GPP) specifications. Accordingly, Equation (31) may be rewritten as:
Using Equation (32), {circumflex over (q)} may be obtained by observing the bits in and proceeding as described herein.
In some implementations, starting from the putative noise sequence e with Hamming weight 0 (zero), the UE may determine c and obtain {circumflex over (q)} and the corresponding RNTI from c , for each DCI candidate. Then, the UE may obtain a û vector using Equation (16) for each {circumflex over (z)} and perform a CRC check to determine its validity. If any of the candidate û vectors pass the CRC check, the GRAND process may be stopped and û may be outputted. If no û passes the CRC check, the next most likely putative noise sequence may be analyzed. The GRAND process may be repeated until all possible noise sequences are tried or a stopping condition is satisfied. A possible stopping condition may be to stop decoding when a maximum number of putative noise sequences are tried. Another possible stopping condition may be to stop decoding when all possible putative noise sequences with error bit locations less than or equal to a maximum number of error locations are tried. Various types of GRAND, such as ordered reliability bits GRAND (ORBGRAND) or GRAND with symbol reliability information (SRGRAND) may be used when performing the GRAND process.
In some implementations, the blind detection process for the PDCCH may involve the UE searching through various aggregation levels (ALs) until the correct DCI candidate is discovered, which may result in increased latency, as searching through all candidate ALs may be cumbersome. To avoid the increase in latency, an early termination criterion may be defined, which may allow the GRAND decoder to abort the GRAND process immediately after determining that the considered AL does not contain any downlink transmission. The set of unreliable bit locations may be denoted as . For each considered AL, the early stopping criterion may involve checking whether the condition ||≤τ is satisfied, and may abort decoding when the condition ||≤τ is not satisfied.
In some implementations, the GRAND process may be used to decode DCI when the UE-specific sequence used in the PDCCH is not known at the network node (e.g., the transmitter). The UE may check whether the considered AL contains a downlink transmission using the early termination criterion. The UE may stop the GRAND process when the considered AL does not contain any downlink transmission and the UE may move to the next AL candidate. The early termination criterion may involve checking whether the cardinality of the set of unreliable bit locations obtained by masking the received codeword is smaller or larger than a threshold. The UE may sort the putative noise sequences from most likely to least likely, by setting the most likely putative noise sequence as the noise sequence with Hamming weight 0. The UE may start any type of GRAND of bit level PDCCH without descrambling by applying the next most likely putative noise sequence. The UE may perform GRAND of polar codes using Equation (29), in the case of rate matching. The UE may obtain c for the cases of no rate-matching, shortening, and repetition, or for puncturing for each DCI candidate. The UE may obtain vector {circumflex over (q)} (or vectors {circumflex over (q)} if the estimation is non-unique) from c or and obtain RNTI corresponding to {circumflex over (q)} (or RNTIs if the estimation is non-unique) for each DCI candidate. The UE may perform descrambling over the decoded sequence or multiple decoded sequences using Equation (29). The UE may check the RNTI masked CRC to verify the detection for all possible RNTIs and DCI candidates. The UE may perform the CRC check, complete the decoding, and output the corresponding DCI candidate and RNTI when a DCI candidate and RNTI pass the CRC check.
In some implementations, when the DCI candidate and the RNTI pass the CRC check, the UE may complete decoding and output the corresponding DCI candidate and RNTI. When no DCI candidates and RNTI pass the CRC check, the UE may again start any type of GRAND of bit level PDCCH without descrambling by applying the next most likely putative noise sequence. The UE may repeat this step until all possible noise sequences are tried or a stopping condition is satisfied. A possible stopping condition may be to stop decoding when a maximum number of putative noise sequences are tried. Another possible stopping condition may be to stop decoding when all possible putative noise sequences with error bit locations less than or equal to a maximum number of error locations are tried.
In some implementations, the performance of the GRAND process may be evaluated in terms of detection probability, false alarm probability, false detection probability, and BLER with respect to SNR. The detection probability is the probability of detecting {circumflex over (q)} correctly, given that correct DCI is decoded. The false alarm probability is the probability of detecting a scrambling sequence and a DCI candidate that passes the CRC check even though there is no downlink transmission. The false detection probability is the probability of detecting a false scrambling sequence and a DCI candidate that passes the CRC check. The sets and c may be selected according to the 3GPP specifications. Two DCI candidates with different K values other than the transmitted DCI may be considered to perform blind detection. The coded bits may be modulated by BPSK and passed through an AWGN channel. A GRAND with symbol reliability information with abandonment (SRGRANDAB) process may be employed for decoding the bit level PDCCH. The putative error sequences may be determined by masking the bit locations, with a mask error rate (MER) in accordance with MER=[0.1, 0.1, 0.1, 0.05, 0.005, 0.0001, 0.00001] for SNR=[4, 5, 6, 7, 8, 9] dB. The stopping condition for the GRAND may be configured for a maximum number of putative noise sequence trials, which may be set as 5. The early termination threshold may be set as τ=[30, 25, 20, 15, 10, 5] bits for N=128 and τ=[50, 25, 20, 15, 10, 5] bits for N=256 for SNR=[4, 5, 6, 7, 8, 9] dB.
In some implementations, when evaluating the detection, false alarm, and false detection probabilities for N=128 and N=256, respectively, the detection probability for N=256 may be observed to be smaller than that of N=128 for a given SNR. This phenomenon may occur due to the increased probability of error at the decoder input with increased codeword length, which may decrease the probability of identifying the correct putative noise sequence for a given MER and maximum number of trials. In some implementations, when evaluating a block error rate (BLER) performance for N=128 and N=256, respectively, the BLER performance may be inversely proportional to the detection performance. The BLER for N=128 may be observed to decrease faster than that for N=256 in accordance with the detection probability performance of both codeword lengths. In some implementations, when the number of putative noise sequence trials for N=128 and N=256, respectively, are evaluated, the average number of trials may converge to one (1) as the SNR increases, which may imply that the majority of received PDCCHs are received with few or no errors and detection may be performed with relatively low latency. Further, the performance may be improved by adjusting the MER and increasing the maximum number of putative noise sequence trials, resulting in a trade-off between performance and latency.
As indicated above,
The UE 410 may include one or more devices capable of receiving, generating, storing, processing, and/or providing information associated with decoding DCI received via a downlink control channel, as described elsewhere herein. The UE 410 may include a communication device and/or a computing device. For example, the UE 410 may include a wireless communication device, a mobile phone, a user equipment, a laptop computer, a tablet computer, a desktop computer, a wearable communication device (e.g., a smart wristwatch, a pair of smart eyeglasses, a head mounted display, or a virtual reality headset), or a similar type of device.
The network node 420 may include one or more devices capable of receiving, generating, storing, processing, and/or providing information associated with decoding DCI received via a downlink control channel, as described elsewhere herein. The network node 420 may provide communication coverage for a particular geographic area. The network node 420 may include, for example, an NR base station, a Long Term Evolution (LTE) base station, a Node B, an eNB (e.g., in 4G), a gNB (e.g., in 5G), an access point, a transmission reception point (TRP), a distributed unit (DU), a radio unit (RU), a central unit (CU), a mobility element of a network, a core network node, a network element, a network equipment, a radio access network (RAN) node, or a combination thereof. The network node 420 may refer to an aggregated base station, a disaggregated base station, an integrated access and backhaul (IAB) node, a relay node, or one or more components thereof.
The number and arrangement of devices and networks shown in
The bus 510 may include one or more components that enable wired and/or wireless communication among the components of the device 500. The bus 510 may couple together two or more components of
The memory 530 may include volatile and/or nonvolatile memory. For example, the memory 530 may include random access memory (RAM), read only memory (ROM), a hard disk drive, and/or another type of memory (e.g., a flash memory, a magnetic memory, and/or an optical memory). The memory 530 may include internal memory (e.g., RAM, ROM, or a hard disk drive) and/or removable memory (e.g., removable via a universal serial bus connection). The memory 530 may be a non-transitory computer-readable medium. The memory 530 may store information, one or more instructions, and/or software (e.g., one or more software applications) related to the operation of the device 500. In some implementations, the memory 530 may include one or more memories that are coupled (e.g., communicatively coupled) to one or more processors (e.g., processor 520), such as via the bus 510. Communicative coupling between a processor 520 and a memory 530 may enable the processor 520 to read and/or process information stored in the memory 530 and/or to store information in the memory 530.
The input component 540 may enable the device 500 to receive input, such as user input and/or sensed input. For example, the input component 540 may include a touch screen, a keyboard, a keypad, a mouse, a button, a microphone, a switch, a sensor, a global positioning system sensor, an accelerometer, a gyroscope, and/or an actuator. The output component 550 may enable the device 500 to provide output, such as via a display, a speaker, and/or a light-emitting diode. The communication component 560 may enable the device 500 to communicate with other devices via a wired connection and/or a wireless connection. For example, the communication component 560 may include a receiver, a transmitter, a transceiver, a modem, a network interface card, and/or an antenna.
The device 500 may perform one or more operations or processes described herein. For example, a non-transitory computer-readable medium (e.g., memory 530) may store a set of instructions (e.g., one or more instructions or code) for execution by the processor 520. The processor 520 may execute the set of instructions to perform one or more operations or processes described herein. In some implementations, execution of the set of instructions, by one or more processors 520, causes the one or more processors 520 and/or the device 500 to perform one or more operations or processes described herein. In some implementations, hardwired circuitry may be used instead of or in combination with the instructions to perform one or more operations or processes described herein. Additionally, or alternatively, the processor 520 may be configured to perform one or more operations or processes described herein. Thus, implementations described herein are not limited to any specific combination of hardware circuitry and software.
The number and arrangement of components shown in
As shown in
As further shown in
In some implementations, the decoding is a successive cancellation list (SCL) decoding. In some implementations, performing the SCL decoding comprises determining a set of indexes that includes frozen bit indexes that are common for a plurality of DCI candidates, starting the SCL decoding of a bit-level PDCCH without first performing the de-scrambling operation, continuing the SCL decoding with frozen bit locations treated as information bits up to a predetermined frozen bit location, wherein the predetermined frozen bit location is associated with a detection bit location, obtaining frozen bits of a decoded DCI vector from a path for successive cancellation and a path for SCL at the detection bit location, obtaining, from the bits of the decoded DCI vector, a vector and an RNTI corresponding to the vector, completing the SCL decoding, wherein multiple SCL processes are run with remaining frozen bits set according to the vector and DCI candidate numerologies to obtain multiple decoded sequences, for the vector and each DCI candidate numerology, or wherein a single SCL process is run by treating remaining bits as information bits to obtain a single decoded sequence, and performing the de-scrambling operation, after the SCL decoding of the DCI, over the single decoded sequence or the multiple decoded sequences and checking an RNTI masked CRC to verify detection for a plurality of possible RNTIs and DCI candidates.
In some implementations, the decoding is a GRAND. In some implementations, the GRAND is with rate matching. In some implementations, the GRAND is without rate matching. In some implementations, performing the GRAND comprises identifying, during a blind detection for the PDCCH, an AL candidate, sorting a plurality of putative noise sequences in accordance with a predefined order, starting the GRAND of a bit-level PDCCH without first performing the de-scrambling operation by applying a next putative noise sequence of the plurality of putative noise sequences, obtaining a decoded DCI vector for each of a plurality of DCI candidates, obtaining, from the decoded DCI vector, a vector and the RNTI corresponding to the vector for each of the plurality of DCI candidates, and performing the de-scrambling operation over one or more decoded sequences and checking an RNTI masked CRC to verify detection for a plurality of possible RNTIs and the plurality of DCI candidates.
In some implementations, the GRAND is completed based on a DCI candidate, of the plurality of DCI candidates, and the RNTI passing a CRC check, or remaining putative noise sequences are applied based on no DCI candidates and no RNTI passing the CRC check. In some implementations, the GRAND is stopped based on a maximum number of putative noise sequences being applied, or the GRAND is stopped based on the plurality of putative noise sequences with error bit locations less than or equal to a maximum number of error locations being applied.
Although
The foregoing disclosure provides illustration and description, but is not intended to be exhaustive or to limit the implementations to the precise forms disclosed. Modifications and variations may be made in light of the above disclosure or may be acquired from practice of the implementations.
As used herein, the term “component” is intended to be broadly construed as hardware, firmware, or a combination of hardware and software. It will be apparent that systems and/or methods described herein may be implemented in different forms of hardware, firmware, and/or a combination of hardware and software. The actual specialized control hardware or software code used to implement these systems and/or methods is not limiting of the implementations. Thus, the operation and behavior of the systems and/or methods are described herein without reference to specific software code—it being understood that software and hardware can be used to implement the systems and/or methods based on the description herein.
As used herein, satisfying a threshold may, depending on the context, refer to a value being greater than the threshold, greater than or equal to the threshold, less than the threshold, less than or equal to the threshold, equal to the threshold, not equal to the threshold, or the like.
Even though particular combinations of features are recited in the claims and/or disclosed in the specification, these combinations are not intended to limit the disclosure of various implementations. In fact, many of these features may be combined in ways not specifically recited in the claims and/or disclosed in the specification. Although each dependent claim listed below may directly depend on only one claim, the disclosure of various implementations includes each dependent claim in combination with every other claim in the claim set. As used herein, a phrase referring to “at least one of” a list of items refers to any combination of those items, including single members. As an example, “at least one of: a, b, or c” is intended to cover a, b, c, a-b, a-c, b-c, and a-b-c, as well as any combination with multiple of the same item.
No element, act, or instruction used herein should be construed as critical or essential unless explicitly described as such. Also, as used herein, the articles “a” and “an” are intended to include one or more items, and may be used interchangeably with “one or more.” Further, as used herein, the article “the” is intended to include one or more items referenced in connection with the article “the” and may be used interchangeably with “the one or more.” Furthermore, as used herein, the term “set” is intended to include one or more items (e.g., related items, unrelated items, or a combination of related and unrelated items), and may be used interchangeably with “one or more.” Where only one item is intended, the phrase “only one” or similar language is used. Also, as used herein, the terms “has,” “have,” “having,” or the like are intended to be open-ended terms. Further, the phrase “based on” is intended to mean “based, at least in part, on” unless explicitly stated otherwise. Also, as used herein, the term “or” is intended to be inclusive when used in a series and may be used interchangeably with “and/or,” unless explicitly stated otherwise (e.g., if used in combination with “either” or “only one of”).