Patent ID: 8351486

Claim:
An apparatus for processing spread spectrum signals, comprising: an intermediate frequency (IF) signal preprocessing unit operable for generating a first and a second set of data streams using a digitized signal and a first and second local reference signals respectively, wherein each data stream is generated every predetermined time period, wherein each data stream includes pre-integration results generated at a predetermined rate, and wherein the IF signal preprocessing unit comprises: a first set of multiply-accumulator (MAC) units, each MAC unit in the first set of MAC units is operable for generating the pre-integration results of one of the first set of data streams, wherein each pre-integration result is generated by multiplying each data point of the digitalized signal by a respective data point of the first local reference signal to produce multiplication results and summing the multiplication results within a data length; a second set of MAC units, each MAC unit in the second set of MAC units is operable for generating the pre-integration results of one of the second set of data streams, wherein each pre-integration result is generated by multiplying each data point of the digitized signal by a respective data point of the second local reference signal to produce multiplication results and summing the multiplication results within the data length; a code clock generator coupled to each MAC unit in the first set of MAC units and each MAC unit in the second set of MAC units, and operable for controlling the pre-integration results of each data stream to be generated at the same predetermined rate, wherein the predetermined rate is a function of a pseudorandom noise (PRN) code rate; a plurality of block integrators in communication with the IF signal preprocessing unit, each block integrator is operable for receiving a data stream in the first and second set of data streams and a PRN code, and performing a first predetermined number of partial correlations based on the data stream and the pseudorandom noise code; and a plurality of sets of shift registers, each set of shift registers is in communication with the IF signal preprocessing unit and at least one block integrator of the plurality of block integrators, wherein each set of shift registers stores a predetermined number of pre-integration results of a data stream in the first and second set of data streams and shifts the predetermined number of pre-integration results after a pre-integration result of the data stream is generated by the intermediate frequency signal preprocessing unit, and wherein for each shift of a set of shift registers, each block integrator performs a second predetermined number of partial correlations, wherein each partial correlation is performed based on the predetermined number of pre-integration results in the set of shift registers and a shifted segment of the PRN code, and the segment of the PRN code is shifted by a predetermined position.