有很多方法可以实现您正在尝试做的事情。这是为您的框图编写代码的一种方法:
% define some simulation parameters
fs = 80e6; % sample rate of 80 MHz
f0 = 10e6; % frequency of your complex mixer
% generate the chirp with whatever parameters you need
t = 0:1/fs:1000*1/fs;
y = chirp(t,9e6,6.25e-6,11e6);
% add a bit of noise to make the simulation more realistic
% here we make the signal-to-noise ratio approximately 40 dB
y = awgn(y,40,'measured');
% apply the complex mixing
y2 = y.*exp(j.*2.*pi.*f0.*t);
% create an example lowpass filter and filter the signal to remove images
[b,a] = butter(8,0.1);
y3 = filter(b,a,y2);
% plot the signals to see what they look like
figure(1);
plot(t,y);
grid on;
title('Received Chirp Signal (time domain)');
figure(2);
plot(linspace(-fs/2,fs/2,length(y)),20.*log10(abs(fftshift(fft(y)))));
grid on;
title('Received Chirp Signal (frequency domain)');
xlabel('frequency (Hz)');
ylabel('dB');
axis([-fs/2 fs/2 -30 40]);
figure(3); hold on;
plot(t,real(y3));
plot(t,imag(y3),'r');
grid on;
title('Baseband Chirp Signal (time domain)');
figure(4);
plot(linspace(-fs/2,fs/2,length(y3)),20.*log10(abs(fftshift(fft(y3)))));
grid on;
title('Baseband Chirp Signal (frequency domain)');
xlabel('frequency (Hz)');
ylabel('dB');
axis([-fs/2 fs/2 -30 40]);
现在,您还询问了使用哪种低通滤波器设计。这完全取决于您要达到的目标,并且您需要指定一个过滤器来满足您的要求。在上面的示例中,我使用了 8 阶巴特沃斯设计。但通常使用 FIR 滤波器来实现线性相位响应。