WO2024038924A1 - 인코딩을 수행하는 방법, 통신 기기, 프로세싱 장치, 및 저장 매체 - Google Patents
인코딩을 수행하는 방법, 통신 기기, 프로세싱 장치, 및 저장 매체 Download PDFInfo
- Publication number
- WO2024038924A1 WO2024038924A1 PCT/KR2022/012321 KR2022012321W WO2024038924A1 WO 2024038924 A1 WO2024038924 A1 WO 2024038924A1 KR 2022012321 W KR2022012321 W KR 2022012321W WO 2024038924 A1 WO2024038924 A1 WO 2024038924A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- length
- input
- polar
- bit
- code
- Prior art date
Links
- 238000004891 communication Methods 0.000 title claims abstract description 132
- 238000000034 method Methods 0.000 title claims description 118
- 238000012545 processing Methods 0.000 title claims description 19
- 238000003860 storage Methods 0.000 title claims description 18
- 230000007704 transition Effects 0.000 claims description 25
- 230000001174 ascending effect Effects 0.000 claims description 20
- 230000015654 memory Effects 0.000 description 48
- 230000008569 process Effects 0.000 description 37
- 238000005516 engineering process Methods 0.000 description 33
- 230000005540 biological transmission Effects 0.000 description 27
- 241000169170 Boreogadus saida Species 0.000 description 25
- 239000011159 matrix material Substances 0.000 description 21
- 238000004590 computer program Methods 0.000 description 15
- 239000010410 layer Substances 0.000 description 15
- 230000006870 function Effects 0.000 description 14
- 230000010287 polarization Effects 0.000 description 14
- 238000012937 correction Methods 0.000 description 11
- 238000013461 design Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 125000004122 cyclic group Chemical group 0.000 description 6
- 230000009466 transformation Effects 0.000 description 6
- 238000013473 artificial intelligence Methods 0.000 description 5
- 238000004904 shortening Methods 0.000 description 5
- 230000002776 aggregation Effects 0.000 description 4
- 238000004220 aggregation Methods 0.000 description 4
- 238000010295 mobile communication Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000015556 catabolic process Effects 0.000 description 3
- 238000006731 degradation reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000011664 signaling Effects 0.000 description 2
- 108010003272 Hyaluronate lyase Proteins 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 239000002346 layers by function Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
- 238000005406 washing Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/23—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
Definitions
- This specification relates to a wireless communication system.
- M2M machine-to-machine
- MTC machine type communication
- smart phones and tablet PCs personal computers
- eMBB enhanced mobile broadband
- RAT legacy radio access technology
- massive machine type communication which is designed to provide various services anytime, anywhere by connecting multiple devices and objects, is one of the major issues to be considered in next-generation communication.
- the BS uses the finite radio resources to transmit uplink/downlink data and/or uplink/downlink control information from/to the UE(s).
- a new method for efficient reception/transmission is required. In other words, as the density of nodes and/or the density of UEs increases, a method for efficiently using high density nodes or high density user devices for communication is required.
- a method for encoding a block of information in a wireless communication system is provided.
- Determine input u_n into code; Coded based on encoding the input u_n based on the polar code of length N and the polar sequence Q N-1 0 ⁇ Q 0, , Q 1 , ..., Q N-1 ⁇ of length N. determine the bits; and transmitting the coded bits to another communication device.
- bit indices out of ⁇ N - 1 at which K bits of the information block will be placed and input indexes to be frozen.
- a communication device for encoding blocks of information in a wireless communication system.
- the communication device includes: at least one transceiver; at least one processor; and at least one computer memory operably connectable to the at least one processor and storing instructions that, when executed, cause the at least one processor to perform operations.
- bit indices out of ⁇ N - 1 at which K bits of the information block will be placed and input indices to be frozen.
- a processing device in a wireless communication system.
- the processing device may include: at least one processor; and at least one computer memory operably connectable to the at least one processor and storing instructions that, when executed, cause the at least one processor to perform operations.
- Determine the input u_n to; Coded based on encoding the input u_n based on the polar code of length N and the polar sequence Q N-1 0 ⁇ Q 0, , Q 1 , ..., Q N-1 ⁇ of length N.
- a computer-readable storage medium stores at least one computer program including instructions that, when executed by at least one processor, cause the at least one processor to perform operations for a user device.
- Determine the input u_n to; Coded based on encoding the input u_n based on the polar code of length N and the polar sequence Q N-1 0 ⁇ Q 0, , Q 1 , ..., Q N-1 ⁇ of length N.
- performing the convolution may include: determining a number of transition registers based on the length N of the polar code among a predetermined number of transition registers for mother code sizes; And it may include performing convolution on the input v_n based on the determined number of transition registers.
- the predetermined number of transition registers may be greater than or equal to the maximum number of respective consecutive frozen bits for the mother code sizes.
- performing the convolution It may include determining the input u_n based on .
- the same number of transition registers may be used for different mother code sizes.
- wireless communication signals can be transmitted/received efficiently. Accordingly, the overall throughput of the wireless communication system can be increased.
- delay/latency occurring during wireless communication between communication devices can be reduced.
- the performance of channel coding based on polar codes can be improved by maximizing the minimum distance between codewords.
- various information sizes can be supported in the PAC code while maximizing the minimum distance between codewords.
- FIG. 1 shows an example of communication system 1 to which implementations of the present specification are applied;
- FIG. 2 is a block diagram showing examples of communication devices capable of performing a method according to the present specification
- FIG. 3 illustrates another example of a wireless device capable of implementing implementation(s) of the present specification
- Figure 4 shows an example of a frame structure available in a wireless communication system based on the 3rd generation partnership project (3GPP);
- Figure 5 illustrates the processing process on the transmission side for a transport block (TB);
- Figure 6 is an example block diagram for a polar encoder
- Figure 7 illustrates the concepts of channel combining and channel splitting for channel polarization
- Figure 8 illustrates N-th level channel combining for polar codes
- Figure 9 illustrates the evolution of decoding paths in the List-L decoding process
- Figure 10 is shown to illustrate the concept of selecting position(s) in a polar code to which information bit(s) are to be assigned;
- Figure 11 illustrates puncturing and information bit allocation for polar codes
- Figure 12 illustrates a method of generating parity check bit(s) used in polar codes
- Figure 13 is a diagram to explain the rate matching process according to some implementations of the present specification.
- Figure 14 illustrates the structure of one of the encoder/decoders for PAC code that is available for some implementations of this specification
- Figure 15 illustrates a codeword tree to explain the concept of sequential decoding
- FIGS 16 and 17 illustrate the results of rate profile operation for mother code size
- Figures 18 and 19 illustrate a recursive convolution operation
- Figure 20 illustrates a channel encoding process, according to some implementations of the present specification
- Figure 21 illustrates a channel decoding process, according to some implementations of the present specification.
- multiple access systems include code division multiple access (CDMA) systems, frequency division multiple access (FDMA) systems, time division multiple access (TDMA) systems, orthogonal frequency division multiple access (OFDMA) systems, and single carrier frequency (SC-FDMA) systems.
- CDMA may be implemented in a wireless technology such as Universal Terrestrial Radio Access (UTRA) or CDMA2000.
- TDMA may be implemented in wireless technologies such as Global System for Mobile communication (GSM), General Packet Radio Service (GPRS), Enhanced Data Rates for GSM Evolution (EDGE) (i.e., GERAN), etc.
- GSM Global System for Mobile communication
- GPRS General Packet Radio Service
- EDGE Enhanced Data Rates for GSM Evolution
- OFDMA may be implemented in wireless technologies such as Institute of Electrical and Electronics Engineers (IEEE) 802.11 (WiFi), IEEE 802.16 (WiMAX), IEEE802-20, evolved-UTRA (E-UTRA), etc.
- IEEE Institute of Electrical and Electronics Engineers
- WiFi WiFi
- WiMAX WiMAX
- IEEE802-20 evolved-UTRA
- UTRA is part of the Universal Mobile Telecommunication System (UMTS)
- 3GPP 3rd Generation Partnership Project
- LTE Long Term Evolution
- 3GPP LTE adopts OFDMA in the downlink (DL) and SC-FDMA in the uplink (UL).
- LTE-A LTE-advanced
- LTE-A LTE-advanced
- 3GPP-based standard documents such as 3GPP TS 36.211, 3GPP TS 36.212, 3GPP TS 36.213, 3GPP TS 36.321, 3GPP TS 36.300, and 3GPP Reference may be made to TS 36.331, 3GPP TS 37.213, 3GPP TS 38.211, 3GPP TS 38.212, 3GPP TS 38.213, 3GPP TS 38.214, 3GPP TS 38.300, 3GPP TS 38.331, etc.
- the expression that the device “assumes” may mean that the entity transmitting the channel transmits the channel to comply with the “assumption.” This may mean that the subject receiving the channel receives or decodes the channel in a form that conforms to the “assumption,” under the premise that the channel was transmitted in compliance with the “assumption.”
- the UE may be fixed or mobile, and includes various devices that transmit and/or receive user data and/or various control information by communicating with a base station (BS).
- BS includes (Terminal Equipment), MS (Mobile Station), MT (Mobile Terminal), UT (User Terminal), SS (Subscribe Station), wireless device, PDA (Personal Digital Assistant), and wireless modem. ), can be called a handheld device, etc.
- BS generally refers to a fixed station that communicates with the UE and/or other BSs, and exchanges various data and control information by communicating with the UE and other BSs.
- BS may be called by different terms, such as Advanced Base Station (ABS), Node-B (NB), evolved-NodeB (eNB), Base Transceiver System (BTS), Access Point, and Processing Server (PS).
- ABS Advanced Base Station
- NB Node-B
- eNB evolved-NodeB
- BTS Base Transceiver System
- gNB BS of a new radio access technology network
- BS is collectively referred to as BS regardless of the type or version of communication technology.
- a node refers to a fixed point that can transmit/receive wireless signals by communicating with the UE.
- Various types of BSs can be used as nodes regardless of their names.
- a BS, NB, eNB, pico-cell eNB (PeNB), home eNB (HeNB), relay, repeater, etc. may be nodes.
- the node may not be a BS.
- it may be a radio remote head (RRH) or a radio remote unit (RRU).
- RRH, RRU, etc. generally have a power level lower than that of the BS.
- RRH or RRU (hereinafter referred to as RRH/RRU) is generally connected to the BS through a dedicated line such as an optical cable, so compared to cooperative communication by BSs generally connected through wireless lines, RRH/RRU and BS Collaborative communication can be performed smoothly.
- At least one antenna is installed in one node.
- the antenna may refer to a physical antenna, an antenna port, a virtual antenna, or an antenna group. Nodes are also called points.
- a cell refers to a certain geographical area where one or more nodes provide communication services. Therefore, in this specification, communicating with a specific cell may mean communicating with a BS or node that provides communication services to the specific cell.
- the downlink/uplink signal of a specific cell refers to a downlink/uplink signal from/to a BS or node that provides communication services to the specific cell.
- a cell that provides uplink/downlink communication services to the UE is specifically called a serving cell.
- the channel status/quality of a specific cell refers to the channel status/quality of a channel or communication link formed between a BS or node providing a communication service to the specific cell and the UE.
- the UE determines the downlink channel status from a specific node through the antenna port(s) of the specific node and the CRS (Cell-specific Reference Signal) transmitted on the CRS (Cell-specific Reference Signal) resource allocated to the specific node. /Or it can be measured using CSI-RS (Channel State Information Reference Signal) resources transmitted on CSI-RS (Channel State Information Reference Signal) resources.
- CRS Cell-specific Reference Signal
- CSI-RS Channel State Information Reference Signal
- 3GPP-based communication systems use the concept of cells to manage radio resources, and cells associated with radio resources are distinguished from cells in a geographic area.
- a “cell” in a geographic area can be understood as the coverage through which a node can provide services using a carrier
- a “cell” in a wireless resource can be understood as the bandwidth (bandwidth), which is the frequency range configured by the carrier. It is related to bandwidth, BW).
- Downlink coverage which is the range where a node can transmit a valid signal
- uplink coverage which is the range where a valid signal can be received from the UE, depend on the carrier that carries the signal, so the node's coverage is used by the node. It is also associated with the coverage of a “cell” of wireless resources. Accordingly, the term "cell” can sometimes be used to mean coverage of a service by a node, sometimes a radio resource, and sometimes a range within which a signal using the radio resource can reach with effective strength.
- a “cell” associated with a radio resource is defined as a combination of downlink resources (DL resources) and uplink resources (UL resources), that is, a combination of a DL component carrier (CC) and a UL CC. .
- a cell can be configured with DL resources alone or a combination of DL resources and UL resources.
- the linkage between the carrier frequency of DL resources (or, DL CC) and the carrier frequency of UL resources (or, UL CC) is indicated by system information. It can be.
- SIB2 System Information Block Type2
- the carrier frequency may be the same as or different from the center frequency of each cell or CC.
- CA carrier aggregation
- the UE has only one radio resource control (RRC) connection with the network.
- RRC radio resource control
- One serving cell provides non-access stratum (NAS) mobility information during RRC connection establishment/re-establishment/handover, and one serving cell Provides security input during RRC connection re-establishment/handover.
- NAS non-access stratum
- NAS non-access stratum
- Scells secondary cells
- Scells may be configured to form a set of serving cells together with the Pcell.
- An Scell is a cell that can be set up after RRC (Radio Resource Control) connection establishment and provides additional radio resources in addition to the resources of a special cell (SpCell).
- the carrier corresponding to the Pcell in the downlink is called the downlink primary CC (DL PCC)
- the carrier corresponding to the Pcell in the uplink is called the UL primary CC (DL PCC).
- the carrier corresponding to the Scell in the downlink is called a DL secondary CC (DL SCC)
- UL SCC UL secondary CC
- the term SpCell refers to the Pcell of the master cell group (MCG) or the Pcell of the secondary cell group (SCG).
- MCG master cell group
- SCG secondary cell group
- Pcell SpCell
- the MCG is a group of serving cells associated with a master node (e.g., BS) and consists of an SpCell (Pcell) and optionally one or more Scells.
- the SCG is a subset of serving cells associated with a secondary node and consists of a PSCell and zero or more Scells.
- PSCell is the primary Scell of SCG.
- serving cells For a UE in RRC_CONNECTED state that is not configured as CA or DC, there is only one serving cell consisting of only Pcells.
- serving cells For a UE in RRC_CONNECTED state set to CA or DC, the term serving cells refers to the set of cells consisting of SpCell(s) and all Scell(s).
- two MAC entities are configured in the UE: one medium access control (MAC) entity for MCG and one MAC entity for SCG.
- MAC medium access control
- a Pcell PUCCH group consisting of a Pcell and zero or more Scells and a Scell PUCCH group consisting of only Scell(s) may be configured.
- an Scell hereinafter referred to as PUCCH cell
- PUCCH cell through which the PUCCH associated with the cell is transmitted may be set.
- a Scell for which a PUCCH Scell is indicated belongs to the Scell PUCCH group and PUCCH transmission of the related UCI is performed on the PUCCH Scell, and a Scell for which no PUCCH Scell is indicated or where the cell indicated as a PUCCH transmission cell is a Pcell belongs to the Pcell PUCCH group and PUCCH transmission of the relevant UCI is performed on the Pcell.
- the UE receives information from the BS through downlink (DL), and the UE transmits information to the BS through uplink (UL).
- Information transmitted and/or received by the BS and UE includes data and various control information, and various physical channels exist depending on the type/purpose of the information they transmit and/or receive.
- the 3GPP-based communication standard includes downlink physical channels corresponding to resource elements carrying information originating from the upper layer, and downlink physical channels corresponding to resource elements used by the physical layer but not carrying information originating from the upper layer.
- Link physical signals are defined.
- a physical downlink shared channel (PDSCH), a physical broadcast channel (PBCH), a physical downlink control channel (PDCCH), etc. are downlink physical channels.
- PBCH physical broadcast channel
- PDCCH physical downlink control channel
- a reference signal and synchronization signal are defined as downlink physical signals.
- a reference signal (RS) also called a pilot, refers to a signal with a predefined special waveform that is known to both the BS and the UE.
- DMRS demodulation reference signal
- CSI-RS channel state information RS
- the 3GPP-based communication standard includes uplink physical channels corresponding to resource elements carrying information originating from upper layers, and uplink physical channels corresponding to resource elements used by the physical layer but not carrying information originating from upper layers.
- Link physical signals are defined. For example, a physical uplink shared channel (PUSCH), a physical uplink control channel (PUCCH), and a physical random access channel (PRACH) are used as uplink physical channels.
- PUSCH physical uplink shared channel
- PUCCH physical uplink control channel
- PRACH physical random access channel
- a demodulation reference signal (DMRS) for uplink control/data signals, a sounding reference signal (SRS) used for uplink channel measurement, etc. are defined.
- PDCCH Physical Downlink Control CHannel
- PDSCH Physical Downlink Shared CHannel
- PUCCH Physical Uplink Control CHannel
- PUSCH Physical Uplink Shared CHannel
- PRACH Physical Random Access CHannel
- the expression that the user device transmits/receives PUCCH/PUSCH/PRACH means equivalent to transmitting/receiving uplink control information/uplink data/random access signal on or through PUCCH/PUSCH/PUCCH/PRACH, respectively. It is used as.
- the expression that the BS transmits/receives PBCH/PDCCH/PDSCH is used in the same meaning as transmitting broadcast information/downlink control information/downlink data on or through PBCH/PDCCH/PDSCH, respectively.
- radio resources e.g., time-frequency resources
- PUCCH/PUSCH/PDSCH resources are also referred to as PUCCH/PUSCH/PDSCH resources.
- the communication device Since the communication device receives SSB, DMRS, CSI-RS, PBCH, PDCCH, PDSCH, PUSCH, and/or PUCCH in the form of wireless signals on the cell, it selects only wireless signals containing a specific physical channel or specific physical signals to transmit RF It is not possible to receive through a receiver or select only wireless signals that exclude specific physical channels or physical signals and receive them through an RF receiver.
- the communication device receives wireless signals on a cell through an RF receiver, converts the wireless signals, which are RF band signals, into baseband signals, and uses one or more processors to convert the wireless signals to baseband signals. Decode physical signals and/or physical channels within the signals.
- receiving a physical signal and/or a physical channel does not in fact mean that the communication device does not receive wireless signals including the physical signal and/or physical channel at all, but rather receives the wireless signals. This may mean not attempting to restore the physical signal and/or the physical channel, for example, not attempting to decode the physical signal and/or the physical channel.
- next-generation communications As more communication devices require greater communication capacity, the need for improved mobile broadband communication compared to existing radio access technology (RAT) is emerging. Additionally, massive MTC, which provides various services anytime, anywhere by connecting multiple devices and objects, is also one of the major issues to be considered in next-generation communications. In addition, communication system design considering services/UEs sensitive to reliability and latency is being discussed. As such, the introduction of next-generation RAT considering advanced mobile broadband communications, massive MTC, and URLLC (Ultra-Reliable and Low Latency Communication) is being discussed. Currently, 3GPP is conducting studies on next-generation mobile communication systems after EPC. In this specification, for convenience, the technology is referred to as new RAT (new RAT, NR) or 5G RAT, and a system that uses or supports NR is referred to as an NR system.
- new RAT new RAT
- 5G RAT 5G RAT
- FIG. 1 shows an example of communication system 1 to which implementations of the present specification are applied.
- the communication system 1 to which this specification applies includes a wireless device, a BS, and a network.
- a wireless device refers to a device that performs communication using wireless access technology (e.g., 5G NR (New RAT), LTE (e.g., E-UTRA)) and may be referred to as a communication/wireless/5G device.
- wireless devices include robots (100a), vehicles (100b-1, 100b-2), XR (eXtended Reality) devices (100c), hand-held devices (100d), and home appliances (100e).
- vehicles may include vehicles equipped with wireless communication functions, autonomous vehicles, vehicles capable of inter-vehicle communication, etc.
- the vehicle may include an Unmanned Aerial Vehicle (UAV) (eg, a drone).
- UAV Unmanned Aerial Vehicle
- XR devices include AR (Augmented Reality)/VR (Virtual Reality)/MR (Mixed Reality) devices, HMD (Head-Mounted Device), HUD (Head-Up Display) installed in vehicles, televisions, smartphones, It can be implemented in the form of computers, wearable devices, home appliances, digital signage, vehicles, robots, etc.
- Portable devices may include smartphones, smart pads, wearable devices (e.g., smartwatches, smart glasses), and computers (e.g., laptops, etc.).
- Home appliances may include TVs, refrigerators, washing machines, etc.
- IoT devices may include sensors, smart meters, etc.
- a BS,network may also be implemented with wireless devices, and a,specific wireless device may operate as a BS/network node to,other wireless devices.
- Wireless devices 100a to 100f may be connected to the network 300 through the BS 200.
- AI Artificial Intelligence
- the network 300 may be configured using a 3G network, 4G (eg, LTE) network, or 5G (eg, NR) network.
- Wireless devices 100a to 100f may communicate with each other through the BS 200/network 300, but may also communicate directly (e.g. sidelink communication) without going through the BS/network.
- vehicles 100b-1 and 100b-2 may communicate directly (e.g.
- V2V Vehicle to Vehicle
- V2X Vehicle to everything
- an IoT device eg, sensor
- another IoT device eg, sensor
- another wireless device 100a to 100f
- Wireless communication/connection (150a, 150b) may be performed between wireless devices (100a ⁇ 100f)/BS(200)-BS(200)/wireless devices (100a ⁇ 100f).
- wireless communication/connection, uplink/downlink communication 150a and sidelink communication 150b (or D2D communication) may be achieved through various wireless access technologies (e.g., 5G NR).
- 5G NR wireless access technologies
- the wireless device and the BS/wireless device can transmit/receive wireless signals to each other.
- various configuration information setting processes for transmitting/receiving wireless signals various signal processing processes (e.g., channel encoding/decoding, modulation/demodulation, resource Mapping/demapping, etc.), resource allocation process, etc. may be performed.
- various signal processing processes e.g., channel encoding/decoding, modulation/demodulation, resource Mapping/demapping, etc.
- resource allocation process etc.
- Figure 2 is a block diagram showing examples of communication devices capable of performing a method according to the present specification.
- the first wireless device 100 and the second wireless device 200 may transmit and/or receive wireless signals through various wireless access technologies (eg, LTE, NR).
- ⁇ first wireless device 100, second wireless device 200 ⁇ refers to ⁇ wireless device 100x, BS 200 ⁇ and/or ⁇ wireless device 100x, wireless device 100x) in FIG. ⁇ can be responded to.
- the first wireless device 100 includes one or more processors 102 and one or more memories 104, and may additionally include one or more transceivers 106 and/or one or more antennas 108.
- Processor 102 controls memory 104 and/or transceiver 106 and may be configured to implement functions, procedures and/or methods described/suggested below.
- the processor 102 may process information in the memory 104 to generate first information/signal and then transmit a wireless signal including the first information/signal through the transceiver 106.
- the processor 102 may receive a wireless signal including the second information/signal through the transceiver 106 and then store information obtained from signal processing of the second information/signal in the memory 104.
- the memory 104 may be connected to the processor 102 and may store various information related to the operation of the processor 102. For example, memory 104 may perform some or all of the processes controlled by processor 102 or store software code containing instructions for performing the procedures and/or methods described/suggested below. there is.
- the processor 102 and memory 104 may be part of a communication modem/circuit/chip designed to implement wireless communication technology (eg, LTE, NR).
- Transceiver 106 may be coupled to processor 102 and may transmit and/or receive wireless signals via one or more antennas 108. Transceiver 106 may include a transmitter and/or receiver. The transceiver 106 can be used interchangeably with an RF (Radio Frequency) unit.
- a wireless device may mean a communication modem/circuit/chip.
- the second wireless device 200 includes one or more processors 202, one or more memories 204, and may further include one or more transceivers 206 and/or one or more antennas 208.
- Processor 202 controls memory 204 and/or transceiver 206 and may be configured to implement the functions, procedures and/or methods described/suggested below.
- the processor 202 may process the information in the memory 204 to generate third information/signal and then transmit a wireless signal including the third information/signal through the transceiver 206.
- the processor 202 may receive a wireless signal including the fourth information/signal through the transceiver 206 and then store information obtained from signal processing of the fourth information/signal in the memory 204.
- the memory 204 may be connected to the processor 202 and may store various information related to the operation of the processor 202. For example, memory 204 may perform some or all of the processes controlled by processor 202, or store software code containing instructions for performing the procedures and/or methods described/suggested below. there is.
- the processor 202 and memory 204 may be part of a communication modem/circuit/chip designed to implement wireless communication technology (eg, LTE, NR).
- Transceiver 206 may be coupled to processor 202 and may transmit and/or receive wireless signals via one or more antennas 208. Transceiver 206 may include a transmitter and/or receiver. The transceiver 206 can be used interchangeably with the RF unit.
- a wireless device may mean a communication modem/circuit/chip.
- Wireless communication technologies implemented in the wireless devices 100 and 200 of this specification may include Narrowband Internet of Things for low-power communication as well as LTE, NR, and 6G.
- NB-IoT technology may be an example of LPWAN (Low Power Wide Area Network) technology and may be implemented in standards such as LTE Cat NB1 and/or LTE Cat NB2, and is limited to the above-mentioned names. no.
- the wireless communication technology implemented in the wireless device (XXX, YYY) of this specification may perform communication based on LTE-M technology.
- LTE-M technology may be an example of LPWAN technology, and may be called various names such as enhanced Machine Type Communication (eMTC).
- eMTC enhanced Machine Type Communication
- LTE-M technologies include 1) LTE CAT 0, 2) LTE Cat M1, 3) LTE Cat M2, 4) LTE non-BL (non-Bandwidth Limited), 5) LTE-MTC, 6) LTE Machine. It can be implemented in at least one of various standards such as Type Communication, and/or 7) LTE M, and is not limited to the above-mentioned names.
- the wireless communication technology implemented in the wireless device (XXX, YYY) of this specification is at least one of ZigBee, Bluetooth, and Low Power Wide Area Network (LPWAN) considering low-power communication. It may include any one, and is not limited to the above-mentioned names.
- ZigBee technology can create personal area networks (PAN) related to small/low-power digital communications based on various standards such as IEEE 802.15.4, and can be called by various names.
- one or more protocol layers may be implemented by one or more processors 102, 202.
- one or more processors 102, 202 may operate on one or more layers (e.g., a physical (PHY) layer, a medium access control (MAC) layer, and a radio link control (RLC) layer.
- layers e.g., a physical (PHY) layer, a medium access control (MAC) layer, and a radio link control (RLC) layer.
- functional layers such as packet data convergence protocol (PDCP) layer, radio resource control (RRC) layer, and service data adaptation protocol (SDAP) can be implemented.
- PDCP packet data convergence protocol
- RRC radio resource control
- SDAP service data adaptation protocol
- One or more processors 102, 202 may process one or more protocol data units (PDUs) and/or one or more service data units (SDUs) according to the functions, procedures, proposals and/or methods disclosed herein. ) can be created.
- One or more processors 102, 202 may generate messages, control information, data or information according to the functions, procedures, suggestions and/or methods disclosed herein.
- One or more processors 102, 202 may process signals (e.g., baseband signals) containing PDUs, SDUs, messages, control information, data or information in accordance with the functions, procedures, proposals and/or methods disclosed herein. Can be generated and provided to one or more transceivers (106, 206).
- One or more processors 102, 202 may receive signals (e.g., baseband signals) from one or more transceivers 106, 206 and transmit a PDU, SDU, or PDU according to the functions, procedures, suggestions, and/or methods disclosed herein. , messages, control information, data or information can be obtained.
- signals e.g., baseband signals
- transceivers 106, 206 may transmit signals (e.g., baseband signals) from one or more transceivers 106, 206 and transmit a PDU, SDU, or PDU according to the functions, procedures, suggestions, and/or methods disclosed herein. , messages, control information, data or information can be obtained.
- One or more processors 102, 202 may be referred to as a controller, microcontroller, microprocessor, or microcomputer.
- One or more processors 102, 202 may be implemented by hardware, firmware, software, or a combination thereof.
- ASICs Application Specific Integrated Circuits
- DSPs Digital Signal Processors
- DSPDs Digital Signal Processing Devices
- PLDs Programmable Logic Devices
- FPGAs Field Programmable Gate Arrays
- Firmware or software configured to perform the functions, procedures, suggestions and/or methods disclosed herein may be included in one or more processors (102, 202) or stored in one or more memories (104, 204) to enable one or more processors (102, 202). 202).
- the functions, procedures, suggestions and or methods disclosed in this document may be implemented using firmware or software in the form of codes, instructions and/or sets of instructions.
- One or more memories 104, 204 may be connected to one or more processors 102, 202 and may store various types of data, signals, messages, information, programs, codes, instructions, and/or instructions.
- One or more memories 104, 204 may consist of ROM, RAM, EPROM, flash memory, hard drives, registers, cache memory, computer readable storage media, and/or combinations thereof.
- One or more memories 104, 204 may be located internal to and/or external to one or more processors 102, 202. Additionally, one or more memories 104, 204 may be connected to one or more processors 102, 202 through various technologies, such as wired or wireless connections.
- One or more transceivers 106, 206 may transmit user data, control information, wireless signals/channels, etc. mentioned in the methods and/or operation flowcharts of this document to one or more other devices.
- One or more transceivers 106, 206 may receive user data, control information, wireless signals/channels, etc. mentioned in the functions, procedures, proposals, methods and/or operational flowcharts disclosed herein, etc. from one or more other devices.
- one or more transceivers 106, 206 may be coupled with one or more processors 102, 202 and may transmit and/or receive wireless signals.
- one or more processors 102, 202 may control one or more transceivers 106, 206 to transmit user data, control information, or wireless signals to one or more other devices. Additionally, one or more processors 102, 202 may control one or more transceivers 106, 206 to receive user data, control information, or wireless signals from one or more other devices. In addition, one or more transceivers (106, 206) may be connected to one or more antennas (108, 208), and one or more transceivers (106, 206) may perform the functions and procedures disclosed in this document through one or more antennas (108, 208). , may be set to transmit and/or receive user data, control information, wireless signals/channels, etc.
- one or more antennas may be multiple physical antennas or multiple logical antennas (eg, antenna ports).
- One or more transceivers (106, 206) process the received user data, control information, wireless signals/channels, etc. using one or more processors (102, 202), and process the received wireless signals/channels, etc. in the RF band signal. It can be converted to a baseband signal.
- One or more transceivers (106, 206) may convert user data, control information, wireless signals/channels, etc. processed using one or more processors (102, 202) from baseband signals to RF band signals.
- one or more transceivers 106, 206 may comprise (analog) oscillators and/or filters.
- wireless devices 100 and 200 correspond to the wireless devices 100 and 200 of FIG. 2 and include various elements, components, units/units, and/or modules. It can be composed of (module).
- the wireless devices 100 and 200 may include a communication unit 110, a control unit 120, a memory unit 130, and an additional component 140.
- the communication unit may include communication circuitry 112 and transceiver(s) 114.
- communication circuitry 112 may include one or more processors 102, 202 and/or one or more memories 104, 204 of FIG. 2.
- transceiver(s) 114 may include one or more transceivers 106, 206 and/or one or more antennas 108, 208 of FIG.
- the control unit 120 is electrically connected to the communication unit 110, the memory unit 130, and the additional components 140 and controls overall operations of the wireless device.
- the control unit 120 may control the electrical/mechanical operation of the wireless device based on the program/code/command/information stored in the memory unit 130.
- the control unit 120 transmits the information stored in the memory unit 130 to the outside (e.g., another communication device) through the communication unit 110 through a wireless/wired interface, or to the outside (e.g., to another communication device) through the communication unit 110.
- Information received through a wireless/wired interface from another communication device may be stored in the memory unit 130.
- Additional components 140 may be configured in various ways depending on the type of wireless device.
- the additional component 140 may include at least one of a power unit/battery, an input/output unit (I/O unit), a driving unit, and a computing unit.
- wireless devices include robots (FIG. 1, 100a), vehicles (FIG. 1, 100b-1, 100b-2), XR devices (FIG. 1, 100c), portable devices (FIG. 1, 100d), and home appliances.
- FIG. 1 100e IoT device ( Figure 1, 100f), digital broadcasting UE, hologram device, public safety device, MTC device, medical device, fintech device (or financial device), security device, climate/environment device, It can be implemented in the form of an AI server/device ( Figure 1, 400), BS ( Figure 1, 200), network node, etc.
- Wireless devices can be mobile or used in fixed locations depending on the usage/service.
- various elements, components, units/parts, and/or modules within the wireless devices 100 and 200 are entirely interconnected through a wired interface, or at least some of them are connected through the communication unit 110.
- the control unit 120 and the communication unit 110 are connected by wire, and the control unit 120 and the first unit (e.g., 130 and 140) are connected through the communication unit 110.
- each element, component, unit/part, and/or module within the wireless devices 100 and 200 may further include one or more elements.
- the control unit 120 may be comprised of one or more processor sets.
- control unit 120 may be composed of a set of a communication control processor, an application processor, an electronic control unit (ECU), a graphics processing processor, and a memory control processor.
- memory unit 130 includes random access memory (RAM), dynamic RAM (DRAM), read only memory (ROM), flash memory, volatile memory, and non-volatile memory. volatile memory) and/or a combination thereof.
- At least one memory can store instructions or programs, wherein the instructions or programs, when executed, are operably coupled to the at least one memory.
- a single processor can be enabled to perform operations according to several embodiments or implementations of the present specification.
- a computer-readable (non-volatile) storage medium can store at least one instruction or computer program, and the at least one instruction or computer program is executed by at least one processor. When executed, it may cause the at least one processor to perform operations according to some embodiments or implementations of the present specification.
- a processing device or apparatus may include at least one processor and at least one computer memory connectable to the at least one processor.
- the at least one computer memory may store instructions or programs that, when executed, cause at least one processor operably coupled to the at least one memory to perform some of the instructions herein. Operations according to embodiments or implementations may be performed.
- a computer program is stored in at least one computer-readable (non-volatile) storage medium and, when executed, performs operations in accordance with some implementations of this specification or causes at least one processor to perform some implementations of this specification. It may include program code that performs operations according to the instructions.
- the computer program may be provided in the form of a computer program product.
- the computer program product may include at least one computer-readable (non-volatile) storage medium.
- the communication device of the present specification includes at least one processor; and operably connectable to the at least one processor and storing instructions that, when executed, cause the at least one processor to perform operations according to example(s) of the present disclosure described below.
- Figure 4 shows an example of a frame structure available in a 3GPP-based wireless communication system.
- the structure of the frame in FIG. 4 is only an example, and the number of subframes, number of slots, and number of symbols in the frame can be changed in various ways.
- OFDM numerology e.g., subcarrier spacing (SCS)
- SCS subcarrier spacing
- TTI transmission time intervals
- the symbol is OFDM.
- Symbol (or, cyclic prefix - orthogonal frequency division multiplexing (CP-OFDM) symbol), SC-FDMA symbol (or, discrete Fourier transform-spread-OFDM, DFT-s-OFDM) symbol).
- CP-OFDM cyclic prefix - orthogonal frequency division multiplexing
- SC-FDMA symbol or, discrete Fourier transform-spread-OFDM, DFT-s-OFDM symbol.
- the symbol, OFDM-based symbol, OFDM symbol, CP-OFDM symbol, and DFT-s-OFDM symbol can be replaced with each other.
- uplink and downlink transmissions are organized into frames.
- Each half-frame consists of 5 subframes, and the period T sf of a single subframe (SF) is 1 ms.
- Subframes are further divided into slots, and the number of slots within a subframe depends on the subcarrier spacing.
- Each slot consists of 14 or 12 OFDM symbols based on a cyclic prefix. In a normal cyclic prefix (CP), each slot consists of 14 OFDM symbols, and in the case of an extended CP, each slot consists of 12 OFDM symbols.
- the slots are arranged in increasing order within a subframe as n u s ⁇ ⁇ 0, ..., n subframe,u slot - 1 ⁇ and in increasing order within a frame as n u s,f ⁇ ⁇ Numbered as 0, ..., n frame, u slot - 1 ⁇ .
- a slot includes a plurality of symbols (eg, 14 or 12) in the time domain.
- a common resource block (CRB) N start, indicated by higher layer signaling (e.g., radio resource control (RRC) signaling)
- RRC radio resource control
- N size,u grid,x is the number of resource blocks (RB) in the resource grid
- the subscript x is DL for downlink and UL for uplink.
- N RB sc is the number of subcarriers per RB, and in a 3GPP-based wireless communication system, N RB sc is usually 12.
- the carrier bandwidth N size,u grid for the subcarrier spacing setting u is given to the UE by upper layer parameters (e.g., RRC parameters) from the network.
- RRC parameters resource resource element
- Each element in the resource grid for the antenna port p and the subcarrier spacing setting u is called a resource element (RE), and one complex symbol may be mapped to each resource element.
- RE resource element
- Each resource element in the resource grid is uniquely identified by an index k in the frequency domain and an index l indicating the symbol position relative to a reference point in the time domain.
- RB is defined by 12 consecutive subcarriers in the frequency domain.
- RBs can be classified into common resource blocks (CRBs) and physical resource blocks (PRBs).
- CRBs are numbered upwards from 0 in the frequency domain for the subcarrier spacing setting u .
- the center of subcarrier 0 of CRB 0 for the subcarrier spacing setting u coincides with 'point A', which is a common reference point for resource block grids.
- PRBs for subcarrier spacing setting u are defined within a bandwidth part (BWP) and are numbered from 0 to N size,u BWP,i -1, where i is the number of the bandwidth part.
- BWP bandwidth part
- BWP includes multiple consecutive RBs in the frequency domain.
- a BWP is a subset of contiguous CRBs defined for a given numerology u i within BWP i on a given carrier.
- a carrier wave may contain up to N (e.g., 5) BWPs.
- a UE may be configured to have one or more BWPs on a given component carrier. Data communication is performed through activated BWPs, and only a predetermined number (e.g., one) of BWPs configured for the UE can be activated on the corresponding carrier.
- a UE with carrier aggregation configured may be configured to use one or more cells.
- the UE may be configured to have one or multiple cell groups.
- a UE may be configured to have multiple cell groups associated with different BSs.
- the UE may be configured to have multiple cell groups associated with a single BS.
- Each cell group of the UE consists of one or more serving cells, and each cell group includes a single PUCCH cell with PUCCH resources configured.
- the PUCCH cell may be a Pcell or a Scell configured as a PUCCH cell among the Scells of the corresponding cell group.
- Each serving cell of the UE belongs to one of the UE's cell groups and does not belong to multiple cell groups.
- Figure 5 illustrates the processing process on the transmission side for a transport block (TB).
- the transmitting end codes the transmitted information using a forward error correction code and then transmits it.
- the received signal is demodulated and the transmission information is restored after going through the decoding process of the error correction code. In this decoding process, errors in the received signal caused by the wireless channel are corrected.
- Data arrives at coding blocks in the form of up to two transport blocks per DL/UL cell per TTI.
- the following coding steps can be applied for each transport block of a DL/UL cell:
- transport blocks of a certain size or larger are divided into several small data blocks and encoded.
- the divided small data blocks are called code blocks.
- Code blocks generally have the same size, but due to size limitations of the internal interleaver of the channel encoder, one code block among several code blocks may have a different size.
- interleaving is performed to reduce the impact of burst errors that occur when transmitting over a wireless channel. Then, it is mapped to actual wireless resources and transmitted. Since the amount of radio resources used during actual transmission is constant, rate matching must be performed on the encoded code blocks to match this. Typically, rate matching is accomplished through puncturing or repetition.
- Rate matching is performed to match M by adjusting the length of the coded bit sequence. If M>N, all or some of the bits of the coded bit sequence are repeated so that the length of the rate-matched sequence is equal to M. If M ⁇ N, some of the bits of the coded bit sequence are punctured so that the length of the rate-matched sequence is equal to M, and the punctured bits are excluded from transmission.
- the transmission end encodes data to be transmitted using channel coding with a specific code rate, and then adjusts the code rate of the data to be transmitted through a rate matching process consisting of puncturing and repetition.
- polar code is a code that provides a new framework to solve the problems of existing channel codes, and was invented by Arikan of Bicent University (Reference: E. Arikan, "Channel Polarization: A Method for "Constructing Capacity-Achieving Codes for Symmetric Binary-Input Memoryless Channels," in IEEE Transactions on Information Theory, vol. 55, no. 7, pp. 3051-3073, July 2009).
- Polar codes are the first mathematically proven, capacity-achieving codes with low encoding and decoding complexity.
- Polar code outperforms Turbo code at large information block lengths without any error flow.
- channel coding using a polar code is referred to as polar coding.
- Polar codes are known as numerical codes that will achieve the channel capacity in a given binary discrete memoryless channel. This can only be achieved when the information block size is large enough. In other words, the polar code is a code that can achieve channel capacity by infinitely increasing the size N of the code. Polar codes have low encoding and decoding complexity and can be decoded successfully. Polar codes are a type of linear block error correction code, and recursive multiple concatenation is the basic building block for polar codes and the basis for code construction. A physical transformation of the channel occurs that converts physical channels into virtual channels, and this transformation is based on recursive multiple concatenation. When multiple channels are multiplied and accumulated, most of those channels become better or worse, and the idea behind polar codes is to use the good channels. For example, sending data at rate 1 through good channels and at rate 0 through bad channels. In other words, through channel polarization, channels move from a normal state to a polarized state.
- Figure 6 is an example block diagram for a polar encoder.
- Figure 6(a) shows the basic module of polar code, and in particular, is a diagram illustrating first level channel combining for polar coding.
- W 2 refers to the total equivalent channel obtained by combining two binary discrete non-memory channels (B-DMC), W .
- B-DMC binary discrete non-memory channels
- u 1 and u 2 are binary-input source bits
- y 1 and y 2 are output coded bits.
- Channel combining is the process of concatenating B-DMC channels in parallel.
- Figure 6(b) shows the basic matrix F for the basic module, and the binary-input source bits u 1 and u 2 and the corresponding outputs x 1 and x 2 to the basic matrix F have the following relationship.
- Channel W 2 can achieve the highest rate symmetric capacity I( W ).
- symmetrical capacity is an important parameter, as it is used as a measure of the rate, the highest rate at which reliable communication can occur across the channel W.
- B-DMC can be defined as follows.
- the concept behind channel polarization in polar codes is to transmit N copies (i.e., N copies) of a channel (e.g., additive white Gaussian noise channel) with a symmetric capacity of I( W ). s) into extreme channels with a capacity close to 1 or 0.
- the I( W ) fraction will be perfect channels and the 1-I( W ) fraction will be completely noise channels.
- Information bits are then sent only through good channels, and inputs to other channels are frozen as 1 or 0.
- the amount of channel polarization increases with block length.
- Channel polarization consists of two phases: the channel combining phase and the channel splitting phase.
- Figure 7 illustrates the concepts of channel combining and channel splitting for channel polarization.
- G N is a generator matrix of size N.
- x N 1 ⁇ x 1 , ..., x N ⁇
- u N 1 ⁇ u 1 , ..., u N ⁇ .
- each B-DMC can be expressed in a recursive form. That is, G N can be expressed by the following equation.
- G 2 corresponds to the fundamental matrix F shown in Figure 6(b).
- G 4 can be expressed as the following matrix.
- Equation 5 The relationship in Equation 5 is shown in Figure 8.
- Figure 8 illustrates N-th level channel combining for polar codes.
- Channel splitting can be expressed as a channel transition probability as shown in the following equation.
- the channels ⁇ W N (i) ⁇ are polarized in the following sense.
- the indices I( W N (i) ) ⁇ (1- ⁇ ,1] as N goes to infinity through powers of 2.
- the fraction of i ⁇ 1,...,N ⁇ goes to I( W )
- the fraction of I( W N (i) ) ⁇ [0, ⁇ ) goes to 1-I( W ). Therefore, if N ⁇ ⁇ , the channels are either completely noisy or freely polarized to noise, and these channels can be accurately known at the transmitting end. Therefore, it is possible to fix bad channels and transmit unbadged bits on good channels.
- the channel becomes a channel with a lot of noise or no noise for a specific input bit.
- the capacity of the equivalent channel for a specific input bit is classified as 0 or I( W ).
- the input of a polar encoder is divided into bit channels to which information data is mapped and bit channels to which information data is not mapped.
- bit channels to which information data is mapped
- bit channels to which information data is not mapped.
- the input bit channels can be divided into noise-free channels and noise channels. Therefore, channel capacity can be obtained by allocating information to a noise-free bit channel.
- the reliability of the input bit channel is calculated and data bits are allocated in that order.
- a bit channel to which data bits are allocated is called a good bit channel.
- a good bit channel can be said to be an input bit channel to which data bits are mapped.
- a bit channel to which data is not mapped is called a frozen bit channel, and encoding is performed by inputting a known value (e.g., 0) into the frozen bit channel. Any value that is known at the transmitting and receiving ends can be mapped to the frozen bit channel.
- a codeword bit (i.e., output bit) position corresponding to an input bit position that is not assigned to an information bit may be punctured.
- the decoding method of the polar code is a successive cancellation (SC) decoding method.
- the SC decoding method obtains the channel transition probability and calculates the likelihood ratio (LLR) for the input bits.
- the channel transition probability can be calculated in a recursive form by using the characteristic that the channel combining and channel splitting processes are in a recursive form. Therefore, the final LLR value can also be calculated in a recursive form.
- u 1 ) for the input bit u i can be obtained as follows.
- u 1 i is divided into odd index and even index, It can be expressed as u 1,o i , u 1,e i .
- the channel transition probability can be expressed as the following equations.
- the polar decoder retrieves information and generates an estimate u ⁇ N 1 of u N 1 with known values of the polar code (e.g. , received bits, frozen bits, etc.).
- LLR is defined as follows.
- LLR can be calculated recursively as follows.
- LLR L (1) 1 (y i ) W(y i
- L (1) 1 (y i ) is the soft information observed from the channel.
- d min (C) min i ⁇ I 2 wt(i) .
- SC list (SCL) decoding is an extension of the basic SC decoder.
- L decoding paths are considered simultaneously at each stage of decoding.
- L is an integer.
- the List-L decoding algorithm is an algorithm that simultaneously tracks L paths during the decoding process.
- Figure 9 illustrates the evolution of decoding paths in the List-L decoding process.
- CRC aided SCL decoding is SCL decoding using CRC and improves the performance of polar code.
- the purpose of CRC-assisted SCL decoding is to detect an error-free path while checking the cyclic redundancy check (CRC) code for each path in the receiving device.
- the SCL decoder outputs candidate sequences to a CRC detector, and the CRC detector feeds back the check results to help determine the codeword.
- CRC cyclic redundancy check
- FIG. 10 is shown to explain the concept of selecting position(s) in a polar code to which information bit(s) are to be assigned.
- C(W i ) is the capacity of channel W i and corresponds to the reliability of the channels experienced by the input bits of the polar code.
- the reliability of the input bit positions can be ranked as shown in FIG. 10.
- the transmission device transfers the 4 bits constituting the data to 4 input bit positions with high channel capacity among the 8 input bit positions of the polar code (i.e., Among the 10 input bit positions u 1 to u 8 , the input bit positions indicated by u 4 , u 6 , u 7 and u 8 are assigned, and the remaining input bit positions are frozen.
- the generator matrix G 8 corresponding to the polar code in FIG. 10 is as follows.
- the generator matrix G 8 can be obtained based on ( G 2 ) xn .
- the input bit positions indicated by u 1 to u 8 in FIG. 10 correspond one-to-one to the rows from the highest row to the lowest row of G 8 .
- the input bit corresponding to u 8 affects all output coded bits.
- the input bit corresponding to u 1 affects only y 1 among the output coded bits.
- Equation 12 when the binary-input source bits u 1 to u 8 and G 8 are multiplied, the row that causes the corresponding input bit to appear in all output bits is the row in which all elements of the rows of G 8 are The lowest row, which has 1 row, is [1, 1, 1, 1, 1, 1, 1].
- a row that causes the corresponding binary-input source bit to appear in only one output bit is a row in which one element of the rows of G 8 is 1, that is, [1, 0, 0, 0 with a row weight of 1. , 0, 0, 0, 0].
- a row with a row weight of 2 can be said to have the input bits corresponding to that row reflected in two output bits.
- u 1 to u 8 correspond one-to-one to the rows of G 8
- the input positions of u 1 to u 8 that is, the rows of G 8 , are used to distinguish the input positions.
- Bit indices may be assigned.
- bit indices are assigned sequentially from bit index 0 to N-1, starting from the highest row with the smallest row weight, for N input bits to G N.
- bit index 0 is assigned to the input position of u 1 , that is, the first row of G 8
- bit index 7 is assigned to the input position of u 8 , that is, the last row of G 8 . granted.
- bit indices are used to indicate input positions of polar codes, they may be allocated differently. For example, bit indices 0 to N-1 may be assigned, starting from the lowest row with the largest row weight.
- bit index 0 to N-1 from the first column with the largest column weight among the columns of G N to the last column with the smallest column weight, or It can be assumed that bit indices 1 to N are assigned.
- bit indices can distinguish input or output locations of the polar code.
- bit index sequence indicates the reliability of the input or output bit positions of the polar code in ascending or descending order.
- the transmitting device inputs information bits to highly reliable input bits based on the input bit index sequence and performs encoding using a polar code, and the receiving device uses the same or corresponding input bit index sequence to assign information bits.
- the input positions or input positions to which frozen bits are assigned can be known. That is, the receiving device can perform polar decoding using the same or corresponding input bit index sequence as the input bit index sequence used by the transmitting device and the corresponding polar code.
- the input bit index sequence can be assumed to be predetermined so that information bit(s) can be assigned to input bit position(s) with high reliability.
- the input bit index sequence is also referred to as a polar sequence.
- Figure 11 illustrates puncturing and information bit allocation for polar codes.
- F represents a frozen bit
- D represents an information bit
- 0 represents a skipping bit.
- the input bit that is changed to a frozen bit by puncturing the coded bit is called a skipping bit or shortening bit, and the corresponding input position is called a skipping position or shortening position.
- Shortening is a rate matching method that transmits while maintaining the size of the input information (i.e., the size of the information block) and inserts known bits into the input bit positions connected to the desired output bit positions.
- the generator matrix G N shortening is possible starting from the input corresponding to the column with a column weight of 1. After removing the column and row with a column weight of 1, the input corresponding to the column with a column weight of 1 from the remaining matrix can be shortened next. .
- information bits that should have been assigned to information bit positions may be reassigned in order of high reliability within the frozen bit position set.
- decoding is usually performed in the following order:
- encoder input bit index or bit index the smaller the encoder's input bit index (hereinafter referred to as encoder input bit index or bit index) is usually less reliable, so it is generally decoded sequentially starting from the smaller encoder input bit index. This is done.
- the information bit may be a source information bit (eg, a transport block bit) or a CRC bit.
- the equivalent channel is divided into a noise channel and a noise free channel, and the data payload is a noise free channel. ) must be transmitted.
- the desired performance can be achieved only when the data payload is transmitted through an equivalent noise-free channel.
- the noise-free equivalent channel is the value of the equivalent channel for each input bit. It can be determined by finding .
- Z(W) is called the Battacharyya parameter, and may be a value corresponding to the upper-bound of the error probability when a MAP (maximum a posteriori probability) decision for transmission of binary input 0 or 1 is performed.
- the transmitting end can obtain the value Z(W), select equivalent channel(s) for the data payload in ascending order (e.g., decreasing order) of the value Z(W), and use it for transmission of the data payload.
- Z(W) can be obtained with the following equation for a binary erasure channel (BEC).
- the transmission end transmits the corresponding data blocks to the bit channel(s) in order of reliability according to the size of the data block (i.e., information block before encoding).
- Encoding can be performed by allocating and setting all others to frozen (e.g., value '0'). For example, if the size of the mother code of the polar encoder (i.e., the maximum size of the code block that the polar encoder can encode) is N, and the size of the data block input to the polar encoder is K, then K bits in order of reliability. The bits of the data block are placed in channels, and polar encoding is performed by setting the N-K bit channel(s) to 0.
- the following shows the polar sequence used in the NR system (refer to the polar sequence defined in 3GPP TS 38.212 Rel-15).
- the table above shows the polar sequence Q 0 Nmax-1 and its corresponding reliability W ( Q i Nmax ).
- W means W ( Q i Nmax )
- the polar sequence Q 0 Nmax-1 is in ascending order of reliability W ( Q 0 Nmax ) ⁇ W ( Q 1 Nmax ) ⁇ ... ⁇ W ( Q Nmax-1 Nmax ), and W ( Q i Nmax ) is the bit index Q Indicates the reliability of i Nmax .
- polar sequence Q 0 N-1 ⁇ Q 0 N , Q 1 N , Q 2 N ,..., Q N-1 N ⁇ is used.
- the polar sequence Q 0 N-1 is ordered in ascending order of reliability W ( Q 0 N ) ⁇ W ( Q 1 N ) ⁇ W ( Q 2 N ) ⁇ ... ⁇ W ( Q N-1 N ). is a subset of the polar sequence Q 0 Nmax-1 , with all elements Q i Nmax of values less than N.
- the polar sequence Q 0 7 has elements with Q i Nmax ⁇ 8 among the elements of the polar sequence Q 0 Nmax -1 , and the elements with Q i Nmax ⁇ 8 have reliability W (0) ⁇ They are ordered in ascending order: W (1) ⁇ W (2) ⁇ W (4) ⁇ W (3) ⁇ W (5) ⁇ W (6).
- bit sequence input to channel coding is denoted as c 0 ,c 1 ,c 2 ,c 3 ,...,c K-1
- N-1 the bit sequence input to channel coding
- K is the number of bits to encode
- n max may be a predetermined value depending on the type of channel or control information and/or the number of information bits input to the channel coding block. For example, n max for BCH may be predetermined to be 9, n max for downlink control information may be predetermined to be 9, and n max for uplink control information may be predetermined to be 10.
- E is the rate matching output sequence length.
- the rate matching output sequence length E is based on the type of channel, the type of control information, the amount of resources to which the channel or control information is mapped, and/or the number of code blocks used for transmission of control information. It may be a determined value.
- the rate matching output sequence length E 864 for BCH
- the rate matching output sequence length E 864 for downlink control information
- the rate matching output sequence length E for uplink control information is the OFDM carrying UCI.
- Number of symbols, number of resource blocks, spreading factor, number of code blocks for UCI, and/or UCI type included in the UCI payload (e.g., HARQ-ACK, scheduling request (SR)) , it may be a value predetermined through channel state information (CSI), etc.
- CSI channel state information
- polar sequence Q 0 N-1 ⁇ Q 0 N , Q 1 N , Q 2 N ,..., Q N-1 N ⁇ is used.
- the polar sequence Q 0 N-1 is ordered in ascending order of reliability W ( Q 0 N ) ⁇ W ( Q 1 N ) ⁇ W ( Q 2 N ) ⁇ ... ⁇ W ( Q N-1 N ). is a subset of the polar sequence Q 0 Nmax-1 , with all elements Q i Nmax of values less than N.
- polar code information size K is the number of information bits encoded through polar coding.
- the total sum of code block + code block CRC bit(s) may be the polar code information size.
- Figure 12 illustrates a method of generating parity check bit(s) used in polar codes.
- a PC polar code may be used, which is a polar code that places parity check (PC) bit(s) generated using a portion of a data block (i.e., an information block) at the input of a polar encoder.
- PC parity check
- the 5-bit shift registers, y[0],...,[4], are all initialized to 0. That is, the PC bit(s) can be generated for the data block [u 0 , u 1 , u 2 , ..., u N-1 ] as follows:
- the PC bit(s) generated in this way are assigned to the input bit channel (i.e., bit index of the polar code) of the polar encoder as follows.
- bit index of the polar code i.e., bit index of the polar code
- Q N PC the set of bit indices for the PC bits
- Q N PC_wm the set of bit indices for other parity check bits among Q N PC
- Q N PC_wm the size of the set Q N PC
- n PC
- n wm PC .
- the method for obtaining Q N PC and Q N PC_wm in the NR standard is explained as follows.
- the j-th row of G N is denoted by g j and the row weight of g j is w( g j ) It is expressed as , where w( g j ) is the number of ones in g j .
- n wm PC different parity check bits My minimum row weight is placed at the bit indices, where Is my Displays the most reliable bit indices. If there are more than n wm PC bit indices with the same minimum row weight, the n wm PC other parity check bits are are placed in the n wm PC bit indices of highest reliability and minimum row weight.
- the input u [u 0 u 1 u 2 ... u N-1 ] to Polo encoding can be generated according to the following table.
- Figure 13 is shown to explain the rate matching process according to some implementations of the present specification.
- rate matching is performed after channel coding.
- rate matching for polar codes is defined for each code block and consists of sub-block interleaving, bit selection, and bit interleaving.
- the input bit sequence to rate matching is d 0 ,d 1 ,d 2 ,d 3 ,...,d N-1
- the output bit sequence after rate matching is f 0 ,f 1 ,f 2 ,f 3 ,...,f can be expressed as E-1 .
- the bits input to the sub-block interleaver are coded bits d 0 , d 1 , d 2 , d 3 ,...,d N-1 .
- the coded bits d 0 , d 1 , d 2 , d 3 ,...,d N-1 can be divided into 32 sub-blocks.
- the sub-block interleaver pattern P(i) is given by the following table.
- Puncturing or shortening is a technique for not transmitting some of the encoded bits when the resources allocated for transmission are not large enough to accommodate all the encoded bits.
- Repetition is a technique that allows some of the encoded bits to be transmitted repeatedly when the resources allocated for transmission are large enough to accommodate the encoded bits.
- the bit sequence e 0 ,e 1 ,e 2 ,..., e E-1 is the bit sequence f 0 ,f 1 ,f 2 ,f 3 ,...,f can be interleaved with E-1 .
- the bit sequence e 0 ,e 1 ,e 2 ,..., e E-1 is equivalent to the bit sequence f 0 ,f 1 ,f 2 ,f 3 ,..., f E-1 can be interleaved according to the following.
- a set of bit indices in the polar sequence Q 0 N-1 Denote and the set of other bit indices in the polar sequence Q 0 N-1 Each is expressed as, where , , and n PC is the number of parity check bits.
- is the number of elements in set S. and is given as follows:
- a ⁇ B means the difference of set B from set A, that is, A-B, and is the set of all elements of set A that do not belong to set B.
- a polarization adjusted convolution (PAC) code is being considered, which adopts a convolution transformation as a precoding step before polar transformation.
- the PAC code can improve the error-correction performance of polar codes by concatenating the convolution transform with the polar transform.
- Figure 14 illustrates the structure of one of the encoder/decoders for PAC code that is available for some implementations of this specification.
- rate profiling in the PAC code classifies user data into an information set and a frozen set.
- the parameter m+1 is called the constraint length of the convolution.
- m is the size of memory used for convolution, for example, the number of shift registers.
- PAC codeword x can be expressed as follows.
- the decoding method of the PAC code can be broadly divided into two types.
- the first method interprets the convolution operation and polar transformation as convolution encoding of the constraint length N and performs sequential decoding.
- Sequential decoding is a high-order (heuristic) decoding, various algorithms are known, and Fano decoding is known to be an efficient method (see E. Arikan, "From sequential decoding to channel polarization and back again").
- Figure 15 illustrates a codeword tree to explain the concept of sequential decoding.
- the input data is 100
- the codeword resulting from encoding the input data 100 is 111 010 100
- the corresponding received codeword at the receiving end is 001 010 100.
- sequential decoding can be performed from left to right of the codeword tree.
- the decoder has a small (Hamming) distance value of 000 among the possible codewords 111 and 000 for the first codeword portion 001 of the received codewords 001 010 100.
- decoding can be performed in the direction corresponding to 0.
- the decoder continues decoding in the direction of 0 corresponding to the input of 000 by comparing the second codeword part 010 of the received codeword 001 010 100 with 111, 000 again, and the third codeword part 100 again with 111, By selecting 0 compared to 000, decoding can be performed to obtain the final value of 000.
- Fano decoding for a convolutional encoder with the number of input bits ⁇ , the number of output bits v, and the constraint length L is briefly described as follows.
- the path metric can be expressed as follows.
- l is the depth of the code tree.
- Q(k) is the relative frequency of k.
- * means add j ⁇ to the threshold, where j is chosen to satisfy: .
- Table 10 means to move forward to the first node stemming from the current node.
- Table 10 means moving laterally to the next node that is different from the current node only in the last branch. If the current node is the last, move backward.
- the second method is to interpret the code as a polar code with precoding of T and perform the SC or SCL decoding described above.
- SC/SCL decoding of the PAC code requires an SC/SCL decoder for the existing polar code and storage of the memory state after performing convolutional re-encoding during the decoding process. This is because in the PAC code, the input of the polar transform is the output of the convolutional encoder.
- An example of an SCL decoding algorithm for PAC codes can be expressed as the following table (see M. Rowshan, A. Burg, and E. Viterbo, "Polarization-adjusted convolutional (PAC) codes: sequential decoding vs list decoding, " IEEE Tr. VT., vol. 70, no. 2, 2021).
- the convolution operation matrix T can be interpreted as precoding in the form of an upper triangular matrix. It is known that such precoded polar codes can have improved minimum distance characteristics compared to non-precoded polar codes.
- the impulse response c (c 0 , ..., c m ) needs to be designed.
- bits of user data are placed in input bit channels to the convolution through information/frozen bit(s) allocation.
- Figures 16 and 17 illustrate the results of rate profile operation for mother code size.
- User data is placed in bit index(s) corresponding to the shaded portion in FIG. 16.
- the index of the bit channel to which the user data bit, that is, the information bit, is allocated is referred to as the information bit index.
- the number of frozen bits and constraint length between bit indices assigned to information may affect error protection. For example, if the constraint length is smaller than the number of information bits located between information bit indices, the output of the convolution operation becomes 0. In this case, the information bits placed at the corresponding bit indices may be more vulnerable to errors than other bits. Therefore, this may lead to a problem in which the probability of error occurring depending on the location of user data is not the same.
- the constraint length of the convolution operation is determined to be larger than the number of frozen bits located between information bits arranged as a result of the rate profile. For example, in the case of the PAC code of (32, 8) among the examples in FIG. 16, the maximum number of frozen bits located between consecutive information bit indices is 6, so the constraint length is set to a value greater than 6. It may be desirable to do so.
- Figure 17 shows the number of frozen bits located between information bits of a PAC code supporting various information sizes.
- the minimum coding rate is assumed to be 1/8.
- the constraint length is determined to be greater than the maximum number of frozen bits located between information bits, the information bits may have the same probability of error occurrence. .
- the constraint length is preferably set to a value greater than or equal to 8.
- the PAC code can support various mother code sizes.
- the following table shows the maximum number of frozen bits located between information bits according to various mother code sizes when applying the information/frozen bit allocation method of the current NR standard (e.g., 3GPP TS 38.212 Rel-15). At this time, the minimum coding rate is assumed to be 1/8.
- the constraint length for the convolution operation of a PAC code supporting various mother code sizes can be determined as follows:
- Method 1-1 Mother code sizes are grouped into a plurality of mother code size groups, and the constraint length can be determined or set for each mother code size group. In this case, a value larger than the maximum number of frozen bits located between information bits for the maximum mother code size within the mother code size group is set as the constraint length. For example, for the mother code size groups ⁇ 32, 64 ⁇ , ⁇ 128, 256 ⁇ , ⁇ 512, 1024 ⁇ obtained by grouping the mother code sizes in Table 12 by two in order, it is greater than 16, 60, and 128. The same values can be determined/set as the respective constraint lengths.
- Method 2 The same constraint length can be determined/set for all mother code sizes supported by the PAC code. In this case, a value larger than the maximum number of frozen bits located between information bits according to the maximum supported mother code size may be determined/set as the constraint length. For example, referring to Table 12, since the maximum mother code size is 1024, a value greater than 127 can be determined/set as the constraint length. In some implementations, a case may occur where the determined/set constraint length is larger than the mother code size. Since a constraint length larger than the mother code size is meaningless, some mother code sizes (e.g., greater than the constraint length determined based on 1024) may occur.
- the above-described methods 1 and 2 can be applied when there is no feedback in the convolution operation, that is, in a non-recursive convolution operation.
- Table 12 As can be seen in Table 12, as the mother code size increases, the constraint length increases, which increases the size of memory required for actual implementation. Therefore, if recursive convolution is applied to the PAC code, the convolution operation can be implemented with a relatively small amount of memory.
- Figures 18 and 19 illustrate a recursive convolution operation.
- Figure 18 illustrates a recursive convolution with the number of transition registers being 1, that is, with a constraint length of 2
- Figure 19 illustrates a recursive convolution with the number of transition registers being m, that is, with a constraint length of m+1. This illustrates convolution.
- u n can be determined by adding the convolution of u n-1 and c 1 stored in transition register 1 to v n .
- Figure 19 illustrates a recursive convolution operation with constraint length m+1.
- v [0, 0, 0, 0, 0, 0, d 0 , 0, 0, 0, d 1 , 0, d 2 , d 3 , d 4 ].
- the rate profile operation positions user data in bit index(es) using criteria such as reliability.
- the information/frozen bit allocation method of the polar code can be applied.
- using the Reed-Muller (RM) rate profile provides greater capacity (than the polar code rate profile) in binary input AWGN channels. capacity) can be achieved.
- the reliability order obtained using the Battahcaryya parameter in Equation 13 can be applied to the polar code rate profile.
- the RM rate profile is obtained when the bit index is expressed in binary.
- the reliability order is determined in order of weight corresponding to the number of 1s.
- bit index A partial order (PO) method using the definition of stochastic degradation can be applied (reference: C. Schurch, “A partial order for the synthesized channels of a polar code”).
- W 1 and W 2 are called uniform binary input channels, and a transmission system in which X 1 ⁇ Y 1 through W 1 and X 2 ⁇ Y 2 through W 2 can be assumed.
- W 1 probability distributions that satisfy the relationship of When exists, W 1 is defined as stochastically degraded with respect to W 2 , and W 1 It is displayed as W 2 .
- bit channel j can be obtained by replacing the high-order 1 with the low-order 0 in the binary representation for bit channel i.
- bit channel j is said to be stochastically degraded with respect to bit channel i.
- the relationship of W 16 (12) is satisfied.
- bit channel j can be expressed as being stochastically degraded with respect to bit channel i.
- bit channel j can be expressed as being stochastically degraded with respect to bit channel i.
- the following table illustrates the process of determining the rate profile combining the weight of the bit index and PO.
- the bit indices listed in weight order are 15, ⁇ 7, 11, 13, 14 ⁇ , ⁇ 3, 5, 6, 9, 10, 12 ⁇ , ⁇ 1, 2, 4, 8 ⁇ , 0. , where the bit index(s) within ⁇ ⁇ have the same weight value. Therefore, if the reliability order of weight indices with the same weight is obtained using PO, if the weight is 3, the reliability order is 14, 13, 11, 7, and if the weight is 2, the reliability order is 12, 10, 9, It has a reliability order of 6, 5, 3, and if the weight is 1, it has a reliability order of 8, 4, 2, 1.
- the final reliability order of the bit indices, determined by combining the weight of the bit index and the PO is 15, 14, 13, 11, 7, 12, 10, 9, 6, 5, 3, 8, 4, 2, 1, 0. do.
- the reliability order of bit indices can be determined even for larger mother code sizes using the same method. If the reliability order of bit indices is determined in this way, excellent performance in terms of minimum distance is achieved, making it effective in applications requiring a low error rate.
- W 4096 [0, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 3, 5, 6, 9, 10, 12, 17, 18, 20, 24, 33, 34, 36, 40, 48, 65, 66, 68, 72, 80, 96, 129, 130, 132, 136, 144, 160, 192, 257, 258, 260, 264, 272, 288, 320, 384, 513, 514, 516, 520, 528, 544, 576, 640, 768, 1025, 1026, 1028, 1032, 1040, 1056, 1088, 1152, 1280, 1536, 2049, 2050, 2 052, 2056, 2064, 2080, 2112, 2176, 2304, 2560, 3072, 7, 11, 13, 14, 19, 21, 22, 25, 26, 28, 35, 37, 38, 41, 42, 44, 49, 50, 52, 56, 67, 69, 70, 73, 74, 76, 81, 82, 84, 88,
- information/frozen bits can be determined by applying the PO method to bit channels with the same weight based on the RM profile method. Through this, the performance of channel coding based on polar codes can be improved by maximizing the minimum distance between codewords. Additionally, according to some implementations of this specification, various information sizes can be supported in the PAC code while maximizing the minimum distance between codewords.
- Figure 20 illustrates a channel encoding process, according to some implementations of the present specification.
- a communication device or encoder may perform operations according to several implementations of this specification with respect to channel encoding.
- the communication device or encoder includes at least one transceiver; at least one processor; and at least one computer operably connectable to the at least one processor and storing instructions that, when executed, cause the at least one processor to perform operations in accordance with some implementations of the present specification. May contain memory.
- the processing device for the communication device or encoder includes at least one processor; and at least one computer operably connectable to the at least one processor and storing instructions that, when executed, cause the at least one processor to perform operations in accordance with some implementations of the present specification. May contain memory.
- a computer-readable (non-volatile) storage medium stores at least one computer program that, when executed by at least one processor, includes instructions that cause the at least one processor to perform operations in accordance with some implementations of the present specification. You can.
- a computer program or computer program product is recorded on at least one computer-readable (non-volatile) storage medium and, when executed, causes (at least one processor) to perform operations according to some implementations of the present specification. May contain instructions. 20, in the communication device, the encoder, the processing device, the computer readable (non-volatile) storage medium, and/or the computer program product, the operations include: length N of the polar code, length N of the information block.
- v_n and u_n are each a sequence or vector with length N.
- determining the input v_n includes determining K input indices at which K bits of the information block are to be placed and input indexes at which to be frozen among the input indices 0 to N - 1 of the polar code of length N. can do.
- performing the convolution may include: determining a number of transition registers based on the length N of the polar code among a predetermined number of transition registers for mother code sizes; And it may include performing convolution on the input v_n based on the determined number of transition registers.
- the predetermined number of transition registers may be greater than or equal to the maximum number of respective consecutive frozen bits for the mother code sizes.
- performing the convolution It may include determining the input u_n based on .
- performing the convolution includes: determining the second input u_n based on v_n + u_(n-1), where u_(n-1) is the previous convolution of the convolution. It may be a sequence of values stored in transition registers based on .
- the same number of transition registers may be used for different mother code sizes.
- Figure 21 illustrates a channel decoding process, according to some implementations of the present specification.
- a communication device or decoder may perform operations according to several implementations of this specification with respect to channel decoding.
- the communication device includes at least one transceiver; at least one processor; and at least one computer operably connectable to the at least one processor and storing instructions that, when executed, cause the at least one processor to perform operations in accordance with some implementations of the present specification. May contain memory.
- the processing device for the communication device or decoder may include at least one processor; and at least one computer operably connectable to the at least one processor and storing instructions that, when executed, cause the at least one processor to perform operations in accordance with some implementations of the present specification. May contain memory.
- a computer-readable (non-volatile) storage medium may store at least one computer program that, when executed by at least one processor, includes instructions that cause the at least one processor to perform operations in accordance with some implementations of the present specification. You can.
- Implementations of this specification can be used in a wireless communication system, a BS or user equipment, or other equipment.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
통신 기기는 폴라 코드의 길이 N, 상기 정보 블록의 길이 K, 길이 N인 폴라 시퀀스 Q N-1
0 = {Q0,, Q1,..., QN-1}를 기반으로 상기 폴라 코드로의 입력 u_n를 결정; 상기 입력 u_n를 상기 폴라 코드와 상기 폴라 시퀀스를 기반으로 인코딩하는 것을 기반으로 코딩된 비트들을 결정한다. 여기서 QN
i는 비트 인덱스이고, W(QN
i)는 비트 인덱스 QN
i의 신뢰도이다. 상기 폴라 시퀀스의 비트 인덱스들은 다음을 만족한다: 이진수로 표현될 때 1의 개수가 많을수록 신뢰도고 높으며, 이진수로 표현될 때 1의 개수가 동일한 비트 인덱스들은 QN
x < QN
y에 대해 신뢰도 W(QN
x) < W(QN
y).
Description
본 명세는 무선 통신 시스템에 관한 것이다.
기기간(machine-to-machine, M2M) 통신, 기계 타입 통신(machine type communication, MTC) 등과, 높은 데이터 전송량을 요구하는 스마트 폰, 태블릿 PC(Personal Computer) 등의 다양한 기기 및 기술이 출현 및 보급되고 있다. 이에 따라, 셀룰러 망(cellular network)에서 처리될 것이 요구되는 데이터 양이 매우 빠르게 증가하고 있다. 이와 같이 빠르게 증가하는 데이터 처리 요구량을 만족시키기 위해, 더 많은 주파수 대역을 효율적으로 사용하기 위한 반송파 집성(carrier aggregation) 기술, 인지 무선(cognitive radio) 기술 등과, 한정된 주파수 내에서 전송되는 데이터 용량을 높이기 위한 다중 안테나 기술, 다중 BS 협력 기술 등이 발전하고 있다.
더 많은 통신 기기가 더 큰 통신 용량을 요구함에 따라, 레거시 무선 접속 기술(radio access technology, RAT)에 비해 향상된 모바일 광대역(enhanced mobile broadband, eMBB) 통신에 대한 필요성이 대두되고 있다. 또한, 복수의 기기 및 객체(object)를 서로 연결하여 언제 어디서나 다양한 서비스를 제공하기 위한 대규모 기계 타입 통신(massive machine type communication, mMTC)는 차세대 통신에서 고려해야 할 주요 쟁점 중 하나이다.
또한, 신뢰도 및 대기 시간에 민감한 서비스/사용자기기(user equipment, UE)를 고려하여 설계될 통신 시스템에 대한 논의가 진행 중이다. 차세대(next generation) 무선 접속 기술의 도입은 eMBB 통신, mMTC, 초 신뢰도 및 저 대기 시간 통신(ultra-reliable and low latency communication, URLLC) 등을 고려하여 논의되고 있다.
새로운 무선 통신 기술의 도입에 따라, BS가 소정 자원영역에서 서비스를 제공해야 하는 UE들의 개수가 증가할 뿐만 아니라, 상기 BS가 서비스를 제공하는 UE들과 전송/수신하는 데이터와 제어정보의 양이 증가하고 있다. BS가 UE(들)과의 통신에 이용 가능한 무선 자원의 양은 유한하므로, BS가 유한한 무선 자원을 이용하여 상/하향링크 데이터 및/또는 상/하향링크 제어정보를 UE(들)로부터/에게 효율적으로 수신/전송하기 위한 새로운 방안이 요구된다. 다시 말해, 노드의 밀도가 증가 및/또는 UE의 밀도가 증가함에 따라 높은 밀도의 노드들 혹은 높은 밀도의 사용자기기들을 통신에 효율적으로 이용하기 위한 방안이 요구된다.
또한, 상이한 요구사항(requirement)들을 가진 다양한 서비스들을 무선 통신 시스템에서 효율적으로 지원할 방안이 요구된다.
또한, 지연(delay) 혹은 레이턴시(latency)를 극복하는 것이 성능이 지연/레이턴시에 민감한 어플리케이션들에 중요한 도전이다.
또한, 기존 채널 코드들의 대안으로서 제안된 폴라 코드의 성능을 더욱 향상할 방안이 요구된다.
본 명세가 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 이하의 상세한 설명으로부터 본 명세와 관련된 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 명세의 일 양상으로, 무선 통신 시스템에서 정보 블록을 인코딩하는 방법이 제공된다. 상기 방법은: 폴라 코드의 길이 N, 상기 정보 블록의 길이 K, 길이 N인 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}를 기반으로 상기 폴라 코드로의 입력 u_n를 결정; 상기 입력 u_n를 길이 N인 상기 폴라 코드와 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}를 기반으로 인코딩하는 것을 기반으로 코딩된 비트들을 결정; 및 상기 코딩된 비트들을 다른 통신 기기에게 전송하는 것을 포함한다. 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}는 신뢰도 W(QN
0)<W(QN
1)<...<W(QN
N-1)의 오름차순으로 정의된 것이며, 여기서 0 <= QN
i <= N - 1는 i = 0, 1, ..., N - 1에 대한 비트 인덱스이고, W(QN
i)는 비트 인덱스 QN
i의 신뢰도이다. 상기 입력 u_n를 결정하는 것은 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}를 기반으로 길이 N인 상기 폴라 코드의 입력 인덱스들 0 ~ N - 1 중 상기 정보 블록의 K개 비트들이 배치될 K개 입력 인덱스들과 프로즌될 입력 인덱스들을 결정하는 것을 포함한다. 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}의 비트 인덱스들은 다음을 만족한다: i) 이진수로 표현될 때 1의 개수가 많을수록 신뢰도고 높으며, ii) 이진수로 표현될 때 1의 개수가 동일한 비트 인덱스들은 QN
x < QN
y에 대해 W(QN
x) < W(QN
y).
본 명세의 다른 양상으로, 무선 통신 시스템에서 정보 블록을 인코딩하는 통신 기기가 제공된다. 상기 통신 기기는: 적어도 하나의 송수신기; 적어도 하나의 프로세서; 및 상기 적어도 하나의 프로세서에 동작 가능하게 연결 가능한, 그리고, 실행될 때, 상기 적어도 하나의 프로세서로 하여금 동작들을 수행하도록 하는 명령(instruction)들을 저장한, 적어도 하나의 컴퓨터 메모리를 포함한다. 상기 동작들은: 폴라 코드의 길이 N, 상기 정보 블록의 길이 K, 길이 N인 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}를 기반으로 상기 폴라 코드로의 입력 u_n를 결정; 상기 입력 u_n를 길이 N인 상기 폴라 코드와 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}를 기반으로 인코딩하는 것을 기반으로 코딩된 비트들을 결정; 및 상기 코딩된 비트들을 다른 통신 기기에게 전송하는 것을 포함한다. 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}는 신뢰도 W(QN
0)<W(QN
1)<...<W(QN
N-1)의 오름차순으로 정의된 것이며, 여기서 0 <= QN
i <= N - 1는 i = 0, 1, ..., N - 1에 대한 비트 인덱스이고, W(QN
i)는 비트 인덱스 QN
i의 신뢰도이다. 상기 입력 u_n를 결정하는 것은 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}를 기반으로 길이 N인 상기 폴라 코드의 입력 인덱스들 0 ~ N - 1 중 상기 정보 블록의 K개 비트들이 배치될 K개 입력 인덱스들과 프로즌될 입력 인덱스들을 결정하는 것을 포함한다. 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}의 비트 인덱스들은 다음을 만족한다: i) 이진수로 표현될 때 1의 개수가 많을수록 신뢰도고 높으며, ii) 이진수로 표현될 때 1의 개수가 동일한 비트 인덱스들은 QN
x < QN
y에 대해 W(QN
x) < W(QN
y).
본 명세의 또 다른 양상으로, 무선 통신 시스템에서 프로세싱 장치가 제공된다. 상기 프로세싱 장치는: 적어도 하나의 프로세서; 및 상기 적어도 하나의 프로세서에 동작 가능하게 연결 가능한, 그리고, 실행될 때, 상기 적어도 하나의 프로세서로 하여금 동작들을 수행하도록 하는 명령(instruction)들을 저장한, 적어도 하나의 컴퓨터 메모리를 포함한다. 상기 동작들은: 폴라 코드의 길이 N, 정보 블록의 길이 K, 길이 N인 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}를 기반으로 상기 폴라 코드로의 입력 u_n를 결정; 상기 입력 u_n를 길이 N인 상기 폴라 코드와 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}를 기반으로 인코딩하는 것을 기반으로 코딩된 비트들을 결정; 및 상기 코딩된 비트들을 다른 통신 기기에게 전송하는 것을 포함한다. 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}는 신뢰도 W(QN
0)<W(QN
1)<...<W(QN
N-1)의 오름차순으로 정의된 것이며, 여기서 0 <= QN
i <= N - 1는 i = 0, 1, ..., N - 1에 대한 비트 인덱스이고, W(QN
i)는 비트 인덱스 QN
i의 신뢰도이다. 상기 입력 u_n를 결정하는 것은 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}를 기반으로 길이 N인 상기 폴라 코드의 입력 인덱스들 0 ~ N - 1 중 상기 정보 블록의 K개 비트들이 배치될 K개 입력 인덱스들과 프로즌될 입력 인덱스들을 결정하는 것을 포함한다. 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}의 비트 인덱스들은 다음을 만족한다: i) 이진수로 표현될 때 1의 개수가 많을수록 신뢰도고 높으며, ii) 이진수로 표현될 때 1의 개수가 동일한 비트 인덱스들은 QN
x < QN
y에 대해 W(QN
x) < W(QN
y).
본 명세의 또 다른 양상으로, 컴퓨터 판독가능한 저장 매체가 제공된다. 상기 컴퓨터 판독가능한 저장 매체는: 적어도 하나의 프로세서에 의해 실행될 때, 상기 적어도 하나의 프로세서로 하여금 사용자기기를 위한 동작들을 수행하도록 하는 지시들을 포함하는 적어도 하나의 컴퓨터 프로그램을 저장한다. 상기 동작들은: 폴라 코드의 길이 N, 정보 블록의 길이 K, 길이 N인 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}를 기반으로 상기 폴라 코드로의 입력 u_n를 결정; 상기 입력 u_n를 길이 N인 상기 폴라 코드와 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}를 기반으로 인코딩하는 것을 기반으로 코딩된 비트들을 결정; 및 상기 코딩된 비트들을 다른 통신 기기에게 전송하는 것을 포함한다. 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}는 신뢰도 W(QN
0)<W(QN
1)<...<W(QN
N-1)의 오름차순으로 정의된 것이며, 여기서 0 <= QN
i <= N - 1는 i = 0, 1, ..., N - 1에 대한 비트 인덱스이고, W(QN
i)는 비트 인덱스 QN
i의 신뢰도이다. 상기 입력 u_n를 결정하는 것은 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}를 기반으로 길이 N인 상기 폴라 코드의 입력 인덱스들 0 ~ N - 1 중 상기 정보 블록의 K개 비트들이 배치될 K개 입력 인덱스들과 프로즌될 입력 인덱스들을 결정하는 것을 포함한다. 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}의 비트 인덱스들은 다음을 만족한다: i) 이진수로 표현될 때 1의 개수가 많을수록 신뢰도고 높으며, ii) 이진수로 표현될 때 1의 개수가 동일한 비트 인덱스들은 QN
x < QN
y에 대해 W(QN
x) < W(QN
y).
본 명세의 각 양상에 있어서, 상기 입력 u_n를 결정하는 것은: 상기 폴라 코드의 길이 N, 상기 정보 블록의 길이 K, 상기 길이 N인 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}를 기반으로 컨볼루션을 위한 입력 v_n을 결정; 및 상기 입력 v_n에 대해 상기 컨볼루션을 수행하는 것을 기반으로 상기 입력 u_n을 결정하는 것을 포함할 수 있다.
본 명세의 각 양상에 있어서, 상기 컨볼루션을 수행하는 것은: 머더 코드 크기들에 대한 천이 레지스터들의 미리 결정된 개수들 중 상기 폴라 코드의 길이 N을 기반으로 천이 레지스터들의 개수를 결정; 및 상기 결정된 개수의 천이 레지스터를 기반으로 상기 입력 v_n에 대한 컨벌루션을 수행하는 것을 포함할 수 있다.
본 명세의 각 양상에 있어서, 상기 천이 레지스터들의 상기 미리 결정된 개수들은 상기 머더 코드 크기들에 대한 각각의 연속한 프로즌 비트들의 최대 개수들보다 크거나 같을 수 있다.
본 명세의 각 양상에 있어서, 상이한 머더 코드 크기들에 대해 동일 개수의 천이 레지스터들이 사용될 수 있다.
상기 과제 해결방법들은 본 명세의 예들 중 일부에 불과하며, 본 명세의 기술적 특징들이 반영된 다양한 예들이 당해 기술분야의 통상적인 지식을 가진 자에 의해 이하의 상세한 설명을 기반으로 도출되고 이해될 수 있다.
본 명세의 몇몇 구현(들)에 의하면, 무선 통신 신호가 효율적으로 전송/수신될 수 있다. 이에 따라, 무선 통신 시스템의 전체 처리량(throughput)이 높아질 수 있다.
본 명세의 몇몇 구현(들)에 의하면, 상이한 요구사항들을 가진 다양한 서비스들이 무선 통신 시스템에서 효율적으로 지원될 수 있다.
본 명세의 몇몇 구현(들)에 의하면, 통신 기기들 간 무선 통신 동안 발생하는 지연/레이턴시가 감소될 수 있다.
본 명세의 몇몇 구현(들)에 의하면, 코드워드들간 최소 거리를 최대화함으로써 폴라 코드에 기반한 채널 코딩의 성능이 개선될 수 있다.
본 명세의 몇몇 구현들에 의하면, 코드워드들 간 최소 거리를 최대화하면서도 다양한 정보 크기들이 PAC 코드에서 지원될 수 있다.
본 명세에 따른 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과는 이하의 상세한 설명으로부터 본 명세와 관련된 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 명세의 구현들에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되는, 첨부 도면은 본 명세의 구현들에 대한 예들을 제공하고, 상세한 설명과 함께 본 명세의 구현들을 설명한다:
도 1은 본 명세의 구현들이 적용되는 통신 시스템 1의 예를 도시한 것이고;
도 2는 본 명세에 따른 방법을 수행할 수 있는 통신 기기들의 예들을 도시한 블록도이며,
도 3은 본 명세의 구현(들)을 수행할 수 있는 무선 기기의 다른 예를 도시한 것이고,
도 4는 제3 세대 파트너쉽 프로젝트(3rd generation partnership project, 3GPP) 기반 무선 통신 시스템에서 이용가능한 프레임 구조의 예를 도시한 것이며;
도 5는 수송 블록(transport block, TB)에 대한 전송단 측에서의 처리 과정을 예시하며;
도 6은 폴라 인코더를 위한 블록도의 예이며;
도 7은 채널 양극화를 위한 채널 컴바이닝과 채널 스플리팅의 개념을 예시하며;
도 8은 폴라 코드를 위한 N-번째 레벨 채널 컴바이닝을 예시하고;
도 9은 리스트-L 디코딩 과정에서 디코딩 경로들의 진화(evolution)을 예시하며;
도 10은 폴라 코드에서 정보 비트(들)이 할당될 위치(들)을 선택하는 개념을 설명하기 위해 도시된 것이고;
도 11은 폴라 코드에 대한 펑처링 및 정보 비트 할당을 예시하며;
도 12는 폴라 코드에서 사용되는 패리티 체크 비트(들)을 생성하는 방법을 예시하고;
도 13은 본 명세의 몇몇 구현들에 따른 레이트 매칭 과정을 설명하기 위해 도시한 것이며;
도 14는 본 명세의 몇몇 구현들에 이용 가능한 PAC 코드를 위한 인코더/디코더들 중 일 구조를 예시하고;
도 15는 순차 디코딩의 개념을 설명하기 위한 코드워드 트리를 예시하며;
도 16 및 도 17은 머더 코드 크기에 대한 레이트 프로파일 동작의 결과를 예시하고;
도 18 및 도 19는 회귀적 컨볼루션 동작을 예시하며;
도 20은 본 명세의 몇몇 구현들에 따른, 채널 인코딩 과정을 예시하고;
도 21은 본 명세의 몇몇 구현들에 따른, 채널 디코딩 과정을 예시한다.
이하, 본 명세에 따른 구현들을 첨부된 도면을 참조하여 상세하게 설명한다. 첨부된 도면과 함께 이하에 개시될 상세한 설명은 본 명세의 예시적인 구현을 설명하고자 하는 것이며, 본 명세가 실시될 수 있는 유일한 구현 형태를 나타내고자 하는 것이 아니다. 이하의 상세한 설명은 본 명세의 완전한 이해를 제공하기 위해서 구체적 세부사항을 포함한다. 그러나 당업자는 본 명세가 이러한 구체적 세부사항 없이도 실시될 수 있음을 안다.
몇몇 경우, 본 명세의 개념이 모호해지는 것을 피하기 위하여 공지의 구조 및 장치는 생략되거나, 각 구조 및 장치의 핵심기능을 중심으로 한 블록도 형식으로 도시될 수 있다. 또한, 본 명세서 전체에서 동일한 구성요소에 대해서는 동일한 도면 부호를 사용하여 설명한다.
이하에서 설명되는 기법(technique) 및 기기, 시스템은 다양한 무선 다중 접속 시스템에 적용될 수 있다. 다중 접속 시스템의 예들로는 CDMA(code division multiple access) 시스템, FDMA(frequency division multiple access) 시스템, TDMA(time division multiple access) 시스템, OFDMA(orthogonal frequency division multiple access) 시스템, SC-FDMA(single carrier frequency division multiple access) 시스템, MC-FDMA(multi carrier frequency division multiple access) 시스템 등이 있다. CDMA는 UTRA(Universal Terrestrial Radio Access) 또는 CDMA2000과 같은 무선 기술(technology)에서 구현될 수 있다. TDMA는 GSM(Global System for Mobile communication), GPRS(General Packet Radio Service), EDGE(Enhanced Data Rates for GSM Evolution)(즉, GERAN) 등과 같은 무선 기술에서 구현될 수 있다. OFDMA는 IEEE(Institute of Electrical and Electronics Engineers) 802.11(WiFi), IEEE 802.16(WiMAX), IEEE802-20, E-UTRA(evolved-UTRA) 등과 같은 무선 기술에서 구현될 수 있다. UTRA는 UMTS(Universal Mobile Telecommunication System)의 일부이며, 3GPP(3rd Generation Partnership Project) LTE(Long Term Evolution)은 E-UTRA를 이용하는 E-UMTS의 일부이다. 3GPP LTE는 하향링크(downlink, DL)에서는 OFDMA를 채택하고, 상향링크(uplink, UL)에서는 SC-FDMA를 채택하고 있다. LTE-A(LTE-advanced)는 3GPP LTE의 진화된 형태이다.
설명의 편의를 위하여, 이하에서는 본 명세가 3GPP 기반 통신 시스템, 예를 들어, LTE, NR에 적용되는 경우를 가정하여 설명한다. 그러나 본 명세의 기술적 특징이 이에 제한되는 것은 아니다. 예를 들어, 이하의 상세한 설명이 이동통신 시스템이 3GPP LTE/NR 시스템에 대응하는 이동통신 시스템을 기초로 설명되더라도, 3GPP LTE/NR에 특유한 사항을 제외하고는 다른 임의의 이동 통신 시스템에도 적용 가능하다.
본 명세에서 사용되는 용어 및 기술 중 구체적으로 설명되지 않은 용어 및 기술에 대해서는 3GPP 기반 표준 문서들, 예를 들어, 3GPP TS 36.211, 3GPP TS 36.212, 3GPP TS 36.213, 3GPP TS 36.321, 3GPP TS 36.300 및 3GPP TS 36.331, 3GPP TS 37.213, 3GPP TS 38.211, 3GPP TS 38.212, 3GPP TS 38.213, 3GPP TS 38.214, 3GPP TS 38.300, 3GPP TS 38.331 등을 참조할 수 있다.
후술하는 본 명세의 예들에서 기기가 "가정한다"는 표현은 채널을 전송하는 주체가 해당 "가정"에 부합하도록 상기 채널을 전송함을 의미할 수 있다. 상기 채널을 수신하는 주체는 상기 채널이 해당 "가정"에 부합하도록 전송되었다는 전제 하에, 해당 "가정"에 부합하는 형태로 상기 채널을 수신 혹은 디코딩하는 것임을 의미할 수 있다.
본 명세에서, UE는 고정되거나 이동성을 가질 수 있으며, BS(base station, BS)과 통신하여 사용자데이터 및/또는 각종 제어정보를 전송 및/또는 수신하는 각종 기기들이 이에 속한다. UE는 (Terminal Equipment), MS(Mobile Station), MT(Mobile Terminal), UT(User Terminal), SS(Subscribe Station), 무선기기(wireless device), PDA(Personal Digital Assistant), 무선 모뎀(wireless modem), 휴대기기(handheld device) 등으로 불릴 수 있다. 또한, 본 명세에 있어서, BS는 일반적으로 UE 및/또는 다른 BS와 통신하는 고정국(fixed station)을 말하며, UE 및 타 BS와 통신하여 각종 데이터 및 제어정보를 교환한다. BS는 ABS(Advanced Base Station), NB(Node-B), eNB(evolved-NodeB), BTS(Base Transceiver System), 접속 포인트(Access Point), PS(Processing Server) 등 다른 용어로 불릴 수 있다. 특히, UTRAN의 BS는 Node-B로, E-UTRAN의 BS는 eNB로, 새로운 무선 접속 기술 네트워크(new radio access technology network)의 BS는 gNB로 불린다. 이하에서는 설명의 편의를 위해, 통신 기술의 종류 혹은 버전에 관계 없이 BS을 BS로 통칭한다.
본 명세에서 노드(node)라 함은 UE와 통신하여 무선 신호를 전송/수신할 수 있는 고정된 지점(point)을 말한다. 다양한 형태의 BS들이 그 명칭에 관계없이 노드로서 이용될 수 있다. 예를 들어, BS, NB, eNB, 피코-셀 eNB(PeNB), 홈 eNB(HeNB), 릴레이(relay), 리피터(repeater) 등이 노드가 될 수 있다. 또한, 노드는 BS가 아니어도 될 수 있다. 예를 들어, 무선 리모트 헤드(radio remote head, RRH), 무선 리모트 유닛(radio remote unit, RRU)가 될 수 있다. RRH, RRU 등은 일반적으로 BS의 전력 레벨(power level) 더욱 낮은 전력 레벨을 갖는다. RRH 혹은 RRU 이하, RRH/RRU)는 일반적으로 광 케이블 등의 전용 회선(dedicated line)으로 BS에 연결되어 있기 때문에, 일반적으로 무선 회선으로 연결된 BS들에 의한 협력 통신에 비해, RRH/RRU 와 BS에 의한 협력 통신이 원활하게 수행될 수 있다. 일 노드에는 최소 하나의 안테나가 설치된다. 상기 안테나는 물리 안테나를 의미할 수도 있으며, 안테나 포트, 가상 안테나, 또는 안테나 그룹을 의미할 수도 있다. 노드는 포인트(point)라고 불리기도 한다.
본 명세에서 셀(cell)이라 함은 하나 이상(one or more)의 노드가 통신 서비스를 제공하는 일정 지리적 영역을 말한다. 따라서, 본 명세에서 특정 셀과 통신한다고 함은 상기 특정 셀에 통신 서비스를 제공하는 BS 혹은 노드와 통신하는 것을 의미할 수 있다. 또한, 특정 셀의 하향링크/상향링크 신호는 상기 특정 셀에 통신 서비스를 제공하는 BS 혹은 노드로부터의/로의 하향링크/상향링크 신호를 의미한다. UE에게 상/하향링크 통신 서비스를 제공하는 셀을 특히 서빙 셀(serving cell)이라고 한다. 또한, 특정 셀의 채널 상태/품질은 상기 특정 셀에 통신 서비스를 제공하는 BS 혹은 노드와 UE 사이에 형성된 채널 혹은 통신 링크의 채널 상태/품질을 의미한다. 3GPP 기반 통신 시스템에서, UE는 특정 노드로부터의 하향링크 채널 상태를 상기 특정 노드의 안테나 포트(들)이 상기 특정 노드에 할당된 CRS (Cell-specific Reference Signal) 자원 상에서 전송되는 CRS(들) 및/또는 CSI-RS(Channel State Information Reference Signal) 자원 상에서 전송하는 CSI-RS(들)을 이용하여 측정할 수 있다.
한편, 3GPP 기반 통신 시스템은 무선 자원을 관리하기 위해 셀(cell)의 개념을 사용하고 있는데, 무선 자원과 연관된 셀(cell)은 지리적 영역의 셀(cell)과 구분된다.
지리적 영역의 "셀"은 노드가 반송파를 이용하여 서비스를 제공할 수 있는 커버리지(coverage)라고 이해될 수 있으며, 무선 자원의 "셀"은 상기 반송파에 의해 설정(configure)되는 주파수 범위인 대역폭(bandwidth, BW)와 연관된다. 노드가 유효한 신호를 전송할 수 있는 범위인 하향링크 커버리지와 UE로부터 유효한 신호를 수신할 수 있는 범위인 상향링크 커버리지는 해당 신호를 운반(carry)하는 반송파에 의해 의존하므로 노드의 커버리지는 상기 노드가 사용하는 무선 자원의 "셀"의 커버리지와 연관되기도 한다. 따라서 "셀"이라는 용어는 때로는 노드에 의한 서비스의 커버리지를, 때로는 무선 자원을, 때로는 상기 무선 자원을 이용한 신호가 유효한 세기로 도달할 수 있는 범위를 의미하는 데 사용될 수 있다.
한편, 3GPP 통신 표준은 무선 자원을 관리하기 위해 셀(cell)의 개념을 사용한다. 무선 자원과 연관된 "셀"이라 함은 하향링크 자원들(DL resources)와 상향링크 자원들(UL resources)의 조합, 즉, DL 컴포턴트 반송파(component carrier, CC) 와 UL CC의 조합으로 정의된다. 셀은 DL 자원 단독, 또는 DL 자원과 UL 자원의 조합으로 설정될(configured) 수 있다. 반송파 집성이 지원되는 경우, DL 자원(또는, DL CC)의 반송파 주파수(carrier frequency)와 UL 자원(또는, UL CC)의 반송파 주파수(carrier frequency) 사이의 링키지(linkage)는 시스템 정보에 의해 지시될 수 있다. 예를 들어, 시스템 정보 블록 타입 2(System Information Block Type2, SIB2) 링키지(linkage)에 의해서 DL 자원과 UL 자원의 조합이 지시될 수 있다. 여기서, 반송파 주파수는 각 셀 혹은 CC의 중심 주파수(center frequency)와 같거나 다를 수 있다. 반송파 집성(carrier aggregation, CA)가 설정될 때 UE는 네트워크와 하나의 무선 자원 제어(radio resource control, RRC) 연결만을 갖는다. 하나의 서빙 셀이 RRC 연결 수립(establishment)/재수립(re-establishment)/핸드오버 시에 비-접속 층(non-access stratum, NAS) 이동성(mobility) 정보를 제공하며, 하나의 서빙 셀이 RRC 연결 재수립/핸드오버 시에 보안(security) 입력을 제공한다. 이러한 셀을 1차 셀(primary cell, Pcell)이라 한다. Pcell은 UE가 초기 연결 수립 절차를 수행하거나 연결 재-수립 절차를 개시(initiate)하는 1차 주파수(primary frequency) 상에서 동작하는 셀이며. UE 능력(capability)에 따라, 2차 셀(secondary cell, Scell)들이 설정되어 Pcell과 함께 서빙 셀들의 세트를 형성(form)할 수 있다. Scell은 RRC(Radio Resource Control) 연결 수립(connection establishment)이 이루어진 이후에 설정 가능하고, 특별 셀(special cell, SpCell)의 자원들 외에 추가적인 무선 자원을 제공하는 셀이다. 하향링크에서 Pcell에 대응하는 반송파는 하향링크 1차 CC(DL PCC)라고 하며, 상향링크에서 Pcell에 대응하는 반송파는 UL 1차 CC(DL PCC)라고 한다. 하향링크에서 Scell에 대응하는 반송파는 DL 2차 CC(DL SCC)라 하며, 상향링크에서 상기 Scell에 대응하는 반송파는 UL 2차 CC(UL SCC)라 한다.
이중 연결성(dual connectivity, DC) 동작의 경우, SpCell이라는 용어는 마스터 셀 그룹(master cell group, MCG)의 Pcell 또는 2차 셀 그룹(secondary cell group, SCG)의 Pcell을 칭한다. SpCell은 PUCCH 전송 및 경쟁-기반 임의 접속을 지원하고, 항상 활성화(activate)된다. MCG는 마스터 노드(예, BS)와 연관된 서빙 셀들의 그룹이며 SpCell (Pcell) 및 선택적으로(optionally) 하나 이상의 Scell들로 이루어진다. DC로 설정된 UE의 경우, SCG는 2차 노드와 연관된 서빙 셀들의 서브셋이며, PSCell 및 0개 이상의 Scell들로 이루어진다. PSCell은 SCG의 1차 Scell이다. CA 또는 DC로 설정되지 않은, RRC_CONNECTED 상태의 UE의 경우, Pcell로만 이루어진 하나의 서빙 셀만 존재한다. CA 또는 DC로 설정된 RRC_CONNECTED 상태의 UE의 경우, 서빙 셀들이라는 용어는 SpCell(들) 및 모든 Scell(들)로 이루어진 셀들의 세트를 지칭한다. DC에서는, MCG를 위한 매체 접속 제어(medium access control, MAC) 엔티티 하나와 SCG를 위한 MAC 엔티티 하나의 2개 MAC 엔티티들이 UE에 설정된다.
CA가 설정되고 DC는 설정되지 않은 UE에는 Pcell 및 0개 이상의 Scell로 이루어진 Pcell PUCCH 그룹과 Scell(들)로만 이루어진 Scell PUCCH 그룹이 설정된 수 있다. Scell의 경우, 해당 셀과 연관된 PUCCH가 전송되는 Scell(이하 PUCCH cell)이 설정될 수 있다. PUCCH Scell이 지시된 Scell은 Scell PUCCH 그룹에 속하며 상기 PUCCH Scell 상에서 관련 UCI의 PUCCH 전송이 수행되며, PUCCH Scell이 지시되지 않거나 PUCCH 전송용 셀로서 지시된 셀이 Pcell인 Scell은 Pcell PUCCH 그룹에 속하며 상기 Pcell 상에서 관련 UCI의 PUCCH 전송이 수행된다.
무선 통신 시스템에서 UE는 BS로부터 하향링크(downlink, DL)를 통해 정보를 수신하고, UE는 BS로 상향링크(uplink, UL)를 통해 정보를 전송한다. BS와 UE가 전송 및/또는 수신하는 정보는 데이터 및 다양한 제어 정보를 포함하고, 이들이 전송 및/또는 수신하는 정보의 종류/용도에 따라 다양한 물리 채널이 존재한다.
3GPP 기반 통신 표준은 상위 계층으로부터 기원한 정보를 운반하는 자원 요소들에 대응하는 하향링크 물리 채널들과, 물리 계층에 의해 사용되나 상위 계층으로부터 기원하는 정보를 운반하지 않는 자원 요소들에 대응하는 하향링크 물리 신호들을 정의된다. 예를 들어, 물리 하향링크 공유 채널(physical downlink shared channel, PDSCH), 물리 브로드캐스트 채널(physical broadcast channel, PBCH), 물리 하향링크 제어 채널(physical downlink control channel, PDCCH) 등이 하향링크 물리 채널들로서 정의되어 있으며, 참조 신호와 동기 신호(synchronization signal)가 하향링크 물리 신호들로서 정의되어 있다. 파일럿(pilot)이라고도 지칭되는 참조 신호(reference signal, RS)는 BS와 UE가 서로 알고 있는 기정의된 특별한 파형의 신호를 의미한다. 예를 들어, 복조 참조 신호(demodulation reference signal, DMRS), 채널 상태 정보 RS(channel state information RS, CSI-RS) 등이 하향링크 참조 신호로서 정의된다. 3GPP 기반 통신 표준은 상위 계층으로부터 기원한 정보를 운반하는 자원 요소들에 대응하는 상향링크 물리 채널들과, 물리 계층에 의해 사용되나 상위 계층으로부터 기원하는 정보를 운반하지 않는 자원 요소들에 대응하는 상향링크 물리 신호들을 정의하고 있다. 예를 들어, 물리 상향링크 공유 채널(physical uplink shared channel, PUSCH), 물리 상향링크 제어 채널(physical uplink control channel, PUCCH), 물리 임의 접속 채널(physical random access channel, PRACH)가 상향링크 물리 채널로서 정의되며, 상향링크 제어/데이터 신호를 위한 복조 참조 신호(demodulation reference signal, DMRS), 상향링크 채널 측정에 사용되는 사운딩 참조 신호(sounding reference signal, SRS) 등이 정의된다.
본 명세에서 PDCCH(Physical Downlink Control CHannel)는 DCI(Downlink Control Information)를 운반하는 시간-주파수 자원들(예, 자원요소(resource element, RE)들)의 세트를 의미하고, PDSCH(Physical Downlink Shared CHannel)는 하향링크 데이터를 운반하는 시간-주파수 자원들의 세트를 의미한다. 또한, PUCCH(Physical Uplink Control CHannel), PUSCH(Physical Uplink Shared CHannel), PRACH(Physical Random Access CHannel)는 각각(respectively) UCI(Uplink Control Information), 상향링크 데이터, 임의 접속 신호를 운반하는 시간-주파수 자원들의 세트를 의미한다. 이하에서 사용자기기가 PUCCH/PUSCH/PRACH를 전송/수신한다는 표현은, 각각, PUCCH/PUSCH/PUCCH/PRACH 상에서 혹은 통해서 상향링크 제어정보/상향링크 데이터/임의 접속 신호를 전송/수신한다는 것과 동등한 의미로 사용된다. 또한, BS가 PBCH/PDCCH/PDSCH를 전송/수신한다는 표현은, 각각, PBCH/PDCCH/PDSCH 상에서 혹은 통해서 브로드캐스트 정보/하향링크 제어정보/하향링크 데이터를 전송한다는 것과 동일한 의미로 사용된다.
본 명세에서 PUCCH/PUSCH/PDSCH의 전송 또는 수신을 위해 BS에 의해 UE에게 스케줄링 혹은 설정된 무선 자원(예, 시간-주파수 자원)은 PUCCH/PUSCH/PDSCH 자원으로 칭해지기도 한다.
통신 장치는 SSB, DMRS, CSI-RS, PBCH, PDCCH, PDSCH, PUSCH, 및/또는 PUCCH를 셀 상에서 무선 신호들의 형태로 수신하므로, 특정 물리 채널 혹은 특정 물리 신호만을 포함하는 무선 신호들만 선별해서 RF 수신기를 통해 수신하거나 특정 물리 채널 혹은 물리 신호만을 배제한 무선 신호들만 선별해서 RF 수신기를 통해 수신하지는 못한다. 실제 동작에서, 통신 장치는 RF 수신기를 통해 셀 상에서 일단 무선 신호들을 수신하며 RF 대역 신호들인 상기 무선 신호들을 기저대역(baseband) 신호들로 변환(convert)하고, 하나 이상의 프로세서를 이용하여 상기 기저대역 신호들 내 물리 신호 및/또는 물리 채널을 디코딩한다. 따라서, 본 명세의 몇몇 구현들에서, 물리 신호 및/또는 물리 채널을 수신하는 것은 실제로는 통신 장치가 아예 해당 물리 신호 및/또는 물리 채널을 포함하는 무선 신호들을 수신하지 않는다는 것이 아니라 상기 무선 신호들로부터 상기 물리 신호 및/또는 물리 채널의 복원을 시도하지 않는 것, 예를 들어, 상기 물리 신호 및/또는 상기 물리 채널의 디코딩을 시도하지 않는 것을 의미할 수 있다.
더욱 많은 통신 기기들이 더욱 큰 통신 용량을 요구하게 됨에 따라 기존의 무선 접속 기술(radio access technology, RAT)에 비해 향상된 모바일 브로드밴드 통신에 대한 필요성이 대두되고 있다. 또한 다수의 기기 및 사물들을 연결하여 언제 어디서나 다양한 서비스를 제공하는 매시브(massive) MTC 역시 차세대 통신에서 고려될 주요 이슈 중 하나이다. 아울러 신뢰도(reliability) 및 레이턴시(latency)에 민감한 서비스/UE를 고려한 통신 시스템 디자인이 논의되고 있다. 이와 같이 진보된 모바일 브로드밴드 통신, 매시브 MTC, URLLC(Ultra-Reliable and Low Latency Communication) 등을 고려한 차세대 RAT의 도입이 논의되고 있다. 현재 3GPP에서는 EPC 이후의 차세대 이동 통신 시스템에 대한 스터디를 진행 중에 있다. 본 명세에서는 편의상 해당 기술을 새 RAT (new RAT, NR) 혹은 5G RAT라고 칭하며, NR을 사용 혹은 지원하는 시스템을 NR 시스템이라 칭한다.
도 1은 본 명세의 구현들이 적용되는 통신 시스템 1의 예를 도시한 것이다. 도 1을 참조하면, 본 명세에 적용되는 통신 시스템(1)은 무선 기기, BS 및 네트워크를 포함한다. 여기서, 무선 기기는 무선 접속 기술(예, 5G NR(New RAT), LTE(예, E-UTRA))을 이용하여 통신을 수행하는 기기를 의미하며, 통신/무선/5G 기기로 지칭될 수 있다. 이로 제한되는 것은 아니지만, 무선 기기는 로봇(100a), 차량(100b-1, 100b-2), XR(eXtended Reality) 기기(100c), 휴대 기기(Hand-held device)(100d), 가전(100e), IoT(Internet of Thing) 기기(100f), AI기기/서버(400)를 포함할 수 있다. 예를 들어, 차량은 무선 통신 기능이 구비된 차량, 자율 주행 차량, 차량간 통신을 수행할 수 있는 차량 등을 포함할 수 있다. 여기서, 차량은 UAV(Unmanned Aerial Vehicle)(예, 드론)를 포함할 수 있다. XR 기기는 AR(Augmented Reality)/VR(Virtual Reality)/MR(Mixed Reality) 기기를 포함하며, HMD(Head-Mounted Device), 차량에 구비된 HUD(Head-Up Display), 텔레비전, 스마트폰, 컴퓨터, 웨어러블 디바이스, 가전 기기, 디지털 사이니지(signage), 차량, 로봇 등의 형태로 구현될 수 있다. 휴대 기기는 스마트폰, 스마트패드, 웨어러블 기기(예, 스마트워치, 스마트글래스), 컴퓨터(예, 노트북 등) 등을 포함할 수 있다. 가전은 TV, 냉장고, 세탁기 등을 포함할 수 있다. IoT 기기는 센서, 스마트미터 등을 포함할 수 있다. 예를 들어, BS, 네트워크는 무선 기기로도 구현될 수 있으며, 특정 무선 기기는 다른 무선 기기에게 BS/네트워크 노드로 동작할 수도 있다.
무선 기기(100a~100f)는 BS(200)을 통해 네트워크(300)와 연결될 수 있다. 무선 기기(100a~100f)에는 AI(Artificial Intelligence) 기술이 적용될 수 있으며, 무선 기기(100a~100f)는 네트워크(300)를 통해 AI 서버(400)와 연결될 수 있다. 네트워크(300)는 3G 네트워크, 4G(예, LTE) 네트워크 또는 5G(예, NR) 네트워크 등을 이용하여 구성될 수 있다. 무선 기기(100a~100f)는 BS(200)/네트워크(300)를 통해 서로 통신할 수도 있지만, BS/네트워크를 통하지 않고 직접 통신(e.g. 사이드링크 통신(sidelink communication))할 수도 있다. 예를 들어, 차량들(100b-1, 100b-2)은 직접 통신(e.g. V2V(Vehicle to Vehicle)/V2X(Vehicle to everything) communication)을 할 수 있다. 또한, IoT 기기(예, 센서)는 다른 IoT 기기(예, 센서) 또는 다른 무선 기기(100a~100f)와 직접 통신을 할 수 있다.
무선 기기(100a~100f)/BS(200)-BS(200)/무선 기기(100a~100f) 간에는 무선 통신/연결(150a, 150b)이 이뤄질 수 있다. 여기서, 무선 통신/연결은 상향/하향링크 통신(150a)과 사이드링크 통신(150b)(또는, D2D 통신)은 다양한 무선 접속 기술(예, 5G NR)을 통해 이뤄질 수 있다. 무선 통신/연결(150a, 150b)을 통해 무선 기기와 BS/무선 기기는 서로 무선 신호를 전송/수신할 수 있다. 이를 위해, 본 명세의 다양한 제안들에 기반하여, 무선 신호의 전송/수신을 위한 다양한 설정 정보 설정 과정, 다양한 신호 처리 과정(예, 채널 인코딩/디코딩, 변조(modulation)/복조(demodulation), 자원 매핑/디매핑 등), 자원 할당 과정 등 중 적어도 일부가 수행될 수 있다.
도 2는 본 명세에 따른 방법을 수행할 수 있는 통신 기기들의 예들을 도시한 블록도이다. 도 2를 참조하면, 제1 무선 기기(100)와 제2 무선 기기(200)는 다양한 무선 접속 기술(예, LTE, NR)을 통해 무선 신호를 전송 및/또는 수신할 수 있다. 여기서, {제1 무선 기기(100), 제2 무선 기기(200)}은 도 1의 {무선 기기(100x), BS(200)} 및/또는 {무선 기기(100x), 무선 기기(100x)}에 대응할 수 있다.
제1 무선 기기(100)는 하나 이상의 프로세서(102) 및 하나 이상의 메모리(104)를 포함하며, 추가적으로 하나 이상의 송수신기(106) 및/또는 하나 이상의 안테나(108)을 더 포함할 수 있다. 프로세서(102)는 메모리(104) 및/또는 송수신기(106)를 제어하며, 아래에서 설명/제안되는 기능, 절차 및/또는 방법들을 구현하도록 구성될 수 있다. 예를 들어, 프로세서(102)는 메모리(104) 내의 정보를 처리하여 제1 정보/신호를 생성한 뒤, 송수신기(106)을 통해 제1 정보/신호를 포함하는 무선 신호를 전송할 수 있다. 또한, 프로세서(102)는 송수신기(106)를 통해 제2 정보/신호를 포함하는 무선 신호를 수신한 뒤, 제2 정보/신호의 신호 처리로부터 얻은 정보를 메모리(104)에 저장할 수 있다. 메모리(104)는 프로세서(102)와 연결될 수 있고, 프로세서(102)의 동작과 관련한 다양한 정보를 저장할 수 있다. 예를 들어, 메모리(104)는 프로세서(102)에 의해 제어되는 프로세스들 중 일부 또는 전부를 수행하거나, 아래에서 설명/제안한 절차 및/또는 방법들을 수행하기 위한 명령들을 포함하는 소프트웨어 코드를 저장할 수 있다. 여기서, 프로세서(102)와 메모리(104)는 무선 통신 기술(예, LTE, NR)을 구현하도록 설계된 통신 모뎀/회로/칩의 일부일 수 있다. 송수신기(106)는 프로세서(102)와 연결될 수 있고, 하나 이상의 안테나(108)를 통해 무선 신호를 전송 및/또는 수신할 수 있다. 송수신기(106)는 전송기 및/또는 수신기를 포함할 수 있다. 송수신기(106)는 RF(Radio Frequency) 유닛과 혼용될 수 있다. 본 명세에서 무선 기기는 통신 모뎀/회로/칩을 의미할 수도 있다.
제2 무선 기기(200)는 하나 이상의 프로세서(202), 하나 이상의 메모리(204)를 포함하며, 추가적으로 하나 이상의 송수신기(206) 및/또는 하나 이상의 안테나(208)를 더 포함할 수 있다. 프로세서(202)는 메모리(204) 및/또는 송수신기(206)를 제어하며, 아래에서 설명/제안한 기능, 절차 및/또는 방법들을 구현하도록 구성될 수 있다. 예를 들어, 프로세서(202)는 메모리(204) 내의 정보를 처리하여 제3 정보/신호를 생성한 뒤, 송수신기(206)를 통해 제3 정보/신호를 포함하는 무선 신호를 전송할 수 있다. 또한, 프로세서(202)는 송수신기(206)를 통해 제4 정보/신호를 포함하는 무선 신호를 수신한 뒤, 제4 정보/신호의 신호 처리로부터 얻은 정보를 메모리(204)에 저장할 수 있다. 메모리(204)는 프로세서(202)와 연결될 수 있고, 프로세서(202)의 동작과 관련한 다양한 정보를 저장할 수 있다. 예를 들어, 메모리(204)는 프로세서(202)에 의해 제어되는 프로세스들 중 일부 또는 전부를 수행하거나, 아래에서 설명/제안한 절차 및/또는 방법들을 수행하기 위한 명령들을 포함하는 소프트웨어 코드를 저장할 수 있다. 여기서, 프로세서(202)와 메모리(204)는 무선 통신 기술(예, LTE, NR)을 구현하도록 설계된 통신 모뎀/회로/칩의 일부일 수 있다. 송수신기(206)는 프로세서(202)와 연결될 수 있고, 하나 이상의 안테나(208)를 통해 무선 신호를 전송 및/또는 수신할 수 있다. 송수신기(206)는 전송기 및/또는 수신기를 포함할 수 있다. 송수신기(206)는 RF 유닛과 혼용될 수 있다. 본 명세에서 무선 기기는 통신 모뎀/회로/칩을 의미할 수도 있다.
본 명세의 무선 기기(100, 200)에서 구현되는 무선 통신 기술은 LTE, NR 및 6G뿐만 아니라 저전력 통신을 위한 Narrowband Internet of Things를 포함할 수 있다. 이때, 예를 들어 NB-IoT 기술은 LPWAN(Low Power Wide Area Network) 기술의 일례일 수 있고, LTE Cat NB1 및/또는 LTE Cat NB2 등의 규격으로 구현될 수 있으며, 상술한 명칭에 한정되는 것은 아니다. 추가적으로 또는 대체적으로, 본 명세의 무선 기기(XXX, YYY)에서 구현되는 무선 통신 기술은 LTE-M 기술을 기반으로 통신을 수행할 수 있다. 이때, 일 예로, LTE-M 기술은 LPWAN 기술의 일례일 수 있고, eMTC(enhanced Machine Type Communication) 등의 다양한 명칭으로 불릴 수 있다. 예를 들어, LTE-M 기술은 1) LTE CAT 0, 2) LTE Cat M1, 3) LTE Cat M2, 4) LTE non-BL(non-Bandwidth Limited), 5) LTE-MTC, 6) LTE Machine Type Communication, 및/또는 7) LTE M 등의 다양한 규격 중 적어도 어느 하나로 구현될 수 있으며 상술한 명칭에 한정되는 것은 아니다. 추가적으로 또는 대체적으로, 본 명세의 무선 기기(XXX, YYY)에서 구현되는 무선 통신 기술은 저전력 통신을 고려한 지그비(ZigBee), 블루투스(Bluetooth) 및 저전력 광역 통신망(Low Power Wide Area Network, LPWAN) 중 적어도 어느 하나를 포함할 수 있으며, 상술한 명칭에 한정되는 것은 아니다. 일 예로 ZigBee 기술은 IEEE 802.15.4 등의 다양한 규격을 기반으로 소형/저-전력 디지털 통신에 관련된 PAN(personal area networks)을 생성할 수 있으며, 다양한 명칭으로 불릴 수 있다.
이하, 무선 기기(100, 200)의 하드웨어 요소에 대해 보다 구체적으로 설명한다. 이로 제한되는 것은 아니지만, 하나 이상의 프로토콜 계층이 하나 이상의 프로세서(102, 202)에 의해 구현될 수 있다. 예를 들어, 하나 이상의 프로세서(102, 202)는 하나 이상의 계층(예, 물리(physical, PHY) 계층, 매체 접속 제어(medium access control, MAC) 계층, 무선 링크 제어(radio link control, RLC) 계층, 패킷 데이터 수렵 프로토콜(packet data convergence protocol, PDCP) 계층, 무선 자원 제어(radio resource control, RRC) 계층, 서비스 데이터 적응 프로토콜(service data adaption protocol, SDAP)와 같은 기능적 계층)을 구현할 수 있다. 하나 이상의 프로세서(102, 202)는 본 문서에 개시된 기능, 절차, 제안 및/또는 방법에 따라 하나 이상의 프로토콜 데이터 유닛(protocol data unit, PDU) 및/또는 하나 이상의 서비스 데이터 유닛(service data unit, SDU)를 생성할 수 있다. 하나 이상의 프로세서(102, 202)는 본 문서에 개시된 기능, 절차, 제안 및/또는 방법에 따라 메시지, 제어정보, 데이터 또는 정보를 생성할 수 있다. 하나 이상의 프로세서(102, 202)는 본 문서에 개시된 기능, 절차, 제안 및/또는 방법에 따라 PDU, SDU, 메시지, 제어정보, 데이터 또는 정보를 포함하는 신호(예, 기저대역(baseband) 신호)를 생성하여, 하나 이상의 송수신기(106, 206)에게 제공할 수 있다. 하나 이상의 프로세서(102, 202)는 하나 이상의 송수신기(106, 206)로부터 신호(예, 기저대역 신호)를 수신할 수 있고, 본 문서에 개시된 기능, 절차, 제안 및/또는 방법에 따라 PDU, SDU, 메시지, 제어정보, 데이터 또는 정보를 획득할 수 있다.
하나 이상의 프로세서(102, 202)는 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 또는 마이크로 컴퓨터로 지칭될 수 있다. 하나 이상의 프로세서(102, 202)는 하드웨어, 펌웨어, 소프트웨어, 또는 이들의 조합에 의해 구현될 수 있다. 일 예로, 하나 이상의 ASIC(Application Specific Integrated Circuit), 하나 이상의 DSP(Digital Signal Processor), 하나 이상의 DSPD(Digital Signal Processing Device), 하나 이상의 PLD(Programmable Logic Device) 또는 하나 이상의 FPGA(Field Programmable Gate Arrays)가 하나 이상의 프로세서(102, 202)에 포함될 수 있다. 본 문서에 개시된 기능, 절차, 제안 및/또는 방법들은 펌웨어 또는 소프트웨어를 사용하여 구현될 수 있고, 펌웨어 또는 소프트웨어는 모듈, 절차, 기능 등을 포함하도록 구현될 수 있다. 본 문서에 개시된 기능, 절차, 제안 및/또는 방법을 수행하도록 설정된 펌웨어 또는 소프트웨어는 하나 이상의 프로세서(102, 202)에 포함되거나, 하나 이상의 메모리(104, 204)에 저장되어 하나 이상의 프로세서(102, 202)에 의해 구동될 수 있다. 본 문서에 개시된 기능, 절차, 제안 및 또는 방법들은 코드, 명령어 및/또는 명령어의 세트 형태로 펌웨어 또는 소프트웨어를 사용하여 구현될 수 있다.
하나 이상의 메모리(104, 204)는 하나 이상의 프로세서(102, 202)와 연결될 수 있고, 다양한 형태의 데이터, 신호, 메시지, 정보, 프로그램, 코드, 지시 및/또는 명령을 저장할 수 있다. 하나 이상의 메모리(104, 204)는 ROM, RAM, EPROM, 플래시 메모리, 하드 드라이브, 레지스터, 캐쉬 메모리, 컴퓨터 판독 저장 매체 및/또는 이들의 조합으로 구성될 수 있다. 하나 이상의 메모리(104, 204)는 하나 이상의 프로세서(102, 202)의 내부 및/또는 외부에 위치할 수 있다. 또한, 하나 이상의 메모리(104, 204)는 유선 또는 무선 연결과 같은 다양한 기술을 통해 하나 이상의 프로세서(102, 202)와 연결될 수 있다.
하나 이상의 송수신기(106, 206)는 하나 이상의 다른 장치에게 본 문서의 방법들 및/또는 동작 순서도 등에서 언급되는 사용자 데이터, 제어 정보, 무선 신호/채널 등을 전송할 수 있다. 하나 이상의 송수신기(106, 206)는 하나 이상의 다른 장치로부터 본 문서에 개시된 기능, 절차, 제안, 방법 및/또는 동작 순서도 등에서 언급되는 사용자 데이터, 제어 정보, 무선 신호/채널 등을 수신할 수 있다. 예를 들어, 하나 이상의 송수신기(106, 206)는 하나 이상의 프로세서(102, 202)와 연결될 수 있고, 무선 신호를 전송 및/또는 수신할 수 있다. 예를 들어, 하나 이상의 프로세서(102, 202)는 하나 이상의 송수신기(106, 206)가 하나 이상의 다른 장치에게 사용자 데이터, 제어 정보 또는 무선 신호를 전송하도록 제어할 수 있다. 또한, 하나 이상의 프로세서(102, 202)는 하나 이상의 송수신기(106, 206)가 하나 이상의 다른 장치로부터 사용자 데이터, 제어 정보 또는 무선 신호를 수신하도록 제어할 수 있다. 또한, 하나 이상의 송수신기(106, 206)는 하나 이상의 안테나(108, 208)와 연결될 수 있고, 하나 이상의 송수신기(106, 206)는 하나 이상의 안테나(108, 208)를 통해 본 문서에 개시된 기능, 절차, 제안, 방법 및/또는 동작 순서도 등에서 언급되는 사용자 데이터, 제어 정보, 무선 신호/채널 등을 전송 및/또는 수신하도록 설정될 수 있다. 본 문서에서, 하나 이상의 안테나는 복수의 물리 안테나이거나, 복수의 논리 안테나(예, 안테나 포트)일 수 있다. 하나 이상의 송수신기(106, 206)는 수신된 사용자 데이터, 제어 정보, 무선 신호/채널 등을 하나 이상의 프로세서(102, 202)를 이용하여 처리하기 위해, 수신된 무선 신호/채널 등을 RF 대역 신호에서 기저대역(baseband) 신호로 변환(convert)할 수 있다. 하나 이상의 송수신기(106, 206)는 하나 이상의 프로세서(102, 202)를 이용하여 처리된 사용자 데이터, 제어 정보, 무선 신호/채널 등을 기저대역 신호에서 RF 대역 신호로 변환할 수 있다. 이를 위하여, 하나 이상의 송수신기(106, 206)는 (아날로그) 오실레이터 및/또는 필터를 포함할 수 있다.
도 3은 본 명세의 구현(들)을 수행할 수 있는 무선 기기의 다른 예를 도시한 것이다. 도 3을 참조하면, 무선 기기(100, 200)는 도 2의 무선 기기(100, 200)에 대응하며, 다양한 요소(element), 구성(component), 유닛/부(unit), 및/또는 모듈(module)로 구성될 수 있다. 예를 들어, 무선 기기(100, 200)는 통신부(110), 제어부(120), 메모리부(130) 및 추가 구성(additional component)(140)를 포함할 수 있다. 통신부는 통신 회로(112) 및 송수신기(들)(114)을 포함할 수 있다. 예를 들어, 통신 회로(112)는 도 2의 하나 이상의 프로세서(102, 202) 및/또는 하나 이상의 메모리(104, 204) 를 포함할 수 있다. 예를 들어, 송수신기(들)(114)는 도 2의 하나 이상의 송수신기(106, 206) 및/또는 하나 이상의 안테나(108, 208)을 포함할 수 있다. 제어부(120)는 통신부(110), 메모리부(130) 및 추가 구성(140)와 전기적으로 연결되며 무선 기기의 제반 동작을 제어한다. 예를 들어, 제어부(120)는 메모리부(130)에 저장된 프로그램/코드/명령/정보에 기반하여 무선 기기의 전기적/기계적 동작을 제어할 수 있다. 또한, 제어부(120)는 메모리부(130)에 저장된 정보를 통신부(110)을 통해 외부(예, 다른 통신 기기)로 무선/유선 인터페이스를 통해 전송하거나, 통신부(110)를 통해 외부(예, 다른 통신 기기)로부터 무선/유선 인터페이스를 통해 수신된 정보를 메모리부(130)에 저장할 수 있다.
추가 구성(140)는 무선 기기의 종류에 따라 다양하게 구성될 수 있다. 예를 들어, 추가 구성(140)는 전력 유닛/배터리, 입출력부(I/O unit), 구동부(driving unit) 및 컴퓨팅부(computing unit) 중 적어도 하나를 포함할 수 있다. 이로 제한되는 것은 아니지만, 무선 기기는 로봇(도 1, 100a), 차량(도 1, 100b-1, 100b-2), XR 기기(도 1, 100c), 휴대 기기(도 1, 100d), 가전(도 1, 100e), IoT 기기(도 1, 100f), 디지털 방송용 UE, 홀로그램 기기, 공공 안전 기기, MTC 기기, 의료 장치, 핀테크 기기(또는 금융 기기), 보안 기기, 기후/환경 기기, AI 서버/기기(도 1, 400), BS(도 1, 200), 네트워크 노드 등의 형태로 구현될 수 있다. 무선 기기는 사용-예/서비스에 따라 이동 가능하거나 고정된 장소에서 사용될 수 있다.
도 3에서 무선 기기(100, 200) 내의 다양한 요소(element), 구성(component), 유닛/부, 및/또는 모듈은 전체가 유선 인터페이스를 통해 상호 연결되거나, 적어도 일부가 통신부(110)를 통해 무선으로 연결될 수 있다. 예를 들어, 무선 기기(100, 200) 내에서 제어부(120)와 통신부(110)는 유선으로 연결되며, 제어부(120)와 제1 유닛(예, 130, 140)은 통신부(110)를 통해 무선으로 연결될 수 있다. 또한, 무선 기기(100, 200) 내의 각 요소, 구성, 유닛/부, 및/또는 모듈은 하나 이상의 요소를 더 포함할 수 있다. 예를 들어, 제어부(120)는 하나 이상의 프로세서 세트로 구성될 수 있다. 예를 들어, 제어부(120)는 통신 제어 프로세서, 어플리케이션 프로세서(Application processor), ECU(Electronic Control Unit), 그래픽 처리 프로세서, 메모리 제어 프로세서 등의 세트로 구성될 수 있다. 다른 예로, 메모리부(130)는 RAM(Random Access Memory), DRAM(Dynamic RAM), ROM(Read Only Memory), 플래시 메모리(flash memory), 휘발성 메모리(volatile memory), 비-휘발성 메모리(non-volatile memory) 및/또는 이들의 조합으로 구성될 수 있다.
본 명세에서, 적어도 하나의 메모리(예, 104 또는 204)는 지시들 또는 프로그램들을 저장할 수 있으며, 상기 지시들 또는 프로그램들은, 실행될 때, 상기 적어도 하나의 메모리에 작동가능하게(operably) 연결되는 적어도 하나의 프로세서로 하여금 본 명세의 몇몇 실시예들 또는 구현들에 따른 동작들을 수행하도록 할 수 있다.
본 명세에서, 컴퓨터 판독가능한(readable) (비휘발성) 저장(storage) 매체(medium)은 적어도 하나의 지시 또는 컴퓨터 프로그램을 저장할 수 있으며, 상기 적어도 하나의 지시 또는 컴퓨터 프로그램은 적어도 하나의 프로세서에 의해 실행될 때 상기 적어도 하나의 프로세서로 하여금 본 명세의 몇몇 실시예들 또는 구현들에 따른 동작들을 수행하도록 할 수 있다.
본 명세에서, 프로세싱 기기(device) 또는 장치(apparatus)는 적어도 하나의 프로세서와 상기 적어도 하나의 프로세서여 연결 가능한 적어도 하나의 컴퓨터 메모리를 포함할 수 있다. 상기 적어도 하나의 컴퓨터 메모리는 지시들 또는 프로그램들을 저장할 수 있으며, 상기 지시들 또는 프로그램들은, 실행될 때, 상기 적어도 하나의 메모리에 작동가능하게(operably) 연결되는 적어도 하나의 프로세서로 하여금 본 명세의 몇몇 실시예들 또는 구현들에 따른 동작들을 수행하도록 할 수 있다.
본 명세에서, 컴퓨터 프로그램은 적어도 하나의 컴퓨터 판독가능한 (비휘발성) 저장 매체에 저장되며, 실행될 때, 본 명세의 몇몇 구현들에 따른 동작들을 수행하는 혹은 적어도 하나의 프로세서로 하여금 본 명세의 몇몇 구현들에 따른 동작들을 수행하게 하는 프로그램 코드를 포함할 수 있다. 상기 컴퓨터 프로그램은 컴퓨터 프로그램 제품(product) 형태로 제공될 수 있다. 상기 컴퓨터 프로그램 제품은 적어도 하나의 컴퓨터 판독가능한 (비휘발성) 저장 매체를 포함할 수 있다.
본 명세의 통신 기기는 적어도 하나의 프로세서; 및 상기 적어도 하나의 프로세서에 동작 가능하게 연결 가능한, 그리고, 실행될 때, 상기 적어도 하나의 프로세서로 하여금 후술하는 본 명세의 예(들)에 따른 동작들을 수행하도록 하는 명령(instruction)들을 저장한, 적어도 하나의 컴퓨터 메모리를 포함한다.
도 4는 3GPP 기반 무선 통신 시스템에서 이용가능한 프레임 구조의 예를 도시한 것이다.
도 4의 프레임의 구조는 예시에 불과하고, 프레임에서 서브프레임의 수, 슬롯의 수, 심볼의 수는 다양하게 변경될 수 있다. NR 시스템에서는 하나의 UE에게 집성(aggregate)되는 복수의 셀들간에 OFDM 뉴머롤러지(numerology)(예, 부반송파 간격(subcarrier spacing, SCS)가 상이하게 설정될 수 있다. 이에 따라, 동일한 개수의 심볼로 구성된 시간 자원(예, 서브프레임, 슬롯 또는 전송 시간 간격(transmission time interval, TTI))의 (절대 시간) 기간(duration)은 집성된 셀들간에 상이하게 설정될 수 있다. 여기서, 심볼은 OFDM 심볼 (혹은, 순환 프리픽스 - 직교 주파수 분할 다중화(cyclic prefix - orthogonal frequency division multiplexing, CP-OFDM) 심볼), SC-FDMA 심볼 (혹은, 이산 푸리에 변환-확산-OFDM(discrete Fourier transform-spread-OFDM, DFT-s-OFDM) 심볼)을 포함할 수 있다. 본 명세에서 심볼, OFDM-기반 심볼, OFDM 심볼, CP-OFDM 심볼 및 DFT-s-OFDM 심볼은 서로 대체될 수 있다.
도 4를 참조하면, NR 시스템에서 상향링크 및 하향링크 전송들은 프레임들로 조직화(organize)된다. 각 프레임은 Tf = (△fmax*Nf/100)*Tc = 10 ms 기간(duration)을 가지며, 각각 5ms의 기간인 2개 하프-프레임(half-frame)들로 나뉜다. 여기서 NR용 기본 시간 단위(basic time unit)인 Tc = 1/(△fmax*Nf)이고, △fmax = 480*103 Hz이며, Nf=4096이다. 참고로, LTE용 기본 시간 단위인 Ts = 1/(△ref*Nf,ref)이고, △fref = 15*103 Hz이며, Nf,ref=2048이다. Tc와 Tf는 상수 κ = Tc/Tf = 64의 관계를 가진다. 각 하프-프레임은 5개의 서브프레임들로 구성되며, 단일 서브프레임(subframe, SF)의 기간 Tsf는 1ms이다. 서브프레임들은 슬롯들로 더 나뉘고, 서브프레임 내 슬롯의 개수는 부반송파 간격에 의존한다. 각 슬롯은 순환 프리픽스를 기초로 14개 혹은 12개 OFDM 심볼들로 구성된다. 정규(normal) 순환 프리픽스(cyclic prefix, CP)에는 각 슬롯은 14개 OFDM 심볼들로 구성되며, 확장(extended) CP의 경우에는 각 슬롯은 12개 OFDM 심볼들로 구성된다. 상기 뉴머롤러지(numerology)는 지수적으로(exponentially) 스케일가능한 부반송파 간격 △f = 2u*15 kHz에 의존한다. 다음 표는 정규 CP에 대한 부반송파 간격 △f = 2u*15 kHz에 따른 슬롯별 OFDM 심볼들의 개수(N
slot
symb), 프레임별 슬롯의 개수(N
frame,u
slot) 및 서브프레임별 슬롯의 개수(N
subframe,u
slot)를 나타낸 것이다.
다음 표는 확장 CP에 대한 부반송파 간격 △f = 2u*15 kHz에 따른 슬롯 당 OFDM 심볼들의 개수, 프레임당 슬롯의 개수 및 서브프레임당 슬롯의 개수를 나타낸 것이다.
부반송파 간격 설정 u에 대해, 슬롯들은 서브프레임 내에서 증가 순으로 nu
s ∈ {0, ..., nsubframe,u
slot - 1}로 그리고 프레임 내에서 증가 순으로 nu
s,f ∈ {0, ..., nframe,u
slot - 1}로 번호 매겨진다.
슬롯은 시간 도메인에서 복수(예, 14개 또는 12개)의 심볼들을 포함한다. 각 뉴머롤러지(예, 부반송파 간격) 및 반송파에 대해, 상위 계층 시그널링(예, 무선 자원 제어(radio resource control, RRC) 시그널링)에 의해 지시되는 공통 자원 블록(common resource block, CRB) N
start,u
grid에서 시작하는, N
size,u
grid,x*N
RB
sc개 부반송파들 및 N
subframe,u
symb개 OFDM 심볼들의 자원 격자(grid)가 정의된다. 여기서 N
size,u
grid,x은 자원 격자 내 자원 블록(resource block, RB)들의 개수이고, 밑첨자 x는 하향링크에 대해서는 DL이고 상향링크에 대해서는 UL이다. N
RB
sc는 RB당 부반송파의 개수이며, 3GPP 기반 무선 통신 시스템에서 N
RB
sc는 통상 12이다. 주어진 안테나 포트 p, 부반송파 간격 설정(configuration) u 및 전송 방향 (DL 또는 UL)에 대해 하나의 자원 격자가 있다. 부반송파 간격 설정 u에 대한 반송파 대역폭 N
size,u
grid는 네트워크로부터의 상위 계층 파라미터(예, RRC 파라미터)에 의해 UE에게 주어진다. 안테나 포트 p 및 부반송파 간격 설정 u에 대한 자원 격자 내 각각의 요소는 자원 요소(resource element, RE)로 칭해지며, 각 자원 요소에는 하나의 복소 심볼이 매핑될 수 있다. 자원 격자 내 각 자원 요소는 주파수 도메인 내 인덱스 k 및 시간 도메인에서 참조 포인트에 대해 상대적으로 심볼 위치를 표시하는 인덱스 l에 의해 고유하게 식별된다. NR 시스템에서 RB는 주파수 도메인에서 12개의 연속한(consecutive) 부반송파에 의해 정의된다. NR 시스템에서 RB들은 공통 자원 블록(CRB)들과 물리 자원 블록(physical resource block, PRB)들로 분류될 수 있다. CRB들은 부반송파 간격 설정 u에 대한 주파수 도메인에서 위쪽으로(upwards) 0부터 넘버링된다. 부반송파 간격 설정 u에 대한 CRB 0의 부반송파 0의 중심은 자원 블록 격자들을 위한 공통 참조 포인트인 '포인트 A'와 일치한다. 부반송파 간격 설정 u에 대한 PRB들은 대역폭 파트(bandwidth part, BWP) 내에서 정의되고, 0부터 N
size,u
BWP,i-1까지 넘버링되며, 여기서 i는 상기 대역폭 파트의 번호이다. 공통 자원 블록 nu
CRB와 대역폭 파트 i 내 물리 자원 블록 nPRB 간 관계는 다음과 같다: nu
PRB = nu
CRB + N
start,u
BWP,i, 여기서 N
start,u
BWP,i는 상기 대역폭 파트가 CRB 0에 대해 상대적으로 시작하는 공통 자원 블록이다. BWP는 주파수 도메인에서 복수의 연속한 RB를 포함한다. 예를 들어, BWP는 주어진 반송파 상의 BWP i 내 주어진 뉴머롤러지 ui에 대해 정의된 연속(contiguous) CRB들의 서브셋이다. 반송파는 최대 N개(예, 5개)의 BWP를 포함할 수 있다. UE는 주어진 컴포넌트 반송파 상에서 하나 이상의 BWP를 갖도록 설정될 수 있다. 데이터 통신은 활성화된 BWP를 통해서 수행되며, UE에게 설정된 BWP들 중 기결정된 개수(예, 1개)의 BWP만이 해당 반송파 상에서 활성화될 수 있다.
반송파 집성이 설정된 UE는 하나 이상의 셀들을 사용하도록 설정될 수 있다. UE가 다수의 서빙 셀들을 갖도록 설정된 경우, 상기 UE는 하나 또는 복수의 셀 그룹들을 갖도록 설정될 수 있다. UE는 상이한 BS들과 연관된 복수의 셀 그룹들을 갖도록 설정될 수도 있다. 혹은 UE는 단일 BS와 연관된 복수의 셀 그룹들을 갖도록 설정될 수 있다. UE의 각 셀 그룹은 하나 이상의 서빙 셀들로 구성되며, 각 셀 그룹은 PUCCH 자원들이 설정된 단일 PUCCH 셀을 포함한다. 상기 PUCCH 셀은 Pcell 혹은 해당 셀 그룹의 Scell들 중 PUCCH 셀로서 설정된 Scell일 수 있다. UE의 각 서빙 셀은 UE의 셀 그룹들 중 하나에 속하며, 다수의 셀 그룹에 속하지 않는다.
도 5는 수송 블록(transport block, TB)에 대한 전송단 측에서의 처리 과정을 예시한 것이다.
무선 신호가 무선 채널에서 겪는 오류를 수신단이 정정할 수 있도록 하기 위해서 전송단은 보내는 정보를 오류정정부호(forward error correction code)를 사용하여 부호화(coding)를 한 후 전송하게 된다. 수신단에서는 수신신호를 복조(demodulation)한 후 오류정정부호의 디코딩(decoding) 과정을 거친 후 전송 정보를 복원하게 된다. 이러한 디코딩 과정에서, 무선 채널에 의해서 생긴 수신신호상의 오류를 정정하게 된다.
데이터가 DL/UL 셀별로 매 TTI마다 최대 2개 수송 블록의 행태로 코딩 블록에 도달한다. 다음의 코딩 단계들이 DL/UL 셀의 각 수송 블록에 대해 적용될 수 있다:
- 수송 블록에 순환 리던던시 체크(cyclic redundancy check, CRC) 부가(add);
- 코드 블록 분할(segmentation) 및 코드 블록 CRC 부착(attachment);
- 채널 코딩;
- 레이트 매칭;
- 코드 블록 연접(concatenation).
실제 통신 시스템에서는 실제 구현의 편리함을 위하여 일정 크기 이상의 수송 블록의 경우 여러 개의 작은 데이터 블록으로 나누어 인코딩을 수행하게 된다. 나누어진 작은 데이터 블록을 코드 블록이라 부른다. 코드 블록은 일반적으로 같은 크기를 갖게 되지만, 채널 인코더의 내부 인터리버의 크기 제한 때문에 여러 개의 코드 블록들 중 하나의 코드 블록은 다른 크기를 가질 수도 있다. 정해진 인터리버 크기의 코드 블록 단위로 오류정정부호화 과정을 거친 후 무선 채널로 전송 시 발생하는 버스트(burst) 오류의 영향을 줄이기 위해 인터리빙이 수행된다. 그리고, 실제 무선 자원에 매핑되어 전송된다. 실제 전송시 사용되는 무선 자원의 양이 일정하기 때문에 이에 맞추기 위해서는 인코딩된 코드 블록에 대하여 레이트 매칭이 수행되어야 한다. 일반적으로 레이트 매칭은 펑처링이나 반복(repetition)으로 이루어진다. 예를 들어, 무선 자원의 양, 즉, 해당 무선 자원에 의해 전송될 수 있는 전송 비트 수가 M이고, 코딩된 비트 시퀀스, 즉, 인코더의 출력 비트 수가 N이라 하면, M과 N이 다를 경우, 상기 코딩된 비트 시퀀스의 길이를 조절하여 M과 맞추기 위한 레이트 매칭이 수행된다. M>N이면, 레이트 매칭된 시퀀스의 길이가 M과 같아지도록, 코딩된 비트 시퀀스의 비트들 중 전부 혹은 일부가 반복된다. M<N이면, 레이트 매칭된 시퀀스의 길이가 M과 같아지도록, 코딩된 비트 시퀀스의 비트들 중 일부가 펑처링되며, 펑처링된 비트는 전송에서 제외된다.
즉, 무선 통신 시스템에서는 전송단이 특정 코드 레이트를 지니는 채널 코딩을 사용하여 전송할 데이터를 인코딩한 후, 펑처링과 반복으로 이루어진 레이트 매칭 과정을 통해 전송할 데이터의 코드 레이트를 조절하게 된다.
오류정정부호는 다양한 종류가 있지만, 오류정정부호에 따라 최적의 성능을 발휘할 수 있는 정보 블록의 크기들이 정해져 있다. 큰 정보 블록 길이들에서 높은 용량 정보 성능을 갖는 많은 코딩 방식들이 이용가능하지만, 이들 중 대다수가 넓은 범위의 정보 블록 길이들 및 코드 레이트들에 걸쳐 좋은 성능을 일정하게 보여주지는 못한다. 그러나, 터보 코드, 저밀도 패리티 체크(low density parity check, LDPC) 코드 및 폴라 코드는 넓은 범위의 코딩 레이트들 및 코드 길이들에서 기대되는(promising) BLER 성능을 보여주고 있다. eMBB, 매시브 IoT 및 URLLC와 같은 다양한 경우들에 대한 요구가 증가함에 따라 터보 코드들보다 더 강한 채널 코딩 효율성을 제공하는 코딩 방식에 대한 요구가 있다. 또한, 채널이 현재 수용할 수 있는 가입자의 최대 수 면에서의 증가, 즉, 용량 면에서의 증가도 요구되고 있다. 다양한 오류정정부호들 중에서 폴라 코드는, 기존 채널 코드들의 문제점을 해결할 수 있는 새로운 프레임워크를 제공하는 코드로서, Bikent 대학의 Arikan에 의해 발명되었다(참고: E. Arikan, "Channel Polarization: A Method for Constructing Capacity-Achieving Codes for Symmetric Binary-Input Memoryless Channels," in IEEE Transactions on Information Theory, vol. 55, no. 7, pp. 3051-3073, July 2009). 폴라 코드는 낮은 인코딩 및 디코딩 복잡도를 갖는, 수학적으로 증명된, 첫 용량-수용(capacity-achieving) 코드이다. 폴라 코드는 아무런 오류 흐름이 존재하지 않으면서 큰 정보 블록 길이들에서 터보 코드의 성능을 능가한다. 이하, 폴라 코드를 이용한 채널 코딩을 폴라 코딩이라고 칭한다.
폴라 코드들은 주어진 이진 이산 무기억 채널(binary discrete memoryless channel)에서 채널 용량을 이룰(achieve) 수 코드로 알려져 있다. 이는 정보 블록 크기가 충분히 클 때만 이루어질 수 있다. 즉, 폴라 코드는 코드의 크기 N을 무한히 크게 하면 채널 용량을 이룰 수 있는 코드이다. 폴라 코드들은 인코딩 및 디코딩의 복잡도가 적으며 성공적으로 디코딩될 수 있다. 폴라 코드는 선형 블록 오류 정정 코드의 일종이며, 회귀적인(recursive) 다수의 연접(concatenation)이 폴라 코드를 위한 기본 빌딩 블록이며, 코드 구성(code construction)을 위한 기초이다. 물리 채널들을 가상 채널들로 변환하는 채널의 물리적 변환이 일어나며, 이러한 변환은 회귀적인 다수의 연접을 기반으로 한다. 다수의 채널들이 곱해지고 누적되면, 상기 채널들의 대부분은 좋아지거나 아니면 나빠지게 되며, 폴라 코드 배후에 있는 이 아이디어는 좋은 채널들을 사용하는 것이다. 예를 들어, 좋은 채널들을 통해 레이트 1로 데이터를 보내고, 나쁜 채널들을 통해 레이트 0으로 보내는 것이다. 즉, 채널 양극화를 통해 채널들은 일반(normal) 상태로부터 양극화(polarize)된 상태로 들어가게 된다.
도 6은 폴라 인코더를 위한 블록도의 예이다.
도 6(a)는 폴라 코드의 기본(base) 모듈을 나타낸 것으로, 특히 폴라 코딩을 위한 첫 번째 레벨 채널 컴바이닝을 예시한 도면이다. 도 6(a)에서 W
2는 이진 이산 무기억 채널(B-DMC), W, 2개를 컴바이닝하여 얻어진 전체 등가(equivalent) 채널을 의미한다. 여기서, u1, u2는 이진-입력 소스 비트들이며, y1, y2는 출력 코딩된 비트(output coded bit)들이다. 채널 컴바이닝(channel combining)은 B-DMC 채널을 병렬적으로(parallel) 연접하는 과정이다.
도 6(b)은 상기 기본 모듈에 대한 기본 행렬 F를 나타낸 것으로, 기본 행렬 F로의 이진-입력 소스 비트들 u1, u2과 해당 출력 x1, x2는 다음의 관계를 갖는다.
채널 W
2는 최고 레이트인 대칭 용량 I(W)를 이룰 수 있다. B-DMC W에서 대칭 용량은 중요한 파라미터로서, 상기 대칭 용량은 레이트의 측정을 위해 사용되며, 신뢰할 수 있는 통신이 상기 채널 W를 걸쳐 일어날 수 있는 최고 레이트이다. B-DMC는 다음과 같이 정의될 수 있다.
주어진 B-DMC W의 N개 독립(independent) 카피들로부터 N개 이진 입력 채널들의 두 번째 세트를 합성(synthesize) 혹은 생성(create)하는 것이 가능하며, 상기 채널들은 속성(property)들 {W
N
(i): 1 <= i <=N}을 갖는다. N이 커지면, 채널들의 일부는 1에 가까운 용량을 갖는 채널이 되고, 나머지는 0에 가까운 용량을 갖는 채널이 되는 경향이 있다. 이를 채널 양극화(polarization)라고 한다. 다시 말해 채널 양극화는 주어진 B-DMC W의 N개 독립 카피들을 사용하여 두 번째 세트의 N개 채널들 {W
N
(i): 1 <= i <= N}을 생성하는 프로세스이며, 채널 양극화 효과는 N이 커지면 모든 대칭 용량 항들(terms) {I(W
N
(i))}이 인덱스들 i의 사라지는(vanishing) 부분(fraction)을 제외하고 모두 0 또는 1이 되는 경향을 의미한다. 다시 말해, 폴라 코드들에서 채널 양극화 뒤에 있는 개념은 I(W)의 대칭적(symmetric) 용량을 갖는 채널(예, additive white Gaussian noise channel)의 N개 카피(copy)들(즉, N개 전송들)을 1 또는 0에 가까운(close) 용량의 극단적(extreme) 채널들로 변환(transform)하는 것이다. N개의 채널들 중에서 I(W) 부분(fraction)은 완벽한(perfect) 채널들이 될 것이고 1-I(W) 부분은 완전히 잡음 채널들이 될 것이다. 그리고 나서 정보 비트들은 좋은 채널들을 통해서만 보내지고, 다른 채널들로의 입력들은 1 또는 0으로 프로즌된다. 채널 양극화의 양은 블록 길이와 함께 증가한다. 채널 양극화는 2가지 국면(phase)로 구성된다: 채널 컴바이닝 국면 및 채널 스플리팅 국면.
도 7은 채널 양극화를 위한 채널 컴바이닝과 채널 스플리팅의 개념을 예시한 것이다. 도 7에 예시된 바와 같이 원본 채널 W의 N개 카피들을 적절히 컴바이닝하여 벡터 채널 W
vec을 만든 후 양극화된 새로운 채널들로 스플리팅하면, 충분히 큰 N의 경우, 상기 양극화된 새로운 채널들은 각각 채널 용량 C(W)=1과 C(W)=0으로 구분된다. 이 경우, 채널 용량 C(W))=1인 채널을 통과하는 비트는 오류 없이 전송 가능하므로 채널 용량 C(W)=1인 채널로는 정보 비트를 전송하고, 채널 용량 C(W)=0인 채널을 통과하는 비트는 정보 전송이 불가능하므로 의미 없는 비트인 프로즌 비트를 전송하는 것이 좋다.
도 7(a)를 참조하면, 주어진 B-DMC W의 카피들을 회귀적 방식으로 컴바이닝하여, W
N: XN→YN에 의해 주어지는 벡터 채널 W
vec이 출력될 수 있다. 여기서 N=2n이며 n은 0보다 크거나 같은 정수이다. 회귀(recursion)은 항상 0번째 레벨에서 시작하며, W
1 = W이다. n=1은 W
1의 2개 독립 카피들이 함께 컴바이닝하는 첫 번째 레벨의 회귀를 의미한다. 상기 2개 카피들을 컴바이닝하면 채널 W
2: X2→Y2이 얻어진다. 이 새로운 채널 W
2의 전이 확률(transitional probability)은 다음 식에 의해 표현될 수 있다.
상기 채널 W
2이 얻어지면, W
2의 2개 카피들을 컴바이닝하여 채널 W
4의 단일 카피가 얻어질 수 있다. 이러한 회귀는 다음 전이 확률을 갖는 W
4: X4→Y4에 의해 표현될 수 있다.
도 7(b)에서 G
N은 크기 N인 생성기 행렬이다. 도 7(b)의 G
N으로의 입력 u
N
1과 출력 x
N
1의 관계는 x
N
1 = u
N
1
G
N로 표현될 수 있다. 여기서 x
N
1 = {x1, ..., xN}, u
N
1 = {u1, ..., uN}이다. N개의 B-DMC들을 컴바이닝할 때, 각각의 B-DMC는 회귀적인 형태로 표현될 수 있다. 즉, GN은 다음 수학식으로 표현될 수 있다.
여기서 ⓧ는 Kronecker 곱(product)이며, N=2n, 모든 n>=1에 대해 F
ⓧn = FⓧF
ⓧ(n-1)이고, F
ⓧ0 = 1이다. B
N은 비트-리버설로서 알려진 퍼뮤테이션 행렬이며, B
N = R
N(I
2ⓧB
N/2)로서 회귀적으로(recursively) 산출(compute)될 수 있다. I
2는 2-차원(2-dimnsional) 단위(identity) 행렬이고, 이 회귀(recursion)는 B
2=I
2로 초기화된다. R
N은 비트-리버설 인터리버이며, 입력 s
N
1 = {s1, ..., sN}을 출력 x
N
1 = {s1, s3,..., sN-1, s2, ..., sN}로 매핑하는 데 사용된다. 예를 들어, G
2는 도 6(b)에 도시된 기본 행렬 F에 해당한다. G
4는 다음 행렬로 표현될 수 있다.
비트-리버설 인터리버는 전송단에 포함되지 않을 수도 있다. 비트-리버설 인터리버를 고려하지 않으면, G
N = (G
2)ⓧn(여기서, N=2n)으로 표현될 수 있다. (G
2)ⓧn은 행렬 G
2의 n차(n-th) Kronecker 거듭제곱(power)이며, 여기서 G
2는 도 6(b)에 도시된 기본 행렬 F와 같다.
수학식 5의 관계가 도 8에 도시된다.
도 8은 폴라 코드를 위한 N-번째 레벨 채널 컴바이닝을 예시한 것이다.
N개의 B-DMC W을 컴바이닝한 후 특정 입력에 대한 등가 채널(equivalent channel)을 정의하는 과정을 채널 스플리팅이라고 한다. 채널 스플리팅은 다음 수학식과 같은 채널 전이 확률(channel transition probability)로 표현될 수 있다.
채널 양극화는 다음과 같은 특성을 갖는다:
> Conservation: C(W-) + C(W+) = 2C(W),
> Extremization: C(W-) <= C(W) <= C(W+).
채널 컴바이닝과 채널 스플리팅을 거친 경우 다음과 같은 정리(theorem)를 얻을 수 있다.
* 정리(theorem): 임의(any) B-DMC W에 대해, 채널들 {W
N
(i)}은 다음과 같은 의미에서 양극화된다. 임의의 고정된 δ∈{0,1}에 대해, 2의 거듭제곱(power)을 통해 N이 무한대로 감에 따라, I(W
N
(i))∈(1-δ,1]인 인덱스들 i∈{1,...,N}의 부분(fraction)은 I(W)로 가며, I(W
N
(i))∈[0,δ)인 부분은 1-I(W)로 간다. 그러므로, N→∞면, 채널들은 완벽히 잡음이거나 아니면 잡음에 자유롭게 양극화되며, 이러한 채널들을 전송단에서 정확히 알 수 있다. 따라서, 나쁜 채널들을 고정하고 고딩되지 않은 비트들을 좋은 채널들 상에서 전송할 수 있다.
즉, 폴라 코드의 크기 N이 무한대가 되면, 채널은 특정 입력 비트(input bit)에 대해 잡음이 많거나 잡음이 없는 채널이 된다. 이는 특정 입력 비트에 대한 등가 채널의 용량이 0 또는 I(W)로 구분되는 것과 같은 의미이다.
폴라 인코더(polar encoder)의 입력(input)은 정보 데이터가 맵핑되는 비트 채널과 그렇지 않은 비트 채널로 구분된다. 앞서 설명한 바와 같이 폴라 코드의 이론에 따르면 폴라 코드의 코드워드가 무한대(infinity)로 갈수록 입력 비트 채널들이 잡음 없는 채널과 잡음 채널로 구분될 수 있다. 따라서, 잡음 없는 비트 채널에 정보를 할당하면, 채널 용량을 얻을 수 있다. 그러나, 실제로는 무한 길이의 코드워드를 구성할 수 없기 때문에 입력 비트 채널의 신뢰도를 계산하여 그 순서대로 데이터 비트를 할당한다. 본 발명에서 데이터 비트가 할당되는 비트 채널은 좋은 비트 채널이라고 칭한다. 좋은 비트 채널은 데이터 비트가 매핑되는 입력 비트 채널이라고 할 수 있다. 그리고, 데이터가 맵핑되지 않는 비트 채널을 프로즌 비트 채널이라 칭하고, 프로즌 비트 채널에는 알려진 값(예, 0)을 입력하여 인코딩이 수행된다. 전송단과 수신단에서 알고 있는 값이면 아무 값이나 프로즌 비트 채널에 매핑될 수 있다. 펑처링 또는 반복을 수행할 때, 좋은 비트 채널에 대한 정보가 활용될 수 있다. 예를 들어, 정보 비트에 할당되지 않는 입력 비트 위치에 해당되는 코드워드 비트(즉, 출력 비트) 위치가 펑처링될 수 있다.
폴라 코드의 디코딩 방식은 연속 소거(successive cancellation, SC) 디코딩 방식이다. SC 디코딩 방식은 채널 전이 확률을 구하여, 이를 입력 비트에 대한 라이클리후드 비율(likelihood ratio, LLR)을 계산하는 방식이다. 이때, 채널 전이 확률은 채널 컴바이닝과 채널 스플리팅 과정이 회귀적인(recursive) 형태로 이루어진 특성을 이용하면 회귀적인 형태로 계산될 수 있다. 따라서, 최종적으로 LLR 값도 회귀적인 형태로 계산할 수 있다. 우선 입력 비트 ui에 대한 채널 전이 확률 WN
(i)(y1
N,u1
i-1|u1)는 다음과 같이 얻어질 수 있다. u1
i는 홀수 인덱스(odd index), 짝수 인덱스(even index)로 분리되어, u1,o
i, u1,e
i와 같이 표현될 수 있다. 채널 전이 확률은 다음 수학식들과 같이 표현될 수 있다.
폴라 디코더는 정보를 검색(retrieve)하며, 상기 폴라 코드에 알려진 값들(예, 수신 비트들, 프로즌 비트들 등)을 가지고 uN
1의 추정치(estimate) u^N
1를 생성한다. LLR은 다음과 같이 정의된다.
LLR은 다음과 같이 회귀적으로 계산될 수 있다.
LLR들의 회귀적 계산은 LLR L(1)
1(yi) = W(yi|0)/W(yi|1)인 코드 길이 1로 역추적(trace back)된다. L(1)
1(yi)는 채널로부터 관찰된 소프트 정보이다.
폴라 인코더 및 SC 디코더의 복잡도는 폴라 코드의 길이 N에 따라 달라지는 데, O(NlogN)의 복잡도를 갖는다고 알려져 있다. 길이 N의 폴라 코드에서 K개의 입력 비트들을 가정할 때, 코딩 레이트는 N/K가 된다. 데이터 페이로드 크기 N의 폴라 인코더의 생성기 행렬을 G
N이라 하면, 인코딩된 비트(encoded bit)는 x
N
1 = u
N
1
G
N와 같이 표현될 수 있으며, u
N
1 중 K 개의 비트는 페이로드 비트에 해당하고 상기 페이로드 비트에 대응하는 G
N의 행(row) 인덱스를 i라 하고, 나머지 N-K개의 비트에 대응하는 G
N의 행 인덱스를 F라고 가정한다. 이와 같은 폴라 코드의 최소 거리는 dmin(C) = mini∈I2wt(i)와 같이 주어질 수 있다. 여기서 wt(i)는 i의 이진 확장 내 1의 개수(the number of ones in the binary expansion of i)이며, i=0,1,...,N-1이다.
SC 리스트(SCL) 디코딩은 기본적(basic) SC 디코더의 확장이다. 이 종류의 디코더에서는 디코딩의 각 단계(stage)에서 L 디코딩 경로들이 동시에(simultaneously) 고려된다. 여기서 L은 정수이다. 다시 말해, 폴라 코드의 경우 리스트-L 디코딩 알고리즘은 디코딩 과정에서 L개의 경로를 동시에 추적하는 알고리즘이다.
도 9은 리스트-L 디코딩 과정에서 디코딩 경로들의 진화(evolution)을 예시한 것이다. 설명의 편의를 위해 결정되어야 하는 비트의 개수가 n이고, 모든 비트들이 프로즌되어 있지 않다고 가정한다. 리스트 크기 L = 4이면, 각 레벨은 아래방향으로 이어지는(continue) 경로들이 있는 노드를 많아야 4개 가진다. 이어지지 않는(discontinue) 경로들은 도 9에서 점선으로 표시된다. 도 9를 참조하여, 리스트-L 디코딩에서 디코딩 경로들이 진화하는 과정을 설명하면 다음과 같다. i) 리스트-L 디코딩이 시작하며, 첫 번째 프로즌되지 않은(unfrozen) 비트는 0 아니면 1일 수 있다. ii) 리스트-L 디코딩이 계속된다. 두 번째 프로즌되지 않은 비트들은 0 아니면 1일 수 있다. 경로들의 개수가 L=4보다 많지 않으므로, 아직 가지치기(prune)를 할 필요가 없다. iii) 첫 번째 비트(즉, 첫 번째 레벨의 비트), 두 번째 비트(즉, 두 번째 레벨의 비트) 및 세 번째 비트(즉, 세 번째 레벨의 비트)에 대한 모든 옵션들을 고려하는 것은 8개 디코딩 경로를 초래하며, L=4이기 때문에 8개 디코딩 경로는 너무 많다. iv) 상기 8개 디코딩 경로를 L=4개의 유망한(promising) 경로들로 가지치기한다. v) 네 번째 프로즌되지 않은 비트의 2개 옵션들을 고려함으로써 4개의 활성(active) 경로들을 계속(continue)한다. 이 경우, 경로의 개수가 8개로 2배가 되며, L=4이므로 경로의 개수가 너무 많다. vi) 다시, L=4개의 최선(best) 경로들로 가지치기한다. 도 9의 예시에서는 4개 후보 코드워드들 0100, 0110, 0111 및 1111이 얻어지며, 이들 중 하나가 원본 코드워드와 가장 유사한 코드워드로서 결정된다. 일반적인 디코딩 과정에서와 마찬가지로, 예를 들어, 가지치기 과정 혹은 최종 코드워드를 결정하는 과정에서 LLR 절대 값의 합이 가장 큰 경로가 생존하는(survival) 경로로서 선택될 수 있다. CRC가 있는 경우, CRC를 통해 생존 경로가 선택될 수도 있다.
한편, CRC 보조(aided) SCL 디코딩은 CRC를 이용한 SCL 디코딩으로서, 폴라 코드의 성능을 개선한다. CRC는 정보 이론 및 코딩 분야에서 오류 검출 및 오류 정정에 가장 널리 사용되는 기법(technique)이다. 예를 들어, 오류 정정 인코더로의 입력 블록이 K 비트이고, 정보 비트의 길이가 k, CRC 시퀀스의 길이가 m 비트이면, K = k+m이다. CRC 비트들은 오류 정정 코드를 위한 소스 비트들의 일부이며, 인코딩에 사용되는 채널 코드의 크기가 N이면, 코드 레이트 R은 R=K/N으로서 정의된다. CRC 보조 SCL 디코딩은 수신 장치에서 각 경로에 대해 순환 리던던시 체크(cyclic redundancy check, CRC) 코드를 확인하면서 오류 없는 경로를 검출함을 목적으로 한다. SCL 디코더는 후보 시퀀스들을 CRC 검출기로 출력하며 상기 CRC 검출기는 체크 결과를 코드워드 결정을 돕기 위해 피드백한다.
SCL 디코딩 혹은 CRC 보조 SCL 디코딩은 SC 알고리즘에 비해 복잡하지만 디코딩 성능이 우수하다는 장점이 있다. 폴라 코드의 리스트-L 디코딩 알고리즘에 대한 보다 자세한 사항은 'I. Tal and A. Vardy, "List decoding of polar codes," in Proc. IEEE Int. Symp. Inf. Theory, pp. 1-5, Jul. 2011'을 참조한다.
도 10은 폴라 코드에서 정보 비트(들)이 할당될 위치(들)을 선택하는 개념을 설명하기 위해 도시된 것이다.
도 10의 예에서, 머더 코드의 크기 N=8, 즉, 폴라 코드의 크기 N=8이고, 코드 레이트가 1/2라고 가정된다.
도 10에서 C(Wi)는 채널 Wi의 용량으로서, 폴라 코드의 입력 비트들이 겪을 채널들의 신뢰도에 대응한다. 폴라 코드의 입력 비트 위치들에 대응하는 채널 용량들이 도 10에 도시된 바와 같다고 하면, 도 10에 도시된 대로 입력 비트 위치들의 신뢰도에 랭크(rank)가 매겨질 수 있다. 이 경우, 코드 레이트 1/2로 데이터를 전송하기 위해, 전송 장치는 상기 데이터를 이루는 4개 비트들을 폴라 코드의 8개 입력 비트 위치들 중에서 채널 용량이 높은 4개 입력 비트 위치들(즉, 도 10의 입력 비트 위치들 u1 ~ u8 중 u4, u6, u7 및 u8로 표시된 입력 비트 위치들)에 할당하고, 나머지 입력 비트 위치들은 프로즌한다. 도 10의 폴라 코드에 대응하는 생성기 행렬 G
8은 다음과 같다. 상기 생성기 행렬 G
8는 (G
2)ⓧn을 기반으로 얻어질 수 있다.
도 10의 u1부터 u8까지로 표시된 입력 비트 위치들은 G
8의 최상위 행(row)부터 최하위 행까지의 행들에 일대일로 대응한다. 도 10을 참조하면 u8에 대응하는 입력 비트는 모든 출력 코딩된 비트들에 영향을 미침을 알 수 있다. 반면, u1에 대응하는 입력 비트는 출력 코딩된 비트들 중 y1에만 영향을 미침을 알 수 있다. 수학식 12를 참조하면, 이진-입력 소스 비트들 u1 ~ u8와 G
8이 곱해졌을 때 해당 입력 비트를 모든 출력 비트들에 나타나도록 하는 행(row)은 G
8의 행들 중 모든 원소가 1인 행인 최하위 행 [1, 1, 1, 1, 1, 1, 1, 1]이다. 반면, 해당 이진-입력 소스 비트를 1개 출력 비트에만 나타나도록 하는 행은 G8의 행들 중 1개의 원소가 1인 행, 즉, 행 무게(weight)가 1인 [1, 0, 0, 0, 0, 0, 0, 0]이다. 마찬가지로, 행 무게가 2인 행은 해당 행에 대응하는 입력 비트를 2개 출력 비트에 반영시킨다고 할 수 있다. 도 10 및 수학식 12를 참조하면, u1 ~ u8는 G
8의 행들에 일대일로 대응하며, u1 ~ u8의 입력 위치들, 즉, G
8의 행들에 상기 입력 위치들을 구분하기 위한 비트 인덱스들이 부여될 수 있다.
폴라 코드에서는 G
N로의 N개 입력 비트들에 대해 행 무게가 가장 작은 최상위 행부터 시작하여 비트 인덱스 0부터 N-1까지 순차적으로 비트 인덱스들이 할당되어 있다고 가정될 수 있다. 예를 들어, 도 10을 참조하면, u1의 입력 위치, 즉, G
8의 첫 번째 행에 비트 인덱스 0가 부여되고, u8의 입력 위치, 즉, G
8의 마지막 행에 비트 인덱스 7이 부여된다. 다만, 비트 인덱스들은 폴라 코드의 입력 위치들을 나타내기 위해 사용되는 것이므로, 이와 다르게 할당될 수 있다. 예를 들어, 행 무게가 가장 큰 최하위 행부터 시작하여 비트 인덱스 0부터 N-1까지 할당될 수 있다.
출력 비트 인덱스의 경우, 도 10 및 수학식 12에 예시된 바와 마찬가지로, GN의 열들 중 열 무게가 가장 큰 첫 번째 열부터 열 무게가 가장 작은 마지막 열까지 비트 인덱스 0부터 N-1까지, 혹은 비트 인덱스 1부터 N까지 부여되어 있다고 가정될 수 있다.
폴라 코드에서는 정보 비트와 프로즌 비트를 설정하는 것이 폴라 코드의 구성 및 성능에 있어 가장 중요한 요소들 중 하나이다. 즉, 입력 비트 위치들의 랭크를 정하는 것이 폴라 코드의 성능 및 구성에 있어서 중요한 요소라고 할 수 있다. 폴라 코드에 대해, 비트 인덱스들은 폴라 코드의 입력 혹은 출력 위치들을 구분할 수 있다. 폴라 코드에 대해, 비트 위치들의 신뢰도의 오름차순으로 아니면 내림차순으로 나열하여 얻어진 시퀀스를 비트 인덱스 시퀀스 혹은 폴라 시퀀스라고 한다. 즉, 상기 비트 인덱스 시퀀스는 폴라 코드의 입력 혹은 출력 비트 위치들의 신뢰도를 오름차순 혹은 내림차순으로 나타낸다. 전송 장치는 입력 비트 인덱스 시퀀스를 기반으로 신뢰도가 높은 입력 비트들에 정보 비트들을 입력하고 폴라 코드를 이용하여 인코딩을 수행하며, 수신 장치는 동일한 혹은 대응 입력 비트 인덱스 시퀀스를 이용하여 정보 비트가 할당된 입력 위치들 또는 프로즌 비트가 할당된 입력 위치들을 알 수 있다. 즉, 수신 장치는 전송 장치가 사용한 입력 비트 인덱스 시퀀스와 동일한 혹은 대응 입력 비트 인덱스 시퀀스와 해당 폴라 코드를 이용하여 폴라 디코딩을 수행할 수 있다. 폴라 코드에 대해, 입력 비트 인덱스 시퀀스는 신뢰도가 높은 입력 비트 위치(들)에 정보 비트(들)이 할당될 수 있도록 미리 정해져 있다고 가정될 수 있다. 본 명세서에서 입력 비트 인덱스 시퀀스는 폴라 시퀀스라고 칭하기도 한다.
도 11은 폴라 코드에 대한 펑처링 및 정보 비트 할당을 예시한 것이다. 도 11에서 F는 프로즌 비트를, D는 정보 비트를, 0은 스키핑 비트를 나타낸다.
코딩된 비트들 중 펑처링되는 비트의 인덱스 혹은 위치에 따라 정보 비트가 프로즌 비트로 변경되는 경우가 발생할 수 있다. 예를 들어, N=8인 머더 코드에 대한 출력 코딩된 비트들은 Y8, Y7, Y6, Y4, Y5, Y3, Y2, Y1의 순으로 펑처링되어야 하는 경우, 타겟 코드 레이트가 1/2인 경우, 도 9에 예시된 바와 같이, Y8, Y7, Y6 및 Y4가 펑처링되고, Y8, Y7, Y6 및 Y4와만 연결된 U8, U7, U6 및 U4가 0으로 프로즌되며 이 입력 비트들은 전송되지 않는다. 코딩된 비트의 펑처링에 의해 프로즌 비트로 변경되는 입력 비트를 스키핑(skipping) 비트 혹은 쇼트닝(shortening) 비트라고 하며, 해당 입력 위치를 스키핑 위치 혹은 쇼트닝 위치라고 한다. 쇼트닝은 입력 정보의 크기(즉, 정보 블록의 크기)는 유지하면서 보내고 원하는 출력 비트 위치에 연결된 입력 비트 위치에 알려진 비트를 삽입하는 레이트 매칭 방법이다. 생성기 행렬 G
N에서 열 무게가 1인 열에 해당하는 입력부터 쇼트닝이 가능하며, 열 무게가 1인 열과 행을 제거하고 남은 행렬에서 다시 열 무게가 1인 열에 해당하는 입력이 다음으로 쇼트닝될 수 있다. 정보 비트들이 모두 펑처링되어버리는 것을 방지하기 위해 정보 비트 위치에 할당되었어야 할 정보 비트는 프로즌 비트 위치 세트 내에서 높은 신뢰도의 순으로 재할당될 수 있다.
폴라 코드의 경우, 디코딩은 일반적으로 다음과 같은 순서로 수행된다.
> 1. 신뢰도가 낮은 비트(들)이 먼저 복원된다. 디코더의 구조에 따라 달라지기는 하지만, 인코더에서의 입력 비트 인덱스(이하, 인코더 입력 비트 인덱스 혹은 비트 인덱스)가 작은 쪽이 보통 신뢰도가 낮기 때문에 일반적으로는 인코더 입력 비트 인덱스가 작은 쪽부터 순차적으로 디코딩이 수행된다.
> 2. 복원된 비트에 대해 알려진 비트 정보가 있을 경우 상기 알려진 비트를 상기 복원된 비트와 함께 이용하거나, 1의 과정을 생략하고 특정 입력 비트 위치에 대해 알려진 비트를 바로 이용하여 알려지지 않은(unknown) 비트인 정보 비트를 복원한다. 상기 정보 비트는 소스 정보 비트(예, 수송 블록의 비트)일 수도 있고, CRC 비트일 수도 있다.
앞서 설명한 있듯이 채널 컴바이닝과 채널 스플릿팅의 과정을 거치면 등가(equivalent) 채널이 잡음 채널(noisy channel) 및 잡음 자유 채널(noise free channel)로 구분되며, 데이터 페이로드는 잡음 자유 채널(noise free channel)로 전송되어야 한다. 즉, 잡음 자유의 등가 채널을 통해 데이터 페이로드가 전송되어야 원하는 성능을 얻을 수 있다. 이 때, 잡음 자유의 등가 채널은 각 입력 비트에 대해서 등가 채널의 값 을 구함으로써 결정될 수 있다. Z(W)는 Battacharyya 파라미터라고 불리며, 이진 입력 0 또는 1의 전송에 대한 MAP(maximum a posteriori probability) 결정(decision)을 수행될 때 오류 확률의 상한(upper-bound)에 해당하는 값일 수 있다. 따라서, 전송단은 값 Z(W)을 구하여 값 Z(W)의 오름차순(예, 작은 순)으로 데이터 페이로드만큼 등가 채널(들)을 선택하여 상기 데이터 페이로드의 전송에 사용할 수 있다. Z(W)는 이진 소거 채널(binary erasure channel, BEC)에 대해서는 다음과 같은 수식으로 얻어질 수 있다.
예를 들어, BEC 채널의 이진 확률 0.5인 코드 블록의 크기가 8일 때, 수학식 11을 이용하여 Z(W) 값을 계산하면 다음과 같다: Z(W) = {1.00, 0.68, 0.81, 0.12, 0.88, 0.19, 0.32, 0.00}이다. 따라서, 데이터 페이로드의 크기가 2인 경우에는 값 Z(W) = 0.00인 등가 채널 8과 값 Z(W) = 0.12인 등가 채널 4를 통해 상기 데이터 페이로드가 전송되면 된다.
앞서 언급하였듯이 폴라 인코더에서 입력 위치들에 따라 신뢰도(reliability)가 서로 다르기 때문에, 전송단은 데이터 블록(즉, 인코딩 전 정보 블록)의 크기에 따라 신뢰도 순으로 해당 데이터 블록을 비트 채널(들)에 할당하고 나머지는 모두 프로즌(예, 값 '0')으로 세팅하여 인코딩을 수행할 수 있다. 예를 들어, 폴라 인코더의 머더 코드 크기(즉, 상기 폴라 인코더가 인코딩할 수 있는 코드 블록의 최대 크기)를 N, 상기 폴라 인코더로 입력되는 데이터 블록의 크기를 K라 하면 신뢰도 순으로 K개의 비트 채널들에 상기 데이터 블록의 비트들이 배치되고, N-K개의 비트 채널(들)은 0으로 세팅하여 폴라 인코딩을 수행한다.
다음은 NR 시스템에서 사용되는 폴라 시퀀스(3GPP TS 38.212 Rel-15에 정의된 폴라 시퀀스 참조)를 나타낸 것이다.
<폴라 시퀀스>
위 표는 폴라 시퀀스 Q
0
Nmax-1 및 그 해당 신뢰도(reliability) W(Q
i
Nmax)를 나타낸 것으로서, 위 표에서 W는 W(Q
i
Nmax)를 의미하고, I는 Q
i
Nmax를 의미한다. 즉, 폴라 시퀀스 Q
0
Nmax-1 = {Q
0
Nmax, Q
1
Nmax,..., Q
Nmax-1
Nmax}이 위 표에 의해 주어지며, 여기서 0 <= Q
i
Nmax <= Nmax-1은 i=0,1,...,Nmax-1에 대해 폴라 인코딩 전의 비트 인덱스(즉, 비트 채널 인덱스)를 나타내며, 3GPP TS 38.212 Rel-15에서 Nmax=1024이다. 상기 폴라 시퀀스 Q
0
Nmax-1는 신뢰도의 오름차순 W(Q
0
Nmax)<W(Q
1
Nmax)<...<W(Q
Nmax-1
Nmax)이며, W(Q
i
Nmax)는 비트 인덱스 Q
i
Nmax의 신뢰도를 나타낸다. 예를 들어, 위 표를 참조하면, 비트 인덱스 Q
i
Nmax=4의 신뢰도 W(Q
i
Nmax)=3는 비트 인덱스 Q
i
Nmax=3의 신뢰도 W(Q
i
Nmax)=7보다 낮다. 즉 위 표는 Nmax=1024인 폴라 코드의 1024개 입력 위치들을 각각 나타내는 비트 인덱스들 0~1023을 신뢰도의 오름차순으로 나열한 것이라고 할 수 있다.
N개 비트들로 인코딩되는 임의의(any) 정보 블록에 대해(for any information block encoded to N bits), 동일(same) 폴라 시퀀스 Q
0
N-1 = {Q
0
N, Q
1
N, Q
2
N,..., Q
N-1
N}이 사용된다. 상기 폴라 시퀀스 Q
0
N-1는 신뢰도 W(Q
0
N)<W(Q
1
N)<W(Q
2
N)<...<W(Q
N-1
N)의 오름차순으로 정렬(order)되는, N보다 작은 값들의 모든 요소들 Q
i
Nmax를 갖는(with), 폴라 시퀀스 Q
0
Nmax-1의 서브셋이다. 예를 들어, N=8이면, 폴라 시퀀스 Q
0
7은 폴라 시퀀스 Q
0
Nmax-1의 요소들 중 Q
i
Nmax<8인 요소들을 가지며, Q
i
Nmax<8인 요소들은 신뢰도 W(0)<W(1)<W(2)<W(4)<W(3)<W(5)<W(6)의 오름차순으로 정렬(order)된다.
예를 들어, 표 3은 N=512인 폴라 시퀀스에서 폴라 코드로의 정보 블록의 크기 K=10을 위한 입력 비트 위치들을 나타낸 것이다.
표 3은 N=512인 폴라 시퀀스의 요소들 중 K=10을 위한 10개 요소들을 신뢰도의 오름차순으로 정렬한 것이다. 전술한 <폴라 시퀀스> 표를 참조하면, N=512보다 작은 I(=Q
i
Nmax) 값들 중에서 상위 10개 신뢰도 W(Q
i
Nmax)를 갖는 I는 {479, 495, 503, 505, 506, 507, 508, 509, 510, 511}이며, {479, 495, 503, 505, 506, 507, 508, 509, 510, 511}를 해당 신뢰도 W의 오름차순으로 정렬하면, 표 3에 예시된 N=512인 폴라 시퀀스에서 K=10을 위한 비트 인덱스들의 세트인 {505, 506, 479, 508, 495, 503, 507, 509, 510, 511}가 얻어질 수 있다.
채널 코딩으로의 비트 시퀀스 입력을 c0,c1,c2,c3,...,cK-1이라고 표시하면, 상기 비트들을 인코딩한 후에는 d0,d1,d2,d3,...,dN-1에 의해 표시된다. 여기서 K는 인코딩할 비트들의 개수이고, N=2n이다. N=2n에서 n의 값은 예를 들어 다음 표에 의해 결정될 수 있다.
표 4에서, nmax는 채널 또는 제어 정보의 타입에 따라, 및/또는 채널 코딩 블록에 입력되는 정보 비트들의 개수에 따라 기결정된 값일 수 있다. 예를 들어, BCH를 위한 nmax는 9로, 하향링크 제어 정보를 위한 nmax는 9로, 상향링크 제어 정보를 위한 nmax는 10으로 기결정될 수 있다.
표 4에서, E는 레이트 매칭 출력 시퀀스 길이이다. 레이트 매칭 출력 시퀀스 길이 E는 채널의 타입에 따라, 제어 정보의 타입에 따라, 채널 혹은 제어 정보가 매핑되는 자원의 양에 따라, 및/또는 제어 정보의 전송에 사용되는 코드 블록의 개수에 따라 기결정되는 값일 수 있다. 예를 들어, BCH를 위한 레이트 매칭 출력 시퀀스 길이 E=864이고, 하향링크 제어 정보를 위한 레이트 매칭 출력 시퀀스 길이 E=864이며, 상향링크 제어 정보를 위한 레이트 매칭 출력 시퀀스 길이 E는 UCI를 나르는 OFDM 심볼들의 개수, 자원 블록들의 개수, 확산 인자(spreading factor), UCI를 위한 코드 블록들의 개수, 및/또는 UCI 페이로드에 포함된 UCI 타입(예, HARQ-ACK, 스케줄링 요청(scheduling request, SR), 채널 상태 정보(channel state information, CSI)) 등을 통해 기결정되는 값일 수 있다.
N개 비트들로 인코딩되는 임의의(any) 정보 블록에 대해(for any information block encoded to N bits), 동일(same) 폴라 시퀀스 Q
0
N-1 = {Q
0
N, Q
1
N, Q
2
N,..., Q
N-1
N}이 사용된다. 상기 폴라 시퀀스 Q
0
N-1는 신뢰도 W(Q
0
N)<W(Q
1
N)<W(Q
2
N)<...<W(Q
N-1
N)의 오름차순으로 정렬(order)되는, N보다 작은 값들의 모든 요소들 Q
i
Nmax를 갖는(with), 폴라 시퀀스 Q
0
Nmax-1의 서브셋이다.
NR 시스템에서는 특정 조건 하에, 예를 들어, 18 <= 폴라 코드 정보 크기 <= 25인 경우에, 폴라 코드를 사용했을 때의 성능(예, BLER) 향상을 위한 패리티 체크 비트들이 생성된다. 여기서 폴라 코드 정보 크기(polar code information size) K는 폴라 코딩을 통해 인코딩되는 정보 비트들의 개수이다. 예를 들어, 코드 블록 + 코드 블록 CRC 비트(들)의 총 합이 폴라 코드 정보 크기가 될 수 있다.
도 12는 폴라 코드에서 사용되는 패리티 체크 비트(들)을 생성하는 방법을 예시한다.
몇몇 구현들에서 폴라 인코더의 입력에 데이터 블록(즉, 정보 블록)의 일부를 이용하여 생성된 패리티 체크(parity check, PC) 비트(들)을 배치하는 폴라 코드인 PC 폴라 코드가 사용될 수 있다. 현재까지 공개된 NR 표준에서 PC 폴라 코드는 데이터 블록 크기 K가 18 <= K <= 25일 때 사용될 수 있으며, PC 비트의 개수는 3이고, 도 12와 같이 5-비트 쉬프트 레지스터를 이용하여 생성될 수 있다. 도 12에서 5-비트 쉬프트 레지스터, y[0],...,[4]는 모두 0으로 초기화된다. 즉, PC 비트(들)은 데이터 블록 [u0, u1, u2, ..., uN-1]에 대해서 다음과 같이 생성될 수 있다:
> 레지스터를 왼쪽으로 순환 쉬프트(cyclic left shift the register),
> ui가 정보 비트면, y[0] =(ui XOR y[0])로 세팅,
> ui가 PC 비트면, ui = y[0]로 세팅.
이와 같이 생성된 PC 비트(들)은 다음과 같이 폴라 인코더의 입력 비트 채널(즉, 폴라 코드의 비트 인덱스)에 할당된다. 여기서, E-K+3>192일 때 nwm
PC=1이고, E-K+3<=192일 때 nwm
PC=0이다. 여기서, 상기 PC 비트들을 위한 비트 인덱스들의 세트를 Q
N
PC로 표시하고, Q
N
PC 중 다른 패리트 체크 비트들을 위한 비트 인덱스들의 세트를 Q
N
PC_wm으로 표시하면, 세트 Q
N
PC의 크기 |Q
N
PC|=nPC이고, 세트 Q
N
PC_wm의 크기 |Q
N
PC_wm|=nwm
PC이다. NR 표준(예, 3GPP TS 38.212 Rel-15)에서 Q
N
PC와 Q
N
PC_wm를 구하는 방법을 설명하면 다음과 같다. j=0,1,...,N-1인 비트 인덱스 j에 대해, G
N의 j-번째 행(row)를 g
j로 표시하고 g
j의 행 무게(weight)를 w(g
j)로 표시하며, 여기서 w(g
j)는 g
j 내 일(one)들의 개수이다. (nPC - nwm
PC)개의 패리티 체크 비트들이 내 (nPC - nwm
PC)개의 가장 적게 신뢰할만한 비트 인덱스들(least reliable bit indices)에 배치(place)된다. nwm
PC개의 다른 패리티 체크 비트들이 내 최소(minimum) 행 무게의 비트 인덱스들에 배치되며, 여기서 는 내 개의 가장 신뢰할만한 비트 인덱스들(most reliable bit indices)을 표시한다. 내에 동일 최소 행 무게인 비트 인덱스들이 nwm
PC개보다 많이 있는 경우, 상기 nwm
PC개의 다른 패리티 체크 비트들은 에서 최고 신뢰도(highest reliability) 및 최소 행 무게의 nwm
PC개 비트 인덱스들에 배치된다.
폴로 인코딩으로의 입력 u = [u0 u1 u2 ... uN-1]은 다음 표에 따라 생성될 수 있다.
인코딩 후의 출력 d=[d0 d1 d2 d3 ... dN-1]은 d=uG
N에 의해 얻어지며, 상기 인코딩은 GF(2)에서 수행된다.
도 13은 본 명세의 몇몇 구현들에 따른 레이트 매칭 과정을 설명하기 위해 도시된 것이다.
몇몇 구현들에서, 채널 코딩 후에 레이트 매칭이 수행된다. NR 표준에서 폴라 코드에 대한 레이트 매칭은 코드 블록별로 정의되고 서브-블록 인터리빙, 비트 선택(selection), 및 비트 인터리빙으로 이루어진다. 본 명세에서 레이트 매칭으로의 입력 비트 시퀀스는 d0,d1,d2,d3,...,dN-1, 레이트 매칭 후에 출력 비트 시퀀스는 f0,f1,f2,f3,...,fE-1로서 표현될 수 있다. 서브-블록 인터리버에게 입력되는 비트들은 코딩된 비트들 d0,d1,d2,d3,...,dN-1이다. 상기 코딩된 비트들 d0,d1,d2,d3,...,dN-1은 32개 서브-블록들로 나눠질 수 있다. 상기 서브-블록 인터리버로부터 출력되는 비트들은 y0,y1,y2,y3,...,yN-1로서 표시(denote)될 수 있으며, 다음과 같이 생성될 수 있다: for n = to N-1: i = floor(32n/N); J(n) = P(i)*(N/32) + mod(n,N/32); yn = dJ(n). 여기서 상기 서브-블록 인터리버 패턴 P(i)는 다음 표에 의해 주어진다.
G N = (G
2)ⓧn는 행렬 G
2의 n차(n-th) Kronecker 거듭제곱(power)이며, 여기서 N=2n, G
2는 도 6(b)에 도시된 기본 행렬 F와 같다.
몇몇 구현들에서, 서브-블록 인터리버 후의 비트 시퀀스 y0,y1,y2,y3,...,yN-1는 길이 N의 순환 버퍼에 쓰여진다(written). 레이트 매칭 출력 시퀀스 길이를 E라 하면, 비트 선택 출력 비트 시퀀스 ek, k=0,1,2, ...,E-1은 다음과 같이 생성될 수 있다.
펑처링 또는 쇼트닝은 전송을 위해 할당된 자원이 인코딩된 비트들을 다 수용할 수 있을 정도로는 크지 않을 때 상기 인코딩된 비트들 중 일부를 전송하지 않도록 하는 기법이다. 반복은 전송을 위해 할당된 자원이 인코딩된 비트들을 수용하고도 남을 정도로 클 때 상기 인코딩된 비트들 중 일부가 중복해서 전송되도록 하는 기법이다.
수송 채널 혹은 제어 정보의 타입에 따라, 혹은 채널 코딩 방식에 따라, 비트 시퀀스 e0,e1,e2,..., eE-1은 비트 시퀀스 f0,f1,f2,f3,...,fE-1로 인터리빙될 수 있다. 예를 들어, UCI에 대한 폴라 코딩의 경우, 비트 시퀀스 e0,e1,e2,..., eE-1은 비트 시퀀스 f0,f1,f2,f3,...,fE-1로 다음에 따라 인터리빙될 수 있다.
폴라 시퀀스 Q
0
N-1 내 비트 인덱스들의 세트(a set of bit indices)를 로 표시(denote)하고, 폴라 시퀀스 Q
0
N-1 내 다른 비트 인덱스들의 세트(the set of other bit indices)를 로 각각 표시하며, 여기서 , 이며, nPC는 패리티 체크 비트들의 개수이다. 본 명세서에서 |S|는 세트 S 내 원소(element)들의 개수이다. 및 는 다음과 같이 주어진다.
본 명세서에서, A\B는 세트 A로부터의 세트 B의 차집합(the difference of set B from set A), 즉, A-B을 의미하며, 세트 B에 속하지 않는 세트 A의 모든 요소들의 세트이다.
폴라 인코딩/디코딩의 성능 향상을 위해, 폴라 변환(transform) 전에 프리코딩 단계로서 컨볼루션(convolution) 변환을 채택하는 극화 조정 컨볼류션(polarization adjusted convolution, PAC) 코드가 고려되고 있다. PAC 코드는 컨볼류션 변환을 폴라 변환과 연접함으로써 폴라 코드들의 오류-정정 성능을 개선할 수 있다.
도 14는 본 명세의 몇몇 구현들에 이용 가능한 PAC 코드를 위한 인코더/디코더들 중 일 구조를 예시한다.
도 14를 참조하면, PAC 코드에서 레이트 프로파일링(rate profiling)은 사용자 데이터를 정보 세트와 프로즌 세트로 분류한다. 예를 들어, 머더 코드 크기 N=8인 PAC 코드를 가정하면, 사용자 데이터 크기 K=4일 경우, d = [d0, d1, d2, d3]가 된다. 이 때, 현재 NR 표준에 따른 정보/프로즌 비트들 할당 방식을 가정하면, 비트 채널들 7, 6, 5, 3, 4, 2, 1, 0의 순서로 크기 K인 사용자 데이터가 K개의 비트 채널들에 할당되기 때문에 정보 세트 A={7, 6, 5, 3}이 되고, 프로즌 세트 Ac ={4, 2, 1, 0}이 된다. 상기 레이트 프로파일링은 사용자 데이터 d = [d0, d1, d2, d3]를 v=[v0, ..., v7]에 매핑하며, 여기서 vi는 비트 채널 i에 매핑된 값이다. 따라서, v = [0, 0, 0, d1, 0, d2, d3, d4]과 같이 표현할 수 있다. 컨볼루션 동작은 임펄스 응답(impulse response) c=(c0, ..., cm)에 의해서 수행되며, 여기서 c0≠0 및 cm≠0이다. 파라미터 m+1은 컨볼루션의 제약 길이(constraint length)라고 칭해진다. m은 컨볼루션에 사용되는 메모리의 크기, 예를 들어, 천이 레지스터(shift register)의 개수이다. 따라서, 주어진 임펄스 응답 c=(c0, ..., cm)을 가진 컨벌루션에 대한 입력-출력의 관계는 이고, 여기서 i=0,...,N-1이고, j>=i일 때 vi-j=0이다. 이를 행렬로 표현하면, 다음과 같이 상위 삼각 행렬 형태로 표현될 수 있다.
머더 코드 크기 N의 폴라 변형 PN은 수학식 5와 같은 폴라 코드 커널(kernel) 행렬을 나타낸다. PAC 코드워드 x는 다음과 같이 표현될 수 있다.
PAC 코드의 디코딩 방식은 크게 두 가지로 구분될 수 있다. 첫 번째 방식은 컨볼루션 동작과 폴라 변환을 수행한 것을 제약 길이 N의 컨볼루션 인코딩을 수행한 것으로 해석하여 순차(sequential) 디코딩을 수행한다. 순차 디코딩은 고차(heuristic) 디코딩으로서, 다양한 알고리즘이 알려져 있으며 Fano 디코딩이 효율적인 방식으로 알려져 있다(E. Arikan, "From sequential decoding to channel polarization and back again"참조).
도 15는 순차 디코딩의 개념을 설명하기 위한 코드워드 트리를 예시한다. 도 15의 예에서, 입력 데이터는 100, 상기 입력 데이터 100을 인코딩한 결과인 코드워드는 111 010 100, 수신단에서의 해당 수신 코드워드는 001 010 100을 가정한다.
도 15를 참조하면, 코드워드 트리의 왼쪽에서 오른쪽으로 순차 디코딩이 수행될 수 있다. 도 15를 참조하면, 예를 들어, 디코더는 상기 수신 코드워드 001 010 100 중 첫 번째 코드워드 부분 001에 대해 가능한 코드워드인 111과 000 중에 000이 작은 (Hamming) 거리(distance) 값을 갖기 때문에, 0에 해당하는 방향으로 디코딩을 수행할 수 있다. 상기 디코더는 상기 수신 코드워드 001 010 100 중 두 번째 코드워드 부분 010과 다시 111, 000을 비교하여 000의 입력에 해당하는 0의 방향으로 디코딩을 지속하고, 세 번째 코드워드 부분 100을 다시 111, 000과 비교하여 0을 선택하여, 최종 000의 값을 얻는 디코딩을 수행할 수 있다. 그러나, 이 경우, 입력 데이터 100과 다른 값인 000으로 수신 코드워드가 디코딩되는 것이므로 오류가 발생한 것이다. 따라서, 특정 조건을 생성하여 디코더로 하여금 상위 노드에서 다시 디코딩을 수행할 수 있도록 하면, 오류없이 디코딩이 가능하도록 할 수 있다. 위 예에서, 첫 번째 코드워드 부분 001을 디코딩한 후 상위 노드로 분기하여 000이 아닌 111에 해당하는 방향으로 디코딩을 수행하게 되면 100의 디코딩 결과를 얻을 수 있다.
입력 비트들의 개수 λ, 출력 비트들의 개수 v, 제약 길이 L을 가진 컨볼루션 인코더에 대한 Fano 디코딩을 간략히 설명하면 다음과 같다. 디코딩 구현 시 경로 메트릭은 다음과 같이 표현될 수 있다.
여기서 l은 코드 트리의 깊이(depth)이고 , Q(k)는 k의 상대 주파수(relative frequency of k)이다. 이 때, 경로 깊이의 갱신(update)는 다음과 같이 표현될 수 있다.
다음 표는 Fano 디코딩 알고리즘을 예시한다.
표 10에서, *는 임계치(threshold)에 jδ를 더하는 것을 의미하며, 여기서 j는 다음을 만족하도록 선택된다: . 표 10에서 는 현재 노드로부터 파생된(stemming from) 첫 번째 노드로 전진(move forward)하는 것을 의미한다. 표 10에서, 는 마지막 분기(branch)에서만 현재 노드와는 다른 다음 노드로 수평(laterally) 이동하는 것을 의미한다. 현재 노드가 마지막이면 후진(move backward)한다.
두 번째 방식은 T의 프리코딩이 적용된 폴라 코드인 것으로 해석하여 앞서 설명된 SC 또는 SCL 디코딩을 수행하는 것이다. 이 때, PAC 코드의 SC/SCL 디코딩은 기존의 폴라 코드에 대한 SC/SCL 디코더, 그리고 디코딩 과정에서 컨볼루션 재-인코딩을 수행한 후에 메모리 상태의 저장을 필요로 한다. 이는 PAC 코드에서는 폴라 변환의 입력이 컨볼루션 인코더의 출력이기 때문이다.
PAC 코드에 대한 SCL 디코딩 알고리즘의 일 예가 다음 표와 같이 표현될 수 있다(참조: M. Rowshan, A. Burg, and E. Viterbo, "Polarization-adjusted convolutional (PAC) codes: sequential decoding vs list decoding," IEEE Tr. VT., vol. 70, no. 2, 2021).
도 14와 같은 PAC 코드를 조금 더 일반화하면, 컨볼루션 동작 행렬 T가 상위 삼각 행렬 형태인 프리코딩으로서 해석될 수 있다. 이러한 프리코딩된 폴라 코드는 프리코딩을 하지 않은 폴라 코드에 비해서 최소 거리(minimum distance) 특성이 개선될 수 있음이 알려져 있다.
이하에서는 본 명세의 몇몇 구현들에 따른 PAC 코드의 설계 방법(들)과 해당 설계 방법(들)에 따라 얻어진 PAC 코드(들)이 설명된다. 예를 들어, 도 14의 PAC 시스템을 참조하여, 본 명세의 몇몇 구현들에 따른 컨볼루션 동작 및 레이트 프로파일이 설명된다.
<컨볼루션 동작을 위한 설계(Design for convolution operation)>
컨볼루션 동작을 위해 임펄스 응답 c=(c0, ..., cm)이 설계될 필요가 있다. 이 때, 임펄스 응답의 설계는 ci, i=0,...,m의 설계와 제약 길이 m+1의 설계로 구분할 수 있다.
도 14의 레이트 프로파일 동작에 의해서 사용자 데이터의 비트들은 정보/프로즌 비트(들) 할당을 통해 컨볼루션으로의 입력 비트 채널들에 배치되게 된다.
도 16 및 도 17은 머더 코드 크기에 대한 레이트 프로파일 동작의 결과를 예시한다. 특히, 도 16은 머더 코드 크기 N=32이고 정보 크기들 K=8, 16, 24에 대해, 현재까지 NR 표준에 정의된 정보/프로즌 할당 방식을 적용한 레이트 프로파일 동작의 결과를 나타낸 것이다. 도 16에서 음영 표시된 부분에 해당하는 비트 인덱스(들)에 사용자 데이터가 배치된다. 이하에서는 사용자 데이터의 비트, 즉, 정보 비트가 할당되는 비트 채널의 인덱스를 정보 비트 인덱스라고 칭한다.
정보(즉, 사용자 데이터)에 할당된 비트 인덱스들 사이의 프로즌 비트들의 개수와 제약 길이가 오류 보호(protection)에 영향을 줄 수 있다. 예를 들어, 정보 비트 인덱스들 사이에 위치한 정보 비트들의 개수보다 제약 길이가 작으면, 컨볼루션 동작의 출력이 0이 된다. 이렇게 되면 해당 비트 인덱스들에 배치된 정보 비트들은 다른 비트들보다 오류에 취약해 질 수 있게 된다. 따라서, 사용자 데이터의 위치에 따른 오류 발생 확률이 동일하지 않는 문제를 초래할 수 있다. 이와 같은 문제를 해결하기 위해서 컨볼루션 동작의 제약 길이는 레이트 프로파일의 결과로서 배치된 정보 비트들 사이에 위치하는 프로즌 비트들의 개수보다 크게 결정되는 것이 바람직하다. 예를 들어, 도 16의 예들 중 (32, 8)의 PAC 코드의 경우, 연속한(consecutive) 정보 비트 인덱스들 사이에 위치한 프로즌 비트들의 최대 개수가 6이므로, 제약 길이는 6보다 큰 값으로 설정하는 것이 바람직할 수 있다.
폴라 코드의 경우 정보 크기 최소(minimum) 코드 레이트에 해당하는 정보 크기(즉, 정보 비트들의 최소 개수)부터 시작하여 1개 비트만큼씩 증가시켜 얻어진 정보 크기들이 지원될 필요가 있다. 도 17을 참조하면, 도 17은 머더 코드 크기 N=32일 때, 현재 NR 표준의 정보/프로지 비트 할당 방식을 적용한 레이트 프로파일 동작의 결과를 나타낸 것이다. 도 17은 다양한 정보 크기들을 지원하는 PAC 코드의 정보 비트들 사이에 위치한 프로즌 비트들의 개수를 보여준다. 도 17의 예에서 최소 코딩 레이트는 1/8이 가정된다. 도 17에 예시된 바와 같이, 폴라 코드가 다양한 정보 크기들을 지원하는 경우, 정보 비트들 사이에 위치한 프로즌 비트들의 최대 개수보다 크도록 제약 길이가 결정되면, 정보 비트들이 동일한 오류 발생 확률을 가질 수 있다. 예를 들어, 도 17의 예에서 정보 비트들 사이에 위치한 프로즌 비트들의 최대 개수가 7이므로, 제약 길이는 8보다 크거나 같은 값으로 설정되는 것이 바람직하다.
폴라 코드와 같이 PAC 코드도 다양한 머더 코드 크기들을 지원할 수 있다. 다음 표는 현재 NR 표준(예, 3GPP TS 38.212 Rel-15)의 정보/프로즌 비트 할당 방식을 적용될 때의 다양한 머더 코드 크기들에 따른 정보 비트들 사이에 위치한 프로즌 비트들의 최대 개수들을 나타낸다. 이 때, 최소 코딩 레이트는 1/8이 가정된다.
본 명세의 몇몇 구현들에서, 다양한 머더 코드 크기들을 지원하는 PAC 코드의 컨볼루션 동작을 위한 제약 길이가 다음과 같이 결정될 수 있다
> 방법 1: 머더 코드 크기에 따라서 제약 길이가 결정된다. 이 경우, 머더 코드 크기에 따른 정보 비트들 사이에 위치한 프로즌 비트들의 최대 개수보다 큰 값이 제약 길이로서 결정 혹은 설정될 수 있다. 예를 들어, 표 12를 참조하면, 머더 코드 크기들 N=32, 64, 128, 256, 512, 1024에 대해서 8, 16, 32, 60, 96, 128보다 크거나 같은 제약 길이들이 각각(respectively) 결정/설정될 수 있다.
>> 방법 1-1: 머더 코드 크기들을 복수의 머더 코드 크기 그룹들로 그룹화(grouping)하고, 머더 코드 크기 그룹별로 제약 길이가 결정 혹은 설정될 수 있다. 이 경우, 머더 코드 크기 그룹 내 최대 머더 코드 크기에 대한, 정보 비트들 사이에 위치한 프로즌 비트들의 최대 개수보다 큰 값이 제약 길이로서 설정된다. 예를 들어, 표 12의 머더 코드 크기들을 순서대로 2개씩 그룹화하여 얻어진 머더 코드 크기 그룹들 {32, 64}, {128, 256}, {512, 1024}에 대해 16, 60, 128보다 크거나 같은 값들이 각각 제약 길이로서 결정/설정될 수 있다.
> 방법 2: PAC 코드가 지원하는 모든 머더 코드 크기들에 대해서 동일한 제약 길이가 결정/설정될 수 있다. 이 경우, 지원되는 최대 머더 코드 크기에 따른 정보 비트들 사이에 위치하는 프로즌 비트들의 최대 개수보다 큰 값이 제약 길이로서 결정/설정될 수 있다. 예를 들어, 표 12를 참조하면, 최대 머더 코드 크기가 1024이므로, 127보다 큰 값이 제약 길이로서 결정/설정될 수 있다. 몇몇 구현들에서, 결정/설정된 제약 길이가 머더 코드 크기보다 큰 경우가 발생하게 되는데, 머더 코드 크기보다 큰 제약 길이는 의미가 없으므로, 일부 머더 코드 크기들(예, 1024를 기준으로 결정된 제약 길이보다 작은 머더 코드 크기들)에 대해서는 머더 코드 크기보다 작은 값이 제약 길이로서 결정/설정될 수 있다. 예를 들어, 머더 코드 크기들 N=32, 64, 128은 127보다 크게 결정/설정된 제약 길이 값보다 작기 때문에 각각 32, 64, 128보다 작은 제약 길이(들)이 결정/설정될 수 있다.
전술한 방법 1 및 방법 2는 컨볼루션 동작에서 피드백이 없는 경우, 즉, 비-회귀성(non-recursive) 컨볼루션 동작에 적용될 수 있다. 표 12에서 볼 수 있듯이 머더 코드 크기가 커짐에 따라 제약 길이가 커지게 되어 실제 구현 시 필요한 메모리의 크기가 증가하게 된다. 따라서, PAC 코드에 회귀적 컨볼루션을 적용하면, 상대적으로 적은 크기의 메모리로 컨볼루션 동작이 구현될 수 있다.
도 18 및 도 19는 회귀적 컨볼루션 동작을 예시한다. 특히, 도 18은 천이 레지스터의 개수가 1인, 즉, 제약 길이가 2인 회귀적 컨볼루션을 예시하고, 도 19는 천이 레지스터의 개수가 m인, 즉, 제약 길이가 m+1인 회귀적 컨볼루션을 예시한다.
도 18을 참조하면, un은 vn에 천이 레지스터 1에 저장된 un-1과 c1의 컨볼루션을 더하여 결정될 수 있다. 도 18에서 c1이 0이면 컨볼루션의 결과가 항상 0이 되므로, 제약이 없게 되어 컨볼루션을 적용하지 않은 것과 동일하게 된다. 따라서, 도 18의 예에서 c1는 1일 것이므로, 도 18의 회귀적 컨볼루션 동작은 un = vn + un-1로 표현될 수 있다.
도 19는 제약 길이 m+1인 회귀적 컨볼루션 동작을 예시한 것이다. 머더 코드크기 N인 PAC 코드로의 입력 u=[u1, u2, ..., uN]에 대해 도 19와 같은 회귀적 컨볼루션 동작을 수행하여 얻어지는 출력 v=[v1, v2, ..., vN]는 와 같이 표현될 수 있다.
예를 들어, 머더 코드 크기 N=16, 정보 크기 K=5, 현재 NR 표준의 정보/프로즌 비트 할당 방식에 따른 레이트 프로파일을 가정하면, v = [0, 0, 0, 0, 0, 0, 0, d0, 0, 0, 0, d1, 0, d2, d3, d4]이다. 메모리 크기가 1, 예를 들어, 천이 레지스터의 개수가 1인 회귀적인 컨볼루션 동작 un = vn + un-1을 가정했을 때, 컨볼루션 동작의 출력 u = [0, 0, 0, 0, 0, 0, 0, d0, d0, d0, d0, d0+d1, d0+d1, d0+d1+d2, d0+d1+d2+d3, d0+d1+d2+d3+d4]가 된다. 따라서, 머더 코드 크기 N=16 및 정보 크기 K=5에 대해 정보 비트들 사이에 위치하는 프로즌 비트들의 최대 개수가 3인데, 제약 길이가 3보다 작은 값으로 결정/설정되었더라도 컨볼루션 동작이 적용되지 않는 비트들이 없기 때문에 정보 비트들 간에 동일 오류 발생 확률이 달성될 수 있다.
PAC 코드에 회귀적 컨볼루션 동작을 도입하더라도 SC/SCL 디코딩 수행 시 필요한 재-인코딩 동작 및 메모리 상태 저장 동작은 동일하게 수행될 수 있다.
<레이트 프로파일>
레이트 프로파일 동작은 사용자 데이터를 신뢰도(reliability) 등의 기준을 이용하여 비트 인덱스(들)에 위치시킨다. 이를 위해서 폴라 코드의 정보/프로즌 비트 할당 방식이 적용될 수 있다. Arikan의 논문 “From sequential decoding to channel polarization and back again"에 의하면, 리드-뮬러(Reed-Muller, RM) 레이트 프로파일을 사용하는 것이 이진(binary) 입력 AWGN 채널에서 폴라 코드 레이트 프로파일보다 더 큰 용량(capacity)이 달성될 수 있다. 본 명세의 몇몇 구현들에서, 폴라 코드 레이트 프로파일에는 수학식 13의 Battahcaryya 파라미터를 이용하여 구한 신뢰도 순서가 적용될 수 있다. RM 레이트 프로파일은 비트 인덱스를 이진수로 표현했을 때 1의 개수에 해당하는 무게(weight)가 무거운 순서로 신뢰도 순서를 결정한다. 그러나, 다양한 정보 크기들을 지원해야 하는 경우, 동일한 무게를 갖는 비트 인덱스들의 신뢰도 순서가 결정되어야 한다. 이 때, 비트 인덱스의 확률론적 저감(stochastic degradation)의 정의를 활용한 부분적 순서(partial order, PO) 방식이 적용될 수 있다(참조: C. Schurch, “A partial order for the synthesized channels of a polar code").
W 1 및 W
2를 균등 이진 입력 채널(uniform binary input channel)들이라 하고 W
1을 통하여 X
1→Y
1, W
2을 통하여 X
2→Y
2인 전송 시스템이 가정될 수 있다. 이와 같은 전송 시스템에서, 의 관계를 만족하는 확률 분포(probability distributions) 가 존재할 때, W
1은 W
2에 대하여 확률적으로 저하된(stochastically degraded)다고 정의되고, W
1
W
2와 같이 표시한다. W
1
W
2의 관계를 만족하는 경우, I(W
1) <= I(W
2), Pe(W
1) >= Pe(W
2)가 된다. 즉, W
2를 통하여 전송하는 경우 낮은 오류율 또는 더 많은 정보량의 전송을 달성할 수 있다. 따라서, 폴라 코드의 비트 채널들 간의 확률적 저하(stochastic degradation) 관계를 구하면, 상기 폴라 코드의 비트 채널들의 신뢰도 순서가 구해질 수 있다. 다음은 비트 채널들 간의 확률적 저하 관계를 구할 수 있는 방법들을 예시한 것이다. 비트 채널들 i, j의 이진 표현을 i=(in-1,...,i0), j=(jn-1,...,j0)로 한다.
PO1은 다음과 같이 설명될 수 있다. 비트 채널 j에 대한 이진 표현이 비트 채널 i에 대한 이진 표현에서 상위 자리의 1을 하위 자리의 0과 바꾸어 얻을 수 있으면, 비트 채널 j는 비트 채널 i에 대하여 확률적으로 저하되어 있다고(stochastically degraded) 표현될 수 있다. 예를 들어, 머더 코드 크기 16의 경우, i = 12 =(1100), j=10=(1010) 와 같이 '1100'의 두 번째 1과 세 번째 0의 위치를 바꾸면 '1010'이 된다. 따라서, 10과 12는 W
16
(10)
W
16
(12)의 관계를 만족하게 된다.
또한, PO2는 다음과 같이 설명될 수 있다. 비트 채널 i의 이진 표현의 각 위치 별 비트들이 비트 채널 j의 이진 표현의 각 위치 별 비트들보다 크거나 같은 경우, 비트 채널 j는 비트 채널 i에 대하여 확률적으로 저하되어 있다고 표현될 수 있다. 예를 들어, 머더 코드 크기 16의 경우, i=14=(1110), j=12=(1100)와 같이 '1110'의 각 위치 별 비트들이 '1100'의 각 위치 별 비트들보다 크거나 같다. 따라서, 12과 14는 W
16
(12)
W
16
(14)의 관계를 만족하게 된다.
다음 표는 비트 인덱스의 무게와 PO를 결합한 레이트 프로파일을 결정하는 과정을 예시한다.
표 13에 따라 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}를 결정하면, 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}의 비트 인덱스들은 이진수로 표현될 때 1의 개수가 많을수록 신뢰도가 높으며, 이진수로 표현될 때 1의 개수가 동일한 비트 인덱스들 QN
x 및 QN
y은 QN
x < QN
y에 대해 W(QN
x) < W(QN
y)를 만족한다.
다음 표는 머더 코드 크기 N=16의 비트 인덱스의 무게를 예시한다. 다음 표의 예에서, 비트 인덱스들을 무게 순서로 나열하면 15, {7, 11, 13, 14}, {3, 5, 6, 9, 10, 12}, {1, 2, 4, 8}, 0 이고, 여기서 { } 내의 비트 인덱스(들)은 동일한 무게 값을 가진다. 따라서, 동일한 무게를 가진 무게 인덱스들의 신뢰도 순서를 PO를 이용해서 구하면, 무게가 3인 경우는 14, 13, 11, 7의 신뢰도 순서를 갖게 되고, 무게가 2인 경우는 12, 10, 9, 6, 5, 3의 신뢰도 순서를 갖게 되고, 무게가 1인 경우는 8, 4, 2, 1의 신뢰도 순서를 갖게 된다. 비트 인덱스의 무게와 PO를 결합하여 결정된, 비트 인덱스들의 최종 신뢰도 순서는 15, 14, 13, 11, 7, 12, 10, 9, 6, 5, 3, 8, 4, 2, 1, 0이 된다.
동일한 방식을 이용하여 더 큰 머더 코드 크기에 대해서도 비트 인덱스들의 신뢰도 순서가 결정될 수 있다. 이와 같은 방식으로 비트 인덱스들의 신뢰도 순서를 결정하면, 최소 거리 측면에서 우수한 성능을 가지게 되어 낮은 오류율을 요구하는 응용에 효과적이다.
다음 W
4096는 머더 코드 크기 N=4096일 때, 비트 인덱스들 0~4095를 비트 인덱스의 무게 및 PO를 고려하여 결정된 신뢰도의 오름차순으로 나열한 것이다.
W 4096 = [0, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 3, 5, 6, 9, 10, 12, 17, 18, 20, 24, 33, 34, 36, 40, 48, 65, 66, 68, 72, 80, 96, 129, 130, 132, 136, 144, 160, 192, 257, 258, 260, 264, 272, 288, 320, 384, 513, 514, 516, 520, 528, 544, 576, 640, 768, 1025, 1026, 1028, 1032, 1040, 1056, 1088, 1152, 1280, 1536, 2049, 2050, 2052, 2056, 2064, 2080, 2112, 2176, 2304, 2560, 3072, 7, 11, 13, 14, 19, 21, 22, 25, 26, 28, 35, 37, 38, 41, 42, 44, 49, 50, 52, 56, 67, 69, 70, 73, 74, 76, 81, 82, 84, 88, 97, 98, 100, 104, 112, 131, 133, 134, 137, 138, 140, 145, 146, 148, 152, 161, 162, 164, 168, 176, 193, 194, 196, 200, 208, 224, 259, 261, 262, 265, 266, 268, 273, 274, 276, 280, 289, 290, 292, 296, 304, 321, 322, 324, 328, 336, 352, 385, 386, 388, 392, 400, 416, 448, 515, 517, 518, 521, 522, 524, 529, 530, 532, 536, 545, 546, 548, 552, 560, 577, 578, 580, 584, 592, 608, 641, 642, 644, 648, 656, 672, 704, 769, 770, 772, 776, 784, 800, 832, 896, 1027, 1029, 1030, 1033, 1034, 1036, 1041, 1042, 1044, 1048, 1057, 1058, 1060, 1064, 1072, 1089, 1090, 1092, 1096, 1104, 1120, 1153, 1154, 1156, 1160, 1168, 1184, 1216, 1281, 1282, 1284, 1288, 1296, 1312, 1344, 1408, 1537, 1538, 1540, 1544, 1552, 1568, 1600, 1664, 1792, 2051, 2053, 2054, 2057, 2058, 2060, 2065, 2066, 2068, 2072, 2081, 2082, 2084, 2088, 2096, 2113, 2114, 2116, 2120, 2128, 2144, 2177, 2178, 2180, 2184, 2192, 2208, 2240, 2305, 2306, 2308, 2312, 2320, 2336, 2368, 2432, 2561, 2562, 2564, 2568, 2576, 2592, 2624, 2688, 2816, 3073, 3074, 3076, 3080, 3088, 3104, 3136, 3200, 3328, 3584, 15, 23, 27, 29, 30, 39, 43, 45, 46, 51, 53, 54, 57, 58, 60, 71, 75, 77, 78, 83, 85, 86, 89, 90, 92, 99, 101, 102, 105, 106, 108, 113, 114, 116, 120, 135, 139, 141, 142, 147, 149, 150, 153, 154, 156, 163, 165, 166, 169, 170, 172, 177, 178, 180, 184, 195, 197, 198, 201, 202, 204, 209, 210, 212, 216, 225, 226, 228, 232, 240, 263, 267, 269, 270, 275, 277, 278, 281, 282, 284, 291, 293, 294, 297, 298, 300, 305, 306, 308, 312, 323, 325, 326, 329, 330, 332, 337, 338, 340, 344, 353, 354, 356, 360, 368, 387, 389, 390, 393, 394, 396, 401, 402, 404, 408, 417, 418, 420, 424, 432, 449, 450, 452, 456, 464, 480, 519, 523, 525, 526, 531, 533, 534, 537, 538, 540, 547, 549, 550, 553, 554, 556, 561, 562, 564, 568, 579, 581, 582, 585, 586, 588, 593, 594, 596, 600, 609, 610, 612, 616, 624, 643, 645, 646, 649, 650, 652, 657, 658, 660, 664, 673, 674, 676, 680, 688, 705, 706, 708, 712, 720, 736, 771, 773, 774, 777, 778, 780, 785, 786, 788, 792, 801, 802, 804, 808, 816, 833, 834, 836, 840, 848, 864, 897, 898, 900, 904, 912, 928, 960, 1031, 1035, 1037, 1038, 1043, 1045, 1046, 1049, 1050, 1052, 1059, 1061, 1062, 1065, 1066, 1068, 1073, 1074, 1076, 1080, 1091, 1093, 1094, 1097, 1098, 1100, 1105, 1106, 1108, 1112, 1121, 1122, 1124, 1128, 1136, 1155, 1157, 1158, 1161, 1162, 1164, 1169, 1170, 1172, 1176, 1185, 1186, 1188, 1192, 1200, 1217, 1218, 1220, 1224, 1232, 1248, 1283, 1285, 1286, 1289, 1290, 1292, 1297, 1298, 1300, 1304, 1313, 1314, 1316, 1320, 1328, 1345, 1346, 1348, 1352, 1360, 1376, 1409, 1410, 1412, 1416, 1424, 1440, 1472, 1539, 1541, 1542, 1545, 1546, 1548, 1553, 1554, 1556, 1560, 1569, 1570, 1572, 1576, 1584, 1601, 1602, 1604, 1608, 1616, 1632, 1665, 1666, 1668, 1672, 1680, 1696, 1728, 1793, 1794, 1796, 1800, 1808, 1824, 1856, 1920, 2055, 2059, 2061, 2062, 2067, 2069, 2070, 2073, 2074, 2076, 2083, 2085, 2086, 2089, 2090, 2092, 2097, 2098, 2100, 2104, 2115, 2117, 2118, 2121, 2122, 2124, 2129, 2130, 2132, 2136, 2145, 2146, 2148, 2152, 2160, 2179, 2181, 2182, 2185, 2186, 2188, 2193, 2194, 2196, 2200, 2209, 2210, 2212, 2216, 2224, 2241, 2242, 2244, 2248, 2256, 2272, 2307, 2309, 2310, 2313, 2314, 2316, 2321, 2322, 2324, 2328, 2337, 2338, 2340, 2344, 2352, 2369, 2370, 2372, 2376, 2384, 2400, 2433, 2434, 2436, 2440, 2448, 2464, 2496, 2563, 2565, 2566, 2569, 2570, 2572, 2577, 2578, 2580, 2584, 2593, 2594, 2596, 2600, 2608, 2625, 2626, 2628, 2632, 2640, 2656, 2689, 2690, 2692, 2696, 2704, 2720, 2752, 2817, 2818, 2820, 2824, 2832, 2848, 2880, 2944, 3075, 3077, 3078, 3081, 3082, 3084, 3089, 3090, 3092, 3096, 3105, 3106, 3108, 3112, 3120, 3137, 3138, 3140, 3144, 3152, 3168, 3201, 3202, 3204, 3208, 3216, 3232, 3264, 3329, 3330, 3332, 3336, 3344, 3360, 3392, 3456, 3585, 3586, 3588, 3592, 3600, 3616, 3648, 3712, 3840, 31, 47, 55, 59, 61, 62, 79, 87, 91, 93, 94, 103, 107, 109, 110, 115, 117, 118, 121, 122, 124, 143, 151, 155, 157, 158, 167, 171, 173, 174, 179, 181, 182, 185, 186, 188, 199, 203, 205, 206, 211, 213, 214, 217, 218, 220, 227, 229, 230, 233, 234, 236, 241, 242, 244, 248, 271, 279, 283, 285, 286, 295, 299, 301, 302, 307, 309, 310, 313, 314, 316, 327, 331, 333, 334, 339, 341, 342, 345, 346, 348, 355, 357, 358, 361, 362, 364, 369, 370, 372, 376, 391, 395, 397, 398, 403, 405, 406, 409, 410, 412, 419, 421, 422, 425, 426, 428, 433, 434, 436, 440, 451, 453, 454, 457, 458, 460, 465, 466, 468, 472, 481, 482, 484, 488, 496, 527, 535, 539, 541, 542, 551, 555, 557, 558, 563, 565, 566, 569, 570, 572, 583, 587, 589, 590, 595, 597, 598, 601, 602, 604, 611, 613, 614, 617, 618, 620, 625, 626, 628, 632, 647, 651, 653, 654, 659, 661, 662, 665, 666, 668, 675, 677, 678, 681, 682, 684, 689, 690, 692, 696, 707, 709, 710, 713, 714, 716, 721, 722, 724, 728, 737, 738, 740, 744, 752, 775, 779, 781, 782, 787, 789, 790, 793, 794, 796, 803, 805, 806, 809, 810, 812, 817, 818, 820, 824, 835, 837, 838, 841, 842, 844, 849, 850, 852, 856, 865, 866, 868, 872, 880, 899, 901, 902, 905, 906, 908, 913, 914, 916, 920, 929, 930, 932, 936, 944, 961, 962, 964, 968, 976, 992, 1039, 1047, 1051, 1053, 1054, 1063, 1067, 1069, 1070, 1075, 1077, 1078, 1081, 1082, 1084, 1095, 1099, 1101, 1102, 1107, 1109, 1110, 1113, 1114, 1116, 1123, 1125, 1126, 1129, 1130, 1132, 1137, 1138, 1140, 1144, 1159, 1163, 1165, 1166, 1171, 1173, 1174, 1177, 1178, 1180, 1187, 1189, 1190, 1193, 1194, 1196, 1201, 1202, 1204, 1208, 1219, 1221, 1222, 1225, 1226, 1228, 1233, 1234, 1236, 1240, 1249, 1250, 1252, 1256, 1264, 1287, 1291, 1293, 1294, 1299, 1301, 1302, 1305, 1306, 1308, 1315, 1317, 1318, 1321, 1322, 1324, 1329, 1330, 1332, 1336, 1347, 1349, 1350, 1353, 1354, 1356, 1361, 1362, 1364, 1368, 1377, 1378, 1380, 1384, 1392, 1411, 1413, 1414, 1417, 1418, 1420, 1425, 1426, 1428, 1432, 1441, 1442, 1444, 1448, 1456, 1473, 1474, 1476, 1480, 1488, 1504, 1543, 1547, 1549, 1550, 1555, 1557, 1558, 1561, 1562, 1564, 1571, 1573, 1574, 1577, 1578, 1580, 1585, 1586, 1588, 1592, 1603, 1605, 1606, 1609, 1610, 1612, 1617, 1618, 1620, 1624, 1633, 1634, 1636, 1640, 1648, 1667, 1669, 1670, 1673, 1674, 1676, 1681, 1682, 1684, 1688, 1697, 1698, 1700, 1704, 1712, 1729, 1730, 1732, 1736, 1744, 1760, 1795, 1797, 1798, 1801, 1802, 1804, 1809, 1810, 1812, 1816, 1825, 1826, 1828, 1832, 1840, 1857, 1858, 1860, 1864, 1872, 1888, 1921, 1922, 1924, 1928, 1936, 1952, 1984, 2063, 2071, 2075, 2077, 2078, 2087, 2091, 2093, 2094, 2099, 2101, 2102, 2105, 2106, 2108, 2119, 2123, 2125, 2126, 2131, 2133, 2134, 2137, 2138, 2140, 2147, 2149, 2150, 2153, 2154, 2156, 2161, 2162, 2164, 2168, 2183, 2187, 2189, 2190, 2195, 2197, 2198, 2201, 2202, 2204, 2211, 2213, 2214, 2217, 2218, 2220, 2225, 2226, 2228, 2232, 2243, 2245, 2246, 2249, 2250, 2252, 2257, 2258, 2260, 2264, 2273, 2274, 2276, 2280, 2288, 2311, 2315, 2317, 2318, 2323, 2325, 2326, 2329, 2330, 2332, 2339, 2341, 2342, 2345, 2346, 2348, 2353, 2354, 2356, 2360, 2371, 2373, 2374, 2377, 2378, 2380, 2385, 2386, 2388, 2392, 2401, 2402, 2404, 2408, 2416, 2435, 2437, 2438, 2441, 2442, 2444, 2449, 2450, 2452, 2456, 2465, 2466, 2468, 2472, 2480, 2497, 2498, 2500, 2504, 2512, 2528, 2567, 2571, 2573, 2574, 2579, 2581, 2582, 2585, 2586, 2588, 2595, 2597, 2598, 2601, 2602, 2604, 2609, 2610, 2612, 2616, 2627, 2629, 2630, 2633, 2634, 2636, 2641, 2642, 2644, 2648, 2657, 2658, 2660, 2664, 2672, 2691, 2693, 2694, 2697, 2698, 2700, 2705, 2706, 2708, 2712, 2721, 2722, 2724, 2728, 2736, 2753, 2754, 2756, 2760, 2768, 2784, 2819, 2821, 2822, 2825, 2826, 2828, 2833, 2834, 2836, 2840, 2849, 2850, 2852, 2856, 2864, 2881, 2882, 2884, 2888, 2896, 2912, 2945, 2946, 2948, 2952, 2960, 2976, 3008, 3079, 3083, 3085, 3086, 3091, 3093, 3094, 3097, 3098, 3100, 3107, 3109, 3110, 3113, 3114, 3116, 3121, 3122, 3124, 3128, 3139, 3141, 3142, 3145, 3146, 3148, 3153, 3154, 3156, 3160, 3169, 3170, 3172, 3176, 3184, 3203, 3205, 3206, 3209, 3210, 3212, 3217, 3218, 3220, 3224, 3233, 3234, 3236, 3240, 3248, 3265, 3266, 3268, 3272, 3280, 3296, 3331, 3333, 3334, 3337, 3338, 3340, 3345, 3346, 3348, 3352, 3361, 3362, 3364, 3368, 3376, 3393, 3394, 3396, 3400, 3408, 3424, 3457, 3458, 3460, 3464, 3472, 3488, 3520, 3587, 3589, 3590, 3593, 3594, 3596, 3601, 3602, 3604, 3608, 3617, 3618, 3620, 3624, 3632, 3649, 3650, 3652, 3656, 3664, 3680, 3713, 3714, 3716, 3720, 3728, 3744, 3776, 3841, 3842, 3844, 3848, 3856, 3872, 3904, 3968, 63, 95, 111, 119, 123, 125, 126, 159, 175, 183, 187, 189, 190, 207, 215, 219, 221, 222, 231, 235, 237, 238, 243, 245, 246, 249, 250, 252, 287, 303, 311, 315, 317, 318, 335, 343, 347, 349, 350, 359, 363, 365, 366, 371, 373, 374, 377, 378, 380, 399, 407, 411, 413, 414, 423, 427, 429, 430, 435, 437, 438, 441, 442, 444, 455, 459, 461, 462, 467, 469, 470, 473, 474, 476, 483, 485, 486, 489, 490, 492, 497, 498, 500, 504, 543, 559, 567, 571, 573, 574, 591, 599, 603, 605, 606, 615, 619, 621, 622, 627, 629, 630, 633, 634, 636, 655, 663, 667, 669, 670, 679, 683, 685, 686, 691, 693, 694, 697, 698, 700, 711, 715, 717, 718, 723, 725, 726, 729, 730, 732, 739, 741, 742, 745, 746, 748, 753, 754, 756, 760, 783, 791, 795, 797, 798, 807, 811, 813, 814, 819, 821, 822, 825, 826, 828, 839, 843, 845, 846, 851, 853, 854, 857, 858, 860, 867, 869, 870, 873, 874, 876, 881, 882, 884, 888, 903, 907, 909, 910, 915, 917, 918, 921, 922, 924, 931, 933, 934, 937, 938, 940, 945, 946, 948, 952, 963, 965, 966, 969, 970, 972, 977, 978, 980, 984, 993, 994, 996, 1000, 1008, 1055, 1071, 1079, 1083, 1085, 1086, 1103, 1111, 1115, 1117, 1118, 1127, 1131, 1133, 1134, 1139, 1141, 1142, 1145, 1146, 1148, 1167, 1175, 1179, 1181, 1182, 1191, 1195, 1197, 1198, 1203, 1205, 1206, 1209, 1210, 1212, 1223, 1227, 1229, 1230, 1235, 1237, 1238, 1241, 1242, 1244, 1251, 1253, 1254, 1257, 1258, 1260, 1265, 1266, 1268, 1272, 1295, 1303, 1307, 1309, 1310, 1319, 1323, 1325, 1326, 1331, 1333, 1334, 1337, 1338, 1340, 1351, 1355, 1357, 1358, 1363, 1365, 1366, 1369, 1370, 1372, 1379, 1381, 1382, 1385, 1386, 1388, 1393, 1394, 1396, 1400, 1415, 1419, 1421, 1422, 1427, 1429, 1430, 1433, 1434, 1436, 1443, 1445, 1446, 1449, 1450, 1452, 1457, 1458, 1460, 1464, 1475, 1477, 1478, 1481, 1482, 1484, 1489, 1490, 1492, 1496, 1505, 1506, 1508, 1512, 1520, 1551, 1559, 1563, 1565, 1566, 1575, 1579, 1581, 1582, 1587, 1589, 1590, 1593, 1594, 1596, 1607, 1611, 1613, 1614, 1619, 1621, 1622, 1625, 1626, 1628, 1635, 1637, 1638, 1641, 1642, 1644, 1649, 1650, 1652, 1656, 1671, 1675, 1677, 1678, 1683, 1685, 1686, 1689, 1690, 1692, 1699, 1701, 1702, 1705, 1706, 1708, 1713, 1714, 1716, 1720, 1731, 1733, 1734, 1737, 1738, 1740, 1745, 1746, 1748, 1752, 1761, 1762, 1764, 1768, 1776, 1799, 1803, 1805, 1806, 1811, 1813, 1814, 1817, 1818, 1820, 1827, 1829, 1830, 1833, 1834, 1836, 1841, 1842, 1844, 1848, 1859, 1861, 1862, 1865, 1866, 1868, 1873, 1874, 1876, 1880, 1889, 1890, 1892, 1896, 1904, 1923, 1925, 1926, 1929, 1930, 1932, 1937, 1938, 1940, 1944, 1953, 1954, 1956, 1960, 1968, 1985, 1986, 1988, 1992, 2000, 2016, 2079, 2095, 2103, 2107, 2109, 2110, 2127, 2135, 2139, 2141, 2142, 2151, 2155, 2157, 2158, 2163, 2165, 2166, 2169, 2170, 2172, 2191, 2199, 2203, 2205, 2206, 2215, 2219, 2221, 2222, 2227, 2229, 2230, 2233, 2234, 2236, 2247, 2251, 2253, 2254, 2259, 2261, 2262, 2265, 2266, 2268, 2275, 2277, 2278, 2281, 2282, 2284, 2289, 2290, 2292, 2296, 2319, 2327, 2331, 2333, 2334, 2343, 2347, 2349, 2350, 2355, 2357, 2358, 2361, 2362, 2364, 2375, 2379, 2381, 2382, 2387, 2389, 2390, 2393, 2394, 2396, 2403, 2405, 2406, 2409, 2410, 2412, 2417, 2418, 2420, 2424, 2439, 2443, 2445, 2446, 2451, 2453, 2454, 2457, 2458, 2460, 2467, 2469, 2470, 2473, 2474, 2476, 2481, 2482, 2484, 2488, 2499, 2501, 2502, 2505, 2506, 2508, 2513, 2514, 2516, 2520, 2529, 2530, 2532, 2536, 2544, 2575, 2583, 2587, 2589, 2590, 2599, 2603, 2605, 2606, 2611, 2613, 2614, 2617, 2618, 2620, 2631, 2635, 2637, 2638, 2643, 2645, 2646, 2649, 2650, 2652, 2659, 2661, 2662, 2665, 2666, 2668, 2673, 2674, 2676, 2680, 2695, 2699, 2701, 2702, 2707, 2709, 2710, 2713, 2714, 2716, 2723, 2725, 2726, 2729, 2730, 2732, 2737, 2738, 2740, 2744, 2755, 2757, 2758, 2761, 2762, 2764, 2769, 2770, 2772, 2776, 2785, 2786, 2788, 2792, 2800, 2823, 2827, 2829, 2830, 2835, 2837, 2838, 2841, 2842, 2844, 2851, 2853, 2854, 2857, 2858, 2860, 2865, 2866, 2868, 2872, 2883, 2885, 2886, 2889, 2890, 2892, 2897, 2898, 2900, 2904, 2913, 2914, 2916, 2920, 2928, 2947, 2949, 2950, 2953, 2954, 2956, 2961, 2962, 2964, 2968, 2977, 2978, 2980, 2984, 2992, 3009, 3010, 3012, 3016, 3024, 3040, 3087, 3095, 3099, 3101, 3102, 3111, 3115, 3117, 3118, 3123, 3125, 3126, 3129, 3130, 3132, 3143, 3147, 3149, 3150, 3155, 3157, 3158, 3161, 3162, 3164, 3171, 3173, 3174, 3177, 3178, 3180, 3185, 3186, 3188, 3192, 3207, 3211, 3213, 3214, 3219, 3221, 3222, 3225, 3226, 3228, 3235, 3237, 3238, 3241, 3242, 3244, 3249, 3250, 3252, 3256, 3267, 3269, 3270, 3273, 3274, 3276, 3281, 3282, 3284, 3288, 3297, 3298, 3300, 3304, 3312, 3335, 3339, 3341, 3342, 3347, 3349, 3350, 3353, 3354, 3356, 3363, 3365, 3366, 3369, 3370, 3372, 3377, 3378, 3380, 3384, 3395, 3397, 3398, 3401, 3402, 3404, 3409, 3410, 3412, 3416, 3425, 3426, 3428, 3432, 3440, 3459, 3461, 3462, 3465, 3466, 3468, 3473, 3474, 3476, 3480, 3489, 3490, 3492, 3496, 3504, 3521, 3522, 3524, 3528, 3536, 3552, 3591, 3595, 3597, 3598, 3603, 3605, 3606, 3609, 3610, 3612, 3619, 3621, 3622, 3625, 3626, 3628, 3633, 3634, 3636, 3640, 3651, 3653, 3654, 3657, 3658, 3660, 3665, 3666, 3668, 3672, 3681, 3682, 3684, 3688, 3696, 3715, 3717, 3718, 3721, 3722, 3724, 3729, 3730, 3732, 3736, 3745, 3746, 3748, 3752, 3760, 3777, 3778, 3780, 3784, 3792, 3808, 3843, 3845, 3846, 3849, 3850, 3852, 3857, 3858, 3860, 3864, 3873, 3874, 3876, 3880, 3888, 3905, 3906, 3908, 3912, 3920, 3936, 3969, 3970, 3972, 3976, 3984, 4000, 4032, 127, 191, 223, 239, 247, 251, 253, 254, 319, 351, 367, 375, 379, 381, 382, 415, 431, 439, 443, 445, 446, 463, 471, 475, 477, 478, 487, 491, 493, 494, 499, 501, 502, 505, 506, 508, 575, 607, 623, 631, 635, 637, 638, 671, 687, 695, 699, 701, 702, 719, 727, 731, 733, 734, 743, 747, 749, 750, 755, 757, 758, 761, 762, 764, 799, 815, 823, 827, 829, 830, 847, 855, 859, 861, 862, 871, 875, 877, 878, 883, 885, 886, 889, 890, 892, 911, 919, 923, 925, 926, 935, 939, 941, 942, 947, 949, 950, 953, 954, 956, 967, 971, 973, 974, 979, 981, 982, 985, 986, 988, 995, 997, 998, 1001, 1002, 1004, 1009, 1010, 1012, 1016, 1087, 1119, 1135, 1143, 1147, 1149, 1150, 1183, 1199, 1207, 1211, 1213, 1214, 1231, 1239, 1243, 1245, 1246, 1255, 1259, 1261, 1262, 1267, 1269, 1270, 1273, 1274, 1276, 1311, 1327, 1335, 1339, 1341, 1342, 1359, 1367, 1371, 1373, 1374, 1383, 1387, 1389, 1390, 1395, 1397, 1398, 1401, 1402, 1404, 1423, 1431, 1435, 1437, 1438, 1447, 1451, 1453, 1454, 1459, 1461, 1462, 1465, 1466, 1468, 1479, 1483, 1485, 1486, 1491, 1493, 1494, 1497, 1498, 1500, 1507, 1509, 1510, 1513, 1514, 1516, 1521, 1522, 1524, 1528, 1567, 1583, 1591, 1595, 1597, 1598, 1615, 1623, 1627, 1629, 1630, 1639, 1643, 1645, 1646, 1651, 1653, 1654, 1657, 1658, 1660, 1679, 1687, 1691, 1693, 1694, 1703, 1707, 1709, 1710, 1715, 1717, 1718, 1721, 1722, 1724, 1735, 1739, 1741, 1742, 1747, 1749, 1750, 1753, 1754, 1756, 1763, 1765, 1766, 1769, 1770, 1772, 1777, 1778, 1780, 1784, 1807, 1815, 1819, 1821, 1822, 1831, 1835, 1837, 1838, 1843, 1845, 1846, 1849, 1850, 1852, 1863, 1867, 1869, 1870, 1875, 1877, 1878, 1881, 1882, 1884, 1891, 1893, 1894, 1897, 1898, 1900, 1905, 1906, 1908, 1912, 1927, 1931, 1933, 1934, 1939, 1941, 1942, 1945, 1946, 1948, 1955, 1957, 1958, 1961, 1962, 1964, 1969, 1970, 1972, 1976, 1987, 1989, 1990, 1993, 1994, 1996, 2001, 2002, 2004, 2008, 2017, 2018, 2020, 2024, 2032, 2111, 2143, 2159, 2167, 2171, 2173, 2174, 2207, 2223, 2231, 2235, 2237, 2238, 2255, 2263, 2267, 2269, 2270, 2279, 2283, 2285, 2286, 2291, 2293, 2294, 2297, 2298, 2300, 2335, 2351, 2359, 2363, 2365, 2366, 2383, 2391, 2395, 2397, 2398, 2407, 2411, 2413, 2414, 2419, 2421, 2422, 2425, 2426, 2428, 2447, 2455, 2459, 2461, 2462, 2471, 2475, 2477, 2478, 2483, 2485, 2486, 2489, 2490, 2492, 2503, 2507, 2509, 2510, 2515, 2517, 2518, 2521, 2522, 2524, 2531, 2533, 2534, 2537, 2538, 2540, 2545, 2546, 2548, 2552, 2591, 2607, 2615, 2619, 2621, 2622, 2639, 2647, 2651, 2653, 2654, 2663, 2667, 2669, 2670, 2675, 2677, 2678, 2681, 2682, 2684, 2703, 2711, 2715, 2717, 2718, 2727, 2731, 2733, 2734, 2739, 2741, 2742, 2745, 2746, 2748, 2759, 2763, 2765, 2766, 2771, 2773, 2774, 2777, 2778, 2780, 2787, 2789, 2790, 2793, 2794, 2796, 2801, 2802, 2804, 2808, 2831, 2839, 2843, 2845, 2846, 2855, 2859, 2861, 2862, 2867, 2869, 2870, 2873, 2874, 2876, 2887, 2891, 2893, 2894, 2899, 2901, 2902, 2905, 2906, 2908, 2915, 2917, 2918, 2921, 2922, 2924, 2929, 2930, 2932, 2936, 2951, 2955, 2957, 2958, 2963, 2965, 2966, 2969, 2970, 2972, 2979, 2981, 2982, 2985, 2986, 2988, 2993, 2994, 2996, 3000, 3011, 3013, 3014, 3017, 3018, 3020, 3025, 3026, 3028, 3032, 3041, 3042, 3044, 3048, 3056, 3103, 3119, 3127, 3131, 3133, 3134, 3151, 3159, 3163, 3165, 3166, 3175, 3179, 3181, 3182, 3187, 3189, 3190, 3193, 3194, 3196, 3215, 3223, 3227, 3229, 3230, 3239, 3243, 3245, 3246, 3251, 3253, 3254, 3257, 3258, 3260, 3271, 3275, 3277, 3278, 3283, 3285, 3286, 3289, 3290, 3292, 3299, 3301, 3302, 3305, 3306, 3308, 3313, 3314, 3316, 3320, 3343, 3351, 3355, 3357, 3358, 3367, 3371, 3373, 3374, 3379, 3381, 3382, 3385, 3386, 3388, 3399, 3403, 3405, 3406, 3411, 3413, 3414, 3417, 3418, 3420, 3427, 3429, 3430, 3433, 3434, 3436, 3441, 3442, 3444, 3448, 3463, 3467, 3469, 3470, 3475, 3477, 3478, 3481, 3482, 3484, 3491, 3493, 3494, 3497, 3498, 3500, 3505, 3506, 3508, 3512, 3523, 3525, 3526, 3529, 3530, 3532, 3537, 3538, 3540, 3544, 3553, 3554, 3556, 3560, 3568, 3599, 3607, 3611, 3613, 3614, 3623, 3627, 3629, 3630, 3635, 3637, 3638, 3641, 3642, 3644, 3655, 3659, 3661, 3662, 3667, 3669, 3670, 3673, 3674, 3676, 3683, 3685, 3686, 3689, 3690, 3692, 3697, 3698, 3700, 3704, 3719, 3723, 3725, 3726, 3731, 3733, 3734, 3737, 3738, 3740, 3747, 3749, 3750, 3753, 3754, 3756, 3761, 3762, 3764, 3768, 3779, 3781, 3782, 3785, 3786, 3788, 3793, 3794, 3796, 3800, 3809, 3810, 3812, 3816, 3824, 3847, 3851, 3853, 3854, 3859, 3861, 3862, 3865, 3866, 3868, 3875, 3877, 3878, 3881, 3882, 3884, 3889, 3890, 3892, 3896, 3907, 3909, 3910, 3913, 3914, 3916, 3921, 3922, 3924, 3928, 3937, 3938, 3940, 3944, 3952, 3971, 3973, 3974, 3977, 3978, 3980, 3985, 3986, 3988, 3992, 4001, 4002, 4004, 4008, 4016, 4033, 4034, 4036, 4040, 4048, 4064, 255, 383, 447, 479, 495, 503, 507, 509, 510, 639, 703, 735, 751, 759, 763, 765, 766, 831, 863, 879, 887, 891, 893, 894, 927, 943, 951, 955, 957, 958, 975, 983, 987, 989, 990, 999, 1003, 1005, 1006, 1011, 1013, 1014, 1017, 1018, 1020, 1151, 1215, 1247, 1263, 1271, 1275, 1277, 1278, 1343, 1375, 1391, 1399, 1403, 1405, 1406, 1439, 1455, 1463, 1467, 1469, 1470, 1487, 1495, 1499, 1501, 1502, 1511, 1515, 1517, 1518, 1523, 1525, 1526, 1529, 1530, 1532, 1599, 1631, 1647, 1655, 1659, 1661, 1662, 1695, 1711, 1719, 1723, 1725, 1726, 1743, 1751, 1755, 1757, 1758, 1767, 1771, 1773, 1774, 1779, 1781, 1782, 1785, 1786, 1788, 1823, 1839, 1847, 1851, 1853, 1854, 1871, 1879, 1883, 1885, 1886, 1895, 1899, 1901, 1902, 1907, 1909, 1910, 1913, 1914, 1916, 1935, 1943, 1947, 1949, 1950, 1959, 1963, 1965, 1966, 1971, 1973, 1974, 1977, 1978, 1980, 1991, 1995, 1997, 1998, 2003, 2005, 2006, 2009, 2010, 2012, 2019, 2021, 2022, 2025, 2026, 2028, 2033, 2034, 2036, 2040, 2175, 2239, 2271, 2287, 2295, 2299, 2301, 2302, 2367, 2399, 2415, 2423, 2427, 2429, 2430, 2463, 2479, 2487, 2491, 2493, 2494, 2511, 2519, 2523, 2525, 2526, 2535, 2539, 2541, 2542, 2547, 2549, 2550, 2553, 2554, 2556, 2623, 2655, 2671, 2679, 2683, 2685, 2686, 2719, 2735, 2743, 2747, 2749, 2750, 2767, 2775, 2779, 2781, 2782, 2791, 2795, 2797, 2798, 2803, 2805, 2806, 2809, 2810, 2812, 2847, 2863, 2871, 2875, 2877, 2878, 2895, 2903, 2907, 2909, 2910, 2919, 2923, 2925, 2926, 2931, 2933, 2934, 2937, 2938, 2940, 2959, 2967, 2971, 2973, 2974, 2983, 2987, 2989, 2990, 2995, 2997, 2998, 3001, 3002, 3004, 3015, 3019, 3021, 3022, 3027, 3029, 3030, 3033, 3034, 3036, 3043, 3045, 3046, 3049, 3050, 3052, 3057, 3058, 3060, 3064, 3135, 3167, 3183, 3191, 3195, 3197, 3198, 3231, 3247, 3255, 3259, 3261, 3262, 3279, 3287, 3291, 3293, 3294, 3303, 3307, 3309, 3310, 3315, 3317, 3318, 3321, 3322, 3324, 3359, 3375, 3383, 3387, 3389, 3390, 3407, 3415, 3419, 3421, 3422, 3431, 3435, 3437, 3438, 3443, 3445, 3446, 3449, 3450, 3452, 3471, 3479, 3483, 3485, 3486, 3495, 3499, 3501, 3502, 3507, 3509, 3510, 3513, 3514, 3516, 3527, 3531, 3533, 3534, 3539, 3541, 3542, 3545, 3546, 3548, 3555, 3557, 3558, 3561, 3562, 3564, 3569, 3570, 3572, 3576, 3615, 3631, 3639, 3643, 3645, 3646, 3663, 3671, 3675, 3677, 3678, 3687, 3691, 3693, 3694, 3699, 3701, 3702, 3705, 3706, 3708, 3727, 3735, 3739, 3741, 3742, 3751, 3755, 3757, 3758, 3763, 3765, 3766, 3769, 3770, 3772, 3783, 3787, 3789, 3790, 3795, 3797, 3798, 3801, 3802, 3804, 3811, 3813, 3814, 3817, 3818, 3820, 3825, 3826, 3828, 3832, 3855, 3863, 3867, 3869, 3870, 3879, 3883, 3885, 3886, 3891, 3893, 3894, 3897, 3898, 3900, 3911, 3915, 3917, 3918, 3923, 3925, 3926, 3929, 3930, 3932, 3939, 3941, 3942, 3945, 3946, 3948, 3953, 3954, 3956, 3960, 3975, 3979, 3981, 3982, 3987, 3989, 3990, 3993, 3994, 3996, 4003, 4005, 4006, 4009, 4010, 4012, 4017, 4018, 4020, 4024, 4035, 4037, 4038, 4041, 4042, 4044, 4049, 4050, 4052, 4056, 4065, 4066, 4068, 4072, 4080, 511, 767, 895, 959, 991, 1007, 1015, 1019, 1021, 1022, 1279, 1407, 1471, 1503, 1519, 1527, 1531, 1533, 1534, 1663, 1727, 1759, 1775, 1783, 1787, 1789, 1790, 1855, 1887, 1903, 1911, 1915, 1917, 1918, 1951, 1967, 1975, 1979, 1981, 1982, 1999, 2007, 2011, 2013, 2014, 2023, 2027, 2029, 2030, 2035, 2037, 2038, 2041, 2042, 2044, 2303, 2431, 2495, 2527, 2543, 2551, 2555, 2557, 2558, 2687, 2751, 2783, 2799, 2807, 2811, 2813, 2814, 2879, 2911, 2927, 2935, 2939, 2941, 2942, 2975, 2991, 2999, 3003, 3005, 3006, 3023, 3031, 3035, 3037, 3038, 3047, 3051, 3053, 3054, 3059, 3061, 3062, 3065, 3066, 3068, 3199, 3263, 3295, 3311, 3319, 3323, 3325, 3326, 3391, 3423, 3439, 3447, 3451, 3453, 3454, 3487, 3503, 3511, 3515, 3517, 3518, 3535, 3543, 3547, 3549, 3550, 3559, 3563, 3565, 3566, 3571, 3573, 3574, 3577, 3578, 3580, 3647, 3679, 3695, 3703, 3707, 3709, 3710, 3743, 3759, 3767, 3771, 3773, 3774, 3791, 3799, 3803, 3805, 3806, 3815, 3819, 3821, 3822, 3827, 3829, 3830, 3833, 3834, 3836, 3871, 3887, 3895, 3899, 3901, 3902, 3919, 3927, 3931, 3933, 3934, 3943, 3947, 3949, 3950, 3955, 3957, 3958, 3961, 3962, 3964, 3983, 3991, 3995, 3997, 3998, 4007, 4011, 4013, 4014, 4019, 4021, 4022, 4025, 4026, 4028, 4039, 4043, 4045, 4046, 4051, 4053, 4054, 4057, 4058, 4060, 4067, 4069, 4070, 4073, 4074, 4076, 4081, 4082, 4084, 4088, 1023, 1535, 1791, 1919, 1983, 2015, 2031, 2039, 2043, 2045, 2046, 2559, 2815, 2943, 3007, 3039, 3055, 3063, 3067, 3069, 3070, 3327, 3455, 3519, 3551, 3567, 3575, 3579, 3581, 3582, 3711, 3775, 3807, 3823, 3831, 3835, 3837, 3838, 3903, 3935, 3951, 3959, 3963, 3965, 3966, 3999, 4015, 4023, 4027, 4029, 4030, 4047, 4055, 4059, 4061, 4062, 4071, 4075, 4077, 4078, 4083, 4085, 4086, 4089, 4090, 4092, 2047, 3071, 3583, 3839, 3967, 4031, 4063, 4079, 4087, 4091, 4093, 4094, 4095]
본 명세의 몇몇 구현들에 의하면, RM 프로파일 방식을 기본으로 동일한 무게를 가지는 비트 채널들에 대해서는 PO 방식을 적용하여 정보/프로즌 비트들이 결정될 수 있다. 이를 통해, 코드워드들간 최소 거리를 최대화함으로써 폴라 코드에 기반한 채널 코딩의 성능이 개선될 수 있다. 또한, 본 명세의 몇몇 구현들에 의하면, 코드워드들 간 최소 거리를 최대화하면서도 다양한 정보 크기들이 PAC 코드에서 지원될 수 있다.
도 20은 본 명세의 몇몇 구현들에 따른, 채널 인코딩 과정을 예시한다.
통신 기기 혹은 인코더는 채널 인코딩과 관련하여 본 명세의 몇몇 구현들에 따른 동작들을 수행할 수 있다. 상기 통신 기기 혹은 인코더는 적어도 하나의 송수신기; 적어도 하나의 프로세서; 및 상기 적어도 하나의 프로세서에 동작 가능하게 연결 가능한, 그리고, 실행될 때, 상기 적어도 하나의 프로세서로 하여금 본 명세의 몇몇 구현들에 따른 동작들을 수행하도록 하는 명령(instruction)들을 저장한, 적어도 하나의 컴퓨터 메모리를 포함할 수 있다. 상기 통신 기기 혹은 인코더를 위한 프로세싱 장치는 적어도 하나의 프로세서; 및 상기 적어도 하나의 프로세서에 동작 가능하게 연결 가능한, 그리고, 실행될 때, 상기 적어도 하나의 프로세서로 하여금 본 명세의 몇몇 구현들에 따른 동작들을 수행하도록 하는 명령(instruction)들을 저장한, 적어도 하나의 컴퓨터 메모리를 포함할 수 있다. 컴퓨터 판독 가능 (비휘발성) 저장 매체는 적어도 하나의 프로세서에 의해 실행될 때, 상기 적어도 하나의 프로세서로 하여금 본 명세의 몇몇 구현들에 따른 동작들을 수행하도록 하는 지시들을 포함하는 적어도 하나의 컴퓨터 프로그램을 저장할 수 있다. 컴퓨터 프로그램 혹은 컴퓨터 프로그램 제품(product)은 적어도 하나의 컴퓨터 판독가능한 (비휘발성) 저장 매체에 기록되며, 실행될 때, (적어도 하나의 프로세서로 하여금) 본 명세의 몇몇 구현들에 따른 동작들을 수행하도록 하는 지시들을 포함할 수 있다. 도 20을 참조하면, 상기 통신 기기, 상기 인코더, 상기 프로세싱 장치, 상기 컴퓨터 판독 가능 (비휘발성) 저장 매체, 및/또는 상기 컴퓨터 프로그램 제품에서, 상기 동작들은: 폴라 코드의 길이 N, 정보 블록의 길이 K, 길이 N인 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}를 기반으로 상기 폴라 코드로의 입력 u_n를 (S2001); 상기 입력 u_n를 길이 N인 상기 폴라 코드와 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}를 기반으로 인코딩하는 것을 기반으로 코딩된 비트들을 결정(S2003); 및 상기 코딩된 비트들을 다른 통신 기기에게 전송하는 것을 포함한다(S2005). 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}는 신뢰도 W(QN
0)<W(QN
1)<...<W(QN
N-1)의 오름차순으로 정의된 것이며, 여기서 0 <= QN
i <= N - 1는 i = 0, 1, ..., N - 1에 대한 비트 인덱스이고, W(QN
i)는 비트 인덱스 QN
i의 신뢰도이다. 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}의 비트 인덱스들은 다음을 만족하는: i) 이진수로 표현될 때 1의 개수가 많을수록 신뢰도고 높으며, ii) 이진수로 표현될 때 1의 개수가 동일한 비트 인덱스들은 QN
x < QN
y에 대해 W(QN
x) < W(QN
y). 여기서, v_n과 u_n은 각각 길이 N인 시퀀스 혹은 벡터이다.
몇몇 구현들에서, 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}는 전술한 폴라 시퀀스 W
4096의 서브셋일 수 있다.
몇몇 구현들에서, 상기 입력 u_n를 결정하는 것은: 상기 폴라 코드의 길이 N, 상기 정보 블록의 길이 K, 상기 길이 N인 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}를 기반으로 컨볼루션을 위한 입력 v_n을 결정; 및 상기 입력 v_n에 대해 상기 컨볼루션을 수행하는 것을 기반으로 상기 입력 u_n을 결정하는 것을 포함할 수 있다. 여기서, 상기 입력 v_n를 결정하는 것은 길이 N인 상기 폴라 코드의 입력 인덱스들 0 ~ N - 1 중 상기 정보 블록의 K개 비트들이 배치될 K개 입력 인덱스들과 프로즌될 입력 인덱스들을 결정하는 것을 포함할 수 있다.
몇몇 구현들에서, 상기 입력 u_n를 결정하는 것은: 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}를 기반으로 길이 N인 상기 폴라 코드의 입력 인덱스들 0 ~ N - 1 중 상기 정보 블록의 K개 비트들이 배치될 K개 입력 인덱스들과 프로즌될 입력 인덱스들을 결정하는 것을 포함한다.
몇몇 구현들에서, 상기 컨볼루션을 수행하는 것은: 머더 코드 크기들에 대한 천이 레지스터들의 미리 결정된 개수들 중 상기 폴라 코드의 길이 N을 기반으로 천이 레지스터들의 개수를 결정; 및 상기 결정된 개수의 천이 레지스터를 기반으로 상기 입력 v_n에 대한 컨벌루션을 수행하는 것을 포함할 수 있다.
몇몇 구현들에서, 상기 천이 레지스터들의 상기 미리 결정된 개수들은 상기 머더 코드 크기들에 대한 각각의 연속한 프로즌 비트들의 최대 개수들보다 크거나 같을 수 있다.
몇몇 구현들에서, 상기 컨볼루션을 수행하는 것은: 를 기반으로 상기 입력 u_n을 결정하는 것을 포함할 수 있다. 여기서, un = u_n이고, vn = v_n이다. 예를 들어, 상기 컨볼루션을 수행하는 것은: v_n + u_(n-1)을 기반으로 상기 제2 입력 u_n을 결정하는 것을 포함하며, 여기서 u_(n-1)은 상기 컨볼루션의 이전 컨볼루션을 기반으로 천이 레지스터들에 저장된 값들의 시퀀스일 수 있다.
몇몇 구현들에서, 상이한 머더 코드 크기들에 대해 동일 개수의 천이 레지스터들이 사용될 수 있다.
도 21은 본 명세의 몇몇 구현들에 따른, 채널 디코딩 과정을 예시한다.
통신 기기 혹은 디코더는 채널 디코딩과 관련하여 본 명세의 몇몇 구현들에 따른 동작들을 수행할 수 있다. 상기 통신 기기는 적어도 하나의 송수신기; 적어도 하나의 프로세서; 및 상기 적어도 하나의 프로세서에 동작 가능하게 연결 가능한, 그리고, 실행될 때, 상기 적어도 하나의 프로세서로 하여금 본 명세의 몇몇 구현들에 따른 동작들을 수행하도록 하는 명령(instruction)들을 저장한, 적어도 하나의 컴퓨터 메모리를 포함할 수 있다. 상기 통신 기기 혹은 디코더를 위한 프로세싱 장치는 적어도 하나의 프로세서; 및 상기 적어도 하나의 프로세서에 동작 가능하게 연결 가능한, 그리고, 실행될 때, 상기 적어도 하나의 프로세서로 하여금 본 명세의 몇몇 구현들에 따른 동작들을 수행하도록 하는 명령(instruction)들을 저장한, 적어도 하나의 컴퓨터 메모리를 포함할 수 있다. 컴퓨터 판독 가능 (비휘발성) 저장 매체는 적어도 하나의 프로세서에 의해 실행될 때, 상기 적어도 하나의 프로세서로 하여금 본 명세의 몇몇 구현들에 따른 동작들을 수행하도록 하는 지시들을 포함하는 적어도 하나의 컴퓨터 프로그램을 저장할 수 있다. 컴퓨터 프로그램 혹은 컴퓨터 프로그램 제품(product)은 적어도 하나의 컴퓨터 판독가능한 (비휘발성) 저장 매체에 기록되며, 실행될 때, (적어도 하나의 프로세서로 하여금) 본 명세의 몇몇 구현들에 따른 동작들을 수행하도록 하는 지시들을 포함할 수 있다. 도 18을 참조하면, 상기 통신 기기, 상기 디코더, 상기 프로세싱 장치, 상기 컴퓨터 판독 가능 (비휘발성) 저장 매체, 및/또는 상기 컴퓨터 프로그램 제품에서, 상기 동작들은: 다른 통신 기기로부터 코딩된 비트들을 수신(S2101); 및 상기 코딩된 비트들을 길이 N인 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}를 기반으로 디코딩하여(2103), 정보 블록을 결정하는 것을 포함한다.
몇몇 구현들에서, 길이 N인 상기 폴라 시퀀스 Q
N-1
0 = {Q0,, Q1, ..., QN-1}는 전술한 폴라 시퀀스 W
4096의 서브셋일 수 있다.
상술한 바와 같이 개시된 본 명세의 예들은 본 명세와 관련된 기술분야의 통상의 기술자가 본 명세를 구현하고 실시할 수 있도록 제공되었다. 상기에서는 본 명세의 예들을 참조하여 설명하였지만, 해당 기술 분야의 통상의 기술자는 본 명세의 예들을 다양하게 수정 및 변경시킬 수 있다. 따라서, 본 명세는 여기에 기재된 예들에 제한되려는 것이 아니라, 여기서 개시된 원리들 및 신규한 특징들과 일치하는 최광의 범위를 부여하려는 것이다.
본 명세의 구현들은 무선 통신 시스템에서, BS 또는 사용자기기, 기타 다른 장비에 사용될 수 있다.
Claims (10)
- 무선 통신 시스템에서 통신 기기가 정보 블록을 인코딩함에 있어서,폴라 코드의 길이 N, 상기 정보 블록의 길이 K, 길이 N인 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}를 기반으로 상기 폴라 코드로의 입력 u_n를 결정;상기 입력 u_n를 길이 N인 상기 폴라 코드와 길이 N인 상기 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}를 기반으로 인코딩하는 것을 기반으로 코딩된 비트들을 결정; 및상기 코딩된 비트들을 다른 통신 기기에게 전송하는 것을 포함하며,길이 N인 상기 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}는 신뢰도 W(QN 0)<W(QN 1)<...<W(QN N-1)의 오름차순으로 정의된 것이며, 여기서 0 <= QN i <= N - 1는 i = 0, 1, ..., N - 1에 대한 비트 인덱스이고, W(QN i)는 비트 인덱스 QN i의 신뢰도이고,상기 입력 u_n를 결정하는 것은 길이 N인 상기 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}를 기반으로 길이 N인 상기 폴라 코드의 입력 인덱스들 0 ~ N - 1 중 상기 정보 블록의 K개 비트들이 배치될 K개 입력 인덱스들과 프로즌될 입력 인덱스들을 결정하는 것을 포함하며,길이 N인 상기 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}의 비트 인덱스들은 다음을 만족하는: i) 이진수로 표현될 때 1의 개수가 많을수록 신뢰도고 높으며, ii) 이진수로 표현될 때 1의 개수가 동일한 비트 인덱스들은 QN x < QN y에 대해 W(QN x) < W(QN y),인코딩 방법.
- 제1항에 있어서,길이 N인 상기 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}는 길이 4096인 다음 폴라 시퀀스의 서브셋인:[0, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 3, 5, 6, 9, 10, 12, 17, 18, 20, 24, 33, 34, 36, 40, 48, 65, 66, 68, 72, 80, 96, 129, 130, 132, 136, 144, 160, 192, 257, 258, 260, 264, 272, 288, 320, 384, 513, 514, 516, 520, 528, 544, 576, 640, 768, 1025, 1026, 1028, 1032, 1040, 1056, 1088, 1152, 1280, 1536, 2049, 2050, 2052, 2056, 2064, 2080, 2112, 2176, 2304, 2560, 3072, 7, 11, 13, 14, 19, 21, 22, 25, 26, 28, 35, 37, 38, 41, 42, 44, 49, 50, 52, 56, 67, 69, 70, 73, 74, 76, 81, 82, 84, 88, 97, 98, 100, 104, 112, 131, 133, 134, 137, 138, 140, 145, 146, 148, 152, 161, 162, 164, 168, 176, 193, 194, 196, 200, 208, 224, 259, 261, 262, 265, 266, 268, 273, 274, 276, 280, 289, 290, 292, 296, 304, 321, 322, 324, 328, 336, 352, 385, 386, 388, 392, 400, 416, 448, 515, 517, 518, 521, 522, 524, 529, 530, 532, 536, 545, 546, 548, 552, 560, 577, 578, 580, 584, 592, 608, 641, 642, 644, 648, 656, 672, 704, 769, 770, 772, 776, 784, 800, 832, 896, 1027, 1029, 1030, 1033, 1034, 1036, 1041, 1042, 1044, 1048, 1057, 1058, 1060, 1064, 1072, 1089, 1090, 1092, 1096, 1104, 1120, 1153, 1154, 1156, 1160, 1168, 1184, 1216, 1281, 1282, 1284, 1288, 1296, 1312, 1344, 1408, 1537, 1538, 1540, 1544, 1552, 1568, 1600, 1664, 1792, 2051, 2053, 2054, 2057, 2058, 2060, 2065, 2066, 2068, 2072, 2081, 2082, 2084, 2088, 2096, 2113, 2114, 2116, 2120, 2128, 2144, 2177, 2178, 2180, 2184, 2192, 2208, 2240, 2305, 2306, 2308, 2312, 2320, 2336, 2368, 2432, 2561, 2562, 2564, 2568, 2576, 2592, 2624, 2688, 2816, 3073, 3074, 3076, 3080, 3088, 3104, 3136, 3200, 3328, 3584, 15, 23, 27, 29, 30, 39, 43, 45, 46, 51, 53, 54, 57, 58, 60, 71, 75, 77, 78, 83, 85, 86, 89, 90, 92, 99, 101, 102, 105, 106, 108, 113, 114, 116, 120, 135, 139, 141, 142, 147, 149, 150, 153, 154, 156, 163, 165, 166, 169, 170, 172, 177, 178, 180, 184, 195, 197, 198, 201, 202, 204, 209, 210, 212, 216, 225, 226, 228, 232, 240, 263, 267, 269, 270, 275, 277, 278, 281, 282, 284, 291, 293, 294, 297, 298, 300, 305, 306, 308, 312, 323, 325, 326, 329, 330, 332, 337, 338, 340, 344, 353, 354, 356, 360, 368, 387, 389, 390, 393, 394, 396, 401, 402, 404, 408, 417, 418, 420, 424, 432, 449, 450, 452, 456, 464, 480, 519, 523, 525, 526, 531, 533, 534, 537, 538, 540, 547, 549, 550, 553, 554, 556, 561, 562, 564, 568, 579, 581, 582, 585, 586, 588, 593, 594, 596, 600, 609, 610, 612, 616, 624, 643, 645, 646, 649, 650, 652, 657, 658, 660, 664, 673, 674, 676, 680, 688, 705, 706, 708, 712, 720, 736, 771, 773, 774, 777, 778, 780, 785, 786, 788, 792, 801, 802, 804, 808, 816, 833, 834, 836, 840, 848, 864, 897, 898, 900, 904, 912, 928, 960, 1031, 1035, 1037, 1038, 1043, 1045, 1046, 1049, 1050, 1052, 1059, 1061, 1062, 1065, 1066, 1068, 1073, 1074, 1076, 1080, 1091, 1093, 1094, 1097, 1098, 1100, 1105, 1106, 1108, 1112, 1121, 1122, 1124, 1128, 1136, 1155, 1157, 1158, 1161, 1162, 1164, 1169, 1170, 1172, 1176, 1185, 1186, 1188, 1192, 1200, 1217, 1218, 1220, 1224, 1232, 1248, 1283, 1285, 1286, 1289, 1290, 1292, 1297, 1298, 1300, 1304, 1313, 1314, 1316, 1320, 1328, 1345, 1346, 1348, 1352, 1360, 1376, 1409, 1410, 1412, 1416, 1424, 1440, 1472, 1539, 1541, 1542, 1545, 1546, 1548, 1553, 1554, 1556, 1560, 1569, 1570, 1572, 1576, 1584, 1601, 1602, 1604, 1608, 1616, 1632, 1665, 1666, 1668, 1672, 1680, 1696, 1728, 1793, 1794, 1796, 1800, 1808, 1824, 1856, 1920, 2055, 2059, 2061, 2062, 2067, 2069, 2070, 2073, 2074, 2076, 2083, 2085, 2086, 2089, 2090, 2092, 2097, 2098, 2100, 2104, 2115, 2117, 2118, 2121, 2122, 2124, 2129, 2130, 2132, 2136, 2145, 2146, 2148, 2152, 2160, 2179, 2181, 2182, 2185, 2186, 2188, 2193, 2194, 2196, 2200, 2209, 2210, 2212, 2216, 2224, 2241, 2242, 2244, 2248, 2256, 2272, 2307, 2309, 2310, 2313, 2314, 2316, 2321, 2322, 2324, 2328, 2337, 2338, 2340, 2344, 2352, 2369, 2370, 2372, 2376, 2384, 2400, 2433, 2434, 2436, 2440, 2448, 2464, 2496, 2563, 2565, 2566, 2569, 2570, 2572, 2577, 2578, 2580, 2584, 2593, 2594, 2596, 2600, 2608, 2625, 2626, 2628, 2632, 2640, 2656, 2689, 2690, 2692, 2696, 2704, 2720, 2752, 2817, 2818, 2820, 2824, 2832, 2848, 2880, 2944, 3075, 3077, 3078, 3081, 3082, 3084, 3089, 3090, 3092, 3096, 3105, 3106, 3108, 3112, 3120, 3137, 3138, 3140, 3144, 3152, 3168, 3201, 3202, 3204, 3208, 3216, 3232, 3264, 3329, 3330, 3332, 3336, 3344, 3360, 3392, 3456, 3585, 3586, 3588, 3592, 3600, 3616, 3648, 3712, 3840, 31, 47, 55, 59, 61, 62, 79, 87, 91, 93, 94, 103, 107, 109, 110, 115, 117, 118, 121, 122, 124, 143, 151, 155, 157, 158, 167, 171, 173, 174, 179, 181, 182, 185, 186, 188, 199, 203, 205, 206, 211, 213, 214, 217, 218, 220, 227, 229, 230, 233, 234, 236, 241, 242, 244, 248, 271, 279, 283, 285, 286, 295, 299, 301, 302, 307, 309, 310, 313, 314, 316, 327, 331, 333, 334, 339, 341, 342, 345, 346, 348, 355, 357, 358, 361, 362, 364, 369, 370, 372, 376, 391, 395, 397, 398, 403, 405, 406, 409, 410, 412, 419, 421, 422, 425, 426, 428, 433, 434, 436, 440, 451, 453, 454, 457, 458, 460, 465, 466, 468, 472, 481, 482, 484, 488, 496, 527, 535, 539, 541, 542, 551, 555, 557, 558, 563, 565, 566, 569, 570, 572, 583, 587, 589, 590, 595, 597, 598, 601, 602, 604, 611, 613, 614, 617, 618, 620, 625, 626, 628, 632, 647, 651, 653, 654, 659, 661, 662, 665, 666, 668, 675, 677, 678, 681, 682, 684, 689, 690, 692, 696, 707, 709, 710, 713, 714, 716, 721, 722, 724, 728, 737, 738, 740, 744, 752, 775, 779, 781, 782, 787, 789, 790, 793, 794, 796, 803, 805, 806, 809, 810, 812, 817, 818, 820, 824, 835, 837, 838, 841, 842, 844, 849, 850, 852, 856, 865, 866, 868, 872, 880, 899, 901, 902, 905, 906, 908, 913, 914, 916, 920, 929, 930, 932, 936, 944, 961, 962, 964, 968, 976, 992, 1039, 1047, 1051, 1053, 1054, 1063, 1067, 1069, 1070, 1075, 1077, 1078, 1081, 1082, 1084, 1095, 1099, 1101, 1102, 1107, 1109, 1110, 1113, 1114, 1116, 1123, 1125, 1126, 1129, 1130, 1132, 1137, 1138, 1140, 1144, 1159, 1163, 1165, 1166, 1171, 1173, 1174, 1177, 1178, 1180, 1187, 1189, 1190, 1193, 1194, 1196, 1201, 1202, 1204, 1208, 1219, 1221, 1222, 1225, 1226, 1228, 1233, 1234, 1236, 1240, 1249, 1250, 1252, 1256, 1264, 1287, 1291, 1293, 1294, 1299, 1301, 1302, 1305, 1306, 1308, 1315, 1317, 1318, 1321, 1322, 1324, 1329, 1330, 1332, 1336, 1347, 1349, 1350, 1353, 1354, 1356, 1361, 1362, 1364, 1368, 1377, 1378, 1380, 1384, 1392, 1411, 1413, 1414, 1417, 1418, 1420, 1425, 1426, 1428, 1432, 1441, 1442, 1444, 1448, 1456, 1473, 1474, 1476, 1480, 1488, 1504, 1543, 1547, 1549, 1550, 1555, 1557, 1558, 1561, 1562, 1564, 1571, 1573, 1574, 1577, 1578, 1580, 1585, 1586, 1588, 1592, 1603, 1605, 1606, 1609, 1610, 1612, 1617, 1618, 1620, 1624, 1633, 1634, 1636, 1640, 1648, 1667, 1669, 1670, 1673, 1674, 1676, 1681, 1682, 1684, 1688, 1697, 1698, 1700, 1704, 1712, 1729, 1730, 1732, 1736, 1744, 1760, 1795, 1797, 1798, 1801, 1802, 1804, 1809, 1810, 1812, 1816, 1825, 1826, 1828, 1832, 1840, 1857, 1858, 1860, 1864, 1872, 1888, 1921, 1922, 1924, 1928, 1936, 1952, 1984, 2063, 2071, 2075, 2077, 2078, 2087, 2091, 2093, 2094, 2099, 2101, 2102, 2105, 2106, 2108, 2119, 2123, 2125, 2126, 2131, 2133, 2134, 2137, 2138, 2140, 2147, 2149, 2150, 2153, 2154, 2156, 2161, 2162, 2164, 2168, 2183, 2187, 2189, 2190, 2195, 2197, 2198, 2201, 2202, 2204, 2211, 2213, 2214, 2217, 2218, 2220, 2225, 2226, 2228, 2232, 2243, 2245, 2246, 2249, 2250, 2252, 2257, 2258, 2260, 2264, 2273, 2274, 2276, 2280, 2288, 2311, 2315, 2317, 2318, 2323, 2325, 2326, 2329, 2330, 2332, 2339, 2341, 2342, 2345, 2346, 2348, 2353, 2354, 2356, 2360, 2371, 2373, 2374, 2377, 2378, 2380, 2385, 2386, 2388, 2392, 2401, 2402, 2404, 2408, 2416, 2435, 2437, 2438, 2441, 2442, 2444, 2449, 2450, 2452, 2456, 2465, 2466, 2468, 2472, 2480, 2497, 2498, 2500, 2504, 2512, 2528, 2567, 2571, 2573, 2574, 2579, 2581, 2582, 2585, 2586, 2588, 2595, 2597, 2598, 2601, 2602, 2604, 2609, 2610, 2612, 2616, 2627, 2629, 2630, 2633, 2634, 2636, 2641, 2642, 2644, 2648, 2657, 2658, 2660, 2664, 2672, 2691, 2693, 2694, 2697, 2698, 2700, 2705, 2706, 2708, 2712, 2721, 2722, 2724, 2728, 2736, 2753, 2754, 2756, 2760, 2768, 2784, 2819, 2821, 2822, 2825, 2826, 2828, 2833, 2834, 2836, 2840, 2849, 2850, 2852, 2856, 2864, 2881, 2882, 2884, 2888, 2896, 2912, 2945, 2946, 2948, 2952, 2960, 2976, 3008, 3079, 3083, 3085, 3086, 3091, 3093, 3094, 3097, 3098, 3100, 3107, 3109, 3110, 3113, 3114, 3116, 3121, 3122, 3124, 3128, 3139, 3141, 3142, 3145, 3146, 3148, 3153, 3154, 3156, 3160, 3169, 3170, 3172, 3176, 3184, 3203, 3205, 3206, 3209, 3210, 3212, 3217, 3218, 3220, 3224, 3233, 3234, 3236, 3240, 3248, 3265, 3266, 3268, 3272, 3280, 3296, 3331, 3333, 3334, 3337, 3338, 3340, 3345, 3346, 3348, 3352, 3361, 3362, 3364, 3368, 3376, 3393, 3394, 3396, 3400, 3408, 3424, 3457, 3458, 3460, 3464, 3472, 3488, 3520, 3587, 3589, 3590, 3593, 3594, 3596, 3601, 3602, 3604, 3608, 3617, 3618, 3620, 3624, 3632, 3649, 3650, 3652, 3656, 3664, 3680, 3713, 3714, 3716, 3720, 3728, 3744, 3776, 3841, 3842, 3844, 3848, 3856, 3872, 3904, 3968, 63, 95, 111, 119, 123, 125, 126, 159, 175, 183, 187, 189, 190, 207, 215, 219, 221, 222, 231, 235, 237, 238, 243, 245, 246, 249, 250, 252, 287, 303, 311, 315, 317, 318, 335, 343, 347, 349, 350, 359, 363, 365, 366, 371, 373, 374, 377, 378, 380, 399, 407, 411, 413, 414, 423, 427, 429, 430, 435, 437, 438, 441, 442, 444, 455, 459, 461, 462, 467, 469, 470, 473, 474, 476, 483, 485, 486, 489, 490, 492, 497, 498, 500, 504, 543, 559, 567, 571, 573, 574, 591, 599, 603, 605, 606, 615, 619, 621, 622, 627, 629, 630, 633, 634, 636, 655, 663, 667, 669, 670, 679, 683, 685, 686, 691, 693, 694, 697, 698, 700, 711, 715, 717, 718, 723, 725, 726, 729, 730, 732, 739, 741, 742, 745, 746, 748, 753, 754, 756, 760, 783, 791, 795, 797, 798, 807, 811, 813, 814, 819, 821, 822, 825, 826, 828, 839, 843, 845, 846, 851, 853, 854, 857, 858, 860, 867, 869, 870, 873, 874, 876, 881, 882, 884, 888, 903, 907, 909, 910, 915, 917, 918, 921, 922, 924, 931, 933, 934, 937, 938, 940, 945, 946, 948, 952, 963, 965, 966, 969, 970, 972, 977, 978, 980, 984, 993, 994, 996, 1000, 1008, 1055, 1071, 1079, 1083, 1085, 1086, 1103, 1111, 1115, 1117, 1118, 1127, 1131, 1133, 1134, 1139, 1141, 1142, 1145, 1146, 1148, 1167, 1175, 1179, 1181, 1182, 1191, 1195, 1197, 1198, 1203, 1205, 1206, 1209, 1210, 1212, 1223, 1227, 1229, 1230, 1235, 1237, 1238, 1241, 1242, 1244, 1251, 1253, 1254, 1257, 1258, 1260, 1265, 1266, 1268, 1272, 1295, 1303, 1307, 1309, 1310, 1319, 1323, 1325, 1326, 1331, 1333, 1334, 1337, 1338, 1340, 1351, 1355, 1357, 1358, 1363, 1365, 1366, 1369, 1370, 1372, 1379, 1381, 1382, 1385, 1386, 1388, 1393, 1394, 1396, 1400, 1415, 1419, 1421, 1422, 1427, 1429, 1430, 1433, 1434, 1436, 1443, 1445, 1446, 1449, 1450, 1452, 1457, 1458, 1460, 1464, 1475, 1477, 1478, 1481, 1482, 1484, 1489, 1490, 1492, 1496, 1505, 1506, 1508, 1512, 1520, 1551, 1559, 1563, 1565, 1566, 1575, 1579, 1581, 1582, 1587, 1589, 1590, 1593, 1594, 1596, 1607, 1611, 1613, 1614, 1619, 1621, 1622, 1625, 1626, 1628, 1635, 1637, 1638, 1641, 1642, 1644, 1649, 1650, 1652, 1656, 1671, 1675, 1677, 1678, 1683, 1685, 1686, 1689, 1690, 1692, 1699, 1701, 1702, 1705, 1706, 1708, 1713, 1714, 1716, 1720, 1731, 1733, 1734, 1737, 1738, 1740, 1745, 1746, 1748, 1752, 1761, 1762, 1764, 1768, 1776, 1799, 1803, 1805, 1806, 1811, 1813, 1814, 1817, 1818, 1820, 1827, 1829, 1830, 1833, 1834, 1836, 1841, 1842, 1844, 1848, 1859, 1861, 1862, 1865, 1866, 1868, 1873, 1874, 1876, 1880, 1889, 1890, 1892, 1896, 1904, 1923, 1925, 1926, 1929, 1930, 1932, 1937, 1938, 1940, 1944, 1953, 1954, 1956, 1960, 1968, 1985, 1986, 1988, 1992, 2000, 2016, 2079, 2095, 2103, 2107, 2109, 2110, 2127, 2135, 2139, 2141, 2142, 2151, 2155, 2157, 2158, 2163, 2165, 2166, 2169, 2170, 2172, 2191, 2199, 2203, 2205, 2206, 2215, 2219, 2221, 2222, 2227, 2229, 2230, 2233, 2234, 2236, 2247, 2251, 2253, 2254, 2259, 2261, 2262, 2265, 2266, 2268, 2275, 2277, 2278, 2281, 2282, 2284, 2289, 2290, 2292, 2296, 2319, 2327, 2331, 2333, 2334, 2343, 2347, 2349, 2350, 2355, 2357, 2358, 2361, 2362, 2364, 2375, 2379, 2381, 2382, 2387, 2389, 2390, 2393, 2394, 2396, 2403, 2405, 2406, 2409, 2410, 2412, 2417, 2418, 2420, 2424, 2439, 2443, 2445, 2446, 2451, 2453, 2454, 2457, 2458, 2460, 2467, 2469, 2470, 2473, 2474, 2476, 2481, 2482, 2484, 2488, 2499, 2501, 2502, 2505, 2506, 2508, 2513, 2514, 2516, 2520, 2529, 2530, 2532, 2536, 2544, 2575, 2583, 2587, 2589, 2590, 2599, 2603, 2605, 2606, 2611, 2613, 2614, 2617, 2618, 2620, 2631, 2635, 2637, 2638, 2643, 2645, 2646, 2649, 2650, 2652, 2659, 2661, 2662, 2665, 2666, 2668, 2673, 2674, 2676, 2680, 2695, 2699, 2701, 2702, 2707, 2709, 2710, 2713, 2714, 2716, 2723, 2725, 2726, 2729, 2730, 2732, 2737, 2738, 2740, 2744, 2755, 2757, 2758, 2761, 2762, 2764, 2769, 2770, 2772, 2776, 2785, 2786, 2788, 2792, 2800, 2823, 2827, 2829, 2830, 2835, 2837, 2838, 2841, 2842, 2844, 2851, 2853, 2854, 2857, 2858, 2860, 2865, 2866, 2868, 2872, 2883, 2885, 2886, 2889, 2890, 2892, 2897, 2898, 2900, 2904, 2913, 2914, 2916, 2920, 2928, 2947, 2949, 2950, 2953, 2954, 2956, 2961, 2962, 2964, 2968, 2977, 2978, 2980, 2984, 2992, 3009, 3010, 3012, 3016, 3024, 3040, 3087, 3095, 3099, 3101, 3102, 3111, 3115, 3117, 3118, 3123, 3125, 3126, 3129, 3130, 3132, 3143, 3147, 3149, 3150, 3155, 3157, 3158, 3161, 3162, 3164, 3171, 3173, 3174, 3177, 3178, 3180, 3185, 3186, 3188, 3192, 3207, 3211, 3213, 3214, 3219, 3221, 3222, 3225, 3226, 3228, 3235, 3237, 3238, 3241, 3242, 3244, 3249, 3250, 3252, 3256, 3267, 3269, 3270, 3273, 3274, 3276, 3281, 3282, 3284, 3288, 3297, 3298, 3300, 3304, 3312, 3335, 3339, 3341, 3342, 3347, 3349, 3350, 3353, 3354, 3356, 3363, 3365, 3366, 3369, 3370, 3372, 3377, 3378, 3380, 3384, 3395, 3397, 3398, 3401, 3402, 3404, 3409, 3410, 3412, 3416, 3425, 3426, 3428, 3432, 3440, 3459, 3461, 3462, 3465, 3466, 3468, 3473, 3474, 3476, 3480, 3489, 3490, 3492, 3496, 3504, 3521, 3522, 3524, 3528, 3536, 3552, 3591, 3595, 3597, 3598, 3603, 3605, 3606, 3609, 3610, 3612, 3619, 3621, 3622, 3625, 3626, 3628, 3633, 3634, 3636, 3640, 3651, 3653, 3654, 3657, 3658, 3660, 3665, 3666, 3668, 3672, 3681, 3682, 3684, 3688, 3696, 3715, 3717, 3718, 3721, 3722, 3724, 3729, 3730, 3732, 3736, 3745, 3746, 3748, 3752, 3760, 3777, 3778, 3780, 3784, 3792, 3808, 3843, 3845, 3846, 3849, 3850, 3852, 3857, 3858, 3860, 3864, 3873, 3874, 3876, 3880, 3888, 3905, 3906, 3908, 3912, 3920, 3936, 3969, 3970, 3972, 3976, 3984, 4000, 4032, 127, 191, 223, 239, 247, 251, 253, 254, 319, 351, 367, 375, 379, 381, 382, 415, 431, 439, 443, 445, 446, 463, 471, 475, 477, 478, 487, 491, 493, 494, 499, 501, 502, 505, 506, 508, 575, 607, 623, 631, 635, 637, 638, 671, 687, 695, 699, 701, 702, 719, 727, 731, 733, 734, 743, 747, 749, 750, 755, 757, 758, 761, 762, 764, 799, 815, 823, 827, 829, 830, 847, 855, 859, 861, 862, 871, 875, 877, 878, 883, 885, 886, 889, 890, 892, 911, 919, 923, 925, 926, 935, 939, 941, 942, 947, 949, 950, 953, 954, 956, 967, 971, 973, 974, 979, 981, 982, 985, 986, 988, 995, 997, 998, 1001, 1002, 1004, 1009, 1010, 1012, 1016, 1087, 1119, 1135, 1143, 1147, 1149, 1150, 1183, 1199, 1207, 1211, 1213, 1214, 1231, 1239, 1243, 1245, 1246, 1255, 1259, 1261, 1262, 1267, 1269, 1270, 1273, 1274, 1276, 1311, 1327, 1335, 1339, 1341, 1342, 1359, 1367, 1371, 1373, 1374, 1383, 1387, 1389, 1390, 1395, 1397, 1398, 1401, 1402, 1404, 1423, 1431, 1435, 1437, 1438, 1447, 1451, 1453, 1454, 1459, 1461, 1462, 1465, 1466, 1468, 1479, 1483, 1485, 1486, 1491, 1493, 1494, 1497, 1498, 1500, 1507, 1509, 1510, 1513, 1514, 1516, 1521, 1522, 1524, 1528, 1567, 1583, 1591, 1595, 1597, 1598, 1615, 1623, 1627, 1629, 1630, 1639, 1643, 1645, 1646, 1651, 1653, 1654, 1657, 1658, 1660, 1679, 1687, 1691, 1693, 1694, 1703, 1707, 1709, 1710, 1715, 1717, 1718, 1721, 1722, 1724, 1735, 1739, 1741, 1742, 1747, 1749, 1750, 1753, 1754, 1756, 1763, 1765, 1766, 1769, 1770, 1772, 1777, 1778, 1780, 1784, 1807, 1815, 1819, 1821, 1822, 1831, 1835, 1837, 1838, 1843, 1845, 1846, 1849, 1850, 1852, 1863, 1867, 1869, 1870, 1875, 1877, 1878, 1881, 1882, 1884, 1891, 1893, 1894, 1897, 1898, 1900, 1905, 1906, 1908, 1912, 1927, 1931, 1933, 1934, 1939, 1941, 1942, 1945, 1946, 1948, 1955, 1957, 1958, 1961, 1962, 1964, 1969, 1970, 1972, 1976, 1987, 1989, 1990, 1993, 1994, 1996, 2001, 2002, 2004, 2008, 2017, 2018, 2020, 2024, 2032, 2111, 2143, 2159, 2167, 2171, 2173, 2174, 2207, 2223, 2231, 2235, 2237, 2238, 2255, 2263, 2267, 2269, 2270, 2279, 2283, 2285, 2286, 2291, 2293, 2294, 2297, 2298, 2300, 2335, 2351, 2359, 2363, 2365, 2366, 2383, 2391, 2395, 2397, 2398, 2407, 2411, 2413, 2414, 2419, 2421, 2422, 2425, 2426, 2428, 2447, 2455, 2459, 2461, 2462, 2471, 2475, 2477, 2478, 2483, 2485, 2486, 2489, 2490, 2492, 2503, 2507, 2509, 2510, 2515, 2517, 2518, 2521, 2522, 2524, 2531, 2533, 2534, 2537, 2538, 2540, 2545, 2546, 2548, 2552, 2591, 2607, 2615, 2619, 2621, 2622, 2639, 2647, 2651, 2653, 2654, 2663, 2667, 2669, 2670, 2675, 2677, 2678, 2681, 2682, 2684, 2703, 2711, 2715, 2717, 2718, 2727, 2731, 2733, 2734, 2739, 2741, 2742, 2745, 2746, 2748, 2759, 2763, 2765, 2766, 2771, 2773, 2774, 2777, 2778, 2780, 2787, 2789, 2790, 2793, 2794, 2796, 2801, 2802, 2804, 2808, 2831, 2839, 2843, 2845, 2846, 2855, 2859, 2861, 2862, 2867, 2869, 2870, 2873, 2874, 2876, 2887, 2891, 2893, 2894, 2899, 2901, 2902, 2905, 2906, 2908, 2915, 2917, 2918, 2921, 2922, 2924, 2929, 2930, 2932, 2936, 2951, 2955, 2957, 2958, 2963, 2965, 2966, 2969, 2970, 2972, 2979, 2981, 2982, 2985, 2986, 2988, 2993, 2994, 2996, 3000, 3011, 3013, 3014, 3017, 3018, 3020, 3025, 3026, 3028, 3032, 3041, 3042, 3044, 3048, 3056, 3103, 3119, 3127, 3131, 3133, 3134, 3151, 3159, 3163, 3165, 3166, 3175, 3179, 3181, 3182, 3187, 3189, 3190, 3193, 3194, 3196, 3215, 3223, 3227, 3229, 3230, 3239, 3243, 3245, 3246, 3251, 3253, 3254, 3257, 3258, 3260, 3271, 3275, 3277, 3278, 3283, 3285, 3286, 3289, 3290, 3292, 3299, 3301, 3302, 3305, 3306, 3308, 3313, 3314, 3316, 3320, 3343, 3351, 3355, 3357, 3358, 3367, 3371, 3373, 3374, 3379, 3381, 3382, 3385, 3386, 3388, 3399, 3403, 3405, 3406, 3411, 3413, 3414, 3417, 3418, 3420, 3427, 3429, 3430, 3433, 3434, 3436, 3441, 3442, 3444, 3448, 3463, 3467, 3469, 3470, 3475, 3477, 3478, 3481, 3482, 3484, 3491, 3493, 3494, 3497, 3498, 3500, 3505, 3506, 3508, 3512, 3523, 3525, 3526, 3529, 3530, 3532, 3537, 3538, 3540, 3544, 3553, 3554, 3556, 3560, 3568, 3599, 3607, 3611, 3613, 3614, 3623, 3627, 3629, 3630, 3635, 3637, 3638, 3641, 3642, 3644, 3655, 3659, 3661, 3662, 3667, 3669, 3670, 3673, 3674, 3676, 3683, 3685, 3686, 3689, 3690, 3692, 3697, 3698, 3700, 3704, 3719, 3723, 3725, 3726, 3731, 3733, 3734, 3737, 3738, 3740, 3747, 3749, 3750, 3753, 3754, 3756, 3761, 3762, 3764, 3768, 3779, 3781, 3782, 3785, 3786, 3788, 3793, 3794, 3796, 3800, 3809, 3810, 3812, 3816, 3824, 3847, 3851, 3853, 3854, 3859, 3861, 3862, 3865, 3866, 3868, 3875, 3877, 3878, 3881, 3882, 3884, 3889, 3890, 3892, 3896, 3907, 3909, 3910, 3913, 3914, 3916, 3921, 3922, 3924, 3928, 3937, 3938, 3940, 3944, 3952, 3971, 3973, 3974, 3977, 3978, 3980, 3985, 3986, 3988, 3992, 4001, 4002, 4004, 4008, 4016, 4033, 4034, 4036, 4040, 4048, 4064, 255, 383, 447, 479, 495, 503, 507, 509, 510, 639, 703, 735, 751, 759, 763, 765, 766, 831, 863, 879, 887, 891, 893, 894, 927, 943, 951, 955, 957, 958, 975, 983, 987, 989, 990, 999, 1003, 1005, 1006, 1011, 1013, 1014, 1017, 1018, 1020, 1151, 1215, 1247, 1263, 1271, 1275, 1277, 1278, 1343, 1375, 1391, 1399, 1403, 1405, 1406, 1439, 1455, 1463, 1467, 1469, 1470, 1487, 1495, 1499, 1501, 1502, 1511, 1515, 1517, 1518, 1523, 1525, 1526, 1529, 1530, 1532, 1599, 1631, 1647, 1655, 1659, 1661, 1662, 1695, 1711, 1719, 1723, 1725, 1726, 1743, 1751, 1755, 1757, 1758, 1767, 1771, 1773, 1774, 1779, 1781, 1782, 1785, 1786, 1788, 1823, 1839, 1847, 1851, 1853, 1854, 1871, 1879, 1883, 1885, 1886, 1895, 1899, 1901, 1902, 1907, 1909, 1910, 1913, 1914, 1916, 1935, 1943, 1947, 1949, 1950, 1959, 1963, 1965, 1966, 1971, 1973, 1974, 1977, 1978, 1980, 1991, 1995, 1997, 1998, 2003, 2005, 2006, 2009, 2010, 2012, 2019, 2021, 2022, 2025, 2026, 2028, 2033, 2034, 2036, 2040, 2175, 2239, 2271, 2287, 2295, 2299, 2301, 2302, 2367, 2399, 2415, 2423, 2427, 2429, 2430, 2463, 2479, 2487, 2491, 2493, 2494, 2511, 2519, 2523, 2525, 2526, 2535, 2539, 2541, 2542, 2547, 2549, 2550, 2553, 2554, 2556, 2623, 2655, 2671, 2679, 2683, 2685, 2686, 2719, 2735, 2743, 2747, 2749, 2750, 2767, 2775, 2779, 2781, 2782, 2791, 2795, 2797, 2798, 2803, 2805, 2806, 2809, 2810, 2812, 2847, 2863, 2871, 2875, 2877, 2878, 2895, 2903, 2907, 2909, 2910, 2919, 2923, 2925, 2926, 2931, 2933, 2934, 2937, 2938, 2940, 2959, 2967, 2971, 2973, 2974, 2983, 2987, 2989, 2990, 2995, 2997, 2998, 3001, 3002, 3004, 3015, 3019, 3021, 3022, 3027, 3029, 3030, 3033, 3034, 3036, 3043, 3045, 3046, 3049, 3050, 3052, 3057, 3058, 3060, 3064, 3135, 3167, 3183, 3191, 3195, 3197, 3198, 3231, 3247, 3255, 3259, 3261, 3262, 3279, 3287, 3291, 3293, 3294, 3303, 3307, 3309, 3310, 3315, 3317, 3318, 3321, 3322, 3324, 3359, 3375, 3383, 3387, 3389, 3390, 3407, 3415, 3419, 3421, 3422, 3431, 3435, 3437, 3438, 3443, 3445, 3446, 3449, 3450, 3452, 3471, 3479, 3483, 3485, 3486, 3495, 3499, 3501, 3502, 3507, 3509, 3510, 3513, 3514, 3516, 3527, 3531, 3533, 3534, 3539, 3541, 3542, 3545, 3546, 3548, 3555, 3557, 3558, 3561, 3562, 3564, 3569, 3570, 3572, 3576, 3615, 3631, 3639, 3643, 3645, 3646, 3663, 3671, 3675, 3677, 3678, 3687, 3691, 3693, 3694, 3699, 3701, 3702, 3705, 3706, 3708, 3727, 3735, 3739, 3741, 3742, 3751, 3755, 3757, 3758, 3763, 3765, 3766, 3769, 3770, 3772, 3783, 3787, 3789, 3790, 3795, 3797, 3798, 3801, 3802, 3804, 3811, 3813, 3814, 3817, 3818, 3820, 3825, 3826, 3828, 3832, 3855, 3863, 3867, 3869, 3870, 3879, 3883, 3885, 3886, 3891, 3893, 3894, 3897, 3898, 3900, 3911, 3915, 3917, 3918, 3923, 3925, 3926, 3929, 3930, 3932, 3939, 3941, 3942, 3945, 3946, 3948, 3953, 3954, 3956, 3960, 3975, 3979, 3981, 3982, 3987, 3989, 3990, 3993, 3994, 3996, 4003, 4005, 4006, 4009, 4010, 4012, 4017, 4018, 4020, 4024, 4035, 4037, 4038, 4041, 4042, 4044, 4049, 4050, 4052, 4056, 4065, 4066, 4068, 4072, 4080, 511, 767, 895, 959, 991, 1007, 1015, 1019, 1021, 1022, 1279, 1407, 1471, 1503, 1519, 1527, 1531, 1533, 1534, 1663, 1727, 1759, 1775, 1783, 1787, 1789, 1790, 1855, 1887, 1903, 1911, 1915, 1917, 1918, 1951, 1967, 1975, 1979, 1981, 1982, 1999, 2007, 2011, 2013, 2014, 2023, 2027, 2029, 2030, 2035, 2037, 2038, 2041, 2042, 2044, 2303, 2431, 2495, 2527, 2543, 2551, 2555, 2557, 2558, 2687, 2751, 2783, 2799, 2807, 2811, 2813, 2814, 2879, 2911, 2927, 2935, 2939, 2941, 2942, 2975, 2991, 2999, 3003, 3005, 3006, 3023, 3031, 3035, 3037, 3038, 3047, 3051, 3053, 3054, 3059, 3061, 3062, 3065, 3066, 3068, 3199, 3263, 3295, 3311, 3319, 3323, 3325, 3326, 3391, 3423, 3439, 3447, 3451, 3453, 3454, 3487, 3503, 3511, 3515, 3517, 3518, 3535, 3543, 3547, 3549, 3550, 3559, 3563, 3565, 3566, 3571, 3573, 3574, 3577, 3578, 3580, 3647, 3679, 3695, 3703, 3707, 3709, 3710, 3743, 3759, 3767, 3771, 3773, 3774, 3791, 3799, 3803, 3805, 3806, 3815, 3819, 3821, 3822, 3827, 3829, 3830, 3833, 3834, 3836, 3871, 3887, 3895, 3899, 3901, 3902, 3919, 3927, 3931, 3933, 3934, 3943, 3947, 3949, 3950, 3955, 3957, 3958, 3961, 3962, 3964, 3983, 3991, 3995, 3997, 3998, 4007, 4011, 4013, 4014, 4019, 4021, 4022, 4025, 4026, 4028, 4039, 4043, 4045, 4046, 4051, 4053, 4054, 4057, 4058, 4060, 4067, 4069, 4070, 4073, 4074, 4076, 4081, 4082, 4084, 4088, 1023, 1535, 1791, 1919, 1983, 2015, 2031, 2039, 2043, 2045, 2046, 2559, 2815, 2943, 3007, 3039, 3055, 3063, 3067, 3069, 3070, 3327, 3455, 3519, 3551, 3567, 3575, 3579, 3581, 3582, 3711, 3775, 3807, 3823, 3831, 3835, 3837, 3838, 3903, 3935, 3951, 3959, 3963, 3965, 3966, 3999, 4015, 4023, 4027, 4029, 4030, 4047, 4055, 4059, 4061, 4062, 4071, 4075, 4077, 4078, 4083, 4085, 4086, 4089, 4090, 4092, 2047, 3071, 3583, 3839, 3967, 4031, 4063, 4079, 4087, 4091, 4093, 4094, 4095],인코딩 방법.
- 제1항에 있어서,상기 입력 u_n를 결정하는 것은:상기 폴라 코드의 길이 N, 상기 정보 블록의 길이 K, 상기 길이 N인 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}를 기반으로 컨볼루션을 위한 입력 v_n을 결정; 및상기 입력 v_n에 대해 상기 컨볼루션을 수행하는 것을 기반으로 상기 입력 u_n을 결정하는 것을 포함하는,인코딩 방법.
- 제3항에 있어서,상기 컨볼루션을 수행하는 것은:머더 코드 크기들에 대한 천이 레지스터들의 미리 결정된 개수들 중 상기 폴라 코드의 길이 N을 기반으로 천이 레지스터들의 개수를 결정; 및상기 결정된 개수의 천이 레지스터를 기반으로 상기 입력 v_n에 대한 컨벌루션을 수행하는 것을 포함하는,인코딩 방법.
- 제4항에 있어서,상기 천이 레지스터들의 상기 미리 결정된 개수들은 상기 머더 코드 크기들에 대한 각각의 연속한 프로즌 비트들의 최대 개수들보다 크거나 같은,인코딩 방법.
- 제6항에 있어서,상이한 머더 코드 크기들에 대해 동일 개수의 천이 레지스터들이 사용되는,인코딩 방법.
- 무선 통신 시스템에서 통신 기기가 정보 블록을 인코딩함에 있어서,적어도 하나의 송수신기;적어도 하나의 프로세서; 및상기 적어도 하나의 프로세서에 동작 가능하게 연결 가능한, 그리고, 실행될 때, 상기 적어도 하나의 프로세서로 하여금 동작들을 수행하도록 하는 명령(instruction)들을 저장한, 적어도 하나의 컴퓨터 메모리를 포함하며, 상기 동작들은:폴라 코드의 길이 N, 상기 정보 블록의 길이 K, 길이 N인 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}를 기반으로 상기 폴라 코드로의 입력 u_n를 결정;상기 입력 u_n를 길이 N인 상기 폴라 코드와 길이 N인 상기 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}를 기반으로 인코딩하는 것을 기반으로 코딩된 비트들을 결정; 및상기 코딩된 비트들을 다른 통신 기기에게 전송하는 것을 포함하며,길이 N인 상기 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}는 신뢰도 W(QN 0)<W(QN 1)<...<W(QN N-1)의 오름차순으로 정의된 것이며, 여기서 0 <= QN i <= N - 1는 i = 0, 1, ..., N - 1에 대한 비트 인덱스이고, W(QN i)는 비트 인덱스 QN i의 신뢰도이고,상기 입력 u_n를 결정하는 것은 길이 N인 상기 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}를 기반으로 길이 N인 상기 폴라 코드의 입력 인덱스들 0 ~ N - 1 중 상기 정보 블록의 K개 비트들이 배치될 K개 입력 인덱스들과 프로즌될 입력 인덱스들을 결정하는 것을 포함하며,길이 N인 상기 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}의 비트 인덱스들은 다음을 만족하는: i) 이진수로 표현될 때 1의 개수가 많을수록 신뢰도고 높으며, ii) 이진수로 표현될 때 1의 개수가 동일한 비트 인덱스들은 QN x < QN y에 대해 W(QN x) < W(QN y)인,통신 기기.
- 무선 통신 시스템에서 프로세싱 장치에 있어서,적어도 하나의 프로세서; 및상기 적어도 하나의 프로세서에 동작 가능하게 연결 가능한, 그리고, 실행될 때, 상기 적어도 하나의 프로세서로 하여금 동작들을 수행하도록 하는 명령(instruction)들을 저장한, 적어도 하나의 컴퓨터 메모리를 포함하며, 상기 동작들은:폴라 코드의 길이 N, 정보 블록의 길이 K, 길이 N인 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}를 기반으로 상기 폴라 코드로의 입력 u_n를 결정;상기 입력 u_n를 길이 N인 상기 폴라 코드와 길이 N인 상기 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}를 기반으로 인코딩하는 것을 기반으로 코딩된 비트들을 결정; 및상기 코딩된 비트들을 다른 통신 기기에게 전송하는 것을 포함하며,길이 N인 상기 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}는 신뢰도 W(QN 0)<W(QN 1)<...<W(QN N-1)의 오름차순으로 정의된 것이며, 여기서 0 <= QN i <= N - 1는 i = 0, 1, ..., N - 1에 대한 비트 인덱스이고, W(QN i)는 비트 인덱스 QN i의 신뢰도이고,상기 입력 u_n를 결정하는 것은 길이 N인 상기 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}를 기반으로 길이 N인 상기 폴라 코드의 입력 인덱스들 0 ~ N - 1 중 상기 정보 블록의 K개 비트들이 배치될 K개 입력 인덱스들과 프로즌될 입력 인덱스들을 결정하는 것을 포함하며,길이 N인 상기 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}의 비트 인덱스들은 다음을 만족하는: i) 이진수로 표현될 때 1의 개수가 많을수록 신뢰도고 높으며, ii) 이진수로 표현될 때 1의 개수가 동일한 비트 인덱스들은 QN x < QN y에 대해 W(QN x) < W(QN y)인,프로세싱 장치.
- 컴퓨터 판독가능한 저장 매체에 있어서,상기 저장 매체는 실행될 때 적어도 하나의 프로세서로 하여금 동작들을 수행하도록 하는 지시들을 포함하는 적어도 하나의 프로그램 코드를 저장하고, 상기 동작들은:폴라 코드의 길이 N, 정보 블록의 길이 K, 길이 N인 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}를 기반으로 상기 폴라 코드로의 입력 u_n를 결정;상기 입력 u_n를 길이 N인 상기 폴라 코드와 길이 N인 상기 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}를 기반으로 인코딩하는 것을 기반으로 코딩된 비트들을 결정; 및상기 코딩된 비트들을 다른 통신 기기에게 전송하는 것을 포함하며,길이 N인 상기 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}는 신뢰도 W(QN 0)<W(QN 1)<...<W(QN N-1)의 오름차순으로 정의된 것이며, 여기서 0 <= QN i <= N - 1는 i = 0, 1, ..., N - 1에 대한 비트 인덱스이고, W(QN i)는 비트 인덱스 QN i의 신뢰도이고,상기 입력 u_n을 결정하는 것은 길이 N인 상기 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}를 기반으로 길이 N인 상기 폴라 코드의 입력 인덱스들 0 ~ N - 1 중 상기 정보 블록의 K개 비트들이 배치될 K개 입력 인덱스들과 프로즌될 입력 인덱스들을 결정하는 것을 포함하며,길이 N인 상기 폴라 시퀀스 Q N-1 0 = {Q0,, Q1, ..., QN-1}의 비트 인덱스들은 다음을 만족하는: i) 이진수로 표현될 때 1의 개수가 많을수록 신뢰도고 높으며, ii) 이진수로 표현될 때 1의 개수가 동일한 비트 인덱스들은 QN x < QN y에 대해 W(QN x) < W(QN y)인,저장매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/KR2022/012321 WO2024038924A1 (ko) | 2022-08-18 | 2022-08-18 | 인코딩을 수행하는 방법, 통신 기기, 프로세싱 장치, 및 저장 매체 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/KR2022/012321 WO2024038924A1 (ko) | 2022-08-18 | 2022-08-18 | 인코딩을 수행하는 방법, 통신 기기, 프로세싱 장치, 및 저장 매체 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024038924A1 true WO2024038924A1 (ko) | 2024-02-22 |
Family
ID=89941907
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2022/012321 WO2024038924A1 (ko) | 2022-08-18 | 2022-08-18 | 인코딩을 수행하는 방법, 통신 기기, 프로세싱 장치, 및 저장 매체 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2024038924A1 (ko) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190097060A (ko) * | 2016-12-29 | 2019-08-20 | 퀄컴 인코포레이티드 | 밀도 진화를 사용한 폴라 코드 구성을 위한 네스팅된 구조 |
US20200059249A1 (en) * | 2018-08-14 | 2020-02-20 | Industrial Technology Research Institute | Method for polar code transmission with partial information and devices using the same |
US20200274553A1 (en) * | 2017-06-27 | 2020-08-27 | Huawei Technologies Co.,Ltd. | Communciation method using polar code, and wireless device |
KR20210015634A (ko) * | 2019-08-02 | 2021-02-10 | 한국전자통신연구원 | 통신 시스템에서 폴라 코드를 사용한 신호의 송수신 방법 및 장치 |
-
2022
- 2022-08-18 WO PCT/KR2022/012321 patent/WO2024038924A1/ko unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190097060A (ko) * | 2016-12-29 | 2019-08-20 | 퀄컴 인코포레이티드 | 밀도 진화를 사용한 폴라 코드 구성을 위한 네스팅된 구조 |
US20200274553A1 (en) * | 2017-06-27 | 2020-08-27 | Huawei Technologies Co.,Ltd. | Communciation method using polar code, and wireless device |
US20200059249A1 (en) * | 2018-08-14 | 2020-02-20 | Industrial Technology Research Institute | Method for polar code transmission with partial information and devices using the same |
KR20210015634A (ko) * | 2019-08-02 | 2021-02-10 | 한국전자통신연구원 | 통신 시스템에서 폴라 코드를 사용한 신호의 송수신 방법 및 장치 |
Non-Patent Citations (1)
Title |
---|
ROWSHAN MOHAMMAD; VITERBO EMANUELE: "How to Modify Polar Codes for List Decoding", 2019 IEEE INTERNATIONAL SYMPOSIUM ON INFORMATION THEORY (ISIT), IEEE, 7 July 2019 (2019-07-07), pages 1772 - 1776, XP033620204, DOI: 10.1109/ISIT.2019.8849539 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019098677A1 (ko) | Pbch 전송 방법 및 전송 장치, 및 pbch 수신 방법 및 수신 장치 | |
AU2018288906B2 (en) | Method and apparatus of rate-matching for communication and broadcasting systems | |
WO2019194635A1 (en) | Apparatus and method for encoding and decoding using polar code in wireless communication system and broadcasting system | |
WO2021025502A1 (en) | Method and apparatus for determining uplink control channel and signal resource in wireless communication system | |
WO2018236114A1 (en) | METHOD AND APPARATUS FOR FLOW ADAPTATION FOR COMMUNICATION AND BROADCASTING SYSTEMS | |
WO2018203720A1 (en) | Method and apparatus for control information searching and data information transmission in a communication system | |
WO2019031841A1 (ko) | 정보 전송 방법 및 전송 장치 및 정보 수신 방법 및 수신 장치 | |
WO2016182274A1 (ko) | 기계타입통신을 지원하는 무선 접속 시스템에서 기계타입통신 단말을 위해 정의되는 전송블록크기를 이용한 데이터를 송수신하는 방법 및 장치 | |
WO2018212558A1 (en) | Method and apparatus for coding/decoding in a communication or broadcasting system using high-order modulation | |
WO2017217711A1 (ko) | 폴라 코드를 위한 데이터 재송신 방법 및 이를 위한 장치 | |
WO2018231026A1 (ko) | 정보 전송 방법 및 전송 장치 | |
WO2018151555A1 (ko) | 정보 전송 방법 및 전송장치 | |
WO2018097545A1 (ko) | 셀룰라 통신 시스템에서 상향링크 전송 방법 및 장치 | |
WO2018174672A2 (ko) | 하향링크 신호 수신 방법 및 사용자기기, 그리고 하향링크 신호 전송 방법 및 기지국 | |
WO2019139412A1 (ko) | 정보를 전송하는 방법 및 장치, 그리고 정보를 수신하는 방법 및 장치 | |
WO2019190281A1 (en) | Apparatus and method for encoding and decoding using polar code in wireless communication system | |
WO2015064921A1 (ko) | 채널 품질 지시자를 피드백하는 방법 및 사용자 장치 | |
WO2017023079A1 (ko) | 폴라 코드에서의 데이터 비트 결정 방법 및 이를 위한 장치 | |
WO2017171396A1 (ko) | 무선 통신 시스템에서 기지국과 단말이 데이터 신호를 송수신하는 방법 및 이를 지원하는 장치 | |
WO2018203699A1 (ko) | 무선 셀룰라 통신 시스템에서 데이터 전송 방법 및 장치 | |
WO2020204492A1 (en) | Method and apparatus for repetition-based data transmission for network cooperative communication | |
WO2013051913A2 (ko) | 제어 정보를 전송하는 방법 및 이를 위한 장치 | |
WO2018110961A1 (ko) | 다중 집합 레벨에 따라 하향링크 제어 정보를 디코딩하는 방법 및 단말 | |
WO2016182378A1 (ko) | 상향링크 제어 정보 전송 방법 및 무선기기 | |
EP3928460A1 (en) | Method and apparatus for repetition-based data transmission for network cooperative communication |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22955801 Country of ref document: EP Kind code of ref document: A1 |