26
IMPLEMENTATION OF COMPLEX ENUMERATION FOR MULTIUSER MIMO VECTOR PRECODING Signal Theory and Communications Area Department of Electronics and Computer Science, University of Mondragon Maitane Barrenechea , Mikel Mendicute, Idoia Jiménez and Egoitz Arruti

On Complex Enumeration for Multiuser MIMO Vector Precoding

Embed Size (px)

DESCRIPTION

Presentation held at the 19th European Signal Processing Conference, EUSIPCO 2011, Barcelona, SPain

Citation preview

Page 1: On Complex Enumeration for Multiuser MIMO Vector Precoding

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

Page 2: On Complex Enumeration for Multiuser MIMO Vector Precoding

2

Outline

Introduction

Complex enumeration

The puzzle enumerator

Implementation of Complex Enumeration Techniques

Conclusions

Page 3: On Complex Enumeration for Multiuser MIMO Vector Precoding

Introduction

3

Vector Precoding

The set of equations that describe the MMSE solution for VP are:

Page 4: On Complex Enumeration for Multiuser MIMO Vector Precoding

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

Page 5: On Complex Enumeration for Multiuser MIMO Vector Precoding

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.

Page 6: On Complex Enumeration for Multiuser MIMO Vector Precoding

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

Page 7: On Complex Enumeration for Multiuser MIMO Vector Precoding

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

Page 8: On Complex Enumeration for Multiuser MIMO Vector Precoding

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.

Page 9: On Complex Enumeration for Multiuser MIMO Vector Precoding

9

Outline

Introduction

Complex enumeration

The puzzle enumerator

Implementation of Complex Enumeration Techniques

Conclusions

Page 10: On Complex Enumeration for Multiuser MIMO Vector Precoding

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

Page 11: On Complex Enumeration for Multiuser MIMO Vector Precoding

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.

Page 12: On Complex Enumeration for Multiuser MIMO Vector Precoding

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.

Page 13: On Complex Enumeration for Multiuser MIMO Vector Precoding

13

Outline

Introduction

Complex enumeration

The puzzle enumerator

Implementation of Complex Enumeration Techniques

Conclusions

Page 14: On Complex Enumeration for Multiuser MIMO Vector Precoding

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

Page 15: On Complex Enumeration for Multiuser MIMO Vector Precoding

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

Page 16: On Complex Enumeration for Multiuser MIMO Vector Precoding

The Puzzle Enumerator

16

Step 4: Identify the corresponding region=2 =3 =4 =5

=6 =7 =8

Page 17: On Complex Enumeration for Multiuser MIMO Vector Precoding

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

Page 18: On Complex Enumeration for Multiuser MIMO Vector Precoding

18

Outline

Introduction

Complex enumeration

The puzzle enumerator

Implementation of Complex Enumeration Techniques

Conclusions

Page 19: On Complex Enumeration for Multiuser MIMO Vector Precoding

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

Page 20: On Complex Enumeration for Multiuser MIMO Vector Precoding

Implementation of Complex Enumeration

20

ArchitecturesFull Sort

Circular Subsets & Neighbour expansion

Page 21: On Complex Enumeration for Multiuser MIMO Vector Precoding

Implementation of Complex Enumeration

21

ArchitecturesPuzzle Enumerator

Page 22: On Complex Enumeration for Multiuser MIMO Vector Precoding

Implementation Results

22

Latency Required amount of clock cycles ( ) to output the th enumerated value and its distance increment.

Page 23: On Complex Enumeration for Multiuser MIMO Vector Precoding

Implementation Results

23

Device Occupation

No distance computations required

Page 24: On Complex Enumeration for Multiuser MIMO Vector Precoding

24

Outline

Introduction

Complex enumeration

The puzzle enumerator

Implementation of Complex Enumeration Techniques

Conclusions

Page 25: On Complex Enumeration for Multiuser MIMO Vector Precoding

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.

Page 26: On Complex Enumeration for Multiuser MIMO Vector Precoding

26

Thanks for your attentionMaitane Barrenechea

[email protected]