On Sun, 2009-04-26 at 22:30 +0500, M. Awais Arshad wrote: > Hi, > > The following are some code segments of gsm-scan.py basically > used for gsm data reception. I have a few questions about the > difference between input_rate and sps, > > > > clock_rate = 64e6 > #set the default input rate, we will check with the USRP if it is > being used > input_rate = clock_rate / options.decim > gsm_symb_rate = 1625000.0 / 6.0 > sps = input_rate/gsm_symb_rate > > > > # configure the processing blocks > # configure channel filter > filter_cutoff = 145e3 #135,417Hz is GSM bandwidth > filter_t_width = 10e3 > > #Only DSP adjust for offset on datafile, adjust tuner for USRP > #TODO: see if we can change this offset at runtime based on freq > detection > if options.inputfile: > offset = self.offset > else: > offset = 0.0 > > filter_taps = gr.firdes.low_pass(1.0, input_rate, filter_cutoff, > filter_t_width, gr.firdes.WIN_HAMMING) > self.filter = gr.freq_xlating_fir_filter_ccf(1, filter_taps, offset, > input_rate) > > # configure demodulator > # adjust the phase gain for sampling rate > self.demod = gr.quadrature_demod_cf(sps); > > #configure clock recovery > gain_mu = 0.01 > gain_omega = .25 * gain_mu * gain_mu # critically damped > self.clocker = gr.clock_recovery_mm_ff( sps, > gain_omega, > 0.5, #mu > gain_mu, > 0.3) #omega_relative_limit, > > self.burst = gsm.burst_ff() > self.connect(self.filter, self.demod, self.clocker, self.burst) > > > > . Can anyone please give me an idea why " > gr.freq_xlating_fir_filter_ccf " is used here and 'input_rate' is used > as an argument in stead of 'sps'. Well, because a freq_translating_fir_filter needs the input rate. It knows nothing about symbols so sps (samples per symbol) makes no sense here.
> Whereas, in quadrature demod and Clock_recovery_mm 'sps' is used for > sampling rate sps is not used for samplingrate. Did you even bother looking up what the parameters mean. In quadrature_demod the parameter means gain (not sampling rate) See: http://gnuradio.org/doc/doxygen/classgr__quadrature__demod__cf.html In clock_recovery_mm_ff the first parameter means omega (not sampling rate) http://gnuradio.org/doc/doxygen/classgr__clock__recovery__mm__ff.html > and why clock recovery is used after demodulation block ? Because you want to recover the symbol clock. As long as the samples are not demodulated there exists no symbols. > Are I and Q samples are flowing out of clocker block or are they the > encoded bits ? > Mueller and Moeller (M&M) based clock recovery block with float input, float output. This implements the Mueller and Moeller (M&M) discrete-time error-tracking synchronizer. See "Digital Communication Receivers: Synchronization, Channel Estimation and Signal Processing" by Heinrich Meyr, Marc Moeneclaey, & Stefan Fechtel. ISBN 0-471-50275-8. > > Thanks, > > > M.Awais > > > _______________________________________________ > Discuss-gnuradio mailing list > Discuss-gnuradio@gnu.org > http://lists.gnu.org/mailman/listinfo/discuss-gnuradio _______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio