// print usage/help message void usage() { printf("sandbox/modem_demodulate_arb_gentab [options]\n"); printf(" u/h : print usage\n"); printf(" m : input modulation scheme (arb64vt default)\n"); printf(" r : reference modulation scheme (qam16 default)\n"); liquid_print_modulation_schemes(); printf(" a : alpha (reference scheme gain), default: 1.0\n"); }
// print usage/help message void usage() { printf("modem.genplot [options]\n"); printf(" u/h : print usage\n"); printf(" g : specify gnuplot version\n"); printf(" t : specify gnuplot terminal (e.g. pdf, jpg, eps)\n"); printf(" d : input data filename\n"); printf(" f : output gnuplot filename\n"); printf(" m : modulation scheme (psk default)\n"); liquid_print_modulation_schemes(); }
void usage() { printf("ofdm_ber_test [options]\n"); printf(" h : print usage\n"); printf(" s : signal-to-noise ratio [dB], default: 6.5\n"); printf(" M : number of subcarriers (must be even), default: 64\n"); printf(" C : cyclic prefix length, default: 16\n"); printf(" m : modulation scheme (bpsk default)\n"); liquid_print_modulation_schemes(); printf(" n : number of OFDM symbols, default: 40\n"); printf(" c : number of channel taps, default: 1\n"); }
// print usage/help message void usage() { printf("nco_pll_modem_example [options]\n"); printf(" u/h : print usage\n"); printf(" s : signal-to-noise ratio, default: 30dB\n"); printf(" b : pll bandwidth, default: 1e-3\n"); printf(" n : number of symbols, default: 256\n"); printf(" P : phase offset (radians), default: pi/10 ~ 0.3146\n"); printf(" F : frequency offset (radians), default: 0.001\n"); printf(" m : modulation scheme, default: qpsk\n"); liquid_print_modulation_schemes(); }
// print usage/help message void usage() { printf("simulate_per_test options:\n"); printf(" u/h : print usage\n"); printf(" n : number of decoded bytes, default: 1024\n"); printf(" m : modulation scheme, default: psk\n"); liquid_print_modulation_schemes(); printf(" c : coding scheme (inner), default: h74\n"); printf(" k : coding scheme (outer), default: none\n"); liquid_print_fec_schemes(); printf(" S/H : soft/hard decoding: default: hard\n"); }
// print usage/help message void usage() { printf("Usage: modem_phase_error [OPTION]\n"); printf("\n"); printf(" u/h : print usage\n"); printf(" v/q : verbose/quiet, default: verbose\n"); printf(" n : number of phase steps, default: 21\n"); printf(" t : number of trials, default: 1000\n"); printf(" s : SNR [dB], default: 12\n"); printf(" P : absolute phase offset [radians], default: pi/4\n"); printf(" m : modulation scheme, default: psk\n"); liquid_print_modulation_schemes(); printf(" o : output filename, default: 'figures.gen/modem_phase_error[modscheme].dat'\n"); }
// print usage/help message void usage() { printf("Usage: eqlms_cccf_decisiondirected_example [OPTION]\n"); printf(" h : print help\n"); printf(" n : number of symbols, default: 500\n"); printf(" s : SNR [dB], default: 30\n"); printf(" c : number of channel filter taps (minimum: 1), default: 5\n"); printf(" k : samples/symbol, default: 2\n"); printf(" m : filter semi-length (symbols), default: 4\n"); printf(" b : filter excess bandwidth factor, default: 0.3\n"); printf(" p : equalizer semi-length (symbols), default: 3\n"); printf(" u : equalizer learning rate, default; 0.05\n"); printf(" M : modulation scheme (qpsk default)\n"); liquid_print_modulation_schemes(); }
void usage() { printf("flexframesync_example [options]\n"); printf(" u/h : print usage\n"); printf(" s : signal-to-noise ratio [dB], default: 20\n"); printf(" F : carrier frequency offset, default: 0.01\n"); printf(" n : payload length [bytes], default: 120\n"); printf(" m : modulation scheme (qpsk default)\n"); liquid_print_modulation_schemes(); printf(" v : data integrity check: crc32 default\n"); liquid_print_crc_schemes(); printf(" c : coding scheme (inner): h74 default\n"); printf(" k : coding scheme (outer): none default\n"); liquid_print_fec_schemes(); printf(" d : enable debugging\n"); }
// print usage/help message void usage() { printf("generate_per_data options:\n"); printf(" u/h : print usage\n"); printf(" v|q : verbose|quiet, default: verbose\n"); printf(" B|P : simulate for BER|PER, default: PER\n"); printf(" s|e : estimate SNR|Eb/N0, default: SNR\n"); printf(" S|H : soft/hard decoding, default: hard\n"); printf(" E : target error rate, default: 0.05\n"); printf(" n : frame length [bytes], default: 1024\n"); //printf(" m : minimum number of errors\n"); //printf(" t : minimum number of trials\n"); printf(" x : maximum number of trials, default: 10,000 (BER) or 100 (PER)\n"); printf(" c : coding scheme: h74 default\n"); liquid_print_fec_schemes(); printf(" m : modulation scheme (qpsk default)\n"); liquid_print_modulation_schemes(); }
void usage() { printf("ofdmflexframesync_example [options]\n"); printf(" -h : print usage\n"); printf(" -s <snr> : signal-to-noise ratio [dB], default: 20\n"); printf(" -F <freq> : carrier frequency offset, default: 0.002\n"); printf(" -M <num> : number of subcarriers (must be even), default: 64\n"); printf(" -C <len> : cyclic prefix length, default: 16\n"); printf(" -n <len> : payload length [bytes], default: 120\n"); printf(" -m <mod> : modulation scheme (qpsk default)\n"); liquid_print_modulation_schemes(); printf(" -v <crc> : data integrity check: crc32 default\n"); liquid_print_crc_schemes(); printf(" -c <fec> : coding scheme (inner): h74 default\n"); printf(" -k <fec> : coding scheme (outer): none default\n"); liquid_print_fec_schemes(); printf(" -d : enable debugging\n"); }
void usage() { printf("ofdmflexframesync_example [options]\n"); printf(" u/h : print usage\n"); printf(" s : signal-to-noise ratio [dB], default: 30\n"); printf(" F : carrier frequency offset, default: 0.002\n"); printf(" M : number of subcarriers (must be even), default: 64\n"); printf(" C : cyclic prefix length, default: 16\n"); printf(" n : payload length [bytes], default: 120\n"); printf(" m : modulation scheme (qpsk default)\n"); liquid_print_modulation_schemes(); printf(" v : data integrity check: crc32 default\n"); liquid_print_crc_schemes(); printf(" c : coding scheme (inner): h74 default\n"); printf(" k : coding scheme (outer): none default\n"); liquid_print_fec_schemes(); printf(" d : enable debugging\n"); }
void usage() { printf("flexframesync_sim\n"); printf(" Simulates the flexframesync object and observes the\n"); printf(" probability of properly receiving a packet based on\n"); printf(" the encoding scheme vs. SNR.\n"); printf("options:\n"); printf(" u/h : print usage/help\n"); printf(" o : output filename\n"); printf(" s : SNR start [dB], -9\n"); printf(" d : SNR step [dB], 1.0\n"); printf(" x : SNR max [dB], 10\n"); printf(" n : number of trials, 800\n"); printf(" f : frame bytes (packet len), 16\n"); printf(" m : mod scheme, default: qpsk\n"); liquid_print_modulation_schemes(); printf(" c : fec coding scheme (inner), default: none\n"); printf(" k : fec coding scheme (outer), default: none\n"); liquid_print_fec_schemes(); }
void usage() { printf("ofdmflexframesync_sim\n"); printf(" Simulates the ofdmflexframesync object and observes the\n"); printf(" probability of properly receiving a packet based on\n"); printf(" the encoding scheme vs. SNR.\n"); printf("options:\n"); printf(" u/h : print usage/help\n"); printf(" o : output filename\n"); printf(" s : SNR start [dB], -5\n"); printf(" d : SNR step [dB], 1.0\n"); printf(" x : SNR max [dB], 10\n"); printf(" n : number of trials, 1000\n"); printf(" f : frame bytes (packet len), 256\n"); printf(" M : number of subcarriers (must be even), default: 64\n"); printf(" C : cyclic prefix length, default: 16\n"); printf(" m : mod scheme, default: qpsk\n"); liquid_print_modulation_schemes(); printf(" c : fec coding scheme (inner), default: h128\n"); printf(" k : fec coding scheme (outer), default: none\n"); liquid_print_fec_schemes(); }
void LiquidOfdmModComponent::initialize() { // print capabilities of liquid if (debug_x) { liquid_print_modulation_schemes(); liquid_print_fec_schemes(); liquid_print_crc_schemes(); } // initialize subcarrier allocation unsigned char p[noSubcarriers_x]; ofdmframe_init_default_sctype(noSubcarriers_x, p); // create frame generator properties object and initialize to default ofdmflexframegenprops_s fgProps; ofdmflexframegenprops_init_default(&fgProps); modulation_scheme ms = liquid_getopt_str2mod(modulationScheme_x.c_str()); fec_scheme fec0 = liquid_getopt_str2fec(fecZero_x.c_str()); fec_scheme fec1 = liquid_getopt_str2fec(fecOne_x.c_str()); crc_scheme check = liquid_getopt_str2crc(crcScheme_x.c_str()); fgProps.mod_scheme = ms; fgProps.fec0 = fec0; fgProps.fec1 = fec1; fgProps.check = check; gain_factor_ = powf(10.0f, gain_x/20.0f); // create frame generator object try { frameGenerator_ = ofdmflexframegen_create(noSubcarriers_x, cyclicPrefixLength_x, taperLength_x, p, &fgProps); ofdmflexframegen_print(frameGenerator_); } catch(...) { LOG(LERROR) << "Unexpected exception caught during frame generator generation"; } }