From 74f45ae2a723107adce1038a708d2958aca97487 Mon Sep 17 00:00:00 2001 From: Martin Braun Date: Mon, 22 Jan 2018 09:54:46 -0800 Subject: rfnoc: Factor out ceil_log2() into central location - New file: uhdlib/utils/math.hpp --- host/lib/rfnoc/duc_block_ctrl_impl.cpp | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) (limited to 'host/lib/rfnoc/duc_block_ctrl_impl.cpp') diff --git a/host/lib/rfnoc/duc_block_ctrl_impl.cpp b/host/lib/rfnoc/duc_block_ctrl_impl.cpp index 0e1521d9f..c8989d65c 100644 --- a/host/lib/rfnoc/duc_block_ctrl_impl.cpp +++ b/host/lib/rfnoc/duc_block_ctrl_impl.cpp @@ -9,18 +9,14 @@ #include #include #include -#include #include +#include +#include #include #include using namespace uhd::rfnoc; -// TODO move this to a central location -template T ceil_log2(T num){ - return std::ceil(std::log(num)/std::log(T(2))); -} - // TODO remove this once we have actual lambdas static double lambda_forward_prop(uhd::property_tree::sptr tree, uhd::fs_path prop, double value) { @@ -250,7 +246,8 @@ private: // This must also encompass the CORDIC gain static const double CONSTANT_GAIN = 1.1644; - const double scaling_adjustment = std::pow(2, ceil_log2(rate_pow))/(CONSTANT_GAIN*rate_pow); + const double scaling_adjustment = + std::pow(2, uhd::math::ceil_log2(rate_pow))/(CONSTANT_GAIN*rate_pow); update_scalar(scaling_adjustment, chan); return output_rate/interp_rate; } -- cgit v1.2.3