一、什么是中頻采樣,什么是IQ采樣
射頻接收系統通常使用數字信號處理算法進行信號解調和分析,因此需要使用ADC對信號進行采樣。根據采樣頻率的不同,可以分為射頻直接采樣、中頻采樣、IQ采樣。射頻采樣和中頻采樣只需要一路ADC,采樣結果為一組數字序列,而IQ采樣需要兩路ADC,采樣結果為兩組數字序列。中頻采樣比射頻采樣對ADC的帶寬和采樣率要求更低,同時寬帶接收機的中頻頻率一般為固定頻率,故中頻采樣應用非常廣泛。中頻采樣的主要原理框圖如下:
圖1、中頻采樣框圖
IQ采樣能提供數字信號解調和分析算法中常見的IQ兩路數據,也有非常廣泛的應用。IQ采樣的主要原理框圖如下:
圖2、IQ采樣框圖
二、中頻采樣和IQ采樣的比較
中頻采樣與IQ采樣的主要區別包括采樣信號的載波頻率、采樣通道數、采樣率等。以中頻頻率70MHz帶寬10MHz信號為例,對兩種采樣方式進行比較。中頻信號的載波頻率為IF(實例為70MHz),最低頻率為IF-BW/2 (實例為65MHz),最高頻率為IF+BW/2 (實例為75MHz)。IQ信號為基帶信號,沒有載波,最低頻率為DC,最高頻率為BW/2(實例為5MHz)。如果都使用低通采樣,采樣率至少為模擬信號最高頻率的2倍,則中頻采樣的最低采樣率為2*IF+BW(實例為150MHz),IQ采樣的最低采樣率為BW(實例為10MHz)。
由此可見,IQ采樣的采樣率更低,即使考慮兩路采樣的因素,數據量仍然更小,故而在信號采集存儲和數字信號處理中具有優勢。
然而IQ采樣硬件結構更為復雜,同時IQ采樣對硬件的性能要求很高,理想的IQ采樣需要兩路信號幅度相等(即IQ兩路平衡),相位相差90度(即IQ兩路正交)。實際的硬件很難滿足IQ采樣的兩路平衡和正交要求,因而會引入額外的性能惡化。為了避免IQ采樣硬件的不平衡和非正交性帶來的性能惡化,有一種先中頻采樣再使用數字下變頻得到IQ數據的方法,可以算是中頻采樣和IQ采樣的結合。
三、儀表中常見的中頻采樣和IQ采樣
工程師對信號采樣的目的有很多,可能是為了信號解調和分析,也可能是為了將信號復現出來。例如設備在某電磁環境中工作異常,就可以用儀器將此電磁環境信號采集存儲,將采集數據帶回實驗室再使用儀器復現出來。
工程師在信號采集和回放過程中可能使用到的儀表有的是使用IQ采樣數據,有的是使用中頻采樣數據。如果不理解兩者的差異,很容易出現錯誤。
信號與頻譜分析儀是一種常見的射頻信號采集儀表。信號與頻譜分析儀一般具有模擬中頻輸出接口,可以連接采集卡進行采樣,得到的數據為單路中頻采樣數據,載波頻率為頻譜儀的中頻頻率。這種方式的優點是采集時間可以很長,采集時間由采集卡決定。同時,很多信號與頻譜分析儀也有保存IQ采樣數據文件的能力,保存的數據文件為兩路IQ采樣數據(可能是一個文件,但數據是兩路數據,例如以IQIQIQ的形式存儲)。一般信號與頻譜分析儀保存的IQ采樣數據文件的采樣點較少。
矢量信號源是一種常見的信號回放儀表。一般情況下,矢量信號源需要IQ采樣格式的數據文件進行信號回放。如果是中頻采樣的單路中頻采樣數據使用矢量信號源回放,就會出現不匹配的問題。為了解決這個問題,有兩種方案可供選擇:
1) 將中頻采樣信號直接作為IQ采樣信號中的一路,另一路不使用(值為零)
2) 將中頻采樣信號轉換為IQ采樣信號
其中方法一較為簡單,方法二需要一定的數字信號處理能力。方法一的主要缺點有:
1) 在矢量信號源上設置的頻率并非真實載波頻率,使用不直觀。真實載波頻率=儀表設置頻率±中頻頻率。例如采集的中頻70MHz帶寬10MHz的信號,如果希望回放時信號中心頻率為1GHz,矢量信號源的頻率不能設置為1GHz,而應該設置為930MHz或者1070MHz。
2) 產生的信號為雙邊帶信號,會在RF+IF、RF-IF各產生一路信號,其中一個邊帶為無用信號、干擾信號。例如實例中如果設置矢量信號源頻率為930MHz,那么在1GHz和860MHz都會產生帶寬為10MHz的信號。
3) 矢量信號源需要更高的采樣率、更高的信號帶寬,意味著更昂貴的儀表。例如中頻70MHz帶寬10MHz的信號,中頻采樣的采樣率需要150MHz,IQ采樣的采樣率為10MHz。
因此,方法二是更理想的選擇。
四、中頻采樣數據與IQ采樣數據的相互轉換
IQ采樣數據轉換為中頻采樣數據的過程,其實就是用數學運算實現IQ調制的過程。此過程只需要簡單的加法和乘法運算。
IF_Signal = I_signal*cos(a) + Q_signal*sin(a)
需要注意的是:由于IQ采樣的采樣率很低,中頻采樣需要的采樣率更高,在進行加法和乘法運算前,可能需要先提高IQ數據的采樣率。可以使用Matlab的重采樣函數resample(x,P,Q)來提高采樣率。
中頻采樣數據轉換為IQ采樣數據要相對更加復雜一點。中頻采樣數據可以通過數字下變頻轉換為IQ采樣數據。其主要原理框圖如下:
圖3、中頻采樣信號數字下變頻框圖
將中頻采樣數據轉換為IQ采樣數據的主要過程包括:數字下變頻、濾波、抽取。抽取是指采樣率降低的過程,因為IQ采樣需要的采樣率更低,因此一般都包含抽取。使用Matlab的數字信號處理工具包中的數字下變頻函數dsp.DigitalDownConverter,可以較為方便的將中頻采樣信號轉換為IQ采樣信號。
使用Matlab將中頻采樣數據轉換為IQ采樣數據的參考代碼關鍵部分如下:
clear;%構造一個數字下變頻函數,抽取系數為2,中頻50MHz,濾波器帶寬20MHz,帶內紋波0.5dB,帶外抑制60dB
hDDC = dsp.DigitalDownConverter(...
'DecimationFactor',2,...
'SampleRate', samplerate,...
'Bandwidth', 20e6,...
'StopbandAttenuation', 60,...
'PassbandRipple',0.5,...
'CenterFrequency',50e6);
% 進行數字下變頻,IF_Sample_Data為中頻采樣數據
IQ_Sample_Data = step(hDDC,IF_Sample_Data);
下面是數據轉換前后的信號頻譜圖對比,主要是載波頻率的搬移。載波頻率由中頻頻率轉換為DC。原始中頻采樣數據的頻譜,中頻為50MHz:
圖4、中頻采樣信號頻譜
轉換后IQ采樣信號頻譜沒有載波頻率,如下圖所示:
圖5、轉換為IQ采樣后的頻譜