In current telecommunication systems, digital information of interest is typically communicated from a transmitter at one location to a receiver at another location by first forming a sequence of symbols based on the digital information and then using the symbol sequence to modulate a single carrier signal or a multiple carrier signal. At the receiver, the carrier signal is removed and the resultant, so called, ‘baseband’ signal is processed to recover first the symbols and then the digital information of interest. In general, signals used to communicate digital information from a transmitter to a receiver can be referred to as digital communication signals. Although the details of the mapping of the digital information onto the symbols vary from one application to another as do the details of the signal modulation, it is standard practice in the design of digital communication signals to use a fixed symbol rate (or a well defined set of fixed symbol rates) such that the individual symbols are used to modulate the signal for a fixed interval of time. The inverse of this individual symbol time interval is referred to as the symbol rate.
An example of such a telecommunication signal is the third generation (3G) Wideband Code Division Multiple Access (WCDMA) signal specified by the Third Generation Partnership Project (3GPP) standards organization. For the WCDMA signal, and code division multiple access signals in general, the fundamental timing interval is the chip rate whereas the symbol rates are well defined multiples of the chip rate.
Symbol (chip) timing recovery refers to the process in the communications signal receiver that estimates the time when the information and/or energy associated with individual symbols (chips) arrives in the received communications signal. The transmitter typically clocks the symbol (chip) interval based on a crystal oscillator and, in order to be accurate, the timing recovery process at the receiver must be capable of dynamically tracking changes in the fundamental timing interval that are due to variations in the transmitter's crystal oscillator frequency. The time when the information and/or energy associated with individual symbols (chips) arrives in the received communications signal also varies due to changes in the relative position of the transmitter and the receiver. For example, if the receiver is in a cellular phone which is in an automobile that is moving relative to a fixed base station transmitter at a cell tower, then the radio signal propagation distance and time-of-travel are changing and hence, the signal arrival time is changing.
The problem of multiple signal interference occurs when the signal of interest is received in the presence of other signals that interfere with the reception of the signal of interest. For example, downlink intercell signal interference occurs when the signals from non-desired cellular base stations interfere with the signal from a desired serving base station. Downlink intercell signal interference commonly occurs when multiple base stations are on the same network and frequency. This form of multiple signal interference is a technical problem that plagues the wireless industry by limiting the useable network capacity and causing poor user experiences in the form of dropped calls and unacceptable delays during data transfer, for example, in smartphone data applications.
Joint detection interference cancellation is a known method of mitigating the problem of multiple signal interference. For example, consider an N-signal joint detection interference cancellation receiver, where N-1 interfering signals and one signal of interest are jointly detected. Such a receiver detects or estimates the signal information in the N signals. The joint detections are processed to provide estimates of the received N-1 interfering signals and these estimates are subtracted from a delayed version of the received signal. Ideally, the subtraction of the interfering signal estimates cancels the actual interfering signals and the signal of interest can be received as if the interfering signals did not exist. It is generally accepted that joint detection interference cancellation receivers have the potential to provide a high performance solution to the problem of multiple signal interference. It is also generally accepted that such receivers are difficult to implement in practice.
A problem encountered in implementing a joint detection interference cancellation receiver is to provide a means of accurately subtracting the interfering signal estimates from the received signal. This subtraction is complicated by the fact that timings of the multiple signals are not stationary with respect to each other. For example, in the case of downlink intercell interference, not only are the crystals of the individual base stations varying independently of each other, the motion of the subscriber and the associated mobile phone receiver is such that the propagation distance from some base stations may be decreasing while the propagation distance from others may be increasing. These effects result in the signals being asynchronous; there is a non-stationary precession of the timing of the individual signals relative to each other.
Although the multiple signals are asynchronous relative to each other, signal synchronous processing is generally required to detect the information content of the individual signals. Typically, the signal synchronous processing is performed on signal subframes that are defined by the signal's time division multiplex format. For example, for the WCDMA signal, the signal synchronous processing can be performed on a symbol-aligned subframe consisting of 256 chips. The detected signal information content is used in a joint detection interference cancellation receiver to generate estimates of the individual received signals.
A joint detection interference cancellation receiver requires signal synchronous processing of individual signals and must accurately subtract estimates of the asynchronous interfering signals from the received signal. As such, what is needed is a robust means of control of both multiple signal-synchronous timings and the asynchronous timings required for interference cancellation.
The invention provides a system (or module) and method of a multiple signal timing control and interference cancellation timing control for a joint detection interference cancellation receiver. The invention provides a means of performing interference cancellation for signals that are asynchronous with respect to each other while enabling signal synchronous processing of the individual signals. The present invention can be utilized with wireless signals that posses a signal format defining a fixed timing interval and a frame structure.
a and
The present invention provides a system (or module) and method of a multiple signal timing control and interference cancellation timing control for a joint detection interference cancellation receiver. The invention provides a means of performing interference cancellation for signals that are asynchronous with respect to each other while enabling signal synchronous processing of the individual signals. The present invention can be utilized with wireless signals that posses a signal format defining a fixed timing interval and a frame structure. Examples of such signals include the WCDMA and LTE signals specified by the Third Generation Partnership Project (3GPP) and the WiFi (802.11) and WiMax (802.16) signals specified by the Institute of Electrical and Electronic Engineers (IEEE).
In the process configuration of
Initially the Signal N Sample Rate Fs is a nominally synchronous sample rate defined here as a sample rate that is an integer multiple of the signal's specified fixed timing interval. For example, for WCDMA signals a nominally synchronous sample rate that provides 2 samples per chip interval is 7.68×106 samples per second=2×chip rate (3GPP specifies the WCDMA chip rate to be 3.84×106 chips per second). As is known, synchronous samples can be determined by an interpolation of samples that were determined at a nominally-synchronous sample rate. The implementation of the Signal N Synchronous Sampling module 110 can be either a digital interpolator that performs a sample rate conversion by interpolating nominally-synchronous sampled data based on Signal N Sample Rate Fs 191 or it can be an analog-to-digital sampler and converter with the sample intervals determined by the Signal N Sample Rate Fs 191. In either case, the sample rate of the output of the Signal N Synchronous Sampling module 110 is determined by the Signal N Sample Rate Fs 191.
The N Sample Selection and Interpolation modules 120 to 122 input the sampled received signal 116 from the Input Buffer 115 and output signal-synchronous, received signal samples 125 to 127 given, respectively, N timing control parameter sets, Timing Control for Signal n, 1≦n≦N, 185 to 187, from the Multiple Signal Timing Recovery module 180. Received Signal n Estimation modules 130 and 131 input signal-synchronous received signal samples, 125 and 126, and output estimates 135 and 136 of the received nth interfering signal, for n=1 to N-1, to the Interpolation and Subtraction module 150.
In the invention, the outputs of the Sample Selection and Interpolation Signal n modules 120 to 122, the Received Signal n Estimation modules 130 to 131, and the Interpolation and Subtraction module 150 are each aligned with a signal processing subframe of the respective signal n. The term signal processing subframe is used here to indicate the selection of a relatively small frame structure of the signal that is convenient for block, e.g., sample vector or sample matrix, signal processing at the receiver level. For example, for the WCDMA signal, such a signal processing subframe is conveniently defined as the samples and data associated with a 256-chip, symbol-aligned signal segment, i.e., a 256-chip signal segment that contains all 256 chips of a WCDMA symbol that has a spread factor of 256. In the example embodiment of the invention in
Continuing to reference
The Interpolation and Subtraction module 150 inputs, from 140, the delayed received signal 145 which is subframe-aligned and synchronous to the signal N of interest and also inputs 135 and 136, the estimates of the received N-1 interfering signals, i.e., Estimate of Interfering Received Signal n, for n=1 to N-1. The Interpolation and Subtraction module 150 subtracts interpolated samples of the interfering signals from the delayed received signal 145 based on the Timing Control for Interference Cancellation 188. In the invention, the Timing Control for Interference Cancellation 188 is defined as the aggregate of the N Timing Control for Signal n parameter sets, i.e., for n=1 to N. The Interpolation and Subtraction module 150 outputs the Interference Cancelled Received Signal of Interest 155.
The Symbol Estimation module 160 in
Note that in the example implementation of the invention, sample time is everywhere defined with respect to the sample time scale of the Input Buffer 115. For example, as illustrated in
Letting Fs_n denote the true synchronous sample rate for signal n, consider the effects of a true-synchronous-to-actual sample rate error defined as Fs_n-Fs where Fs is the Signal N Sample Rate Fs 191 that was applied by the Signal N Synchronous Sampling module 110 to provide the N_buffer samples in the Input Buffer 115. The true synchronous sample rate, Fs_n is an integer multiple of the true chip rate of signal n. If the length of the output sample vector, M_subframe, is small compared to sample lengths that are significant in regard to the Fs_n-Fs sample rate error, then the requested interpolation time T_n(m) of the mth sample in the output sample vector can be defined simply as T_n(m)=T0_n+m for m=0 to M_subframe-1. Conversely, this assumes that the true-synchronous-to-actual sample rate error, Fs_n-Fs, results in an insignificant timing error in a time interval corresponding to M_subframe samples. For example, consider WCDMA signals with a Signal N sampling rate of Fs=7.68×106 samples per second and M_subframe=512 samples given a signal processing subframe of length 256 chips. If the fractional sample rate error, (Fs_n-Fs)/Fs, is +/−50 parts per million and it is known that the requested interpolation time, T(0)=T0_n, for the first, m=0, output sample is accurate. It follows that using T(M_subframe-1)=T0_n+511 to define the requested interpolation time of the last, m=M_subframe-1, output sample results in a maximum requested interpolation sample time error of only +/−0.0256 sample interval (1/Fs). Such a small error in the requested interpolation sample time is insignificant and can be ignored.
The more general case of large M_subframe and/or large true-synchronous-to-Signal-N-synchronous sample rate error is readily included in the present invention by using a more complicated specification of the requested interpolation times for the samples in the output of the Sample Selection and Interpolation Signal n modules, 120 to 122 in
Continuing to reference
T
—
n(m)=nLHS—n+alpha—n+m
for 0≦m≦M subframe-1 where m identifies the mth sample in the subframe-aligned, signal-synchronous received-signal sample vector that is output from the Sample Selection and Interpolation Signal n module. The large arrow 220 in
a and 4b illustrate examples of the timing relationship between the samples at the input of the Interpolation and Subtraction module, identified as 150 in
The top of
As indicated in
T0—N(k)≅T—N_desired
as a result of the combined action the Multiple Signal Timing Recovery module 180 for signal N, the Determine Signal Sample Rate Fs module 191 and the Signal N Synchronous Sampling 110 of this invention, as described further below.
T0—N(k)=nLHS—N(k)+alpha—N(k)<T0—n(k)=nLHS—n(k)+alpha—n(k)
b shows the case where the start of the kth subframe of the signal of interest N lags the start of the kth subframe of the interfering signal n. This is the case when
T0—N(k)=nLHS—N(k)+alpha—N(k)>T0—n(k)=nLHS—n(k)+alpha—n(k).
For completeness,
The Estimate Timing for Signal n 530 uses known, signal class-and-format dependent methods to determine the start time of the a signal subframe, which as discussed above, defines the base-point index, nLHS_n, and the fractional interval, alpha_n of the Timing Control for Signal n 185 to 187 for 1≦n≦N. For example, for WCDMA signals, the Estimate Timing for Signal n 530 can use known methods to estimate the channel impulse response (CIR) using the sampled baseband data and the scramble code for signal n. Known methods to estimate the CIR include, for example, the method described by S. F. A. Shah and A. U. H. Sheikh in Downlink Channel Estimation for IMT-DS, 12th IEEE Int. Symp. on Personal, Indoor and Mobile Radio Communications, vol. 2, pp. E-137 to 141, September 2001. Given the CIR estimate, the time-of-peak of the absolute value of the CIR, T_peak, directly determines a base-point index, nLHS_n, and a fractional interval, alpha_n, as
T_peak=(nLHS—n+alpha—n)/Fs
such that nLHS_n=NILE(T_peak*Fs) and alpha_n=(T_peak−(nLHS_n/Fs))*Fs where NILE is the nearest-integer-less-than-or-equal-to operation.
In general, as indicated 520 in
sc_used(m)=sc(m+p*256)
where sc_used(m) is the scramble code used for the mth chip processed from the Input Buffer 115 for estimating the CIR and sc is the known scramble code for signal n. It is implied that the argument of sc is modulus the length of the scramble code.
Referring to
1) T0_n(k)<T_N_desired−T_max_offset. This condition occurs when the time of the start of the kth subframe of interfering signal n is too early relative to the desired time of start of the subframe for signal N of interest. To correct this condition, the timing estimation control parameters for signal n in the next, k+1, receiver processing cycle are advanced an extra subframe by the Set p=p+2 block 560.
2) T0_n(k)>T_N_desired+T_max_offset. This condition occurs when the start of the kth subframe of interfering signal n is too late relative to the desired time of start of the subframe for signal N of interest. To correct this condition, the timing estimation control parameters for signal n in the next, k+1, receiver processing cycle are not advanced by the Keep p=p block 570.
3) T_N_desired−T_max_offset≦T0_n(k)≦T_N_desired+T_max_offset. This is the ‘else’ condition and occurs when the start of the kth subframe of interfering signal n is close enough to the desired time of start of the subframe for signal N of interest. This condition requires no correction, the timing estimation control parameters for signal n in the next, k+1, receiver processing cycle are advanced to the next subframe by the Set p=p+1 block 580.
In an example implementation the acceptable timing offset parameter, T_max_offset, can be set to 0.75*M_subframe to allow adequate timing. The above adjustment of the parameter p which selects the timing estimation control parameters for the pth subframe of interfering signal n allows the receiver to track the asynchronous interfering signal n and to insure the input of the Interpolation and Subtraction module 150 maintains the timing relationships illustrated in
As shown in
TED(k)=T0—N(k)−T—N_desired.
The process 660 determines Fs(k) such that TED(k)≅0 as the sequence k advances. This is accomplished using known methods to adjust sample rate Fs(k) based on the timing error detector, TED(k), for example, those methods described in Chapter 7 of U. Mengali and A. N. D'Andrea, Synchronization Techniques for Digital Receivers, Plenum Press 1997. The resulting sample rate Fs(k) is output 670. Referring to
The Estimate of the Received Interfering Signal n and the Timing Control for Signal n for each n, 1≦n≦N-1, are buffered 740 for processing cycles k−1, k and k+1; as illustrated in
In the example implementation and as discussed above, the interpolation process 760 considers the sample time of the mth sample in the kth processing cycle of the Delayed Received Samples for Signal N to be defined as
T
—
N(m)=nLHS—N(k)+alpha—N(k)+m
for m=0 to M subframe-1. For each T_N(m), the interpolation process 760 determines the samples in the 3 subframe buffer, illustrated in
T
—
n(s)=nLHS—n(k−1)+alpha—n(k−1)+s−M_subframe,
for 0≦s≦M_subframe-1;
T
—
n(s)=nLHS—n(k)+alpha—n(k)+s−M_subframe,
for M_subframe≦s≦2*M_subframe-1; and
T
—
n(s)=nLHS—n(k+1)+alpha—n(k+1)+s−M_subframe,
for 2*M subframe≦s≦3*M_subframe-1. Several methods of interpolation that can be used for the interpolation process 760 are well known, for example as described by Floyd M. Gardner, Interpolation in Digital Modems—Part II: Implementation and Performance, in IEEE Transactions on Communications, vol. 41, no. 6, June 1993.
Referring to
The interference cancellation is performed by process 780 in
s
—
IC
—
N(m)=s—N(m)−si—est(m)
for 0≦m≦M_subframe-1. The interference cancelled received signal of interest, s_IC_N, is output 790 to the Symbol Estimation module 160 in
The present patent application is related to U.S. Provisional Patent Application 60/628,248 filed on Nov. 16, 2004, entitled Chip-Level No-Decision Feedback Equalizer For CDMA Wireless Systems, U.S. patent application Ser. No. 11/280,858 filed on Nov. 16, 2005, entitled Chip-Level No-Decision Feedback Equalizer For CDMA Wireless Systems, and U.S. patent application Ser. 10/796,596 filed on Mar. 9, 2004, entitled Methods and Apparatus For Single Burst Equalization of Single Carrier Signals In Broadband Wireless Access Systems, now issued U.S. Pat. No. 7,388,910, issued on Jun. 17, 2008, the contents of each of which are incorporated by reference herein.