In the following, the invention will be described in greater detail with reference to the embodiments and the accompanying drawings, in which
The present invention is applicable to various telecommunication systems. A typical non-limiting example of a system to which the invention can be applied is UMTS (Universal Mobile Telecommunication System) and the evolutions of UMTS.
Let us take a closer look at
The cellular telecommunication system may be divided into a core network (CN) 100, a radio access network (RAN) 102, and a mobile station (MS) 104.
The RAN 102 includes a base station system (BSS) 106, which includes a base station controller (BSC) 108 and base stations (BTS) 110, 112 and 114. A base station system, a base station controller and a base station may also be called a radio network subsystem (RNS), a radio network controller (RNC) and node B, correspondingly.
The structure of the core network 100 supports both circuit-switched connections and packet-switched connections.
A Mobile Services Switching Center MSC 116 is the center of the circuit-switched side of the core network 100. The functions of the mobile services switching center 116 include: switching, paging, location registration of user equipment, handover management, collecting subscriber billing information, encryption parameter management, frequency allocation management and echo cancellation. The number of mobile services switching centres 116 may vary: a small network operator may be provided with a single mobile services switching center 116, but larger core networks 100 may be provided with several.
Larger core networks 100 may comprise a separate Gateway Mobile Services Switching Center GMSC 118 handling the circuit-switched connections between the core network 100 and external networks 120. The gateway mobile services switching center 118 is located between the mobile services switching centers 116 and the external networks 120. The external network 120 may for instance be a Public Land Mobile Network PLMN or a Public Switched Telephone Network PSTN.
The network elements described in
A Serving GPRS Support Node SGSN 122 is the center of the packet-switched side of the core network 100. The main task of the serving GPRS support node 122 is to transmit and receive packets with the user equipment 104 supporting packet-switched transmission using the base station system 106. The serving GPRS support node 122 includes subscriber data and location information concerning the user equipment 104.
A Gateway GPRS Support Node GGSN 124 is the corresponding part on the packet-switched side to the gateway GMSC 118 on the circuit-switched side. The gateway GPRS support node 124 must be able to route the outgoing traffic from the core network 100 to external networks 126. In this example, the Internet represents the external networks 126.
The base station system 106 is composed of a Base Station Controller BSC 108 and Base Transceiver Stations or Base Stations BTS 110, 112 and 114. The base station controller 108 controls the base stations 110, 112 and 114. In principle, the aim is to place the equipment implementing the radio path and the functions associated therewith in the base station 110, 112 and 114 and to place the control equipment in the base station controller 108.
The base station 110, 112 and 114 is responsible for creating physical carriers. Typically, one base station serves one cell, but a solution is also possible in which one base station 110, 112 or 114 serves several sectorized cells. The base station 110, 112 and 114 has following functions: calculations of timing advance, measurements in the uplink direction, channel coding, encryption, decryption, and frequency hopping, for example.
The subscriber terminal 104 includes at least one transceiver that implements the radio connection to the radio access network 102 or to the base station system 106. In addition, the subscriber terminal 104 typically comprises an antenna, a processor controlling the operation of the device, and a battery. Many kinds of subscriber terminals 104 with various properties exist, for instance vehicle-mounted and portable terminals.
A terminal requires a radio channel when it communicates with a base station during a call, for example. A radio channel is allocated to the terminal in a network element of the telecommunication system responsible for channel allocation.
Equalization may be applied both in uplink and downlink directions.
The receiver comprises an antenna 200 which receives a signal transmitted by a transmitter. The received signal may comprise multipath propagated components. These signal components propagated via different paths arrive at the receiver at different times. A WCDMA receiver may utilize multipath diversity, i.e. combine the signal components. However, to enhance signal quality, equalization may be applied to the received signal.
The signal is taken to a radio frequency unit 202 which filters and amplifies the signal. The amplified signal is taken to a converter 204 which converts the signal into a digital form. From the converter the signal is taken to base band parts 206 of the receiver. The receiver may comprise a controller 220 which controls the operations of the different parts of the receiver. The controller may be realized using a processor and appropriate software.
The base band parts 206 comprise a channel estimator 208 calculating estimates for the channel as experienced by the received signal. The estimates may be formulated as a channel coefficient matrix H.
The channel coefficient matrix H is taken to a coefficient solver 210 which determines equalization filter coefficients w. The coefficients w are taken to a finite impulse response filter 212 which performs equalization to the received signal by filtering the signal. The tap values of the filter are determined by the calculated coefficients. The equalized signal is taken to despreader 214 which despreads the received signal. From the despreader the signal is taken to another part of the receiver (not shown).
w=H*(HH*+sI)−1δ, (1)
where superscript * denotes a complex conjugate, s is channel noise variance, and δ is Kronecker delta vector. The noise variance is obtained in the channel estimation unit 208.
The coefficient solver 210 comprises a correlation matrix calculation unit 300, which is configured to calculate a correlation matrix
A=HH*+sI (2)
which is an L×L Hermitian Toeplitz matrix with real valued entries on the diagonal. The dimension L is a constant integer depending on the parameters of the telecommunication system. The terms on the diagonal include a signal to noise estimate. When determining the equalization filter coefficients the correlation matrix A should be inverted. The calculation of the inverse of a large matrix is a complex problem requiring computational power.
The coefficient solver 210 comprises a circulant matrix calculation unit 302 which is configured to convert the channel correlation matrix A into a circulant form. A circulant matrix is a special kind of Toeplitz matrix where each column vector is circularly shifted one element downwards relative to the preceding column vector. In the conversion, elements of the matrix are copied over other elements and thus some information is lost. However, it is well known in the art that the quality of the equalization coefficients is only negligibly worsened due to the conversion. The converted matrix may be denoted as C and it takes the following form:
where the terms r1, . . . , rm are estimates of channel covariance. The diagonal term r1 is a real number.
In some systems, such as in an WCDMA system employing HSDPA, there is no need for constructing the circulant matrix C. The equalization coefficients may be calculated using the channel correlation matrix A. This is due to the system properties.
In an embodiment of the invention, equalization filter coefficients are determined by applying a first transform on the real parts of a first subset of the terms of the first column of the circulant matrix and applying a second transform on the imaginary parts of a second subset of the terms of the first column of the circulant matrix.
In an embodiment, the first subset and the second subset exclude at least one term of the first column. In following, the first subset comprises L/2+1 terms, and the second subset comprises L/2−1 terms, where L is the total number of terms in the first column. However, the invention is not limited to these values. For example, embodiments where subsets comprise less than L/2−1 terms of the first column may easily be designed.
The coefficient solver 210 comprises a tap coefficient calculation unit 304. The tap coefficient calculation unit is configured to determine the equalization filter coefficients w. In general, the purpose is to determine a vector
which is the Dth column of the matrix C−1, the inverse of the matrix C. The calculation of w comprises determining the inverse of matrix C. However, because in this case the matrix C is circulant and Hermitian, it is sufficient to determine only the subvector
of the first L/2+1 components of only the first column w0 of C−1. The other L/2−1 components of the first column may be then obtained as conjugates of these components on the basis of relation
because the matrix C and also C−1 is circulant and Hermitian. From this follows that the Dth column wD for an arbitrary D=0, 1, . . . , L−1, may be obtained by a circular shift for D positions down from w1.
Next, let us define a few notations and definitions. In following, notations Re( ) and Im( ) are used for the real and imaginary part of a scalar or vector variable. In addition, for a vector denoted x a notation x(n:m) is used to denote the subvector of x consisting of components indexed n through m.
Let us denote C1L/2+1 as the (L/2+1)×(L/2+1) matrix with entries bn cos(πnm/(L/2)), n,m=0, . . . , L/2, bn=1, n=1, . . . , L/2−1 and b0=bL/2=1/2. This matrix is a lightly modified matrix of the well-known Type 1 Discrete Cosine Transform (DCT) matrix of order L/2+1, which consists of entries bmbn cos(πnm/(L/2)), n,m=0, . . . , L/2, bn=1, n=1, . . . , L/2−1, and b0=bL/2=1/√{square root over (2)}. It is well known in the art that the Type 1 DCT of order N+1 may be computed with a fast algorithm which requires (N/2)log2 N−3N/4 multiplications and (3N/2)log2 N−N/2 additions. Since a transform using the matrix C1L/2+1 differs from a (L/2+1)-point Type 1 DCT only in the scaling of two inputs and two outputs, there exists also a fast algorithm for implementing a transform using the matrix C1L/2+1 requiring four extra multiplications at most compared to a fast (L/2+1)-point Type 1 DCT. Therefore, the complexity of the transform with the matrix C1L/2+1 is not greater than (L/4)log2 L−5L/8+4 multiplications and (3L/4)log2 L−L additions.
Furthermore, let us denote S1L/2−1 as the (L/2−1)×(L/2−1) matrix of the Type 1 Discrete Sine Transform (DST) with entries sin(πnm/(L/2)), n,m=1, . . . , L/2−1. It is to be noted that also for this transform there exists a fast algorithm with the complexity of (L/4)log2L−3L/4 multiplications and (3L/4)log2 L−7L/4−log2 L+3 additions.
Using the above notation, it can be stated that for an arbitrary L×L circulant Hermitian matrix C with real entries on the main diagonal, the real and the imaginary parts of a subvector
Re(
where
p=[p
0
, p
1
, . . . , p
L/2
]=C
1
L/2+1(Re(c0(0:L/2))), (8)
s=[s
0
, s
1
, . . . , s
L/2−1
]=S
1
L/2−1(Im(c0(1:L/2−1))), (9)
c0 is the first column of the matrix C and Q=diag(q) is a diagonal matrix with the vector q=[q0, q1, . . . , qL/2+1] on its main diagonal such that
q
0=1/p0, q1=1/(pi2−si2), i=1, . . . , L/2−1, qL/2=1/pL/2. (10)
With reference to the flowchart of
In step 400, the (L/2+1)-point subvector c0(0:L/2) of the first column c0 of the circulant Hermitian matrix C is read as an input to the tap coefficient calculation unit. In the case of an HSDPA receiver, this is the same as the (L/2+1)-point subvector of the first components in the first column of the original Toeplitz matrix A and therefore there is no need for constructing the circulant matrix C.
In step 402, vectors p and s are determined according to equations 8 and 9. For this, a (L/2+1)-point fast transform is implemented with the matrix C1L/2+1 over the vector Re(c0(0:L/2) and a (L/2−1)-point fast Type 1 DST over the vector Im(c0(1:L/2−1). Note that a total of (L/2)log2 L−11L/8+4 real multiplications and (3L/2)log2 L−11L/4−log2 L+3 real additions are performed in this step.
In step 404, vector q=[q0, q1, . . . , qL/2+1] is determined according to equation 10. For this, L−2 real multiplications, L/2−1 real additions, and L/2+1 real divisions are performed.
In step 406, the vectors p and q obtained in step 402 are point-wise multiplied by the components of the vector q obtained in step 404. In this step a total of L real multiplications are needed.
In step 408, the real and the imaginary parts of the vector
Thus, at this phase the subvector
In step 412 the obtained equalization filter coefficients w are taken to the finite impulse response filter 212 which performs equalization to the received signal by filtering the signal.
It should be noted that, the proposed method may easily be modified so that even smaller than L/2−1 sized transforms are implemented. In fact, it is sufficient to implement a modified cosine transform of size m+1 and a sine transform of size m−1, where m is the width of the nonzero tap of the input circulant Hermitian matrix C of equation (3) (or the number of nonzero terms in the first column of the correlation matrix A). However, since fast algorithms for cosine and sine transforms are known for the cases where m is a power of two, it is more reasonable to implement transforms of sizes M+1 and M−1 where M=2[log
It is possible to implement the proposed solution both in hardware and in software. Taking into account that, on one hand, some flexibility of the matrix size is always desirable and that, on the other hand, real time performance is needed, a mixed software/hardware solution where a program implements the proposed algorithm on a special purpose hardware platform looks most attractive.
In Tables 1 and 2 the complexity of the proposed solution is compared to prior art Fast Fourier Transform solutions.
As can be seen from the tables, the number of operations in both solutions is approximately the same if complex operations are assumed in the FFT-based method to be similar as the real operations in the proposed method. However, in general, one complex multiplication costs approximately four real multiplications and two real additions, while one complex addition costs two real additions. The operation counts with respect to these costs are presented in the last three columns of the Table 2. Taking into account these costs of complex operations, the proposed method is approximately four times less costly than the prior art FFT-based method. Even larger gain may be achieved in the cases where smaller transforms (of orders L/4+1 and L/4−1 or L/8+1 and L/8−1, etc.) are possible to implement in order to invert an m-tap circulant Hermitian matrix with m<L/2.
The proposed solution takes into account that the matrix C is not only circulant but also Hermitian with a real-valued main diagonal. Thus, the number of required operations may be reduced by approximately a factor of four. Instead of implementing an L-point complex-valued FFT, an (L/2)-point real-valued fast Type-1 Discrete Cosine Transform (FDCT-1) and fast Type-1 Discrete Sine Transform (FDST-1) are implemented. This leads to reduced implementation time (due to fewer operations) as well as the required memory and data movements (due to shorter arrays). Since less computation is needed, the power consumption of receivers may be reduced. This is important especially as regards mobile receivers.
Embodiments of the invention may be realized in a receiver of a telecommunication system comprising one or more controllers and calculation units. The controller and calculation units may be configured to perform at least some of the steps described in connection with the flowchart of
The computer program may be stored on a computer program distribution medium readable by a computer or a processor. The computer program medium may be, for example but not limited to, an electric, magnetic, optical, infrared or semiconductor system, device or transmission medium. The computer program medium may include at least one of the following media: a computer readable medium, a program storage medium, a record medium, a computer readable memory, a random access memory, an erasable programmable read-only memory, a computer readable software distribution package, a computer readable signal, a computer readable telecommunications signal, computer readable printed matter, and a computer readable compressed software package.
Embodiments of the invention may be realized in a general signal processor comprising one or more controllers and calculation units. The signal processor may be utilized in general signal processing applications where matrix inversion of a circulant Hermitian is used. Examples of such applications are signal processing, differential equation solution and numerical analysis. The controller and calculation units may be configured to perform at least some of the steps described in connection with the flowchart of
Even though the invention has been described above with reference to an example according to the accompanying drawings, it is clear that the invention is not restricted thereto but can be modified in several ways within the scope of the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
20065276 | Apr 2006 | FI | national |