The present invention relates to wireless communication systems, and more particularly to cancellation or reduction of self-interference in full-duplex communication systems.
A wireless communication system operating in a half-duplex mode may use the same frequency to either transmit or receive data. When operating in a full-duplex mode, the system may simultaneously transmit and receive data but the simultaneous transmission and reception of data occur at different frequencies. For example, a full-duplex cell phone uses a first frequency for transmission and a second frequency for reception of signals. Using the same frequency for simultaneous transmission and reception in a conventional wireless system results in significant amount of self-interference at the receiver thereby rendering the system ineffective in receiving the desired signal. Reducing the self-interference signal in a full duplex wireless communication system remains a challenge.
A wireless communication device, in accordance with one embodiment of the present invention, includes, in part, at least one antenna for receiving or transmitting a signal, and a cancelation circuit adapted to cancel or reduce the self-interference signal. The cancelation circuit includes, in part, a control block, N delay and attenuation paths, a combiner, and a subtractor. Each path includes a delay element and an associated variable attenuator whose attenuation level varies in response to the control block. Each path receives a sample of the transmit signal and generates a delayed and weighted version of the sample signal. The combiner is adapted to combine the N delayed and weighted versions of the sample signal to construct a signal representative of a first portion of the self-interference signal. The subtractor is adapted to subtract the constructed signal from the received signal. N is an integer greater than or equal to 2.
In one embodiment, the delay generated by at least one of the delay elements is shorter than an arrival time of a sample of the transmit signal received at the subtractor, and the delay generated by at least another one of the delay elements is longer than the arrival time of the sample of the transmit signal at the subtractor. In one embodiment, the N paths include 2M paths forming M associated pairs of delay paths. The delays generated by the delay elements of each associated pair of delay paths form a time window within which time the second sample of the transmit signal arrives at the subtractor.
In one embodiment, N is equal to 2M and is thus an even number. In another embodiment, N is an odd number, therefore, the 2M paths form a subset of the N paths. In one embodiment, the controller determines the attenuation levels of the variable attenuators in accordance with values of intersections of an estimate of the self-interference signal and 2M sinc functions centered at the boundaries of the M windows. In one embodiment, the peak value of at least a subset of the 2M sinc functions is selected to be substantially equal to an amplitude of the estimate of the self-interference signal.
In one embodiment, the cancellation circuit further includes, in part, a splitter adapted to generate the sample of transmit signal to the delay paths. In one embodiment, the subtractor is a balun. In one embodiment, the communication device further includes an isolator having a first port coupled to the antenna, a second port coupled to a transmit line of the wireless communication device, and a third port coupled to a receive line of the wireless communication device. In one embodiment, the isolator is a circulator.
In one embodiment, the wireless communication further includes, in part, a frequency downconverter configured to downconvert an output signal of the subtractor, a filter adapted to filter out unselected portions of the downconverted signal, and an analog-to-digital converter adapted to convert an output signal of the filter to a digital signal. In one embodiment, the wireless communication further includes, in part, a processing engine configured to remove a second portion of the self-interference signal from the output signal of the analog-to-digital converter. The processing engine optionally includes a plurality of programmable filters. In one embodiment, the wireless communication further includes, in part a frequency upconverter configured to upconvert a transmit signal, a filter adapted to filter out unselected portions of the upconverted signal, and a digital-to-analog converter adapted to convert an output signal of the filter to an analog signal.
A method of canceling or reducing a self-interference signal, in accordance with one embodiment of the present invention, includes, in part, receiving a first sample of a transmit signal at a receiver, generating N delayed versions of the first sample of the transmit signal, attenuating the N delayed signals to generate N attenuated and delayed signals, combining the N attenuated and delayed signals to generate a combined signal representative of a first portion of a self-interference signal, and subtracting the combined signal from the received signal.
In one embodiment, the delay associated with a first one of the N delayed versions of the first sample of the transmit signal is set to a value less than an arrival time of a second sample of the transmit signal, and the delay associated with a second one of the N delayed versions of the first sample of the transmit signal is set to a value less than the arrival time of a second sample of the transmit signal.
In one embodiment, the method of cancellation further includes, in part, forming M time windows from the N delay paths, and selecting the delays such that the arrival time of the second sample of the transmit signal falls within each of the M time windows. In one embodiment, N is equal to 2M and is thus an even number. In another embodiment, N is an odd number, therefore, the 2M paths form a subset of the N paths. In one embodiment, the controller determines the attenuation levels are determined in accordance with values of intersections of an estimate of the self-interference signal and 2M sinc functions centered at the boundaries of the M windows. In one embodiment, the peak value of at least a subset of the 2M sinc functions is selected to be substantially equal to an amplitude of the estimate of the self-interference signal. In one embodiment, the first sample of the transmit signal is received via a splitter. In one embodiment, the combined signal is subtracted from the received signal via a balun.
In one embodiment, the method of cancellation further includes, in part, coupling a first port of an isolator to an antenna used by the receiver to receive signals, coupling a second port of the isolator to the receiver, and coupling a third port of the isolator to a transmitter causing self-interference at the receiver. In one embodiment, the isolator is a circulator.
In one embodiment, the method of cancellation further includes, in part, downconverting the difference between the combined signal and the received signal to generate a downconverted signal, filtering out unselected portions of the downconverted signal, and converting the filtered signal to a digital signal. In one embodiment, the method of cancellation further includes, in part, removing a second portion of the self-interference signal from the converted digital signal.
In one embodiment, the method of cancellation further includes, in part, removing a second portion of the self-interference signal from the converted digital signal using a plurality of programmable filters. In one embodiment, the method of cancellation further includes, in part, upconverting a transmit signal, filtering out unselected portions of the upconverted signal, and converting the filtered signal to an analog signal.
As shown, the received Radio frequency (RF) signal is converted by frequency downconverter 118 to a baseband signal which is filtered by filter 122 and converted to a digital signal by ADC 126. Processing engine 104 performs baseband signal processing and filtering operations on the signal it receives from ADC 126 and delivers its output signal to devices associated with the same or other communication layers. Likewise, the transmit signal supplied by processing engine 104 is converted to an analog signal by DAC 124, filtered by filter 120 and upconverted to an RF signal by frequency upconverter 116 before being delivered to antenna 106 by splitter 108.
Power splitter 108 is adapted to split and deliver a first portion of the transmit signal to transmit antenna 106 via its high power port, and a second portion of the transmit signal to attenuation and delay circuit 120 via its low power port. Power splitter 108 may be a passive component adapted to deliver, for example, −8 dBc of the signal power it receives to attenuation and delay circuit 120. Attenuation and delay circuit 120 is adapted to generate a multitude of weighted and delayed samples (versions) of the transmit signal it receives, and combine these signals to generate and deliver to balun 114 a signal representative of the self-interference signal received by antenna 110. Balun 114 is adapted to subtract the signal it receives from attenuation and delay circuit 120 from the signal it receives from antenna 110 and deliver the resulting signal to frequency downconverter 118. Accordingly, the self-interference component of the signal supplied by balun 114 to frequency upconverter 118 is canceled or substantially degraded. In one embodiment, self-cancellation circuit 102 may cancel, e.g., 20-25 dB of self-interference signal. Self-cancellation circuit 102 is further adapted to adjust the amount of self-cancellation in order to accommodate the dynamic range of ADC 126 and ensure that ADC 126 does not saturate.
Processing engine 104 is configured, among other functions, to resample signal streams. The digital baseband transmission streams 136 received by processing engine 104 may be up-sampled (e.g., from 40 Msamples/sec to 200 Msamples/sec) by an up-sampler disposed in processing engine 104. Processing engine 104 is further configured to low-pass filter the up-sampled streams to remove undesirable aliases of the up-sampled streams. Processing engine 104 is further shown as including, in part, a multitude of filters 130, intermediate frequency (IF) converters 132, and an application programming interface (“API”) 134. Filters 130 may be programmable and include one or more finite impulse response (“FIR”) filters, one or more infinite impulse response (“IIR”) filters, and the like. In one embodiment, one or more of the programmable digital filters disposed in processing engine 104 remove the remaining self-interference signal that may be present at the output of self-cancelation circuit 102. Intermediate frequency converters 132 are adapted to convert the incoming digital baseband 136 to a digital intermediate frequency (“IF”) when necessary.
API 134 is adapted to program and interconnect one or more of the filters 130, program the IF converter 132 to achieve the desired results, configure the up/down samplers, and up/down converters. API 134 is further adapted to coordinate the flow of signal streams across the various components disposed in filters 130 and IF converters 132, collect the incoming signal streams 136, add them, and send the resulting stream to DAC 124. For the signals that processing engine 104 receives from the receive path, API 134 performs the above signal processing/control operations in reverse.
As shown, attenuation and delay circuit 120 receives a sample TX_SMP of the transmit signal TX via splitter 108. Attenuation and delay circuit 120 is shown as including a multitude of paths 2901, 2902 . . . 290N-1, 290N, where N is an integer greater than or equal to 2. Each path is shown as including a delay element 270i, where i is an index varying from 1 to N, and a variable attenuator 275i. The delay elements 290i may generate a fixed or a variable delay. The level of attenuation of each variable attenuator 270i may be varied in accordance with a predefined algorithm implemented by controller 280. Each delay element 270i is adapted to generate a signal Ai that is a delayed version of signal TX_SMP. Each variable attenuator 275i is adapted to attenuate the amplitude of the signal Ai it receives in accordance with the control signal Ci applied thereto by controller 280 so as to generate an attenuated (weighted) signal Bi. Accordingly, signals Bi are different delayed and weighted versions of signal TX_SMP. Combiner 295 combines signals Bi to generate signal RX_RC representative of the self-interference component of the transmit signal. In one embodiment combiner 295 is an adder adding signals Bi to generate signal RX_RC. In other embodiments, combiner 295 may perform other arithmetic or logic functions on signals Bi to generate signal RX_RC.
As described above, attenuation and delay circuit 120 is operative to reconstruct the self-interference signal from the signal values present on paths (alternatively referred to herein as taps) 290i. Since both the self-interference signal and the time-delayed, weighted signals Bi present on the taps are samples of the same transmit signal, the reconstruction of the self-interference signal is similar to band-limited interpolation. Furthermore, since only a finite number of taps are available, a windowed interpolation may be used to reconstruct signal RX_RC representative of the self-interference signal. Therefore, the signal representative of the self-interference signal, in accordance with one embodiment of the present invention, is generated from signals Bi that are delayed and weighted versions of the same sampled transmit signal TX_SMP.
To generate a signal representative of the self-interference signal, in accordance with one exemplary embodiment, the delays generated in each pair of associated paths (taps) 290i are selected such that the arrival time of the self-interference signal at subtractor 114 falls within the difference between these two delays (also referred to herein as the delay window). Accordingly, the delay generated by a first tap in each pair of associated taps 290i is less than the arrival time of the self-interference signal at subtractor 114 (referred to herein as Tself_int) and the delay generated by a second tap in each pair of associated taps 290i is greater than Tself_int. In one embodiment, the center two taps, namely taps 2901 and 2902, form the first pair of associated taps such that, for example, the delay TL1 generated by delay element 2701 is less than Tself_int and the delay TH1 generated by delay element 2702 is greater than Tself_int. TL1 and TH1 are thus selected to be the closest such delays to Tself_int. The next two taps closest to the center taps, namely taps 2903 and 2904, form the second pair of associated taps such that, for example, the delay TL2 generated by delay element 2703 is less than Tself_int and the delay TH2 generated by delay element 2704 is greater than Tself_int. TL2 is shorter than TL1, and TH2 is longer than TH1, therefore TL2 and TH2 are selected to be the second closest such delays to Tself_int. The delay of the remaining pairs of associated taps are similarly selected and thus are not described herein. It is understood that in other embodiments, associated taps may be arranged and selected differently. For example, in another embodiment, taps 2901 and 2904 may be selected as associated taps and used to form a delay window.
The following description is made with reference to an arrangement according to which the center taps 2901 and 2902 form the first pair of associated taps, the next two taps 2903 and 2904 form the second pair of associated taps, the next two taps 2905 and 2906 form the third pair of associated taps, . . . , and the last two taps 290N-1 and 290N form the last pair of associated taps, as described above. Furthermore, in the following, the delays and interpolations associated with only 2 pairs of associated taps, namely associated taps 2901/2902 and associated taps 2903/2904 are described. It is understood, however, that similar operations may be performed for all other taps regardless of the number of taps disposed in attenuation and delay circuit 120.
As shown in
To determine the level of attenuation for each attenuator 275i, in accordance with one exemplary embodiment of the present invention, sinc interpolation is used; it is however understood that any other interpolation scheme may also be used. To achieve this, for each window, the intersection of a pair of sinc functions—each centered at one of the window boundaries and each having a peak value substantially equal to the peak value of an estimate of the self-interference signal—and the estimate of the interference signal, shown as Self_int, is determined. For example, referring to
Since the amplitude and delay of the self-interference signal is not known in advance, as described above, an estimate (signal Self_int) of both the delay and amplitude of the self-interference signal is initially used by control block 280 for interpolation. As described further below, the initial estimates are used to determine the attenuation levels of the attenuators 275i, thereby to generate signals Bi which are subsequently combined to generate signal RX_RC. The amount of self-interference at the receiver is then measured to determine whether one or more conditions are satisfied. One such condition may be to determine whether the amount of self-interference has reached below a minimum threshold level. If the condition(s) is not met, an iterative optimization algorithm is performed by control block 280 to arrive at new estimate(s) for either the delay or amplitude, or both the delay and amplitude, of the self-interference signal. The new estimate(s) are subsequently used, as described further below, to generate new attenuation levels for the attenuators, in turn resulting in generation of revised signals Bi as well as revised self-interference signal. The process of measuring the level of the self-interference signal being canceled or reduced at the receiver, arriving at a new estimate for the self-interference signal based on such measurement, and varying the attenuation levels of the attenuators in response continue until the predefined condition(s) is met.
Combiner 295 is adapted to combine signals B1, B2 . . . BN thereby to generate signal RX_RC representative of the self-interference signal. As the delay of the self-interference signal changes and its position within the windows moves, the intersections of the self-interference signal and the sinc functions change, thereby causing the attenuation levels to change, which in turn causes the reconstructed signal representative of the self-cancelation signal to also change to track the self-interference signal.
The higher the number of taps, the greater is the amount of self-interference.
The above embodiments of the present invention are illustrative and not limitative. The embodiments of the present invention are not limited by the transmitter or receiver used in the communication device. The embodiments of the present invention are not limited by the number of taps used to reconstruct the self-interference signal, nor are they limited by the frequency of signal transmission/reception. The embodiments of the present invention may be implemented in hardware, software, firmware and/or combinations thereof. One or more embodiments may include instructions stored in non-transitory computer readable storage medium for execution by one or more processors. Other additions, subtractions or modifications are obvious in view of the present disclosure and are intended to fall within the scope of the appended claims.
The present application claims priority to U.S. Provisional Patent Application No. 61/657,567, filed Jun. 8, 2012, and entitled “Multiple Tap Feed Forward Cancellation,” and is a continuation-in-part of U.S. patent application Ser. No. 13/762,043, filed Feb. 7, 2013, and entitled “Systems and Methods for Full-Duplex Signal Shaping,” which claims priority to U.S. Provisional Patent Application No. 61/596,628, filed Feb. 8, 2012, and entitled “Enabling Algorithms and RF Circuitry for Full-duplex Communication Over Arbitrary Spectrum Fragments,” the contents of all of which are incorporated herein by reference in their entirety.
Number | Name | Date | Kind |
---|---|---|---|
3922617 | Denniston | Nov 1975 | A |
4952193 | Talwar | Aug 1990 | A |
5691978 | Kenworthy | Nov 1997 | A |
5930301 | Chester et al. | Jul 1999 | A |
6215812 | Young et al. | Apr 2001 | B1 |
6411250 | Oswald et al. | Jun 2002 | B1 |
6639551 | Li et al. | Oct 2003 | B2 |
7336940 | Smithson | Feb 2008 | B2 |
8055235 | Gupta et al. | Nov 2011 | B1 |
8086191 | Fukuda et al. | Dec 2011 | B2 |
8175535 | Mu | May 2012 | B2 |
8179990 | Orlik et al. | May 2012 | B2 |
8331477 | Huang et al. | Dec 2012 | B2 |
8351533 | Shrivastava et al. | Jan 2013 | B2 |
8385871 | Wyville | Feb 2013 | B2 |
8755756 | Zhang et al. | Jun 2014 | B1 |
20040106381 | Tiller | Jun 2004 | A1 |
20050129152 | Hillstrom | Jun 2005 | A1 |
20050254555 | Teague | Nov 2005 | A1 |
20060083297 | Yan et al. | Apr 2006 | A1 |
20070105509 | Muhammad et al. | May 2007 | A1 |
20070207747 | Johnson et al. | Sep 2007 | A1 |
20070249314 | Sanders et al. | Oct 2007 | A1 |
20080107046 | Kangasmaa et al. | May 2008 | A1 |
20080131133 | Blunt et al. | Jun 2008 | A1 |
20080219377 | Nisbet | Sep 2008 | A1 |
20090022089 | Rudrapatna | Jan 2009 | A1 |
20090034437 | Shin et al. | Feb 2009 | A1 |
20090047914 | Axness et al. | Feb 2009 | A1 |
20090180404 | Jung et al. | Jul 2009 | A1 |
20100014600 | Li et al. | Jan 2010 | A1 |
20100022201 | Vandenameele | Jan 2010 | A1 |
20100103900 | Yeh et al. | Apr 2010 | A1 |
20100150033 | Zinser et al. | Jun 2010 | A1 |
20100226416 | Dent et al. | Sep 2010 | A1 |
20100226448 | Dent | Sep 2010 | A1 |
20100232324 | Radunovic et al. | Sep 2010 | A1 |
20100279602 | Larsson et al. | Nov 2010 | A1 |
20110013684 | Semenov et al. | Jan 2011 | A1 |
20110026509 | Tanaka | Feb 2011 | A1 |
20110171922 | Kim et al. | Jul 2011 | A1 |
20110222631 | Jong | Sep 2011 | A1 |
20110243202 | Lakkis | Oct 2011 | A1 |
20110256857 | Chen et al. | Oct 2011 | A1 |
20110268232 | Park et al. | Nov 2011 | A1 |
20110319044 | Bornazyan | Dec 2011 | A1 |
20120063369 | Lin et al. | Mar 2012 | A1 |
20120063373 | Chincholi et al. | Mar 2012 | A1 |
20120140685 | Lederer et al. | Jun 2012 | A1 |
20120147790 | Khojastepour et al. | Jun 2012 | A1 |
20120154249 | Khojastepour et al. | Jun 2012 | A1 |
20120155335 | Khojastepour et al. | Jun 2012 | A1 |
20120155336 | Khojastepour et al. | Jun 2012 | A1 |
20120201153 | Bjaradia et al. | Aug 2012 | A1 |
20120201173 | Jain et al. | Aug 2012 | A1 |
20130005284 | Dalipi | Jan 2013 | A1 |
20130215805 | Hong et al. | Aug 2013 | A1 |
20140169236 | Choi et al. | Jun 2014 | A1 |
20140206300 | Hahn et al. | Jul 2014 | A1 |
20140219139 | Choi et al. | Aug 2014 | A1 |
20140348018 | Bharadia et al. | Nov 2014 | A1 |
Number | Date | Country |
---|---|---|
755141 | Oct 2005 | EP |
02237434 | Feb 2009 | EP |
2267946 | Dec 2010 | EP |
2256985 | Jul 2005 | RU |
2013185106 | Dec 2013 | WO |
2014093916 | Jun 2014 | WO |
Entry |
---|
International Search Report for PCT Application No. PCT/US2013/044830 mailed Sep. 26, 2013, 2 pages. |
Bharadia et al., “Full Duplex Radios” SIGOMM, Aug. 12-16, 2013, Hong Kong, China, Copyright 2013 ACM 978-1-4503-2056-6/6/13/08, 12 pages. |
International Search Report and Written Opinion for PCT Application No. PCT/US2012/023183 mailed May 17, 2012, 6 pages. |
International Search Report and Written Opinion for PCT Application No. PCT/US2012/023184 mailed May 17, 2012, 6 pages. |
International Preliminary Report on Patentablility for PCT Application No. PCT/US2012/023184 issued Aug. 6, 2013, 5 pages. |
International Preliminary Report on Patentablility for PCT Application No. PCT/US2012/023183 issued Aug. 6, 2013, 5 pages. |
International Search Report and Written Opinion for PCT Application No. PCT/US2013/044830, mailed Sep. 26, 2013, 4 pages. |
International Search Report and Written Opinion for PCT Application No. PCT/US2013/075166 mailed Apr. 22, 2014, 11 pages. |
International Search Report and Written Opinion for PCT Application No. PCT/US2014/014726 mailed Jun. 2, 2014, 38 pages. |
International Preliminary Report on Patentablility for PCT Application No. PCT/US2013/044830, mailed Dec. 9, 2014, 5 pages. |
International Search Report and Written Opinion for PCT Application No. PCT/US2014/050584 mailed Jan. 21, 2015, 11 pages. |
International Search Report and Written Opinion for PCT Application No. PCT/US2014/065814 mailed Feb. 19, 2015. 11 pages. |
Non-Final Office Action for U.S. Appl. No. 13/293,069 mailed on Jul. 17, 2013, 13 pages. |
Non-Final Office Action for U.S. Appl. No. 13/293,072 mailed on Jul. 19, 2013, 11 pages. |
Final Office Action for U.S. Appl. No. 13/293,072 mailed on Mar. 31, 2014, 10 pages. |
Non-Final Office Action for U.S. Appl. No. 13/293,069 mailed on May 1, 2014, 17 pages. |
Final Office Action for U.S. Appl. No. 13/293,069 mailed on Oct. 21, 2014, 18 pages. |
Non-Final Office Action for U.S. Appl. No. 13/913,323 mailed on Mar. 12, 2015, 11 pages. |
Final Office Action for U.S. Appl. No. 13/913,323 mailed on Apr. 21, 2015, 5 pages. |
Extended Search Report as issued in corresponding European Application No. 13801200.0, dated Feb. 4, 2016. |
Number | Date | Country | |
---|---|---|---|
20130301488 A1 | Nov 2013 | US |
Number | Date | Country | |
---|---|---|---|
61657567 | Jun 2012 | US | |
61596628 | Feb 2012 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 13762043 | Feb 2013 | US |
Child | 13913323 | US |