Digital correlator
First Claim
1. A correlator for correlating a spread spectrum signal against a trial reference signal spreading code, said correlator comprises:
- a) a data shift register (40) comprises M×
N registers for storing a digital incoming input data stream, and shifting the data through, one register at a time for each one clock of the data stream signal, and each of the registers has a conduit output where the total conduit outputs of the registers are grouped in M sequential groups of N sequential registers and each parallel conduit output is indexed m for group 1 to M, and within the group indexed n for 1 to N;
b) a plurality of M multiplexers (41) each for routing each of the N register'"'"'s parallel conduit outputs to a single output of each multiplexer (41), one conduit at time, within one data stream clock;
c) a plurality of M arithmetic logic units (42) for multiplying, within one data stream clock, each of the N single conduit outputs of the multiplexer (41) with the trial reference signal spreading code, that is provided simultaneously to all the M arithmetic logic units for the duration of the clock of the data stream signal, and adding the result to a total accumulation digital word to create a new total accumulation digital output word for the n indexed conduit;
d) a plurality of M word demultiplexers (43), each operating simultaneously with multiplexers (41), for routing each of the N new total accumulation digital word output of the arithmetic logic unit to N word memory unit;
e) a plurality of M N word memory units (44) for storing the new total accumulation digital output word of each one of the N conduits;
f) a plurality of M multiplexers (45), each operating simultaneously with multiplexers (41), for routing, within one data stream clock, each of the N new total accumulation digital output words to the arithmetic logic unit as the total accumulation digital word;
g) a multiplexer (46) for routing the N total accumulation digital output words from each of the M multiplexers (45) to a magnitude computation unit (47);
h) a magnitude computation unit (47) for storing all the M×
N total accumulation digital word for each of the M×
N conduits and calculating a magnitude for each one;
i) a compute statistics unit (48) for finding the indexes m and n, and value of the largest magnitude conduit from all the M×
N calculated magnitudes.
0 Assignments
0 Petitions
Accused Products
Abstract
An apparatus for receiving a data stream consisting of a simultaneous plurality of time domain spread spectrum messages in the same frequency channel, wherein each message is independent and spread spectrally with a unique code. The data stream contains a subset of all known codes in use. The apparatus finds a specific code and a constant phase shift between the incoming code and a reference code by serially moving the data stream through a shift register, subjecting all the shift register outputs to a single expected reference code and accumulating the result for each output. The code and phase shift is indicated by the largest magnitude of the accumulation, above a set threshold, corresponding to the shift register output for the correct phase shift between the incoming code and the reference. Upon completion of an integration cycle the time shift delay increases by the length of the shift register. The process continues for all the possible relative time shifts and for all the reference codes.
130 Citations
2 Claims
-
1. A correlator for correlating a spread spectrum signal against a trial reference signal spreading code, said correlator comprises:
-
a) a data shift register (40) comprises M×
N registers for storing a digital incoming input data stream, and shifting the data through, one register at a time for each one clock of the data stream signal, and each of the registers has a conduit output where the total conduit outputs of the registers are grouped in M sequential groups of N sequential registers and each parallel conduit output is indexed m for group 1 to M, and within the group indexed n for 1 to N;b) a plurality of M multiplexers (41) each for routing each of the N register'"'"'s parallel conduit outputs to a single output of each multiplexer (41), one conduit at time, within one data stream clock; c) a plurality of M arithmetic logic units (42) for multiplying, within one data stream clock, each of the N single conduit outputs of the multiplexer (41) with the trial reference signal spreading code, that is provided simultaneously to all the M arithmetic logic units for the duration of the clock of the data stream signal, and adding the result to a total accumulation digital word to create a new total accumulation digital output word for the n indexed conduit; d) a plurality of M word demultiplexers (43), each operating simultaneously with multiplexers (41), for routing each of the N new total accumulation digital word output of the arithmetic logic unit to N word memory unit; e) a plurality of M N word memory units (44) for storing the new total accumulation digital output word of each one of the N conduits; f) a plurality of M multiplexers (45), each operating simultaneously with multiplexers (41), for routing, within one data stream clock, each of the N new total accumulation digital output words to the arithmetic logic unit as the total accumulation digital word; g) a multiplexer (46) for routing the N total accumulation digital output words from each of the M multiplexers (45) to a magnitude computation unit (47); h) a magnitude computation unit (47) for storing all the M×
N total accumulation digital word for each of the M×
N conduits and calculating a magnitude for each one;i) a compute statistics unit (48) for finding the indexes m and n, and value of the largest magnitude conduit from all the M×
N calculated magnitudes. - View Dependent Claims (2)
-
Specification