Method And Apparatus For Smart Adaptive Dynamic Range Multiuser Detection Radio Receiver
20180367207 ยท 2018-12-20
Inventors
Cpc classification
H04B7/086
ELECTRICITY
H04K3/228
ELECTRICITY
International classification
Abstract
A receiver includes multi-user detection (MUD) functionality and a cognitive engine. The receiver may also be coupled to multiple antennas and have analog beamforming capability. The cognitive engine is operative for selecting a beam or beams associated with the multiple antennas to enable successful demodulation by the MUD. The receiver has application in multiple access channels and in other communication scenarios.
Claims
1-47. (canceled)
48. A communication device for use in a multi-signal wireless environment having a signal of interest and one or more other signals in a common frequency band, the device comprising: at least one beamformer configured to form a plurality of receive beams, each receive beam in the plurality of receive beams configured to receive a composite signal having a different combination of the signal of interest and the one or more other signals; a multi-user detector (MUD) configured to demodulate the signal of interest within each composite signal; and a cognitive engine configured to select one or more receive beams in the plurality of receive beams having a dynamic range, between the signal of interest and the one or more other signals that are delivered to the MUD, that is favorable for demodulation of the signal of interest by the MUD.
49. The communication device of claim 48, wherein the at least one beamformer comprises an analog beamformer or a digital beamformer.
50. The communication device of claim 48, wherein the at least one beamformer includes multiple combiners that are each configured to linearly combine received signals, at least two of the multiple combiners linearly combining received signals differently.
51. The communication device of claim 50, further comprising a beam selector switch coupled to outputs of the multiple combiners to select, under control of the cognitive engine, one or more of the beams generated by the multiple combiners for further receiver processing.
52. The communication device of claim 48, wherein the at least one beamformer includes a linear combiner, having configurable combining weights, that is capable of achieving a variety of different receive beams when the combining weights are varied.
53. The communication device of claim 52, further comprising a weight generation unit to generate weights for the linear combiner under control of the cognitive engine to achieve different receive beams.
54. The communication device of claim 48, further comprising a receive chain having an automatic gain controller or an analog to digital converter.
55. The communication device of claim 48 comprising one or more of: an integrated circuit, a handheld wireless communicator, a base station, a wireless access point, a femtocell unit for use in a cellular communication system, or a gateway unit for use in WiFi hotspots.
56. The communication device of claim 48, wherein the at least one beamformer is capable to perform beamforming that is only coarse.
57. A cognitive engine for a communication device having a plurality of receive beams in a multi-signal wireless environment having a signal of interest and one or more interfering signals, the cognitive engine comprising: an operating point determination unit configured to identify an operating point of the communication device; a beam grading unit configured, for each of a plurality of combinations of one or more receive beams, to determine whether the combination is feasible for use at the operating point and, if so, to determine for each such combination a grade indicative of a relationship between received power levels of the signal of interest and the one or more interfering signals; and an ordered beam list generation unit configured to generate an ordered list, of at least a portion of the plurality of combinations, based on the grades provided by the beam grading unit, for use by a multi-user detector (MUD) to demodulate the signal of interest.
58. The cognitive engine of claim 57, wherein the operating point determination unit identifies the operating point based, at least in part, on a power or a rate of each of a plurality of signals received by a receive beam of the communication device.
59. The cognitive engine of claim 57, wherein the ordered beam list generation unit is configured to generate, in grade order: (a) a list of single-beam combinations when the MUD is a single-beam MUD; (b) a list of plural-beam combinations when the MUD is a multi-beam MUD; and (c) a list of both single-beam and plural-beam combinations when the MUD is a beam-recursive MUD.
60. The cognitive engine of claim 57, wherein the beam grading unit determines each grade based, at least part, on a signal quality metric, or a low-quality signal parameter estimate generated by a parameter estimator, or a high-quality signal parameter estimate generated by the MUD.
61. The cognitive engine of claim 57 further configured to select, for delivery to one or more MUDs in the communication device, a combination in the ordered list based, at least in part, on quality of service (QoS) information, or a type of each of the one or more MUDs.
62. The cognitive engine of claim 57, wherein the communication device is configured to form the plurality of receive beams into a combination based on the ordered list.
63. A parameter estimator for computing parameters for each signal within each of a plurality of receive beams for a communication device, the parameter estimator comprising: a direction of arrival estimator configured to estimate angles of arrival to the communication device of signals received from each of a plurality of signal sources; a power and signal-to-noise (SNR) estimator configured to estimate a power and a SNR for each received signal, wherein noise does not include a signal of interest; a beam dynamic range calculator configured to calculate dynamic ranges between the signal of interest and an interfering signal based on their respective estimated directions of arrival and estimated powers; a gradient calculator configured to determine gradients between a plurality of radio frequency (RF) linear combiner weights and the calculated dynamic ranges; and a low-quality parameter estimator configured to generate a bandwidth, or a modulation type, or a carrier offset, or a phase offset, or any combination of these, and to communicate such parameters with the calculated dynamic ranges and determined gradients to a cognitive engine.
64. The parameter estimator of claim 63, further comprising an optimization unit configured: to receive, from the cognitive engine, an ordered list of combinations of one or more receive beam grades and corresponding communication device settings; and to configure the low-quality parameter estimator according to an iteration through the ordered list of combinations until the low-quality parameter estimator generates a relative maximum dynamic range.
65. The parameter estimator of claim 63, where the low-quality parameter estimator is further configured to estimate one or more of: a number of coexisting signals, a baud rate for each signal, baud timing for each signal, carrier offset for each signal, error correction coding rate for each signal, and modulation scheme for each signal.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0069] The foregoing features may be more fully understood from the following description of the drawings in which:
[0070]
[0071]
[0072]
[0073]
[0074]
[0075]
[0076]
[0077]
[0078]
DETAILED DESCRIPTION
[0079] Before describing a coexistence cognitive radio (CECR) and related methods, some introductory concepts and terminology are explained. As an initial matter, it should be appreciated that the concepts, systems, and techniques described herein find use in a wide variety of application areas.
[0080] For example, the concepts, systems, and techniques described herein for processing and/or making use of interfering signals find application in a wide variety of application areas including, but not limited to: magnetic storage media, magnetic storage systems, signal propagation systems (e.g., systems including cable or other physical transmission media), wireless networks or systems (e.g., wireless medical systems, satellite communications (SATCOM) systems, optical communications systems, wireless networking systems, wireless cellular systems, and/or others), and wired communications systems (e.g., communications over a cable or other type of wire or conductor).
[0081] The above notwithstanding, to promote clarity and understanding, the broad concepts, systems, and techniques of the present disclosure are discussed below in the context of a wireless communication system. This is not intended to be limiting and should not be construed as such. That is, as described above, the broad concepts described herein apply to a wide variety of different fields of use.
[0082] Communicating data from one location to another requires some form of pathway or medium between the two locations. In telecommunications and computer networking, a communication channel, or more simply a channel, refers to a connection between two locations over a transmission medium. The connection may, for example, be a logical connection and the transmission medium may be, for example, a multiplexed medium such as a radio channel. A channel is used to convey an information signal (e.g., a digital bit stream, etc.) from one or more source or sending nodes (or, more simply, sources or transmitters) to one or more destination or receiving nodes (or, more simply, destinations or receivers). Regardless of the particular manner or technique used to establish a channel, each channel has a certain capacity for transmitting information, often measured by its frequency or bandwidth in Hertz or its data rate in bits per second.
[0083] A coexistence cognitive radio (CECR) and related techniques as described herein are capable of assessing a frequency spectrum, determining candidate bands in which other independent radios are already operating, and successfully sharing access of an already occupied frequency band with an independent radio system. CECRs may successfully transmit and receive in a pre-occupied band without prohibiting the operation of a pre-existing radio system that was already operating in that band. Moreover, the pre-existing radio system already operating in that band requires no additional capabilities to co-exist with the subject CECR system. Specifically, the pre-existing radio system is not expected to communicate with the coexistence cognitive radio to accomplish the virtual negotiation to settle upon an agreeable coexistence of the two systems.
[0084]
[0085] The cognitive engine 300 receives input as available from other units within the receiver. The most rudimentary functioning of this unit is possible with no more than the list of SNR's for each signal for each beam as provided by the up front signal parameter estimation unit 245, the type of MUD implemented in the receiver as provided on line 980, and either an estimated modulation rate and, if possible, an error correction coding rate from line 260 or a known modulation and, if known, a coding rate from line 970. For some state of the art radios, means other than up front signal parameter estimation unit 245 may be used to provide the low quality signal parameter estimates to cognitive engine 300.
[0086] If more information is available, such as quality of service measurements on line 970, the cognitive engine 300 may be capable of improved decision making. Further, if available, the cognitive engine 300 may be capable of high quality refinements using the high quality signal parameters on line 850 that would be a by-product of the MUD processing within unit 900.
[0087]
[0088] As will be described in greater detail, in at least one embodiment, the receiver of
[0089] It should be noted that there are multiple modes of operation possible for the receiver of
[0090] A description will now be made of the single beam mode of operation. Conventional beamforming, which is well-known and finds application in point-to-point links and MIMO systems, attempts to maximize the channel response in one direction, while greatly diminishing the response in other directions. Very sharp beams are typically desired to maximize the dynamic range between one primary signal and other secondary, undesired signals. In contrast, an approach described herein is to choose beams that reduce the dynamic range between signals. This will allow a realistic MUD algorithm to be employed wherein the multiuser capacity region or achievable rate region is favorable for the MUD that has been implemented within the receiver. In the discussion that follows, the technique will be described in the context of two signals. However, persons skilled in the art will appreciate that the techniques easily extend to greater number of signals.
[0091] Making the two signals much closer in power level (i.e., lowering dynamic range) is done at the expense of the SNR of the higher power signal. This must therefore be done carefully so that the rate for that higher power signal, after the application of the beam, is not too high relative to its new SNR. For example, if a dynamic range of 10 dB between signals is sufficient to eliminate the quantization noise caused by the combination of the automatic gain control and the A/D converter, and the normalized interference between those two signals is maximal (mathematically, the time-space received signature pulses would be nearly collinear in such a case), then it is best to work toward choosing or creating a beam to provide the desired 10 dB dynamic range because that will give the implemented MUD algorithm the best operating point. If the time-space signature pulses were less than maximally interfering, then a smaller dynamic range could be tolerated. The operating point determination unit 310 would provide appropriate evaluation regarding this trade.
[0092] In one approach, to enable the ability to reduce or alter the received dynamic range between co-channel signals, a selection may be made among multiple linear combinations of spatial waveforms. That is, a set of linear combinations of antenna data, also known as beams, are capable of being formed. The directional response of each combination (i.e., the beam pattern) can be either known or unknown, and either fixed or variable, in different embodiments.
[0093] Referring back to
[0094]
[0095] In one embodiment, arrays of dipoles are used for the antennas 100, 110 of
w.sub.1+w.sub.2e.sup.j2d/ cos()(1),
which depends on the angle of arrival .
[0096] An implementation such as shown in
[0097] The spatial response patterns of the antennas 100, 110 can be either known or unknown. Different algorithms may be applied depending on the situation.
[0098] The up front parameter estimator unit 245 of
[0099] For a fixed set of N known RF linear combiners and known antenna array patterns, let the n.sup.th known combined beam pattern be denoted by b.sub.n(), for n=1, . . . , N, where indexes the direction-of-arrival. The parameter b.sub.n() is then the complex amplitude response of combination n to a unit-amplitude signal from direction .
[0100] Let the direction-of-arrival estimates of the two sources be denoted by .sub.1 and .sub.2, and the powers of the two sources be denoted by p.sub.1 and p.sub.2, respectively. Without loss of generality, we assume p.sub.1p.sub.2. The options for dynamic range compression may be calculated by the beam dynamic range calculator 247 according to:
for n=1, . . . , N. These are communicated on line 261 to the low quality parameter estimator 241.
[0101] For systems where N is very large, which may occur, for example, in systems with programmable amplifiers, it may not be cost effective or practical to enumerate all combinations and test equation (2) exhaustively. Instead, it is more efficient to collect all the degrees of freedom that the system can control into a vector m. The elements of m might be amplifier gain settings and phase shift settings, or perhaps physical settings to control the orientation of physically steerable antennas. The parameter b.sub.m() is now commonly referred to as an array manifold, and the beam dynamic range calculator 247 supplies the function of m:
on line 261 instead of providing the values of dynamic range as is done when the number of beams is low. Also, in this case, unit 241 of
[0102] A power and SNR estimator 248 within the up front parameter estimator 245 of
[0103] If the n.sup.th RF linear combiner measurement output is denoted by:
y.sub.n.sup.H=c.sub.n.sup.HAS.sub.n
for n=1, . . . , N, where c.sub.n is the linear combiner weighting vector, and S.sub.n is the matrix of source transmissions for the n.sup.th measurement (one source per row), and the superscript H denotes the Hermitian transpose operation. The following steps may be used to calculate the signal powers and SNRs: [0104] 1) Calculate the combined array response and RF linear combiner response d.sub.n.sup.H=c.sub.n.sup.HA, and calculate the average power for the n.sup.th combiner output via
Note that:
[0108] Note that with these definitions and from function (4), we have r=Ep. [0109] 3) Solve for the vector of source powers via p=E.sup.1r. [0110] 4) Solve for the source SNRs using SNRs=p.sub.s/.sup.2, for s=1, . . . , S.
The estimated SNRs, as well as signal powers and noise power estimates, may then be communicated on line 250 to the cognitive engine 300 (as shown in
[0111] The low quality parameter estimator 241 aggregates information from the gradient calculator 249 and the dynamic range functions on lines 261 from the beam dynamic range calculator 247 for transmission to the cognitive engine 300 on line 260. The low quality parameter estimator 241 might also generate one or more of bandwidths, modulation type, carrier offset, phase offset, or others based, for example, on what the cognitive engine 300 needs.
[0112] The function of the cognitive engine 300 in
[0113] In some implementations, a constraint may be added that prevents the higher power user's received power from going below what would be needed to receive this user's rate. In other words, the beam grading unit 320 in
[0114] The choice of the beam could be a function of which MUD is available in the receiver, and a rate-tool, such as the one described in a co-pending U.S. patent application entitled Method and Apparatus for Rate Determination in a Radio Frequency System by McLeod, et al., which is commonly owned with the present application, can be used to determine what the bound on the higher user's power needs to be.
[0115] The case where the antennas 100, 110 do not have known beam patterns can also be handled by the embodiment of
[0116] Instead of functions (2) or (3), the low quality parameter estimator 241 may utilize gradient information provided by a gradient calculator 249 to calculate updates to the RF linear combiner configuration. The gradient calculator 249 estimates a gradient matrix between each RF linear combiner weight and the signals' dynamic ranges at the AGC output, the low quality parameter estimator 241 then uses these gradient estimates to step in a downhill direction to a more favorable dynamic range.
[0117] The assumption then is that this algorithm is operated in a tracking loop, where it is assumed that the setting of the RF weights and AGC are such that no saturation is occurring and that a reasonable multiuser capacity region is currently obtained, relative to the rates of the two interfering signals (e.g. the rate pair operating point is within the portion of the multiuser capacity region that corresponds to the MUD detector that has been implemented within the receiver.) The channel and the source locations and transmitted powers are assumed to change slowly, relative to the tracking loop update dynamics.
[0118] For the embodiment of
where 0<<1 is used to account for the channel dynamics. A smaller will lead to slower but more stable adaptation. However, cannot be too small as the algorithm may then fail to track channel dynamics.
[0119] Referring back to
O=(R.sub.a,R.sub.A,MUD.sub.b),(8)
where MUD.sub.b is the specific MUD algorithm implemented in node b's receiver, and R.sub.a and R.sub.A are the rates of the information contained within the signals transmitted by nodes a and A, respectively. The rate of the information within the signal transmitted by node a is expressed in the number of information bits per channel use (or information bits per baud pulse or per modulated symbol) as follows:
where M is the order of modulation and log.sub.2(M) is the number of modulated bits per channel use, and
is the coding rate (i.e., the number of information bits per modulated bits). For example, if the modulation scheme is 8-ary phase shift keying (8PSK), then M=8 and there are 3 bits embedded in every pulse transmitted. If an error correction code was applied between the source of information bits and the modulator, and if that error correction code were a
rate code, then the rate of the information conveyed in the signal transmitted by node a would be
information bits per channel use.
[0120] The rate of the signal transmitted by node A could be one of two definitions depending upon the configuration of the receiver within node b. If node b knows the code book used by transmitter A for the error correction coding of node A's signal and if node b employs a MUD that takes advantage of node A's error correction code, then, using the modulation and code rates employed in transmitter A, we would have:
If, on the other hand, node b does not know or does not use the error correction embedded within transmitter A's signal, then we have:
R.sub.A=log.sub.2(M)(11)
The information that is conveyed to the cognitive engine 300 over line 980 would be the specific MUD algorithm that has been implemented within the subject receiver. Examples of various MUD algorithms that might be employed within the subject receiver are: (1) matched filter successive interference cancellation (MF SIC), (2) minimum mean squared error MUD (MMSE MUD), (3) MMSE SIC, (4) Turbo MUD, (5) M-Algorithm MUD, (6) other MUDs that attempt to mimic much of the optimum MUD processing, as well as many other possible MUDs.
[0121] To complete the definition of operating point which is output by unit 310 along line 315, we shall provide an example where we determine the operating point for the following case:
[0122] 1. Node a [0123] (a) Modulation=8PSK (M=8, log.sub.2(M)=3) [0124] (b) Error Correction Code= rate convolutional code (k=7, n=8)
[0125] 2. Node A [0126] (a) Modulation=QPSK (M=4, log.sub.2(M)=2) [0127] (b) Error Correction Code= rate Reed Solomon code (k=3, n=4)
[0128] 3. Node b [0129] (a) MUD type=MMSE SIC [0130] (b) Use a's error correction code within the MUD: YES(R.sub.a=3=2==2.625) [0131] (c) Use A's error correction code within the MUD: NO (R.sub.A=2)
In the above case, the operating point is:
O=(2.625,2,MMSE SIC).(12)
[0132] The operating point determination unit 310 takes as input low quality signal parameter estimates over line 260 and the type of MUD algorithm that has been implemented in the receiver over line 980. An operating point can be determined with these two inputs. If higher quality signal parameters are available over line 970 and/or line 850, this unit may use the highest quality signal parameter values available to determine the operating point.
[0133] The low quality signal parameter estimates on input line 260 may include some or all of the following values. Those marked with an asterisk (*) are required for determination of the operating point. The other values may be used by the beam grading unit 320 to compute a grade for each beam. As will be described in greater detail, the up front parameter estimation unit 245 may provide these values. [0134] Number of interfering signals* [0135] Modulation (M) for each signal* [0136] For each signal, whether or not the receiver will perform error correction decoding* [0137] If the receiver will perform error correction decoding, the coding rate for that signal* [0138] Baud timing offset of the interfering signals [0139] Carrier frequency for each interfering signal [0140] Cross correlation between every pair of interfering signals
[0141] As described previously, the up front parameter estimation unit 245 may generate a list of SNRs for each beam on line 250. This list may then be input to the cognitive engine 300 (e.g., see
[0142] Input Line 970 of cognitive engine 300 may include information typically produced within state of the art radio receivers that help the radio determine if it is meeting the necessary quality of service (QoS) by checking the packet drop rate for the signal of interest. If the packet drop rate is higher than some acceptable threshold, then the QoS is not met. In addition, typical to state of the art radio receivers is the possession of information that defines the waveform in use, to include assignments of values to the following: modulation scheme, error correction coding scheme, frequency band or center frequency and bandwidth, packet/frame structure, etc. This information may be known about one or all of the interfering signals and may, therefore, not need to be estimated by unit 245, but instead, unit 245 may simply need to determine the association of each waveform parameter list with the incoming environmentally determined values such as SNR, timing offset, frequency offset, etc.
[0143] Input Line 850 of cognitive engine 300 is a byproduct of the MUD processing since many MUD algorithms require very good estimates of each of the interfering signals' SNRs and/or receive amplitudes, baud timings, carrier offsets, modulation schemes, coding schemes, etc. The estimates made by MUD unit 900 in order to successfully perform the MUD may be of higher fidelity than is possible using only the analog signals available to the up front parameter estimation unit 245. MUD unit 900, however, will only have computed estimates for the selected beams.
[0144] Beam grading unit 320 of cognitive engine 300 (see
[0145] The ordered beam list generation unit 330, for the single beam mode of operation, will generate a list that contains only one beam or beam combination. The beam number (for the case of the single-beam MUD) or set of numbers (for the case of multispatial MUD) output by unit 330 along line 360 indicates the beam or beam combination set that was scored the highest by unit 320.
[0146] The beam selector 365 of
[0147] The down converter 400 may include a conventional device that takes a down conversion tone 390 supplied by a conventional phase reference oscillator, and mixes it with the post-analog beamformed RF signal 370. The operation is used to convert a signal with an RF center frequency to a much lower baseband frequency, where ensuing digitization hardware typically functions.
[0148] The low pass filter 500 may include any type of filter that limits the frequency extent of signals passing through it. It is generally required so that ensuing digitization operations function properly in that aliasing of out of band signals do not occur.
[0149] The AGC unit 600 is a device that attempts to set the overall signal amplitude level that results from the combination of signals-of-interest, signals-not-of-interest, and noise. It accepts low-pass filtered information from filter 500 and acts to scale the amplitude of that signal to below the full scale input of the A/D converter 700, with some margin to avoid saturation or damage to the receiver components given this amount of gain. Additional consideration may be given to setting the gain so that the noise-like effect of quantization by the A/D converter 700 is generally low.
[0150] The A/D converter 700 is a conventional device that performs the actual digitization of the analog signal output by AGC unit 600. As has been previously noted, A/D converters sometimes have severe limitations in that the peak input signal level must be controlled rather tightly to avoid saturation and perhaps device damage. In addition, there may be a trade-off of cost versus dynamic range performance and capability inherent in choice of A/D converters. The ability for the cognitive engine 300 to intelligently and cognitively choose and/or reshape the total dynamic range of signals input to A/D converter 700 will allow a great cost reduction in that less capable A/D converters can be used.
[0151] The power and SNR estimator 248 can be performed more simply (without use of a tracking mode) in the multi-beam mode, by making use of the multiple combiner/beams. It is more in line with conventional blind source separation type approaches, where multiple simultaneously gathered measurements are used.
[0152] The measurement model is:
Y=CAPS+N(13)
where: [0153] Y: NK matrix of measured data [0154] N is the number of combiners and K is the number of samples [0155] KNMS [0156] M is the number of antennas and S is the number of sources (transmitters) [0157] C: NM matrix of known linear combiner weights [0158] C.sup.+: MN pseudo inverse of the C matrix [0159] A: MS matrix containing the unknown array response, but |A.sub.ij|.sup.2=1 [0160] P: SS, matrix of signal powers (diagonal matrix of unknown positive values) [0161] S: SK, matrix containing the signals, one row corresponding to typically hundreds of symbols transmitted by each source or transmitter (unknown, but signal rows uncorrelated) [0162] R.sub.s()=E{SS.sub..sup.H} (temporal signal cross-correlation), where S.sub. is the matrix S, shifting in time by samples. R.sub.s() is assumed to be diagonal, and R.sub.s(0)=I, where I is the identity matrix (since matrix P defined above accounts for the signal powers) [0163] N: NK matrix of colored white Gaussian noise with E{NN.sup.H}=.sup.2I, .sup.2 unknown
[0164] The effect of the antennas are modeled as merely phase shifts in a matrix A (treated as unknown phase shifts here for simplicity; other approaches using well known methods are possible if the array is calibrated). The signal powers are collected into a diagonal matrix P. It will be assumed that several RF linear combiners are available. In this situation, the signal and noise powers, and the SNRs may be calculated using the seven steps below. This approach is an adaptation of the second order blind identification (SOBI) algorithm. [0165] 1) Estimate .sup.2 and S by minimum description length (MDL) or similar methods that determine subspace dimensionality. The noise power estimate .sup.2 is output on line 250. [0166] 2) Calculate Z=C.sup.+Y and if M>S perform the additional noise cleaning operation as follows. Calculate the eigenvectors of ZZ.sup.H corresponding to the largest S eigenvalues, and collect these into an MS matrix U. Then, calculate Z.sub.c=U.sup.HZ and set Z equal to Z.sub.c, Z is now of size SS. Note that U and A span the same space so that U.sup.H A is full rank. [0167] 3) Form two temporal empirical covariance matrices:
G=(U.sup.HA)R.sub.s(.sub.1)R.sub.s.sup.1(.sub.2)(U.sup.HA).sup.1 [0170] 5) Calculate the eigenvectors of G, and collect them into a matrix V Techniques for performing this decomposition are well known. Note that V and U.sup.H A are related by multiplication of an arbitrary unknown diagonal phasor matrix D and an arbitrary unknown permutation matrix , via V=U.sup.HA D . This ambiguity is well known in the SOBI method and has no negative impact on our method. [0171] 5) Calculate W=V.sup.1Z. Note that it can be shown that WW.sup.H=.sup.HP , so that W contains the signal power information we seek. [0172] 6) Calculate the estimated signal powers as follows. Let w.sub.i.sup.H be the i th row of W. Then the estimated signal powers are calculated as p.sub.i=w.sub.i.sup.Hw.sub.i/K, for i=1, . . . , S. [0173] 7) Calculate the SNRs via: SNR.sub.i=p.sub.i/.sup.2, for i=1, . . . , S. These values are output on line 250.
[0174] The techniques, concepts, systems, and devices described herein may be used in a wide variety of different applications. For example, in one possible application, the techniques may be implemented within cellular systems that use femtocells to allow the femtocells to coexist on channels used by corresponding macrocells. In another application, the techniques may be implemented in wireless networks to permit, for example, an increase in the density of wireless access points in a network. In still another application, the techniques may be used to allow a terrestrial cellular system to operate within the same frequency band as, for example, a satellite communication system. Features of the invention may be implemented within a wide variety of node types including, for example, handheld wireless communicators, cell phones, smart phones, computers, wireless network interface devices, base stations, wireless access points, femto cell units, wireless gateway units, WiFi hotspot units, integrated circuits, and others. Many other applications also exist.
[0175] Having described preferred embodiments of the invention it will now become apparent to those of ordinary skill in the art that other embodiments incorporating these concepts may be used. Accordingly, it is submitted that the invention should not be limited to the described embodiments but rather should be limited only by the spirit and scope of the appended claims.