本發(fā)明涉及無線通信,具體涉及一種數字預失真器的多模型實現方法。
背景技術:
1、在現代無線通信系統(tǒng)中,需要對發(fā)射機射頻末端功率放大器采取必要的線性化處理,其中最常見的線性化技術就是數字預失真技術(dpd)。dpd在基帶對信號進行預失真處理,能夠有效地補償功率放大器的記憶非線性效應,從而使之得以線性化。數字預失真技術不但能夠保證信號的傳輸質量,而且也能顯著降低基站的功耗。
2、如圖1所示一個典型的dpd應用場景,基帶信號u(n)先輸入到數字預失真器,完成預失真處理后的信號x(n)經過數/模轉換等輸出,接著功率放大器pa輸出信號y(n)。數字預失真系統(tǒng)包括預失真器和模型訓練兩部分,其中預失真器包含了一個與功率放大器行為特性相反的模型,它將對基帶信號進行實時預失真處理;模型訓練部分用來更新預失真器系數,它包含復雜的矩陣運算且實時性要求不高,通常采用軟件實現。
3、以gmp?dpd為例,其模型表達式如下:
4、
5、其中,d(n)表示預失真器輸入信號,xgmp(n)表示預失真器輸出信號,i表示記憶項,j表示交叉記憶項,k表示非線性階數,cijk表示模型系數。
6、數字預失真器可以采用直接計算法和查表法實現。由于公式(1)包括大量的乘加操作,直接計算會消耗過多的dsp資源,并且會產生較大的延遲。因此,基于fpga的預失真器一般采用查表法(lut)實現。目前國外主流fpga廠家提供商用的dpd?ip,但對用戶來說屬于黑盒設計,不但對dpd模型復雜度有一定的限制,而且只能應用于指定型號的fpga。因此在實現數字預失真系統(tǒng)時,客戶將存在以下困難:
7、(1)dpd模型復雜度受限,如限制模型系數個數、限制記憶深度和非線性階數等。
8、(2)已有的dpd?ip擴展性差,無法在不同的fpga硬件平臺進行移植。
技術實現思路
1、本發(fā)明的目的在于提供一種數字預失真器的多模型實現方法,支持客戶靈活配置dpd模型,不但適用于所有型號的fpga,而且能夠根據模型配置參數優(yōu)化fpga使用的硬件資源。
2、為了達到上述目的,提供了一種數字預失真器的多模型實現方法,包括以下步驟:
3、s1、根據預失真器表達式獲取模型文件;具體為:將預失真器表達式中所有(i,j,k)的取值組合按照設定格式保存為文本文件,所述文本文件定義為模型文件;
4、s2、對模型文件進行解析,得到需要用到的查找表的查找表編號和使用個數;
5、s3、配置模型參數到fpga頂層設計模塊,在fpga頂層設計模塊中根據不同的模型配置參數,有選擇的實例化起作用的查找表,優(yōu)化fpga所使用的硬件資源;所述模配置型參數包括數據位寬、查找表深度和查找表掩碼;所述查找表掩碼是大小表示為查找表個數的數組,表示對應查找表在fpga綜合時工具中是否會被實例化為bram;所述查找表掩碼根據查找表的查找表編號計算得到;
6、s4、使用fpga綜合工具,將預失真器輸入信號經過不同的時延后和對應被實例化為bram的查找表的輸出相乘,然后進行累加輸出,得到硬件預失真器;在實現預失真器過程中,不調用特定fpga的原語或者ip,采用可綜合的通用fpga語言將設計封裝成具有通用總線接口的ip。
7、進一步,所述步驟s2中查找表編號的計算公式如下:
8、lutid=i+j×n
9、其中,i表示記憶項,j表示交叉記憶項,n為自定義的交叉記憶項j的最大取值。
10、進一步,將基于gmp數字預失真模型進行如下變換:
11、
12、其中,d(n)表示預失真器輸入信號,xgmp(n)表示預失真器輸出信號,i表示記憶項,j表示交叉記憶項,lut(i,j)是與i和j相關的查找表輸出信號,其表達式如下:
13、
14、其中,cijk表示模型系數。
15、進一步,所述s3中fpga頂層設計模塊進行fpga模塊劃分;劃分步驟如下:
16、采用自頂而下進行fpga模塊劃分,包括頂層模塊dpd?actuator和若干dpd?lutrow模塊,每個dpd?lut?row模塊包含若干子模塊lut(i,j),dpd?lut?row模塊中的若干子模塊lut(i,j)表示一組具有相同交叉記憶項j的查找表。
17、進一步,所述步驟s3中分析查找表是否會被實例化為bram的步驟如下:
18、s301、讀取配置參數中的查找表掩碼lutidmask[lutid],并初始化查找表編號lutid;
19、s302、判斷查找表掩碼是否大于0,即lutidmask[lutid]>0,若大于0,執(zhí)行步驟s303,否則執(zhí)行步驟s304;
20、s303、將查找表編號lutid對應的查找表實例化為bram,再執(zhí)行步驟s304;
21、s304、lutid=lutid+1;
22、s305、判斷查找表編號lutid是否小于m*n,即lutid<m*n;若是,跳轉執(zhí)行步驟s302,否則,對實例化的子模塊lut(i,j)進行信號連線。
23、原理及優(yōu)點:
24、1.本方案不會限制dpd模型復雜度,例如,不會限制模型系數個數、限制記憶深度和非線性階數等。而且一個dpd模型對應一個文件,加載不同的模型文件就是配置不同的dpd模型,通過步驟從而支持客戶靈活配置dpd模型。
25、2.本方案能夠根據不同的模型配置參數,有選擇地實例化起作用的查找表,從而優(yōu)化fpga所使用的硬件資源。并且在實現預失真器過程中,不調用特定fpga的原語或者ip,而是采用可綜合的通用fpga語言將設計封裝成具有通用總線接口的ip,從而保證該設計適用于所有型號的fpga。
1.一種數字預失真器的多模型實現方法,其特征在于,包括以下步驟:
2.根據權利要求1所述的一種數字預失真器的多模型實現方法,其特征在于:所述步驟s2中查找表編號的計算公式如下:
3.根據權利要求2所述的一種數字預失真器的多模型實現方法,其特征在于:將基于gmp數字預失真模型進行如下變換:
4.根據權利要求3所述的一種數字預失真器的多模型實現方法,其特征在于:所述s3中fpga頂層設計模塊進行fpga模塊劃分;劃分步驟如下:
5.根據權利要求4所述的一種數字預失真器的多模型實現方法,其特征在于:所述步驟s3中分析查找表是否會被實例化為bram的步驟如下: