The present invention relates generally to broadcast single-frequency networks (SFNs). More particularly, the present invention relates to positioning based on signals received from SFN transmitters.
In general, in one aspect, the invention features an apparatus comprising: a receiver adapted to receive a plurality of single-frequency network (SFN) signals at a predetermined frequency; a correlator adapted to correlate the SFN signals with a predetermined reference signal, wherein correlating produces a plurality of correlation peaks; a grouper circuit adapted to group the correlation peaks into arrival groups such that the correlation peaks in different arrival groups are known to be from different transmitters; and a selection circuit adapted to select the earliest correlation peak in each arrival group as a leading correlation peak.
Some embodiments comprise a spread circuit adapted to select an expected maximum channel delay spread for the SFN signals. In some embodiments, the grouper circuit forms the arrival groups by placing the correlation peaks separated by more than twice the expected maximum channel delay spread into separate ones of the arrival groups. Some embodiments comprise a position circuit adapted to determine one or more possible positions of the apparatus based on one or more of the leading correlation peaks. Some embodiments comprise a candidate circuit adapted to identify a plurality of candidate transmitters of the SFN signals; and a match circuit adapted to match the leading correlation peaks with the candidate transmitters based on locations of the candidate transmitters. Some embodiments comprise a position circuit to determine one or more possible positions of the apparatus based on an output of the match circuit and the locations of the candidate transmitters.
In general, in one aspect, the invention features an apparatus comprising: means for receiving a plurality of single-frequency network (SFN) signals at a predetermined frequency; means for correlating the SFN signals with a predetermined reference signal, wherein correlating produces a plurality of correlation peaks; means for grouping the correlation peaks into arrival groups such that the correlation peaks in different arrival groups are known to be from different transmitters; and means for selecting the earliest correlation peak in each arrival group as a leading correlation peak. Some embodiments comprise second means for selecting an expected maximum channel delay spread for the SFN signals. In some embodiments, the means for grouping forms the arrival groups by placing the correlation peaks separated by more than twice the expected maximum channel delay spread into separate ones of the arrival groups. Some embodiments comprise means for determining one or more possible positions of the apparatus based on one or more of the leading correlation peaks. Some embodiments comprise means for identifying a plurality of candidate transmitters of the SFN signals; and means for matching the leading correlation peaks with the candidate transmitters based on locations of the candidate transmitters. Some embodiments comprise means for determining one or more possible positions of the apparatus based on an output of the means for matching and the locations of the candidate transmitters.
In general, in one aspect, the invention features a method comprising: receiving a plurality of single-frequency network (SFN) signals at a predetermined frequency; correlating the SFN signals with a predetermined reference signal, wherein correlating produces a plurality of correlation peaks; grouping the correlation peaks into arrival groups such that the correlation peaks in different arrival groups are known to be from different transmitters; and selecting the earliest correlation peak in each arrival group as a leading correlation peak.
Some embodiments comprise selecting an expected maximum channel delay spread for the SFN signals. In some embodiments, the correlation peaks separated by more than twice the expected maximum channel delay spread are placed into separate arrival groups. Some embodiments comprise determining one or more possible positions of an apparatus receiving the SFN signals based on the one or more of the leading correlation peaks. Some embodiments comprise identifying a plurality of candidate transmitters of the SFN signals; and matching the leading correlation peaks with the candidate transmitters based on locations of the candidate transmitters. Some embodiments comprise determining one or more possible positions of an apparatus receiving the SFN signals based on the matching and the locations of the candidate transmitters.
In general, in one aspect, the invention features computer-readable media embodying instructions executable by a computer to perform a method comprising: correlating a plurality of single-frequency network (SFN) signals received at a predetermined frequency with a predetermined reference signal, wherein correlating produces a plurality of correlation peaks; grouping the correlation peaks into arrival groups such that the correlation peaks in different arrival groups are known to be from different transmitters; and selecting the earliest correlation peak in each arrival group as a leading correlation peak.
In some embodiments, the method further comprises: selecting an expected maximum channel delay spread for the SFN signals. In some embodiments, the correlation peaks separated by more than twice the expected maximum channel delay spread are placed into separate arrival groups. In some embodiments, the method further comprises: determining one or more possible positions of an apparatus receiving the SFN signals based on the one or more of the leading correlation peaks. In some embodiments, the method further comprises: identifying a plurality of candidate transmitters of the SFN signals; and matching the leading correlation peaks with the candidate transmitters based on locations of the candidate transmitters. In some embodiments, the method further comprises: determining one or more possible positions of an apparatus receiving the SFN signals based on the matching and the locations of the candidate transmitters.
The details of one or more implementations are set forth in the accompanying drawings and the description below. Other features will be apparent from the description and drawings, and from the claims.
The leading digit(s) of each reference numeral used in this specification indicates the number of the drawing in which the reference numeral first appears.
Positioning receivers that are based on time-of-flight, such as GPS, rely on extremely precise measurements of signal arrival time from multiple transmitter sites. Each relative time-of-flight measurement, when combined with the propagation speed of the signal and precise knowledge of transmitter positions, represents a constraint on the possible receiver location. An estimate of position can be formed by combining several such constraints.
This approach to positioning has been considered unfeasible for broadcast transmissions that use SFN technology, such as typical with DVB, ISDB-T, DAB, and A-VSB networks. In an SFN network, geographically dispersed transmitters emit time-synchronized replica signals. Hence, the signals arriving from different towers are not distinguishable and it is not straightforward to associate the arrival of particular quanta of signal energy with any particular transmitter site.
The situation is made even more difficult by multipath, in which a signal may reflect and refract as it transits to the receiver along many different paths, each of which may overlap and either cancel or obscure the arrivals of weaker signals from other transmitters.
Even in the non-SFN case (when each transmitter is assigned a unique frequency and therefore there is no cross-transmitter overlap), the presence of multipath introduces error into the position calculation. This is because the accuracy of positioning is determined, in part, by the accuracy of the estimated pseudoranges between transmitter and receiver. The accuracy of the pseudoranges, in turn, relies on the measurement of the arrival time of the direct path energy. An attenuating or reflecting obstacle that is interposed between the two can prevent detection of the direct path by the receiver. Additionally, scatterers can smear the signal energy out and cause fading, making it difficult to temporally localize the arrival of direct path energy. Despite these issues, the earliest detected energy of a transmitter's signal is generally used as the best initial estimate of the direct path arrival time.
This invention seeks to generate either a position or a set of possible positions for a receiver by taking into account the geometric constraints imposed by relative receiver and transmitter locations. This is achieved by fully or partially resolving the ambiguity in determining which detected signal represents an early path and from which transmitter the signal emanated.
It is assumed that the positions of all transmitters which could possibly be detected by the positioning receiver are known at the time of each attempted position fix. It is important that the identified candidate transmitters are a superset of the actually detected transmitters. Since it is beneficial to limit these candidate transmitters to as small a number as possible, however, it is also assumed that the rough location of the receiver is known. This rough location could be determined by any number of methods, such as by means of demodulating cellular base station transmissions or fingerprinting nearby wireless signals, e.g. cellular or TV base stations.
The distribution of RF signal delays at a receiver is particular to a given reception scenario and depend on a variety of environmental and radio design factors, such as the transmitter and receiver heights, radiation patterns of the antenna, the amount of nearby natural and man-made scatterers, terrain and so forth. Nonetheless, numerous statistical channel models have been created to characterize the statistical distribution of signal arrival times and powers in different types of macro-environments. For example, COST 259 defines PDPs (Power-delay profiles) for urban, suburban and rural environments. The PDP defines the power envelope of the received signal as a function of elapsed time since arrival of the direct path. With the COST 259 model, for example, the envelope consists of one or more exponentially decaying probability curves and the power of the path at a given delay offset has a Rayleigh temporal distribution proportional to the envelope.
Although channel models are numerous and varied, they all can be described by a characteristic delay spread, an estimate of time between the arrival of the earliest detected path and the latest detected path. Typically, the RMS delay spread is cited as a defining characteristic of either a channel or channel model. In the context of this invention, the maximum channel delay spread is the parameter of interest instead, describing the maximum possible time between the arrival of the earliest detected path and the latest detected path.
One method of estimating the arrival time of a wideband signal is to correlate against a reference waveform known to be present in the signal to be detected. This results in a processing gain against Gaussian noise that is proportional to the product of the signal's bandwidth and the duration of the reference signal. For example, one could use the scattered or continuous pilots as a reference waveform for a DVB signal. The output of this correlator is a direct estimate of the signal energy versus its time of arrival.
It is useful to distinguish between noise energy and signal energy. There are numerous ways to accomplish this known to those skilled in the art. One of the simplest is to examine the RMS value of the correlator output over a temporal region far from the peak correlator output. This represents the noise floor of the measurement. Assuming all noise is of a Gaussian distribution, a detection threshold can be set as a multiple of the noise floor. All received power higher than the threshold is classified as signal and received power less than the threshold is classified as noise. Any post-correlator energy peak that is classified as signal (rather than noise) is also referred to as a correlation peak.
The higher the detection threshold, the less likelihood that a noise peak would be incorrectly classified as signal energy, i.e. a “false alarm”, but the more likely it is that true signal energy would be misclassified as noise. It is well-known how to compute a detection threshold in Gaussian noise for any desired CFAR (Constant False Alarm Rate).
Having classified portions of the correlator output as signal and other parts as noise, the next step is to separate the correlator peaks into “arrival groups”. As defined here, peaks that are in different arrival groups are guaranteed to have been emitted by different SFN transmitters, although the converse is not true: Peaks in the same arrival group are not guaranteed to be from the same transmitter.
Conceptually, we differentiate between detectable peaks, as predicted by a channel model, and those peaks actually detected by the receiver, reflecting the instantaneous channel behavior. Consider the case of non-overlapping signal energy arriving from two transmitters. Let M be the maximum channel delay spread predicted by the model. The delay spread of each received transmitter's signal, should be in the range [0, M]. Let di be the delay between the nominal arrival time of the transmitter's direct path and the earliest detected peak for transmitter i, which will be in the range [0, D]. If two peaks from transmitters i and j are separated by an interval of at least (M−mi+dj), then the two peaks are guaranteed to be from different transmitters and are placed in different arrival groups. In the worst case, mi is equal to zero and dj is equal to M, i.e. both transmitters are received with zero delay spread, but one of the peaks represents the direct path of one transmitter and the second peak represents the most delayed path of the second transmitter. To be conservative, therefore, peaks should be separated into a different arrival group if their arrival times are larger than 2M, twice the maximum predicted delay spread of the channel.
The earliest path of any arrival group also represents the earliest path of at least one transmitter represented within the arrival group, designated the TOA (Time of Arrival). Since more than one transmitter's energy might be incorporated into the same arrival group, the number of arrival groups created, k, is necessarily less than or equal to k′, the number of transmitters from which signals were received. That number, in turn, is less than N, the number of candidate transmitters.
At this point, the TOA of the earliest paths for k transmitters are known, allowing up to k−1 independent TDOA (Time Difference of Arrival) equations to be formed. Let TOAi be the estimated signal Time of Arrival for transmitter i and let c be the speed of the signal in the medium and R represents the distance between transmitter and receiver. Then, one such set of linearly independent equations would be:
c(TOA1−TOAj)−(R1−Rj)=0 2≦j≦k (1)
There are numerous known ways to solve such a set of equations, but the commonest technique is to linearize R in terms of the XYZ coordinates of the transmitters and employ an iterative least-squares method until the residual values on the right hand size have been minimized. The usual metric for goodness of solution fit is SSE (Squared residual Sum of Errors) across all equations.
The difficulty in generating a set of equations such as in equation (1) is that it is necessary to associate each discovered TOA with its transmitter in order to compute the constant R, the range between the transmitter and receiver. Given N candidate transmitters and k TOAs, the possible number of transmitter permutations is:
Every one of the transmitter permutations counted by equation (2) can be substituted into equation (1), each one generating a new set of linearly independent equations. The next step, then, is to determine which of these many possibilities meets the constraints of the transmitter geometry and thus represents a probable position solution.
First, a threshold SSE is chosen which represents a maximum likely SSE value assuming that the only contributor to error is TOA estimation errors (and not an incorrect transmitter permutation). Second, the SSEs of the solutions to all permutations of equation (1) are compared against this threshold value. Permutations with SSE below the threshold value represent candidate positioning solutions.
In the event that only a single permutation of transmitters has SSE below the threshold value, then the corresponding position solution represents the most likely position of the receiver. If there are multiple matching permutations, then the constraints formed by the resulting sets of equations in (1) may be combined with other, external constraints to generate a position fix.
Embodiments of the present invention provide positioning in single-frequency networks (SFN). Embodiments of the present invention can be used with coded orthogonal frequency-division multiplexing (COFDM) SFN signals such as digital video broadcasting—handheld (DVB-H) signals, as well as with non-COFDM signals that are transmitted in a single frequency network.
The phrase “user terminal” is meant to refer to any object capable of implementing the techniques described herein. Examples of user terminals include PDAs, mobile phones, cars and other vehicles, and any object which could include a chip or software implementing the techniques described herein. Further, the term “user terminal” is not intended to be limited to objects which are “terminals” or which are operated by “users.”
In some embodiments, user terminal 102 performs the techniques described herein. In other embodiments, some or all of the techniques are performed by a location server 106 based on data collected by user terminal 102 and relayed by a relay station 108 such as a cellular base station and the like. The locations of SFN transmitters 104 can be stored in a SFN transmitter location database 112. The location of user terminal 102 can be transmitted to an E911 location server 116 for emergencies.
User terminal 102 can also include a candidate circuit 216 adapted to identify a plurality of candidate transmitters 104 of SFN signals 110, and a match circuit 218 adapted to match the leading correlation peaks with the candidate transmitters 104 based on locations of candidate transmitters 104. Position circuit 214 can determine the position of user terminal 102 based on the output of match circuit 218 and the locations of candidate transmitters 104.
Although in the described embodiments, the elements of user terminal 102 are presented in one arrangement, other embodiments may feature other arrangements, as will be apparent to one skilled in the relevant arts based on the disclosure and teachings provided herein. For example, the elements of user terminal 102 can be implemented in hardware, software, or combinations thereof. As another example, some of the elements of user terminal 102 can be implemented in location server 106 of
Referring to
Each transmitter 104 on the channel generates a cluster of correlation peaks within a particular time window determined by multipath delay spread. If two clusters of correlation peaks are separated by more than twice an expected delay spread S for a channel, the clusters represent separate transmitters 104. Spread circuit 212 selects the expected maximum channel delay spread S for SFN signals 110 (step 306). The expected maximum channel delay spread S can be selected by any means. For example, the expected maximum channel delay spread S can be selected empirically for an environment based on previous observations of the environment.
Grouper circuit 208 groups the correlation peaks into arrival groups that are separated by at least twice the expected maximum channel delay spread S (step 308).
Selection circuit 210 selects the earliest correlation peak 402 in each arrival group as a leading correlation peak (step 310). The remaining correlation peaks 402 in each arrival group can be discarded as multipath signals. For example, referring to
At this point in process 300, a number of leading correlation peaks 404 have been identified, but have not been matched to their respective transmitters 104. Candidate circuit identifies a group of candidate transmitters 104 (step 312). The candidate transmitters 104 can be identified by any means. For example, the candidate transmitters 104 can be identified empirically for an environment based on previous observations of the environment.
Match circuit 218 matches the leading correlation peaks 404 selected by selection circuit 210 with the candidate transmitters 104 identified by candidate circuit 216 based on the locations of the candidate transmitters 104 (step 314). For K leading correlation peaks 404 and N candidate transmitters 104, the number of possible combinations is given by
Match circuit 218 can match leading correlation peaks 404 with candidate transmitters 104 according to any process. For example, match circuit 218 can perform a time-of-arrival position computation for every combination, and select the matching combination based on the residuals of those computations, using techniques that are well-known in the relevant art. The combination that generates the smallest residual is the most likely combination.
Referring to
Referring again to
The matlab code below provides a simulation used to generate plot 500 of
function sfn(numTransmitters, numReceived)
% Analysis grid dimensions, in km
extent=100;
% Construct random x, y coordinates of transmitters
transmitters=(rand(1, numTransmitters)+rand(1, numTransmitters)*i)*extent/2+extent/4;
% transmitters=[30+i, 70+30i, 50+70i];
% Choose random location for user
user=(rand+rand*i)*extent/2+extent/4;
% Determine interesting region to plot
allXCoords=[imag(transmitters), imag(user)];
minXCoord=min(allXCoords);
maxXCoord=max(allXCoords);
allYCoords=[real(transmitters), real(user)];
minYCoord=min(allYCoords);
maxYCoord=max(allYCoords);
plotRange=round([minXCoord−10, maxXCoord+10, minYCoord−10, maxYCoord+10]);
R=5;
zoomedPlotRange=round([imag(user)−R, imag(user)+R, real(user)−R, real(user)+R]);
figure(1);
hold off;
% plotToaCount(transmitters, plotRange);
plotSSE(user, transmitters, numReceived, plotRange);
hold on;
zLim=get(gca, ‘ZLim’);
zMax=zLim(2);
overlayPlotUser(user, zMax);
overlayPlotTransmitters(transmitters, numReceived, zMax);
% figure(2);
% plotSSE(user, transmitters, numReceived, zoomedPlotRange);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function plotToaCount(transmitters, plotRange)
fh=@(x,y) toaCount(x, y, transmitters);
h=ezcontourf(fh, plotRange, 200);
colorbar( )
colormap([[0 0 0]; jet]);
% view([0 90]);
set (h, ‘LineStyle’, ‘none’);
set(h, ‘LevelStep’, 0.1);
plotCoords=[plotRange(1):plotRange(2)];
% for x=plotCoords
% for y=plotCoords
% count=toaCount(x, y, transmitters);
% if (count<4)
% count=0;
% end
% Z(x-plotRange(1)+1, y-plotRange(1)+1)=count;
% end
% end
% shading interp;
% h=pcolor(plotCoords, plotCoords, Z);
% set(h, ‘Line’, ‘none’);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Return the number of distinct leading peaks available at a given receiver
% location
function count=toaCount(x, y, transmitters)
ranges=calcRanges([x y]', transmitters);
numTransmitters=length(transmitters);
% Maximum delay spread at RX, in km
maxDelaySpread=1;
count=numTransmitters;
for i=1:numTransmitters−1
range=ranges(i);
rest=ranges(i+1:end);
number_overlap=sum((range<(rest+2*maxDelaySpread)) & (range>(rest−2*maxDelaySpread)));
count=count−(number_overlap>0);
end
if count<4
count=0;
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function plotSSE(user, transmitters, numReceived, plotRange)
% Calculate ranges from user to transmitters
trueRanges=calcRanges(user, transmitters)
% Calculate all possible permutations of transmitters
trueRangePerms=npermsk(trueRanges, numReceived);
transmitterPerms=npermsk(transmitters, numReceived);
% Create contour map of objective function
hold off;
% ezsurf(fh, [0, 100], 150);
fh=@(x,y) sse(y, x, transmitters, transmitterPerms, trueRangePerms);
h=ezcontourf(fh, plotRange, 150);
set(h, ‘LineStyle’, ‘none’);
colorbar( )
colormap([[1 1 1]; jet]);
view([0 90])
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Overlap markers representing transmitters onto plot
function overlayPlotTransmitters(transmitters, numReceived, z)
numTransmitters=length(transmitters);
h=scatter(gca, imag(transmitters), real(transmitters), . . .
‘MarkerFaceColor’, ‘white’, ‘MarkerEdgeColor’, ‘black’, ‘SizeData’, 10^2);
set(h, ‘LineWidth’, 3, ‘ZData’, repmat(z, 1, numTransmitters));
unreceived=transmitters(numReceived+1:end);
h=scatter(gca, imag(unreceived), real(unreceived), ‘x’, ‘MarkerEdgeColor’, ‘red’, ‘SizeData’, 20^2);
set(h, ‘LineWidth’, 2, ‘ZData’, repmat(z, 1, numTransmitters−numReceived));
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Overlap markers representing user onto plot
function overlayPlotUser(user, z)
h=scatter(gca, imag(user), real(user), ‘+’, ‘MarkerEdgeColor’, ‘black’, ‘SizeData’, 25^2);
set(h, ‘LineWidth’, 3, ‘ZData’, z);
h=scatter(gca, imag(user), real(user), ‘+’, ‘MarkerEdgeColor’, ‘white’, ‘SizeData’, 25^2);
set(h, ‘LineWidth’, 2, ‘ZData’, z);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Compute range from user to each transmitter
function delta=calcRanges(user, transmitters)
delta=abs(transmitters−repmat(user, 1, length(transmitters)));
% result=sqrt(sum(delta.^ 2, 1))
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Compute least-squares objective function metric, taking account all
% possible permutations of transmitters
function score=sse(x,y, transmitters, transmitterPerms, trueRangePerms)
numReceived=size(transmitterPerms, 2);
numPerms=size(transmitterPerms, 1);
% TOA measurement noise, in km
rmsToalloise=0.2;
rmsSseNoise=2*rmsToaNoise^2;
userRanges=calcRanges(x+y*i, transmitters(1:numReceived));
userRanges=repmat(userRanges, numPerms, 1);
% FIXME—Permutations that would result in imaginary hyperbolas can be discarded
s=userRanges−trueRangePerms;
% FIXME—Is there a better choice of reference than the first receiver?
s=s−repmat(s(:, 1),1, numReceived);
t=min(sum(s.^2, 2));
t=t/(numReceived−1);
t=t+rmsSseNoise;
% score=log10(t);
% Compact magnitude scale to provide detail near SSE minima
mmax=10*rmsToaNoise;
if (t<mmax)
score=t;
else
score=mmax;
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Compute all permutations of array that are k elements long
%
function result=npermsk(array, k)
sets=nchoosek(array, k);
numSets=size(sets, 1);
c=cell(numSets, 1);
for i=1:numSets
c{i}=perms(sets(i,:));
end
result=cell2mat(c);
Embodiments of the invention can be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations of them. Apparatus of the invention can be implemented in a computer program product tangibly embodied in a machine-readable storage device for execution by a programmable processor; and method steps of the invention can be performed by a programmable processor executing a program of instructions to perform functions of the invention by operating on input data and generating output. The invention can be implemented advantageously in one or more computer programs that are executable on a programmable system including at least one programmable processor coupled to receive data and instructions from, and to transmit data and instructions to, a data storage system, at least one input device, and at least one output device. Each computer program can be implemented in a high-level procedural or object-oriented programming language, or in assembly or machine language if desired; and in any case, the language can be a compiled or interpreted language. Suitable processors include, by way of example, both general and special purpose microprocessors. Generally, a processor will receive instructions and data from a read-only memory and/or a random access memory. Generally, a computer will include one or more mass storage devices for storing data files; such devices include magnetic disks, such as internal hard disks and removable disks; magneto-optical disks; and optical disks. Storage devices suitable for tangibly embodying computer program instructions and data include all forms of non-volatile memory, including by way of example semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM disks. Any of the foregoing can be supplemented by, or incorporated in, ASICs (application-specific integrated circuits).
A number of implementations of the invention have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the invention. Accordingly, other implementations are within the scope of the following claims.
This application claims benefit of U.S. Provisional Patent Application Ser. No. 60/806,095 filed Jun. 28, 2006, the disclosure thereof incorporated by reference herein in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
4555707 | Connelly | Nov 1985 | A |
4652884 | Starker | Mar 1987 | A |
4700306 | Wallmander | Oct 1987 | A |
4894662 | Counselman | Jan 1990 | A |
5045861 | Duffett-Smith | Sep 1991 | A |
5157686 | Omura et al. | Oct 1992 | A |
5166952 | Omura et al. | Nov 1992 | A |
5271034 | Abaunza | Dec 1993 | A |
5323322 | Mueller et al. | Jun 1994 | A |
5398034 | Spilker, Jr. | Mar 1995 | A |
5481316 | Patel | Jan 1996 | A |
5504492 | Class et al. | Apr 1996 | A |
5510801 | Engelbrecht et al. | Apr 1996 | A |
5604765 | Bruno et al. | Feb 1997 | A |
5630206 | Urban et al. | May 1997 | A |
5648982 | Durrant et al. | Jul 1997 | A |
5774829 | Cisneros et al. | Jun 1998 | A |
5784339 | Woodsum et al. | Jul 1998 | A |
5835060 | Czarnecki et al. | Nov 1998 | A |
5920284 | Victor | Jul 1999 | A |
5952958 | Speasl et al. | Sep 1999 | A |
5953311 | Davies et al. | Sep 1999 | A |
6006097 | Hornfeldt et al. | Dec 1999 | A |
6016119 | Krasner | Jan 2000 | A |
6078284 | Levanon | Jun 2000 | A |
6094168 | Duffett-Smith et al. | Jul 2000 | A |
6107959 | Levanon | Aug 2000 | A |
6137441 | Dai et al. | Oct 2000 | A |
6147642 | Perry et al. | Nov 2000 | A |
6181921 | Konisi et al. | Jan 2001 | B1 |
6184921 | Limberg | Feb 2001 | B1 |
6201497 | Snyder et al. | Mar 2001 | B1 |
6215778 | Lomp et al. | Apr 2001 | B1 |
6289280 | Fernandez-Corbaton et al. | Sep 2001 | B1 |
6317452 | Durrant et al. | Nov 2001 | B1 |
6317500 | Murphy | Nov 2001 | B1 |
6373432 | Rabinowitz et al. | Apr 2002 | B1 |
6374177 | Lee et al. | Apr 2002 | B1 |
6400753 | Kohli et al. | Jun 2002 | B1 |
6433740 | Gilhousen | Aug 2002 | B1 |
6437832 | Grabb et al. | Aug 2002 | B1 |
6484034 | Tsunehara et al. | Nov 2002 | B1 |
6522297 | Rabinowitz et al. | Feb 2003 | B1 |
6559800 | Rabinowitz et al. | May 2003 | B2 |
6590529 | Schwoegler | Jul 2003 | B2 |
6646603 | Dooley et al. | Nov 2003 | B2 |
6717547 | Spilker, Jr. et al. | Apr 2004 | B2 |
6727847 | Rabinowitz et al. | Apr 2004 | B2 |
6735185 | Noneman | May 2004 | B1 |
6753812 | Rabinowitz et al. | Jun 2004 | B2 |
6806830 | Panasik et al. | Oct 2004 | B2 |
6839024 | Spilker, Jr. et al. | Jan 2005 | B2 |
6859173 | Spilker, Jr. et al. | Feb 2005 | B2 |
6861984 | Rabinowitz et al. | Mar 2005 | B2 |
6879286 | Rabinowitz et al. | Apr 2005 | B2 |
6914560 | Spilker, Jr. et al. | Jul 2005 | B2 |
6917328 | Rabinowitz et al. | Jul 2005 | B2 |
6937866 | Duffett-Smith et al. | Aug 2005 | B2 |
6952182 | Spilker, Jr. et al. | Oct 2005 | B2 |
6961020 | Rabinowitz et al. | Nov 2005 | B2 |
6963306 | Spilker, Jr. et al. | Nov 2005 | B2 |
6970132 | Spilker, Jr. et al. | Nov 2005 | B2 |
7042396 | Omura et al. | May 2006 | B2 |
7042949 | Omura et al. | May 2006 | B1 |
7126536 | Rabinowitz et al. | Oct 2006 | B2 |
7133434 | Toskala et al. | Nov 2006 | B1 |
7260378 | Holland et al. | Aug 2007 | B2 |
7355993 | Adkins et al. | Apr 2008 | B2 |
7372405 | Rabinowitz et al. | May 2008 | B2 |
7463195 | Rabinowitz et al. | Dec 2008 | B2 |
20020122003 | Patwari et al. | Sep 2002 | A1 |
20020184653 | Pierce et al. | Dec 2002 | A1 |
20020199196 | Rabinowitz et al. | Dec 2002 | A1 |
20030157892 | Reznik et al. | Aug 2003 | A1 |
20030162547 | McNair | Aug 2003 | A1 |
20030222819 | Karr et al. | Dec 2003 | A1 |
20040073914 | Spilker et al. | Apr 2004 | A1 |
20040201779 | Spilker et al. | Oct 2004 | A1 |
20050066373 | Rabinowitz | Mar 2005 | A1 |
20050251844 | Martone et al. | Nov 2005 | A1 |
20070050824 | Lee et al. | Mar 2007 | A1 |
20070121555 | Burgess et al. | May 2007 | A1 |
20070131079 | Opshaug et al. | Jun 2007 | A1 |
20070182633 | Omura et al. | Aug 2007 | A1 |
20070296632 | Opshaug et al. | Dec 2007 | A1 |
Number | Date | Country |
---|---|---|
3242997 | May 1984 | DE |
58129277 | Aug 1983 | EP |
2 222 922 | Mar 1990 | GB |
2 254 508 | Oct 1992 | GB |
Number | Date | Country | |
---|---|---|---|
60806095 | Jun 2006 | US |