Source: http://www.google.com/patents/US7088770?ie=ISO-8859-1
Timestamp: 2015-08-01 12:32:39
Document Index: 398385220

Matched Legal Cases: ['art 30', 'art 50', 'art 30', 'art 50', 'art 30', 'art 50', 'art 30', 'art 30', 'art 30', 'art 30', 'art 30', 'art 30', 'art 30', 'art 50', 'art 30', 'art 50', 'art 50', 'art 50', 'art 50', 'art 50', 'art 50', 'art 50', 'art 50', 'art 50', 'art 50']

Patent US7088770 - Adaptive turbo decision feedback equalization method and device - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign inAdvanced Patent SearchPatentsThe invention provides an adaptive turbo decision feedback equalizer for executing an adaptive turbo decision feedback equalization method in response to a reception a packet including samples transmitted to the adaptive turbo decision feedback equalizer via a channel. The adaptive turbo decision feedback...http://www.google.com/patents/US7088770?utm_source=gb-gplus-sharePatent US7088770 - Adaptive turbo decision feedback equalization method and deviceAdvanced Patent SearchPublication numberUS7088770 B2Publication typeGrantApplication numberUS 10/046,444Publication dateAug 8, 2006Filing dateOct 19, 2001Priority dateOct 19, 2001Fee statusPaidAlso published asUS20030095593Publication number046444, 10046444, US 7088770 B2, US 7088770B2, US-B2-7088770, US7088770 B2, US7088770B2InventorsVinayak Tripathi, Michael L. HonigOriginal AssigneeMotorola, Inc.Export CitationBiBTeX, EndNote, RefManPatent Citations (4), Non-Patent Citations (5), Referenced by (2), Classifications (9), Legal Events (6) External Links: USPTO, USPTO Assignment, EspacenetAdaptive turbo decision feedback equalization method and device
US 7088770 B2Abstract
The invention provides an adaptive turbo decision feedback equalizer for executing an adaptive turbo decision feedback equalization method in response to a reception a packet including samples transmitted to the adaptive turbo decision feedback equalizer via a channel. The adaptive turbo decision feedback equalizer generates a first set of soft estimates of bits based upon a computation of a first feed-forward filter and a first feedback filter as a function of an estimation of the channel. The adaptive turbo decision feedback equalizer subsequently generates additional sets of soft estimates of the bits and a set of hard estimates of the bits based upon a computation of additional feed-forward filters and additional feedback filters as a function of a plurality of additional soft symbol estimates.
1. A method for decoding a packet transmitted over a channel, the packet including a plurality of samples, said method comprising:
in a first iteration, generating a first set of soft estimates of bits based upon a computation of a first feed-forward filter and a first feedback filter as a function of an estimate of the channel; and
in a second iteration, generating a second set of soft estimates of bits based upon a computation of a second feed-forward filter and a second feedback filter as a function of a first set of soft symbol estimates obtained during the first iteration.
generating a set of hard estimates of bits based upon a computation of the second feed-forward filter and the second feedback filter as a function of a second set of soft symbol estimates.
3. A device for decoding a packet transmitted over a channel, the packet including a plurality of samples, said device comprising:
means for generating in a first iteration, a first set of soft estimates of bits based upon a computation of a first feed-forward filter and a first feedback filter as a function of an estimate of the channel; and
means for generating in a second iteration, a second set of soft estimates of bits based upon a computation of a second feed-forward filter and a second feedback filter as a function of a first set of soft symbol estimates obtained during the first iteration.
means for generating a set of hard estimates of bits based upon a computation of the second feed-forward filter and the second feedback filter as a function of a second set of soft symbol estimates.
5. A method for decoding a packet transmitted over a channel, the packet including a plurality of samples, said method comprising:
providing a first set of soft symbol estimates; and
computing a feed-forward filter and a feedback filter as a function of the first set of soft symbol estimates;
wherein the feed-forward filter and the feedback filter are computed according to:
wherein y(i) is the samples, ŝδ (n)(i) is the soft symbol estimate whose δth delay element has been set to zero, f(n) is the feed-forward filter, and b(n) is the feedback filter, M is a number of data symbols in a packet and H is a Hermitian transpose.
filtering the plurality of samples through the feed-forward filter; and
filtering the first set of soft symbol estimates through the feedback filter.
providing a first set of decision feedback equalization outputs in response to a filtering of the plurality of samples through the feed-forward filter and a filtering of the first set of soft symbol estimates through the feedback filter.
8. The method of claim 7, wherein the a first set of decision feedback equalization outputs are computed according to:
z (n)(i)=(f (n))H y(i)+(b (n))H ŝ (n)(i).
providing a second set of soft symbol estimates; and
computing the feed-forward filter and the feedback filter as a function of the second set of soft symbol estimates.
filtering the second set of soft symbol estimates through the feedback filter.
providing a second set of decision feedback equalization outputs in response to a filtering of the plurality of samples through the feed-forward filter and a filtering of the second set of soft symbol estimates through the feedback filter.
12. A device for decoding a packet transmitted over a channel, the packet including a plurality of samples, said device comprising:
a soft symbol estimator providing a first set of soft symbol estimates in response to a reception of the packet by said device;
a feed-forward filter computed as a function of the first set of soft symbol estimates; and
a feedback filter computed as a function of the first set of soft symbol estimates;
wherein said feed-forward filter and said feedback filter are computed according to:
said feed-forward filter filters the plurality of samples upon a computation of said feed-forward filter; and
said feedback filter filters the first set of soft symbol estimates upon a computation of said feedback filter.
an adder providing a first set of decision feedback equalization outputs in response to a filtering of the plurality of samples through said feed-forward filter and a filtering of the first set of soft symbol estimates through said feedback filter.
15. The device of claim 14, wherein the a first set of decision feedback equalization outputs are computed in according to:
said feed-forward filter is computed as a function of a second set of soft symbol estimates;
said feedback filter is computed as a function of the second set of soft symbol estimates,
said soft symbol estimator provides the second set of soft symbol estimates in response to said adder providing said first set of decision feedback equalization outputs.
said feed-forward filters the plurality of samples upon a computation of said feed-forward filter; and
said feedback filter filters the second set of soft symbol estimates upon a computation of said feedback filter.
said adder further provides a second set of decision feedback equalization outputs in response to a filtering of the plurality of samples through said feed-forward filter and a filtering of the second set of soft symbol estimates through said feedback filter.
19. A computer readable medium storing a computer executable program code, the code, when executed, performing the steps comprising:
generating during a first iteration, a first set of soft estimates of a plurality of bits based upon a computation of a first feed-forward filter and a first feedback filter as a function of an estimate of a channel; and
generating during a second iteration, a second set of soft estimates of the plurality of bits based upon a computation of a second feed-forward filter and a second feedback filter as a function of a first set of soft symbol estimates obtained during the first iteration.
generating a set of hard estimates of the plurality of bits based upon a computation of the second feed-forward filter and the second feedback filter as a function of a second set of soft symbol estimates.
21. A computer readable medium storing a computer executable program code, the code, when executed, performs the steps comprising:
wherein the first feed-forward filter and the first feedback filter are computed according to:
24. The computer readable medium of claim 23, wherein the a first set of decision feedback equalization outputs are computed according to:
The present invention generally relates to the field of communication systems. More specifically, the invention relates to turbo decision-feedback equalization techniques implemented in a cellular system operating with a multi-path channel.
The capacity of a cellular system operating with a multi-path channel can be limited by a demodulator's ability to mitigate the degradations of the received signal due to the multi-path channel. One receiver known in the art for receiving coded transmissions over a multi-path channel is a maximum likelihood sequence estimator (“MLSE”) that operates to jointly demodulate the channel and the error correction code. However, the complexity of an MLSE is proportional to PL+K, where P is the number of points in a signal constellation, K is the number of stages in a convolutional code shift register, and L is the number of symbol spaced taps of the multi-path channel. Such complexity impedes an implementation of the MLSE into a cellular system.
Another known receiver for receiving coded transmissions over a multi-path channel is a turbo decision-feedback equalizer (“TDFE”) having feed-forward filters and feedback filters that are based upon an estimation of the multi-path channel. While the complexity of the TDFE does not impede the implementation of the TDFE into a cellular system, a problem with the TDFE is the computation of the filters assumes perfect feedback that is not attained in practice.
Therefore, there is a need for an adaptive TDFE. The present invention addresses this need.
One form of the invention is a method for decoding a packet transmitted over a channel with the packet including a plurality of samples. First, a first set of soft estimates of a plurality of bits is generated based upon a computation of a first feed-forward filter and a first feedback filter as a function of an estimate of the channel. Second, a second set of soft estimates of the plurality of bits is generated based upon a computation of a second feed-forward filter and a second feedback filter as a function of a first set of soft symbol estimates.
A second form of the invention is a device decoding a packet transmitted over a channel with the packet including a plurality of samples. The device includes means for generating a first set of soft estimates of a plurality of bits based upon a computation of a first feed-forward filter and a first feedback filter as a function of an estimate of the channel, and means for generating a second set of soft estimates of the plurality of bits based upon a computation of a second feed-forward filter and a second feedback filter as a function of a first set of soft symbol estimates.
A third form of the present invention is a computer readable medium storing a computer program comprising computer readable code for generating a first set of soft estimates of a plurality of bits based upon a computation of a first feed-forward filter and a first feedback filter as a function of an estimate of the channel, and computer readable code for generating a second set of soft estimates of the plurality of bits based upon a computation of a second feed-forward filter and a second feedback filter as a function of a first set of soft symbol estimates.
FIG. 1 is a block diagram of one embodiment of an adaptive turbo decision feedback equalizer for receiving a packet over a channel in accordance with the present invention;
FIG. 2 is a flowchart illustrating one embodiment of a decision feedback equalization method for generating soft estimates of the bits as known in the art; and
FIG. 3 is a flowchart illustrating one embodiment of an adaptive decision feedback equalization method for generating soft and hard estimates of the bits in accordance with the present invention.
FIG. 1 illustrates an adaptive turbo decision-feedback equalizer 10 (“adaptive TDFE 10”) in accordance with one embodiment of the present invention. From the subsequent description herein of the adaptive TDFE 10, those having ordinary skill in the art will appreciate an employment of the adaptive TDFE 10 into a receiver whereby a transmitter transmits a packet including a M Q-ary modulated data symbols and training symbols containing bits, and the adaptive TDFE 10 receives a packet y including samples y(i) corresponding to the data symbols and training symbols. In one embodiment, the transmitted packet contains 8-Phase Shift Keying (8-PSK) symbols wherein samples y(i) are represented by the following equation [1]:
y(i)=Hs(i)+n(i) [1]
where the vector of received samples y(i) in the packet y is given by the following equation [2]:
the Toeplitz channel impulse response matrix H of dimensions Nf�(Nf+L−1) is given by the following equation [3]:
and, the transmitted symbol vector s(i) is defined in accordance with the following equation [4]:
In the equations [1]–[4], s(i) represents three coded bits {dk(s(i)), k=1,2,3}; n(i) is a vector of noise samples; Nf is the length of a feed-forward filter 12; and δ is a delay for optimizing the adaptive TDFE 10.
In response to a reception of the packet y, the adaptive TDFE 10 executes a flowchart 30 as illustrated in the FIG. 2 and a flowchart 50 as illustrated in the FIG. 3. The flowchart 30 is representative of a decision feedback equalization method for generating a soft estimate of bits within the transmitted packet, and the flowchart 50 is representative of an adaptive decision feedback equalization method for generating soft estimates and hard estimates of the bits within the transmitted packet. The various components of the adaptive TDFE 10 will now be described herein in the context of a sequential execution of the flowchart 30 and the flowchart 50.
Referring to FIGS. 1 and 2, the adaptive TDFE 10 has a first component stage for executing the flowchart 30. This first component stage includes a channel estimator 11, a feed-forward filter 12 (“f(1) filter 12”), an adder 13, a soft estimate module 14, and a feedback filter 15 (“b(1) filter 15”) constituting a decision feedback equalizer (“DFE”). The first component stage further includes a switch 16, a buffer 17, an a priori probability module 18 (“a priori module 18”), a de-interleaver 19, and a Map decoder 20. During a block S32 of the flowchart 30, the channel estimator 11 estimates the channel coefficients. In one embodiment, the channel estimator 11 estimates the channel coefficients in accordance with the following equations [5] and [6]:
where yT is the T�1 vector of the received training symbols represented by the following equation [7]:
and the matrix T is a Toeplitz matrix of transmitted training symbols si that is given by the following equation [8]:
Upon completion of the block S32, the adaptive TDFE 10 proceeds to a block S34 to compute the f(1) filter 12 and the b(1) filter 15 as a function of the channel coefficients. In one embodiment, the f(1) filter 12 and the b(1) filter 15 are computed in accordance with the following equations [9] and [10]:
f (1)=(Ĥ 1δ Ĥ 1δ H+{circumflex over (σ)}n 2 I)−1 ĥ δ [9]
where the H1:δ represents columns in 1 through δ of the estimated channel matrix H; ĥk represents the kth column of the estimated channel matrix H; and ĥδ represents the the δth column of the estimated channel matrix H.
Upon completion of the block S34, the adaptive TDFE 10 proceeds to a block S36 wherein the packet y and the soft estimates s(1)(i) are filtered through the f(1) filter 12 and the b(1) filter 15, respectively, to obtain DFE outputs z(1)(i). In one embodiment, the adder 13 provides the DFE outputs z(1)(i) in accordance with the following equation [11]:
z (1)(i)=(f (1))H y(i)+(b (1))H ŝ (1)(i) [11]
where the soft estimate module 14 estimates the soft feedback symbols ŝ(1)(i) in accordance with the following equations [12]–[17]:
s ^ ( 1 ) ( i ) ≡ E [ z ( i ) ( i ) | s ( i ) ] = ∑ k = 0 7 P ( z ( 1 ) ( i ) | s ( i ) = ⅇ j π k 4 ) � ⅇ j π k 4 [ 12 ] P ( z ( 1 ) ( i ) | s ( i ) = ⅇ j m π 4 ) = ∏ k = 1 3 P ( z ( 1 ) ( i ) | d k ( s ( i ) ) = d k ( ⅇ j m π 4 ) ) , for m = 0 , 1 , … 7 [ 13 ] P ( z ( 1 ) ( i ) | d k ( s ( i ) ) = � 1 ) = ∑ s ∈ Ω � k s 1 2 π σ 2 exp ( -  z ( 1 ) ( i ) - μ s  2 σ 2 ) , [ 14 ] k s = P ( Transmitted Symbol = s ) ∑ s ′ ∈ Ω � P ( Transmitted Symbol = s ′ ) [ 15 ] E[|z (1)(i)∥s(i)]=μs(i)=|(f (1))H h δ |s(i) [16] Var[|z (1)(i)∥s(i)]=σ2=σn 2 ∥f (1)∥2+∥(f (1))H H 1δ∥2 [17]
where {dk(s(i)), k=1, 2, 3} are the bits which correspond to s(1)(i); Ω� is the set of symbols which correspond to the value of dk(s(i)); and ks is a normalization factor.
Upon completion of the block S36, the adaptive TDFE 10 proceeds to a block S38 of the flowchart 30 to set switch 16 to provide the output z(1)(i) to the buffer 17. In response thereto, the buffer 17 stores the DFE outputs z(1)(i).
Upon completion of the block S38, the adaptive TDFE 10 proceeds to a block S40 of the flowchart 30 to generate a priori probabilities P{z(n)(i)ldk(s(i))}. In one embodiment, the priori module 18 generates the a priori probabilities P{z(n)(i)ldk(s(i))}. in accordance with the following equations [18]–[21]
Upon completion of block S40, the adaptive TDFE 10 proceeds to a block S42 of the flowchart 30 wherein the de-interleaver 19 conventionally de-interleaves the a priori probabilities P{z(n)(i)ldk(s(i))} and feeds them to the MAP decoder 20. In response thereto, during a block S44 of the flowchart 30, the MAP decoder 20 generates a soft estimate of the bits in the form of a posteriori probabilities P{dk(s(i))|z(1)}. In one embodiment, the MAP decoder 20 implements a conventional Bahl-Coch-Jelinek-Raviv (“BCJR”) algorithm to generate a posteriori probabilities P{dk(s(i))|z(1)}.
The flowchart 30 is terminated upon completion of block S44.
Referring to FIGS. 1 and 3, the adaptive TDFE 10 has a second component stage for executing the flowchart 50 immediately upon termination of the flowchart 30. The second component stage includes the switch 16, the buffer 17, the a priori module 18, the de-interleaver 19, the MAP decoder 20, a switch 21, and an interleaver 22. The second component stage further includes a soft estimates module 23, a filter coefficients module 24, a feedback filter 25 (“b(n) filter 25”), a feed-forward filter 26 (“f(n) filter 26”), and an adder 27 constituting an adaptive decision feedback equalizer.
During a block S52 of the flowchart 50, the switch 21 is set to provide the a posteriori probabilities P{dk(s(i))|z(n)} to the interleaver 22. In response thereto, the interleaver 22 conventionally interleaves the a posteriori probabilities P{dk(s(i))|z(n)}. Upon completion of the block S52, the adaptive TDFE 10 proceeds to a block S54 of the flowchart 50 wherein the soft estimates module 23 computes soft estimates of the transmitted symbols s(n)(i) in accordance with the following equations [22] and [23]:
Upon completion of block S54, the adaptive TDFE 10 proceeds to block S56 of the flowchart 50 wherein the filter coefficients module 24 computes the b(n) filter 25 and the f(n) filter 26 in accordance with the following equations [24]–[27]:
where ŝδ (n)(i) is the vector ŝ(n)(i) whose δth element has been set to zero.
Upon completion of the block S56, the adaptive TDFE 10 proceeds to a block S58 of the flowchart 50 wherein the packet y and the soft symbol estimates s(n)(i) are filtered through the f(n) filter 26 and the b(n) filter 25, respectively, to obtain DFE outputs z(n)(i). In one embodiment, the adder 27 computes the DFE outputs z(n)(i) in accordance with the following equation [28]:
z (n)(i)=(f (n))H y(i)+(b (n))H ŝ (n)(i) [28]
Upon completion of the block S58, the adaptive TDFE 10 proceeds to a block S60 of the flowchart 50 to set switch 16 to provide the DFE outputs z(n)(i) to the buffer 17. In response thereto, the buffer 17 stores the DFE outputs z(n)(i).
Upon completion of the block S60, the adaptive TDFE 10 proceeds to a block S62 of the flowchart 50 to generate a priori probabilities P{z(n)(i)ldk(s(i))}. In one embodiment, the priori module 18 generates the a priori probabilities P{z(n)(i)ldk(s(i))} in accordance with the following equations [29]–[31]
Upon completion of block S62, the adaptive TDFE 10 proceeds to a block S64 of the flowchart 50 wherein the de-interleaver 19 conventionally de-interleaves a priori probabilities P{z(n)(i)ldk(s(i))} and feeds them to the MAP decoder 20. In response thereto, during a block S66 of the flowchart 50, the MAP decoder 20 generates either a soft estimate of the bits in the form of a posteriori probabilities P(dk(s(i))|z(n)). In one embodiment, the Map decoder 20 implements a BCJR algorithm to generate a posteriori probabilities P{dk(s(i)|z(n)}.
The flowchart 50 is immediately terminated upon a completion of the block S66 when only one iteration of blocks S52–S66 is contemplated. With one completed iteration, the switch 21 is set to provide the a posteriori probabilities P(dk(s(i))|z(n)) as hard estimates {circumflex over (b)}(i) of the bits. Thus, the soft symbol estimates s(n)(i), the b(n) filter 25 and the f(n) filter 26 are computed only once when only one iteration of blocks S52–S66 is contemplated.
Preferably, the flowchart 50 is terminated after plurality of n iterations (e.g., 4 iterations) of the blocks S52–S66 as shown in FIG. 3. As such, the switch 21 is set to provide the a posteriori probabilities P{dk(s(i)|z(n)} to the interleaver 22 upon completion of each intermediate iteration of the blocks S52–S66, and the switch 21 is set to provide the a posteriori probabilities P{dk(s(i)|z(n)} as hard estimates {circumflex over (b)}(i) of the bits upon completion of the final iteration of the blocks S52–S66. Those having ordinary skill in the art will appreciate the repeated computations of the soft symbol estimates s(n)(i), the b(n) filter 25 and the f(n) filter 26 during the multiple iterations of the blocks S52–S66 in effect produce separate and distinct soft symbol estimates s(n)(i), b(n) filters 25 and f(n) filters 26 for each iteration.
The illustrated embodiments of the present invention may be implemented in hardware, software stored on a computer readable medium, or combinations of hardware and software. The present invention may be embodied in other specific forms without departing from its spirit or essential characteristics. The described embodiments are to be considered in all respects only as illustrative and not restrictive. The scope of the invention is, therefore, indicated by the appended claims rather than by the foregoing description. All changes that come within the meaning and range of equivalency of the claims are to be embraced within their scope.
Patent CitationsCited PatentFiling datePublication dateApplicantTitleUS6167082 *Mar 3, 1998Dec 26, 2000Level One Communications, Inc.Adaptive equalizers and methods for carrying out equalization with a precoded transmitterUS6201796 *May 14, 1998Mar 13, 2001Broadcom CorporationStartup protocol for high throughput communications systemsUS6563812 *Oct 12, 1999May 13, 2003Mitsubishi Electric Research Laboratories, Inc.Method and apparatus for detecting multiple signals in a CDMA networkUS6690723 *Feb 22, 2000Feb 10, 2004Motorola, Inc.Decision-aided equalizer* Cited by examinerNon-Patent CitationsReference1Carlo Luschi, Magnus Sandell, Paul Strauch, Jian-Jun Wu, Costel Ilas, Ping-Wenong, Romain Baeriswyl, Frederic Battaglia, Spyros Karageorgis, Ran-Hong Yan; "Advanced Signal-Processing Algorithms for Energy-Efficient Wireless Communications"; IEEE, vol. 88, No. 10, Oct. 2000, pp. 1633-1650.2Christophe Laot, Alain Glavieux, and Joel Labat; "Turbo Equalization: Adaptive Equalization and Channel Decoding Jointly Optimized"; IEEE Journal on Selected Areas in Communications, vol. 19, No. 9, Sep. 2001, pp. 1744-1752.3Dan Raphaeli and Yoram Zarai; "Combine turbo Equalization and Turbo Decoding"; IEEE Communications Letters, vol. 2, No. 4, Apr. 1998, pp. 107-109.4I. Fijalkow, A. Roumy, S. Ronger, D. Pirez, P. Vila; "Improved Interference Cancellation for Turbo-Equalization"; IEEE, 2000, pp. 416-419.5Michael Tuchler, Ralf Koetter, Andrew Singer; "Iterative Correction of ISI via Equalization and Decoding with Priors"; IEEE, ISIT 2000, Sorrento, Italy, Jun. 25-30, 2000; pp. 100.Referenced byCiting PatentFiling datePublication dateApplicantTitleUS7551668 *Mar 21, 2005Jun 23, 2009Sony CorporationAdaptive equalizing apparatus and methodUS8542724Sep 13, 2010Sep 24, 2013The United States Of America As Represented By The Secretary Of The NavyIterative joint minimum mean square error decision feedback equalizer and turbo decoder* Cited by examinerClassifications U.S. Classification375/233, 370/342, 370/286International ClassificationH04B7/216, H04B3/20, H04L25/03, H03H7/30Cooperative ClassificationH04L25/03171European ClassificationH04L25/03B6Legal EventsDateCodeEventDescriptionOct 19, 2001ASAssignmentOwner name: MOTOROLA, INC., ILLINOISFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:TRIPATHI, VINAYAK;HONIG, MICHAEL L.;REEL/FRAME:012494/0172Effective date: 20011019Jan 22, 2010FPAYFee paymentYear of fee payment: 4Dec 13, 2010ASAssignmentOwner name: MOTOROLA MOBILITY, INC, ILLINOISFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MOTOROLA, INC;REEL/FRAME:025673/0558Effective date: 20100731Oct 2, 2012ASAssignmentOwner name: MOTOROLA MOBILITY LLC, ILLINOISFree format text: CHANGE OF NAME;ASSIGNOR:MOTOROLA MOBILITY, INC.;REEL/FRAME:029216/0282Effective date: 20120622Jan 28, 2014FPAYFee paymentYear of fee payment: 8Nov 24, 2014ASAssignmentOwner name: GOOGLE TECHNOLOGY HOLDINGS LLC, CALIFORNIAFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MOTOROLA MOBILITY LLC;REEL/FRAME:034422/0001Effective date: 20141028RotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services