GNSS Receivers for Weak Signals