Embodiments of the disclosed technology generally relate to signal processing in multiple-input multiple-output (“MIMO”) signal transmission detection. More particularly, the disclosed technology relates to Schnorr-Euchner expansion algorithms implemented in MIMO communications.
Multiple-Input Multiple-Output (“MIMO”) communication systems are becoming increasingly popular as a solution to increasing demands for higher data-rates and more reliable wireless communication systems. These systems can include multiple antennas at a transmitter side of the communication system and multiple antennas at the receiver side of the communication system. Each transmitter antenna can transmit a different signal at a common frequency through a different channel of the communication system. Each receiver antenna may receive each signal from the multiple transmitter-antennas. During transit, the transmitted signals may encounter different obstacles such that the frequency response of each channel is different. Thus, a common goal of conventional systems is to attempt to efficiently detect the transmitted symbols by determining the frequency response of each channel in the communication system.
Although the optimal solution to the MIMO symbol detection problem, Maximum Likelihood (“ML”) detection, is known, a brute-force ML detector implementation involves an exhaustive search over all possible transmitted symbol vectors. This approach is infeasible for hardware implementations when either a large signal constellation or a large number of transmit and receive antennas are employed. Hence, a goal of conventional systems is to design hardware for MIMO symbol detection that achieves comparable Bit-Error-Rate (“BER”) performance to the ML detector while having low hardware complexity and meeting throughput and latency requirements.
Some MIMO symbol detection systems employ methods of linear detection and Successive Interference Cancelation (SIC), Sphere Decoding (SD), Lattice Reduction (LR), and/or Complex Lenstra-Lenstra-Lovasz (CLLL) algorithms, among many other possibilities.
The Schnorr-Euchner (SE) method is a detection algorithm that searches a list of candidates for best guesses of the transmitted symbols. Each candidate is associated with a cost. The SE method ranks the candidates in the order of their cost function. The candidate with the smallest cost is considered as the best candidate. The SE method may be applied to or used in conjunction with, but not limited to, many algorithms including Sphere Decoding, lattice decoding applications, and may be used in other applications such as and global positioning systems (GPS). The SE method often includes two stages: an initialization stage and an expansion stage. The existing SE expansion method often requires multipliers to obtain the value of the cost function, where the multipliers can result in long critical path that lowers the maximum achievable frequency of a VLSI implementation. As a result, due to the use of multipliers, the existing SE method has a high cost in processing power and time. Therefore, there is a need for a more energy-efficient, accurate, and less complex SE method with enhanced performance. Various embodiments of the disclosed technology address these needs.
The disclosed technology relates to SE expansions with reduced or without multipliers. One aspect of the disclosed technology relates to an SE expansion method for a multiple-input multiple-output communication system. The method may include receiving, by a plurality of input terminals, a plurality of input signals. Each input signal may transmit a symbol. The method may identify a list of possible symbols transmitted by each input signal. A cost value for each possible symbol may be determined based on a cost function. The cost function may be implemented without requiring a multiplier. The possible symbol with a lowest cost value may be identified as the transmitted symbol.
Another aspect of the disclosed technology relates to an apparatus that implements a Schnorr-Euchner expansion method without requiring a multiplier. The apparatus may include a plurality of input terminals each configured to receive a wireless signal. The apparatus may also include a processor in connection with the input terminals, where the processor may be configured to detect a symbol transmitted by each wireless signal. For instance, the processor may identify a list of possible symbols that may be transmitted by each wireless signal. The processor may determine a cost value for each possible symbol based on a cost function. The possible symbol with a lowest cost value may be identified as the transmitted symbol.
Yet another aspect of the disclosed technology relates to a multiple-input multiple-output communication system. The system may include a plurality of input terminals each configured to receive an input signal. The system may also include an integrated circuit implementing an Schnorr-Euchner expansion algorithm without requiring a multiplier. The integrated circuit may be configured to detect a symbol transmitted by each input signal. For instance, the circuit may estimate a list of possible symbols that may be transmitted by the input signal. The circuit may determine a cost value for each possible symbol based on a cost function. The possible symbol with a lowest cost value may be identified as the transmitted symbol.
Further, an exemplary embodiment of the disclosed technology provides a SE expansion that reduces the number of multipliers for the crossing multiplication. In one embodiment, the SE expansion method does not need any multiplier for l1 cost function.
In another exemplary embodiment of the disclosed technology, an SE expansion eliminates the multiplier for l2 cost function using low-complexity recursive equations.
Some exemplary embodiments of the disclosed technology provide a fast SE expansion for l1 cost function for both real and complex models. The SE expansion eliminates the multiplier and is very simple to implement.
Another embodiment of the disclosed technology provides a complex SE expansion method for l2 norm cost that generates the first 9 complex SE expansions with some simple conditions. By checking the conditions, the first 9 complex SE expansions can be uniquely determined, and the checking equations only require shifting and addition operations, which may be easily implemented in hardware.
These and other aspects of the disclosed technology are described in the Detailed Description disclosed below and the accompanying figures. Other aspects and features of embodiments of the disclosed technology will become apparent to those of ordinary skill in the art upon reviewing the following description of specific, exemplary embodiments of the disclosed technology in concert with the figures. While features of the disclosed technology may be discussed relative to certain embodiments and figures, all embodiments of the disclosed technology can include one or more of the features discussed herein. While one or more embodiments may be discussed as having certain advantageous features, one or more of such features may also be used with the various embodiments of the disclosed technology discussed herein. In similar fashion, while exemplary embodiments may be discussed below as system or method embodiments, it is to be understood that such exemplary embodiments may be implemented in various devices, systems, and methods of the disclosed technology.
The following Detailed Description technology is better understood when read in conjunction with the appended drawings. For the purposes of illustration, there is shown in the drawings exemplary embodiments, but the subject matter is not limited to the specific elements and instrumentalities disclosed.
To facilitate an understanding of the principles and features of the disclosed technology, various illustrative embodiments are explained below. In particular, the disclosed technology is described in the context of systems and methods for MIMO communication systems. Certain embodiments of the disclosed technology may be applied to many wireless MIMO communication system standards known in the art, including, but not limited to, IEEE 802.11 (Wi-Fi), 4G, 3GPP, Long Term Evolution, Wi-MAX, HSPA+, and the like. Embodiments of the disclosed technology, however, are not limited to use in wireless MIMO communication systems. Rather, embodiments of the disclosed technology can be used for processing other MIMO communication systems, including, but not limited to, optical MIMO systems or other transmission systems having an architecture incorporating multiple transmitters and/or multiple transceivers.
The components described hereinafter as making up various elements of the disclosed technology are intended to be illustrative and not restrictive. Many suitable components or steps that would perform the same or similar functions as the components or steps described herein are intended to be embraced within the scope of the disclosed technology. Such other components or steps not described herein can include, but are not limited to, for example, similar components or steps that are developed after development of the disclosed technology.
c=|y−rz|p, (1)
where y and r≠0 may be known real numbers, z may be an unknown integer parameter, c may represent the cost of the SE algorithm, and integer p may denotes the lp-norm.
When p=1, the above equation may compute an l1-norm cost. When p=2, the above equation may compute an l2-norm cost. The methods described herein may be applicable to other values of p. In some embodiments, there may exist a sequence of all possible z, i.e., {z(1), z(2), . . . } (z(n)≠z(m), ∀n≠m), costs for all possible z may be disclosed by {c(n)=(y−rz(n))2}n=1∞ where costs are arranged in an ascend order such that c(1)<c(2)< . . . .
Given r and y, the SE method disclosed herein may find K best candidates z in a fast way. For instance, the SE method may find the top k z's, i.e., {z(n)}n=1k such that their corresponding costs {c(n)}n=1k are smallest in a sequential way.
1. Conventional SE Method
1.1 Real Case
In real domain, to achieve the goal with low complexity, the SE method may calculate z(n) and c(n) with two stages—the initial stage and the expansion stage. The initial stage of the SE method may obtain z(1) and initializes a step variable s(1) to help determine the next z as
z(1)=┌y/r┘, (2)
s(1)=sgn(y/r−z(1)), (3)
c(1)=|y−rz(1)|p, (4)
where ┌·┘ denotes the rounding function.
At the expansion stage, the SE method may expand z(n), n≥2 using the following recursive formula:
z(n)=z(n−1)+s(n−1), (5)
s(n)=−s(n−1)−sgn(s(n−1)), (6)
c(n)=|y−rz(n)|p, (7)
where s(n) is a step variable to help determine the next z(n+1).
Table 1 illustrates a conventional SE method. The main complexity of the SE expansion is in Eq. (7). In the conventional SE method, two multipliers are required for p=2 and one multiplier is required for p=1. Since multipliers usually result in much longer latency compared to adders and multiplexers in hardware implementation, especially when the bit width is large, a raw implementation of Eq. (7) can become a critical path that lowers the maximum achievable frequency, i.e., maximum throughput of VLSI implementation.
1.2 Complex Case
Unlike the SE expansion in real domain that can be easily computed using recursive equations, existing complex SE methods require a candidate list that contains all possible next expansions. For instance, to find z(n), n>1, existing complex SE method maintains a list of possible SE expansions and classifies the expansions into two categories:
If a Type I expansion is chosen as the next expansion of z(n), both the real and imaginary SE expansions may be executed to guarantee that the next smallest solution is in the candidate list , while for a Type II expansion, only imaginary SE expansion may be used. An example of the existing complex SE method is given in Table 2, where s(n) is an auxiliary variable to help determine the SE expansion in real or imaginary direction.
(1)
(1) = {(z,c,s)}
[z(1)], y, r, (n)
(n+1) = (n)/{(z(n), c(n), s(n))}
(n + 1) = (n + 1) ∪ {(z1, s1, c1)}
(n+1) = (n+1) ∪ {(z2, s2, c2)}
Complex SE method has been discussed in L. Zhang, H. Lei, X. Zhang, and D. Yang, “Efficient complex sphere decoding framework for linear dispersion space-time block codes,” in Proc. IEEE Int. Symp. on Personal, Indoor and Mobile Radio Commun. (PIMRC), Athens, Greece, September 2007, pp. 1-4. Complex SE method has also been discussed in M. Mahdavi and M. Shabany, “Novel MIMO detection algorithm for high-order constellations in the complex domain,” IEEE Trans. VLSI Syst., vol. 21, no. 5, pp. 834-847, May 2013.
2. Multiplier Reduction 1 (MR1): Updating the Crossing Multiplication Recursively
In one aspect, the disclosed technology improves the existing SE method by eliminating or reducing the use of multipliers. According to one embodiment of the disclosed technology, rz(n) in Eq. (7) may be reduced as follows to avoid the use of multipliers. For instance, by introducing an auxiliary variable A(n)=rz(n), rz(n) may be represented by the following recursive equation:
which is based on the fact that sgn(s(n−2))=−sgn(s(n−1)).
As a result, c(n) may be recursively computed using the following formula
c(n)=|y−A(n)|p. (9)
Table 3 illustrates one embodiment of the SE method according to the disclosed technology.
As illustrated in Table 3, at the initial step, A(0)=A(1)=rz(1) may ensure that the SE method described herein reaches the exact solution as the original SE method. In Table 3, lines 3-4 may be regarded as the critical path of the SE expansion, which may lower the maximum frequency.
To shorten the critical path, Table 4 illustrates another embodiment of the SE method where an early evaluation (EE) may be performed on A(n). As shown in Table 4, the early evaluation may be calculated in the initial stage or previous expansions.
The multiplication with sgn(s(n−1)) in Eq. (8) and the absolute operation for p=1 in Eq. (9) may be efficiently implemented without the use of any multiplier. For instance, these operations may be implemented simply by using a multiplexer. Therefore, in this embodiment, for p=1, no multiplier is required for the proposed SE expansion. For instance,
Further, for p=2, the number of multipliers may be reduced to one because of the square operation.
In some embodiments, a further improvement of the SE method may reduce the multiplier in r sgn(s(n−1)) by defining R(n−1)=r sgn(s(n−1)) and using the recursive equation R(n)=−R(n−1).
3. Multiplier Reduction 2 (MR2): Calculating l2-Norm Recursively
In one aspect, the disclosed technology improves the existing SE method by eliminating the use of multipliers when calculating l2-norm. For instance, the calculation of l2-norm based on Eq. (7) with p=2 may be disclosed as follows:
where B(n−2)=r2z(n−2), C=r2, and D=ry.
Similar to A(n), B(n) may be determined based on the following recursive equation:
Table 5 illustrates an exemplary pseudo code of the SE method according to this embodiment.
In Table 5, for the initial step, B(0)=B(1)=r2z(1) and c(0)=c(1) may yield the same results as the original SE method in Eqs. (2)-(7).
Further, as illustrated in Table 5, C=r2 and D=ry may be constants in the expansion stage, and their values may be pre-computed in the initialization stage. Further, as illustrated in Table 5, the multiplication with 2 may be implemented using a shift register without any multiplier. As a result, this embodiment of the SE expansion method may not require any multiplier in calculating c(n) and B(n) for p=2.
In another embodiment, the l2-norm may be calculated as follows:
where E(n)=2yrz(n) and F(n)=r2(z(n))2, both of which can be recursively updated according to the following formulas:
In this embodiment, the SE method again may be implemented without multipliers. In some aspects, the early evaluation (EE) method may be applied to E(n) and F(n) to reduce the length of critical path.
3.1 Cases for p>2
In some embodiments, for p>2, multipliers may be reduced or eliminated according to similar concept presented above. For example, when p=3, G(n)=(y−rz(n))3 may be introduced and determined as follows:
where H(n−2)=3(y−rz(n−2))2r, which may be computed in a recursive way similar to SE method discussed above without any multipliers. Therefore, c(n)=|y−rz(n)|3=|E(n)| may be computed without any multipliers.
4. Fast Schnorr-Euchner Expansions for l1 Norm
4.1 Real Case
According to one embodiment of the disclosed technology, a fast SE expansion for l1 cost function may be developed based on the following recursive equations:
c(n)=c(n−2)+|r| (16)
z(n)=z(n−2)+δ(n) (17)
with δ(n)=sgn(z(n−2)−z(1))=−δ(n−1).
Table 6 illustrates an exemplified pseudo code of the SE method according to this embodiment. In this embodiment, the SE expansion method may eliminate the multiplier and is very simple to implement.
As illustrated in Table 6, for the initialization, with z(0)=┌y/r┘ and c(0)=−|y−rz(1)|, the SE method may yield the exactly same sequence of z(j) and c(j) as the original SE method.
Table 7 illustrates an exemplified pseudo code of the SE method using early evaluation. Here, the performance of the SE method may be improved by performing early evaluation on z(n) by calculating δ(n) in earlier stage.
In some embodiments, by exploiting δ(n)=sgn(z(n−2)−z(n−1)), n≥3, δ(n) may be removed from SE method for l1 cost at the cost of possible longer latency.
4.2 Complex Case
According to one embodiment of the disclosed technology, a complex SE expansion method for l1 norm cost may be implemented in a manner such that by checking some simple conditions, the sequence of SE expansion for l1 cost may be uniquely determined without maintaining the candidate list.
In this embodiment, the cost function may be computed according to the following equation:
Where y may be a complex number, r≠0 is a real number, z is an unknown Gaussian integer in the form of +j, is the integer set, j=√{square root over (−1)}, c is the cost, and [·] and I[·] denote the real and imaginary parts of a variable, respectively.
The first SE solution may be obtained as
z(1)=┌y/r┘,
c(1)=|y−rz(1)|1,
In this embodiment, by denoting Δ1=|[y]−r[z(1)]|, Δ2=|I[y]−rI[z(1)]|, δ1=sgn([y]/r−[z(1)]), and δ2=sgn(I[y]/r−rI[z(1)]), SE solutions may be computed according to the following propositions.
Proposition 1
The 2nd and 3rd SE solutions may be determined as
Proposition 2
If |r|<2Δ1+2Δ2, the 4th SE solution may be determined by
z(4)=z(1)+δ1+δ2j, (22)
c(4)=2|r|−Δ1−Δ2, (23)
and the 5th and 6th SE solutions are in the set
z(5),z(6)ϵ{z(1)−δ1,z(1)−δ2j} (24)
with the same cost |r|+Δ1+Δ2. Otherwise, if |r|>2Δ1+2Δ2, the 4th and 5th SE solutions are in the set
z(4),z(5)ϵ{z(1)−δ1,z(1)−δ2j} (25)
with the cost |r|+Δ1+Δ2, and the 6th SE solution is given by
z(6)=z(1)+δ1+δ2j, (26)
c(6)=2|r|−Δ1−Δ2. (27)
A sequence of complex SE expansions for l1 norm based on the conditions Δ1Δ2 and |r|2Δ1+2Δ2 may be determined.
Proposition 3
If |r|<2Δ1+2Δ2, the sequence of complex SE expansions may be determined by
z(1),z(2),z(3),z(4), layer 1
{z(1)−δ1,z(1)−δ2j},{z(2)+δ2,1,z(2)+δ2,2j},
{z(3)+δ3,1,z(3)+δ3,2j},{z(4)+δ1,z(4)+δ2j}, layer 2
.
.
.
{z(1)−iδ1−kδ2j|∀i+k=l−1,i≥0,k≥0},
{z(2)+iδ2,1+kδ2,2j|∀i+k=l−1,i≥0,k≥0},
{z(3)+iδ3,1+kδ3,2j|∀i+k=l−1,i≥0,k≥0},
{z(4)+iδ1+kδ2j|∀i+k=l−1,i≥0,k≥0}, layer l
.
.
.
and the costs are
c(1),c(2),c(3),c(4), layer 1
c(1)+|r|,c(2)+|r|,c(3)+|r|,c(4)+|r|, layer 2
.
.
.
c(1)+(l−1)|r|,c(2)+(l−1)|r|,c(3)+(l−1)|r|,c(4)+(l−1)|r|, layer l
.
.
.
where the expansions with smaller layers may have smaller cost than those with higher layers, the SE solutions may be grouped in {·} if they have the same cost, and
If |r|>2Δ1+2Δ2, the sequence of complex SE expansions may be given by
z(1), layer 0
z(2),z(3),z(4),z(5),z(6) layer 1
{z(2)+δ2,1,z(2)+δ2,2j},{z(3)+δ3,1,z(3)+δ3,2j},
{z(1)−2δ1,z(1)−δ1−δ2j,z(1)−2δ2j},{z(4)+δ1,z(4)+δ2j}, layer 2
.
.
.
{z(2)+iδ2,1+kδ2,2j|∀i+k=l−1,i≥0,k≥0},
{z(3)+iδ3,1+kδ3,2j|∀i+k=l−1,i≥0,k≥0},
{z(1)−iδ1−kδ2j|∀i+k=l,i≥0,k≥0},
{z(6)+iδ1+kδ2j|∀i+k=l−1,i≥0,k≥0}, layer l
.
.
.
and the costs are
c(1), layer 0
c(2),c(3),c(4),c(5),c(6), layer 1
c(2)+|r|,c(3)+|r|,c(1)+2|r|,c(6)+|r|, layer 2
.
.
.
c(2)+(l−1)|r|,c(3)+(l−1)|r|,c(1)+l|r|,c(6)+(l−1)|r|, layer l
.
.
.
4.3 SE Methods with Bound Constraint
According to some embodiments of the disclosed technology, the value of z may be bounded as follows:
c=|y−rz|,s.t.,a≤z≤b, (32)
where a and b are integers indicating the lower and upper bound of z. The disclosed technology may implement the SE method with the bound constraint.
5. Fast SE Expansion for l2 Norm
According to one embodiment of the disclosed technology, a complex SE expansion method for l2 norm cost may generate the first 9 complex SE expansions with some simple conditions. By checking the conditions, the first 9 complex SE expansions may be uniquely determined. The checking equations may only require shifting and addition operations, which are very easy to be implemented in hardware.
In this embodiment, the cost function may be computed according to the following equation:
Where y may be a complex number, r≠0 is a real number, z is an unknown Gaussian integer in the form of +j, is the integer set, j=√{square root over (−1)}, c is the cost, and [·] and I[·] denote the real and imaginary parts of a variable, respectively.
The first SE solution may be obtained as
z(1)=┌y/r┘,
c(1)=|y−rz(1)|2,
To simplify the equations in deriving the following 2nd to 9th SE solutions, denote Δ1=|[y]−r[z(1)]|, Δ2=|I[y]−rI[z(1)]|, δ1=sgn([y]/r−[z(1)]), and δ2=sgn(I[y]/r−I[z(1)]). The 2nd to 9th SE solutions may be determined according to the following propositions:
Proposition 4
The 2nd and 3rd SE solutions may be determined as
An illustration of the 2nd and 3rd SE solutions is given in
Without loss of generality, the following propositions are based on the assumption that Δ1>Δ2.
Proposition 5
The 4th SE solution is given by
Proposition 6
If 2Δ1+4Δ2>|r|, the 5th SE solution may be determined as
z(5)=z(1)−δ2j, (39)
c(5)=Δ12+(|r|+Δ2)2, (40)
else the 5th SE solution is
Proposition 7
If 4Δ1+2Δ2<|r|, the 6th SE solution may be determined as follows:
z(6)=z(1)+δ1+δ2j, (43)
c(6)=(|r|−Δ1)2+(|r|−Δ2)2, (44)
else the 6th SE solution is
With regard to propositions 4-7, the first 6 SE solutions may be uniquely determined by the following conditions: Δ1Δ2, 2Δ1+4Δ2|r|, 4Δ1+2Δ2|r|, 4Δ1−2Δ2|r|, and 2Δ1−4Δ2|r|. According to the disclosed technology, the multiplications with 2 and 4 may be implemented as shifting operations. As such, all these conditions may be efficiently checked in hardware implementation.
Proposition 8
The 7th SE solution may be determined as follows:
Proposition 9
The 8th SE solution may be determined as follows:
Proposition 10
If |r|<3Δ1−Δ2, then the 9th SE solution may be determined as follows:
z(9)=z(1)−δ1+δ2j, (51)
c(9)=(|r|+Δ1)2+(|r|−Δ2)2, (52)
else the 9th SE solution is given by
It is noted that the disclosed technology described above may be further applied to obtain the kth (k>9) SE solutions.
6 Hardware Implementation and Synthesized Results
Various embodiments of the SE methods of the disclosed technology may be implemented in MIMO communication systems. According to one embodiment of the disclosed technology, the SE methods described herein may be implemented with hardware, such as a VLSI implementation. In some instances, an integrated circuit that implements the SE methods may be part of a MIMO communication system. According to another embodiment of the disclosed technology, the SE methods described herein may be implemented with software on a reconfigurable processor.
In some embodiments of the disclosed invention, the various SE methods may be implemented as logic instructions stored on memory that can be executed by a processor. The instructions can be configured to cause the system to perform the various steps of the various SE methods described herein.
An exemplary embodiment of the disclosed invention may provide a MIMO communication system comprising a plurality of input terminals, a processor, and logic. The various embodiments of the disclosed technology may comprise many types of input terminals capable of receiving an input signal, including, but not limited to, radio-frequency signals, electromagnetic signals, optical signals, and the like. The input terminals can be many input terminals known in the art. In an exemplary embodiment of the disclosed technology, the input terminals comprise antennas. The logic may be stored in memory. The memory may be many types of memory known in the art. In an exemplary embodiment of the disclosed invention, the logic may be stored in a non-transitory computer readable media. In various embodiments of the disclosed invention, the processor may be configured to execute the logic. When executed, the logic may be configured to cause the MIMO system to perform one or more of the steps of the SE methods described herein.
6.1 Implementation for MR1 and MR2
According to some aspects of the disclosed technology, SE methods illustrated in Tables 1-5 may be implemented in Verilog. VLSI implementations of the SE methods may be synthesized on Xilinx XC7VX690T-2FFG1761C FPGA board. The implementations may be synthesized using Xilinx XST. All the methods discussed herein may be implemented in the form of combinatorial logic. Tables 8-9 list the maximum frequencies (1/latencies of all logics) of the SE methods discussed herein after place and route. In Tables 8-9, the fixed-point setting for all real numbers (e.g., c(n), A(n), B(n)) are in the form of [a,b], where a is the length of integer bits and b is the length of fractional bits, while the fixed-point setting for all integer numbers (e.g., z(n), s(n)) are in the form of [a], where a is the length of integer bits. As shown in Tables 8-9, the proposed SE methods of the disclosed technology have about 2-5 times maximum frequency improvement over the original SE method. As shown in Tables 8-9, for p=1, the maximum frequency of the proposed SE method with MR1 may reach 300 MHz, and for p=2, the maximum frequency of the proposed SE method with MR2 may also reach around 300 MHz.
6.2 Implementation for l1 Norm
Different SE methods illustrated in Tables 1 and 7 may be implemented in Verilog. The VLSI implementations may be synthesized on Xilinx XC7VX690T-2FFG1761C FPGA board. The implementations may be synthesized using Xilinx XST. All the methods described herein may be implemented in the form of combinatorial logic. Table 10 lists the maximum frequencies (1/latencies of all logics) after place and route. Similar to Tables 8-9, the fixed-point setting for all real numbers (e.g., c(n), A(n), B(n)) are in the form of [a,b], where a is the length of integer bits and b is the length of fractional bits, while the fixed-point setting for all integer numbers (e.g., z(n), s(n)) are in the form of [a], where a is the length of integer bits. As illustrated in Table 10, the proposed fast l1 SE method has about 3 times maximum frequency improvement over the original SE method. In particular, for p=1, the maximum frequency of the proposed SE method may reach around 400 MHz.
In one example implementation, the cost function may be an l1 cost function. In another example implementation, the cost function may be an l2 cost function. In some implementations, the cost function may be based on a recursive equation. In some instances, the cost function may have a real domain. In some examples, the cost function may have a complex domain.
In one example implementation, the l2 cost function may generate a first 9 complex SE expansions. The method of the disclosed technology may check conditions for the first 9 complex SE expansions. In some example implementations, the checking conditions may be implemented by shifting and addition operations.
According to some aspects of the disclosed technology, the list of possible symbols may be arranged in an ascending order of their cost values.
In one example implementation, the cost function may have a mathematical representation of
c=|y−rz|p,
wherein y is the output, r is a system implementing the SE method, z is an input, c is the cost, and an integer p denotes a lp-norm; wherein when p=1, the above equation is an l1 cost function; and wherein when p=2, the above equation is an l2 cost function.
According to some aspects of the disclose technology, multiplication in the cost function may be implemented using a multiplexer. In some instances, multiplication in the cost function may also be implemented using a shift register.
It is to be understood that the embodiments and claims disclosed herein are not limited in their application to the details of construction and arrangement of the components set forth in the description and illustrated in the drawings. Rather, the description and the drawings provide examples of the embodiments envisioned. The embodiments and claims disclosed herein are further capable of other embodiments and of being practiced and carried out in various ways. Also, it is to be understood that the phraseology and terminology employed herein are for the purposes of description and should not be regarded as limiting the claims. For instance, the term “exemplary” used herein does not mean best mode, but rather, example.
Accordingly, those skilled in the art will appreciate that the conception upon which the application and claims are based may be readily utilized as a basis for the design of other structures, methods, and systems for carrying out the several purposes of the embodiments and claims disclosed in this application. It is important, therefore, that the claims be regarded as including such equivalent constructions.
Furthermore, the purpose of the foregoing Abstract is to enable the public generally, and especially including the practitioners in the art who are not familiar with patent and legal terms or phraseology, to determine quickly from a cursory inspection the nature and essence of the technical disclosure of the application. The Abstract is neither intended to define the claims of the application, nor is it intended to be limiting to the scope of the claims in any way.
This application is a US National Stage of International Application No. PCT/US2014/053889, filed 3 Sep. 2014, which claims the benefit of U.S. Provisional Patent Application Ser. No. 61/882,919, entitle “Schnorr-Euchner Expansions without Multipliers,” filed on Sep. 26, 2013, and U.S. Provisional Patent Application Ser. No. 61/909,429, entitled “Schnorr-Euchner Expansion Methods,” filed on Nov. 27, 2013, each of which are incorporated herein by reference in their entirety as if fully set forth below.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/US2014/053889 | 9/3/2014 | WO | 00 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2015/047678 | 4/2/2015 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
6466592 | Chapman | Oct 2002 | B1 |
7012891 | Chandran | Mar 2006 | B1 |
8015271 | McKeown | Sep 2011 | B2 |
8307110 | Katzer | Nov 2012 | B1 |
20040054572 | Oldale | Mar 2004 | A1 |
20060146965 | Kwun et al. | Jul 2006 | A1 |
20070116143 | Bjerke et al. | May 2007 | A1 |
20080126303 | Park | May 2008 | A1 |
20080153444 | Chen | Jun 2008 | A1 |
20080279298 | Ben-Yishai et al. | Nov 2008 | A1 |
20100014606 | Chen et al. | Jan 2010 | A1 |
20100088265 | Pohl | Apr 2010 | A1 |
20110007851 | Li | Jan 2011 | A1 |
20110295762 | Scholz | Dec 2011 | A1 |
20120134451 | Patel | May 2012 | A1 |
20130128783 | Le Naour | May 2013 | A1 |
Number | Date | Country |
---|---|---|
2012156096 | Nov 2012 | WO |
Entry |
---|
Agrell, E. et al., Closest Point Search in Lattices, IEEE Trans. Info. Theor., 48, 8, 2002, pp. 2201-2214. |
Barbero L. G. et al., FPGA Design Considerations in the Implementation of a Fixed-Throughput Sphere Decoder for MIMO Systems, Inst. for Dig. Comm. Univ. of Edinburgh, IEEE, 2006, 6 pages. |
Chen, S. et al., Relaxed K-Best MIMO Signal Detector Design and VLSI Implementation, IEEE Trans. Very Large Integ. (VLSI) Sys, 15, 3, 2007, pp. 328-337. |
Gan, Y. H., Complex Lattice Reduction Algorithm for Low-Complexity Full-Diversity MIMO Detection, IEEE Trans. Sig. Proc., 57, 7, 2009, pp. 2701-2710. |
Guo, Z. et al., A VLSI Architecture of the Schnorr-Euchner Decoder for MIMO Systems, IEEE 6th CAS Symp. on EmergingTech, 2004, pp. 65-68. |
Guo, Z. et al., Algorithm and Implementation of the K-Best Sphere Decoding for MIMO Detection, IEEE J. Sel. Ar. Comm, 24, 3, 2006, pp. 491-503. |
Hansen, M. et al, Near Optimal Detection in MIMO Systems Using Gibbs Sampling, IEEE Chem. Soc., 2009 proceedings, 6 pages. |
Hassibi, A. et al., Integer Parameter Estimation in Linear Models with Applications to GPS, IEEE Trans. Sig. Proc., 46, 11, 1998, pp. 2938-2952. |
Hochwald, B. M. et al., Achieving Near-Capacity on a Multiple-Antenna Channel, IEEE Trans. Comm., 51, 3, 2003, pp. 389-399. |
Jalden, J. et al., DMT Optimality of LR-Aided Linear Decoders for a General Class of Channels, Lattice Designs, and System Models, IEEE Trans Info. Theor., 56, 10, 2010, pp. 4765-4780. |
Jalden, J. et al., On the Complexity of Sphere Decoding in Digital Communications, IEEE Trans. Sig. Proc., 53, 4, 2005, pp. 1474-1484. |
Larsson, Erik G., MIMO Detection Methods: How They Work, IEEE Sig. Proc. Mag., 91, 2009, pp. 91-95. |
Lenstra, A. K. et al., Factoring Polynomials with Rational Coefficients, Math. Ann. 261, 1982, pp. 515-534. |
Liang, Y.D. et al., On the Relationship Between MMSE-SIC and BI-GDFE Receivers for Large Multiple-Input Multiple-Dutput Channels, IEEE Trans. Sig. Proc., 56, 8, 2008, pp. 3627-3637. |
Ling, C., On the Proximity Factors of Lattice Reduction-Aided Decoding, IEEE Trans. Sig. Proc., 59, 6, 2011, pp. 2795-2808. |
Ma, X. et al., Performance Analysis for MIMO Systems with Lattice-Reduction Aided Linear Equalization, IEEE Trans. Comm., 56, 2, 2008, pp. 309-318. |
Mandavi, M. et al. Novel MIMO Dectection Algorithm for High-Order Constellations in the Complex Domain, IEEE Trans. Very Large Integ. (VLSI) Sys, 21, 5, 2013, pp. 834-847. |
Mondal, S. et al., Design and Implementation of a Sort-Free K-Best Sphere Decoder, IEEE Trans. Very Large Integ. (VLSI) Sys, 18, 10, 2010, pp. 1497-1501. |
Qi, X. F., A Lattice-Reduction-Aided Soft Demapper for High-Rate Coded MIMO-OFDM Systems, IEEE Sig. Proc. Lett, 1, 5, 2007, pp. 305-308. |
Rusek, E et al., Scaling Up MIMO Opportunities and Challenges with Very Large Arrays, IEEE Sig. Proc. Mag, 40, 2013, pp. 40-60. |
Seethaler, D. et al., Low-Complexity MIMO Data Detection Using Seysen's Lattice Reduction Algorithm, Vienna Univ. of Tech., IEEE, 2007, pp. 53-56. |
Shabany, M. et al., A 675 Mbps, 4 x 4 64-QAM K-Best MIMO Detector in 0.13 μm CMOS, IEEE Trans. Very Large Integ. (VLSI) Sys, 20, 1, 2012, pp. 135-147. |
Shabany, M. et al., The Application of Lattice-Reduction to the K-Best Algorithm for Near-Optimal MIMO Detection, Univ. of Toronto, IEEE, 2008, pp. 316-319. |
Srinidhi, N. et al, Layered Tabu Search Algorithm for Large-MIMO Detection and a Lower Bound on ML Performance, IEEE Trans Comm., 59, 11, 2011, pp. 2955-2963. |
Srinidhi, N. et al, Low-Complexity Near-ML Decoding of Large Non-Orthogonal STBCs Using Reactive Tabu Search, IEEE ISIT, 2009, 5 pages. |
Taherzadeh, Mahmoud et al., On the Limitations of the Naïve Lattice Decoding, IEEE Trans. Info. Theor., 56, 10, 2010, pp. 4820-4826. |
Vardhan, K. V. et al., A Low-Complexity Detector for Large MIMO Systems and Multicarrier CDMA Systems, IEEE J. Sel. Ar. Comm., 26, 3, 2008, pp. 473-485. |
Wang, X, Iterative (Turbo) Soft Interference Cancellation and Decoding for Coded CDMA, IEEE Trans on Com., 47, 7, 1999, pp. 1046-1061. |
Wen, Q. et al, Fixed-Point Realization of Lattice-Reduction Aided MIMO Receivers with Complex K-Best Algorithm, IEEE, Ga. Inst. Tech, 2013, 5 pages. |
Windpassinger, C. et al., Low-Complexity Near-Maximum-Likelihood Detection and Precoding for MIMO Systems Using Lattice Reduction, Univ. of Erlangen-Numberg, 2003, pp. 345-348. |
Wubben, D. et al., MMSE Extension of V-BLAST Based on Sorted QR Decomposition, Univ. of Bremen, IEEE, 2003, pp. 508-512. |
Yao, H. et al., Lattice-Reduction-Aided Detectors for MIMO Communication Systems, MIT, IEEE, 2002, pp. 424-428. |
Zhang, L. et al., Efficient Complex Sphere Decoding Framework for Linear Dispersion Space-Time Block Codes, 18th Ann. IEEE Intl. Sym. Personal, Indoor and Mobile Radio Comm., 2007, 4 pages. |
Zhou, Q. et al., An Improved LR-Aided K-Best Algorithm for MIMO Detection, IEEE, 2012, 5 pages. |
Zhou, Q. et al., Designing Low-Complexity Detectors for Generalized SC-FDMA Systems, Ga Inst. Tech., 6 pages. |
Zhou, Q. et al., Element-Based Lattice Reduction Algorithms for Large MIMO Detection, IEEE J. Sel. Ar. Comm, 31, 2, 2013, pp. 274-286. |
Zhou, Q. et al., Improved Element-Based Lattice Reduction Algorithms for Wireless Communications, IEEE Trans. Wire. Comm., 12, 9, 2013, pp. 4414-4421. |
Zhou, Q. et al., Robust Designs for Femtocell Networks with Interference from Macrocell Users, Ga. Inst. Tech., IEEE, 2011, pp. 214-218. |
Zhou, Q. et al., Schnorr-Euchner Expansions Without Multipliers, School of Electrical and Computer Engineering, Georgia Institute of Technology (5 pages). |
The International Search Report and Written Opinion in the related PCT Application No. PCT/US2014/053889 dated Oct. 7, 2015. |
Search Report and Opinion from related European Application No. 14849568.2 dated Apr. 10, 2017 (11 pages). |
Yang, et al., “A Flexible DSP Architecture for MIMO Sphere Decoding,” IEEE Transactions on Circuits and Systems, Oct. 2009; pp. 2301-2314; vol. 56, No. 10. |
Mondal, et al., “Architectural Optimizations for Low-Power K-Best MIMO Decoders,” IEEE Transactions on Vehicular Technology, Sep. 2009; pp. 3145-3153; vol. 58, No. 7. |
Guo, et al., “A 53.3 Mb/s 4x4 16-QAM MIMO Decoder in 0.35-μm CMOS,” IEEE International Symposium on Circuits and Systems (ISCAS); May 23, 2005; pp. 4947-4950. |
Barbero and Thompson, “FPGA Design Considerations in the Implementation of a Fixed-Throughput Sphere Decoder for MIMO Systems,” Field Programmable Logic and Applicatinos, Aug. 28, 2006; pp. 1-6. |
Number | Date | Country | |
---|---|---|---|
20160241311 A1 | Aug 2016 | US |
Number | Date | Country | |
---|---|---|---|
61882919 | Sep 2013 | US | |
61909429 | Nov 2013 | US |