1. A method for correlating an incoming signal with pseudonoise (PN) codes, comprising: receiving real/imaginary (I/Q) baseband samples in the I/Q domain; converting the I/Q baseband samples to phase baseband samples; generating, by a PN code generator, a PN code; converting the PN code to PN phase data; performing, by a correlator circuit, a correlation on the phase baseband samples using the PN phase data to generate correlated I/Q values, wherein performing the correlation includes subtracting the PN phase data from the phase baseband samples to generate a current residual signal, subtracting a correction value from the current residual signal to generate correlated phase values, wherein the correction value is one of: a current frequency offset, an immediately previous residual signal, or an older residual signal generated prior to the immediately previous residual signal, and converting the correlated phase values to the correlated I/Q values; performing an adding operation on the correlated I/Q values to generate demodulated I/Q values; converting the demodulated I/Q values into demodulated phase values; performing, by a frequency correction circuit, a frequency correction operation on the demodulated phase values to generate frequency correction data; converting the demodulated I/Q values into demodulated magnitude values; and performing signal decoding and synchronization on the magnitude values to generate output data, wherein the operation of performing correlation on the phase baseband samples using the PN phase data is accomplished using scalar subtraction.