This invention relates generally to the wireless communications field, and more specifically to new and useful systems and methods for self-interference canceller tuning.
Traditional wireless communication systems are half-duplex; that is, they are not capable of transmitting and receiving signals simultaneously on a single wireless communications channel. Recent work in the wireless communications field has led to advancements in developing full-duplex wireless communications systems; these systems, if implemented successfully, could provide enormous benefit to the wireless communications field. For example, the use of full-duplex communications by cellular networks could cut spectrum needs in half. One major roadblock to successful implementation of full-duplex communications is the problem of self-interference. While progress has been made in this area, many of the solutions intended to address self-interference are non-ideal; specifically, many self-interference solutions are not easily or effectively adjusted to maintain a consistently high level of self-interference cancellation. Thus, there is a need in the wireless communications field to create new and useful systems and methods for self-interference canceller tuning. This invention provides such new and useful systems and methods.
The following description of the preferred embodiments of the invention is not intended to limit the invention to these preferred embodiments, but rather to enable any person skilled in the art to make and use this invention.
1. Full-Duplex Wireless Communication Systems
Wireless communications systems have revolutionized the way the world communicates, and the rapid growth of communication using such systems has provided increased economic and educational opportunity across all regions and industries. Unfortunately, the wireless spectrum required for communication is a finite resource, and the rapid growth in wireless communications has also made the availability of this resource ever scarcer. As a result, spectral efficiency has become increasingly important to wireless communications systems.
One promising solution for increasing spectral efficiency is found in full-duplex wireless communications systems; that is, wireless communications systems that are able to transmit and receive wireless signals at the same time on the same wireless channel. This technology allows for a doubling of spectral efficiency compared to standard half-duplex wireless communications systems.
While full-duplex wireless communications systems have substantial value to the wireless communications field, such systems have been known to face challenges due to self-interference; because reception and transmission occur at the same time on the same channel, the received signal at a full-duplex transceiver may include undesired signal components from the signal being transmitted from that transceiver. As a result, full-duplex wireless communications systems often include analog and/or digital self-interference cancellation circuits to reduce self-interference.
Full-duplex transceivers preferably sample transmission output as baseband digital signals, intermediate frequency (IF) analog signals, or as radio-frequency (RF) analog signals, but full-duplex transceivers may additionally or alternatively sample transmission output in any suitable manner. This sampled transmission output may be used by full-duplex transceivers to remove interference from received wireless communications data (e.g., as RF/IF analog signals or baseband digital signals). In many full-duplex transceivers, an analog self-interference cancellation system is paired with a digital self-interference cancellation system. The analog cancellation system removes a first portion of self-interference by summing delayed and scaled versions of the RF transmit signal to create an RF self-interference signal, which is then subtracted from the RF receive signal. Alternatively, the analog cancellation system may perform similar tasks at an intermediate frequency. After the RF (or IF) receive signal has the RF/IF self-interference signal subtracted, it passes through an analog-to-digital converter of the receiver (and becomes a digital receive signal). After this stage, a digital self-interference cancellation signal (created by transforming a digital transmit signal) is then subtracted from the digital receive signal.
This architecture is generally effective for reducing interference, but the architecture may be limited in effectiveness by the architecture's ability to adapt to both changing self-interference characteristics as well as changing cancellation circuit properties (e.g., component drift, temperature change, etc.).
The systems and methods described herein increase the performance of full-duplex transceivers as shown in
2. System for Self-Interference Canceller Tuning
As shown in
The system 100 functions to increase the performance of full-duplex transceivers (or other applicable systems) by performing self-interference canceller tuning. The tuning circuit 160 preferably controls parameters of the analog self-interference canceller 140 and/or the digital self-interference canceller 150 to maintain or increase self-interference cancellation performance over time.
The system 100 may perform self-interference cancellation by performing analog and/or digital self-interference cancellation based on any number of sampled analog and/or digital transmit signals. For example, the digital self-interference canceller 160 may sample a digital transmit signal, as shown in
The system 100 preferably performs analog and digital self-interference cancellation simultaneously and in parallel, but may additionally or alternatively perform analog and/or digital self-interference cancellation at any suitable times and in any order.
The system 100 is preferably implemented using both digital and analog circuitry. Digital circuitry is preferably implemented using a general-purpose processor, a digital signal processor, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) and/or any suitable processor(s) or circuit(s). Analog circuitry is preferably implemented using analog integrated circuits (ICs) but may additionally or alternatively be implemented using discrete components (e.g., capacitors, resistors, transistors), wires, transmission lines, waveguides, digital components, mixed-signal components, or any other suitable components. The system 100 preferably includes memory to store configuration data, but may additionally or alternatively be configured using externally stored configuration data or in any suitable manner.
The receiver 110 functions to receive analog receive signals transmitted over a communications link (e.g., a wireless channel, a coaxial cable). The receiver no preferably converts analog receive signals into digital receive signals for processing by a communications system, but may additionally or alternatively not convert analog receive signals (passing them through directly without conversion).
The receiver no is preferably a radio-frequency (RF) receiver, but may additionally or alternatively be any suitable receiver.
The receiver no is preferably coupled to the communications link by a duplexer-coupled RF antenna, but may additionally or alternatively be coupled to the communications link in any suitable manner. Some examples of alternative couplings include coupling via one or more dedicated receive antennas. In another alternative coupling, the receiver 110 may be coupled to the communications link by a circulator-coupled RF antenna.
The receiver 110 preferably includes an analog-to-digital converter (ADC) 111 and a frequency downconverter 112, as shown in
The ADC 111 may be any suitable analog-to-digital converter; e.g., a direct-conversion ADC, a flash ADC, a successive-approximation ADC, a ramp-compare ADC, a Wilkinson ADC, an integrating ADC, a delta-encoded ADC, a time-interleaved ADC, or any other suitable type of ADC.
The frequency downconverter 112 functions to downconvert the carrier frequency of the analog receive signal to baseband, preparing it for conversion to a digital receive signal. The downconverter 112 preferably accomplishes signal downconversion using heterodyning methods, but may additionally or alternatively use any suitable upconversion methods.
The downconverter 112 preferably includes a local oscillator (LO), a mixer, and a baseband filter. The local oscillator functions to provide a frequency shift signal to the mixer; the mixer combines the frequency shift signal and the analog receive signal to create (usually two) frequency shifted signals, one of which is the baseband signal, and the baseband filter rejects signals other than the baseband analog receive signal.
The local oscillator is preferably a digital crystal variable-frequency oscillator (VFO) but may additionally or alternatively be an analog VFO or any other suitable type of oscillator. The local oscillator preferably has a tunable oscillation frequency but may additionally or alternatively have a static oscillation frequency.
The mixer is preferably an active mixer, but may additionally or alternatively be a passive mixer. The mixer may comprise discrete components, analog ICs, digital ICs, and/or any other suitable components. The mixer preferably functions to combine two or more electrical input signals into one or more composite outputs, where each output includes some characteristics of at least two input signals.
The baseband filter is preferably a lowpass filter with a tunable low-pass frequency. Additionally or alternatively, the baseband filter may be a lowpass filter with a set low-pass frequency, or any other suitable type of filter. The baseband filter is preferably a passive filter, but may additionally or alternatively be an active filter. The baseband filter is preferably implemented with analog circuit components, but may additionally or alternatively be digitally implemented.
The transmitter 120 functions to transmit signals of the communications system over a communications link to a second communications system. The transmitter 120 preferably converts digital transmit signals into analog transmit signals.
The transmitter 120 is preferably a radio-frequency (RF) transmitter, but may additionally or alternatively be any suitable transmitter.
The transmitter 120 is preferably coupled to the communications link by a duplexer-coupled RF antenna, but may additionally or alternatively be coupled to the communications link in any suitable manner. Some examples of alternative couplings include coupling via one or more dedicated transmit antennas. In another alternative coupling, the transmitter 120 may be coupled to the communications link by a duplexer-coupled RF antenna.
The transmitter 120 preferably includes a digital-to-analog converter (DAC) 121 and a frequency upconverter 122, as shown in
The DAC 121 may be any suitable digital-to-analog converter; e.g., a pulse-width modulator, an oversampling DAC, a binary-weighted DAC, an R-2R ladder DAC, a cyclic DAC, a thermometer-coded DAC, or a hybrid DAC.
The frequency upconverter 122 functions to upconvert the carrier frequency of the baseband analog transmit signal to a radio frequency, preparing it for transmission over the communications link. The upconverter 122 preferably accomplishes signal upconversion using heterodyning methods, but may additionally or alternatively use any suitable upconversion methods.
The upconverter 122 preferably includes a local oscillator (LO), a mixer, and an RF filter. The local oscillator functions to provide a frequency shift signal to the mixer; the mixer combines the frequency shift signal and the baseband analog transmit signal to create (usually two) frequency shifted signals, one of which is the RF analog transmit signal, and the RF filter rejects signals other than the RF analog transmit signal.
The local oscillator is preferably a digital crystal variable-frequency oscillator (VFO) but may additionally or alternatively be an analog VFO or any other suitable type of oscillator. The local oscillator preferably has a tunable oscillation frequency but may additionally or alternatively have a static oscillation frequency.
The mixer is preferably an active mixer, but may additionally or alternatively be a passive mixer. The mixer may comprise discrete components, analog ICs, digital ICs, and/or any other suitable components. The mixer preferably functions to combine two or more electrical input signals into one or more composite outputs, where each output includes some characteristics of at least two input signals.
The RF filter is preferably a bandpass filter centered around a tunable radio frequency. Additionally or alternatively, the RF filter may be a bandpass filter centered around a set radio frequency, or any other suitable type of filter. The RF filter is preferably a passive filter, but may additionally or alternatively be an active filter. The RF filter is preferably implemented with analog circuit components, but may additionally or alternatively be digitally implemented.
The signal coupler 130, as shown in
If the signal coupler 130 is used as a transmit coupler (which is assumed for the remainder of this paragraph), the signal coupler 130 is preferably directly coupled to the transmitter 120, but may additionally or alternatively be coupled indirectly to the transmitter 120 and/or be coupled to another suitable RF transmission source. The signal coupler 130 preferably has at least two outputs; one coupled to antenna(e) (directly or indirectly) and another coupled to one or more of the analog canceller 140 and the digital canceller 150. The signal coupler 130 preferably routes the majority of input power to the antenna(e) output port, but may additionally or alternatively route power in any suitable manner (e.g., routing the majority of power to other output ports). The signal coupler 130 may have any number of input and output ports, including bidirectional input/output ports.
If the signal coupler 130 is used as a receive coupler (which is assumed for the remainder of this paragraph), the receive coupler is preferably directly to the receiver no, but may additionally or alternatively be coupled indirectly to the receiver no and/or be coupled to another suitable RF receiver. The signal coupler 130 preferably has at least two inputs, one coupled to antenna(e) of the full-duplex radio (directly or indirectly) and another coupled to one or more of the analog canceller 140 and the digital canceller 150. The signal coupler 130 preferably couples the majority of power from both input ports to the receiver output port; this coupling preferably results in the receiver output port outputting a sum of one or more self-interference cancellation signals (generated by cancellers 140/150) and the RF receive signal (received at the antenna(e)). Additionally or alternatively, the signal coupler 130 may couple or route power in any suitable manner. The signal coupler 130 may have any number of input and output ports, including bidirectional input/output ports.
The signal coupler 130 is preferably a short section directional transmission line coupler, but may additionally or alternatively be any power divider, power combiner, directional coupler, or other type of signal splitter. The signal coupler 130 is preferably a passive coupler, but may additionally or alternatively be an active coupler (for instance, including power amplifiers). For example, the signal coupler 130 may comprise a coupled transmission line coupler, a branch-line coupler, a Lange coupler, a Wilkinson power divider, a hybrid coupler, a hybrid ring coupler, a multiple output divider, a waveguide directional coupler, a waveguide power coupler, a hybrid transformer coupler, a cross-connected transformer coupler, a resistive tee, and/or a resistive bridge hybrid coupler. The output ports of the signal coupler 130 are preferably phase-shifted by ninety degrees, but may additionally or alternatively be in phase or phase shifted by a different amount (e.g., zero degrees, 180 degrees).
The system 100 preferably includes two signal couplers 130 (a transmit and a receive coupler); these signal couplers 130 preferably connect to a single antenna through a duplexer or circulator, but may additionally or alternatively connect to multiple antennae. In one example, the transmit coupler and receive coupler connect to two separate antennae (e.g., a transmit antenna and a receive antenna); in another example, the transmit coupler and receive coupler both connect to the same two antennae. The transmit coupler and receive coupler may additionally or alternatively connect to any suitable RF transmit and RF receive sources (e.g., an RF signal transmitted solely over coaxial cable). There may additionally or alternatively be filters, power amplifiers, and/or any other RF signal modifying components between the couplers 130 and antennae.
The analog self-interference canceller 140, as shown in
The analog self-interference canceller 140 is preferably implemented as an analog circuit that transforms an RF transmit signal into an analog self-interference cancellation signal by combining a set of filtered, scaled, and/or delayed versions of the RF transmit signal, but may additionally or alternatively be implemented as any suitable circuit. For instance, the analog self-interference canceller 140 may perform a transformation involving only a single version or copy of the RF transmit signal. The transformed signal (the analog self-interference cancellation signal) preferably represents at least a part of the self-interference component received at the receiver 110.
The analog self-interference canceller 140 is preferably adaptable to changing self-interference parameters in addition to changes in the analog transmit signal; for example, RF transceiver temperature, ambient temperature, antenna configuration, humidity, and RF transmitter power. Adaptation of the analog self-interference canceller 140 is preferably performed by the tuning circuit 160, but may additionally or alternatively be performed by a control circuit or other control mechanism included in the canceller 140 or any other suitable controller.
In one implementation of the preferred embodiment, the analog self-interference canceller 140 includes a signal divider 141, tunable filters 142, scalers 143, delayers 144, and a signal combiner 145, as shown in
Separating the transmit signal into sub-bands enables the analog self-interference canceller 140 to generate an effective self-interference cancellation signal even when self-interference is highly variable with frequency; for instance, in situations where the full-duplex radio has an antenna configuration not optimized for its RF frequency, where the full-duplex radio is placed in a very strong multipath environment, and/or where the receiver 110 exhibits a substantially frequency-dependent response to RF signal input.
The signal divider 141 functions to split the transmit signal into multiple transmit signal paths, each directed to a tunable filter 142. The signal divider 141 preferably splits the transmit signal into multiple transmit signals having substantially the same waveform as the input transmit signal and equal power; the signal divider 141 may additionally or alternatively split the transmit signal into multiple transmit signals having different power levels and/or containing different waveforms than the input transmit signal. The signal divider 141 is preferably a transmission line power divider, but may additionally or alternatively be any suitable power divider, splitter, or coupler. The signal divider 141 may additionally contain any suitable electronics for pre-processing the transmit signal; for example, the signal divider 141 may contain an amplifier to increase the power contained in one or more of the output transmit signals.
Each tunable filter 142 functions to isolate transmit signal components contained within a frequency band (typically, but not always, a sub-band of the IF or RF transmit signal band) so that the component of self-interference resulting from the part of the transmit signal in that frequency band may be generated independently of the components of self-interference resulting from other parts of the transmit signal. As previously discussed, isolating transmit signal components by frequency sub-band allows for transformations to be performed on each signal component individually, increasing self-interference cancellation performance in situations where self-interference is substantially frequency dependent.
The tunable filters 142 are preferably multi-peak bandpass filters centered around a tunable intermediate frequency or radio frequency. Additionally or alternatively, the tunable filters 142 may be any other suitable type of filter. In a variation of a preferred embodiment, non-tunable filters may be substituted for tunable filters 142.
The tunable filters 142 are preferably passive filters, but may additionally or alternatively be active filters. The tunable filters 142 are preferably implemented with analog circuit components, but may additionally or alternatively be digitally implemented. The center frequency of each tunable filter 142 is preferably controlled by the tuning circuit 160, but may additionally or alternatively be controlled by any suitable system (including manually controlled, e.g. as in a mechanically tuned capacitor).
The tunable filters 142 preferably form a basis set for a desired or predicted transformation function; that is, the spectral properties of tunable filters 142 are preferably configured such that the number of signal paths required to produce a self-interference cancellation signal from a given analog transmit signal is reduced compared to a combination of simple (e.g., single peak) bandpass filters.
For example, take a desired filter response as shown in
The scalers 143 function to scale transmit signal components; specifically, the scalers 143 effectively multiply the transmit signal components by a scale factor. For example, an attenuation of 34% might be represented as a scale factor of 0.66; a gain of 20% might be represented as a scale factor of 1.20; and an attenuation of 10% and a phase inversion might be represented as a scale factor of −0.90. Scale factors may be complex; for example, a scale factor of
might be represented as a phase shift of ninety degrees. The scalers 143 provide the weighting for the combination of self-interference components at the signal combiner 145 (e.g., a signal with scale factor 2 is weighted twice as heavily as one with a scale factor of 1).
The scalers 143 may include attenuators, amplifiers, phase inverters, and/or any other suitable components for scaling transmit signal components. Attenuators may be resistive attenuators (T pad, Pi pad), amplifiers with less than unity gain, or any other suitable type of attenuator. Amplifiers may be transistor amplifiers, vacuum tube amplifiers, op-amps, or any other suitable type of amplifier. Phase inverters may be any phase inversion devices, including NPN/PNP phase inversion circuits and/or inverting amplifiers.
The scalers 143 preferably are capable of attenuation, gain, and phase inversion, but may alternatively be capable only of a subset of said capabilities. Each scaler 143 preferably includes all three capabilities in a single device (e.g., an amplifier with tunable gain and two outputs, one inverted and one non-inverted) but may additionally or alternatively separate capabilities into different sections (e.g., an amplifier with tunable gain but no inversion capability, along with a separate phase inversion circuit). The scalers 143 are preferably controlled by the tuning circuit 160, but may additionally or alternatively be controlled in any suitable manner. The tuning circuit 160 preferably controls scalers 143 by dynamically setting scale factors for each scaler 143, but may additionally or alternatively control scalers 143 in any suitable manner.
The delayers 144 function to delay transmit signal components, preferably to match corresponding delays in received self-interference. The delay introduced by each delayer 144 (also referred to as a delayer delay) is preferably fixed (i.e., the delayer 144 is a fixed delayer), but delayers 144 may additionally or alternatively introduce variable delays. The delayer 144 is preferably implemented as an analog delay circuit (e.g., a bucket-brigade device, a long transmission line, a series of RC networks) but may additionally or alternatively be implemented in any other suitable manner. If the delayer 144 is a variable delayer, the delay introduced is preferably set by the tuning circuit 160, but may additionally or alternatively be set in any suitable manner.
After transformation by a scaler 143 and/or a delayer 144, transmit signal components are transformed into self-interference cancellation signal components, which may be combined to form an self-interference cancellation signal.
The signal combiner 145 functions to combine the self-interference cancellation signal components into an analog self-interference cancellation signal; the analog self-interference cancellation signal may then be combined with an analog receive signal to remove self-interference. The signal combiner 145 preferably combines self-interference cancellation signal components (resulting from multiple signal paths) and outputs the resulting analog self-interference cancellation signal. The signal combiner 145 is preferably a transmission line coupler, but may additionally or alternatively be any suitable type of coupler (described in the signal coupler 130 sections). The signal combiner 145 may additionally contain any suitable electronics for post-processing the self-interference cancellation signal before outputting it; for example, the signal combiner 145 may contain an amplifier to increase the power of the self-interference cancellation signal.
As previously mentioned, the analog self-interference canceller 140 may perform self-interference cancellation at either or both of IF or RF bands. If the analog self-interference canceller 140 performs cancellation at IF bands, the analog self-interference canceller 140 preferably includes a downconverter 146 and an upconverter 147, as shown in
The downconverter 146 functions to downconvert the carrier frequency of an RF transmit signal (the analog transmit signal sampled by a signal coupler 130) to an intermediate frequency (or, in some cases, baseband (IF=0 Hz)) preparing it for transformation by the analog canceller 140. The downcoverter 146 is preferably communicatively coupled to the RF transmit signal by a signal coupler 130, and the analog canceller 140, and preferably receives RF transmit signals from the signal coupler 130, downconverts the signal to an intermediate frequency, and passes the resulting IF transmit signal to the analog canceller 140. The downconverter 146 is preferably substantially similar to the downconverter 112 (although details such as LO frequency and filter configuration may differ between the two), but may additionally or alternatively be any suitable frequency downconverter.
The upconverter 147 functions to upconvert the carrier frequency of the IF self-interference signal (received from the analog canceller 140) to a radio frequency, preparing it for combination with the RF receive signal at a signal coupler 130. The upconverter 147 is preferably communicatively coupled to the signal coupler 130 and the analog canceller 140, and preferably receives IF self-interference cancellation signals from the analog canceller 140, upconverts the signal to a radio frequency, and passes the resulting RF self-interference cancellation signal to the signal coupler 130.
In a variation of a preferred embodiment, the system 100 may include multiple analog self-interference cancellers operating in different frequency bands, as shown in
The digital self-interference canceller 150 functions to produce a digital self-interference cancellation signal from a digital transmit signal. The digital self-interference cancellation signal is preferably converted to an analog self-interference cancellation signal (by a DAC) and combined with the analog self-interference cancellation signals to further reduce self-interference present in the RF receive signal at the receiver 110. Additionally or alternatively, the digital self-interference cancellation signal may be combined with a digital receive signal.
The digital self-interference canceller 150 preferably samples the RF transmit signal of the transmitter 120 using an ADC (additionally or alternatively, the canceller 150 may sample the digital transmit signal or any other suitable transmit signal) and transforms the sampled and converted RF transmit signal to a digital self-interference signal based on a digital transform configuration. The digital transform configuration preferably includes settings that dictate how the digital self-interference canceller 150 transforms the digital transmit signal to a digital self-interference signal (e.g. coefficients of a generalized memory polynomial used to transform the transmit signal to a self-interference signal).
The digital self-interference canceller 150 may be implemented using a general-purpose processor, a digital signal processor, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) and/or any suitable processor(s) or circuit(s). The digital self-interference canceller 150 preferably includes memory to store configuration data, but may additionally or alternatively be configured using externally stored configuration data or in any suitable manner. In one implementation, the digital self-interference canceller 150 is substantially similar to the digital self-interference canceller of U.S. patent application Ser. No. 14/456,320, filed 11 Aug. 2014, which is incorporated in its entirety by this reference.
The digital self-interference canceller 150 may couple to transmit and receive signals in a number of ways. For example, the digital self-interference canceller 150 may use a converted RF transmit signal as input as well as provide a converted digital self-interference cancellation signal as output. As another example, the digital self-interference canceller 150 may use the digital transmit signal as input as a well as provide a digital self-interference cancellation signal as output (directly to the digital receive signal). The digital self-interference canceller may additionally or alternatively couple to transmit signals in any combination of digital and analog receive signals.
Note that while these examples reference the RF transmit signal and RF receive signal, the digital self-interference canceller 150 may additionally or alternatively couple to IF transmit signals and/or IF self-interference cancellation signals.
The tuning circuit 160 functions to control the configuration parameters of the analog canceller 140. The tuning circuit 160 may additionally or alternatively provide input to or control configuration parameters of the digital canceller 150. Configuration parameters may include pre-processing settings (at signal dividers 141), filter center frequency and/or Q factor (at tunable filters 142), scale factor (at the scalers 143), delay (at the delayers 144), post-processing settings (at the signal combiner 145) and/or any other suitable configuration parameters. The tuning circuit 160 preferably controls tunable filter 142 center frequencies, scaler 143 scale factors (including gain/attenuation/phase inversion), and delayer 144 delays to create RF and/or IF self-interference cancellation signals that reflect some or all of the self-interference contained within received signals.
The tuning circuit 160 preferably sets the configuration state of the analog canceller 140 (where the state includes settings for each variable setting controlled by the tuning circuit 160) based upon the received RF/IF transmit signals, but may additionally or alternatively set the configuration state based on any other suitable input. Suitable input may include signal data (e.g. IF transmit signal, digital transmit signal, RF receive signal), full-duplex radio settings (e.g. RF transmitter power, antenna position), full-duplex radio characteristics (e.g. receiver operating characteristics, transmitter operating characteristics), environmental data (e.g., transceiver temperature, ambient temperature, ambient humidity), and/or any other input relating to self-interference present in the receive signal.
The tuning circuit 160 preferably sets configuration states based on an algorithm responsive to input. This may include a state-choosing algorithm that selects from a set of pre-chosen states based on some input parameter set, a dynamic algorithm that generates states based on the input parameter set (as opposed to choosing from a limited state set), or any other suitable algorithm. Additionally or alternatively, the tuning circuit 160 may set configuration states in any suitable manner.
The tuning circuit 160 may adapt configuration states and/or configuration state generating/choosing algorithms using analytical methods, online gradient-descent methods (e.g., LMS, RLMS), and/or any other suitable methods. The tuning circuit 160 may additionally or alternatively adapt configuration states and/or configuration state generating/choosing algorithms based on test input scenarios (e.g. scenarios when the signal received by the receiver 110 is known), scenarios where there is no input (e.g. the only signal received at the receiver 110 is the signal transmitted by the transmitter 120), or scenarios where the received signal is unknown. In cases where the received signal is an unknown signal, the tuning circuit 160 may perform adaptation based on historical received data (e.g. what the signal looked like ten seconds in the past) or any other suitable information. The tuning circuit 160 may additionally or alternatively perform adaptation based on the content of RF and/or IF transmit signals; for instance, if the RF transmit signal is modulated in a particular way, the tuning circuit may perform adaptation such that when the RF self-interference signal is combined with the RF receive signal the detected modulation (as an indicator of self-interference) is reduced.
The tuning circuit 160 is preferably implemented as a programmable digital circuit, but may additionally or alternatively be implemented in any suitable digital or analog circuit, including implementation as software in a general purpose computing device.
Though the cancellers 140/150 are preferably coupled to signal couplers 130 located after transmitter 120 outputs and before receiver 110 inputs, the cancellers 140/150 may additionally or alternatively be coupled to intermediate outputs and/or inputs (e.g., an output before the transmitter 120 output or an input after the receiver 110 input).
Local oscillators (e.g., those of upconverters, downconverters, ADCs, and/or DACs) may be shared between components of the system 100. For example, the downconverter 146 and upconverter 147 may share a local oscillator as shown in
3. Method for Self-Interference Canceller Tuning
As shown in
The method 200 functions to increase the performance of full-duplex transceivers (or other applicable systems) by enabling efficient self-interference canceller tuning. The method 200 is preferably implemented by the system 100, but may additionally or alternatively be implemented by any suitable system for self-interference cancellation.
Step S210 includes generating a tuning calibration profile. Step S210 functions to generate a profile that describes the response of the self-interference canceller to various tuning parameters.
The tuning calibration profile generated by Step S210 preferably describes the response of the self-interference canceller given various tuning parameters across a range of tuning parameters. The tuning calibration profile preferably includes both component calibration data and system calibration data, but may additionally or alternatively include only one of these.
Component calibration data preferably describes the relationship between a particular setting for a component of the self-interference canceller (e.g., a scaler or a delayer) and how that component transforms a signal. For example, component calibration data may include data describing how a tunable filter's center frequency varies with different capacitance values (for some tuning capacitor present in the tunable filter) or data describing how different control voltages for an attenuator affect attenuation levels. In addition to describing how a particular setting affects component response, component calibration data may also describe how other variables (e.g., temperature, signal power, signal frequency, etc.) affect component response.
In some cases, component calibration data may be a function of both settings and other variables. For instance, the previously described tunable filter data may vary based on temperature as well as tuning capacitor settings.
Component calibration data is preferably generated by sweeping individual components through settings (and/or by altering other variables, such as environmental variables) and recording their responses, but component calibration data may additionally or alternatively be generated using any other suitable process.
System calibration data preferably describes how the self-interference canceller responds to signals based on a particular state (i.e., a set of tuning parameters applied to the components). For example, system calibration data may describe how a three-tap (i.e., three-signal-path) self-interference canceller responds to an input signal based on the component settings (e.g., the value of tuning capacitance for each tunable filter, attenuator control voltages, etc.).
As with component calibration data, system calibration data may depend both on system settings as well as other variables (e.g., temperature).
System calibration data and component calibration data are preferably integrated such that a desired signal transformation may be, using the tuning calibration profile, translated into a set of self-interference canceller settings, which can then be applied.
In one embodiment, generating a tuning calibration profile S210 for a self-interference canceller having a set of taps includes generating a test signal S211, characterizing fully-attenuated response to the test signal S212, characterizing single tap responses to the test signal S213, and combining single tap responses S214, as shown in
Generating a test signal S211 functions to provide a signal to characterize self-interference canceller response. The test signal is preferably an Orthogonal Frequency Division Multiplexing (OFDM) frame or chirp signal with a low peak to average ratio, but may additionally or alternatively be any suitable signal. The test signal is preferably generated by an RF transmitter coupled to the self-interference canceller, but may additionally or alternatively be generated by any suitable source.
Characterizing fully-attenuated response to the test signal S212 functions to characterize the response of a multi-tap self-interference canceller when all taps of the multi-tap self-interference canceller (i.e., all signal paths) are highly attenuated. The fully-attenuated response to the test signal is preferably used as a baseline for evaluating single tap responses.
Characterizing single tap responses to the test signal S213 functions to determine the response of each tap individually to the test signal. Step S213 preferably includes highly attenuating all taps except for one tap (the tap being characterized). The characterized tap is preferably swept through a range of parameters (e.g., attenuator settings, phase change settings, tunable filter center frequencies, etc.) and the response of the tap is recorded for each step of the parameter sweep. The characterized tap may additionally or alternatively be characterized for other variables (e.g., temperature). Some tap characterization data may be synthesized or inferred from external data sources (e.g., manufacturer component data relating output voltage of an attenuator to control voltages). Step S213 is preferably performed for each tap.
Step S213 preferably includes characterizing each tap relative to the baseline established in Step S212.
In a variation of a preferred embodiment, Step S213 is performed for multiple tap combinations; for example, the response of a first tap and second tap may be measured at the same time (i.e., the first and second tap are not at high attenuation, while other taps are).
Combining single tap responses S214 functions to combine the response of each tap in order to create a tuning calibration profile that reflects the performance of the self-interference canceller. Step S214 preferably includes simply concatenating single tap data; additionally or alternatively, Step S214 may be modified to reflect system-level effects not captured by measuring each tap individually. For example, Step S214 may include effects of a system-level delayer (e.g., a delayer located before the signal splitter for the taps or after the signal combiner) or may simply account for interactions between taps.
Step S220 includes detecting a tuning trigger. Step S220 functions to detect a trigger or other indicator that the self-interference canceller should be tuned. Step S220 preferably includes detecting that some value has passed a threshold; for example, time since last tuning exceeding a particular time threshold, signal power level changing by some threshold percentage, or a significant change in temperature. Step S220 may additionally or alternatively include detecting a recent system boot-up (enabling tuning to be performed upon boot-up).
Step S220 preferably includes detecting a trigger to retune the self-interference canceller, but may additionally or alternatively include detecting a trigger to perform recalibration (i.e., generating a new calibration tuning profile using Step S210).
Step S230 includes calculating a set of tuning parameters. Step S230 functions to create the set of tuning parameters that will be applied to the self-interference canceller in order to tune the canceller.
Step S230 is preferably performed iteratively with Step S240; for example, a set of tuning parameters estimated to reduce self-interference may be calculated by Step S230, applied by Step S240, and based on the change in self-interference (i.e., the effectiveness of the self-interference canceller) a new set of tuning parameters may be calculated by Step S230. Additionally or alternatively, Step S230 may be performed once per calibration.
Tuning parameters calculated in Step S230 may include pre-processing settings (at signal dividers), filter center frequency and/or Q factor (at tunable filters), scale factor (at the scalers), delay (at the delayers), post-processing settings (at the signal combiner) and/or any other suitable configuration parameters. Tuning parameters are preferably chosen based on self-interference detected in received RF/IF signals, but may additionally or alternatively be chosen based on any other suitable input. Suitable input may include signal data (e.g. IF transmit signal, digital transmit signal, RF receive signal), full-duplex radio settings (e.g. RF transmitter power, antenna position), full-duplex radio characteristics (e.g. receiver operating characteristics, transmitter operating characteristics), environmental data (e.g., transceiver temperature, ambient temperature, ambient humidity), and/or any other input relating to self-interference present in the receive signal.
In one embodiment, tuning parameters comprise a set of complex weights (e.g., a scaling factor and/or a phase change factor) and a set of delays. These tuning parameters can, in combination with component calibration data, be translated into self-interference canceller settings.
Step S240 includes applying the set of tuning parameters. Step S240 functions to apply the tuning parameters calculated in Step S230 to tune the self-interference canceller. A tuning circuit is preferably used to control tunable filter center frequencies, scaler scale factors (including gain/attenuation/phase inversion), and delayer delays to create RF and/or IF self-interference cancellation signals that reflect some or all of the self-interference contained within received signals.
In one embodiment, Step S240 includes applying tuning parameters based on component calibration data as described above. For example, a set of complex weights may be generated by Step S230 and then applied in Step S140 after translating the complex weights into component settings using component calibration data.
In one embodiment, the method 200 is implemented on a self-interference canceller using an orthogonal basis set of multi-peak filters (such as that of
In a variation of this embodiment, configuration parameters are generated by first tuning delay parameters and then tuning tap complex weights by solving a linear optimization problem (e.g., a Lasso problem):
min∥y−Aw∥22+λ|w|1,wmin>w>wmax
where y represents an observed signal (e.g., the self-interference signal to be cancelled), A represents the response of the circuit given different parameters, w reflects a set of complex weights (or other parameters), and wmin and wmax represent minimum and maximum possible parameter values.
For certain embodiments, an optimization technique such as the Alternating Direction Method of Multipliers (ADMM) may be used to determine parameters of the circuit. In the ADMM technique, the optimization problem is split in to two or more partial problems. Each of the partial problems may be easier to solve. Solutions to the partial problems are cross-fed into other partial problems to find a solution to the original optimization problem. The process may continue iteratively to find a final solution. As an example, the previous problem can be stated as:
min∥y−Aw∥22+λ|z|1,w−z=0,zmin>z>zmax
The above problem can be independently solved for each of the w and z parameters to find two solutions. The two solutions may then be connected with each other using a difference variable. The difference value may then be minimized to solve the original optimization problem.
It should be noted that one important criterion decides when to terminate the iterative optimization problem to limit the computations, with minimal performance loss. In one embodiment, the iterative problem is terminated, whenever a point is reached that is better than the discrete setting of a tap. As an example, if the weights can take discrete values such as 0.25, 0.5, 0.75, etc. the iterative problem may be terminated as soon as another solution is found with a resolution better than 0.25. Terminating the optimization problem based on the predefined resolution speeds up the tuning procedure.
The method 200 is preferably used to tune an analog self-interference canceller, but the principles described may additionally or alternatively be used to tune a digital self-interference canceller.
In a variation of a preferred embodiment, Step S240 includes applying tuning parameters for an analog self-interference canceller based on response of a digital self-interference canceller. For example, Steps S230 and S240 may include ignoring a self-interference signal component (e.g., calculating tuning parameters ignoring the contribution of this component to self-interference) if that component is recognized as a self-interference component easily removed by a digital self-interference canceller. As another example, Steps S230 and Step S240 may be run iteratively in combination with a digital self-interference canceller tuning algorithm.
The methods of the preferred embodiment and variations thereof can be embodied and/or implemented at least in part as a machine configured to receive a computer-readable medium storing computer-readable instructions. The instructions are preferably executed by computer-executable components preferably integrated with a system for self-interference cancellation. The computer-readable medium can be stored on any suitable computer-readable media such as RAMs, ROMs, flash memory, EEPROMs, optical devices (CD or DVD), hard drives, floppy drives, or any suitable device. The computer-executable component is preferably a general or application specific processor, but any suitable dedicated hardware or hardware/firmware combination device can alternatively or additionally execute the instructions.
As a person skilled in the art will recognize from the previous detailed description and from the figures and claims, modifications and changes can be made to the preferred embodiments of the invention without departing from the scope of this invention defined in the following claims.
This application is a continuation of U.S. patent application Ser. No. 14/643,795, filed 10 Mar. 2015, which claims the benefit of U.S. Provisional Application Ser. No. 61/950,742, filed on 10 Mar. 2014, and is a continuation-in-part of U.S. patent application Ser. No. 14/456,367, filed on 11 Aug. 2014, which claims priority to U.S. Provisional Application Ser. No. 61/864,459, filed on 9 Aug. 2013, all of which are incorporated in their entireties by this reference.
Number | Name | Date | Kind |
---|---|---|---|
3922617 | Denniston et al. | Nov 1975 | A |
4321624 | Gibson et al. | Mar 1982 | A |
4952193 | Talwar | Aug 1990 | A |
5212827 | Meszko et al. | May 1993 | A |
5691978 | Kenworthy | Nov 1997 | A |
5734967 | Kotzin et al. | Mar 1998 | A |
5790658 | Yip et al. | Aug 1998 | A |
5818385 | Bartholomew | Oct 1998 | A |
5930301 | Chester et al. | Jul 1999 | A |
6215812 | Young et al. | Apr 2001 | B1 |
6240150 | Darveau et al. | May 2001 | B1 |
6411250 | Oswald et al. | Jun 2002 | B1 |
6539204 | Marsh et al. | Mar 2003 | B1 |
6567649 | Souissi | May 2003 | B2 |
6580771 | Kenney | Jun 2003 | B2 |
6639551 | Li et al. | Oct 2003 | B2 |
6657950 | Jones, IV et al. | Dec 2003 | B1 |
6686879 | Shattil | Feb 2004 | B2 |
6725017 | Blount et al. | Apr 2004 | B2 |
6907093 | Blount et al. | Jun 2005 | B2 |
6915112 | Sutton et al. | Jul 2005 | B1 |
6965657 | Rezvani et al. | Nov 2005 | B1 |
6985705 | Shohara | Jan 2006 | B2 |
7057472 | Fukamachi et al. | Jun 2006 | B2 |
7139543 | Shah | Nov 2006 | B2 |
7177341 | McCorkle | Feb 2007 | B2 |
7228104 | Collins et al. | Jun 2007 | B2 |
7266358 | Hillstrom | Sep 2007 | B2 |
7302024 | Arambepola | Nov 2007 | B2 |
7336128 | Suzuki et al. | Feb 2008 | B2 |
7336940 | Smithson | Feb 2008 | B2 |
7348844 | Jaenecke | Mar 2008 | B2 |
7349505 | Blount et al. | Mar 2008 | B2 |
7362257 | Bruzzone et al. | Apr 2008 | B2 |
7372420 | Osterhues et al. | May 2008 | B1 |
7397843 | Grant et al. | Jul 2008 | B2 |
7426242 | Thesling | Sep 2008 | B2 |
7508898 | Cyr et al. | Mar 2009 | B2 |
7509100 | Toncich | Mar 2009 | B2 |
7706755 | Muhammad et al. | Apr 2010 | B2 |
7733813 | Shin et al. | Jun 2010 | B2 |
7773759 | Alves et al. | Aug 2010 | B2 |
7773950 | Wang et al. | Aug 2010 | B2 |
7778611 | Asai et al. | Aug 2010 | B2 |
7869527 | Vetter et al. | Jan 2011 | B2 |
7948878 | Briscoe et al. | May 2011 | B2 |
7962170 | Axness et al. | Jun 2011 | B2 |
7987363 | Chauncey et al. | Jul 2011 | B2 |
7999715 | Yamaki et al. | Aug 2011 | B2 |
8005235 | Rebandt, II et al. | Aug 2011 | B2 |
8023438 | Kangasmaa et al. | Sep 2011 | B2 |
8027642 | Proctor, Jr. et al. | Sep 2011 | B2 |
8031744 | Radunovic et al. | Oct 2011 | B2 |
8032183 | Rudrapatna | Oct 2011 | B2 |
8055235 | Gupta et al. | Nov 2011 | B1 |
8060803 | Kim | Nov 2011 | B2 |
8081695 | Chrabieh et al. | Dec 2011 | B2 |
8085831 | Teague | Dec 2011 | B2 |
8086191 | Fukuda et al. | Dec 2011 | B2 |
8090320 | Dent et al. | Jan 2012 | B2 |
8155046 | Jung et al. | Apr 2012 | B2 |
8155595 | Sahin et al. | Apr 2012 | B2 |
8160176 | Dent et al. | Apr 2012 | B2 |
8175535 | Mu | May 2012 | B2 |
8179990 | Orlik et al. | May 2012 | B2 |
8218697 | Guess et al. | Jul 2012 | B2 |
8270456 | Leach et al. | Sep 2012 | B2 |
8274342 | Tsutsumi et al. | Sep 2012 | B2 |
8306480 | Muhammad et al. | Nov 2012 | B2 |
8331477 | Huang et al. | Dec 2012 | B2 |
8349933 | Bhandari et al. | Jan 2013 | B2 |
8351533 | Shrivastava et al. | Jan 2013 | B2 |
8385855 | Lorg et al. | Feb 2013 | B2 |
8385871 | Wyville | Feb 2013 | B2 |
8391878 | Tenny | Mar 2013 | B2 |
8417750 | Yan et al. | Apr 2013 | B2 |
8422540 | Negus et al. | Apr 2013 | B1 |
8428542 | Bornazyan | Apr 2013 | B2 |
8446892 | Ji et al. | May 2013 | B2 |
8457549 | Weng et al. | Jun 2013 | B2 |
8462697 | Park et al. | Jun 2013 | B2 |
8467757 | Ahn | Jun 2013 | B2 |
8498585 | Vandenameele | Jul 2013 | B2 |
8502924 | Liou et al. | Aug 2013 | B2 |
8509129 | Deb et al. | Aug 2013 | B2 |
8521090 | Kim et al. | Aug 2013 | B2 |
8576752 | Sarca | Nov 2013 | B2 |
8611401 | Lakkis | Dec 2013 | B2 |
8619916 | Jong | Dec 2013 | B2 |
8625686 | Li et al. | Jan 2014 | B2 |
8626090 | Dalipi | Jan 2014 | B2 |
8649417 | Baldemair et al. | Feb 2014 | B2 |
8711943 | Rossato et al. | Apr 2014 | B2 |
8744377 | Rimini et al. | Jun 2014 | B2 |
8750786 | Larsson et al. | Jun 2014 | B2 |
8755756 | Zhang et al. | Jun 2014 | B1 |
8767869 | Rimini et al. | Jul 2014 | B2 |
8787907 | Jain et al. | Jul 2014 | B2 |
8798177 | Park et al. | Aug 2014 | B2 |
8804975 | Harris et al. | Aug 2014 | B2 |
8837332 | Khojastepour et al. | Sep 2014 | B2 |
8842584 | Jana et al. | Sep 2014 | B2 |
8879433 | Khojastepour et al. | Nov 2014 | B2 |
8879811 | Liu et al. | Nov 2014 | B2 |
8913528 | Cheng et al. | Dec 2014 | B2 |
8929550 | Shattil et al. | Jan 2015 | B2 |
8995410 | Bala et al. | Mar 2015 | B2 |
9014069 | Patil et al. | Apr 2015 | B2 |
9019849 | Hui et al. | Apr 2015 | B2 |
9031567 | Haub | May 2015 | B2 |
9042838 | Braithwaite | May 2015 | B2 |
9054795 | Choi et al. | Jun 2015 | B2 |
9065519 | Cyzs et al. | Jun 2015 | B2 |
9077421 | Mehlman et al. | Jul 2015 | B1 |
9112476 | Basaran et al. | Aug 2015 | B2 |
9124475 | Li et al. | Sep 2015 | B2 |
9130747 | Zinser et al. | Sep 2015 | B2 |
9136883 | Moher et al. | Sep 2015 | B1 |
9160430 | Maltsev et al. | Oct 2015 | B2 |
9184902 | Khojastepour et al. | Nov 2015 | B2 |
9185711 | Lin et al. | Nov 2015 | B2 |
9231647 | Polydoros et al. | Jan 2016 | B2 |
9231712 | Hahn et al. | Jan 2016 | B2 |
9236996 | Khandani | Jan 2016 | B2 |
9264024 | Shin et al. | Feb 2016 | B2 |
9312895 | Gupta et al. | Apr 2016 | B1 |
9325432 | Hong et al. | Apr 2016 | B2 |
9331737 | Hong et al. | May 2016 | B2 |
9413500 | Chincholi et al. | Aug 2016 | B2 |
9413516 | Khandani | Aug 2016 | B2 |
9461698 | Moffatt et al. | Oct 2016 | B2 |
9490963 | Choi et al. | Nov 2016 | B2 |
9537543 | Choi | Jan 2017 | B2 |
9698860 | Bharadia et al. | Jul 2017 | B2 |
9698861 | Braithwaite | Jul 2017 | B2 |
9713010 | Khandani | Jul 2017 | B2 |
20020154717 | Shima et al. | Oct 2002 | A1 |
20040106381 | Tiller | Jun 2004 | A1 |
20050250466 | Varma et al. | Nov 2005 | A1 |
20060058022 | Webster et al. | Mar 2006 | A1 |
20070207747 | Johnson et al. | Sep 2007 | A1 |
20070249314 | Sanders et al. | Oct 2007 | A1 |
20080107046 | Kangasmaa | May 2008 | A1 |
20080131133 | Blunt et al. | Jun 2008 | A1 |
20080219377 | Nisbet | Sep 2008 | A1 |
20100103900 | Yeh et al. | Apr 2010 | A1 |
20100136900 | Seki | Jun 2010 | A1 |
20100215124 | Zeong et al. | Aug 2010 | A1 |
20100226448 | Dent | Sep 2010 | A1 |
20110013684 | Semenov et al. | Jan 2011 | A1 |
20110026509 | Tanaka | Feb 2011 | A1 |
20110256857 | Chen et al. | Oct 2011 | A1 |
20120140685 | Lederer et al. | Jun 2012 | A1 |
20120147790 | Khojastepour et al. | Jun 2012 | A1 |
20120154249 | Khojastepour et al. | Jun 2012 | A1 |
20120201153 | Bharadia et al. | Aug 2012 | A1 |
20120201173 | Jain et al. | Aug 2012 | A1 |
20120224497 | Lindoff et al. | Sep 2012 | A1 |
20130166259 | Weber et al. | Jun 2013 | A1 |
20130253917 | Schildbach | Sep 2013 | A1 |
20140011461 | Bakalski et al. | Jan 2014 | A1 |
20140169236 | Choi et al. | Jun 2014 | A1 |
20140313946 | Azadet | Oct 2014 | A1 |
20140348018 | Bharadia et al. | Nov 2014 | A1 |
20140348032 | Hua et al. | Nov 2014 | A1 |
20150139122 | Rimini et al. | May 2015 | A1 |
20150215937 | Khandani | Jul 2015 | A1 |
20160218769 | Chang et al. | Jul 2016 | A1 |
Number | Date | Country |
---|---|---|
0755141 | Oct 1998 | EP |
1959625 | Aug 2008 | EP |
2237434 | Oct 2010 | EP |
2267946 | Mar 2014 | EP |
2256985 | Jun 2000 | RU |
173250 | Nov 2013 | WO |
185106 | Dec 2013 | WO |
093916 | Jun 2014 | WO |
Entry |
---|
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. |
McMichael et al., “Optimal Tuning of Analog Self-Interference Cancellers for Full-Duple Wireless Communication”, Oct. 1-5, 2012, Fiftieth Annual Allerton Conference, Illinois, USA, pp. 246-251. |
Number | Date | Country | |
---|---|---|---|
20170264420 A1 | Sep 2017 | US |
Number | Date | Country | |
---|---|---|---|
61950742 | Mar 2014 | US | |
61864459 | Aug 2013 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 14643795 | Mar 2015 | US |
Child | 15608163 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 14456367 | Aug 2014 | US |
Child | 14643795 | US |