diff options
author | Sean Nowlan <nowlans@ieee.org> | 2017-01-26 16:56:05 -0500 |
---|---|---|
committer | Sean Nowlan <nowlans@ieee.org> | 2017-01-26 16:56:05 -0500 |
commit | 4b92a2d4bedce2850807af2f1afea8678f77bc07 (patch) | |
tree | 8ec65992827cc8d7c5a904a16599d1e04a2df39e /gr-digital/python | |
parent | a6323e35d0caa7fb4403aa86b222dee8919da133 (diff) |
digital: add correlate access code tagging block with soft inputs
Diffstat (limited to 'gr-digital/python')
-rwxr-xr-x | gr-digital/python/digital/qa_correlate_access_code.py | 18 | ||||
-rwxr-xr-x | gr-digital/python/digital/qa_correlate_access_code_tag.py | 36 |
2 files changed, 51 insertions, 3 deletions
diff --git a/gr-digital/python/digital/qa_correlate_access_code.py b/gr-digital/python/digital/qa_correlate_access_code.py index d89b457117..355843a085 100755 --- a/gr-digital/python/digital/qa_correlate_access_code.py +++ b/gr-digital/python/digital/qa_correlate_access_code.py @@ -91,6 +91,24 @@ class test_correlate_access_code(gr_unittest.TestCase): result_data = dst.data() self.assertEqual(expected_result, result_data) + def test_004(self): + code = tuple(string_to_1_0_list(default_access_code)) + access_code = to_1_0_string(code) + pad = (0,) * 64 + #print code + #print access_code + src_bits = code + (1, 0, 1, 1) + pad + src_data = [2.0*x - 1.0 for x in src_bits] + expected_result_bits = code + (1, 0, 1, 1) + pad + expected_result = [2.0*x - 1.0 for x in expected_result_bits] + src = blocks.vector_source_f(src_data) + op = digital.correlate_access_code_tag_ff(access_code, 0, "test") + dst = blocks.vector_sink_f() + self.tb.connect(src, op, dst) + self.tb.run() + result_data = dst.data() + self.assertFloatTuplesAlmostEqual(expected_result, result_data, 5) + if __name__ == '__main__': gr_unittest.run(test_correlate_access_code, "test_correlate_access_code.xml") diff --git a/gr-digital/python/digital/qa_correlate_access_code_tag.py b/gr-digital/python/digital/qa_correlate_access_code_tag.py index f2663e4ecc..7266169df0 100755 --- a/gr-digital/python/digital/qa_correlate_access_code_tag.py +++ b/gr-digital/python/digital/qa_correlate_access_code_tag.py @@ -50,7 +50,7 @@ class test_correlate_access_code(gr_unittest.TestCase): src_data = (1, 0, 1, 1, 1, 1, 0, 1, 1) + pad + (0,) * 7 src = blocks.vector_source_b(src_data) op = digital.correlate_access_code_tag_bb("1011", 0, "sync") - dst = blocks.tag_debug(1, "sync") + dst = blocks.tag_debug(gr.sizeof_char, "sync") self.tb.connect(src, op, dst) self.tb.run() result_data = dst.current_tags() @@ -65,10 +65,40 @@ class test_correlate_access_code(gr_unittest.TestCase): #print code #print access_code src_data = code + (1, 0, 1, 1) + pad - expected_result = pad + code + (3, 0, 1, 1) src = blocks.vector_source_b(src_data) op = digital.correlate_access_code_tag_bb(access_code, 0, "sync") - dst = blocks.tag_debug(1, "sync") + dst = blocks.tag_debug(gr.sizeof_char, "sync") + self.tb.connect(src, op, dst) + self.tb.run() + result_data = dst.current_tags() + self.assertEqual(len(result_data), 1) + self.assertEqual(result_data[0].offset, len(code)) + + def test_003(self): + pad = (0,) * 64 + src_bits = (1, 0, 1, 1, 1, 1, 0, 1, 1) + pad + (0,) * 7 + src_data = [2.0*x - 1.0 for x in src_bits] + src = blocks.vector_source_f(src_data) + op = digital.correlate_access_code_tag_ff("1011", 0, "sync") + dst = blocks.tag_debug(gr.sizeof_float, "sync") + self.tb.connect(src, op, dst) + self.tb.run() + result_data = dst.current_tags() + self.assertEqual(len(result_data), 2) + self.assertEqual(result_data[0].offset, 4) + self.assertEqual(result_data[1].offset, 9) + + def test_004(self): + code = tuple(string_to_1_0_list(default_access_code)) + access_code = to_1_0_string(code) + pad = (0,) * 64 + #print code + #print access_code + src_bits = code + (1, 0, 1, 1) + pad + src_data = [2.0*x - 1.0 for x in src_bits] + src = blocks.vector_source_f(src_data) + op = digital.correlate_access_code_tag_ff(access_code, 0, "sync") + dst = blocks.tag_debug(gr.sizeof_float, "sync") self.tb.connect(src, op, dst) self.tb.run() result_data = dst.current_tags() |