diff options
Diffstat (limited to 'src/lib')
-rw-r--r-- | src/lib/gsm.i | 20 | ||||
-rw-r--r-- | src/lib/gsm_receiver_cf.h | 8 | ||||
-rw-r--r-- | src/lib/gsm_receiver_config.cc | 40 | ||||
-rw-r--r-- | src/lib/gsm_receiver_config.h | 39 | ||||
-rw-r--r-- | src/lib/viterbi_detector.cc | 106 | ||||
-rw-r--r-- | src/lib/viterbi_detector.h | 106 |
6 files changed, 184 insertions, 135 deletions
diff --git a/src/lib/gsm.i b/src/lib/gsm.i index dac7602..dc0be34 100644 --- a/src/lib/gsm.i +++ b/src/lib/gsm.i @@ -1,4 +1,24 @@ /* -*- c++ -*- */ +/* + * @file + * @author Piotr Krysik <pkrysik@stud.elka.pw.edu.pl> + * @section LICENSE + * + * This program 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. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ %feature("autodoc", "1"); // generate python docstrings diff --git a/src/lib/gsm_receiver_cf.h b/src/lib/gsm_receiver_cf.h index ce05b81..d35e4da 100644 --- a/src/lib/gsm_receiver_cf.h +++ b/src/lib/gsm_receiver_cf.h @@ -2,20 +2,20 @@ /* * @file * @author Piotr Krysik <pkrysik@stud.elka.pw.edu.pl> - * @section LICENSE + * @section LICENSE * - * GNU Radio is free software; you can redistribute it and/or modify + * This program 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 will be useful, + * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with GNU Radio; see the file COPYING. If not, write to + * along with this program; see the file COPYING. If not, write to * the Free Software Foundation, Inc., 51 Franklin Street, * Boston, MA 02110-1301, USA. */ diff --git a/src/lib/gsm_receiver_config.cc b/src/lib/gsm_receiver_config.cc index 1eaff7f..44344f7 100644 --- a/src/lib/gsm_receiver_config.cc +++ b/src/lib/gsm_receiver_config.cc @@ -1,17 +1,29 @@ -// -// C++ Implementation: gsm_receiver_config -// -// Description: -// This file contains classes which define gsm_receiver configuration -// and the burst_counter which is used to store internal state of the receiver -// when it's synchronized -// -// -// Author: Piotr Krysik <perper@o2.pl>, (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// +/* -*- c++ -*- */ +/* + * @file + * @author Piotr Krysik <pkrysik@stud.elka.pw.edu.pl> + * @section LICENSE + * + * 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 will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GNU Radio; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + * + * @section DESCRIPTION + * This file contains classes which define gsm_receiver configuration + * and the burst_counter which is used to store internal state of the receiver + * when it's synchronized + */ #ifdef HAVE_CONFIG_H #include "config.h" #endif diff --git a/src/lib/gsm_receiver_config.h b/src/lib/gsm_receiver_config.h index 9222602..ebeedf7 100644 --- a/src/lib/gsm_receiver_config.h +++ b/src/lib/gsm_receiver_config.h @@ -1,16 +1,29 @@ -// -// C++ Implementation: gsm_receiver_config -// -// Description: -// This file contains classes which define gsm_receiver configuration -// and the burst_counter which is used to store internal state of the receiver -// when it's synchronized -// -// Author: Piotr Krysik <perper@o2.pl>, (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// +/* -*- c++ -*- */ +/* + * @file + * @author Piotr Krysik <pkrysik@stud.elka.pw.edu.pl> + * @section LICENSE + * + * 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 will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GNU Radio; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + * + * @section DESCRIPTION + * This file contains classes which define gsm_receiver configuration + * and the burst_counter which is used to store internal state of the receiver + * when it's synchronized + */ #ifndef INCLUDED_GSM_RECEIVER_CONFIG_H #define INCLUDED_GSM_RECEIVER_CONFIG_H diff --git a/src/lib/viterbi_detector.cc b/src/lib/viterbi_detector.cc index 2a2fede..f3445cf 100644 --- a/src/lib/viterbi_detector.cc +++ b/src/lib/viterbi_detector.cc @@ -1,57 +1,59 @@ -/*************************************************************************** - * Copyright (C) 2008 by Piotr Krysik * - * pkrysik@stud.elka.pw.edu.pl * - * * - * This program 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 2 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program; if not, write to the * - * Free Software Foundation, Inc., * - * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * - ***************************************************************************/ +/* -*- c++ -*- */ +/* + * @file + * @author Piotr Krysik <pkrysik@stud.elka.pw.edu.pl> + * @section LICENSE + * + * This program 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. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ /* -** viterbi_detector: -** This part does the detection of received sequnece. -** Employed algorithm is viterbi Maximum Likehood Sequence Estimation. -** At this moment it gives hard decisions on the output, but -** it was designed with soft decisions in mind. -** -** SYNTAX: void viterbi_detector( -** const gr_complex * input, -** unsigned int samples_num, -** gr_complex * rhh, -** unsigned int start_state, -** const unsigned int * stop_states, -** unsigned int stops_num, -** float * output) -** -** INPUT: input: Complex received signal afted matched filtering. -** samples_num: Number of samples in the input table. -** rhh: The autocorrelation of the estimated channel -** impulse response. -** start_state: Number of the start point. In GSM each burst -** starts with sequence of three bits (0,0,0) which -** indicates start point of the algorithm. -** stop_states: Table with numbers of possible stop states. -** stops_num: Number of possible stop states -** -** -** OUTPUT: output: Differentially decoded hard output of the algorithm: -** -1 for logical "0" and 1 for logical "1" -** -** SUB_FUNC: none -** -** TEST(S): Tested with real world normal burst. -*/ + * viterbi_detector: + * This part does the detection of received sequnece. + * Employed algorithm is viterbi Maximum Likehood Sequence Estimation. + * At this moment it gives hard decisions on the output, but + * it was designed with soft decisions in mind. + * + * SYNTAX: void viterbi_detector( + * const gr_complex * input, + * unsigned int samples_num, + * gr_complex * rhh, + * unsigned int start_state, + * const unsigned int * stop_states, + * unsigned int stops_num, + * float * output) + * + * INPUT: input: Complex received signal afted matched filtering. + * samples_num: Number of samples in the input table. + * rhh: The autocorrelation of the estimated channel + * impulse response. + * start_state: Number of the start point. In GSM each burst + * starts with sequence of three bits (0,0,0) which + * indicates start point of the algorithm. + * stop_states: Table with numbers of possible stop states. + * stops_num: Number of possible stop states + * + * + * OUTPUT: output: Differentially decoded hard output of the algorithm: + * -1 for logical "0" and 1 for logical "1" + * + * SUB_FUNC: none + * + * TEST(S): Tested with real world normal burst. + */ #include <gnuradio/gr_complex.h> #include <gsm_constants.h> diff --git a/src/lib/viterbi_detector.h b/src/lib/viterbi_detector.h index 03f483f..0360f83 100644 --- a/src/lib/viterbi_detector.h +++ b/src/lib/viterbi_detector.h @@ -1,57 +1,59 @@ -/*************************************************************************** - * Copyright (C) 2008 by Piotr Krysik * - * pkrysik@stud.elka.pw.edu.pl * - * * - * This program 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 2 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program; if not, write to the * - * Free Software Foundation, Inc., * - * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * - ***************************************************************************/ +/* -*- c++ -*- */ +/* + * @file + * @author Piotr Krysik <pkrysik@stud.elka.pw.edu.pl> + * @section LICENSE + * + * This program 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. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ /* -** viterbi_detector: -** This part does the detection of received sequnece. -** Employed algorithm is viterbi Maximum Likehood Sequence Estimation. -** At this moment it gives hard decisions on the output, but -** it was designed with soft decisions in mind. -** -** SYNTAX: void viterbi_detector( -** const gr_complex * input, -** unsigned int samples_num, -** gr_complex * rhh, -** unsigned int start_state, -** const unsigned int * stop_states, -** unsigned int stops_num, -** float * output) -** -** INPUT: input: Complex received signal afted matched filtering. -** samples_num: Number of samples in the input table. -** rhh: The autocorrelation of the estimated channel -** impulse response. -** start_state: Number of the start point. In GSM each burst -** starts with sequence of three bits (0,0,0) which -** indicates start point of the algorithm. -** stop_states: Table with numbers of possible stop states. -** stops_num: Number of possible stop states -** -** -** OUTPUT: output: Differentially decoded hard output of the algorithm: -** -1 for logical "0" and 1 for logical "1" -** -** SUB_FUNC: none -** -** TEST(S): Tested with real world normal burst. -*/ + * viterbi_detector: + * This part does the detection of received sequnece. + * Employed algorithm is viterbi Maximum Likehood Sequence Estimation. + * At this moment it gives hard decisions on the output, but + * it was designed with soft decisions in mind. + * + * SYNTAX: void viterbi_detector( + * const gr_complex * input, + * unsigned int samples_num, + * gr_complex * rhh, + * unsigned int start_state, + * const unsigned int * stop_states, + * unsigned int stops_num, + * float * output) + * + * INPUT: input: Complex received signal afted matched filtering. + * samples_num: Number of samples in the input table. + * rhh: The autocorrelation of the estimated channel + * impulse response. + * start_state: Number of the start point. In GSM each burst + * starts with sequence of three bits (0,0,0) which + * indicates start point of the algorithm. + * stop_states: Table with numbers of possible stop states. + * stops_num: Number of possible stop states + * + * + * OUTPUT: output: Differentially decoded hard output of the algorithm: + * -1 for logical "0" and 1 for logical "1" + * + * SUB_FUNC: none + * + * TEST(S): Tested with real world normal burst. + */ #ifndef INCLUDED_VITERBI_DETECTOR_H #define INCLUDED_VITERBI_DETECTOR_H |