Tuesday, January 17, 2017

filters - Shift a signal by fraction of a sample


I have a signal with a sample time of 0.5 micro seconds and I would like to shift this signal by a fraction of the sample time, say by 3 nano seconds.


I have read a few online resources about fractional delay filtering and about using the FFT and IFFT to perform such delay. Can someone point me to some theory on this or give me an idea on how to implement it.


For the regular shifting of the signal for integer samples, I have implemented this by shifting the signal by the required number of samples and adding zeros at the beginning. Is this approach correct?



Answer



There's a good overview article which appeared in 1996 in the IEEE Signal Processing Magazine: Splitting the unit delay: tools for fractional delay filter design. The nice thing about it is that there's also a set of related Matlab files available. These routines will allow you to design such a system.


As for shifting by an integer number of samples, what you did is obviously correct.


No comments:

Post a Comment

periodic trends - Comparing radii in lithium, beryllium, magnesium, aluminium and sodium ions

Apparently the of last four, $\ce{Mg^2+}$ is closest in radius to $\ce{Li+}$. Is this true, and if so, why would a whole larger shell ($\ce{...