  LoRaWAN is a prominent communication standard to enable reliable low-power,
long-range communications for the Internet of Things (IoT). The modulation
technique used in LoRaWAN, commonly known as LoRa modulation, is based on the
principle of chirp spread spectrum (CSS). While extensive research has been
conducted on improving various aspects of LoRa transmitter, the design of LoRa
receivers that can operate under practical conditions of timing and frequency
offsets is missing. To fill this gap, this paper develops and presents detailed
designs of timing, frequency and phase synchronization circuits for both
non-coherent and coherent detection of CSS signals. More importantly, the
proposed receiver can be used to detect the recently proposed CSS-based
modulation that embeds extra information bits in the starting phases of
conventional CSS symbols. Such a transmission scheme, referred to as
phase-shift keying CSS (PSK-CSS) helps to improve the transmission rates of the
conventional CSS system. In particular, it is shown that the bit error rate
performance of the PSK-CSS scheme achieved with the proposed practical coherent
receiver has only 0.25 dB gaps as compared to the ideal co-coherent receiver.
