• Aucun résultat trouvé

Energy Efficient Computation Kernel

Dans le document The DART-Europe E-theses Portal (Page 53-57)

LDPC Decoder Architecture

4.3 Energy Efficient Computation Kernel

The message computation kernels described in Section 3.2.1 have different characteristics and impacts on a VLSI implementation. Energy expenditure and implementation area are the most critical issues for efficient mobile wireless modems. In this section, we look mainly into the energy efficiency

4.3 Energy Efficient Computation Kernel 33

3000 3500 4000 4500 5000 5500 6000

2 4 6 8 10 12 14

Cell area [µm2]

Energy [nJ]

MS NMS OMS SCMS BCJR

Figure 4.4: SISO kernels cost visualization.

of these kernels.

We implemented at the register-transfer level (RTL) the kernels for message computation in order to observe the costs previously mentioned.

Postlayout netlists were used along with annotated switching activity in order to estimate the energy consumption. The tools used were Design CompilerR and PrimeTime PXR by Synopsys, Inc. In Figure 4.4, we show the cell area per kernel of a serial SISO unit with a message quantization of 6-bits on a CMOS technology process of 65nm and the average energy consumed per iteration per kernel when decoding the code in IEEE 802.11n of length 1944 and rate 1/2.

The BCJR kernel has the most complex data path and clearly its imple-mentation area surpasses the other kernels, its cost on energy expenditure per iteration is as well the highest one. On the other hand, the MS ker-nel represents the simplest kerker-nel with the smallest footprint. The variants of the MS kernel that resize the output messages raise both the area and energy cost. On the other hand, the SCMS kernel presents a 7% increase in area compared to the MS kernel and it slightly outperforms the MS kernel in energy consumption. In the following, we elaborate on the energy effi-cient characteristics offered by the SCMS kernel as an integral component for efficient decoders.

4.3.1 Convergence Rate

Iterative decoding comprises a dynamic task as the number of iterations depends upon factors like the SNR and channel quality. The message cal-culation clearly affects the convergence speed since reliable and unreliable messages are propagated along the code graph after each iteration. In this sense one kernel might converge faster or slower than others, nevertheless from an energy efficiency perspective it is compelling to compare the net consumption from each kernel. Figure 4.5 shows the comparison of message kernels1in terms of convergence speed and net energy consumption. These figures correspond to the simulation of the code in IEEE 802.11n of length 1944 and rate 1/2 with the same scenario from Figure 3.2. The energy va-lues for Figure 4.5b are taken from the data in Figure 4.4. Notice that the SP kernel is not implemented as we focus on kernels with reduced comple-xity but we provide the SP convergence rate as it represents a performance bound.

From these figures it is observed how SCMS is the slowest kernel to converge, this is expected as it provides the fewest number of messages per iteration. Nevertheless, it is for this same reason that it consumes less energy per iteration, rendering the overall decoding task more efficient.

4.3.2 Active Nodes Reduction

The number of nodes in the code graph that are active during each decoding iteration impacts the energy consumption. In [40], the authors proposed to deactivate the variable nodes that have converged to a strong belief after a few iterations. This condition is detected when the summation of all incoming messages surpasses a given threshold. The error-correction perfor-mance is affected by the value of this threshold. Furthermore, this criterion adds a compare operation per variable node.

The SCMS kernel enables a simple criterion to disable a check node on a given iteration. The concept oferasing messages avoids the propagation of unreliable messages along the code graph. If there are two or more erased messages per row (Step 3 in Algorithm 2) that particular check node is effectively rendered useless for the decoding task as all its output values would have magnitude zero. Although there is a similar argument for any MS-based kernel (two or more zero magnitude input messages) the SCMS kernel benefits from the fact that the minimum finders are not used. De-tecting this condition allows to save the processing required along with the

1NMS with normalization factor of 0.8 and OMS with offset factor of 0.35.

4.3 Energy Efficient Computation Kernel 35

0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 2.2

0 5 10 15 20 25 30 35

Eb/No in dB

Avg. iterations

SP SCMS NMS BCJR OMS

(a) Average iterations

0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 2.2

0 50 100 150 200 250 300

Eb/No in dB

Avg. Energy nJ

SCMS NMS BCJR OMS

(b) Average energy

Figure 4.5: Decoding speed and energy consumption of computation kernels.

writeback of messages to the memories. Moreover, this criterion does not introduce any performance losses. Notice that this technique for power re-duction can be viewed as an instance of the RTL-level optimization for low power known aspre-computation originally proposed in [41].

Figure 4.6 shows the percentage of disabled check nodes per iteration for two instances of a decoding task for a code in IEEE 802.11n (N=1944, R=1/2) and IEEE 802.16e (N=2304, R=1/2) at an SNR ofEb/N0 = 1dB. In Chapter 6, we present a decoder implementation that with this optimization alone achieved an average of 10% of energy savings among various use cases.

4.3.3 Stopping Criterion

Iteration control oversees that only the necessary number of iterations are executed for both successful and unsuccessful decoding. This indeed trans-lates into energy savings since unnecessary decoder operation is avoided. In Chapter 7, we elaborate on a proposed control law for early stopping of the iterative decoding of LDPC codes aided by a decision metric extracted from the SCMS kernel.

Dans le document The DART-Europe E-theses Portal (Page 53-57)