주요 콘텐츠

nrRateMatchLDPC

LDPC(저밀도 패리티 검사) 레이트 매칭

설명

out = nrRateMatchLDPC(in,outlen,rv,mod,nLayers)는 입력 데이터 행렬 in에 대해 길이 outlen의 레이트 매칭 출력을 반환합니다. 입력값 rv는 중복 버전, mod는 변조 유형, nLayers는 전송 계층의 수입니다. 소프트 입력에 사용되는 내부 버퍼에는 크기 제한이 없습니다.

nrRateMatchLDPC에는 TS 38.212 Section 5.4.2 및 5.5[1]의 내용에 따라 LDPC 인코딩 데이터 및 코드 블록 결합에 대해 정의된 비트 선택 및 인터리빙 단계가 포함됩니다.

예제

out = nrRateMatchLDPC(___,Nref)는 위에 열거된 구문에 나와 있는 입력 인수와 더불어 제한된 소프트 버퍼 크기 Nref에 대한 레이트 매칭 출력을 반환합니다. Nref는 TS 38.212 Section 5.4.2.1[1]에 정의되어 있습니다.

예제

모두 축소

길이가 3960인 2개의 LDPC 인코딩된 코드 블록에 대응하는 입력 데이터를 만듭니다.

encoded = ones(3960,2);

길이가 8000인 벡터에 대해 두 코드 블록의 LDPC 레이트 매칭을 수행합니다. 단일 전송 계층에 QPSK 변조와 제로 중복 버전을 사용합니다.

rv = 0;                 
mod = 'QPSK';    
nLayers = 1;
outlen = 8000;
ratematched = nrRateMatchLDPC(encoded,outlen,rv,mod,nLayers);
size(ratematched)
ans = 1×2

        8000           1

별개의 코드 블록에 정수 램프로 구성된 LDPC 인코딩 입력 데이터를 생성합니다. 길이가 3000인 벡터에 대해 코드 블록의 LDPC 레이트 매칭을 수행합니다. 단일 전송 계층에 QPSK 변조와 제로 중복 버전을 사용합니다. 레이트 매칭 출력 데이터의 위치를 플로팅합니다.

encoded = [0 1000 2000] + (1:66*10)';
rv = 0;           
mod = 'QPSK';    
nLayers = 1; 
outlen = 3000;
out = nrRateMatchLDPC(encoded,outlen,rv,mod,nLayers);
plot(out,'.-')

Figure contains an axes object. The axes object contains an object of type line.

입력 인수

모두 축소

LDPC 인코딩 입력 데이터로, 행렬로 지정됩니다. in의 각 열은 코드워드입니다. 입력 인수 in의 열 개수는 전송 블록에서 스케줄링된 코드 블록 개수와 같습니다. 각 열은 개별적으로 레이트 매칭되며 결과는 out에 결합됩니다.

데이터형: double | int8

레이트 매칭되고 결합된 출력 벡터의 길이로, 양의 정수로 지정됩니다. outlen은 TS 38.212 Section 5.4.2.1[1]의 내용에 따라 전송 블록에서 송신에 사용할 수 있는 코딩된 비트 수입니다.

변조 방식 mod는 변조 차수 Qm(변조 심볼당 사용되는 비트 수)을 결정합니다. outlennLayers × Qm의 배수가 아닌 경우, 함수는 출력 벡터의 길이를 가까운 nLayers × Qm의 다음 배수로 설정합니다.

데이터형: double

중복 버전으로, 0과 3 사이의 정수로 지정됩니다.

데이터형: double

변조 방식으로, 'pi/2-BPSK', 'QPSK', '16QAM', '64QAM', '256QAM' 또는 '1024QAM'으로 지정됩니다. 이 변조 방식은 코드워드의 변조 유형과 변조 심볼당 사용되는 비트 수를 결정합니다.

변조 방식심볼당 비트 수

'pi/2-BPSK'

1
'QPSK'2
'16QAM'4
'64QAM'6
'256QAM'8
'1024QAM'10

데이터형: char | string

전송 블록과 연관된 송신 계층의 개수로, 1과 4 사이의 정수로 지정됩니다.

데이터형: double

제한된 버퍼 레이트 매칭으로, 양의 정수로 지정됩니다. Nref는 TS 38.212 Section 5.4.2.1에 정의되어 있습니다.

데이터형: double

출력 인수

모두 축소

전송 블록에 대해 레이트 매칭되고 결합된 코드 블록으로, 길이가 outlen인 벡터로 반환됩니다.

데이터형: double | int8

참고 문헌

[1] 3GPP TS 38.212. “NR; Multiplexing and channel coding.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.

확장 기능

모두 확장

C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.

버전 내역

R2018b에 개발됨

모두 확장