*gmsk.py -送信側 Gnuradioで用意されているgmskは以下のフローで構成される。 self.connect(self, self.nrz, self.gaussian_filter, self.fmmod, self) それぞれのノードのパラメータは以下のように設定されている。 ntaps = 4 * samples_per_symbol # up to 3 bits in filter at once sensitivity = (pi / 2) / samples_per_symbol # phase change per bit = pi / 2 # Turn it into NRZ data. self.nrz = gr.bytes_to_syms()//NRZ信号に変換 # Form Gaussian filter # Generate Gaussian response (Needs to be convolved with window below). self.gaussian_taps = gr.firdes.gaussian( 1, # gain samples_per_symbol, # symbol_rate bt, # bandwidth * symbol time ntaps # number of taps ) self.sqwave = (1,) * samples_per_symbol # rectangular window self.taps = numpy.convolve(numpy.array(self.gaussian_taps),numpy.array(self.sqwave)) self.gaussian_filter = gr.interp_fir_filter_fff(samples_per_symbol, self.taps) # FM modulation self.fmmod = gr.frequency_modulator_fc(sensitivity)//周波数変調 -受信側 フローは以下。 self.connect(self, self.fmdemod, self.clock_recovery, self.slicer, self) *結果 gmskは結局シミュレーションで、マルチユーザCDMAを実現することができなかった。。 相互相関特性を保存したまま、送信できる変調方式はないのか。。