Hi

Anything over 100 MHz should do the trick. On a machine with a full OS on it 
that kind of sustained I/O would be tough to do un-interupted. 

Now, doing a 32 bit shift register externally and clocking in a word at 100 / 
32 MHz - not quite as hard.

Bob


On Feb 18, 2010, at 9:54 PM, Bruce Griffiths wrote:

> Magnus Danielson wrote:
>> Bruce Griffiths wrote:
>>> Magnus Danielson wrote:
>>>> Bruce Griffiths wrote:
>>>>> Lux, Jim (337C) wrote:
>>>>>>> -----Original Message-----
>>>>>>> From: time-nuts-boun...@febo.com [mailto:time-nuts-boun...@febo.com] On 
>>>>>>> Behalf Of Bruce Griffiths
>>>>>>> Sent: Wednesday, February 17, 2010 2:10 PM
>>>>>>> To: Discussion of precise time and frequency measurement
>>>>>>> Subject: Re: [time-nuts] DMTD to MMTD
>>>>>>> 
>>>>>>> The latest version actually records time stamps from a continuously
>>>>>>> running counter clocked at some at a constant frequency (100Mhz??)for
>>>>>>> all channels simultaneously.
>>>>>>> They may use a flag bit for each for each channel to indicate to which
>>>>>>> channel or channels the zero crossing time stamp belongs.
>>>>>> Simpler than that.. it grabs 20 bit numbers and shoves them out in ASCII 
>>>>>> over a com port with an indication of which channel it was for.
>>>>>> The FPGA has a 20 bit free running counter at 100 MHz. When an input 
>>>>>> changes state, it latches the counter, and shoves it out along with the 
>>>>>> channel number.  They use an offset frequency>100 Hz so that you don't 
>>>>>> have to disambiguate the counter rollovers. (20 bits rolls over every 
>>>>>> 10+milliseconds counting at 100 MHz)
>>>>>> 
>>>>>> I don't know if there's a FIFO in front of the UART (e.g. what if you 
>>>>>> get simultaneous zero crossings).. but I would expect there is.
>>>>>> 
>>>>>> The "hard work" is in the zero crossing detector ahead of the FPGA. (and 
>>>>>> perhaps in the latching of the ZCD inputs into the FPGA).
>>>>>> 
>>>>>> Given how long ago it was made, that FPGA isn't a huge one.
>>>>>> 
>>>>> Using 8 flag bits (one per channel) together with the associated time 
>>>>> stamp is a little more efficient and very easy to do and it doesn't 
>>>>> require a FIFO to ensure that simultaneous zero crossings aren't missed.
>>>> 
>>>> It doesn't help at all for this application. The 8 channels is more likely 
>>>> to be spread out and as Jim pointed out, the next bin is sufficient for 
>>>> needing a unique time-stamp. The flag-solution is less efficient (8 bits 
>>>> rather than 3) and the FIFO need is always there, but may be implemented 
>>>> in various ways. For the flag system to be efficient, a high probability 
>>>> for the same time-bins to be used needs to exist, and a high resolution 
>>>> system can expect to actually see noise spread out the channels over the 
>>>> time-bins.
>>>> 
>>> Depending on the system constraints it may be the difference between being 
>>> able to do implement it or not.
>> 
>> With your clarifying comment yes... because it is until now that you have 
>> clarified the merit of the flag system, lowered implementation complexity 
>> vs. lowered signalling capacity.
>> 
>>>> A DMTD systems have a low rate of events per channel, but the nominal 
>>>> distance of events for each channel is fairly long, worst-case burst is 
>>>> when all channels time-stamps. For a 100 Hz beating and 100 MHz clock, the 
>>>> nominal rate of rise/fall events is 200 Hz or 5 ms. Letting the locked 
>>>> value stay put for at least 4 ms. If all channels could be emptied within 
>>>> these 4 ms (just another way of saying that it has enough transport 
>>>> capacity) then a fairly simple schedule system can loop through the 
>>>> channels to find a new sample to transmit.
>>>> 
>>>> I think the re-occurring flag system should be put to rest, it doesn't 
>>>> contribute and is a red herring, at least for this application.
>>>> 
>>> Nonsense, it requires simpler logic and for a device with limited internal 
>>> connection/routing capability and a large number of channels the data path 
>>> interconnections may be simpler and easier to route. It may also run with a 
>>> higher clock frequency.
>>> 
>>> It should even be possible to impement in a relatively small CPLD albeit 
>>> with an external FIFO or equivalent (eg a PPI port on a Blackfin DSP).
>>> Each additional channels requires one input pin, one output pin, a 2 bit 
>>> synchroniser and a 1 bit wider data path and little else.
>> 
>> But it produces more data, which was what I was commenting on. Indeed it is 
>> very simple to implement, but it's a complexity which is still on the 
>> low-end.
>> 
>> So, finally you made the point of the merit of the approach in such a way 
>> that it became clear to me why you have maintained that standpoint.
>> 
>> Cheers,
>> Magnus
>> 
>> 
> One can always reduce the data sent to the PC by removing redundant 
> information, or increase it by Ascii coding of channels and slope polarities.
> In general in the absence of significant constraints either method will work, 
> they just have different tradeoffs.
> 
> Its tempting to see if one can just synchronously clock the synchronised ZCD 
> output signals directly into a processor and derive the timestamps entirely 
> in software.
> The only question being what is the maximum clock frequency at which this can 
> be done without missing any ZCD transitions.
> A Blackfin DSP for example should be able to do this with a maximum ZCD 
> sampling clock frequency of at least 50MHz.
> 
> Bruce
> 
> 
> _______________________________________________
> time-nuts mailing list -- time-nuts@febo.com
> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
> and follow the instructions there.
> 


_______________________________________________
time-nuts mailing list -- time-nuts@febo.com
To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
and follow the instructions there.

Reply via email to