Complex multiplication question

Hi,
can someone guide me a little here please. I have a complex signal S(n)
that
I multiply with a sequence P(n) of length N (the sequence consists of
{-1,1}
). I pass the product into a Costas Loop to track the carrier. Btw, the
complex_input signal a spread signal spread using the sequence P(n) and
BPSK
modulated.

S(n)*P(n) —> Costas Loop

Then I want to remove the carrier from the original signal which can be
done
by multiplying the frequency output of the costas loop which is foptr[i]
with S(n). Is that right? I want to do this in GRC. Can someone guide me
a
little here and tell me if I am understanding it right.

Will be eagerly waiting for a reply. I am not good at Communications
stuff
as this is not my major but I am trying hard. :slight_smile: A little help will
greatly
appreciated.

Thanks
John

The SECOND ORDER Costas loop produces foptr(n) and poptr(n) which is the
frequency and phase estimate for the carrier.

sin(poptr(n)) is the estimated carrier.

If S(n)*sin(poptr(n) is the spreading code modulating the estimated
carrier, then

S(n)*P(n) * complex_conjugate(S(n)*sin(poptr(n)) should be approximately
P(n) up to error in

a) your estimate of the carrier

BUT ALSO

b) the clock of the transmit system and its initial phase offset for the
complex spreading code MUST ALSO be estimated to close this system and
track. My little equation above ASSUMES perfect knowledge of S(n) which
is NEVER the case in a real system.

Bob

On 8/3/2010 9:45 PM, John A. wrote:

done by multiplying the frequency output of the costas loop which is


Discuss-gnuradio mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


(Co)Author: DttSP, Quiktrak, PowerSDR, GnuRadio
Member: ARRL, AMSAT, AMSAT-DL, TAPR, Packrats,
NJQRP, QRP ARCI, QCWA, FRC.
“Be yourself, because the people who mind don’t
matter. And the people that matter don’t mind."
-Dr. Seuss
Active: Facebook,Twitter,LinkedIn

Hi Bob,
Thanks for your reply. I am trying to lock the system show in the figure
found on this link.
http://img19.imageshack.us/img19/826/dsssrxr.jpg

If S(n) = RxD signal which is modulated by a PN Sequence
1st step --> The input to Carrier Loop = S(n)*P(n), which the product of
the
RxD signal and the PN Sequence assuming P(n) matches in phase.
2nd step --> The carrier tracked poptr(n) is the multiplied with RxD
signal
S(n) to remove the carrier from it.
i.e. Input to Code Loop = S(n) * complex_conjugate(poptr(n))

Is this how you see the system?

Thanks
John

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs