I. Field
The present disclosure relates generally to communication, and more specifically to techniques for performing time tracking at a receiver in a communication system.
II. Background
Orthogonal frequency division multiplexing (OFDM) is a multi-carrier modulation technique that can provide good performance for some wireless environments. OFDM partitions the overall system bandwidth into multiple (K) orthogonal frequency subbands, which are also called subcarriers, tones, bins, and so on. With OFDM, each subband is associated with a respective subcarrier that may be modulated with data. Up to K modulation symbols may be sent on the K subbands in each OFDM symbol period.
In an OFDM system, a transmitter typically transforms the modulation symbols for each OFDM symbol period to the time domain with a K-point inverse fast Fourier transform (IFFT) or inverse discrete Fourier transform (IDFT) to obtain K time-domain chips. To combat delay spread in a communication channel, the transmitter repeats some of the K chips to form an OFDM symbol. The repeated portion is commonly called a guard interval or a cyclic prefix. The guard interval is used to combat intersymbol interference (ISI) and inter-carrier interference (ICI) caused by delay spread, which is the time difference between the earliest and latest arriving signal paths at a receiver.
The receiver performs the complementary processing and removes the guard interval in each received OFDM symbol. The receiver then transforms K time-domain samples for each received OFDM symbol to the frequency domain with a K-point fast Fourier transform (FFT) or discrete Fourier transform (DFT) to obtain K received symbols for the K subbands. The receiver then performs detection on the received symbols to recover the transmitted modulation symbols. The receiver typically maintains a time tracking loop that determines the proper placement of an FFT window for each received OFDM symbol. This FFT window indicates which samples should be retained and which samples should be discarded. Data detection performance is greatly affected by the placement of the FFT window.
There is therefore a need in the art for techniques to perform time tracking at a receiver to achieve accurate placement of the FFT window.
Techniques for performing time tracking at a receiver are described herein. A channel impulse response estimate for a communication channel may be derived, e.g., based on a received pilot. A first arriving path (FAP) and a last arriving path (LAP) may be detected based on the channel impulse response estimate. The FAP and LAP may be correctly detected, and the detected FAP and LAP may be the true FAP and LAP, respectively. However, if the delay spread of the communication channel is excessive, then the FAP and LAP may be incorrectly detected, and the detected FAP and LAP may be swapped and may correspond to the true LAP and FAP, respectively.
To resolve ambiguity in the detected FAP and LAP, two hypotheses may be evaluated. The first hypothesis may correspond to the FAP and LAP being correctly detected, and the second hypothesis may correspond to the FAP and LAP being incorrectly detected. For each hypothesis, hypothesized FAP and LAP are determined based on the detected FAP and LAP, and a correlation window is determined based on the hypothesized FAP and LAP. The correlation window for each hypothesis may cover all or a portion of the guard interval for the hypothesized FAP and/or all or a portion of the guard interval for the hypothesized LAP. For each hypothesis, correlation may be performed between a first segment of received data within the correlation window and a second segment of received data, which may be K samples away, where K is the duration of the useful portion of an OFDM symbol. The correct hypothesis may be determined based on the correlation results for the two hypotheses. The timing at the receiver may be updated based on the hypothesized FAP and LAP for the correct hypothesis. OFDM demodulation may be performed based on the updated receiver timing, e.g., the FFT window may be accurately placed based on the receiver timing.
Various aspects and embodiments of the invention are described in further detail below.
The features and nature of the present invention will become more apparent from the detailed description set forth below when taken in conjunction with the drawings in which like reference characters identify correspondingly throughout.
The word “exemplary” is used herein to mean “serving as an example, instance, or illustration.” Any embodiment or design described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments or designs.
The time tracking techniques described herein may be used for various communication systems such as an OFDM system, an orthogonal frequency division multiple access (OFDMA) system, a single-carrier frequency division multiple access (SC-FDMA) system, and so on. An OFDMA system utilizes OFDM. An SC-FDMA system may utilize interleaved FDMA (IFDMA) to transmit on subbands that are distributed across the system bandwidth, localized FDMA (LFDMA) to transmit on a block of adjacent subbands, or enhanced FDMA (EFDMA) to transmit on multiple blocks of adjacent subbands. In general, modulation symbols are sent in the frequency domain with OFDM and in the time domain with SC-FDMA. An SC-FDMA symbol includes a guard interval that is generated in the same manner as a guard interval for an OFDM symbol. For clarity, the time tracking techniques are specifically described below for an OFDM-based system.
An OFDM modulator 130 receives and multiplexes the data symbols and pilot symbols onto data and pilot subbands, respectively, performs OFDM modulation as described below, and provides an OFDM symbol for each OFDM symbol period. An OFDM symbol period is the duration of one OFDM symbol and is also referred to as a symbol period. A transmitter unit (TMTR) 132 receives and processes (e.g., converts to analog, amplifies, filters, and frequency upconverts) the OFDM symbols and generates a modulated signal, which is transmitted via an antenna 134 to receiver 150.
At receiver 150, an antenna 152 receives the modulated signal from transmitter 110 and provides a received signal to a receiver unit (RCVR) 154. Receiver unit 154 conditions (e.g., filters, amplifies, frequency downconverts, and digitizes) the received signal and provides received samples. An OFDM demodulator (Demod) 160 processes the received samples as described below and obtains K received symbols for the K subbands in each OFDM symbol period. The received symbols include received data symbols for the data subbands and received pilot symbols for the pilot subbands. OFDM demodulator 160 performs time tracking to properly place the FFT window for each OFDM symbol period. OFDM demodulator 160 also performs data demodulation/detection on the received data symbols with a channel estimate to obtain data symbol estimates, which are estimates of the data symbols sent by transmitter 110. A receive (RX) data processor 170 then processes (e.g., symbol demaps, deinterleaves, and decodes) the data symbol estimates to obtain decoded data. In general, the processing by OFDM demodulator 160 and RX data processor 170 is complementary to the processing by OFDM modulator 130 and TX data processor 120, respectively, at transmitter 110.
Controllers/processors 140 and 180 control the operation of various processing units at transmitter 110 and receiver 150, respectively. Memories 142 and 182 store data and program codes for transmitter 110 and receiver 150, respectively.
For each received OFDM symbol, a unit 314 performs a K-point FFT/DFT on the K input samples and provides K frequency-domain received symbols for the K total subbands. A channel estimator 318 derives a channel estimate based on the received pilot symbols. The channel estimate may be a time-domain channel impulse response estimate and/or a frequency-domain channel frequency response estimate. A data demodulator 316 performs data demodulation/detection on the received data symbols with the channel estimate and provides data symbol estimates.
A time tracking loop 320 performs time tracking as described below, determines the timing for each received OFDM symbol, and provides the FFT Start pointer. Although not shown in
Channel estimator 318, time tracking loop 320, and other units within OFDM demodulator 160 may perform processing at the sample rate. These units may also decimate the samples and perform processing at a lower rate in order to reduce computational complexity. These units may also oversample the received signal and perform processing at a higher rate in order to achieve better resolution. For clarity, the description below assumes processing at the sample rate, and various quantities, constants, and thresholds are given for sample rate processing.
The receiver may perform time tracking in various manners and based on various types of information sent by the transmitter. For example, the transmitter may transmit a pilot on N subbands that are uniformly distributed across the K total subbands, where 1<N<K. The receiver may receive an OFDM symbol containing the pilot, remove the guard interval, and perform a K-point FFT/DFT on the useful part of the received OFDM symbol to obtain N received pilot symbols for the N pilot subbands. The receiver may then remove the modulation on the N received pilot symbols to obtain N channel gains and may perform an N-point IFFT/IDFT on the N channel gains to obtain a channel impulse response estimate containing N channel taps, which may be denoted as hn for n=0, . . . , N−1. The receiver may also derive a channel impulse response estimate in other manners known in the art. In an embodiment that is described below, the receiver performs time tracking based on the channel impulse response estimate.
A loop filter 420 filters the timing error and provides a timing adjustment. For the embodiment shown in
Detector 412 may detect for the FAP and LAP in various manners. For clarity, a specific scheme for detecting the FAP and LAP based on the channel power profile is described below. For this scheme, the energy of all channel taps within a sliding window is first computed for different tap positions, as follows:
where Ek is the energy of the channel taps within the sliding window at tap position k,
The sliding window width may be selected to be less than or equal to half of the length of the channel impulse response estimate, or W≦N/2. The channel impulse response estimate length is typically less than or equal to the guard interval, or N≦G. This is because the guard interval is typically selected to be greater than the channel delay spread in order to avoid ISI and ICI. Equation (1) essentially moves the sliding window in a circular fashion across the channel power profile and, for each tap position k, computes the energy of the W channel taps within the sliding window. The sliding window wraps around to the front of the channel power profile upon reaching the end of the channel power profile.
A finite difference is then computed for each tap position based on the tap energies, as follows:
where Q is the finite difference order, and
A sliding window of length 2Q is used to compute the finite difference. This sliding window is moved in a circular fashion across the channel power profile. For each tap position n, the finite difference Dn is computed as the difference between the combined energies in the first half of the sliding window minus the combined energies in the second half of the sliding window.
Two metrics used to detect for the FAP and LAP may be defined based on the tap energies and the finite difference values, as follows:
SFAP(k)=α1·Ek+(1−α1)·D(k−Q+1)mod N, for k=0, . . . , N−1, Eq (3)
SLAP(k)=−α2·Ek+(1−α2)·D(k−Q)mod N, for k=0, . . . , N−1, Eq (4)
where α1 and α2 are coefficients used for FAP and LAP detection, respectively,
Coefficient α1 determines the sensitivity of the FAP detection and may be selected such that an FAP is detected if it is the last large value before a drop in a zone of near-maximum accumulated energy. Similarly, coefficient α2 determines the sensitivity of the LAP detection and may be selected such that an LAP is detected if it is the first large value before a rise in the zone of near-maximum accumulated energy. Coefficients α1 and α2 may be selected to provide good performance for FAP and LAP detection, respectively, and may be determined based on computer simulation, empirical measurements, and so on.
The location of the FAP may be determined based on SFAP(k), as follows:
where FAPd is an index for a detected FAP of sufficient strength. In equation (5), the largest value for SFAP(k) is first identified, and FAPd is set to the index that yields the largest value for SFAP(k).
The location of the LAP may be determined based on SLAP(k), as follows:
where LAPd is an index for a detected LAP of sufficient strength. In equations (6) and (7), the smallest value for SLAP(k) is first identified, the index that yields the smallest value for SFAP(k) is denoted as kmin, and LAPd is set to W−1 tap positions to the right of kmin. The mod N operation in equation (7) constrains LAPd to be within a range of 0 through N−1. In the following description, FAP and LAP denote the true FAP and LAP, respectively, and FAPd and LAPd denote the detected FAP and LAP, respectively.
As shown in
For clarity, a specific scheme for detecting FAP and LAP has been described above. This scheme may provide erroneous FAP and/or LAP under certain conditions. For example, if the sliding window length is smaller than the channel delay spread, then it may be possible to pick a middle channel path as a likely candidate for either FAP or LAP. Furthermore, depending on the relative positions of the channel paths and/or their relative powers, this detection scheme with W=N/2 may detect different candidates for FAP and LAP. The erroneous detection of FAP and LAP may be avoided, e.g., by assuming that the previous center of mass was correctly located around a predetermined point Dmid. Then, for the current channel estimate, an initial decision may be made as to which signal path appears later than Dmid and which signal path comes before Dmid but is aliased into the channel estimate earlier. Assuming that the channel content is equally likely to appear early as well as late, a cut-off point between past and future may be set to Dmid+N/2, and any channel tap after this cut-off point is assumed to have arrived earlier but is aliased. Note that the channel content may have previously been present only up until Dmid+max{Δh}/2, where Δh is the channel delay spread. The region between Dmid+max{Δh}/2 and Dmid+N/2 represents a search zone for late channel content. In general, FAP and LAP detection may be performed in various manners and to account for various channel conditions.
The FAP and LAP detection scheme described above in equations (1) through (7) provides relatively accurate detected FAP and LAP when the channel delay spread Δh is less than or equal to half of the guard interval, or Δh≦G/2. However, when the delay spread is longer than half of the guard interval, the decisions may be swapped so that LAPd=FAP and FAPd=LAP. Hence, the detected FAP may or may not be the true FAP, and the detected LAP may or may not be the true LAP. The accuracy of the FAPd and LAPd decisions is dependent on the actual channel taps, the channel delay spread, and possibly other factors. Hence, it is desirable to achieve accurate detection of FAP and LAP.
The FAP and LAP may also be detected in other manners. Regardless of the scheme used for FAP and LAP detection, there may be ambiguity as to whether the detected FAP and LAP are correct or swapped.
The ambiguity in the FAP and LAP detection may be resolved by exploiting the relationship between the start of the FFT window (which is indicated by the FFT Start pointer) and the resulting channel delay profile. In particular, the locations of the FAP and LAP in the channel impulse response estimate are dependent on (1) the propagation delays for the FAP and LAP and (2) the placement of the FFT window. This relationship is illustrated by two examples below.
The OFDM symbol includes a useful part and a guard interval. The receiver obtains a copy of the OFDM symbol via each signal path. Each OFDM symbol copy is scaled by the complex gain for the associated signal path and is further delayed by the propagation delay for that signal path. For simplicity,
As shown in
Time tracking loop 320 attempts to maintain the FFT Start pointer within the ISI/ICI-free region. Time tracking loop 320 attempts to achieve this goal in the presence of timing drift due to difference between the clock frequencies at the transmitter and receiver, variations in the clock frequencies over time, changes in the communication channel, and so on. Accurate updating of the FFT Start pointer is essential to achieve good data detection performance.
Based on the channel impulse response estimate shown in
The FFT Start pointer is updated in different manners for the channel topologies shown in
To resolve ambiguity in the FAP and LAP detection, the receiver may evaluate two hypotheses for the FAPd and LAPd decisions to determine whether these decisions are correct or incorrect. Hypothesis 0 may denote a hypothesis that the FAPd and LAPd decisions are correct, and hypothesis 1 may denote a hypothesis that the FAPd and LAPd decisions are incorrect. For each hypothesis, the receiver may reconstruct the channel topology for that hypothesis by exploiting the OFDM symbol structure and using the relationship between the FFT Start pointer and the channel delay profile, as described above for
For hypothesis 0, the hypothesized FAP and LAP are equal to the detected FAP and LAP, respectively, or FAPh0=FAPd and LAPh0=LAPd, as shown in
For hypothesis 1, the hypothesized FAP and LAP are equal to the detected LAP and FAP, respectively, or FAPh0=LAPd and LAPh0=FAPd, as shown in
For each hypothesis i, the start of the correlation window, Ti,a, may be determined as:
Ti,a=FFT Start+TFAP,i−G, for i=0, 1, Eq (8)
where TFAP,i is the tap location for FAPhi. TFAP,0=Δ+Δh for hypothesis 0 shown in
For each hypothesis i, the end of the correlation window, Ti,b, may be determined as:
Ti,b=FFT Start+TLAP,i, for i=0, 1, Eq (9)
where TLAP,i is the tap location for LAPhi after accounting for any wrap-around effect. TLAP,0=Δ+G for hypothesis 0 shown in
The size of the correlation window for each hypothesis i may be computed as Ti,b−Ti,a. As shown in
A correlation is performed between the guard interval and the guard copy for each hypothesis i, as follows:
where rn is an input sample at sample index n for the received OFDM symbol,
If the hypothesized FAP and LAP are the true FAP and LAP, as shown in
The correct hypothesis may be determined as follows:
if C0≧C1, then FAPo=FAPd and LAPo=LAPd, else Eq (11a)
if C1>C0, then FAPo=LAPd and LAPo=FAPd, Eq (11b)
where FAPo and LAPo are the output FAP and LAP provided by unit 414 in
Hypothesized FAP and LAP for a first hypothesis corresponding to the FAP and LAP being correctly detected are determined based on the detected FAP and LAP (block 1014). Hypothesized FAP and LAP for a second hypothesis corresponding to the FAP and LAP being incorrectly detected are also determined based on the detected FAP and LAP (block 1016). A correlation window is determined for each hypothesis based on the hypothesized FAP and LAP for that hypothesis (block 1018). The correlation window for each hypothesis may cover all or a portion of the guard interval for the hypothesized FAP and/or all or a portion of the guard interval for the hypothesized LAP.
Correlation is then performed on received data for the first hypothesis based on the correlation window for the first hypothesis (block 1020). Correlation is also performed on the received data for the second hypothesis based on the correlation window for the second hypothesis (block 1022). For each hypothesis, the correlation may be performed between a first segment of received data within the correlation window for that hypothesis and a second segment of received data that is K samples away, where K is the duration of the useful portion of an OFDM symbol. The correct hypothesis is then determined based on the correlation results for the first and second hypotheses (block 1024).
In another aspect, the correct FAP and LAP are determined by evaluating a single hypothesis. The FAP and LAP may be initially detected as described above. A single hypothesis for the FAP and LAP may be selected for evaluation in various manners.
In an embodiment, a hypothesis that results in a smaller timing adjustment to the current FFT Start pointer is selected for evaluation. In this embodiment, the amount of timing adjustment to the current FFT Start pointer for hypothesis 0 is determined and denoted as ΔT0. The amount of timing adjustment to the current FFT Start pointer for hypothesis 1 is also determined and denoted as ΔT1. The hypothesis with the smaller timing adjustment is selected for evaluation and is called hypothesis s. Correlation is performed for the selected hypothesis s as described above. The correlation result Cs for hypothesis s may be compared against a threshold Cth. If Cs is greater than Cth, then hypothesis s is deemed to be the correct hypothesis, and the FFT Start pointer may be updated based on the hypothesized FAP and LAP for hypothesis s. Otherwise, if Cs is equal to or less than Cth, then the other hypothesis that was not evaluated (which is called hypothesis u) is deemed to be the correct hypothesis, and the FFT Start pointer may be updated based on the hypothesized FAP and LAP for hypothesis u.
In another embodiment, a hypothesis is selected for evaluation based on timing (e.g., timing adjustments) for prior hypothesis decisions. In this embodiment, timing adjustments may be computed for hypotheses 0 and 1 as described above. The timing adjustments for the two hypotheses may be compared against timing adjustments for the correct hypotheses for prior update intervals. For example, timing adjustments for P most recent correct hypotheses may be stored, and the hypothesis 0 or 1 that is closer to more of the P stored hypotheses may be selected for evaluation. As another example, the hypothesis 0 or 1 that is closer to the average timing of the P stored hypotheses may be selected. Other types of history information may also be stored and used for hypothesis selection. In any case, the selected hypothesis may be evaluated, and the correlation result Cs may be compared against the threshold Cth to determine whether the selected hypothesis s or the unselected hypothesis u is the correct hypothesis.
A single hypothesis may be selected for evaluation based on the detected FAP and LAP and history information, as described above. The single hypothesis may also be selected without history information. For example, hypothesis 0 may always be selected, or one hypothesis may be randomly selected. The selected hypothesis may be evaluated and compared against the threshold Cth. The threshold Cth may be a fixed value that may be selected to achieve good performance. The threshold Cth may also be a configurable that may be set, e.g., based on the correlation results for the recent correct hypotheses. The correlation window for the selected hypothesis may be determined based on any of the embodiments described above for
The techniques described herein may be used to resolve ambiguity in the FAP and LAP detection when the channel delay spread is more than half of the guard interval (or Δh>G/2) as well as when the channel delay spread is less than or equal to half of the guard interval. In general, the techniques may be used to resolve ambiguity in any two channel taps for an impulse response of a communication channel, where the ambiguity is due to uncertainty as to whether the first channel tap is earlier or later than the second channel tap. Correlation may be performed for a first hypothesis corresponding to the first channel tap being earlier than the second channel tap. Correlation may also be performed for a second hypothesis corresponding to the first channel tap being later than the second channel tap. The correlation results for the two hypotheses may be used to determine whether the first channel tap is earlier or later than the second channel tap.
Referring back to
DS=(LAPo−FAPo)mod N, and Eq (12a)
CM=(FAPo+DS/2)mod N, Eq (12b)
where DS is the detected channel delay spread. In equation (12a), the channel delay spread is computed as {(LAPo−FAPO) mod N}, where the mod N operation accounts for the case in which LAPo is to the left of FAPo in the channel delay profile. In equation (12b), the center of mass is half of the channel delay spread from FAPo, where the mod N operation accounts for possible wrap-around of the center of mass. In another embodiment, the center of mass is determined based on more than two (e.g., all) channel taps in the channel impulse response estimate, channel taps with sufficient strength, and so on. The center of mass computation may be performed in other manners known in the art.
The timing error from summer 418 may be computed as follows:
Timing Error=CM−Timing Target. Eq (13)
The timing error is a signed value that may be positive, zero, or negative.
In an embodiment, the timing adjustment from loop filter 420 may be computed as follows:
Timing Adjustment(t)=Timing Error×Gain+Timing Adjustment(t−1). Eq (14)
In another embodiment, the timing adjustment may be computed as follows:
Timing Adjustment(t)=Timing Error×Gain1+Timing Adjustment(t−1)×Gain2. Eq (15)
Gain in equation (14) and Gain1 and Gain2 in equation (15) may be fixed or programmable values.
The timing adjustment may be limited to within a predetermined range of values, as follows:
Adv/Ret(t)=SAT{Timing Adjustment(t),Max Adjust}, Eq (16)
where Max Adjust is an absolute value for the maximum timing adjustment for any given update and SAT { } is a saturation operation. The resulting Adv/Ret (t) is a saturated signed value.
The FFT Start pointer may be updated as follows:
FFT Start pointer(t)=FFT Start pointer(t−1)+Adv/Ret(t). Eq (17)
The FFT Start pointer is advanced by K+G sample periods for each OFDM symbol and is further updated by Adv/Ret (t) in each loop update interval.
Time tracking loop 320 attempts to maintain the center of mass at a specific location in the channel delay profile, which is referred to as the target timing. A good location for the target timing may be dependent on the actual channel impulse response, the length of the channel estimation window (N), the length of the guard interval (G), and so on. A programmable value may be used for the target timing. The loop filter gain, Max Adjust, and/or other parameters may be fixed or configurable values.
The techniques described herein may be implemented by various means. For example, these techniques may be implemented in hardware, firmware, software, or a combination thereof. For a hardware implementation, the processing units used to resolve ambiguity in a channel estimate and/or to perform time tracking at a receiver may be implemented within one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, electronic devices, other electronic units designed to perform the functions described herein, or a combination thereof.
For a firmware and/or software implementation, the techniques may be implemented with modules (e.g., procedures, functions, and so on) that perform the functions described herein. The software codes may be stored in a memory (e.g., memory 182 in
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
The present application claims priority to provisional U.S. Application Ser. No. 60/737,087, entitled “IMPROVED TIME TRACKING ALGORITHM VIA GUARD INTERVAL CORRELATION FOR OFDM SIGNALS,” filed Nov. 15, 2005, assigned to the assignee hereof and incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
6459744 | Helard et al. | Oct 2002 | B1 |
6559894 | Omura et al. | May 2003 | B2 |
6631157 | Davidovici et al. | Oct 2003 | B1 |
7317760 | Jeong et al. | Jan 2008 | B2 |
7386055 | Morita et al. | Jun 2008 | B2 |
7675960 | Brethour et al. | Mar 2010 | B2 |
20030220120 | Hagin-Metzer et al. | Nov 2003 | A1 |
20040179633 | Shinoda et al. | Sep 2004 | A1 |
20050129092 | Santhoff et al. | Jun 2005 | A1 |
20050135491 | Santhoff et al. | Jun 2005 | A1 |
20050255819 | Kawamoto et al. | Nov 2005 | A1 |
20050265488 | Jung | Dec 2005 | A1 |
20080107195 | Kishigami et al. | May 2008 | A1 |
20090022207 | Brethour et al. | Jan 2009 | A1 |
Number | Date | Country |
---|---|---|
1416693 | May 2004 | EP |
148150 | Nov 2004 | EP |
1478150 | Nov 2004 | EP |
1482699 | Dec 2004 | EP |
2390517 | Jan 2004 | GB |
2001251272 | Sep 2001 | JP |
2004179816 | Jun 2004 | JP |
2008533859 | Aug 2008 | JP |
2008533860 | Aug 2008 | JP |
2008533861 | Aug 2008 | JP |
2107992 | Mar 1998 | RU |
2150176 | May 2000 | RU |
589833 | Jun 2004 | TW |
WO9616524 | May 1996 | WO |
029383 | Jan 2002 | WO |
WO03019808 | Mar 2003 | WO |
204012452 | Feb 2004 | WO |
WO20040012452 | Feb 2004 | WO |
04034603 | Apr 2004 | WO |
Number | Date | Country | |
---|---|---|---|
20070110174 A1 | May 2007 | US |
Number | Date | Country | |
---|---|---|---|
60737087 | Nov 2005 | US |