An efficient satellite tracking algorithm for GPS receivers