このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
nrChannelEstimate
実用的なチャネル推定
構文
説明
例
物理レイヤーのセル ID 番号 42 の物理ブロードキャスト チャネル (PBCH) 復調基準信号 (DM-RS) シンボルを生成します。DM-RS スクランブリング初期化の時間依存部分は 0 です。
ncellid = 42; ibar_SSB = 0; dmrsSym = nrPBCHDMRS(ncellid,ibar_SSB);
PBCH DM-RS のリソース エレメント インデックスを取得します。
dmrsInd = nrPBCHDMRSIndices(ncellid);
生成された DM-RS シンボルを含むリソース グリッドを作成します。
nrb = 20; scs = 15; carrier = nrCarrierConfig('NSizeGrid',nrb,'SubcarrierSpacing',scs); nTxAnts = 1; txGrid = nrResourceGrid(carrier,nTxAnts); txGrid(dmrsInd) = dmrsSym;
指定された FFT 長とサイクリック プレフィックス長を使用してリソース グリッドを変調します。
ofdmInfo = nrOFDMInfo(carrier); txWaveform = nrOFDMModulate(carrier,txGrid);
指定されたプロパティを使用して TDL-C チャネル モデルを作成します。
channel = nrTDLChannel;
channel.NumReceiveAntennas = 1;
channel.SampleRate = ofdmInfo.SampleRate;
channel.DelayProfile = 'TDL-C';
channel.DelaySpread = 100e-9;
channel.MaximumDopplerShift = 20;
最大チャネル遅延を取得します。
chInfo = info(channel); maxChDelay = chInfo.MaximumChannelDelay;
チャネルから遅延サンプルをフラッシュするために、遅延サンプルの最大数と送信アンテナ数に対応するゼロを送信波形の末尾に追加します。パディングされた波形を TDL-C チャネル モデルを経由して送信します。
[rxWaveform,pathGains] = channel([txWaveform; zeros(maxChDelay,nTxAnts)]);
DM-RS シンボルを基準シンボルとして使用して、送信のタイミング オフセットを推定します。基準シンボルの OFDM 変調は、初期スロット番号 0 を使用します。
initialSlot = 0; offset = nrTimingEstimate(carrier,rxWaveform,txGrid);
推定されたタイミング オフセットに従って受信波形を同期します。
rxWaveform = rxWaveform(1+offset:end,:);
復調され同期された受信波形を含む受信リソース グリッドを作成します。
cpFraction = 0.55;
rxGrid = nrOFDMDemodulate(carrier,rxWaveform,'CyclicPrefixFraction',cpFraction);
実用的なチャネル推定を取得します。
H = nrChannelEstimate(rxGrid,dmrsInd,dmrsSym);
完全なチャネル推定を取得します。
pathFilters = getPathFilters(channel); H_ideal = nrPerfectChannelEstimate(carrier,pathGains,pathFilters,offset);
実用的なチャネル推定と完全なチャネル推定を比較します。
figure; subplot(1,2,1); imagesc(abs(H)); xlabel('OFDM Symbol'); ylabel('Subcarrier'); title('Practical Estimate Magnitude'); subplot(1,2,2); imagesc(abs(H_ideal)); xlabel('OFDM Symbol'); ylabel('Subcarrier'); title('Perfect Estimate Magnitude');
入力引数
受信したリソース グリッド。K×L×R の複素数配列として指定します。
K は NRB × 12 に等しいサブキャリアの数。ここで、NRB は 1 ~ 275 の範囲のリソース ブロックの数です。
L は、スロット内または基準グリッド内の OFDM シンボルの数。
基準シンボル
refSym
でnrChannelEstimate
を呼び出す場合、L は、拡張サイクリック プレフィックスでは 12、ノーマル サイクリック プレフィックスでは 14 にします。名前と値のペアの引数'
を使用して、サイクリック プレフィックス長を設定します。CyclicPrefix
'基準リソース グリッド
refGrid
でnrChannelEstimate
を呼び出す場合、L は基準グリッド内の OFDM シンボルの数である N と等しくなければなりません。
R は受信アンテナの数。
データ型: single
| double
複素数のサポート: あり
基準シンボルのインデックス。整数行列として指定します。行の数はリソース エレメントの数と同じです。すべてのインデックスを 1 つの列で指定することも、複数の列に分散させることもできます。refInd
と refSym
の要素数は同じでなければなりませんが、それらの次元は異なる場合があります。この関数は、refInd
と refSym
を基準グリッドにマッピングする前に、refGrid(refInd(:)) = refSym(:)
のようにそれらを列ベクトルに形状変更します。
refInd
の要素は、K×L×P のリソース配列をアドレス指定する 1 ベースの線形インデックスです。
K は NRB × 12 に等しいサブキャリアの数。ここで、NRB は 1 ~ 275 の範囲のリソース ブロックの数です。K は
rxGrid
の最初の次元と等しくなければなりません。L は、スロット内の OFDM シンボルの数。L は、拡張サイクリック プレフィックスでは 12、ノーマル サイクリック プレフィックスでは 14 にします。名前と値のペアの引数
'
を使用して、サイクリック プレフィックス長を設定します。CyclicPrefix
'P は、
refInd
の値の範囲から推定される基準信号のポートの数。
データ型: double
基準シンボル。複素行列として指定します。行の数はリソース エレメントの数と同じです。すべてのシンボルを 1 つの列で指定することも、複数の列に分散させることもできます。refInd
と refSym
の要素数は同じでなければなりませんが、それらの次元は異なる場合があります。この関数は、refInd
と refSym
を基準グリッドにマッピングする前に、refGrid(refInd(:)) = refSym(:)
のようにそれらを列ベクトルに形状変更します。
データ型: single
| double
複素数のサポート: あり
事前定義された基準グリッド。K×N×P の複素数配列として指定します。refGrid
は複数のスロットにまたがることができます。
K は NRB × 12 に等しいサブキャリアの数。ここで、NRB は 1 ~ 275 の範囲のリソース ブロックの数です。
N は、基準グリッド内の OFDM シンボルの数。
P は基準信号のポートの数。
データ型: single
| double
複素数のサポート: あり
特定の OFDM numerology のキャリア構成パラメーター。nrCarrierConfig
オブジェクトとして指定します。関数は、この入力の CyclicPrefix
プロパティのみを使用します。
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN
として指定します。ここで、Name
は引数名で、Value
は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、コンマを使用して名前と値をそれぞれ区切り、Name
を引用符で囲みます。
例: 'CyclicPrefix','extended'
は拡張サイクリック プレフィックスの長さを指定します。
サイクリック プレフィックス長。次のいずれかの値として指定します。
'normal'
— この値を使用して、ノーマル サイクリック プレフィックスを指定します。このオプションは、スロット内の 14 個の OFDM シンボルに対応します。'extended'
— この値を使用して、拡張サイクリック プレフィックスを指定します。このオプションは、スロット内の 12 個の OFDM シンボルに対応します。TS 38.211 の Section 4.2 で規定されている numerology では、拡張サイクリック プレフィックス長が 60 kHz のサブキャリア間隔にのみ適用されます。
メモ
carrier
入力を指定する場合は、carrier
入力の CyclicPrefix
プロパティを使用して、サイクリック プレフィックス長を指定します。この名前と値のペアの引数を carrier
入力と一緒に使用することはできません。
データ型: char
| string
基準信号のコード領域多重化 (CDM) 配置。非負の整数からなる 1 行 2 列の配列 [FD TD] として指定します。配列要素の FD と TD はそれぞれ、周波数領域での CDM 逆拡散の長さ (FD-CDM) と時間領域での CDM 逆拡散の長さ (TD-CDM) を指定します。要素の値が 1 である場合、CDM なしを指定したことになります。
例: CDMLengths=[2 1]
は、FD-CDM2 および TD-CDM なしを指定します。
例: CDMLengths=[1 1]
は、直交逆拡散なしを指定します。
データ型: double
内挿前の平均化ウィンドウ。非負の奇数からなる 1 行 2 列の配列 [F T] として指定します。配列要素の F と T は、関数が内挿前に平均化を実行する周波数領域と時間領域においてそれぞれ隣接する基準シンボルの数を指定します。F または T がゼロの場合、関数は、ノイズ分散推定 nVar
に基づいて、推定された S/N 比 (SNR) から平均値を決定します。
データ型: double
出力引数
実用的なチャネル推定。K×L×R×P の複素数配列として返されます。K×L×R は、受信したリソース グリッド rxGrid
の形状です。P は基準信号のポートの数です。
h
は rxGrid
からデータ型を継承します。
データ型: double
| single
ノイズ分散推定値は、非負のスカラー、または非負の値から成る NPRG 行 1 列の列ベクトル (PRGBundleSize
が空でない場合) (R2025a 以降) として返されます。NPRG は、PRGBundleSize
入力に基づいて送信される PRG の数です。
nVar
は、受信した基準シンボルで測定された加法性ホワイト ガウス ノイズの分散です。
データ型: double
追加情報。フィールド AveragingWindow
をもつ構造体として返されます。
パラメーター フィールド | 値 | 説明 |
---|---|---|
AveragingWindow | 1 行 2 列の配列 NPRG 行 2 列の配列 (R2025a 以降) | 内挿前の平均化ウィンドウ。1 行 2 列の配列、または NPRG 行 2 列の配列 ( 配列の行の形式は [F T] です。ここで、F と T は、関数が内挿前に平均化を実行した周波数領域と時間領域においてそれぞれ隣接する基準シンボルの数を示します。 |
拡張機能
C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。
nrChannelEstimate
関数は GPU 配列入力をサポートしますが、次の使用上の注意および制限があります。
この関数は、GPU 配列を受け入れて返しますが、GPU 上では実行されません。
詳細については、GPU での MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
バージョン履歴
R2019b で導入nrChannelEstimate
関数を使用すると、次のことが可能になります。
名前と値の入力引数
Interpolation
を'off'
に設定し、内挿をオフにする。内挿をオフにすると、この関数は、すべての端子の各受信アンテナのrefInd
入力またはrefGrid
入力で指定された基準シンボル位置に対してのみチャネル推定値を返します。この関数は、他のすべてのグリッド位置に対してゼロを返します。名前と値の入力引数
PRGBundleSize
を空でない値に設定し、サブバンド チャネルの推定を有効にする。この場合、この関数は、送信された PRG の数に基づいてnVar
およびinfo
の出力を返します。
nrChannelEstimate
関数に GPU 配列のサポートが追加されました。詳細については、GPU 配列を参照してください。
C/C++ コード生成において、名前と値の引数をコンパイル時の定数として指定するという制限がなくなりました。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)