discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] inband timestamp issues


From: Brian Padalino
Subject: Re: [Discuss-gnuradio] inband timestamp issues
Date: Mon, 18 Aug 2008 20:49:04 -0400

On Mon, Aug 18, 2008 at 7:54 PM, George Nychis <address@hidden> wrote:
> Okay, more on topic with the original problem: the timestamp issues. The
> problem that Steve noticed was that the timestamps jump.
>
> Brian and I wrote a testbench for this and found that the timestamp actually
> does not really correspond to the first sample (per the design doc), and not
> quite the last sample either... but closer to the last sample.  So... this
> is also an issue.  But I think that fixing both will be along the same
> lines.
>
> Brian, can you verify all of this?  I wanted to mail it to the list for
> documentation, and so when Leo gets back he can read it.  I've been slammed
> with traveling in August and wont be back for another week.

Yes.  There are issues, but enjoy traveling.

> So what we suspect is that the FX2 will keep up for a while, and then get
> suspended/busy/something for a while which causes it to stop building
> packets.  The samples are still being buffered, but the actual packets are
> not being built (causing a jump).
>
> In this time, nothing becomes full and dropped, which is why an underrun is
> not reported.  All samples make it through to the host.

Just to clarify the situation - the current packet_builder is hooked
up after the sample buffers so as it is building one packet, it cannot
build another.  That is why when 2 channels were used, they would be
received 270+ samples from each other as that is around the time it
takes to generate the full packet.  Moreover, the timestamp actually
had nothing to do with the actual sample time - just the time the
packet was built.  Therefore, no 2 packets could have the same
timestamp (which should be possible).

> Brian's solution was the following:
>  - connect the input of packet_builder to be the output of the halfband
> filter (for each channel)
>  - output the previous to an asynchronous FIFO driven by rxclk
>  - have a FIFO arbiter on the output running off usbclk
>  - FIFO arbiter cycles through the FIFOs for a packet
>  - if packet is available, connect FIFO to FX2 and wait for FX2 to parse
>
> Does that sound about right, Brian?

Correct.  Multiple packet_builders which allow for proper timestamping
along with some artiber to get the packets out to the FX2.

> Two major issues we're looking at solving: timestamping the first sample
> (for real), and a non-jumpy timestamp.

Yep!

> Thanks!
> George

No problem.

Brian




reply via email to

[Prev in Thread] Current Thread [Next in Thread]