benchmark_rx.py

space_escalator @ ウィキ内検索 / 「benchmark_rx.py」で検索した結果

検索 :
  • benchmark_rx.py
    フロー Source → LPF → dbpsk demodulator → descrambler → access code correlator → Sink usrpソースの作成 self.u = usrp_options.create_usrp_source(options) self.u.set_decim(self._decim) options.bitrate, self._demod_class.bits_per_symbol(), options.samples_per_symbol, options.decim, adc_rate, から最適なdecimationを決定した後、この関数でそれをセットする。 LPFの作成 self.channel_filter = gr.fft_filter_ccc(sw_decim, chan_coeffs...
  • GNU Radio
    ...ark_tx.py benchmark_rx.py gr_scrambler_bb test_cdma_tx.py test_cdma_rx.py C++サンプルコード howto_interp_scrambler_cc howto_interp_gscrambler_cc gr_pn_correlator_ccの調査 howto_decim_gdescrambler_cc howto_correlation_sink_c howto_signal_adder_cc 課題と検討 拡散について USRP2の設定 RRCフィルタについて チップ同期について 符号 実はCDMAできてなかった!?急いでデバッグ! gmskについて bpskの実現に向けて USRP2送信波形の歪み USRP210 オシロスコープ ついに1対1のCDMAが動いた。。 そして終焉へ。。 参考 通信システムのディ...
  • benchmark_tx.py
    パケット送信プログラムのサンプルコード。 受信に成功しやすいパラメータの例) ./benchmark_tx.py -f 2.45G -m dbpsk -s 10 -r 64k ペイロードデータ デフォルトではパケット番号+パケット番号下位1バイトのペイロードが作られる。 Pythonではバイト列を文字列として扱う data = (pkt_size - 2) * chr(pktno 0xff) #chr()は引数に対応するascii文字を返す。これを指定パケットサイズ-2個繋げてdataに格納。 payload = struct.pack( !H , pktno 0xffff) + data #パケット番号の下位2バイト(複数バイトなのでネットワークバイトオーダーを指定)とdataを繋げてpayload完成。 send_pkt(payload) パケットの作成:mod...
  • チップ同期について
    benchmark_rxではusrpから来た信号をLPFにいきなりかけている。 搬送波成分を取り除くためにはその前に、チップ同期を図って、搬送波周波数の信号を受信信号に 乗算してやる必要があるが、それはどこで行っているのか?
  • test_cdma_rx.py
    #!/usr/bin/env python from gnuradio import gr, gru, modulation_utils, blks2, howto from gnuradio import usrp from gnuradio import eng_notation from gnuradio.eng_option import eng_option from optparse import OptionParser from pick_bitrate import pick_rx_bitrate import spreading_dbpsk import usrp_options import random import struct import sys # from current dir import usrp_receive_path #import os...
  • USRP2の設定
    今まであまり深堀していなかったUSRP2について調査をする。 pick_bitrate.py _pick_bitrate() xrate(interpolation)及びsamples_per_symbolが決まっている場合、ビットレートを以下の式で決定している。 ビットレート = converter_rate(100Mbps) / xrate / samples_per_symbol 新しく買ったUSRP2が動かない。。 以下、./benchmark_tx.pyを実行すると発生するエラー。 gr_fir_ccf using SSE dac_rate= 100M samples/symbol= 2 Requested TX Bitrate 100k Actual Bitrate 100k interp_rates= 500 Failed to set Rx...
  • USRP210
    USRP210の導入 経緯 USRP2はなぜか動作が不安定なため、USRP210を購入。 早速実験を開始しようとしたが、ななんと今までの環境(GNURadio3.2.2-1、Ubuntu9.04)では動かない。 USRP210はUHDドライバを採用していて、それに対応したAPIはGNURadio3.4以降。ソースはこれ。 しかもLatestバージョン(3.4は2011.09くらいにリリース)はバイナリパッケージはないから面倒。。 build-gnuradioを使ってもエラーで進まなかった。。 今後 もはやUbuntu9.04にこだわる必要はなくなった。(面倒だった/etc/apt/sources.listの設定もしなくて済む。) とりま、UHD及びGNURadio3.4.1を最新LinuxディストリビューションにインストールしてUSRP210を使ったサンプルプログラムを動...
  • gr_mpsk_receiver()
    まずはworkの部分 int gr_mpsk_receiver_cc general_work (int noutput_items, gr_vector_int ninput_items, gr_vector_const_void_star input_items, gr_vector_void_star output_items) { const gr_complex *in = (const gr_complex *) input_items[0]; gr_complex *out = (gr_complex *) output_items[0]; int i=0, o=0; while((o noutput_items) (i ninput_items[0])) { while((d_mu 1) (...
  • test_cdma_tx.py
    #!/usr/bin/env python from gnuradio import gr, gru, modulation_utils, howto from gnuradio import usrp, usrp2 from gnuradio import eng_notation from gnuradio.eng_option import eng_option from optparse import OptionParser from pick_bitrate import pick_tx_bitrate import spreading_dbpsk import random, time, struct, sys, copy import usrp_options # from current dir import usrp_transmit_path #import os...
  • spreading_dbpsk.py
    """ differential BPSK modulation and demodulation. """ from gnuradio import gr, gru, modulation_utils, howto from math import pi, sqrt import psk import cmath from pprint import pprint # default values (used in __init__ and add_options) _def_samples_per_symbol = 2 _def_excess_bw = 0.35 _def_gray_code = True _def_verbose = False _def_log = False _def_costas_alpha = ...
  • gmskについて
    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 Gaussia...
  • ついに1対1のCDMAが動いた。。
    動いた。。 なぜ動いたか GNURadio4.Xでアップデートされたクロックリカバリー回路を用いたらBERがほぼ0に(全ビットが反転してしまう場合を除く)。 マルチユーザはだめ? やった!これで論文書ける!と意気込み さて次はマルチユーザだ!とすぐさまやったが、うまく動かない。 信号が衝突してしまうせいか、全然同期がとれない。→無線で試したがやはりだめ。。 マルチユーザへの挑戦 なぜ動かないのか? 以下はoscilloscopeでキャプチャした画像だが、キャリア周波数がベースバンドよりもなぜか小さく(?)、 マルチユーザにしたときに減衰部分がかき消されてしまう。→検討違い。 このキャプチャによると、キャリアらしきものは1kHzくらい。 CDMAチップレートは97.5kchip/sec(=195sample/sec÷2sample/symbol)くらい。(つ...
  • フローグラフの作成:Python
    ブロック間の情報は得られない サンプリングレートは各ブロックで指定する必要がある Gnuradio Tutorialより「GNU Radio cannot guess the correct sampling rate from the context, as it is not part of the information flow between blocks.」 digital_tone.pyより 13 src0 = gr.sig_source_f (sample_rate, gr.GR_SIN_WAVE, 350, ampl)#ちゃんと各ブロックでsample_rateを指定している 14 src1 = gr.sig_source_f (sample_rate, gr.GR_SIN_WAVE, 440, ampl) 15 d...
  • test_cdma_rx
    CDMAの受信機を構築する。 print機能を標準出力させると負荷が重くうまく復号できないので、 リダイレクトでファイルに出力させてやる。 送受1対1の受信結果 M系列 by glfsr (系列長15) in[22]=0.000000, out[22]=0.000000 in[23]=0.000000, out[23]=0.000000 in[24]=0.000000, out[24]=0.000000 in[25]=1.000000, out[25]=1.000000 in[26]=1.000000, out[26]=1.000000 //↑ここまでは誤り //ここからはちゃんと復号できている! in[27]=0.000000, out[27]=0.000000 in[28]=0.000000, out[28]=0.000000 in[29]=0.000000, out[29...
  • test_cdma_tx
    M系列のみを送信するプログラム。 gr.glfsr_source_b(int degree, bool repeat, int mask, int seed) M系列を発生させるブロック。出力はunsigned char(1 or 0) 以下、gr_glfsr_sourceブロックの定義 int gr_glfsr_source_b work ( int noutput_items, gr_vector_const_void_star input_items, gr_vector_void_star output_items ) ここでgr_vector_void_starはunsigned char型の配列になる。 これを直接mod_bpsk内のgr.packed_to_unpacked_bbに接続してはだめ! このブロックは入出力をunsigned...
  • howto_interp_scrambler_cc.cc
    /* -*- c++ -*- */ /* * Copyright 2004 Free Software Foundation, Inc. * * This file is part of GNU Radio * * GNU Radio is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3, or (at your option) * any later version. * * GNU Radio is distributed in the hope that it wi...
  • RCCフィルタについて
    一次変調信号を拡散させた信号を伝送する際に、最適にRCCフィルタを設定しなければならない。 指定された帯域内で信号を送信するため、パルス整形フィルタでデータビットが成形される。 その信号はキャリア変調部と無線周波数(RF)変換部を通過してアンテナを通して空気中に送信される。 (参考資料 altera,fujitsu,慶応) W-CDMAではチャネライゼーションとスクランブルという拡散が行われており、 前者が同セル内でユーザ間を識別したり、マルチコード伝送(1ユーザが複数チャネルを使うこと?)を実現するのに使われている。 後者はセル間の識別に用いられている。 一般的にはチャネライゼーションに直行符号、スクランブルにGold符号が用いられている。 alteraの仕様書ではどちらの拡散もQPSK変調する前に行っている。 一方fujitsuの仕様書ではチャネライゼーションをQPS...
  • リモートデバッグ設定の苦難
    恐ろしきpydevd pydevd.pyとはリモートデバッグサーバ機能を有するpythonモジュール。 これを動かすのは超簡単。 しかし、リモートのクライアントからこのサーバに向けたtcp通信を確立するのが超大変だった。 まず、forwardingはクライアントからサーバに向けてやらなければならないことに気付かなかった。。 気づいてもそのあとが大変。。 リモートクライアントがubuntuなのだが、なぜかサーバにフォワードされているゲートウェイの5678ポートにtcpが確立できない。。orz [root@remotehost]telnet ゲートウェイIP 5678 [root@remotehost]telnet localhost 5678 としてもconnection refusedされてしまうのである。 dportが5678のものは遮断されてしまうのかと推測してu...
  • howto_correlation_sink_c.cc
    #ifdef HAVE_CONFIG_H #include config.h #endif #include howto_correlation_sink_c.h #include algorithm #include gr_io_signature.h static const int MIN_IN = 1;// mininum number of input streams static const int MAX_IN = -1;// maximum number of input streams static const int MIN_OUT = 1; static const int MAX_OUT = -1; howto_correlation_sink_c howto_correlation_sink_c (unsigned decimation, ...
  • gr-howto-write-a-blockでコンパイル戦記
    gr-how-to-write-a-blockをこの通りにやったけど、 howtoモジュールをimportすると以下のようなエラーがでる。 Traceback (most recent call last) File " stdin ", line 1, in module File "howto.py", line 6, in module import _howto ImportError ./_howto.so undefined symbol _Z19howto_make_print_ffv howto_make_print_ffのライブラリオブジェクトである、_howto_la-print_ff.loが生成されていないので、 おそらくリンクに失敗している。 Makefile.amの変更(how...
  • SignalProcessingブロックの作成:C++
    Pythonとの切り分けは? From the Python point of view, GNU Radio provides a data flow abstraction. パイソンはデータフロウの概要を提供する。 From the high level point-of-view, infinite streams of data flow through the ports. At the C++ level, streams are dealt with in convenient sized pieces, represented as contiguous arrays of the underlying type. C++ブロックは潜在に潜む配列によって切り分けられたストリームが扱われる。 3つのファイルが必要 xxx.h, xxx.cc #新しいクラスを定義...
  • gr_pn_correlator_ccの調査
    pn系列で直接逆拡散するブロックを作る gr_pn_correlator_cc.h #ifndef INCLUDED_GR_PN_CORRELATOR_CC_H #define INCLUDED_GR_PN_CORRELATOR_CC_H #include gr_sync_decimator.h #include gri_glfsr.h class gr_pn_correlator_cc; typedef boost shared_ptr gr_pn_correlator_cc gr_pn_correlator_cc_sptr; gr_pn_correlator_cc_sptr gr_make_pn_correlator_cc(int degree, int mask=0, int seed=1); /*! * \brief PN code sequential ...
  • howto_interp_gscrambler_cc.cc
    #ifdef HAVE_CONFIG_H #include "config.h" #endif #include howto_interp_gscrambler_cc.h #include gr_io_signature.h #include stdexcept #include iostream howto_interp_gscrambler_cc_sptr howto_make_interp_gscrambler_cc (unsigned interpolation, int degree, int mask, int seed) { return howto_interp_gscrambler_cc_sptr (new howto_interp_gscrambler_cc (interpolation, degree, mask, seed...
  • howto_correlation_sink_c.h
    #ifndef INCLUDED_HOWTO_CORRELATION_SINK_C_H #define INCLUDED_HOWTO_CORRELATION_SINK_C_H #include gr_sync_decimator.h class howto_correlation_sink_c; typedef boost shared_ptr howto_correlation_sink_c howto_correlation_sink_c_sptr; howto_correlation_sink_c_sptr howto_make_correlation_sink_c (unsigned decimation, int vlen = 1); /*! * \brief gr_complex sink that writes to a vector * \ingrou...
  • test_decim_gdescrambler_cc.py
    from gnuradio import gr, howto class my_top_block(gr.top_block) def __init__(self) gr.top_block.__init__(self) #interpolation = 31 #mask = 0 #seed = 1; #reg_len = 4 #x^5 + x^3 + x^0 = 41 ,ntaps = 31 interpolation = 15 mask = 0 seed = 2 degree = 4 #2^4 + 2^3 + 2^0 = 25 ,ntaps = 15 scrambler = how...
  • gri_float_lfsr.h
    /* -*- c++ -*- */ //This is original code for Gnuradio #ifndef INCLUDED_GRI_FLOAT_LFSR_H #define INCLUDED_GRI_FLOAT_LFSR_H #include stdexcept #include stdint.h /* #include bitset #include iostream */ /*! * \brief Fibonacci Linear Feedback Shift Register using specified polynomial mask * \ingroup misc * * Generates a maximal length pseudo-random sequence of length 2^degree-1 * * C...
  • howto_decim_gdescrambler_cc.cc
    #ifdef HAVE_CONFIG_H #include "config.h" #endif #include howto_decim_gdescrambler_cc.h #include gr_io_signature.h #include math.h howto_decim_gdescrambler_cc_sptr howto_make_decim_gdescrambler_cc(int degree, int mask, int seed) { return howto_decim_gdescrambler_cc_sptr (new howto_decim_gdescrambler_cc(degree, mask, seed)); } howto_decim_gdescrambler_cc howto_decim_gdescramble...
  • 拡散について
    dbpskにおいて拡散は有効なのか? シミュレーションではbpskを用いるため、拡散は実数値のみを用いており、虚数値に関する拡散は行っていない。 しかし、dbpskで変調された信号には虚数軸にも情報を含むため、虚数部も拡散してやらないといけない! 以下、実部及び虚部を拡散させてCDMAのシミュレーションをした結果 入力信号1 = (3.0-1.0j, -2.0+1.0j, 1.0+3.0j) 入力信号2 = (2.0-3.0j, -1.0+2.0j, 2.0+1.0j) をそれぞれ系列長15と31のM系列で掛け合わせて足した信号を、入力信号1に対する逆拡散を行った結果。 root@omori-desktop /usr/share/gnuradio/examples/digital# python ./test_cdma_sim.py noutput_items = 2 i...
  • howto_decim_gdescrambler_cc.h
    #ifndef INCLUDED_HOWTO_DECIM_GDESCRAMBLER_CC_H #define INCLUDED_HOWTO_DECIM_GDESCRAMBLER_CC_H #include gr_sync_decimator.h #include gri_glfsr.h class howto_decim_gdescrambler_cc; typedef boost shared_ptr howto_decim_gdescrambler_cc howto_decim_gdescrambler_cc_sptr; howto_decim_gdescrambler_cc_sptr howto_make_decim_gdescrambler_cc(int degree, int mask=0, int seed=1); /*! * \brief PN code ...
  • そして終焉へ。。
    マルチユーザが動いた なぜできたのか? 複素拡散にした まず、複素拡散・逆拡散にして、その前後に位相差分変調を挿入。 位相差分変調にした理由 通信路で結構フェージングがあるせか、相関器が出力する値が虚部に結構いっていた。 シングルユーザだとほぼBER=20% だけどマルチユーザだと25%%くらい BERを下げる historyが設定されてなかった! On Tue, Dec 22, 2009 at 12 22 29PM +0800, zhi yan wrote Hi All, I am confused of the Set_history() which is a function of gr_block, what is the function of this function? thanks~~ It exists so t...
  • howto_interp_gscrambler_cc.h
    #ifndef INCLUDED_HOWTO_INTERP_GSCRAMBLER_CC_H #define INCLUDED_HOWTO_INTERP_GSCRAMBLER_CC_H #include gr_sync_interpolator.h #include "gri_glfsr.h" class howto_interp_gscrambler_cc; typedef boost shared_ptr howto_interp_gscrambler_cc howto_interp_gscrambler_cc_sptr; howto_interp_gscrambler_cc_sptr howto_make_interp_gscrambler_cc (unsigned interpolation, int mask, int seed, int len);...
  • howto_scrambler_cc
    PN系列で直接拡散させるブロックを作る。入力対出力レートは1:N(Nは拡散符号の周期) まず、拡散符号を取り扱うクラスを調べる。 gr_lfsr.h フィボナッチ線形帰還シフトレジスタで多項式マスクを指定することで、拡散符号を生成する。 詳細 コンストラクタ gri_lfsr(int mask, int seed, int reg_len); mask 次の次数のビットを作る(シフトする)ときに、帰還をかけるタップの場所を指定する多項式の係数。そこはxor演算される。例えば以下のようなマスクがある。 x^4 + x^3 + x^0 = 0x19 (周期 15) x^5 + x^3 + x^0 = 0x29 (周期 31) x^6 + x^5 + x^0 = 0x61 (周期 63) seed...
  • 実はCDMAできてなかった!?急いでデバッグ!
    以下送信側のscrambler後の出力。送信ビット列は(1,1,1)の繰り返し。 dac_rate= 100M samples/symbol= 2 Requested TX Bitrate 100k Actual Bitrate 100k interp_rates= 500 noutput_items = 4096 in[0]=-1+1.22461e-16j, out[0]=-1+1.22461e-16j in[1]=1+-1.22461e-16j, out[1]=1+-1.22461e-16j in[2]=1+-1.22461e-16j, out[2]=1+-1.22461e-16j in[3]=1+-1.22461e-16j, out[3]=1+-1.22461e-16j in[4]=-1+1.22461e-16j, out[4]=-1+1.22461e-16j in[5]=-1+...
  • howto_signal_adder_cc.cc
    #ifdef HAVE_CONFIG_H #include config.h #endif #include howto_signal_adder_cc.h #include algorithm #include gr_io_signature.h static const int MIN_IN = 1;// mininum number of input streams static const int MAX_IN = -1;// maximum number of input streams static const int MIN_OUT = 1; static const int MAX_OUT = -1; howto_signal_adder_cc howto_signal_adder_cc (int vlen) gr_sync_block (&q...
  • howto_decim_gdescrambler_cc
    M系列を使った直接逆拡散ブロックを作る。 基本的にgr_pn_correlator_ccをいじって作った。 usage descrambler = howto.decim_gdescrambler_cc(degree, mask, seed) 実行結果 src_data = (3.0+1.0j, -1.0+1.0j, 1.0+3.0j) noutput_items = 2 in[0]=3+1j, out[0]=3+1j in[1]=-1+1j, out[1]=-1+1j noutput_items = 1 in[0]=1+3j, out[0]=1+3j ソースコード howto_decim_gdescrambler_cc.h howto_decim_gdescrambler_cc.cc test_decim_gdescrambler_cc.py
  • 追加したIntelのNICが動かない件
    追加したIntelのNICが動かない件 driver名 e1000e Network Adapter Driver for PCI-​​E Gigabit Network Connections under Linux* dl元 Intelドライバに関するサポート 以下の通りにやったらできた(source) ドライバ CD の Linux/Source/base_driver/e1000e- x.x.x tar.gz からベース ドライバの tar ファイルを選択したディレクトリにコピーします。 x.x.x は、ドライバの tar ファイルのバージョン番号です。 たとえば、 /home/username/e1000e または /usr/local/src/e1000e などが使用できます。 アーカイブを解凍します。( x.x.x は、ドライバ tar のバー...
  • 直交周波数分割多元接続(OFDMA)
    次世代PHS規格であるXGPや次世代携帯電話のLTE、高速無線WiMAXで採用されている。 マルチキャリア変調 1つのキャリアを複数の直行したサブキャリアに分けて変調して多重化して送る。 直行性を崩す原因は 周波数オフセット(frequency offset) タイミングジッタ(timing jitter)
  • howto_signal_adder_cc.h
    #ifndef INCLUDED_HOWTO_SIGNAL_ADDER_CC_H #define INCLUDED_HOWTO_SIGNAL_ADDER_CC_H #include gr_sync_block.h class howto_signal_adder_cc; typedef boost shared_ptr howto_signal_adder_cc howto_signal_adder_cc_sptr; howto_signal_adder_cc_sptr howto_make_signal_adder_cc (int vlen = 1); class howto_signal_adder_cc public gr_sync_block { friend howto_signal_adder_cc_sptr howto_make_signal_adde...
  • howto_interp_scrambler_cc.h
    /*! * Scramble an input stream using an LFSR. This block works on the LSB only * of the input data stream, i.e., on an "unpacked binary" stream, and * produces the same format on its output. * \interpolation 拡散符号の周期 * \param mask Polynomial mask for LFSR * \param seed Initial shift register contents * \param len Shift register length * * \ingroup coding_blk */ ...
  • プラグイン/ニュース
    ニュース @wikiのwikiモードでは #news(興味のある単語) と入力することで、あるキーワードに関連するニュース一覧を表示することができます 詳しくはこちらをご覧ください。 =>http //atwiki.jp/guide/17_174_ja.html たとえば、#news(wiki)と入力すると以下のように表示されます。 メトロイド ドレッド攻略Wiki - Gamerch(ゲーマチ) 【まおりゅう】最強パーティー編成とおすすめキャラ【転スラアプリ】 - Gamerch(ゲーマチ) 【グランサガ】リセマラ当たりランキング - グランサガ攻略wiki - Gamerch(ゲーマチ) Among Us攻略Wiki【アマングアス・アモングアス】 - Gamerch(ゲーマチ) マニュアル作成に便利な「画像編集」機能を提供開始! - ナレッジ共...
  • howto_correlation_sink_c
    入力端子が二つあるブロックを作る。 後々必要となるであろう2つの入力信号の相互相関を標準出力するブロックを作成する。 usage howto.correlation_sink_c(int interpolation) interpolationには周期を指定する。 ※2入力のブロックにはなったが、名前のとおりのsinkにできなかった(おそらくdecimatorの継承ではだめ?)のでひとまず、correlation_sink_cfとして使ってみる。。 実行結果(howto_print_ffの出力結果) 入力信号1 = (3.0+1.0j, -1.0+1.0j, 3.0+3.0j) 入力信号2 = (2.9+3.0j, -1.0+2.0j, 3.0+1.0j) noutput_items = 1 in[0]=0.999760, out[0]=0.999760 ソ...
  • libpqを使ったサンプル
    接続できない場合 "stdafx.h" stdio.h stdlib.h string.h "libpq-fe.h" static void exit_nicely(PGconn *conn) { PQfinish(conn); exit(1); } int _tmain(int argc, _TCHAR* argv[]) { const char *conninfo; PGconn *conn; PGresult *res; int nFields, nrows; int i, j; char buff[1024]; /* データベースとの接続を確立する *...
  • gr.diff_phasor_cc
    #ifdef HAVE_CONFIG_H #include "config.h" #endif #include gr_diff_phasor_cc.h #include gr_io_signature.h gr_diff_phasor_cc_sptr gr_make_diff_phasor_cc () { return gr_diff_phasor_cc_sptr (new gr_diff_phasor_cc()); } gr_diff_phasor_cc gr_diff_phasor_cc () gr_sync_block ("diff_phasor_cc", gr_make_io_signature (1, 1, sizeof (gr_complex)), ...
  • Gnuradio開発
    開発環境整備 Eclipse Eclipseを使ってWindows上でリモートデバッグする。 プラグイン pydev リモートデバッグ設定の苦難 RemoteSystemExplorer リモートホストのポートを開放する(4035,10000-10010)。 dstore サーバーが必要で、dstore daemonをリモートホストで走らせる必要がある。 このときnohup ./daemon.pl 4035 10000というようにデーモンのポートとクライアントに割り振るポートを指定し、クライアント側でも4035でRSEを起動する必要がある。 /etc/rc.local (/etc/rc.d/rc.local)システム起動時の最後に読み込まれるファイル。OSの起動直後に何かさせたい事があれば、ここに書いておくと良い。 ※sshでポートフォワードすれば、間にあるゲートウェ...
  • gr_scrambler_bb
    gr_make_scrambler_bb(int mask, int seed, int len) Detailed Description Scramble an input stream using an LFSR. This block works on the LSB only of the input data stream, i.e., on an "unpacked binary" stream, and produces the same format on its output. 線形帰還シフトレジスタによるスクランブルを行う。 このブロックは入力ストリームのLSBのみに対して動作する。 つまり、アンパックなビットストリームに対して行うものである。 さらに、同じフォーマットで出力する。 gr_make_descrambler_bb(i...
  • VNC
    UltraVNCダウンロード UltraVNC日本語化パッチ
  • cdma
    Code Division Multiple Access(CDMA) CDMAとは 日本語で「符号分割多元接続方式」(複数ユーザに対する多元接続方法であり、同じ周波数帯域を用いて同時に通信が行える。) CDMAでは、ユーザごとに分離特性(直交性)の優れた符号を個別に割り当てることにより実現する。 メリット 他の多元接続方法と比べたメリットとして、同一周波数を用いたセルの面的配置が可能なので、周波数利用効率の面で優れている。 スペクトル拡散(SS Spread Spectrum)方式 情報信号系列に符号系列を掛け合わせることで、送信信号を広帯域な低電力密度の信号に変換する。 受信側では同じ符号系列を用いて逆拡散することにより、もとの情報信号を抽出する。 この逆拡散により、帯域内に発生するインパルス上の雑音や、多重反射波干渉(マルチパスフェージング)を除去できる。 ...
  • すべこべ言わずにコンパイルしよう
    コンパイル方法 gnuradio-3.2.2 gr-howto-write-a-blockでmake ここにチュートリアルがある。 そこのexampleが書庫になってるのでgr-howto-write-a-block-X.Y.tar.gzをダウンロード。 これを参考に編集してコンパイルした方が簡単。 それまで独自で自分でやったけど、いろいろビルドするのにエラーが出て面倒くさそうだった。 コンパイル方法は猿渡さんが教えてくれています これでhowtoというモジュールのパッケージにsquare_ffが入ったものがインストールされる。 後は.iファイルを編集してどんどんオリジナルモジュールを追加するのだ! 提供されているもの automake 高級言語で記述されたmakefile.amからgnuradioに準拠したmakefileを作成してくれる。 automakeはmakef...
  • DNSサーバも追加
    LAN内DNS LAN内のGnuradio端末がネットに繋がるために必要。 ルータだとDNSなくてもいいものがあるが、ゲートウェイサーバを立てるとDNSがLAN内に必要になるみたい。 Bindの設定 キャッシュサーバの設定(named.conf) LAN内DNSでurlによるインターネットアクセスのみがしたいなら(つまりキャッシュサーバのみなら)以下の編集で十分。 acl localnet{ 192.168.0.0/24; 127.0.0.1; }; options { listen-on port 53 { 127.0.0.1; 192.168.0.0/24 }; listen-on-v6 port 53 { 1; }; directory "/var/named"; d...
  • gr_constellation_decoder_bc
    int gr_constellation_decoder_cb work(int noutput_items, gr_vector_const_void_star input_items, gr_vector_void_star output_items) { gr_complex const *in = (const gr_complex *) input_items[0]; unsigned char *out = (unsigned char *) output_items[0]; unsigned int table_size = d_sym_value_out.size(); unsigned int min_index = 0; f...
  • @wiki全体から「benchmark_rx.py」で調べる

更新順にページ一覧表示 | 作成順にページ一覧表示 | ページ名順にページ一覧表示 | wiki内検索