メインコンテンツ

USRP X410 を使用した 400 MHz 6G 波形の調査

R2025a 以降

この例では、広帯域 6G 候補波形を生成、送信、キャプチャ、および解析する方法を示します。NI™ USRP™ X410 ソフトウェア無線 (SDR) を使用して、波形の送信およびキャプチャを行います。その後、この例では、キャプチャした波形のエラー ベクトル振幅 (EVM) を測定します。

Radio sending and receiving a 6G waveform with Wireless Testbench

波形パラメーターの設定

この例では、帯域幅およびサブキャリア間隔を制御可能な、pre-6G 直交周波数分割多重 (OFDM) 波形、または離散フーリエ変換拡散 OFDM (DFT-s-OFDM) 波形をモデル化します。5G NR 波形のアップリンクにおいて、DFT-s-OFDM は周波数領域でシンボルを拡散させ、OFDM と比較してピーク電力対平均電力比 (PAPR) を低減します。

まず、波形に対して以下のパラメーターを設定します。

bandwidth = 400; % MHz -- X410 max analog bandwidth is 400 MHz
subcarrierSpacing = 1920; % kHz
waveform = "OFDM"; % Waveform modulation

キャリア構成を作成します。帯域幅に基づいて必要なリソース ブロック数 (NSizeGrid) を計算します。

carrier = pre6GCarrierConfig;
carrier.SubcarrierSpacing = subcarrierSpacing;
channelBandwidth = bandwidth*1e6; % Bandwidth of RBs and guard carriers in Hz
carrier.NSizeGrid = floor((channelBandwidth/(carrier.SubcarrierSpacing*1e3))/12); % 12 subcarriers per RB

生成するサブフレームの数を指定します。

numSubframes = 1;
numSlots2Generate = numSubframes*carrier.SlotsPerSubframe;
disp("Generating "+numSlots2Generate+" slots")
Generating 128 slots

物理ダウンリンク共有チャネル (PDSCH) を全リソース ブロック (RB) 割り当て用に構成し、位相トラッキング基準信号 (PT-RS) を有効にします。

pdsch = pre6GPDSCHConfig;
pdsch.PRBSet = 0:(carrier.NSizeGrid-1);
pdsch.Modulation = "256QAM";
pdsch.EnablePTRS = true;

波形の生成

PDSCH 送信、復調基準信号 (DM-RS)、および PT-RS を含む波形を作成します。この例では、waveform"DFT-s-OFDM" に設定した場合、トランスフォーム プリコーディングが適用されます。DM-RS はトランスフォーム プリコーディングされません。

[txWaveform,ofdmInfo] = hpre6GPDSCHWaveform(carrier,pdsch,numSubframes,WaveformModulation=waveform);

送信する波形から得られたスペクトルをプロットします。

txSA = spectrumAnalyzer;
txSA.SampleRate = ofdmInfo.SampleRate;
txSA.Title = "Generated 6G Candidate Waveform";
txSA(txWaveform)

SDR パラメーターの構成

この例では、USRP X410 SDR を使用して 6G 候補波形を連続的に送信し、その後、送信した波形をキャプチャします。Radio Setup (Wireless Testbench)ウィザードを使用して、Wireless Testbench™ で使用する無線機の接続および設定を行います。

[更新] をクリックして、保存済みの無線機セットアップ構成の名前でドロップダウン メニューを更新します。その後、この例で使用する無線機を選択します。

savedRadioConfigurations = radioConfigurations;
options = cellstr({savedRadioConfigurations.Name});
deviceName = options(1) ;

波形を送受信する搬送波周波数を指定します。USRP X410 の有効な搬送波周波数範囲は、1 MHz ~ 8 GHz です。

carrierFrequency = 3.25; % GHz

送信ポートと受信ポートの両方のゲインとして gain を設定します。キャプチャした波形が単なるノイズに見える場合は、その波形がクリッピングしている可能性があるため、ゲインを下げてみてください。

gain = 45;

送信ポートとキャプチャ ポートを指定します。この例では、送信ポートとキャプチャ ポートは、30 dB の減衰器が取り付けられたループバック ケーブルで接続されています。

txAntennaOpts = hTransmitAntennas(deviceName);
txAntenna = txAntennaOpts(1);

rxAntennaOpts = hCaptureAntennas(deviceName);
rxAntenna = rxAntennaOpts(1);

キャプチャ時間を生成されたサブフレーム数の長さの 2 倍に設定し、すべてのサブフレームが確実に連続してキャプチャされるようにします。

captureTime = (milliseconds(1)*numSubframes)*2;

送信波形と受信波形

basebandTransceiver (Wireless Testbench)オブジェクトを作成し、「SDR パラメーターの構成」セクションで設定した送信パラメーターおよびキャプチャ パラメーターで構成します。

if ~exist("sdrObj","var")
    sdrObj = basebandTransceiver(deviceName);
    sdrObj.CaptureDataType = class(txWaveform);
end

ハードウェアのサンプル レートを、hpre6GOFDMModulate 関数によって計算されたサンプル レートに設定します。hpre6GOFDMModulate 関数は、FFT 点の数とサブキャリア間隔からサンプル レートを計算します。この関数は、85% の最大占有率に基づいて FFT 点の数を決定します。FFT 点の数は 2 の整数乗でなければなりません。

sdrObj.SampleRate = ofdmInfo.SampleRate;

% Transmit parameters
sdrObj.TransmitAntennas = txAntenna;
sdrObj.TransmitRadioGain = gain;
sdrObj.TransmitCenterFrequency = carrierFrequency*1e9;

% Receive parameters
sdrObj.CaptureAntennas = rxAntenna;
sdrObj.CaptureRadioGain = gain;
sdrObj.CaptureCenterFrequency = sdrObj.TransmitCenterFrequency;

transmit(sdrObj,txWaveform,"continuous")
Loading bitstream to FPGA...
Loading bitstream to FPGA is now complete.
rxWaveform = capture(sdrObj,captureTime);

キャプチャした波形のスペクトルをプロットします。次のプロットの波形は、ループバック ケーブルおよび 30 dB の減衰器を使用してキャプチャされたものです。

rxSA = spectrumAnalyzer;
rxSA.SampleRate = ofdmInfo.SampleRate;
rxSA.Title = "Received 6G Candidate Waveform";
rxSA(rxWaveform)

送信アンテナ、キャプチャ アンテナ、またはサンプル レートなどのパラメーターを変更できるように、波形の送信を停止します。

stopTransmission(sdrObj)

EVM の測定

hpre6GMeasurePDSCHEVM 関数を使用して波形を解析します。この例では、この関数は以下を行います。

  • 受信波形の同期

  • 受信波形の復調

  • チャネルの推定

  • PDSCH シンボルのイコライズ

  • トランスフォーム デプリコーディングされたシンボルの復元 (必要に応じて)

  • 共通位相誤差 (CPE) の推定と補償

  • PDSCH EVM の計算

さらに、hpre6GMeasurePDSCHEVM 関数は、スロットごとの RMS およびピーク EVM の統計を出力し、サブキャリアごとおよびシンボルごとの RMS およびピーク EVM の図を提供します。

evmInfo = hpre6GPDSCHEVM(rxWaveform,carrier,pdsch,numSubframes);
Slot 0 PDSCH EVM, RMS: 2.255% Peak: 6.828%
Slot 1 PDSCH EVM, RMS: 2.298% Peak: 7.182%
Slot 2 PDSCH EVM, RMS: 2.180% Peak: 5.987%
Slot 3 PDSCH EVM, RMS: 2.193% Peak: 6.850%
Slot 4 PDSCH EVM, RMS: 2.197% Peak: 6.075%
Slot 5 PDSCH EVM, RMS: 2.225% Peak: 6.318%
Slot 6 PDSCH EVM, RMS: 2.204% Peak: 6.195%
Slot 7 PDSCH EVM, RMS: 2.154% Peak: 5.850%
Slot 8 PDSCH EVM, RMS: 2.254% Peak: 6.556%
Slot 9 PDSCH EVM, RMS: 2.282% Peak: 7.101%
Slot 10 PDSCH EVM, RMS: 2.176% Peak: 6.522%
Slot 11 PDSCH EVM, RMS: 2.204% Peak: 5.646%
Slot 12 PDSCH EVM, RMS: 2.202% Peak: 6.456%
Slot 13 PDSCH EVM, RMS: 2.102% Peak: 6.589%
Slot 14 PDSCH EVM, RMS: 2.218% Peak: 6.943%
Slot 15 PDSCH EVM, RMS: 2.236% Peak: 6.832%
Slot 16 PDSCH EVM, RMS: 2.130% Peak: 7.113%
Slot 17 PDSCH EVM, RMS: 2.183% Peak: 6.767%
Slot 18 PDSCH EVM, RMS: 2.185% Peak: 6.358%
Slot 19 PDSCH EVM, RMS: 2.230% Peak: 6.411%
Slot 20 PDSCH EVM, RMS: 2.336% Peak: 7.818%
Slot 21 PDSCH EVM, RMS: 2.185% Peak: 5.676%
Slot 22 PDSCH EVM, RMS: 2.190% Peak: 6.046%
Slot 23 PDSCH EVM, RMS: 2.277% Peak: 6.384%
Slot 24 PDSCH EVM, RMS: 2.249% Peak: 6.684%
Slot 25 PDSCH EVM, RMS: 2.154% Peak: 6.252%
Slot 26 PDSCH EVM, RMS: 2.172% Peak: 7.116%
Slot 27 PDSCH EVM, RMS: 2.203% Peak: 7.072%
Slot 28 PDSCH EVM, RMS: 2.265% Peak: 6.665%
Slot 29 PDSCH EVM, RMS: 2.179% Peak: 6.071%
Slot 30 PDSCH EVM, RMS: 2.258% Peak: 6.872%
Slot 31 PDSCH EVM, RMS: 2.220% Peak: 6.363%
Slot 32 PDSCH EVM, RMS: 2.194% Peak: 6.153%
Slot 33 PDSCH EVM, RMS: 2.168% Peak: 7.333%
Slot 34 PDSCH EVM, RMS: 2.215% Peak: 6.571%
Slot 35 PDSCH EVM, RMS: 2.231% Peak: 6.686%
Slot 36 PDSCH EVM, RMS: 2.234% Peak: 6.954%
Slot 37 PDSCH EVM, RMS: 2.201% Peak: 6.403%
Slot 38 PDSCH EVM, RMS: 2.251% Peak: 6.783%
Slot 39 PDSCH EVM, RMS: 2.217% Peak: 6.421%
Slot 40 PDSCH EVM, RMS: 2.178% Peak: 6.765%
Slot 41 PDSCH EVM, RMS: 2.162% Peak: 5.804%
Slot 42 PDSCH EVM, RMS: 2.242% Peak: 6.623%
Slot 43 PDSCH EVM, RMS: 2.161% Peak: 5.891%
Slot 44 PDSCH EVM, RMS: 2.205% Peak: 5.715%
Slot 45 PDSCH EVM, RMS: 2.250% Peak: 6.899%
Slot 46 PDSCH EVM, RMS: 2.168% Peak: 6.298%
Slot 47 PDSCH EVM, RMS: 2.230% Peak: 6.959%
Slot 48 PDSCH EVM, RMS: 2.179% Peak: 6.555%
Slot 49 PDSCH EVM, RMS: 2.158% Peak: 6.830%
Slot 50 PDSCH EVM, RMS: 2.190% Peak: 6.533%
Slot 51 PDSCH EVM, RMS: 2.123% Peak: 6.822%
Slot 52 PDSCH EVM, RMS: 2.139% Peak: 6.529%
Slot 53 PDSCH EVM, RMS: 2.177% Peak: 6.149%
Slot 54 PDSCH EVM, RMS: 2.141% Peak: 6.879%
Slot 55 PDSCH EVM, RMS: 2.121% Peak: 6.097%
Slot 56 PDSCH EVM, RMS: 2.268% Peak: 6.688%
Slot 57 PDSCH EVM, RMS: 2.212% Peak: 6.138%
Slot 58 PDSCH EVM, RMS: 2.248% Peak: 6.361%
Slot 59 PDSCH EVM, RMS: 2.271% Peak: 6.971%
Slot 60 PDSCH EVM, RMS: 2.166% Peak: 6.219%
Slot 61 PDSCH EVM, RMS: 2.196% Peak: 6.156%
Slot 62 PDSCH EVM, RMS: 2.125% Peak: 6.416%
Slot 63 PDSCH EVM, RMS: 2.171% Peak: 6.826%
Slot 64 PDSCH EVM, RMS: 2.194% Peak: 6.836%
Slot 65 PDSCH EVM, RMS: 2.175% Peak: 6.216%
Slot 66 PDSCH EVM, RMS: 2.140% Peak: 6.583%
Slot 67 PDSCH EVM, RMS: 2.253% Peak: 6.419%
Slot 68 PDSCH EVM, RMS: 2.187% Peak: 7.629%
Slot 69 PDSCH EVM, RMS: 2.261% Peak: 6.266%
Slot 70 PDSCH EVM, RMS: 2.221% Peak: 7.647%
Slot 71 PDSCH EVM, RMS: 2.230% Peak: 6.112%
Slot 72 PDSCH EVM, RMS: 2.205% Peak: 6.308%
Slot 73 PDSCH EVM, RMS: 2.337% Peak: 6.880%
Slot 74 PDSCH EVM, RMS: 2.187% Peak: 6.415%
Slot 75 PDSCH EVM, RMS: 2.298% Peak: 6.558%
Slot 76 PDSCH EVM, RMS: 2.131% Peak: 6.619%
Slot 77 PDSCH EVM, RMS: 2.316% Peak: 6.709%
Slot 78 PDSCH EVM, RMS: 2.212% Peak: 6.200%
Slot 79 PDSCH EVM, RMS: 2.230% Peak: 6.123%
Slot 80 PDSCH EVM, RMS: 2.159% Peak: 6.330%
Slot 81 PDSCH EVM, RMS: 2.221% Peak: 5.890%
Slot 82 PDSCH EVM, RMS: 2.219% Peak: 6.566%
Slot 83 PDSCH EVM, RMS: 2.202% Peak: 6.852%
Slot 84 PDSCH EVM, RMS: 2.128% Peak: 5.707%
Slot 85 PDSCH EVM, RMS: 2.162% Peak: 6.351%
Slot 86 PDSCH EVM, RMS: 2.167% Peak: 7.121%
Slot 87 PDSCH EVM, RMS: 2.385% Peak: 7.251%
Slot 88 PDSCH EVM, RMS: 2.211% Peak: 6.240%
Slot 89 PDSCH EVM, RMS: 2.226% Peak: 6.078%
Slot 90 PDSCH EVM, RMS: 2.258% Peak: 6.798%
Slot 91 PDSCH EVM, RMS: 2.216% Peak: 7.010%
Slot 92 PDSCH EVM, RMS: 2.146% Peak: 5.916%
Slot 93 PDSCH EVM, RMS: 2.230% Peak: 7.038%
Slot 94 PDSCH EVM, RMS: 2.165% Peak: 6.704%
Slot 95 PDSCH EVM, RMS: 2.187% Peak: 5.975%
Slot 96 PDSCH EVM, RMS: 2.258% Peak: 6.959%
Slot 97 PDSCH EVM, RMS: 2.217% Peak: 6.860%
Slot 98 PDSCH EVM, RMS: 2.133% Peak: 6.109%
Slot 99 PDSCH EVM, RMS: 2.162% Peak: 6.910%
Slot 100 PDSCH EVM, RMS: 2.181% Peak: 5.825%
Slot 101 PDSCH EVM, RMS: 2.137% Peak: 6.165%
Slot 102 PDSCH EVM, RMS: 2.133% Peak: 5.902%
Slot 103 PDSCH EVM, RMS: 2.203% Peak: 7.870%
Slot 104 PDSCH EVM, RMS: 2.152% Peak: 7.324%
Slot 105 PDSCH EVM, RMS: 2.134% Peak: 5.897%
Slot 106 PDSCH EVM, RMS: 2.330% Peak: 6.467%
Slot 107 PDSCH EVM, RMS: 2.186% Peak: 8.042%
Slot 108 PDSCH EVM, RMS: 2.204% Peak: 6.692%
Slot 109 PDSCH EVM, RMS: 2.179% Peak: 6.644%
Slot 110 PDSCH EVM, RMS: 2.156% Peak: 7.184%
Slot 111 PDSCH EVM, RMS: 2.107% Peak: 6.438%
Slot 112 PDSCH EVM, RMS: 2.270% Peak: 6.528%
Slot 113 PDSCH EVM, RMS: 2.131% Peak: 6.519%
Slot 114 PDSCH EVM, RMS: 2.185% Peak: 6.190%
Slot 115 PDSCH EVM, RMS: 2.261% Peak: 6.149%
Slot 116 PDSCH EVM, RMS: 2.225% Peak: 6.332%
Slot 117 PDSCH EVM, RMS: 2.194% Peak: 6.632%
Slot 118 PDSCH EVM, RMS: 2.179% Peak: 7.496%
Slot 119 PDSCH EVM, RMS: 2.421% Peak: 7.227%
Slot 120 PDSCH EVM, RMS: 2.224% Peak: 6.637%
Slot 121 PDSCH EVM, RMS: 2.173% Peak: 6.348%
Slot 122 PDSCH EVM, RMS: 2.220% Peak: 6.437%
Slot 123 PDSCH EVM, RMS: 2.264% Peak: 7.691%
Slot 124 PDSCH EVM, RMS: 2.225% Peak: 6.724%
Slot 125 PDSCH EVM, RMS: 2.199% Peak: 7.318%
Slot 126 PDSCH EVM, RMS: 2.316% Peak: 7.248%
Slot 127 PDSCH EVM, RMS: 2.237% Peak: 7.058%
Overall PDSCH EVM, RMS: 2.207% Peak: 8.042%

Figure contains an axes object. The axes object with title PDSCH EVM per Subcarrier, xlabel Subcarrier Number, ylabel EVM (%) contains 2 objects of type line. These objects represent RMS, Peak.

Figure contains an axes object. The axes object with title PDSCH EVM per Symbol, xlabel Symbol Number, ylabel EVM (%) contains 2 objects of type line. These objects represent RMS, Peak.

参考

(Wireless Testbench) | (Wireless Testbench)