aboutsummaryrefslogtreecommitdiffstats
path: root/Transceiver52M/sigProcLib.h
diff options
context:
space:
mode:
authorThomas Tsou <tom@tsou.cc>2013-08-20 20:54:54 -0400
committerThomas Tsou <tom@tsou.cc>2013-10-18 13:10:17 -0400
commit03e6ecf9771ea029e69fd4cdc2f2e289e93d3978 (patch)
tree9bd4abdc74ba979a051386b1d730378ae254bdab /Transceiver52M/sigProcLib.h
parent3eaae80c90752abe3173c43a5dae5cdf17493764 (diff)
Transceiver52M: Replace resampler with SSE enabled implementation
Replace the polyphase filter and resampler with a separate implementation using SSE enabled convolution. The USRP2 (including derived devices N200, N210) are the only supported devices that require sample rate conversion, so set the default resampling parameters for the 100 MHz FPGA clock. This changes the previous resampling ratios. 270.833 kHz -> 400 kHz (65 / 96) 270.833 kHz -> 390.625 kHz (52 / 75) The new resampling factor uses a USRP resampling factor of 256 instead of 250. On the device, this allows two halfband filters to be used rather than one. The end result is reduced distortial and aliasing effecits from CIC filter rolloff. B100 and USRP1 will no be supported at 400 ksps with these changes. Signed-off-by: Thomas Tsou <tom@tsou.cc>
Diffstat (limited to 'Transceiver52M/sigProcLib.h')
-rw-r--r--Transceiver52M/sigProcLib.h34
1 files changed, 0 insertions, 34 deletions
diff --git a/Transceiver52M/sigProcLib.h b/Transceiver52M/sigProcLib.h
index 194002f..109ffa8 100644
--- a/Transceiver52M/sigProcLib.h
+++ b/Transceiver52M/sigProcLib.h
@@ -333,40 +333,6 @@ SoftVector *demodulateBurst(signalVector &rxBurst, int sps,
complex channel, float TOA);
/**
- Creates a simple Kaiser-windowed low-pass FIR filter.
- @param cutoffFreq The digital 3dB bandwidth of the filter.
- @param filterLen The number of taps in the filter.
- @param gainDC The DC gain of the filter.
- @return The desired LPF
-*/
-signalVector *createLPF(float cutoffFreq,
- int filterLen,
- float gainDC = 1.0);
-
-/**
- Change sampling rate of a vector via polyphase resampling.
- @param wVector The vector to be resampled.
- @param P The numerator, i.e. the amount of upsampling.
- @param Q The denominator, i.e. the amount of downsampling.
- @param LPF An optional low-pass filter used in the resampling process.
- @return A vector resampled at P/Q of the original sampling rate.
-*/
-signalVector *polyphaseResampleVector(signalVector &wVector,
- int P, int Q,
- signalVector *LPF);
-
-/**
- Change the sampling rate of a vector via linear interpolation.
- @param wVector The vector to be resampled.
- @param expFactor Ratio of new sampling rate/original sampling rate.
- @param endPoint ???
- @return A vector resampled a expFactor*original sampling rate.
-*/
-signalVector *resampleVector(signalVector &wVector,
- float expFactor,
- complex endPoint);
-
-/**
Design the necessary filters for a decision-feedback equalizer.
@param channelResponse The multipath channel that we're mitigating.
@param SNRestimate The signal-to-noise estimate of the channel, a linear value