diff options
author | Thomas Tsou <tom@tsou.cc> | 2013-08-22 18:40:43 -0400 |
---|---|---|
committer | Thomas Tsou <tom@tsou.cc> | 2013-09-05 06:07:50 -0400 |
commit | 0c260aecaff0e74db4e32496747073de4e80cc23 (patch) | |
tree | 551b5678ac42f84c56adb8c489e9bb66758a34b8 | |
parent | acc9ee9fc05914d40250e13ae885bf88bd9e672b (diff) |
Transceiver52M: Reverse storage of convolution vectors
With convolution changes, we now assume that tap values for
filterting are stored in reverse. Along the same lines,
the tap values used during correlation are no longer stored
in reverse, however, they are still assumed to be conjugated.
Signed-off-by: Thomas Tsou <tom@tsou.cc>
-rw-r--r-- | Transceiver52M/sigProcLib.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/Transceiver52M/sigProcLib.cpp b/Transceiver52M/sigProcLib.cpp index 2f67a67..9f31679 100644 --- a/Transceiver52M/sigProcLib.cpp +++ b/Transceiver52M/sigProcLib.cpp @@ -581,9 +581,9 @@ bool delayVector(signalVector &wBurst, float delay) // create sinc function signalVector sincVector(21); sincVector.isRealOnly(true); - signalVector::iterator sincBurstItr = sincVector.begin(); + signalVector::iterator sincBurstItr = sincVector.end(); for (int i = 0; i < 21; i++) - *sincBurstItr++ = (complex) sinc(M_PI_F*(i-10-fracOffset)); + *--sincBurstItr = (complex) sinc(M_PI_F*(i-10-fracOffset)); signalVector shiftedBurst(wBurst.size()); if (!convolve(&wBurst, &sincVector, &shiftedBurst, NO_DELAY)) @@ -1394,7 +1394,7 @@ bool designDFE(signalVector &channelResponse, } *feedForwardFilter = new signalVector(Nf); - signalVector::iterator w = (*feedForwardFilter)->begin(); + signalVector::iterator w = (*feedForwardFilter)->end(); for (int i = 0; i < Nf; i++) { delete L[i]; complex w_i = 0.0; @@ -1405,8 +1405,7 @@ bool designDFE(signalVector &channelResponse, w_i += (*vPtr)*(chanPtr->conj()); vPtr++; chanPtr++; } - *w = w_i/d; - w++; + *--w = w_i/d; } |