def test_003_t(self):
     vector01 =          (3, 0, 0, 0, 7, 0, 0, 0,    11, 4, 0, 0, 15, 8,  0, 0,      19, 12, 1, 0, 23, 16, 5, 0,     27, 20,  9,  2, 31, 24, 13,  6)
     expected_result =   (0, 0, 0, 0, 0, 0, 0, 0,     3, 4, 0, 0,  7, 8,  0, 0,      11, 12, 0, 0, 15, 16, 0, 0,      19,20, 0, 0, 23, 24, 0, 0)
     src = blocks.vector_source_b(vector01, True)
     b2f = blocks.char_to_float_make()
     s2v = blocks.stream_to_vector(gr.sizeof_float, 8)
     time_deinterleaver = dab.time_deinterleave_ff_make(8, [2, 3, 0, 1])
     v2s = blocks.vector_to_stream(gr.sizeof_float, 8)
     dst = blocks.vector_sink_f()
     self.tb.connect(src, b2f, time_deinterleaver, blocks.head_make(gr.sizeof_float, 8*4), dst)
     self.tb.run()
     result = dst.data()
     #print result
     self.assertEqual(expected_result, result)
 def test_004_t(self):
     vector01 =          (1, 2, 3, 4,  5, 6, 7, 8,  9, 10, 11, 12,  13, 14, 15, 16)
     expected_result =   (0,0,0,4,0,0,0,8,0,0,0,12,0,0,0,16,0,0,3,4,0,0,7,8,0,0,11,12,0,0,15,16)
     src = blocks.vector_source_b(vector01, True)
     b2f = blocks.char_to_float_make()
     s2v = blocks.stream_to_vector(gr.sizeof_float, 16)
     time_deinterleaver = dab.time_deinterleave_ff_make(16, [0, 1, 2, 4])
     v2s = blocks.vector_to_stream(gr.sizeof_float, 16)
     dst = blocks.vector_sink_f()
     self.tb.connect(src, b2f, time_deinterleaver, blocks.head_make(gr.sizeof_float, 16*2), dst)
     self.tb.run()
     result = dst.data()
     #print result
     self.assertEqual(expected_result, result)
 def test_004_t(self):
     vector01 =          (1, 2, 3, 4,  5, 6, 7, 8,  9, 10, 11, 12,  13, 14, 15, 16)
     expected_result =   (0,0,0,4,0,0,0,8,0,0,0,12,0,0,0,16,0,0,3,4,0,0,7,8,0,0,11,12,0,0,15,16)
     src = blocks.vector_source_b(vector01, True)
     b2f = blocks.char_to_float_make()
     s2v = blocks.stream_to_vector(gr.sizeof_float, 16)
     time_deinterleaver = grdab.time_deinterleave_ff_make(16, [0, 1, 2, 4])
     v2s = blocks.vector_to_stream(gr.sizeof_float, 16)
     dst = blocks.vector_sink_f()
     self.tb.connect(src, b2f, time_deinterleaver, blocks.head_make(gr.sizeof_float, 16*2), dst)
     self.tb.run()
     result = dst.data()
     #print result
     self.assertEqual(expected_result, result)
 def test_002_t(self):
     vector01 =          (1, 0, 0, 0,  5, 4, 0, 0,  9, 8, 3, 0,  13, 12, 7, 2)
     expected_result =   (0, 0, 0, 0,  0, 4, 0, 0,  0, 8, 0, 0,   1, 12, 3, 0)
     src = blocks.vector_source_b(vector01, True)
     b2f = blocks.char_to_float_make()
     s2v = blocks.stream_to_vector(gr.sizeof_float, 4)
     time_deinterleaver = dab.time_deinterleave_ff_make(4, [0, 3, 2, 1])
     v2s = blocks.vector_to_stream(gr.sizeof_float, 4)
     dst = blocks.vector_sink_f()
     self.tb.connect(src, b2f, time_deinterleaver, blocks.head_make(gr.sizeof_float, 4*4), dst)
     self.tb.run()
     result = dst.data()
     #print result
     self.assertEqual(expected_result, result)
 def test_003_t(self):
     vector01 =          (3, 0, 0, 0, 7, 0, 0, 0,    11, 4, 0, 0, 15, 8,  0, 0,      19, 12, 1, 0, 23, 16, 5, 0,     27, 20,  9,  2, 31, 24, 13,  6)
     expected_result =   (0, 0, 0, 0, 0, 0, 0, 0,     3, 4, 0, 0,  7, 8,  0, 0,      11, 12, 0, 0, 15, 16, 0, 0,      19,20, 0, 0, 23, 24, 0, 0)
     src = blocks.vector_source_b(vector01, True)
     b2f = blocks.char_to_float_make()
     s2v = blocks.stream_to_vector(gr.sizeof_float, 8)
     time_deinterleaver = grdab.time_deinterleave_ff_make(8, [2, 3, 0, 1])
     v2s = blocks.vector_to_stream(gr.sizeof_float, 8)
     dst = blocks.vector_sink_f()
     self.tb.connect(src, b2f, time_deinterleaver, blocks.head_make(gr.sizeof_float, 8*4), dst)
     self.tb.run()
     result = dst.data()
     #print result
     self.assertEqual(expected_result, result)
 def test_002_t(self):
     vector01 =          (1, 0, 0, 0,  5, 4, 0, 0,  9, 8, 3, 0,  13, 12, 7, 2)
     expected_result =   (0, 0, 0, 0,  0, 4, 0, 0,  0, 8, 0, 0,   1, 12, 3, 0)
     src = blocks.vector_source_b(vector01, True)
     b2f = blocks.char_to_float_make()
     s2v = blocks.stream_to_vector(gr.sizeof_float, 4)
     time_deinterleaver = grdab.time_deinterleave_ff_make(4, [0, 3, 2, 1])
     v2s = blocks.vector_to_stream(gr.sizeof_float, 4)
     dst = blocks.vector_sink_f()
     self.tb.connect(src, b2f, time_deinterleaver, blocks.head_make(gr.sizeof_float, 4*4), dst)
     self.tb.run()
     result = dst.data()
     #print result
     self.assertEqual(expected_result, result)
 def test_002_t(self):
     vector01 = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
     expected_result = (1, 0, 0, 0, 5, 0, 0, 4, 9, 0, 3, 8, 13, 2, 7, 12)
     src = blocks.vector_source_b(vector01, True)
     s2v = blocks.stream_to_vector(gr.sizeof_char, 4)
     time_interleaver = dab.time_interleave_bb(4, [0, 3, 2, 1])
     v2s = blocks.vector_to_stream(gr.sizeof_char, 4)
     dst = blocks.vector_sink_b()
     self.tb.connect(src, s2v, time_interleaver,
                     blocks.head_make(gr.sizeof_char * 4, 4), v2s, dst)
     self.tb.run()
     result = dst.data()
     #print result
     self.assertEqual(expected_result, result)
 def test_003_t(self):
     vector01 = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
                 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32)
     expected_result = (0, 0, 3, 0, 0, 0, 7, 0, 0, 0, 11, 4, 0, 0, 15, 8, 1,
                        0, 19, 12, 5, 0, 23, 16, 9, 2, 27, 20, 13, 6, 31,
                        24)
     src = blocks.vector_source_b(vector01, True)
     s2v = blocks.stream_to_vector(gr.sizeof_char, 8)
     time_interleaver = dab.time_interleave_bb(8, [2, 3, 0, 1])
     v2s = blocks.vector_to_stream(gr.sizeof_char, 8)
     dst = blocks.vector_sink_b()
     self.tb.connect(src, s2v, time_interleaver,
                     blocks.head_make(gr.sizeof_char * 8, 4), v2s, dst)
     self.tb.run()
     result = dst.data()
     #print result
     self.assertEqual(expected_result, result)
Example #9
0
    def test_001_t (self):
        self.symbol_length = 32*4
        self.dab_params = dab_parameters(1, 208.064e6, True)

        # source
        self.dp = dab_parameters(1, 208.064e6, True)
        self.fib_src = dab.fib_source_b_make(1, 1, 1, "ensemble1", "service1        ", "musicmix", 4, [2], [15], [1])

        # encoder
        self.fib_enc = fic_encode(self.dab_params)
        self.unpack = blocks.packed_to_unpacked_bb_make(1, gr.GR_MSB_FIRST)

        # mapper
        self.map = dab.mapper_bc_make(self.dp.num_carriers)

        # demapper
        self.s2v = blocks.stream_to_vector_make(gr.sizeof_gr_complex, self.dp.num_carriers)
        self.soft_interleaver = dab.complex_to_interleaved_float_vcf_make(self.dp.num_carriers)

        # decode
        self.fic_decoder = fic_decode(self.dab_params)

        # control stream
        self.trigger_src = blocks.vector_source_b([1] + [0]*74, True)

        self.tb.connect(self.fib_src,
                        blocks.head_make(gr.sizeof_char, 100000),
                        self.fib_enc,
                        self.unpack,
                        self.map,
                        self.s2v,
                        self.soft_interleaver,
                        self.fic_decoder
                        )
        self.tb.connect(self.trigger_src, (self.fic_decoder, 1))


        self.tb.run ()
        pass