Costas loop and M&M algorithm on FPGA

Hi,

Anyone here implemented freq/phase correction and symbol timing
correction in USRP’s FPGA?

Recently I implemented Costas loop and Muller & Mueller algorithm in RTL
by referring the gnuradio code. Now I’m testing it on FPGA. I can get
correct demodulated data(DQPSK) at initial few thousand symbols. After
that I’m getting all rubbish data.

I think the problem with my RTL implementation is not good enough
bit-resolution (unlike implementation on PC). Currently I’m using
15-bits resolution for decimal part. Anyone has any suggestion ?

PN

Hello Phone

Do you have a git repo that one might throw in ones two coppers?

Best
Paul

2011/12/15 Phone Naing MYINT [email protected]

Hi Paul,

I do not have one. Do you implemented them before?

PN

From: discuss-gnuradio-bounces+phonenaing.myint=removed_email_address@domain.invalid
[mailto:discuss-gnuradio-bounces+phonenaing.myint=removed_email_address@domain.invalid]
On Behalf Of Paul M. Bendixen
Sent: Thursday, December 15, 2011 4:48 PM
To: GNURadio D.ion List
Subject: Re: [Discuss-gnuradio] Costas loop and M&M algorithm on FPGA

Hello Phone

Do you have a git repo that one might throw in ones two coppers?

Best
Paul

2011/12/15 Phone Naing MYINT
<[email protected]mailto:[email protected]>
Hi,

Anyone here implemented freq/phase correction and symbol timing
correction in USRP’s FPGA?

Recently I implemented Costas loop and Muller & Mueller algorithm in RTL
by referring the gnuradio code. Now I’m testing it on FPGA. I can get
correct demodulated data(DQPSK) at initial few thousand symbols. After
that I’m getting all rubbish data.

I think the problem with my RTL implementation is not good enough
bit-resolution (unlike implementation on PC). Currently I’m using
15-bits resolution for decimal part. Anyone has any suggestion ?

PN

At high SNR, a single bit is probably enough in the detector and 15
bits
in the phase accumulator is also likely more than enough. The error, in
my
opinion, is elsewhere.

Tell us about your work here please:

https://www.cgran.org/

after you have set up your git repository here:

and here are some useful instructions

http://gnuradio.org/redmine/projects/gnuradio/wiki/DevelopingWithGit

Thanks, in advance, for sharing

Bob

On Thu, Dec 15, 2011 at 1:52 AM, Phone Naing MYINT <

Hi Phone

No, but I am very interested :smiley:
From your original post it might seem that fresh eyes might hit the
spot.
I’m more of a VHDL guy, so I might not be too much of a help.
I just thought that others might have a better chance of helping if they
could see the code.

Best
Paul

2011/12/15 Phone Naing MYINT [email protected]

Hi,

I like to know how gnuradio check the status of freq/phase sync and
symbol sync?

PN

From: Robert McGwier [mailto:[email protected]]
Sent: Thursday, December 15, 2011 8:53 PM
To: Phone Naing MYINT
Cc: [email protected]; [email protected]
Subject: Re: [Discuss-gnuradio] Costas loop and M&M algorithm on FPGA

At high SNR, a single bit is probably enough in the detector and 15
bits in the phase accumulator is also likely more than enough. The
error, in my opinion, is elsewhere.

Tell us about your work here please:

https://www.cgran.org/

after you have set up your git repository here:

and here are some useful instructions

http://gnuradio.org/redmine/projects/gnuradio/wiki/DevelopingWithGit

Thanks, in advance, for sharing

Bob

On Thu, Dec 15, 2011 at 1:52 AM, Phone Naing MYINT
<[email protected]mailto:[email protected]>
wrote:
Hi,

Anyone here implemented freq/phase correction and symbol timing
correction in USRP’s FPGA?

Recently I implemented Costas loop and Muller & Mueller algorithm in RTL
by referring the gnuradio code. Now I’m testing it on FPGA. I can get
correct demodulated data(DQPSK) at initial few thousand symbols. After
that I’m getting all rubbish data.

I think the problem with my RTL implementation is not good enough
bit-resolution (unlike implementation on PC). Currently I’m using
15-bits resolution for decimal part. Anyone has any suggestion ?

PN

Hi Bob,

Your guess is correct, I found the error from Transmitter side. Now the
synchronization is working fine.

PN

From: Robert McGwier [mailto:[email protected]]
Sent: Thursday, December 15, 2011 8:53 PM
To: Phone Naing MYINT
Cc: [email protected]; [email protected]
Subject: Re: [Discuss-gnuradio] Costas loop and M&M algorithm on FPGA

At high SNR, a single bit is probably enough in the detector and 15
bits in the phase accumulator is also likely more than enough. The
error, in my opinion, is elsewhere.

Tell us about your work here please:

https://www.cgran.org/

after you have set up your git repository here:

and here are some useful instructions

http://gnuradio.org/redmine/projects/gnuradio/wiki/DevelopingWithGit

Thanks, in advance, for sharing

Bob

On Thu, Dec 15, 2011 at 1:52 AM, Phone Naing MYINT
<[email protected]mailto:[email protected]>
wrote:
Hi,

Anyone here implemented freq/phase correction and symbol timing
correction in USRP’s FPGA?

Recently I implemented Costas loop and Muller & Mueller algorithm in RTL
by referring the gnuradio code. Now I’m testing it on FPGA. I can get
correct demodulated data(DQPSK) at initial few thousand symbols. After
that I’m getting all rubbish data.

I think the problem with my RTL implementation is not good enough
bit-resolution (unlike implementation on PC). Currently I’m using
15-bits resolution for decimal part. Anyone has any suggestion ?

PN

Congratulations. I knew you would find it since you were that close.

Please share if you are allowed. I am certain we have wide spread
interest
in this particular piece of work.

Bob

On Fri, Dec 16, 2011 at 3:09 AM, Phone Naing MYINT <