Main Content

dvbs2ldpc

DVB-S.2 표준의 저밀도 패리티 검사(LDPC) 코드

설명

예제

H = dvbs2ldpc(r)은 디지털 비디오 방송 표준 DVB-S.2에서 코드율 r을 갖는 LDPC 코드의 패리티 검사 행렬 H를 반환합니다. 코드의 블록 길이는 64,800입니다.

H = dvbs2ldpc(r,outputFormat)은 출력 패리티 검사 행렬의 형식을 지정합니다.

예제

모두 축소

DVB-S.2 표준에서 코드율이 3/5인 LDPC 패리티 검사 행렬을 만듭니다.

p = dvbs2ldpc(3/5);

패리티 검사 행렬 p로부터 LDPC 인코더 구성 객체를 만듭니다. 패리티 검사 행렬의 차원은 (N-KN입니다. 구성 객체에서 BlockLength 속성은 N이고 NumInformationBits 속성은 K입니다. 객체의 속성을 표시합니다. 정보 비트 열 1개를 갖는 메시지를 인코딩합니다.

cfg = ldpcEncoderConfig(p)
cfg = 
  ldpcEncoderConfig with properties:

     ParityCheckMatrix: [25920x64800 logical]

   Read-only properties:
           BlockLength: 64800
    NumInformationBits: 38880
    NumParityCheckBits: 25920
              CodeRate: 0.6000

infobits = randi([0 1],cfg.NumInformationBits,1);
enc = ldpcEncode(infobits,cfg);

입력 인수

모두 축소

코드율로, 1/4, 1/3, 2/5, 1/2, 3/5, 2/3, 3/4, 4/5, 5/6, 8/9 또는 9/10로 지정됩니다.

데이터형: double

패리티 검사 행렬 H의 출력 형식으로, 'sparse' 또는 'indices'로 지정됩니다.

이 값을 'sparse'로 설정할 경우 H는 희소 형식의 논리형 행렬입니다. 이 값을 'indices'로 설정할 경우 HH에서 요소가 1인 행과 열의 인덱스를 정의하는 2열 행렬입니다.

데이터형: char | string

출력 인수

모두 축소

패리티 검사 행렬로, 행렬로 반환됩니다.

크기가 32,400×64,800인 디폴트 패리티 검사 행렬은 다음 표에 나와 있는 구조를 갖는 불규칙적 LDPC 코드에 대응됩니다.

각 행에서 1의 개수
16
2~324007

각 열에서 1의 개수
1~129608
12961~324003

32,401부터 64,800까지의 열은 하부 삼각 행렬을 형성합니다. 행렬의 주대각선상의 요소와 주대각선 바로 아래 하부대각선상의 요소만 1입니다. 이 LDPC 코드는 DVB-S.2 표준의 BCH 코드와 함께 사용되어 Shannon 한계로부터 약 0.7dB~1dB 범위에서 10–7 미만의 패킷 오류율을 달성합니다.

참고 문헌

[1] ETSI Standard EN 302 307 V1.4.1: Digital Video Broadcasting (DVB); Second generation framing structure, channel coding and modulation systems for Broadcasting, Interactive Services, News Gathering and other broadband satellite applications (DVB-S2), European Telecommunications Standards Institute, Valbonne, France, 2005-03.

확장 기능

버전 내역

R2007a에 개발됨