on complex enumeration for multiuser mimo vector precoding
DESCRIPTION
Presentation held at the 19th European Signal Processing Conference, EUSIPCO 2011, Barcelona, SPainTRANSCRIPT
IMPLEMENTATION OF COMPLEX ENUMERATION FOR
MULTIUSER MIMOVECTOR PRECODING
Signal Theory and Communications AreaDepartment of Electronics and Computer Science,
University of Mondragon
Maitane Barrenechea, Mikel Mendicute, Idoia Jiménez and Egoitz Arruti
2
Outline
Introduction
Complex enumeration
The puzzle enumerator
Implementation of Complex Enumeration Techniques
Conclusions
Introduction
3
Vector Precoding
The set of equations that describe the MMSE solution for VP are:
Use a distributed distance computation model
It is a common practice to limit the cardinality of the search set Specially if there is no sphere constraint Select the lattice points closest to the origin
Tree search features N users N levels child nodes stem from each parent node
Introduction
4
Tree search techniques
Introduction
5
Tree search techniques: The sphere encoder
The search is constrained to the perturbation vectors belonging to a hypersphere around a reference signal. Achieves the optimum solution.
Introduction
6
Tree search techniques: The K-Best
Fixed-complexity algorithm Performance-complexity trade-off given by the design parameter K
Selects the K most promising branches at each level K elements need to be sorted at each level Bottleneck
Introduction
7
Tree search techniques: The fixed sphere encoder (FSE) Fixed-complexity algorithm
Performance-complexity trade-off given by the design parameter
At each level expand the most promising nodes No sorting stages
Complex Enumeration
8
Schnorr-Euchner Enumeration
The S-E enumeration is necessary in all tree-search techniques: Sphere Encoder:
Improve the pruning efficiency and run-time of the algorithm.
K-Best: The bottleneck produced by the sorting stages can be alleviated by using distributed sorting schemes that takes advantage of the S-E ordered sequence of nodes.
FSE: The sort-free node selection is performed based on the S-E enumeration.
9
Outline
Introduction
Complex enumeration
The puzzle enumerator
Implementation of Complex Enumeration Techniques
Conclusions
Complex Enumeration
10
Schnorr-Euchner (S-E) Enumeration Visit the nodes according to their distance increment
Order the nodes - in increasing distance to Real vs. Complex-plane enumeration
Real Simple, zig-zag pattern
Complex Complicated pattern
Complex Enumeration
11
Methods for Complex EnumerationFull Sort
Computationally expensive Need to compute distance increments.
Sorting A lot of data movement Power consumption
Identification of the admissible set Presented in [Hochwald2003] .
Identify the admissible set of candidates given a certain sphere constraint by means of trigonometric calculations.
Unsuitable for HW implementation.
[Hochwald2003] Hochwald, B. and ten Brink, S. , “Achieving near-capacityon a multiple antenna channels,” IEEE Transactions on Communications,vol. 51, pp. 389–399, 2003.
Complex Enumeration
12
Methods for Complex EnumerationCircular set enumeration
Implementation-friendly version of the ideas in [Hochwald2003].
Initial point and direction of the local enumeration determined by boundaries.
Neighbour Expansion Locally enumerate in the real and imaginary axis.
Compose a candidate list based on the locally enumerated neighbouring nodes .
Variable length candidate list.
13
Outline
Introduction
Complex enumeration
The puzzle enumerator
Implementation of Complex Enumeration Techniques
Conclusions
The Puzzle Enumerator
14
Step 1: Setting the size of the complex grid
A.- Define from the distribution of
B.- Compute the minimum cardinality of the set
Rz
The Puzzle Enumerator
15
Step 2: Local Enumeration
Enumeration index Values Locally Enumerated
2-3 2
4-7 3
8-11 4
Step 3: Compute Boundary Lines
The Puzzle Enumerator
16
Step 4: Identify the corresponding region=2 =3 =4 =5
=6 =7 =8
The Unordered Puzzle Enumerator
17
For the FSE, it is sufficient to merely identify the set of most favourable nodes, regardless of their order.
If the union of the puzzle pieces for a certain symbol spans over the whole puzzle area That symbol is unequivocally part of the most favourable nodes.
Otherwise, another puzzle must be solved.
Example:
Set of most preferable nodes
18
Outline
Introduction
Complex enumeration
The puzzle enumerator
Implementation of Complex Enumeration Techniques
Conclusions
Implementation of Complex Enumeration
19
Fully-pipelined architectures of the aforementioned enumerators have been implemented on a Virtex-5 XC5Vlx30-3 FPGA.
Each enumerator provides the optimum S-E sequence of 8 nodes.
Puzzle enumerator No distance computation Rest of enumerators Computed distances can be later reused in the tree traversal
Fair comparison
8 MCUs added to the puzzle
enumerator design
Implementation of Complex Enumeration
20
ArchitecturesFull Sort
Circular Subsets & Neighbour expansion
Implementation of Complex Enumeration
21
ArchitecturesPuzzle Enumerator
Implementation Results
22
Latency Required amount of clock cycles ( ) to output the th enumerated value and its distance increment.
Implementation Results
23
Device Occupation
No distance computations required
24
Outline
Introduction
Complex enumeration
The puzzle enumerator
Implementation of Complex Enumeration Techniques
Conclusions
Conclusions
25
Benefits of the Puzzle enumerator:
Independent symbol selection
No distance computations required
No sorting or minimum searches required
Constant and reduced latency
Minimum area occupation
The puzzle enumerator is specially suitable for fixed-complexity approaches, but it can also be used along with the sphere encoder if a certain limit is set on the eligible child nodes.