diff options
author | Elof Wecksell <elof@wecksell.se> | 2021-01-12 10:35:31 +0100 |
---|---|---|
committer | Martin Braun <martin@gnuradio.org> | 2021-01-29 03:31:03 -0800 |
commit | b16924381c90e07d5d8cf5bc236c7dc48a0fd677 (patch) | |
tree | e5fe0c4005af6c6f0a6178139439a478de0abacf /gr-digital/lib/glfsr_source_f_impl.h | |
parent | 761b327c761e0596f72cbe9f63e510f1b36c4b47 (diff) |
gr-digital: improved performance and capability of scramblers to 64-bit registers. Use __builtin_parity or volk popcnt. qa was also enhanced to detect errors.
Signed-off-by: Elof Wecksell <elof@wecksell.se>
Co-authored-by: Martin Braun <martin@gnuradio.org>
Diffstat (limited to 'gr-digital/lib/glfsr_source_f_impl.h')
-rw-r--r-- | gr-digital/lib/glfsr_source_f_impl.h | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/gr-digital/lib/glfsr_source_f_impl.h b/gr-digital/lib/glfsr_source_f_impl.h index 8de9e89039..703222364e 100644 --- a/gr-digital/lib/glfsr_source_f_impl.h +++ b/gr-digital/lib/glfsr_source_f_impl.h @@ -23,22 +23,22 @@ private: glfsr d_glfsr; bool d_repeat; - uint32_t d_index; - uint32_t d_length; + uint64_t d_index; + uint64_t d_length; public: glfsr_source_f_impl(unsigned int degree, bool repeat = true, - uint32_t mask = 0, - uint32_t seed = 0x1); - ~glfsr_source_f_impl() override; + uint64_t mask = 0, + uint64_t seed = 0x1); + ~glfsr_source_f_impl(); int work(int noutput_items, gr_vector_const_void_star& input_items, gr_vector_void_star& output_items) override; - uint32_t period() const override { return d_length; } - uint32_t mask() const override; + uint64_t period() const { return d_length; } + uint64_t mask() const; }; } /* namespace digital */ |