Correlator method and apparatus
First Claim
1. A correlator for simultaneously correlating a data sequence comprising a plurality of data samples with a first reference sequence comprising a plurality of first reference sequence values, and a second reference sequence comprising a plurality of second reference sequence values, comprising:
- a data sequence shift register for receiving and storing the data samples;
a first reference register for storing the first reference sequence values;
a second reference register for storing the second reference sequence values;
a first set of first multipliers for multiplying each data sample by a corresponding first reference sequence value to produce a set of first correlation products;
a second set of second multipliers for multiplying each data sample by a corresponding second reference sequence value to produce a set of second correlation products;
a first adder for adding the first correlation products to produce a first correlation value, the first adder including a first population counter; and
a second adder for adding the second correlation products to produce a second correlation value, the second adder including a second population counter.
3 Assignments
0 Petitions
Accused Products
Abstract
A programmable digital correlator device, and associated correlation method, with a very efficient structure. In one aspect, two or more correlators share a common data sequence shift register. In another aspect, the data sequence shift register is comprised of random access memory (RAM) modules which allow efficient construction in field programmable gate array (FPGA) logic devices. Two'"'"'s-complement data samples are multiplied by a reference sequence to produce unfinished two'"'"'s-complement products, the products are summed with unsigned arithmetic in an adder containing population counters, and a correction factor is added after all other calculations are complete to convert the unsigned result back to a two'"'"'s-complement number.
23 Citations
6 Claims
-
1. A correlator for simultaneously correlating a data sequence comprising a plurality of data samples with a first reference sequence comprising a plurality of first reference sequence values, and a second reference sequence comprising a plurality of second reference sequence values, comprising:
-
a data sequence shift register for receiving and storing the data samples; a first reference register for storing the first reference sequence values; a second reference register for storing the second reference sequence values; a first set of first multipliers for multiplying each data sample by a corresponding first reference sequence value to produce a set of first correlation products; a second set of second multipliers for multiplying each data sample by a corresponding second reference sequence value to produce a set of second correlation products; a first adder for adding the first correlation products to produce a first correlation value, the first adder including a first population counter; and a second adder for adding the second correlation products to produce a second correlation value, the second adder including a second population counter. - View Dependent Claims (2, 3, 4, 5, 6)
-
Specification