Восстановите импульсную характеристику канала с помощью фильтров пути канала CDL

Восстановите импульсную характеристику канала и выполните оценку смещения по времени с помощью фильтров пути модели канала Clustered Delay Line (CDL) с профилем задержки CDL-D из раздела 7.7.1 TR 38.901.

Определите структуру строения канала с помощью nrCDLChannel Системный объект. Используйте профиль задержки CDL-D, разброс задержки 10 нс и скорость UE 15 км/ч:

v = 15.0;                    % UE velocity in km/h
fc = 4e9;                    % carrier frequency in Hz
c = physconst('lightspeed'); % speed of light in m/s
fd = (v*1000/3600)/c*fc;     % UE max Doppler frequency in Hz
 
cdl = nrCDLChannel;
cdl.DelayProfile = 'CDL-D';
cdl.DelaySpread = 10e-9;
cdl.CarrierFrequency = fc;
cdl.MaximumDopplerShift = fd;

Сконфигурируйте передающий массив как [M N P Mg Ng] = [2 2 2 1 1], представляющую 1 панель (Mg = 1, Ng = 1) с антенной решеткой 2 на 2 (M = 2, N = 2) и углами поляризации P = 2. Сконфигурируйте приемную антенную решетку как [M N P Mg Ng] = [1 1 2 1 1], представляющую одну пару поперечно-поляризованных совмещенных антенн.

cdl.TransmitAntennaArray.Size = [2 2 2 1 1];
cdl.ReceiveAntennaArray.Size = [1 1 2 1 1];

Создайте случайную форму волны длительностью 1 субкадр с 8 антеннами.

SR = 15.36e6;
T = SR * 1e-3;
cdl.SampleRate = SR;
cdlinfo = info(cdl);
Nt = cdlinfo.NumTransmitAntennas;
 
txWaveform = complex(randn(T,Nt),randn(T,Nt));

Передайте сигнал входа через канал.

[rxWaveform,pathGains] = cdl(txWaveform);

Получите фильтры пути, используемые в фильтрации каналов.

pathFilters = getPathFilters(cdl);

Выполните оценку смещения по времени, используя nrPerfectTimingEstimate.

[offset,mag] = nrPerfectTimingEstimate(pathGains,pathFilters);

Постройте график величины импульсной характеристики канала.

[Nh,Nr] = size(mag);
plot(0:(Nh-1),mag,'o:');
hold on;
plot([offset offset],[0 max(mag(:))*1.25],'k:','LineWidth',2);
axis([0 Nh-1 0 max(mag(:))*1.25]);
legends = "|h|, antenna " + num2cell(1:Nr);
legend([legends "Timing offset estimate"]);
ylabel('|h|');
xlabel('Channel impulse response samples');

Figure contains an axes. The axes contains 3 objects of type line. These objects represent |h|, antenna 1, |h|, antenna 2, Timing offset estimate.

См. также

Функции