METHOD AND NODE IN A WIRELESS COMMUNICATION NETWORK

20190020512 ยท 2019-01-17

    Inventors

    Cpc classification

    International classification

    Abstract

    Transmitting device for a wireless communication system and method therein for transmitting data. The transmitting device comprises a processor, configured to: obtain a channel response (h); determine pre-processing coefficients (g.sub.0, g.sub.1, g.sub.2) of a pre-processor structure, based on the obtained channel response (h); and pre-process the data, based on the pre-processor structure and the determined pre-processing coefficients (g.sub.0, g.sub.1, g.sub.2). The transmitting device comprises a transmitter, configured to transmit the pre-processed data.

    Claims

    1. A transmitting device in a wireless communication system, the transmitting device comprising: a processor configured to: obtain a channel response; determine processing coefficients based on the channel response; and process the data based on the processing coefficients to generate processed data; and a transmitter configured to transmit the processed data to a receiving device.

    2. The transmitting device according to claim 1, wherein the processor is further configured to: select a processor structure based on the channel response, wherein the processor structure includes a number of processing steps; and inform the receiving device about the processor structure.

    3. The transmitting device according to claim 1, wherein the transmitting device operates in a Frequency Division Duplex mode, the transmitting device further comprising: a receiver; wherein the transmitter is further configured to transmit a pilot signal; and wherein the receiver is configured to receive the channel response based on the pilot signal transmitted by the transmitter.

    4. The transmitting device according to claim 1, wherein the transmitting device operates in a Time Division Duplex mode, the transmitting device further comprising: a receiver configured to receive an uplink pilot signal from the receiving device; wherein the processor is further configured to obtain the channel response by computing the channel response based on the uplink pilot signal received by the receiver.

    5. The transmitting device according to claim 1, wherein processing the data based on the processing coefficients is based on:
    a.sub.k=g.sub.0.Math.u.sub.k+g.sub.1.Math.u.sub.k1, wherein g.sub.0 and g.sub.1 are the processing coefficients, u.sub.k and u.sub.k1 are input data, k is an index, and a.sub.k is the processed data.

    6. The transmitting device according to claim 1, wherein processing the data based on the processing coefficients is based on:
    a.sub.k=g.sub.0.Math.u.sub.k+g.sub.1.Math.u.sub.k1+g.sub.2.Math.u.sub.k2, wherein g.sub.0, g.sub.1, and g.sub.2 are the processing coefficients, u.sub.k, u.sub.k1, and u.sub.k2 are input data, k is an index, and a.sub.k is the processed data.

    7. The transmitting device according to claim 1, wherein the processing coefficients comprise g.sub.0 and g.sub.1, and determining the processing coefficients is based on:
    g.sub.0=1/2; and
    g.sub.1=1/2.

    8. The transmitting device according to claim 1, wherein determining the processing coefficients is based on finding a minimum Euclidean distance of inter symbol interference trellis based on the channel response.

    9. A method for transmitting data, the method comprising: obtaining, by a transmitting device in a wireless communication system, a channel response; determining, by the transmitting device, processing coefficients based on the channel response; processing, by the transmitting device, data based on the processing coefficients to generate processed data; and transmitting the processed data to a receiving device.

    10. The method according to claim 9, further comprising: selecting a processor structure based on the channel response, wherein the processor structure includes a number of processing steps; and informing the receiving device about the processor structure.

    11. The method according to claim 9, wherein the transmitting device operates in a Frequency Division Duplex mode, the method further comprising: transmitting a pilot signal to the receiving device; wherein the channel response is received from the receiving device based on the pilot signal.

    12. The method according to claim 9, wherein the transmitting device operates in a Time Division Duplex mode, the method further comprising: receiving an uplink pilot signal transmitted by the receiving device; wherein the channel response is computed based on the uplink pilot signal.

    13. The method according to claim 9, wherein processing the data based on the processing coefficients is based on:
    a.sub.k=g.sub.0.Math.g.sub.0.Math.u.sub.k+g.sub.1.Math.u.sub.k1, wherein g.sub.0 and g.sub.1 are the processing coefficients, u.sub.k and u.sub.k1 are input data, k is an index, and a.sub.k is the processed data.

    14. The method according to claim 9, wherein processing the data based on the processing coefficients is based on:
    a.sub.k=g.sub.0.Math.u.sub.k+g.sub.1.Math.u.sub.k1+g.sub.2.Math.u.sub.k2, wherein g.sub.0, g.sub.1, and g.sub.2 the processing coefficients, u.sub.k, u.sub.k1, and u.sub.k2 are input data, k is an index, and a.sub.k is the processed data.

    15. A non-transitory computer readable storage medium storing a computer program with program code that when executed cause a transmitting device to perform the steps of: obtaining a channel response; determining processing coefficients based on the channel response; processing data based on the processing coefficients to generate processed data; and transmitting the processed data to a receiving device.

    16. The computer readable storage medium according to claim 15, the steps further comprising: selecting a processor structure based on the channel response, wherein the processor structure includes a number of processing steps; and informing the receiving device about the processor structure.

    17. The computer readable storage medium according to claim 15, wherein the transmitting device operates in a Frequency Division Duplex mode, the steps further comprising transmitting a pilot signal to the receiving device; wherein the channel response is received from the receiving device based on the pilot signal.

    18. The computer readable storage medium according to claim 15, wherein the transmitting device operates in a Time Division Duplex mode, the steps further comprising: receiving an uplink pilot signal transmitted by the receiving device; wherein the channel response is computed based on the uplink pilot signal.

    19. The computer readable storage medium according to claim 15, wherein processing the data based on the processing coefficients is based on:
    a.sub.k=g.sub.0.Math.u.sub.k+g.sub.1.Math.u.sub.k1, wherein g.sub.0 and g.sub.1 are the processing coefficients, u.sub.k and u.sub.k1 are input data, k is an index, and a.sub.k is the processed data.

    20. The computer readable storage medium according to claim 15, wherein processing the data based on the processing coefficients is based on:
    a.sub.k=g.sub.0.Math.u.sub.k+g.sub.1.Math.u.sub.k1+g.sub.2.Math.u.sub.k2, wherein g.sub.0, g.sub.1, and g.sub.2 are the processing coefficients, u.sub.k, u.sub.k1, and u.sub.k2 are input data, k is an index, and a.sub.k is the processed data.

    Description

    BRIEF DESCRIPTION OF THE DRAWINGS

    [0048] Various embodiments are described in more detail with reference to attached drawings, illustrating examples of embodiments of the invention in which:

    [0049] FIG. 1 is a block diagram illustrating a wireless communication system according to an embodiment of the invention.

    [0050] FIG. 2A is a signalling scheme illustrating pre-processing of data at a transmitting device, which is sent to a receiving device according to an embodiment.

    [0051] FIG. 2B is a signalling scheme illustrating pre-processing of data at a transmitting device, which is sent to a receiving device according to an embodiment.

    [0052] FIG. 3A is a block diagram illustrating BER performance against SNR, according to an embodiment.

    [0053] FIG. 3B is a block diagram illustrating BER performance against SNR, according to an embodiment.

    [0054] FIG. 3C is a block diagram illustrating BER performance against SNR, according to an embodiment.

    [0055] FIG. 3D is a block diagram illustrating BER performance against SNR, according to an embodiment.

    [0056] FIG. 4 is a flow chart illustrating a method in a transmitting device according to an embodiment.

    [0057] FIG. 5 is a block diagram illustrating a transmitting device according to an embodiment.

    DETAILED DESCRIPTION

    [0058] Embodiments of the invention described herein are defined as a transmitting device and a method in the transmitting device, which may be put into practice in the embodiments described below. These embodiments may, however, be exemplified and realised in many different forms and are not to be limited to the examples set forth herein; rather, these illustrative examples of embodiments are provided so that this disclosure will be thorough and complete.

    [0059] Still other objects and features may become apparent from the following detailed description, considered in conjunction with the accompanying drawings. It is to be understood, however, that the drawings are designed solely for purposes of illustration and not as a definition of the limits of the herein disclosed embodiments, for which reference is to be made to the appended claims. Further, the drawings are not necessarily drawn to scale and, unless otherwise indicated, they are merely intended to conceptually illustrate the structures and procedures described herein.

    [0060] FIG. 1 is a schematic illustration over a wireless communication network 100 comprising a transmitting device 110, for communication of signals, data and/or data packets over a wireless interface with a receiving device 120.

    [0061] The transmitting device 110 may according to some embodiments be configured for wireless downlink transmission and may be referred to, respectively, as e.g., a base station, Node B, evolved Node Bs (eNB, or eNode B), base transceiver station, Access Point Base Station, base station router, Radio Base Station (RBS), macro base station, micro base station, pico base station, femto base station, Home eNodeB, sensor, beacon device, relay node, repeater or any other network node configured for communication with the receiving device 120, over a wireless interface, depending, e.g., of the radio access technology and/or terminology used.

    [0062] The receiving device 120 may correspondingly be represented by, e.g. a wireless communication terminal, a mobile cellular phone, a Personal Digital Assistant (PDA), a wireless platform, a mobile station, a tablet computer, a portable communication device, a laptop, a computer, a wireless terminal acting as a relay, a relay node, a mobile relay, a Customer Premises Equipment (CPE), a Fixed Wireless Access (FWA) nodes or any other kind of device configured to communicate wirelessly with one or more transmitting devices 110, according to different embodiments and different vocabulary.

    [0063] It is to be noted that the illustrated network setting of one transmitting device 110 and one receiving device 120 in FIG. 1 is to be regarded as a non-limiting example of an embodiment only. The wireless communication network 100 may comprise any other number and/or combination of transmitting devices 110 and/or receiving devices 120 may thus be involved in some embodiments of the disclosed invention.

    [0064] Thus whenever one or a/an transmitting device 110 and/or receiving device 120 is referred to in the present context, a plurality of transmitting devices 110 and/or receiving devices 120 may be involved, according to some embodiments.

    [0065] The wireless communication may be made over a wireless interface comprising, or at least being inspired by radio access technologies such as e.g. 3GPP LTE, LTE-Advanced, E-UTRAN, UMTS, GSM, GSM/EDGE, WCDMA, Time Division Multiple Access (TDMA) networks, Frequency Division Multiple Access (FDMA) networks, Orthogonal FDMA (OFDMA) networks, Single-Carrier FDMA (SC-FDMA) networks, Worldwide Interoperability for Microwave Access (WiMax), or Ultra Mobile Broadband (UMB), High Speed Packet Access (HSPA) Evolved Universal Terrestrial Radio Access (E-UTRA), Universal Terrestrial Radio Access (UTRA), GSM EDGE Radio Access Network (GERAN), 3GPP2 CDMA technologies, e.g., CDMA 2000 1RTF and High Rate Packet Data (HRPD), or similar technology, just to mention some few possible options, within the wireless communication system 100.

    [0066] According to the disclosed solution, a pre-processing method is applied to overcome ISI, while maintaining the receiving device complexity at low level, i.e. a relatively simple receiving device 120.

    [0067] In some embodiments, a two-tap pre-processing is utilised. Alternatively, a three-tap pre-processing may be utilised in some embodiments, as will be discussed.

    [0068] The output data given in the two-tap pre-processor is on the form:


    ak=g0.Math.uk+g1.Math.uk1 [Equation 1]

    where g0 and g1 are the two taps, which are may be referred to as pre-processing coefficients, uk and uk1 are input data and ak is the pre-processed data to be transmitted by the transmitting device.

    [0069] The disclosed solution can improve the channel estimation performance by increasing the minimum Euclidean distance and the solution has been validated through simulations. Contrary to previously known solutions which perform only for the specific channel conditions and need a large number of taps which will exponentially increase the complexity of the receiving device 120, the disclosed solution works well for large range of channel conditions and require low complexity of the receiving device 120.

    [0070] The provided method and transmitting device may function a bit different when operating in Frequency Division Duplex (FDD) mode and in Time Division Duplex (TDD) mode.

    [0071] The FDD mode embodiment is schematically illustrated in FIG. 2A while the TDD mode embodiment is illustrated in FIG. 2B.

    [0072] FIG. 2A thus presents an embodiment of the pre-processing method in an FDD environment.

    [0073] The transmitting device 110 transmits a pilot signal, which is received by the receiving device 120. The receiving device 120, makes signal measurements on the pilot signal as it is received and return a channel response h back to the transmitting device 110.

    [0074] The pilot signal may be transmitted periodically, in some embodiments, at a predetermined or configurable time interval. The pilot signal comprises pilot symbols which are predefined and known at the receiving device 120. At the receiving device 120, the received pilot signal is compared with the expected ideal pilot signal and based upon the result of such comparison, the channel response h may be prepared and returned.

    [0075] In the wireless communication network 100, the transmitting device 110 obtains the channel response h, via feedback from the receiving device 120 in the FDD system by measuring pilots sent from the transmitting device 110.

    [0076] Then, through pre-processing, at the transmitting device 110, it will result in an equivalent channel where the equivalent channel is the result of the pre-processor/pre-processing processing concatenated with the channel response h, i.e. a compensation is made for the transmission deviation from an ideal signal reception, as measured and determined by the receiving device 120 and reported in the channel response h.

    [0077] The disclosed pre-processor (according to Equation 1) has only two taps. Hence the complexity which is caused upon the receiving device 120, corresponding the pre-processing, is moderate.

    [0078] Taking a two-tap pre-processor as an example, the pre-processing coefficients for the pre-processor, represented by g0 and g1 in Equation 1 are determined according to the measurement on the channel response h, as mentioned below when a two-tap pre-processor is selected. In some optional embodiments, determining the pre-processing coefficients based on the channel response h, also applies to the three-tap pre-processor.

    [0079] The principle to choose coefficients g 0 and g1 for the pre-processor is that the minimum Euclidean distance of the equivalent channel (by concatenating pre-processing and channel response h) shall be greater than the minimum Euclidean distance of the channel, in some embodiments.

    [0080] Below is the procedure of the determination of two taps (i.e. the pre-processor coefficients g0 and g.sub.1), whether two taps or three taps, the criteria may be the same.

    [0081] 1. Keep square sum of the taps to be unity. One can therefore start with initial values satisfying this criterion.

    [0082] 2. Find the minimum Euclidean distance of inter symbol interference trellis which is based on the channel response for a given modulation scheme.

    [0083] 3. Find the minimum Euclidean distance of a combined response of pre-processor and channel.

    [0084] 4. Determine taps (i.e. pre-processor coefficients g0 and g1), which provide a longer minimum distance.

    [0085] As the channel taps change, the minimum distance changes. When then regarding the overall new minimum distance and selecting the taps of the pre-processor, subject to the condition that the sum of squares of the taps being unity to keep the energy the same at the transmitting device side, so that the new minimum distance is greater than that of the prior art. As an example, the minimum distance can be computed using e.g., Dijkstra's algorithm at the transmitting device 110.

    [0086] Dijkstra's algorithm is an algorithm for finding the shortest paths between nodes in a graph in general.

    [0087] According to the disclosed solution, the channel response is h, the pre-processor is g. The equivalent channel after pre-processing then becomes: f=h.Math.g, where .Math. represents discrete convolution.

    [0088] The received pilot signal at the receiving device 120 is given by:

    [00001] z k = .Math. i = 0 L - 1 .Math. .Math. f i .Math. a k - i + n k [ Equation .Math. .Math. 2 ]

    where a is the signal symbol sequence in the time domain, the noise nk is white noise, i and k are indices, L is a limit value; and the (pre-processed) channel response is given by:


    f.sup.T=[f.sub.0f.sub.1 . . . f.sub.L1]. [Equation 3]

    [0089] Typically, the receiving device 120 may use e.g. the Viterbi algorithm to carry out Maximum Likelihood Sequence Estimation (MLSE) based on the distance d between two symbol sequences, which can be decided as:


    d.sup.2=f.sup.TAf [Equation 4]

    [0090] This is obtained based on the fact, that the distance can be represented using the difference (error) symbols mapped through the ISI trellis diagram. The matrix A is the error correlation matrix. The elements are thus obtained from error symbol sequence. The matrix A is a Toeplitz matrix with the main diagonal element being the largest.

    [0091] The pre-processing may in some embodiments be set to:


    g.sup.T=[g.sub.0=1/{square root over (2)} g.sub.1=1/{square root over (2)}]

    as for a large variety of channel response h, the pre-processor can be kept as the same hence selecting g0, g1 will be similar for different channel responses. Also for quite different channel coefficients, one pre-processor solution is sufficient; the pre-processor solution is robust for high speed scenario where channel response, and thereby also the channel coefficients g0, g1, can vary very much.

    [0092] The criterion for selection of g0 and g1 is the minimum distance of the combined response which is f. In some embodiments, the coefficients g0, g1 may be kept at fixed values, at least for some channel response types. For example: g0=1/2; g1=1/2.

    [0093] Thereby, the complexity of processing is further reduced.

    [0094] In some alternative embodiments, a multi tap pre-processor such as e.g. a three-tap pre-processor may be selected instead of the above discussed two-tap pre-processor, based on the same selection principles. An advantage therewith is that the pre-processor may generate transmission data better adapted to reduce the corrupted effect of the communication channel than the two-tap pre-processor in some embodiments, while still involving low computational complexity.

    [0095] Multi tap is a possibility in some embodiments, which may be utilised when the increase in minimum distance is smaller than when implementing the two-tap embodiment. The values may be selected conditioned on the energy being normalised (subject to the condition the sum of squares of taps being unity to keep the energy the same at transmitting device 110).

    [0096] A three-tap pre-processor may be based on the form:


    a.sub.k=g.sub.0.Math.u.sub.k+g.sub.1.Math.u.sub.k1+g.sub.2.Math.u.sub.k2 [Equation 5]

    [0097] Besides, the disclosed low/moderate complex pre-processor can be coupled with channel coding scheme for better gains, in some embodiments.

    [0098] FIG. 2B presents an embodiment of the pre-processing method, similar to the one presented in FIG. 2A, but in a TDD environment.

    [0099] The receiving device 120 transmits an uplink pilot signal, or reference signal such as e.g. a Sounding Reference Signal (SRS). When this is received at the transmitting device 110, a channel response h may be computed, based on the received pilot signal.

    [0100] Based on the thereby obtained channel response h, pre-processing may be performed at the transmitting device 110, resulting in an equivalent channel where the equivalent channel is the result of the pre-processor/pre-processing concatenated with the channel response, for the purpose of eliminating or at least reducing signal deterioration due to properties of the communication channel.

    [0101] A pre-processor structure and pre-processing coefficients g0, g1, g2 are then determined according to similar criterions and principles as already discussed above when discussing FIG. 2A and the FDD embodiment.

    [0102] Also, the receiving device 120 may be informed about the selected pre-processor structure in some embodiments. Such information may be explicitly or implicitly communicated, e.g. by a reference or by being predetermined by a standard under certain criterion, for example.

    [0103] Thereafter, data to be transmitted by the transmitting device 110 is transformed using the selected pre-processor structure and pre-processing coefficients g0, g1, g2 and transmitted to the receiving device 120, where it is decoded by the receiving device 120.

    [0104] FIG. 3A presents an illustration over BER performance against SNR according to an embodiment.

    [0105] The worst Euclidean distance strictly decreases with the length of ISI. This means that two symbol sequences can be very close in a Euclidean distance sense, in the presence of certain ISI components, which implies that the BER performance becomes significantly worse.

    [0106] The figure illustrates the best performance for any channel, where the curves overlap with L=1, L=3 channel. L is the number of interfering symbols which contribute to Inter-Symbol Interference; this is a parameter to characterise channel time dispersion. L=1 corresponds to an ideal channel without inter-symbol interference and higher L corresponds to higher inter-symbol interference, in general.

    [0107] FIG. 3B presents an illustration over BER performance against SNR according to an embodiment, where L=3 worst case and modified L=4 channel.

    [0108] FIG. 3C presents an illustration over BER performance against SNR according to an embodiment, where L=4 worst case and modified L=5 channel.

    [0109] FIG. 3D presents an illustration over BER performance against SNR according to an embodiment, where L=5 worst case and modified L=6 channel.

    [0110] FIGS. 3A-3D show that certain worst case ISI channels may be converted into zero ISI ones in terms of BER performance, in some embodiments.

    [0111] FIG. 4 illustrates embodiments of a method 400 for use in a transmitting device 110 for a wireless communication system 100, for transmitting data wirelessly to a receiving device 120.

    [0112] To appropriately transmit data, the method 400 may comprise a number of actions 401-407.

    [0113] It is however to be noted that any, some or all of the described step 401-407, may be performed in a somewhat different chronological order than the enumeration indicates, be performed simultaneously or even be performed in a completely reversed order according to different embodiments. Some actions such as e.g. step 401A, 401B, 403, and/or 405 may be performed within some, but not necessarily all embodiments. Further, it is to be noted that some steps may be performed in a plurality of alternative manners according to different embodiments, and that some such alternative manners may be performed only within some, but not necessarily all embodiments.

    [0114] Any, some or all of steps 401-407 may in some embodiments be periodically reperformed. The method 400 may comprise the following actions:

    [0115] Step 401A, which only may be performed in some embodiments when the transmitting device 110 is operating in FDD mode, comprises transmitting a pilot signal to be received by the receiving device 120.

    [0116] Step 401B, which only may be performed in some embodiments when the transmitting device 110 is operating in TDD mode, comprises receiving an uplink pilot signal, transmitted by the receiving device 120.

    [0117] Step 402 comprises obtaining a channel response h.

    [0118] In some embodiments, wherein the transmitting device 110 is operating in FDD mode and step 401A has been performed, the obtained channel response h may be received from the receiving device 120.

    [0119] In some embodiments, wherein the transmitting device 110 is operating in TDD mode and step 401B has been performed, the obtained channel response h may be computed based on the received uplink pilot signal, received from the receiving device 120.

    [0120] Step 403, which only may be performed in some embodiments, comprises selecting a pre-processor structure, based on the received 402 channel response h.

    [0121] Thus, in some embodiments, a two-tap pre-processor structure may be selected, in other embodiments, a two-tap pre-processor structure may be selected, e.g. based on the channel response h and thereby the deterioration of the transmission channel.

    [0122] Step 404 comprises determining pre-processing coefficients g0, g1, g2 of a pre-processor structure, based on the received 402 channel response h.

    [0123] The pre-processor structure may in some embodiments be on the form: ak=g0.Math.uk+g1.Math.uk1, where g0 and g1 are the pre-processing coefficients, uk is input data and ak is the pre-processed data to be transmitted.

    [0124] The pre-processing coefficients g0, g1 of the pre-processor structure may be determined into g0=1/2; g1=1/2, in some embodiments.

    [0125] Further, in some embodiments, the pre-processor structure may be on the form: ak=g0.Math.uk+g1.Math.uk1+g2.Math.uk2, where g0, g1 and g2 are the pre-processing coefficients, uk is input data and ak is the pre-processed data to be transmitted.

    [0126] In some alternative embodiments, the pre-processing coefficients g0, g1, g2 of the pre-processor structure may be determined by: setting the square sum of pre-processing coefficients g0, g1, g2 of the pre-processor structure into 1, as an initial value; finding a minimum Euclidean distance of inter symbol interference trellis, based on the obtained channel response h; finding the minimum Euclidean distance of the combined response of pre-processor structure and channel; and determining pre-processing coefficients g0, g1, g2 which provide a higher minimum distance.

    [0127] Step 405 comprises informing the receiving device 120 about the selected 403 pre-processor structure, i.e. two-tap pre-processor structure or three-tap pre-processor structure in different embodiments.

    [0128] Such information may be explicitly sent to the receiving device 120 in some embodiments. In some embodiments, a reference may be made according to a previously made agreement or standard, known by both the transmitting device 110 and the receiving device 120, such as e.g. 0 may mean two-tap pre-processor structure and 1 may mean three-tap pre-processor structure, or vice versa. In yet some embodiments, the receiving device 120 may determine the pre-processor structure based on a standard agreement and based e.g. on the channel response h according to the same criterion as the transmitting device 110 in step 403.

    [0129] Step 406 comprises pre-processing data to be transmitted to the receiving device 120, based on the pre-processor structure (i.e. two-tap pre-processor structure or three-tap pre-processor structure, possibly selected in step 403) and the determined 404 pre-processing co-efficients g0, g1, g2.

    [0130] Step 407 comprises transmitting the pre-processed 406 data, to be received by the receiving device 120.

    [0131] FIG. 5 illustrates an embodiment of system 500 for performing at least some method steps 401-407 of the above described method 400. The system 500 comprises a transmitting device 110 for a wireless communication system 100, for transmitting data wirelessly to a receiving device 120.

    [0132] The transmitting device 110 is configured to obtain a channel response h. The transmitting device 110 is further configured to determine pre-processing coefficients g0, g1, g2 of a pre-processor structure, based on the received channel response h. Furthermore, the transmitting device 110 is also configured to pre-process data to be transmitted to the receiving device 120, based on the pre-processor structure and the determined pre-processing coefficients g0, g1, g2. Additionally, the transmitting device 110 is further configured to transmit the pre-processed data to be received by the receiving device 120.

    [0133] The transmitting device 110 is configured to perform the method 400 according to any, some, all, or at least one of the enumerated steps 401-407, according to some embodiments.

    [0134] For enhanced clarity, any internal electronics or other components of the transmitting device 110, not completely indispensable for understanding the herein described embodiments has been omitted from FIG. 5.

    [0135] The transmitting device 110 may in some embodiments be configured to select a pre-processor structure, based on the received channel response h. Furthermore, the transmitting device 110 may be configured to inform the receiving device 120 about the selected pre-processor structure.

    [0136] In addition, the transmitting device 110 may be configured to operate in FDD mode and transmit a pilot signal to be received by the receiving device 120 and wherein the obtained channel response h may be received from the receiving device 120.

    [0137] Further in some alternative embodiments the transmitting device 110 may be configured to operate in TDD mode and receive an uplink pilot signal, transmitted by the receiving device 120. Also, the obtained channel response h may be computed based on the received uplink pilot signal.

    [0138] In some embodiments, the transmitting device 110 may be configured to determine pre-processing coefficients g0, g1, g2 of a pre-processor structure on the form: ak=g0.Math.uk+g1.Math.uk1, where g0 and g1 are the pre-processing coefficients, uk is input data and ak is the pre-processed data to be transmitted.

    [0139] In some alternative embodiments, the transmitting device 110 may be configured to determine pre-processing coefficients g0, g1, g2 of a pre-processor structure on the form: ak=g0.Math.uk+g1.Math.uk1+g2.Math.uk2, where g0, g1 and g2 are the pre-processing coefficients, uk is input data and ak is the pre-processed data to be transmitted.

    [0140] Furthermore, the transmitting device 110 may also be configured to determine the pre-processor structure into: g0=1/2; and g1=1/2, in some embodiments.

    [0141] The transmitting device 110 may also be configured to determine the pre-processing coefficients g0, g1, g2 of the pre-processor structure by: setting the square sum of pre-processing coefficients g0, g1, g2 of the pre-processor structure into 1, as an initial value; finding a minimum Euclidean distance of inter symbol interference trellis, based on the obtained channel response h; finding the minimum Euclidean distance of the combined response of pre-processor structure and channel; and selecting pre-processing coefficients g0, g1, g2 which provide a higher minimum distance.

    [0142] The transmitting device 110 comprises a receiver 510, configured to receive uplink signals from the receiving device 120 as shown in step 401B.

    [0143] Further, the transmitting device 110 comprises a processor 520, configured to perform at least some of the previously described method steps 402-406 according to the method 400 for transmitting data and pilot signal to the receiving device 120 as illustrated in step 407 and step 101A, respectively.

    [0144] Such processor 520 may comprise one or more instances of a processing circuit, i.e. a Central Processing Unit (CPU), a processing unit, a processing circuit, an Application Specific Integrated Circuit (ASIC), a microprocessor, or other processing logic that may interpret and execute instructions. The herein utilised expression processor may thus represent a processing circuitry comprising a plurality of processing circuits, such as, e.g., any, some or all of the ones enumerated above.

    [0145] The transmitting device 110 also comprises a transmitter 530, configured to transmit pre-processed data, to be received by the receiving device 120.

    [0146] In further addition, the transmitting device 110 may comprise at least one memory 525, according to some embodiments. The optional memory 525 may comprise a physical device utilised to store data or programs, i.e., sequences of instructions, the channel response, the pre-processor structure, on a temporary or permanent basis. According to some embodiments, the memory 525 may comprise integrated circuits comprising silicon-based transistors. Further, the memory 525 may be volatile or non-volatile.

    [0147] At least a sub-set of the previously described method steps 401-407 to be performed in the transmitting device 110 may be implemented through the one or more processors 520 in the transmitting device 110, together with a computer program product for performing the functions of at least some of the method steps 401-407. Thus a computer program product, comprising instructions for performing the method steps 401-407 may transmit data to the receiving device 120, when the computer program is loaded into the processor 520 of the transmitting device 110.

    [0148] Thereby a computer program product may comprise a computer readable storage medium storing program code thereon for use by the transmitting device 110, for transmitting data to the receiving device 120. The computer program product may be provided for instance in the form of a data carrier carrying computer program code for performing at least some of the method steps 401-407 according to some embodiments when being loaded into the processor 520. The data carrier may be, e.g., a hard disk, a CD ROM disc, a memory stick, an optical storage device, a magnetic storage device or any other appropriate medium such as a disk or tape that may hold machine readable data in a non-transitory manner. The computer program product may furthermore be provided as computer program code on a server and downloaded to the transmitting device 110 remotely, e.g., over an Internet or an intranet connection.

    [0149] The terminology used in the description of the embodiments as illustrated in the accompanying drawings is not intended to be limiting of the described method 400 and transmitting device 110. Various changes, substitutions and/or alterations may be made, without departing from the invention as defined by the appended claims.

    [0150] As used herein, the term and/or comprises any and all combinations of one or more of the associated listed items. The term or as used herein, is to be interpreted as a mathematical OR, i.e., as an inclusive disjunction; not as a mathematical exclusive OR (XOR), unless expressly stated otherwise. In addition, the singular forms a, an and the are to be interpreted as at least one, thus also possibly comprising a plurality of entities of the same kind, unless expressly stated otherwise. It will be further understood that the terms includes, comprises, including and/or comprising, specifies the presence of stated features, actions, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, actions, integers, steps, operations, elements, components, and/or groups thereof. A single unit such as e.g. a processor may fulfil the functions of several items recited in the claims. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used to advantage. A computer program may be stored/distributed on a suitable medium, such as an optical storage medium or a solid-state medium supplied together with or as part of other hardware, but may also be distributed in other forms such as via Internet or other wired or wireless communication system.