AnsweredAssumed Answered

Setting the FIR filters

Question asked by Manos on May 18, 2016
Latest reply on May 18, 2016 by DragosB


Hi,
we have configured the LTE transmission with the AD-FMCOMMS5 for 20MHz bandwidth in the past and it was successful and we have posted a thread about this already. Now, we try to setup an LTE transmission with 10MHz bandwidth and surprisingly the result is 20 MHz to our spectrum analyzer.


Following the same procedure, we used the Tx Rx FIR configuration found here:

https://github.com/analogdevicesinc/MathWorks_tools/blob/master/hil_models/LTE_MATLAB/LTE10_MHz.ftr

and the particular structures AD9361_RXFIRConfig and AD9361_TXFIRConfig are defined as follows:


AD9361_RXFIRConfig rx_fir_config = { // BPF PASSBAND 3/20 fs to 1/4 fs
3, // rx
-6, // rx_gain
2, // rx_dec
{ 20393,21470,13988,14435,
4784,4431,-2426,-3194,
-4727,-5298,-2624,-2634,
876,1310,2734,3173,
1933,2016,-269,-551,
-1796,-2146,-1539,-1646,
-43,149,1228,1510,
1253,1365,215,80,
-843,-1074,-1024,-1133,
-308,-212,566,757,
831,935,349,282,
-362,-522,-664,-762,
-357,-312,211,344,
520,612,342,315,
-102,-212,-396,-481,
-312,-298,25,114,
291,368,272,270,
26,-46,-205,-274,
-229,-234,-57,-1,
136,196,184,196,
71,29,-83,-134,
-142,-158,-74,-44,
43,85,104,122,
70,49,-16,-49,
-72,-90,-60,-47,
-2,24,46,64,
48,40,11,-6,
-26,-43,-36,-30,
-13,-5,18,29,
40,20,36,12,
23,-22,4,-20,
0,-23,-5,-9},// rx_coef[128]
128, // rx_coef_size
{983040000, 245760000, 122880000, 61440000, 30720000, 15360000}, // rx_path_clks[6]
9113183 // rx_bandwidth;

 

};

 

 


AD9361_TXFIRConfig tx_fir_config = { // BPF PASSBAND 3/20 fs to 1/4 fs
3, // tx
0, // tx_gain
2, // tx_int
{-5,-9,0,-23,
4,-20,23,-22,
36,12,40,20,
18,29,-13,-5,
-36,-30,-26,-43,
11,-6,48,40,
46,64,-2,24,
-60,-47,-72,-90,
-16,-49,70,49,
104,122,43,85,
-74,-44,-142,-158,
-83,-134,71,29,
184,196,136,196,
-57,-1,-229,-234,
-205,-274,26,-46,
272,270,291,368,
25,114,-312,-298,
-396,-481,-102,-212,
342,315,520,612,
211,344,-357,-312,
-664,-762,-362,-522,
349,282,831,935,
566,757,-308,-212,
-1024,-1133,-843,-1074,
215,80,1253,1365,
1228,1510,-43,149,
-1539,-1646,-1796,-2146,
-269,-551,1933,2016,
2734,3173,876,1310,
-2624,-2634,-4727,-5298,
-2426,-3194,4784,4431,
13988,14435,20393,21470},// rx_coef[128]
128, // rx_coef_size
{983040000, 245760000, 122880000, 61440000, 30720000, 15360000}, // rx_path_clks[6]
9037204 // tx_bandwidth;
};


After setting the FIR filters I do call the following functions:


ad9361_set_tx_fir_config(ad9361_phy, tx_fir_config);
ad9361_set_rx_fir_config(ad9361_phy, rx_fir_config);


ad9361_set_tx_rf_bandwidth(ad9361_phy,9037204);

ad9361_set_rx_rf_bandwidth(ad9361_phy,9113183);


I believe that the problem should be related to the coefficient table (tx_coeff) and the way we define it. Unless I can change the tx_coef_size (found here: http://analogdevicesinc.github.io/ad9361/structAD9361__TXFIRConfig.html) to 256 and then, I can use all 256 coefficients listed here https://github.com/analogdevicesinc/MathWorks_tools/blob/master/hil_models/LTE_MATLAB/LTE10_MHz.ftr, for the LTE 10 MHz scenario.

Please advice. 

Thank you,

Manos

Outcomes