WO2017006362A1 - Wireless communication system, wireless communication method and medium - Google Patents

Wireless communication system, wireless communication method and medium Download PDF

Info

Publication number
WO2017006362A1
WO2017006362A1 PCT/JP2015/003373 JP2015003373W WO2017006362A1 WO 2017006362 A1 WO2017006362 A1 WO 2017006362A1 JP 2015003373 W JP2015003373 W JP 2015003373W WO 2017006362 A1 WO2017006362 A1 WO 2017006362A1
Authority
WO
WIPO (PCT)
Prior art keywords
streams
sub
matrix
groups
channel
Prior art date
Application number
PCT/JP2015/003373
Other languages
French (fr)
Inventor
James Awuor Okello
Original Assignee
Nec Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nec Corporation filed Critical Nec Corporation
Priority to PCT/JP2015/003373 priority Critical patent/WO2017006362A1/en
Publication of WO2017006362A1 publication Critical patent/WO2017006362A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/02Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas
    • H04B7/04Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas
    • H04B7/0413MIMO systems
    • H04B7/0452Multi-user MIMO systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/02Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas
    • H04B7/04Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas
    • H04B7/06Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station
    • H04B7/0613Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station using simultaneous transmission
    • H04B7/0615Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station using simultaneous transmission of weighted versions of same signal
    • H04B7/0617Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station using simultaneous transmission of weighted versions of same signal for beam forming

Definitions

  • the present invention relates to a wireless communication system, a wireless communication method and a medium. Further, the present invention relates especially to a wireless communication system where multiple streams of data that are to be transmitted to multiple receiving units or modules or terminals, using same medium or channel, with signal transmitted from multiple transmitting modules or transducers, wherein all the streams use the same channel, and where in this case the same channel refers to sharing the same frequency band or subcarrier, same spreading code as in CDMA (Code Division Multiple Access), same space as in a sector or cell of a cellular system, and same time slot as in TDMA (Time Division Multiple Access).
  • CDMA Code Division Multiple Access
  • TDMA Time Division Multiple Access
  • frequency is divided into a number of orthogonal frequency channels also known as subcarriers, by using FFT (Fast Fourier Transform) or IFFT (Inverse Fast Fourier Transform), where in a frequency selective channel [NPL3], each of the OFDM subcarriers can be considered to be experiencing a flat fading (frequency non-selective). Therefore, a signal y l (k) of a receiver at OFDM subcarrier (or frequency band) with index "l” can be modeled mathematically as in Eq. (1).
  • y l (k) x l (k)h l (k) + s l (k) (1)
  • x l (k) represents a signal that was mapped to subcarrier with index "l”
  • h l (k) is channel gain or loss experienced at subcarrier with index “l”
  • s l (k) is noise at the receiver experienced at subcarrier with index “l”
  • "k” is a time index of OFDM symbol.
  • signals 90-s1, 90-s2 received by all the receiving antennas 70-1, 70-2 at subcarrier index "l” can be modeled mathematically at the receiver system 80 using a baseband model as indicated in Eq. (2). ...(2)
  • Eq. (2) illustrates a single MIMO system or a point-to-point MIMO system, or a multi-point-to-point MIMO system
  • the transmitting system 10 (transmitter (Tx) 20) as indicated in FIG. 1 could comprise at least two transmitters (transmitting subunits or sub-systems) 20, unit#1 Tx1 and unit#2 Tx2, as shown in FIG. 2, where unit#1 has at least one transmitting antenna 40-1, and unit#2 also has at least one transmitting antenna 40-3.
  • These two units, i.e., unit#1 Tx1 and unit#2 Tx2 could be co-located or distributed in space, but have the possibility to exchange information using a link 120-1.
  • the link 120-1 could be wireless, or optical, or any other communication media that enable communication between the at least two units Tx1 and Tx2.
  • This kind of implementation is normally referred to as coordinated transmission [NPL4], but can still be modeled as Eq. (2).
  • An alternative name includes CoMP (Coordinated Multipoint) transmission, or Cloud-RAN (Cloud Radio Access Network) with distributed radio units [NPL5].
  • the method as taught by Spenser [NPL7] is a linear interference cancellation approach that employs block diagonalization of the MIMO channel matrix H.
  • Other linear methods such as ZF (Zero-Forcing), MMSE (Minimum Mean Square Error) [NPL9], linear phased array antenna, and MRT (Maximum Ratio Transmission) could also be considered. All these methods fall under a wider class of linear beamforming technique.
  • FIG. 3 shows a general mode of implementing a transmitting system for MU-MIMO, with the system 20 having a stage for beamforming using a known technology.
  • signals to be transmitted that is signal #1 10-1 and signal #2 10-2 are meant for receiver #1 90-1, while signal #(2K-1) 10-(2K-1) and signal #2K 10-2K are meant for receiver #K 90-K. If there are two receiver terminals Rx, then signal #2K 10-K will be represented as signal #4 10-4, while signal #(2K-1) 10-(2K-1) will be represented as signal #3 10-3.
  • the beamforming processing unit (or method) 900 includes a process or method that multiplies signals to be transmitted with a precoding matrix, using a method as explained in [NPL7], and the overall effective MIMO channel H e as seen by the pre-processed signals can be represented as shown in Eq.
  • H ek is the effective channel for receiver number "k,” and it has been assumed that there are a total of "K” receiving modules within the MU-MIMO system as illustrated in FIG. 3.
  • the symbol "0" in Eq. (4) represents a matrix that has zero entries, or very small valued entries in comparison to matrix H ek . It is therefore logical to also say that is a diagonal matrix, or a square matrix, or a rectangular matrix, or a lower triangular matrix, or an upper triangular matrix. ...(4)
  • the overall effective channel H e basically converts an MU-MIMO system into multiple independent SU-MIMO systems.
  • the MU-MIMO system will not be converted to multiple independent single MIMO systems by the beamforming processing unit 900 (or precoding), but rather the conversion will lead to multiple independent MU-MIMO systems, also referred to as logical module in the present invention.
  • each of the physical module such as a first physical module Rx#1 90-1 and a second physical module Rx#2 90-2, must therefore each perform interference cancellation from its counterparts (Rx#1 and Rx#2) within the logical module 90-G1, based on the assumption that they share the same channel.
  • Patent literatures [PTL2], [PTL3] the receiving antennas of a physical module are considered as separate module, although in this case, signal received by multiple antennas on a physical module can coordinate, and perform signal processing for interference mitigation or cancellation.
  • Patent literatures [PTL2] and [PTL3] also teach about setting a subset (or group) for each antenna of each receiver module, which implies that as the number of receiver modules and its corresponding number of antennas increases, the number of matrix inversion also increases, an issue which could raise computational load problem in a case of massive MU-MIMO.
  • pre-processed signal vector is multiplied with a matrix that maximally combines signal to a target receiver antenna.
  • This method is generally referred to as the MRT (Maximum Ratio Transmission) precoding method. It is relatively simple compared with matrix inversion precoding method, and it can also be implemented in both digital domain and analogue domain. Its main problem is that it is only effective in a massive MIMO system with MIMO channel not being ill-conditioned, and can therefore be considered as not to being scalable from current non-massive MIMO systems.
  • pre-processed signal vector is multiplied by the null space that is obtained by SVD (Singular Value Decomposition), QRD (QR-Decomposition) or any other method that generate a null signal space to multiple receiving terminals, modules or antennas.
  • SVD Single Value Decomposition
  • QRD QR-Decomposition
  • This method gives the best performance in terms of channel capacity in comparison to the above first and second linear precoding methods.
  • this method (and especially SVD-based method) is relatively complex since it requires a higher computational load. This is explained further using the following equations for the case of SVD.
  • the MU-MIMO channel H can be represented by Eq. (5) ...(5)
  • signal vector to be transmitted is x, where within x there are signals or streams of data targeting specific receiver module in an MU-MIMO system, then this signal x is multiplied with precoding matrix V which is given by Eq. (6).
  • V [V 1 V 2 ... V K-1 V K ] ..(6)
  • the number of columns of matrix V k corresponds to number of data streams that are transmitted to receiver module #k.
  • a precoding matrix can be generated by a first method using singular value decomposition as illustrated in step#1 and step#2 described below.
  • Step#1 Define a MIMO channel matrix that excludes channel matrix H k associated with receiving module number k (or receiver number k) where subscript symbol "T" indicates transpose of a matrix. ...(7)
  • Step#2 Perform SVD (Singular Value Decomposition) as illustrated in Eq. (8) on matrix to generate a right singular matrix where the superscript symbol "H" indicates complex conjugate transpose of a matrix.
  • This kind of decomposition is illustrated in FIG. 5, where matrix V k that spans the null space of matrix is also defined in FIG. 5 using matrix M3.
  • symbol N tx represents an effective total number of transmitting antennas of the transmitting system 10 of FIG. 1
  • matrix M2 is a zero matrix
  • matrix M1 is a diagonal square matrix with eigenvalues. Details on characteristics of these matrices are well documented in literature of linear algebra, and it is well known by those who are familiar with linear algebra that equation E4-1 in FIG. 5 will also be true. ...(8)
  • Step#1 Define a MIMO channel matrix that excludes channel matrix associated with receiving module number k (or receiver number k) where symbol "T” indicates transpose of a matrix. ...(9)
  • Step#2 Perform QRD (or SVD) as illustrated in Eq. (10) on matrix (or in contrast to non-patent literature [NPL11], use matrix ) to generate a matrix V k that spans the null space of matrix .
  • Location of matrix V k after QRD is illustrated in FIG. 6 within matrix M8.
  • the superscript symbol "H” indicates complex conjugate transpose of a matrix. Equation (11) can be implied from Eq. (10).
  • matrix corresponds to matrix M10 in FIG. 6.
  • matrix M10 includes a lower triangular matrix (matrix M7) that can also be generated using LQ decomposition.
  • a matrix M2 that is a zero matrix.
  • a matrix M9 that spans the same space as the space which is spanned by matrix M4 of FIG. 5. ...(10) ...(11)
  • Eq. (8) and Eq. (10) are computationally involving, and has to be done for each receiving module, of which the total number in this example has been assumed to be a symbol "K" that represents an integer.
  • K the total number in this example has been assumed to be a symbol "K" that represents an integer.
  • the issue of high computational complexity is a demerit, which results in a larger hardware in case of parallelism, much higher power consumption in case of limited parallelism or no parallelism, and hence an increase in the cost of transmitters.
  • FIG. 7 illustrates signal processing of a single terminal at a time
  • a linear precoding method for MU-MIMO system that uses SVD or QRD (or its equivalent) to implement block diagonalization of an effective channel of MU-MIMO system, where data is transmitted from coordinating transmitting modules to multiple non-coordinating receiving modules (or terminals) offers better performance.
  • the method is also scalable and can be used in MIMO systems with few or very large number of antennas. However, as the size of MIMO channel increases, the computational complexity becomes excessively large.
  • NPL10 non-patent literature
  • this method reduces the total maximum number of data streams that can be transmitted using the multi-user MIMO concept.
  • the method reduces the degree of freedom that can be achieved as at least one of the number of coordinated transmitting antennas (or modules) and the number of terminals increases for a given number of transmitting antennas.
  • an object of the present invention is to provide a low-complexity method for generating a precoding matrix for multi-user MIMO system for transmitting data to multiple modules (or terminals), where transmission is done by using the same transmission channel. Since the present invention employs block diagonalization, the object of the present invention is to retain flexibility of multi-user MIMO system such that the same algorithm, or method, can be scaled to fit any scale of design, while not reducing the degree of freedom of transmitting antennas.
  • a wireless communication system comprising: a transmitter(s) that transmits at least two streams of signals by a transducer(s) through an MU-MIMO (Multi-User Multiple-Input Multiple-Output) channel; and at least two receiving terminals that receive the at least two streams of signals from the transmitter(s) and detect at least one of the at least two streams of signals, wherein the transmitter(s) comprises: a pre-processing unit that pre-processes the at least two streams of signals using at least one of CRC (Cyclic Redundancy Check) attachment, channel coding and modulation; a beamforming processing unit that performs a beamforming operation so that the at least two receiving terminals receive their target stream(s) with minimum interference from transmitted signals targeting at least one of the remaining receiving terminals; and a post processing unit that post-processes the streams processed by the beamforming operation by using at least one of an OFDM (Orthogonal Frequency Division Multiplexing) operation, a
  • OFDM Orthogonal Frequency Division Multiplexing
  • a wireless communication method comprising: by a transmitter(s), transmitting at least two streams of signals by a transducer(s) through an MU-MIMO (Multi-User Multiple-Input Multiple-Output) channel; by at least two receiving terminals, receiveing the at least two streams of signals from the transmitter(s) and detecting at least one of the at least two streams of signals, by the transmitter(s), pre-processing the at least two streams of signals using at least one of CRC (Cyclic Redundancy Check) attachment, channel coding and modulation; performing a beamforming operation so that the at least two receiving terminals receive their target stream(s) with minimum interference from transmitted signals targeting at least one of the remaining receiving terminals; post-processing the streams processed by the beamforming operation by using at least one of an OFDM (Orthogonal Frequency Division Multiplexing) operation, a filter, and an analogue to digital converter; dynamically shortening matrix size of the MU-MIMO channel
  • OFDM Orthogonal Frequency Division Multiplexing
  • a medium storing a program that causes a transmitter to execute: transmitting at least two streams of signals by a transducer(s) through an MU-MIMO (Multi-User Multiple-Input Multiple-Output) channel; pre-processing the at least two streams of signals using at least one of CRC (Cyclic Redundancy Check) attachment, channel coding and modulation; performing a beamforming operation so that at least two receiving terminals receive their target stream(s) with minimum interference from transmitted signals targeting at least one of the remaining receiving terminals; post-processing the streams processed by the beamforming operation by using at least one of an OFDM (Orthogonal Frequency Division Multiplexing) operation, a filter, and an analogue to digital converter; dynamically shortening matrix size of the MU-MIMO channel by reducing size of an MU-MIMO channel matrix depending on set criteria; and generating null spaces for multiplying with the at least two streams of signals.
  • MU-MIMO Multi-User Multiple-Input Multiple-Output
  • the wireless communication system and the wireless communication method it is possible to minimize the computational complexity of a block diagonalization based multi-user MIMO transmission system, without especially reducing the degree of freedom of the transmitting antenna, and using excess power as in the case of zero-forcing method, while at the same time maintaining flexibility and scalability, and enabling MU-MIMO transmission to all selected terminals.
  • FIG. 1 is a block diagram illustrating fundamental constitution of a wireless communication system with a transmitter unit having at least two transducer (such as antennas) for converting multiple streams of signals to a suitable format for transmitting through a MIMO (Multiple-Input Multiple-Output) medium, or storage on a MIMO medium, and at least one receiver unit with at least one transducer (such as an antenna) for converting information or signals transmitted through a medium, or storage medium to a format that suitable for further signal processing.
  • a transmitter unit having at least two transducer (such as antennas) for converting multiple streams of signals to a suitable format for transmitting through a MIMO (Multiple-Input Multiple-Output) medium, or storage on a MIMO medium
  • at least one receiver unit with at least one transducer such as an antenna
  • FIG. 2 is a block diagram illustrating a wireless transmitting unit or system with at least two transmitting modules (Tx) each having at least one transducer for transforming multiple streams of signals or data to a suitable format for transmission through a MIMO medium, or storage on a MIMO medium, and a link that enables exchange of information between the at least two transmitting modules.
  • Tx transmitting modules
  • FIG. 3 is a block diagram illustrating fundamental constitution of a communication system with a transmitter unit having at least "M” transducer (such as antennas) for transmitting multiple streams of signal through MU-MIMO (Multi-User MIMO) media to at least two of the "K” receiving modules, with each receiving module having at least two receiving antennas with “2K” being at most equal to "M,” the transmitter further including a pre-processing unit, a beamforming processing unit for eliminating interference at the "K” receiving units.
  • FIG. 4 is a block diagram of a generalized multiple ("K > 1") receiving modules for receiving signals from an MU-MIMO channel, where each receiving module having at least two receiving antennas with "2K” being greater than the multiple number "M” of transmitting antennas as defined in FIG.
  • FIG. 5 is a block diagram illustrating property of a right singular matrix (M6) and a matrix (M5) after SVD (Singular Value Decomposition) in accordance with the property of linear algebra.
  • FIG. 6 is a block diagram illustrating property of a matrix after QRD (QR-Decomposition) of the transpose or conjugate transpose of a matrix (M5) in accordance with the property of linear algebra.
  • QRD QR-Decomposition
  • FIG. 7 is a block diagram of a generalized related art (technology) for evaluating a precoding matrix using a method that evaluates null space of a part of an MU-MIMO channel matrix, and using the precoding matrix to evaluate effective channel as seen by a terminal after performing beamforming operation at a transmitter.
  • FIG. 8 is a block diagram illustrating a system with components for implementing beamforming operation at transmitter in accordance with an exemplary embodiment of the present invention, the system comprising a channel shortening unit, a terminal classifier unit, a level unit for managing classification levels in accordance with the exemplary embodiment of the present invention, a null space evaluating unit (null space and effective channel calculator), and a data multiplier (precoding) unit.
  • FIG. 8 is a block diagram illustrating a system with components for implementing beamforming operation at transmitter in accordance with an exemplary embodiment of the present invention, the system comprising a channel shortening unit, a terminal classifier unit, a level unit for managing classification levels in accordance with the
  • FIG. 9 is a block diagram illustrating a receiving module with multiple receiving transducers (antennas), the receiving module comprising a unit for dynamically aiding in the shortening of channel in accordance with the exemplary embodiment of the present invention.
  • FIG. 10 is a block diagram illustrating details on the level unit as described in FIG. 8, the details of which include a location for storing or accessing indices of multiple receiving modules in MU-MIMO system, and a location for storing or accessing at least one of classification level of a group, null space of a group scheme and effective channel of a group.
  • FIG. 11 is a block diagram illustrating details on the level unit as described in FIG.
  • FIG. 12 is a block diagram illustrating a device or a system for implementing a program that implements beamforming in accordance with the exemplary embodiment of the present invention.
  • FIG. 13 illustrates a flow chart from which a program for use in a device as illustrated in FIG.
  • FIG. 12 can be written, or a system designed, the flow chart comprising mainly channel shortening method (or procedure), a method for deciding, controlling mode of classifying terminals, a method for managing the classifications at different levels, a method for calculating null spaces and effective channel, a method for controlling the order of processing null spaces and equivalent channels at each level, and a method for assigning new classification level.
  • FIG. 14 is a table illustrating groups, terminals associated with the groups, null spaces and equivalent channels of the groups, and index of classification level associated with the first, the second and the third levels in accordance with the exemplary embodiment of the present invention using an example with ten receiving modules.
  • FIG. 14 is a table illustrating groups, terminals associated with the groups, null spaces and equivalent channels of the groups, and index of classification level associated with the first, the second and the third levels in accordance with the exemplary embodiment of the present invention using an example with ten receiving modules.
  • FIG. 15 is a table illustrating groups, terminals associated with the groups, null spaces and equivalent channels of the groups if there are at least two terminals in a group, and index of classification level associated with fourth levels in accordance with the exemplary embodiment of the present invention using an example with ten receiving modules.
  • FIG. 16 is a table illustrating groups, terminals associated with the groups, null spaces and equivalent channels of the groups, and index of classification level associated with the first, the second and the third levels in accordance with the exemplary embodiment of the present invention using an example with ten receiving modules, and channel shortening that results in one of null spaces being an identity matrix I, and hence need not be calculated.
  • FIG. 17 is a block diagram that illustrates position M20 of a predefined matrix such as an identity matrix I, as defined in FIG.
  • FIG. 18 illustrates an alternative method of implementing a flow chart as illustrated in FIG. 13, and in accordance with the exemplary embodiment of the present invention by rearranging the position of the procedures as described in FIG. 13.
  • FIG. 19 illustrates a flow chart that summarizes an operation of implementing the exemplary embodiment of the present invention.
  • FIG. 20 is a diagram illustrating a memory assignment using structures (as an example) or arrays to implement a method for beamforming in accordance with the exemplary embodiment of the present invention.
  • FIG. 21 illustrates another flow chart that summarizes an operation of implementing the exemplary embodiment of the present invention.
  • unit in the following means not only a hardware unit but also a software module. Namely, the unit(s) in the following can be realized as a process(es) executed by a processor of a computer.
  • a wireless communication system according to the first aspect of the present invention.
  • a wireless communication system as set forth in the first mode.
  • the beamforming processing unit may send channel-shortening related information to at least one of the at least two receiving terminals.
  • the at least two receiving terminals may receive status related to the channel shortening operation of the transmitter(s), decode the status, and process received status signals using different modes depending on the decoded received status.
  • a wireless communication system as set forth in the first mode.
  • the transmitter(s) may transmit at least three streams of signals by a transducer(s) through the MU-MIMO channel.
  • the at least three receiving terminals may receive the at least three streams of signals from the transmitter(s) and detect at least one of the at least three streams of signals.
  • the beamforming processing unit may perform a beamforming operation so that the at least three receiving terminals receive their target stream(s) with minimum interference from transmitted signals targeting at least one of the remaining receiving terminals.
  • the null space evaluating unit may generate null spaces for multiplying with the at least three streams of signals.
  • the null space evaluating unit may performs: grouping the receiving terminals into one group, initializing a classification level that is associated with the receiving terminals in a group, and assigning the classification level to the group; making a decision on classifying the receiving terminals in a group into at least two sub-groups where at least one sub-group comprises the at least two receiving terminals, and all sub-groups have the at least one receiving terminal, assigning classification level to each of the sub-groups considered as a virtual terminal, evaluating a null space of the MU-MIMO channel of at least one of the virtual terminals, evaluating an effective channel of the at least one virtual terminal by using the null space; and renaming or relabeling the sub-groups as independent groups, generating a new classification index and initiating a process that leads to making the decision being restarted for each of the renamed or relabeled groups.
  • a wireless communication system as set forth in the third mode.
  • the beamforming processing unit may send channel-shortening related information to at least one of the at least three receiving terminals.
  • the at least three receiving terminals may receive status related to the channel shortening operation of the transmitter(s), decode the status signal, and process received status signal using different modes depending the decoded received status signal.
  • the null space evaluating unit may perform making a decision on classifying the receiving terminals in a group into two sub-groups where at least one sub-group comprises the at least two receiving terminals or each of sub-groups comprises the at least one receiving terminals, assigning classification level to each of the sub-groups considered as a virtual terminal, evaluating a null space of the MU-MIMO channel of at least one of the virtual terminals, and evaluating an effective channel of the at least one virtual terminal by using the null space.
  • the beamforming processing unit may comprise a device that receives information related to the receiving terminals within MU-MIMO system, generates a precoding matrix, and multiplies the precoding matrix with at least two streams of signals to be transmitted.
  • the device may comprise: a first device that dynamically reduces the size of the MU-MIMO channel matrix, and generates a status informing at least one of the receiving terminals to combine at least two of its received streams into one stream, or process the received streams without combination; a second device that classifies terminals in a group into two sub-groups if the group has at least two terminals, assigns the sub-groups a classification level, generates a GO or NO-GO command for enabling (GO) or disenabling (NO-GO) calculation of null spaces of MU-MIMO channel of each of the sub-groups, assigns the sub-groups to a classification level, renames the sub-groups as group, and assigns an effective MU-MIMO channel to the renamed sub-groups which are then considered as a new independent MU-MIMO channel for the renamed sub-groups; a third device that calculates null spaces of the at least one of the sub-groups within a group, and calculates effective channel
  • the channel shortening unit may perform: comparing a total number of transmitted streams or effective transmitting antennas with a total number of all receiving antennas; and enabling reduction of size of the MU-MIMO channel matrix if a ratio of the total number of transmitting antennas to the total number of all receiving antennas is greater than a set threshold, and otherwise disenabling reduction of size of the MU-MIMO channel matrix.
  • the channel shortening unit may perform: generating a matrix that spans rows of the MU-MIMO channel matrix based on an assumption that a number of rows represents a total number of all receiving antennas; comparing the number of row of the matrix that spans the rows of the MU-MIMO channel matrix with the total number of all effective receiving antennas of the receiving terminals; and enabling reduction of size of the MU-MIMO channel matrix if the number of row of the matrix that spans the rows of the MU-MIMO channel matrix is less than the total number of all effective receiving antennas of all the receiving terminals combined, and otherwise disenabling reduction of size of the MU-MIMO channel matrix.
  • a wireless communication system as set forth in any one of the first to fourth and sixth to eighth moded.
  • the reduction of size of the MU-MIMO channel matrix may be done by multiplying MU-MIMO channel matrix with a conjugate transpose of a matrix that spans the rows of the MU-MIMO channel matrix.
  • a wireless communication system as set forth in the ninth mode.
  • the matrix that spans the rows of the MU-MIMO channel matrix may be obtained by evaluating SVD (Singular Value Decomposition) of the MU-MIMO channel matrix.
  • the matrix that spans the rows of the MU-MIMO channel matrix may be obtained by evaluating QRD (QR-Decomposition) of the transpose of complex conjugate of MU-MIMO channel matrix or LQ-decomposition of MU-MIMO channel matrix.
  • the null space evaluating unit may generate a sub-group only if the original group before generation of a sub-group has at least indices associated with the at least two receiving terminals.
  • the null space evaluating unit may consider at least one of receiving transducers of a receiving module as a separate independent receiving terminal.
  • the beamforming processing unit may comprises a device that receives information related to the receiving terminals within MU-MIMO system, generates a precoding matrix, and multiplies the precoding matrix with at least two streams of signals to be transmitted.
  • the device may comprise: a first device that stores data, and a program for processing the data; and a computing unit that performs function of the program that is stored in the first device.
  • the program may cause the computing unit to execute: dynamically shortening matrix size of the MU-MIMO channel depending on set criteria; sending channel-shortening related information to at least one of the receiving terminals; and generating null spaces for multiplying with the at least two streams of signals.
  • the generating null spaces may comprise: grouping the MU-MIMO receiving terminals into one group, initializing a classification level that is associated with the terminals in a group, and assigning the classification level to the group; making a decision on classifying the receiving terminals in a group into two sub-groups where at least one sub-group comprises the at least two receiving terminals, assigning classification level to each of the sub-groups considered as a virtual terminal, evaluating a null space of the MU-MIMO channel of at least one of the virtual terminals, and evaluating an effective channel of the at least one virtual terminal by using the null space; and renaming or relabeling the sub-groups as independent groups, generating a new classification index and initiating process that leads to making the decision being restarted for each of the renamed or relabeled groups.
  • At least one of the receiving terminals may comprise: a multiple of receiving transducers; a pre-processing unit that filters and amplifies received multiple streams of signals from multiple transducers; a weighting unit; and a post-processing unit.
  • the weighting unit may perform: receiving status information from the transmitter(s); and combining at least two of the multiple received streams of signals upon receiving a status that indicates combination is needed.
  • the combining may comprise: multiplying the at least two streams using weights that are known at the transmitter(s), or from a set of fixed weights with indices that are known at the transmitter(s); and adding and combining the at least two streams into one stream.
  • the post-processing unit may select either the reduced number of streams or all the streams depending on status of combination received from the transmitter(s).
  • a wireless communication system as set forth in the fifteenth mode.
  • the transmitter(s) may transmit an index associated with a known weight and a known dimension to at least one of the receiving terminals upon determining that MU-MIMO channel shortening operation need to be done.
  • the at least one of the receiving terminals may process the index.
  • a wireless communication system as set forth in the sixteenth mode.
  • the transmitter(s) may transmit an array of weights with a specified dimension to at least one of the receiving terminals upon determining that MU-MIMO channel shortening operation need to be done.
  • the at least one of the receiving terminals may process the weights.
  • At least one of the receiving terminals may transmit to the transmitter(s) an index associated with a known weight and a known dimension upon receiving status from the transmitter that channel shortening operation need to be done.
  • the at least one of the receiving terminals may process the index.
  • At least one of the receiving terminals may transmit to the transmitter(s) an array of weights with a specified dimension upon receiving status from the transmitter(s) that channel shortening operation need to be done.
  • the at least one of the receiving terminals may process the index.
  • a wireless communication method according to the second aspect of the present invention.
  • a medium according to the third aspect of the present invention there is provided.
  • the beamforming comprises at least a step for dynamically shortening MU-MIMO channel of receiving modules(or terminals) that have been selected for MU-MIMO, grouping the MU-MIMO receiving terminals into one group, and initializing a classification level that is associated with the terminals in a group, and assigning the classification level to the group.
  • the beamforming comprises a second step for making decision on classifying receiving terminals in a group into two sub-groups, assigning classification level to the sub-groups otherwise considered as virtual terminals, evaluating the null space of MIMO channel of a virtual terminal, evaluating effective channel of the virtual terminal by using its null space.
  • the beamforming comprises a third step of renaming or relabeling the sub-groups as independent groups, generating a new classification index and initiating process that leads to the second step being restarted for each of the relabeled groups.
  • the device further comprises a null space evaluating unit (or units) 400 for calculating null space of a matrix upon receiving a command, a level unit 920 with different levels for storing information related to groups of multiple receiving modules at each classification level, and a data multiplier unit 940 for multiplying pre-processed data with the precoding vectors or matrices obtained from the level unit 920.
  • the channel shortening unit 910-1 can be enabled or disabled either manually or based on characteristics of signal being processed, and when the channel shortening unit 910-1 is enabled it has a functionality for reducing the overall effective size of MU-MIMO channel 60, or matrix H.
  • the terminal classifier signal processing unit 910 initially groups all terminals into a single group, initializes classification level, classifies terminals into two sub-groups with at least one of the groups having at least two terminals while considering each sub-group as a virtual terminal, and assign classification level to the two sub-groups of a group.
  • the null space evaluating unit 400 evaluates the null space associated with all the virtual terminals in a sub-group, where in this mode of implementation there are only two virtual terminals in a group.
  • the level unit 920 thereafter associates null space of sub-group with the null space and equivalent channel matrix, while also informing terminal classifier signal processing unit 910 to check whether further classification can be done, where this checking involves a step of renaming the sub-groups as independent groups (or independent MIMO systems), incrementing the classification level, assigning a new classification level to a group if the group has at least two physical terminals and generating sub-groups (virtual terminals) for the group with at least one of the virtual terminals having at least two physical terminals; the process of null space calculation, associating a new null space and equivalent channel at each of the new classification level, and renaming the sub-groups as a groups is repeated until further classification is not possible.
  • each of the terminals is assumed to have two receiving antennas with capabilities of receiving two streams while the transmitter has more than 18 effective MIMO antennas.
  • the terminal classifier signal processing unit 910 initially sets one group G-1 containing all the terminals at level 0 (of the classification level), where the group is then divided into two sub-groups, a first sub-group (G-L0-1) and a second sub-group (G-L0-2) with respectively four and five terminals; and in the next level 1 after renaming the sub-groups in level 0, generates two groups in level 1, each group with two sub-groups, and null space (example N1-1 for first sub-group G-L1-1 in the first group G-1 of level 1) and equivalent channel (example E1-1 of the same sub-group G-L101). And a level 2 obtained in a similar manner as level 1, as indicated in FIG.
  • a terminal classifier signal processing unit 910 determines that only one group G-1 of level 3 has at least two terminals and thus marks all remaining groups (using a flag or symbol "X" or "I") so that their null spaces are not calculated, classification level indicator 920-L retained at previous value, where the only group G-1 is divided into a first sub-group G-L3-8 and a second sub-group G-L3-9, and evaluating the null space and optional (in this case, since there is only one terminal per sub-group) equivalent channel such as E2-2-2-1 for the first sub-group G-L3-8 in group G-1 of level 3.
  • a computing unit 800 or a sub-system as shown in FIG. 12 within block 900 in FIG. 3 for precoding data comprises a memory (data storage) unit 810 with its input 811 and output 812.
  • the memory unit 810 stores data and program.
  • a computational and decision unit 820 for processing a program derived from a flow chart as shown in FIG. 13, an input 821 for receiving commands, and an output 822 for conveying computational status of the computing unit 800.
  • the computing unit 800 Upon the computing unit 800 receiving a start 20-1 command, the computing unit 800 starts a program for processing data in the memory unit 810 accordingly.
  • the program takes note of terminals Rx (receiving modules or antennas) or indices of terminals that have been set for MU-MIMO access, the number of these terminals "K,” and their corresponding MIMO channel, followed by shortening the MIMO channel 60 of MU-MIMO access using a matrix that spans the MU-MIMO matrix space by SVD, QRD or any other method, and identifying all these terminals as belonging to a single group.
  • classification level is initialized to some initial value (as an example 0).
  • step S12 decision is made on whether a group (initially there is only one group) can be divided into two sub-groups based on if there are at least two terminals in a group 310 or at least three terminals, after which information related to sub-groups is processed using two alternative steps.
  • step S13 that classify terminals in a group into two sub-groups with each sub-group having one terminal.
  • step S14 of the first alternative a null space corresponding to channel matrix of a first and second sub-group is evaluated depending on the command received from step S10.
  • step S15 of the first alternative where effective channel of each of the two sub-groups are calculated.
  • step S23 there is a fourth step S23 that classify terminals in a group into two sub-groups with at least one sub-group having at least two terminal.
  • step S24 of the second alternative steps null spaces corresponding channel matrix of a first and second sub-groups are evaluated depending on the command received from step S10.
  • step S25 there is a sixth step S25 of the second alternative steps, where effective channel of the sub-groups are calculated.
  • step S16 the third step S12 and the fourth, fifth and sixth steps, respectively of the first alternative steps ⁇ S13, S14, S15 ⁇ or the second alternative steps ⁇ S23, S24, S25 ⁇ are repeated if there are any groups that have not been processed.
  • an eighth step S17 is executed with result being that all sub-groups are now renamed as independent MU-MIMO channel, and classification level is increased to the next level (as an example, the classification level could be increased from zero to one).
  • the program monitors whether there has been a change in classification and the sub-groups have been renamed as group, thereby checking whether newly generated group (or groups) contain at least two terminals and assigning the group current classification level, with groups that cannot be divided into sub-groups flagged (as an example using a symbol "X" as shown in FIG. 15) so as to retain their classification level even if the group is copied to next level as shown in FIG. 15.
  • a method or a system for shortening MU-MIMO channel by generating a first matrix that spans the MU-MIMO channel, multiplying the transpose or conjugate transpose of the first matrix with the MU-MIMO channel to generate a first effective MIMO channel with a reduced dimension; using the first effective MIMO channel to perform beamforming according to the twenty-first mode, the twenty-second mode, or the twenty-third mode of the present invention.
  • a method, a system or a program for dynamically deciding on whether shortening MU-MIMO channel in accordance with the twenty-fourth mode should be done or not done is provided.
  • decision is based on total number of receiving modules (or total number of receiving antennas of all receiving modules, or number of receiving transducers per receiving module) that have been selected for MU-MIMO with respect to total number of transmitting transducers or characteristic of MU-MIMO channel.
  • the dimension of MU-MIMO channel matrix shall be reduced according to twenty-fourth mode, while if a decision is made to shorten the MU-MIMO channel at the receiver, the transmitter shall generate a status, a command or information to at least one of the MU-MIMO receiving terminals.
  • a twenty-sixth mode there is provided at least one receiving module in MU-MIMO wireless communication.
  • the receiving module there is provided a method of receiving a dynamically generated status report for shortening MU-MIMO channel in accordance with twenty-fifth mode, a system, or method, or a program for merging at least two streams that have been received from MU-MIMO channel using known weights that have been generated in advance, the weights of which could be associated with an index, or using weights generated by receiving module, and reporting back to the transmitter information related to the weights.
  • a multi-user MIMO (MU-MIMO) system as shown in FIG. 3.
  • the MIMO-system comprises: at least one transmitting module as shown in FIG. 2, with multiple transmitting antennas system configured to transmit at least three signals (an exemplary signal: 10-1) to at least three terminals; a transmission medium 60 with a common wireless channel through which the at least three signals (an exemplary signal: 10-1) are transmitted; and at least three receivers Rx (two of which are shown in FIG. 3) that do not necessarily cooperate to process signals that are transmitted by the transmitter.
  • the transmitter of the system comprises a pre-processing unit 11 for performing at least one of the following operations: adding CRC (Cyclic Redundancy Check) bits, channel coding, interleaving, rate matching, modulation or any other signal processing that may aid in identifying the signal of interest at the multiple receivers.
  • the transmitter 20 of the MIMO system as shown in FIG. 3 comprises a device, a processor, a system or a program for implementing beamforming using the present exemplary embodiment as will be explained in the following.
  • beamforming processing unit (or process) 900 is configured as shown in FIG. 8.
  • a first input 910-10 that receives information related to at least three (much higher number is recommended) receiving terminals that have been selected MU-MIMO, two (90-1 and 90-2) of which have been shown in FIG. 3 and "K" of which have been shown in FIG. 4 (90-1 to 90-K).
  • the symbol "K” represents number of receiving modules each with at least one receiving antenna, and the number "K” is greater or equal to three.
  • the information received (signal 910-10) contain at least a terminal index "k" of all the selected terminals, corresponding MIMO channel H k as seen by each of the selected MU-MIMO terminals, and as illustrated in Eq. (5).
  • terminal classifier signal processing unit 910 that comprises a channel shortening unit 910-1 the reduces the effective size of MU-MIMO channel matrix upon being activated, and a terminal classifier unit 910-2 that gradually or successively classifies the "K" terminals into multiple levels, or groups, or sub-groups.
  • the symbol ⁇ S represents a diagonal matrix (which could be an identity matrix), or a non-diagonal matrix that could be used to control power or redistribute signal among the transmitting antennas.
  • the channel shortening is quite effective when number of transmitting transducers (or antennas) is much more than number of receiving modules (or terminals), or when QRD or LQ-decomposition (LQD) is used to evaluate the matrix that spans signal space of MU-MIMO channel matrix.
  • QRD or LQD approach only the null space associated with one sub-group need to be calculated.
  • the channel shortening unit 910-1 will raise a FLAG to disable unnecessary evaluation of a null space of the second sub-group, as the null space is composed of a section M20 with an identity matrix, or a section with permutated identity matrix as shown in FIG. 17.
  • matrix M20 can be replaced with any predetermined orthonormal matrix, or any other matrix. This basically implies that null space associated with the second sub-group (or the null space of first sub-group) need not be calculated. Essentially, the effective channel of the second sub-group need not be calculated if an identity matrix or its permutation is used as section M20 of FIG. 17.
  • the matrix (M10) or conjugate transpose of the evaluated matrix M10 is multiplied with MU-MIMO channel matrix to generate a new MU-MIMO channel matrix M11 that has a reduced dimension. Further, if the number of rows of the new MU-MIMO channel matrix M11 is greater than number of its column, the channel shortening unit 910-1 generates a status ST1 that informs at least one of the receiving terminals to reduce the number of its effective receiving antennas in order to reduce the number of rows of matrix (M10). In this mode of implementation, at least one of the receiving terminals with at least two receiving antennas receives the status ST1 to reduce effective number of its antennas 70 as shown in FIG. 9.
  • the post-processing unit 80-300 ignores signal 80-301 after an adder 80-202 (or ignores addition) and instead uses the non-added signals 80-302.
  • a first output signal 910-20 that is used to provide information on terminals whose data will be transmitted, their pre-coded data and channel state after implementing beamforming in order to enable a scheduler to determine at least modulation level, coding rate and power for transmitting data specific to a particular terminal.
  • terminal classifier signal processing unit 910 has a second output signal 910-30 for providing information to a level unit 920, the information of which includes received MU-MIMO channel matrix or shortened MU-MIMO channel matrix (M10), terminals which have been classified into a new level or sub-groups, and provide a command like information that activates evaluation of a null space (by a null space evaluating unit 400) of a group of terminals at particular level, or the null space of single terminals in case a group at a particular level that has only two terminals or in case channel shortening enables computation of null space associated only one sub-group as explained earlier.
  • a null space evaluating unit 400 the null space of single terminals in case a group at a particular level that has only two terminals or in case channel shortening enables computation of null space associated only one sub-group as explained earlier.
  • the terminal classifier signal processing unit 910 has a second input signal 910-40 from a level unit 920 for receiving information related to a group with at least two terminals, classify the terminals in a group at any level, and generating necessary output information through the first output signal (output number#1) 910-20 and the second output signal (output number#2) 910-30 as explained above. While any method can be used to evaluate precoding matrices (or null spaces) according to present exemplary embodiment, QRD or LQ-Decomposition method are recommended due to their simplicity.
  • the level unit 920 receives information from terminal classifier signal processing unit 910 using the second output signal 910-30, and sends information to terminal classifier signal processing unit 910 using the second input signal 910-40.
  • the information (the second input signal 910-40) that the level unit 920 sends to terminal classifier signal processing unit 910 includes number of terminals in a group at a particular level and their indices, level of a group through which the terminal classifier signal processing unit 910 decides on whether to further classify terminals in a group or sub-group, and consequently increase the classification level.
  • the level unit 920 also has multiple outputs (these outputs could be multiplexed into a single output) associated with each classification level for sending information related to MIMO channel of at least one of the sub-groups in a group including two sub-groups. This information is sent only if terminal classifier signal processing unit 910 has generated a command that the null space or effective channel should be calculated.
  • the level unit 920 has multiple levels for classifying into levels multiple terminals in each group at each level. It also has a memory or a kind of storage method for storing structures of groups 920-G, where each structure of group contains indices of terminals. In some cases, there could be only one index, implying that the group cannot be classified further to a higher level.
  • the structure may also contain indices of antennas of all the receiving modules, or indices of logical (or effective) antennas of all the receiving modules in case at least one of the terminals received a status command ST1 to shorten its channel, and the at least one terminal effected the process as illustrated in FIG. 9.
  • each structure has a pointer 920-P to (or a way of associating a group or sub-group with) a classification level 920-L, and null spaces 920-N (or precoding matrix) and possibly effective channel of subgroups in the structure that has been evaluated by the null space evaluating unit 400.
  • an output signal 910-40 for sending information to terminal classifier signal processing unit 910 that determines whether a sub-group can be further classified. Classification is done using the present exemplary embodiment if a sub-group or group has at least three terminals, and using a known technology if a group has only two terminals.
  • FIG. 11 shows the level unit 920 with at least two levels, where there are ten terminals that have been selected for multi-user MIMO signal reception from a transmitter with at least ten receiving modules.
  • at least one terminal may have at least two antennas to enable processing of status command ST1 upon its reception, and in this case, the transmitting modules shall also have a total of at least 20 antennas (or transducers).
  • the terminal classifier signal processing unit 910 also comprises a terminal classifier unit 910-2 that classifies the terminals into two sub-groups, where the first sub-group G1 has terminals labeled as U 1 to U 4 , while the second sub-group has terminals labeled as U 5 to U 10 . Note that when there are more than two terminals in a group, at least one of the sub-groups should have at least two terminals in accordance with the present exemplary embodiment.
  • the terminal classifier signal processing unit 910 also assigns the current classification level (which has been initialized to zero) to each of the sub-groups, and sends a command to the null space evaluating unit 400 through port 910-30, and a second port 920-20, to evaluate null space and effective channel of each of the two sub-groups if necessary.
  • Step#1 Define a MIMO channel matrix that excludes channel matrix of a sub-group G1, U 1 to U 4 that is associated with the very first group where superscript symbol "T" indicates transpose of a matrix. ...(13)
  • Step#2 Perform QRD (or SVD) as illustrated in Eq. (10) on the matrix (or the matrix ) to generate a matrix V G1,0 that spans the null space of the matrix .
  • the matrix V G1,0 is the null space of sub-group G1, but it is only considered to be associated with sub-group G1. Note that the "0" in the subscript after a comma ",” indicates classification level. Location of matrix V G1,0 after QRD corresponds to a case of V k as illustrated in FIG. 6 within matrix M8. As in the case of Eq. (8), the superscript symbol "H” indicates complex conjugate transpose of a matrix. Equation (14) can be implied from Eq. (10). In Eq.
  • a matrix corresponds to matrix M10 in FIG. 6.
  • a matrix M10 includes a lower triangular matrix (matrix M7) that can also be generated using LQ decomposition; a matrix M2 that is a zero matrix; a matrix M9 that spans the same space as the space which is spanned by a matrix M4 of FIG. 5; and matrix M3 that spans the null space of the matrix .
  • matrix M7 a lower triangular matrix (matrix M7) that can also be generated using LQ decomposition
  • a matrix M2 that is a zero matrix
  • a matrix M9 that spans the same space as the space which is spanned by a matrix M4 of FIG. 5
  • matrix M3 that spans the null space of the matrix .
  • Step#3 Repeat Step#1 and Step#2 for the second sub-group G2, at classification level "0" only if the null space is not an identity matrix. This scenario arises if channel shortening is done according to the present exemplary embodiment.
  • Step#4 Multiply channel matrix H with the first null space V G1,0 and a second null space V G2,0 as evaluated in Step#1 to Step#3 to obtain a first effective channel H e1,0 and a second effective channel H e2,0 .
  • the "0" in the subscript indicates classification level. From this multiplication, signal transmitted to a first sub-group do not cause interference to a second sub-group of a group, hence transforming a single MU-MIMO system to two independent MU-MIMO systems.
  • the current level (initially it is level Unit#0) of the level unit 920 consults terminal classifier signal processing unit 910 about its sub-groups.
  • a first sub-group G1 and a second sub-group G2 are now renamed as a first group G1 and a second group G2.
  • terminal classifier signal processing unit 910 determines whether each of groups (at this instance, the groups are considered as completely independent groups) can be classified further into sub-groups. In the example provided in FIG.
  • first group G1 is divided into two sub-groups, a first sub-group G1-1 and a second sub-group G1-2
  • second group G2 is divided into two sub-groups, a first sub-group G2-1 and a second sub-group G2-2, and sub-groups are assigned an incremented classification level number which in this case is classification level #1
  • all these information including effective channel of the two groups (first group G1 and a second group G2) is transferred to level unit#1, and an execute command sent to the null space evaluating unit 400 through port 910-30, through an interface 920-20, and a second port 920-20.
  • a null space and an effective channel for each sub-group in a group is evaluated as explained earlier.
  • Eq. (16) a combination of all the null spaces that have been evaluated at each classification level (or level unit 920-1) are combined as shown in Eq. (16) to generate a precoding matrix for transmitting data.
  • the size of matrix within the effective MIMO channel matrix gradually reduces, and finally yielding a block diagonal matrix as illustrated in Eq. (4), but with a reduced complexity.
  • the final precoding matrix is obtained as indicated in Eq. (16) where null spaces evaluated at different levels are combined. Note that multiplication can also be done from right to left by first multiplying signal to be transmitted by null spaces retrieved through the highest level 920-1 of the level unit 920 that is connected to the data multiplier unit 940 according to FIG. 8. ...(16)
  • final precoding matrix is obtained as indicated in Eq. (16) where null spaces evaluated at different levels are combined together with the channel shortening matrix Q S , and the control matrix ⁇ S , as shown in Eq. (17). Further, as explained in FIG. 13, some of null spaces can be preset to reduce computational load in Eq. (16) or Eq. (17). ...(17)
  • N D when the classification level increases to the next level after the initial level, the value of symbol N D reduces, and even though MU-MIMO computations is done four times in the next level after the initial level, reduced size of N D at the next level plays a significant role in reducing complexity. In fact, by further enabling channel shortening, it is possible to reduce the number of times that null spaces are calculated hence considerably reducing computational complexity.
  • the transmitter of which comprises a pre-processing unit 11 that performs at least one of the following operations: adding CRC (Cyclic Redundancy Check) bits, channel coding, interleaving, rate matching, modulation and any other signal processing that may aid in identifying the signal of interest at the multiple receivers.
  • the transmitter 20 of the MIMO system as shown in FIG. 3 comprises a device, a processor, a system or a program for implementing beamforming with the motivation being somehow similar to a known technology, but using the present exemplary embodiment as will be explained in the following.
  • the beamforming processing unit 900 is implemented using a computing unit 800 as shown in FIG. 12.
  • the computing unit 800 comprises a memory (or a storage) unit 810 that stores data and a beamforming signal processing program.
  • the computing unit 800 further comprises a computational and decision unit 820 that may include hardware accelerators for evaluating null spaces of a matrix or vector. Data is sent into the beamforming processing unit (i.e., the computing unit 800) through an input port(s) 811, and retrieved from the computing unit 800 using an output port(s) 812.
  • the computational and decision unit 820 has an input port(s) 821, through which the computational and decision unit 820 receives instruction that includes location of data in the memory unit 810, and preset commands that enables channel shortening as explained in the first exemplary embodiment of the present invention.
  • the computational and decision unit 820 also has an output port(s) 822, through which the computational and decision unit 820 can report its status, such as the status ST1 to a terminal informing the terminal to reduce its effective number of antennas in accordance with the first exemplary embodiment of the present invention.
  • the program of FIG. 13 upon receiving a start command 20-1 based on availability of data that includes number of terminals (for explanation, it is assumed in FIG. 11 that the terminals have been labeled from U 1 to U 10 ) that have been selected for MU-MIMO signal reception, will start processing the information 20-1 using an initial step S10.
  • an initial step S10 a decision is made on whether to shorten MU-MIMO channel in accordance with the channel shortening procedure as described in the first exemplary embodiment of the present invention (based on externally received command, or based on the ratio of total number of receiving antennas to the total number of transmitting antennas being less than a preset value). Further, in the initial step S10, all terminals are grouped into a single group (as an example group G-1 illustrated in FIG. 14).
  • classification level is initialized to zero, and the single group G-1 at the initial step S10, are assigned the classification level.
  • classification level can be assigned any number or enumerated index or name.
  • the terminals are classified into two sub-groups with each sub-group having a single terminal. If there are at least three terminals in a group, the terminals are classified according to a second alternative method into two sub-groups according to the third step S23, with at least one of the sub-groups having at least two. Thereafter, each sub-group is assigned a classification corresponding to current level of the terminals. When the program starts, the classification level is zero, so each sub-group will be assigned a classification level zero, as an example.
  • each sub-group has only one terminal the null space calculation (S14) of at least one of the terminal is evaluated in first alternative fourth step S14 using step#1 as illustrated in Eq. (12), followed by step#2 as illustrated in Eq. (13) and Eq. (14).
  • step#1 as illustrated in Eq. (12)
  • step#2 as illustrated in Eq. (13)
  • a first alternative optional fifth step S15 has an operation for evaluation of effective channel within this group.
  • the second step S12 with decision (310 and 330), using command from the initial step S10 associated with channel shortening, and the steps of monitoring group 320 will generate commands or flags that result in execution of a second alternative third step S23 that generates two sub-groups, with each sub-group having at least two terminals.
  • One possible classification generates two sub-groups, where the first sub-group G1 has terminals labeled as U 1 to U 4 , while the second sub-group has terminals labeled as U 5 to U 9 . As explained earlier, these two sub-groups are assigned a classification level zero as indicated in FIG. 14.
  • step S24 of the second alternative method the program generates null space (S24) of both the sub-groups or only one sub-group depending on the command received.
  • step S25 of the second alternative method effective channel of at least one of the sub-group are evaluated (S25) as explained in Eq. (12), Eq. (13) and Eq. (14), respectively for step#1, step#2, Step#3 and Step#4.
  • the program determines whether all groups have been considered.
  • the program in FIG. 13 makes a decision that all groups have been considered at the current level (Level 0) as indicated in FIG. 14, then in the seventh step S17, the sub-groups are relabeled as groups, and a new classification level is generated. In this example, if the current level is zero ("0"), then the new classification level is generated as "1.” Note that at higher classification level, there are multiple number of groups, hence the program repeats previous steps through the second step S12 until all groups in the current classification level have been considered independently.
  • each of the sub-groups in each group is relabeled in seventh step S17 as a group (in this example as group G-1 and group G-2) and assigned a new classification level, level "1.”
  • the program then goes back to the second step S12 of decision and classification (310, 320 and 330), by considering each group (group G-1 and group G-2) independently to determine whether the terminals within each of the independent groups can be classified into sub-groups.
  • group G-1 will be classified into two sub-groups (G-L1-1 and G-L1-2) each with terminals labeled as U 1 to U 2 , and U 3 to U 4 , respectively.
  • While group G-2 will be classified into two sub-groups (G-L1-3 and G-L1-4) each with terminals labeled as U 5 to U 6 , and U 7 to U 9 , respectively. This information is passed to next level (Level 1) as illustrated in FIG. 14.
  • null spaces While the null spaces have all been labeled, it may not be necessary to calculate null space associated with one of the sub-groups in a group, as the evaluated null space results in an identity matrix I, which need not be calculated.
  • an identity matrix I which need not be calculated.
  • step S600 if processes with respect to all groups with at least three terminals have been done (YES of step S600), the program transits to step 310. Otherwise (NO of step S600), other groups in the current level are checked (step S601).
  • the levels may not be physical levels, but could be represented by using an array (Multi-Level[4]) of structures (Level-Definer), and as shown in FIG. 20 for the case of four levels.
  • labeling of sub-groups as the first and the second is only used for explanation, and thus does not restrict or provide an alternative method of implementing the present invention.
  • the transmitting unit may comprises more physical transmitting modules or transducers in comparison to each of the physical multiple receivers with at least one receiving transducer, however this is not a necessary condition, and the present invention can be applied to logical receiving modules.
  • the present invention also relates to any systems that can be modeled as a MIMO (Multiple-Input Multiple-Output), a corresponding signal processing device, a corresponding signal processing system and a corresponding software application. More specifically, the present invention relates to a technique for improving channel capacity in a communication system by using multiple transmitting transducers that are more than a number of logical receiving transducers at independent logical receivers that do not coordinate to jointly process received signal.
  • MIMO Multiple-Input Multiple-Output

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Radio Transmission System (AREA)

Abstract

A wireless communication system comprises: a transmitter(s) that transmits at least two streams of signals by a transducer(s) through MU-MIMO channel; and at least two receiving terminals that receive at least two streams of signals from the transmitter(s) and detect at least one of at least two streams of signals. The transmitter(s) pre-processes the at least two streams of signals using CRC attachment, channel coding or modulation, performs a beamforming operation so that at least two receiving terminals receive their target stream(s) with minimum interference from transmitted signals targeting the remaining receiving terminals, and post-processes the streams processed by the beamforming operation by using an OFDM operation, a filter, or an AD converter. The transmitter(s) dynamically shortens matrix size of the MU-MIMO channel by reducing size of an MU-MIMO channel matrix depending on set criteria, and generates null spaces for multiplying with the at least two streams of signals.

Description

WIRELESS COMMUNICATION SYSTEM, WIRELESS COMMUNICATION METHOD AND MEDIUM
The present invention relates to a wireless communication system, a wireless communication method and a medium. Further, the present invention relates especially to a wireless communication system where multiple streams of data that are to be transmitted to multiple receiving units or modules or terminals, using same medium or channel, with signal transmitted from multiple transmitting modules or transducers, wherein all the streams use the same channel, and where in this case the same channel refers to sharing the same frequency band or subcarrier, same spreading code as in CDMA (Code Division Multiple Access), same space as in a sector or cell of a cellular system, and same time slot as in TDMA (Time Division Multiple Access).
Background
In a general communication system, and especially wireless communication system, it is well known by those conversant with this field that channel capacity of a wireless communication system can significantly be improved by increasing number of transmitting and receiving antennas. This concept, also known as an MIMO (Multiple-Input Multiple-Output) system, has been introduced by G. J. Foschini in the non-patent literature [NPL1], and it enables transmission of multiple streams of data using the same channel. In its most general format, the wireless channel is assumed to be frequency non-selective. This assumption can well be generalized, especially if a system is designed using OFDM (Orthogonal Frequency Division Multiplexing) technology that was first proposed by Chang [NPL2], also known as DMT (Discrete Multi-Tone) transmission. Other options such as wavelets based filter banks or any other kind of filter banks could also be considered.
In an OFDM system, as an example, frequency is divided into a number of orthogonal frequency channels also known as subcarriers, by using FFT (Fast Fourier Transform) or IFFT (Inverse Fast Fourier Transform), where in a frequency selective channel [NPL3], each of the OFDM subcarriers can be considered to be experiencing a flat fading (frequency non-selective). Therefore, a signal yl(k) of a receiver at OFDM subcarrier (or frequency band) with index "l" can be modeled mathematically as in Eq. (1).
yl(k) = xl(k)hl(k) + sl(k) (1)
In Eq. (1), xl(k) represents a signal that was mapped to subcarrier with index "l," hl(k) is channel gain or loss experienced at subcarrier with index "l," sl(k) is noise at the receiver experienced at subcarrier with index "l," and "k" is a time index of OFDM symbol. In a flat fading MIMO system, and as indicated in FIG. 1, signals 90-s1, 90-s2 received by all the receiving antennas 70-1, 70-2 at subcarrier index "l" can be modeled mathematically at the receiver system 80 using a baseband model as indicated in Eq. (2).
Figure JPOXMLDOC01-appb-I000001
…(2)
In Eq. (2), xm,l(k) is the signal that was mapped to antenna of transmission module or antenna with index "m," subcarrier with index "l" of the "kth" OFDM symbol, hn,m,l(k) is the channel gain or loss experienced at subcarrier with index "l" between the "mth" transmitting antenna and "nth" receiving antenna, sn,l(k) is the noise at the receiver experienced at subcarrier with index "l" of the "nth" receiving antenna, and yn,l(k) is a signal received at receiving antenna with index "n." Equation (2) further assumes that there are a total of M transmitting antennas, and a total of N receiving antennas when all receiving modules are considered, where in a single MIMO system N >= M.
While Eq. (2) illustrates a single MIMO system or a point-to-point MIMO system, or a multi-point-to-point MIMO system, the transmitting system 10 (transmitter (Tx) 20) as indicated in FIG. 1 could comprise at least two transmitters (transmitting subunits or sub-systems) 20, unit#1 Tx1 and unit#2 Tx2, as shown in FIG. 2, where unit#1 has at least one transmitting antenna 40-1, and unit#2 also has at least one transmitting antenna 40-3. These two units, i.e., unit#1 Tx1 and unit#2 Tx2, could be co-located or distributed in space, but have the possibility to exchange information using a link 120-1. The link 120-1 could be wireless, or optical, or any other communication media that enable communication between the at least two units Tx1 and Tx2. This kind of implementation is normally referred to as coordinated transmission [NPL4], but can still be modeled as Eq. (2). An alternative name includes CoMP (Coordinated Multipoint) transmission, or Cloud-RAN (Cloud Radio Access Network) with distributed radio units [NPL5].
The task of a system modeled as an SU-MIMO (Single User MIMO) receiver is therefore to estimate channel parameters hn,m,l(k), and using ZF (Zero-Forcing) algorithm [PTL1] as an example to regenerate an estimate
Figure JPOXMLDOC01-appb-I000002
of originally transmitted signals xm,l(k). This is illustrated in Eq. (3), where in general and as mentioned earlier, it is assumed that total number of receiving antennas "N" is greater than total number of transmitting antennas "M," and the transcript "H" indicates conjugate transpose of a matrix. Other methods such as SVD (Singular Value Decomposition) based approach with water filling, MMSE (Minimum Mean Square Error), MLD (Maximum Likelihood Detector) or iterative approach by successive interference cancellation could also be considered.
Figure JPOXMLDOC01-appb-I000003
Figure JPOXMLDOC01-appb-I000004
Figure JPOXMLDOC01-appb-I000005
…(3)
On the other hand, when multiple receiving modules are independent, and do not coordinate as in a case of MU-MIMO (Multi-User MIMO) OFDM system, signals transmitted by multiple antennas cannot be separated using a linear algorithm as indicated in Eq. (3). In such a case, there are two options: namely the first option of eliminating interference at the transmitter using a non-linear method or a linear method, and a second option of eliminating interference from non-desired signal at the each of the non-coordinating receivers using a non-linear method. The latter option [NPL6] is comparatively more complex than the former, and thus the present invention considers only a case where interference at the receivers is mainly mitigated by signal processing at the transmitter [NPL7], [NPL8] using precoding techniques. The method as taught by Spenser [NPL7] is a linear interference cancellation approach that employs block diagonalization of the MIMO channel matrix H. Other linear methods such as ZF (Zero-Forcing), MMSE (Minimum Mean Square Error) [NPL9], linear phased array antenna, and MRT (Maximum Ratio Transmission) could also be considered. All these methods fall under a wider class of linear beamforming technique.
FIG. 3 shows a general mode of implementing a transmitting system for MU-MIMO, with the system 20 having a stage for beamforming using a known technology. In FIG. 3, and as an example, signals to be transmitted, that is signal #1 10-1 and signal #2 10-2 are meant for receiver #1 90-1, while signal #(2K-1) 10-(2K-1) and signal #2K 10-2K are meant for receiver #K 90-K. If there are two receiver terminals Rx, then signal #2K 10-K will be represented as signal #4 10-4, while signal #(2K-1) 10-(2K-1) will be represented as signal #3 10-3. These respective signals to be transmitted are pre-processed by at least adding CRC (Cyclic Redundancy Check) bits, channel coding (using CC (Convolution Coding); Turbo Coding, or any other method), interleaving, modulation or mapping to the subcarriers of an OFDM system in the case of MIMO-OFDM system. The beamforming processing unit (or method) 900 includes a process or method that multiplies signals to be transmitted with a precoding matrix, using a method as explained in [NPL7], and the overall effective MIMO channel He as seen by the pre-processed signals can be represented as shown in Eq. (4), where Hek is the effective channel for receiver number "k," and it has been assumed that there are a total of "K" receiving modules within the MU-MIMO system as illustrated in FIG. 3. The symbol "0" in Eq. (4) represents a matrix that has zero entries, or very small valued entries in comparison to matrix Hek. It is therefore logical to also say that is a diagonal matrix, or a square matrix, or a rectangular matrix, or a lower triangular matrix, or an upper triangular matrix.
Figure JPOXMLDOC01-appb-I000006
…(4)
As can be seen from Eq. (4), the overall effective channel He basically converts an MU-MIMO system into multiple independent SU-MIMO systems.
In a case where number of receiving modules is more than the number of transmitting transducers or antennas (N >= M), it is possible to group the receiving modules into logical modules as indicated in FIG. 4. This kind of grouping then leads to logical modules (but not antennas) that are less than total number of transmitting modules. However, in this case, the MU-MIMO system will not be converted to multiple independent single MIMO systems by the beamforming processing unit 900 (or precoding), but rather the conversion will lead to multiple independent MU-MIMO systems, also referred to as logical module in the present invention. Within each logical module, such as Group#1 (90-G1), each of the physical module such as a first physical module Rx#1 90-1 and a second physical module Rx#2 90-2, must therefore each perform interference cancellation from its counterparts (Rx#1 and Rx#2) within the logical module 90-G1, based on the assumption that they share the same channel.
Note that according to patent literatures [PTL2], [PTL3], the receiving antennas of a physical module are considered as separate module, although in this case, signal received by multiple antennas on a physical module can coordinate, and perform signal processing for interference mitigation or cancellation. Patent literatures [PTL2] and [PTL3] also teach about setting a subset (or group) for each antenna of each receiver module, which implies that as the number of receiver modules and its corresponding number of antennas increases, the number of matrix inversion also increases, an issue which could raise computational load problem in a case of massive MU-MIMO.
As mentioned above, existing technology of linear precoding methods can be considered as including one method where pre-processed signal vector are multiplied with the inverse of channel matrix. The inverse of the channel matrix therefore forms part of the precoding matrix. Additional processing such as power control may also be done. However, from general theory of linear algebra, if the channel matrix is ill-conditioned, matrix inversion as a precoding method will lead to large amount of power being transmitted through a MIMO channel space that has higher signal loss. This can be a problem because the transmitter will consume more than necessary amount of power ([NPL5]).
In another method of linear precoding, pre-processed signal vector is multiplied with a matrix that maximally combines signal to a target receiver antenna. This method is generally referred to as the MRT (Maximum Ratio Transmission) precoding method. It is relatively simple compared with matrix inversion precoding method, and it can also be implemented in both digital domain and analogue domain. Its main problem is that it is only effective in a massive MIMO system with MIMO channel not being ill-conditioned, and can therefore be considered as not to being scalable from current non-massive MIMO systems.
In a third method of liner precoding, pre-processed signal vector is multiplied by the null space that is obtained by SVD (Singular Value Decomposition), QRD (QR-Decomposition) or any other method that generate a null signal space to multiple receiving terminals, modules or antennas. This method gives the best performance in terms of channel capacity in comparison to the above first and second linear precoding methods. However, this method (and especially SVD-based method) is relatively complex since it requires a higher computational load. This is explained further using the following equations for the case of SVD.
The MU-MIMO channel H can be represented by Eq. (5)
Figure JPOXMLDOC01-appb-I000007
…(5)
Assuming that signal vector to be transmitted is x, where within x there are signals or streams of data targeting specific receiver module in an MU-MIMO system, then this signal x is multiplied with precoding matrix V which is given by Eq. (6).
V = [V1 V2 ... VK-1 VK] ..(6)
Multiplication is such that effective channel He = HV as seen by the transmitted signal vector "x" is in general, a block diagonal matrix as illustrated in Eq. (4). In this equation, the number of columns of matrix Vk corresponds to number of data streams that are transmitted to receiver module #k. With the known technology, a precoding matrix can be generated by a first method using singular value decomposition as illustrated in step#1 and step#2 described below.
Step#1:
Define a MIMO channel matrix
Figure JPOXMLDOC01-appb-I000008
that excludes channel matrix Hk associated with receiving module number k (or receiver number k) where subscript symbol "T" indicates transpose of a matrix.
Figure JPOXMLDOC01-appb-I000009
…(7)
Step#2:
Perform SVD (Singular Value Decomposition) as illustrated in Eq. (8) on matrix
Figure JPOXMLDOC01-appb-I000010
to generate a right singular matrix
Figure JPOXMLDOC01-appb-I000011
where the superscript symbol "H" indicates complex conjugate transpose of a matrix. This kind of decomposition is illustrated in FIG. 5, where matrix Vk that spans the null space of matrix
Figure JPOXMLDOC01-appb-I000012
is also defined in FIG. 5 using matrix M3. In FIG. 5, symbol Ntx represents an effective total number of transmitting antennas of the transmitting system 10 of FIG. 1, matrix M2 is a zero matrix, and matrix M1 is a diagonal square matrix with eigenvalues. Details on characteristics of these matrices are well documented in literature of linear algebra, and it is well known by those who are familiar with linear algebra that equation E4-1 in FIG. 5 will also be true.
Figure JPOXMLDOC01-appb-I000013
…(8)
An alternative known technology for generating precoding matrix V can be done by a second method using QRD (QR Decomposition) [NPL11] or equivalently LQ decomposition as illustrated in step#1 and step#2 described below.
Step#1:
Define a MIMO channel matrix
Figure JPOXMLDOC01-appb-I000014
that excludes channel matrix associated with receiving module number k (or receiver number k) where symbol "T" indicates transpose of a matrix.
Figure JPOXMLDOC01-appb-I000015
…(9)
Step#2:
Perform QRD (or SVD) as illustrated in Eq. (10) on matrix
Figure JPOXMLDOC01-appb-I000016
(or in contrast to non-patent literature [NPL11], use matrix
Figure JPOXMLDOC01-appb-I000017
) to generate a matrix Vk that spans the null space of matrix
Figure JPOXMLDOC01-appb-I000018
. Location of matrix Vk after QRD is illustrated in FIG. 6 within matrix M8. As in the case of Eq. (8), the superscript symbol "H" indicates complex conjugate transpose of a matrix. Equation (11) can be implied from Eq. (10). In Eq. (11), matrix
Figure JPOXMLDOC01-appb-I000019
corresponds to matrix M10 in FIG. 6. Further, matrix M10 includes a lower triangular matrix (matrix M7) that can also be generated using LQ decomposition. A matrix M2 that is a zero matrix. A matrix M9 that spans the same space as the space which is spanned by matrix M4 of FIG. 5.
Figure JPOXMLDOC01-appb-I000020
…(10)
Figure JPOXMLDOC01-appb-I000021
…(11)
Now, the operations represented in Eq. (8) and Eq. (10) are computationally involving, and has to be done for each receiving module, of which the total number in this example has been assumed to be a symbol "K" that represents an integer. The issue of high computational complexity is a demerit, which results in a larger hardware in case of parallelism, much higher power consumption in case of limited parallelism or no parallelism, and hence an increase in the cost of transmitters.
The above mentioned two methods and their derivatives can be summarized using a flow chart as illustrated in FIG. 7, where prior to precoding process P900, a number of target receiving modules (or receiving terminals) are selected from a much larger number of possible receiving modules (P20-1) that shall receive data using the concept of MU-MIMO. Thereafter, within the precoding process P900, there shall be a first process P901 for selecting a first terminal (k = 1), a second process P910 that consists of step#1 and step#2 as explained earlier, where this process P910 evaluates the null space of MIMO channel associated with each of the selected receiving modules, and as illustrated in Eq. (7) to Eq. (11). There is also a third optional process P920 that evaluates effective channel Hek, in case this effective channel shall be used for post signal processing P12, a fourth process P902 that determines whether all the selected terminals have been considered, and a fifth step P903 to select another terminal and initiate second process P910 and third process P920. Finally, the post signal processing P12 of which could include but not limited to the following operations: SVD, power control, IFFT operations is done.
While FIG. 7 illustrates signal processing of a single terminal at a time, it should be obvious to those familiar with this kind of technology that a sub-set of terminals or all the terminals can be processed in parallel.
Note that the followign abbreviations are used in the following description.
CC Convolution Coding
CDMA Code Division Multiple Access
CoMP Coordinated Multipoint
CRC Cyclic Redundancy Check
FFT Fast Fourier Transform
IFFT Inverse Fast Fourier Transform
MIMO Multiple-Input Multiple-Output
MU-MIMO Multi-User MIMO
MLD Maximum Likelihood Detector
MMSE Minimum Mean Square Error
MRT Maximum Ratio Transmission
OFDM Orthogonal Frequency-Division Multiplexing
QRD QR-Decomposition
Rx Receiver
SVD Singular Value Decomposition
TDMA Time Division Multiple Access
Tx Transmitter
ZF Zero Forcing
US2011/0158335A1 US2009/0046009A US8,102,934B2 US7,778,342B2 US2012/0315938A1
Non-Patent Literature
G.J. Foschini and M.J. Gans, "On limits of wireless communications in a fading environment when using multiple antennas," Wireless Personal Communications, vol. 6, pp. 311-335, 1998. S.B. Weinstein, "The history of orthogonal frequency-division multiplexing," Communications Magazine, IEEE, vol. 47, Vincent K. N. Lau, Yu-Kwong Ricky Kwok, Channel Adaptive Technologies and Cross Layer Designs for Wireless Systems with Multiple Antennas, Wiley Series in Telecommunication and Signal Processing, a John G. Proakis, Series Edition, pp.17-18. Juho Lee, Younsun Kim, Hyojin Lee, Boon Loong Ng, D. Mazzarese, Jianghua Liu, Weimin Xiao, Yongxing Zhou, "Coordinated multipoint transmission and reception in LTE-advanced systems," Communications Magazine, IEEE, vol. 50, J. G. Andrews, et.al., "What will 5G Be?" IEEE Journal on Selected Areas in Communications, Vol. 32, No. 6, pp. 1065-1082, June 2014. K. Wong, et.al., "Optimizing the spectral efficiency of multiuser MIMO smart antenna systems," Proceedings of Wireless Network Conference, vol.1, 2000, pp. 426-430. Q. Spencer, "Zero-Forcing methods for downlink spatial multiplexing in multiuser MIMO channels," IEEE Transactions on Signal Processing, vol. 52, no. 2, pp. 461-471, February 2004. M. Costa, "Writing on dirty paper," IEEE Transactions on Information Theory, vol. 29, pp. 439-441, May 1983. J. Park, et.al., "A MMSE vector precoding with block diagonalization for multiuser MIMO downlink," IEEE Transactions on Communications, vol. 60, no. 2, pp. 569-577, February 2012. A. Okazaki, H. Iura, et.al., "A study on next-generation wireless access with higher frequency bands," IEICE Technical report, RCS2014-81, pp. 287-292, 2014. X. Hou, Z. Zang, et.al., "QRD-based MU-MIMO transmission scheme towards evolved LTE TDD system," IEEE Globecom Workshop, pp. 866-870, 2010.
Summary
As explained in previous section, a linear precoding method for MU-MIMO system that uses SVD or QRD (or its equivalent) to implement block diagonalization of an effective channel of MU-MIMO system, where data is transmitted from coordinating transmitting modules to multiple non-coordinating receiving modules (or terminals) offers better performance. The method is also scalable and can be used in MIMO systems with few or very large number of antennas. However, as the size of MIMO channel increases, the computational complexity becomes excessively large.
In one of the prior technology as indicated in a non-patent literature [NPL10], there is provided a method of reducing computational complexity by using the concept of sub-array. However, this method (and its related derivatives) reduces the total maximum number of data streams that can be transmitted using the multi-user MIMO concept. Essentially, the method reduces the degree of freedom that can be achieved as at least one of the number of coordinated transmitting antennas (or modules) and the number of terminals increases for a given number of transmitting antennas.
In yet another prior technology as indicated in a patent literature [PTL4], at least one receiving terminals are grouped in a first set and a second set, where users in the first set are considered first to optimize transmission to the first set. The second set is considered only whenever possible. Therefore, this patent literature does not essentially address a case where communication has to be done to all terminals while using the same channel, and at the same time minimize computational complexity. Related art includes a patent literature [PTL5] which splits receiving terminals into groups, but does not address terminals within a group for MU-MIMO signal reception.
Thus, there is a need in the art to minimize the computational complexity of a block diagonalization based multi-user MIMO transmission system, without especially reducing the degree of freedom of the transmitting antenna, and using excess power as in the case of zero-forcing method, while at the same time maintaining flexibility and scalability, and enabling MU-MIMO transmission to all selected terminals.
Therefore, an object of the present invention is to provide a low-complexity method for generating a precoding matrix for multi-user MIMO system for transmitting data to multiple modules (or terminals), where transmission is done by using the same transmission channel. Since the present invention employs block diagonalization, the object of the present invention is to retain flexibility of multi-user MIMO system such that the same algorithm, or method, can be scaled to fit any scale of design, while not reducing the degree of freedom of transmitting antennas.
According to a first aspect of the present invention, there is provided a wireless communication system, comprising:
a transmitter(s) that transmits at least two streams of signals by a transducer(s) through an MU-MIMO (Multi-User Multiple-Input Multiple-Output) channel; and
at least two receiving terminals that receive the at least two streams of signals from the transmitter(s) and detect at least one of the at least two streams of signals,
wherein the transmitter(s) comprises:
a pre-processing unit that pre-processes the at least two streams of signals using at least one of CRC (Cyclic Redundancy Check) attachment, channel coding and modulation;
a beamforming processing unit that performs a beamforming operation so that the at least two receiving terminals receive their target stream(s) with minimum interference from transmitted signals targeting at least one of the remaining receiving terminals; and
a post processing unit that post-processes the streams processed by the beamforming operation by using at least one of an OFDM (Orthogonal Frequency Division Multiplexing) operation, a filter, and an analogue to digital converter,
wherein the beamforming processing unit comprises:
a channel shortening unit that dynamically shortens matrix size of the MU-MIMO channel by reducing size of an MU-MIMO channel matrix depending on set criteria; and
a null space evaluating unit that generates null spaces for multiplying with the at least two streams of signals.
According to a second aspect of the present invention, there is provided a wireless communication method, comprising:
by a transmitter(s), transmitting at least two streams of signals by a transducer(s) through an MU-MIMO (Multi-User Multiple-Input Multiple-Output) channel;
by at least two receiving terminals, receiveing the at least two streams of signals from the transmitter(s) and detecting at least one of the at least two streams of signals,
by the transmitter(s), pre-processing the at least two streams of signals using at least one of CRC (Cyclic Redundancy Check) attachment, channel coding and modulation;
performing a beamforming operation so that the at least two receiving terminals receive their target stream(s) with minimum interference from transmitted signals targeting at least one of the remaining receiving terminals;
post-processing the streams processed by the beamforming operation by using at least one of an OFDM (Orthogonal Frequency Division Multiplexing) operation, a filter, and an analogue to digital converter;
dynamically shortening matrix size of the MU-MIMO channel by reducing size of an MU-MIMO channel matrix depending on set criteria; and
generating null spaces for multiplying with the at least two streams of signals.
According to a third aspect of the present invention, there is provided a medium storing a program that causes a transmitter to execute:
transmitting at least two streams of signals by a transducer(s) through an MU-MIMO (Multi-User Multiple-Input Multiple-Output) channel;
pre-processing the at least two streams of signals using at least one of CRC (Cyclic Redundancy Check) attachment, channel coding and modulation;
performing a beamforming operation so that at least two receiving terminals receive their target stream(s) with minimum interference from transmitted signals targeting at least one of the remaining receiving terminals;
post-processing the streams processed by the beamforming operation by using at least one of an OFDM (Orthogonal Frequency Division Multiplexing) operation, a filter, and an analogue to digital converter;
dynamically shortening matrix size of the MU-MIMO channel by reducing size of an MU-MIMO channel matrix depending on set criteria; and
generating null spaces for multiplying with the at least two streams of signals.
According to the wireless communication system and the wireless communication method, it is possible to minimize the computational complexity of a block diagonalization based multi-user MIMO transmission system, without especially reducing the degree of freedom of the transmitting antenna, and using excess power as in the case of zero-forcing method, while at the same time maintaining flexibility and scalability, and enabling MU-MIMO transmission to all selected terminals.
FIG. 1 is a block diagram illustrating fundamental constitution of a wireless communication system with a transmitter unit having at least two transducer (such as antennas) for converting multiple streams of signals to a suitable format for transmitting through a MIMO (Multiple-Input Multiple-Output) medium, or storage on a MIMO medium, and at least one receiver unit with at least one transducer (such as an antenna) for converting information or signals transmitted through a medium, or storage medium to a format that suitable for further signal processing. FIG. 2 is a block diagram illustrating a wireless transmitting unit or system with at least two transmitting modules (Tx) each having at least one transducer for transforming multiple streams of signals or data to a suitable format for transmission through a MIMO medium, or storage on a MIMO medium, and a link that enables exchange of information between the at least two transmitting modules. FIG. 3 is a block diagram illustrating fundamental constitution of a communication system with a transmitter unit having at least "M" transducer (such as antennas) for transmitting multiple streams of signal through MU-MIMO (Multi-User MIMO) media to at least two of the "K" receiving modules, with each receiving module having at least two receiving antennas with "2K" being at most equal to "M," the transmitter further including a pre-processing unit, a beamforming processing unit for eliminating interference at the "K" receiving units. FIG. 4 is a block diagram of a generalized multiple ("K > 1") receiving modules for receiving signals from an MU-MIMO channel, where each receiving module having at least two receiving antennas with "2K" being greater than the multiple number "M" of transmitting antennas as defined in FIG. 3, and a grouping of the receiving modules into groups of two to terminals in order to generate virtual receiving modules (terminals). FIG. 5 is a block diagram illustrating property of a right singular matrix (M6) and a matrix (M5) after SVD (Singular Value Decomposition) in accordance with the property of linear algebra. FIG. 6 is a block diagram illustrating property of a matrix after QRD (QR-Decomposition) of the transpose or conjugate transpose of a matrix (M5) in accordance with the property of linear algebra. FIG. 7 is a block diagram of a generalized related art (technology) for evaluating a precoding matrix using a method that evaluates null space of a part of an MU-MIMO channel matrix, and using the precoding matrix to evaluate effective channel as seen by a terminal after performing beamforming operation at a transmitter. FIG. 8 is a block diagram illustrating a system with components for implementing beamforming operation at transmitter in accordance with an exemplary embodiment of the present invention, the system comprising a channel shortening unit, a terminal classifier unit, a level unit for managing classification levels in accordance with the exemplary embodiment of the present invention, a null space evaluating unit (null space and effective channel calculator), and a data multiplier (precoding) unit. FIG. 9 is a block diagram illustrating a receiving module with multiple receiving transducers (antennas), the receiving module comprising a unit for dynamically aiding in the shortening of channel in accordance with the exemplary embodiment of the present invention. FIG. 10 is a block diagram illustrating details on the level unit as described in FIG. 8, the details of which include a location for storing or accessing indices of multiple receiving modules in MU-MIMO system, and a location for storing or accessing at least one of classification level of a group, null space of a group scheme and effective channel of a group. FIG. 11 is a block diagram illustrating details on the level unit as described in FIG. 8 using an example where there are ten receiving modules, and at the two given levels there are different number of groups each having different indices of the at least one of the multiple receiving modules. FIG. 12 is a block diagram illustrating a device or a system for implementing a program that implements beamforming in accordance with the exemplary embodiment of the present invention. FIG. 13 illustrates a flow chart from which a program for use in a device as illustrated in FIG. 12 can be written, or a system designed, the flow chart comprising mainly channel shortening method (or procedure), a method for deciding, controlling mode of classifying terminals, a method for managing the classifications at different levels, a method for calculating null spaces and effective channel, a method for controlling the order of processing null spaces and equivalent channels at each level, and a method for assigning new classification level. FIG. 14 is a table illustrating groups, terminals associated with the groups, null spaces and equivalent channels of the groups, and index of classification level associated with the first, the second and the third levels in accordance with the exemplary embodiment of the present invention using an example with ten receiving modules. FIG. 15 is a table illustrating groups, terminals associated with the groups, null spaces and equivalent channels of the groups if there are at least two terminals in a group, and index of classification level associated with fourth levels in accordance with the exemplary embodiment of the present invention using an example with ten receiving modules. FIG. 16 is a table illustrating groups, terminals associated with the groups, null spaces and equivalent channels of the groups, and index of classification level associated with the first, the second and the third levels in accordance with the exemplary embodiment of the present invention using an example with ten receiving modules, and channel shortening that results in one of null spaces being an identity matrix I, and hence need not be calculated. FIG. 17 is a block diagram that illustrates position M20 of a predefined matrix such as an identity matrix I, as defined in FIG. 16, and which according to the exemplary embodiment of the present invention implies that null of a sub-group need not be calculated. FIG. 18 illustrates an alternative method of implementing a flow chart as illustrated in FIG. 13, and in accordance with the exemplary embodiment of the present invention by rearranging the position of the procedures as described in FIG. 13. FIG. 19 illustrates a flow chart that summarizes an operation of implementing the exemplary embodiment of the present invention. FIG. 20 is a diagram illustrating a memory assignment using structures (as an example) or arrays to implement a method for beamforming in accordance with the exemplary embodiment of the present invention. FIG. 21 illustrates another flow chart that summarizes an operation of implementing the exemplary embodiment of the present invention.
In the present disclosure, there are various possible modes, which include the following, but not restricted thereto. Note also that the term "unit" in the following means not only a hardware unit but also a software module. Namely, the unit(s) in the following can be realized as a process(es) executed by a processor of a computer.
In a first mode, there is provided a wireless communication system according to the first aspect of the present invention.
In a second mode, there is provided a wireless communication system as set forth in the first mode. The beamforming processing unit may send channel-shortening related information to at least one of the at least two receiving terminals. The at least two receiving terminals may receive status related to the channel shortening operation of the transmitter(s), decode the status, and process received status signals using different modes depending on the decoded received status.
In a third mode, there is provided a wireless communication system as set forth in the first mode. The transmitter(s) may transmit at least three streams of signals by a transducer(s) through the MU-MIMO channel. The at least three receiving terminals may receive the at least three streams of signals from the transmitter(s) and detect at least one of the at least three streams of signals. The beamforming processing unit may perform a beamforming operation so that the at least three receiving terminals receive their target stream(s) with minimum interference from transmitted signals targeting at least one of the remaining receiving terminals. The null space evaluating unit may generate null spaces for multiplying with the at least three streams of signals. The null space evaluating unit may performs: grouping the receiving terminals into one group, initializing a classification level that is associated with the receiving terminals in a group, and assigning the classification level to the group; making a decision on classifying the receiving terminals in a group into at least two sub-groups where at least one sub-group comprises the at least two receiving terminals, and all sub-groups have the at least one receiving terminal, assigning classification level to each of the sub-groups considered as a virtual terminal, evaluating a null space of the MU-MIMO channel of at least one of the virtual terminals, evaluating an effective channel of the at least one virtual terminal by using the null space; and renaming or relabeling the sub-groups as independent groups, generating a new classification index and initiating a process that leads to making the decision being restarted for each of the renamed or relabeled groups.
In a fourth mode, there is provided a wireless communication system as set forth in the third mode. The beamforming processing unit may send channel-shortening related information to at least one of the at least three receiving terminals. The at least three receiving terminals may receive status related to the channel shortening operation of the transmitter(s), decode the status signal, and process received status signal using different modes depending the decoded received status signal.
In a fifth mode, there is provided a wireless communication system as set forth in any one of the first to fourth modes. The null space evaluating unit may perform making a decision on classifying the receiving terminals in a group into two sub-groups where at least one sub-group comprises the at least two receiving terminals or each of sub-groups comprises the at least one receiving terminals, assigning classification level to each of the sub-groups considered as a virtual terminal, evaluating a null space of the MU-MIMO channel of at least one of the virtual terminals, and evaluating an effective channel of the at least one virtual terminal by using the null space.
In a sixth mode, there is provided a wireless communication system as set forth in any one of the first to fourth modes. The beamforming processing unit may comprise a device that receives information related to the receiving terminals within MU-MIMO system, generates a precoding matrix, and multiplies the precoding matrix with at least two streams of signals to be transmitted. The device may comprise: a first device that dynamically reduces the size of the MU-MIMO channel matrix, and generates a status informing at least one of the receiving terminals to combine at least two of its received streams into one stream, or process the received streams without combination; a second device that classifies terminals in a group into two sub-groups if the group has at least two terminals, assigns the sub-groups a classification level, generates a GO or NO-GO command for enabling (GO) or disenabling (NO-GO) calculation of null spaces of MU-MIMO channel of each of the sub-groups, assigns the sub-groups to a classification level, renames the sub-groups as group, and assigns an effective MU-MIMO channel to the renamed sub-groups which are then considered as a new independent MU-MIMO channel for the renamed sub-groups; a third device that calculates null spaces of the at least one of the sub-groups within a group, and calculates effective channel if the GO command is received from the second device; a fourth device that keeps track of classification levels, number of groups and sub-groups within a classification level, classification level associated with each group at each level of classification, null space associated with a group or sub-group if the null space was evaluated by the third device, and an effective MU-MIMO channel is associated within a group or sub-group only if the effective MU-MIMO channel was evaluated by the third device; and a fifth device that generates a precoding matrix using all the null spaces evaluated at each of the classification level.
In a seventh mode, there is provided a wireless communication system as set forth in any one of the first to fourth and sixth modes. The channel shortening unit may perform: comparing a total number of transmitted streams or effective transmitting antennas with a total number of all receiving antennas; and enabling reduction of size of the MU-MIMO channel matrix if a ratio of the total number of transmitting antennas to the total number of all receiving antennas is greater than a set threshold, and otherwise disenabling reduction of size of the MU-MIMO channel matrix.
In an eighth mode, there is provided a wireless communication system as set fourth in any one of the first to fourth and sixth modes. The channel shortening unit may perform: generating a matrix that spans rows of the MU-MIMO channel matrix based on an assumption that a number of rows represents a total number of all receiving antennas; comparing the number of row of the matrix that spans the rows of the MU-MIMO channel matrix with the total number of all effective receiving antennas of the receiving terminals; and enabling reduction of size of the MU-MIMO channel matrix if the number of row of the matrix that spans the rows of the MU-MIMO channel matrix is less than the total number of all effective receiving antennas of all the receiving terminals combined, and otherwise disenabling reduction of size of the MU-MIMO channel matrix.
In a ninth mode, there is provided a wireless communication system as set forth in any one of the first to fourth and sixth to eighth moded. The reduction of size of the MU-MIMO channel matrix may be done by multiplying MU-MIMO channel matrix with a conjugate transpose of a matrix that spans the rows of the MU-MIMO channel matrix.
In a tenth mode, there is provided a wireless communication system as set forth in the ninth mode. The matrix that spans the rows of the MU-MIMO channel matrix may be obtained by evaluating SVD (Singular Value Decomposition) of the MU-MIMO channel matrix.
In an eleventh mode, there is provide a wireless communication system as set forth in the ninth mode. The matrix that spans the rows of the MU-MIMO channel matrix may be obtained by evaluating QRD (QR-Decomposition) of the transpose of complex conjugate of MU-MIMO channel matrix or LQ-decomposition of MU-MIMO channel matrix.
In an twelfth mode, there is provided a wireless communication system as set forth in any one of the third to fifth modes. The null space evaluating unit may generate a sub-group only if the original group before generation of a sub-group has at least indices associated with the at least two receiving terminals.
In a thirteenth mode, there is provided a wireless communication system as set forth in any one of the third to fifth modes. The null space evaluating unit may consider at least one of receiving transducers of a receiving module as a separate independent receiving terminal.
In a fourteenth mode, there is provided a wireless communication system as set forth in the first or second mode. The beamforming processing unit may comprises a device that receives information related to the receiving terminals within MU-MIMO system, generates a precoding matrix, and multiplies the precoding matrix with at least two streams of signals to be transmitted. The device may comprise: a first device that stores data, and a program for processing the data; and a computing unit that performs function of the program that is stored in the first device. The program may cause the computing unit to execute: dynamically shortening matrix size of the MU-MIMO channel depending on set criteria; sending channel-shortening related information to at least one of the receiving terminals; and generating null spaces for multiplying with the at least two streams of signals. The generating null spaces may comprise: grouping the MU-MIMO receiving terminals into one group, initializing a classification level that is associated with the terminals in a group, and assigning the classification level to the group; making a decision on classifying the receiving terminals in a group into two sub-groups where at least one sub-group comprises the at least two receiving terminals, assigning classification level to each of the sub-groups considered as a virtual terminal, evaluating a null space of the MU-MIMO channel of at least one of the virtual terminals, and evaluating an effective channel of the at least one virtual terminal by using the null space; and renaming or relabeling the sub-groups as independent groups, generating a new classification index and initiating process that leads to making the decision being restarted for each of the renamed or relabeled groups.
In a fifteenth mode, there is provide a wireless communication system as set forth in any one of the first to fourth modes. At least one of the receiving terminals may comprise: a multiple of receiving transducers; a pre-processing unit that filters and amplifies received multiple streams of signals from multiple transducers; a weighting unit; and a post-processing unit. The weighting unit may perform: receiving status information from the transmitter(s); and combining at least two of the multiple received streams of signals upon receiving a status that indicates combination is needed. The combining may comprise: multiplying the at least two streams using weights that are known at the transmitter(s), or from a set of fixed weights with indices that are known at the transmitter(s); and adding and combining the at least two streams into one stream. The post-processing unit may select either the reduced number of streams or all the streams depending on status of combination received from the transmitter(s).
In a sixteenth mode, there is provided a wireless communication system as set forth in the fifteenth mode. The transmitter(s) may transmit an index associated with a known weight and a known dimension to at least one of the receiving terminals upon determining that MU-MIMO channel shortening operation need to be done. The at least one of the receiving terminals may process the index.
In a seventeenth mode, there is provided a wireless communication system as set forth in the sixteenth mode. The transmitter(s) may transmit an array of weights with a specified dimension to at least one of the receiving terminals upon determining that MU-MIMO channel shortening operation need to be done. The at least one of the receiving terminals may process the weights.
In an eighteenth mode, there is provided a wireless communication system as set forth in the fifteenth mode. At least one of the receiving terminals may transmit to the transmitter(s) an index associated with a known weight and a known dimension upon receiving status from the transmitter that channel shortening operation need to be done. The at least one of the receiving terminals may process the index.
In a nineteenth mode, there is provided a wireless communication system as set forth in the eighteenth mode. At least one of the receiving terminals may transmit to the transmitter(s) an array of weights with a specified dimension upon receiving status from the transmitter(s) that channel shortening operation need to be done. The at least one of the receiving terminals may process the index.
In a twentieth mode, there is provided a wireless communication method according to the second aspect of the present invention.
In a further mode, there is provided a medium according to the third aspect of the present invention.
In a twenty-first mode, there is provided a method or system for jointly precoding data using beamforming in wireless communication system for MU-MIMO (Multi-User MIMO) reception by at least three receiving terminals. The beamforming comprises at least a step for dynamically shortening MU-MIMO channel of receiving modules(or terminals) that have been selected for MU-MIMO, grouping the MU-MIMO receiving terminals into one group, and initializing a classification level that is associated with the terminals in a group, and assigning the classification level to the group. The beamforming comprises a second step for making decision on classifying receiving terminals in a group into two sub-groups, assigning classification level to the sub-groups otherwise considered as virtual terminals, evaluating the null space of MIMO channel of a virtual terminal, evaluating effective channel of the virtual terminal by using its null space. The beamforming comprises a third step of renaming or relabeling the sub-groups as independent groups, generating a new classification index and initiating process that leads to the second step being restarted for each of the relabeled groups.
In a twenty-second mode, there is provided a device as shown in FIG. 8 for jointly precoding data 900 to be transmitted to multiple receiving modules or antennas or terminals as depicted in FIG. 3, where the transmitter is configured or designed with multiple transducer, where in one of the examples the transducer represents antennas, and the multiple receiving modules(or terminals) have at least one transducer (or receiving antenna); the device of which is constituted of an input for receiving information 910-10 related to the multiple terminals targeted for MU-MIMO reception of signal, a terminal classifier signal processing unit 910 with functionality for shortening MU-MIMO channel and classifying terminals into groups associated with different classification level. The device further comprises a null space evaluating unit (or units) 400 for calculating null space of a matrix upon receiving a command, a level unit 920 with different levels for storing information related to groups of multiple receiving modules at each classification level, and a data multiplier unit 940 for multiplying pre-processed data with the precoding vectors or matrices obtained from the level unit 920. The channel shortening unit 910-1 can be enabled or disabled either manually or based on characteristics of signal being processed, and when the channel shortening unit 910-1 is enabled it has a functionality for reducing the overall effective size of MU-MIMO channel 60, or matrix H. The terminal classifier signal processing unit 910 initially groups all terminals into a single group, initializes classification level, classifies terminals into two sub-groups with at least one of the groups having at least two terminals while considering each sub-group as a virtual terminal, and assign classification level to the two sub-groups of a group. The null space evaluating unit 400 evaluates the null space associated with all the virtual terminals in a sub-group, where in this mode of implementation there are only two virtual terminals in a group. The level unit 920 thereafter associates null space of sub-group with the null space and equivalent channel matrix, while also informing terminal classifier signal processing unit 910 to check whether further classification can be done, where this checking involves a step of renaming the sub-groups as independent groups (or independent MIMO systems), incrementing the classification level, assigning a new classification level to a group if the group has at least two physical terminals and generating sub-groups (virtual terminals) for the group with at least one of the virtual terminals having at least two physical terminals; the process of null space calculation, associating a new null space and equivalent channel at each of the new classification level, and renaming the sub-groups as a groups is repeated until further classification is not possible.
In one of the examples of MU-MIMO system, there are nine terminals (symbol "K" as defined in FIG. 4 is nine), and each of the terminals is assumed to have two receiving antennas with capabilities of receiving two streams while the transmitter has more than 18 effective MIMO antennas. The terminal classifier signal processing unit 910 initially sets one group G-1 containing all the terminals at level 0 (of the classification level), where the group is then divided into two sub-groups, a first sub-group (G-L0-1) and a second sub-group (G-L0-2) with respectively four and five terminals; and in the next level 1 after renaming the sub-groups in level 0, generates two groups in level 1, each group with two sub-groups, and null space (example N1-1 for first sub-group G-L1-1 in the first group G-1 of level 1) and equivalent channel (example E1-1 of the same sub-group G-L101). And a level 2 obtained in a similar manner as level 1, as indicated in FIG. 14, with its corresponding null space and equivalent channel; a level 3 generated according to FIG. 15 where after renaming the sub-groups generated in level 2, a terminal classifier signal processing unit 910 determines that only one group G-1 of level 3 has at least two terminals and thus marks all remaining groups (using a flag or symbol "X" or "I") so that their null spaces are not calculated, classification level indicator 920-L retained at previous value, where the only group G-1 is divided into a first sub-group G-L3-8 and a second sub-group G-L3-9, and evaluating the null space and optional (in this case, since there is only one terminal per sub-group) equivalent channel such as E2-2-2-1 for the first sub-group G-L3-8 in group G-1 of level 3.
In a twenty-third mode, there is provided a computing unit 800 or a sub-system as shown in FIG. 12 within block 900 in FIG. 3 for precoding data. The computing unit 800 comprises a memory (data storage) unit 810 with its input 811 and output 812. The memory unit 810 stores data and program. There is also provided a computational and decision unit 820 for processing a program derived from a flow chart as shown in FIG. 13, an input 821 for receiving commands, and an output 822 for conveying computational status of the computing unit 800. Upon the computing unit 800 receiving a start 20-1 command, the computing unit 800 starts a program for processing data in the memory unit 810 accordingly. In the first step S10, the program takes note of terminals Rx (receiving modules or antennas) or indices of terminals that have been set for MU-MIMO access, the number of these terminals "K," and their corresponding MIMO channel, followed by shortening the MIMO channel 60 of MU-MIMO access using a matrix that spans the MU-MIMO matrix space by SVD, QRD or any other method, and identifying all these terminals as belonging to a single group. In the second step S11, classification level is initialized to some initial value (as an example 0). In the third step S12, decision is made on whether a group (initially there is only one group) can be divided into two sub-groups based on if there are at least two terminals in a group 310 or at least three terminals, after which information related to sub-groups is processed using two alternative steps. In the first alternative, there is a fourth step S13 that classify terminals in a group into two sub-groups with each sub-group having one terminal. In the fifth step S14 of the first alternative, a null space corresponding to channel matrix of a first and second sub-group is evaluated depending on the command received from step S10. Depending on the command received, there is a sixth step S15 of the first alternative where effective channel of each of the two sub-groups are calculated. In the second alternative, there is a fourth step S23 that classify terminals in a group into two sub-groups with at least one sub-group having at least two terminal. In the fifth step S24 of the second alternative steps, null spaces corresponding channel matrix of a first and second sub-groups are evaluated depending on the command received from step S10. Depending on the command received from step S10, there is a sixth step S25 of the second alternative steps, where effective channel of the sub-groups are calculated. Depending on the status of a seventh step S16, the third step S12 and the fourth, fifth and sixth steps, respectively of the first alternative steps {S13, S14, S15} or the second alternative steps {S23, S24, S25} are repeated if there are any groups that have not been processed. Upon completion of all groups an eighth step S17 is executed with result being that all sub-groups are now renamed as independent MU-MIMO channel, and classification level is increased to the next level (as an example, the classification level could be increased from zero to one). At each instance of the decision-making at third step S12, the program monitors whether there has been a change in classification and the sub-groups have been renamed as group, thereby checking whether newly generated group (or groups) contain at least two terminals and assigning the group current classification level, with groups that cannot be divided into sub-groups flagged (as an example using a symbol "X" as shown in FIG. 15) so as to retain their classification level even if the group is copied to next level as shown in FIG. 15.
In a twenty-fourth mode, there is a method or a system for shortening MU-MIMO channel by generating a first matrix that spans the MU-MIMO channel, multiplying the transpose or conjugate transpose of the first matrix with the MU-MIMO channel to generate a first effective MIMO channel with a reduced dimension; using the first effective MIMO channel to perform beamforming according to the twenty-first mode, the twenty-second mode, or the twenty-third mode of the present invention.
In a twenty-fifth mode, there is provided a method, a system or a program for dynamically deciding on whether shortening MU-MIMO channel in accordance with the twenty-fourth mode should be done or not done. In the dynamic decision, decision is based on total number of receiving modules (or total number of receiving antennas of all receiving modules, or number of receiving transducers per receiving module) that have been selected for MU-MIMO with respect to total number of transmitting transducers or characteristic of MU-MIMO channel. When a decision is made to shorten the channel at the transmitter the dimension of MU-MIMO channel matrix shall be reduced according to twenty-fourth mode, while if a decision is made to shorten the MU-MIMO channel at the receiver, the transmitter shall generate a status, a command or information to at least one of the MU-MIMO receiving terminals.
In a twenty-sixth mode, there is provided at least one receiving module in MU-MIMO wireless communication. In the receiving module, there is provided a method of receiving a dynamically generated status report for shortening MU-MIMO channel in accordance with twenty-fifth mode, a system, or method, or a program for merging at least two streams that have been received from MU-MIMO channel using known weights that have been generated in advance, the weights of which could be associated with an index, or using weights generated by receiving module, and reporting back to the transmitter information related to the weights.
The description of the exemplary embodiments of the present invention is intended to be read while referring to the attached figures, with the numbers within the drawings representing similar kind of a signal or data or a process.
<First Exemplary Embodiment>
According to a first exemplary embodiment of the present invention, there is provided a multi-user MIMO (MU-MIMO) system as shown in FIG. 3. The MIMO-system comprises: at least one transmitting module as shown in FIG. 2, with multiple transmitting antennas system configured to transmit at least three signals (an exemplary signal: 10-1) to at least three terminals; a transmission medium 60 with a common wireless channel through which the at least three signals (an exemplary signal: 10-1) are transmitted; and at least three receivers Rx (two of which are shown in FIG. 3) that do not necessarily cooperate to process signals that are transmitted by the transmitter. The transmitter of the system comprises a pre-processing unit 11 for performing at least one of the following operations: adding CRC (Cyclic Redundancy Check) bits, channel coding, interleaving, rate matching, modulation or any other signal processing that may aid in identifying the signal of interest at the multiple receivers. Furthermore, the transmitter 20 of the MIMO system as shown in FIG. 3 comprises a device, a processor, a system or a program for implementing beamforming using the present exemplary embodiment as will be explained in the following.
In the present exemplary embodiment, beamforming processing unit (or process) 900 is configured as shown in FIG. 8. In the present exemplary embodiment of the present invention, there is provided a first input 910-10 that receives information related to at least three (much higher number is recommended) receiving terminals that have been selected MU-MIMO, two (90-1 and 90-2) of which have been shown in FIG. 3 and "K" of which have been shown in FIG. 4 (90-1 to 90-K). The symbol "K" represents number of receiving modules each with at least one receiving antenna, and the number "K" is greater or equal to three. The information received (signal 910-10) contain at least a terminal index "k" of all the selected terminals, corresponding MIMO channel Hk as seen by each of the selected MU-MIMO terminals, and as illustrated in Eq. (5).
There is also provided a terminal classifier signal processing unit 910 that comprises a channel shortening unit 910-1 the reduces the effective size of MU-MIMO channel matrix upon being activated, and a terminal classifier unit 910-2 that gradually or successively classifies the "K" terminals into multiple levels, or groups, or sub-groups.
The channel shortening unit 910-1 evaluates a matrix (M10) that spans MU-MIMO channel matrix if the ratio of number effective transmitting antennas to the total number of all receiving antennas of at least all the three receiving terminals ("K") is greater than some threshold, or if preset command has been activated manually. This reduction could be done, for example, by using QR-decomposition, SVD or any other method that generates an orthonormal, or orthogonal matrix, or any other matrix that spans the rows of MIMO channel matrix H which has been defined in Eq. (4). Referring to this orthonormal matrix with a symbol QS, the shorted MIMO channel matrix shall be obtained as shown in Eq. (12).
HS = H×QS H×ΣS
…(12)
In Eq. (12), the symbol ΣS represents a diagonal matrix (which could be an identity matrix), or a non-diagonal matrix that could be used to control power or redistribute signal among the transmitting antennas. The channel shortening is quite effective when number of transmitting transducers (or antennas) is much more than number of receiving modules (or terminals), or when QRD or LQ-decomposition (LQD) is used to evaluate the matrix that spans signal space of MU-MIMO channel matrix. As an example, when there are 1024 transmitting antennas, and 128 terminals. In fact, with QRD or LQD approach, only the null space associated with one sub-group need to be calculated. In such a case, the channel shortening unit 910-1 will raise a FLAG to disable unnecessary evaluation of a null space of the second sub-group, as the null space is composed of a section M20 with an identity matrix, or a section with permutated identity matrix as shown in FIG. 17. Further, matrix M20 can be replaced with any predetermined orthonormal matrix, or any other matrix. This basically implies that null space associated with the second sub-group (or the null space of first sub-group) need not be calculated. Essentially, the effective channel of the second sub-group need not be calculated if an identity matrix or its permutation is used as section M20 of FIG. 17.
The matrix (M10) or conjugate transpose of the evaluated matrix M10, is multiplied with MU-MIMO channel matrix to generate a new MU-MIMO channel matrix M11 that has a reduced dimension. Further, if the number of rows of the new MU-MIMO channel matrix M11 is greater than number of its column, the channel shortening unit 910-1 generates a status ST1 that informs at least one of the receiving terminals to reduce the number of its effective receiving antennas in order to reduce the number of rows of matrix (M10). In this mode of implementation, at least one of the receiving terminals with at least two receiving antennas receives the status ST1 to reduce effective number of its antennas 70 as shown in FIG. 9. This is achieved by multiplying signals processed at a pre-processing unit 80-100, with at least two weights, a first weight W1 and a second weight W2, and combining the weighted signals using an adder 80-202 to generate a third signal 80-301 for further processing. In case the terminal does not receive the status ST1, the post-processing unit 80-300 ignores signal 80-301 after an adder 80-202 (or ignores addition) and instead uses the non-added signals 80-302.
In the terminal classifier signal processing unit 910 there is also provided a first output signal 910-20 that is used to provide information on terminals whose data will be transmitted, their pre-coded data and channel state after implementing beamforming in order to enable a scheduler to determine at least modulation level, coding rate and power for transmitting data specific to a particular terminal. Further, terminal classifier signal processing unit 910 has a second output signal 910-30 for providing information to a level unit 920, the information of which includes received MU-MIMO channel matrix or shortened MU-MIMO channel matrix (M10), terminals which have been classified into a new level or sub-groups, and provide a command like information that activates evaluation of a null space (by a null space evaluating unit 400) of a group of terminals at particular level, or the null space of single terminals in case a group at a particular level that has only two terminals or in case channel shortening enables computation of null space associated only one sub-group as explained earlier. In addition, the terminal classifier signal processing unit 910 has a second input signal 910-40 from a level unit 920 for receiving information related to a group with at least two terminals, classify the terminals in a group at any level, and generating necessary output information through the first output signal (output number#1) 910-20 and the second output signal (output number#2) 910-30 as explained above. While any method can be used to evaluate precoding matrices (or null spaces) according to present exemplary embodiment, QRD or LQ-Decomposition method are recommended due to their simplicity.
The level unit 920 receives information from terminal classifier signal processing unit 910 using the second output signal 910-30, and sends information to terminal classifier signal processing unit 910 using the second input signal 910-40. The information (the second input signal 910-40) that the level unit 920 sends to terminal classifier signal processing unit 910 includes number of terminals in a group at a particular level and their indices, level of a group through which the terminal classifier signal processing unit 910 decides on whether to further classify terminals in a group or sub-group, and consequently increase the classification level. The level unit 920 also has multiple outputs (these outputs could be multiplexed into a single output) associated with each classification level for sending information related to MIMO channel of at least one of the sub-groups in a group including two sub-groups. This information is sent only if terminal classifier signal processing unit 910 has generated a command that the null space or effective channel should be calculated.
As indicated in FIG. 8, and further illustrated in FIG. 10, the level unit 920 has multiple levels for classifying into levels multiple terminals in each group at each level. It also has a memory or a kind of storage method for storing structures of groups 920-G, where each structure of group contains indices of terminals. In some cases, there could be only one index, implying that the group cannot be classified further to a higher level. Note that, the structure may also contain indices of antennas of all the receiving modules, or indices of logical (or effective) antennas of all the receiving modules in case at least one of the terminals received a status command ST1 to shorten its channel, and the at least one terminal effected the process as illustrated in FIG. 9. Further, each structure has a pointer 920-P to (or a way of associating a group or sub-group with) a classification level 920-L, and null spaces 920-N (or precoding matrix) and possibly effective channel of subgroups in the structure that has been evaluated by the null space evaluating unit 400. At each level unit 920, there is provided an output signal 910-40 for sending information to terminal classifier signal processing unit 910 that determines whether a sub-group can be further classified. Classification is done using the present exemplary embodiment if a sub-group or group has at least three terminals, and using a known technology if a group has only two terminals.
FIG. 11 shows the level unit 920 with at least two levels, where there are ten terminals that have been selected for multi-user MIMO signal reception from a transmitter with at least ten receiving modules. In a more general example, at least one terminal may have at least two antennas to enable processing of status command ST1 upon its reception, and in this case, the transmitting modules shall also have a total of at least 20 antennas (or transducers). In the very first instance, terminal classifier signal processing unit 910 receives MIMO channel information Hk associated with all the ten terminals ("K = 10") that have been labeled as U1 to U10, and at least one of depending on the total number of transmitting modules and upon receiving a channel shortening command, the channel shortening unit 910-1 reduces the size of the MIMO channel matrix.
The terminal classifier signal processing unit 910 also comprises a terminal classifier unit 910-2 that classifies the terminals into two sub-groups, where the first sub-group G1 has terminals labeled as U1 to U4, while the second sub-group has terminals labeled as U5 to U10. Note that when there are more than two terminals in a group, at least one of the sub-groups should have at least two terminals in accordance with the present exemplary embodiment. The terminal classifier signal processing unit 910 also assigns the current classification level (which has been initialized to zero) to each of the sub-groups, and sends a command to the null space evaluating unit 400 through port 910-30, and a second port 920-20, to evaluate null space and effective channel of each of the two sub-groups if necessary.
Evaluation of the above mentioned null spaces and effective channel could be calculated using SVD, QRD (as explained earlier), or any other method that evaluates null space of a matrix. This mode of evaluation is illustrated in the following three steps.
Step#1:
Define a MIMO channel matrix
Figure JPOXMLDOC01-appb-I000022
that excludes channel matrix of a sub-group G1, U1 to U4 that is associated with the very first group where superscript symbol "T" indicates transpose of a matrix.
Figure JPOXMLDOC01-appb-I000023
…(13)
Step#2:
Perform QRD (or SVD) as illustrated in Eq. (10) on the matrix
Figure JPOXMLDOC01-appb-I000024
(or the matrix
Figure JPOXMLDOC01-appb-I000025
) to generate a matrix VG1,0 that spans the null space of the matrix
Figure JPOXMLDOC01-appb-I000026
. The matrix VG1,0 is the null space of sub-group G1, but it is only considered to be associated with sub-group G1. Note that the "0" in the subscript after a comma "," indicates classification level. Location of matrix VG1,0 after QRD corresponds to a case of Vk as illustrated in FIG. 6 within matrix M8. As in the case of Eq. (8), the superscript symbol "H" indicates complex conjugate transpose of a matrix. Equation (14) can be implied from Eq. (10). In Eq. (11), a matrix
Figure JPOXMLDOC01-appb-I000027
corresponds to matrix M10 in FIG. 6. Further, as explained earlier, a matrix M10 includes a lower triangular matrix (matrix M7) that can also be generated using LQ decomposition; a matrix M2 that is a zero matrix; a matrix M9 that spans the same space as the space which is spanned by a matrix M4 of FIG. 5; and matrix M3 that spans the null space of the matrix
Figure JPOXMLDOC01-appb-I000028
.
Figure JPOXMLDOC01-appb-I000029
…(14)
Figure JPOXMLDOC01-appb-I000030
…(15)
Step#3:
Repeat Step#1 and Step#2 for the second sub-group G2, at classification level "0" only if the null space is not an identity matrix. This scenario arises if channel shortening is done according to the present exemplary embodiment.
Step#4:
Multiply channel matrix H with the first null space VG1,0 and a second null space VG2,0 as evaluated in Step#1 to Step#3 to obtain a first effective channel He1,0 and a second effective channel He2,0. Once again, the "0" in the subscript indicates classification level. From this multiplication, signal transmitted to a first sub-group do not cause interference to a second sub-group of a group, hence transforming a single MU-MIMO system to two independent MU-MIMO systems.
Next, the current level (initially it is level Unit#0) of the level unit 920 consults terminal classifier signal processing unit 910 about its sub-groups. In this case, a first sub-group G1 and a second sub-group G2 are now renamed as a first group G1 and a second group G2. For each of the newly named groups (the first group G1 and the second group G2), terminal classifier signal processing unit 910 determines whether each of groups (at this instance, the groups are considered as completely independent groups) can be classified further into sub-groups. In the example provided in FIG. 11, this is possible where the first group G1 is divided into two sub-groups, a first sub-group G1-1 and a second sub-group G1-2, and the second group G2 is divided into two sub-groups, a first sub-group G2-1 and a second sub-group G2-2, and sub-groups are assigned an incremented classification level number which in this case is classification level #1, and all these information including effective channel of the two groups (first group G1 and a second group G2) is transferred to level unit#1, and an execute command sent to the null space evaluating unit 400 through port 910-30, through an interface 920-20, and a second port 920-20. Next, a null space and an effective channel for each sub-group in a group is evaluated as explained earlier.
The above mentioned process is repeated until further classification is not possible. Finally, a combination of all the null spaces that have been evaluated at each classification level (or level unit 920-1) are combined as shown in Eq. (16) to generate a precoding matrix for transmitting data. At each level, the size of matrix within the effective MIMO channel matrix gradually reduces, and finally yielding a block diagonal matrix as illustrated in Eq. (4), but with a reduced complexity. The final precoding matrix is obtained as indicated in Eq. (16) where null spaces evaluated at different levels are combined. Note that multiplication can also be done from right to left by first multiplying signal to be transmitted by null spaces retrieved through the highest level 920-1 of the level unit 920 that is connected to the data multiplier unit 940 according to FIG. 8.
Figure JPOXMLDOC01-appb-I000031
Figure JPOXMLDOC01-appb-I000032
…(16)
In case channel shortening is implemented, final precoding matrix is obtained as indicated in Eq. (16) where null spaces evaluated at different levels are combined together with the channel shortening matrix QS, and the control matrix ΣS, as shown in Eq. (17). Further, as explained in FIG. 13, some of null spaces can be preset to reduce computational load in Eq. (16) or Eq. (17).
Figure JPOXMLDOC01-appb-I000033
Figure JPOXMLDOC01-appb-I000034
…(17)
It is also possible to change the position of control matrix as shown in Eq. (18).
Figure JPOXMLDOC01-appb-I000035
Figure JPOXMLDOC01-appb-I000036
…(18)
The step-by-step generation of precoding matrix using initially a small number of virtual terminals (or sub-groups), results in considerable reduction in computational complexity especially when number of transmitting antennas (or transducers) is large as in a case of massive MIMO system, and a large number of receiver terminals are supported in a multi-user MIMO system. The reason is as follows. Computations, which under a known technology could be in the order of O(ND 2) or O(ND 3), are done for each terminal, where symbol ND represents dimension of MU-MIMO channel. It is true that these computations are done twice at the initial level in the present exemplary embodiment. However, when the classification level increases to the next level after the initial level, the value of symbol ND reduces, and even though MU-MIMO computations is done four times in the next level after the initial level, reduced size of ND at the next level plays a significant role in reducing complexity. In fact, by further enabling channel shortening, it is possible to reduce the number of times that null spaces are calculated hence considerably reducing computational complexity.
<Second Exemplary Embodiment>
In a second exemplary embodiment of the present invention, an MU-MIMO system as shown in FIG. 3 that is been configured using at least one transmitting module as shown in FIG. 1, or two coordinating transmitting modules as shown in FIG. 2, with multiple transmitting antennas system is configured to transmit at least three streams of data or signals (exemplary stream: 10-1), a transmission medium 60 with a common wireless channel through which the at least three signals (exemplary signal: 10-1), are transmitted, and at least three receivers Rx (two of which are shown in FIG. 3, where K >= 3) that do not directly cooperate to process signals that were transmitted by the transmitter. The transmitter of which comprises a pre-processing unit 11 that performs at least one of the following operations: adding CRC (Cyclic Redundancy Check) bits, channel coding, interleaving, rate matching, modulation and any other signal processing that may aid in identifying the signal of interest at the multiple receivers. Furthermore, the transmitter 20 of the MIMO system as shown in FIG. 3 comprises a device, a processor, a system or a program for implementing beamforming with the motivation being somehow similar to a known technology, but using the present exemplary embodiment as will be explained in the following.
Further, the beamforming processing unit 900 is implemented using a computing unit 800 as shown in FIG. 12. The computing unit 800 comprises a memory (or a storage) unit 810 that stores data and a beamforming signal processing program. The computing unit 800 further comprises a computational and decision unit 820 that may include hardware accelerators for evaluating null spaces of a matrix or vector. Data is sent into the beamforming processing unit (i.e., the computing unit 800) through an input port(s) 811, and retrieved from the computing unit 800 using an output port(s) 812. Further, the computational and decision unit 820 has an input port(s) 821, through which the computational and decision unit 820 receives instruction that includes location of data in the memory unit 810, and preset commands that enables channel shortening as explained in the first exemplary embodiment of the present invention. The computational and decision unit 820 also has an output port(s) 822, through which the computational and decision unit 820 can report its status, such as the status ST1 to a terminal informing the terminal to reduce its effective number of antennas in accordance with the first exemplary embodiment of the present invention.
Within the memory unit 810, there is provided a program or a method as illustrated in FIG. 13. The program of FIG. 13, upon receiving a start command 20-1 based on availability of data that includes number of terminals (for explanation, it is assumed in FIG. 11 that the terminals have been labeled from U1 to U10) that have been selected for MU-MIMO signal reception, will start processing the information 20-1 using an initial step S10. Within the initial step S10, a decision is made on whether to shorten MU-MIMO channel in accordance with the channel shortening procedure as described in the first exemplary embodiment of the present invention (based on externally received command, or based on the ratio of total number of receiving antennas to the total number of transmitting antennas being less than a preset value). Further, in the initial step S10, all terminals are grouped into a single group (as an example group G-1 illustrated in FIG. 14).
In the first step S11 after the first initial step, classification level is initialized to zero, and the single group G-1 at the initial step S10, are assigned the classification level. Other than an integer, classification level can be assigned any number or enumerated index or name.
In the second step S12, the program of FIG. 13 initially checks whether there are at least two terminals (K >= 2) within a group of terminals as initially set in the initial step S10. Now, if there is only one terminal (K = 1) in the initial group as defined in the first step S10, the program of FIG. 13 initiates the termination process 12, a process that may include additional processing such as SVD and power control. Under the second option, if the group has at least two terminals (K >= 2) the program of FIG. 13 classifies the at least two terminals into two sub-groups in accordance with a kind of grouping process that may include a level of correlation of the channels of the receiving terminals.
According to a first alternative method, and in the third step S13, and as an example, if there are two terminals in a group, then accordingly, the terminals are classified into two sub-groups with each sub-group having a single terminal. If there are at least three terminals in a group, the terminals are classified according to a second alternative method into two sub-groups according to the third step S23, with at least one of the sub-groups having at least two. Thereafter, each sub-group is assigned a classification corresponding to current level of the terminals. When the program starts, the classification level is zero, so each sub-group will be assigned a classification level zero, as an example.
If each sub-group has only one terminal the null space calculation (S14) of at least one of the terminal is evaluated in first alternative fourth step S14 using step#1 as illustrated in Eq. (12), followed by step#2 as illustrated in Eq. (13) and Eq. (14). As explained in the first exemplary embodiment of the present invention, only the null space of one sub-group need to be calculated if channel shortening is done using QRD.
Thereafter, a first alternative optional fifth step S15 has an operation for evaluation of effective channel within this group.
In this program of FIG. 13, and in order to explain operation of the program of FIG. 13, it has been assumed that there are nine terminals labeled from U1 to U9. Therefore, the second step S12 with decision (310 and 330), using command from the initial step S10 associated with channel shortening, and the steps of monitoring group 320 will generate commands or flags that result in execution of a second alternative third step S23 that generates two sub-groups, with each sub-group having at least two terminals. One possible classification generates two sub-groups, where the first sub-group G1 has terminals labeled as U1 to U4, while the second sub-group has terminals labeled as U5 to U9. As explained earlier, these two sub-groups are assigned a classification level zero as indicated in FIG. 14.
Next, in fourth step S24 of the second alternative method, the program generates null space (S24) of both the sub-groups or only one sub-group depending on the command received. And in fifth step S25 of the second alternative method, effective channel of at least one of the sub-group are evaluated (S25) as explained in Eq. (12), Eq. (13) and Eq. (14), respectively for step#1, step#2, Step#3 and Step#4.
In the sixth step S16, the program determines whether all groups have been considered. When the program starts, there is only one group, hence the program in FIG. 13 makes a decision that all groups have been considered at the current level (Level 0) as indicated in FIG. 14, then in the seventh step S17, the sub-groups are relabeled as groups, and a new classification level is generated. In this example, if the current level is zero ("0"), then the new classification level is generated as "1." Note that at higher classification level, there are multiple number of groups, hence the program repeats previous steps through the second step S12 until all groups in the current classification level have been considered independently.
Once all groups have been considered, each of the sub-groups in each group is relabeled in seventh step S17 as a group (in this example as group G-1 and group G-2) and assigned a new classification level, level "1." The program then goes back to the second step S12 of decision and classification (310, 320 and 330), by considering each group (group G-1 and group G-2) independently to determine whether the terminals within each of the independent groups can be classified into sub-groups. As one of the examples, and with nine terminals, group G-1 will be classified into two sub-groups (G-L1-1 and G-L1-2) each with terminals labeled as U1 to U2, and U3 to U4, respectively. While group G-2 will be classified into two sub-groups (G-L1-3 and G-L1-4) each with terminals labeled as U5 to U6, and U7 to U9, respectively. This information is passed to next level (Level 1) as illustrated in FIG. 14.
The above mentioned process is repeated over and over until there is a group or groups that have got only one terminal as indicated in FIG. 15. These groups (example G-1 of Level 2) cannot be classified after relabeling the sub-groups as group, and thus at Level 3, and as shown in FIG. 15, these groups retain their classification level, and no calculation of null space or effective channel is done, as indicated by symbol "X." Finally, when all groups cannot be classified, the program of FIG. 13 using the second step S12 initiates an exit procedure that finally enables post signal processing S112 to be done.
While the null spaces have all been labeled, it may not be necessary to calculate null space associated with one of the sub-groups in a group, as the evaluated null space results in an identity matrix I, which need not be calculated. Such a scenario is provided in FIG. 16, explained in details using the first exemplary embodiment, and using FIG. 17.
Also, while the program has been illustrated in FIG. 13, it is possible to merge the steps into a single step, re-arrange the position of the steps as shown in FIG. 18, while still achieving the same functionality as explained in FIG. 14 and FIG. 15. Note that in FIG. 18, if processes with respect to all groups with at least three terminals have been done (YES of step S600), the program transits to step 310. Otherwise (NO of step S600), other groups in the current level are checked (step S601). Further, the levels may not be physical levels, but could be represented by using an array (Multi-Level[4]) of structures (Level-Definer), and as shown in FIG. 20 for the case of four levels. In addition, labeling of sub-groups as the first and the second is only used for explanation, and thus does not restrict or provide an alternative method of implementing the present invention.
Further, the above exemplary embodiment can be summarized in three steps (or even less) as shown in FIG. 19, and in two steps as shown in FIG. 21.
In the present invention, the transmitting unit may comprises more physical transmitting modules or transducers in comparison to each of the physical multiple receivers with at least one receiving transducer, however this is not a necessary condition, and the present invention can be applied to logical receiving modules. The present invention also relates to any systems that can be modeled as a MIMO (Multiple-Input Multiple-Output), a corresponding signal processing device, a corresponding signal processing system and a corresponding software application. More specifically, the present invention relates to a technique for improving channel capacity in a communication system by using multiple transmitting transducers that are more than a number of logical receiving transducers at independent logical receivers that do not coordinate to jointly process received signal.
The entire disclosures of the above patent literatures and non-patent literatures are incorporated herein by reference thereto. Modifications and adjustments of the exemplary embodiment are possible within the scope of the overall disclosure (including the claims) of the present invention and based on the basic technical concept of the present invention. Various combinations and selections of various disclosed elements (including each element of each claim, each element of each exemplary embodiment, each element of each drawing, etc.) are possible within the scope of the claims of the present invention. That is, the present invention of course includes various variations and modifications that could be made by those skilled in the art according to the overall disclosure including the claims and the technical concept. Particularly, any numerical range disclosed herein should be interpreted that any intermediate values or subranges falling within the disclosed range are also concretely disclosed even without specific recital thereof.
10 transmitting system
10-1 to 10-4 signal
11 pre-processing unit
12 post-processing unit
20 transmitter (Tx) (transmitting subunit)
40-1 to 40-2M transmitting antenna
60 transmission medium (MIMO channel)
70-1 to 70-2K receiving antenna
80 receiver system
80-100 pre-processing unit
80-202 adder
80-300 post-processing unit
80-301, 80-302 signal
90, 90-1 to 90-K receiving terminal (receiver (Rx), physical module)
90-G1 to 90-GL logical module
90-s1, 90-s2 signal
120-1 link
400 null space evaluating unit
800 computing unit
810 memory unit
820 computational and decision unit
900 beamforming processing unit
910 terminal classifier signal processing unit
910-1 channel shortening unit
910-2 terminal classifier unit
910-10 to 910-4 signal (or port)
920 level unit
940 data multiplier unit
E4-1 equation
M1 to M11 matrix
W1, W2 weight

Claims (15)

  1. A wireless communication system, comprising:
    a transmitter(s) that transmits at least two streams of signals by a transducer(s) through an MU-MIMO (Multi-User Multiple-Input Multiple-Output) channel; and
    at least two receiving terminals that receive the at least two streams of signals from the transmitter(s) and detect at least one of the at least two streams of signals,
    wherein the transmitter(s) comprises:
    a pre-processing unit that pre-processes the at least two streams of signals using at least one of CRC (Cyclic Redundancy Check) attachment, channel coding and modulation;
    a beamforming processing unit that performs a beamforming operation so that the at least two receiving terminals receive their target stream(s) with minimum interference from transmitted signals targeting at least one of the remaining receiving terminals; and
    a post processing unit that post-processes the streams processed by the beamforming operation by using at least one of an OFDM (Orthogonal Frequency Division Multiplexing) operation, a filter, and an analogue to digital converter,
    wherein the beamforming processing unit comprises:
    a channel shortening unit that dynamically shortens matrix size of the MU-MIMO channel by reducing size of an MU-MIMO channel matrix depending on set criteria; and
    a null space evaluating unit that generates null spaces for multiplying with the at least two streams of signals.
  2. The wireless communication system according to claim 1,
    wherein the beamforming processing unit sends channel-shortening related information to at least one of the at least two receiving terminals, and
    wherein the at least two receiving terminals receive status related to the channel shortening operation of the transmitter(s), decode the status, and process received status signals using different modes depending on the decoded received status.
  3. The wireless communication system according to claim 1,
    wherein the transmitter(s) transmits at least three streams of signals by the transducer(s) through the MU-MIMO channel,
    wherein the at least three receiving terminals receive the at least three streams of signals from the transmitter(s) and detect at least one of the at least three streams of signals,
    wherein the beamforming processing unit performs a beamforming operation so that the at least three receiving terminals receive their target stream(s) with minimum interference from transmitted signals targeting at least one of the remaining receiving terminals,
    wherein the null space evaluating unit generates null spaces for multiplying with the at least three streams of signals, and
    wherein the null space evaluating unit performs:
    grouping the receiving terminals into one group, initializing a classification level that is associated with the receiving terminals in a group, and assigning the classification level to the group;
    making a decision on classifying the receiving terminals in a group into at least two sub-groups where at least one sub-group comprises the at least two receiving terminals, and all sub-groups have the at least one receiving terminal, assigning classification level to each of the sub-groups considered as a virtual terminal, evaluating a null space of the MU-MIMO channel of at least one of the virtual terminals, evaluating an effective channel of the at least one virtual terminal by using the null space; and
    renaming or relabeling the sub-groups as independent groups, generating a new classification index and initiating a process that leads to making the decision being restarted for each of the renamed or relabeled groups.
  4. The wireless communication system according to claim 3,
    wherein the beamforming processing unit sends channel-shortening related information to at least one of the at least three receiving terminals, and
    wherein the at least three receiving terminals receive status related to the channel shortening operation of the transmitter(s), decode the status signal, and process received status signal using different modes depending the decoded received status signal.
  5. The wireless communication system according to any one of claims 1 to 4,
    wherein the null space evaluating unit performs making a decision on classifying the receiving terminals in a group into two sub-groups where at least one sub-group comprises the at least two receiving terminals or each of sub-groups comprises the at least one receiving terminals, assigning classification level to each of the sub-groups considered as a virtual terminal, evaluating a null space of the MU-MIMO channel of at least one of the virtual terminals, and evaluating an effective channel of the at least one virtual terminal by using the null space.
  6. The wireless communication system according to any one of claims 1 to 4,
    wherein the beamforming processing unit comprises a device that receives information related to the receiving terminals within MU-MIMO system, generates a precoding matrix, and multiplies the precoding matrix with at least two streams of signals to be transmitted, and
    wherein the device comprises:
    a first device that dynamically reduces the size of the MU-MIMO channel matrix, and generates a status informing at least one of the receiving terminals to combine at least two of its received streams into one stream, or process the received streams without combination;
    a second device that classifies terminals in a group into two sub-groups if the group has at least two terminals, assigns the sub-groups a classification level, generates a GO or NO-GO command for enabling (GO) or disenabling (NO-GO) calculation of null spaces of MU-MIMO channel of each of the sub-groups, assigns the sub-groups to a classification level, renames the sub-groups as group, and assigns an effective MU-MIMO channel to the renamed sub-groups which are then considered as a new independent MU-MIMO channel for the renamed sub-groups;
    a third device that calculates null spaces of the at least one of the sub-groups within a group, and calculates effective channel if the GO command is received from the second device;
    a fourth device that keeps track of classification levels, number of groups and sub-groups within a classification level, classification level associated with each group at each level of classification, null space associated with a group or sub-group if the null space was evaluated by the third device, and an effective MU-MIMO channel is associated within a group or sub-group only if the effective MU-MIMO channel was evaluated by the third device; and
    a fifth device that generates a precoding matrix using all the null spaces evaluated at each of the classification level.
  7. The wireless communication system according to any one of claims 1 to 4 and 6,
    wherein the channel shortening unit performs:
    comparing a total number of transmitted streams or effective transmitting antennas with a total number of all receiving antennas; and
    enabling reduction of size of the MU-MIMO channel matrix if a ratio of the total number of transmitting antennas to the total number of all receiving antennas is greater than a set threshold, and otherwise disenabling reduction of size of the MU-MIMO channel matrix.
  8. The wireless communication system according to any one of claims 1 to 4 and 6,
    wherein the channel shortening unit performs:
    generating a matrix that spans rows of the MU-MIMO channel matrix based on an assumption that a number of rows represents a total number of all receiving antennas;
    comparing the number of row of the matrix that spans the rows of the MU-MIMO channel matrix with the total number of all effective receiving antennas of the receiving terminals; and
    enabling reduction of size of the MU-MIMO channel matrix if the number of row of the matrix that spans the rows of the MU-MIMO channel matrix is less than the total number of all effective receiving antennas of all the receiving terminals combined, and otherwise disenabling reduction of size of the MU-MIMO channel matrix.
  9. The wireless communication system according to any one of claims 1 to 4 and 6 to 8,
    wherein the reduction of size of the MU-MIMO channel matrix is done by multiplying MU-MIMO channel matrix with a conjugate transpose of a matrix that spans the rows of the MU-MIMO channel matrix.
  10. The wireless communication system according to any one of claims 3 to 5,
    wherein the null space evaluating unit considers at least one of receiving transducers of a receiving module as a separate independent receiving terminal.
  11. The wireless communication system according to claim 1 or 2,
    wherein the beamforming processing unit comprises a device that receives information related to the receiving terminals within MU-MIMO system, generates a precoding matrix, and multiplies the precoding matrix with at least two streams of signals to be transmitted,
    wherein the device comprises:
    a first device that stores data, and a program for processing the data; and
    a computing unit that performs function of the program that is stored in the first device,
    wherein the program causes the computing unit to execute:
    dynamically shortening matrix size of the MU-MIMO channel depending on set criteria;
    sending channel-shortening related information to at least one of the receiving terminals; and
    generating null spaces for multiplying with the at least two streams of signals,
    wherein the generating null spaces comprises:
    grouping the MU-MIMO receiving terminals into one group, initializing a classification level that is associated with the terminals in a group, and assigning the classification level to the group;
    making a decision on classifying the receiving terminals in a group into two sub-groups where at least one sub-group comprises at the least two receiving terminals, assigning classification level to each of the sub-groups considered as a virtual terminal, evaluating a null space of the MU-MIMO channel of at least one of the virtual terminals, and evaluating an effective channel of the at least one virtual terminal by using the null space; and
    renaming or relabeling the sub-groups as independent groups, generating a new classification index and initiating process that leads to making the decision being restarted for each of the renamed or relabeled groups.
  12. The wireless communication system according to any one of claims 1 to 4,
    wherein at least one of the receiving terminals comprises:
    a multiple of receiving transducers;
    a pre-processing unit that filters and amplifies received multiple streams of signals from multiple transducers;
    a weighting unit; and
    a post-processing unit,
    wherein the weighting unit performs:
    receiving status information from the transmitter(s); and
    combining at least two of the multiple received streams of signals upon receiving a status that indicates combination is needed,
    wherein the combining comprises:
    multiplying the at least two streams using weights that are known at the transmitter(s), or from a set of fixed weights with indices that are known at the transmitter(s); and
    adding and combining the at least two streams into one stream, and
    wherein the post-processing unit selects either the reduced number of streams or all the streams depending on status of combination received from the transmitter(s).
  13. The wireless communication system according to claim 12,
    wherein the transmitter(s) transmits an index associated with a known weight and a known dimension to at least one of the receiving terminals upon determining that MU-MIMO channel shortening operation need to be done, and
    wherein the at least one of the receiving terminals processes the index.
  14. A wireless communication method, comprising:
    by a transmitter(s), transmitting at least two streams of signals by a transducer(s) through an MU-MIMO (Multi-User Multiple-Input Multiple-Output) channel;
    by at least two receiving terminals, receiveing the at least two streams of signals from the transmitter(s) and detecting at least one of the at least two streams of signals,
    by the transmitter(s), pre-processing the at least two streams of signals using at least one of CRC (Cyclic Redundancy Check) attachment, channel coding and modulation;
    performing a beamforming operation so that the at least two receiving terminals receive their target stream(s) with minimum interference from transmitted signals targeting at least one of the remaining receiving terminals;
    post-processing the streams processed by the beamforming operation by using at least one of an OFDM (Orthogonal Frequency Division Multiplexing) operation, a filter, and an analogue to digital converter;
    dynamically shortening matrix size of the MU-MIMO channel by reducing size of an MU-MIMO channel matrix depending on set criteria; and
    generating null spaces for multiplying with the at least two streams of signals.
  15. A medium storing a program that causes a transmitter to execute:
    transmitting at least two streams of signals by a transducer(s) through an MU-MIMO (Multi-User Multiple-Input Multiple-Output) channel;
    pre-processing the at least two streams of signals using at least one of CRC (Cyclic Redundancy Check) attachment, channel coding and modulation;
    performing a beamforming operation so that at least two receiving terminals receive their target stream(s) with minimum interference from transmitted signals targeting at least one of the remaining receiving terminals;
    post-processing the streams processed by the beamforming operation by using at least one of an OFDM (Orthogonal Frequency Division Multiplexing) operation, a filter, and an analogue to digital converter;
    dynamically shortening matrix size of the MU-MIMO channel by reducing size of an MU-MIMO channel matrix depending on set criteria; and
    generating null spaces for multiplying with the at least two streams of signals.
PCT/JP2015/003373 2015-07-03 2015-07-03 Wireless communication system, wireless communication method and medium WO2017006362A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/003373 WO2017006362A1 (en) 2015-07-03 2015-07-03 Wireless communication system, wireless communication method and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/003373 WO2017006362A1 (en) 2015-07-03 2015-07-03 Wireless communication system, wireless communication method and medium

Publications (1)

Publication Number Publication Date
WO2017006362A1 true WO2017006362A1 (en) 2017-01-12

Family

ID=53682763

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/003373 WO2017006362A1 (en) 2015-07-03 2015-07-03 Wireless communication system, wireless communication method and medium

Country Status (1)

Country Link
WO (1) WO2017006362A1 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090046009A1 (en) 2007-08-16 2009-02-19 Samsung Electronics Co., Ltd. Transmitting apparatus and method
US20100142633A1 (en) * 2007-06-23 2010-06-10 Panasonic Corporation Method and system for communication channel optimization in a multiple-input multiple-output (mimo) communication system
US7778342B2 (en) 2003-12-19 2010-08-17 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus in a MIMO based communication system
US20110158335A1 (en) 2009-12-30 2011-06-30 Samsung Electronics Co., Ltd. Unitary precoding apparatus and method in multi-user multiple input multiple output (mimo) communication system
US20120315938A1 (en) 2011-06-08 2012-12-13 Qualcomm Incorporated Communication devices for multiple group communications
EP2775634A2 (en) * 2013-03-08 2014-09-10 Electronics and Telecommunications Research Institute Method for multi-input multi-output communication in large-scale antenna system

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7778342B2 (en) 2003-12-19 2010-08-17 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus in a MIMO based communication system
US20100142633A1 (en) * 2007-06-23 2010-06-10 Panasonic Corporation Method and system for communication channel optimization in a multiple-input multiple-output (mimo) communication system
US20090046009A1 (en) 2007-08-16 2009-02-19 Samsung Electronics Co., Ltd. Transmitting apparatus and method
US8102934B2 (en) 2007-08-16 2012-01-24 Samsung Electronics Co., Ltd. Transmitting apparatus and method
US20110158335A1 (en) 2009-12-30 2011-06-30 Samsung Electronics Co., Ltd. Unitary precoding apparatus and method in multi-user multiple input multiple output (mimo) communication system
US20120315938A1 (en) 2011-06-08 2012-12-13 Qualcomm Incorporated Communication devices for multiple group communications
EP2775634A2 (en) * 2013-03-08 2014-09-10 Electronics and Telecommunications Research Institute Method for multi-input multi-output communication in large-scale antenna system

Non-Patent Citations (12)

* Cited by examiner, † Cited by third party
Title
A. OKAZAKI; H. IURA: "A study on next-generation wireless access with higher frequency bands", IEICE TECHNICAL REPORT, RCS2014-81, 2014, pages 287 - 292
FUCHS M ET AL: "A Novel Tree-Based Scheduling Algorithm For The Downlink Of Multi-User MIMO Systems With ZF Beamforming", 2005 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING - 18-23 MARCH 2005 - PHILADELPHIA, PA, USA, IEEE, PISCATAWAY, NJ, vol. 3, 18 March 2005 (2005-03-18), pages 1121 - 1124, XP010792448, ISBN: 978-0-7803-8874-1, DOI: 10.1109/ICASSP.2005.1415911 *
G.J. FOSCHINI; M.J. GANS: "On limits of wireless communications in a fading environment when using multiple antennas", WIRELESS PERSONAL COMMUNICATIONS, vol. 6, 1998, pages 311 - 335, XP000736946, DOI: doi:10.1023/A:1008889222784
J. G. ANDREWS: "What will 5G Be?", IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, vol. 32, no. 6, June 2014 (2014-06-01), pages 1 065 - 1 082, XP011554180, DOI: doi:10.1109/JSAC.2014.2328098
J.,PARK: "A MMSE vector precoding with block diagonalization for multiuser MIMO downlink", IEEE TRANSACTIONS ON COMMUNICATIONS, vol. 60, no. 2, February 2012 (2012-02-01), pages 569 - 577
JUHO LEE; YOUNSUN KIM; HYOJIN LEE; BOON LOONG NG; D. MAZZARESE; JIANGHUA LIU; WEIMIN XIAO; YONGXING ZHOU: "Coordinated multipoint transmission and reception in LTE-advanced systems", COMMUNICATIONS MAGAZINE, IEEE, vol. 50, no. 11, 2012, pages 44 - 50, XP011472334, DOI: doi:10.1109/MCOM.2012.6353681
K. WONG: "Optimizing the spectral efficiency of multiuser MIMO smart antenna systems", PROCEEDINGS OF WIRELESS NETWORK CONFERENCE, vol. 1, 2000, pages 426 - 430
M. COSTA: "Writing on dirty paper", IEEE TRANSACTIONS ON INFORMATION THEORY, vol. 29, May 1983 (1983-05-01), pages 439 - 441
Q. SPENCER: "Zero-Forcing methods for downlink spatial multiplexing in multiuser MIMO channels", IEEE TRANSACTIONS ON SIGNAL PROCESSING, vol. 52, no. 2, February 2004 (2004-02-01), pages 461 - 471, XP011105731, DOI: doi:10.1109/TSP.2003.821107
S.B. WEINSTEIN: "The history of orthogonal frequency-division multiplexing", COMMUNICATIONS MAGAZINE, IEEE, vol. 47, no. 11, 2009, pages 26 - 35, XP011279176, DOI: doi:10.1109/MCOM.2009.5307460
VINCENT K. N. LAU; YU-KWONG RICKY KWOK: "Wiley Series in Telecommunication and Signal Processing", article "Channel Adaptive Technologies and Cross Layer Designs for Wireless Systems with Multiple Antennas", pages: 17 - 18
X. HOU; Z. ZANG: "QRD-based MU-MIMO transmission scheme towards evolved LTE TDD system", IEEE GLOBECOM WORKSHOP, 2010, pages 866 - 870, XP031859342

Similar Documents

Publication Publication Date Title
CN111034063B (en) Communication method, communication device and system
JP6196268B2 (en) UPLINK SIGNAL TRANSFER METHOD AND DEVICE USING MULTIPLE ANTENNA
US10033446B2 (en) Transmitting apparatus, receiving apparatus, control station, communication system, and transmission precoding method
US9001802B2 (en) Method and apparatus for transmitting uplink signals using multi-antenna
JP4597170B2 (en) Scheduling system and method in multiple input multiple output system
Mendonça et al. Antenna selection in massive MIMO based on greedy algorithms
CN112868187A (en) Method and apparatus for codebook restriction for type II feedback reporting and higher layer configuration and for linear combined codebook reporting in a wireless communication network
JP4950311B2 (en) Method and apparatus for determining a quantized channel vector
Li et al. An efficient channel block diagonalization method for generalized zero forcing assisted MIMO broadcasting systems
KR101440202B1 (en) Method and apparatus for downlink multiuser mimo transmission in a wireless network
KR20200140026A (en) Apparatus and method for transmitting and receiving data using antenna array in wireless communication system
JP6019298B2 (en) Wireless communication system, wireless transmission device, and wireless communication method
CN110679125B (en) NR uplink codebook configuration method and related equipment
Tran et al. Multiuser diversity for successive zero-forcing dirty paper coding: Greedy scheduling algorithms and asymptotic performance analysis
WO2015112883A1 (en) System and method for early termination in iterative null-space directed singular value decomposition for mimo
WO2017145232A1 (en) Transmission apparatus, reception apparatus, control station, communication system, and transmission precoding method
CN107094038B (en) Method, device and system for adjusting power of antenna system
JP5859913B2 (en) Wireless receiver, wireless transmitter, wireless communication system, program, and integrated circuit
WO2017121175A1 (en) Data processing method and device
WO2017006362A1 (en) Wireless communication system, wireless communication method and medium
Sharma et al. Multiuser downlink MIMO beamforming using an iterative optimization approach
Wang et al. Fast transmit antenna selection scheme employing block diagonalization for multiuser MIMO system
US20240154653A1 (en) Neural network for mu-mimo user selection
JP6892323B2 (en) Transmitter
JP5802942B2 (en) Wireless communication system, wireless transmission device, and wireless communication method

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15739349

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15739349

Country of ref document: EP

Kind code of ref document: A1