summaryrefslogtreecommitdiff
path: root/gr-digital/lib/glfsr_source_b_impl.h
diff options
context:
space:
mode:
authorElof Wecksell <elof@wecksell.se>2021-01-12 10:35:31 +0100
committerMartin Braun <martin@gnuradio.org>2021-01-29 03:31:03 -0800
commitb16924381c90e07d5d8cf5bc236c7dc48a0fd677 (patch)
treee5fe0c4005af6c6f0a6178139439a478de0abacf /gr-digital/lib/glfsr_source_b_impl.h
parent761b327c761e0596f72cbe9f63e510f1b36c4b47 (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_b_impl.h')
-rw-r--r--gr-digital/lib/glfsr_source_b_impl.h14
1 files changed, 7 insertions, 7 deletions
diff --git a/gr-digital/lib/glfsr_source_b_impl.h b/gr-digital/lib/glfsr_source_b_impl.h
index 108f3b8c8f..8dfc9af8b3 100644
--- a/gr-digital/lib/glfsr_source_b_impl.h
+++ b/gr-digital/lib/glfsr_source_b_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_b_impl(unsigned int degree,
bool repeat = true,
- uint32_t mask = 0,
- uint32_t seed = 0x1);
- ~glfsr_source_b_impl() override;
+ uint64_t mask = 0,
+ uint64_t seed = 0x1);
+ ~glfsr_source_b_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 */