Polar code transmission method and apparatus
11050510 · 2021-06-29
Assignee
Inventors
- Hejia Luo (Hangzhou, CN)
- Gongzheng Zhang (Hangzhou, CN)
- Rong Li (Hangzhou, CN)
- Huazi Zhang (Hangzhou, CN)
- Yourui Huangfu (Hangzhou, CN)
- Jian Wang (Hangzhou, CN)
- Ying Chen (Hangzhou, CN)
- Jun Wang (Hangzhou, CN)
Cpc classification
H04L1/00
ELECTRICITY
H04L1/0072
ELECTRICITY
H03M13/09
ELECTRICITY
International classification
H04L1/00
ELECTRICITY
H03M13/00
ELECTRICITY
Abstract
Embodiments provide a Polar code transmission method and apparatus. A bit sequence is encoded into a code sequence using Polar code by a network device. The bit sequence contains a control signaling and a Cyclic Redundancy Code (CRC) sequence. The code sequence is transformed into M copies such that an i.sub.th information copy of the M copies multiples by a first matrix of the power of (i−1). M is an integer and M>0. M copies of codeword was encoded by Polar code, the M copies implicitly conveys different time stamp information, which is suitable for the transmission of PBCH in 5G communication system, signaling overhead is also reduced.
Claims
1. A Polar code transmission method, comprising: encoding, by a network device, a bit sequence into a code sequence using Polar code, wherein the bit sequence contains a control signal and a Cyclic Redundancy Code (CRC) sequence; and transforming, by the network device, the code sequence into M copies, wherein an i.sup.th copy of the M copies is generated by multiplying a first matrix of a power of (i−1) with the sequence code, wherein M is an integer greater than 0, and 1≤i≤M.
2. The Polar code transmission method according to claim 1, wherein the first matrix includes: a permutation matrix, wherein the permutation matrix has one nonzero element in each row and each column.
3. The Polar code transmission method according to claim 1, wherein the first matrix includes: a circular shift of an identity matrix.
4. A Polar code transmission apparatus, comprising a processor configured to: encode a bit sequence into a code sequence using Polar code, wherein the bit sequence contains a control signaling and a Cyclic Redundancy Code (CRC) sequence; and transform the code sequence into M copies, wherein an i.sup.th information copy of the M information copies is multiplied by a first matrix of a power of (i−1), wherein M is an integer greater than 0, and 1≤i≤M.
5. The Polar code transmission apparatus according to claim 4, wherein the first matrix includes: a permutation matrix, wherein the permutation matrix has one nonzero element in each row and each column.
6. The Polar code transmission apparatus according to claim 4, wherein the first matrix includes: a circular shift of an identity matrix.
7. A device, comprising: a processor; and a non-transitory computer-readable storage medium coupled to the processor and storing programming instructions for execution by the processor, wherein the programming instructions, when executed, cause the processor to: encode a bit sequence into a code sequence using Polar code, wherein the bit sequence contains a control signaling and a Cyclic Redundancy Code (CRC) sequence; and transform the code sequence into M copies, wherein an i.sup.th copy of the M copies is generated by multiplying a first matrix of a power of (i−1) with the sequence code, wherein M is an integer greater than 0, and 1≤i≤M.
Description
BRIEF DESCRIPTION OF DRAWINGS
(1) To describe the technical solutions in embodiments of the present application or in the prior art more clearly, the following briefly introduces the accompanying drawings needed for describing the embodiments or the prior art. Apparently, the accompanying drawings in the following description illustrate merely some embodiments of the present invention, and persons of ordinary skill in the art may still derive other drawings from these accompanying drawings without creative efforts.
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
DESCRIPTION OF EMBODIMENTS
(18) Embodiments of the present application will be described in details with reference to the associated drawings.
(19)
(20) The embodiments of the present application can be applied to a wireless communication system. The wireless communication system is usually composed of cells. Each cell includes a base station (BS), a base station associated with a plurality of mobile stations (MS) to provide a communication service. Besides, the base station is connected to the core network via backhauls as shown in
(21) It should be noted that the wireless communication system referred to in the present application includes but is not limited to: Narrow Band-Internet of Things (NB-IoT), Global System for Mobile Communications (GSM), Enhanced Data Rate for GSM Evolution (EDGE), Broadband Code Division Multiple Access (WCDMA), Wideband Code Division Multiple Access (WCDMA), Wideband Code Division Multiple Access (WCDMA) Code Division Multiple Access (CDMA2000), Time Division Synchronous Code Division Multiple Access (TD-SCDMA), Long Term Evolution System (LTE) and the next generation 5G mobile communication system including three scenarios eMBB, URLLC and eMTC.
(22) In this embodiment of the present application, the base station may include various forms of macro base stations, micro base stations (also referred to as small stations), relay stations, access points, and the like. Among different wireless access technologies, the name of the base station varies, for example, evolved Node B (eNB) in LTE systems, Node B in 3G system and so on. For convenience of description, in all embodiments of the present application, the above-described means for providing the wireless communication function for the MS is collectively referred to as a base station or a BS.
(23) The MSs may be referred to in the embodiments of the present application and may include various handsets, vehicle-mounted devices, wearable devices, computing devices, or other processing devices embedded a wireless modem. The MS may also be referred to as a terminal, and may include a subscriber unit (cell phone), a cellular phone, a smart phone, a wireless data card, laptop, machine type communication device and so on. For convenience of description, the above-mentioned devices are collectively referred to as MS in all embodiments of the present application.
(24) The following is a brief introduction to the Polar code.
(25) Communication systems typically use channel coding to improve the reliability of data transmission to ensure the quality of communications. Turkish professor Arikan proposed the Polar code which is firstly theoretically proved achieving Shannon capacity. Also, the Polar code has a low coding and decoding complexity. Polar code is also a linear block code whose coding matrix is G.sub.N, the encoding process is x.sub.1.sup.N=u.sub.1.sup.NG.sub.N, wherein u.sub.1.sup.N=(u.sub.1, u.sub.2, . . . , u.sub.N) is a binary row vector, the length of u.sub.1.sup.N is N; G.sub.N is a matrix of N×N, and G.sub.N=F.sub.2.sup..Math.(log.sup.
(26)
(27) In the encoding process of the Polar code, a part of the u.sub.1.sup.N are used to carry information, called the set of information bits or I; The other part of the bits are set to a fixed value compromised by the transmitter and receiver, called fixed bits Set or frozen bits F.
(28) It should be noted that the Polar code referred to in the present application includes but is not limited to: CRC cascade Polar code, Parity Check cascade Polar code, Arikan traditional Polar code and CRC aided Polar code.
(29) The details of the embodiments of the present application is depicted below. Firstly, encoding part of the Polar code transmission method is introduced, then decoding part of the Polar code transmission method is introduced, finally the Polar code transmission apparatus is introduced.
Embodiment 1: Encoding Part (Transmitter Side)
(30) Given a Polar code:
u.Math.G.sub.n=x
(31) wherein u is the source vector, with known bits in the frozen set F and information bits I in the remaining positions, G.sub.n is the transform matrix of parents code, and x is the codeword. If a transformation matrix denoted as P.sub.x is applied on the codeword x, a matrix T.sub.u can be found on u, which has equivalent effect as P.sub.x on x. Expression is as follows:
u.Math.T.sub.u.Math.G.sub.n=x.Math.P.sub.x
(32) According to the above equations, T.sub.u is expressed as a function of P.sub.x:
T.sub.u=G.sub.n.Math.P.sub.x.Math.G.sub.n
(33) Wherein G.sub.n.Math.G.sub.n=I.sub.n, I.sub.n is denoted as an identity matrix. At the transmitter side, the equivalence of T.sub.u.Math.G.sub.n and G.sub.n.Math.P.sub.x is depicted in
(34) If the transform matrix P.sub.x is a permutation matrix with only one nonzero elements in each row and each column, it works as an interleaver on the codeword x, therefore, the only difference of the received Log Likelihood Ratio (LLR) with different P.sub.x is their positions of the elements in each LLR vector, which will be very helpful to enable a quick soft combination of transmission with same x but different P.sub.x. The following designs are all based on P.sub.x which is a permutation matrix.
(35) Furthermore, to extend the above equations, the times (m) of the multiply of T.sub.u or P.sub.x can be implicitly conveyed with the following schemes depicted in
(36) The construction of polar code provides restriction on the selection of T.sub.u and its P.sub.x. An applicable T.sub.u correspond to a permutation matrix P.sub.x should follow a principle:
(37) Principle 1: the frozen set in a transformed u.Math.T.sub.u or u.Math.(T.sub.u).sup.n can only be the functions of the frozen set in u.
(38) To allow a quick blind detection scheme in
(39) Principle 2: the values of the frozen bits should always keep the same no matter how many times transformation. This imposes restrictions on the value of frozen bits.
(40) If “Principle 1” is ready, “Principle 2” always holds on as long as the frozen bits are all set 0.
(41) From the viewpoint of soft combination, the simplest forms of P.sub.x are those serve as circular shift. Specifically, The design of permutation matrix P.sub.x includes various approaches.
(42) Approach 1: P.sub.x serves as circular shift
(43) Approach 1.1 a (8,4) Polar code, Px matrices servers as circular shift with offset 2. Therefore, P.sub.x.sup.0, P.sub.x.sup.1, P.sub.x.sup.2, P.sub.x.sup.3 servers as circular shift with offset 0, 2, 4, 6.
(44) Take a (8, 4) polar code for example, wherein F={u.sub.0,u.sub.1,u.sub.2,u.sub.4}, I={u.sub.3,u.sub.5,u.sub.6,u.sub.7}. P.sub.x is set to be a left shift by 2 matrix,
(45)
The corresponding
(46)
(47) The values of the frozen sets F will not be affected by info bits I, the transform process on the transmitter side can refer to
(48) Approach 1.2 a (16,7) Polar, Px matrices servers as circular shift with offset 4. Therefore, P.sub.x.sup.0, P.sub.x.sup.1, P.sub.x.sup.2, P.sub.x.sup.3 servers as circular shift with offset 0, 4, 8, 12.
(49) The info bit sets and frozen bit sets are F={u.sub.0,u.sub.1,u.sub.2,u.sub.4,u.sub.5,u.sub.6,u.sub.8,u.sub.9},
(50) I={u.sub.7,u.sub.10,u.sub.11,u.sub.12,u.sub.13,u.sub.14,u.sub.15}. The T.sub.u corresponding to Px of circular shift matrix with offset N/4=4 can refer to
(51) Approach 1.3 For any (N,K) Polar code constructed base PW (Polarization Weight) sequence, Px matrice servers as circular shift with offset 0, N/4, 2N/4, 3N/4 is applicable
(52) Transmissions with circular shift values 0, N/4, 2N/4, 3N/4 can also be supported with polar construction method based on PW sequence where the sub-channels with the largest PW values are selected as info set I. The codeword x can be stored in virtual circular buffer and be read out with fixed offset for each transmission. The T.sub.u matrix corresponding to N/4 circular shift share the following form:
(53)
Approach 2: Px serves as a general permutation matrix
Approach 2.1 a (8,4) Polar, one possible
(54)
And the corresponding
(55)
T.sub.u here meet the principle 1. To meet principle 2, u1, u2, u4 have to be 0 and u0 can be 0 or 1. For the maximum value of the implicit message (m) is 7 because the minimum value to have (T.sub.u,infoset).sup.m-1=I.sub.u,infoset is 7.
(56) For polar code with any info sets and frozen sets, as long as the T.sub.u matrix meets the two design principles and its corresponding P.sub.x servers permutation matrix, this T.sub.u is applicable for implicit indication. The number of maximum effective versions (m) of T.sub.u is determined by the minimum value which enables (T.sub.u,infoset).sup.m−1=I.sub.infoset.
(57) Below is the pseudo codes on how to find an applicable T.sub.u or P.sub.x.
(58) TABLE-US-00001 [knowns] N: mother code length of polar code Perms_set={p.sub.1,p.sub.2,...,p.sub.N!}: a set of all the possible permutations of the vector [1:N]. The total number is N! I: N×N identity matrix InfoSet: 1×N vector. The position of info set in u, where “1”s stand for info bit position FrozenSet: 1×N vector. The position of frozen set in u, where “1”s stand for frozen bit position Gn: Polar generation matrix [unknowns] Px: N×N permutation matrix on x Tu: corresponding transformation matrix on u m : the maximum value of implicit message. Here is the search algorithm For pp = 1:N! perm = Perms_set{pp} // extract an candidate permutation pattern Px = I(:,Perms) // construct Px according to perms Tu =Gn.Math. Px.Math. Gn // construct Tu according to Px // check “design principle 1” Pass_flag = 0 // 0 means this Tu is applicable For mIndex = 1:N // check whether the frozen will be affected by any info bits If(FrozenSet(mIndex)) Pass_flag +=Sum(InfoSet.Math. Tu(:,mIndex)) end end // find out the m value if Tu is applicable if(!Pass_flag) m = 1 // initial m while(1) if Tu.sup.m (InfoSet, InfoSet) == I(InfoSet, InfoSet) break end m++ end // here is an applicable Tu with its maximum value of implicit message m end end
(59) Specifically, in an implicit way to indicate the timing stamp (m) on Polar codes, an example is shown in
(60) By using the above scheme on the transmitter side, the transmitter can send M copies of codeword x encoding by Polar code, the M copies implicitly conveys different time stamp information, which is suitable for the transmission of PBCH in 5G communication system, signaling overhead is also reduced.
Embodiment 2: Decoding Part (Receiver Side)
(61) If channel condition is good enough, a UE may decode from the LLR vector LLR (T) of single block independently to obtain the payload and timing index (SS Index), wherein the LLR vector is de-mapped from the PBCH.
(62) If channel condition is not good enough, a UE can choose to combine a number of the blocks. When combining the soft LLRs of two received blocks LLR (T) and LLR(T+j.Math.ΔT), the receiver knows the relative timing offset j.Math.ΔT while is not aware of the exact starting point T.
(63) Accordingly, the soft-combination on the receiver side is:
LLR′(T)=LLR(T)+LLR(T+j.Math.ΔT)P.sub.x.sup.−j
(64) wherein P.sub.x.sup.−j only serves as j-times de-interleaver on LLR(T+j.Math.ΔT), since the permutation only changes the position of the elements in LLR vector. The operation of P.sub.x.sup.−j is straightforward and does not incur any information loss. The process of soft combination at the receiver is depicted in
(65) From the previous analysis, the only unknown parameter for a receiver to blind detect is the absolute starting point T for both LLR from single block LLR (T) and combined LLR′ (T). We denote T as T=m.Math.ΔT, where m is the timing index to be blind detected.
(66) Here we apply a traditional SCL decoder on the LLR vector to found out the transformed source vector û=u(T.sub.u).sup.m. To recover the source vector u and timing index m, CRC check is performed over the information set of each potential de-transformed source vector, i.e., û,û(T.sub.u).sup.−1,û(T.sub.u).sup.−2, . . . û(T.sub.u).sup.−(M−1). If the CRC passes with û(T.sub.u).sup.−{circumflex over (m)}, {circumflex over (m)} is the timing index, the detailed process can refer to
(67) Note the blind detection calls for some restriction on the form of T.sub.u and values of the frozen bits. The restriction can refer to the above principle 1 & 2.
(68) By using the above scheme on the receiver side, the receiver can obtain the time index {circumflex over (m)} and j.Math.ΔT by SCL decoding algorithm, which is suitable for the transmission of PBCH in 5G communication system, signaling overhead is also reduced.
(69) In an optional embodiment, A Polar code transmission method, comprising:
(70) encoding, by a network device, a bit sequence into a code sequence using Polar code, wherein the bit sequence contains a control signaling and a Cyclic Redundancy Code (CRC) sequence; and
(71) transforming, by the network device, the code sequence into M copies, wherein an i.sup.st information copy of the M copies multiples by a first matrix of the power of (i−1), M is an integer and M>0,1≤i≤M.
(72) Optionally, the first matrix includes: permutation matrix, the permutation matrix has one nonzero element in each row and each column.
(73) Optionally, the first matrix includes: circular shift of an identity matrix.
(74) In an optional embodiment, A Polar code transmission apparatus, comprising:
(75) encoding unit, configured to encode a bit sequence into a code sequence using Polar code, wherein the bit sequence contains a control signaling and a Cyclic Redundancy Code (CRC) sequence; and
(76) transforming unit, configured to transform the code sequence into M copies, wherein an i.sup.st information copy of the M information copies multiples by a first matrix of the power of (i−1), M is an integer and M>0, 1≤i≤M.
(77) The Polar code transmission apparatus is depicted in
(78) Optionally, the first matrix includes: permutation matrix, the permutation matrix has one nonzero elements in each row and each column.
(79) Optionally, the first matrix includes: circular shift of an identity matrix.
(80) In an optional embodiment, A device comprising:
(81) a processor; and
(82) a non-transitory computer-readable storage medium coupled to the processor and storing programming instructions for execution by the processor, the programming instructions instruct the processor to:
(83) encode a bit sequence into a code sequence using Polar code, wherein the bit sequence contains a control signaling and a Cyclic Redundancy Code (CRC) sequence; and
(84) transform the code sequence into M copies, wherein an i.sup.st information copy of the M information copies multiples by a first matrix of the power of (i−1), M is an integer and M>0, 1≤i≤M.
(85) The device is depicted in
(86) The above embodiments may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, it may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. The process or function described in the embodiments of the present application is generated, in whole or in part, when the computer program instructions are loaded and executed on a computer. The computer may be a general purpose computer, a dedicated computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium or from one computer-readable storage medium to another computer-readable storage medium, for example, from a website site, a computer, a server, or a data center (Such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.) to another site site, computer, server or data center transmission. The computer-readable storage medium may be any available medium that the computer can access or a data storage device such as a server, a data center, or the like that contains one or more available media integrations. The available media may be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., DVD, or semiconductor media such as solid state drives (SSD) and so on.