Interpolation and Pulse Compression 09/27/2015 Brandon Ravenscroft EECS 800 Interpolation and Pulse Compression
Interpolation (General) Used when it is necessary to shift sample locations Interpolate between sample points of a function by “resampling” Implemented using convolution operation: 𝑔 𝑥 = 𝑖 𝑔 𝑑 𝑖 ℎ(𝑥−𝑖) h(x) is interpolation kernel i = sample point 𝑔 𝑥 is continuous signal 𝑔 𝑑 𝑖 is continuous signal sampled at i Kernel is typically even such that h(i-x) = h(x-i)
Sinc Interpolation ℎ 𝑥 =𝑠𝑖𝑛𝑐 𝑥 𝑔 𝑥 = 𝑖 𝑔 𝑑 𝑖 𝑠𝑖𝑛𝑐(𝑥−𝑖) Interpolation kernel is sinc function from Shannon’s sampling theorem Signal must be bandlimited (real) and satisfy Nyquist Interpolation kernel is : ℎ 𝑥 =𝑠𝑖𝑛𝑐 𝑥 Interpolation operation is: 𝑔 𝑥 = 𝑖 𝑔 𝑑 𝑖 𝑠𝑖𝑛𝑐(𝑥−𝑖) Essentially a sinc reconstruction
Sinc Interpolation – Frequency Domain Spectrum of sampled signal repeats at intervals of the sampling frequency. Spectrum of sampled signal repeats at intervals of the sampling frequency. Only Baseband is needed, so apply an ILPF to sample spectrum. Rect in frequency domain sinc in time domain Multiplication in frequency domain convolution in time domain.
Sinc Interpolation – Frequency Domain Time shift property of the Fourier Transform 𝐹 𝑔 𝑡− 𝑡 0 = 𝑒 𝑗2𝜋𝑓 𝑡 0 𝐺(𝑓) Multiply frequency domain signal by complex exponential In the Interpolation operation: 𝑔 𝑥 = 𝑖 𝑔 𝑑 𝑖 𝑠𝑖𝑛𝑐(𝑥−𝑖) 𝑔 𝑑 𝑖 can be represented by a weighted impulse at i. Interpolation is a convolution operation Convolution in time is multiplication in frequency Impulse in time domain complex sinusoid in frequency domain Sinc in time domain rect function in frequency domain Conclusion: sinc interpolation is a frequency domain multiplication of a complex sinusoid and a rect function centered around i.
Sinc Interpolation Example fmax = 107 Hz fs = 214Hz
Sinc Interpolation Example
Sinc Interpolation Example Missed Peaks!
Sinc Interpolation Example - Reconstruction
Sinc Interpolation – Intersample Interpolation ? g(9.3) Interpolation Kernel of Finite Size Centered at 9.3
Sinc Interpolation – Intersample Interpolation g(9.3)
Sinc Interpolation – Intersample Interpolation Infinite points in kernel needed to interpolate exactly. Sinc tapers off quickly, so finite window is all right −∞ ∞ 𝑠𝑖𝑛𝑐 𝑥 𝑑𝑥=1=𝑟𝑒𝑐𝑡(0) When truncating sinc kernel, normalization is needed since sum of weights no longer equals 1. ‘i’ is truncated window size 𝑔′(𝑥)= 𝑔(𝑥) 𝑖 𝑠𝑖𝑛𝑐(𝑥−𝑖) Normalization to keep signal power constant: 𝑔′(𝑥)= 𝑔(𝑥) 𝑖 𝑠𝑖𝑛𝑐(𝑥−𝑖) 2
Sinc Interpolation – Procedural Notes Sinc interpolation kernel can be weighted itself by a windowing function to reduce sharp transition ringing (Gibb’s phenomenon) Interpolation kernel can be pre-generated in subsample intervals and stored in a table. Accuracy of interpolation dependent upon kernel length Accuracy of sinc interpolation can be seen in frequency domain by comparing kernel spectrum to ILPF spectrum. Computational cost is proportional to kernel length. Interpolation of non-baseband and complex signals can be achieved by translating signal to baseband or translating baseband filter to signal center frequency. Multiply time domain signal by 𝑒 ±𝑗2𝜋∆𝑓𝑡
Uses Of Interpolation Range Doppler Algorithm(RDA) Sinc Interpolation is used to perform range cell migration compensation (RCMC) to move targets into single range bin. F-k Migration (Omega-k migration) Stolt Interpolation used along the range frequency axis to correct for range curvature. Time Domain Correlation (TDC) Applying a matched filter to a signal input. Calibration
Pulse Compression Time domain compression of a pulse signal via frequency modulation. Increases SNR and Range Resolution. SNR Increased by a factor of the time-bandwidth product: 𝐵𝜏 𝜌 𝑟 = 𝑐𝜏 2 = 𝑐 2𝐵 Tx pulse is frequency/phase modulated and Rx signal is correlated with this. Matched filtering is frequently used in detecting incoming signals. Matched filter is complex conjugate of received signal.
Pulse Compression – Matched Filtering Consider a received pulse signal of duration T: 𝑠 𝑟 (𝑡)=𝑟𝑒𝑐𝑡 𝑡 𝑇 𝑒 𝑗𝜋𝑘 𝑡 2 A matched filter of duration T: ℎ(𝑡)=𝑟𝑒𝑐𝑡 𝑡 𝑇 𝑒 −𝑗𝜋𝑘 𝑡 2 The matched filter output is: 𝑠 𝑜𝑢𝑡 𝑡 = 𝑠 𝑟 (𝑡)∗ℎ(𝑡)= 𝑇− 𝑡 𝑟𝑒𝑐𝑡 𝑡 2𝑇 𝑠𝑖𝑛𝑐[(𝑘𝑡 𝑇− 𝑡 ] Slowly Varying Envelope: 𝑇− 𝑡 𝑟𝑒𝑐𝑡 𝑡 2𝑇 Rapidly Varying Portion: 𝑠𝑖𝑛𝑐[(𝑘𝑡 𝑇− 𝑡 ]
Slowly Varying Envelope: 𝑇− 𝑡 𝑟𝑒𝑐𝑡 𝑡 2𝑇 𝐵=10 𝑀𝐻𝑧 𝜏=10 µ𝑠 𝐵𝜏=100
Rapidly Varying Portion: 𝑠𝑖𝑛𝑐[(𝑘𝑡(𝑇−|𝑡|)] 𝐵=10 𝑀𝐻𝑧 𝜏=10 µ𝑠 𝐵𝜏=100
Composite Matched Filter Output: 𝑠 𝑜𝑢𝑡 (𝑡) 𝐵=10 𝑀𝐻𝑧 𝜏=10 µ𝑠 𝐵𝜏=100
Pulse Compression Comparison of B𝜏
Pulse Compression - Notes When Bτ ≥ 100, Matched Filter Output Simplifies to: 𝑠 𝑜𝑢𝑡 (𝑡)=𝑠𝑖𝑛𝑐(𝑘𝑇𝑡) Signal and matched filter can have different lengths, math works out to similar result with extra quadratic phase term: 𝑒 𝑗𝜋𝑘 𝑡 2 which is usually negligible
Questions/Discussion?