Multiuser detector for variable spreading factors
Abstract
Multiple communication signals with different expansion factors. Each communication has a correlation code containing chips. For each chip of each communication, generate a vector of the chip that is convolved with an impulse response, generate a support block containing the chip vector for each communication, and the code in a support block A number of slice vectors is based on the communication expansion factor, and a system response matrix is combined. The system response matrix has a sub-matrix, and each symbol sub-matrix includes a support block from each communication. The communication data is detected using the symbol response matrix.

Term
Term ended
Projected expiry passed 11 June 2023, 3.3 years ago.
- Priority
- Filed
- Published
- Projected expiry
- Today
40 claims: 5 independent, 35 dependent
- 1一种接收具有不同展开因素的复数个通信讯号的方法,每一通信具有一包含码片的相关码,该方法包括:为每一通信的每一码片,产生与一脉冲响应回旋的该码片的一向量;为每一通信,产生包括该码片向量的支撑区块,于一支撑区块中的该码片向量的一数目是基于该通信展开因素;组合具有符元次矩阵的一系统响应矩阵,每一符元次矩阵包括来自每一通信的一支撑区块;以及使用该系统响应矩阵侦测该通信的数据。
- 2如权利要求1所述的方法,其特征在于该支撑区块中的该码片向量的该数目为被分割成该系统的一最大展开因素的该通信展开因素。
- 3如权利要求1所述的方法,其特征在于该码片向量是行向量。
- 4如权利要求3所述的方法,其特征在于每一支撑区块的码片中的一高度是一最大展开因素的数目加上该脉冲响应的一长度减1。
- 5如权利要求1所述的方法,其特征在于该数据侦测使用一零强迫模式。
- 6如权利要求1所述的方法,其特征在于该数据侦测使用一最小均方误差解决方法。
- 7如权利要求3所述的方法,其特征在于每一符元次矩阵是该系统响应矩阵中比其它符元次矩阵低一最大展开因素的码片数目。
- 8如权利要求2所述的方法,其特征在于该最大展开因素为16。
- 9一种使用者设备,用以接收具有不同展开因素的复数个通信讯号,每一通信具有一包含码片的相关码,该使用者设备包括:为每一通信的每一码片,产生与一脉冲响应回旋的该码片的一向量的装置;为每一通信,产生包括该码片向量的支撑区块的装置,于一支撑区块中的该码片向量的一数目是基于该通信展开因素;组合具有符元次矩阵的一系统响应矩阵的装置,每一符元次矩阵包括来自每一通信的一支撑区块;以及使用该系统响应矩阵侦测该通信的数据的装置。
- 10如权利要求9所述的使用者设备,其特征在于该支撑区块中的该码片向量的该数目为被分割成该系统的一最大展开因素的该通信展开因素。
- 11如权利要求9所述的使用者设备,其特征在于该码片向量是行向量。
- 12如权利要求11所述的使用者设备,其特征在于每一支撑区块的码片中的一高度是一最大展开因素的数目加上该脉冲响应的一长度减1。
- 13如权利要求9所述的使用者设备,其特征在于该数据侦测装置使用一零强迫模式。
- 14如权利要求9所述的使用者设备,其特征在于该数据侦测装置使用一最小均方误差解决方法。
- 15如权利要求11所述的使用者设备,其特征在于每一符元次矩阵是该系统响应矩阵中比其它符元次矩阵低一最大展开因素的码片数目。
- 16如权利要求10所述的使用者设备,其特征在于该最大展开因素为16。
- 17一种使用者设备,用以接收具有不同展开因素的复数个通信讯号,每一通信具有一包含码片的相关码,该使用者设备包括;每一通信的每一码片的一建构系统响应区块,用以产生与一脉冲响应回旋的该码片的一向量;每一通信的一重新排列处理器,用以产生包括该码片向量的支撑区块,于一支撑区块中的该码片向量的一数目是基于该通信展开因素,并用以组合具有符元次矩阵的一系统响应矩阵,每一符元次矩阵包括来自每一通信的一支撑区块;以及一多使用者侦测器,用以使用该系统响应矩阵的侦测该通信数据。
- 18如权利要求17所述的使用者设备,其特征在于该支撑区块中的该码片向量的该数目为被分割成该系统的一最大展开因素的该通信展开因素。
- 19如权利要求17所述的使用者设备,其特征在于该码片向量是行向量。
- 20如权利要求19所述的使用者设备,其特征在于每一支撑区块的码片中的一高度是一最大展开因素的数目加上该脉冲响应的一长度减1。
- 21如权利要求17所述的使用者设备,其特征在于该多使用者侦测器使用一零强迫模式。
- 22如权利要求17所述的使用者设备,其特征在于该多使用者侦测器使用一最小均方误差解决方法。
- 23如权利要求19所述的使用者设备,其特征在于每一符元次矩阵是该系统响应矩阵中比其它符元次矩阵低一最大展开因素的码片数目。
- 24如权利要求18所述的使用者设备,其特征在于该最大展开因素为16。
- 25一种基地台,用以接收具有不同展开因素的复数个通信讯号,每一通信具有一包含码片的相关码,该基地台包括:为每一通信的每一码片,产生与一脉冲响应回旋的该码片的一向量的装置;为每一通信,产生包括该码片向量的支撑区块的装置,于一支撑区块中的该码片向量的一数目是基于该通信展开因素;组合具有符元次矩阵的一系统响应矩阵的装置,每一符元次矩阵包括来自每一通信的一支撑区块;以及使用该系统响应矩阵侦测该通信的数据的装置。
- 26如权利要求25所述的基地台,其特征在于该支撑区块中的该码片向量的该数目为被分割成该系统的一最大展开因素之内的该通信展开因素。
- 27如权利要求25所述的基地台,其特征在于该码片向量是行向量。
- 28如权利要求27所述的基地台,其特征在于每一支撑区块的码片中的一高度是该最大展开因素的数目加上该脉冲响应的一长度减1。
- 29如权利要求25所述的基地台,其特征在于该数据侦测装置使用一零强迫模式。
- 30如权利要求25所述的基地台,其特征在于该数据侦测装置使用一最小均方误差解决方法。
- 31如权利要求27所述的基地台,其特征在于每一符元次矩阵是该系统响应矩阵中比其它次响应矩阵低一最大展开因素的码片数目。
- 32如权利要求26所述的基地台,其特征在于该最大展开因素为16。
- 33一种基地台,用以接收具有不同展开因素的复数个通信讯号,每一通信具有一包含码片的相关码,该基地台包括:每一通信的每一码片的一建构系统响应区块,用以产生与一脉冲响应回旋的该码片的一向量;每一通信的一重新排列处理器,用以产生包括该码片向量的支撑区块,于一支撑区块中的该码片向量的一数目是基于该通信展开因素,并用以组合具有符元次矩阵的一系统响应矩阵,每一符元次矩阵包括来自每一通信的一支撑区块;以及一多使用者侦测器,用以使用该系统响应矩阵的侦测该通信数据。
- 34如权利要求33所述的基地台,其特征在于该支撑区块中的该码片向量的该数目为被分割成该系统的一最大展开因素之内的该通信展开因素。
- 35如权利要求33所述的基地台,其特征在于该码片向量是行向量。
- 36如权利要求35所述的基地台,其特征在于每一支撑区块的码片中的一高度是一最大展开因素的数目加上该脉冲响应的一长度减1。
- 37如权利要求33所述的基地台,其特征在于该多使用者侦测器使用一零强迫模式。
- 38如权利要求33所述的基地台,其特征在于该多使用者侦测器使用一最小均方误差解决方法。
- 39如权利要求35所述的基地台,其特征在于每一符元次矩阵是该系统响应矩阵中比其它符元次矩阵低一最大展开因素的码片数目。
- 40如权利要求34所述的基地台,其特征在于该最大展开因素为16。
Independent claims40
101 paragraphs, as filed
Multi-user detector with variable expansion factor
Technical field
The present invention generally relates to multiple access digital communication systems. In particular, the present invention relates to a multi-user detector system and a method for simultaneously receiving data from multiple users with different spreading factors.
Background technique
The multiple access communication system allows multiple users to access the same communication medium to transmit or receive information. This medium may include, for example, a network cable in a local area network or LAN, a copper cable in a traditional telephone system, or an air interface used in a wireless communication system.
A conventional multiple access communication system is shown in FIG. 1. This communication medium is called a communication channel. Communication technologies, such as frequency division multiple access, or FDMA, time division multiple access, or TDMA, carrier sensing multiple access or CSMA, code division multiple access or CDMA, and other technologies, allow more than one user to share the same Communication medium for access. These technologies can be mixed and used to produce mixed changes in multiple access methods. For example, the time division duplex or TDD mode of the third-generation W-CDMA standard is a combination of TDMA and CDMA.
An example of a conventional CDMA communication system is shown in FIG. 2. CDMA is a communication technology that transmits data in a spread spectrum (spread spectrum) by modulating the data to be transmitted with a pseudo-noise code. The data signal to be transmitted may only have a bandwidth of several kilohertz distributed in a frequency band of several million hertz. This communication channel is used by K independent sub-channels at the same time. For each sub-channel, all other sub-channels present interference.
As shown, a single sub-channel of a predetermined bandwidth is mixed with a unique spreading code that repeats a predetermined sequence generated by a wide-band, pseudo-noise (PN) sequence generator The pattern. These unique user expansion codes are usually similar to each other perpendicular to each other, so the cross-correlation between the expansion codes is close to zero. A data signal is modulated with a PN sequence that generates a digital spread spectrum signal. A carrier signal is then modulated with the digital spread spectrum signal and transmitted according to the transmission medium. A receiver demodulates and extracts the transmission of the digital spread spectrum signal. The transmitted signal is regenerated after being correlated with the matched PN sequence. When the expansion codes are perpendicular to each other, the received signal can be related to a specific user signal related to the specific expansion code. Therefore, only the desired user signal related to the specific expansion code is enhanced, while the signals of all other users Other signals have not been strengthened.
Each value of the spread code is called a chip, and has a chip rate that is the same as or greater than the data rate. The rate between the chip rate and the sub-channel data rate is the spreading factor.
In order to expand the possible range of data signal values, a symbol is used to represent more than two digital values. The three and four values use three and four symbols respectively. The concept of symbols allows a greater degree of information because the bit content of each symbol indicates a unique pulse shape. Depending on the symbol used, there are the same number of unique pulses or waveforms. The information at the source is converted into symbols, and the symbols are modulated and transmitted via sub-channels to be demodulated at the destination.
The spreading code in the CDMA system is selected to minimize the interference between a desired sub-channel and all other sub-channels. Therefore, the standard method for demodulating the desired sub-channels is to call all other sub-channels as interference, similar to showing their interference in the communication medium. The receiver designed for this program is a single user, matched filter and RAKE receiver.
Because different sub-channels do interfere with other sub-channels somewhat, another method is to demodulate all sub-channels at the receiver. The receiver can listen to all users transmitting at one time by executing the decoding algorithm of each sub-channel in parallel. This concept is called multi-user detection. Multi-user detection can provide important performance improvements in single-user receivers.
Referring to FIG. 3, which shows a system block diagram of a conventional CDMA receiver using a multi-messenger detector. The receiver can include such functions, such as radio frequency or RF down conversion and related filtering of radio frequency channels, analog to digital conversion or optical signal demodulation of a specific communication medium. The output of the receiver is a processed signal, either analog or digital, and includes an expanded signal of all active sub-channels. The multi-user detector performs multi-user detection and outputs a plurality of signals corresponding to each active sub-channel. All or a number of sub-channels smaller than the total number can be processed.
The ideal multi-user detector is an enhanced computing device that performs several complex arithmetic operations, and therefore it is difficult to implement economically. In order to minimize the cost, sub-ideal multi-user detectors, such as linear detectors, have been developed, requiring less computational complexity when the trade-off is close to the ideal detector performance. Linear detectors include decorrelator, minimum mean square error or MMSE detector, and zero forced block linear equalizer or ZF-BLEs.
Figure 4 shows a conventional linear multi-user detector for synchronous or asynchronous CDMA communications. The data output from the communication medium specific receiver (shown in Figure 3) is coupled to a sub-channel evaluator used to evaluate the impulse response of each transmitted symbol in the individual sub-channel. The linear detector uses the impulse response and a sub-channel evaluation spreading code to demodulate the data of each sub-channel. This data is output to the individual user's sub-channel data processing block.
In order to effect the parallel detection of K sub-channel users in the physical system, the linear multi-user detector method is implemented, like fixed gate arrays, microprocessors, digital signal processors or DSPs and the like. The fixed logic system allows greater system speed, while the microprocessor-oriented system provides programming flexibility. Responsible for the execution of a series of arithmetic operations for each implementation of the multi-user detector. To describe this function, the following variables usually define the structure and operation of a linear multi-user detector: K = the total number of active users/transmitters in the system Nc = the number of chips in a data block. The number of chips is required because of the variable expansion factor, and this number is the common point of measurement for all users.
W = the pulse response length of the communication channel in the chip. This is usually a predetermined parameter of the system.
Q(k)=expansion factor of user k. The expansion factor is equal to the number of chips used to expand one symbol of the user data. The system knows this unfolding factor in advance and does not need to evaluate them from the received data.
Ns(k) = the number of symbols transmitted by user k. Ns(k)=Nc/Q(k). NsT=Σk=1kNs(k)]]> the total number of symbols transmitted.
d(k) = data (information) transmitted by user k. The data is presented in the form of vectors, where a vector is a data matrix indicated by a single index variable. For the purpose of vector and matrix operations that it follows, all vectors are defined as row vectors. The nth element of d(k) is the nth symbol transmitted by the kth user.
h(k) = the impulse response of the sub-channel experienced by the user expressed as a vector. This amount needs to be evaluated at the receiver. The receiver evaluation of the sub-channel impulse response is called h(k). The elements h(k) of the vector are generally plural, which have amplitude and phase variables introduced by the sub-channels.
u(k)=expansion code of user k, expressed as a vector. For the purpose of linear multi-user detection, it is useful to consider a vector that contains the segment of the expansion code that expands a specific symbol. Therefore, the vector v(k, n) is defined as the expansion code used to expand the nth symbol transmitted by the kth user. Mathematically, it is defined as vi(k,n)=vi(k), for (n-1)Q(k)+1#I#nQ(k), and 0 for all other i, where i Is the index of the vector element.
r(k) = data representing user k, which is expanded by the expansion sequence v(k) and transmitted via the messenger sub-channel h(k). The vector r(k) represents the channel observation during the cycle time when a data block arrives.
The ith element of the vector r(k) can be defined as
ri(k)=Σn=1Ni(r)dn(k)Σj=1ωhj(k)vi-j+1(k,n)]]>The signal received by the receiver includes All user signals r(k) add noise. Therefore, we can define the received data vector r as follows:Σk=1k(k)+n]]> Program 2 The vector n of Program 2 represents the noise introduced by the communication channel.
Fig. 5 shows the system and method of the conventional linear multi-user detector. The evaluated sub-channel impulse response vector h(k) and expansion code v(k) are used to generate the system transmission response matrix for each user k. A matrix is a digital block indicated by two index variables and is arranged in a rectangular grid. The first index variable is a column index, and the second index variable is a row index.
The system transmission response matrix of user k is usually indicated as A(k). In the ith column, the nth row element is indicated as Ai,n(k) and defined as Aj,n(k)=Σj-iwhj(k)vi-j+1(k,n)]]>Program 3 Each row of the matrix A(k) corresponds to a matched filter response for a particular symbol transmitted by user k during the desired period. Referring to FIG. 5, the received data r is matched with the combination of all user expansion codes and sub-impulse responses. Therefore, A(k) contains the matched filter response of Ns(k). The row of A(k) has the following form: An(k)=O···Obn(k)O···O]]> Program 4 where each vector has dimension Q(k)+W- 1 Procedure 5
And offset (N-1)·Q(k) from the top of the matrix A(k) because the spread code is not periodic in symbol time; for i, j, bi(k) bj(k). Vector elements that may have a value of 0 are called vector supports. Therefore, An(k) is the support of bn(k).
Once the system transmission matrix of each user is generated, a total system transmission response matrix, called A, is generated by connecting the system transmission matrix of all users, as shown below: A=[A(j). .., A(k)..., A(k)] Procedure 7 According to the conventional modulation technique, the elements of h(k) can be plural. Subsequent non-zero elements of A can be plural.
An example of the transmission response matrix of all systems used by the conventional detector based on the assumptions of procedures 4, 5, 6, 7 isProcedure 8
For 2-bit (k=2) users, A(1) and A(2) have 16-chips in a data block (Nc=16), a channel impulse response of length 4 (W=4) and An expansion factor of the first user of two (Q(1)=2), and an expansion factor of the second user of four (Q(2)=4). In the generated total system transmission response matrix A, bn, i(k) indicates the channel response of the ith element of the combined system and the nth symbol of the kth user.
The received data r is processed using a bank representing the response of the matched filter and the entire system transmission response matrix A is processed to generate a vector of the output of the matched filter, which is denoted by y. The matched filtering operation is defined as y=AHr. Procedure 9 Matrix AH represents the Hermitian (or plural) transformation of matrix A. This conversion is defined as AijH=A~ji,]]> where the upper horizontal line represents the operation of taking a complex number of conjugates. The matched filter output is then multiplied by the inverse of a destination matrix O. The target matrix O represents an operation to distinguish the type of each linear receiver mode. It is derived from matrix A.
The zero-forced block linear equalizer (ZF-BLE) receiver is a linear receiver with a target matrix designated as O=AHA. The minimum mean square error block linear equalizer (MMSE-BLE) receiver is a linear receiver with a target matrix designated as O=AHA+σ2I, where σ2 is each symbol that appears in the received data vector r On the noise change, matrix I is the identity matrix. An identity matrix is a square and symmetric matrix, with 1 on its main diagonal and 0 elsewhere. The size of the identity matrix is chosen so that additional calculations are valid according to linear algebra.
For a decorrelator (decrerelation receiver), the matrix A is simplified by ignoring the channel response h(k) and only considering the spreading codes and their cross-correlation (interference) characteristics. A cross-correlation matrix is usually called R, and is generally constructed for connecting correlator-type receivers. This matrix can be constructed by assuming that W=1 and hi(k)=1 in the above definition of A (that is, the channel response of each sub-channel is a pulse). Subsequently, the cross-correlation matrix R is the target matrix O, as defined for the ZF-BLE receiver. A decorrelator is usually used as a one-time process of a more complex multi-user detection receiver. Once the target matrix is generated, the multi-user detector will invert this matrix and mark it as O-1.
The inversion of the target matrix is then multiplied by the matched filtered output vector y to produce an evaluation of the data vector d, where d(evaluation)=0-1y. The inversion of the target matrix is a complex and computational inversion process. The number of operations required to perform this processing increases with the cube of the size of the matrix O. For most asynchronous CDMA receivers, the size of O is very large, which makes the reversal process difficult to achieve.
To overcome this limitation and make the system actually reliable, Cholesky's digital method was used. Cholesky decomposition can effectively reduce the computational complexity of matrix O, if the matrix is banded.
A banded matrix is a square matrix that includes non-zero values only at a few diagonal corners away from the main diagonal. The number of non-zero diagonals close to the main diagonal with at least one non-zero element is called bandwidth. Therefore, a symmetric matrix M is called a band with a bandwidth p. If mij=0, for all j>i+p, program 10 where mij is an element of M, i is the column index and j is the row index. For a band matrix with size n and bandwidth p, Cholesky decomposition can reduce the required inverse digital operation of the target matrix O from the cube n3 with the size of the matrix to the square of the bandwidth multiplied by the size of the matrix. , Np2, change.
As discussed above, the target matrix of the ZF-BLE receiver is O=AHA. To illustrate the complexity of the numbers, the target matrix of the overall system response matrix A of Program 6 is o=xxx00000xx00xxxx0000xx00xxxxx000xxx00xxxxx00xxx000xxxxx00xxx000xxxxx0xxx0000xxxx00xx00000xxx00xxxxxx0000xx00xxxxxx0xxxx000xxxxxx0xxx0000xxxx00xx]]>Program 11, where 0 means all arithmetic operations produce a value other than 0 and x represents a value of 0. If the non-zero elements in the ith column and the jth row of the overall system response matrix A do not have the same vector index, the corresponding element of the target matrix O with the column index i and the row index j will be zero. The bandwidth of O (program 11) is equal to 9, because the 9 lines far away from the main diagonal have no non-zero elements.
The target matrix O, as it is in the conventional receiver shown in FIG. 5, is not properly banded. Therefore, Cholesky decomposition cannot be effectively used to reduce the complexity of the operation when the matrix O is inverted. However, the prior art discloses that when all users transmit with equal expansion factors, the rearrangement of the overall system transmission matrix A can be performed before calculating a target matrix O and adjusting the matrix O to a strip matrix. The system block diagram of this processing is shown in FIG. 6.
The process of calculating the rearrangement of the rows of the matrix A performs the rearrangement without requiring any additional information. This rearrangement reduces the computational complexity when arranging the inversion matrix. Once the detection process is completed, a user data vector d is calculated, a reverse rearrangement process is performed, and the descrambling vector d is returned to its original form for further processing.
In a typical asynchronous CDMA system, a rearrangement target matrix is at least 10 times smaller than its original size. Therefore, a saving of at least a factor of 100 in the processing time can be achieved when the Cholesky decomposition is performed on a target matrix based on a rearranged overall system response matrix. However, the prior art does not disclose the rearrangement method used when different expansion codes are used among multiple active users.
Therefore, it is desired to reduce the complexity of multi-user detection.
Summary of the invention
A plurality of communication signals have different expansion codes. Each communication has an associated code including chips. For each chip of each communication, a vector of chips convolved with an impulse response is generated. For each communication, a support block including a chip vector is generated. The number of chip vectors in a support block is based on the expansion factor of the communication. A system response matrix is combined. The system response matrix has a sub-matrix of symbols. Each symbol sub-matrix includes a supporting block from each communication. The communication data is detected using the symbol matrix.
Description of the drawings
Figure 1 is a schematic block diagram of a conventional multiple access communication system.
Figure 2 is a schematic block diagram of a conventional CDMA communication system.
Fig. 3 is a schematic block diagram of a conventional CDMA receiver with multi-user detection.
Figure 4 is a schematic block diagram of a conventional multi-user detector.
Fig. 5 is a block diagram of a conventional linear multi-user detector.
Fig. 6 is a block diagram of a conventional linear multi-user detector using Cholesky decomposition.
Fig. 7 is a block diagram of the linear multi-user detector of the present invention.
Figure 8 illustrates the up-to-down offset of the system response matrix A(k).
Figure 9 illustrates the assignment of matrix row index values.
10A and 10B are flowcharts of another method of implementing the present invention.
Fig. 11 illustrates the steps of combining-expanding factor group matrix AG(g).
Figure 12 illustrates the steps of assembling an AN matrix according to the present invention.
Figure 13 illustrates another combination of a system response matrix.
Figure 14 illustrates the system response matrix of a kth resource unit, Ak.
Figure 15 illustrates the first supporting block of a kth resource unit, B(1,k).
Figure 16 illustrates the steps of combining another system response matrix A.
detailed description
The embodiments will be described with reference to the drawings, in which the same numbers represent the same components.
Shown in FIG. 7 is a multi-user detector 17 that detects a plurality of users transmitting on a common CDMA channel after reception. The multi-user detector 17 includes a plurality of processors with auxiliary memory for performing various vector and matrix operations. Another embodiment includes fixed gate arrays and DSPs that perform the different processor functions. The detector 17 also includes a first input 19 for inputting the impulse response of individual k sub-channels called the vector h(k) to evaluate to the correct intermediate symbol interference or the ISI caused by the symbol of a sub-channel itself, and Multi-access interference or MAI of all received data signals caused by symbols from other users sub-channels. A second input 21 is used to input all user ks transmitted in discontinuous block time. Contains data in the form of an input vector r from the combined data of each user-owned channel, and an output 23 for outputting user data d in the form of an output vector from the received channel data r for each user k ( k). User K and the expansion factor Q(k) 41 of each user (k=1, 2, 3,...K) are known.
In order to obtain user data d(k) of a specific user from the combined user data r, the user data must be filtered using a matched filter 25 or the like. Those skilled in the art recognize that a matched filter 25 needs a response characteristic, which is a plurality of conjugates of the combination of the unfolded pulse shape and the user's sub-channel impulse response in order to generate an output that represents the signal level before transmission. A signal input to the filter 25 that does not match a predetermined response characteristic produces a lower output.
Each independent k sub-channel impulse response evaluation h(k) is input into a first memory 27, where the same user expansion code 29 (program) that generated the users system transmission response evaluation matrix A(k) 3) Combination. An arrangement processor 33 of the multi-user detector 17 performs reordering of all the rows of the matrix An(k). This arrangement method requires that each sub-channel system transmission response matrix A(k) has a row structure defined by procedure 4, which is a typical linear receiver. If the system response matrix A(k) is not in the form defined by the program 4, the arrangement processor 33 first rearranges the structure defined by the program 4 in some behaviors. The multi-user detector 17 does not require all system transmission response matrices A(k) to be concatenated as an overall system transmission response matrix A as defined in procedure 7.
The permutator 33 checks each system transmission matrix A(1), A(2) for the zero-valued elements from the support of each vector (program 4) defining the upper O(k)Tn and the lower O(k)Bn offset , A(3),...A(k). As mentioned earlier, each system transmission response matrix A(k) has the same number of columns; only the number of rows changes. As shown in FIG. 9, the arrangement processor 33 assigns an index value ni to each row of each system transmission response matrix A(k) based on its respective upper O(k)Tn and lower O(k)Bn effects. This row value is assigned in order of increasing size from the row with the smallest upper offset with the largest lower offset to the row with the largest upper offset with the smallest lower offset.
If the two rows encounter one with a larger upper shift and a larger lower shift than the other, if the difference between the upper shifts is greater than the difference between the lower shifts, the row with the lower upper shift Is assigned a lower index ni. If the difference between the lower offsets is greater than the difference between the upper offsets, the row with the larger lower offset is assigned a lower index ni. If the difference between the upper and lower offsets is the same, one of the two rows can be assigned a lower index ni.
The arrangement processor 33 assembles an overall system transmission response matrix AN into the order of the assigned row index ni. This row index ni is maintained in the memory 33 for use during the descrambling process 45. For example, using the overall system response matrices A(1) and A(2) shown in program 8, the arrangement method 17 of the present invention generates the overall system transmission matrix A as follows:
This arrangement method instructs the 8 rows (1-8) of the system transmission response matrix A(1) and the four rows (9-12) of the system transmission response matrix A(2) to produce a well-banded overall system transmission matrix A( Procedure 12).
The above-mentioned arrangement method embodiment includes the inspection of each system transmission response matrix A(1), A(2), A(3)...A(k), and comparing each row with each other row. O(k)Tn and lower O(k)Bn offset. Assuming the specific structure of the transmission response matrix A(k) of each system, that is, the rows of each matrix are arranged in the order of increasing up offset and decreasing down offset, when advancing from left to right (refer to the program 8. Matrix A(1), A(2)), another method 199 can be executed without directly checking the transmission response matrix A(k) of each system.
Another method 199 is shown in Figures 10A and 10B. All system transmission response matrices A(k) corresponding to (step 201) users with equal expansion factors are clustered together (step 203). For each expansion factor group g, the memory is configured in the processor to store all rows from all system transmission matrices A(1), A(2), A(3)...A(k). The expansion factor group g is arranged in the order of increasing expansion factors.
The exemplary system illustrating the performance of this other method 199 includes 7 different expansion factors Q(k) with 4 assigned as follows: User 1 (Q(1)) = 8 User 2 (Q(1)) = 8 User 3(Q(3))=8 User 4(Q(4))=32 User 5(Q(5))=16 User 6(Q(6))=16 User 7(Q (7))=4 System and method 199 using another method, the system transmission response matrix A(k) is separated into expansion factor groups: group 1 (expansion factor 4) A (7) group 2 (expansion factor 8) A (1), A(2), A(3) group 3 (expansion factor 16) A(5), A(6) group 4 (expansion factor 32) A(4) one other expansion factor group g includes at least one System transmission matrix A(k), where each matrix A(k) is any index from 1 to L(g). Each expansion factor group g is indexed according to the increased expansion factor size.
In each expansion factor group, the related system transmission response matrix A(k) is combined into a common expansion factor group transmission response matrix AG(g), where g=1, 2, 3,...G (step 205). As shown in Figure 11, method 199 copies the first row of the system transmission response matrix with index 1 to the first blank row of AG(g), and the first row of the system transmission response matrix with index 2 to AG(g). The second blank row; continue to go through the remaining system transmission response matrix in the individual expansion factor group g until all the first rows are copied. Method 199 is performed by copying the second row, third row, etc. of each matrix A(k) in the individual expansion factor group AG(g).
All matrices in the expansion factor group g have the same number of rows due to the same expansion factor. Therefore, the combined expanded group factor group transmission response matrix AG(g) will have L(g) times the number of rows in the relevant system transmission response matrix A(k).
In order to combine an overall system transmission response matrix AN with varying expansion factors, the expansion group factor group transmission response matrix AG(g) with the lowest expansion factor is successively copied into the memory (step 207), starting with the first row, also That is, the first row of AG(g) to the row of the first configuration of AN. The expansion group factor group transmission response matrix AG(g) with the lowest expansion factor has the largest number of rows. All other expanded group factor group transmission response matrices will be inserted into this basic matrix AN.
If the system expansion factor is other even integer multiples (step 209), the processor 33 combines the overall system transmission matrix AN( Step 211). For each expanded group factor group transmission response matrix AG(g), the processor 33 drives a row of displacement reference index m, m=n·Q(g)Q(1)-Q(g)2·Q(1)]] >where represents the expansion factor related to the group transmission response matrix AG(g) of the expansion group factor under consideration, Q(1) represents the lowest expansion code among all groups, and n is the transmission response matrix of the expansion group factor group under consideration The row of AG(g), where n=1, 2, 3,...N (step 211).
To use the row displacement index m, use the total number of the system transmission response matrix L(1) to establish the expansion group factor group transmission response matrix with the lowest expansion factor to derive a reference position in AN (step 215), mHL(1) procedure 14 Under consideration, the processor 33 uses the system transmission response matrix belonging to the expansion factor group currently under consideration to derive a row set from the expansion group factor group transmission response matrix AG(g) (step 217), L(g)H(n -1)+1 to L(g)Hn program 15 processor 33 copies the line set defined by program 15 from AG(g) and inserts it after the line of AG(1) with the reference position defined by program 14 The basic matrix AN is shown in Figure 12. The remaining rows of the expansion factor group matrix under consideration are likewise copied and inserted into the basic matrix AN (step 211). After all rows from one expansion factor group matrix are replaced, the processor 33 selects the next expansion factor group matrix AG(g) (step 223) and executes the above method. Procedures 13, 14, 15 allow the ith row from the remaining expanded group factor group transmission response matrix AG(g) to be placed after the mth row with similar support in AN (step 225).
When the system expansion factor is not other even integer multiples, the right side of the program 13 indicates that an integer is not generated. In this case, the processor 33 will approximate the result of the program 13 to the nearest integer above or the nearest integer below this value (step 213). This approximation direction has a negligible effect on the overall system performance. The order considered by the transfer matrix AG(g) of the remaining group system may have some influence on the system performance. The knowledge of the conventional unfolding factors can be used to select the appropriate sequence in advance.
Using the permutation technique described above, and for the case when the expansion factors are even integer multiples of each other, a matrix bandwidth B can be achieved, which can be expressed as: ([W-1QMAX]·Σk=1kQMAXQ (k))B(([W-1QMAX]+1)·Σk=1KQMAXQ(k))-1]]> Program 16 Program 16 Predict the bandwidth of the overall system transmission response matrix of Program 11 It will be 3 and 6. The inspection of program 12 reveals that the bandwidth after each permutation method 199 is 4.
This improvement becomes more obvious when the number of symbols transmitted increases. If the system transmits 16000 chips of the first user (800 symbols for the first user and 400 symbols for the second user), the bandwidth of the matrix AHA will be about 800. Using this arrangement method to generate an overall system response matrix A, the bandwidth of ANHAN remains 4 because the bandwidth (procedure 16) is independent of the number of transmitted symbols. After all the elements of the target matrix O have been derived, a reversal 41 is performed. Because the complexity of reversing a matrix is proportional to the square of the bandwidth, the present invention 17 provides a reduction in the computational complexity of a factor of approximately (800/4)2=2002=40,000.
The overall system transmission response matrix AN provides response characteristics to the matched filter 25. Each row of the system response matrix AN is a vector representing the response characteristic of a specific symbol. The received data vector r is input to the matched filter 25, where it is matched with each response feature from the overall system transmission response matrix AN to generate a matched filter output vector y. Each element of the output vector y corresponds to a preliminary evaluation of a specific symbol transmitted by a predetermined user. The output vector y from the matched filter 25 is loaded into a multiplier 43 with an inversion target matrix O. The matched filter 25 output vector y and the inversion target matrix O are multiplied together to generate a user data vector d. The user data vector d contains all data transmitted from all users during the discontinuous time block. Because the target matrix O and the matched filter 25 output are based on the overall system response matrix AN, the user data vector d must be descrambled. This descrambling procedure is the reversal of permutation method 199.
A descrambler 45 rearranges each element of the user data vector d based on the row rearrangement performed when undergoing the rearrangement method 199. The elements of the data vector d are in the same order indicated by the overall transmission response matrix A, 1, 9, 2, 3, 10, 4, 5, 11, 6, 7, 12, 8, and are transposed vertically. . The descrambler 45 configures a memory space having the same size and places each vector element in a consecutive order of 1-12. After the user data vector d is descrambled, the user data is output 23 for further processing.
Another method for reducing the bandwidth of the system transmission response matrix A is shown in FIG. 13, FIG. 14, and FIG. 15, and is explained in comparison with the flowchart in FIG. 6. Figure 13 illustrates the symbol element response matrix A. The A matrix is set so that it has an S symbol sub-matrix. S is the minimum number of symbols, so a data area of a resource unit in the system may have S=Nc/QMAX. Nc is the number of chips in the data area. QMAX is the maximum expansion factor of the system, for example, an expansion factor of 16. To illustrate the time-sharing duplex burst pattern 2, Nc is 1104 and a typical maximum delay expansion QMAX is 16. Therefore, the A matrix contains 69 (Nc/QMAX) sub-matrices.
Each time the matrix has a supporting block B(s, k) for each of K received resource units. s represents the sub-matrix of symbols from 1 to S, and k represents the number of resource units from 1 to K.
For each resource unit, a system response matrix can be established. This matrix has one row for each symbol of the resource unit, Nc/Qk rows. Qk is the kth resource unit expansion factor. Each row has a row of blocks b(k, i) of one ith row. Each block has a row length of the resource unit symbol impulse response length Lr plus 1, Lr+1. For the first block B(k, 1) (far left) of the matrix, the upper part of the block is the upper part of the matrix. Each block is a symbol, Qk, whichever is lower in the matrix. For illustration, the row block of the second row b(k, 2) is a Qk chip lower than b(k, 1) in the matrix.
Each row of block b(k, i) corresponds to an ith symbol of the kth resource unit. It is derived by multiplying the ith section of the scramble code and the kth resource unit chip-by-chip with the channel impulse response of the section, as in step 17, step 300.
b(k,i)=(c(k,i)*cscram(k,i))θh(k)]]> program 17c(k,i) is the ith section of the kth code. cscram (k, i) is the ith section of the scrambling code. h(k) is the channel response of the kth resource unit. Therefore, the length of each row block of the kth resource unit is Qk+Lr-1.
The row blocks of the resource unit system response matrix A1 to Ak are used to generate the support blocks of the symbol sub-matrix of FIG. 13. Figure 15 illustrates a supporting block B(k, 1) of a kth resource unit in the first symbol block. The support block B(k, 1) has the row QMAX/Qk. To illustrate, if the maximum expansion factor of the system is 16 (QMAX=16) and the expansion factor of the resource unit is 1 (Qk=1), the support block B(k, 1) has 16 rows. Conversely, if the resource unit expansion factor is 16, the supporting block B(k, 1) has 1 row.
It is the first supporting block from a kth resource unit, and the first row block QMAX/Qk of the resource unit system response matrix Ak is obtained. The first row of the supporting block has the first block row of the system response matrix K. The upper part of the first block row in the supporting block is located on the upper part of the supporting block. The overall height of the generated support block is QMAX+Lr-1, regardless of the expansion factor Qk, step 302.
Figure 13 shows the supporting blocks in the symbol sub-matrix B(a, k). Each symbol sub-matrix has an sth supporting block B(s, k) for each resource unit, step 304. Alternatively, the row block b(k, i) can be obtained from the Ak matrix or directly inserted into the symbol sub-matrix B(s, k). Each block row b(k, i) of the supporting block is obtained from a block row of the resource unit Ak matrix. The rows of the matrix from the one-symbol sub-block are b(k, x+1) to b(k, x+QMAX/QK). x comes from program 18.
X=(s-1)*QMAX/Qk The program 18 is a specific resource unit k, and each block contains the QMAX/Qk of the row block of the resource unit. The upper part of the first row in the support block is on the upper part of the support block. Each subsequent row is the lower QMAX/Qk chip in the supporting block.
As shown in FIG. 13, each symbol sub-block has a supporting block B(s, k) for each resource unit. Although the resource units can be arranged in any order and still achieve a reduced bandwidth, by placing the resource units transmitted with a lower expansion factor outside each matrix block, the bandwidth can be further reduced. For illustration, the first row block of the first support of the first matrix is Lr. If the expansion factor is 16 (Q1=16), the length of the block in the first row is 15+Lr. These additional 15 chips increase the overall bandwidth. With the last row of the last support of the last matrix, this is still true. However, in some implementations, the potential reduction in bandwidth may not be more important than the increased complexity for rearranging the order of resource units.
The Sth symbol sub-matrix has a supporting block for each resource unit, step 304. Because each support block has the same height, each time the matrix has the same height of QMAX+Lr-1 chips, and each time the width of the matrix is M, as in procedure 19.
M=Σk=1KQMAX/Qk]]>Program 19
The first symbol sub-matrix is located in the upper right corner of the system response matrix A. Each subsequent matrix falls further along the side of the previous matrix and QMAX chips. The overall height of A matrix is Ns*QMAX+Lr-1, and the overall width is M*Ns. As shown in Figure 13, the structure of the A matrix greatly reduces the bandwidth. In addition, the complexity of deriving this reduced bandwidth A matrix is small.
In actual communication stations, the A matrix may include several sub-matrices due to the difference in fruitness sampling and transmission or reception. The receiver at the user equipment or at the base station can sample the received vector r at multiple chip rates, for example at two or four times the chip rate. In addition, you can use transmit or receive differences. For a system that uses oversampling and transmission/reception differences, the A matrix can be regarded as a primary matrix with each combination of samples from oversampling and from that difference. To illustrate, a receiver can sample at twice the chip rate that generates even and odd samples. This receiver can also differ in two spatial antennas. Antenna 1 and Antenna 2 receive signals. Therefore, an even set is in antenna 2 and an odd set is in antenna 1, an odd set is in antenna 1, an even set is in antenna 2, and an odd set is in antenna 2. In this case, the received signal can be in the mode described in procedure 20.
A=A1,oA1,eA2,oA2,e]]>Program 20A10 corresponds to antenna 1 and even samples. A1, S correspond to antenna 1 and odd samples. A2, e correspond to antenna 2 and even samples.
In the general case, where multiple chip rate sampling is used and n antennas are used, A can be formed by program 21.
A=A1,1···A1,n···Am,1···Am,n]]> Program 21 is to reduce the bandwidth of the A matrix. The bandwidth reduced by the technique of reducing the bandwidth. When the A matrix is used in the data detection method, the reduced bandwidth of each matrix reduces the bandwidth of the A matrix.
Although the present invention has been described using preferred embodiments, the changes within the scope of the present invention that have been pointed out in the following patent applications are obvious to those skilled in the art.
16 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14 Sheet 15 Sheet 16
81 members in 19 offices
Priority claims8
| Document | Office | Kind | Date |
|---|---|---|---|
| 10174121 | United States of America | – | |
| 17412102 | United States of America | A | |
| 17412102 | United States of America | A | |
| 0318438 | United States of America | W | |
| 0318438 | United States of America | W | |
| 10174121 | – | – | – |
| US20020174121 | – | – | – |
| WO2003US18438 | – | – | – |
Members81
| Document | Office | Kind | |
|---|---|---|---|
| CA2385082A1 | Canada | A1 | |
| CA2617242A1 | Canada | A1 | |
| WO0122610A1 | World Intellectual Property Organization (WIPO) | A1 | |
| AU2636500A | Australia | A | |
| NO20021307D0 | Norway | D0 | |
| NO20021307L | Norway | L | |
| NO20081291L | Norway | L | |
| BR0014206A | Brazil | A | |
| KR20020038934A | Republic of Korea | A | |
| EP1214796A1 | European Patent Office (EPO) | A1 | |
| TW493321B | Taiwan Province of China | B | |
| IL148607D0 | Israel | D0 | |
| CN1376338A | China | A | |
| DE1214796T1 | Germany | T1 | |
| US2002176392A1 | United States of America | A1 | |
| HK1046338A1 | Hong Kong, China | A1 | |
| US2003021249A1 | United States of America | A1 | |
| JP2003510884A | Japan | A | |
| MXPA02002819A | Mexico | A | |
| WO03107688A2 | World Intellectual Property Organization (WIPO) | A2 | |
| AU2003248665A1 | Australia | A1 | |
| AU2003248665A8 | Australia | A8 | |
| TW200401517A | Taiwan Province of China | A | |
| WO03107688A3 | World Intellectual Property Organization (WIPO) | A3 | |
| US6714527B2 | United States of America | B2 | |
| WO0122610A9 | World Intellectual Property Organization (WIPO) | A9 | |
| US2004165567A1 | United States of America | A1 | |
| KR20040097241A | Republic of Korea | A | |
| EP1214796B1 | European Patent Office (EPO) | B1 | |
| AT287149T | Austria | T | |
| ATE287149T1 | Austria | T1 | |
| TW200505180A | Taiwan Province of China | A | |
| KR20050013580A | Republic of Korea | A | |
| DE60017424D1 | Germany | D1 | |
| EP1513266A1 | European Patent Office (EPO) | A1 | |
| DK1214796T3 | Denmark | T3 | |
| EP1525696A2 | European Patent Office (EPO) | A2 | |
| KR20050039883A | Republic of Korea | A | |
| CN1201499C | China | C | |
| KR100493750B1 | Republic of Korea | B1 | |
| KR100495758B1 | Republic of Korea | B1 | |
| ES2234566T3 | Spain | T3 | |
| TWI237455B | Taiwan Province of China | B | |
| EP1525696A4 | European Patent Office (EPO) | A4 | |
| HK1046338B | Hong Kong, China | B | |
| CN1663160AThis record | China | A | |
| CN1674456A | China | A | |
| KR20050096205A | Republic of Korea | A | |
| JP2005530424A | Japan | A | |
| DE60017424T2 | Germany | T2 | |
| EP1525696B1 | European Patent Office (EPO) | B1 | |
| AT335324T | Austria | T | |
| ATE335324T1 | Austria | T1 | |
| DE60307282D1 | Germany | D1 | |
| KR100630861B1 | Republic of Korea | B1 | |
| US7136369B2 | United States of America | B2 | |
| CN1897473A | China | A | |
| ES2270098T3 | Spain | T3 | |
| TW200718046A | Taiwan Province of China | A | |
| IL148607A | Israel | A | |
| IL182118D0 | Israel | D0 | |
| DE60307282T2 | Germany | T2 | |
| JP2008017520A | Japan | A | |
| CA2385082C | Canada | C | |
| JP4083740B2 | Japan | B2 | |
| NO325841B1 | Norway | B1 | |
| US2008198828A1 | United States of America | A1 | |
| CN100425010C | China | C | |
| US7443828B2 | United States of America | B2 | |
| US2009046692A1 | United States of America | A1 | |
| SG152901A1 | Singapore | A1 | |
| IL182118A | Israel | A | |
| JP4365063B2 | Japan | B2 | |
| TWI318828B | Taiwan Province of China | B | |
| CA2617242C | Canada | C | |
| KR100959325B1 | Republic of Korea | B1 | |
| US7778232B2 | United States of America | B2 | |
| TWI342680B | Taiwan Province of China | B | |
| IL195539A | Israel | A | |
| US8116220B2 | United States of America | B2 | |
| CN1663160B | China | B |
6 legal events, as 2 offices reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | Office | |
|---|---|---|---|
| Termination of patent right or utility modelEXPY | EXPY | CN | |
| Grant of patent or utility modelGrantedC14 | C14 | CN | |
| Applications withdrawn, deemed to be withdrawn, or refused after publication in hong kongWithdrawnWD | WD | HK | |
| Requests to designate patent in hong kongDE | DE | HK | |
| Entry into substantive examinationC10 | C10 | CN | |
| PublicationC06 | C06 | CN |
Numbers
- Publication
- 1663160
- Publication, DOCDB
- 1663160
- Publication, EPODOC
- CN1663160
- Application
- 38143089
- Application, DOCDB
- 03814308
- Application, EPODOC
- CN2003814308
Titles2
- Chinese
- 可变展开因素的多使用者侦测器
- English
- Multi-user detector with variable expansion factor
Classification
- CPC, 6
- H04B1/71052
- H04B1/7103
- H04B1/7105
- H04B2201/70703
- H04B2201/70705
- H03M13/23
- IPC, 3
- H04B1 7103
- H04B1 707
- H04B7 155