KR20240028887A - Receiver performing blind detection in wireless communication system and operating method thereof - Google Patents
Receiver performing blind detection in wireless communication system and operating method thereof Download PDFInfo
- Publication number
- KR20240028887A KR20240028887A KR1020220116201A KR20220116201A KR20240028887A KR 20240028887 A KR20240028887 A KR 20240028887A KR 1020220116201 A KR1020220116201 A KR 1020220116201A KR 20220116201 A KR20220116201 A KR 20220116201A KR 20240028887 A KR20240028887 A KR 20240028887A
- Authority
- KR
- South Korea
- Prior art keywords
- receiver
- decoding
- control signal
- binary classifier
- received signal
- Prior art date
Links
- 238000004891 communication Methods 0.000 title claims abstract description 24
- 238000001514 detection method Methods 0.000 title description 48
- 238000011017 operating method Methods 0.000 title 1
- 238000012805 post-processing Methods 0.000 claims abstract description 18
- 125000004122 cyclic group Chemical group 0.000 claims abstract description 10
- 238000000034 method Methods 0.000 claims description 111
- 230000006870 function Effects 0.000 claims description 85
- 230000005540 biological transmission Effects 0.000 claims description 29
- 239000013598 vector Substances 0.000 claims description 29
- 230000004083 survival effect Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 description 54
- 238000010586 diagram Methods 0.000 description 22
- 238000013528 artificial neural network Methods 0.000 description 20
- 239000011159 matrix material Substances 0.000 description 10
- 238000003860 storage Methods 0.000 description 9
- 238000012937 correction Methods 0.000 description 8
- 238000013480 data collection Methods 0.000 description 8
- 241000169170 Boreogadus saida Species 0.000 description 7
- 238000012549 training Methods 0.000 description 7
- 238000010200 validation analysis Methods 0.000 description 5
- 238000013135 deep learning Methods 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 230000010287 polarization Effects 0.000 description 4
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 3
- 238000004904 shortening Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 208000011580 syndromic disease Diseases 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- BQCADISMDOOEFD-UHFFFAOYSA-N Silver Chemical compound [Ag] BQCADISMDOOEFD-UHFFFAOYSA-N 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000010363 phase shift Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 229910052709 silver Inorganic materials 0.000 description 1
- 239000004332 silver Substances 0.000 description 1
- 230000009897 systematic effect Effects 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/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/09—Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
-
- 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
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1525—Determination and particular use of error location polynomials
- H03M13/1535—Determination and particular use of error location polynomials using the Euclid algorithm
-
- 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
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0036—Systems modifying transmission characteristics according to link quality, e.g. power backoff arrangements specific to the receiver
- H04L1/0038—Blind format detection
-
- 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
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Quality & Reliability (AREA)
- Error Detection And Correction (AREA)
Abstract
일 실시예에 따른 무선 통신 시스템의 수신기는 폴라 디코딩에서 수행되는 순환 중복 검사에 의해 수신기의 수신 신호 내에 포함된 송신기가 전송한 제어 신호를 검출하는 디코더, 및 폴라 디코딩을 통해 획득한 멀티 모달 입력들에 기초하여 수신 신호 내에 제어 신호가 포함되어 있는지 여부를 판별하는 후처리 모듈을 포함할 수 있다.A receiver of a wireless communication system according to an embodiment includes a decoder that detects a control signal transmitted by a transmitter included in a received signal of the receiver by a cyclic redundancy check performed in polar decoding, and multi-modal inputs obtained through polar decoding. Based on this, it may include a post-processing module that determines whether a control signal is included in the received signal.
Description
아래의 개시는 무선 통신 시스템에서 블라인드 검출을 수행하는 수신기 및 그 동작 방법에 관한 것이다.The disclosure below relates to a receiver that performs blind detection in a wireless communication system and a method of operating the same.
5G 무선 통신 시스템의 수신단에서는 상향 링크 또는 하향 링크의 시나리오를 가리지 않고, 현재 수신한 패킷 또는 현재 수신한 신호 내에 송신기가 전송한 제어 신호가 포함되어 있는지를 판별하는 '블라인드 검출(blind detection)'을 수행할 수 있다. 5G 무선 통신 시스템에서는 제어 신호의 디코딩 과정에 포함된 순환 중복 검사(cyclic redundancy check; 이하, 'CRC')에 의해 블라인드 검출을 수행할 수 있다. 예를 들어, 상대적으로 적은 비트 수의 CRC 부호가 사용되는 경우, 원하는 신호가 아니라 잡음만이 수신된 경우에도 디코딩화(decoding)에 성공하였다고 잘못 탐지하는 오검출률(false alarm rate; FAR)이 증가할 수 있다. 오검출률(FAR)의 증가는 수신단에서 원하는 패킷이 수신되었지만 디코딩화에 실패하는 비율인 미검출률(missed detection ratio; MDR)과 더불어 통신 시스템 전체의 쓰루풋(throughput)을 하락시킬 뿐만 아니라, 지연 시간(latency) 측면에서의 성능 하락을 야기할 수 있다.The receiving end of the 5G wireless communication system uses 'blind detection' to determine whether the control signal sent by the transmitter is included in the currently received packet or currently received signal, regardless of uplink or downlink scenario. It can be done. In the 5G wireless communication system, blind detection can be performed using a cyclic redundancy check (hereinafter referred to as 'CRC') included in the decoding process of the control signal. For example, when a CRC code with a relatively small number of bits is used, the false alarm rate (FAR), which incorrectly detects that decoding is successful even when only noise is received and not the desired signal, increases. can do. An increase in the false detection rate (FAR) not only reduces the throughput of the entire communication system along with the missed detection ratio (MDR), which is the rate at which the desired packet is received at the receiving end but fails to be decoded, but also reduces the delay time ( This may cause a decrease in performance in terms of latency.
일 실시예에 따르면, 무선 통신 시스템의 수신기는 폴라 디코딩(polar decoding)에서 수행되는 순환 중복 검사(cyclic redundancy check; CRC)에 의해 상기 수신기의 수신 신호 내에 포함된 송신기가 전송한 제어 신호를 검출하는 디코더, 및 상기 폴라 디코딩을 통해 획득한 멀티 모달 입력들(multi-modal inputs)에 기초하여 상기 수신 신호 내에 상기 제어 신호가 포함되어 있는지 여부를 판별하는 후처리 모듈을 포함할 수 있다. According to one embodiment, a receiver of a wireless communication system detects a control signal transmitted by a transmitter included in a received signal of the receiver by a cyclic redundancy check (CRC) performed in polar decoding. It may include a decoder and a post-processing module that determines whether the control signal is included in the received signal based on multi-modal inputs obtained through the polar decoding.
일 실시예에 따르면, CA-SCL(CRC aided successive cancellation list) 디코더를 포함하는 수신기의 동작 방법은 상기 CA-SCL 디코더의 폴라 디코딩을 통해 멀티 모달 입력들을 획득하는 동작, 상기 멀티 모달 입력들을 결합하여 벡터화하는 동작, 및 상기 벡터화한 멀티 모달 입력들을 이진 분류기에 입력함으로써 상기 수신기의 수신 신호 내에 송신기가 전송한 제어 신호가 포함되어 있는지 여부를 판별하는 동작을 포함할 수 있다.According to one embodiment, a method of operating a receiver including a CRC aided successive cancellation list (CA-SCL) decoder includes obtaining multi-modal inputs through polar decoding of the CA-SCL decoder, combining the multi-modal inputs, It may include an operation of vectorizing and an operation of determining whether a control signal transmitted from a transmitter is included in the received signal of the receiver by inputting the vectorized multi-modal inputs into a binary classifier.
도 1는 일 실시예에 따른 수신기의 블록도이다.
도 2는 일 실시예에 따른 폴라 디코딩을 위한 코드 트리 및 경로 메트릭을 설명하기 위한 도면이다.
도 3은 일 실시예에 따른 CA-SCL 디코더의 송,수신 동작을 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 무선 통신 시스템의 송신기가 수신기에게 전송하는 전송 비트 시퀀스를 생성하는 과정을 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 수신기에서 폴라 코드를 이용하여 디코딩을 수행하는 과정을 설명하기 위한 도면이다.
도 6은 일 실시예에 따른 무선 통신 시스템의 수신기에서 CRC 검사 이외에 추가적으로 디코딩 결과의 유효성을 판단하는 방법을 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 딥 러닝 기반의 멀티 모달 블라인드 검출을 수행하는 수신기의 모식도이다.
도 8은 일 실시예에 따른 멀티 모달 입력들을 수집하는 방법 및 이진 분류기의 학습 방법을 설명하기 위한 도면이다.
도 9는 일 실시예에 따른 힌지 손실 함수를 이용한 학습 방법을 설명하기 위한 도면이다.
도 10은 일 실시예에 따른 수신기의 동작 방법을 나타낸 흐름도이다.1 is a block diagram of a receiver according to one embodiment.
FIG. 2 is a diagram illustrating a code tree and path metric for polar decoding according to an embodiment.
Figure 3 is a diagram for explaining the transmission and reception operations of a CA-SCL decoder according to an embodiment.
FIG. 4 is a diagram illustrating a process of generating a transmission bit sequence transmitted by a transmitter of a wireless communication system to a receiver according to an embodiment.
FIG. 5 is a diagram illustrating a process of performing decoding using a polar code in a receiver according to an embodiment.
FIG. 6 is a diagram illustrating a method of determining the validity of a decoding result in addition to the CRC check in a receiver of a wireless communication system according to an embodiment.
Figure 7 is a schematic diagram of a receiver that performs deep learning-based multi-modal blind detection according to an embodiment.
Figure 8 is a diagram for explaining a method of collecting multi-modal inputs and a method of learning a binary classifier according to an embodiment.
Figure 9 is a diagram for explaining a learning method using a hinge loss function according to an embodiment.
Figure 10 is a flowchart showing a method of operating a receiver according to an embodiment.
본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나", 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제1", "제2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제1) 구성요소가 다른(예: 제2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.The various embodiments of this document and the terms used herein are not intended to limit the technical features described in this document to specific embodiments, and should be understood to include various changes, equivalents, or replacements of the embodiments. In connection with the description of the drawings, similar reference numbers may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of the above items, unless the relevant context clearly indicates otherwise. As used herein, “A or B”, “at least one of A and B”, “at least one of A or B”, “A, B or C”, “at least one of A, B and C”, and “A Each of phrases such as “at least one of , B, or C” may include any one of the items listed together in the corresponding phrase, or any possible combination thereof. Terms such as "first", "second", or "first" or "second" may be used simply to distinguish one element from another, and may be used to distinguish such elements in other respects, such as importance or order) is not limited. One (e.g. first) component is said to be "coupled" or "connected" to another (e.g. second) component, with or without the terms "functionally" or "communicatively". Where mentioned, it means that any of the components can be connected to the other components directly (e.g. wired), wirelessly, or through a third component.
본 문서의 다양한 실시예들에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로와 같은 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일 실시예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다.The term “module” used in various embodiments of this document may include a unit implemented in hardware, software, or firmware, and is interchangeable with terms such as logic, logic block, component, or circuit, for example. It can be used as A module may be an integrated part or a minimum unit of the parts or a part thereof that performs one or more functions. For example, according to one embodiment, the module may be implemented in the form of an application-specific integrated circuit (ASIC).
본 문서의 다양한 실시예들은 기기(machine)에 의해 읽을 수 있는 저장 매체(storage medium)에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어로서 구현될 수 있다. 예를 들면, 기기의 프로세서는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장 매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장 매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.Various embodiments of this document may be implemented as software including one or more instructions stored in a storage medium that can be read by a machine. For example, the processor of the device may call at least one instruction among one or more instructions stored from a storage medium and execute it. This allows the device to be operated to perform at least one function according to the at least one instruction called. The one or more instructions may include code generated by a compiler or code that can be executed by an interpreter. A storage medium that can be read by a device may be provided in the form of a non-transitory storage medium. Here, 'non-transitory' only means that the storage medium is a tangible device and does not contain signals (e.g. electromagnetic waves), and this term refers to cases where data is semi-permanently stored in the storage medium. There is no distinction between temporary storage cases.
일 실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory(CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예: 스마트 폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.According to one embodiment, methods according to various embodiments disclosed in this document may be provided and included in a computer program product. Computer program products are commodities and can be traded between sellers and buyers. The computer program product may be distributed in the form of a machine-readable storage medium (e.g. compact disc read only memory (CD-ROM)) or through an application store (e.g. Play StoreTM) or on two user devices (e.g. It can be distributed (e.g. downloaded or uploaded) directly between smart phones) or online. In the case of online distribution, at least a portion of the computer program product may be at least temporarily stored or temporarily created in a machine-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or a relay server.
다양한 실시예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있으며, 복수의 개체 중 일부는 다른 구성요소에 분리 배치될 수도 있다. 다양한 실시예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.According to various embodiments, each component (e.g., module or program) of the above-described components may include a single or plural entity, and some of the plurality of entities may be separately placed in other components. there is. According to various embodiments, one or more of the components or operations described above may be omitted, or one or more other components or operations may be added. Alternatively or additionally, multiple components (eg, modules or programs) may be integrated into a single component. In this case, the integrated component may perform one or more functions of each component of the plurality of components in the same or similar manner as those performed by the corresponding component of the plurality of components prior to the integration. . According to various embodiments, operations performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, or omitted. Alternatively, one or more other operations may be added.
이하, 실시예들을 첨부된 도면들을 참조하여 상세하게 설명한다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, embodiments will be described in detail with reference to the attached drawings. In the description with reference to the accompanying drawings, identical components will be assigned the same reference numerals regardless of the reference numerals, and overlapping descriptions thereof will be omitted.
도 1는 일 실시예에 따른 수신기의 블록도이다. 도 1을 참조하면, 일 실시예에 따른 수신기(100)는 디코더(110) 및 후처리 모듈(130)을 포함할 수 있다. 1 is a block diagram of a receiver according to one embodiment. Referring to FIG. 1, the
디코더(110)는 폴라 디코딩(polar decoding)(예: 도 5의 동작 520의 폴라 디코딩, 및/또는 도 6의 동작 610의 폴라 디코딩)에서 수행되는 순환 중복 검사(cyclic redundancy check; 이하, 'CRC')에 의해 수신기(100)의 수신 신호(예: 도 7의 수신 신호(701)) 내에 포함된 송신기가 전송한 제어 신호를 검출할 수 있다. 수신 신호(701)은 예를 들어, 상향 링크의 제어 정보를 포함하는 수신 패킷일 수 있으나, 반드시 이에 한정되지는 않는다. 폴라 디코딩(520, 610) 및 폴라 코드(polar code)에 대하여는 아래의 도 2 내지 도 3을 참조하여 보다 구체적으로 설명한다. The
디코더(110)는 예를 들어, CRC-지원 순차적 제거 리스트(CRC-aided successive cancellation list; 이하, 'CA-SCL') 디코더일 수 있으나, 반드시 이에 한정되지는 않는다. CA-SCL 디코더의 디코딩 과정에 대하여는 아래의 도 3 내지 도 6을 참조하여 보다 구체적으로 설명한다. The
수신기(100)는 디코더(110)의 CA-SCL 디코딩 과정 중 주어지는 경로 메트릭(path metric; PM)들(예: 도 7의 경로 메트릭들 (703))을 기반으로 검출 메트릭(detection metric; DM) 검사라는 후처리(post-processing)를 수행하는 후처리 모듈(130)을 포함할 수 있다. The
후처리 모듈(130)은 디코더(110)의 폴라 디코딩(520, 610)을 통해 획득한 멀티 모달 입력들(multi-modal inputs)에 기초하여 수신 신호(701) 내에 제어 신호가 포함되어 있는지 여부를 판별할 수 있다. 후처리 모듈(130)이 디코더(110)의 폴라 디코딩(520, 610)을 통해 멀티 모달 입력들(multi-modal inputs)을 획득하는 과정은 아래의 도 2 내지 도 6을 참조하여 보다 구체적으로 설명한다.The
멀티 모달 입력들은 예를 들어, 폴라 디코딩(예: 도 5의 동작 520의 폴라 디코딩, 도 6의 동작 610의 폴라 디코딩)에서 획득되는 복수 개의 생존 경로들(survival paths)의 비트열을 포함하는 경로 메트릭들(path metrics)(예: 도 7의 경로 메트릭들 P = {PM1, PM2, .. , PML}(703)), 폴라 디코딩(520, 610)의 결과를 폴라 인코딩(예: 도 6의 동작 650의 폴라 재인코딩(polar re-encoding) 및/또는 도 7의 폴라 인코딩(740))에 의해 재부호화하여 획득한 제곱 유클리드 거리 비율(SEDR)(예: 도 7의 제곱 유클리드 거리 비율(SEDR)()(705)), 폴라 디코딩에서 주어지는 송신 벡터들 사이의 상관 관계를 측정한 상관 메트릭(correlation metric)(예: 도 7의 상관 메트릭(correlation metric)()(707)), 및 수신 패킷의 신호 대 잡음비(signal to noise ratio; SNR) 중 적어도 두 가지의 유형을 포함할 수 있다. Multi-modal inputs are, for example, a path containing a bit string of a plurality of survival paths obtained in polar decoding (e.g., polar decoding in
경로 메트릭들(PMs)은 폴라 디코딩(520, 610)에서 획득되는 복수 개의 생존 경로들(survival paths)의 비트열을 포함할 수 있다. 폴라 디코딩(520, 610)에서 획득되는 생존 경로들, 및 경로 메트릭들에 대하여는 아래의 도 2를 참조하여 보다 구체적으로 설명한다. Path metrics (PMs) may include a bit string of a plurality of survival paths obtained from polar decoding (520, 610). Survival paths and path metrics obtained from
제곱 유클리드 거리 비율(SEDR)은 예를 들어, 도 6에 도시된 것과 같이 동작 610의 폴라 디코딩의 결과를 동작 650과 같은 폴라 재인코딩(polar re-encoding)에 의해 재부호화하여 획득할 수 있다. 제곱 유클리드 거리 비율(SEDR)은 동작 610의 폴라 디코딩을 통해 획득한 송신 비트열 추정치()(예: 도6의 추정된 부호화 입력 비트 시퀀스()(605))를 폴라 재인코딩(polar re-encoding)에 의해 재부호화하여 획득한 송신 벡터 추정치(예: 도 6의 송신 벡터 추정치()(609))로부터 산출할 수 있다. 폴라 디코딩을 통해 송신 비트열 추정치를 획득하는 과정 및 송신 비트열 추정치를 폴라 인코딩(예: 도 6의 동작 650의 폴라 재인코딩(polar re-encoding) 및/또는 도 7의 폴라 인코딩(740))에 의해 재부호화하는 과정에 대하여는 아래의 도 4 내지 도 6을 참조하여 보다 구체적으로 설명한다. The squared Euclidean distance ratio (SEDR) can be obtained, for example, by re-encoding the result of polar decoding in
후처리 모듈(130)은 멀티 모달 입력들 중 적어도 둘을 기초로, 수신 신호(701) 내에 제어 신호가 포함되었을 확률에 대한 추정치 (예: 도 7의 추정치(780))를 산출하는 이진 분류기(binary classifier)(135)를 포함할 수 있다. 이진 분류기(135)는 예를 들어, 심층 신경망(deep neural network; DNN)의 딥러닝(deep learning) 기법에 의해 학습된 것일 수 있다. 이진 분류기(135)는 복수의 레이어들로 구성된 완전 연결망(fully-connected network; FCN)(예: 도 7의 완전 연결망(770))을 포함할 수 있다. 완전 연결망(FCN)(770)의 출력은 예를 들어, 이진 확률의 형태를 가질 수 있다. The
이진 분류기(135)는 예를 들어, 추정치 (780)가 임계치(threshold) 보다 크면, 제어 신호가 수신되었다고 판별할 수 있다. 예를 들어, 제어 신호가 수신되었다고 판별한 경우, 이진 분류기(135)는 RegTx(registered transmission) 플래그(flag)를 '1'로 설정할 수 있다.
또한, 이진 분류기(135)는 추정치 (780)가 임계치보다 작거나 같으면, 제어 신호가 수신되지 않았다고, 다시 말해 제어 신호 없이 잡음만이 수신단의 입력으로 들어왔다고 판별할 수 있다. 제어 신호가 수신되지 않았다고 판별한 경우, 이진 분류기(135)는 NoTx(no transmission) 플래그를 '1'로 설정할 수 있다. 임계치는 예를 들어, 0.5일 수 있으나, 반드시 이에 한정되지는 않는다. Additionally, the
후처리 모듈(130)은 예를 들어, 멀티 모달 입력들 중 적어도 둘을 하나의 벡터로 연결(concatenate)하여 입력 데이터를 생성할 수 있다. 예를 들어, 멀티 모달 입력들 중 제1 멀티 모달 입력이 10 x 1 크기의 벡터이고, 제2 멀티 모달 입력이 8 x 1 크기의 벡터이며, 제3 멀티 모달 입력이 3 x 1 크기의 벡터라고 하자. 후처리 모듈(130)은 제1 멀티 모달 입력, 제2 멀티 모달 입력 및 제3 멀티 모달 입력을 결합하여 21 x 1 크기의 벡터를 입력 데이터로 생성할 수 있다. For example, the
후처리 모듈(130)은 입력 데이터를 이진 분류기(135)에 인가할 수 있다. 이진 분류기(135)는 입력 데이터를 이용하여 수신 신호(701) 내에 제어 신호가 포함되었을 이진 확률을 출력할 수 있다. The
이진 분류기(135)는 멀티 모달 입력들 중 적어도 둘을 이진 분류기(135)에 입력으로 인가하여 수신 신호(701)이 제어 신호를 포함하는지 여부를 레이블링(labeling) 함으로써 학습될 수 있다. 완전 연결망(FCN)(770)의 출력이 이진 확률이므로, 예를 들어, 이진 교차 엔트로피(cross-entropy) 손실 함수 및/또는 힌지 손실(hinge loss) 함수와 같이 이진 분류(binary classification)에 사용하는 손실 함수가 이진 분류기(135)의 학습에 필요한 손실 함수(loss function)로 사용될 수 있다. The
이진 분류기(135)의 학습에 이용되는 손실 함수는 예를 들어, 추정치 (780)를 산출하도록 이진 분류기(135)를 학습시키는 이진 교차 엔트로피(cross-entropy) 손실 함수를 포함할 수 있다. 이 경우, 이진 분류기(135)는 이진 교차 엔트로피 손실 함수를 이용하여 수신 신호(701) 내에 제어 신호가 포함되었을 확률에 대한 추정치 (780)를 산출하도록 학습될 수 있다. The loss function used for learning the
또는, 이진 분류기(135)의 학습에 이용되는 손실 함수는 예를 들어, 수신 신호(701) 내에 잡음이 포함된 경우와 수신 신호(701) 내에 제어 신호가 포함된 경우를 구분하는 결정 경계(decision boundary)를 찾는 힌지 손실(Hinge loss) 함수를 포함할 수 있다. 이 경우, 이진 분류기(135)는 힌지 손실 함수를 이용하여 결정 경계를 찾도록 학습될 수 있다. Alternatively, the loss function used for learning of the
일 실시예에서는 결정 경계를 찾는 데 특화된 손실 함수인 힌지 손실 함수를 활용하여 이진 분류기(135)의 파라미터를 학습시킴으로써 다양한 입력에 의해 미검출률(missed detection ratio; MDR) 손실을 줄이고, 오검출률(false alarm rate; FAR)을 개선할 수 있다. In one embodiment, the missing detection ratio (MDR) loss is reduced by various inputs by learning the parameters of the
도 2는 일 실시예에 따른 폴라 디코딩을 위한 코드 트리 및 경로 메트릭을 설명하기 위한 도면이다. 도 2를 참조하면, 일 실시예에 따른 CA-SCL 폴라 디코더의 코드 트리(code tree)(200)가 도시된다. FIG. 2 is a diagram illustrating a code tree and path metric for polar decoding according to an embodiment. 2, a
무선 통신 시스템에서, 송신기와 수신기(예: 도 1의 수신기(100)) 사이에 데이터를 송신 및/또는 수신하는 경우, 통신 채널에 존재하는 잡음으로 인해 데이터 오류가 발생할 수 있다. 수신기(100)가 데이터 오류를 정정하는 데는 오류 검출 부호(error detection codes) 기법, 및/또는 오류 정정 부호(error correcting codes, ECC) 기법과 같이 미리 설계된 부호화 방식이 이용될 수 있다. 송신기 및 수신기(100) 사이의 통신에 사용하는 오류 정정 부호를 채널 부호화(channel coding)라고 부를 수 있다. 오류 정정 부호 기법에 따라, 송신기는 전송하고자 하는 데이터 비트에 여분의 비트(redundant bit)를 추가하여 송신할 수 있다. 수신기(100)는 이러한 여분의 비트를 활용하여, 전송하고자 하는 데이터 비트에 포함된 오류를 정정하는 디코딩(decoding) 동작을 수행할 수 있다. In a wireless communication system, when data is transmitted and/or received between a transmitter and a receiver (e.g.,
오류 정정 부호 기법에는 예를 들어, 컨볼루션 부호(convolutional coding) 방식, 터보 부호(turbo coding) 방식, 저밀도 패리티 검사 부호(low-density parity-check coding (LDPC) coding) 방식, 및 폴라 코드(polar coding) 방식과 같은 다양한 방식들이 존재할 수 있다. 터보 부호 방식, 저밀도 패리티 검사 부호 방식, 및 폴라 코드 방식은 이론적인 채널 용량(channel capacity)에 근접하는 성능을 갖는 부호 방식으로서 다양한 통신 시스템에서 활용될 수 있다. Error correction coding techniques include, for example, convolutional coding, turbo coding, low-density parity-check coding (LDPC) coding, and polar coding. There may be various methods such as coding method. The turbo code method, low-density parity check code method, and polar code method are code methods with performance approaching theoretical channel capacity and can be used in various communication systems.
예를 들어, 폴라 코드(polar code)는 E. Arikan에 의해 제안된 오류 정정 부호로써 낮은 부호화/복잡도 성능을 가지면서도 모든 B-DMCs(binary discrete memoryless channels)에서 데이터 전송 한계인 채널 용량(channel capacity)을 달성할 수 있다. 폴라 코드는 순차적 제거(successive cancellation, SC) 디코딩 시에 발생하는 채널 양극화(channel polarization) 현상을 바탕으로, 낮은 디코딩 복잡도로 점-대-점 채널 용량을 달성할 수 있다. 폴라 코드를 다른 채널 용량 근접 부호(capacity-approaching codes)인 터보 코드(turbo code), 또는 LDPC(low-density parity-check) 코드와 대비하면, 짧은 길이의 부호 전송 시의 오류-정정 성능 및 디코딩 복잡도 측면에서 폴라 코드가 유리할 수 있다. 폴라 코드는 SCL(순차적 제거 리스트) 디코딩을 사용하였을 때의 성능 또한 우수함이 확인되었으며, CRC(cyclic redundancy check) 부호와 같은 연접된 오류 검출 부호와 SCL 디코딩을 사용할 경우, 다른 채널 부호와 비교하여 더 우수한 성능을 가질 수 있다. For example, polar code is an error correction code proposed by E. Arikan that has low coding/complexity performance but also has channel capacity, which is the data transmission limit in all B-DMCs (binary discrete memoryless channels). ) can be achieved. Polar codes can achieve point-to-point channel capacity with low decoding complexity based on the channel polarization phenomenon that occurs during sequential cancellation (SC) decoding. When polar codes are compared with other channel capacity-approaching codes, such as turbo codes or low-density parity-check (LDPC) codes, error-correction performance and decoding when transmitting short-length codes Polar codes may be advantageous in terms of complexity. It was confirmed that polar code also has excellent performance when using SCL (sequential elimination list) decoding, and when SCL decoding is used with concatenated error detection codes such as CRC (cyclic redundancy check) codes, it performs better compared to other channel codes. It can have excellent performance.
폴라 코드는 5세대(5G) 이동 통신 표준인 3GPP NR(new radio)에서 상향 링크 제어 정보(uplink control information; UCI) 및/또는 하향 링크 제어 정보(downlink control information; DCI)의 전송에 선호되는 코딩 방식에 해당할 수 있다. 폴라 코드는 예를 들어, 제어 채널(예: eMBB 제어 채널)을 통해 짧은 길이를 갖는 제어 정보를 전송할 때 이용될 수 있다.Polar code is the preferred coding for transmission of uplink control information (UCI) and/or downlink control information (DCI) in 3GPP new radio (NR), the fifth generation (5G) mobile communication standard. This may apply to a method. Polar codes can be used, for example, when transmitting control information with a short length through a control channel (e.g., eMBB control channel).
폴라 코드를 이용하는 무선 통신 시스템에서는 CRC 부호와 같은 연접된 오류 검출 부호와 디코딩 시 생성된 경로 메트릭(path-metric, PM)을 활용하여 디코딩 결과의 유효성 검사를 수행할 수 있다. 하지만 CRC 부호의 길이가 짧거나, 부호의 입력 및 출력 길이가 짧은 경우에는 CRC 부호 또는 디코딩 시에 생성된 경로 메트릭을 활용하는 방법만으로는 오류 검출 성능에 한계가 존재할 수 있다.In a wireless communication system using a polar code, the validity of the decoding result can be checked using a concatenated error detection code such as a CRC code and a path metric (PM) generated during decoding. However, if the length of the CRC code is short or the input and output lengths of the code are short, there may be limits to error detection performance just by using the CRC code or the path metric generated during decoding.
따라서, 일 실시예에서는 CRC(cyclic redundancy check) 부호와 같은 연접된 오류 검출 부호와 SCL 디코딩을 사용할 경우, 다른 채널 부호와 비교하여 더 우수한 성능을 가지며 복잡성과 중복성을 해결할 수 있는 CA-SCL 디코더를 이용할 수 있다. CA-SCL 디코더는 코드 비트를 세그먼트로 나누고 그 사이에 CRC 비트(또는 CRC 부호)를 삽입하여 디코딩이 끝날 때까지 기다리지 않고 세그먼트 당 유효하지 않은 후보를 배제할 수 있다. Therefore, in one embodiment, when using a concatenated error detection code such as a CRC (cyclic redundancy check) code and SCL decoding, a CA-SCL decoder is used that has better performance compared to other channel codes and can resolve complexity and redundancy. Available. The CA-SCL decoder divides the code bits into segments and inserts CRC bits (or CRC codes) between them to exclude invalid candidates per segment without waiting for decoding to finish.
CA-SCL 디코딩에서 비트가 산출되는 방식은, 도 2와 같이 비트열 경로를 나타내는 트랠리스 다이어그램(trellis diagram), 즉 코드 트리(200)에서 생존 경로(예: 0-0-1-1)(210)를 따라가며 경로 메트릭(path metric) 값을 계산한 후, 가장 작은 값을 가지는 경로에 해당하는 비트열을 선택하는 방식일 수 있다. 경로 메트릭에 대하여는 아래의 도 3 및 도 5를 참조하여 보다 구체적으로 설명한다.The way bits are calculated in CA-SCL decoding is a trellis diagram showing a bit string path as shown in FIG. 2, that is, a survival path (e.g., 0-0-1-1) in the
도 3은 일 실시예에 따른 CA-SCL 디코더의 송,수신 동작을 설명하기 위한 도면이다. 도 3을 참조하면, 일 실시예에 따른 CA-SCL 디코더(110)의 동작을 설명하기 위한 도면(300)이 도시된다. Figure 3 is a diagram for explaining the transmission and reception operations of a CA-SCL decoder according to an embodiment. Referring to FIG. 3, a diagram 300 is shown to explain the operation of the CA-
무선 통신 시스템에 있어서 수신기(예: 도 1의 수신기(100))에 포함되는 디코더는 통신 및 방송 시스템에서 발생할 수 있는 오류를 고치기 위해, 송신기로부터 수신한 신호를 바탕으로 디코딩(decoding)를 수행할 수 있다. 하지만 무선 통신 환경에서는 디코더가 의도하지 않은 신호를 바탕으로 디코딩을 수행하거나, 혹은 정상적인 신호를 수신하여 디코딩을 수행하였으나, 디코딩 결과가 실제 전송된 정보와 다른 상황이 발생할 수 있다. In a wireless communication system, a decoder included in a receiver (e.g.,
예를 들어, 무선 통신 시스템에서의 불연속 송신(discontinuous transmission, DTX)과 같은 환경에서는 실제 송신된 신호가 없음에도, 디코더가 시스템에서 발생한 잡음을 입력으로 삼아 디코딩을 수행할 수 있다. 또는, 무선 통신 시스템에서의 블라인드 검출과 같은 환경에서는 디코더가 실제 기대한 신호가 아닌 임의의 신호를 입력으로 삼아 디코딩을 수행할 수 있다. 이 밖에도, 디코더가 스케쥴링된 신호를 수신하여 디코딩을 수행하더라도, 최종적인 디코딩 결과가 실제 전송된 정보와 다를 수 있다.For example, in an environment such as discontinuous transmission (DTX) in a wireless communication system, the decoder may perform decoding using noise generated in the system as input even though there is no actual transmitted signal. Alternatively, in an environment such as blind detection in a wireless communication system, the decoder may perform decoding using an arbitrary signal rather than an actual expected signal as an input. In addition, even if the decoder receives the scheduled signal and performs decoding, the final decoding result may be different from the actual transmitted information.
상술한 바와 같이 실제 신호가 아닌 잡음, 및/또는 랜덤 신호에 대한 디코딩을 수행하는 경우, 디코더는 디코딩 실패(fail)를 보고(report)할 수 있다. 또는, 수신기(100)가 수신한 신호에 대한 디코딩을 수행했더라도 실제 송신된 정보가 아닌 다른 정보로 복원 혹은 디코딩했다면, 디코더는 디코딩 실패를 보고할 수 있다. As described above, when decoding is performed on noise and/or random signals rather than actual signals, the decoder may report a decoding failure. Alternatively, even if the
이처럼 디코더가 디코딩 전 혹은 후에 주어진 환경 및/또는 디코딩 결과를 바탕으로 디코딩 성공 혹은 실패를 판단하는 것을 디코딩 결과의 '유효성 판단(validity check)'또는 '후속 오류 검출(post error detection)'이라고 지칭할 수 있다. In this way, the decoder's judgment of decoding success or failure based on the environment and/or decoding results given before or after decoding can be referred to as 'validity check' or 'post error detection' of the decoding result. You can.
디코딩 결과의 유효성을 판단하는 데에는 예를 들어, 사용하는 채널 부호의 구조에 따른 신드롬 검사(syndrome check)를 활용하는 방법, CRC 부호와 같이 연접된 오류 검출 부호를 활용하는 방법, 및/또는 디코딩 시에 획득한 메트릭(metric)을 활용하는 방법이 이용될 수 있다. 신드롬 검사를 활용하는 방법은 디코딩에 의해 얻어진 추정 코드 워드 비트 시퀀스(estimated codeword bit sequence)가 채널 부호에 의해서 구성되는 선형 제약(linear constraint)을 모두 만족하는지 여부를 확인하는 방법일 수 있다. CRC 부호와 같이 연접된 오류 검출 부호를 활용하는 방법은 디코딩 후에 얻어진 추정 비트 시퀀스(estimated bit sequence)를 연접된 오류 검출 부호로 검사하는 방법일 수 있다. 디코딩 시에 획득한 메트릭을 활용하는 방법은 디코더에서 생성한 메트릭 값이 사전에 정해진 임계값(threshold) 보다 큰지 여부를 확인하여 오류 존재 여부를 판단하는 방법일 수 있다. 상술한 바와 같은 디코딩 결과의 유효성을 판단하는 방법은 송신기 및 수신기(100)가 시스템에서 사용하는 채널 부호의 특징에 따라 선택될 수 있다.To determine the validity of the decoding result, for example, a method of utilizing a syndrome check according to the structure of the channel code used, a method of utilizing a concatenated error detection code such as a CRC code, and/or during decoding A method of utilizing the metric obtained can be used. A method of utilizing a syndrome check may be a method of checking whether the estimated codeword bit sequence obtained through decoding satisfies all linear constraints formed by the channel code. A method of utilizing a concatenated error detection code, such as a CRC code, may be a method of checking an estimated bit sequence obtained after decoding with a concatenated error detection code. A method of utilizing the metric obtained during decoding may be a method of determining whether an error exists by checking whether the metric value generated by the decoder is greater than a predetermined threshold. The method of determining the validity of the decoding result as described above may be selected according to the characteristics of the channel code used in the system by the transmitter and
일 실시예에서는 디코딩 전반에 걸쳐 L개의 후보 코드워드를 사용하여 SC를 개선하고, 블록 오류율(block error rate; BLER)을 향상시키기 위해 SCL 디코더에 CRC 부호가 추가되는 CA-SCL 디코딩을 이용할 수 있다. 여기서, L은 SCL 디코딩을 위한 리스트의 크기이자, 후보 코드워드들의 개수에 해당할 수 있다. 리스트의 크기 L은 SC 디코딩의 수를 확장할 수 있다. CA-SCL의 오류 정정을 향상시키기 위해 최적의 CRC 부호를 선택하는 것이 중요할 수 있다. In one embodiment, SC is improved by using L candidate codewords throughout decoding, and CA-SCL decoding in which a CRC code is added to the SCL decoder to improve the block error rate (BLER) can be used. . Here, L is the size of the list for SCL decoding and may correspond to the number of candidate codewords. The size of the list L can expand the number of SC decodings. Selecting the optimal CRC code may be important to improve error correction in CA-SCL.
일 실시예에 따른 수신기(100)는 순차적 제거 리스트(SCL)에 포함된 비트열들에 대한 디코딩 끝에 CRC 부호를 감지 도구로 도입할 수 있다. The
예를 들어, 도 3에 도시된 것과 같이 k 비트의 메시지(301)가 수신되면, 수신기(100)는 CRC 인코더(CRC encoder)(310)에 의해 k 비트의 메시지(301)에 r비트의 CRC 부호를 추가할 수 있다. 여기서, r = 6 일 수 있으나, 반드시 이에 한정되지는 않는다. CRC 인코더(310)에 의해 CRC 부호가 추가된 전체 K(K = k+r) 비트 메시지는 폴라 인코더(polar encoder)(320)로 전달될 수 있다. For example, as shown in FIG. 3, when a k-
폴라 인코더(polar encoder)(320)는 '비트 편광(bit polarization)'을 사용하여 폴라 코딩을 수행될 수 있다. 비트 편광은 정보 전송에 사용하는 전체 비트열을 '정보 비트들(info bits)'과 '프로즌 비트들(frozen bits)'로 나눈 다음, 프로즌 비트들은 활용하지 않고 정보 비트들에 전송하고자 하는 정보(예: N 비트들(bits))를 실어 부호화할 수 있다. The
폴라 인코더(320)로 인코딩된 신호(예: N bits)는 변조기(325)에 의한 변조(modulation) 과정을 거친 후 전송 채널(transmission channel)(330)을 통해 전송될 수 있다. 전송 채널(330)을 통해 수신된 신호(예: N bits)는 복조기(335)에 의해 복조(demodulation)되고, 복조된 N 비트들에 해당하는 정보는 순차적 제거 리스트 디코더(SCL decoder)(340)로 전달될 수 있다. A signal (e.g., N bits) encoded by the
수신기(100)는 순차적 제거 리스트 디코더(SCL decoder)(340)에 의해 순차적 제거 리스트(successive cancellation, SCL)를 생성하여 폴라 코드를 디코딩할 수 있다. 예를 들어, 도 2에 도시된 것과 같은 코드 트리(200)에서 경로(path)를 따라가며 경로 메트릭(path metric) 값을 계산한 후, 가장 작은 값을 가지는 경로에 해당하는 비트열을 선택하여 순차적 제거 리스트를 생성할 수 있다. 수신기(100))는 폴라 코드의 디코딩 후에 경로 메트릭(path metric)을 기반으로 디코딩 결과의 유효성을 판단할 수 있다. 수신기(100)는 순차적 제거 리스트(SCL)에 포함된 비트열들 중 임계치보다 큰 경로 메트릭 값을 가진 적어도 하나의 후보 시퀀스(candidate sequence)(345)가 선택된 경우, CRC 통과 여부를 체크하기 위해 해당 후보를 CRC 검출기(CRC detector)(350)로 전송할 수 있다. The
CRC 검출기(350)는 CRC 체크 결과(check results)(355), 다시 말해 해당 후보의 CRC 통과 여부를 순차적 제거 리스트 디코더(SCL decoder)(340)로 제공할 수 있다. The
수신기(100)는 CRC 검출기(350)를 통과한 후보가 없으면, 디코딩 실패(fail)라고 결정할 수 있다. 이와 달리, CRC 검출기(CRC detector)(350)를 통과한 후보가 있는 경우, 수신기(100)는 해당 후보를 포함하는 재생성된 메시지 비트들(reproduced message bits)(360)를 출력할 수 있다. If no candidate passes the
CA-SCL 디코더(110)는 도 3에 도시된 순차적 제거 리스트 디코더(SCL decoder)(340) 및 CRC 검출기(350)의 동작을 수행할 수 있다. The CA-
도 4는 일 실시예에 따른 무선 통신 시스템의 송신기가 수신기에게 전송하는 전송 비트 시퀀스를 생성하는 과정을 설명하기 위한 도면이다. 도 4를 참조하면, 일 실시예에 따른 송신기가 전송 비트 시퀀스 (409)를 생성하여 수신기(예: 도 1의 수신기(100))로 전송하는 동작들(410, 420, 430, 440)이 도시된다. FIG. 4 is a diagram illustrating a process of generating a transmission bit sequence transmitted by a transmitter of a wireless communication system to a receiver according to an embodiment. Referring to Figure 4, a transmitter according to one embodiment transmits a
일 실시예에서 송신기가 전송하고자 하는 정보 비트(information bit)의 수는 예를 들어, 개이고, 송신기가 인코딩(encoding)하여 전송 채널을 통해 수신기(100)에게 전송하는 코드 워드 비트(codeword bit)의 수는 예를 들어, 개일 수 있다. In one embodiment, the number of information bits that the transmitter wishes to transmit is, for example, The number of codeword bits that the transmitter encodes and transmits to the
도 4를 참고하면, 송신기는 예를 들어, 전송하고자 하는 길이 A의 정보 비트 시퀀스(information bit sequence)()(401)를 생성할 수 있다. 정보 비트 시퀀스()(401)는 송신기가 전송하고자 하는 전체 정보의 일부에 해당하는 세그먼트(segment)일 수 있다.Referring to FIG. 4, the transmitter, for example, sends an information bit sequence (information bit sequence) of length A to be transmitted. )(401) can be created. Sequence of information bits ( ) 401 may be a segment corresponding to part of the total information that the transmitter wants to transmit.
동작 410에서, 송신기는 연관된 외부 인코더(concatenated outer encoder(s))에 의해 정보 비트 시퀀스()(401)에 대한 외부 부호화(outer code)를 수행할 수 있다. 외부 부호화는 폴라 코드의 SCL 디코딩과 같이 다수의 코드 워드 후보군을 고려하여 디코딩을 진행하는 디코더의 성능을 높이기 위해 사용될 수 있다. SCL 디코딩에 대해서는 아래 도 5 및 도 6에 도시된 수신기(100)의 동작을 통해 자세하게 설명하기로 한다. In
디코더의 성능을 높이기 위한 목적으로 폴라 코드에 연접되어 사용되는 외부 부호로는 예를 들어, CRC 부호와 같은 오류 검출 부호나 BCH(bose chaudhuri hocquenghem) 부호, PC(parity check) 부호, 콘볼루션(convolutional) 부호와 같은 오류 정정 부호가 사용될 수 있다. 외부 부호는 하나만 사용될 수 있고, 혹은 둘 이상의 외부 부호가 복합적으로 사용될 수도 있다. External codes used in conjunction with the polar code to improve decoder performance include, for example, error detection codes such as CRC codes, BCH (bose chaudhuri hocquenghem) codes, PC (parity check) codes, and convolutional codes. ) An error correction code such as the code can be used. Only one external code can be used, or two or more external codes can be used in combination.
3GPP NR에 정의된 폴라 코드 중 상향 링크(uplink) 제어 정보를 위해 사용되는 폴라 코드는 정보 비트의 길이에 따라 달라질 수 있다. 예를 들어, 정보 비트의 길이가 20비트 이상인 경우, 11 비트의 CRC 부호가 사용되고, 정보 비트의 길이가 19비트 이하인 경우, 3비트 PC 부호와 6비트 CRC 부호가 함께 사용될 수 있다. Among the polar codes defined in 3GPP NR, the polar code used for uplink control information may vary depending on the length of the information bit. For example, when the length of the information bits is 20 bits or more, an 11-bit CRC code can be used, and when the length of the information bits is 19 bits or less, a 3-bit PC code and a 6-bit CRC code can be used together.
이러한 외부 부호화는 보통 체계적(systematic) 부호로서, 입력된 비트 시퀀스에 패리티 비트를 추가하는 방식이 될 수 있다. 하나 이상의 외부 부호에 의해 생성된 전체 패리티 비트의 길이를 ''라고 하고, 외부 부호화에 의해 생성된 메시지 또는 코드 워드의 길이(bits)를 'K = A+B'라고 할 수 있다. 이때, 외부 부호화의 결과로 생성된 비트 시퀀스 (403)일 수 있다. This external encoding is usually a systematic encoding and may be a method of adding parity bits to the input bit sequence. The length of the total parity bits generated by one or more external symbols is ' ', and the length (bits) of the message or code word generated by external encoding can be said to be 'K = A+B'. At this time, the bit sequence generated as a result of external encoding It may be (403).
동작 410에서 수행되는 외부 부호화는 폴라 코드의 부호화 자체에 필수적인 동작은 아니기 때문에 만약 외부 부호화를 고려하지 않는다면, 전체 패리티 비트의 길이() = 0이고, 외부 부호화의 결과로 생성된 비트 시퀀스()(403) = 정보 비트 시퀀스()(401)가 될 수 있다. Since the external encoding performed in
동작 420에서, 송신기는 비트 시퀀스()(403)에 대한 부채널 할당(sub-channel allocation)을 수행하여 비트 시퀀스 (405)를 생성할 수 있다. 비트 시퀀스()(403)는 폴라 코드 부호화를 위해 길이 의 비트 시퀀스 (405)로 매핑될 수 있다. 여기서, 은 모부호(mother polar code)의 크기로 2의 거듭 제곱수이며, 메시지의 크기 (bits) 보다는 큰 값 중 사전에 결정된 기준에 의해 결정될 수 있다. 이때, 비트 시퀀스 (405)를 폴라 코드 인코더(예: 도 3의 폴라 인코더(320))의 '입력 비트 시퀀스(input bit sequence)'라고 부를 수 있다. 부호화 입력 비트 시퀀스 (405)는 사전에 정해진 방법 및 기준에 따라 비트 시퀀스()(403)의 비트가 맵핑된 것일 수 있다. In
부호화 입력 비트 시퀀스 (405)의 각 비트는 이후 송신기와 수신기(100)의 동작에 의한 채널 분화(channel polarization)에 의해 서로 다른 품질의 가상 채널인 부채널(sub-channel)을 통과하는 것처럼 해석될 수 있다. 이 때, 각 부채널을 '합성 채널(synthetic channel)'이라고 부를 수 있다. Encoded input bit sequence Each bit of 405 can be interpreted as if it passes through a sub-channel, which is a virtual channel of different quality, by channel polarization by the operation of the transmitter and
송신기는 예를 들어, 각 부채널의 채널 용량(channel capacity), 바타차리야(Bhatacharayya) 파라미터, 및/또는 밀도 진화(density evolution)의 결과를 이용하여 비트 시퀀스()(403)의 비트들을 부호화 입력 비트 시퀀스 (405)의 비트들에 매핑할 수 있다. 또한 이 과정에서는 이후 동작 440에서 수행되는 부호율 조정(rate matching)이 고려될 수 있다. The transmitter uses, for example, the channel capacity of each subchannel, Bhatacharayya parameters, and/or the result of density evolution to produce a bit sequence ( ) (403) bits encoded input bit sequence It can be mapped to the bits of (405). Additionally, in this process, rate matching performed in
이러한 특징 때문에 비트 시퀀스()(403)를 부호화 입력 비트 시퀀스 (405)에 매핑하는 동작 420을 '부채널 할당' 과정이라 부를 수도 있다. 동작 420에서 비트 시퀀스()(403)가 매핑되는 부채널에 해당하는 부호화 입력 비트 시퀀스 (405)의 비트를 '언프로즌(unfrozen) 비트'라고 부르고, 나머지 부채널에 해당하는 부호화 입력 비트 시퀀스 (405)의 비트를 '프로즌(frozen) 비트'라고 부를 수 있다. 명칭과 같이 프로즌 비트는 그 값이 고정될 수 있다. 프로즌 비트는 예를 들어, '0'으로 값이 고정될 수 있다. Because of these characteristics, the bit sequence ( )(403) encoded input bit sequence The
동작 430에서, 송신기는 생성 행렬 곱셈(generator matrix multiplication)을 수행할 수 있다. 송신기는 길이 의 부호화 입력 비트 시퀀스 (405)를 폴라 코드의 생성 행렬(generator matrix) 과 곱함으로써 동일한 길이 의 부호어 출력 비트 시퀀스 (407)를 생성할 수 있다. 본 명세서에 기재된 부호어는 코드워드(code word)를 의미하며, 용어 '부호어'와 '코드 워드'는 혼용될 수 있다. At
생성 행렬 는 예를 들어, 아래의 [수학식 1] 과 같이 정의될 수 있다.generation matrix For example, can be defined as [Equation 1] below.
log 2 N 연산은 n회의 크로네커 곱(Kronecker power)을 의미할 수 있다. 예를 들어, 이며, 일 수 있다. log 2 N operations may mean n times of Kronecker power. for example, and It can be.
또한, 은 크기 의 비트 반전 순열(bit-reversal permutation) 행렬에 해당할 수 있다. 예를 들어, 길이 8인 벡터 와 비트 반전 순열 행렬 이 곱해져 인덱스가 비트 반전 순열된 행렬 가 얻어질 수 있다. also, silver size It may correspond to a bit-reversal permutation matrix of . For example, a vector of length 8 and bit-inverted permutation matrix This is multiplied by a permuted matrix whose indices are bit-inverted. can be obtained.
하지만, 3GPP NR을 비롯한 다양한 시스템에서는 아래의 수학식 2와 같이 비트 반전 순열 행렬을 제외한 단순한 형태의 생성 행렬을 이용할 수 있다. However, in various systems including 3GPP NR, the bit inversion permutation matrix is shown in
이하, 별도의 언급이 없는 경우, 생성 행렬은 수학식 2에 정의된 생성 행렬 을 사용하는 것으로 가정할 수 있다. Hereinafter, unless otherwise stated, the generation matrix is the generation matrix defined in
이와 같은 가정을 기반으로 설명된 내용은 비트 반전 순열(bit-reversal permutation) 동작을 바탕으로 정의된 수학식 1의 생성 행렬을 사용한 폴라 코드에도 쉽게 변경되어 적용될 수 있다. What is explained based on this assumption can be easily changed and applied to polar codes using the generation matrix of
동작 440에서, 송신기는 부호어 출력 비트 시퀀스 (407)에 대한 부호율 조정(rate matching)을 수행함으로써 전송 비트 시퀀스 (409)를 생성할 수 있다. '부호율 조정'은 부호어 출력 비트 시퀀스 (407)로부터 전송하고자 하는 길이 의 비트 시퀀스를 생성하는 과정에 해당할 수 있다. In
송신기는 동작 440의 부호율 조정을 통해 전송 비트 시퀀스 409)를 출력할 수 있다. 부호율-조정에 따라 폴라 코드의 성능 향상을 위해 부호어 출력 비트 시퀀스 (407)는 재조정될 수 있다. The transmitter adjusts the code rate in
일 예로써 3GPP NR 폴라 코딩 시스템에서 부호어 출력 비트 시퀀스 (407)는 32개의 서브-블록(sub-block) 단위로 인터리빙(interleaving)되어 순환 버퍼(circular buffer)에 저장되고, 순차적으로 추출되어 길이 의 코드 워드 시퀀스가 생성될 수 있다. 예를 들어, 코드 워드의 길이 가 폴라 코드의 모부호의 크기 보다 작다면, 천공(puncturing) 혹은 단축(shortening) 중 하나의 동작이 수행될 수 있다. As an example, the codeword output bit sequence in the 3GPP NR polar coding system (407) is interleaved in units of 32 sub-blocks, stored in a circular buffer, and sequentially extracted to obtain the length. A code word sequence of can be generated. For example, the length of the code word The size of the parent sign of the polar code If it is smaller, either puncturing or shortening can be performed.
이와 달리, 부호어 출력 비트 시퀀스 (407)의 일부 비트가 천공되면, 부호화 입력 비트 시퀀스 (405)가 겪는 부채널의 일부 비트가 불능(incapable)이 되면, 부-채널 할당 과정은 이러한 불능 비트(incapable bit)를 고려하여 이뤄질 수 있다. 만약, 부호어 출력 비트 시퀀스 (407)의 일부 비트가 단축되려면, 부호화 입력 비트 시퀀스 (405)의 일부 비트 또한 단축될 수 있다. 부채널 할당 과정은 이러한 단축 비트(shortening bit)를 고려하여 이뤄질 수 있다. In contrast, the codeword output bit sequence If some bits of 407 are punctured, the encoded input bit sequence If some bits of the subchannel experienced by 405 are incapable, the sub-channel allocation process can be performed by considering these incapable bits. If the codeword output bit sequence If some bits of 407 are to be shortened, the encoded input bit sequence Some bits of 405 may also be shortened. The subchannel allocation process can be accomplished by considering these shortening bits.
반면에 코드 워드의 길이가 폴라 코드의 모부호의 크기 보다 크다면, 반복(repetition)이 수행될 수 있다.On the other hand, the length of the code word The size of the parent sign of the polar code If it is larger, repetition can be performed.
도 5는 일 실시예에 따른 수신기에서 폴라 코드를 이용하여 디코딩을 수행하는 과정을 설명하기 위한 도면이다. 도 5는 상기 도 4의 과정을 거쳐 전송된 신호(예: 전송 비트 시퀀스 (409))를 수신기(예: 도 1의 수신기(100))가 디코딩화하는 과정의 일 예에 해당할 수 있다. 도 5에 도시된 동작들에서 시스템의 요구 조건에 따라 다른 동작이 추가될 수도 있고 혹은 포함된 동작이 생략될 수도 있다.FIG. 5 is a diagram illustrating a process of performing decoding using a polar code in a receiver according to an embodiment. Figure 5 shows a signal (e.g., transmission bit sequence) transmitted through the process of Figure 4. This may correspond to an example of a process in which a receiver (e.g.,
수신기(100)는 전송 비트 시퀀스 (409)에 대응되는 LLR 시퀀스 (501)를 생성할 수 있다. LLR 시퀀스 (501)는 복조 LLR(demodulated LLR)에 해당할 수 있다. 수신기(100)는 수신된 신호를 복조(demodulation)하여 전송 비트 시퀀스 (409)에 대응되는 확률 정보를 얻을 수 있다. 확률 정보는 예를 들어, 확률 벡터, LR(likelihood ratio), LLR(log-likelihood ratio)과 같은 값으로 주어질 수 있다. 이하 별도의 언급이 없다면, 확률 정보는 LLR을 의미하는 것으로 이해할 수 있지만, 반드시 이에 한정되지는 않는다.
동작 510에서, 수신기(100)는 부호율 역조정(rate dematching)을 수행할 수 있다. 수신기(100)는 예를 들어, 길이 의 LLR 시퀀스 이 길이 의 폴라 코드 디코더에 입력되도록 송신기의 부호율 조정 과정(예: 도 4의 동작 440)의 역과정을 수행할 수 있다. 예를 들어, 송신기의 부호율 조정 과정에서 천공(puncturing)이 발생했다면, 수신기(100)는 해당 비트에 대한 LLR 값을 '0'으로 결정할 수 있다. 이와 달리, 송신기의 부호율 조정 과정에서 단축 (shortening)이 발생했다면, 수신기(100)는 해당 비트에 대한 LLR 값을 비트 값 '0'에 대응하는 LLR 값의 최대값으로 결정할 수 있다. 만약, 특정 비트에 대해서 반복이 발생했다면, 수신기(100)는 대응되는 LLR 값을 모두 더해서(combining) 해당 비트에 대한 LLR 값을 결정할 수 있다. 수신기(100)는 부호율 역조정 과정을 통해서 길이 의 LLR 시퀀스 (503)를 생성할 수 있다. In
동작 520에서, 수신기(100)는 수신기(100)에 포함된 디코더(예: 도 1의 디코더(110))를 이용하여 길이 의 LLR 시퀀스 (503)에 대한 폴라 디코딩(polar decoding)(예: 도 6의 동작 610의 폴라 디코딩)을 수행할 수 있다. 디코더는 예를 들어, 폴라 디코더, SCL 디코더, 및/또는CA-SCL 디코더일 수 있으나, 반드시 이에 한정되지는 않는다. 여기서, '폴라 디코딩'은 예를 들어, 폴라 코드의 SCL 디코딩에 해당할 수 있으나, 반드시 이에 한정되지는 않는다. 수신기(100)는 예를 들어, 외부 부호화를 이용하여 SC 디코딩(Outer Code aided SC-based decoding)를 수행할 수 있다. 수신기(100)는 길이 의 LLR 시퀀스 (503)가 계산 혹은 결정되면, 이를 바탕으로 SC 기반의 폴라 디코딩을 수행할 수 있다. SC 기반의 폴라 디코딩은 예를 들어, 일반적인 SC 디코딩, SC-list(SCL) 디코딩, 및/또는 SC-stack(SCS) 디코딩을 포함할 수 있다. SC 기반의 폴라 디코딩은 부호화 입력 비트 시퀀스의 각 비트를 인덱스 순서에 따라 한 비트씩 순차적으로 디코딩할 수 있다. 디코더는 부호화 입력 비트 시퀀스(405)의 인덱스 값 순서로, 다시 말해, 의 순서로 각 비트에 대한 폴라 디코딩을 수행할 수 있다. 보다 구체적으로 i번째 비트 에 대한 폴라 디코딩은 아래의 과정을 통해 수행될 수 있다. In
① 수신 신호와 앞서 디코딩된 비트들의 추정값 을 기반으로 LLR과 같은 값의 0과 1에 대한 확률 기반 메트릭을 계산.① Estimated values of the received signal and previously decoded bits Based on LLR like Calculates probability-based metrics for
② 계산한 확률 기반 메트릭을 기반으로 비트 값 를 추정(estimation)② Bit value based on the calculated probability-based metric Estimation
③ 다음 비트의 디코딩을 위해 추정값 를 순차적 제거(successive cancellation) 기반으로 디코더에 반영.③ Estimated value for decoding the next bit is reflected in the decoder based on sequential cancellation.
상기와 같이 각 비트에 대한 디코딩은 이전까지 디코딩이 되어 추정된 비트 값을 기반으로 이뤄질 수 있다. 가령, 추정값 의 디코딩 시에는 이전에 디코딩된 비트 에 대한 추정값인 과 그에 대한 확률 정보 혹은 확률 정보에 준하는 값의 누적값 등이 이용될 수 있다. 여기서, 각 부분적인 비트 시퀀스 를 '리스트(list)' 혹은 '경로(path)'라고 일컬으며, 각 경로에 대한 디코딩을 수행해 오면서 계산한 누적된 확률 정보 혹은 확률 정보에 준하는 값을 '경로 메트릭' 또는 'PM(path-metric)'이라고 일컫는다. As described above, decoding for each bit can be done based on the bit value that has been previously decoded and estimated. For example, an estimate When decoding, the previously decoded bit which is an estimate for and probability information or a cumulative value of values equivalent to probability information may be used. where each partial bit sequence is called a 'list' or 'path', and the accumulated probability information calculated while performing decoding for each path, or a value equivalent to the probability information, is called a 'path metric' or 'PM (path-metric). )'.
디코더는 비트 의 디코딩 시 설정된 리스트 크기 개만큼의 리스트 를 유지해가며 디코딩을 진행할 수 있다. 가령, 디코더는 지금까지 디코딩에서 유지하고 있는 리스트를 바탕으로 값 0과 1에 대한 확률 정보를 계산할 수 있다. 디코더는 각 비트 의 확률 정보 계산 시에 고려한 각 리스트 에 대한 경로 메트릭(PM)에 비트 의 비트 값(예: 0, 또는 1)에 대한 확률 정보 혹은 확률 정보에 준하는 값을 업데이트하여 총 개의 리스트 에 대한 경로 메트릭(PM)을 계산할 수 있다. 이때, 경로 메트릭(PM)의 값이 낮을수록 해당 리스트에서 해당하는 비트 시퀀스의 확률이 높을 수 있다. 이하, 개의 리스트에 대한 경로 메트릭(PM)의 집합을 로 나타낼 수 있다. decoder bit List size set when decoding a list as many as a dog You can proceed with decoding while maintaining . For example, the decoder maintains a list from decoding so far. Based on this, probability information for
예를 들어, 비트 가 프로즌 비트인 경우에는 계산된 경로 메트릭(PM)과 상관없이 송신기 및 수신기(100)가 서로 약속한, 결정된 비트 값으로 추정 값 를 결정할 수 있다. 만약 가 언프로즌 비트(unfrozen bit) 중 정보 비트(information bit)에 해당되는 경우, 수신기(100)는 총 개의 리스트 중에 경로 메트릭(PM)의 값을 바탕으로 확률이 높다고 판단한 개의 리스트를 선택할 수 있다. For example, bit If is a frozen bit, the estimated value is the determined bit value promised to each other by the transmitter and
디코더는 전술한 방식으로 각 비트의 디코딩마다 총 개의 리스트를 유지해가며 디코딩을 진행할 수 있다. 또한, 디코더는 모든 비트들에 대한 디코딩이 완료되면, 경로 메트릭(PM)을 기반으로 최종적으로 얻은 개의 리스트 중에 가장 확률이 높은 코드 워드(code word)를 선택할 수 있다. 디코더는 경로 메트릭(PM) 값이 가장 낮은 리스트를 최종 부호화 입력 비트 시퀀스 (507)로 추정할 수 있다. The decoder decodes each bit in the manner described above. You can proceed with decoding by maintaining a list. In addition, when the decoder completes decoding of all bits, the final result is obtained based on the path metric (PM). You can select the code word with the highest probability from the list. The decoder selects the list with the lowest path metric (PM) value as the final encoded input bit sequence. It can be estimated as (507).
만약, 리스트 의 개수가 '1'로 설정된 경우, SCL 디코더는 기본적인 SC 디코더와 동일하게 동작할 수 있다. 디코더는 디코딩 중간 혹은 디코딩 완료 후에 CRC와 같은 연접된 오류 검출 부호를 활용하여 수신기(100)의 오류 정정 성능을 향상시킬 수 있다. 예를 들어, CRC 부호가 연접되어 사용된 경우, 수신기(100)는 디코딩 후에 얻은 개의 리스트 중에서 CRC 부호의 제약 조건을 만족하면서 가장 확률이 높은 코드 워드를 최종 디코딩 결과로 추정할 수 있다. 상기와 같은 일련의 디코딩 동작 후, 수신기(100)는 CRC 검사 결과와 각 리스트의 경로 메트릭(PM)을 비롯한 메트릭 값, 및/또는 추정된 부호화 입력 비트 시퀀스 (507)를 획득할 수 있다. 이러한 디코더를 'CRC aided(CA)-SCL디코더'라 부를 수 있다. If, list If the number of is set to '1', the SCL decoder can operate the same as the basic SC decoder. The decoder can improve the error correction performance of the
동작 530에서, 수신기(100)는 동작 520에서 수행된 폴라 디코딩에 대한 유효성 판단(validity check)을 수행할 수 있다. 수신기(100)는 동작 520을 통해 획득한 각종 디코딩 결과(예: CRC 리포트 및 매트릭 값)(505)를 바탕으로 유효성 판단을 수행할 수 있다. In
예를 들어, CRC부호가 연접되어 있고, 수신기(100)가 폴라 디코딩 과정에서 최종 리스트를 선택하기 위해 CRC 검사를 활용했다면, 수신기(100)는 디코딩 결과(505)를 폴라 디코딩에 대한 유효성 판단에 활용할 수 있다. 만약, CRC 검사를 통과한 리스트가 하나도 없다면, 수신기(100)는 디코딩 리포트(decoding report)(509)를 통해 바로 디코딩 실패를 보고(report)하고, 일련의 디코딩 과정을 종료할 수 있다. 이와 달리, CRC 검사를 통과한 리스트가 있다면, 수신기(100)는 추정된 부호화 입력 비트 시퀀스 (507)를 디코딩 결과로 출력할 수 있다. 이 경우, 수신기(100)는 디코딩 리포트(509)를 통해 디코딩 성공을 보고하는 대신, 폴라 디코딩에 대한 유효성 검사 성능의 향상을 위해 메트릭 기반의 추가적인 디코딩의 유효성 판단을 수행할 수 있다. 이러한 디코딩의 유효성 판단 방법들에 대해서는 아래의 도 6을 참조하여 구체적으로 설명하기로 한다. For example, if CRC codes are concatenated and the
동작 530의 디코딩 유효성 판단 과정에 의해 만약 디코딩이 실패했다고 판단하면, 수신기(100)는 디코딩 리포트(509)를 통해 디코딩 실패를 보고하고 디코딩 절차를 종료할 수 있다. 수신기(100)는 디코딩의 유효성 판단 과정에 의해 폴라 디코딩이 성공했다고 판단하면, 디코딩 성공을 보고하고 추정된 부호화 입력 비트 시퀀스 (507)를 출력하는 후속 절차를 진행할 수 있다. If it is determined that decoding has failed through the decoding validity determination process of
후속 절차에는 예를 들어, 추정된 부호화 입력 비트 시퀀스 (507)에 매핑된 메시지 비트 시퀀스 를 추출하는 과정, 다중 안테나 시스템(multiple-input multiple output, MIMO)의 순차적인 간섭 제거(successive interference cancellation, SIC) 동작을 위해 추정된 부호화 입력 비트 시퀀스 (507)를 재부호화(re-encoding) 하여 추정 부호어 비트 시퀀스 를 획득하는 과정이 포함될 수 있다. 추정된 부호화 입력 비트 시퀀스 (507)를 재부호화(re-encoding) 하여 추정 부호어 비트 시퀀스 를 획득하는 방법은 아래의 도 6을 참조하여 보다 구체적으로 설명한다.The subsequent procedure involves e.g. an estimated encoded input bit sequence. Message bit sequence mapped to (507) The process of extracting the encoded input bit sequence estimated for sequential interference cancellation (SIC) operation of a multiple-input multiple output (MIMO) system. Estimated codeword bit sequence by re-encoding (507) The process of acquiring may be included. Estimated encoded input bit sequence Estimated codeword bit sequence by re-encoding (507) The method of obtaining will be described in more detail with reference to FIG. 6 below.
도 6은 일 실시예에 따른 무선 통신 시스템의 수신기에서 CRC 검사 이외에 추가적으로 디코딩 결과의 유효성을 판단하는 방법을 설명하기 위한 도면이다. FIG. 6 is a diagram illustrating a method of determining the validity of a decoding result in addition to the CRC check in a receiver of a wireless communication system according to an embodiment.
도 6을 참고하면, 일 실시예에 따른 수신기(예: 도 1의 수신기(100))가 폴라 디코딩(예: 도 5의 동작 520의 폴라 디코딩, 도 6의 동작 610의 폴라 디코딩) 과정과 생성된 경로 메트릭(PM)을 기반으로 검출 메트릭(decision metric; DM)을 생성하는 과정이 도시된다.Referring to FIG. 6, a receiver (e.g.,
수신기(예: 도 1의 수신기(100))는 전송 비트 시퀀스 (409)에 대응되는 LLR 시퀀스 (601)를 생성할 수 있다. LLR 시퀀스 (601)는 복조 LLR(demodulated LLR)에 해당할 수 있다.A receiver (e.g.,
동작 610에서, 수신기(100)는 LLR 시퀀스 (601)를 입력으로 하여 도 5의 동작 520에서 전술한 방법에 따라 폴라 디코딩(polar decoding)을 수행함으로써 디코딩 결과(603)를 획득할 수 있다. 디코딩 결과(603)는 예를 들어, CRC 검사 결과, 경로 메트릭들(PMs)의 집합 전체, 혹은 경로 메트릭들의 집합 중 최대값 또는 최소값과 같은 일부 값을 포함할 수 있으나, 반드시 이에 한정되지는 않는다. At
예를 들어, CRC부호가 연접되어 있고, 수신기(100)가 폴라 디코딩 과정에서 최종 리스트를 선택하기 위해 CRC 검사를 활용했다면, 수신기(100)는 디코딩 결과(603)를 폴라 디코딩에 대한 유효성 판단에 활용할 수 있다.For example, if CRC codes are concatenated and the
예를 들어, 동작 610에서 CRC 검사를 통해 디코딩이 성공했다고 판단되면, 수신기(100)는 추정 부호화 입력 비트 시퀀스 (605)(예: 도 5의 추정 부호화 입력 비트 시퀀스 (507))도 함께 획득할 수 있다. For example, if it is determined that decoding is successful through the CRC check in
예를 들어, 동작 610에서 모든 리스트의 CRC 검사 결과가 실패라면, 수신기(100)는 디코딩 실패를 보고할 수 있다. 수신기(100)의 디코딩 실패 시에 출력하게 되는 추정 부호화 입력 비트 시퀀스 (605)는 디코더의 설정에 따라 결정될 수 있다. 추정 부호화 입력 비트 시퀀스 (605)는 예를 들어, 랜덤 시퀀스가 될 수도 있고, 또는 사전에 미리 지정한 시퀀스일 수도 있으며, 혹은 CRC 검사가 실패했더라도 리스트 중에 가장 확률이 높은 리스트가 될 수 있다. For example, if the CRC check results for all lists in
또는, 동작 610에서 CRC 검사 결과가 성공이라면, 동작 630에서 수신기는 디코딩 결과(603)를 이용하여 추가적인 디코딩 유효성 검사를 수행할 수 있다. 동작 630에서 수신기(100)는 디코딩 결과(603)로서 주어지는 경로 메트릭의 집합 전체, 혹은 경로 메트릭들의 집합 중 일부 값(예: 최대값 또는 최소값)을 바탕으로 추가적인 디코딩 유효성 검사를 수행할 수 있다. Alternatively, if the CRC check result is successful in
동작 630의 디코딩 유효성 검사에는 예를 들어, 아래의 수학식 3 내지 수학식 6이 사용될 수 있다. For example,
수신기(100)는 디코딩 결과(603)로서 주어지는 경로 메트릭을 바탕으로 하기의 수학식 3과 같이 검출 메트릭(DM1)을 계산할 수 있다. The
이하, 수학식 3 내지 수학식 6에서 'P'는 모든 생존 경로들의 경로 메트릭(PM)의 집합을 나타내고, 'Q'는 CRC 검사와 같은 외부 부호화의 검사를 통과한 생존 경로들의 경로 메트릭의 집합에 해당할 수 있다. 또한, 는 전체 경로 메트릭의 최대값을 나타내고, 는 CRC 검사와 같은 외부 부호화의 검사를 통과한 리스트들의 경로 메트릭 중 최소값을 나타낼 수 있다. Hereinafter, in
수학식 3의 검출 메트릭(DM) 값이 사전에 지정한 임계값(예: 1/32) 보다 작거나 같다면, 수신기(100)는 디코딩 결과(603)가 유효하지 않다고 판단하고, 디코딩 실패를 보고(607)하는 것을 포함하는 후속 절차를 진행할 수 있다. If the detection metric (DM) value of
이와 달리, 검출 메트릭(DM)의 값이 사전에 지정한 임계값(예: 1/32)보다 크다면, 수신기(100)는 디코딩 결과(603)가 유효하다고 판단하고, 디코딩 성공을 보고(607)할 수 있다. 이와 함께, 수신기(100)는 동작 610의 폴라 디코딩으로부터 획득한 추정 부호화 입력 비트 시퀀스 (605)를 출력하는 것과 같은 후속 동작을 수행할 수 있다. In contrast, if the value of the detection metric (DM) is greater than a pre-specified threshold (e.g., 1/32), the
실시예에 따라서, 수신기(100)는 아래의 수학식 4와 같이 다소 다른 방식으로 검출 메트릭(DM2)을 계산할 수도 있다. Depending on the embodiment, the
여기서, 는 전체 경로 메트릭의 최소값을 나타낼 수 있다.here, may represent the minimum value of the entire path metric.
또는, 수신기(100)는 아래의 수학식 5 또는 수학식 6과 같이 다른 방식으로 검출 메트릭(DM3 또는 DM4)를 계산할 수도 있다. Alternatively, the
여기서, 는 모든 생존 경로들의 경로 메트릭(PM)의 집합(P)의 분산(variance)을 나타내고, 는 복조 시에 고려되는 수신 신호-대-잡음비(signal to noise ratio)를 나타낼 수 있다. 여기서, 은 수신 신호-대-잡음비(SNR)가 선형 스케일(linear scale)로 표현되었음을 의미할 수 있다. here, represents the variance of the set (P) of the path metrics (PM) of all survival paths, May represent the received signal-to-noise ratio considered during demodulation. here, may mean that the received signal-to-noise ratio (SNR) is expressed in a linear scale.
수신기(100)는 수학식 3 내지 수학식 6에서의 검출 메트릭(DM)들들의 값들이 사전에 지정한 임계값보다 큰 경우에만 디코딩 결과가 유효하다고 판단하고, 동작 650과 같은 후속 동작을 수행할 수 있다. The
동작 650에서, 수신기는 MIMO(multiple input multiple out) 시스템에서 성능 향상을 위한 순차적 간섭 제거를 위해 수행하는 폴라 재 부호화(polar re-encoding)를 수행할 수 있다. In
수신기(100)가 디코딩에 실패한 경우, 최종적으로 얻어진 모든 리스트의 부호화 입력 비트 시퀀스들은 거의 랜덤 시퀀스와 같을 수 있다. 이는 SC 계열의 디코딩에서 발생하는 오류 전파(error propagation)로 인한 것으로서, 보통 인덱스 값이 낮은 비트의 신뢰도가 낮고, 신뢰도 및 인덱스 값이 낮은 비트의 디코딩 결과가 틀렸다면 그 이후 비트들은 랜덤하게 결정되었다고 볼 수 있기 때문이다.If the
수신기(100)가 디코딩에 실패한 경우, 랜덤 시퀀스에 대한 경로 메트릭(PM)은 대략 비슷한 값을 가질 것으로 예상 또는 추정할 수 있다. 따라서 수학식 3 내지 수학식 6과 같이 검출 메트릭(DM)의 값이 일정 임계치보다 작다면 디코딩이 실제로는 실패했음을 의심할 수 있다.If the
하지만, 경로 메트릭(PM)은 폴라 코드의 디코더에서 계산한 LLR 값에 기반하여 계산되며, LLR 값은 일반적으로 근사화하여 계산될 수 있다. 또한 SC 계열 디코딩의 순차적인 디코딩 과정에 따라 경로 메트릭(PM) 값이 누적되어 계산되는 경우, 경로 메트릭(PM) 값의 누적에서도 근사화가 발생할 수 있다. 이와 같은 근사화에 의한 오차는 디코딩 유효성 판단에 부정적인 영향을 줄 수 있다. However, the path metric (PM) is calculated based on the LLR value calculated by the decoder of the polar code, and the LLR value can generally be calculated by approximation. Additionally, when path metric (PM) values are accumulated and calculated according to the sequential decoding process of SC series decoding, approximation may also occur in the accumulation of path metric (PM) values. Errors due to such approximation may have a negative impact on judgment of decoding effectiveness.
또한, 앞서 추정한 사실 "만약 디코딩이 실패했다면 모든 리스트의 경로 메트릭들(PMs)은 서로 비슷한 값을 가질 것이다"는 사용하는 폴라 코드의 길이(코드 워드 비트 시퀀스의 길이) 및 차원(부호화하는 비트 시퀀스의 길이)이 긴 경우에는 참(true)이 될 수 있다. 이는 디코딩이 실패한 경우, 경로 메트릭은 비슷한 수의 랜덤 변수 LLR 들의 합이 되기 때문이다. Additionally, the previously assumed fact that “if decoding fails, the path metrics (PMs) of all lists will have similar values” depends on the length (length of the code word bit sequence) and dimension (encoding bits) of the polar code used. If the sequence length is long, it can be true. This is because when decoding fails, the path metric becomes the sum of a similar number of random variables LLR.
하지만, 폴라 코드의 길이 및 차원이 작은 경우에는 리스트들의 경로 메트릭(PM) 값의 분산이 커지기 때문에 상기 추정한 사실이 참이 아닐 수 있다. 따라서, 길이가 짧은 부호의 경우에는 경로 메트릭(PM) 기반의 추가적인 디코딩 유효성 검사의 성능이 낮아질 수 있다.However, when the length and dimension of the polar code are small, the above estimated fact may not be true because the variance of the path metric (PM) values of the lists increases. Therefore, in the case of short-length codes, the performance of additional decoding validation based on path metric (PM) may be lowered.
5G 통신 표준인 3GPP NR에서는 제어 정보를 전송할 때 폴라 코드를 사용하는데 보통 제어 정보는 길이가 짧음을 감안하면, 경로 메트릭(PM) 기반의 디코딩 유효성 검사는 성능 측면에서 취약할 수 있다. 특히, 제어 정보를 전송하는 제어 채널들(예: PUCCH(physical uplink control channel), UCI(uplink control information) on PUSCH(physical uplink shared channel), 및/또는 PDCCH(physical downlink control channel))은 데이터 채널(예: PUSCH (physical uplink shared channel), PDSCH(physical downlink shared channel))에 비해 더 다양한 오류 환경에 노출되고, 상대적으로 다른 채널에 비해 더 높은 오류 검출 요구 사항을 갖기 때문에 디코딩 유효성 검사가 성능 측면에서 취약할 수 있다는 문제는 더 심각해질 수 있다. 3GPP NR, a 5G communication standard, uses polar codes when transmitting control information. Considering that control information is usually short in length, path metric (PM)-based decoding validation may be weak in terms of performance. In particular, control channels that transmit control information (e.g., physical uplink control channel (PUCCH), uplink control information (UCI) on physical uplink shared channel (PUSCH), and/or physical downlink control channel (PDCCH)) are data channels. (e.g., physical uplink shared channel (PUSCH), physical downlink shared channel (PDSCH)), and has relatively higher error detection requirements compared to other channels, so decoding validation is important in terms of performance. The problem of vulnerability could become more serious.
예를 들어, PUCCH, 또는 PUSCH와 같은 제어 채널에서는 흔히 'DTX(discontinuous transmission)'라고 일컫는 상황이 발생할 수 있다. 이러한 상황은 단말이 기지국에서 전송된 신호의 수신 및 디코딩에 실패하여 이후 아무런 신호도 기지국에 전송하지 않았는데, 기지국은 신호가 수신되었다고 판단하고 디코딩을 시도하는 경우를 의미할 수 있다. For example, a situation commonly referred to as 'DTX (discontinuous transmission)' may occur in a control channel such as PUCCH or PUSCH. This situation may mean that the terminal fails to receive and decode a signal transmitted from the base station and subsequently does not transmit any signal to the base station, but the base station determines that the signal has been received and attempts to decode it.
DTX 환경에서 기지국은 다양한 원인에 의해 발생한 잡음을 수신 신호라고 판단하고, 디코더는 이 신호에 대해서 디코딩을 시도할 수 있다. 이러한 DTX 환경은 신호 대 잡음비(signal-to-noise ratio, SNR)를 통해 판별될 수도 있지만, 디코딩이 시도되면 우연히 디코딩이 성공하는 경우가 발생할 수도 있다. In a DTX environment, the base station determines that noise generated by various causes is a received signal, and the decoder can attempt to decode this signal. This DTX environment can be determined through signal-to-noise ratio (SNR), but when decoding is attempted, decoding may accidentally succeed.
또한, 수신기(100)는 PDCCH(physical downlink control channel), 또는 PBCH(physical broadcast channel)와 같은 제어 채널에서 수신된 신호를 다양한 부호 파라미터로 가정하여 디코딩을 수행하는 블라인드 검출을 수행할 수도 있다. 이러한 블라인드 검출의 경우, 디코더가 다수의 데이터로 부호화된 신호를 디코딩하는 것과 같기 때문에, 마찬가지로 우연히 디코딩이 성공할 확률도 높아질 수 있다. Additionally, the
일 실시예에서는 폴라 디코딩(예: 도 5의 동작 520의 폴라 디코딩, 도 6의 동작 610의 폴라 디코딩)을 통해 획득한 멀티 모달 입력들(multi-modal inputs)을 신경망(예: 도 1의 이진 분류기(135), 및/또는 도 7의 완전 연결망(FCN)(770))의 입력으로 활용하여 수신된 패킷 내에 송신기가 전송한 제어 신호가 포함되어 있는지 여부를 판별함으로써 학습에 사용된 손실 함수를 최소화하는 한편, 오검출률과 미검출률을 개선할 수 있다.In one embodiment, multi-modal inputs obtained through polar decoding (e.g., polar decoding in
도 7은 일 실시예에 따른 딥 러닝 기반의 멀티 모달 블라인드 검출을 수행하는 수신기의 모식도이다. 도 7을 참조하면, 일 실시예에 따른 완전 연결망(fully-connected network; FCN)(770)으로 구성된 이진 분류기를 포함하는 수신기의 구조를 나타낸 도면(700)이 도시된다. Figure 7 is a schematic diagram of a receiver performing deep learning-based multi-modal blind detection according to an embodiment. Referring to FIG. 7, a diagram 700 is shown showing the structure of a receiver including a binary classifier comprised of a fully-connected network (FCN) 770 according to an embodiment.
도 7의 실시예에서는 예를 들어, 수신 신호 (701) 내에 제어 신호(예: 상향 링크 제어 정보(uplink control information; ))가 수신된 시나리오와 수신 신호(701) 내에 잡음만이 수신된 시나리오를 모델링할 수 있다. In the embodiment of Figure 7, for example, the received signal (701) A control signal (e.g., uplink control information; It is possible to model a scenario in which )) is received and a scenario in which only noise is received in the received
송신기가 전송한 제어 신호 벡터를 , 잡음(noise)을 이라 할 때, 각각의 시나리오에 따라 수신기가 수신한 수신 신호 (701)는 아래의 수학식 7과 같이 나타낼 수 있다. The control signal vector transmitted by the transmitter , noise In this case, the received signal received by the receiver according to each scenario (701) can be expressed as
여기서, 는 상향 링크 제어 정보(uplink control information)을 나타낼 수 있다. here, may represent uplink control information.
등화 및 복조기(710)를 거친 수신 신호 (701)의 신호 대 잡음비(signal to noise ratio; SNR)(702)는 예를 들어, 멀티 모달 입력의 제4 유형으로 활용할 수 있다.Received signal passed through equalizer and
또한, 등화 및 복조기(710)를 거친 수신 신호 (701)는 CA-SCL 디코더(720)의 입력으로 사용될 수 있다. CA-SCL 디코더(720)로 입력된 수신 신호 (701)는 예를 들어, 자동 이득 조절(automatic gain control; AGC) 및 등화(equalization) 이후에 복조 과정을 통해 산출되는 LLR(log-likelihood ratio) 확률값일 수 있다. 여기서, 자동 이득 조절(AGC)은 세기가 변동하는 전파를 수신할 때 음성 등의 출력이 항상 일정한 크기를 유지하도록 도래 전파의 세기에 따라 수신기의 증폭도를 자동으로 변화시키는 것에 해당할 수 있다. 실시예에 따라서, 수신 신호 (701)는 )일 수도 있다. Additionally, the received signal passes through the equalizer and
일 실시예에서는 CA-SCL 디코더(720)를 거친 수신 신호(701)가 CRC 검출기(730)의 순환 중복 검사(CRC)에 통과한 경우('Pass'), CA-SCL 디코더(720)와 폴라 인코딩(740)(예: 도 6의 동작 650의 폴라 재인코딩(polar re-encoding))을 이용하여 심층 신경망의 멀티 모달 입력들을 생성할 수 있다. In one embodiment, when the received
수신기(100)는 예를 들어, CA-SCL 디코더(720)에서 폴라 디코딩(예: 도 5의 동작 520의 폴라 디코딩, 도 6의 동작 610의 폴라 디코딩) 과정 중 획득한 L 개의 생존 경로들(survival paths)의 비트열을 포함하는 경로 메트릭들 P = {PM1, PM2, .. , PML}(703)을 멀티 모달 입력의 제1 유형으로 활용할 수 있다. For example, the
또한, 수신기(100)는 CA-SCL 디코더(720)에서 디코딩 후에 얻어진 송신 비트열 추정치 (예: 도6의 추정된 부호화 입력 비트 시퀀스()(605))를 폴라 인코딩(740)에 의해 다시 부호화 및 변조하여 획득한 송신 벡터 추정치 (예: BPSK의 경우 도 6의 추정 부호어 비트 시퀀스 (609))로부터 수신 신호와의 제곱 유클리드 거리 비율(SEDR)()(705)을 산출(750)할 수 있다. In addition, the
수신기(100)는 제곱 유클리드 거리 비율(SEDR)()(705)을 멀티 모달 입력의 제2유형으로 활용할 수 있다. 제곱 유클리드 거리 비율(SEDR)()은 예를 들어, 아래의 수학식 8과 같이 산출할 수 있다.
제곱 유클리드 거리 비율(SEDR)()(705)은 앞선 두 시나리오(예: 제어 신호가 존재하는 경우와 존재하지 않는 경우)를 구분하기 위한 탐지 기준(detection metric)의 일종으로 사용될 수 있다. 제곱 유클리드 거리 비율(SEDR)()에서 '분자'가 작은 경우는 제어 신호가 수신된 경우를, '분모'가 작은 경우는 제어 신호 없이 잡음만 수신된 경우를 의미할 수 있다. Squared Euclidean Distance Ratio (SEDR) ( ) 705 can be used as a type of detection metric to distinguish between the previous two scenarios (e.g., when a control signal exists and when a control signal does not exist). Squared Euclidean Distance Ratio (SEDR) ( ), if the 'numerator' is small, it may mean that a control signal is received, and if the 'denominator' is small, it may mean that only noise is received without a control signal.
또는, 수신기(100)는 폴라 디코딩 과정에서 주어지는 송신 벡터들 사이의 상관 관계를 상관 메트릭(correlation metric)()(707)로 산출(760)할 수 있다. 수신기(100)는 제곱 유클리드 거리 비율(SEDR)()과 유사하게, 재-인코딩된(즉, 복원된) 비트열과 수신 신호 사이의 상관도(correlation)을 측정함으로써 상관 메트릭(correlation metric)()(707)를 산출(760)할 수 있다. Alternatively, the
수신기(100)는 상관 메트릭(correlation metric)()(707)을 멀티 모달 입력의 제3유형으로 활용할 수 있다. 수신기(100)는 상관 메트릭(correlation metric)()(707)의 크기를 블라인드 검출 기준으로 사용할 수 있다. The
상관 메트릭(correlation metric)()(707)은 예를 들어, 아래의 수학식 9를 통해 산출할 수 있다. Correlation metric ( )(707) can be calculated, for example, through Equation 9 below.
여기서, 는 예를 들어, 변조된 심볼(modulated symbol)에 해당하며, 와 같이 구할 수 있다. 심볼의 변조 스킴은 예를 들어, QPSK(quadrature phase shift keying)일 수 있으나, 반드시 이에 한정되지는 않는다. 는 수신기(100)가 CA-SCL 디코더(720)에서 디코딩 후에 얻어진 송신 비트열 추정치 (예: 도 6의 추정된 부호화 입력 비트 시퀀스()(605))를 다시 부호화(예: 도 6의 동작 650의 폴라 재인코딩(polar re-encoding))하여 얻은 송신 벡터 추정치 (예: 도 6의 추정 부호어 비트 시퀀스 (609))의 번째 요소(element)에 해당할 수 있다. 또한, 는 정보 전송에 사용한 비트 수에 해당할 수 있다. 는 수신 신호(예: LLR 확률값)에 대한 신뢰도에 해당할 수 있다. here, corresponds to a modulated symbol, for example, You can get it like this: The modulation scheme of the symbol may be, for example, quadrature phase shift keying (QPSK), but is not necessarily limited thereto. is the transmission bit string estimate obtained after the
완전 연결망(770)은 예를 들어, 멀티 모달 입력들에 대한 선택 및 벡터화(vectorization)를 수행하고, 벡터화된 멀티 모달 입력들을 이진 분류기(예: 도 1의 이진 분류기(135))를 포함하는 후처리 모듈(예: 도 1의 후처리 모듈(130))로 전달할 수 있다. 여기서, '벡터화(vectorization)'는 멀티 모달 입력들을 하나의 벡터 로 연결하는 과정에 해당할 수 있다. For example, the fully connected
완전 연결망(770)은 멀티 모달 입력들을 하나의 벡터 로 연결한 다음, 벡터 를 입력으로 활용하여 수신 신호에 제어 신호가 포함되었을 확률에 대한 추정치 (780)를 산출할 수 있다. 완전 연결망(770)의 드랍 아웃 비율(dropout rate)은 예를 들어, 0.1일 수 있으나, 반드시 이에 한정되지는 않는다. The fully connected
예를 들어, 완전 연결망(770)의 완전 연결 레이어들의 개수를 라고 하면, 완전 연결 레이어들 중 첫번째 레이어의 출력 벡터와 번째 은닉층(hidden layer)의 출력 벡터 는 예를 들어, 아래의 수학식 10과 같이 산출할 수 있다. For example, the number of fully connected layers of the fully connected
여기서, 는 각 은닉층의 가중치를 나타내고, 는 각 은닉층의 편차를 나타낼 수 있다. 은 각 은닉층에 사용되는 활성화 함수에 해당할 수 있다. here, represents the weight of each hidden layer, may represent the deviation of each hidden layer. may correspond to the activation function used in each hidden layer.
총 개의 은닉층을 거친 출력에 해당하는 추정치 (780)는 수신 신호에 제어 신호가 포함되었을 확률에 대한 추정치로서, '추정 확률'이라고 간략화하여 표현할 수 있다. 추정치 (780)는 예를 들어, 아래의 수학식 11과 같이 구할 수 있다. gun An estimate corresponding to the output after passing through the hidden layers. 780 is an estimate of the probability that the received signal includes a control signal, and can be simplified and expressed as 'estimated probability'. estimate (780) can be obtained, for example, as in Equation 11 below.
여기서, sigmoid는 인공 뉴런의 활성화 함수 중 하나인 시그모이드 함수를 의미할 수 있다. 시그모이드 함수는 S자형 곡선 또는 시그모이드 곡선을 갖는 수학 함수로서, 실수 전체를 정의역으로 가질 수 있다. 시그모이드 함수의 반환값은 단조 증가하는 것이 일반적이지만 단조 감소할 수도 있다. 시그모이드 함수의 반환값(y축)은 예를 들어, 0에서 1까지의 범위를 가질 수도 있고, 또는 -1부터 1까지의 범위를 가질 수도 있다. Here, sigmoid may mean a sigmoid function, which is one of the activation functions of an artificial neuron. The sigmoid function is a mathematical function with an S-shaped curve or sigmoid curve, and can have all real numbers as its domain. The return value of the sigmoid function is generally monotonically increasing, but can also be monotonically decreasing. The return value (y-axis) of the sigmoid function may range from, for example, 0 to 1, or -1 to 1.
예를 들어, CA-SCL 디코더(720)를 거친 수신 신호(701)가 CRC 검출기(730)의 순환 중복 검사(CRC)에 통과하지 못한 경우('Fail'), 수신기(100)는 수신 신호(701) 내 제어 신호가 존재하지 않는다(NoTx)고 결정할 수 있다. For example, if the received
도 8은 일 실시예에 따른 멀티 모달 입력들을 수집하는 방법 및 이진 분류기의 학습 방법을 설명하기 위한 도면이다. 도 8을 참조하면, 일 실시예에 따른 데이터 수집 과정(810) 및 과정(810)에서 수집한 데이터에 의한 심층 신경망 모델의 학습 과정(830)을 나타낸 도면(800)이 도시된다. Figure 8 is a diagram for explaining a method of collecting multi-modal inputs and a method of learning a binary classifier according to an embodiment. Referring to FIG. 8 , a diagram 800 is shown showing a
데이터 수집 과정(810)에서 데이터는 MATLAB 내 5G NR 시스템의 프레임워크(framework)를 사용하여 수집될 수 있다. 데이터 수집 과정(810)에서 도 7을 통해 전술한 심층 신경망의 멀티 모달 입력들(multi-modal inputs)을 생성하는 과정이 수행될 수 있다. In the
데이터 수집 과정(810)에서는 1) 수신 신호(예: 도 7의 수신 신호(701)) 내 제어 신호가 존재하는 경우(RegTx)의 제1 시나리오에서 CA-SCL디코딩 과정에서 CRC 검사를 통과한 경우와 2) 수신 신호(701) 내 제어 신호가 존재하지 않는 경우(NoTx)의 제2 시나리오 각각에 대한 데이터를 수집할 수 있다. In the
데이터 수집 과정(810)에서, 수신기는 CA-SCL 디코딩 과정에서 CRC 검사를 통과한 각 검출 메트릭(DM)들의 값을 계산한 후 이를 데이터로 수집할 수 있다. 이때, CRC 검사를 통과한 검출 메트릭(DM)들의 값을 수집하는 이유는 기본적으로 CA-SCL 디코딩이 실패한 경우(CRC 검사를 통과하지 못한 경우), 이후의 검출 메트릭 체크(detection metric check)가 불필요하기 때문이다. In the
학습 과정(830)에서 심층 신경망(deep neural network)의 학습은 데이터 수집 과정(810)에서 수집한 데이터를 텐서 플로우 프레임워크(tensor flow framework)로 불러옴으로써 수행될 수 있다. 학습 과정(830)에서 심층 신경망(deep neural network)의 학습은 앞선 데이터 수집 과정(810)과는 별개의 시간(정확히는, 데이터 수집이 끝난 이후)에 수행될 수 있다. Learning of a deep neural network in the
심층 신경망은 예를 들어, 손실 함수를 최소화하는 방향으로 Adam 최적화 알고리즘에 의해 학습될 수 있다. Adam 최적화 알고리즘은 그래디언트 하강(gradient descent) 기법이 변형된, 심층 신경망 학습 기법의 일종에 해당할 수 있다. Adam 최적화 알고리즘은 네트워크의 학습 시에 손실 함수를 최소화하는 방향으로 파라미터를 업데이트할 수 있다. 손실 함수를 최소화하는 방향은 예를 들어, 현재 업데이트 = 학습하고자 하는 파라미터가 W라면, - dJ/dW와 같이 구할 수 있다. A deep neural network can be trained, for example, by the Adam optimization algorithm in the direction of minimizing the loss function. The Adam optimization algorithm may correspond to a type of deep neural network learning technique that is a modification of the gradient descent technique. The Adam optimization algorithm can update parameters in a way that minimizes the loss function when training the network. For example, the direction to minimize the loss function can be obtained as follows: Current update = If the parameter to be learned is W, - dJ/dW.
예를 들어, 심층 신경망의 학습에 이진 교차 엔트로피 손실 함수(binary cross entropy loss function) 를 사용하는 경우, 손실 함수 와 정답 레이블(ground-truth label) 는 아래의 수학식 12와 같이 정의할 수 있다. For example, a binary cross entropy loss function for training deep neural networks. When using the loss function and ground-truth label Can be defined as Equation 12 below.
여기서, 는 수신 신호(701) 내에 제어 신호가 존재할 실제 확률에 해당할 수 있다. 또한, 는 심층 신경망에 의해 추정된 확률, 다시 말해 수신 신호(701) 내에 제어 신호가 포함되었을 확률에 대한 추정치를 나타낼 수 있다. 또한, 는 상향 링크 제어 정보(uplink control information)에 해당할 수 있다. here, may correspond to the actual probability that a control signal is present in the received
이진 교차 엔트로피 손실 함수 의 값은 주어진 실제 확률 과 추정치의 값이 다를수록 커지기 때문에, 학습 시 이를 최소화하는 (즉, 와 값이 같아지도록) 하는 방향으로 학습이 진행될 수 있다. 여기서, = 1일때는 제어 신호가 수신 신호(701) 내 존재하는 경우를 의미하고, = 0일때는 제어 신호가 수신 신호(701) 내에 존재하지 않는 경우를 의미할 수 있다. 이진 교차 엔트로피 손실 함수 의 목적은 수신 신호(701) 내에 제어 신호가 존재할 확률 '와 그 추정치 을 가깝게 만드는 데 있다.Binary cross-entropy loss function The value of is given the actual probability and estimate Since the values of and Learning can proceed in a direction such that the values are the same. here, = 1 means that the control signal is present in the received
심층 신경망(예: 이진 분류기)은 이진 교차 엔트로피 손실 함수 를 이용하여 수신 신호(701) 내에 제어 신호가 포함되었을 확률에 대한 추정치 를 산출하도록 학습될 수 있다. Deep neural networks (e.g. binary classifiers) use a binary cross-entropy loss function An estimate of the probability that a control signal is included in the received
실시예에 따라서, 이진 교차 엔트로피 손실 함수 대신에 힌지 손실 함수(Hinge loss function) 가 손실 함수로 사용될 수도 있다. Depending on the embodiment, the binary cross entropy loss function Instead, the Hinge loss function can also be used as a loss function.
힌지 손실 함수 는 앞선 이진 교차 엔트로피 손실 함수 와 유사하지만, 이진 교차 엔트로피 손실 함수 와 달리, 의 변형인 델타( = 2 - 1를 사용할 수 있다. 여기서, 델타()는 힌지 손실 함수 의 레이블(label)에 해당할 수 있다. Hinge loss function is the preceding binary cross entropy loss function Similar to , but with a binary cross-entropy loss function Unlike, Delta (which is a variation of = 2 - 1 can be used. Here, delta ( ) is the hinge loss function It may correspond to the label of .
힌지 손실 함수 는 그 목적이 델타()와 그의 추정치() 값 자체가 가까워지도록 하기 보다는, 델타()의 추정치()가 잡음만 수신된 경우와 제어 신호가 수신된 경우를 구분하는 결정 경계(decision boundary)를 찾도록, 다시 말해 델타()의 추정치()가 델타()와 같은 클래스(class)에 있게 하기 위한 것일 수 있다. Hinge loss function The purpose is delta( ) and his estimate ( ) Rather than trying to get the values themselves close, delta ( ), an estimate of ( ) to find the decision boundary that distinguishes between the case where only noise was received and the case where the control signal was received, that is, delta ( ), an estimate of ( ) is delta ( ) may be intended to be in the same class.
힌지 손실 함수 는 올바른 결정 경계를 찾고, 추정치()가 제대로 된 분류를 수행(예: p 값 자체보다는 p가 임계치(0.5) 이상인지 미만인지를 판별)하도록 하기 위한 것일 수 있다. Hinge loss function finds the correct decision boundary, and estimates ( ) may be intended to perform proper classification (e.g., determine whether p is above or below the critical value (0.5) rather than the p value itself).
이 경우, 힌지 손실 함수 와 학습에 사용되는 정답 레이블(ground-truth label) 은 아래의 수학식 13과 같이 정의할 수 있다. In this case, the hinge loss function and ground-truth label used for learning. Can be defined as Equation 13 below.
예를 들어, 아래의 도 9에 도시된 것과 같이, 힌지 손실 함수 의 정답 레이블 과 추정치 가 양수이고, 특정 값을 초과하는 경우, 학습 장치는 심층 신경망(deep neural network)이 충분히 학습되었다고 판단하여 학습을 수행하지 않을 수 있다(gradient 값이 0). 이와 달리, 정답 레이블 과 추정치 가 서로 상이한 경우, 학습 장치는 심층 신경망에 대한 학습을 수행할 수 있다. For example, as shown in Figure 9 below, the hinge loss function The correct answer label for and estimate If is a positive number and exceeds a certain value, the learning device may determine that the deep neural network has been sufficiently trained and may not perform learning (gradient value is 0). In contrast, the correct answer label and estimate If are different from each other, the learning device can perform learning on a deep neural network.
심층 신경망(예: 이진 분류기)은 힌지 손실 함수 를 이용하여 올바른 결정 경계를 찾도록 학습될 수 있다. Deep neural networks (e.g. binary classifiers) use a hinge loss function It can be learned to find the correct decision boundary using .
예를 들어, 심층 신경망이 충분한 양의 데이터로 적절히 학습된 경우, 심층 신경망의 파라미터들은 학습에 사용된 손실 함수(loss function)를 최소화하는 방향으로 업데이트(update)될 수 있다. 이 경우, 심층 신경망으로 구성된 이진 분류기를 포함하는 수신기(100)는 오검출률과 미검출률을 동시에 최소화하는 딥러닝 기반의 블라인드 검출을 수행할 수 있다. For example, if a deep neural network has been properly trained with a sufficient amount of data, the parameters of the deep neural network can be updated in a way that minimizes the loss function used for learning. In this case, the
또한, 일 실시예에서는 디코딩 과정에서 얻을 수 있는 여러 종류의 입력을 공동으로 활용하는 멀티 모달 입력들에 의해 단일 입력을 사용하는 접근법 대비 개선된 오검출률을 달성할 수 있다.Additionally, in one embodiment, it is possible to achieve an improved false detection rate compared to an approach using a single input by using multi-modal inputs that jointly utilize various types of inputs that can be obtained during the decoding process.
실제 추론(inference) 과정에서, 수신기(100)는 학습 과정(830)을 통해 학습이 완료된 심층 신경망(예: 이진 분류기)을 이용하여 수신 신호에 제어 신호가 포함되었을 확률에 대한 추정치 (예: 도 7의 추정치 (780))를 계산해낸 후, 수신 신호(701) 내 제어 신호의 존재 유무를 판별할 수 있다. In the actual inference process, the
도 9는 일 실시예에 따른 힌지 손실 함수를 이용한 학습 방법을 설명하기 위한 도면이다. 도 9를 참조하면, 일 실시예에 따른 힌지 손실 함수의 값을 추정치()와 정답(ground truth) 값() 간의 곱으로 나타낸 그래프(900)가 도시된다. Figure 9 is a diagram for explaining a learning method using a hinge loss function according to an embodiment. Referring to FIG. 9, the value of the hinge loss function according to one embodiment is estimated ( ) and the ground truth value ( ) A
전술한 바와 같이, 힌지 손실 함수는 수신 신호(예: 도 7의 수신 신호(701))에 잡음만 수신된 경우와 제어 신호가 수신된 경우를 구분하는 결정 경계(decision boundary)를 찾도록 하기 위한 것일 수 있다. As described above, the hinge loss function is used to find a decision boundary that distinguishes between the case where only noise is received in the received signal (e.g., the received
블라인드 검출은 수신된 신호에 대하여 해당 신호가 제어 신호를 포함할 확률 그 자체보다는 해당 신호가 제어 신호를 포함하는지 아니면 잡음만을 포함하는지 여부를 구분하기 위한 것일 수 있다. 힌지 손실 함수를 사용하면, 이진 교차 엔트로피 손실 함수를 사용하는 경우 대비 근소한 성능 향상을 달성할 수 있다.Blind detection may be intended to distinguish whether a received signal includes a control signal or only noise, rather than the probability that the corresponding signal includes a control signal itself. By using the hinge loss function, a slight performance improvement can be achieved compared to using the binary cross-entropy loss function.
그래프(900)에서, 정답(ground truth) 값()과 그 추정치()가 양수이고, 정답(ground truth) 값()과 추정치() 간의 곱이 특정값(예: gradient 값이 0인 지점) 이상인 경우, 정답(ground truth) 값()과 그 추정치()가 같은 클래스(class)로 분류될 수 있다. 정답(ground truth) 값()과 그 추정치()가 같은 클래스(class)로 분류되는 것은 결정 경계가 정확하게 구분된 경우에 해당하므로, 학습 장치는 심층 신경망(예: 이진 분류기)에 대한 학습을 종료할 수 있다. In
이와 달리, 정답(ground truth) 값()과 그 추정치() 중 적어도 하나가 음수이고, 정답(ground truth) 값()과 추정치() 간의 곱이 특정값(예: gradient 값이 0인 지점) 미만인 경우, 정답(ground truth) 값()과 그 추정치()가 다른 클래스(class)로 분류될 수 있다. 정답(ground truth) 값()과 그 추정치()가 다른 클래스로 분류되는 것은 결정 경계가 부정확하게 구분된 경우에 해당하므로, 학습 장치는 심층 신경망(예: 이진 분류기)에 대한 학습을 진행할 수 있다. In contrast, the ground truth value ( ) and its estimate ( ) is negative, and the ground truth value ( ) and estimate ( ) is less than a certain value (e.g., the point where the gradient value is 0), the ground truth value ( ) and its estimate ( ) can be classified into different classes. Ground truth value ( ) and its estimate ( ) is classified into a different class because the decision boundary is incorrectly classified, so the learning device can proceed with learning on a deep neural network (e.g., binary classifier).
도 10은 일 실시예에 따른 수신기의 동작 방법을 나타낸 흐름도이다. 이하 실시예에서 각 동작들은 순차적으로 수행될 수도 있으나, 반드시 순차적으로 수행되는 것은 아니다. 예를 들어, 각 동작들의 순서가 변경될 수도 있으며, 적어도 두 동작들이 병렬적으로 수행될 수도 있다. Figure 10 is a flowchart showing a method of operating a receiver according to an embodiment. In the following embodiments, each operation may be performed sequentially, but is not necessarily performed sequentially. For example, the order of each operation may be changed, and at least two operations may be performed in parallel.
도 10을 참조하면, 일 실시예에 따른 CA-SCL(CRC aided Successive cancellation list) 디코더(예: 도 1의 디코더(110), 도 3의 SCL디코더(340), 및/또는 도 7의 CA-SCL 디코더(720))를 포함하는 수신기(예: 도 1의 수신기(100))는 동작 1010 내지 동작 1030을 통해 수신 신호(701) 내에 송신기가 전송한 제어 신호가 포함되어 있는지 여부를 판별할 수 있다. Referring to FIG. 10, a CRC aided successful cancellation list (CA-SCL) decoder (e.g., the
동작 1010에서, 수신기(100)는 CA-SCL 디코더(720)의 폴라 디코딩(예: 도 5의 동작 520의 폴라 디코딩, 도 6의 동작 610의 폴라 디코딩)을 통해 멀티 모달 입력들을 획득할 수 있다. 수신기(100)는 예를 들어, 폴라 인코딩(예: 도 6의 동작 650의 폴라 재인코딩(polar re-encoding) 및/또는 도 7의 폴라 인코딩(740)) 및 폴라 디코딩을 통해 멀티 모달 입력들을 획득할 수 있다. In
동작 1020에서, 수신기(100)는 동작 1010에서 획득한 멀티 모달 입력들을 결합하여 벡터화할 수 있다. 수신기(100)는 멀티 모달 입력들 중 적어도 둘을 하나의 벡터로 연결하는 벡터화를 통해 입력 데이터를 생성할 수 있다. In
동작 1030에서, 수신기(100)는 동작 1020에서 벡터화한 멀티 모달 입력들을 이진 분류기(예: 도 1의 이진 분류기(135))에 입력함으로써 수신기(100)의 수신 신호(701) 내에 송신기가 전송한 제어 신호가 포함되어 있는지 여부를 판별할 수 있다. 수신기(100)는 입력 데이터를 이진 분류기(135)에 입력함으로써 수신기(100)의 수신 신호(701) 내에 송신기가 전송한 제어 신호가 포함되어 있는지 여부를 판별할 수 있다. 수신기(100)는 수신 신호(701) 내에 송신기가 전송한 제어 신호가 포함되어 있었을 CRC 비트 확률, 다시 말해 추정치(예: 도 7의 추정치 (780))를 산출할 수 있다. In
이진 분류기(135)는 예를 들어, 이진 크로스 엔트로피 손실 함수 또는 힌지 손실 함수에 의해 학습되어 수신 신호(701) 내에 제어 신호가 포함되었을 확률에 대한 추정치 (780)를 산출할 수 있다. The
예를 들어, 추정치 (780)가 임계치 보다 크면, 이진 분류기(135)는 제어 신호가 수신되었다고 판별할 수 있다. 이와 달리, 추정치 (780)가 임계치보다 작거나 같으면, 이진 분류기(135)는 제어 신호가 수신되지 않았다고 판별할 수 있다. 이진 분류기(135)는 복수의 레이어들로 구성된 완전 연결망(FCN)(예: 도 7의 완전 연결망(FCN)(770))을 포함할 수 있다. 이진 분류기(135)는 예를 들어, ADAM(Adaptive Moment Estimation) 최적화 알고리즘에 의해 수신 신호(701) 내에 제어 신호가 포함되었을 확률을 산출할 수 있으나, 반드시 이에 한정되지는 않는다.For example, an estimate If 780 is greater than the threshold,
이진 분류기(135)의 학습에 이용되는 손실 함수는 예를 들어, 추정치 (780)를 산출하도록 이진 분류기(135)를 학습시키는 이진 교차 엔트로피(cross-entropy) 손실 함수를 포함할 수 있다. 이진 분류기(135)는 이진 교차 엔트로피 손실 함수를 이용하여 수신 신호(701) 내에 제어 신호가 포함되었을 확률에 대한 추정치 (780)를 산출하도록 학습될 수 있다. The loss function used for learning the
또는, 이진 분류기(135)의 학습에 이용되는 손실 함수는 결정 경계(decision boundary)를 찾는 힌지 손실(Hinge loss) 함수를 포함할 수 있다. 결정 경계는 수신 신호(701) 내에 잡음이 포함된 경우와 수신 신호(701) 내에 제어 신호가 포함된 경우를 구분하는 경계에 해당할 수 있다. 이진 분류기(135)는 힌지 손실 함수를 이용하여 결정 경계를 찾도록 학습될 수 있다. Alternatively, the loss function used for training the
멀티 모달 입력들은 예를 들어, 폴라 디코딩(예: 도 5의 동작 520의 폴라 디코딩, 도 6의 동작 610의 폴라 디코딩)에서 획득되는 복수 개의 생존 경로들(survival paths)의 비트열을 포함하는 경로 메트릭들(path metrics)(예: 도 7의 경로 메트릭들 P = {PM1, PM2, .. , PML}(703)), 폴라 디코딩(520, 610)의 결과를 폴라 인코딩(예: 도 6의 동작 650의 폴라 재인코딩(polar re-encoding) 및/또는 도 7의 폴라 인코딩(740))에 의해 재부호화하여 획득한 제곱 유클리드 거리 비율(SEDR)(예: 도 7의 제곱 유클리드 거리 비율(SEDR)()(705)), 폴라 디코딩에서 주어지는 송신 벡터들 사이의 상관 관계를 측정한 상관 메트릭(correlation metric)(예: 도 7의 상관 메트릭(correlation metric)()(707)), 및 수신 신호(701)의 신호 대 잡음비(signal to noise ratio; SNR)(예: 도 7의 SNR(702)) 중 적어도 두 가지의 유형을 포함할 수 있다. Multi-modal inputs are, for example, a path containing a bit string of a plurality of survival paths obtained in polar decoding (e.g., polar decoding in
일 실시예에 따르면, 무선 통신 시스템의 수신기(100)는 폴라 디코딩(polar decoding)(520, 610, 720)에서 수행되는 순환 중복 검사(cyclic redundancy check, CRC)에 의해 상기 수신기(100)의 수신 신호(701) 내에 포함된 송신기가 전송한 제어 신호를 검출하는 디코더(110, 340, 720), 및 상기 폴라 디코딩(520, 610)을 통해 획득한 멀티 모달 입력들(multi-modal inputs)에 기초하여 상기 수신 신호(701) 내에 상기 제어 신호가 포함되어 있는지 여부를 판별하는 후처리 모듈(130)을 포함할 수 있다. According to one embodiment, the
일 실시예에 따르면, 상기 후처리 모듈(130)은 상기 멀티 모달 입력들 중 적어도 둘을 기초로, 상기 수신 신호(701) 내에 상기 제어 신호가 포함되었을 확률에 대한 추정치(780)를 산출하는 이진 분류기(binary classifier)(135)를 포함할 수 있다. According to one embodiment, the
일 실시예에 따르면, 상기 이진 분류기(135)는 상기 추정치(780)가 임계치 (threshold) 보다 크면, 상기 제어 신호가 수신되었다고 판별하고, 상기 추정치(780)가 상기 임계치보다 작거나 같으면, 상기 제어 신호가 수신되지 않았다고 판별할 수 있다. According to one embodiment, the
일 실시예에 따르면, 상기 후처리 모듈(130)은 상기 멀티 모달 입력들 중 적어도 둘을 하나의 벡터로 연결(concatenate)하여 입력 데이터를 생성하고, 상기 입력 데이터를 상기 이진 분류기(135)에 인가하며, 상기 이진 분류기(135)는 상기 입력 데이터를 이용하여 상기 수신 신호(701) 내에 상기 제어 신호가 포함되었을 이진 확률을 출력할 수 있다. According to one embodiment, the
일 실시예에 따르면, 상기 멀티 모달 입력들은 상기 폴라 디코딩(520, 610)에서 획득되는 복수 개의 생존 경로들(survival paths)의 비트열을 포함하는 경로 메트릭들(path metric)(705), 상기 폴라 디코딩(520, 610)의 결과를 폴라 인코딩(polar encoding)(650, 740)에 의해 재부호화하여 획득한 제곱 유클리드 거리 비율(squared Euclidean distance ratio, SEDR)(705), 상기 폴라 디코딩(520, 610)에서 주어지는 송신 벡터들 사이의 상관 관계를 측정한 상관 메트릭(correlation metric)(707), 및 상기 수신 신호(701)의 신호 대 잡음비(signal to noise ratio, SNR) 중 적어도 두 가지의 유형을 포함할 수 있다. According to one embodiment, the multi-modal inputs include
일 실시예에 따르면, 상기 이진 분류기(135)는 복수의 레이어들로 구성된 완전 연결망(fully-connected network, FCN)(770)을 포함할 수 있다. According to one embodiment, the
일 실시예에 따르면, 상기 이진 분류기(135)는 상기 멀티 모달 입력들 중 적어도 둘을 상기 이진 분류기(135)에 입력으로 인가하여 상기 수신 신호(701)이 상기 제어 신호를 포함하는지 여부를 레이블링(labeling) 함으로써 학습될 수 있다. According to one embodiment, the
일 실시예에 따르면, 상기 이진 분류기(135)의 학습에 이용되는 손실 함수는 상기 추정치(780)를 산출하도록 상기 이진 분류기(135)를 학습시키는 이진 교차 엔트로피(cross-entropy) 손실 함수를 포함하고, 상기 이진 분류기(135)는 상기 이진 교차 엔트로피 손실 함수를 이용하여 상기 수신 신호(701) 내에 상기 제어 신호가 포함되었을 확률에 대한 추정치(780)를 산출하도록 학습될 수 있다. According to one embodiment, the loss function used for training the
일 실시예에 따르면, 상기 이진 분류기(135)의 학습에 이용되는 손실 함수는 상기 수신 신호(701) 내에 잡음이 포함된 경우와 상기 수신 신호(701) 내에 상기 제어 신호가 포함된 경우를 구분하는 결정 경계(decision boundary)를 찾는 힌지 손실(Hinge loss) 함수를 포함하고, 상기 이진 분류기(135)는 상기 힌지 손실 함수를 이용하여 상기 결정 경계를 찾도록 학습될 수 있다. According to one embodiment, the loss function used for learning of the
일 실시예에 따르면, 상기 수신 신호(701)은 상향 링크의 제어 정보를 포함할 수 있다. According to one embodiment, the received
일 실시예에 따르면, CA-SCL(C RC aided Successive cancellation list) 디코더(110, 340, 720)를 포함하는 수신기(100)의 동작 방법은 상기 CA-SCL 디코더(110, 340, 720)의 폴라 디코딩(520, 610)을 통해 멀티 모달 입력들을 획득하는 동작 1010, 상기 멀티 모달 입력들을 결합하여 벡터화하는 동작 1020, 및 상기 벡터화한 멀티 모달 입력들을 이진 분류기(135)에 입력함으로써 상기 수신기(100)의 수신 신호(701) 내에 송신기가 전송한 제어 신호가 포함되어 있는지 여부를 판별하는 동작 1030을 포함할 수 있다. According to one embodiment, a method of operating the
일 실시예에 따르면, 상기 멀티 모달 입력들을 획득하는 동작은 폴라 인코딩 및 상기 폴라 디코딩(520, 610)을 통해 상기 멀티 모달 입력들을 획득하는 동작을 포함할 수 있다. According to one embodiment, the operation of obtaining the multi-modal inputs may include obtaining the multi-modal inputs through polar encoding and polar decoding (520, 610).
일 실시예에 따르면, 상기 멀티 모달 입력들을 결합하여 벡터화하는 동작은 상기 멀티 모달 입력들 중 적어도 둘을 하나의 벡터로 연결하는 상기 벡터화를 통해 입력 데이터를 생성하는 동작을 포함하고, 상기 송신기가 전송한 제어 신호가 포함되어 있는지 여부를 판별하는 동작은 상기 입력 데이터를 상기 이진 분류기(135)에 입력함으로써 상기 수신기(100)의 수신 신호(701) 내에 송신기가 전송한 제어 신호가 포함되어 있는지 여부를 판별하는 동작을 포함할 수 있다. According to one embodiment, the operation of combining and vectorizing the multi-modal inputs includes generating input data through the vectorization by connecting at least two of the multi-modal inputs into one vector, and the transmitter transmits The operation of determining whether a control signal is included is to input the input data into the
일 실시예에 따르면, 상기 이진 분류기(135)는 이진 크로스 엔트로피 손실 함수(binary cross-entropy loss function) 또는 힌지 손실 함수에 의해 학습되어 상기 수신 신호(701) 내에 상기 제어 신호가 포함되었을 확률에 대한 추정치(780)를 산출할 수 있다. According to one embodiment, the
일 실시예에 따르면, 상기 이진 분류기(135)는 상기 추정치(780)가 임계치 보다 크면, 상기 제어 신호가 수신되었다고 판별하고, 상기 추정치(780)가 상기 임계치보다 작거나 같으면, 상기 제어 신호가 수신되지 않았다고 판별할 수 있다. According to one embodiment, the
일 실시예에 따르면, 상기 멀티 모달 입력들은 상기 폴라 디코딩(520, 610)에서 획득되는 복수 개의 생존 경로들(survival paths)의 비트열을 포함하는 경로 메트릭들(705), 상기 폴라 디코딩(520, 610)의 결과를 폴라 인코딩(polar encoding)(650, 740)에 의해 재부호화하여 획득한 제곱 유클리드 거리 비율(SEDR) (705), 상기 폴라 디코딩(520, 610)에서 주어지는 송신 벡터들 사이의 상관 관계를 측정한 상관 메트릭(707), 및 상기 수신 신호(701)의 신호 대 잡음비(SNR) 중 적어도 두 가지의 유형을 포함할 수 있다. According to one embodiment, the multi-modal inputs include
일 실시예에 따르면, 상기 이진 분류기(135)는 복수의 레이어들로 구성된 완전 연결망(FCN)(770)을 포함할 수 있다. According to one embodiment, the
일 실시예에 따르면, 상기 이진 분류기(135)의 학습에 이용되는 손실 함수는 상기 추정치(780)를 산출하도록 상기 이진 분류기(135)를 학습시키는 이진 교차 엔트로피(cross-entropy) 손실 함수를 포함하고, 상기 이진 분류기(135)는 상기 이진 교차 엔트로피 손실 함수를 이용하여 상기 수신 신호(701) 내에 상기 제어 신호가 포함되었을 확률에 대한 추정치(780)를 산출하도록 학습될 수 있다. According to one embodiment, the loss function used for training the
일 실시예에 따르면, 상기 이진 분류기(135)의 학습에 이용되는 손실 함수는 상기 수신 신호(701) 내에 잡음이 포함된 경우와 상기 수신 신호(701) 내에 상기 제어 신호가 포함된 경우를 구분하는 결정 경계(decision boundary)를 찾는 힌지 손실(Hinge loss) 함수를 포함하고, 상기 이진 분류기(135)는 상기 힌지 손실 함수를 이용하여 상기 결정 경계를 찾도록 학습될 수 있다.According to one embodiment, the loss function used for learning of the
Claims (20)
폴라 디코딩(polar decoding)(520, 610, 720)에서 수행되는 순환 중복 검사(cyclic redundancy check; CRC)에 의해 상기 수신기(100)의 수신 신호(701) 내에 포함된 송신기가 전송한 제어 신호를 검출하는 디코더(110, 340, 720); 및
상기 폴라 디코딩(520, 610)을 통해 획득한 멀티 모달 입력들(multi-modal inputs)에 기초하여 상기 수신 신호(701) 내에 상기 제어 신호가 포함되어 있는지 여부를 판별하는 후처리 모듈(130)
을 포함하는, 수신기(100).In the receiver 100 of a wireless communication system,
Detecting a control signal transmitted by a transmitter included in the received signal 701 of the receiver 100 by a cyclic redundancy check (CRC) performed in polar decoding 520, 610, and 720. decoder (110, 340, 720); and
A post-processing module 130 that determines whether the control signal is included in the received signal 701 based on multi-modal inputs obtained through the polar decoding 520 and 610.
Receiver 100, including.
상기 후처리 모듈(130)은
상기 멀티 모달 입력들 중 적어도 둘을 기초로, 상기 수신 신호(701) 내에 상기 제어 신호가 포함되었을 확률에 대한 추정치(780)를 산출하는 이진 분류기(binary classifier)(135)
를 포함하는, 수신기(100).According to paragraph 1,
The post-processing module 130 is
A binary classifier 135 that calculates an estimate 780 for the probability that the control signal is included in the received signal 701, based on at least two of the multi-modal inputs.
Receiver 100, including.
상기 이진 분류기(135)는
상기 추정치(780)가 임계치(threshold) 보다 크면, 상기 제어 신호가 수신되었다고 판별하고,
상기 추정치(780)가 상기 임계치보다 작거나 같으면, 상기 제어 신호가 수신되지 않았다고 판별하는, 수신기(100).According to paragraph 2,
The binary classifier 135 is
If the estimate 780 is greater than a threshold, it is determined that the control signal has been received,
If the estimate 780 is less than or equal to the threshold, the receiver 100 determines that the control signal has not been received.
상기 후처리 모듈(130)은
상기 멀티 모달 입력들 중 적어도 둘을 하나의 벡터로 연결(concatenate)하여 입력 데이터를 생성하고,
상기 입력 데이터를 상기 이진 분류기(135)에 인가하며,
상기 이진 분류기(135)는
상기 입력 데이터를 이용하여 상기 수신 신호(701) 내에 상기 제어 신호가 포함되었을 이진 확률을 출력하는, 수신기(100).According to any one of claims 2 to 3,
The post-processing module 130 is
Generating input data by concatenating at least two of the multi-modal inputs into one vector,
Applying the input data to the binary classifier 135,
The binary classifier 135 is
A receiver (100) that outputs a binary probability that the control signal is included in the received signal (701) using the input data.
상기 멀티 모달 입력들은
상기 폴라 디코딩(520, 610)에서 획득되는 복수 개의 생존 경로들(survival paths)의 비트열을 포함하는 경로 메트릭들(path metrics)(705);
상기 폴라 디코딩(520, 610)의 결과를 폴라 인코딩(polar encoding)(650, 740)에 의해 재부호화하여 획득한 제곱 유클리드 거리 비율(squared Euclidean distance ratio; SEDR)(705);
상기 폴라 디코딩(520, 610)에서 주어지는 송신 벡터들 사이의 상관 관계를 측정한 상관 메트릭(correlation metric)(707); 및
상기 수신 신호(701)의 신호 대 잡음비(signal to noise ratio; SNR)
중 적어도 두 가지의 유형을 포함하는, 수신기(100).According to any one of claims 1 to 4,
The multi-modal inputs are
path metrics 705 including a bit string of a plurality of survival paths obtained from the polar decoding 520, 610;
a squared Euclidean distance ratio (SEDR) 705 obtained by re-encoding the result of the polar decoding (520, 610) by polar encoding (650, 740);
a correlation metric (707) measuring the correlation between transmission vectors given in the polar decoding (520, 610); and
Signal to noise ratio (SNR) of the received signal 701
A receiver 100, comprising at least two types of:
상기 이진 분류기(135)는
복수의 레이어들로 구성된 완전 연결망(fully-connected network; FCN)(770)을 포함하는, 수신기(100).According to any one of claims 2 to 5,
The binary classifier 135 is
A receiver (100) including a fully-connected network (FCN) (770) composed of a plurality of layers.
상기 이진 분류기(135)는
상기 멀티 모달 입력들 중 적어도 둘을 상기 이진 분류기(135)에 입력으로 인가하여 상기 수신 신호(701)이 상기 제어 신호를 포함하는지 여부를 레이블링(labeling) 함으로써 학습되는, 수신기(100).According to any one of claims 2 to 6,
The binary classifier 135 is
The receiver 100 is learned by applying at least two of the multi-modal inputs as inputs to the binary classifier 135 to label whether the received signal 701 includes the control signal.
상기 이진 분류기(135)의 학습에 이용되는 손실 함수는
상기 추정치(780)를 산출하도록 상기 이진 분류기(135)를 학습시키는 이진 교차 엔트로피(cross-entropy) 손실 함수를 포함하고,
상기 이진 분류기(135)는
상기 이진 교차 엔트로피 손실 함수를 이용하여 상기 수신 신호(701) 내에 상기 제어 신호가 포함되었을 확률에 대한 추정치(780)를 산출하도록 학습되는, 수신기(100).According to any one of claims 2 to 7,
The loss function used for learning the binary classifier 135 is
a binary cross-entropy loss function that trains the binary classifier (135) to produce the estimate (780),
The binary classifier 135 is
The receiver (100) is trained to calculate an estimate (780) for the probability that the control signal is included in the received signal (701) using the binary cross entropy loss function.
상기 이진 분류기(135)의 학습에 이용되는 손실 함수는
상기 수신 신호(701) 내에 잡음이 포함된 경우와 상기 수신 신호(701) 내에 상기 제어 신호가 포함된 경우를 구분하는 결정 경계(decision boundary)를 찾는 힌지 손실(Hinge loss) 함수를 포함하고,
상기 이진 분류기(135)는
상기 힌지 손실 함수를 이용하여 상기 결정 경계를 찾도록 학습되는, 수신기(100).According to any one of claims 2 to 7,
The loss function used for learning the binary classifier 135 is
It includes a hinge loss function that finds a decision boundary that distinguishes between a case in which noise is included in the received signal 701 and a case in which the control signal is included in the received signal 701,
The binary classifier 135 is
A receiver (100) that is trained to find the decision boundary using the hinge loss function.
상기 수신 신호(701)은
상향 링크의 제어 정보를 포함하는, 수신기(100).According to any one of claims 1 to 9,
The received signal 701 is
Receiver 100, including control information of the uplink.
상기 CA-SCL 디코더(110, 340, 720)의 폴라 디코딩(520, 610)을 통해 멀티 모달 입력들을 획득하는 동작;
상기 멀티 모달 입력들을 결합하여 벡터화하는 동작; 및
상기 벡터화한 멀티 모달 입력들을 이진 분류기(135)에 입력함으로써 상기 수신기(100)의 수신 신호(701) 내에 송신기가 전송한 제어 신호가 포함되어 있는지 여부를 판별하는 동작
을 포함하는, 수신기(100)의 동작 방법.In a method of operating a receiver 100 including a CRC aided successive cancellation list (CA-SCL) decoder (110, 340, 720),
Obtaining multi-modal inputs through polar decoding (520, 610) of the CA-SCL decoder (110, 340, 720);
An operation of combining the multi-modal inputs and vectorizing them; and
An operation of determining whether a control signal transmitted from a transmitter is included in the received signal 701 of the receiver 100 by inputting the vectorized multi-modal inputs into the binary classifier 135.
A method of operating the receiver 100, including.
상기 멀티 모달 입력들을 획득하는 동작은
폴라 인코딩 및 상기 폴라 디코딩(520, 610)을 통해 상기 멀티 모달 입력들을 획득하는 동작
을 포함하는, 수신기(100)의 동작 방법.According to clause 11,
The operation of acquiring the multi-modal inputs is
Obtaining the multi-modal inputs through polar encoding and polar decoding (520, 610)
A method of operating the receiver 100, including.
상기 멀티 모달 입력들을 결합하여 벡터화하는 동작은
상기 멀티 모달 입력들 중 적어도 둘을 하나의 벡터로 연결하는 상기 벡터화를 통해 입력 데이터를 생성하는 동작
을 포함하고,
상기 송신기가 전송한 제어 신호가 포함되어 있는지 여부를 판별하는 동작은
상기 입력 데이터를 상기 이진 분류기(135)에 입력함으로써 상기 수신기(100)의 수신 신호(701) 내에 송신기가 전송한 제어 신호가 포함되어 있는지 여부를 판별하는 동작
을 포함하는, 수신기(100)의 동작 방법.According to any one of claims 11 to 12,
The operation of combining and vectorizing the multi-modal inputs is
An operation of generating input data through the vectorization of connecting at least two of the multi-modal inputs into one vector.
Including,
The operation of determining whether the control signal transmitted by the transmitter is included is
An operation of determining whether a control signal transmitted by a transmitter is included in the received signal 701 of the receiver 100 by inputting the input data into the binary classifier 135.
A method of operating the receiver 100, including.
상기 이진 분류기(135)는
이진 크로스 엔트로피 손실 함수(binary cross-entropy loss function) 또는 힌지 손실 함수에 의해 학습되어 상기 수신 신호(701) 내에 상기 제어 신호가 포함되었을 확률에 대한 추정치(780)를 산출하는, 수신기(100)의 동작 방법.According to any one of claims 11 to 13,
The binary classifier 135 is
The receiver 100 is learned by a binary cross-entropy loss function or a hinge loss function to calculate an estimate 780 for the probability that the control signal is included in the received signal 701. How it works.
상기 이진 분류기(135)는
상기 추정치(780)가 임계치 보다 크면, 상기 제어 신호가 수신되었다고 판별하고,
상기 추정치(780)가 상기 임계치보다 작거나 같으면, 상기 제어 신호가 수신되지 않았다고 판별하는, 수신기(100)의 동작 방법.According to clause 14,
The binary classifier 135 is
If the estimate 780 is greater than the threshold, it is determined that the control signal has been received,
If the estimate 780 is less than or equal to the threshold, it is determined that the control signal has not been received.
상기 멀티 모달 입력들은
상기 폴라 디코딩(520, 610)에서 획득되는 복수 개의 생존 경로들(survival paths)의 비트열을 포함하는 경로 메트릭들(705);
상기 폴라 디코딩(520, 610)의 결과를 폴라 인코딩(650, 740)에 의해 재부호화하여 획득한 제곱 유클리드 거리 비율(705);
상기 폴라 디코딩(520, 610)에서 주어지는 송신 벡터들 사이의 상관 관계를 측정한 상관 메트릭(707); 및
상기 수신 신호(701)의 신호 대 잡음비(SNR)
중 적어도 두 가지의 유형을 포함하는, 수신기(100)의 동작 방법.According to any one of claims 11 to 15,
The multi-modal inputs are
Path metrics 705 including a bit string of a plurality of survival paths obtained from the polar decoding 520 and 610;
a squared Euclidean distance ratio (705) obtained by re-coding the results of the polar decoding (520, 610) by polar encoding (650, 740);
a correlation metric (707) measuring the correlation between transmission vectors given from the polar decoding (520, 610); and
Signal-to-noise ratio (SNR) of the received signal 701
A method of operating the receiver 100, including at least two types.
상기 이진 분류기(135)는
복수의 레이어들로 구성된 완전 연결망(FCN)(770)을 포함하는, 수신기(100)의 동작 방법.According to any one of claims 11 to 16,
The binary classifier 135 is
A method of operating the receiver 100, including a fully connected network (FCN) 770 composed of a plurality of layers.
상기 이진 분류기(135)의 학습에 이용되는 손실 함수는
상기 추정치(780)를 산출하도록 상기 이진 분류기(135)를 학습시키는 이진 교차 엔트로피(cross-entropy) 손실 함수를 포함하고,
상기 이진 분류기(135)는
상기 이진 교차 엔트로피 손실 함수를 이용하여 상기 수신 신호(701) 내에 상기 제어 신호가 포함되었을 확률에 대한 추정치(780)를 산출하도록 학습되는, 수신기(100)의 동작 방법.According to any one of claims 11 to 17,
The loss function used for learning the binary classifier 135 is
a binary cross-entropy loss function that trains the binary classifier (135) to produce the estimate (780),
The binary classifier 135 is
A method of operating the receiver 100, which is learned to calculate an estimate 780 for the probability that the control signal is included in the received signal 701 using the binary cross entropy loss function.
상기 이진 분류기(135)의 학습에 이용되는 손실 함수는
상기 수신 신호(701) 내에 잡음이 포함된 경우와 상기 수신 신호(701) 내에 상기 제어 신호가 포함된 경우를 구분하는 결정 경계(decision boundary)를 찾는 힌지 손실(Hinge loss) 함수를 포함하고,
상기 이진 분류기(135)는
상기 힌지 손실 함수를 이용하여 상기 결정 경계를 찾도록 학습되는, 수신기(100)의 동작 방법.According to any one of claims 11 to 17,
The loss function used for learning the binary classifier 135 is
It includes a hinge loss function that finds a decision boundary that distinguishes between a case in which noise is included in the received signal 701 and a case in which the control signal is included in the received signal 701,
The binary classifier 135 is
A method of operating the receiver 100, which is learned to find the decision boundary using the hinge loss function.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/KR2023/010408 WO2024043541A1 (en) | 2022-08-25 | 2023-07-19 | Receiver performing blind detection in wireless communication system, and operation method thereof |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220106853 | 2022-08-25 | ||
KR20220106853 | 2022-08-25 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20240028887A true KR20240028887A (en) | 2024-03-05 |
Family
ID=90298661
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220116201A KR20240028887A (en) | 2022-08-25 | 2022-09-15 | Receiver performing blind detection in wireless communication system and operating method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20240028887A (en) |
-
2022
- 2022-09-15 KR KR1020220116201A patent/KR20240028887A/en unknown
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA3021667C (en) | Encoding and decoding of control signaling with sectional redundancy check | |
EP3459192B1 (en) | Apparatus and methods for error detection coding | |
CN110089037B (en) | Apparatus and method for polar code construction | |
US7716561B2 (en) | Multi-threshold reliability decoding of low-density parity check codes | |
EP3729697B1 (en) | Decoding signals by guessing noise | |
CN109478959B (en) | Design of hybrid automatic repeat request (HARQ) feedback bits for polar codes | |
US11451243B2 (en) | Method and apparatus for decoding data in communication or broadcasting system | |
US20150222295A1 (en) | Encoding/decoding method, device, and system | |
US10476998B2 (en) | Reinforced list decoding | |
US20220231703A1 (en) | Error detection in communication systems using polar coded data transmission | |
US11088780B2 (en) | Low complexity blind detection of code rate | |
CN102349255A (en) | Methods and devices for providing unequal error protection code design from probabilistically fixed composition codes | |
CN111480324B (en) | Device and method for detecting mutually interfering information flows | |
CN111669187B (en) | Decoding method and device, equipment and storage medium | |
JP7371077B2 (en) | Coding and decoding of control signaling with section-based redundancy checking | |
KR20120093536A (en) | Apparatus and method for decoding in communication system | |
US8935601B1 (en) | Post-processing methodologies in decoding LDPC codes | |
US20180115326A1 (en) | Software defined network with selectable low latency or high throughput mode | |
US20190253182A1 (en) | Data encoding and decoding | |
US7454682B2 (en) | System for identifying localized burst errors | |
KR20240028887A (en) | Receiver performing blind detection in wireless communication system and operating method thereof | |
JP2010068083A (en) | Decoder and decoding method | |
RU2337478C2 (en) | Decoding of highly excessive code with parity check, using multithreshold message transfer | |
CN113067582B (en) | Parallel decoding method and device | |
CN112152642A (en) | Sliding window decoding method and system with retransmission mechanism |