On Sep 25, 9:25 pm, John <sampson...@gmail.com> wrote:
> On Sep 25, 2:31 pm, Jaco Naude <naude.j...@gmail.com> wrote:
>
>
>
> > >> Why Gold codes? What are you trying to accomplish by that?
>
> > I am trying to create a simple DSSS Modem, similar to the that
> > described inhttp://www.altera.com/literature/fs/fs14_dsss.pdf
> > The type of spreading sequence does not matter. Gold codes are the
> > easiest to implement on a Xilinx FPGA using the SLR16 macro.
>
> > >> So you don't know how to multiply a complex number by a real number or what?
>
> > I know that the complex spreading sequence has c_r and c_i codewords.
> > c_r is a gold code obviously, but is c_i = 0 or is it another gold
> > code? That was the question really. I know how to multiply a real
> > number with a complex number.
>
> > John thanks for the answer. However Jerry said yes to my initial
> > thoughts that c_i = 0. Thanks for that as well. Maybe it is dependent
> > on the application? However it does not look like this is the place to
> > find that out.
>
> > Thanks for the replies.
> > Jaco
>
> Even if the imaginary spreading code is zero at the transmitter, which
> as I said before is not the typical case, you will not want to
> despread with zero imaginary at the receiver. This is because the
> complex received signal is in general scaled and rotated by the
> channel. Despread the real and imaginary both by the real spreading
> code used in transmit. The resulting peaks will look like Aexp(j*phi)
> and -Aexp(j*phi) where phi is the phase shift seen in the channel and
> A is related to channel gain and transmit power.
>
> John
Thanks for all the help,
Jaco
Reply by John●September 25, 20072007-09-25
On Sep 25, 2:31 pm, Jaco Naude <naude.j...@gmail.com> wrote:
> >> Why Gold codes? What are you trying to accomplish by that?
>
> I am trying to create a simple DSSS Modem, similar to the that
> described inhttp://www.altera.com/literature/fs/fs14_dsss.pdf
> The type of spreading sequence does not matter. Gold codes are the
> easiest to implement on a Xilinx FPGA using the SLR16 macro.
>
> >> So you don't know how to multiply a complex number by a real number or what?
>
> I know that the complex spreading sequence has c_r and c_i codewords.
> c_r is a gold code obviously, but is c_i = 0 or is it another gold
> code? That was the question really. I know how to multiply a real
> number with a complex number.
>
> John thanks for the answer. However Jerry said yes to my initial
> thoughts that c_i = 0. Thanks for that as well. Maybe it is dependent
> on the application? However it does not look like this is the place to
> find that out.
>
> Thanks for the replies.
> Jaco
Even if the imaginary spreading code is zero at the transmitter, which
as I said before is not the typical case, you will not want to
despread with zero imaginary at the receiver. This is because the
complex received signal is in general scaled and rotated by the
channel. Despread the real and imaginary both by the real spreading
code used in transmit. The resulting peaks will look like Aexp(j*phi)
and -Aexp(j*phi) where phi is the phase shift seen in the channel and
A is related to channel gain and transmit power.
John
Reply by John●September 25, 20072007-09-25
On Sep 25, 2:31 pm, Jaco Naude <naude.j...@gmail.com> wrote:
> >> Why Gold codes? What are you trying to accomplish by that?
>
> I am trying to create a simple DSSS Modem, similar to the that
> described inhttp://www.altera.com/literature/fs/fs14_dsss.pdf
> The type of spreading sequence does not matter. Gold codes are the
> easiest to implement on a Xilinx FPGA using the SLR16 macro.
>
> >> So you don't know how to multiply a complex number by a real number or what?
>
> I know that the complex spreading sequence has c_r and c_i codewords.
> c_r is a gold code obviously, but is c_i = 0 or is it another gold
> code? That was the question really. I know how to multiply a real
> number with a complex number.
>
> John thanks for the answer. However Jerry said yes to my initial
> thoughts that c_i = 0. Thanks for that as well. Maybe it is dependent
> on the application? However it does not look like this is the place to
> find that out.
>
> Thanks for the replies.
> Jaco
Even if the imaginary spreading code is zero at the transmitter, which
as I said before is not the typical case, you will not want to
despread with zero imaginary at the receiver. This is because the
complex received signal is in general scaled and rotated by the
channel. Despread the real and imaginary both by the real spreading
code used in transmit. The resulting peaks will look like Aexp(j*phi)
and -Aexp(j*phi) where phi is the phase shift seen in the channel and
A is related to channel gain and transmit power.
John
Reply by Jerry Avins●September 25, 20072007-09-25
Jaco Naude wrote:
> ... Jerry said yes to my initial
> thoughts that c_i = 0. Thanks for that as well. Maybe it is dependent
> on the application? However it does not look like this is the place to
> find that out.
I wasn't addressing Gold codes or the question you intended, but only
the one you asked. (Neither Vlad nor I read minds.)
Jerry
--
Engineering is the art of making what you want from things you can get.
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
>> Why Gold codes? What are you trying to accomplish by that?
I am trying to create a simple DSSS Modem, similar to the that
described in http://www.altera.com/literature/fs/fs14_dsss.pdf
The type of spreading sequence does not matter. Gold codes are the
easiest to implement on a Xilinx FPGA using the SLR16 macro.
>> So you don't know how to multiply a complex number by a real number or what?
I know that the complex spreading sequence has c_r and c_i codewords.
c_r is a gold code obviously, but is c_i = 0 or is it another gold
code? That was the question really. I know how to multiply a real
number with a complex number.
John thanks for the answer. However Jerry said yes to my initial
thoughts that c_i = 0. Thanks for that as well. Maybe it is dependent
on the application? However it does not look like this is the place to
find that out.
Thanks for the replies.
Jaco
Reply by Jerry Avins●September 25, 20072007-09-25
Vladimir Vassilevsky wrote:
>
>
> Jaco Naude wrote:
>
>> Hi all,
>>
>> I'm planning to use Gold Codes in a DSSS Modem.
>
> Why Gold codes? What are you trying to accomplish by that?
>
>> The question is:
>>
>> The input data is complex but a gold code is not complex. When
>> spreading the complex data, do you simply set the imag part of the
>> gold code to 0 and do a complex multiplication with the complex input
>> data and again the same when despreading the data?
Yes, but there's a shortcut.
> So you don't know how to multiply a complex number by a real number or
> what?
It sure looks that way. Some people get so overwhelmed by new stuff that
they forget the old.
The centipede was happy; quite! until the toad, in fun,
Said "Pray, which leg comes after which?"
Which threw his soul in such a pitch
He lay distracted in a ditch, considering how to run.
Jerry
--
Engineering is the art of making what you want from things you can get.
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Reply by Vladimir Vassilevsky●September 25, 20072007-09-25
Jaco Naude wrote:
> Hi all,
>
> I'm planning to use Gold Codes in a DSSS Modem.
Why Gold codes? What are you trying to accomplish by that?
> The question is:
>
> The input data is complex but a gold code is not complex. When
> spreading the complex data, do you simply set the imag part of the
> gold code to 0 and do a complex multiplication with the complex input
> data and again the same when despreading the data?
So you don't know how to multiply a complex number by a real number or what?
Vladimir Vassilevsky
DSP and Mixed Signal Design Consultant
http://www.abvolt.com
Reply by mnentwig●September 25, 20072007-09-25
One example is in TS25.713-720:
"All uplink physical channels shall be scrambled with a complex-valued
scrambling code"
See page 21, "Finally, the complex-valued long scrambling sequence Clong,
n, is defined as:"
Of course, who says it's WCDMA...
Suggestion? Read the small print :)
-mn
Reply by John Sampson●September 25, 20072007-09-25
Jaco Naude wrote:
> Hi all,
>
> I'm planning to use Gold Codes in a DSSS Modem. The question is:
>
> The input data is complex but a gold code is not complex. When
> spreading the complex data, do you simply set the imag part of the
> gold code to 0 and do a complex multiplication with the complex input
> data and again the same when despreading the data?
>
> Thanks for any suggestions,
> Jaco
>
In general a complex spreading code is built from two different PN
sequences.
John