Reply by Ahmed December 26, 20072007-12-26
On Dec 23, 8:35&#4294967295;am, "ssohaib" <ssoh...@gmail.com> wrote:
> Good to see your reply. Could you plz eleborate how can i quntize the I and > Q seperatly. Lets spoose after noise we &#4294967295;have some thing like &#4294967295; &#4294967295; &#4294967295; > 0.807-0.984j. How can i qunatize 0.807 and -0.984j in to 8 levels? > > Waiting.
You basically need to run the Viterbi decoder on the output of the Matched Filter. The outputs of the Matched Filter will be real numbers (analogous to energy levels). In MATLAB, you can use the 'vitdec' function from the Communication Toolbox with the parameter 'unquant' for viterbi decoding without any quantization. So, what would be most helpful for you would be to lookup the 'vitdec' function in MATLAB and also in the 'User's Guide' or on their website at http://tinyurl.com/3baz8b and it pretty much expalins how to implement it. Secondly, if you really do want to use quantization at the output of the Matched Filter, then you should check out the book "Error Control Coding" by Shu Lin and Daniel Costello, specifically section 12.4 in the 2nd Edition titled 'Implementation and Performance of the Viterbi Algorithm'. On page 550, they have a subsection called 'Receiver Quantization' which derives the optimum threshold levels to use for quantization. You'll have to write a script in MATLAB to compute these levels for your case. Then in MATLAB, you will have to first quantize your Matched Filter outputs to 8 levels (in your case) using those optimum thresholds. There is even a quantization function in MATLAB called 'quantiz'. Anyways, if you need to use quantization, it would take some reading and understanding on your part to do it, but it is not very difficult.
Reply by John December 25, 20072007-12-25
On Dec 25, 8:26 pm, "ssohaib" <ssoh...@gmail.com> wrote:
> Hi, > I would be grateful if you please explain me how do u get these following > expressions: > > Isd = 4+floor(4*I/sqrt(2)) > Qsd = 4+floor(4*Q/sqrt(2)) > > Thanks.
I don't care to spoon feed this to you any more. I suggest you hire a tutor. John
Reply by ssohaib December 25, 20072007-12-25
Hi,
I would be grateful if you please explain me how do u get these following
expressions:

Isd = 4+floor(4*I/sqrt(2))
Qsd = 4+floor(4*Q/sqrt(2))

Thanks.
Reply by John December 24, 20072007-12-24
On Dec 24, 8:32 am, "ssohaib" <ssoh...@gmail.com> wrote:
> Hi, > Thanks for your kind reply. Could you please explain me if I quantize real > and imaginary part of my received coded QPSK separately how can I use these > 3 bits from real and 3 bits from imaginary part in Viterbi soft decoding? > > P.S. I have looked on internet for it but couldn't get any answer, so if > you know any website kindly forward its address. Also I would be grateful > if you send me any solved example of Viterbi decoding of QPSK coded > signal. > > Bye
Just feed them into the decoder: Isd Qsd Isd Qsd ... etc John
Reply by ssohaib December 24, 20072007-12-24
Hi,
Thanks for your kind reply. Could you please explain me if I quantize real
and imaginary part of my received coded QPSK separately how can I use these
3 bits from real and 3 bits from imaginary part in Viterbi soft decoding? 

P.S. I have looked on internet for it but couldn&rsquo;t get any answer, so if
you know any website kindly forward its address. Also I would be grateful
if you send me any solved example of Viterbi decoding of QPSK coded
signal. 

Bye

Reply by John December 23, 20072007-12-23
On Dec 23, 11:35 am, "ssohaib" <ssoh...@gmail.com> wrote:
> Good to see your reply. Could you plz eleborate how can i quntize the I and > Q seperatly. Lets spoose after noise we have some thing like > 0.807-0.984j. How can i qunatize 0.807 and -0.984j in to 8 levels? > > Waiting.
I think you mentioned Matlab, in which case the function 'vitdec' is what you will probably use. There are examples of how to use it on www.mathworks.com, just type 'vitdec' into the search box. You have specifiy the soft I and Q values as K bit integers from 0 to (2^K)-1. Let's say K is 3. Then you must map the floating point I and Q samples to integers in [0,7]. If you expect a range of floating point values from -sqrt(2) to +sqrt(2), with nominal values -sqrt(2)/2 and +sqrt(2)/ 2, then the soft decisions would be: Isd = 4+floor(4*I/sqrt(2)) Qsd = 4+floor(4*Q/sqrt(2)) Happy Holidays, John
Reply by Jerry Avins December 23, 20072007-12-23
ssohaib wrote:
> Good to see your reply. Could you plz eleborate how can i quntize the I and > Q seperatly. Lets spoose after noise we have some thing like > 0.807-0.984j. How can i qunatize 0.807 and -0.984j in to 8 levels?
Is a spoose something like a moose? I almost understand your last sentence. Take "in" away, and I do understand it. If that's what you mean, multiply each by 256, add .5, keep the integer part only, and divide that by 256. 0.807 -> 0.80859375 -0.984 -> -0.98046875 Please understand that I'm glad to help and I don't want to put you down. I think that your need to ask that question is a good indication that you don't firmly understand the operations you're doing. It's possible to pass an elementary course working by rote and formula, but without real understanding, that knowledge won't carry you far. Jerry -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;
Reply by ssohaib December 23, 20072007-12-23
Good to see your reply. Could you plz eleborate how can i quntize the I and
Q seperatly. Lets spoose after noise we  have some thing like       
0.807-0.984j. How can i qunatize 0.807 and -0.984j in to 8 levels? 

Waiting.


Reply by John December 22, 20072007-12-22
On Dec 22, 5:45 pm, "ssohaib" <ssoh...@gmail.com> wrote:
> Hi guys > I have studied alot about soft decoding from proakis, sklar and internet > but every timr they talk about is quantization (8levels mostly) but what i > think is that how can we have such levels in case of QPSK modulated coded > signal (K=3, rate=1/2)? Like in case of QPSK we have symbols > (+-0707+-0.707j) then how can we define level in such a case? > > waiting
You can take soft I and Q values separately and apply to VD. John
Reply by ssohaib December 22, 20072007-12-22
Hi guys
I have studied alot about soft decoding from proakis, sklar and internet
but every timr they talk about is quantization (8levels mostly) but what i
think is that how can we have such levels in case of QPSK modulated coded
signal (K=3, rate=1/2)? Like in case of QPSK we have symbols      
(+-0707+-0.707j) then how can we define level in such a case?

waiting