diff options
author | Josh Blum | 2011-10-11 21:35:35 -0700 |
---|---|---|
committer | Josh Blum | 2011-10-11 21:35:35 -0700 |
commit | 1259a01a9479071bd1729a9c9496444f0a72509b (patch) | |
tree | 55350454454a119fb230cdbaadfb27d361f191ec /gcell/lib/wrapper/spu | |
parent | 71c0f14a46f85027b95f2f5f6d3d219cc9e3783e (diff) | |
parent | 06860c309153890a6a42babfbedf230eb24f0042 (diff) | |
download | gnuradio-1259a01a9479071bd1729a9c9496444f0a72509b.tar.gz gnuradio-1259a01a9479071bd1729a9c9496444f0a72509b.tar.bz2 gnuradio-1259a01a9479071bd1729a9c9496444f0a72509b.zip |
Merge branch 'next' of http://gnuradio.org/git/gnuradio into next
Conflicts:
gr-digital/include/digital_constellation.h
Diffstat (limited to 'gcell/lib/wrapper/spu')
-rw-r--r-- | gcell/lib/wrapper/spu/.gitignore | 8 | ||||
-rw-r--r-- | gcell/lib/wrapper/spu/gcs_fft_1d_r2.c | 94 |
2 files changed, 0 insertions, 102 deletions
diff --git a/gcell/lib/wrapper/spu/.gitignore b/gcell/lib/wrapper/spu/.gitignore deleted file mode 100644 index 3531485fb..000000000 --- a/gcell/lib/wrapper/spu/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -/Makefile -/Makefile.in -/.deps -/.libs -/*.la -/*.lo -/*.a -/*.o diff --git a/gcell/lib/wrapper/spu/gcs_fft_1d_r2.c b/gcell/lib/wrapper/spu/gcs_fft_1d_r2.c deleted file mode 100644 index 582757ab0..000000000 --- a/gcell/lib/wrapper/spu/gcs_fft_1d_r2.c +++ /dev/null @@ -1,94 +0,0 @@ -/* -*- c++ -*- */ -/* - * Copyright 2008 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 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., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ - -#include <gcell/gc_declare_proc.h> -#include <gcell/spu/libfft.h> -#include <assert.h> - -/* - * v is really vector complex<float> - */ -static void -conjugate_vector(vector float *v, int nelements) -{ - vector float k = {1, -1, 1, -1}; - int i; - for (i = 0; i < nelements; i++) - v[i] *= k; -} - -static void -gcs_fwd_fft_1d_r2(const gc_job_direct_args_t *input, - gc_job_direct_args_t *output __attribute__((unused)), - const gc_job_ea_args_t *eaa) -{ - vector float *out = (vector float *) eaa->arg[0].ls_addr; // complex - vector float *in = (vector float *) eaa->arg[1].ls_addr; // complex - vector float *twiddle = (vector float *) eaa->arg[2].ls_addr; // complex - vector float *window = (vector float *) eaa->arg[3].ls_addr; // float - - int log2_fft_length = input->arg[0].u32; - int shift = input->arg[1].u32; // non-zero if we should apply fftshift - - if (eaa->arg[3].get_size){ // apply window - // FIXME pointwise multiply in *= window - assert(0); - } - - fft_1d_r2(out, in, twiddle, log2_fft_length); - - if (shift){ - // FIXME apply "fftshift" to output data in-place - assert(0); - } -} - -GC_DECLARE_PROC(gcs_fwd_fft_1d_r2, "fwd_fft_1d_r2"); - -static void -gcs_inv_fft_1d_r2(const gc_job_direct_args_t *input, - gc_job_direct_args_t *output __attribute__((unused)), - const gc_job_ea_args_t *eaa) -{ - vector float *out = (vector float *) eaa->arg[0].ls_addr; // complex - vector float *in = (vector float *) eaa->arg[1].ls_addr; // complex - vector float *twiddle = (vector float *) eaa->arg[2].ls_addr; // complex - vector float *window = (vector float *) eaa->arg[3].ls_addr; // float - - int log2_fft_length = input->arg[0].u32; - int shift = input->arg[1].u32; // non-zero if we should apply fftshift - - if (eaa->arg[3].get_size){ // apply window - // FIXME pointwise multiply in *= window - assert(0); - } - - if (shift){ - // FIXME apply "fftshift" to input data in-place - assert(0); - } - - conjugate_vector(in, 1 << (log2_fft_length - 1)); - fft_1d_r2(out, in, twiddle, log2_fft_length); - conjugate_vector(out, 1 << (log2_fft_length - 1)); -} - -GC_DECLARE_PROC(gcs_inv_fft_1d_r2, "inv_fft_1d_r2"); |