KR20220093002A - 레이트 7/8 의 펑처링된 qc-ldpc 코드들 - Google Patents
레이트 7/8 의 펑처링된 qc-ldpc 코드들 Download PDFInfo
- Publication number
- KR20220093002A KR20220093002A KR1020227020793A KR20227020793A KR20220093002A KR 20220093002 A KR20220093002 A KR 20220093002A KR 1020227020793 A KR1020227020793 A KR 1020227020793A KR 20227020793 A KR20227020793 A KR 20227020793A KR 20220093002 A KR20220093002 A KR 20220093002A
- Authority
- KR
- South Korea
- Prior art keywords
- bits
- codeword
- columns
- row
- intersection
- Prior art date
Links
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/033—Theoretical methods to calculate these checking codes
- H03M13/036—Heuristic code construction methods, i.e. code construction or code search based on using trial-and-error
-
- 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/11—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 using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1148—Structural properties of the code parity-check or generator matrix
- H03M13/116—Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
-
- 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/11—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 using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1148—Structural properties of the code parity-check or generator matrix
- H03M13/118—Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure
- H03M13/1185—Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure wherein the parity-check matrix comprises a part with a double-diagonal
-
- 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/25—Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
- H03M13/255—Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with Low Density Parity Check [LDPC] 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/3761—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 using code combining, i.e. using combining of codeword portions which may have been transmitted separately, e.g. Digital Fountain codes, Raptor codes or Luby Transform [LT] 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/63—Joint error correction and other techniques
- H03M13/635—Error control coding in combination with rate matching
- H03M13/6362—Error control coding in combination with rate matching by puncturing
- H03M13/6368—Error control coding in combination with rate matching by puncturing using rate compatible puncturing or complementary puncturing
- H03M13/6393—Rate compatible low-density parity check [LDPC] codes
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Error Detection And Correction (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
본 개시는 무선 통신을 위한 데이터를 인코딩하기 위해, 컴퓨터 저장 매체들 상에 인코딩된 컴퓨터 프로그램들을 포함하는, 시스템들, 방법들 및 장치를 제공한다. 일 양태에서, 무선 디바이스는 수신 디바이스로의 송신을 위해 다수 (M) 개의 시스테마틱 비트들을 인코딩할 수도 있다. 시스테마틱 비트들은 LDPC 코드워드를 생성하기 위해 준순환 저밀도 패리티 검사 (QC-LDPC) 코드를 사용하여 인코딩될 수도 있다. LDPC 코드워드는 M 개의 시스테마틱 비트들 및 하나 이상의 패리티 비트들을 포함하여, 다수 (N) 개의 코드워드 비트들을 포함할 수도 있다. 무선 디바이스는 코드 레이트 M/(N-K) > 5/6 를 갖는 펑처링된 코드워드, 예를 들어, M/(N-K) > 7/8 을 생성하기 위해 다수 (K) 개의 코드워드 비트들 (시스테마틱 및/또는 패리티 비트들) 을 추가로 펑처링할 수도 있다. 무선 디바이스는 N-K 개의 나머지 코드워드 비트들을, 무선 채널 상으로, 수신 디바이스에 송신할 수도 있다.
Description
본 개시는 일반적으로 무선 통신에 관한 것으로, 보다 구체적으로는 무선 통신을 위한 저밀도 패리티 검사 (low-density parity-check; LDPC) 코드들에 관한 것이다.
무선 로컬 영역 네트워크 (WLAN) 는 다수의 클라이언트 디바이스들 또는 스테이션들 (STA들) 에 의한 사용을 위해 공유 무선 매체를 제공하는 하나 이상의 액세스 포인트들 (AP들) 에 의해 형성될 수도 있다. 기본 서비스 세트 (Basic Service Set; BSS) 에 대응할 수도 있는 각각의 AP 는, AP 의 무선 범위 내의 임의의 STA들이 WLAN 과 무선 링크를 확립 및 유지할 수 있게 하기 위해 비컨 프레임들을 주기적으로 브로드캐스트할 수도 있다. IEEE 802.11 표준 패밀리에 따라 동작하는 WLAN들은 Wi-Fi 네트워크들로서 통상 지칭된다. 무선 통신 매체 상의 불완전한 채널 조건들은 송신 디바이스로부터 수신 디바이스로의 무선 데이터 송신 동안 데이터 손실을 야기할 수도 있다. 일부 무선 통신 시스템들은 불완전한 채널 조건들을 보상하기 위해 에러 정정 코드들을 사용한다. 에러 정정 코드들은 데이터 스트림에 중복성 (redundancy) 을 도입함으로써 무선 통신 시스템들에서의 정보 전달의 내재적인 비신뢰성 (intrinsic unreliability) 을 보상한다.
저밀도 패리티 검사 (LDPC) 코드들은 반복적인 코딩 시스템을 사용하는 에러 정정 코드의 타입이다. LDPC 코드들은 희소 패리티 검사 행렬들을 갖는 선형 코드들이다. 패리티 검사 행렬들의 희소성은 비교적 빠른 디코딩 및 계산적으로 저렴한 에러 정정을 허용한다. 일부 LDPC 코드 설계들은 더 효율적인 하드웨어 병렬화를 산출하기 위해 준순환 (quasi-cyclic; QC) LDPC 코드들을 사용한다. 예를 들어, LDPC 디코더는 단일 사이클에서 QC LDPC 패리티 검사 행렬의 다중의 행들을 프로세싱 가능할 수도 있다. IEEE 802.11 표준의 기존 버전들에 따라 동작하는 무선 통신 디바이스들은 5/6 코드 레이트를 갖는 길이가 1944 비트들인 LDPC 코드워드들을 생성할 수도 있다. 즉, LDPC 인코딩 프로세스는 유용한 정보의 1620 개의 비트들 ("시스테마틱 비트들 (systematic bits)" 로서 또한 지칭됨) 마다 324 개의 패리티 비트들을 생성한다. 더 작은 코드워드 길이들 (1944 비트들 미만) 이 또한 IEEE 802.11 표준의 기존 버전들에서 이용가능하지만, 일반적으로는 코드워드 길이들이 길수록 코딩 이득들이 더 높다. 무선 시그널링 능력들이 계속 진화함에 따라, 상당히 더 높은 스루풋들에서 무선 통신을 지원하기 위해 LDPC 코드워드들의 코드 레이트 및 코드워드 길이를 증가시키는 것이 바람직할 수도 있다.
본 개시의 시스템들, 방법들 및 디바이스들 각각은 여러 혁신적인 양태들을 가지며, 이들 양태들 중 어떠한 단일의 양태도 본 명세서에 개시된 바람직한 속성들을 단독으로 책임지지 않는다.
본 개시에서 설명된 주제의 하나의 혁신적인 양태는 무선 통신의 방법으로서 구현될 수 있다. 방법은 무선 채널 상으로의 송신을 위한 데이터를 인코딩하기 위해 무선 통신 디바이스에 의해 수행될 수 있다. 일부 구현들에서, 방법은, 다수 (M) 개의 시스테마틱 비트들을 획득하는 단계; 저밀도 패리티 검사 (LDPC) 코드에 기초하여 코드워드로서 M 개의 시스테마틱 비트들을 인코딩하는 단계로서, 코드워드는 다수 (N) 개의 코드워드 비트들을 포함하는, 상기 M 개의 시스테마틱 비트들을 인코딩하는 단계; 다수 (K) 개의 코드워드 비트들을 펑처링하는 단계로서, M/(N-K) > 5/6 인, 상기 다수 (K) 의 코드워드 비트들을 펑처링하는 단계; 및 N-K 개의 코드워드 비트들을, 무선 채널 상으로, 수신 디바이스에 송신하는 단계를 포함할 수 있다. 일부 구현들에서, M/(N-K) = 7/8 이다. 일부 구현들에서, 방법은, 변조 방식에 따라 N-K 개의 나머지 코드워드 비트들을 변조하는 단계를 더 포함할 수 있으며, 펑처링된 코드워드 비트들의 수 (K) 는 변조 방식과 연관된 변조 차수에 기초한다. 일부 구현들에서, K 개의 펑처링된 코드워드 비트들은 하나 이상의 시스테마틱 비트들, 하나 이상의 패리티 비트들, 또는 이들의 조합을 포함할 수 있다.
일부 구현들에서, M/N=5/6 이다. 일부 양태들에서, M=1620, N=1944, 및 K ≥ 90 이다. 일부 다른 구현들에서, M 은 1701 의 배수일 수 있고, N 은 2106 의 배수일 수 있고, K 는 162 의 배수일 수 있다. 일부 양태들에서, LDPC 코드는 5 개의 행들 및 26 개의 열들을 갖는 기본 행렬과 연관될 수 있으며, 여기서 기본 행렬의 각각의 행과 열의 교차점 (intersection) 은 차원 ZxZ 의 개별의 부분행렬 (submatrix) 을 나타낸다. 일부 구현들에서, 기본 행렬은 행 1 과 열들 1, 2, 9, 10, 16, 21, 23, 24, 및 26 의 각각의 교차점들에, 행 2 와 열들 8, 12, 14, 18, 20, 24, 25 및 26 의 각각의 교차점들에, 행 3 과 열들 3, 6, 13, 17, 19, 22 및 26 의 각각의 교차점들에, 행 4 와 열들 4, 5, 7, 11, 15, 22, 23 및 26 의 각각의 교차점들에, 그리고 행 5 와 열들 1-20 및 22-24 의 각각의 교차점들에 모두 0 인 (all-zero) 부분행렬들을 포함할 수 있다. 일부 구현들에서, 기본 행렬의 나머지 부분행렬들의 각각은 순환 순열 행렬 (cyclic permutation matrix) 을 포함할 수 있다.
본 개시에서 설명된 주제의 다른 혁신적인 양태는 무선 통신 디바이스에서 구현될 수 있다. 무선 통신 디바이스는 하나 이상의 프로세서들 및 메모리를 포함할 수 있다. 메모리는 명령들을 저장하며, 그 명령들은, 하나 이상의 프로세서들에 의해 실행될 경우, 무선 통신 디바이스로 하여금, 다수 (M) 개의 시스테마틱 비트들을 획득하게 하고; LDPC 코드에 기초하여 코드워드로서 M 개의 시스테마틱 비트들을 인코딩하게 하는 것으로서, 코드워드는 다수 (N) 개의 코드워드 비트들을 포함하는, 상기 M 개의 시스테마틱 비트들을 인코딩하게 하고; 다수 (K) 개의 코드워드 비트들을 펑처링하게 하는 것으로서, M/(N-K) > 5/6 인, 상기 다수 (K) 의 코드워드 비트들을 펑처링하게 하고; 그리고 N-K 개의 나머지 코드워드 비트들을, 무선 채널 상으로, 수신 디바이스에 송신하게 할 수 있다.
본 개시에서 설명된 주제의 다른 혁신적인 양태는 무선 통신의 방법으로서 구현될 수 있다. 방법은 무선 채널 상으로 수신된 데이터를 디코딩하기 위해 무선 통신 디바이스에 의해 수행될 수 있다. 일부 구현들에서, 방법은, 송신 디바이스로부터, 무선 채널 상으로, 다수 (L) 개의 코드워드 비트들을 수신하는 단계; L 개의 수신된 코드워드 비트들 및 LDPC 코드에 기초하여 코드워드를 복원하는 단계로서, 코드워드는 L 개의 수신된 코드워드 비트들 및 하나 이상의 추가적인 코드워드 비트들을 포함하는, 상기 코드워드를 복원하는 단계; 및 코드워드에 기초하여 다수 (M) 개의 시스테마틱 비트들을 복구하는 단계로서, M/L > 5/6 인, 상기 다수 (M) 개의 시스테마틱 비트들을 복구하는 단계를 포함할 수 있다. 일부 구현들에서, M/L = 7/8 이다. 일부 구현들에서, 하나 이상의 추가적인 코드워드 비트들은 하나 이상의 시스테마틱 비트들, 하나 이상의 패리티 비트들, 또는 이들의 조합을 포함할 수 있다.
일부 구현들에서, LDPC 코드는 5/6 과 동일한 코드 레이트와 연관될 수 있다. 일부 다른 구현들에서, LDPC 코드는 5 개의 행들 및 24 개의 열들을 갖는 기본 행렬과 연관될 수 있으며, 여기서 기본 행렬의 각각의 행과 열의 교차점은 차원 ZxZ 의 개별의 부분행렬을 나타낸다. 일부 구현들에서, Z 는 81 의 배수일 수 있다. 일부 구현들에서, 기본 행렬은 행 1 과 열들 1, 2, 9, 10, 16, 21, 23, 24, 및 26 의 각각의 교차점들에, 행 2 와 열들 8, 12, 14, 18, 20, 24, 25 및 26 의 각각의 교차점들에, 행 3 과 열들 3, 6, 13, 17, 19, 22 및 26 의 각각의 교차점들에, 행 4 와 열들 4, 5, 7, 11, 15, 22, 23 및 26 의 각각의 교차점들에, 그리고 행 5 와 열들 1-20 및 22-24 의 각각의 교차점들에 모두 0 인 부분행렬들을 포함할 수 있다. 일부 구현들에서, 기본 행렬의 나머지 부분행렬들의 각각은 순환 순열 행렬을 포함할 수 있다.
본 개시에서 설명된 주제의 다른 혁신적인 양태는 무선 통신 디바이스에서 구현될 수 있다. 무선 통신 디바이스는 하나 이상의 프로세서들 및 메모리를 포함할 수 있다. 메모리는 명령들을 저장하며, 그 명령들은, 하나 이상의 프로세서들에 의해 실행될 경우, 무선 통신 디바이스로 하여금, 송신 디바이스로부터, 무선 채널 상으로, 다수 (L) 개의 코드워드 비트들을 수신하게 하고; L 개의 수신된 코드워드 비트들 및 LDPC 코드에 기초하여 코드워드를 복원하게 하는 것으로서, 코드워드는 L 개의 수신된 코드워드 비트들 및 하나 이상의 추가적인 코드워드 비트들을 포함하는, 상기 코드워드를 복원하게 하고; 그리고 코드워드에 기초하여 다수 (M) 개의 시스테마틱 비트들을 복구하게 하는 것으로서, M/L > 5/6 인, 상기 다수 (M) 개의 시스테마틱 비트들을 복구하게 할 수 있다.
본 개시에서 설명된 주제의 하나 이상의 구현들의 상세들이 첨부 도면들 및 하기의 설명에 기재된다. 다른 피처들, 양태들, 및 이점들은 설명, 도면들, 및 청구항들로부터 명백해질 것이다. 다음의 도면들의 상대적 치수들은 일정한 스케일로 그려지지 않을 수도 있음에 유의한다.
도 1 은 예시적인 무선 시스템의 블록도를 도시한다.
도 2 는 예시적인 무선 스테이션 (STA) 의 블록도를 도시한다.
도 3 은 예시적인 액세스 포인트 (AP) 의 블록도를 도시한다.
도 4 는 예시적인 통신 시스템의 블록도를 도시한다.
도 5 는 저밀도 패리티 검사 (LDPC) 코드에 대한 예시적인 패리티 검사 행렬을 도시한다.
도 6a 내지 도 6c 는 예시적인 순환 순열 행렬들을 도시한다.
도 7 은 LDPC 코드에 대한 다른 예시적인 패리티 검사 행렬을 도시한다.
도 8 은 LDPC 코드에 대한 다른 예시적인 패리티 검사 행렬을 도시한다.
도 9 는 LDPC 코드에 대한 다른 예시적인 패리티 검사 행렬을 도시한다.
도 10 은 LDPC 코드에 대한 다른 예시적인 패리티 검사 행렬을 도시한다.
도 11 은 LDPC 코드에 대한 다른 예시적인 패리티 검사 행렬을 도시한다.
도 12 는 무선 통신 디바이스에 대한 예시적인 송신 (TX) 프로세싱 체인을 도시한다.
도 13 은 무선 통신 디바이스에 대한 예시적인 수신 (RX) 프로세싱 체인을 도시한다.
도 14 는 예시적인 무선 통신 동작을 도시하는 예시적인 흐름도를 도시한다.
도 15 는 예시적인 무선 통신 동작을 도시하는 예시적인 흐름도를 도시한다.
도 16 은 예시적인 무선 통신 디바이스의 블록도를 도시한다.
도 17 은 예시적인 무선 통신 디바이스의 블록도를 도시한다.
다양한 도면들에서 동일한 참조 부호들 및 지정들은 동일한 엘리먼트들을 나타낸다.
도 2 는 예시적인 무선 스테이션 (STA) 의 블록도를 도시한다.
도 3 은 예시적인 액세스 포인트 (AP) 의 블록도를 도시한다.
도 4 는 예시적인 통신 시스템의 블록도를 도시한다.
도 5 는 저밀도 패리티 검사 (LDPC) 코드에 대한 예시적인 패리티 검사 행렬을 도시한다.
도 6a 내지 도 6c 는 예시적인 순환 순열 행렬들을 도시한다.
도 7 은 LDPC 코드에 대한 다른 예시적인 패리티 검사 행렬을 도시한다.
도 8 은 LDPC 코드에 대한 다른 예시적인 패리티 검사 행렬을 도시한다.
도 9 는 LDPC 코드에 대한 다른 예시적인 패리티 검사 행렬을 도시한다.
도 10 은 LDPC 코드에 대한 다른 예시적인 패리티 검사 행렬을 도시한다.
도 11 은 LDPC 코드에 대한 다른 예시적인 패리티 검사 행렬을 도시한다.
도 12 는 무선 통신 디바이스에 대한 예시적인 송신 (TX) 프로세싱 체인을 도시한다.
도 13 은 무선 통신 디바이스에 대한 예시적인 수신 (RX) 프로세싱 체인을 도시한다.
도 14 는 예시적인 무선 통신 동작을 도시하는 예시적인 흐름도를 도시한다.
도 15 는 예시적인 무선 통신 동작을 도시하는 예시적인 흐름도를 도시한다.
도 16 은 예시적인 무선 통신 디바이스의 블록도를 도시한다.
도 17 은 예시적인 무선 통신 디바이스의 블록도를 도시한다.
다양한 도면들에서 동일한 참조 부호들 및 지정들은 동일한 엘리먼트들을 나타낸다.
다음의 설명은 본 개시의 혁신적인 양태들을 설명할 목적들을 위한 소정의 구현들에 관한 것이다. 그러나, 당업자는 본 명세서에서의 교시들이 다수의 상이한 방식들로 적용될 수 있다는 것을 용이하게 인식할 것이다. 설명된 구현들은 IEEE 16.11 표준들 중 임의의 것, 또는 IEEE 802.11 표준들, Bluetooth® 표준, 코드 분할 다중 액세스 (CDMA), 주파수 분할 다중 액세스 (FDMA), 시간 분할 다중 액세스 (TDMA), GSM (Global System for Mobile communications), GSM/일반 패킷 무선 서비스 (GPRS), EDGE (Enhanced Data GSM Environment), TETRA (Terrestrial Trunked Radio), 광대역-CDMA (W-CDMA), EV-DO (Evolution Data Optimized), 1xEV-DO, EV-DO Rev A, EV-DO Rev B, 고속 패킷 액세스 (HSPA), 고속 다운링크 패킷 액세스 (HSDPA), 고속 업링크 패킷 액세스 (HSUPA), 진화된 고속 패킷 액세스 (HSPA+), 롱 텀 에볼루션 (LTE), AMPS 중 임의의 것에 따른 RF 신호들, 또는 3G, 4G 또는 5G, 또는 이의 추가 구현들의 기술을 활용하는 시스템과 같은, 무선, 셀룰러 또는 사물 인터넷 (IOT) 네트워크 내에서 통신하는데 사용되는 다른 알려진 신호들을 송신 및 수신 가능한 임의의 디바이스, 시스템 또는 네트워크에서 구현될 수도 있다.
본 개시에서 설명된 주제의 구현들은 저밀도 패리티 검사 (LDPC) 코드워드들의 코드 레이트를 증가시키기 위해 사용될 수도 있다. 일부 구현들에서, 더 높은 코드 레이트는 (기존 IEEE 802.11 표준들에 의해 정의된 바와 같이) 레거시 LDPC 코드들을 사용하여 생성된 LDPC 코드워드의 하나 이상의 비트들을 펑처링함으로써 달성될 수도 있다. 예를 들어, 레이트 7/8 코드워드는 길이 1944 의 레이트 5/6 코드워드의 93 개의 비트들을 펑처링함으로써 도출될 수도 있다. 다른 예는 길이 1944 의 레이트 5/6 코드워드의 96 개의 비트들을 펑처링하여 7/8 에 가까운 레이트의 새로운 코드를 초래하는 것이다. 96 개의 비트들을 펑처링하는 것은 (각각의 QAM 심볼이 12 개의 비트들을 반송하는, 4096-QAM 을 가정하여) 펑처링된 비트들의 수가 변조 심볼에서의 비트들의 배수이어야 하는 경우들에서 구현하기에 더 편리할 수도 있다. 예를 들어, 4096-QAM 에 대해 90 개의 비트들을 펑처링하는 것도 가능하여, 7.5 QAM 펑처링된 심볼들을 초래한다. 효과적으로, 2 개의 코드워드들마다 15 개의 4096-QAM 심볼들이 펑처링된다. 펑처링된 비트들은 시스테마틱 비트들, 패리티 비트들, 또는 이들의 임의의 조합을 포함할 수도 있다. 일부 다른 구현들에서, 시스테마틱 비트들은 더 높은 코드 레이트 (이를 테면 레이트 7/8) 에 대해 최적화되는 새로운 LDPC 코드를 사용하여 인코딩될 수도 있다. 예를 들어, 새로운 LDPC 코드는 (레거시 LDPC 코드들과 비교하여) 주어진 코드워드 길이에 대해 더 많은 수의 패리티 비트들을 인코딩하도록 최적화될 수도 있다. 일부 양태들에서, 새로운 LDPC 코드를 사용하여 생성된 패리티 비트들의 수는 결과적인 코드워드가 원하는 코드워드 길이를 초과하게 할 수도 있다. 따라서, (시스테마틱 비트들, 패리티 비트들 또는 이들의 조합을 포함하는) 결과적인 코드워드의 하나 이상의 비트들은 원하는 코드 레이트를 달성하기 위해 펑처링될 수도 있다.
본 개시에서 설명된 주제의 특정 구현들은 다음의 잠재적 이점들 중 하나 이상을 실현하도록 구현될 수 있다. 무선 통신의 스루풋이 계속 확장됨에 따라, 더 높은 스루풋 통신을 지원하기 위해 더 높은 코드 레이트들 (≥7/8) 이 필요할 수도 있다. 레거시 LDPC 코드들을 사용하여 생성된 LDPC 코드워드들의 하나 이상의 비트들을 펑처링함으로써, 본 개시의 양태들은 기존 인코딩 또는 디코딩 하드웨어에 대한 수정이 거의 또는 전혀 없이 LDPC 코드워드들의 코드 레이트를 (이를 테면 5/6 에서 7/8 로) 증가시킬 수도 있다. 다른 한편으로, 더 높은 코드 레이트들에 대해 최적화되는 새로운 LDPC 코드들을 구현함으로써, 본 개시의 양태들은 더 높은 코드 레이트들에서 더 강건한 통신을 제공하는 LDPC 코드워드들을 생성할 수도 있다. 새로운 높은 레이트 LDPC 코드들은 (이를 테면 레이트 7/8 코드를 획득하기 위해 레이트 5/6 코드를 펑처링함으로써) 펑처링된 레거시 LDPC 코드와 비교하여 개선된 코딩 이득들을 초래할 수도 있다. 일부 양태들에서, 새로운 높은 레이트 LDPC 코드들은 코딩 이득들을 손상시키지 않고 소정의 애플리케이션들에 적합하도록 패리티 비트들 또는 시스테마틱 비트들 또는 패리티 및 정보 비트들 양자 모두를 펑처링하는 유연성을 제공할 수도 있다. 일부 다른 양태들에서, 새로운 높은 레이트 LDPC 코드들은 코딩 이득의 실질적인 손실 없이 (패리티 비트들, 시스테마틱 비트들, 또는 이들의 조합을) 추가로 펑처링함으로써 더 높은 레이트 코드를 달성할 수도 있다. 이와 같이, 다중의 높은 레이트 LDPC 코드들은 단일의 높은 레이트 LDPC 코드로부터 도출될 수도 있고, 따라서 하드웨어 또는 소프트웨어 구현들을 단순화할 수 있다. 또한, 일부 양태들에서, 새로운 높은 레이트 LDPC 코드들은 더 큰 코드워드 길이들 (코드워드 당 >1944 비트들) 을 지원하여, 훨씬 더 큰 코딩 이득들을 초래할 수도 있다. 더 짧은 길이의 코드들이 모듈로 연산에 기초하여 더 큰 길이의 코드들로부터 도출될 수 있기 때문에, 더 큰 LDPC 코드들은 스토리지 또는 메모리 요건들을 상당히 증가시키지 않고 구현될 수 있다.
도 1 은 예시적인 무선 시스템 (100) 의 블록도를 도시한다. 무선 시스템 (100) 은 무선 액세스 포인트 (AP) (110) 및 다수의 무선 스테이션들 (STA들) (120a-120i) 을 포함하는 것으로 도시된다. 간략화를 위해, 하나의 AP (110) 가 도 1 에 도시된다. AP (110) 는 AP (110), STA들 (120a-120i), 및 다른 무선 디바이스들 (간략화를 위해 도시되지 않음) 이 무선 매체 상으로 서로 통신할 수 있게 하는 무선 로컬 영역 네트워크 (WLAN) 를 형성할 수도 있다. 다수의 채널들로 또는 다수의 리소스 유닛들 (RU들) 로 분할될 수도 있는 무선 매체는, AP (110), STA들 (120a-120i), 및 WLAN 에 접속된 다른 무선 디바이스들 사이의 무선 통신을 용이하게 할 수도 있다. 일부 구현들에서, STA들 (120a-120i) 은 (이를 테면 AP (110) 의 존재 또는 개입 없이) 피어-투-피어 통신을 사용하여 서로 통신할 수 있다. AP (110) 는, 예를 들어, 액세스 포인트의 제조자에 의해 그 안에 프로그래밍되는 고유 MAC 어드레스를 할당받을 수도 있다. 유사하게, STA들 (120a-120i) 의 각각은 또한 고유 MAC 어드레스를 할당받을 수도 있다.
일부 구현들에서, 무선 시스템 (100) 은 다중-입력 다중-출력 (MIMO) 무선 네트워크에 대응할 수도 있고 단일-사용자 MIMO (SU-MIMO) 및 다중-사용자 (MU-MIMO) 통신을 지원할 수도 있다. 일부 구현들에서, 무선 시스템 (100) 은 직교 주파수 분할 다중 액세스 (OFDMA) 통신을 지원할 수도 있다. 또한, WLAN 이 도 1 에서 인프라스트럭처 기본 서비스 세트 (BSS) 로 도시되지만, 일부 다른 구현들에서, WLAN 은 독립적인 기본 서비스 세트 (Independent Basic Service Set; IBSS), 확장된 서비스 세트 (Extended Service Set; ESS), 애드혹 네트워크, 또는 피어-투-피어 (P2P) 네트워크 (이를 테면 하나 이상의 Wi-Fi Direct 프로토콜들에 따라 동작함) 일 수도 있다.
STA들 (120a-120i) 은 예를 들어, 셀 폰들, 개인 디지털 보조기들 (PDA들), 태블릿 디바이스들, 랩탑 컴퓨터들 등을 포함하는 임의의 적합한 Wi-Fi 가능 무선 디바이스들일 수도 있다. STA들 (120a-120i) 은 또한, 사용자 장비 (UE), 가입자국, 모바일 유닛, 가입자 유닛, 무선 유닛, 원격 유닛, 모바일 디바이스, 무선 디바이스, 무선 통신 디바이스, 원격 디바이스, 모바일 가입자국, 액세스 단말기, 모바일 단말기, 무선 단말기, 원격 단말기, 핸드셋, 사용자 에이전트, 모바일 클라이언트, 클라이언트, 또는 일부 다른 적합한 용어로서 지칭될 수도 있다.
AP (110) 는 하나 이상의 무선 디바이스들 (이를 테면 STA들 (120a-120i)) 이 다른 네트워크 (이를 테면 로컬 영역 네트워크 (LAN), 광역 네트워크 (WAN), 메트로폴리탄 영역 네트워크 (MAN), 또는 인터넷) 에 접속할 수 있게 하는 임의의 적합한 디바이스일 수도 있다. 일부 구현들에서, 시스템 제어기 (130) 는 AP (110) 와 다른 네트워크들 또는 시스템들 사이의 통신을 용이하게 할 수도 있다. 일부 구현들에서, 시스템 제어기 (130) 는 AP (110) 와 다른 무선 네트워크들과 연관될 수도 있는 하나 이상의 다른 AP들 (간략화를 위해 도시되지 않음) 사이의 통신을 용이하게 할 수도 있다. 추가로, 또는 대안적으로, AP (110) 는 무선 통신을 사용하여 하나 이상의 다른 AP들과 신호들 및 정보를 교환할 수도 있다.
AP (110) 는 AP (110) 의 무선 범위 내의 STA들 (120a-120i) 및 다른 무선 디바이스들이 AP (110) 와의 통신 링크를 확립 및 유지할 수 있게 하기 위해 비컨 프레임들을 주기적으로 브로드캐스트할 수도 있다. STA들 (120a-120i) 로의 다운링크 (DL) 데이터 송신을 표시하고 STA들 (120a-120i) 로부터의 업링크 (UL) 데이터 송신을 요청 또는 스케줄링할 수도 있는 비컨 프레임들은, 통상적으로 타겟 비컨 송신 시간 (TBTT) 스케줄에 따라 브로드캐스트된다. 브로드캐스트된 비컨 프레임들은 AP (110) 의 타이밍 동기화 함수 (timing synchronization function; TSF) 값을 포함할 수도 있다. STA들 (120a-120i) 은, 예를 들어, 모든 STA들 (120a-120i) 이 서로 그리고 AP (110) 와 동기화되도록, 그들 자신의 로컬 TSF 값들을 브로드캐스트된 TSF 값과 동기화할 수도 있다.
일부 구현들에서, 스테이션들 STA들 (120a-120i) 및 AP (110) 의 각각은 하나 이상의 트랜시버들, 하나 이상의 프로세싱 리소스들 (이를 테면 프로세서들 또는 주문형 집적 회로들 (Application-Specific Integrated Circuits; ASICs)), 하나 이상의 메모리 리소스들, 및 전원 (이를 테면 배터리) 을 포함할 수도 있다. 하나 이상의 트랜시버들은 무선 통신 신호들을 송신 및 수신하기 위해 Wi-Fi 트랜시버들, 블루투스 트랜시버들, 셀룰러 트랜시버들, 또는 다른 적합한 무선 주파수 (RF) 트랜시버들 (간략화를 위해 도시되지 않음) 을 포함할 수도 있다. 일부 구현들에서, 각각의 트랜시버는 별개의 주파수 대역들에서 또는 별개의 통신 프로토콜들을 사용하여 다른 무선 디바이스들과 통신할 수도 있다. 메모리 리소스들은 도 5 내지 도 11 과 관련하여 설명된 하나 이상의 동작들을 수행하기 위한 명령들을 저장하는 비일시적 컴퓨터 판독가능 매체 (이를 테면 하나 이상의 비휘발성 메모리 엘리먼트들, 이를 테면 EPROM, EEPROM, 플래시 메모리, 하드 드라이브 등) 를 포함할 수도 있다.
도 2 는 예시적인 무선 스테이션 (STA) (200) 을 도시한다. STA (200) 는 도 1 의 STA들 (120a-120i) 중 적어도 하나의 STA 의 하나의 구현일 수도 있다. STA (200) 는 하나 이상의 트랜시버들 (210), 프로세서 (220), 사용자 인터페이스 (230), 메모리 (240), 및 다수의 안테나들 (ANT1-ANTn) 을 포함할 수도 있다. 트랜시버들 (210) 은 직접 또는 안테나 선택 회로 (간략화를 위해 도시되지 않음) 를 통해 안테나들 (ANT1-ANTn) 에 커플링될 수도 있다. 트랜시버들 (210) 은, 예를 들어, 다수의 AP들 및 다수의 다른 STA들을 포함하는 다른 무선 디바이스들에 신호들을 송신하고 그들로부터 신호들을 수신하는데 사용될 수도 있다. 간략화를 위해 도 2 에는 도시되지 않았지만, 트랜시버들 (210) 은 신호들을 프로세싱하여 안테나들 (ANT1-ANTn) 을 통해 다른 무선 디바이스들에 송신하기 위해 임의의 수의 송신 체인들을 포함할 수도 있고, 안테나들 (ANT1-ANTn) 로부터 수신된 신호들을 프로세싱하기 위해 임의의 수의 수신 체인들을 포함할 수도 있다. 따라서, STA (200) 는 MIMO 통신 및 OFDMA 통신을 위해 구성될 수도 있다. MIMO 통신은 SU-MIMO 통신 및 MU-MIMO 통신을 포함할 수도 있다. 일부 구현들에서, STA (200) 는 안테나 다이버시티를 제공하기 위해 다중의 안테나들 (ANT1-ANTn) 을 사용할 수도 있다. 안테나 다이버시티는 편파 다이버시티, 패턴 다이버시티, 및 공간 다이버시티를 포함할 수도 있다.
프로세서 (220) 는 STA (200) 에 (이를 테면 메모리 (240) 내에) 저장된 하나 이상의 소프트웨어 프로그램들의 스크립트들 또는 명령들을 실행할 수 있는 임의의 적합한 하나 이상의 프로세서들일 수도 있다. 일부 구현들에서, 프로세서 (220) 는 머신 판독가능 매체들의 적어도 일부를 제공하는 외부 메모리 및 프로세서 기능을 제공하는 하나 이상의 마이크로프로세서들이거나 또는 이를 포함할 수도 있다. 다른 구현들에서, 프로세서 (220) 는 단일 칩에 통합된 머신 판독가능 매체들의 적어도 일부, 프로세서, 버스 인터페이스, 및 사용자 인터페이스를 갖는 주문형 집적 회로 (ASIC) 이거나 또는 이를 포함할 수도 있다. 일부 다른 구현들에서, 프로세서 (220) 는 하나 이상의 필드 프로그래밍가능 게이트 어레이들 (FPGA들) 또는 프로그래밍가능 로직 디바이스들 (PLD들) 이거나 또는 이를 포함할 수도 있다.
프로세서 (220) 에 커플링되는 사용자 인터페이스 (230) 는 예를 들어, 스피커, 마이크로폰, 디스플레이 디바이스, 키보드, 터치 스크린 등과 같은 다수의 적합한 사용자 입력 디바이스들이거나 또는 이들을 나타낼 수도 있다. 일부 구현들에서, 사용자 인터페이스 (230) 는 사용자가 STA (200) 의 다수의 동작들을 제어할 수 있게 하고, STA (200) 에 의해 실행가능한 하나 이상의 애플리케이션들과 상호작용할 수 있게 하고, 다른 적합한 기능들을 허용할 수도 있다.
일부 구현들에서, STA (200) 는 위성 포지셔닝 시스템 (SPS) 수신기 (250) 를 포함할 수도 있다. 프로세서 (220) 에 커플링되는 SPS 수신기 (250) 는 안테나 (간략화를 위해 도시되지 않음) 를 통해 하나 이상의 위성들 또는 위성 시스템들로부터 송신된 신호들을 포착 및 수신하는데 사용될 수도 있다. SPS 수신기 (250) 에 의해 수신된 신호들은 STA (200) 의 로케이션을 결정 (또는 적어도 그 결정을 보조) 하는데 사용될 수도 있다.
메모리 (240) 는 로케이션 데이터, 구성 정보, 데이터 레이트들, 매체 액세스 제어 (MAC) 어드레스, 타이밍 정보, 변조 및 코딩 방식들 (MCS들), 트래픽 표시 (traffic indication; TID) 큐 사이즈들, 레인징 (ranging) 능력들, 및 STA (200) 에 관한 (또는 그와 관계된) 다른 적합한 정보를 저장할 수도 있는 디바이스 데이터베이스 (241) 를 포함할 수도 있다. 디바이스 데이터베이스 (241) 는 또한 다수의 다른 무선 디바이스들에 대한 프로파일 정보를 저장할 수도 있다. 주어진 무선 디바이스에 대한 프로파일 정보는, 예를 들어, 무선 디바이스에 대한 서비스 세트 식별 (SSID), 기본 서비스 세트 식별자 (BSSID), 동작 채널들, TSF 값들, 비컨 인터벌들, 레인징 스케줄들, 채널 상태 정보 (CSI), 수신 신호 강도 표시자 (RSSI) 값들, 굿풋 값들 (goodput values), 및 STA (200) 와의 접속 이력을 포함할 수도 있다. 일부 구현들에서, 주어진 무선 디바이스에 대한 프로파일 정보는 또한 클록 오프셋 값들, 캐리어 주파수 오프셋 값들, 및 레인징 능력들을 포함할 수도 있다.
메모리 (240) 는 또한, 본 개시에서 설명된 하나 이상의 동작들의 전부 또는 일부를 수행하기 위해 컴퓨터 실행가능 명령들 (242) 을 저장할 수도 있는 비일시적 컴퓨터 판독가능 저장 매체 (이를 테면 하나 이상의 비휘발성 메모리 엘리먼트들, 이를 테면 EPROM, EEPROM, 플래시 메모리, 하드 드라이브 등) 이거나 또는 이를 포함할 수도 있다.
도 3 은 예시적인 액세스 포인트 (AP) (300) 를 도시한다. AP (300) 는 도 1 의 AP (110) 의 하나의 구현일 수도 있다. AP (300) 는 하나 이상의 트랜시버들 (310), 프로세서 (320), 메모리 (330), 네트워크 인터페이스 (340), 및 다수의 안테나들 (ANT1-ANTn) 을 포함할 수도 있다. 트랜시버들 (310) 은 직접 또는 안테나 선택 회로 (간략화를 위해 도시되지 않음) 를 통해 안테나들 (ANT1-ANTn) 에 커플링될 수도 있다. 트랜시버들 (310) 은, 예를 들어, 도 1 의 STA들 (120a-120i) 및 다른 AP들 중 하나 이상을 포함하는 다른 무선 디바이스들에 신호들을 송신하고 그들로부터 신호들을 수신하는데 사용될 수도 있다. 간략화를 위해 도 3 에는 도시되지 않았지만, 트랜시버들 (310) 은 신호들을 프로세싱하여 안테나들 (ANT1-ANTn) 을 통해 다른 무선 디바이스들에 송신하기 위해 임의의 수의 송신 체인들을 포함할 수도 있고, 안테나들 (ANT1-ANTn) 로부터 수신된 신호들을 프로세싱하기 위해 임의의 수의 수신 체인들을 포함할 수도 있다. 따라서, AP (300) 는 MIMO 통신 및 OFDMA 통신을 위해 구성될 수도 있다. MIMO 통신은 SU-MIMO 통신 및 MU-MIMO 통신을 포함할 수도 있다. 일부 구현들에서, AP (300) 는 안테나 다이버시티를 제공하기 위해 다중의 안테나들 (ANT1-ANTn) 을 사용할 수도 있다. 안테나 다이버시티는 편파 다이버시티, 패턴 다이버시티, 및 공간 다이버시티를 포함할 수도 있다.
프로세서 (320) 에 커플링되는 네트워크 인터페이스 (340) 는, 도 1 의 시스템 제어기 (130) 와 통신하는데 사용될 수도 있다. 네트워크 인터페이스 (340) 는 또한, AP (300) 가 직접 또는 하나 이상의 개재 네트워크들을 통해, 다른 무선 시스템들과, 다른 AP들과, 하나 이상의 백홀 네트워크들과, 또는 이들의 임의의 조합과 통신하는 것을 허용할 수도 한다.
메모리 (330) 는 로케이션 데이터, 구성 정보, 데이터 레이트들, MAC 어드레스, 타이밍 정보, MCS들, 레인징 능력들, 및 AP (300) 에 관한 (또는 그와 관계된) 다른 적합한 정보를 저장할 수도 있는 디바이스 데이터베이스 (331) 를 포함할 수도 있다. 디바이스 데이터베이스 (331) 는 또한 다수의 다른 무선 디바이스들 (이를 테면 도 1 의 스테이션들 (120a-120i) 중 하나 이상) 에 대한 프로파일 정보를 저장할 수도 있다. 주어진 무선 디바이스에 대한 프로파일 정보는, 예를 들어, 무선 디바이스에 대한 SSID, BSSID, 동작 채널들, CSI, 수신 신호 강도 표시자 (RSSI) 값들, 굿풋 값들, 및 AP (300) 와의 접속 이력을 포함할 수도 있다. 일부 구현들에서, 주어진 무선 디바이스에 대한 프로파일 정보는 또한 TID 큐 사이즈들, 트리거 기반 UL 송신을 위한 선호된 패킷 지속기간, 및 무선 디바이스가 TB PPBU들에 삽입할 수 있는 큐잉된 UL 데이터의 최대량을 포함할 수도 있다.
메모리 (330) 는 또한, 본 개시에서 설명된 하나 이상의 동작들의 전부 또는 일부를 수행하기 위해 컴퓨터 실행가능 명령들 (332) 을 저장할 수도 있는 비일시적 컴퓨터 판독가능 저장 매체 (이를 테면 하나 이상의 비휘발성 메모리 엘리먼트들, 이를 테면 EPROM, EEPROM, 플래시 메모리, 하드 드라이브 등) 이거나 또는 이를 포함할 수도 있다.
도 4 는 예시적인 통신 시스템 (400) 의 블록도를 도시한다. 통신 시스템 (400) 은 인코더 (410), 채널 (420), 및 디코더 (430) 를 포함한다. 인코더 (410) 는 송신 디바이스에 포함되거나 또는 그에 대응할 수도 있다. 일부 구현들에서, 송신 디바이스는 도 1 의 AP (110) 또는 도 3 의 AP (300) 의 일 예일 수도 있다. 일부 다른 구현들에서, 송신 디바이스는 도 1 의 STA들 (120a-120i) 또는 도 2 의 STA (200) 중 임의의 것의 일 예일 수도 있다. 디코더 (420) 는 수신 디바이스에 포함되거나 또는 그에 대응할 수도 있다. 일부 구현들에서, 수신 디바이스는 도 1 의 AP (110) 또는 도 3 의 AP (300) 의 일 예일 수도 있다. 일부 다른 구현들에서, 수신 디바이스는 도 1 의 STA들 (120a-120i) 또는 도 2 의 STA (200) 중 임의의 것의 일 예일 수도 있다.
채널 (420) 은 인코더 (410) 와 디코더 (430) 사이의 임의의 통신 링크를 포함할 수도 있다. 일부 구현들에서, 채널 (420) 은 무선 통신 매체일 수도 있다. 일부 다른 구현들에서, 채널은 하나 이상의 유선 접속들 또는 물리적 매체들을 포함할 수도 있다. 채널 (420) 에서의 결함들은 채널 왜곡 (이를 테면 선형 왜곡, 다중-경로 효과들, 부가 백색 가우시안 잡음 (AWGN) 등) 을 도입할 수도 있다. 채널 결함들을 보상하기 위해, 인코더 (410) 는 에러 정정이 (RX) 데이터 (402) 를 복구하기 위해 디코더 (430) 에 의해 수행될 수도 있도록 채널 (420) 상으로 송신될 (TX) 데이터 (401) 를 인코딩할 수도 있다. 일부 구현들에서, 인코더 (410) 는 TX 데이터 (401) 를 하나 이상의 TX 코드워드들 (CW들) (412) 로 인코딩하기 위해 저밀도 패리티 검사 (LDPC) 코드를 사용할 수도 있다. 디코더 (430) 는 동일한 LDPC 코드를 사용하여 채널 (420) 을 통해 수신된 하나 이상의 RX 코드워드들 (422) 을 디코딩하고 RX 데이터 (402) 를 복구할 수도 있다. 채널 (420) 이 TX 코드워드들 (412) 에 에러들 (이를 테면 플립된 비트들) 을 도입하면, 디코더 (430) 는 LDPC 코드와 연관된 패리티 검사 행렬을 사용하여 RX 코드워드들 (422) 에서의 그러한 에러들을 검출 및 정정할 수도 있다.
상기 설명된 바와 같이, 기존 IEEE 802.11 표준들에 따라 동작하는 무선 통신 디바이스들은 5/6 코드 레이트를 갖는 길이가 1944 비트들인 LDPC 코드워드들을 생성할 수도 있다. 즉, LDPC 인코딩 프로세스는 유용한 데이터의 5 개의 비트들 ("시스테마틱 비트들" 로서 또한 지칭됨) 마다 6 개의 코드워드 비트들 (또는 1 개의 패리티 비트) 을 생성한다. 그러나, 무선 통신의 스루풋이 계속 확장됨에 따라, 더 높은 스루풋 통신을 지원하기 위해 더 높은 코드 레이트들이 필요할 수도 있다. 일부 구현들에서, 인코더 (410) 는 레거시 LDPC 코드들을 사용하여 생성된 LDPC 코드워드의 하나 이상의 비트들을 펑처링함으로써 더 높은 코드 레이트를 달성할 수도 있다. 예를 들어, 인코더 (410) 는 길이 1944 의 레이트 5/6 코드워드의 적어도 93 개의 비트들을 펑처링함으로써 레이트 ≥7/8 코드워드를 생성할 수도 있다. 즉, 1944 개의 총 코드워드 비트들 중, 단지 1851 개의 비트들만이 채널 (420) 상으로 (TX 코드워드들 (412) 로서) 송신될 수도 있다. 펑처링된 비트들은 시스테마틱 비트들, 패리티 비트들, 또는 이들의 임의의 조합을 포함할 수도 있다. 펑처링된 비트들은 이레이저들 (erasures) 로서 취급되고 이에 의해 디코더 (430) 에 의해 정정 또는 복구될 수도 있다. 그 결과, 디코더 (430) 는 (레이트 5/6 LDPC 코드를 사용하여) 각각의 TX 코드워드 (412) 의 1851 개의 비트들로부터 RX 데이터 (402) 의 1620 개의 비트들을 복구하여, 7/8 의 유효 코드 레이트를 초래할 수도 있다. 다른 예는 레거시 IEEE 802.11 레이트 5/6 LDPC 코드의 1944 개의 코드워드 비트들 중 96 개를 펑처링하여, 길이 1848 비트들의 새로운 코드워드를 초래하는 것이다. 결과의 코드는 레이트 1620/1848=0.8766 을 갖고, 이는 레이트 7/8 코드에 가깝다. 상기 설명된 바와 같이, 펑처링된 비트들의 실제 수 (이를 테면 93 또는 96 개의 비트들) 는 펑처링된 비트들의 수가 QAM 심볼에 의해 반송된 비트들의 수의 절반의 배수가 되도록 변조 차수의 함수일 수 있다.
일부 다른 구현들에서, 인코더 (410) 는 더 높은 코드 레이트들에 대해 최적화되는 새로운 LDPC 코드를 사용하여 TX 데이터 (401) 를 인코딩할 수도 있다. 예를 들어, 새로운 LDPC 코드는 (레거시 LDPC 코드들과 비교하여) 주어진 코드워드 길이에 대해 더 많은 수의 패리티 비트들을 인코딩하도록 최적화될 수도 있다. 일부 구현들에서, 새로운 LDPC 코드는 준순환 (QC) 패리티 검사 행렬에 기초할 수도 있다. 그러한 코드들은 QC LDPC 코드들로서 지칭될 수도 있다. QC LDPC 코드에 대한 패리티 검사 행렬은 기본 행렬 및 기본 행렬의 엘리먼트들을 확장하기 위한 확장 부분행렬들에 의해 표현될 수도 있다. 패리티 검사 행렬의 각각의 부분행렬은 1 이상인 순환 가중치 (circulant weight) 를 갖는 순환 순열 행렬 ("순환 행렬 (circulant matrix)" 로서 또한 지칭됨) 또는 모두 0 인 행렬에 대응할 수도 있다. 순환 가중치가 1 인 순환 순열 행렬의 경우, 순환 순열 행렬의 각각의 행 및 열은 단지 하나의 0 이 아닌 엘리먼트를 포함할 수도 있다. 그 결과, 순환 순열 행렬의 다중의 행들은 디코더 (430) 에 의해 병렬로 (또는 동시에) 프로세싱될 수도 있다.
도 5 는 저밀도 패리티 검사 (LDPC) 코드에 대한 예시적인 패리티 검사 행렬 (500) 을 도시한다. 일부 구현들에서, 패리티 검사 행렬 (500) 은 레이트 7/8 LDPC 코드워드들에 대해 최적화될 수도 있다. 예를 들어 도 4 를 참조하면, 패리티 검사 행렬 (500) (또는 패리티 검사 행렬 (500) 에 기초한 생성 행렬 (generator matrix)) 은 TX 데이터 (401) 를 TX 코드워드들 (412) 로 인코딩하기 위해 인코더 (410) 에 의해 사용될 수도 있다. 보다 구체적으로, 인코더 (410) 는 TX 데이터 (401) 의 다수 (M) 개의 시스테마틱 비트들에 대한 다수 (L) 개의 패리티 비트들을 생성하기 위해 패리티 검사 행렬 (500) 을 사용할 수도 있다. 패리티 비트들은 TX 코드워드 (412) 를 나타내는 다수 (N) 개의 코드워드 비트들을 생성하기 위해 시스테마틱 비트들에 부가된다. 디코더 (430) 는 RX 코드워드 (422) 의 개별 비트들을 검증 및 정정하기 위해 패리티 검사 행렬 (500) 을 사용할 수도 있다. 보다 구체적으로, 디코더 (430) 는 다음의 조건이 충족되면 RX 코드워드 (422) 가 유효한 코드워드라고 결정할 수도 있으며: H C T = 0, 여기서 H 는 패리티 검사 행렬 (500) 을 나타내고 c 는 RX 코드워드 (422) 를 나타내는 벡터이다.
일부 구현들에서, 패리티 검사 행렬 (500) 은 QC LDPC 코드의 기본 행렬에 대응할 수도 있다. 도 5 에 도시된 바와 같이, 기본 행렬은 5 개의 행들 (아래첨자 "R" 로 표시됨) 및 26 개의 열들 (아래첨자 "C" 로 표시됨) 을 포함한다. 패리티 검사 행렬 (500) 의 각각의 행과 열의 교차점에는 차원 ZxZ 의 부분행렬이 존재한다. 예를 들어, 패리티 검사 행렬 (500) 에서의 각각의 "-1" 엔트리는 모두 0 인 부분행렬로 확장될 수도 있고 패리티 검사 행렬 (500) 에서의 각각의 "P" 는 1 이상인 순환 가중치를 갖는 순환 순열 행렬로 확장될 수도 있다. 도 5 에 도시된 바와 같이, 모두 0 인 부분행렬은 패리티 검사 행렬 (500) 의 행 1 과 열들 1, 2, 9, 10, 16, 21, 23, 24 및 26 의 각각의 교차점에, 행 2 와 열들 8, 12, 14, 18, 20, 24, 25 및 26 의 각각의 교차점에, 행 3 과 열들 3, 6, 13, 17, 19, 22 및 26 의 각각의 교차점에, 행 4 와 열들 4, 5, 7, 11, 15, 22, 23 및 26 의 각각의 교차점에, 그리고 행 5 와 열들 1-20 및 22-24 의 각각의 교차점에 존재한다.
일부 구현들에서, 패리티 검사 행렬 (500) 의 각각의 순환 순열 행렬 (P) 은 1 과 동일한 순환 가중치를 가질 수도 있다. 도 6a 는 1 과 동일한 순환 가중치 및 사이즈 0 의 회전을 갖는 3x3 순환 순열 행렬 (600) 을 도시한다. 순환 순열 행렬 (600) 은 3x3 단위 행렬인 것에 유의한다. 도 6b 는 1 과 동일한 순환 가중치 및 사이즈 1 의 회전을 갖는 3x3 순환 순열 행렬 (610) 을 도시한다. 예를 들어 도 6a 를 참조하면, 순환 순열 행렬 (610) 은 순환 순열 행렬 (600) 의 각각의 열을 하나의 열만큼 우측으로 시프트 또는 "회전" 함으로써 생성될 수도 있다. 도 6c 는 1 과 동일한 순환 가중치 및 사이즈 2 의 회전을 갖는 3x3 순환 순열 행렬 (620) 을 도시한다. 예를 들어 도 6a 를 참조하면, 순환 순열 행렬 (620) 은 순환 순열 행렬 (600) 의 각각의 열을 2 개의 열들만큼 우측으로 시프트 또는 회전함으로써 생성될 수도 있다.
도 7 은 LDPC 코드에 대한 다른 예시적인 패리티 검사 행렬 (700) 을 도시한다. 일부 구현들에서, 패리티 검사 행렬 (700) 은 레이트 7/8 LDPC 코드워드들에 대해 최적화될 수도 있다. 예를 들어, 패리티 검사 행렬 (700) 은 도 5 의 패리티 검사 행렬 (500) 의 일 예일 수도 있다. 따라서, 패리티 검사 행렬 (700) 은 QC LDPC 코드의 기본 행렬에 대응할 수도 있다. 일부 구현들에서, 패리티 검사 행렬 (700) 에서의 각각의 엔트리는 차원 81x81 (Z=81) 의 부분행렬에 대응할 수도 있고, 여기서 각각의 "-1" 엔트리는 모두 0 인 부분행렬을 나타내고 양의 정수 값 (n) 을 갖는 각각의 엔트리는 1 과 동일한 순환 가중치 및 사이즈 n 의 회전을 갖는 순환 순열 행렬을 나타낸다. 도 6a 내지 도 6c 와 관련하여 설명된 바와 같이, 값 0 을 갖는 엔트리는 차원 81x81 의 단위 행렬을 나타낸다. 예를 들어 도 5 를 참조하면, 패리티 검사 행렬 (500) 에서의 각각의 "P" 엔트리는 81x81 순환 순열 행렬 P(n) 을 대체하여 도 7 의 패리티 검사 행렬 (700) 을 생성할 수도 있다.
도 7 에 도시된 바와 같이, 패리티 검사 행렬 (700) 의 행 1 과 열들 3-8, 11-15, 17-20, 22 및 25 의 각각의 교차점은 각각 사이즈 31, 11, 13, 46, 18, 17, 23, 11, 45, 34, 2, 10, 62, 58, 6, 0 및 1 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (700) 의 행 2 와 열들 1-7, 9-11, 13, 15-17, 19, 및 21-23 의 각각의 교차점은 각각 사이즈 15, 12, 7, 56, 0, 27, 43, 26, 0, 7, 48, 74, 29, 3, 69, 51, 0, 및 0 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (700) 의 행 3 과 열들 1, 2, 4, 5, 7-12, 14-16, 18, 20, 21, 23, 24 및 25 의 각각의 교차점은 각각 사이즈 74, 27, 8, 23, 48, 33, 30, 43, 74, 0, 19, 56, 49, 2, 0, 1, 0, 0 및 0 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (700) 의 행 4 와 열들 1-3, 6, 8-10, 12-14, 16-21, 24 및 25 의 각각의 교차점은 각각 사이즈 5, 29, 10, 1, 9, 40, 32, 40, 8, 72, 22, 45, 58, 25, 52, 9, 0 및 1 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (700) 의 행 5 와 열들 21, 25 및 26 의 각각의 교차점은 각각 사이즈 18, 68 및 0 의 회전을 갖는 순환 순열 행렬을 포함한다.
일부 구현들에서, LDPC 인코더 (이를 테면 도 4 의 인코더 (410)) 는 패리티 검사 행렬 (700), 또는 패리티 검사 행렬 (700) 과 연관된 생성 행렬을 사용하여, 예를 들어, 1701 개의 시스테마틱 비트들을 길이 1944 의 코드워드들로 인코딩하여, 7/8 코드 레이트를 달성할 수도 있다. 인코딩 프로세스는 1701 개의 시스테마틱 비트들마다 405 개의 패리티 비트들을 생성하여, 2106 개의 총 코드워드 비트들을 초래할 수도 있다. 일부 구현들에서, LDPC 인코더는 나머지 1944 개의 코드워드 비트들 (펑처링된 코드워드를 나타냄) 만이 통신 채널 (이를 테면 도 4 의 채널 (420)) 상으로 송신되도록 2106-비트 코드워드의 162 개의 코드워드 비트들을 펑처링할 수도 있다. 일부 양태들에서, 405 개의 패리티 비트들이 1 의 시작 인덱스를 갖는 것을 가정하여, 펑처링된 비트들은 LDPC 코드워드의 마지막 81 개의 시스테마틱 비트들 (도 7 에 음영으로 도시된, 패리티 검사 행렬 (700) 의 열 21 에 대응함) 및 인덱스 244 에서 인덱스 324 까지의 81 개의 패리티 비트들 (도 7 에 음영으로 도시된, 패리티 검사 행렬 (700) 의 열 25 에 대응함) 을 포함할 수도 있다. 일부 다른 양태들에서, 펑처링된 비트들은 임의의 수의 시스테마틱 비트들, 패리티 비트들, 또는 이들의 조합을 포함할 수도 있다.
도 8 은 LDPC 코드에 대한 다른 예시적인 패리티 검사 행렬 (800) 을 도시한다. 일부 구현들에서, 패리티 검사 행렬 (800) 은 레이트 7/8 LDPC 코드워드들에 대해 최적화될 수도 있다. 예를 들어, 패리티 검사 행렬 (800) 은 도 5 의 패리티 검사 행렬 (500) 의 일 예일 수도 있다. 따라서, 패리티 검사 행렬 (800) 은 QC LDPC 코드의 기본 행렬에 대응할 수도 있다. 일부 구현들에서, 패리티 검사 행렬 (800) 에서의 각각의 엔트리는 차원 1296x1296 (Z=1296) 의 부분행렬에 대응할 수도 있으며, 여기서 각각의 "-1" 엔트리는 모두 0 인 부분행렬을 나타내고 양의 정수 값 (n) 을 갖는 각각의 엔트리는 1 과 동일한 순환 가중치 및 사이즈 n 의 회전을 갖는 순환 순열 행렬을 나타낸다. 예를 들어 도 5 를 참조하면, 패리티 검사 행렬 (500) 에서의 각각의 "P" 엔트리는 1296x1296 순환 순열 행렬 P(n) 을 대체하여 도 8 의 패리티 검사 행렬 (800) 을 생성할 수도 있다.
도 8 에 도시된 바와 같이, 패리티 검사 행렬 (800) 의 행 1 과 열들 3-8, 11-15, 17-20, 22 및 25 의 각각의 교차점은 각각 사이즈 841, 173, 1147, 1018, 18, 17, 590, 902, 1179, 277, 326, 658, 1277, 301, 573, 0 및 1 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (800) 의 행 2 와 열들 1-7, 9-11, 13, 15-17, 19, 및 21-23 의 각각의 교차점은 각각 사이즈 582, 903, 331, 947, 81, 1161, 1096, 836, 567, 7, 129, 1289, 29, 1137, 231, 699, 0, 및 0 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (800) 의 행 3 과 열들 1, 2, 4, 5, 7-12, 14-16, 18, 20, 21, 23-25 의 각각의 교차점은 각각 사이즈 1208, 351, 818, 23, 1101, 681, 111, 691, 1127, 1215, 424, 947, 1102, 1055, 324, 163, 0, 0 및 0 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (800) 의 행 4 와 열들 1-3, 6, 8-10, 12-14, 16-21, 24 및 25 의 각각의 교차점은 각각 사이즈 86, 515, 496, 1054, 1224, 445, 599, 769, 332, 72, 589, 855, 382, 754, 214, 738, 0 및 1 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (800) 의 행 5 와 열들 21, 25 및 26 의 각각의 교차점은 각각 사이즈 180, 392 및 0 의 회전을 갖는 순환 순열 행렬을 포함한다.
일부 구현들에서, LDPC 인코더 (이를 테면 도 4 의 인코더 (410)) 는 패리티 검사 행렬 (800), 또는 패리티 검사 행렬 (800) 과 연관된 생성 행렬을 사용하여, 예를 들어, 27216 개의 시스테마틱 비트들을 길이 31104 의 코드워드들로 인코딩하여, 7/8 코드 레이트를 달성할 수도 있다. 인코딩 프로세스는 27216 개의 시스테마틱 비트들마다 6480 개의 패리티 비트들을 생성하여, 33696 개의 총 코드워드 비트들을 초래할 수도 있다. 일부 구현들에서, LDPC 인코더는 나머지 31104 개의 코드워드 비트들 (펑처링된 코드워드를 나타냄) 만이 통신 채널 (이를 테면 도 4 의 채널 (420)) 상으로 송신되도록 33696-비트 코드워드의 2592 개의 코드워드 비트들을 펑처링할 수도 있다. 일부 양태들에서, 6480 개의 패리티 비트들이 1 의 시작 인덱스를 갖는 것을 가정하여, 펑처링된 비트들은 LDPC 코드워드의 마지막 1296 개의 시스테마틱 비트들 (도 8 에 음영으로 도시된, 패리티 검사 행렬 (800) 의 열 21 에 대응함) 및 인덱스 3889 에서 인덱스 5184 까지의 1296 개의 패리티 비트들 (도 8 에 음영으로 도시된, 패리티 검사 행렬 (800) 의 열 25 에 대응함) 을 포함할 수도 있다. 일부 다른 양태들에서, 펑처링된 비트들은 임의의 수의 시스테마틱 비트들, 패리티 비트들, 또는 이들의 조합을 포함할 수도 있다.
Z=1296 의 부분행렬에 대한 (차원 5x26 의) 기본 행렬은 x=1,2,4,8 에 대해 리프팅 엔트리들 모듈로 x*81 를 취함으로서 리프팅 계수들이 상이한 (이를 테면 Z = 81, 162, 324, 및 648 에 대한 것과 같음) 다른 기본 행렬들을 생성하는데 사용될 수 있음을 알 수 있다. 예를 들어 도 8 을 참조하면, 패리티 검사 행렬 (800) 의 행 5, 열 25 에서의 엔트리는 값 392 를 갖는다. 392 모듈로 81 을 취하면, 값 68 이 산출되며, 이는 도 7 의 패리티 검사 행렬 (700) 의 행 5, 열 25 에 있는 값이다.
도 9 는 LDPC 코드에 대한 다른 예시적인 패리티 검사 행렬 (900) 을 도시한다. 일부 구현들에서, 패리티 검사 행렬 (900) 은 도 8 의 기본 행렬로부터 도출될 수도 있으며, 여기서 Z=162, M=3402, N=4212, 및 K=324 이다. 따라서, 패리티 검사 행렬 (900) 은 도 5 의 패리티 검사 행렬 (500) 의 일 예일 수도 있다. 일부 구현들에서, 패리티 검사 행렬 (900) 에서의 각각의 엔트리는 차원 162x162 의 부분행렬에 대응할 수도 있으며, 여기서 각각의 "-1" 엔트리는 모두 0 인 부분행렬을 나타내고 양의 정수 값 (n) 을 갖는 각각의 엔트리는 1 과 동일한 순환 가중치 및 사이즈 n 의 회전을 갖는 순환 순열 행렬을 나타낸다. 예를 들어, 도 5 를 참조하면, 패리티 검사 행렬 (500) 에서의 각각의 "P" 엔트리는 162x162 순환 순열 행렬 P(n) 을 대체하여 도 9 의 패리티 검사 행렬 (900) 을 생성할 수도 있다.
도 9 에 도시된 바와 같이, 패리티 검사 행렬 (900) 의 행 1 과 열들 3-8, 11-15, 17-20, 22 및 25 의 각각의 교차점은 각각 사이즈 31, 11, 13, 46, 18, 17, 104, 92, 45, 115, 2, 10, 143, 139, 87, 0 및 1 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (900) 의 행 2 와 열들 1-7, 9-11, 13, 15-17, 19, 및 21-23 의 각각의 교차점은 각각 사이즈 96, 93, 7, 137, 81, 27, 124, 26, 81, 7, 129, 155, 29, 3, 69, 51, 0, 및 0 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (900) 의 행 3 과 열들 1, 2, 4, 5, 7-12, 14-16, 18, 20, 21, 23-25 의 각각의 교차점은 각각 사이즈 74, 27, 8, 23, 129, 33, 111, 43, 155, 81, 100, 137, 130, 83, 0, 1, 0, 0 및 0 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (900) 의 행 4 와 열들 1-3, 6, 8-10, 12-14, 16-21, 24 및 25 의 각각의 교차점은 각각 사이즈 86, 29, 10, 82, 90, 121, 113, 121, 8, 72, 103, 45, 58, 106, 52, 90, 0 및 1 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (900) 의 행 5 와 열들 21, 25 및 26 의 각각의 교차점은 각각 사이즈 18, 68 및 0 의 회전을 갖는 순환 순열 행렬을 포함한다.
일부 구현들에서, LDPC 인코더 (이를 테면 도 4 의 인코더 (410)) 는 패리티 검사 행렬 (900), 또는 패리티 검사 행렬 (900) 과 연관된 생성 행렬을 사용하여, 예를 들어, 3402 개의 시스테마틱 비트들을 길이 3888 의 코드워드들로 인코딩하여, 7/8 코드 레이트를 달성할 수도 있다. 인코딩 프로세스는 3402 개의 시스테마틱 비트들마다 810 개의 패리티 비트들을 생성하여, 4212 개의 총 코드워드 비트들을 초래할 수도 있다. 일부 구현들에서, LDPC 인코더는 나머지 3888 개의 코드워드 비트들 (펑처링된 코드워드를 나타냄) 만이 통신 채널 (이를 테면 도 4 의 채널 (420)) 상으로 송신되도록 4212-비트 코드워드의 324 개의 코드워드 비트들을 펑처링할 수도 있다. 일부 양태들에서, 810 개의 패리티 비트들이 1 의 시작 인덱스를 갖는 것을 가정하여, 펑처링된 비트들은 LDPC 코드워드의 마지막 162 개의 시스테마틱 비트들 (도 9 에 음영으로 도시된, 패리티 검사 행렬 (900) 의 열 21 에 대응함) 및 인덱스 487 에서 인덱스 648 까지의 162 개의 패리티 비트들 (도 9 에 음영으로 도시된, 패리티 검사 행렬 (900) 의 열 25 에 대응함) 을 포함할 수도 있다. 일부 다른 양태들에서, 펑처링된 비트들은 임의의 수의 시스테마틱 비트들, 패리티 비트들, 또는 이들의 조합을 포함할 수도 있다.
도 10 은 LDPC 코드에 대한 다른 예시적인 패리티 검사 행렬 (1000) 을 도시한다. 일부 구현들에서, 패리티 검사 행렬 (1000) 은 도 8 의 기본 행렬로부터 도출될 수도 있으며, 여기서 Z=324, M=6804, N=8424, 및 K=648 이다. 따라서, 패리티 검사 행렬 (1000) 은 도 5 의 패리티 검사 행렬 (500) 의 일 예일 수도 있다. 일부 구현들에서, 패리티 검사 행렬 (1000) 에서의 각각의 엔트리는 차원 324x324 의 부분행렬에 대응할 수도 있으며, 여기서 각각의 "-1" 엔트리는 모두 0 인 부분행렬을 나타내고 양의 정수 값 (n) 을 갖는 각각의 엔트리는 1 과 동일한 순환 가중치 및 사이즈 n 의 회전을 갖는 순환 순열 행렬을 나타낸다. 예를 들어 도 5 를 참조하면, 패리티 검사 행렬 (500) 에서의 각각의 "P" 엔트리는 324x324 순환 순열 행렬 P(n) 을 대체하여 도 10 의 패리티 검사 행렬 (1000) 을 생성할 수도 있다.
도 10 에 도시된 바와 같이, 패리티 검사 행렬 (1000) 의 행 1 과 열들 3-8, 11-15, 17-20, 22 및 25 의 각각의 교차점은 각각 사이즈 193, 173, 175, 46, 18, 17, 266, 254, 207, 277, 2, 10, 305, 301, 249, 0 및 1 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (1000) 의 행 2 와 열들 1-7, 9-11, 13, 15-17, 19, 및 21-23 의 각각의 교차점은 각각 사이즈 258, 255, 7, 299, 81, 189, 124, 188, 243, 7, 129, 317, 29, 165, 231, 51, 0 및 0 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (1000) 의 행 3 과 열들 1, 2, 4, 5, 7-12, 14-16, 18, 20, 21, 23-25 의 각각의 교차점은 각각 사이즈 236, 27, 170, 23, 129, 33, 111, 43, 155, 243, 100, 299, 130, 83, 0, 163, 0, 0 및 0 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (1000) 의 행 4 와 열들 1-3, 6, 8-10, 12-14, 16-21, 24 및 25 의 각각의 교차점은 각각 사이즈 86, 191, 172, 82, 252, 121, 275, 121, 8, 72, 265, 207, 58, 106, 214, 90, 0 및 1 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (800) 의 행 5 와 열들 21, 25 및 26 의 각각의 교차점은 각각 사이즈 180, 68 및 0 의 회전을 갖는 순환 순열 행렬을 포함한다.
일부 구현들에서, LDPC 인코더 (이를 테면 도 4 의 인코더 (410)) 는 패리티 검사 행렬 (1000), 또는 패리티 검사 행렬 (1000) 과 연관된 생성 행렬을 사용하여, 예를 들어, 6804 개의 시스테마틱 비트들을 길이 7776 의 코드워드들로 인코딩하여, 7/8 코드 레이트를 달성할 수도 있다. 인코딩 프로세스는 6804 개의 시스테마틱 비트들마다 1620 개의 패리티 비트들을 생성하여, 8424 개의 총 코드워드 비트들을 초래할 수도 있다. 일부 구현들에서, LDPC 인코더는 나머지 3888 개의 코드워드 비트들 (펑처링된 코드워드를 나타냄) 만이 통신 채널 (이를 테면 도 4 의 채널 (420)) 상으로 송신되도록 8424-비트 코드워드의 648 개의 코드워드 비트들을 펑처링할 수도 있다. 일부 양태들에서, 1620 개의 패리티 비트들이 1 의 시작 인덱스를 갖는 것을 가정하여, 펑처링된 비트들은 LDPC 코드워드의 마지막 324 개의 시스테마틱 비트들 (도 10 에 음영으로 도시된, 패리티 검사 행렬 (1000) 의 열 21 에 대응함) 및 인덱스 973 에서 인덱스 1296 까지의 324 개의 패리티 비트들 (도 10 에 음영으로 도시된, 패리티 검사 행렬 (1000) 의 열 25 에 대응함) 을 포함할 수도 있다. 일부 다른 양태들에서, 펑처링된 비트들은 임의의 수의 시스테마틱 비트들, 패리티 비트들, 또는 이들의 조합을 포함할 수도 있다.
도 11 은 LDPC 코드에 대한 다른 예시적인 패리티 검사 행렬 (1100) 을 도시한다. 일부 구현들에서, 패리티 검사 행렬 (1100) 은 도 8 의 기본 행렬로부터 도출될 수도 있으며, 여기서 Z=648, M=13608, N=16848, 및 K=1296 이다. 따라서, 패리티 검사 행렬 (1100) 은 도 5 의 패리티 검사 행렬 (500) 의 일 예일 수도 있다. 일부 구현들에서, 패리티 검사 행렬 (1100) 에서의 각각의 엔트리는 차원 648x648 의 부분행렬에 대응할 수도 있으며, 여기서 각각의 "-1" 엔트리는 모두 0 인 부분행렬을 나타내고 양의 정수 값 (n) 을 갖는 각각의 엔트리는 1 과 동일한 순환 가중치 및 사이즈 n 의 회전을 갖는 순환 순열 행렬을 나타낸다. 예를 들어 도 5 를 참조하면, 패리티 검사 행렬 (500) 에서의 각각의 "P" 엔트리는 648x648 순환 순열 행렬 P(n) 을 대체하여 도 11 의 패리티 검사 행렬 (1100) 을 생성할 수도 있다.
도 11 에 도시된 바와 같이, 패리티 검사 행렬 (1100) 의 행 1 과 열들 3-8, 11-15, 17-20, 22 및 25 의 각각의 교차점은 각각 사이즈 193, 173, 499, 370, 18, 17, 590, 254, 531, 277, 326, 10, 629, 301, 573, 0 및 1 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (1100) 의 행 2 와 열들 1-7, 9-11, 13, 15-17, 19, 및 21-23 의 각각의 교차점은 각각 사이즈 582, 255, 331, 299, 81, 513, 448, 188, 576, 7, 129, 641, 29, 489, 231, 51, 0 및 0 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (1100) 의 행 3 과 열들 1, 2, 4, 5, 7-12, 14-16, 18, 20, 21, 23-25 의 각각의 교차점은 각각 사이즈 560, 351, 170, 23, 453, 33, 111, 43, 479, 567, 424, 299, 454, 407, 324, 163, 0, 0 및 0 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (1100) 의 행 4 와 열들 1-3, 6, 8-10, 12-14, 16-21, 24 및 25 의 각각의 교차점은 각각 사이즈 86, 515, 496, 406, 576, 445, 599, 121, 332, 72, 589, 207, 382, 106, 214, 90, 0 및 1 의 회전을 갖는 순환 순열 행렬을 포함하고; 패리티 검사 행렬 (1100) 의 행 5 와 열들 21, 25 및 26 의 각각의 교차점은 각각 사이즈 180, 392 및 0 의 회전을 갖는 순환 순열 행렬을 포함한다.
일부 구현들에서, LDPC 인코더 (이를 테면 도 4 의 인코더 (410)) 는 패리티 검사 행렬 (1100), 또는 패리티 검사 행렬 (1100) 과 연관된 생성 행렬을 사용하여, 예를 들어, 13608 개의 시스테마틱 비트들을 길이 15552 의 코드워드들로 인코딩하여, 7/8 코드 레이트를 달성할 수도 있다. 인코딩 프로세스는 13608 개의 시스테마틱 비트들마다 3240 개의 패리티 비트들을 생성하여, 16848 개의 총 코드워드 비트들을 초래할 수도 있다. 일부 구현들에서, LDPC 인코더는 나머지 15552 개의 코드워드 비트들 (펑처링된 코드워드를 나타냄) 만이 통신 채널 (이를 테면 도 4 의 채널 (420)) 상으로 송신되도록 16848-비트 코드워드의 1296 개의 코드워드 비트들을 펑처링할 수도 있다. 일부 양태들에서, 3240 개의 패리티 비트들이 1 의 시작 인덱스를 갖는 것을 가정하여, 펑처링된 비트들은 LDPC 코드워드의 마지막 648 개의 시스테마틱 비트들 (도 11 에 음영으로 도시된, 패리티 검사 행렬 (1100) 의 열 21 에 대응함) 및 인덱스 1945 에서 인덱스 2592 까지의 648 개의 패리티 비트들 (도 11 에 음영으로 도시된, 패리티 검사 행렬 (1100) 의 열 25 에 대응함) 을 포함할 수도 있다. 일부 다른 양태들에서, 펑처링된 비트들은 임의의 수의 시스테마틱 비트들, 패리티 비트들, 또는 이들의 조합을 포함할 수도 있다.
도 12 는 무선 통신 디바이스에 대한 예시적인 송신 (TX) 프로세싱 체인 (1200) 을 도시한다. TX 프로세싱 체인 (1200) 은 각각 도 2 및 도 3 의 트랜시버들 (210 또는 310) 중 하나의 예일 수도 있다. 따라서, TX 프로세싱 체인 (1200) 은 무선 통신 채널 상으로 TX 데이터 (1201) 를 송신하도록 구성될 수도 있다. TX 프로세싱 체인 (1200) 은 시스테마틱 인코더 (1210), 코드워드 펑처 (1220), 변조기 (1230), 역 이산 푸리에 변환 (1240), 및 송신기 (TX) (1250) 를 포함한다. 일부 구현들에서, TX 프로세싱 체인 (1200) 은 도 12 에 (간략화를 위해) 도시되지 않은 추가적인 컴포넌트들 또는 회로부를 포함할 수도 있다.
시스테마틱 인코더 (1210) 는 코드워드 (1202) 를 나타내는 다수 (N) 개의 코드워드 비트들을 생성하기 위해 TX 데이터 (1201) 의 다수 (M) 개의 비트들에 대해 시스테마틱 인코딩 동작 (systematic encoding operation) 을 수행한다. 일부 구현들에서, 시스테마틱 인코딩 동작은 LDPC 인코딩 동작일 수도 있다. 이와 같이, TX 데이터 (1201) 의 M 개의 비트들의 각각의 블록에 대해, 시스테마틱 인코더 (1210) 는 시스테마틱 부분 및 패리티 부분을 포함하는 결과적인 코드워드 (1202) 를 생성한다. 시스테마틱 부분은 TX 데이터 (1201) 의 M 개의 비트들 (시스테마틱 비트들로서 또한 지칭됨) 을 포함한다. 패리티 부분은 코드워드 (1202) 에 중복성을 부가하고, 그 코드워드 (1202) 의 디코딩에 사용될 수도 있는 하나 이상의 패리티 비트들을 포함한다. 패리티 부분의 길이는 시스테마틱 인코딩 동작을 수행하기 위해 시스테마틱 인코더 (1210) 에 의해 사용되는 LDPC 코드와 연관된 코딩 레이트에 의존한다.
일부 구현들에서, 시스테마틱 인코더 (1210) 는 5/6 코딩 레이트를 갖는 LDPC 코드를 구현할 수도 있다. 즉, 시스테마틱 인코더 (1210) 는 TX 데이터 (1201) 의 5 개의 비트들마다 6 개의 코드워드 비트들을 생성할 수도 있다. 일부 양태들에서, 시스테마틱 인코더 (1210) 는 IEEE 802.11 표준의 기존 버전들에서 설명되는 LDPC 코드 (본 명세서에서 "레거시" LDPC 코드로서 또한 지칭됨) 를 구현할 수도 있다. 예를 들어, 레거시 LDPC 코드는 5/6 코딩 레이트에 대해 최적화될 수도 있다. 그러한 구현들에서, 시스테마틱 인코더 (1210) 는 1944-비트 코드워드들 (1202) (N = 1944) 을 생성하기 위해 TX 데이터 (1201) 의 1620 개의 비트들 (M=1620) 의 블록들에 대해 시스테마틱 인코딩 동작을 수행할 수도 있다. 일부 다른 구현들에서, 시스테마틱 인코더 (1210) 는 (도 5 내지 도 11 을 참조하여 설명된 바와 같이) 더 높은 코딩 레이트들에 대해 최적화되는 LDPC 코드를 구현할 수도 있다. 그러한 구현들에서, 시스테마틱 인코더 (1210) 는 TX 데이터 (1201) 의 1701 개의 비트들 또는 그의 배수들 (이를 테면 M = 3402, 6804, 13608, 또는 27216) 의 블록들에 대해 시스테마틱 인코딩 동작을 수행할 수도 있다. 결과적인 코드워드들 (1202) 은 2106 개의 비트들 또는 그의 배수들 (이를 테면 N = 4212, 8424, 16848, 또는 33696) 을 포함할 수도 있다.
코드워드 펑처러 (1220) 는 펑처링된 코드워드 (1204) 를 생성하기 위해 코드워드 (1202) 의 하나 이상의 비트들을 펑처링한다. 펑처링된 비트들은 변조기 (1230) 로 전송되지 않으며, 따라서 무선 채널 상으로 송신되지 않는다. 그 결과, 펑처링된 코드워드 (1204) 의 길이 (L) 는 시스테마틱 인코더 (1210) 에 의해 출력된 코드워드 (1202) 의 길이보다 짧다 (L < N). 일부 구현들에서, 코드워드 펑처러 (1220) 는 5/6 보다 큰 유효 코드 레이트 (M/L) 를 달성하기 위해 다수 (K) 개의 코드워드 비트들을 펑처링할 수도 있다. 일부 양태들에서, 코드워드 펑처러 (1220) 는 (시스테마틱 인코더 (1210) 가 레거시 LDPC 코드를 구현할 때와 같이) 7/8 과 동일한 코드 레이트를 달성하기 위해 코드워드 (1202) 의 93 개의 비트들을 펑처링할 수도 있다. 일부 다른 양태들에서, 코드워드 펑처러 (1220) 는 (시스테마틱 인코더 (1210) 가 더 높은 코딩 레이트들에 대해 최적화된 LDPC 코드를 구현할 때와 같이) 7/8 과 동일한 유효 코드 레이트를 달성하기 위해, 코드워드 (1202) 의 162 개의 비트들, 또는 그의 배수 (이를 테면 K = 324, 648, 1296, 또는 2592) 를 펑처링할 수도 있다. 펑처링된 비트들이 송신되지 않기 때문에, 펑처링된 코드워드 (1204) 는 나머지 (펑처링되지 않은) 코드워드 비트들 (L = N-K) 만을 포함할 수도 있다.
변조기 (1230) 는 펑처링된 코드워드 (1204) 를 다수의 서브캐리어들로 변조하여 하나 이상의 TX 심볼들 (1206) 을 생성한다. 보다 구체적으로, 변조기 (1230) 는 펑처링된 코드워드 (1204) 의 비트들의 하나 이상의 서브세트를 주어진 변조 방식에 따라 변조 콘스텔레이션의 개별의 콘스텔레이션 포인트들에 맵핑한다. 각각의 TX 심볼 (1206) 은 변조 콘스텔레이션 상의 개별의 콘스텔레이션 포인트를 설명하는 진폭 및 위상 (복소수를 나타냄) 을 갖는다. 따라서, 각각의 TX 심볼 (1206) 은 변조 방식과 연관된 변조 차수에 의존하여 펑처링된 코드워드 (1204) 의 주어진 수의 비트들을 나타낸다. 예를 들어, 변조기 (1230) 가 이진 위상 시프트 키잉 (BPSK) 을 구현하면, 각각의 TX 심볼 (1206) 은 TX 데이터 (1201) 의 단일의 비트를 나타낼 것이다. 또한, 변조기 (1230) 가 m-진 직교 진폭 변조 (m-QAM) 를 구현하면, 각각의 TX 심볼 (1206) 은 TX 데이터 (1201) 의 n 개의 비트들을 나타낼 것이며, 여기서 m=2n 이다.
일부 구현들에서, 코드워드 펑처러 (1220) 에 의해 펑처링되는 코드워드 비트들의 수 (K) 는 또한 변조기 (1230) 에 의해 구현된 변조 방식과 연관된 변조 차수에 의존할 수도 있다. 일부 양태들에서, 펑처링된 코드워드 비트들의 수는 m-QAM 심볼에 의해 반송된 비트들의 수의 절반의 배수일 수도 있다 (K=*n/2, 여기서 는 정수 값이고 m=2n 임). 예를 들어, 레거시 LDPC 코드를 구현하는 경우, 코드워드 펑처러 (1220) 는 1944-비트 코드워드 (1202) 의 96 개의 비트들을 펑처링할 수도 있다. 결과적인 펑처링된 코드워드 (1204) 는 0.8766 과 동일한 유효 코드 레이트를 갖는다. 더 적은 코드워드 비트들이 송신되지만, 1944-비트 코드워드의 (93 개가 아닌) 96 개의 비트들을 펑처링하는 것은 예를 들어 4096-QAM (여기서 각각의 QAM 심볼은 펑처링된 코드워드 (1204) 의 12 개의 비트들을 나타냄) 과 같은 일부 변조 방식들에 대해 유리할 수도 있다. 다른 예로서, 코드워드 펑처러 (1220) 는 1944-비트 코드워드 (1202) 의 90 개의 비트들을 펑처링할 수도 있다. 그 결과, 각각의 펑처링된 코드워드 (1204) 는 (4096-QAM 에 대해) 7.5 QAM 심볼들에 의해 표현될 수 있거나, 또는 2 개의 펑처링된 코드워드들 (1204) 마다 15 QAM 심볼들에 의해 표현될 수 있다.
IDFT (1240) 는 TX 심볼들 (1206) 을 주파수 도메인에서 시간 도메인으로 변환한다. 예를 들어, 각각의 IDFT (1240) 는 TX 심볼들 (1206) 의 시퀀스를 나타내는 개별의 일련의 시간-도메인 샘플들을 생성할 수도 있다. 일부 양태들에서, IDFT (1240) 에 의해 출력된 일련의 샘플들은 시변 TX 신호 (1208) 를 생성하기 위해 병렬-직렬 변환기 (간략화를 위해 도시되지 않음) 에 의해 직렬화될 수도 있다. TX 신호 (1208) 는 무선 채널 상으로, 수신 디바이스로의 송신을 위해 송신기 (1205) 에 제공된다. 일부 양태들에서, 송신기 (1250) 는 하나 이상의 안테나들을 통한 송신을 위해 TX 신호 (1208) 를 증폭하기 위해 하나 이상의 전력 증폭기들 (간략화를 위해 도시되지 않음) 을 포함할 수도 있다.
도 13 은 무선 통신 디바이스에 대한 예시적인 수신 (RX) 프로세싱 체인 (1300) 을 도시한다. RX 프로세싱 체인 (1300) 은 각각 도 2 및 도 3 의 트랜시버들 (210 또는 310) 중 하나의 예일 수도 있다. 따라서, RX 프로세싱 체인 (1300) 은 무선 통신 채널 상으로 RX 데이터 (1308) 를 수신하도록 구성될 수도 있다. RX 프로세싱 체인 (1300) 은 수신기 (RX) (1310), 이산 푸리에 변환 (DFT) (1320), 복조기 (1330), 및 시스테마틱 디코더 (1340) 를 포함한다. 일부 구현들에서, RX 프로세싱 체인 (1300) 은 도 13 에 (간략화를 위해) 도시되지 않은 추가적인 컴포넌트들 또는 회로부를 포함할 수도 있다.
수신기 (1310) 는 송신 디바이스로부터, 무선 채널 상으로, 시간-도메인 RX 신호 (1302) 를 수신한다. 일부 양태들에서, 수신기 (1310) 는 수신된 RX 신호 (1302) 를 증폭하기 위해 하나 이상의 저잡음 증폭기들 (LNA들) 을 포함할 수도 있다. DFT (1320) 는 RX 신호 (1302) 를 시간 도메인에서 주파수 도메인으로 변환한다. 예를 들어, DFT (1320) 는 RX 신호 (1302) 를 나타내는 RX 심볼들 (1304) 의 시퀀스를 생성할 수도 있다. 일부 양태들에서, IDFT (1240) 에 의해 출력된 심볼 시퀀스는 RX 심볼들 (1304) 을 생성하기 위해 직렬-병렬 변환기 (간략화를 위해 도시되지 않음) 에 의해 병렬화될 수도 있다.
복조기 (1330) 는 펑처링된 코드워드 (1306) 를 복구하기 위해 RX 심볼들 (1304) 을 복조한다. 일부 구현들에서, 복조기 (1330) 는 도 12 의 변조기 (1230) 에 의해 수행된 변조를 반전 또는 실행 취소하도록 구성될 수도 있다. 도 12 를 참조하여 설명된 바와 같이, 각각의 RX 심볼 (1304) 은 주어진 변조 방식과 연관된 변조 콘스텔레이션 상의 개별의 포인트를 설명하는 진폭 및 위상 (복소수를 나타냄) 을 갖는다. 따라서, 각각의 RX 심볼 (1304) 은 변조 방식과 연관된 변조 차수에 의존하여 펑처링된 코드워드 (136) 의 주어진 수의 비트들을 나타낸다. 복조기 (1330) 는 펑처링된 코드워드 (1306) 를 나타내는 다수 (L) 개의 비트들을 복구하기 위해 RX 심볼들 (1304) 과 연관된 콘스텔레이션 포인트들을 디맵핑할 수도 있다.
시스테마틱 디코더 (1340) 는 RX 데이터 (1308) 를 복구하기 위해 펑처링된 코드워드 (1306) 에 대해 시스테마틱 디코딩 동작을 수행한다. 일부 구현들에서, 시스테마틱 디코더 (1340) 는 도 12 의 시스테마틱 인코더 (1210) 에 의해 수행된 시스테마틱 인코딩 동작을 반전 또는 실행 취소할 수도 있다. 예를 들어, 시스테마틱 디코딩 동작은 LDPC 디코딩 동작일 수도 있다. 도 12 를 참조하여 설명된 바와 같이, 시스테마틱 인코더 (1210) 는 M 개의 비트들의 TX 데이터 (1201) 를 N-비트 코드워드 (1202) 로서 인코딩하고, 코드워드 펑처러 (1220) 는 펑처링된 코드워드 (1204) 를 생성하기 위해 K 개의 비트들의 코드워드 (1202) 를 펑처링한다. 일부 구현들에서, 펑처링된 코드워드 (1306) 는 펑처링된 코드워드 (1204) 의 일 예일 수도 있다. 이와 같이, 펑처링된 코드워드 (1306) 는 다르게는 코드워드 (1202) 에 포함될 하나 이상의 펑처링된 코드워드 비트들 (시스테마틱 비트들, 패리티 비트들, 또는 이들의 임의의 조합을 포함함) 이 누락될 수도 있다.
시스테마틱 디코더 (1340) 는 누락된 비트들을 이레이저들로서 취급하고 시스테마틱 디코딩 동작 동안 원래 코드워드 (펑처링된 코드워드 비트들을 포함함) 를 복원할 수도 있다. 즉, LDPC 디코딩 프로세스의 일부로서, 시스테마틱 디코더 (1340) 는 K 개의 펑처링된 비트들을 복원하고 그들을 펑처링된 코드워드 (1306) 의 L 개의 코드워드 비트들에 부가하여 길이 N (여기서 N = L+K) 의 코드워드를 재생할 수도 있다. 도 12 를 참조하여 설명된 바와 같이, 코드워드는 시스테마틱 부분 및 패리티 부분을 포함한다. 시스테마틱 부분은 RX 데이터 (1308) 를 나타내는 다수 (M) 개의 시스테마틱 비트들을 포함한다. 패리티 부분은 중복성을 위해, 그리고 디코딩을 보조하기 위해, 코드워드에 부가되는 하나 이상의 패리티 비트들을 포함한다. 일부 양태들에서, 시스테마틱 디코더 (1340) 는 M 개의 시스테마틱 비트들만을 복구된 RX 데이터 (1308) 로서 출력할 수도 있다.
일부 구현들에서, 시스테마틱 디코더 (1340) 는 레거시 LDPC 코드를 구현할 수도 있다. 그러한 구현들에서, 시스테마틱 디코더 (1340) 는 RX 데이터 (1308) 의 1620 개의 비트들 (M = 1620) 의 블록들을 복구하기 위해 길이 1944 의 코드워드들에 대해 시스테마틱 디코딩 동작을 수행할 수도 있다. 일부 다른 구현들에서, 시스테마틱 디코더 (1340) 는 (도 5 내지 도 11 을 참조하여 설명된 바와 같이) 더 높은 코딩 레이트들에 대해 최적화되는 LDPC 코드를 구현할 수도 있다. 그러한 구현들에서, 시스테마틱 디코더 (1340) 는 RX 데이터 (1308) 의 1701 개의 비트들 또는 그의 배수들 (이를 테면 M = 3402, 6804, 13608, 또는 27216) 을 복구하기 위해, 길이 2106, 또는 그의 배수들 (이를 테면 N = 4212, 8424, 16848, 또는 33696) 의 코드워드들에 대해 시스테마틱 디코딩을 수행할 수도 있다.
도 14 는 데이터 인코딩을 위한 예시적인 동작 (1400) 을 도시하는 예시적인 흐름도를 도시한다. 예시적인 동작 (1400) 은 LDPC 인코더 또는 STA 또는 AP 와 같은 무선 통신 디바이스에 의해 수행될 수도 있다. AP 는 도 1 의 AP (110), 도 3 의 AP (300), 또는 임의의 다른 적합한 AP 일 수도 있다. STA 는 도 1 의 STA들 (120a-120i), 도 2 의 STA (200), 또는 임의의 다른 적합한 STA 중 임의의 것일 수도 있다.
무선 통신 디바이스는 다수 (M) 개의 시스테마틱 비트들을 획득한다 (1401). 무선 통신 디바이스는 LDPC 코드에 기초하여 코드워드로서 시스테마틱 비트들을 인코딩하고, 여기서 코드워드는 다수 (N) 개의 코드워드 비트들을 포함한다 (1402). 무선 통신 디바이스는 다수 (K) 개의 코드워드 비트들을 펑처링하고, 여기서 M/(N-K) > 5/6 이다 (1403). 무선 통신 디바이스는 N-K 개의 나머지 코드워드 비트들을, 무선 채널 상으로, 수신 디바이스에 송신한다 (1404). 펑처링된 코드워드 비트들은 하나 이상의 시스테마틱 비트들, 하나 이상의 패리티 비트들, 또는 이들의 조합을 포함할 수도 있다. 일부 구현들에서, LDPC 코드는 코딩 레이트 M/N=5/6 을 갖는 레거시 LDPC 코드일 수도 있다. 예를 들어, LDPC 코드는 길이 1944 의 코드워드를 생성하기 위해 1620 개의 시스테마틱 비트들을 인코딩하는데 사용될 수도 있으며, 여기서 90 개 이상의 코드워드 비트들이 펑처링된다. 일부 다른 구현들에서, LDPC 코드는 (이를 테면 도 5 내지 도 11 과 관련하여 설명된 바와 같이) 레이트 7/8 인코딩에 대해 최적화되는 새로운 LDPC 코드일 수도 있다.
도 15 는 데이터 인코딩을 위한 예시적인 동작 (1500) 을 도시하는 예시적인 흐름도를 도시한다. 예시적인 동작 (1500) 은 LDPC 인코더 또는 STA 또는 AP 와 같은 무선 통신 디바이스에 의해 수행될 수도 있다. AP 는 도 1 의 AP (110), 도 3 의 AP (300), 또는 임의의 다른 적합한 AP 일 수도 있다. STA 는 도 1 의 STA들 (120a-120i), 도 2 의 STA (200), 또는 임의의 다른 적합한 STA 중 임의의 것일 수도 있다.
무선 통신 디바이스는 송신 디바이스로부터, 무선 채널 상으로, 다수 (L) 개의 코드워드 비트들을 수신한다 (1501). 무선 통신 디바이스는 L 개의 수신된 코드워드 비트들 및 LDPC 코드에 기초하여 코드워드를 복원하고, 여기서 코드워드는 L 개의 수신된 코드워드 비트들 및 하나 이상의 추가적인 코드워드 비트들을 포함한다 (1502). 무선 통신 디바이스는 코드워드에 기초하여 다수 (M) 개의 시스테마틱 비트들을 복구하고, 여기서 M/L > 5/6 이다 (1503). 하나 이상의 추가적인 비트들은 하나 이상의 시스테마틱 비트들, 하나 이상의 패리티 비트들, 또는 이들의 조합을 포함할 수도 있다. 일부 구현들에서, LDPC 코드는 5/6 과 동일한 코딩 레이트를 갖는 레거시 LDPC 코드일 수도 있다. 일부 다른 구현들에서, LDPC 코드는 (도 5 내지 도 11 과 관련하여 설명된 바와 같이) 레이트 7/8 인코딩에 대해 최적화되는 새로운 LDPC 코드일 수도 있다.
도 16 은 예시적인 무선 통신 디바이스 (1600) 의 블록도를 도시한다. 일부 구현들에서, 무선 통신 디바이스 (1600) 는 도 14 를 참조하여 상기 설명된 프로세스 (1400) 를 수행하도록 구성될 수도 있다. 무선 통신 디바이스 (1600) 는 도 2 의 STA (200) 또는 도 3 의 AP (300) 의 예시적인 구현일 수 있다. 예를 들어, 무선 통신 디바이스 (1600) 는 적어도 하나의 프로세서 및 적어도 하나의 모뎀 (예를 들어, Wi-Fi (IEEE 802.11) 모뎀 또는 셀룰러 모뎀) 을 포함하는 칩, SoC, 칩셋, 패키지 또는 디바이스일 수 있다.
무선 통신 디바이스 (1600) 는 수신 컴포넌트 (1610), 통신 관리기 (1620), 및 송신 컴포넌트 (1630) 를 포함한다. 통신 관리기 (1620) 는 코드워드 인코딩 컴포넌트 (1622) 및 코드워드 펑처링 컴포넌트 (1624) 를 더 포함한다. 컴포넌트들 (1622 및 1624) 중 하나 이상의 부분들은 하드웨어 또는 펌웨어에서 적어도 부분적으로 구현될 수도 있다. 일부 구현들에서, 컴포넌트들 (1622 또는 1624) 중 적어도 일부는 메모리 (이를 테면 메모리 (240) 또는 메모리 (330)) 에 저장된 소프트웨어로서 적어도 부분적으로 구현된다. 예를 들어, 컴포넌트들 (1622 및 1624) 중 하나 이상의 부분들은 개별의 컴포넌트의 기능들 또는 동작들을 수행하기 위해 프로세서 (이를 테면 프로세서 (220) 또는 프로세서 (320)) 에 의해 실행가능한 비일시적 명령들 (또는 "코드") 로서 구현될 수 있다.
수신 컴포넌트 (1610) 는 하나 이상의 다른 무선 통신 디바이스들로부터, 무선 채널 상으로, RX 신호들을 수신하도록 구성된다. 통신 관리기 (1620) 는 하나 이상의 다른 무선 통신 디바이스들과의 무선 통신을 관리하도록 구성된다. 일부 구현들에서, 코드워드 인코딩 컴포넌트 (1622) 는 다수 (M) 개의 시스테마틱 비트들을 획득하고 LDPC 코드에 기초하여 코드워드로서 M 개의 시스테마틱 비트들을 인코딩할 수도 있고, 여기서 코드워드는 다수 (N) 개의 코드워드 비트들을 포함하고; 코드워드 펑처링 컴포넌트 (1624) 는 다수 (K) 개의 코드워드 비트들을 펑처링할 수도 있으며, 여기서 M/(N-K) > 5/6 이다. 송신 컴포넌트 (1330) 는 TX 신호들을, 무선 채널 상으로, 하나 이상의 다른 무선 통신 디바이스들에 송신하도록 구성된다. 일부 구현들에서, TX 신호들은 N-K 개의 나머지 코드워드 비트들을 반송할 수도 있다.
도 17 은 예시적인 무선 통신 디바이스 (1700) 의 블록도를 도시한다. 일부 구현들에서, 무선 통신 디바이스 (1700) 는 도 15 를 참조하여 상기 설명된 프로세스 (1500) 를 수행하도록 구성될 수도 있다. 무선 통신 디바이스 (1700) 는 도 2 의 STA (200) 또는 도 3 의 AP (300) 의 예시적인 구현일 수 있다. 예를 들어, 무선 통신 디바이스 (1700) 는 적어도 하나의 프로세서 및 적어도 하나의 모뎀 (예를 들어, Wi-Fi (IEEE 802.11) 모뎀 또는 셀룰러 모뎀) 을 포함하는 칩, SoC, 칩셋, 패키지 또는 디바이스일 수 있다.
무선 통신 디바이스 (1700) 는 수신 컴포넌트 (1710), 통신 관리기 (1720), 및 송신 컴포넌트 (1730) 를 포함한다. 통신 관리기 (1720) 는 코드워드 복원 컴포넌트 (1722) 및 시스테마틱 비트 복구 컴포넌트 (1724) 를 더 포함한다. 컴포넌트들 (1722 및 1724) 중 하나 이상의 부분들은 하드웨어 또는 펌웨어에서 적어도 부분적으로 구현될 수도 있다. 일부 구현들에서, 컴포넌트들 (1722 또는 1724) 중 적어도 일부는 메모리 (이를 테면 메모리 (240) 또는 메모리 (330)) 에 저장된 소프트웨어로서 적어도 부분적으로 구현된다. 예를 들어, 컴포넌트들 (1722 및 1724) 중 하나 이상의 부분들은 개별의 컴포넌트의 기능들 또는 동작들을 수행하기 위해 프로세서 (이를 테면 프로세서 (220) 또는 프로세서 (320)) 에 의해 실행가능한 비일시적 명령들 (또는 "코드") 로서 구현될 수 있다.
수신 컴포넌트 (1710) 는 하나 이상의 다른 무선 통신 디바이스들로부터, 무선 채널 상으로, RX 신호들을 수신하도록 구성된다. 일부 구현들에서, RX 신호들은 다수 (L) 개의 코드워드 비트들을 반송할 수도 있다. 통신 관리기 (1720) 는 하나 이상의 다른 무선 통신 디바이스들과의 무선 통신을 관리하도록 구성된다. 일부 구현들에서, 코드워드 복원 컴포넌트 (1722) 는 L 개의 수신된 코드워드 비트들 및 LDPC 코드에 기초하여 코드워드를 복원할 수도 있고, 여기서 코드워드는 L 개의 수신된 코드워드 비트들 및 하나 이상의 추가적인 코드워드 비트들을 포함하고; 시스테마틱 비트 복구 컴포넌트 (1724) 는 코드워드에 기초하여 다수 (M) 개의 시스테마틱 비트들을 복구할 수도 있으며, 여기서 M/L > 5/6 이다. 송신 컴포넌트 (1330) 는 TX 신호들을, 무선 채널 상으로, 하나 이상의 다른 무선 통신 디바이스들에 송신하도록 구성된다.
구현 예들은 다음의 넘버링된 조항들에서 설명된다:
1. 무선 통신 디바이스에 의해 수행된 무선 통신의 방법으로서,
다수 (M) 개의 시스테마틱 비트들을 획득하는 단계;
저밀도 패리티 검사 (LDPC) 코드에 기초하여 코드워드로서 M 개의 시스테마틱 비트들을 인코딩하는 단계로서, 코드워드는 다수 (N) 개의 코드워드 비트들을 포함하는, 상기 M 개의 시스테마틱 비트들을 인코딩하는 단계;
다수 (K) 개의 코드워드 비트들을 펑처링하는 단계로서, M/(N-K) > 5/6 인, 상기 다수 (K) 개의 코드워드 비트들을 펑처링하는 단계; 및
N-K 개의 나머지 코드워드 비트들을, 무선 채널 상으로, 수신 디바이스에 송신하는 단계를 포함한다.
2. 조항 1 의 방법에 있어서, M/(N-K) = 7/8 이다.
3. 조항 1 또는 조항 2 중 임의의 조항의 방법에 있어서, K 개의 펑처링된 코드워드 비트들은 하나 이상의 시스테마틱 비트들, 하나 이상의 패리티 비트들, 또는 이들의 조합을 포함한다.
4. 조항 1 내지 조항 3 중 임의의 조항의 방법은,
변조 방식에 따라 N-K 개의 나머지 코드워드 비트들을 변조하는 단계를 더 포함하고, 펑처링된 코드워드 비트들의 수 (K) 는 변조 방식과 연관된 변조 차수에 기초한다.
5. 조항 1 내지 조항 4 중 임의의 조항의 방법에 있어서, M/N = 5/6 이다.
6. 조항 1 내지 조항 5 중 임의의 조항의 방법에 있어서, M=1620, N=1944, 및 K ≥ 90 이다.
7. 조항 1 내지 조항 4 중 임의의 조항의 방법에 있어서, M 은 1701 의 배수이고, N 은 2106 의 배수이고, K 는 162 의 배수이다.
8. 조항 1 내지 조항 4 또는 조항 7 중 임의의 조항의 방법에 있어서, LDPC 코드는 5 개의 행들 및 24 개의 열들을 포함하는 기본 행렬과 연관되고, 기본 행렬의 각각의 행과 열의 교차점은 차원 ZxZ 의 개별의 부분행렬을 나타낸다.
9. 조항 1 내지 조항 4, 조항 7 또는 조항 8 중 임의의 조항의 방법에 있어서,
기본 행렬의 행 1 과 열들 1, 2, 9, 10, 16, 21, 23, 24, 및 26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고;
기본 행렬의 행 2 와 열들 8, 12, 14, 18, 20, 및 24-26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고;
기본 행렬의 행 3 과 열들 3, 6, 13, 17, 19, 22, 및 26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고;
기본 행렬의 행 4 와 열들 4, 5, 7, 11, 15, 22, 23, 및 26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고; 그리고
기본 행렬의 행 5 와 열들 1-20 및 22-24 의 각각의 교차점은 모두 0 인 부분행렬을 포함한다.
10. 조항 1 내지 조항 4 또는 조항 7 내지 조항 9 중 임의의 조항의 방법에 있어서, 기본 행렬의 나머지 부분행렬들의 각각은 순환 순열 행렬을 포함한다.
11. 무선 통신 디바이스로서,
하나 이상의 프로세서들; 및
하나 이상의 프로세서들에 커플링되고, 하나 이상의 프로세서들에 의해 실행될 경우, 무선 디바이스로 하여금, 조항 1 내지 조항 10 중 임의의 하나 이상의 조항들의 방법을 수행하게 하는 명령들을 포함하는 메모리를 포함한다.
12. 무선 통신 디바이스에 의해 수행된 무선 통신의 방법으로서,
송신 디바이스로부터, 무선 채널 상으로, 다수 (L) 개의 코드워드 비트들을 수신하는 단계;
L 개의 수신된 코드워드 비트들 및 저밀도 패리티 검사 (LDPC) 코드에 기초하여 코드워드를 복원하는 단계로서, 코드워드는 L 개의 수신된 코드워드 비트들 및 하나 이상의 추가적인 코드워드 비트들을 포함하는, 상기 코드워드를 복원하는 단계; 및
코드워드에 기초하여 다수 (M) 개의 시스테마틱 비트들을 복구하는 단계로서, M/L > 5/6 인, 상기 다수 (M) 개의 시스테마틱 비트들을 복구하는 단계를 포함한다.
13. 조항 12 의 방법에 있어서, M/L = 7/8 이다.
14. 조항 12 또는 조항 13 중 임의의 조항의 방법에 있어서, 하나 이상의 추가적인 코드워드 비트들은 하나 이상의 시스테마틱 비트들, 하나 이상의 패리티 비트들, 또는 이들의 조합을 포함한다.
15. 조항 12 내지 조항 14 중 임의의 조항의 방법에 있어서, LDPC 코드는 5/6 과 동일한 코드 레이트와 연관된다.
16. 조항 12 내지 조항 14 중 임의의 조항의 방법에 있어서, LDPC 코드는 5 개의 행들 및 24 개의 열들을 포함하는 기본 행렬과 연관되고, 기본 행렬의 각각의 행과 열의 교차점은 차원 ZxZ 의 개별의 부분행렬을 나타낸다.
17. 조항 12 내지 조항 14 또는 조항 16 중 임의의 조항의 방법에 있어서,
기본 행렬의 행 1 과 열들 1, 2, 9, 10, 16, 21, 23, 24, 및 26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고;
기본 행렬의 행 2 와 열들 8, 12, 14, 18, 20, 및 24-26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고;
기본 행렬의 행 3 과 열들 3, 6, 13, 17, 19, 22, 및 26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고;
기본 행렬의 행 4 와 열들 4, 5, 7, 11, 15, 22, 23, 및 26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고; 그리고
기본 행렬의 행 5 와 열들 1-20 및 22-24 의 각각의 교차점은 모두 0 인 부분행렬을 포함한다.
18. 조항 12 내지 조항 14, 조항 16 또는 조항 17 중 임의의 조항의 방법에 있어서, 기본 행렬의 나머지 부분행렬들의 각각은 순환 순열 행렬을 포함한다.
19. 조항 12 내지 조항 14 또는 조항 16 내지 조항 18 중 임의의 조항의 방법에 있어서, Z 는 81 의 배수이다.
20. 무선 통신 디바이스로서,
하나 이상의 프로세서들; 및
하나 이상의 프로세서들에 커플링되고, 하나 이상의 프로세서들에 의해 실행될 경우, 무선 디바이스로 하여금, 조항 12 내지 조항 19 중 임의의 하나 이상의 조항들의 방법을 수행하게 하는 명령들을 포함하는 메모리를 포함한다.
본 명세서에서 사용된 바와 같이, 아이템들의 리스트 "중 적어도 하나" 를 지칭하는 어구는, 단일 멤버들을 포함하여, 그 아이템들의 임의의 조합을 지칭한다. 예로서, "a, b, 또는 c 중 적어도 하나" 는 a, b, c, a-b, a-c, b-c, 및 a-b-c 를 커버하도록 의도된다.
본 명세서에 개시된 구현들과 관련하여 설명된 다양한 예시적인 로직들, 논리 블록들, 모듈들, 회로들 및 알고리즘 프로세스들은 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이들 양자의 조합들로서 구현될 수도 있다. 하드웨어와 소프트웨어의 상호교환가능성은 일반적으로 기능의 관점에서 설명되었으며, 상기 설명된 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들 및 프로세스들에 예시되었다. 그러한 기능이 하드웨어에서 구현되는지 또는 소프트웨어에서 구현되는지는 전체 시스템에 부과된 설계 제약들 및 특정 애플리케이션에 의존한다.
본 명세서에 개시된 양태들과 관련하여 설명된 다양한 예시적인 로직들, 논리 블록들, 모듈들 및 회로들을 구현하는데 사용되는 하드웨어 및 데이터 프로세싱 장치는 범용 단일- 또는 다중-칩 프로세서, 디지털 신호 프로세서 (DSP), 주문형 집적 회로 (ASIC), 필드 프로그래밍가능 게이트 어레이 (FPGA) 또는 다른 프로그래밍가능 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트들, 또는 본 명세서에서 설명된 기능들을 수행하도록 설계된 이들의 임의의 조합으로 구현 또는 수행될 수도 있다. 범용 프로세서는 마이크로프로세서, 또는 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 프로세서는 또한, 컴퓨팅 디바이스들의 조합, 이를 테면, 예를 들어, DSP 와 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 결합된 하나 이상의 마이크로프로세서들, 또는 임의의 다른 그러한 구성으로서 구현될 수도 있다. 일부 구현들에서, 특정 프로세스들 및 방법들은, 주어진 기능에 특정한 회로부에 의해 수행될 수도 있다.
하나 이상의 양태들에서, 설명된 기능들은, 본 명세서에 개시된 구조들 및 이들의 그 구조적 균등물들을 포함하여, 하드웨어, 디지털 전자 회로부, 컴퓨터 소프트웨어, 펌웨어에서, 또는 이들의 임의의 조합에서 구현될 수도 있다. 본 명세서에서 설명된 주제의 구현들은 또한, 하나 이상의 컴퓨터 프로그램들로서, 즉, 데이터 프로세싱 장치에 의한 실행을 위해 또는 데이터 프로세싱 장치의 동작을 제어하기 위해 컴퓨터 저장 매체들 상에서 인코딩된 컴퓨터 프로그램 명령들의 하나 이상의 모듈들로서 구현될 수 있다.
소프트웨어에서 구현되면, 그 기능들은 컴퓨터 판독가능 매체 상에 하나 이상의 명령들 또는 코드로서 저장 또는 이를 통해 송신될 수도 있다. 본 명세서에 개시된 방법 또는 알고리즘의 프로세스들은, 컴퓨터 판독가능 매체 상에 상주할 수도 있는 프로세서 실행가능 소프트웨어 모듈에서 구현될 수도 있다. 컴퓨터 판독가능 매체들은, 컴퓨터 프로그램을 일 장소로부터 다른 장소로 전송하도록 인에이블될 수 있는 임의의 매체를 포함하는 통신 매체들 및 컴퓨터 저장 매체들 양자 모두를 포함한다. 저장 매체들은, 컴퓨터에 의해 액세스될 수도 있는 임의의 이용가능한 매체들일 수도 있다. 한정이 아닌 예로서, 그러한 컴퓨터 판독가능 매체들은 RAM, ROM, EEPROM, CD-ROM 또는 다른 광학 디스크 스토리지, 자기 디스크 스토리지 또는 다른 자기 저장 디바이스들, 또는 원하는 프로그램 코드를 명령들 또는 데이터 구조들의 형태로 저장하는데 사용될 수도 있고 컴퓨터에 의해 액세스될 수도 있는 임의의 다른 매체를 포함할 수도 있다. 또한, 임의의 접속이 컴퓨터 판독가능 매체로 적절히 명명될 수 있다. 디스크 (disk) 및 디스크 (disc) 는, 본 명세서에서 사용된 바와 같이, 컴팩트 디스크 (CD), 레이저 디스크, 광학 디스크, 디지털 다기능 디스크 (DVD), 플로피 디스크, 및 블루 레이 디스크를 포함하고, 여기서 디스크 (disk) 들은 보통 데이터를 자기적으로 재생하는 한편, 디스크 (disc) 들은 레이저들로 데이터를 광학적으로 재생한다. 상기의 조합들이 또한 컴퓨터 판독가능 매체들의 범위 내에 포함되어야 한다. 추가적으로, 방법 또는 알고리즘의 동작들은 코드들 및 명령들 중 하나 또는 그 임의의 조합 또는 그 세트로서 머신 판독가능 매체 및 컴퓨터 판독가능 매체 상에 상주할 수도 있으며, 이 매체들은 컴퓨터 프로그램 제품에 통합될 수도 있다.
본 개시에서 설명된 구현들에 대한 다양한 수정들은 당업자에게 용이하게 자명할 수도 있으며, 본 명세서에서 정의된 일반적인 원리들은 본 개시의 사상 또는 범위로부터 일탈함없이 다른 구현들에 적용될 수도 있다. 따라서, 청구항들은 본 명세서에 나타낸 구현들로 한정되도록 의도되지 않으며, 본 명세서에 개시된 본 개시, 원리들 및 신규한 피처들과 부합하는 최광의 범위를 부여받아야 한다.
추가적으로, 당업자는, 용어들 "상부" 및 "하부" 가 도면들을 쉽게 설명하기 위해 때때로 사용되고 적절히 배향된 페이지 상에서 도면의 배향에 대응하는 상대적 포지션들을 표시하며, 구현된 바와 같이 임의의 디바이스의 적절한 배향을 반영하지 않을 수도 있음을 용이하게 이해할 것이다.
별도의 구현들의 컨텍스트에 있어서 본 명세서에서 설명된 소정의 피처들은 또한 단일 구현에서의 조합으로 구현될 수 있다. 반면, 단일 구현의 컨텍스트에 있어서 설명된 다양한 피처들은 또한, 다중의 구현들에서 별개로 또는 임의의 적합한 하위조합으로 구현될 수 있다. 더욱이, 비록 피처들이 소정의 조합들로 작용하는 것으로서 상기 설명되고 심지어 그와 같이 초기에 청구될 수도 있지만, 청구된 조합으로부터의 하나 이상의 피처들은 일부 경우들에 있어서 그 조합으로부터 삭제될 수 있으며, 청구된 조합은 하위조합 또는 하위조합의 변형예로 유도될 수도 있다.
유사하게, 동작들이 도면들에서 특정 순서로 도시되지만, 이는 바람직한 결과들을 달성하기 위해, 그러한 동작들이 나타낸 특정 순서로 또는 순차적인 순서로 수행되어야 하거나 또는 예시된 모든 동작들이 수행되어야 하는 것을 요구하는 것으로서 이해되지 않아야 한다. 또한, 도면들은 하나 이상의 예시적인 프로세스들을 플로우 다이어그램의 형태로 개략적으로 도시할 수도 있다. 하지만, 도시되지 않은 다른 동작들은 개략적으로 예시된 예시적인 프로세스들에 통합될 수 있다. 예를 들어, 하나 이상의 추가 동작들이 예시된 동작들 중 임의의 동작들 이전에, 그 이후에, 그와 동시에, 또는 그들 사이에서 수행될 수 있다. 소정의 상황들에서, 멀티태스킹 및 병렬 프로세싱이 유리할 수도 있다. 더욱이, 상기에서 설명된 구현들에서의 다양한 시스템 컴포넌트들의 분리는 그러한 분리를 모든 구현들에서 요구하는 것으로서 이해되지 않아야 하며, 설명된 프로그램 컴포넌트들 및 시스템들은 일반적으로 단일 소프트웨어 제품으로 함께 통합되거나 다중의 소프트웨어 제품들로 패키징될 수 있음이 이해되어야 한다. 추가적으로, 다른 구현들은 다음의 청구항들의 범위 내에 있다. 일부 경우들에서, 청구항들에 기재된 액션들은 상이한 순서로 수행될 수 있고 바람직한 결과들을 여전히 달성할 수 있다.
Claims (30)
- 무선 통신 디바이스에 의해 수행된 무선 통신의 방법으로서,
다수 (M) 개의 시스테마틱 비트들을 획득하는 단계;
저밀도 패리티 검사 (LDPC) 코드에 기초하여 코드워드로서 상기 M 개의 시스테마틱 비트들을 인코딩하는 단계로서, 상기 코드워드는 다수 (N) 개의 코드워드 비트들을 포함하는, 상기 M 개의 시스테마틱 비트들을 인코딩하는 단계;
다수 (K) 개의 상기 코드워드 비트들을 펑처링하는 단계로서, M/(N-K) > 5/6 인, 상기 다수 (K) 개의 상기 코드워드 비트들을 펑처링하는 단계; 및
N-K 개의 나머지 코드워드 비트들을, 무선 채널 상으로, 수신 디바이스에 송신하는 단계를 포함하는, 무선 통신의 방법. - 제 1 항에 있어서,
M/(N-K) = 7/8 인, 무선 통신의 방법. - 제 1 항에 있어서,
펑처링된 상기 K 개의 코드워드 비트들은 하나 이상의 시스테마틱 비트들, 하나 이상의 패리티 비트들, 또는 이들의 조합을 포함하는, 무선 통신의 방법. - 제 1 항에 있어서
변조 방식에 따라 상기 N-K 개의 나머지 코드워드 비트들을 변조하는 단계를 더 포함하고, 펑처링된 코드워드 비트들의 수 (K) 는 상기 변조 방식과 연관된 변조 차수에 기초하는, 무선 통신의 방법. - 제 1 항에 있어서,
M/N = 5/6 인, 무선 통신의 방법. - 제 5 항에 있어서,
M=1620, N=1944, 및 K ≥ 90 인, 무선 통신의 방법. - 제 1 항에 있어서,
M 은 1701 의 배수이고, N 은 2106 의 배수이고, K 는 162 의 배수인, 무선 통신의 방법. - 제 1 항에 있어서,
상기 LDPC 코드는 5 개의 행들 및 24 개의 열들을 포함하는 기본 행렬과 연관되고, 상기 기본 행렬의 각각의 행과 열의 교차점은 차원 ZxZ 의 개별의 부분행렬을 나타내는, 무선 통신의 방법. - 제 7 항에 있어서,
상기 기본 행렬의 행 1 과 열들 1, 2, 9, 10, 16, 21, 23, 24, 및 26 의 각각의 교차점은 모두 0 인 (all-zero) 부분행렬을 포함하고;
상기 기본 행렬의 행 2 와 열들 8, 12, 14, 18, 20, 및 24-26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고;
상기 기본 행렬의 행 3 과 열들 3, 6, 13, 17, 19, 22, 및 26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고;
상기 기본 행렬의 행 4 와 열들 4, 5, 7, 11, 15, 22, 23, 및 26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고; 그리고
상기 기본 행렬의 행 5 와 열들 1-20 및 22-24 의 각각의 교차점은 모두 0 인 부분행렬을 포함하는, 무선 통신의 방법. - 제 8 항에 있어서,
상기 기본 행렬의 나머지 부분행렬들의 각각은 순환 순열 행렬을 포함하는, 무선 통신의 방법. - 무선 통신 디바이스로서,
하나 이상의 프로세서들; 및
상기 하나 이상의 프로세서들에 커플링되고, 명령들을 포함하는 메모리를 포함하고,
상기 명령들은, 상기 하나 이상의 프로세서들에 의해 실행될 경우, 상기 무선 통신 디바이스로 하여금,
다수 (M) 개의 시스테마틱 비트들을 획득하게 하고;
저밀도 패리티 검사 (LDPC) 코드에 기초하여 코드워드로서 상기 M 개의 시스테마틱 비트들을 인코딩하게 하는 것으로서, 상기 코드워드는 다수 (N) 개의 코드워드 비트들을 포함하는, 상기 M 개의 시스테마틱 비트들을 인코딩하게 하고;
다수 (K) 개의 상기 코드워드 비트들을 펑처링하게 하는 것으로서, M/(N-K) > 5/6 인, 상기 다수 (K) 개의 상기 코드워드 비트들을 펑처링하게 하고; 그리고
N-K 개의 나머지 코드워드 비트들을, 무선 채널 상으로, 수신 디바이스에 송신하게 하는, 무선 통신 디바이스. - 제 11 항에 있어서,
상기 명령들의 실행은 또한, 상기 무선 통신 디바이스로 하여금,
변조 방식에 따라 상기 N-K 개의 나머지 코드워드 비트들을 변조하게 하고, 펑처링된 코드워드 비트들의 수 (K) 는 상기 변조 방식과 연관된 변조 차수에 기초하는, 무선 통신 디바이스. - 제 11 항에 있어서,
M=1620, N=1944, 및 K ≥ 90 인, 무선 통신 디바이스. - 제 11 항에 있어서,
M 은 1701 의 배수이고, N 은 2106 의 배수이고, K 는 162 의 배수이고, M/(N-K) = 7/8 인, 무선 통신 디바이스. - 제 11 항에 있어서,
상기 LDPC 코드는 5 개의 행들 및 24 개의 열들을 포함하는 기본 행렬과 연관되고, 상기 기본 행렬의 각각의 행과 열의 교차점은 차원 ZxZ 의 개별의 부분행렬을 나타내는, 무선 통신 디바이스. - 제 14 항에 있어서,
상기 기본 행렬의 행 1 과 열들 1, 2, 9, 10, 16, 21, 23, 24, 및 26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고;
상기 기본 행렬의 행 2 와 열들 8, 12, 14, 18, 20, 및 24-26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고;
상기 기본 행렬의 행 3 과 열들 3, 6, 13, 17, 19, 22, 및 26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고;
상기 기본 행렬의 행 4 와 열들 4, 5, 7, 11, 15, 22, 23, 및 26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고; 그리고
상기 기본 행렬의 행 5 와 열들 1-20 및 22-24 의 각각의 교차점은 모두 0 인 부분행렬을 포함하는, 무선 통신 디바이스. - 제 15 항에 있어서,
상기 기본 행렬의 나머지 부분행렬들의 각각은 순환 순열 행렬을 포함하는, 무선 통신 디바이스. - 무선 통신 디바이스에 의해 수행된 무선 통신의 방법으로서,
송신 디바이스로부터, 무선 채널 상으로, 다수 (L) 개의 코드워드 비트들을 수신하는 단계;
수신된 상기 L 개의 코드워드 비트들 및 저밀도 패리티 검사 (LDPC) 코드에 기초하여 코드워드를 복원하는 단계로서, 상기 코드워드는 상기 수신된 L 개의 코드워드 비트들 및 하나 이상의 추가적인 코드워드 비트들을 포함하는, 상기 코드워드를 복원하는 단계; 및
상기 코드워드에 기초하여 다수 (M) 개의 시스테마틱 비트들을 복구하는 단계로서, M/L > 5/6 인, 상기 다수 (M) 개의 시스테마틱 비트들을 복구하는 단계를 포함하는, 무선 통신의 방법. - 제 18 항에 있어서,
M/L = 7/8 인, 무선 통신의 방법. - 제 18 항에 있어서,
상기 하나 이상의 추가적인 코드워드 비트들은 하나 이상의 시스테마틱 비트들, 하나 이상의 패리티 비트들, 또는 이들의 조합을 포함하는, 무선 통신의 방법. - 제 18 항에 있어서,
상기 LDPC 코드는 5/6 과 동일한 코드 레이트와 연관되는, 무선 통신의 방법. - 제 18 항에 있어서,
상기 LDPC 코드는 5 개의 행들 및 24 개의 열들을 포함하는 기본 행렬과 연관되고, 상기 기본 행렬의 각각의 행과 열의 교차점은 차원 ZxZ 의 개별의 부분행렬을 나타내는, 무선 통신의 방법. - 제 22 항에 있어서,
상기 기본 행렬의 행 1 과 열들 1, 2, 9, 10, 16, 21, 23, 24, 및 26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고;
상기 기본 행렬의 행 2 와 열들 8, 12, 14, 18, 20, 및 24-26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고;
상기 기본 행렬의 행 3 과 열들 3, 6, 13, 17, 19, 22, 및 26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고;
상기 기본 행렬의 행 4 와 열들 4, 5, 7, 11, 15, 22, 23, 및 26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고; 그리고
상기 기본 행렬의 행 5 와 열들 1-20 및 22-24 의 각각의 교차점은 모두 0 인 부분행렬을 포함하는, 무선 통신의 방법. - 제 23 항에 있어서,
상기 기본 행렬의 나머지 부분행렬들의 각각은 순환 순열 행렬을 포함하는, 무선 통신의 방법. - 제 22 항에 있어서,
Z 는 81 의 배수인, 무선 통신의 방법. - 무선 통신 디바이스로서,
하나 이상의 프로세서들; 및
상기 하나 이상의 프로세서들에 커플링되고, 명령들을 포함하는 메모리를 포함하고,
상기 명령들은, 상기 하나 이상의 프로세서들에 의해 실행될 경우, 상기 무선 통신 디바이스로 하여금,
송신 디바이스로부터, 무선 채널 상으로, 다수 (L) 개의 코드워드 비트들을 수신하게 하고;
수신된 상기 L 개의 코드워드 비트들 및 저밀도 패리티 검사 (LDPC) 코드에 기초하여 코드워드를 복원하게 하는 것으로서, 상기 코드워드는 상기 수신된 L 개의 코드워드 비트들 및 하나 이상의 추가적인 코드워드 비트들을 포함하는, 상기 코드워드를 복원하게 하고; 그리고
상기 코드워드에 기초하여 다수 (M) 개의 시스테마틱 비트들을 복구하게 하는 것으로서, M/L > 5/6 인, 상기 다수 (M) 개의 시스테마틱 비트들을 복구하게 하는, 무선 통신 디바이스. - 제 26 항에 있어서,
상기 LDPC 코드는 5 개의 행들 및 24 개의 열들을 포함하는 기본 행렬과 연관되고, 상기 기본 행렬의 각각의 행과 열의 교차점은 차원 ZxZ 의 개별의 부분행렬을 나타내는, 무선 통신 디바이스. - 제 27 항에 있어서,
상기 기본 행렬의 행 1 과 열들 1, 2, 9, 10, 16, 21, 23, 24, 및 26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고;
상기 기본 행렬의 행 2 와 열들 8, 12, 14, 18, 20, 및 24-26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고;
상기 기본 행렬의 행 3 과 열들 3, 6, 13, 17, 19, 22, 및 26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고;
상기 기본 행렬의 행 4 와 열들 4, 5, 7, 11, 15, 22, 23, 및 26 의 각각의 교차점은 모두 0 인 부분행렬을 포함하고; 그리고
상기 기본 행렬의 행 5 와 열들 1-20 및 22-24 의 각각의 교차점은 모두 0 인 부분행렬을 포함하는, 무선 통신 디바이스. - 제 28 항에 있어서,
상기 기본 행렬의 나머지 부분행렬들의 각각은 순환 순열 행렬을 포함하는, 무선 통신 디바이스. - 제 27 항에 있어서,
Z 는 81 의 배수인, 무선 통신 디바이스.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202062956917P | 2020-01-03 | 2020-01-03 | |
US62/956,917 | 2020-01-03 | ||
US17/130,162 US11303303B2 (en) | 2020-01-03 | 2020-12-22 | Rate 7/8 low-density parity-check (LDPC) code |
US17/130,162 | 2020-12-22 | ||
PCT/US2020/066787 WO2021138182A1 (en) | 2020-01-03 | 2020-12-23 | Punctured qc-ldpc codes of rate 7/8 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220093002A true KR20220093002A (ko) | 2022-07-04 |
KR102489697B1 KR102489697B1 (ko) | 2023-01-18 |
Family
ID=76654047
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020227020793A KR102489697B1 (ko) | 2020-01-03 | 2020-12-23 | 레이트 7/8 의 펑처링된 qc-ldpc 코드들 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11303303B2 (ko) |
EP (1) | EP4085533A1 (ko) |
KR (1) | KR102489697B1 (ko) |
CN (1) | CN114902569B (ko) |
TW (1) | TW202133564A (ko) |
WO (1) | WO2021138182A1 (ko) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150118992A (ko) * | 2013-02-13 | 2015-10-23 | 퀄컴 인코포레이티드 | 높은 레이트, 높은 병렬성, 및 낮은 에러 플로어를 위해 준순환 구조들 및 펑처링을 사용하는 ldpc 설계 |
KR20180081727A (ko) * | 2015-11-12 | 2018-07-17 | 퀄컴 인코포레이티드 | 구조화된 저 밀도 패리티 체크 (ldpc) 코드들에 대한 펑처링 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9559722B1 (en) * | 2013-10-21 | 2017-01-31 | Marvell International Ltd. | Network devices and methods of generating low-density parity-check codes and performing corresponding encoding of data |
US10454499B2 (en) * | 2016-05-12 | 2019-10-22 | Qualcomm Incorporated | Enhanced puncturing and low-density parity-check (LDPC) code structure |
EP3477865B1 (en) * | 2016-08-19 | 2021-07-28 | Huawei Technologies Co., Ltd. | Basis matrix generating method, coding/decoding method and apparatus for ldpc codes |
KR20180107692A (ko) * | 2017-03-22 | 2018-10-02 | 삼성전자주식회사 | 통신 또는 방송 시스템에서 harq 적용시 전송 방법 및 장치 |
CN112204888B (zh) * | 2018-05-22 | 2024-08-09 | 华为技术有限公司 | 具有高效编码和良好误码平层特性的一类qc-ldpc码 |
-
2020
- 2020-12-22 US US17/130,162 patent/US11303303B2/en active Active
- 2020-12-23 TW TW109145689A patent/TW202133564A/zh unknown
- 2020-12-23 CN CN202080090643.3A patent/CN114902569B/zh active Active
- 2020-12-23 WO PCT/US2020/066787 patent/WO2021138182A1/en unknown
- 2020-12-23 EP EP20842886.2A patent/EP4085533A1/en active Pending
- 2020-12-23 KR KR1020227020793A patent/KR102489697B1/ko active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150118992A (ko) * | 2013-02-13 | 2015-10-23 | 퀄컴 인코포레이티드 | 높은 레이트, 높은 병렬성, 및 낮은 에러 플로어를 위해 준순환 구조들 및 펑처링을 사용하는 ldpc 설계 |
KR20180081727A (ko) * | 2015-11-12 | 2018-07-17 | 퀄컴 인코포레이티드 | 구조화된 저 밀도 패리티 체크 (ldpc) 코드들에 대한 펑처링 |
Also Published As
Publication number | Publication date |
---|---|
CN114902569B (zh) | 2023-06-16 |
TW202133564A (zh) | 2021-09-01 |
US11303303B2 (en) | 2022-04-12 |
CN114902569A (zh) | 2022-08-12 |
KR102489697B1 (ko) | 2023-01-18 |
EP4085533A1 (en) | 2022-11-09 |
US20210211143A1 (en) | 2021-07-08 |
WO2021138182A1 (en) | 2021-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102227250B1 (ko) | 코드를 인코딩 및 디코딩하기 위한 방법과 시스템 | |
US8638761B2 (en) | Low-latency interleaving for low-density parity-check (LDPC) coding | |
US11671115B2 (en) | High-rate long LDPC codes | |
US9003268B2 (en) | Generation and application of a sub-codebook of an error control coding codebook | |
CN108432167B (zh) | 对消息进行编码解码的装置、系统和计算机可读介质 | |
US20180278267A1 (en) | Method and apparatus for error correction coding in communication | |
CN106134085B (zh) | 发送方法、接收方法、发送装置以及接收装置 | |
US9363043B2 (en) | Generation and application of a sub-codebook of an error control coding codebook | |
JP2024003027A (ja) | 確率振幅シェーピング及び前方誤り制御コーディング | |
EP3602797B1 (en) | Puncturing of polar codes with complementary sequences | |
JP2015128290A (ja) | 送信装置、受信装置、送信方法および受信方法 | |
KR102489697B1 (ko) | 레이트 7/8 의 펑처링된 qc-ldpc 코드들 | |
KR20120127319A (ko) | 고 처리율 저밀도 패리티 체크 복호기 및 그의 복호화 방법 | |
US8713415B2 (en) | Method for generating codewords | |
JP7030932B2 (ja) | Ldpc符号の符号化および復号化のための方法およびシステム | |
KR20220122559A (ko) | 통신 시스템에서 LDPC(low-density parity-check) 부호에 기초한 복호 방법 및 장치 | |
KR20220151484A (ko) | 확장된 대역폭에서 자원들을 재사용하기 위한 장치 및 방법 | |
WO2017190555A1 (zh) | 一种基于单载波的数据传输方法和装置 | |
CN110741554A (zh) | 在移动通信中用于大码块尺寸的qc-ldpc码的移位系数表设计 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
A302 | Request for accelerated examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |