一種i/q基帶信號發生器的製作方法
2023-10-05 05:56:54

本申請涉及信號發生器領域,尤其涉及一種i/q基帶信號發生器。
背景技術:
在軟體無線電或者通信、測試測量等領域,bit信息流經過數字調製(星座圖映射)後得到具有一定帶寬的基帶信號,基帶信號需要進一步進行信道濾波,以產生適合信道傳輸的信號,之後再進行一定比例的升採樣處理,然後經過DAC轉變為模擬信號。
現有的基帶信號發生器實現過程一般如圖1所示,輸入的bit信息流經過星座圖映射後得到i、q兩路符號數據,經信道濾波後得到具有相應帶寬的基帶信號,再經過一級半帶濾波器或者多級半帶濾波器進行升採樣,然後再經過CIC插值濾波器將i、q信號的採樣率提升到與DAC的採樣率一致,輸出信號經DAC轉換後得到i、q兩路正交的基帶信號。
現有技術中,星座圖映射後的符號數據在信道濾波後由於採取半帶濾波器和CIC濾波器的組合來實現升採樣率,只能支持整數倍的採樣率轉換,給基帶信號的符號率和DAC的採樣率選擇和定標帶來一定的限制,也就是說,基帶信號的符號率與DAC的採樣率之間必須滿足整數倍關係,使得基帶信號的符號率不能夠連續的進行設置;而且,由於現有技術採用了CIC濾波器,由於CIC濾波器的通帶增益存在不一致性,往往在CIC濾波器後面還需要增加一個補償濾波器用於補償CIC濾波器的通帶不平坦性,這就給實際的設計與實現增加了複雜度和工作量。
技術實現要素:
本申請提供一種i/q基帶信號發生器,可以連續的設置任意符號率,支持任意倍數的有理數採樣率轉換;不需要採取半帶濾波器和CIC濾波器,產生的i、q兩路基帶信號具有很好的正交性。
本申請提供的一種i/q基帶信號發生器,包括:
星座映射模塊,用於接收bit信息流,輸入的bit信息流經過星座圖映射後得到i、q兩路符號流數據,該兩路符號流數據互為正交;
信道濾波器,與所述星座映射模塊輸出端相連接,接收所述i、q兩路符號流數據,通過預調、頻帶選擇和濾波,輸出i、q兩路信號;
重採樣模塊,與所述信道濾波器輸出端相連接,接收所述信道濾波器輸出的i、q兩路信號,對該兩路信號分別進行重採樣,提升信號的採樣率,使其採樣頻率由原始採樣頻率fs1轉換目標採樣頻率fs2;
DAC,與所述重採樣模塊輸出端相連接,用於接收重採樣後的頻率為fs2的i、q兩路信號,對其分別進行數模轉換,得到i、q兩路基帶信號。
進一步,所述重採樣模塊包括:
相對位置計算器,獲取原始採樣頻率和目標採樣頻率,獲取原始序列;根據原始採樣頻率和目標採樣頻率,在原始序列的時間維度上計算目標序列中各目標樣點相對於離其最近的原始樣點的相對位置信息;所述原始序列是所述信道濾波器輸出的信號的各原始樣點分別組成的數據序列,所述目標序列是重採樣後的採用目標採樣頻率的各目標樣點組成的數據序列;
DDS相位累加器,以頻率控制字為步進值進行累加,當相對位置計算器運算一次時,相位累加器累加一次;
溢出次數統計器,在DDS相位累加器每次累加後統計該次累加過程中相位累加器的總溢出次數Q,Q(n)=Q(n-1)+M,M為相位累加器每次累加時的溢出次數值;
原始樣點選擇器,根據所述總溢出次數Q,在原始序列中選擇連續的原始樣點作為參與原始樣點,參與原始樣點以原始樣點X(Q)為起始原始樣點;
濾波係數產生器,根據各目標樣點的相對位置信息,計算每個目標樣點的濾波係數;
低通濾波器,根據所述濾波係數,對所選擇的原始樣點進行濾波後輸出目標樣點,得到目標序列。
進一步,所述濾波係數產生器計算的每個目標樣點所對應的濾波係數的個數根據濾波器的長度確定,每個目標樣點所需要的原始樣點的個數與濾波係數的個數相同。
在一些實施例中,計算每個目標樣點時,所述原始樣點選擇器所選擇的原始樣點的個數與所述濾波係數產生器計算得到的濾波係數的個數相同。
在一些實施例中,所述DDS相位累加器使用的頻率控制字與原始採樣頻率和目標採樣頻率的比值成正比。
在一些實施例中,所述DDS相位累加器使用的頻率控制字為
FTW=round(2N×fs1/fs2)
式中,FTW表示頻率控制字;round(s)表示對s進行四捨五入取整;fs1為原始採樣頻率;fs2為目標採樣頻率;N為相位累加器位數。
在一些實施例中,所述相對位置計算器採用以下計算公式計算相對位置信息:
式中,index表示相對位置信息,mod(a,b)表示取a對b的模值;round(s)表示對s進行四捨五入取整;fs1為原始採樣頻率;fs2為目標採樣頻率;L為一個整數,並且滿足L≤2N;Acc為相位累加器的相位值,其初始值為零;N為相位累加器位數。
在一些實施例中,所述濾波係數產生器計算濾波係數的公式為:
其中,P為濾波器長度。
在一些實施例中,所述低通濾波器進行濾波的公式為:
在一些實施例中,所述星座映射模塊包括串並轉換器和星座查找表模塊,串並轉換器將串行bit信息流轉換成並行的兩路bit信息流,再通過星座查找表模塊32查表得到兩路bit信息流對應的i、q兩路符號數據。
本申請的有益效果是:本發明提出的i/q基帶信號發生器,利用重採樣模塊改變採樣率,可以支持連續改變基帶信號的符號率,並且最高符號率可以設置為DAC採樣率的一半,因此,非常適合用來產生寬帶基帶信號,而且該重採樣模塊包括了低通濾波器,可以對信號進行低通濾波,可以將信道濾波後的信號直接升採樣,使數據速率與DAC採樣率直接進行匹配,中間處理環節少,該低通濾波器具有非常一致的帶內平坦性,產生的i/q基帶信號正交性比較好,另外,該i/q基帶信號發生器無需使用半帶濾波器和CIC濾波器、補償濾波器等,結構簡單,利於軟硬體實現。
附圖說明
圖1為現有技術基帶信號發生器實現過程原理圖;
圖2為本申請提供的一種i/q基帶信號發生器結構框圖;
圖3為本申請提供的一種星座圖映射模塊結構框圖;
圖4為本申請提供的一種重採樣模塊結構框圖;
圖5為本申請提供的重採樣轉換中目標樣點獲取過程示意圖。
具體實施方式
下面通過具體實施方式結合附圖對本申請作進一步詳細說明。
請參考圖2,本申請提供了一種i/q基帶信號發生器,包括:星座映射模塊30、信道濾波器20、重採樣模塊10和DAC40。
星座映射模塊30用於接收bit信號流,輸入的bit信息流經過星座圖映射後得到i、q兩路符號數據,分別由其第一輸出端輸出符號流i、其第二輸出端輸出符號流q,符號流i與符號流q互為正交。
信道濾波器20用於接收符號流i與符號流q,通過預調、頻帶選擇和濾波,得到具有相應帶寬的i、q兩路信號xi(n)和xq(n)。
重採樣模塊10用於提升i、q兩路信號的採樣率,其第一輸入端接收信號xi(n),其第二輸入端接收信號xq(n),以信號xi(n)和xq(n)作為原始信號,對信號xi(n)和xq(n)分別進行重採樣,使其採樣頻率由原始採樣頻率fs1轉換為目標採樣頻率fs2,從而輸出採樣頻率為fs2的i、q兩路信號yi(n)和yq(n)。其中,fs2>fs1,重採樣模塊10對i、q兩路信號實現了升採樣。為了表述方便,原始信號的各原始樣點組成的數據序列稱為為原始序列;經過重採樣後,輸出的信號的各目標樣點組成的數據序列稱為目標序列。
由於i/q採樣率為符號率的倍數,改變i、q兩路信號的採樣率,即是改變i、q兩路信號的符號率,其中,最高符號率可以設置為DAC40採樣率的一半。
DAC40接收重採樣後採樣頻率為fs2的i、q兩路信號yi(n)和yq(n),對其進行數模轉換,得到模擬信號形式的i、q兩路正交基帶信號yi(t)和yq(t)。
具體地,本申請提供了一種星座映射模塊30,參考圖3,星座映射模塊30包括串並轉換器31和星座查找表模塊32,串並轉換器31將需要調製的串行bit信息轉換成並行的兩路bit信息流,再通過星座查找表模塊32查表得到兩路bit信息流對應的i、q兩路符號數據。例如,16QAM對應2的4次方,就是每4個bit一組,然後通過在預先建立的16QAM坐標的查找表中查表,直接得到這4個bit信息對應的星座點的i路符號數據和q路符號數據。
具體地,本申請提供了一種重採樣模塊10,參考圖4,重採樣模塊10包括:相對位置計算器12、DDS相位累加器11、溢出次數統計器13、原始樣點選擇器14、濾波係數產生器15和低通濾波器16。
相對位置計算器12,獲取原始採樣頻率fs1和目標採樣頻率fs2,根據原始採樣頻率fs1和目標採樣頻率fs2,在原始序列的時間維度上計算目標序列中各目標樣點相對於離其最近的原始樣點的相對位置信息,因此,獲取一個目標樣點需要計算一次相對位置信息。
在一些實施例中,以x(n)表示原始序列,以y(n)表示目標序列,index表示相對位置信息,採用如下公式計算相對位置信息:
式中,mod(a,b)表示取a對b的模值;round(s)表示對s進行四捨五入取整;fs1為原始採樣頻率;fs2為目標採樣頻率;L為一個整數,並且滿足L≤2N;Acc為DDS相位累加器11的相位值,其初始值為零;N為相位累加器位數。
DDS相位累加器11以頻率控制字FTW為步進值進行累加,相對位置計算器12每需要計算一次相對位置信息index(n)時,DDS相位累加器11累加一次。具體地,相位累加器的相位值Acc的計算公式如下:
Acc(n)=mod(Acc(n-1)+FTW,2N) (1-2)
式中,mod(a,b)表示取a對b的模值;FTW=round(2N×fs1/fs2);N為相位累加器位數。
溢出次數統計器13在DDS相位累加器11每累加完一次時,統計該次累加過程中相位累加器的總溢出次數Q,用於調整參與原始樣點的起始原始樣點,而且,X(Q)也表示計算目標序列中各目標樣點相對於離其最近的原始樣點,其中,Q(n)=Q(n-1)+M,M為DDS相位累加器11每次累加時的溢出次數值。
原始樣點選擇器14獲取原始序列x(n),並根據總溢出次數Q,在原始序列中選擇連續的原始樣點作為參與原始樣點,其中,參與原始樣點以原始樣點X(Q)為起始原始樣點。所選擇的原始樣點的個數與濾波係數產生器15計算得到的濾波係數個數相同,而濾波係數的個數根據濾波器的長度確定。在一些實施例中,濾波係數的個數與濾波器的長度P相同,因此選取的參與原始樣點可表示為{x(Q),x(Q+1),......,x(Q+P-1)}。
濾波係數產生器15根據各目標樣點的相對位置信息,計算每個目標樣點的濾波係數,通過濾波係數產生器15計算得到的濾波係數為實時生成,濾波係數的可適應性強,重採樣的實時性較好,可支持任意倍數的有理數重採樣。具體地,計算某個目標樣點時需要用到的濾波器係數如下:
其中,P為濾波器長度,根據實現時的具體軟硬體環境,P值可以選取為8~32之間的值,L≤2N,N為相位累加器位數,index的值的範圍為0~(L-1)。
低通濾波器16根據所述濾波係數h(index,k),對所選擇的原始樣點進行濾波,並輸出各個目標樣點,得到目標序列,輸出採樣頻率為fs2的i、q兩路信號yi(n)和yq(n),實現升採樣率轉換。因為低通濾波器16對i、q兩路信號yi(n)和yq(n)進行了低通濾波,可以將信道濾波器20輸出的信號直接升採樣,使數據速率與DAC40採樣率直接進行匹配,中間處理環節少,低通濾波器16具有非常一致的帶內平坦性,產生的i/q基帶信號正交性比較好。具體地,多用濾波的公式為:
下面詳細介紹如何獲取各個目標樣點。
參考圖5,為本申請提供的重採樣轉換中目標樣點獲取過程示意圖,圖中,黑色實心圓點表示原始序列x(n)的各原始樣點,其採樣周期為T1=1/fs1,相鄰兩個原始樣點的相位差為2π,相鄰兩個原始樣點之間的內插點個數為2N,;實心五角星表示目標序列y(n)的各目標樣點,其採樣周期為T2=1/fs2。在DDS相位累加器11循環累加時,重複使用公式(1-1)計算各目標樣點對應的相對位置信息。
假設P=8,需要在原始樣點x(n)中選擇8個參與原始樣點,在圖5中因原始樣點的初始點為x(1),選擇Q初始=Q(1)=1。那麼,
計算y(1)時,index(1)=0,Q(1)=1;
計算y(2)時,DDS相位累加器11從A點到B點,未發生溢出,離y(2)最近的原始樣點為x(1),index(2)=FTW,Q(2)=Q(1)+0=1;
計算y(3)時,DDS相位累加器11從B點到C點,未發生溢出,離y(3)最近的原始樣點為x(1),index(3)=2FTW,M=0,Q(3)=Q(2)+0=1;
計算y(4)時,DDS相位累加器11從C點到D點,溢出了一次,在時間維度上跨越了原始樣點x(2),離y(4)最近的原始樣點由x(1)變為x(2),index(4)=3FTW-2N,此次累加時的溢出次數值M=1,Q(4)=Q(3)+1=2;
依次類推,可分別計算出全部目標樣點對應的相對位置信息和Q值,之後,根據公式(1-3)實時計算各目標樣點對應的濾波係數,以X(Q)為起點選擇各目標樣點對應的P個原始樣點作為參與原始樣點,再利用公式(1-4)對各參與原始樣點進行低通濾波,獲取全部目標樣點,得到目標序列,從而獲得採樣率為fs2的信號yi(n)、yq(n)。
由此可見,重採樣模塊10根據原始採樣頻率和目標採樣頻率,巧妙地在原始序列的時間維度上計算各目標樣點相對於離其最近的原始樣點的相對位置信息,根據該相對位置信息,直接實時計算獲取各目標樣點時所需要的濾波係數,和根據計算相對位置信息時統計的總溢出次數,從原始序列中選擇所需要的參與原始樣點,然後根據該濾波係數對選擇的參與原始樣點進行濾波,達到重採樣的目的,這樣的重採樣效率高、實時性較好,可支持任意倍數的有理數重採樣,根據需要可連續地獲得不同目標採樣頻率的基帶信號。
綜上所述,由於本申請利用重採樣模塊10代替了現有半帶濾波器和CIC濾波器進行重採樣,可以支持連續改變基帶信號的符號率,並且最高符號率可以設置為DAC40採樣率的一半,因此,非常適合用來產生寬帶基帶信號;而且無需使用半帶濾波器和CIC濾波器、補償濾波器等,結構簡單,利於軟硬體實現;且由於重採樣模塊10包括低通濾波器16,可以將信道濾波後的信號直接升採樣,使數據速率與DAC40採樣率直接進行匹配,中間處理環節少,產生的i/q基帶信號正交性比較好。
以上內容是結合具體的實施方式對本申請所作的進一步詳細說明,不能認定本申請的具體實施只局限於這些說明。對於本申請所屬技術領域的普通技術人員來說,在不脫離本申請發明構思的前提下,還可以做出若干簡單推演或替換。