KR20190134608A - 일반화된 폴라 코드 - Google Patents

일반화된 폴라 코드 Download PDF

Info

Publication number
KR20190134608A
KR20190134608A KR1020197026518A KR20197026518A KR20190134608A KR 20190134608 A KR20190134608 A KR 20190134608A KR 1020197026518 A KR1020197026518 A KR 1020197026518A KR 20197026518 A KR20197026518 A KR 20197026518A KR 20190134608 A KR20190134608 A KR 20190134608A
Authority
KR
South Korea
Prior art keywords
bits
probability
bit
channel
polar code
Prior art date
Application number
KR1020197026518A
Other languages
English (en)
Inventor
데이비드 폴린
앤드류 제이. 페리스
Original Assignee
소크프라 시앙스 에 제니 에스.에.쎄.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 소크프라 시앙스 에 제니 에스.에.쎄. filed Critical 소크프라 시앙스 에 제니 에스.에.쎄.
Publication of KR20190134608A publication Critical patent/KR20190134608A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/01Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/13Linear codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/23Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/45Soft decoding, i.e. using symbol reliability information
    • H03M13/451Soft decoding, i.e. using symbol reliability information using a set of candidate code words, e.g. ordered statistics decoding [OSD]
    • H03M13/453Soft decoding, i.e. using symbol reliability information using a set of candidate code words, e.g. ordered statistics decoding [OSD] wherein the candidate code words are obtained by an algebraic decoder, e.g. Chase decoding
    • H03M13/455Soft decoding, i.e. using symbol reliability information using a set of candidate code words, e.g. ordered statistics decoding [OSD] wherein the candidate code words are obtained by an algebraic decoder, e.g. Chase decoding using a set of erasure patterns or successive erasure decoding, e.g. generalized minimum distance [GMD] decoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/45Soft decoding, i.e. using symbol reliability information
    • H03M13/458Soft decoding, i.e. using symbol reliability information by updating bit probabilities or hard decisions in an iterative fashion for convergence to a final decoding result
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0047Decoding adapted to other signal detection operation
    • H04L1/005Iterative decoding, including iteration between signal detection and decoding operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • Error Detection And Correction (AREA)

Abstract

잡음이 있는 통신 채널을 위한 채널 디코더에 프로즌 비트의 n개의 최상 위치를 결정하기 위한 방법이 제공된다. n개의 최악 위치에서 프로즌 비트를 갖는 채널을 실행하기 위한 디코딩 방법 및 디코딩 처리 유닛이 제공된다. 방법 및 시스템은 n개의 비트로부터 각각의 비트(i)에 대해 반복적으로 특정 값으로 단순화된 수축 아이덴티티를 사용하여 논리 그래프를 횡단함으로써 비트(i)에 대한 확률 벡터를 결정하고, 대응하는 수축 아이덴티티에 기초하여 후속 반복 동안 후속 참조를 위해 확률 벡터의 결정 동안 새롭게 계산된 수축 아이덴티티로부터 특정 값을 인덱싱하고, 모든 n개의 비트가 고정될 때까지 확률 벡터로부터 비트(i)를 고정하고 비트(i+1)로 이동시킨다.

Description

일반화된 폴라 코드
35 U.S.C §.119 (e) & 37 C.F.R . §.1.78에 다른 우선권 진술
가 출원이 아닌 본 특허 출원은, 발명의 명칭의 "컨볼루션 폴라 코드(CONVOLUTIONAL POLAR CODES)", 출원 번호 제 62/466/414호이고, 2017년 3월 3일에 SOCPRA Sciences et Genie s.e.c의 이름으로 출원된 이전의 미국 가 특허 출원을 기초로 우선권을 청구하며, 이 미국 가 특허 출원은 전체적으로 본 명세서에 표함된다.
기술 분야
본 발명은 채널 코딩에 관한 것으로, 더욱 상세하게는 채널 코딩에서 특정 타입의 폴라 코드의 사용에 관한 것이다.
채널 코딩은 잡음, 간섭 및 열악한 신호 강도로 인한 통신 오류를 수정하기 위해 셀룰러 통신 시스템에서 사용된다. 채널 코딩은 매우 복잡하며 동시에 셀룰러 통신 시스템의 성능 중심이다.
3G 및 4G 셀룰러 시스템에서, 터보 코드가 메인 채널 코딩 메커니즘으로서 사용되어 왔다. 5G의 경우 무선 인터페이스는 대기 시간이 매우 낮은 상태에서 최대 20Gbps의 다운 링크 처리량에 도달 할 것으로 예상된다. 5G는 또한 소비자의 다양화(예를 들면, 사물 인터넷(IoT), 광대역 통신, 운송 통신 등)를 고려할 때 훨씬 더 큰 유연성을 요구한다. (예를 들어, 위성 통신을 위한) 다른 통신 프로토콜은 또한 개선된 채널 코딩 기술로부터 이익을 얻을 수 있다. 이와 관련하여 현재 채널 코딩이 개선될 수 있다.
본 발명은 이러한 과제를 적어도 부분적으로 해결한다.
이 요약은 아래의 상세한 설명에서 추가로 설명되는 선택된 개념들을 단순화된 형태로 소개하기 위해 제공된다. 이 요약은 청구된 요지의 주요 특징 또는 필수 특징을 식별하기 위한 것이 아니며 청구된 요지의 범위를 결정하는데 도움을 주기 위해 사용되지도 않는다.
본 발명의 제 1 양태는 잡음이 있는 통신 채널을 위한 채널 디코더에서 프로즌 비트(frozen bit)의 n개의 최상 위치를 결정하는 방법에 관한 것이다. 본 방법은:
· 폴라 코드 인코딩 방식을 선택하는 단계;
· 폴라 코드 인코딩 방식에 대응하는 폴라 코드 디코더 방식을 획득하는 단계;
· 채널 비트의 수를 정의하는 채널 대역폭을 결정하는 단계;
· 메시지 비트의 수, 채널 비트의 수 및 프로즌 비트의 수(n)를 정의하는 메시지 비트의 수를 정의하는 메시지 길이를 결정하는 단계;
· 잡음이 있는 통신 채널의 특성에도 불구하고, 소거 확률(p)로 통신 채널을 특성화하는 단계; 및
· 상기 확률(p)을 고려한 n개의 최악 위치를 계산하는 단계를 포함한다.
본 방법의 선택적인 특징으로서, 폴라 코드 인코딩 방식은 적어도 2 레벨의 CNOT 게이트를 이용하여 모델링된 컨볼루션 폴라 코드일 수 있다.
선택적으로, 폴라 코드 인코딩 방식은 또한, 대안적으로 또는 부가적으로, 2의 제곱으로서 비트의 수(k)를 가지며, k는 채널 비트의 수 이상이 되도록 선택된다. 대안적인 옵션으로서, 폴라 코드 인코딩 방식은 한 개 이상의 서브-폴라 코드를 포함하고, 서브-폴라 코드 각각은 2의 제곱으로서 표현된 코딩 비트의 수를 포함하고, 서브-폴라 코드의 각각에서 코딩 비트의 수는 그것의 합이 채널 비트의 수 이상이 되도록 선택된다.
일부 실시예에서, 잡음이 있는 통신 채널은 양호 상태 확률(p 2 )을 특징으로 하는 상관 잡음 특성을 제공할 수 있고 소거 확률(p)은 불량 상태 확률(p 1 ≥p 2 )에 대응한다. 상기 채널은 양호 상태와 불량 상태(P gb ) 사이 및 양호 상태와 불량 상태(P bg ) 사이의 전이의 확률을 제공할 수 있고, 따라서 n개의 최악 위치를 계산하는 것은 확률 p 2 , Pgb, 및 Pbg를 추가로 고려할 것이다.
본 발명의 제 2 양태에 따라, 제 1 양태에 따라 선택되고 그에 의해 결정된 n개의 최악 위치에서 프로즌 비트를 갖는 폴라 코드 디코더 방식을 구현하는 디코딩 방법이 제공될 수 있다. 마찬가지로, 제 1 양태에 따라 선택되고 그에 의해 결정된 n개의 최악 위치에서 프로즌 비트를 갖는 폴라 코드 디코더 방식을 구현하기 위해 디코딩 처리 유닛이 제공될 수 있다.
본 발명의 제 3 양태에 따라, m < n개의 비트의 메시지를 얻기 위해 n개의 비트의 메시지를 반복적으로 디코딩하는 방법이 제공된다. 상기 메시지는 소거의 불량 상태 확률(p 1 ), 소거의 양호 상태 확률(p 2 ), p 2 ≤p 1 의 확률을 특징으로 하는 상관 잡음을 나타내는 잡음이 있는 통신 채널을 통해 수신된다. 채널은 또한 양호 상태와 불량 상태(Pgb) 사이 및 양호 상태와 불량 상태(Pbg) 사이의 전이의 확률을 제공한다. 상기 방법은:
· 상기 n개의 비트로부터 각각의 비트(i)에 대해 반복적으로:
· 특정 값으로 단순화된 수축 아이덴티티를 사용하여 논리 그래프를 횡단함으로써 비트(i)에 대한 확률 벡터를 결정하는 단계;
· 대응하는 수축 아이덴티티에 기초하여 후속 반복 동안 후속 참조를 위해 확률 벡터의 결정 동안 새로 계산된 수축 아이덴티티로부터 특정 값을 인덱싱하는 단계;
· 상기 확률 벡터로부터 상기 비트(i)를 고정하는 단계; 및
· 모든 n개의 비트가 고정될 때까지 비트(i+1)를 이동시키는 단계를 포함한다.
특정 실시 예에서, 새로 계산된 수축 아이덴티티는 확률 벡터의 결정 동안 특정 값으로 대체된 논리 그래프의 하나 이상의 섹션에 대응할 수 있다. 상기 메시지는 일반적으로 네트워크 인터페이스를 통해 수신되지만 반드시 그런 것은 아니다. 마찬가지로, 고정 비트는 전형적으로 네트워크 스택의 더 높은 처리 레이어에 제공되지만 반드시 그런 것은 아니다.
본 발명의 제 4 양태는 m < n개의 비트의 메시지를 획득하도록 n개의 비트의 메시지를 반복적으로 디코딩하는 시스템에 관한 것으로, 상기 메시지는 소거의 불량 상태 확률(p 1 ), 소거의 양호 상태 확률(p 2 ), p 2 ≤p 1 의 확률을 특징으로 하는 상관 잡음을 나타내는 잡음이 있는 통신 채널을 통해 수신된다. 채널은 양호 상태와 불량 상태 (Pgb) 사이 및 양호 상태와 불량 상태 (Pbg) 사이의 전이의 확률을 제공한다. 상기 시스템은 n개의 비트로부터 각 비트(i)에 대해 반복적으로:
· 특정 값으로 단순화된 수축 아이덴티티를 사용하여 논리 그래프를 횡단함으로써 비트(i)에 대한 확률 벡터를 결정하고;
· 대응하는 수축 아이덴티티에 기초하여 후속 반복 동안 후속 참조를 위해 확률 벡터의 결정 동안 새로 계산된 수축 아이덴티티로부터 특정 값을 인덱싱하고;
· 확률 벡터로부터 비트(i)를 고정하고; 그리고
· n개의 비트 모두가 고정될 때까지 비트(i+1)를 이동시키는 처리 모듈을 포함한다.
새로 계산된 수축 아이덴티티는 확률 벡터의 결정 동안 특정 값으로 대체된 논리 그래프의 하나 이상의 섹션에 대응할 수 있다. 상기 시스템은 메시지를 수신하는 네트워크 인터페이스를 더 포함할 수 있고, 고정 비트는 네트워크 인터페이스와 관련된 네트워크 스택의 상위 처리 레이어에 제공될 수 있다.
본 발명의 추가 특징 및 예시적인 장점은 첨부된 도면과 관련하여 다음의 상세한 설명으로부터 명백해질 것이다.
본 명세서에서 도 1로서 동시에 지칭되는, 도 1a, 도 1b, 도 1c, 도 1c', 도 1d, 도 1e, 도 1f, 및 도 1g는 본 발명의 교시에 따른 일반화된 인코딩 회로를 형성하기 위한 예시적인 레벨의 논리도이고,
도 2는 본 발명의 교시에 따른 예시적인 개방 경계 컨볼루션 폴라 코드 인코딩 회로의 논리도이고,
본 명세서에서 도 3으로서 동시에 지칭되는, 도 3A, 도 3B, 도 3C는 본 발명의 교시에 따른 예시적인 잡음이 있는 전송 채널의 논리도이고,
본 명세서에서 도 4로서 동시에 지칭되는, 도 4A, 도 4B, 및 도 4C는 본 발명의 교시에 따라, 아이덴티티라고도 하는 예시적인 디코딩 계산 단순화기의 논리도이고,
도 5는 특정 비트가 결정되고 본 발명의 교시에 따라 디코딩 계산 단순화기가 적용되는 디코딩 예의 논리도이고,
본 명세서에서 도 6으로서 동시에 지칭되는, 도 6A 및 도 6B는 본 발명의 교시에 따라 2개의 개방 비트를 야기하는 예시적인 텐서 회로의 논리도이고,
본 명세서에서 도 7로서 동시에 지칭되는, 도 7A, 도 7B, 및 도 7C는 본 발명의 교시에 따라 3개의 개방 비트를 초래하는 예시적인 텐서 회로의 논리도이고,
도 8은 본 발명의 교시에 따라, 4개의 오픈 비트를 초래하는 예시적인 텐서 회로의 논리도이고,
본 명세서에서 도 9로서 동시에 지칭되는, 도 9A 및 도 9B는 본 발명의 교시에 따라 5개의 개방 비트를 야기하는 예시적인 텐서 회로의 논리도이고,
도 10은 본 발명의 교시에 따른 예시적인 상관 잡음 텐서의 논리도이고,
도 11은 본 발명의 교시에 따라 상관 잡음이 존재하는 16비트 문자열의 8번째 비트에 대한 예시적인 디코딩 문제의 논리도이고,
본 명세서에서 도 12로서 동시에 지칭되는, 도 12A, 도 12B, 도 12C, 및 도 12D는 본 발명의 교시에 따라 상관 잡음이 존재하는 경우의 논리적 디코딩 표현이고,
본 명세서에서 도 13으로서 동시에 지칭되는, 도 13A, 도 13B, 도 13C, 도 13D, 도 13E, 및 도 13F는 본 발명의 교시에 따라 상관 잡음이 존재하는 디코딩을 위한 예시적인 순차적 단순화 절차를 도시하고,
도 14는 본 발명의 교시에 따른 예시적인 상관 잡음 모델의 논리도이고,
본 명세서에서 도 9로서 동시에 지칭되는, 도 9a, 도 9b, 도 9c, 도 9d, 도 9e, 도 9f, 도 9g, 도 9h, 도 9i, 및 도 9j는 본 발명의 교시에 따른 논리도이고,
본 명세서에서 도 15로서 동시에 지칭되는, 도 15a, 도 15b, 도 15c, 및 도 15d는 연속적인 상쇄 디코딩 하에서 논리 채널의 유효 소거율에 의해 파라미터화되는, 각 채널의 정확도를 나타내는 그래프이며,
도 16은 폴라 및 컨볼루션 폴라 코드에 대한 오차 지수의 추정치를 비교하여 나타내는 그래프이고,
본 명세서에서 도 17로서 동시에 지칭되는, 도 17a, 도 17b, 도 17c, 도 17d, 도 17e, 및 도 17f는 이진 소거 채널의 다양한 크기의 레이트 1/2 폴라 및 컨볼루션 폴라 코드의 성능의 비교를 도시하는 그래프이고,
본 명세서에서 도 18로서 동시에 지칭되는, 도 18a, 도 18b, 도 18c, 도 18d, 도 18e, 및 도 18f는 비트-플립 채널의 다양한 크기의 레이트 1/2 폴라 및 컨볼루션 폴라 코드의 성능의 비교를 나타내는 그래프이고,
본 명세서에서 도 19로서 동시에 지칭되는, 도 19a, 도 19b, 도 19c, 도 19d, 도 19e, 및 도 19f는 부가 가우스 화이트 잡음 채널의 다양한 크기의 레이트 1/2 폴라 및 컨볼루션 폴라 코드의 성능의 비교를 나타내는 그래프이고,
도 20A-20B, 도 21A-21B, 도 22A-22B, 및 도 23A-23B는 3가지 유형의 디코딩 기술에 대한 210(1024) 비트의 코드 크기에 대한 상관 잡음의 존재 하에서의 성능 곡선을 나타내고,
도 24는 본 발명의 사상에 따른 예시적인 통신 시스템의 논리적 모듈도이고,
도 25는 본 발명의 사상에 따른 예시적인 방법의 흐름도이고,
본 명세서에서 도 3으로서 동시에 지칭되는, 도 26a 및 도 26b는 본 발명의 사상에 따른 예시적인 방법의 흐름도이다.
Arikan에 의해 발견된 채널 분극 현상은 제어되지 않은 (CNOT) 게이트에 의해 생성될 수 있다. 제어 비트가 대상 비트에 추가되기 때문에, 제어 비트가 중복 인코딩되어 잡음에 더욱 견고하다. 한편, 대상 비트의 정보는 그 값이 아마도 알려지지 않은 제어 비트의 값에 의존하는 방식으로 수정되기 때문에 부분적으로 제거된다. 따라서 우리는 채널이 더 나은 채널과 더 나쁜 채널로 부분적으로 분극되었다고 말한다. 폴라 코드의 인코딩 회로는 이 분극 절차를 반복함으로써 얻어지며, 채널의 일부에 오류가 없고 보완물이 완전히 무작위화되는 완벽한 분극을 점근적으로 생성한다.
이러한 반복적 특성으로 인해, 인코딩 회로는 CNOT 게이트가 다른 길이 스케일로 계층적 배열을 따르는 스펙트럼 변환의 기하학적 형태를 취하며, (고속) 푸리에 변환과 마찬가지로, 선형 인코딩 행렬는 소형 행렬의 크로넥커(Kronecker) 제품으로 분해될 수 있다. 이 경우에, 분극은 연속적인 상쇄 디코더에 대해 정의되며, 여기서 입력 비트의 한계 확률은 비트(1, ... , i - 1)의 사전 지식으로 계산된다.
양자 다체 물리학(quantum many-body physics) 분야에서 개발된 강력한 그래픽 미적분학에 대한 광범위한 코드 작성이 이전에 개발되었다. 이러한 분야에서, 폴라 코드와 관련된 인코딩 회로는 제한된 형태의 분기 멀티 스케일 얽힘 재 정규화 안사츠(ansatz) (분기 MERA) 텐서 네트워크이다. 더 정확하게 말하면, 텐서의 절반이 사소한 신원 게이트인 분기 MERA 네트워크에 해당하므로 '분기 트리'라고 불리는 객체를 초래한다. 본 개시에서, 브랜칭 MERA 코드 패밀리에 중점을 두는데, 이는 브랜칭 MERA의 토폴로지를 갖는 인코딩 회로로부터 획득된 모든 코드를 포함하고, 많은 사소한 게이트를 갖는 특별한 경우로서 폴라 코드를 포함한다. 폴라 코드가 일련의 분극 단계를 사용하는동안, 각각은 교차하지 않는 유한 크기 블록에서 작동하는 게이트 제품으로 구성되지만 여기에서 고려된 일반화는 모든 분극 단계에서 컨볼루션 구조를 사용하여 이 방식을 넘어선다(컨벌루션 폴라 코드에 적재).
Arikan은 폴라 코드를 통해 대칭 채널에 대해 입증 가능하게 효율적이고 용량을 달성하는 코드의 첫 번째 구체적인 예를 제시하여 상당한 관심을 끌고 개선 및 일반화에 대한 추가 작업을 자극한다. 특히, 폴라 코드의 한계가 조사되어 크로네커(Kronecker) 제품으로의 분해성을 유지하면서 폴라 코드의 점근적 블록 오류 성능이 작은 차원의 기본 행렬을 고려하면 최적이라는 주목할만한 결과가 있다. 실제로, 점근적 오차 지수를 향상시키려면 치수를 15 이상으로 늘려야 한다. 컨볼루션 폴라 코드는 보다 일반적인 분극 구조를 위해 블록 구조 제한 분극을 포기하여 최적의 동작에 대한 조사를 다시 개방한다.
컨볼루션 폴라 코드는 폴라 코드의 일반화의 한 예를 형성하며 로그 선형 시간으로 수축 가능한 텐서를 생성하는 연속 취소 디코더를 포함하여 많은 속성을 인계받는다. 디코딩 알고리즘은 작고 일정한 수치적 요소에 의해 느리지만, 채널 분극 및 에러 정정 성능 모두에서 상당한 개선이 달성될 수 있음이 관찰되었다. 폴라 코드의 중요한 실제 제한은 중요한 유한 크기 효과이지만, 컨볼루션 폴라 코드는 더 가파른 폭포 영역을 표시하여 유한 크기 효과를 억제하는 것으로 관찰되었다.
개략적으로, CNOT와 같은 게이트는 α, β, γ, ... 를 표시하는 특정 수의 인덱스로 텐서 A αβγ... 로서 볼 수 있으며, 이들은 각각 이후
Figure pct00001
로 가정하는, 유한 세트로 값을 취한다. 인덱스의 수는 텐서의 랭크이다. 예를 들면, CNOT 게이트는 두 개의 입력 비트를 나타내는 인덱스 αβ 및 두 개의 출력 비트를 나타내는 δγ를 갖는 랭크-4 텐서(N αβδγ )이다. 텐서의 값은 γ=α이고
Figure pct00002
일 때, N αβδγ =1에 의해 주어진다. 텐서는 그래픽으로 정점으로 표현될 수 있고 그 인덱스는 에지로, 정점의 정도는 텐서의 랭크와 같다. 상기 설정에서, 두 개의 정점을 링크하는 에지는 아래 방정식에 의해 정의된 텐서 수축을 나타낸다:
Figure pct00003
텐서 수축은 행렬 곱셈의 일반화이다. (닫힌) 그래프는 모든 에지가 수축되어 스칼라가 있는 텐서 네트워크(TN)를 나타낸다. 하나의 열린 에지가 있는 그래프 (일 단이 정점에 연결되지 않은 에지)는 하나의 수축되지 않은 인덱스를 가진 텐서 네트워크 및 이에 따른 벡터, 등을 나타낸다. 이러한 객체, 및 특히 객체의 그래픽 표현은 요인 그래프라고도 하며 일부 정점이 변수로 식별될 수 있다. 노멀 팩터 그래프는 개방형 텐서 네트워크와 더 나은 유사성을 제공한다.
이제 도 1이 16 비트에 대한 일반화된 인코딩 회로를 제공하는 도면을 참조한다. 도 1a 내지 도 1g의 예에서, 논리 비트의 입력은 회로의 상단으로 들어가고, 인코딩 된 메시지는 하단에 나타난다. 보다 쉬운 표현을 위해, 입력 신호의 상이한 비트에 걸쳐 CNOT 게이트를 "스트레칭(stretching)"하는 대신에, 입력 신호의 논리 비트는 인코딩 회로의 상이한 레벨의 CNOT 게이트로 전달되는 것으로 도시된다. 숙련된 사람들은 서로 교차하는 신호선들이 그들 사이의 물리적 연결을 나타내지 않는다는 것을 이해할 것이다. 명확성을 위해, 도 1은 일반화된 인코딩 회로에 대한 상이한 레벨의 CNOT 게이트를 도시하는 도 1a 내지 도 1g로 분할되었다. 사용되는 레벨의 선택에 따라 다른 간단한 인코딩 회로가 제공될 수 있다. 도 1b는 모든 인코딩 회로의 일부인 제 1 레벨의 CNOT 게이트(10)를 제시한다. CNOT 게이트(10)의 제 1 레벨은 모든 인코딩 회로에 사용되므로, 모든 도 1c 내지 도 1g에서 반복된다. 그러나, 숙련가들은 레벨이 함께 사용될 때 부적절하게 복제되지 않는다는 것을 이해할 것이다.
도 1b 내지 도 1f에 도시된 레벨로부터 상이한 인코딩 회로가 구축될 수 있다. 예를 들어, 일반화된 폴라 코드 인코딩 회로는 도 1c에 도시되어 있으며 제 1 레벨의 게이트(10) 및 제 2 레벨의 CNOT 게이트(20)를 포함한다. 도 1c'은 다른 논리적 표현으로 도 1c와 동일한 회로를 나타낸다. 도 1d는 제 3 레벨의 CNOT 게이트(30)를 도시한다. 일반화된 컨볼루션 폴라 코드 인코딩 회로는 CNOT 게이트(10, 20 및 30)의 레벨로 구성된다. 도 1d'은 본 명세서에서 주기적인 컨볼루션 폴라 코드 또는 간단히 폴라 코드라고도 하는 일반화된 컨볼루션 폴라 코드 인코딩 회로의 상이한 논리적 표현을 제시한다. 도 1e는 제 4 레벨의 CNOT 게이트(40)를 도시한다. "1-2 코드" 인코딩 회로는 CNOT 게이트(10, 30 및 40)의 레벨로 구성될 수 있다. "1-2-1 코드" 인코딩 회로는 CNOT 게이트(10, 20, 30, 및 40)의 레벨로 구성될 수 있다. 도 1f는 제 5 레벨의 CNOT 게이트(50)를 도시한다. "2-1-2 코드" 인코딩 회로는 CNOT 게이트(10, 30, 40, 및 50)의 레벨로 구성될 수 있다. "2-1-2-1 코드" 인코딩 회로는 CNOT 게이트(10, 20, 30, 40, 및 50)의 레벨로 구성될 수 있다. 도 1g는 제 6 레벨의 CNOT 게이트(60)를 도시한다. "1-2-1-2 코드" 인코딩 회로는 CNOT 게이트(10, 30, 40, 50, 및 60)의 레벨로 구성될 수 있다. 도 2는 개방 경계를 갖는 컨볼루션 폴라 코드의 인코딩 회로를 그래픽으로 나타낸 것이다. 폴라 코드는 주기적 컨볼루션 폴라 코드의 게이트의 절반을 포함한다.
제시된 일반화는 더 높은 차원의 필드와 더 큰 분기 비율을 가진 코드로 확장된다. 이러한 많은 경우에 커널에 비선형 게이트를 사용할 가능성이 있다. 이러한 모든 확장에 대해 효율적인 코딩 및 디코딩이 예상된다. 위의 정의에 따라 모든 분기 MERA 코드가 사용되는 게이트의 선택에 따라 채널 분극을 나타내는 것은 아니다.
도 1d'에 도시된 컨볼루션 폴라 코드 인코딩 회로와 같은 코드의 인코딩 회로를 보는 것은, 텐서 네트워크 (TN) 수축 문제로서 디코딩 문제를 재캐스트하도록 허용한다. 도 3A는 일반적인 디코딩 문제의 TN 다이어그램 (또는 인자 그래프)을 나타낸다. N개의 입력 비트(x i )는 k개의 데이터 비트와 N- k개의 프로즌 비트의 조합이며, 이는 인코딩 회로(G)를 통과한다. 수신된 출력 비트(y i )와 대칭 잡음 모델 (W)이 주어지면, 디코딩의 목적은 가장 가능성이 높은 데이터 비트의 구성을 결정하는 것이다. 정규화되지 않은 확률 P(xy)는 도 3A의 TN을 축소함으로써 주어 지지만, 이것은 k와 계산 복잡도 지수를 가진다. 도 3B에서, 연속적인 상쇄 디코더는 오른쪽에서 왼쪽 순서로 입력 비트를 반복적으로 결정한다. 비트(i)의 상대적인 확률을 결정하기 위해, 오른쪽의 비트는 설계에 의해 또는 사전 지식을 사용하여 동결되고, 왼쪽의 상태에 대해 완전히 무지한 상태로 유지되며, 여기서 "e"는 균일한 혼합물을 나타낸다 (1, 1). 도 3C에서, 텐서 그래프는 상관 잡음이 존재할 때의 순차 디코딩을 나타낸다 (잡음 모델(W)이 비트들 간에 상호 관련됨).
인코딩 회로(G)는 랭크 -2N 텐서이며, N개의 인덱스는 N개의 입력 비트를 나타내고 N개의 인덱스는 N개의 출력 비트를 나타내고, 일부 입력 비트는 0으로 고정 (동결)된다. 비트를 1로 동결하는 것 또한 작동하고 비트를 0 또는 1로 동결하기로 결정하는 것은 채널을 통한 비대칭 잡음의 존재 또는 기대에서 정당화될 수 있음에 유의해야한다. 마지막으로, 단일 비트의 값에 대한 확률 분포는 랭크-1 텐서로 표현될 수 있으며, 텐서 "O"= (1, 0)은 비트 값 0을 나타내고 텐서 "1"= (0, 1)은 비트 값 1을 나타낸다. 이러한 텐서가 주어지면, 관찰된 출력 y = (y i,...y N)이 주어지면 입력 비트 문자열 x = (x i ,...,x N )의 확률은 도 3에 표시된 TN으로 표현될 수 있다.
일반적으로 모든 TN이 효율적으로 수축될 수 있는 것은 아니다. 텐서(A)의 랭크가 6이고 텐서 B의 랭크가 S인 방정식(1)을 참조하면, 수축으로 인한 결과적인 텐서(C)의 랭크는 6 + 5 - 2 = 9 이다. 따라서 텐서(A)는 26개 항목으로 지정되고 텐서(B)는 25개 항목으로 지정되지만 텐서(C)에는 29 ≫ 26+25 개의 항목에 의해 구체화된다. 제한된 랭크 텐서(예를 들면, 단지 두 개의 비트 케이트를 갖는 회로)로 이루어진 TN은 효율적으로 구체화될 수 있다. 그러나, TN 수축 스케줄의 중간 단계에서 얻어진 텐서는 매우 높은 랭크(r)일 수 있고, 따라서 수축은 다루기 힘든 양의 데이터(2 r )을 생성할 것이다. 중간 텐서 랭크를 최소화하는 수축 스케줄은 그래프의 트리 폭(treewidth)을 정의하므로 일반적으로 TN을 수축하는 비용은 트리 폭과 함께 지수로 나타낸다.
그러므로 한정된 트리 폭을 갖는 TN을 생성하는 인코딩 회로는 효율적으로 디코딩될 수 있다. 이것은 대응하는 TN이 단순히 체인이므로 일정한 트리 폭을 갖는 컨볼루션 폴라 코드의 경우이다. 그러나 도 4와 같이 TN을 단순화하는 특수 회로 아이덴티티를 사용하여 인코딩 회로가 큰 트리 폭을 갖는 경우에도 효율적으로 디코딩할 수 있다. 예를 들어, 도 4A는 제어된 비트에 0 항목이 있는 CNOT 게이트가 아이덴티티와 동일함을 보여준다. 도 4B는 제어된 비트에 1개의 항목이 있는 CNOT 게이트가 대상 비트의 NOT 게이트와 동일하다는 것을 보여준다. 이러한 회로 아이덴티티의 조합은 매우 복잡한 TN을 수축하는 데 사용할 수 있는 강력한 그래픽 미적분학을 제공한다. 특히, 순차 상쇄 디코딩은 이 그래픽 미적분학에서 아이덴티티에 정확하게 의존하는 효율적인 TN 수축으로서 재캐스트될 수 있다.
양자 다체 물리학 및 다양한 전형적인 및 양자 에러 정정 코드의 인코딩 회로에서 개발된 몇몇 TN 패밀리 사이의 동등성이 존재한다. 특히, 관심의 양(예를 들어, 물리에서의 자화, 코딩 이론에서의 비트 가능성)을 평가하기 위해 물리학 및 코딩 이론에 적용 가능한 계산 기술은 종종 동일하다. 여기에는 특히 분기 MERA (branching MERA)라고하는 TN이 있는데, 이는 저에너지에서 자유도의 분리를 나타내는 고도로 얽힌 물리적 시스템의 특성을 이해하기 위한 개념 및 수치 도구로 물리학에 적용된다. 이 TN을 나타내는 그래프는 폴라 코드의 인코딩 회로보다 더 풍부한 구조를 가지고 있지만 여전히 효율적으로 수축 가능하다. 이것은 폴라 코드의 일반화를 가능하게 하는 핵심 관찰이다.
분기 MERA 코드의 정의는 순전히 인코딩 회로의 토폴로지에 의존한다. 두 개의 서브레이어(또는 레벨)을 구비한 폴라 및 컨볼루션 폴라 코드의 특별한 경우에 대해, 이의 정의는 아래와 같다.
정의 1 : 다음 규칙을 사용하여 인코딩 회로를 재귀적으로 구성할 수 있는 경우 및 이 경우에만 코드는 N = 2 n 비트 (1 ... N의 라벨을 붙임)에 대한 폴라 또는 컨볼루션 폴라 코드라고 한다. N = 1이면 트리비얼 코드(trivial code)로 시작한다. 논리 채널을 인터리빙하고 회로의 시작 부분에 다음의 2 비트 게이트를 추가함으로써, 크기 N = 2 n 의 코드에 대한 인코딩 회로가 크기 2n-1의 2개의 코드의 인코딩 회로로부터 구성될 수 있다.
앞서 언급한 바와 같이, 도 1c 및 도 1c'은 폴라 코드의 인코딩 회로를 나타내고 도 1d'은 24 =16개 사이트에 대한 주기적인 경계를 갖는 컨볼루션 폴라 코드의 인코딩 회로를 나타낸다. 논리 비트는 회로의 상단으로 들어가고 인코딩된 메시지가 하단에 나타난다.
컨볼루션 폴라 코드의 경우, 2n-1 CNOT 게이트의 서브레이어(sublayer)(또는 레벨)로 시작하고, 여기서 i번째 게이트는 비트 2 i 2 i + 1 (i≠2 n -1에 대해)에 연결한다. 최종 게이트는 비트 N을 비트 1과 연결한다. 이 게이트가 논-트리비얼(non-trivial)이면, 컨볼루션 폴라 코드는 주기적이라고 한다(그렇지 않으면 비주기적이거나 개방 경계 조건을 가지는 것으로 설명된다). 폴라 또는 컨볼루션 폴라 코드의 경우, 다음으로 2n-1 CNOT 게이트를 적용하고, 여기서 i번째 게이트는 비트 2 i -12 i 에 연결한다. 더 많은 서브레이어(또는 레벨)을 추가하면 컨볼루션 폴라 코드의 추가 일반화를 초래한다.
간략화를 위해, 2 레벨(또는 서브레이어)을 갖는 컨볼루션 폴라 코드만이 인코딩 및 디코딩의 관점에서 더 논의될 것이다. 도시된 바와 같이, 텐서 네트워크를 수축함으로써 효율적인 디코딩이 수행되고, 컨볼루션 폴라 코드에 대한 예가 제공될 것이다. 일반화된 인코딩 회로는 대응하는 텐서 네트워크를 수축함으로써 효율적으로 디코딩될 수 있다는 것이 당업자에게 명백할 것이다. 일반화된 인코딩 회로에 대한 수축 규칙은 컨볼루션 폴라 코드에 적용 가능한 것들의 간단한 일반화에 의해 얻어진다.
N 비트에 대한 컨볼루션 폴라 코드의 인코딩 회로는 Nlog2 N과 같은 계산 비용 스케일링으로 적용될 수 있으며, 병렬 처리가 고려될 때 단지 시간 스케일링을 log2 N으로 취한다. 폴라 코드를 사용하여 인코딩할 총 2-비트 게이트 수는 N/ 2log2 N이다. 주기적인 컨볼루션 폴라 코드는 각 레이어에 정확히 2배의 게이트가 도입되어 총 Nlog2 N이 된다. 해석으로부터 코드 크기가 두 배가 될 때마다 게이트의 단 하나(폴라) 또는 두 개(컨볼루션 폴라)의 레이어만 적용되므로 회로 깊이는 대수: 폴라 코드의 경우 log2 N, 컨볼루션 폴라 코드의 경우 2log2 N이라는 사실이 명백하다.
컨볼루션 폴라 코드는 주기적 또는 개방 경계 조건으로 정의될 수 있다. 개방 경계 코드는 n번째 분광 레벨에서 비트 2 n 를 비트 1에 연결하는 게이트를 간단하게 제거함으로써 주기적 경계 코드로부터 획득된다. 이러한 경계 조건은 2개의 별개의 인코딩 회로를 야기하지만, 연속적인 상쇄 디코딩 하에서, 주기적 및 개방 경계 컨볼루션 폴라 코드는 거의 동일하게 된다는 것이 주목되었다. 당업자는 주기적인 컨볼루션 폴라 코드와 비교할 때 개방-경계형 컨벌루션 폴라 코드에 약간의 수정이 적용되어야 한다는 것을 이해할 것이다.
디코딩 문제는 해상도를 크게 단순화하기 위해 연속적인 취소 방식이 필요하다. 연속적인 상쇄 디코더에서, 목표는 입력 비트의 완전한 무시를 왼쪽으로 가정하고 입력 비트의 값에 대한 완전한 신뢰를 가정하여 오른쪽에서 왼쪽으로 이동하는 단일 비트를 결정하는 것이다(코드에서 동결되었거나 이전에 디코딩되었기 때문에). 일반적인 최적의 디코더는 최대한 가능성이 높은 코드 워드, 즉, 관찰된 출력 y=(y i , ..., y N ), 오류 모델(W)을 고려할 때 가장 가능성이 높은 입력 x=(x i , ..., x N ) 및 일련의 프로즌 비트(Ac)가 위치된다.
그러나 대부분의 코드에서 가장 가능성이 높은 코드워드를 결정하는 것은 어려운 문제이며, (대개 반복적인) 근사치 범위가 사용된다. 연속적인 제거 디코더는 i 위치에서 가장 오른쪽에 있는 논-프로즌 비트(non-frozen bit)로 시작하고 확률을 최대화하여 해당 값을 결정한다.
Figure pct00004
상기 계산의 목적으로, i의 좌측에 있는 비트(즉, i+1, i+ 2, ... N)는 이들이 고정된 비트 일지라도 알려지지 않은 것으로 간주된다. i (즉, i- 1,i - 2, ... 1)의 오른쪽에 있는 비트는 동결되어 있거나 이전 단계에서 디코딩되었기 때문에 이 비트가 알려져 있다. 이러한 점에서, 연속적인 상쇄 디코더는 모든 단계에서 이용가능한 모든 정보를 이용하지 않기 때문에 최적의 디코더가 아니다. 비트가 결정되면, 연속적인 제거 디코더는 완전한 메시지가 결정될 때까지 다음의 논-프로즌 비트 등으로 진행한다.
CNOT 게이트는 일부 상태에서 매우 단순한 작용을 가져, 접속(joint) 분포에 어떤 상관 관계도 도입하지 않는다. 회로 아이덴티티는 이전에 도 4에서 소개되었으며 분포 "0", "1" 및 e 상의 CNOT 게이트의 작용을 정의한다. 일반적으로 유사 아이덴티티는 모든 가역적 (즉, 결정론적, 일대일) 게이트, 심지어 비선형 게이트에도 적용된다. 이러한 아이덴티티를 폴라 코드 및 컨볼루션 폴라 코드에 적용하면 크게 단순화된다. 실제로, 컨볼루션 폴라 코드를 위해 도 5에 도시된 바와 같이 대부분의 CNOT 게이트가 제거된다. 도 5의 예에서, 특정 비트가 결정되고 디코딩 계산 단순화기(decoding calculation simplifier)가 그래프를 단순화하기 위해 적용된다. 알 수 있는 바와 같이, 단순화의 효과는 실제로 이전에 결정된 비트가 값을 변경하도록 유도할 수 있다(4 번째 비트 참조). 남아있는 게이트의 수는 Nlog2 N에서 N으로 떨어진다.
폴라 코드의 경우, 코드에서 단일 비트를 프로빙하면 하나의 레이어 아래 단일 비트를 두 개의 작은 코드로 효과적으로 프로빙 할 수 있다. 이것은 컨볼루션 폴라 코드의 경우에는 해당되지 않지만 더 많은 비트가 고려될 때 유사한 구조가 나타나고-하나의 레이어에서 3-비트 분포를 프로빙하는 것은 아래 두 개의 작은 코드로 3 비트 분포를 프로빙하는 것으로 맵핑될 수 있다. N개의 비트의 컨볼루션 폴라 코드에서 연속적인 소거를 사용하여 비트 i, i+1 i+2를 디코딩하기 위해, 엄격하게 5N 미만의 게이트가 텐서 네트워크 다이어그램에 남아 있다.
컨볼루션 폴라 코드의 구성으로 인해 홀수 및 짝수 사이트는 두 개의 효과적인 컨볼루션 폴라 코드로 분할될 수 있으며, 각각은 위의 CNOT에 연결되는 3개의 비트를 갖는다. 왼쪽의 비트는 알 수 없으며 오른쪽의 비트는 완전히 결정되므로 프로세스가 반복된다. 다른 5개의 게이트는 '홀수' 및 '짝수' 서브 코드 모두에 남아 있다. 바닥의 두 개의 레이어의 경우, 각 코드의 비트 수가 6보다 작아지므로 반복이 종료된다. 두 번째 바닥 레이어에는 총 4 개의 게이트만 있고 가장 낮은 게이트는 2 개뿐이다-두 경우 모두 5개 미만. 총 게이트 수는 5(N-1)로 상한이다.
이제 텐서 네트워크 다이어그램이 단순화되었으므로, 효율적으로 수축할 수 있음을 보여준다. 게이트 소거는 위에서 아래로 이루어지지만, 텐서 네트워크 수축은 위에서 아래로 이루어진다. 이것이 어떻게 수행되는지를 보기 위해, 도 6A, 도 6B, 도 7A, 도 7B, 도 8, 및 도 9에 도시된 몇몇 수축 아이덴티티를 강조하는 것이 유용하다 (본 명세서에서 도 6 내지 도 9로 언급됨). 도 4의 회로 아이덴티티와 대조적으로, 도 6 내지 도 9의 수축 아이덴티티는 수축되는 게이트의 특성에 의존하지 않고 기본 그래프 구조에만 의존한다는 점에서 그래픽이다. 예를 들어, 이러한 수축 아이덴티티에 사용된 CNOT 게이트는 다른 랭크-4 텐서로 대체되어 아이덴티티를 보존할 수 있다. 이러한 그래픽 아이덴티티를 도 5의 다이어그램의 맨 아래부터 반복적으로 적용하고 위로 작업하면 효율적인 수축 스케줄이 생성된다. 묘사된 수축 아이덴티티는 임의의 텐서에 적용된다. 텐서(q)는 고려되는 특정 텐서 네트워크에 의존한다. 도 6 내지 도 9에서, 텐서(q)는 그것이 감소될 수 있는 개방 비트의 수를 전달한다.
컨볼루션 폴라 코드는 일반적으로 가장 낮은 레이어에서 두 비트를 조합한다. 그런 다음 분배를 3 비트 분배로 결합할 수 있다. 3-비트 대 3-비트 변환은 분기 MERA의 자연스러운 고정점이다. 입력 비트가 경계 근처에 있는 경우 하위 레이어는 3-비트 변환으로 이동하기 전에 수 개의 2-비트 대 2-비트 변환이 이루어질 수 있다. N-비트 컨볼루션 폴라 코드에서 연속적인 상쇄 디코딩의 단일 단계는 계산 비용이 N에서 선형이다. 따라서 폴러 및 컨볼루션 폴라 코드 모두에 대해 계산 비용 N 21og 2 로 연속적인 상쇄 디코딩의 전체 스위프가 수행될 수 있다.
연속적인 상쇄 디코딩의 풀 스윕은 연속적인 상쇄 디코더로 이어지는 수축 단계를 메모리에 저장함으로써 감소된 비용 Nlog2 N으로 수행될 수 있다. 실제로, 비트 i 및 비트 i-1의 연속적인 상쇄 디코딩을 나타내는 TN은 log2 N 위치에서만 상이하다. 따라서, 비트 i-1의 디코딩으로 이어지는 계산의 결과가 메모리에 저장되면, 디코딩 비트(i)의 복잡성은 log2 N에 불과하며, 모든 N개의 비트를 디코딩하는 총 복잡성 Nlog2 N으로 이어진다.
분극 단계에서 사용된 CNOT 게이트는 소거율(
Figure pct00005
Figure pct00006
)(각각 왼쪽 및 오른쪽)을 가진 2 개의 소거 채널을 소거율(
Figure pct00007
Figure pct00008
)을 가진 2개의 새로운 유효 소거 채널로 변환하는 것으로 나타났다. 컨볼루션 폴라의 경우 변환이 약간 더 복잡하지만 그럼에도 불구하고 효율적으로 수행할 수 있다.
소거 채널 하에서, 비트의 값이 알려져있거나 알려지지 않았다. 약간 더 복잡한 상황을 고려해야 한다. 예를 들어, 2-비트 값의 합은 이 중 어느 하나를 모르면서도 알 수 있다. 일반적으로 지식 상태는 선형 제약 조건으로 요약할 수 있다. 위의 예에서 제약 조건은 (1.1)·(x 1 , x 2 ) = a로 표현된다. 일반적으로, n 비트의 수집에 대해, 지식 상태는 C x = a로 기록될 수 있으며, 여기서 Ckxn 행렬이고 여기서 k≤ n이고 ak-비트 벡터이다. 벡터 a의 실제 값은 양이 알려져 있는지 아닌지를 결정하는 것이고 그의 실제 값이 아니기 때문에 분석에서 중요하지 않다.
도 7C에 도시되는 콘볼브드(convolved) 폴라 변환을 고려하시오. 변환은 6-비트 분포(
Figure pct00009
)로 결합될 수 있는 2 개의 3-비트 확률 분포(p a p b )를 입력으로 취하고 3개의 CNOT 게이트로부터 선형 반전 변환(M)을 수행한다. M을 적용하기 전에 6 개의 입력 비트에 대한 지식 상태가 방정식 C x = a로 설명되었다고 가정한다. 그리고, 출력 y = Mx에 대한 지식의 상태는 C'y = a (여기서 C' = CM- 1)에 의해 기술된다. 도 7C의 왼쪽에 있는 변환에 중점을 두고, 선형 변환 후, 처음 두 비트는 알려진 값(x 1 x 2 )로 고정되고 마지막 비트는 무시된다. 지식 상태에 미치는 영향을 이해하기 위해 다음 행 조작을 사용하여 행렬(C')를 표준 형식으로 넣을 수 있다:
Figure pct00010
이 행 조작에서 아래 첨자는 행렬 크기의 차원, u = 0 또는 1을 나타내고 luu x u 단위 행렬을 나타낸다. 행렬 B는 비트 y 3 , y 4 , 및 y 5 에 대한 새로운 지식 상태를 나타낸다. 유사한 추론이 도 7C의 오른쪽의 변환에 적용되는데, 차이점은 첫 번째 비트만 고정되고 마지막 두 비트는 무시된다는 점이다. 이 경우 u는 0, 1 또는 2의 값을 가질 수 있으며 치수는 A (k-u)x1 D ux1 로 조정된다.
행 조작에서 구별되는 k≤3에 대한 크기 k x 3의 16개의 행렬 C가 있다. 소거 채널에 대한 우리의 연구는 이러한 16가지의 가능한 지식 상태에 확률을 할당하고 위에서 설명한 것처럼 컨벌루션 폴라 변환을 통해 이러한 분포를 진화시키는 것을 기반으로 한다. 처음에는 각 비트가 확률(p)로 소거되므로, 3개의 비트의 집합은 다음과 같은 지식 상태 분포를 갖는다:
Figure pct00011
모든 9개의 다른 pj = 0이다. 우리의 기술은 지식 B a B b 의 쌍을 확률 papb를 갖는 6 비트 지식 상태
Figure pct00012
로 조합하고 새로운 지식 B를 생성하기 위해 도 7C의 오른쪽 또는 왼쪽에 해당하는 절차를 적용함으로써 진행된다. 지식 상태에 대한 결과적인 변환이 결정될 수 있다. 보다 구체적으로, 소거 채널 아래의 단일 비트(x 1 )의 경우 두 가지 지식 상태만 있다: x 1 의 값은 알려지거나 알 수 없다. 2개의 비트(x 1 , x 2 ) (소거 채널 아래에 선형 회로가 있음)의 경우 5개의 가능한 지식 상태가 있다: 두개의 값 {x 1 , x 2 }가 알려지고, 단일 값 {x 1 } 또는 {x 2 }이 알려지고, 이들의 합계 {x 1 + x 2 }이 알려지거나 아무것도 알려지지 않는다. 5개의 서로 다른 상태는 각각 자신의 발생 확률이 있다. (CNOT와 같은) 선형 회로를 적용하면 단일 비트 지식 상태(x 1 , x 2 x 1 + x 2 ) 및 이들의 관련 확률을 치환한다. 일반적으로 이러한 지식 상태는 소거 채널이 사소하게 양자화된다는 사실에 해당한다.
연속적인 상쇄 하의 컨볼루션 폴라 코드의 예에서, 디코딩은 트리 폭이 3인 텐서 네트워크로 표현될 수 있다. 따라서 3개의 비트에 대한 지식의 상태가 다루어 져야 한다. 편의상, 15개의 모든 상태가 이하에 열거된다:
Figure pct00013
컨볼루션 폴라 코드의 각 레이어 아래 대부분에서 상태(s i )와 관련된 확률(p i )의 변환이 결정될 수 있다(예를 들어, 도 6A에 따름). 폴라 코드와 유사하게, 컨볼루션 폴라 코드의 각 레이어는 두 개의 동일한 채널을 결합하지만 - 이 경우 이들은 3-비트 채널이다. 디코딩되는 3개의 논리 비트의 위치에 의해 주어진 2개의 별개의 변환이 존재한다. 이들은 도 6A의 좌측 및 우측에 예시된다. 상기 변환은 아래와 같다.
Figure pct00014
Figure pct00015
소거 확률의 평가는 코드와 관련된 텐서 네트워크의 수축 스케줄에 따라 이러한 변환을 반복한다.
이와 같이, 도 6 내지 도 9에 도시된 다른 조합에 대해서도 유사한 절차가 도출될 수 있다. 이러한 절차를 이용하여, 독립 소거 확률(p)을 입력으로서 제공하여, 비트(x i )를 출력하는 확률(p i )이 소거되고, 비트(x i )(i<j)가 아무것도 소거되지 않았다는 사실에 따라 정확하게 계산 및 조절될 수 있다, 즉 비트(j)는 연속적인 상쇄 디코딩 하에서 가장 먼저 소거된다.
상관 에러가 존재하는 경우 컨볼루션 폴라 코드에 대한 디코딩 절차가 제공 될 수도 있다. 제안된 기법은 분지 MERA 텐서 네트워크를 기반으로 한 폴라 코드, 컨볼루션 폴라 코드 및 일반화에 적용할 수 있다. 이 기술은 모든 유한 상태 메모리 채널에 적용될 수 있다. 마찬가지로, 체인의 토폴로지를 갖는 텐서 네트워크에 의해 설명될 수 있는 임의의 잡음 모델에 적용 가능하다. 우리 모델에는 두 가지 유형의 서로 다른 텐서가 있다. 전이의 확률 (확률 행렬), 랭크-2 텐서를 나타내는 것 및 마르코프(Markov) 프로세스의 상태를 나타내는 것이 랭크-3 텐서(경계의 랭크 -2)에 의해 설명된다. 도 10은 텐서 네트워크로서 잡음의 논리적 표현을 제공한다. 텐서 네트워크 모델에는 두 가지 유형의 본드, 즉 물리적 본드와 논리적 본드가 표시된다. 상태 텐서당 물리적 본드가 있다. 또한 물리적 본드 치수는 알파벳의 치수와 같다. 코드의 크기는 물리적 본드의 수를 나타낸다. 논리적 본드는 전이 행렬(원)을 상태 텐서(사각형)와 링크된다. 논리적 본드 치수는 채널의 메모리 상태 수를 나타낸다.
일부 잡음 모델은 상관 관계가 있으므로, 특정 비트가 영향을 받는 경우 주변 비트도 영향을 받을 수 있다는 것을 의미한다(예 : 버스트 잡음 채널). 상관 잡음 하에서 제안된 디코딩 기술은 잡음 모델 텐서 네트워크와 연속적인 소거 방식을 사용하는 코드 인코딩 회로의 수축으로 개략적으로 표현되는 텐서 네트워크 수축 알고리즘에 기초한다. 예를 들어, 도 11은 크기 N = 16 비트의 컨볼루션 폴라 코드에 대한 위치 8의 비트 디코딩에 관여하는 텐서 네트워크를 나타낸다.
이 기술의 제 1 단계는 회로 상단에 비트 상태가 전파되는 것이다(트리 텐서 네트워크가 잡음 모델에 연결됨). 제 2 단계에서는 도 12에 상세하게 설명된 간단한 수축이 아래에서 위로 적용된다. 제 2 단계에서 목적은 단일 확률 벡터를 얻기 위해 그래프를 단순화하는 것이다 (도 12D). 제 3 단계에서, 완전한 메시지가 디코딩 될 때까지 연속적인 소거 디코더에 따라 반복이 수행된다.
위치 5의 비트가 디코딩될 크기 N = 8 비트의 폴라 코드에 대한 디코딩 기술의 예가 도 13A 내지 도 13F에 도시되어 있다. 도 13F의 결과는 위치 5의 비트 값이 0일 확률과 위치 5의 비트 값이 1일 확률을 나타내는 확률 벡터이다. 가장 높은 확률은 위치 5에서 비트의 값을 결정하는 데 사용되며 디코딩은 비트 1에서 5까지의 지식을 적용하여 위치 6의 비트와 반복된다.
상관 잡음이 존재하는 경우의 디코딩 전략은 유한 상태 메모리 오류 모델에 적합하다. 구체적으로, 두 가지 상태 모델이 도 14에 예시된다. 묘사된 잡음 모델은 길버트-엘리엇(Gilbert-Elliot) 채널을 기반으로 한다. 이 잡음는 일정한 전이 확률을 가진 2 상태 마르코프 체인이다. 이 모델을 사용하면 올바른 파라미터를 사용할 때 버스트 잡음을 시뮬레이션할 수 있다. 이러한 마르코프 체인은 양호에 대한 상태(G)와 나쁨에 대한 상태(B)인 두 가지 상태를 기반으로 한다. 2개의 상태(G 및 B)를 채널을 따르는 메모리의 2개의 내부 상태로 생각할 수 있다. 채널이 상태(G)에 있을 때, 전송된 비트는 오류율이 낮은 이진 대칭 채널 BSC ( h G )의 영향을 받는다. 채널이 상태(B)에 있을 때, 전송된 비트는 잡음이 큰 BSC ( h B )에 의해 영향을 받는다, 즉 hG<hB. 채널의 메모리는 모든 시간 단계에서 확률(P G →B )로 나쁨에서 양호로, 확률(P B→G )로 나쁨에서 양호로 전환된다.
전이 확률이 주어지면, 확률적 행렬을 정의할 수 있으며 상태 G와 B에서 소요되는 시간의 일부를 찾을 수 있다. 이를 위해서는 프로세스의 고정 분포가 필요하다. 이것은 고유 값(λ=1)과 관련된 고유 벡터에 해당한다. P(B)를 상태 B에서 평균 시간의 일부로 본다. 그리고, 채널의 평균 에러 확률은 단순히 hP(B)에 의해 주어진다. 그런 다음
Figure pct00016
로 주어져 평균 에러 확률이
Figure pct00017
로 주어진다.
일부 메트릭은 상관 강도를 정량화하는 데 사용될 수 있다. 이 잡음 모델에서, l B는 본 명세서에서 버스트 길이로 지칭되는 상태 B에서의 연속 스테이의 길이를 측정하는 무작위 변수로서 정의된다. 이 무작위 변수는 기하학적 분포로 정의되어
Figure pct00018
를 갖는다.
유용할 수 있는 또 다른 메트릭은 상태 G와 B 사이의 평균 전환 수(N t )이다. 이러한 양은
Figure pct00019
에 의해 주어진다.
[표 1] 잡음 모델 파라미터
Figure pct00020
수치 시뮬레이션 동안, 저잡음 및 고잡음 영역 모두에서 버스트 잡음 모델이 측정되었다. 저잡음 영역에서, 불량의 p 확률은 h = 0.1로 설정된다. 고잡음 영역에서 상태 불량에 대해 p 확률은 h = 0.5로 설정된다. 두 방식에서, 본 명세서에서 제안된 디코딩 기술은 인터리빙 구성뿐만 아니라 표준 폴라 코드 구성보다 현저히 우수하다. 실제로, 여기에 제시된 디코딩 기술을 사용할 때 관찰된 프레임 에러 레이트(FER) 및 비트 에러 레이트(BER)는 항상 상당히 낮다.
도 20A-20B, 도 21A-21B, 도 22A-22B 및 도 23A-23B는 3 가지 유형의 디코딩 기술을 위한 채널의 전이 및 버스트 길이에 따라 210(1024) 비트의 코드 크기에 대해 상관 잡음의 존재시의 성능 곡선이 제시된다. 도 20A-20B 및 도 21A-21B의 그래프에 대해, 불량 상태 h = 0.5 및 양호 상태 h = 0에서 오류 확률이 제시된다. 도 22A-22B 및 도 23A-23B의 그래프에 대해, 불량 상태 h = 0.1 및 양호 상태 h = 0에서의 에러 확률이 제시된다. 모든 그래프에 대해, 3가지 유형의 디코딩 기술은 1) 상관된 폴라 코드 (상관된 잡음에 그리고 그 존재에 적응됨); 2) 상관 노이즈가 존재하는 폴라 코드(pc); 및 3) 무작위 인터리버(interleaver)가 추가될 때의 폴라 코드.
도 1d' (CNOT 게이트 (10, 20 및 30)의 레벨로 구성됨)의 예에 도시된 것과 유사한 컨볼루션 폴라 코드가 설명되지만, 지금부터 1024 비트로 일반화될 것이다. 당업자는 상기 논의로부터 이해할 수 있듯이, 일단 채널의 특성이 예측되거나 알려지면, 상기 기술을 사용하여 각각의 프로즌 비트의 가장 효율적인 위치를 결정할 수 있다. 예를 들어, 다음 표는 모든 비트에 대해 대칭 오류 확률이 0.5인 채널을 통해 1024 비트에서 512 비트의 메시지를 코딩할 때 최악 위치를 제공한다. 다르게, 다음 표는 512 개의 프로즌 비트의 위치를 제공한다. 보다 쉬운 참조를 위해 위치 번호가 제시되었으며 여러 열에 표시된다:
[표 2] 컨볼루션 폴라 코드에 대해 정렬된 최악 위치: 소거=½, h=0.5
Figure pct00021
또한, 모든 가능성에서, 여기에 열거된 특정 비트는 동결되지 않은 것으로 표시되는 일부 비트에 매우 근접한 에러 확률을 가지며, 이들 비트를 교환하는 이들 비트를 변경하는 것이 전체 성능에 거의 영향을 미치지 않을 것이라는 점에 유의하는 것이 중요하다. 이를 설명하기 위해 위에 제공된 것과 동일한 위치 번호가 다시 제공되지만 이번에는 최악 위치 번호에서 최상 위치 번호까지이다. 다시 한번 더 쉽게 참조할 수 있도록 여러 열로 표시된다:
[표 3] 컨볼루션 폴라 코드에 대한 정렬되지 않은 최악 위치: 소거=½
Figure pct00022
첫 번째 178비트(비트 번호 178까지)와 마지막 126비트 (비트 번호 899부터)는 0으로 동결되고 나머지 프로즌 비트는 그 사이에 흩어진다. 그러나, 첫 번째 178비트는 남아있는 다른 논-프로즌 비트들과 비교하여 식별하기 어려운 오류 확률을 가지므로, 오류 확률을 변화시키기보다는 숫자 순서로 선택되었다.
1024 비트에 대해 일반화된 이전에 논의된 "2-1-2 코드"(CNOT 게이트 10, 30, 40, 및 50 레벨로 구성됨)에 대한 두 번째 예가 다음 표에 제공된다. 다시, 모든 비트에 대해 대칭적인 에러 확률이 0.5인 채널을 통해 일반화된 "2-1-2 코드"에 대해 1024 비트로부터 512 비트의 메시지를 코딩할 때 최악 위치가 제공된다. 다시 한 번 말하지만 위치 번호는 쉽게 참조할 수 있도록 여러 열에 표시되어 표시된다:
[표 4] "2-1-2 코드"에 대한 정렬된 최악 위치: 소거=½
Figure pct00023
제 3 예는 도 1c 및 도 1c'에 도시된 전술한 폴라 코드 (CNOT 게이트(10, 20)의 레벨로 구성됨)에 대한 다음 표에 제공된다. 다시, 최악 위치는 1024 비트에서 512 비트의 메시지를 코딩할 때 제공되지만, 메모리 효과(상관된 잡음)를 나타내는 채널을 통해 이번에는 모든 비트에 대해 불량 상태에서 에러 확률이 0.5이고 양호 상태에서의 에러 확률은 Pgb = 0.01 (양호에서 불량으로) 및 Pbg = 0.04 (불량에서 양호로)의 전환 확률을 가지고 0이다. 다시, 더 용이한 참조를 위해, 위치 번호가 정렬되고 다수의 열로 제시된다:
[표 5] 상관 잡음 하에서 폴라 코드를 위한 정렬된 최악 위치:
불량 상태에서 h=0.5: 양호 상태에서 h=0: Pgb = 0.01 및 Pbg = 0.04
Figure pct00024
물론, 당업자는 이 3개의 표가 수천 가지 가능성 중에서 선택된 몇 가지만을 나타낸다는 것을 쉽게 이해할 것이다. 그러나, 프로즌 비트의 위치를 결정하는 방법은 일반화될 수 있다. 먼저, 채널 대역폭을 결정해야 한다. 본 명세서에 예시된 일반화된 컨볼루션 폴라 코드는 2n 비트 수 이상으로 가장 잘 전달되지만, 적응된 인코더 및 디코더는 임의의 특정 비트 수에 대해 설계될 수 있다. 예를 들어, 일반화된 컨볼루션 폴라 코드 비트로스의 내성을 고려할 때, 채널 대역폭보다 "더 넓은" 인코더를 설계할 수 있으며, 결과적으로 "추가" 비트를 전송 중에 손실된 것으로 간주할 수 있다(예를 들면, 6500 비트-폭 채널에 대해 1024 비트 인코더 또는 1000 비트-폭 채널 또는 8192 비트 인코더). 둘째, 채널 대역폭과는 별도로, 메시지의 비트 수(즉, 메시지 비트가 얼마나 많은지)를 결정해야 한다. 채널 대역폭을 고려하면 프로즌 비트 수가 계산될 수 있다. 채널에 대한 소거 확률을 제공하는 결정이 필요하다 (예를 들면, 임의적일 수 있지만 실제 채널 동작에 가능한 한 근접해야 함). 경우에 따라 실제 채널은 메모리 효과를 사용하여 가장 잘 표현되며, 이는 이어서 양호와 불량 상태 사이와 불량과 양호 상태 사이의 전이 가능성에 따라 그리고 (양호 또는 불량) 상태에 따라 채널에 대해 다른 소거 확률을 제공한다. 실제 채널은 소거 채널로서 가장 잘 특징화되거나 그렇지 않을 수 있지만, 그럼에도 불구하고 본 실시 예의 목적을 위해 그렇게 특징화될 것이다. 셋째, 일단 채널에 대한 소거 특성과 함께 (일반화된) 폴라 인코딩 회로 및 등가 디코더가 결정되면, 주어진 수의 메시지 비트에 대해 최악 위치가 순서대로 결정될 수 있다.
폴라 코드 및, 보다 일반적으로, 일반화된 컨볼루션 폴라 코드는 (예를 들어, 5G 표준에서) 제어 채널을 위한 채널 코딩 메커니즘으로서 특히 적합할 수 있다. 상이한 (일반화된) 폴라 코드 인코딩 및 디코딩 방식이 모바일 디바이스와 코어 네트워크 사이의 통신을 위해 지원 및/또는 이용 가능하게 될 수 있는 것으로 생각된다. 단일 (대칭) 코딩 및 디코딩 방식은 업 링크 및 다운 링크 전송에 사용될 수 있거나, 예를 들어 코어 네트워크와 비교하여 모바일 노드의 상이한 물리적 능력을 고려할 때, 상이한 방식이 상이한 방향으로 사용될 수 있다. 모바일 장치 및 코어 네트워크는 또한 적절한 방식의 선택을 협상할 수 있다 (예를 들어, 보다 적합한 방식으로 업데이트하기 위한 용량으로 보완된 기본 방식). 대안적으로 또는 추가적으로, 이 방식은 코어 네트워크에 의해 부과되거나 모바일 장치에 의해 부과 될 수 있다(예를 들어, 코딩/디코딩 능력에 대한 물리적 한계). 이 방식은 또한 코어 네트워크 및/또는 모바일 장치에 의해 측정된 특성 (예를 들어, 무선 특성 및/또는 응답성 메트릭 등)에 기초하여 선택될 수 있다. 즉, 코어 네트워크는 특정 모바일 노드, 또는 일반적으로 주어진 기지국을 둘러싼 모바일 노드, 또는 더 일반적으로는 하나 또는 그 초과의 기지국 제어기를 위한 기지국을 모바일 노드로 측정된 성능에 기초하여 최상의 코딩 방식을 동적으로 결정하는 것을 담당할 수 있다.
도 24는 본 발명의 교시에 따라 (예를 들어, 두 전화기 간의 대화, 측정 장치에 의한 원격 측정 데이터 수집, 클라우드 서버로부터의 데이터 다운로드, 두 지상국 간 또는 원격 우주선과의 위성 통신 등) 하나 또는 그 초과의 전자 통신을 가능하게 하는 예시적인 컴퓨터 통신 시스템(1000)의 논리적 모듈식 표현을 도시한다. 컴퓨터 통신 시스템(1000)은 하나 또는 그 초과의 대화 컴퓨터 시뮬레이션에 관련될 수 있는 연결된 장치(1100)를 포함한다.
도 1의 도시된 예에서, 연결된 장치(1100)는 메모리 모듈(1120), 프로세서 모듈(1130), 및 네트워크 인터페이스 모듈(1140)을 포함한다. 프로세서 모듈 (1130)은 하나 또는 그 초과의 프로세서 코어 또는 각각 하나 이상의 프로세서 코어를 포함하는 프로세서 어레이를 갖는 단일 프로세서를 나타낼 수 있다. 일부 실시 예들에서, 프로세서 모듈(1130)은 또한 전용 코딩 유닛(1132)을 포함 할 수 있다. 전용 코딩 유닛(1132)은 예를 들어, 컴퓨터 통신 시스템(1000)이 예상 네트워크 성능을 유지하기 위해 광범위한 코딩 능력(즉, 품질 및 처리량)을 요구하는 코드 집약적 통신 표준을 구현할 때 필요할 수 있다(예를 들어, 5G 요구 사항 참조). 일부 실시예들에서, 다수의 연결된 장치들(1100, 1600) 및/또는 네트워크 노드(1200) 각각은 전용 코딩 유닛(1132)과 유사한 전용 코딩 유닛을 갖는 프로세서 모듈을 포함한다. 전용 코딩 유닛(1132)은 예를 들어 코딩 프로세서 또는 코딩을 위해 예약된 다른 프로세서의 예약된 부분일 수 있다. 전용 코딩 유닛(1132)은 또한 런타임에 선택 가능한 하나 이상의 코딩 방식을 선택적으로 지원할 수 있다. 메모리 모듈(1120)은 다양한 유형의 메모리(다른 표준화 또는 종류의 랜덤 액세스 메모리 (RAM) 모듈, 메모리 카드, ROM (Read-Only Memory) 모듈, 프로그램 가능 ROM 등)를 포함 할 수있다. 네트워크 인터페이스 모듈(1140)은 다른 네트워크 노드와 통신하는데 사용될 수 있는 적어도 하나의 물리적 인터페이스를 나타낸다. 네트워크 인터페이스 모듈(1140)은 하나 이상의 논리적 인터페이스를 통해 연결된 장치(1100)의 다른 모듈들에게 보여 질 수 있다. 네트워크 인터페이스 모듈(1140)의 물리적 네트워크 인터페이스 (들) 및/또는 논리 네트워크 인터페이스들(1142, 1144, 1146, 1148)에 의해 사용되는 프로토콜의 실제 스택은 본 발명의 교시에 영향을 미치지 않는다. 본 발명의 맥락에서 사용 가능한 프로세서 모듈(1130), 메모리 모듈(1120) 및 네트워크 인터페이스 모듈(1140)의 변형은 당업자에게 명백할 것이다.
버스(1170)는 연결된 장치(1100)의 상이한 모듈들간에 데이터를 교환하기 위한 수단의 예로서 도시되어 있다. 본 발명은 상이한 모듈들이 그들 사이에서 정보를 교환하는 방식에 영향을 받지 않는다. 예를 들어, 메모리 모듈(1120) 및 프로세서 모듈(1130)은 병렬 버스에 의해 연결될 수 있지만, 또한 직렬 연결에 의해 연결되거나 본 발명의 교시에 영향을 주지 않으면서 중간 모듈(도시 안됨)을 포함할 수 있다.
마찬가지로, 메모리 모듈 (1120) 및/또는 프로세서 모듈 (1130)에 대한 명백한 언급이 다양한 실시 예들의 설명 전체에 걸쳐 이루어지지 않더라도, 당업자는 이러한 모듈들이 연결된 장치(1100)의 다른 모듈들과 함께 사용되어 본 발명과 관련된 혁신적인 단계뿐만 아니라 일상적인 단계를 수행한다는 것을 쉽게 인식할 것이다.
연결된 장치(1100)는 또한 하나 이상의 디스플레이 스크린(들)을 포함하는 그래픽 사용자 인터페이스(GUI) 모듈(115O)을 포함할 수 있다. GUI 모듈(115O)의 디스플레이 스크린은 하나 이상의 터치 또는 수동 스크린으로 분할될 수 있지만, 또한 사용자 위치에 액세스 가능하게 된 평면 및/또는 곡선 터치 또는 수동 스크린의 임의의 조합일 수도 있다.
컴퓨터 통신 시스템(1000)은 시스템(1000)의 다양한 시스템 및 서브 시스템과 관련된 데이터를 포함하고 하나 이상의 통신이 처리되는 동안 동적 데이터를 더 기록할 수 있는 저장 시스템(1500)을 포함한다. 도 24는 별개의 데이터베이스 시스템(1500A), 연결된 장치(1100)의 별개의 모듈(1500B) 또는 연결된 장치(1100)의 메모리 모듈(1120)의 서브 모듈(1500C)로서 스토리지 시스템(1500)의 예를 도시한다.스토리지 시스템(1500)은 또한 연결된 장치(1600)/네트워크 노드(1200) 상에 스토리지 모듈(도시 안됨)을 포함할 수 있다. 스토리지 시스템(1500)은 상이한 시스템(A, B, C) 및/또는 디바이스(1100, 1600, 1200)에 분산되거나 단일 시스템에 있을 수 있다. 저장 시스템(1500)은 하나 이상의 논리적 또는 물리적뿐만 아니라 로컬 또는 원격 하드 디스크 드라이브(HDD)(또는 그 어레이)를 포함할 수 있다. 저장 시스템(1500)은 표준화되거나 독점적인 인터페이스에 의해 또는 네트워크 인터페이스 모듈(1140)을 통해 연결된 장치(1100)에 액세스 가능한 로컬 또는 원격 데이터베이스를 더 포함할 수 있다. 본 발명의 맥락에서 사용 가능한 저장 시스템 (1500)의 변형은 당업자에게 명백할 것이다.
도 1의 도시된 예에서, 컴퓨터 통신 시스템(1000)은 네트워크 노드(1200) 및 선택적인 연결된 장치(1600)를 도시하며, 이는 연결된 장치(1100)와 네트워크(1400)를 통해 통신할 수 있다. 네트워크 노드(1200)는 네트워크(1400)에 연결된 장치의 연결의 상이한 양상들을 담당하는 네트워크(1400)의 코어 네트워크의 일부이다. 연결된 장치(1100)는 연결된 장치(1600) 또는 다른 장치 및/또는 서버(도시 안됨)와의 지속적인 통신과 관련될 수 있다. 연결된 장치(1100)는 또한 네트워크(1400)(예를 들어, 제어 관련 데이터)에 대한 연결을 유지하고 사용자 콘텐츠 데이터 통신에 관여할 때 다른 네트워크 노드(도시 안됨)와의 연결을 유지하기 위해 네트워크 노드(1200)와 통신할 수 있다. 이와 같이, 다른 컴퓨팅 디바이스(들) (도시 안됨)가 관련될 수 있고, 여기에 제안된 코딩 방식을 더 사용할 수 있다. 상이한 장치는 또한 본 발명의 교시에 영향을 미치지 않으면서 하나 또는 다수의 실제 사용자와 연관될 수 있다.
도시된 실시 예들과 관련하여, 런타임 실행, 실시간 실행 또는 실시간 우선 랭크 처리 실행은 실제 및/또는 인지 품질의 시스템 또는 사용자 관점에서의 통신에 영향을 줄 수 있는 연결된 장치(1100)와 네트워크(1200) 사이의 통신 동안 실행되는 동작에 대응한다. 따라서, 런타임에서, 실시간으로 또는 실시간 우선 랭크 처리를 사용하여 수행되는 동작은 일반적으로 예를 들어 최대 시간, 최대 프레임 수 및/또는 처리 주기의 최대 수의 관점에서 표현될 수 있는 특정 성능 제약을 충족시켜야 한다. 예를 들어, 다른 통신 표준은 다른 성능 요구 사항을 제공한다. 숙련된 사람들은 실시간 처리가 최선의 모든 상황에서 실제로 달성되지 않을 수도 있음을 쉽게 인식할 것이다. 개시된 실시예들의 목적을 위해 요구되는 실시간 우선 랭크 처리는 네트워크 내에서 체계화되고/되거나 연결된 장치의 사용자에 의해 인식되는 바와 같이 서비스 및/또는 서비스 품질에 대해 제시된 연결된 장치에 관한 것이며, 절대 실시간 처리를 요구하지는 않는다.
제어 관련 정보를 교환하기 위해 제어 네트워크(예를 들어, 네트워크(1400) 자체 또는 네트워크 (1400)상에 중첩된 다른 네트워크)가 사용될 수 있다. 예를 들어, 연결된 장치(1100)에 대한 핸드 오프 절차, 주소 관리, 셀 및/또는 채널 속성 및 연결된 장치(1100)의 사용자의 상호 작용과 관련된 이벤트(예를 들어, 데이터 사용량 등)는 제어 네트워크를 통해 공유될 수 있다. 마찬가지로, (예를 들면, 네트워크 등의 상태에 관한) 전체 네트워크 이벤트는 하나 이상의 중앙 집중식 컴퓨터 시스템의 제어 네트워크를 통해 공유될 수 있다(도시 안됨). 또한, 저장 모듈(1500) (예를 들어, 네트워크화된 데이터베이스 시스템)은 컴퓨터 통신 시스템(1000)의 상이한 구성 요소에 액세스 가능할 수 있다.
도 25는 잡음이 있는 통신 채널에 대한 채널 디코더에서 프로즌 비트의 n개의 최상 위치를 결정하기 위한 예시적인 방법(2000)의 흐름도를 도시한다. 상기 방법은 폴라 코드 인코딩 방식을 선택하는 단계(2010), 폴라 코드 인코딩 방식에 대응하는 폴라 코드 디코더 방식을 획득하는 단계(2020), 다수의 채널 비트를 정의하는 채널 대역폭을 결정하는 단계(2030), 메시지 비트의 수를 정의하는 메시지 길이를 결정하는 단계(2040)를 포함하고, 채널 비트의 수 및 메시지 비트의 수는 프로즌 비트의 수(n)을 정의한다. 이 방법은 잡음이 있는 통신 채널의 특성에도 불구하고, 소거 확률 p로 통신 채널을 특성화하는 단계(2050) 및 확률(p)을 고려하여 n개의 최악 위치를 계산하는 단계(2060)를 포함한다. 폴라 코드 인코딩 방식은, 예를 들어, 2 이상의 레벨의 CNOT 게이트를 사용하여 모델링된 컨볼루션 폴라 코드 (컨볼루션 폴라 코드, 1-2 코드, 2-1-2 코드, 1-2-1 코드, 2-1-2-1 코드, 1-2-1-2 코드 등으로 전술된 바와 같이)일 수 있다.
폴라 코드 인코딩 방식은 2의 제곱으로 비트의 수(k)를 가질 수 있고, 따라서 k는 채널 비트의 수와 같거나 그보다 크도록 선택될 수 있다(채널을 소거하기 위해 폴라 코드의 복원성을 고려함).
폴라 코드 인코딩 방식은 대안적으로 하나 이상의 서브 폴라 코드를 포함할 수 있으며, 각각은 2의 제곱으로 표현된 다수의 코딩 비트(예를 들어, 총 64 + 128 = 192 비트의 26 코드 및 27 코드)를 포함한다. 서브폴라 코드 각각의 코딩 비트의 수는 그것의 합이 채널 비트의 수와 같거나 그보다 크도록 선택될 수 있다.
전술한 바와 같이, 잡음이 있는 통신 채널은 양호 상태의 소거(p 2 ), 소거 확률(p)이 불량 상태 확률 p 1 ≥p 2 에 대응하는 상관 노이즈 특성을 제공할 수 있다. 채널은 또한 양호 상태와 불량 상태 (Pgb) 사이 및 양호 상태와 불량 상태 (Pbg) 사이의 전이의 확률을 제공하고 n개의 최악 위치를 계산하는 것은 확률 p 2 , Pgb 및 Pbg를 더 고려한다.
이 예시적인 실시 예의 다른 양태는 예시된 방법(2000)을 기초로 하여 선택된 극성 코드 디코더 방식을 구현하고 그에 의해 결정된 n개의 최악 위치에서 고정된 비트를 갖는 디코딩 방법을 포함할 수 있다. 마찬가지로, 방법(2000)에 따라 폴라 코드 디코더 방식을 지원하고 그에 의해 결정된 n개의 최악 위치에서 고정 비트를 갖는 디코딩 처리 유닛이 제공될 수 있다.
도 26은 업 링크(26A) 및 다운 링크(26B) 인코딩 및 디코딩 흐름도를 도시한다. 일 실시 예에서, m < n 비트의 메시지를 획득하기 위해 n개의 비트의 메시지를 반복적으로 디코딩하기 위한 방법(3000)이 제공된다. 메시지는 소거의 불량 상태 확률(p 1 ), 소거의 양호 상태 확률(p2), 확률 p 2 ≤ p 1 를 특징으로 하는 상관 잡음을 잡음이 있는 통신 채널을 통해 수신된다. 채널은 양호 상태와 불량 상태 사이(Pgb) 및 양호 상태와 불량 상태 사이(Pbg)의 전이의 확률을 추가로 제공한다. 상기 방법(3000)은 n개의 비트로부터 각각의 비트(i)에 대해 반복적으로:
· 특정 값으로 단순화된 수축 아이덴티티를 사용하여 논리 그래프를 순회함으로써 비트(i)에 대한 확률 벡터를 결정하는 단계 (3010);
· 대응하는 수축 아이덴티티에 기초하여 후속 반복 동안 후속 기준에 대한 확률 벡터의 결정 동안 새로 계산된 수축 아이덴티티로부터의 특정 값을 인덱싱하는 단계(3020);
· 확률 벡터로부터 비트를 고정하는 단계(3030); 및
· 모든 n개의 비트가 고정될 때까지 비트(i+1)로 이동시키는 단계(3040)를 포함한다.
새로 계산된 수축 아이덴티티는 확률 벡터의 결정 동안 특정값으로 대체된 논리 그래프의 하나 이상의 섹션(예를 들어, 도 13의 예 참조)에 대응한다. 인덱스 된 값은 후속 섹션에서 동일한 섹션을 대체하기 위해 사용된다(예를 들어, 많은 섹션이 n개의 비트를 처리하는 동안 여러 번 반복되므로). 이러한 해법은 실제 계산 단계의 수를 제한하고 효율성을 향상시킨다. 메시지는 일반적으로 네트워크 인터페이스를 통해 수신되며 고정 비트는 일반적으로 네트워크 스택의 상위 처리 레이어에 제공된다. 전용 코딩 프로세서(1132)는 유리하게 디코딩 방법(3000)을 지원할 수 있다.
다양한 네트워크 링크가 본 발명의 맥락에서 암시적으로 또는 명시적으로 사용될 수 있다. 링크는 무선 링크로서 도시될 수 있지만, 동축 케이블, 광섬유, 카테고리 5 케이블 등을 사용하여 유선 링크로서 구현될 수도 있다. 유선 또는 무선 액세스 포인트(도시 안됨)가 링크 사이에 존재할 수 있다. 마찬가지로, 임의의 수의 라우터(도시 안됨)가 존재할 수 있고 링크의 일부가 인터넷을 더 통과할 수 있다.
본 발명은 상이한 모듈들이 그들 사이에서 정보를 교환하는 방식에 영향을 받지 않는다. 예를 들어, 메모리 모듈 및 프로세서 모듈은 병렬 버스에 의해 연결될 수 있지만, 또한 직렬 연결에 의해 연결되거나 본 발명의 교시에 영향을 미치지 않으면서 중간 모듈(도시 안됨)을 포함할 수 있다.
방법은 일반적으로 원하는 결과를 초래하는 일관된 단계의 시퀀스인 것으로 생각된다. 이 단계에서는 물리량을 물리적으로 조작해야 한다. 일반적으로, 반드시 그런 것은 아니지만, 이러한 양은 저장, 전송, 결합, 비교 및 조작될 수 있는 전기 또는 자기/전자기 신호의 형태를 취한다. 주로, 일반적으로 사용되는 이유로, 이들 신호를 비트, 값, 파라미터, 아이템, 요소, 객체, 심볼, 문자, 용어, 숫자 등으로 지칭하는 것이 때때로 편리하다. 그러나, 이들 용어 및 유사한 용어 모두는 적절한 물리량과 관련되어야 하며 이들 수량에 적용되는 편리한 라벨 일뿐이라는 점에 유의해야 한다. 본 발명의 설명은 예시의 목적으로 제시되었지만 개시된 실시예로 철저하게 제한하려는 것은 아니다. 많은 수정 및 변형이 당업자에게 명백할 것이다. 실시 예는 본 발명의 원리 및 그 실제 응용을 설명하고 다른 당업자가 본 발명의 이해를 가능하게 하여 다른 고려된 용도에 적합할 수있는 다양한 변형을 갖는 다양한 실시예를 구현할 수 있도록 선택되었다.
비교 성능을 더 잘 이해하기 위해 폴라 및 컨볼루션 폴라 코딩 하에서 삭제 채널의 채널 분극을 연구하는 것이 흥미롭다. 도 15에서, 50% 소거 채널을 가진 1024-비트 폴라 및 컨볼루션 폴라 코드 하에서 논리 채널의 분극에 관한 결과가 제시된다. 보다 구체적으로, 도 15a 및 도 15b에서, 연속적인 소거 디코딩 하에서 논리 채널의 효과적인 소거율에 의해 파라미터화된 각 채널의 정확도는 폴라 코드(도 15a) 및 컨볼루션 폴라 코드 (도 15)에 대해 도시되어 있다. 도 15c에서, 동일한 데이터는 극좌표 및 컨볼루션 극좌표 코드에 대해 내림차순으로 플로팅된다. 점선 수직선은 50%의 용량에 해당한다. 도 15d는 누적 합을 보여주며, 이 합은 지정된 수의 데이터 비트에 대한 프레임 오류율(FER)에 대한 간단한 상한을 제공한다.
도 15a, 15b, 및 15c에서. 컨볼루션 폴라 코드는 완벽하고 쓸모없는 한계 사이의 중간 영역에서 채널이 다소 적으며, 또한 양호한 채널은 왼쪽에 약간 더 강력하게 국한되어 있음을 알 수 있다(그리고, 반대로 불량 채널은 오른쪽에 국한되어 있다). 이 후자의 사실은 데이터 비트를 결정할 때 프로즌 비트에 관한 더 많은 정보가 디코더에 이용될 수 있고, 최대 가능성과 연속 상쇄 디코딩 사이의 성능 차이를 감소시키기 때문에 연속 상쇄 디코딩에 특히 중요하다.
이러한 결과로부터 블록 내의 적어도 하나의 에러 확률, 또는 프레임 에러율 (FER)에 대한 간단한 상한을 차감할 수 있다. k개의 데이터 채널에 대한 소거 확률을 간단히 합산하고 오류의 변화가 주어진 데이터 비트가 처음 잘못 해독된 확률의 합이라는 점을 지적함으로써 FER의 (과대) 추정값이 획득된다. 도 15d에서 이 합계는 데이터 속도의 범위에 대해 보여준다. 마찬가지로, 논-프로즌 비트가 처음으로 잘못 디코딩될 확률은 FER에 대한 하한을 제공한다. 하한만이 여기에 도시되어 있지만, 당업자가 인식하는 바와 같이, 제공된 그래프의 대부분에서 상한과 구별할 수 없다. 따라서 이러한 한계는 컨볼루션 폴라 코드가 고정 오류율 (특히 작은 대상 오류율)에 대해 전송되는 데이터 양을 크게 증가시킬 수 있음을 제안한다. 도 16은 위에서 파생된 상한(하한은 구분할 수 없음)을 사용하여 폴라 및 컨볼루션 폴라 코드의 오류 지수를 추정한다. 전술한 바와 같이, 고정 인코딩 레이트 k / n (용량 미만)에 대해, 두 코드는 극좌표의 경우 β≤½ 및 컨볼루션 폴라 코드의 경우
Figure pct00025
Figure pct00026
로 스케일링되는 점근적 프레임 오류율을 갖는다. 이러한 스케일링은 점근적이지만, 도 16에서 관찰된 유한 크기 스케일링은 폴라 코드의 오류 지수
Figure pct00027
및 컨볼루션 폴라 코드의 경우
Figure pct00028
을 보여 주어, 비교적 작은 블록 크기에서도 분극 강화가 중요하다는 좋은 증거를 제공한다.
도 16에서, FER이
Figure pct00029
로 스케일링되고 여기서 비트의 수 N = 2 n 이 분극 단계 n의 수에 의존한다고 가정하면, log2[-log2(Pe)] = log2 γ + βn인 것으로 결정된다. P e 에 대한 상한을 사용하여 그래프는 폴라 코드 및 컨볼루션 폴라 코드에 대해 n의 함수로서 log2[-log2(Pe)]를 플로팅한다. 폴라 코드에 대해
Figure pct00030
Figure pct00031
를 사용하고 컨볼루션 폴라 코드에 대해
Figure pct00032
Figure pct00033
을 사용한 선형 적합도가 표시된다. 인코딩 속도는 1/16이다.
다양한 채널로부터 데이터를 보호할 때 폴라 및 컨볼루션 폴라 코드의 성능을 수치적으로 비교했으며 256과 8192 비트 사이의 코드의 유한 코드 길이 효과에 중점을 두었다. 수행된 모든 시뮬레이션에 대해, 오류 모델의 세부 사항과 무관한 단순화된 채널 선택 방식이 사용되었다. 선택된 방식은 확률(p)을 갖는 대칭 비트 플립 채널을 사용하고, 각각의 위치(j)에 대해, 비트(x j )가 부정확하게 최초로 디코딩될 확률을 평가한다. 디코더는 각 비트가 독립적인 확률 p가 1이고 1-p가 0이라고 믿는 디코더에서 모두 0인 입력과 출력을 사용하여 작동한다. 각 비트 x j 에 대해 해당하는 텐서 네트워크 다이어그램이 축소되며, i < j의 경우, x i = 0이고 i > j의 경우 x i 는 무작위이다. 폴라 코드 및 컨볼루션 폴라 코드 모두에 대한 논리 채널 오류율의 보다 정확한 추정은 샘플링, 즉 0으로 고정하는 대신 가능한 비트 값 x i i < 0으로 샘플링함으로써 얻을 수 있다. 또는 콘벌루션 폴라 코드에서 더 정교한 기술가 사용될 수도 있다. 그러나, 이 단순화된 절차는 모든 조사된 채널에 대해 적절한 결과를 제공하는 것으로 관찰되었다(예를 들면, 소거 채널에서 파생된, 도 15에 제시된 데이터보다 비트-플립 채널의 성능이 더 우수함). 문제의 특정 오류 모델에 맞게 조정된 채널 선택을 사용하면 약간의 성능 향상을 볼 수 있지만, 폴라 및 컨볼루션 폴라 코드 간의 비교 성능은 매우 유사하므로, 이 절차는 비교 목적에 적합하다.
코드 레이트 1/2의 이진 소거 채널에 대한 결과는 도 17에서 나와 있다. 보다 구체적으로, 도 17에는, 이진 소거 채널에 대한 다양한 크기의 레이트 1/2 폴라 및 컨볼루션 폴라 코드의 성능 비교가 도시되어 있다. 인코딩된 메시지는 도 17a 및 도 17b의 예에서 256 비트, 도 17c 및 도 17d의 예에서 1024 비트 및 도 17e 및도 17f의 예에서 8192 비트를 포함한다. 소거 확률이 0.5인 용량은 코드 레이트 1/2에 해당한다. 다른 관찰이 가능하다. 유한 크기 효과는 두 코드에서 모두 중요하며, 폭포 영역이 "완전" 및 "무용" 동작을 분리하면 소거 채널 용량보다 약간 낮다(이는 최대 0.5의 소거율이 인코딩 속도에 견딜 수 있음을 나타낸다). 그럼에도불구하고 컨볼루션 폴라 코드의 임계 값은 폴라 코드보다 이 값에 훨씬 더 가깝다. 로그 스케일에서, 예를 들어 컨볼루션 폴라 코드의 경우 훨씬 더 큰 도 17f의 기울기를 보면 오류가 적은 지역의 성능이 훨씬 우수하다는 것이 분명하다. 두 코드 모두 오류 플로어의 증거를 표시하지 않는다(예상치도 않음). 마지막으로 두 코드 모두 오류가 다수의 비트 상의 오류를 포함하여, 치명적인 임의의 오류에 대한 경향을 표시한다. 실제로, 비트 오류율(BER)과 프레임 오류율(FER) 사이의 비율은 폴라 코드의 경우 매우 크고 컨볼루션 폴라 코드의 경우 훨씬 더 높다 (0.5에 가까움). 이는 완벽하게 디코딩된 메시지 또는 완전히 스크램블된 메시지에 해당한다. 흥미롭게도 이것은 섀논(Shannon)이 예상 한대로 "완벽한" 무작위 코드에서 예상되는 동작이며, 가장 가능성이 높은 메시지는 완전히 상관이 없다.
도 18에서 비트 플립 채널에 대해 유사한 동작이 관찰된다. 보다 구체적으로, 도 18은 비트 플립 채널에 대한 다양한 크기의 레이트 1/2 폴라 및 컨볼루션 폴라 코드의 성능을 비교한 것이다. 인코딩된 메시지는 도 18a 및 도 18b의 예에서 256 비트, 도 18c 및 도 18d의 예에서 1024 비트 및 도 18e 및 도 18f의 예에서 8192 비트를 포함한다. 비트 플립 확률이 약 0.11인 용량은 코드 레이트 1/2에 해당한다. 도 18에 도시된 예에서, 더 큰 유한 크기 효과가 관찰될 수 있으며, 관찰된 폭포 영역은 대략 0.11의 비트-플립율에서 예상 임계치보다 상당히 약간 낮다. 컨볼루션 폴라 코드는 모든 경우에서 오류에 대한 내성이 높고 성능과 나쁜 성능 사이의 전환이 더 선명하고 오류율이 낮은 영역에서 더 나은 스케일링을 수행하여 성능이 향상되었다.
마지막으로, 보다 현실적인 가우시안 화이트 잡음 채널에서의 성능이 도 19에 나와 있다. 보다 구체적으로, 도 19에서, 가우스 화이트 잡음 채널에 대한 다양한 크기의 레이트 1/2 폴라 및 컨볼루션 폴라 코드의 성능 비교가 도시되어 있다. 인코딩된 메시지는 도 19a 및 도 19b의 예에서 256 비트, 도 19c 및 도 19d의 예에서 1024 비트 및 도 19e 및 도 19f의 예에서 8192 비트를 포함한다. 다시 한번 유사한 거동이 관찰될 수 있다. 컨볼루션 폴라 코드는 폴라 코드보다 더 나은 오류 성능을 가지고 있으며, 이는 더 큰 잡음 속도에 대한 허용 오차와 저잡음 영역에서의 더 나은 스케일링을 포함한다. 이러한 결과를 바탕으로, 컨볼루션 폴라 코드는 유한하고 상대적으로 작은 블록 크기의 오류 수정 기능과 관련하여 폴라 코드를 크게 개선한 것으로 보인다. 더욱이, 수치적(또는 계산적) 비용은 동일한 스케일링과 일화적으로 디코딩에 대한 계산 노력의 두 배로 크게 영향을 받는다.

Claims (15)

  1. 잡음이 있는 통신 채널을 위한 채널 디코더에 프로즌 비트의 n개의 최상 위치를 결정하기 위한 방법으로서,
    - 폴라 코드 인코딩 방식을 선택하는 단계;
    - 상기 폴라 코드 인코딩 방식에 대응하는 폴라 코드 디코더 방식을 획득하는 단계;
    - 채널 비트의 수를 정의하는 채널 대역폭을 결정하는 단계;
    - 메시지 비트의 수, 채널 비트의 수, 프로즌 비트의 수(n)를 정의하는 메시지 비트의 수를 정의하는 메시지 길이를 결정하는 단계;
    - 잡음이 있는 통신 채널의 특성에도 불구하고, 소거 확률(p)로 통신 채널을 특성화하는 단계; 및
    - 상기 확률(p)을 고려하여 n개의 최악 위치를 계산하는 단계를 포함하는, 방법.
  2. 제 1 항에 있어서,
    상기 폴라 코드 인코딩 방식은 CNOT 게이트의 적어도 2 레벨을 이용하여 모델링된 컨볼루션 폴라 코드인, 방법.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 폴라 코드 인코딩 방식은 2의 제곱으로서 비트의 수(k)를 가지며, k는 채널 비트의 수 이상이 되도록 선택되는, 방법.
  4. 제 1 항 또는 제 2 항에 있어서,
    상기 폴라 코드 엔코딩 방식은 하나 초과의 서브-폴라 코드를 포함하고, 상기 서브-폴라 코드 각각은 2의 제곱으로서 표현되는 코딩 비트의 수를 포함하고, 각각의 서브-폴라 코드에서 상기 코딩 비트의 수가 그것의 합이 상기 채널 비트의 수 이상이 되도록 선택되는, 방법.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    상기 잡음이 있는 통신 채널은 양호 상태 확률(p 2 )을 특징으로 하는 상관 잡음 특성을 제공하고 상기 소거 확률(p)은 불량 상태 확률(p 1 ≥ p 2 )에 대응하고, 상기 채널은 양호 상태와 불량 상태(P gb ) 사이 및 양호 상태와 불량 상태(P bg ) 사이의 전이의 확률을 제공하고, n개의 최악 위치를 계산하는 것은 확률 p 2 , P gb P bg 를 추가로 고려하는, 방법.
  6. 제 1 항 내지 제 5항 중 어느 한 항에 따른 디코딩 방법으로서,
    그 안에 선택되고 이에 의해 결정된 n개의 최악 위치에서 프로즌 비트를 갖는 상기 폴라 코드 디코더 방식을 구현하기위한 디코딩 방법.
  7. 제 1항 내지 제 5항 중 어느 한 항에 따른 폴라 코드 디코더 방식을 지지하고 제 1 항 내지 제 5 항 중 어느 한 항과 동일한 것으로서 결정된 n개의 최악 위치에서 프로즌 비트를 갖는, 디코딩 처리 유닛.
  8. m < n 비트의 메시지를 획득하기 위한 n개의 비트의 메시지를 반복적으로 디코딩하는 방법으로서, 상기 메시지는 소거의 불량 상태 확률(p 1 ), 소거의 양호 상태 확률(p 2 ), p 2≤ p 1 의 확률을 특징으로 하는 상관 잡음을 나타내는 잡음이 있는 통신 채널을 통해 수신되고, 상기 채널은 상기 양호 상태와 상기 불량 상태(P gb ) 사이 및 상기 양호 상태 및 상기 불량 상태(P bg ) 사이의 전이의 확률을 제공하고, 상기 방법은:
    - 상기 n개의 비트로부터 각각의 비트(i)에 대해 반복적으로:
    - 특정 값으로 단순화된 수축 아이덴티티를 사용하여 논리 그래프를 횡단함으로써 비트(i)에 대한 확률 벡터를 결정하는 단계;
    - 대응하는 수축 아이덴티티에 기초하여 후속 반복 동안 후속 참조를 위해 확률 벡터의 결정 동안 새로 계산된 수축 아이덴티티로부터 특정 값을 인덱싱하는 단계;
    - 상기 확률 벡터로부터 상기 비트(i)를 고정하는 단계; 및
    - 모든 n개의 비트가 고정될 때까지 비트(i+1)를 이동시키는 단계를 포함하는, 방법.
  9. 제 8 항에 있어서,
    상기 새롭게 계산된 수축 아이덴티티는 상기 확률 벡터의 결정 동안 특정 값으로 대체되는 논리 그래프의 하나 또는 그 초과의 섹션에 대응하는, 방법.
  10. 제 8 항 또는 제 9 항에 있어서,
    상기 메시지는 네트워크 인터페이스를 통해 수신되는, 방법.
  11. 제 8 항 내지 제 10 항 중 어느 한 항에 있어서,
    상기 고정된 비트는 네트워크 스택의 더 높은 처리 레이어에 제공되는, 방법.
  12. m < n개의 비트의 메시지를 획득하도록 n개의 비트의 메시지를 반복적으로 디코딩하는 시스템으로서, 상기 메시지는 소거의 불량 상태 확률(p 1 ), 소거의 양호 상태 확률(p 2 ), p 2 ≤ p 1 의 확률을 특징으로 하는 상관 잡음을 나타내는 잡음이 있는 통신 채널을 통해 수신되고, 상기 채널은 양호 상태와 불량 상태(P gb ) 사이 및 양호 상태와 불량 상태(P bg ) 사이의 전이의 확률을 제공하며, 상기 시스템은:
    - n개의 비트로부터 각 비트(i)에 대해 반복적으로:
    - 특정 값으로 단순화된 수축 아이덴티티를 사용하여 논리 그래프를 횡단함으로써 비트(i)에 대한 확률 벡터를 결정하고;
    - 대응하는 수축 아이덴티티에 기초하여 후속 반복 동안 후속 참조를 위해 확률 벡터의 결정 동안 새로 계산된 수축 아이덴티티로부터 특정 값을 인덱싱하고;
    - 상기 확률 벡터로부터 비트(i)를 고정하고; 그리고
    - 모든 n개의 비트가 고정될 때까지 비트(i+1)를 이동시키는, 처리 모듈을 포함하는, 시스템.
  13. 제 12 항에 있어서,
    상기 새롭게 계산된 수축 아이덴티티는 상기 확률 벡터의 결정 동안 특정 값으로 대체되는 논리 그래프의 하나 또는 그 초과의 섹션에 대응하는, 시스템.
  14. 제 12 항 또는 제 13 항에 있어서,
    상기 메시지를 수신하는 네트워크 인터페이스를 더 포함하는, 시스템.
  15. 제 12 항 내지 제 14 항 중 어느 한 항에 있어서,
    상기 고정 비트는 상기 네트워크 인터페이스에 관련된 네트워크 스택의 더 높은 처리 레이어에 제공되는, 시스템.
KR1020197026518A 2017-03-03 2018-03-05 일반화된 폴라 코드 KR20190134608A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201762466414P 2017-03-03 2017-03-03
US62/466,414 2017-03-03
PCT/CA2018/050259 WO2018157263A1 (en) 2017-03-03 2018-03-05 Generalized polar codes

Publications (1)

Publication Number Publication Date
KR20190134608A true KR20190134608A (ko) 2019-12-04

Family

ID=63369700

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197026518A KR20190134608A (ko) 2017-03-03 2018-03-05 일반화된 폴라 코드

Country Status (7)

Country Link
US (1) US11336300B2 (ko)
EP (1) EP3590281A4 (ko)
JP (1) JP2020515117A (ko)
KR (1) KR20190134608A (ko)
CN (1) CN110612738A (ko)
CA (1) CA3054857A1 (ko)
WO (1) WO2018157263A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10871992B2 (en) * 2018-05-30 2020-12-22 Texas Instruments Incorporated Level two first-in-first-out transmission
CN109547156B (zh) * 2018-10-18 2020-03-24 北京理工大学 polar短码的非相干检测方法、装置与电子设备
JP2023519190A (ja) * 2020-03-16 2023-05-10 ザ リージェンツ オブ ザ ユニバーシティ オブ カリフォルニア 極性調整畳み込み符号のリスト復号

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006072265A1 (en) * 2005-01-10 2006-07-13 Ntt Docomo, Inc. Apparatus for predictively encoding a sequence of frames
US8265020B2 (en) * 2008-11-12 2012-09-11 Microsoft Corporation Cognitive error control coding for channels with memory
CN102164025B (zh) * 2011-04-15 2013-06-05 北京邮电大学 基于重复编码和信道极化的编码器及其编译码方法
CN102122966B (zh) * 2011-04-15 2012-11-14 北京邮电大学 基于信道极化的交错结构重复码的编码器及其编译码方法
KR20120137198A (ko) * 2011-06-11 2012-12-20 삼성전자주식회사 통신 시스템에서 패킷 송수신 장치 및 방법
US9176927B2 (en) * 2011-11-08 2015-11-03 The Royal Institution For The Advancement Of Learning/Mcgill University Methods and systems for decoding polar codes
CN103414540A (zh) * 2013-08-14 2013-11-27 南京邮电大学 一种基于Polar码的退化窃听信道速率兼容方法
US9007241B2 (en) * 2013-09-16 2015-04-14 Seagate Technology Llc Reduced polar codes
US9467164B2 (en) * 2013-10-01 2016-10-11 Texas Instruments Incorporated Apparatus and method for supporting polar code designs
ES2857075T3 (es) * 2013-12-24 2021-09-28 Huawei Tech Co Ltd Método de decodificación del código Polar y aparato de decodificación
US20150333775A1 (en) * 2014-05-15 2015-11-19 Broadcom Corporation Frozen-Bit Selection for a Polar Code Decoder
US9479291B2 (en) * 2015-02-13 2016-10-25 Samsung Electronics Co., Ltd. Apparatus and method of constructing polar code
CN105099622B (zh) * 2015-07-01 2018-10-19 北京邮电大学 极化编码调制中信道可靠度的确定方法及装置
US10461779B2 (en) * 2015-08-12 2019-10-29 Telefonaktiebolaget Lm Ericsson (Publ) Rate-compatible polar codes
CN105720992B (zh) * 2016-01-22 2019-07-23 哈尔滨工业大学深圳研究生院 一种极化码的简化译码方法
CN105897379B (zh) * 2016-04-08 2019-07-23 哈尔滨工业大学深圳研究生院 一种极化码级联空时码系统及其级联极化码编码方法
CN106130687B (zh) * 2016-06-06 2019-02-19 南京邮电大学 衰落信道下基于译码比特可靠性的Polar码删余方法

Also Published As

Publication number Publication date
EP3590281A1 (en) 2020-01-08
EP3590281A4 (en) 2021-07-28
JP2020515117A (ja) 2020-05-21
CA3054857A1 (en) 2018-09-07
US11336300B2 (en) 2022-05-17
CN110612738A (zh) 2019-12-24
US20200076451A1 (en) 2020-03-05
WO2018157263A1 (en) 2018-09-07

Similar Documents

Publication Publication Date Title
Sasaki et al. Quantum channels showing superadditivity in classical capacity
US20180357530A1 (en) Deep learning decoding of error correcting codes
US11444640B2 (en) Encoding method and device, and apparatus
CN110705711A (zh) 一种量子态信息降维编码方法及装置
JP7027520B2 (ja) Polar符号化方法および装置
KR20190134608A (ko) 일반화된 폴라 코드
Makkuva et al. Ko codes: inventing nonlinear encoding and decoding for reliable wireless communication via deep-learning
JP2002353946A (ja) 有限サイズのデータブロックに対して誤り訂正符号を評価する方法
CN109361404A (zh) 一种基于半监督深度学习网络的ldpc译码系统及译码方法
Ferris et al. Convolutional polar codes
US20080168333A1 (en) Decoding method and decoding apparatus as well as program
CN110942151A (zh) 一种量子态层析方法及装置
Yang et al. Nonlinear programming approaches to decoding low-density parity-check codes
CN107911124B (zh) 一种非递归的sc译码部分和确定方法及装置
CN110752894A (zh) 一种基于cnn的ldpc码盲信道译码方法及译码器
CN108631790A (zh) 一种ldpc码构造方法及装置
Ferris et al. Branching MERA codes: A natural extension of classical and quantum polar codes
Andi et al. Fast decoding of polar codes using tree structure
CN103746711A (zh) 基于译码端状态转移图的量子Viterbi译码算法
Liang et al. Exploiting noise correlation for channel decoding with convolutional neural networks
CN112584144B (zh) 一种图像信号处理方法及装置
Rao Performance analysis of polar codes for 5G short message transmissions
Wu et al. Performance and Construction of Polar Codes: The Perspective of Bit Error Probability
Bourassa et al. Convolutional Polar Codes on Channels with Memory using Tensor Networks
Lewandowsky The information bottleneck method in communications

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application