Clear Filters
Clear Filters

how to perform frequency shift or frequency correction in simulation using HDL NCO and LOOKUP table(LUT) in order to generate HDL code

3 views (last 30 days)
for the below mentioned exponential part contain code,
% 5MHz carrier
fs = 7.68;
tdw=LTE5_3_1.waveform;
%% SHOLDER REMOVING
shape5_out = conv(tdw,shape5);
%% UPSAMPLING AND LOW PASS FILTERING
fs3 = 491.52;
up5_out = interp(shape5_out,64);
%% NCO operation
fc4 = 40; %shift by 40 Mhz
for ii = 1:length(up5_out)
carr_1shifted(ii) = up5_out(ii).*exp(1i*2*pi*fc4/fs3*ii);
end
data_complex = complex(real(up5_out), imag(up5_out));
complex_timeseries = timeseries(data_complex);

Accepted Answer

Kranti Balaga
Kranti Balaga on 9 Jul 2023
Your logic can be replicated with the help of the NCO HDL followed by mulitplier. Similar application, we used to correct the frequency offset in our Simulink receivers. You can see here in the Coarse Frequency Compensator subsystem.

More Answers (0)

Categories

Find more on Code Generation in Help Center and File Exchange

Products


Release

R2023a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!