WO2019141352A1 - Signal decoder and method for performing hermitian matrix inversion - Google Patents

Signal decoder and method for performing hermitian matrix inversion Download PDF

Info

Publication number
WO2019141352A1
WO2019141352A1 PCT/EP2018/051047 EP2018051047W WO2019141352A1 WO 2019141352 A1 WO2019141352 A1 WO 2019141352A1 EP 2018051047 W EP2018051047 W EP 2018051047W WO 2019141352 A1 WO2019141352 A1 WO 2019141352A1
Authority
WO
WIPO (PCT)
Prior art keywords
matrix
signal decoder
lower triangular
row
input
Prior art date
Application number
PCT/EP2018/051047
Other languages
French (fr)
Inventor
Alon SIDI
Doron Ezri
Shimon SHILO
Yaron Ben-Arie
Original Assignee
Huawei Technologies Co., Ltd.
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 Huawei Technologies Co., Ltd. filed Critical Huawei Technologies Co., Ltd.
Priority to PCT/EP2018/051047 priority Critical patent/WO2019141352A1/en
Publication of WO2019141352A1 publication Critical patent/WO2019141352A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03006Arrangements for removing intersymbol interference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/0202Channel estimation
    • H04L25/024Channel estimation channel estimation algorithms
    • H04L25/0242Channel estimation channel estimation algorithms using matrix methods
    • H04L25/0244Channel estimation channel estimation algorithms using matrix methods with inversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03006Arrangements for removing intersymbol interference
    • H04L2025/0335Arrangements for removing intersymbol interference characterised by the type of transmission
    • H04L2025/03426Arrangements for removing intersymbol interference characterised by the type of transmission transmission using multiple-input and multiple-output channels

Definitions

  • the present invention relates to a signal decoder for performing an inversion of a Hermitian matrix, a method for performing an inversion of a Hermitian matrix and a computer program.
  • Hermitian Matrix Inversion is widely used in wireless communication.
  • Hermitian Matrix Inversion is the basic building block of linear MIMO equalizers such as the Zero Forcing (ZF) equalizer and the Minimum Mean Square Error (MMSE) equalizer. Further, Hermitian Matrix Inversion is also heavily used in MIMO for null-steering, for instance, the ZF pre-coder.
  • ZF Zero Forcing
  • MMSE Minimum Mean Square Error
  • Hermitian matrix or self-adjoint matrix is a complex square matrix that is equal to its own conjugate transpose. This implies that the element in the i-th row and j-th column is equal to the complex conjugate of the element in the j-th row and i-th column, for all indices i and j.
  • the Cholesky decomposition is known to be the most efficient method that calculates L when a scalar processor is used. However, in modem applications, it is desired to speed up the calculation via parallelism, i.e. a number of multipliers that is as the size of the matrix, and in this case the Cholesky decomposition becomes inefficient and very cumbersome in terms of hardware implementation.
  • the present invention aims to improve for performing matrix inversion of an N x N Hermitian input matrix.
  • the present invention has thereby the object to provide signal decoder configured for performing matrix inversion and a method for performing matrix inversion, which operates with better performance compared to the corresponding solutions known in the art.
  • a first aspect of the present invention provides a signal decoder for performing matrix inversion of an N x N Hermitian input matrix G, wherein the signal decoder is configured to provide an N x 2 N augmented matrix K 0 having as a left matrix the matrix which is
  • the present invention has the advantage of providing an innovative solution, which has relatively low complexity while keeping high accuracy. Due to the nature of the process, it is very easily pipelined. For comparison, a Cholesky decomposition based solution would require complicated addressing and additional memories in order to achieve a much lower utilization of its multipliers and would be much harder to pipeline.
  • the fundamental idea behind the proposed solution is to use the Gauss Jordan Elimination (GJE) on an input matrix G with a unique scaling of the pivot rows and stop the process when all the elements below its diagonal are zeroed.
  • GJE Gauss Jordan Elimination
  • the process is performed in a column by column manner starting from the leftmost side of G and prior to the processing of each column, a pivoting step is performed which greatly increases the accuracy of the computation.
  • another permutation step is performed.
  • This process is dubbed ‘Pivoted Gauss Jordan Elimination Inversion of a Hermitian Matrix’ (PGJEIH) and its advantages are in its implementation simplicity, full utilization of its hardware (compared to prior art solutions), reduced silicon area and ease of scalability.
  • the invention herein describes a hardware, which performs signal processing.
  • the signal processing may be defined by two steps.
  • step one a process which is based on the GJE is performed with the following major differences.
  • the process herein is halted when only all the elements below the diagonal of the N x N‘left matrix’ are zeroed.
  • the pivot rows which are the final outputs, are scaled by the reciprocal of the square root of the pivot itself.
  • a pivoting step is performed prior to zeroing the elements of every processed column, which greatly increases the stability and accuracy of the process.
  • step two is calculated and then permutated in order to receive G - .
  • the signal decoder is configured to provide an equivalent permutation matrix of all recursive permutation matrices of the row and column permutation operations, and is further configured to provide the inverse input matrix G -1 by multiplying the permuted, inverted input matrix from the left with the equivalent
  • the signal decoder is configured to perform a pivoted Gauss Jordan Elimination process on the augmented matrix K 0 , wherein the Gauss Jordan Elimination is terminated when the N x 2 N augmented matrix K N having as a left matrix the N x N matrix which equals the upper triangular matrix P and as a right matrix the N x N matrix which equals the lower triangular matrix is received and all the elements below the diagonal of the matrix are zeroed.
  • the signal decoder is configured to scale each of the pivot rows by the reciprocal of the square root of the row’s pivot itself. Such provision is easy to implement and allows increased performance.
  • the signal decoder is configured to perform recursions indexed by k that range from 0 to N— 1 on the augmented matrix K 0 , with the (N— k) x (N— k ) Hermitian matrix C k
  • P fe which is the l N matrix with its q k ’s row interchanged by its k’s row in the case pivoting is required or when pivoting is not required
  • P k is simply the I N matrix
  • Such recursions have the advantage that the permutations are performed by multiplexing registers and not by real multiplications.
  • the A k multiplications are implemented as simple row multiply or multiply and accumulate (MAC) operations. This proceeding increases the performance.
  • the input matrix G is the product H H H where the M x N channel matrix H may be a transmission channel of received data signals.
  • the input matrix G can be easily provided based on the matrix H.
  • the data signals may include typical mobile communication signals for example phase-shift keying (PSK) signals or quadrature amplitude modulation (QAM) signals.
  • PSK phase-shift keying
  • QAM quadrature amplitude modulation
  • the signal decoder is a part of a MIMO decoder and/or a MIMO precoder. Due to increasing complexity of MIMO systems, the proposed solution is especially suitable for such systems as parallel execution of the filtering operations is possible.
  • a second aspect of the present invention provides a method for performing Hermitian matrix inversion of an N x N Hermitian input matrix G, comprising providing an N x 2 N augmented matrix K 0 having as a left matrix the matrix which is initialized as the input matrix G and as a right matrix the matrix which is initialized as an N x N identity matrix I N ; performing a recursive sequence of operations indexed by k that ranges from 0 to N— 1 each of which includes a row and column permutation operation followed by multiplication from the left of a lower triangular matrix A k on the matrix and the matrix providing a
  • a third aspect of the present invention provides a computer program with a program code for performing the method as described above when the computer program runs on a computer or on the signal decoder as described above.
  • the same advantages and modifications as described above apply.
  • Fig. 1 shows an example of a signal decoder for performing matrix inversion of an N x N Hermitian input matrix G.
  • Fig. 2 shows a flowchart of an exemplary implementation of a method for performing matrix inversion of an N x N Hermitian input matrix G.
  • the signal decoder 100 is for example part of a transmission system like a wireless communication system.
  • the signal decoder 100 may be implemented as a system on a chip, a microprocessor, a DSP (Digital Signal Processor) or the like.
  • the signal decoder 100 is located at endpoints of a communication channel 110, for example at base stations, user equipment or the like and may be part of a MIMO decoder.
  • the signal decoder 100 is configured for performing matrix inversion of an N x N Hermitian input matrix G.
  • the Hermitian input matrix G may be a channel matrix or may be derived from a channel matrix H being a transmission channel of received data signals.
  • the data signals may include typical mobile communication signals for example phase-shift keying (PSK) signals or quadrature amplitude modulation (QAM) signals.
  • PSK phase-shift keying
  • QAM quadrature amplitude modulation
  • the signal decoder 100 performs a Pivoted Gauss Jordan Elimination on the Hermitian input matrix G. Thereby, a lower triangular matrix corresponding to the matrix and a permutation matrix are provided. Details of the Pivoted
  • the signal decoder 100 calculates a conjugated transposed upper triangular matrix of the lower triangular matrix
  • the signal decoder 100 calculates a permuted, inverted input matrix by multiplying the conjugated transposed upper triangular matrix and the lower triangular matrix in the form
  • the process can be named Pivoted Gauss Jordan Elimination Inversion of a Hermitian Matrix (PGJEIH).
  • PJEIH Hermitian Matrix
  • Figure 2 shows steps of an exemplary Pivoted Gauss Jordan Elimination Inversion of a Hermitian Matrix (PGJEIH) method, which may be performed by the signal decoder 100.
  • PJEIH Hermitian Matrix
  • an N x 2 N augmented matrix K 0 is provided having as a left matrix the matrix which is initialized as the input matrix G and as a right matrix the matrix which is initialized as an N x N identity matrix I N .
  • a recursive sequence of operations indexed by k that ranges from 0 to N — 1 is performed each of which includes a row and column permutation operation followed by multiplication from the left of a lower triangular matrix A k on the matrix and the
  • a lower triangular matrix L corresponding to the matrix is provided.
  • a conjugated transposed upper triangular matrix of the lower triangular matrix is provided.
  • a permuted, inverted input matrix is calculated by multiplying the conjugated transposed upper triangular matrix and the lower triangular matrix in the form
  • a sixth step 250 the inverse input matrix G -1 is provided by permuting the permuted, inverted input matrix
  • the proposed invention is based on performing row and column permutation operations on matrices and which are initialized as and where G is the N x N input
  • the permutation matrix P k is simply the I w matrix with its q k ’ s row interchanged by its k’ s row in the case pivoting is required or when pivoting is not required
  • equations (8) and (9) are implemented as simple row multiply or multiply and accumulate operations (both are implemented by parallel multiply accumulate units). Specifically, for the pivot rows:
  • a second step the signal decoding or precoding is completed.
  • the second step may be termed as the computation of PGJEIH from PGJEH.
  • G -1 is achieved by simply permuting according
  • equations (10-11) and equations (14-15) imply a vector by scalar multiplication
  • (12-13) imply a vector by scalar multiplication and accumulation (MAC). Since the same coefficients, i.e. multiply rows on both and , it
  • the following diagrams illustrate a processing of a 4 x 4 real matrix according to the above described scheme.

Abstract

The present invention provides a signal decoder (100) for performing matrix inversion of an N x N Hermitian input matrix (G), wherein the signal decoder (100) is configured to provide an N x 2N augmented matrix (K0) having as a left matrix the matrix (BL O) and as a right matrix the matrix (BR O); perform a recursive sequence of operations indexed by k that ranges from 0 to (N — 1) each of which includes a row and column permutation operation followed by a multiplication from the left of a lower triangular matrix (AK) on the matrix (BL O) and the matrix (BR O); provide a lower triangular matrix (L); provide a conjugated transposed upper triangular matrix (LH) of the lower triangular matrix (L); calculate a permuted, inverted input matrix (G_1) by multiplying the conjugated transposed upper triangular matrix (LH) and the lower triangular matrix (L); and provide the inverse input matrix (G_1).

Description

Signal decoder and method for performing Hermitian matrix inversion
TECHNICAL FIELD
The present invention relates to a signal decoder for performing an inversion of a Hermitian matrix, a method for performing an inversion of a Hermitian matrix and a computer program.
BACKGROUND
In mobile communication systems such as an OFDMA (Orthogonal frequency-division multiple access)/MIMO (Multiple Input Multiple Output) communication system it is often required to perform an inversion of Hermitian (or symmetrical) matrices. For instance, in a ZF/MMSE (Minimum Mean Square Error) equalizer on the receiver side, or a ZF (Zero- forcing) pre-coder on the transmitter side.
Hermitian Matrix Inversion (HMI) is widely used in wireless communication. Hermitian Matrix Inversion is the basic building block of linear MIMO equalizers such as the Zero Forcing (ZF) equalizer and the Minimum Mean Square Error (MMSE) equalizer. Further, Hermitian Matrix Inversion is also heavily used in MIMO for null-steering, for instance, the ZF pre-coder.
A Hermitian matrix or self-adjoint matrix is a complex square matrix that is equal to its own conjugate transpose. This implies that the element in the i-th row and j-th column is equal to the complex conjugate of the element in the j-th row and i-th column, for all indices i and j.
Many wireless communication standards including the 802.11 family of standards use Hermitian Matrix Inversion. Recent versions of 802.11, including 802.1 lax, support high- order MIMO schemes, up to 4x4 (and even higher dimensions), with a very large number of frequency tones. This requires the development of up to 4 x 4 (or higher dimensions) HMI units with reasonable complexity in terms of latency and required chip area.
The most common implementation of the Hermitian Matrix Inversion is based on the Cholesky decomposition of a Hermitian matrix G, i.e. G = LLH such that L is a lower triangular matrix with real values on the diagonal. After L is calculated, its inverse L-1 is calculated and is followed by the computation of G-1 via the multiplication G-1 = L-HL-1, where L-H is the conjugated transposed upper triangular matrix of the lower triangular matrix L-1. In order to differentiate between scalar values and matrices and vectors, matrices and vectors are presented in the formulas in bold font.
The Cholesky decomposition is known to be the most efficient method that calculates L when a scalar processor is used. However, in modem applications, it is desired to speed up the calculation via parallelism, i.e. a number of multipliers that is as the size of the matrix, and in this case the Cholesky decomposition becomes inefficient and very cumbersome in terms of hardware implementation.
Furthermore, for some applications, it may be desired to perform a pivoted calculation in order to achieve higher accuracy and in this case also the Cholesky decomposition becomes very cumbersome when parallelism is required.
SUMMARY
In view of the above-mentioned problems and disadvantages, the present invention aims to improve for performing matrix inversion of an N x N Hermitian input matrix. The present invention has thereby the object to provide signal decoder configured for performing matrix inversion and a method for performing matrix inversion, which operates with better performance compared to the corresponding solutions known in the art.
The objective of the present invention is achieved by the solution provided in the enclosed independent claims. Advantageous implementations of the present invention are further defined in the dependent claims.
A first aspect of the present invention provides a signal decoder for performing matrix inversion of an N x N Hermitian input matrix G, wherein the signal decoder is configured to provide an N x 2 N augmented matrix K0 having as a left matrix the matrix which is
Figure imgf000003_0001
initialized as the input matrix G and as a right matrix the matrix
Figure imgf000003_0002
which is initialized as an N x N identity matrix IN; to perform a recursive sequence of operations indexed by k that ranges from 0 to N— 1 each of which includes a row and column permutation operation followed by a multiplication from the left of a lower triangular matrix Ak on the matrix and the matrix ; to provide a lower triangular matrix
Figure imgf000004_0001
corresponding to the matrix to
Figure imgf000004_0006
provide a conjugated transposed upper triangular matrix
Figure imgf000004_0002
of the lower triangular matrix L; to calculate a permuted, inverted input matrix by multiplying the conjugated transposed upper triangular matrix
Figure imgf000004_0003
and the lower triangular matrix
Figure imgf000004_0004
in the form
Figure imgf000004_0005
and to provide the inverse input matrix G-1 by permuting the permuted, inverted input matrix
Figure imgf000004_0007
.
The present invention has the advantage of providing an innovative solution, which has relatively low complexity while keeping high accuracy. Due to the nature of the process, it is very easily pipelined. For comparison, a Cholesky decomposition based solution would require complicated addressing and additional memories in order to achieve a much lower utilization of its multipliers and would be much harder to pipeline.
The fundamental idea behind the proposed solution is to use the Gauss Jordan Elimination (GJE) on an input matrix G with a unique scaling of the pivot rows and stop the process when all the elements below its diagonal are zeroed. The process is performed in a column by column manner starting from the leftmost side of G and prior to the processing of each column, a pivoting step is performed which greatly increases the accuracy of the computation. In order to receive G-1, another permutation step is performed. This process is dubbed ‘Pivoted Gauss Jordan Elimination Inversion of a Hermitian Matrix’ (PGJEIH) and its advantages are in its implementation simplicity, full utilization of its hardware (compared to prior art solutions), reduced silicon area and ease of scalability.
The invention herein describes a hardware, which performs signal processing. The signal processing may be defined by two steps.
In step one a process which is based on the GJE is performed with the following major differences. In contrast to the traditional GJE where all the elements above and below the diagonal of the N x N‘left matrix’ of the processed augmented matrix are zeroed, the process herein is halted when only all the elements below the diagonal of the N x N‘left matrix’ are zeroed. In contrast to GJE, the pivot rows, which are the final outputs, are scaled by the reciprocal of the square root of the pivot itself. Further, in contrast to GJE, in this step a pivoting step is performed prior to zeroing the elements of every processed column, which greatly increases the stability and accuracy of the process. At the end of the process [G|IW] transform into [l"|L] where L is the inverse of the Cholesky decomposition of G which is a permuted version of G. In step two
Figure imgf000005_0001
is calculated and then permutated in order to receive G - .
In an implementation form of the first aspect, the signal decoder is configured to provide an equivalent permutation matrix
Figure imgf000005_0005
of all recursive permutation matrices of the row and column permutation operations, and is further configured to provide the inverse input matrix G-1 by multiplying the permuted, inverted input matrix from the left with the equivalent
Figure imgf000005_0004
permutation matrix
Figure imgf000005_0002
and from the right with the transposed equivalent permutation matrix
Figure imgf000005_0003
In an implementation form of the first aspect, the signal decoder is configured to perform a pivoted Gauss Jordan Elimination process on the augmented matrix K0, wherein the Gauss Jordan Elimination is terminated when the N x 2 N augmented matrix KN having as a left matrix the N x N matrix
Figure imgf000005_0007
which equals the upper triangular matrix
Figure imgf000005_0012
P and as a right matrix the N x N matrix
Figure imgf000005_0006
which equals the lower triangular matrix
Figure imgf000005_0011
is received and all the elements below the diagonal of the matrix are zeroed. Such provision is easy to implement
Figure imgf000005_0008
and allows increased performance.
In a further implementation form of the first aspect, the signal decoder is configured to scale each of the pivot rows by the reciprocal of the square root of the row’s pivot itself. Such provision is easy to implement and allows increased performance.
In an implementation form of the first aspect, the signal decoder is configured to perform recursions indexed by k that range from 0 to N— 1 on the augmented matrix K0, with the (N— k) x (N— k ) Hermitian matrix Ck
Figure imgf000005_0009
the (N— k) x lvector dk
Figure imgf000005_0010
the scalar value qk
Figure imgf000005_0013
the permutation matrix Pfe which is the lN matrix with its qk’s row interchanged by its k’s row in the case pivoting is required or when pivoting is not required Pk is simply the IN matrix, the N x N matrices
Figure imgf000006_0001
and
Figure imgf000006_0002
and
Figure imgf000006_0003
the (N— k) x (N— k) Hermitian matrix
Figure imgf000006_0004
Figure imgf000006_0005
the N x N matrix Ak
Figure imgf000006_0006
the N x N matrix
Figure imgf000006_0008
Figure imgf000006_0007
and the recursions on the N x N matrices
Figure imgf000006_0009
and the N x N matrices
Figure imgf000006_0010
being
Figure imgf000006_0011
Such recursions have the advantage that the permutations are performed by multiplexing registers and not by real multiplications. The Ak multiplications are implemented as simple row multiply or multiply and accumulate (MAC) operations. This proceeding increases the performance.
In a further implementation form of the first aspect, the input matrix G is the product HHH where the M x N channel matrix H may be a transmission channel of received data signals. The input matrix G can be easily provided based on the matrix H. The data signals may include typical mobile communication signals for example phase-shift keying (PSK) signals or quadrature amplitude modulation (QAM) signals.
In an implementation form of the first aspect, the signal decoder is a part of a MIMO decoder and/or a MIMO precoder. Due to increasing complexity of MIMO systems, the proposed solution is especially suitable for such systems as parallel execution of the filtering operations is possible.
A second aspect of the present invention provides a method for performing Hermitian matrix inversion of an N x N Hermitian input matrix G, comprising providing an N x 2 N augmented matrix K0 having as a left matrix the matrix
Figure imgf000007_0001
which is initialized as the input matrix G and as a right matrix the matrix
Figure imgf000007_0002
which is initialized as an N x N identity matrix IN; performing a recursive sequence of operations indexed by k that ranges from 0 to N— 1 each of which includes a row and column permutation operation followed by multiplication from the left of a lower triangular matrix Ak on the matrix
Figure imgf000007_0003
and the matrix providing a
Figure imgf000007_0004
lower triangular matrix
Figure imgf000007_0010
corresponding to the matrix
Figure imgf000007_0005
providing a conjugated transposed upper triangular matrix
Figure imgf000007_0011
of the lower triangular matrix
Figure imgf000007_0006
calculating a permuted, inverted input matrix by multiplying the conjugated transposed upper triangular matrix
Figure imgf000007_0007
and the lower triangular matrix L in the form
Figure imgf000007_0008
and providing the inverse input matrix G-1 by permuting the permuted, inverted input matrix
Figure imgf000007_0009
The same advantages and
modifications as described above apply.
A third aspect of the present invention provides a computer program with a program code for performing the method as described above when the computer program runs on a computer or on the signal decoder as described above. The same advantages and modifications as described above apply.
It has to be noted that all devices, elements, units and means described in the present application could be implemented in the software or hardware elements or any kind of combination thereof. All steps which are performed by the various entities described in the present application as well as the functionalities described to be performed by the various entities are intended to mean that the respective entity is adapted to or configured to perform the respective steps and functionalities. Even if, in the following description of specific embodiments, a specific functionality or step to be performed by external entities is not reflected in the description of a specific detailed element of that entity which performs that specific step or functionality, it should be clear for a skilled person that these methods and functionalities can be implemented in respective software or hardware elements, or any kind of combination thereof.
BRIEF DESCRIPTION OF DRAWINGS
The above described aspects and implementation forms of the present invention will be explained in the following description of specific embodiments in relation to the enclosed drawings, in which
Fig. 1 shows an example of a signal decoder for performing matrix inversion of an N x N Hermitian input matrix G.
Fig. 2 shows a flowchart of an exemplary implementation of a method for performing matrix inversion of an N x N Hermitian input matrix G.
DETAIFED DESCRIPTION OF EMBODIMENTS The signal decoder 100 is for example part of a transmission system like a wireless communication system. The signal decoder 100 may be implemented as a system on a chip, a microprocessor, a DSP (Digital Signal Processor) or the like. The signal decoder 100 is located at endpoints of a communication channel 110, for example at base stations, user equipment or the like and may be part of a MIMO decoder. The signal decoder 100 is configured for performing matrix inversion of an N x N Hermitian input matrix G. The Hermitian input matrix G may be a channel matrix or may be derived from a channel matrix H being a transmission channel of received data signals. The data signals may include typical mobile communication signals for example phase-shift keying (PSK) signals or quadrature amplitude modulation (QAM) signals. In a first block 120 of the signal decoder 100, the signal decoder 100 performs a Pivoted Gauss Jordan Elimination on the Hermitian input matrix G. Thereby, a lower triangular matrix
Figure imgf000008_0003
corresponding to the matrix and a permutation matrix are provided. Details of the Pivoted
Figure imgf000008_0001
Figure imgf000008_0002
Gauss Jordan Elimination are explained later. In a second block 130 of the signal decoder 100, the signal decoder 100 calculates a conjugated transposed upper triangular matrix
Figure imgf000009_0006
of the lower triangular matrix
Figure imgf000009_0007
In a third block 140 of the signal decoder 100, the signal decoder 100 calculates a permuted, inverted input matrix
Figure imgf000009_0001
by multiplying the conjugated transposed upper triangular matrix
Figure imgf000009_0017
and the lower triangular matrix
Figure imgf000009_0003
in the form
Figure imgf000009_0002
In a fourth block 150 of the signal decoder 100, the signal decoder 100 provides the inverse input matrix G-1 by permuting the permuted, inverted input matrix
Figure imgf000009_0005
in the form G-1 =
Figure imgf000009_0004
The process can be named Pivoted Gauss Jordan Elimination Inversion of a Hermitian Matrix (PGJEIH). The blocks 120, 130, 140 and 150 can be implemented in hardware and/or software.
Figure 2 shows steps of an exemplary Pivoted Gauss Jordan Elimination Inversion of a Hermitian Matrix (PGJEIH) method, which may be performed by the signal decoder 100.
In a first step 200 an N x 2 N augmented matrix K0 is provided having as a left matrix the matrix which is initialized as the input matrix G and as a right matrix the matrix which
Figure imgf000009_0013
is initialized as an N x N identity matrix IN.
In a second step 210 a recursive sequence of operations indexed by k that ranges from 0 to N — 1 is performed each of which includes a row and column permutation operation followed by multiplication from the left of a lower triangular matrix Ak on the matrix and the
Figure imgf000009_0008
matrix
In a third step 220 a lower triangular matrix L corresponding to the matrix is provided.
Figure imgf000009_0016
In a fourth step 230 a conjugated transposed upper triangular matrix
Figure imgf000009_0012
of the lower triangular matrix is provided.
In a fifth step 240 a permuted, inverted input matrix
Figure imgf000009_0010
is calculated by multiplying the conjugated transposed upper triangular matrix
Figure imgf000009_0011
and the lower triangular matrix
Figure imgf000009_0014
in the form
Figure imgf000009_0009
In a sixth step 250 the inverse input matrix G-1 is provided by permuting the permuted, inverted input matrix
Figure imgf000009_0015
Such procedure reduces calculation complexity and the resulting signal decoder 100 is less complex and needs less space.
The proposed invention is based on performing row and column permutation operations on matrices and which are initialized as and where G is the N x N input
Figure imgf000010_0006
Figure imgf000010_0005
Figure imgf000010_0007
matrix to be inverted and lN is the N x N identity matrix. This permutation can be
mathematically expressed by a permutation matrix Pk, which multiplies both Bk and Bk from the left and from the right.
In the following, a more detailed description of the Pivoted Gauss Jordan Elimination
Inversion of a Hermitian Matrix (PGJEIH) method is given. In a first step of the processing the matrix Ck is defined as
Figure imgf000010_0001
which is the (N— k) x (N— k ) lower right sub matrix of Bk and define
Figure imgf000010_0002
Then the permutation matrix Pk is simply the Iw matrix with its qk’ s row interchanged by its k’ s row in the case pivoting is required or when pivoting is not required Pk is simply the lN matrix for k that ranges from 0 to N— 1, hence Pk = Pk .
Define the permutated versions of Bk and Bk as
Figure imgf000010_0003
the (N— k) x (N— k ) lower right sub matrix of Bk as
Figure imgf000010_0004
And define the N x N matrix Ak -
Figure imgf000011_0001
Then with the definitions (1-7), the recursion is finally stated as
Figure imgf000011_0002
The practical interpretation of equations (8) and (9) is that the permutations are performed by multiplexing registers and not by real multiplications. The Ak multiplications are implemented as simple row multiply or multiply and accumulate operations (both are implemented by parallel multiply accumulate units). Specifically, for the pivot rows:
and -
Figure imgf000011_0003
for the rows below the pivot lines, where we defined
Figure imgf000011_0004
For indexing inside a matrix, for example the matrix [k + 1,0: N— 1], the value k is
Figure imgf000012_0006
incremented by 1 for each step of the recursion. The value k starts with 0 and reaches to N— 1.
In a second step, the signal decoding or precoding is completed. The second step may be termed as the computation of PGJEIH from PGJEH.
In order to receive G 1 it is defined
Figure imgf000012_0001
and compute via matrix multiplication
Figure imgf000012_0002
where is an equivalent permutation matrix of all the recursive permutation matrices.
Using equations (17-19) it is finally stated
Figure imgf000012_0003
That is, once has been calculated, G-1 is achieved by simply permuting according
Figure imgf000012_0004
to On the other hand if pivoting is not required then by setting Pk = lN for k that ranges from 0 to N— 1 no permutations induced by Pk are required during the PGJEH process and also the permutation in (20) can be discarded since G-1 would equal
Figure imgf000012_0005
Note that equations (1-20) simply explain the required steps of the proposed solution, a mathematical justification of the algorithm is included below.
It is easy to notice that equations (10-11) and equations (14-15) imply a vector by scalar multiplication, whereas (12-13) imply a vector by scalar multiplication and accumulation (MAC). Since the same coefficients, i.e. multiply rows on both and , it
Figure imgf000013_0001
Figure imgf000013_0002
Figure imgf000013_0008
means that for a N x N matrix, and a set of N parallel MACs, this can be used to perform a multiplication of only the relevant elements of the same row of
Figure imgf000013_0003
and in a single cycle
Figure imgf000013_0004
and thus achieve 100% utilization of the MACs. The following diagrams illustrate a processing of a 4 x 4 real matrix according to the above described scheme. The counter k for the number of recursions ranges from 0 to 3, with N = 4 and k from 0 to N— 1. Note that the markings‘f and‘c’ in the diagrams below stand for final value and current value respectively.
Figure imgf000013_0005
Permute both G and I by P0 from the left and right.
Figure imgf000013_0006
Multiply by and store as a 1 x 4 intermediate result rT .
Figure imgf000013_0007
Figure imgf000014_0005
Multiply by and store in-place. Note that multiplying by '1' is actually a placement
Figure imgf000014_0001
and not a multiplication.
Figure imgf000014_0004
Subtract from this row the multiplication
Figure imgf000014_0003
and store in-place.
Figure imgf000014_0006
Subtract from this row the multiplication and store in-place.
Figure imgf000014_0002
Figure imgf000015_0005
Subtract from this row the multiplication and store in-place. Permute both and
Figure imgf000015_0001
Figure imgf000015_0002
by P1 from the left and right.
Figure imgf000015_0004
Figure imgf000015_0006
Now, after the last row has been reached, k is incremented to 1. Multiply by and store
Figure imgf000015_0003
as a 1 x 4 intermediate result rT .
Figure imgf000015_0007
Multiply by and store in-place.
Figure imgf000016_0004
Figure imgf000016_0006
Subtract from this row the multiplication T and store in-place.
Figure imgf000016_0003
Figure imgf000016_0005
Subtract from this row the multiplication and store in-place. Permute both and
Figure imgf000016_0001
Figure imgf000016_0002
by P2 from the left and right.
Figure imgf000016_0007
Now, after the last row has been reached, k is incremented to 2. Multiply by and store
Figure imgf000017_0001
as a 1 x 4 intermediate result rT .
Figure imgf000017_0004
Multiply by and store in-place.
Figure imgf000017_0002
Figure imgf000017_0003
Subtract from this row the multiplication Bf [3,2] rT and store in-place. Permute both B| and B ? by P3 from the left and right.
Figure imgf000018_0007
Now, after the last row has been reached, k is incremented to 3. Multiply by and store
Figure imgf000018_0001
in-place. Note that no permutation was required here.
Figure imgf000018_0006
As the limit of k is reached with the value 3, the recursion is finished. Please note that the upper triangular matrix directly corresponds to and can be extracted from the matrix
Figure imgf000018_0004
Figure imgf000018_0003
and that the lower triangular matrix L directly corresponds to and can be extracted from the matrix.
Figure imgf000018_0005
In the following, a mathematical justification of the PGJEH process is given.
Using equations (1-7), one can write
(Al)
(A2)
Figure imgf000018_0002
(A3)
Figure imgf000019_0001
In that case
Figure imgf000019_0002
(A4)
Figure imgf000019_0003
where (h is also a Hermitian matrix.
Using this step as an example, one can therefore generalize the PGJEH procedure by the following recursion:
Define the upper triangular matrix
Figure imgf000019_0005
(A5)
Figure imgf000019_0004
and the lower triangular matrix L
(A6)
Figure imgf000019_0006
Where it was defined:
Figure imgf000019_0007
(A7)
In view of the above it is easy to see that
Figure imgf000019_0008
(A8)
From equation (A8) one can derive
Figure imgf000019_0009
(A9)
Where it was defined
Figure imgf000019_0010
(A10) Finally, from equations (A8-A10) one can state
Figure imgf000020_0001
(Al l) i.e. is actually the Cholesky decomposition of However, if on the other hand, one choose to not perform any pivoting, i.e., then L is the Cholesky
Figure imgf000020_0002
decomposition of G. Therefore, it is obvious from equations (A5-A6) that the PGJEH algorithm operates
Figure imgf000020_0005
from the left and from the right on G and I simultaneously and produces and respectively.
Figure imgf000020_0004
Figure imgf000020_0006
From equations (A8), (A10) and (Al 1) it is obvious that (A 12)
Figure imgf000020_0003
Finally, the computation of G-1 can be finished by (A13)
Figure imgf000020_0007
The present invention has been described in conjunction with various embodiments as examples as well as implementations. However, other variations can be understood and effected by those persons skilled in the art and practicing the claimed invention, from the studies of the drawings, this disclosure and the independent claims. In the claims as well as in the description the word“comprising” does not exclude other elements or steps and the indefinite article“a” or“an” does not exclude a plurality. A single element or other unit may fulfill the functions of several entities or items recited in the claims. The mere fact that certain measures are recited in the mutual different dependent claims does not indicate that a combination of these measures cannot be used in an advantageous implementation.

Claims

1. Signal decoder (100) for performing matrix inversion of an N x N Hermitian input matrix (G), wherein the signal decoder (100) is configured to
provide an N x 2 N augmented matrix (K0) having as a left matrix the matrix
Figure imgf000021_0001
which is initialized as the input matrix (G) and as a right matrix the matrix which is initialized
Figure imgf000021_0011
as an N x N identity matrix (IN);
perform a recursive sequence of operations indexed by k that ranges from 0 to (N— 1) each of which includes a row and column permutation operation followed by a multiplication from the left of a lower triangular matrix (Ak ) on the matrix and the matrix
Figure imgf000021_0003
Figure imgf000021_0002
provide a lower triangular matrix corresponding to the matrix (
Figure imgf000021_0010
Figure imgf000021_0004
provide a conjugated transposed upper triangular matrix of the lower triangular
Figure imgf000021_0005
matrix
calculate a permuted, inverted input matrix by multiplying the conjugated
Figure imgf000021_0006
transposed upper triangular matrix
Figure imgf000021_0019
and the lower triangular matrix in the form
Figure imgf000021_0007
Figure imgf000021_0008
and
Figure imgf000021_0009
provide the inverse input matrix (G-1) by permuting the permuted, inverted input matrix
Figure imgf000021_0018
2. Signal decoder (100) according to claim 1, wherein
the signal decoder (100) is configured to provide an equivalent permutation matrix
Figure imgf000021_0014
of all recursive permutation matrices of the row and column permutation operations, and
is further configured to provide the inverse input matrix (G-1) by multiplying the permuted, inverted input matrix from the left with the equivalent permutation matrix
Figure imgf000021_0012
Figure imgf000021_0013
and from the right with the transposed equivalent permutation matrix
Figure imgf000021_0015
3. Signal decoder (100) according to claim 1 or 2, wherein
the signal decoder (100) is configured to perform a pivoted Gauss Jordan Elimination process on the augmented matrix (K0), wherein the Gauss Jordan Elimination is terminated when the N x 2 N augmented matrix (Kw) having as a left matrix the N x N matrix
Figure imgf000021_0016
which equals the upper triangular matrix and as a right matrix the N x N matrix which
Figure imgf000021_0017
equals the lower triangular matrix
Figure imgf000022_0001
is received and all the elements below the diagonal of the matrix are zeroed.
Figure imgf000022_0002
4. Signal decoder (100) according to claim 3, wherein
the signal decoder (100) is configured to scale each of the pivot rows by the reciprocal of the square root of the row’s pivot itself
5. Signal decoder (100) according to one of the claims 1 to 4, wherein
the signal decoder (100) is configured to perform recursions indexed by k that ranges from 0 to N— 1 on the augmented matrix (K0), with the (N— k) x (N— k ) Hermitian matrix
(Cfc)
Figure imgf000022_0003
the (N— k) x lvector (dk)
Figure imgf000022_0004
the scalar value (qk)
Figure imgf000022_0005
the permutation matrix (Pk) which is the Iw matrix with its qk’s row interchanged by its k’s row in the case pivoting is required or when pivoting is not required Pk is simply the Iw matrix for k that ranges from 0 to N— 1, the N x N matrices
Figure imgf000022_0007
and
Figure imgf000022_0006
Figure imgf000022_0008
the N x N matrix (Ak)
the N x N matrix
Figure imgf000022_0010
Figure imgf000022_0009
and the recursions on the N x N matrices and the N x N matrices ( ) being
Figure imgf000022_0011
B
Figure imgf000022_0012
Figure imgf000023_0001
6. Signal decoder (100) according to one of the claims 1 to 5, wherein
the input matrix (G) is the product HHH where the M x N channel matrix (H) is a transmission channel of received data signals.
7. Signal decoder (100) according to one of the claims 1 to 6, wherein
the signal decoder (100) is a part of a MIMO decoder and/or a MIMO precoder.
8. Method for performing matrix inversion of an N x N Hermitian input matrix (G), comprising
providing an N x 2 N augmented matrix (K0) having as a left matrix the matrix
Figure imgf000023_0002
which is initialized as the input matrix (G) and as a right matrix the matrix
Figure imgf000023_0003
which is initialized as an N x N identity matrix (IN);
performing a recursive sequence of operations indexed by k that ranges from 0 to (N—
1) each of which includes a row and column permutation operation followed by multiplication from the left of a lower triangular matrix (Ak ) on the matrix (BQ) and the matrix
Figure imgf000023_0004
providing a lower triangular matrix (L) corresponding to the matrix
Figure imgf000023_0005
providing a conjugated transposed upper triangular matrix of the lower triangular
Figure imgf000023_0006
matrix (L);
calculating a permuted, inverted input matrix
Figure imgf000023_0007
by multiplying the conjugated transposed upper triangular matrix and the lower triangular matrix in the form
Figure imgf000023_0008
Figure imgf000023_0009
Figure imgf000023_0010
LHL; and
providing the inverse input matrix (G-1) by permuting the permuted, inverted input matrix (G-1).
9. A computer program with a program code for performing the method according to claim 8 when the computer program runs on a computer or on the signal decoder (100) according to one of the claims 1 to 7.
PCT/EP2018/051047 2018-01-17 2018-01-17 Signal decoder and method for performing hermitian matrix inversion WO2019141352A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/EP2018/051047 WO2019141352A1 (en) 2018-01-17 2018-01-17 Signal decoder and method for performing hermitian matrix inversion

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2018/051047 WO2019141352A1 (en) 2018-01-17 2018-01-17 Signal decoder and method for performing hermitian matrix inversion

Publications (1)

Publication Number Publication Date
WO2019141352A1 true WO2019141352A1 (en) 2019-07-25

Family

ID=61017921

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2018/051047 WO2019141352A1 (en) 2018-01-17 2018-01-17 Signal decoder and method for performing hermitian matrix inversion

Country Status (1)

Country Link
WO (1) WO2019141352A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060285531A1 (en) * 2005-06-16 2006-12-21 Howard Steven J Efficient filter weight computation for a MIMO system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060285531A1 (en) * 2005-06-16 2006-12-21 Howard Steven J Efficient filter weight computation for a MIMO system

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SENNING CHRISTIAN ET AL: "A Lattice Reduction-Aided MIMO Channel Equalizer in 90 nm CMOS Achieving 720 Mb/s", IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS I: REGULAR PAPERS, IEEE, US, vol. 61, no. 6, 1 June 2014 (2014-06-01), pages 1860 - 1871, XP011549245, ISSN: 1549-8328, [retrieved on 20140523], DOI: 10.1109/TCSI.2013.2295027 *
YU DENGGAO ET AL: "Low complexity complex matrix inversion method for MIMO communication systems", 2015 INTERNATIONAL CONFERENCE ON WIRELESS COMMUNICATIONS & SIGNAL PROCESSING (WCSP), IEEE, 15 October 2015 (2015-10-15), pages 1 - 5, XP032820526, DOI: 10.1109/WCSP.2015.7341166 *

Similar Documents

Publication Publication Date Title
Wu et al. High-throughput data detection for massive MU-MIMO-OFDM using coordinate descent
US7933353B2 (en) Communication system and technique using QR decomposition with a triangular systolic array
KR101078632B1 (en) Efficient filter weight computation for a mimo system
EP2758896A1 (en) Vector processor having instruction set with vector convolution funciton for fir filtering
EP1817690A2 (en) Efficient computation for eigenvalue decomposition and singular value decomposition of matrices
JP3638585B2 (en) Method for clipping signal amplitude in a modulation system
Wu et al. FPGA design of a coordinate descent data detector for large-scale MU-MIMO
US8447799B2 (en) Process for QR transformation using a CORDIC processor
Rust et al. Low complexity QR-decomposition architecture using the logarithmic number system
CN104205758B (en) Method and apparatus for the soft symbol processing in communication control processor
WO2019141352A1 (en) Signal decoder and method for performing hermitian matrix inversion
Kurniawan et al. Multidimensional Householder based high-speed QR decomposition architecture for MIMO receivers
Van Gerwen et al. Microprocessor implementation of high-speed data modems
CN107231177B (en) Efficient CR detection method and architecture based on large-scale MIMO
CN107276703B (en) Orthogonal space modulation system detection method adopting compressed sensing technology
US8169978B2 (en) Techniques for frequency-domain joint detection in wireless communication systems
CN115426224B (en) Channel estimation method and system based on OTFS (optical transport plane) signal
WO2019141353A1 (en) Signal decoder and method for determining the qr decomposition of an m×n input matrix
CN104737463A (en) Prefiltering in mimo receiver
Abramovici The accurate calculation of Fourier integrals by the fast Fourier transform technique
Ashrafi et al. A novel square-root Nyquist filter design with prescribed ISI energy
CN106505973B (en) A kind of FIR filter of N tap
De Carvalho et al. Performance and complexity analysis of blind FIR channel identification algorithms based on deterministic maximum likelihood in SIMO systems
Abels et al. Efficient FPGA implementation of a high throughput systolic array QR-decomposition algorithm
KR20060057634A (en) Reduced complexity sliding window based equalizer

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: 18701008

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: 18701008

Country of ref document: EP

Kind code of ref document: A1