removed function in access code correlator that should fix the problem observed in...
authortrondeau <trondeau@221aa14e-8319-0410-a670-987f0aec2ac5>
Thu, 22 Feb 2007 15:16:10 +0000 (15:16 +0000)
committertrondeau <trondeau@221aa14e-8319-0410-a670-987f0aec2ac5>
Thu, 22 Feb 2007 15:16:10 +0000 (15:16 +0000)
git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@4585 221aa14e-8319-0410-a670-987f0aec2ac5

gnuradio-core/src/lib/general/gr_correlate_access_code_bb.cc
gnuradio-core/src/lib/general/gr_correlate_access_code_bb.h

index 4656f8c527d2450c445e01997ecb6daeb35bab3c..18253e968000416d269870d2f659ba525cbc1846 100644 (file)
@@ -45,7 +45,7 @@ gr_correlate_access_code_bb::gr_correlate_access_code_bb (
                   gr_make_io_signature (1, 1, sizeof(char)),
                   gr_make_io_signature (1, 1, sizeof(char))),
     d_data_reg(0), d_flag_reg(0), d_flag_bit(0), d_mask(0),
-    d_threshold(threshold), d_flip(0)
+    d_threshold(threshold)
 
 {
   if (!set_access_code(access_code)){
@@ -94,7 +94,7 @@ gr_correlate_access_code_bb::work (int noutput_items,
     // compute output value
     unsigned int t = 0;
 
-    t |= d_flip ^ (((d_data_reg >> 63) & 0x1) << 0);
+    t |= ((d_data_reg >> 63) & 0x1) << 0;
     t |= ((d_flag_reg >> 63) & 0x1) << 1;      // flag bit
     out[i] = t;
     
@@ -106,8 +106,8 @@ gr_correlate_access_code_bb::work (int noutput_items,
     wrong_bits  = (d_data_reg ^ d_access_code) & d_mask;
     nwrong = gr_count_bits64(wrong_bits);
 
-    // test for access code with up to threshold errors or its compelement
-    new_flag = (nwrong <= d_threshold) || (nwrong >= (64-d_threshold));
+    // test for access code with up to threshold errors
+    new_flag = (nwrong <= d_threshold);
 
 #if 0   
     if(new_flag) {
@@ -120,7 +120,6 @@ gr_correlate_access_code_bb::work (int noutput_items,
     d_flag_reg = (d_flag_reg << 1);
     if (new_flag) {
       d_flag_reg |= d_flag_bit;
-      d_flip = nwrong >= (64-d_threshold);   // flip bits if this is true
     }
   }
 
index 8a2bdefc1ffecaa0edd1d671f08e9a81836b240c..5f9b230765e09680ff9b8f0448f715a6797dda5c 100644 (file)
@@ -62,8 +62,6 @@ class gr_correlate_access_code_bb : public gr_sync_block
   unsigned long long d_mask;           // masks access_code bits (top N bits are set where
                                         //   N is the number of bits in the access code)
   unsigned int      d_threshold;       // how many bits may be wrong in sync vector
-  unsigned int       d_flip;            // flip bits if 180 degress out of sync
-
 
  protected:
   gr_correlate_access_code_bb(const std::string &access_code, int threshold);