faster gps via the sparse fourier transform
play

Faster GPS via the Sparse Fourier Transform Haitham Hassanieh Fadel - PowerPoint PPT Presentation

Faster GPS via the Sparse Fourier Transform Haitham Hassanieh Fadel Adib Dina Katabi Piotr Indyk GPS Is Widely Used Faster GPS benefits many applications Faster GPS benefits many applications How Do We Improve GPS? Need to Improve GPS


  1. Faster GPS via the Sparse Fourier Transform Haitham Hassanieh Fadel Adib Dina Katabi Piotr Indyk

  2. GPS Is Widely Used Faster GPS benefits many applications Faster GPS benefits many applications

  3. How Do We Improve GPS? Need to Improve GPS Synchronization

  4. GPS Synchronization Synchronization is locking onto a satellite’s signal • Consumes 30% ‐ 75% of GPS receiver’s power [ORG447X datasheet, Venus 6 datasheet] GPS signals are very weak, less than ‐ 20dB SNR 100s of millions of multiplications 100s of millions of multiplications [Team, Kaplan] [Team, Kaplan]

  5. Goal Faster Synchronization Algorithm Reduce number of operations Reduction in power consumption and delay

  6. Rest of this Talk  GPS Primer  Our GPS Synchronization Algorithm  Empirical Results

  7. How Does GPS Work? Compute the distance to d 2 the GPS satellites d 1 d 3

  8. How Does GPS Work? Compute the distance to d 2 the GPS satellites d 1 d 3 distance = propagation delay distance = propagation delay speed of light speed of light

  9. How to Compute the Propagation Delay? CDMA code Satellite Transmits CDMA code

  10. How to Compute the Propagation Delay? CDMA code delay Code arrives shifted by propagation delay

  11. How to Compute the Propagation Delay? CDMA code delay Receiver knows the code and when the satellite starts transmitting

  12. How to Compute the Propagation Delay? delay Correlation

  13. How to Compute the Propagation Delay? delay Correlation

  14. How to Compute the Propagation Delay? delay Correlation

  15. How to Compute the Propagation Delay? delay Spike Correlation Spike determines the delay

  16. GPS Synchronization is a convolution with CDMA code Convolution Multiplication in Time in Frequency : Number of samples in the code

  17. GPS Synchronization is a convolution with CDMA code Convolution Multiplication in Time in Frequency : Number of samples in the code State of the art GPS synchronization algorithm:

  18. Rest of this Talk  GPS Primer  Our GPS Synchronization Algorithm  Empirical Results

  19. QuickSync • Fastest GPS synchronization algorithm to date • Analytical complexity: for any SNR – for moderately low SNR – • Empirical Results: – Evaluated on real GPS signals – Improves performance by 2.2x

  20. How can we make GPS synchronization faster than FFT ‐ Based synchronization?

  21. FFT ‐ Based GPS Synchronization Signal Received FFT IFFT in Freq. Signal Output FFT of Code

  22. FFT ‐ Based GPS Synchronization Signal Received FFT IFFT in Freq. Signal Output FFT of Code FFT Stage IFFT Stage

  23. FFT ‐ Based GPS Synchronization Signal Received FFT IFFT in Freq. Signal Output FFT of Code FFT Stage IFFT Stage Each stage takes  need to reduce complexity of both stages

  24. FFT ‐ Based GPS Synchronization Signal Received FFT IFFT in Freq. Signal Output FFT of Code FFT Stage IFFT Stage

  25. FFT ‐ Based GPS Synchronization Signal Received FFT IFFT in Freq. Signal Output Output FFT of Code FFT Stage IFFT Stage Sparse

  26. FFT ‐ Based GPS Synchronization Signal Received FFT IFFT in Freq. Signal Output Output FFT of Code FFT Stage IFFT Stage Sparse Sparse IFFT

  27. QuickSync A Sparse IFFT algorithm customized for GPS • Exactly One Spike  Simpler algorithm • Extends to the FFT ‐ stage which is different (will discuss later)

  28. QuickSync’s Sparse IFFT �������� ������ 1 ‐ Bucketize Divide output into a few buckets 2 ‐ Estimate Estimate the largest coefficient in the largest bucket ����� �� ������ � ∑�������

  29. QuickSync’s Sparse IFFT �������� ������ 1 ‐ Bucketize Divide output into a few buckets 2 ‐ Estimate Estimate the largest coefficient in the largest bucket ����� �� ������ � ∑������� So how can we bucketize and estimate efficiently?

  30. How to Bucketize Efficiently? IFFT IFFT output samples input samples

  31. How to Bucketize Efficiently? IFFT IFFT output samples input samples IFFT IFFT Buckets Subsamples

  32. How to Bucketize Efficiently? IFFT IFFT output samples input samples IFFT IFFT Efficient since: small IFFT of size equal to Efficient since: small IFFT of size equal to the number buckets the number buckets Buckets Subsamples

  33. How to Estimate Efficiently? • Keep largest bucket; ignore all the rest • Out of the samples in the large bucket, which one is the spike? Largest bucket Buckets

  34. How to Estimate Efficiently? • Keep largest bucket; ignore all the rest • Out of the samples in the large bucket, which one is the spike? Largest bucket The spike is the sample that has the maximum correlation Buckets

  35. How to Estimate Efficiently? • Keep largest bucket; ignore all the rest • Out of the samples in the large bucket, which one is the spike? Largest bucket The spike is the sample that has the maximum correlation Buckets Efficient since: compute correlation only for few samples in the largest bucket

  36. QuickSync’s Sparse IFFT is number of samples • samples per bucket  buckets • Bucketization: Estimation:

  37. QuickSync Synchronization Signal FFT IFFT Input in Freq. Output FFT of Code FFT Stage Sparse IFFT

  38. QuickSync Synchronization Signal FFT IFFT Input in Freq. Output FFT of Code FFT Stage Sparse IFFT Output is not sparse Cannot Use Sparse FFT

  39. QuickSync Synchronization Signal FFT IFFT Input in Freq. Output FFT of Code FFT Stage Sparse IFFT Input to next stage

  40. QuickSync Synchronization Signal FFT IFFT Input in Freq. Output FFT of Code FFT Stage Subsampled FFT Sparse IFFT Need only few IFFT samples its samples of FFT output input

  41. QuickSync Synchronization Signal FFT IFFT Input in Freq. Output FFT of Code Subsampled FFT Sparse IFFT FFT and IFFT are dual of each other

  42. QuickSync Synchronization Signal FFT IFFT Input in Freq. Output FFT of Code Subsampled FFT Sparse IFFT Subsampling IFFT Bucketization FFT Bucketization

  43. QuickSync Synchronization Signal FFT IFFT Input in Freq. Output FFT of Code Subsampled FFT Sparse IFFT

  44. QuickSync Synchronization Sparse Subsampled Correct Input delay IFFT FFT Subsampled FFT of Code

  45. Formal Analysis Theorem: (informally restated) For any SNR QuickSync achieves the same accuracy as FFT ‐ Based synchronization and has a complexity of where is the number of samples in the code For moderately low SNR (i.e. noise is bounded by � ), QuickSync has complexity

  46. Rest of this Talk  GPS Primer  Our GPS Synchronization Algorithm  Empirical Results

  47. Setup SciGe GN3S Sampler USRP Software radios • Traces are collected both US and Europe • Different locations: urban – suburban • Different weather conditions: cloudy – clear

  48. Compared Schemes • QuickSync Synchronization FFT ‐ Based Synchronization •

  49. Metrics • Hardware implementations ��������������� �� �������� ��������������� �� ��������� • Software implementations ����� �� �������� ����� �� ���������

  50. Multiplication Gain 3x 2.1x 1.3x

  51. Multiplication Gain 2.1x QuickSync provides an average gain of 2.1x

  52. FLOPS Gain QuickSync provides an average gain of 2.2 ×

  53. Does the Gain Depend on the GPS SNR? QuickSync improves over FFT ‐ Based for the whole range of GPS SNRs

  54. Related Work • Past work on GPS [NC91, SA08, RZL11] – QuickSync presents the fastest algorithm to date • Sparse FFT Algorithms [GMS05, HKIP12a, HKIP12b] – QuickSync’s bucketization leverages duality  reduces the complexity of both stages in GPS

  55. Conclusion • Fastest GPS synchronization algorithm for any SNR – for moderately low SNR – • Empirical results show an average 2x gain • QuickSync applies to general synchronization tasks beyond GPS

Recommend


More recommend