Revision 3bac2fa5 gnuradio-core/src/python/gnuradio/blks2impl/dqpsk2.py

b/gnuradio-core/src/python/gnuradio/blks2impl/dqpsk2.py
106 106
        self.chunks2symbols = gr.chunks_to_symbols_bc(rotated_const)
107 107

108 108
        # pulse shaping filter
109
	self.rrc_taps = gr.firdes.root_raised_cosine(
110
	    self._samples_per_symbol, # gain  (sps since we're interpolating by sps)
111
            self._samples_per_symbol, # sampling rate
112
            1.0,		      # symbol rate
113
            self._excess_bw,          # excess bandwidth (roll-off factor)
109
        nfilts = 32
110
        ntaps = nfilts * 11 * self._samples_per_symbol      # make nfilts filters of ntaps each
111
        self.rrc_taps = gr.firdes.root_raised_cosine(
112
            nfilts,          # gain
113
            nfilts,          # sampling rate based on 32 filters in resampler
114
            1.0,             # symbol rate
115
            self._excess_bw, # excess bandwidth (roll-off factor)
114 116
            ntaps)
115

116
	self.rrc_filter = gr.interp_fir_filter_ccf(self._samples_per_symbol, self.rrc_taps)
117
        self.rrc_filter = gr.pfb_arb_resampler_ccf(self._samples_per_symbol, self.rrc_taps)
117 118

118 119
        if verbose:
119 120
            self._print_verbage()
......
246 247

247 248
        # Frequency correction
248 249
        self.freq_recov = gr.fll_band_edge_cc(self._samples_per_symbol, self._excess_bw,
249
                                              11*self._samples_per_symbol,
250
                                              11*int(self._samples_per_symbol),
250 251
                                              self._freq_alpha, self._freq_beta)
251 252

252 253

253 254
        # symbol timing recovery with RRC data filter
254 255
        nfilts = 32
255
        ntaps = 11 * samples_per_symbol*nfilts
256
        ntaps = 11 * int(samples_per_symbol*nfilts)
256 257
        taps = gr.firdes.root_raised_cosine(nfilts, nfilts,
257 258
                                            1.0/float(self._samples_per_symbol),
258 259
                                            self._excess_bw, ntaps)
......
268 269
        fmin = -0.5
269 270
        fmax = 0.5
270 271

271
        self.clock_recov = gr.costas_loop_cc(self._costas_alpha,
272
        self.phase_recov = gr.costas_loop_cc(self._costas_alpha,
272 273
                                             self._costas_beta,
273 274
                                             fmax, fmin, arity)
274 275

......
297 298
 
298 299
        # Connect
299 300
        self.connect(self, self.agc, 
300
                     self.freq_recov, self.time_recov, self.clock_recov,
301
                     self.freq_recov, self.time_recov, self.phase_recov,
301 302
                     self.diffdec, self.slicer, self.symbol_mapper, self.unpack, self)
302 303
        if sync_out: self.connect(self.time_recov, (self, 1))
303 304

Also available in: Unified diff