aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTom Tsou <tom.tsou@ettus.com>2017-06-28 18:02:56 -0700
committerMartin Braun <martin.braun@ettus.com>2017-06-28 20:25:27 -0700
commit412a7053cc0698fd8e1a09d9c40ec2f96cf629af (patch)
tree7275dcf88f8b6d386bac7bc2220703c8e7915b33
parent8d304a21b43ea05eeca99f16f63de9ee92761ac7 (diff)
downloaduhd-412a7053cc0698fd8e1a09d9c40ec2f96cf629af.tar.gz
uhd-412a7053cc0698fd8e1a09d9c40ec2f96cf629af.tar.bz2
uhd-412a7053cc0698fd8e1a09d9c40ec2f96cf629af.zip
ad9361: Reconfigure Rx HB filters with MCR >58 MHz
Disable halfband HB3 (shortest and closest filter to the ADC) and enable HB2 (larger and second closest filter to the ADC). This significantly reduces HB excess bandwidth rolloff and reduces the effective noise floor by ~20 dB at rates above 58 MHz. The filter change has no effect at clock rates below 58 MHz. Fixes #1542 "Significant raise in noise floor using MCR above 58MHz"
-rw-r--r--host/lib/usrp/common/ad9361_driver/ad9361_device.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/host/lib/usrp/common/ad9361_driver/ad9361_device.cpp b/host/lib/usrp/common/ad9361_driver/ad9361_device.cpp
index da0ab0b9a..bed13fd05 100644
--- a/host/lib/usrp/common/ad9361_driver/ad9361_device.cpp
+++ b/host/lib/usrp/common/ad9361_driver/ad9361_device.cpp
@@ -1454,7 +1454,8 @@ double ad9361_device_t::_setup_rates(const double rate)
_rfir_factor = 2;
} else if ((rate > 58e6) && (rate <= 61.44e6)) {
// RX1 + RX2 enabled, 2, 1, 2, 2
- _regs.rxfilt = B8(11010110);
+ _regs.rxfilt = B8(11001110);
+
// TX1 + TX2 enabled, 2, 1, 1, 2
_regs.txfilt = B8(11010010);