メインコンテンツ

nrSSBMeasurements

SSB に基づく物理レイヤー測定値

R2022b 以降

    説明

    meas = nrSSBMeasurements(ssbGrid,ncellid) は、TS 38.215 の Sections 5.1.1 および 5.1.3[1] で定義されているように、指定された同期信号ブロック (SSB) ssbGrid と物理レイヤー セル ID 番号 ncellid の物理レイヤー測定値を返します。返された構造体 meas には、SSS の基準信号受信パワー (RSRP)、および SSB の受信信号強度インジケーター (RSSI) と基準信号受信品質 (RSRQ) が含まれています。

    meas = nrSSBMeasurements(ssbGrid,ncellid,ibarSSB) は、DM-RS スクランブル初期化の時間依存部分 ibarSSB も指定します。ssbGrid 入力からの物理ブロードキャスト チャネル復調基準信号 (PBCH DM-RS) シンボルを RSRP の測定値に含めるには、この構文を使用します。

    meas = nrSSBMeasurements(___,EnablePhaseCorrection=phasecorrection) は、前のいずれかの構文の入力引数に加えて、SSB の測定で位相補正を有効にするか無効にするかを指定します。 (R2025a 以降)

    すべて折りたたむ

    1 つの受信アンテナに対して SSB を作成します。

    ssblock = zeros(240,4);

    セル ID および対応する PSS シンボルを設定します。

    ncellid = 17;
    pssSymbols = nrPSS(ncellid);
    ssblock(nrPSSIndices) = pssSymbols;

    SSS シンボルを生成します。

    sssSymbols = nrSSS(ncellid);
    ssblock(nrSSSIndices) = sssSymbols;

    ランダム コードワード、セル ID、およびスクランブリング シーケンスの位相 0 を使用して、PBCH 変調シンボルを生成します。

    cw = randi([0 1],864,1);
    v = 0;
    pbchSymbols = nrPBCH(cw,ncellid,v);
    pbchIndices = nrPBCHIndices(ncellid);
    ssblock(pbchIndices) = pbchSymbols;

    セル ID と DM-RS スクランブル初期化の時間依存部分を使用して、PBCH DM-RS シンボルを生成します。

    ibarSSB = 0;
    dmrsSymbols = nrPBCHDMRS(ncellid,ibarSSB);
    dmrsIndices = nrPBCHDMRSIndices(ncellid);
    ssblock(dmrsIndices) = dmrsSymbols;

    SS ブロックを OFDM 変調します。

    scs = 15;
    initialNSlot = 0;
    txWaveform = nrOFDMModulate(ssblock,scs,initialNSlot);

    時間領域波形を、S/N 比 10 dB の AWGN チャネルに渡します。

    snr = 10;
    rxWaveform = awgn(txWaveform,snr,"measured");

    受信した波形を復調して SSB を取得します。

    nrb = 20;
    ssbGrid = nrOFDMDemodulate(rxWaveform,nrb,scs,initialNSlot);

    SSB に基づいて、RSRP、RSSI、および RSRQ の測定値を取得します。

    meas1 = nrSSBMeasurements(ssbGrid,ncellid)
    meas1 = struct with fields:
        RSRPPerAntenna: 29.8709
        RSSIPerAntenna: 53.3522
        RSRQPerAntenna: -10.4710
    
    

    比較のために、RSRP の測定値に PBCH DM-RS シンボルを含めて nrSSBMeasurements 関数を再度呼び出します。

    meas2 = nrSSBMeasurements(ssbGrid,ncellid,ibarSSB)
    meas2 = struct with fields:
        RSRPPerAntenna: 29.9400
        RSSIPerAntenna: 53.3522
        RSRQPerAntenna: -10.4019
    
    

    入力引数

    すべて折りたたむ

    SSB グリッド。サイズが 240×4×R である複素数値配列として指定します。ここで、R は受信アンテナの数です。ssbGrid は単一の SSB を指定します。

    データ型: single | double
    複素数のサポート: あり

    物理レイヤーのセル ID 番号。0 ~ 1007 の整数として指定します。

    データ型: double

    DM-RS スクランブリング初期化の時間依存部分。0 ~ 7 の整数として指定します。この入力は、SS/PBCH ブロック インデックスの最下位ビット (LSB) と SS バースト構成のハーフフレーム番号に基づいて指定します。

    • ハーフフレームごとの SS/PBCH ブロックの数が 4 である場合、ibarSSB = iSSB + 4 × nhf になります。ここで、iSSB は SS/PBCH ブロック インデックスの 2 つの LSB (0 ~ 3) です。nhf は、フレーム内のハーフフレーム番号 (0、1) です。

    • ハーフフレームごとの SS/PBCH ブロックの数が 8 または 64 である場合、ibarSSB は SS/PBCH ブロック インデックスの 3 つの LSB (0 ~ 7) になります。

    データ型: double

    位相補正を有効にします。次のいずれかの logical 値として指定します。

    • 0 (false) — 位相補正を無効にします。

    • 1 (true) — 位相補正を有効にします。位相補正を有効にした場合、この関数は、同期エラーと周波数選択性チャネルに起因する受信波形内のタイミング オフセットを処理します。

    データ型: logical | double
    複素数のサポート: あり

    出力引数

    すべて折りたたむ

    SSB に基づく物理レイヤー測定値。次のフィールドを含む構造体として返されます。

    フィールド説明
    RSRPPerAntenna実数値列ベクトル1 ミリワットを基準として dBm 単位で表された、1 ohm の抵抗における RSRP 値のベクトル
    RSSIPerAntenna実数値列ベクトル

    1 ミリワットを基準として dBm 単位で表された、1 ohm の抵抗における RSSI 値のベクトル

    RSRQPerAntenna 実数値列ベクトル

    dB 単位で表された、RSRQ 値のベクトル

    これらの列ベクトルの行は、受信アンテナに対応します。

    データ型: struct

    参照

    [1] 3GPP TS 38.215. “NR; Physical layer measurements.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.

    拡張機能

    すべて展開する

    C/C++ コード生成
    MATLAB® Coder™ を使用して C および C++ コードを生成します。

    バージョン履歴

    R2022b で導入

    すべて展開する