nsec-resolution time measurement with MSP430 or alternatives ?

OP (Company: JSM) #3705607
Rate this post
useful
not useful
Hello,

I am trying to measure the time between two pulses with a resolution of 
<10nsecs, using a cheap microcontroller.

I know some MSP430 parts (MSP430F51x1) include the Timer D which allows 
a resolution of 4ns, but I do not know of any development kit available.

Anybody has experience with this processor or knows of some other uC 
that allows this kind of time measurement?

Thanks,
Juan.
OP (Company: JSM) #3706397
Rate this post
useful
not useful
gpsdo wrote:
> You do not write about the application:
> perhaps something like that?
> http://www.febo.com/pipermail/time-nuts/2014-February/082820.html

thanks for the link, it seems interesting,

however I would like just to use a development kit without added 
electronics, connecting PPS signals to GPIO inputs.

I want to measure time between a number of PPS pulses coming from a GPS 
device as well as some computer synchronized with PTP.

Regards,
Juan.
Guest #3706407
Rate this post
useful
not useful
While the STM32F334 has a timer with 217 ps resolution, it is a pity 
that this resolution is only for output, not for capture, as the poster 
asked.

The Infineon Cortex Parts also have sub-nanosecond timers, but I don't 
know if this resolution can be used for capture. And datasheet download 
still requires a NDA!

You can get about 5 ns resolution with the STM32F405 and bigger parts, 
running the timer at 168/180 MHz or LPC43xx at 204 MHz.
Guest #3706530
Rate this post
useful
not useful
Juan Solano wrote:
> I know some MSP430 parts (MSP430F51x1) include the Timer D which allows
> a resolution of 4ns

You need of course a high clock frequency, but this condition is 
"necessary but not sufficient". Also all other elements must be fast 
enough, e.g. the input to control the capture. I dont believe that this 
is possible, since not all parts of such a processor are GHz fast.

Georg
Guest #3706646
Rate this post
useful
not useful
Juan Solano wrote:
> I am trying to measure the time between two pulses with a resolution of
> <10nsecs, using a cheap microcontroller.

Hi Juan,

as to my knowledge all uC using a high relsolution timer do so for the 
OUTPUT of the timer. The TI C2000 series even goes down below 1ns but 
there is no way to do a single measurement with this resolution. Using 
repeated signals one could think about soltions like tuning the timer 
output and comparing the signals.

Another option would be to feed a delayline with e.g. 1ns taps and to 
latch the taps into a register to do the measurement.

rgds
Guest #4147501
Rate this post
useful
not useful
Juan Solano wrote:
> I want to measure time between a number of PPS pulses coming from a GPS

In this case I would suggest, to divide the problem into two separate 
problems:
1. measure the raw time span by counting with the available timer of 
your system
2. make a small time analog measurement from the starting edge of your 
signal to be measured to the counting edge of your raw measurement 
clock.

This is rather easy, if you have a small CPLD or a high speed TTL: after 
a reset a open collector shortcuts a resistor+inductivity (in series) to 
ground. This is a simple constant current source.. When the starting 
edge comes, the open collector is released, this rises the voltage on it 
and fron this node a fast diode goes to a capacitor, which is loaded by 
the constant current. When the edhe of your reference clock comes, it 
resets the open collector to ground again the current source. After that 
you have some time to measure the voltage on the capacitor with the 
builtin ADC and then zero out the capacitor to ground , now ready for 
the next measurement.

This is applicable for a small amount of digits, let me say for a time 
span of 20..50 ns with a useable resolution of approx. 5 bits, which 
makes ca. 1 ns resolution in time.

Obviousely, it needs to be calibrated.

W.S.

Reply

Please log in before posting.

or

Log in with Google account

Registration is free and takes only a minute.

Register now