DSPRelated.com
Forums

Real time problem debugging?

Started by sandeep kumar October 13, 2004


Hi everyone,
i have implemented a Digtal PLL using SHARC ADSP 21060. i
am reading 1 bit data from serial port 1 and tracking it continously.
i have used chained DMA for the real time implemenation.
basically Costas loop is implemented.

It's working very finely. but sometimes it looses
track,which i can later on see in the plot after halting the
processor.My problem is that i dont know how to debug the problem
encountered in real time. means i can not find out why the tracking
loop lost track of the signal. is it due to some data miss while
collection,or some filter parameters, or finite word lentgh effect or
something else

My question is how can i debug such kind of problems.
my program works perfectly well in MATLAB.i can not run MATLAB
program in real time mode. so how can i detect this problem.

please guide me. My project is stuck at this point

Thanks in Advance
Regards
sandeep kumar





Am Mittwoch, 13. Oktober 2004 12:13 schrieb sandeep kumar:
> Hi everyone,
> i have implemented a Digtal PLL using SHARC ADSP 21060.
> i am reading 1 bit data from serial port 1 and tracking it
> continously. i have used chained DMA for the real time
> implemenation.
> basically Costas loop is implemented.
>
> It's working very finely. but sometimes it looses
> track,which i can later on see in the plot after halting the
> processor.My problem is that i dont know how to debug the problem
> encountered in real time. means i can not find out why the tracking
> loop lost track of the signal. is it due to some data miss while
> collection,or some filter parameters, or finite word lentgh effect
> or something else
>
> My question is how can i debug such kind of problems.
> my program works perfectly well in MATLAB.i can not run MATLAB
> program in real time mode. so how can i detect this problem.
>
> please guide me. My project is stuck at this point
>
> Thanks in Advance
> Regards
> sandeep kumar
>

Hi Sandeep,

in a 21161 application I encountered a comparable problem:
streaming data in through DMA worked perfectly, but I lost one of the
samples every now and then.

An additional "push sts;" command directly at the start of the
interrupt service routine (and an appropriate pop cmd before rti)
solved the issue.

Obviously there are some additional effects which happen when
interrupts interfere, even if nesting is not enabled.

Be aware when using the rti(db) command.
If another interrupt is pending during rti(db), register set switching
and some other things don't work as expected.

These are processor (chip) issues, which may or may not be important
on a Sharc 2106x, but on my 21161 they played considerable roles.

You may want to check the newest release of the anomaly list for your
processor.

Bernhard


 
Could u please let us know how u implemented the phase detector ?
Is it a data buffer depth or some x-or logic ?

Pinaki On Wed, 13 Oct 2004 sandeep kumar wrote :
>Hi everyone,
>            i have implemented a Digtal PLL using SHARC ADSP 21060. i
>am reading 1 bit data from serial port 1 and tracking it continously.
>i have used chained DMA for the real time implemenation.
>basically Costas loop is implemented.
>
>                  It's working very finely. but sometimes it looses
>track,which i can later on see in the plot after halting the
>processor.My problem is that i dont know how to debug the problem
>encountered in real time. means i can not find out why the tracking
>loop lost track of the signal. is it due to some data miss while
>collection,or some filter parameters, or finite word lentgh effect or
>something else
>
>              My question is how can i debug such kind of problems.
>my program works perfectly well in MATLAB.i can not run MATLAB
>program in real time mode. so how can i detect this problem.
>
>please guide me. My project is stuck at this point
>
>Thanks in Advance
>Regards
>sandeep kumar >_____________________________________
>Note: If you do a simple "reply" with your email client, only the author of this message will receive your answer.  You need to do a "reply all" if you want your answer to be distributed to the entire group.
>
>_____________________________________
>About this discussion group:
>
>To Join:  Send an email to a...@yahoogroups.com
>
>To Post:  Send an email to a...@yahoogroups.com
>
>To Leave: Send an email to a...@yahoogroups.com
>
>Archives: http://groups.yahoo.com/group/adsp
>
>Other Groups: http://www.dsprelated.com/groups.php3
>
>Yahoo! Groups Links
>
><*> To visit your group on the web, go to:
>    http://groups.yahoo.com/group/adsp/
>
><*> To unsubscribe from this group, send an email to:
>    a...@yahoogroups.com
>
><* >
>

-----------
"Rather be ashes than dust! Rather that spark 
should burn out in a brilliant blaze than it 
should be stifled by dry rot."

- Jack London
-----------


If you have access to a logic analyzer or a storage scope you might track
the signals to see if you can spot anything unusual at the lockup point
like pulses too close together or a runt pulse. You could use a flag line
generated in a DMA interrupt routine to trigger the capture.

Also, you might be able to check the DMA status to look for clues. Be sure
to check the anomalies list also for the 60.

Signal integrity issues can also result in many problems. Use a very short
ground on your scope and see if you are getting ringing or overshoot on any
of the signals.

At 04:13 AM 10/13/2004, sandeep kumar wrote:
>Hi everyone,
> i have implemented a Digtal PLL using SHARC ADSP 21060. i
>am reading 1 bit data from serial port 1 and tracking it continously.
>i have used chained DMA for the real time implemenation.
>basically Costas loop is implemented.
>
> It's working very finely. but sometimes it looses
>track,which i can later on see in the plot after halting the
>processor.My problem is that i dont know how to debug the problem
>encountered in real time. means i can not find out why the tracking
>loop lost track of the signal. is it due to some data miss while
>collection,or some filter parameters, or finite word lentgh effect or
>something else
>
> My question is how can i debug such kind of problems.
>my program works perfectly well in MATLAB.i can not run MATLAB
>program in real time mode. so how can i detect this problem.
>
>please guide me. My project is stuck at this point
>
>Thanks in Advance
>Regards
>sandeep kumar >_____________________________________
>Note: If you do a simple "reply" with your email client, only the author
>of this message will receive your answer. You need to do a "reply all" if
>you want your answer to be distributed to the entire group.
>
>_____________________________________
>About this discussion group:
>
>To Join: Send an email to
>
>To Post: Send an email to
>
>To Leave: Send an email to
>
>Archives: http://groups.yahoo.com/group/adsp
>
>Other Groups: http://www.dsprelated.com/groups.php3
>
>Yahoo! Groups Links >
>

Steve Holle
Link Communications, Inc.
1035 Cerise Rd.
Billings, MT 59101