Text this: Fine C/A code acquisition algorithm for weak GPS signal based on averaging correlation and differential coherent accumulation