-
A 95.5Gb/s 29.6ns worst-case latency ORBGRAND decoder for 6G xURLLC
Authors:
Carlo Condo
Abstract:
Ultra-Reliable Low-Latency Communications (URLLC) in both 5G and 6G demand high throughput and short latency with low error rates. Guessing Random Additive Noise Decoding (GRAND) and Ordered Reliability Bits GRAND (ORBGRAND) are powerful universal decoding algorithms that work well with short, high-rate codes. As short forward error correcting codes can help limiting latency, and code unification…
▽ More
Ultra-Reliable Low-Latency Communications (URLLC) in both 5G and 6G demand high throughput and short latency with low error rates. Guessing Random Additive Noise Decoding (GRAND) and Ordered Reliability Bits GRAND (ORBGRAND) are powerful universal decoding algorithms that work well with short, high-rate codes. As short forward error correcting codes can help limiting latency, and code unification in 6G calls for flexible, possibly code-agnostic decoders, GRAND and ORBGRAND are well suited to tackle 6G URLLC. This work proposes a ultra-high, constant speed ORBGRAND decoder architecture with very low worst-case and average latency. Compared to a baseline architecture, through out-of-order output, aggressive clock gating, and selective programmability, the decoder reduces area, power, and average latency by 15.5%, 19.4%, and 56%, respectively. In 3nm FinFET technology, it achieves a constant throughput of 95.49Gb/s, with 29.59ns worst-case latency and 13.02ns on average.
△ Less
Submitted 3 July, 2024;
originally announced July 2024.
-
Iterative Soft-Input Soft-Output Decoding with Ordered Reliability Bits GRAND
Authors:
Carlo Condo
Abstract:
Guessing Random Additive Noise Decoding (GRAND) is a universal decoding algorithm that can be used to perform maximum likelihood decoding. It attempts to find the errors introduced by the channel by generating a sequence of possible error vectors in order of likelihood of occurrence and applying them to the received vector. Ordered reliability bits GRAND (ORBGRAND) integrates soft information rece…
▽ More
Guessing Random Additive Noise Decoding (GRAND) is a universal decoding algorithm that can be used to perform maximum likelihood decoding. It attempts to find the errors introduced by the channel by generating a sequence of possible error vectors in order of likelihood of occurrence and applying them to the received vector. Ordered reliability bits GRAND (ORBGRAND) integrates soft information received from the channel to refine the error vector sequence. In this work, ORBGRAND is modified to produce a soft output, to enable its use as an iterative soft-input soft-output (SISO) decoder. Three techniques specific to iterative GRAND-based decoding are then proposed to improve the error-correction performance and decrease computational complexity and latency. Using the OFEC code as a case study, the proposed techniques are evaluated, yielding substantial performance gain and astounding complexity reduction of 48\% to 85\% with respect to the baseline SISO ORBGRAND.
△ Less
Submitted 25 July, 2022; v1 submitted 14 July, 2022;
originally announced July 2022.
-
A fixed latency ORBGRAND decoder architecture with LUT-aided error-pattern scheduling
Authors:
Carlo Condo
Abstract:
Guessing Random Additive Noise Decoding (GRAND) is a universal decoding algorithm that has been recently proposed as a practical way to perform maximum likelihood decoding. It generates a sequence of possible error patterns and applies them to the received vector, checking if the result is a valid codeword. Ordered reliability bits GRAND (ORBGRAND) improves on GRAND by considering soft information…
▽ More
Guessing Random Additive Noise Decoding (GRAND) is a universal decoding algorithm that has been recently proposed as a practical way to perform maximum likelihood decoding. It generates a sequence of possible error patterns and applies them to the received vector, checking if the result is a valid codeword. Ordered reliability bits GRAND (ORBGRAND) improves on GRAND by considering soft information received from the channel. Both GRAND and ORBGRAND have been implemented in hardware, focusing on average performance, sacrificing worst case throughput and latency. In this work, an improved pattern schedule for ORBGRAND is proposed. It provides $>0.5$ dB gain over the standard schedule at a block error rate $\le 10^{-5}$, and outperforms more complex GRAND flavors with a fraction of the complexity. The proposed schedule is used within a novel code-agnositic decoder architecture: the decoder guarantees fixed high throughput and low latency, making it attractive for latency-constrained applications. It outperforms the worst-case performance of decoders by orders of magnitude, and outperforms many best-case figures. Decoding a code of length 128, it achieves a throughput of $79.21$ Gb/s with $58.49$ ns latency, yielding better energy efficiency and comparable area efficiency with respect to the state of the art.
△ Less
Submitted 8 February, 2022; v1 submitted 15 November, 2021;
originally announced November 2021.
-
High-performance low-complexity error pattern generation for ORBGRAND decoding
Authors:
Carlo Condo,
Valerio Bioglio,
Ingmar Land
Abstract:
Guessing Random Additive Noise Decoding (GRAND) is a recently proposed decoding method searching for the error pattern applied to the transmitted codeword. Ordered reliability bit GRAND (ORBGRAND) uses soft channel information to reorder entries of error patterns, generating them according to a fixed schedule, i.e. their logistic weight. In this paper, we show that every good ORBGRAND scheduling s…
▽ More
Guessing Random Additive Noise Decoding (GRAND) is a recently proposed decoding method searching for the error pattern applied to the transmitted codeword. Ordered reliability bit GRAND (ORBGRAND) uses soft channel information to reorder entries of error patterns, generating them according to a fixed schedule, i.e. their logistic weight. In this paper, we show that every good ORBGRAND scheduling should follow an universal partial order, and we present an algorithm to generate the logistic weight order accordingly. We then propose an improved error pattern schedule that can improve the performance of ORBGRAND of 0.5dB at a block error rate (BLER) of $10^{-5}$, with increasing gains as the BLER decreases. This schedule can be closely approximated with a low-complexity generation algorithm that is shown to incur no BLER degradation.
△ Less
Submitted 30 September, 2021; v1 submitted 22 July, 2021;
originally announced July 2021.
-
Staircase codes with non-systematic polar codes
Authors:
Carlo Condo,
Valerio Bioglio,
Charles Pillet,
Ingmar Land
Abstract:
In this work we propose an encoding and decoding framework for staircase codes based on non-systematic polar codes as component codes. The staircase structure allows for efficient parallelized decoding, while the polar component codes allow to benefit from the flexible structure and efficient soft-decision decoding algorithms. To enhance the performance of the polar staircase codes, we concatenate…
▽ More
In this work we propose an encoding and decoding framework for staircase codes based on non-systematic polar codes as component codes. The staircase structure allows for efficient parallelized decoding, while the polar component codes allow to benefit from the flexible structure and efficient soft-decision decoding algorithms. To enhance the performance of the polar staircase codes, we concatenate the polar component codes with cyclic redundancy check (CRC) outer codes, and we add interleavers within the staircase structure that are specific to polar code properties. The CRCs also allow to substantially reduce the decoding complexity. Simulation results evaluate the gain brought by our proposed techniques, and analyze the dependence of the error-correction performance on code and decoder parameters. Comparison with the state of the art on staircase polar codes shows an improvement in BER up to 0.9~dB, or considerable complexity reduction at the same BER.
△ Less
Submitted 19 May, 2021;
originally announced May 2021.
-
Input-distribution-aware parallel decoding of block codes
Authors:
Carlo Condo,
Alex Nicolescu
Abstract:
Many channel decoders rely on parallel decoding attempts to achieve good performance with acceptable latency. However, most of the time fewer attempts than the foreseen maximum are sufficient for successful decoding. Input-distribution-aware (IDA) decoding allows to determine the parallelism of polar code list decoders by observing the distribution of channel information. In this work, IDA decodin…
▽ More
Many channel decoders rely on parallel decoding attempts to achieve good performance with acceptable latency. However, most of the time fewer attempts than the foreseen maximum are sufficient for successful decoding. Input-distribution-aware (IDA) decoding allows to determine the parallelism of polar code list decoders by observing the distribution of channel information. In this work, IDA decoding is proven to be effective with different codes and decoding algorithms as well. Two techniques, M-IDA and MD-IDA, are proposed: they exploit the sampling of the input distribution inherent to particular decoding algorithms to perform low-cost IDA decoding. Simulation results on the decoding of BCH codes via the Chase and ORBGRAND algorithms show that they perform at least as well as the original IDA decoding, allowing to reduce run-time complexity down to 17% and 67\% with minimal error correction degradation.
△ Less
Submitted 19 May, 2021; v1 submitted 13 May, 2021;
originally announced May 2021.
-
Input-distribution-aware successive cancellation list decoding of polar codes
Authors:
Carlo Condo
Abstract:
Polar codes are linear block codes that can achieve channel capacity at infinite code length. Successive cancellation list (SCL) decoding relies on a set of parallel decoders; it yields good error-correction performance at finite code length, at the cost of increased implementation complexity and power consumption. Current efforts in literature focus on design-time decoder complexity reduction, wh…
▽ More
Polar codes are linear block codes that can achieve channel capacity at infinite code length. Successive cancellation list (SCL) decoding relies on a set of parallel decoders; it yields good error-correction performance at finite code length, at the cost of increased implementation complexity and power consumption. Current efforts in literature focus on design-time decoder complexity reduction, while lacking practical run-time power reduction methods. In this work, input-distribution-aware SCL (IDA-SCL) decoding is proposed, that allows to determine the parallelism to adopt by performing simple observations on the input of the decoder. This technique guarantees fixed, short latency and allows hardware SCL decoders to dynamically shut down part of the internal parallelism before each decoding process. It can be combined with existing complexity- and power- reduction techniques. Simulation results show that IDA-SCL can reduce the run-time complexity of SCL of up to 50\%.
△ Less
Submitted 11 January, 2021; v1 submitted 27 October, 2020;
originally announced October 2020.
-
Operation Merging for Hardware Implementations of Fast Polar Decoders
Authors:
Furkan Ercan,
Thibaud Tonnellier,
Carlo Condo,
Warren J. Gross
Abstract:
Polar codes are a class of linear block codes that provably achieves channel capacity. They have been selected as a coding scheme for the control channel of enhanced mobile broadband (eMBB) scenario for $5^{\text{th}}$ generation wireless communication networks (5G) and are being considered for additional use scenarios. As a result, fast decoding techniques for polar codes are essential. Previous…
▽ More
Polar codes are a class of linear block codes that provably achieves channel capacity. They have been selected as a coding scheme for the control channel of enhanced mobile broadband (eMBB) scenario for $5^{\text{th}}$ generation wireless communication networks (5G) and are being considered for additional use scenarios. As a result, fast decoding techniques for polar codes are essential. Previous works targeting improved throughput for successive-cancellation (SC) decoding of polar codes are semi-parallel implementations that exploit special maximum-likelihood (ML) nodes. In this work, we present a new fast simplified SC (Fast-SSC) decoder architecture. Compared to a baseline Fast-SSC decoder, our solution is able to reduce the memory requirements. We achieve this through a more efficient memory utilization, which also enables to execute multiple operations in a single clock cycle. Finally, we propose new special node merging techniques that improve the throughput further, and detail a new Fast-SSC-based decoder architecture to support merged operations. The proposed decoder reduces the operation sequence requirement by up to $39\%$, which enables to reduce the number of time steps to decode a codeword by $35\%$. ASIC implementation results with 65 nm TSMC technology show that the proposed decoder has a throughput improvement of up to $31\%$ compared to previous Fast-SSC decoder architectures.
△ Less
Submitted 2 June, 2020;
originally announced June 2020.
-
Sliding Window Polar Codes
Authors:
Valerio Bioglio,
Carlo Condo,
Ingmar Land
Abstract:
We propose a novel coupling technique for the design of polar codes of length N, making them decodable through a sliding window of size M < N. This feature allows to reduce the computational complexity of the decoder, an important possibility in wireless communication downlink scenarios. Our approach is based on the design of an ad-hoc kernel to be inserted in a multi-kernel polar code framework;…
▽ More
We propose a novel coupling technique for the design of polar codes of length N, making them decodable through a sliding window of size M < N. This feature allows to reduce the computational complexity of the decoder, an important possibility in wireless communication downlink scenarios. Our approach is based on the design of an ad-hoc kernel to be inserted in a multi-kernel polar code framework; this structure enables the sliding window decoding of the code. Simulation results show that the proposed sliding window polar codes outperform the independent blocks transmission in the proposed scenario, at the cost of a negligible decoding overhead.
△ Less
Submitted 5 May, 2021; v1 submitted 16 April, 2020;
originally announced April 2020.
-
Fast-SCAN decoding of Polar Codes
Authors:
Charles Pillet,
Carlo Condo,
Valerio Bioglio
Abstract:
Polar codes are able to achieve the capacity of memoryless channels under successive cancellation (SC) decoding. Soft Cancellation (SCAN) is a soft-output decoder based on the SC schedule, useful in iterative decoding and concatenation of polar codes. However, the sequential nature of this decoder leads to high decoding latency compared to state-of-the-art codes. To reduce the latency of SCAN, in…
▽ More
Polar codes are able to achieve the capacity of memoryless channels under successive cancellation (SC) decoding. Soft Cancellation (SCAN) is a soft-output decoder based on the SC schedule, useful in iterative decoding and concatenation of polar codes. However, the sequential nature of this decoder leads to high decoding latency compared to state-of-the-art codes. To reduce the latency of SCAN, in this paper we identify special nodes in the decoding tree, corresponding to specific frozen-bit sequences, and propose dedicated low-latency decoding approaches for each of them. The resulting fast-SCAN decoder does not alter the soft-output compared to the standard SCAN while dramatically reducing the decoding latency and yielding the same error-correction performance.
△ Less
Submitted 8 April, 2020;
originally announced April 2020.
-
SCAN List Decoding of Polar Codes
Authors:
Charles Pillet,
Carlo Condo,
Valerio Bioglio
Abstract:
In this paper we propose an enhanced soft cancellation (SCAN) decoder for polar codes based on decoding stages permutation. The proposed soft cancellation list (SCANL) decoder runs $L$ independent SCAN decoders, each one relying on a different permuted factor graph. The estimated bits are selected among the $L$ candidates through a dedicated metric provided by the decoders. Furthermore, we introdu…
▽ More
In this paper we propose an enhanced soft cancellation (SCAN) decoder for polar codes based on decoding stages permutation. The proposed soft cancellation list (SCANL) decoder runs $L$ independent SCAN decoders, each one relying on a different permuted factor graph. The estimated bits are selected among the $L$ candidates through a dedicated metric provided by the decoders. Furthermore, we introduce an early-termination scheme reducing decoding latency without affecting error correction performance. We investigate the error-correction performance of the proposed scheme under various combinations of number of iterations used, permutation set and early-termination condition. Simulation results show that the proposed SCANL provides similar results when compared with belief propagation list, while having a smaller complexity. Moreover, for large list sizes, SCANL outperforms non-CRC aided successive cancellation list decoding.
△ Less
Submitted 30 January, 2020;
originally announced January 2020.
-
Practical Product Code Construction of Polar Codes
Authors:
Carlo Condo,
Valerio Bioglio,
Hartmut Hafermann,
Ingmar Land
Abstract:
In this paper, we study the connection between polar codes and product codes. Our analysis shows that the product of two polar codes is again a polar code, and we provide guidelines to compute its frozen set on the basis of the frozen sets of the component polar codes. Moreover, we show how polar codes can be described as irregular product codes. We propose a two-step decoder for long polar codes…
▽ More
In this paper, we study the connection between polar codes and product codes. Our analysis shows that the product of two polar codes is again a polar code, and we provide guidelines to compute its frozen set on the basis of the frozen sets of the component polar codes. Moreover, we show how polar codes can be described as irregular product codes. We propose a two-step decoder for long polar codes taking advantage of this dual nature to heavily reduce decoding latency. Finally, we show that the proposed decoding technique outperforms both standard polar codes and state-of-the-art codes for optical communications under latency constraints.
△ Less
Submitted 14 October, 2019;
originally announced October 2019.
-
On List Decoding of 5G-NR Polar Codes
Authors:
Charles Pillet,
Valerio Bioglio,
Carlo Condo
Abstract:
The 5th generation wireless systems (5G) standardization process of the 3rd generation partnership project (3GPP) chose polar codes as a channel coding scheme for the control channel. In case of downlink control information, polar codes are concatenated with distributed distributed cyclic redundancy check (CRC). Whereas CRC bits allow to improve the performance of successive cancellation list (SCL…
▽ More
The 5th generation wireless systems (5G) standardization process of the 3rd generation partnership project (3GPP) chose polar codes as a channel coding scheme for the control channel. In case of downlink control information, polar codes are concatenated with distributed distributed cyclic redundancy check (CRC). Whereas CRC bits allow to improve the performance of successive cancellation list (SCL) decoders by improving distance properties, distributed CRC bits allow for path pruning and decoding early-termination. In this paper, we show how to take advantage of the distributed CRC to improve SCL decoding, analyzing various schemes having different earlytermination and error correction properties. Simulation results compare the proposed decoding schemes, showing different tradeoffs between error-correction performance and early-termination with different decoder parameters.
△ Less
Submitted 27 January, 2020; v1 submitted 1 July, 2019;
originally announced July 2019.
-
Rate-Flexible Fast Polar Decoders
Authors:
Seyyed Ali Hashemi,
Carlo Condo,
Marco Mondelli,
Warren J. Gross
Abstract:
Polar codes have gained extensive attention during the past few years and recently they have been selected for the next generation of wireless communications standards (5G). Successive-cancellation-based (SC-based) decoders, such as SC list (SCL) and SC flip (SCF), provide a reasonable error performance for polar codes at the cost of low decoding speed. Fast SC-based decoders, such as Fast-SSC, Fa…
▽ More
Polar codes have gained extensive attention during the past few years and recently they have been selected for the next generation of wireless communications standards (5G). Successive-cancellation-based (SC-based) decoders, such as SC list (SCL) and SC flip (SCF), provide a reasonable error performance for polar codes at the cost of low decoding speed. Fast SC-based decoders, such as Fast-SSC, Fast-SSCL, and Fast-SSCF, identify the special constituent codes in a polar code graph off-line, produce a list of operations, store the list in memory, and feed the list to the decoder to decode the constituent codes in order efficiently, thus increasing the decoding speed. However, the list of operations is dependent on the code rate and as the rate changes, a new list is produced, making fast SC-based decoders not rate-flexible. In this paper, we propose a completely rate-flexible fast SC-based decoder by creating the list of operations directly in hardware, with low implementation complexity. We further propose a hardware architecture implementing the proposed method and show that the area occupation of the rate-flexible fast SC-based decoder in this paper is only $38\%$ of the total area of the memory-based base-line decoder when 5G code rates are supported.
△ Less
Submitted 21 March, 2019;
originally announced March 2019.
-
Construction and Decoding of Product Codes with Non-Systematic Polar Codes
Authors:
Valerio Bioglio,
Carlo Condo,
Ingmar Land
Abstract:
Product codes are widespread in optical communications, thanks to their high throughput and good error-correction performance. Systematic polar codes have been recently considered as component codes for product codes. In this paper, we present a novel construction for product polar codes based on non-systematic polar codes. We prove that the resulting product code is actually a polar code, having…
▽ More
Product codes are widespread in optical communications, thanks to their high throughput and good error-correction performance. Systematic polar codes have been recently considered as component codes for product codes. In this paper, we present a novel construction for product polar codes based on non-systematic polar codes. We prove that the resulting product code is actually a polar code, having a frozen set that is dependent on the frozen sets of the component polar codes. We propose a low-complexity decoding algorithm exploiting the dual nature of the constructed code. Performance analysis and simulations show high decoding speed, that allows to construct long codes while maintaining low decoding latency. The resulting high throughput and good error-correction performance are appealing for optical communication systems and other systems where high throughput and low latency are required.
△ Less
Submitted 21 January, 2019;
originally announced January 2019.
-
Memory Management in Successive-Cancellation based Decoders for Multi-Kernel Polar Codes
Authors:
Valerio Bioglio,
Carlo Condo,
Ingmar Land
Abstract:
Multi-kernel polar codes have recently been proposed to construct polar codes of lengths different from powers of two. Decoder implementations for multi-kernel polar codes need to account for this feature, that becomes critical in memory management. We propose an efficient, generalized memory management framework for implementation of successivecancellation decoding of multi-kernel polar codes. It…
▽ More
Multi-kernel polar codes have recently been proposed to construct polar codes of lengths different from powers of two. Decoder implementations for multi-kernel polar codes need to account for this feature, that becomes critical in memory management. We propose an efficient, generalized memory management framework for implementation of successivecancellation decoding of multi-kernel polar codes. It can be used on many types of hardware architectures and different flavors of SC decoding algorithms. We illustrate the proposed solution for small kernel sizes, and give complexity estimates for various kernel combinations and code lengths.
△ Less
Submitted 25 September, 2018;
originally announced September 2018.
-
Improved Bit-Flip** Algorithm for Successive Cancellation Decoding of Polar Codes
Authors:
Furkan Ercan,
Carlo Condo,
Warren J. Gross
Abstract:
The interest in polar codes has been increasing significantly since their adoption for use in the 5$^{\rm th}$ generation wireless systems standard. Successive cancellation (SC) decoding algorithm has low implementation complexity, but yields mediocre error-correction performance at the code lengths of interest. SC-Flip algorithm improves the error-correction performance of SC by identifying possi…
▽ More
The interest in polar codes has been increasing significantly since their adoption for use in the 5$^{\rm th}$ generation wireless systems standard. Successive cancellation (SC) decoding algorithm has low implementation complexity, but yields mediocre error-correction performance at the code lengths of interest. SC-Flip algorithm improves the error-correction performance of SC by identifying possibly erroneous decisions made by SC and re-iterates after flip** one bit. It was recently shown that only a portion of bit-channels are most likely to be in error. In this work, we investigate the average log-likelihood ratio (LLR) values and their distribution related to the erroneous bit-channels, and develop the Thresholded SC-Flip (TSCF) decoding algorithm. We also replace the LLR selection and sorting of SC-Flip with a comparator to reduce the implementation complexity. Simulation results demonstrate that for practical code lengths and a wide range of rates, TSCF shows negligible loss compared to the error-correction performance obtained when all single-errors are corrected. At matching maximum iterations, TSCF has an error-correction performance gain of up to $0.45$ dB compared with SC-Flip decoding. At matching error-correction performance, the computational complexity of TSCF is reduced by up to $40\%$ on average, and requires up to $5\times$ lower maximum number of iterations.
△ Less
Submitted 26 September, 2018; v1 submitted 10 August, 2018;
originally announced August 2018.
-
Generalized Fast Decoding of Polar Codes
Authors:
Carlo Condo,
Valerio Bioglio,
Ingmar Land
Abstract:
Research on polar codes has been constantly gaining attention over the last decade, by academia and industry alike, thanks to their capacity-achieving error-correction performance and low-complexity decoding algorithms. Recently, they have been selected as one of the coding schemes in the $5^{th}$ generation wireless standard (5G). Over the years various polar code decoding algorithms, like SC-lis…
▽ More
Research on polar codes has been constantly gaining attention over the last decade, by academia and industry alike, thanks to their capacity-achieving error-correction performance and low-complexity decoding algorithms. Recently, they have been selected as one of the coding schemes in the $5^{th}$ generation wireless standard (5G). Over the years various polar code decoding algorithms, like SC-list (SCL), have been proposed to improve the mediocre performance of the successive cancellation (SC) decoding algorithm for finite code lengths; however, like SC, they suffer from long decoding latency. Fast decoding of polar codes tries to overcome this problem by identifying particular subcodes in the polar code and decoding them with efficient decoders. In this work, we introduce a generalized approach to fast decoding of polar codes to further reduce SC-based decoding latency. We propose three multi-node polar code subcodes whose identification patterns include most of the existing subcodes, extending them to SCL decoding, and allow to apply fast decoding to larger subsets of bits. Without any error-correction performance degradation, the proposed technique shows up to $23.6\%$ and $29.2\%$ decoding latency gain with respect to fast SC and SCL decoding algorithms, respectively, and up to $63.6\%$ and $49.8\%$ if a performance loss is accepted, whose amount depends on code and decoding algorithm parameters, along with the desired speedup.
△ Less
Submitted 24 June, 2020; v1 submitted 25 April, 2018;
originally announced April 2018.
-
Design of Polar Codes in 5G New Radio
Authors:
Valerio Bioglio,
Carlo Condo,
Ingmar Land
Abstract:
Polar codes have attracted the attention of academia and industry alike in the past decade, such that the 5$^\text{th}$ generation wireless systems (5G) standardization process of the 3$^\text{th}$ generation partnership project (3GPP) chose polar codes as a channel coding scheme. In this tutorial, we provide a description of the encoding process of polar codes adopted by the 5G standard. We illus…
▽ More
Polar codes have attracted the attention of academia and industry alike in the past decade, such that the 5$^\text{th}$ generation wireless systems (5G) standardization process of the 3$^\text{th}$ generation partnership project (3GPP) chose polar codes as a channel coding scheme. In this tutorial, we provide a description of the encoding process of polar codes adopted by the 5G standard. We illustrate the struggles of designing a family of polar codes able to satisfy the demands of 5G systems, with particular attention to rate flexibility and low decoding latency. The result of these efforts is an elaborate framework that applies novel coding techniques to provide a solid channel code for NR requirements.
△ Less
Submitted 6 January, 2020; v1 submitted 12 April, 2018;
originally announced April 2018.
-
A Multi-Kernel Multi-Code Polar Decoder Architecture
Authors:
Gabriele Coppolino,
Carlo Condo,
Guido Masera,
Warren J. Gross
Abstract:
Polar codes have received increasing attention in the past decade, and have been selected for the next generation of wireless communication standard. Most research on polar codes has focused on codes constructed from a $2\times2$ polarization matrix, called binary kernel: codes constructed from binary kernels have code lengths that are bound to powers of $2$. A few recent works have proposed const…
▽ More
Polar codes have received increasing attention in the past decade, and have been selected for the next generation of wireless communication standard. Most research on polar codes has focused on codes constructed from a $2\times2$ polarization matrix, called binary kernel: codes constructed from binary kernels have code lengths that are bound to powers of $2$. A few recent works have proposed construction methods based on multiple kernels of different dimensions, not only binary ones, allowing code lengths different from powers of $2$. In this work, we design and implement the first multi-kernel successive cancellation polar code decoder in literature. It can decode any code constructed with binary and ternary kernels: the architecture, sized for a maximum code length $N_{max}$, is fully flexible in terms of code length, code rate and kernel sequence. The decoder can achieve frequency of more than $1$ GHz in $65$ nm CMOS technology, and a throughput of $615$ Mb/s. The area occupation ranges between $0.11$ mm$^2$ for $N_{max}=256$ and $2.01$ mm$^2$ for $N_{max}=4096$. Implementation results show an unprecedented degree of flexibility: with $N_{max}=4096$, up to $55$ code lengths can be decoded with the same hardware, along with any kernel sequence and code rate.
△ Less
Submitted 2 February, 2018;
originally announced February 2018.
-
Design and Implementation of a Polar Codes Blind Detection Scheme
Authors:
Carlo Condo,
Seyyed Ali Hashemi,
Arash Ardakani,
Furkan Ercan,
Warren J. Gross
Abstract:
In blind detection, a set of candidates has to be decoded within a strict time constraint, to identify which transmissions are directed at the user equipment. Blind detection is required by the 3GPP LTE/LTE-Advanced standard, and it will be required in the 5th generation wireless communication standard (5G) as well. Polar codes have been selected for use in 5G: thus, the issue of blind detection o…
▽ More
In blind detection, a set of candidates has to be decoded within a strict time constraint, to identify which transmissions are directed at the user equipment. Blind detection is required by the 3GPP LTE/LTE-Advanced standard, and it will be required in the 5th generation wireless communication standard (5G) as well. Polar codes have been selected for use in 5G: thus, the issue of blind detection of polar codes must be addressed. We propose a polar code blind detection scheme where the user ID is transmitted instead of some of the frozen bits. A first, coarse decoding phase helps selecting a subset of candidates that is decoded by a more powerful algorithm: an early stop** criterion is also introduced for the second decoding phase. Simulations results show good missed detection and false alarm rates, along with substantial latency gains thanks to early stop**. We then propose an architecture to implement the devised blind detection scheme, based on a tunable decoder that can be used for both phases. The architecture is synthesized and implementation results are reported for various system parameters. The reported area occupation and latency, obtained in 65 nm CMOS technology, are able to meet 5G requirements, and are guaranteed to meet them with even less resource usage in the latest technology nodes.
△ Less
Submitted 4 January, 2018;
originally announced January 2018.
-
Multi-Mode Inference Engine for Convolutional Neural Networks
Authors:
Arash Ardakani,
Carlo Condo,
Warren J. Gross
Abstract:
During the past few years, interest in convolutional neural networks (CNNs) has risen constantly, thanks to their excellent performance on a wide range of recognition and classification tasks. However, they suffer from the high level of complexity imposed by the high-dimensional convolutions in convolutional layers. Within scenarios with limited hardware resources and tight power and latency const…
▽ More
During the past few years, interest in convolutional neural networks (CNNs) has risen constantly, thanks to their excellent performance on a wide range of recognition and classification tasks. However, they suffer from the high level of complexity imposed by the high-dimensional convolutions in convolutional layers. Within scenarios with limited hardware resources and tight power and latency constraints, the high computational complexity of CNNs makes them difficult to be exploited. Hardware solutions have striven to reduce the power consumption using low-power techniques, and to limit the processing time by increasing the number of processing elements (PEs). While most of ASIC designs claim a peak performance of a few hundred giga operations per seconds, their average performance is substantially lower when applied to state-of-the-art CNNs such as AlexNet, VGGNet and ResNet, leading to low resource utilization. Their performance efficiency is limited to less than 55% on average, which leads to unnecessarily high processing latency and silicon area. In this paper, we propose a dataflow which enables to perform both the fully-connected and convolutional computations for any filter/layer size using the same PEs. We then introduce a multi-mode inference engine (MMIE) based on the proposed dataflow. Finally, we show that the proposed MMIE achieves a performance efficiency of more than 84% when performing the computations of the three renown CNNs (i.e., AlexNet, VGGNet and ResNet), outperforming the best architecture in the state-of-the-art in terms of energy consumption, processing latency and silicon area.
△ Less
Submitted 11 December, 2017;
originally announced December 2017.
-
Improved Successive Cancellation Flip Decoding of Polar Codes Based on Error Distribution
Authors:
Carlo Condo,
Furkan Ercan,
Warren J. Gross
Abstract:
Polar codes are a class of linear block codes that provably achieves channel capacity, and have been selected as a coding scheme for $5^{\rm th}$ generation wireless communication standards. Successive-cancellation (SC) decoding of polar codes has mediocre error-correction performance on short to moderate codeword lengths: the SC-Flip decoding algorithm is one of the solutions that have been propo…
▽ More
Polar codes are a class of linear block codes that provably achieves channel capacity, and have been selected as a coding scheme for $5^{\rm th}$ generation wireless communication standards. Successive-cancellation (SC) decoding of polar codes has mediocre error-correction performance on short to moderate codeword lengths: the SC-Flip decoding algorithm is one of the solutions that have been proposed to overcome this issue. On the other hand, SC-Flip has a higher implementation complexity compared to SC due to the required log-likelihood ratio (LLR) selection and sorting process. Moreover, it requires a high number of iterations to reach good error-correction performance. In this work, we propose two techniques to improve the SC-Flip decoding algorithm for low-rate codes, based on the observation of channel-induced error distributions. The first one is a fixed index selection (FIS) scheme to avoid the substantial implementation cost of LLR selection and sorting with no cost on error-correction performance. The second is an enhanced index selection (EIS) criterion to improve the error-correction performance of SC-Flip decoding. A reduction of $24.6\%$ in the implementation cost of logic elements is estimated with the FIS approach, while simulation results show that EIS leads to an improvement on error-correction performance improvement up to $0.42$ dB at a target FER of $10^{-4}$.
△ Less
Submitted 26 September, 2018; v1 submitted 29 November, 2017;
originally announced November 2017.
-
Partitioned Successive-Cancellation Flip Decoding of Polar Codes
Authors:
Furkan Ercan,
Carlo Condo,
Seyyed Ali Hashemi,
Warren J. Gross
Abstract:
Polar codes are a class of channel capacity achieving codes that has been selected for the next generation of wireless communication standards. Successive-cancellation (SC) is the first proposed decoding algorithm, suffering from mediocre error-correction performance at moderate code length. In order to improve the error-correction performance of SC, two approaches are available: (i) SC-List decod…
▽ More
Polar codes are a class of channel capacity achieving codes that has been selected for the next generation of wireless communication standards. Successive-cancellation (SC) is the first proposed decoding algorithm, suffering from mediocre error-correction performance at moderate code length. In order to improve the error-correction performance of SC, two approaches are available: (i) SC-List decoding which keeps a list of candidates by running a number of SC decoders in parallel, thus increasing the implementation complexity, and (ii) SC-Flip decoding that relies on a single SC module, and keeps the computational complexity close to SC. In this work, we propose the partitioned SC-Flip (PSCF) decoding algorithm, which outperforms SC-Flip in terms of error-correction performance and average computational complexity, leading to higher throughput and reduced energy consumption per codeword. We also introduce a partitioning scheme that best suits our PSCF decoder. Simulation results show that at equivalent frame error rate, PSCF has up to $5 \times$ less computational complexity than the SC-Flip decoder. At equivalent average number of iterations, the error-correction performance of PSCF outperforms SC-Flip by up to $0.15$ dB at frame error rate of $10^{-3}$.
△ Less
Submitted 8 October, 2018; v1 submitted 29 November, 2017;
originally announced November 2017.
-
On Error-Correction Performance and Implementation of Polar Code List Decoders for 5G
Authors:
Furkan Ercan,
Carlo Condo,
Seyyed Ali Hashemi,
Warren J. Gross
Abstract:
Polar codes are a class of capacity achieving error correcting codes that has been recently selected for the next generation of wireless communication standards (5G). Polar code decoding algorithms have evolved in various directions, striking different balances between error-correction performance, speed and complexity. Successive-cancellation list (SCL) and its incarnations constitute a powerful,…
▽ More
Polar codes are a class of capacity achieving error correcting codes that has been recently selected for the next generation of wireless communication standards (5G). Polar code decoding algorithms have evolved in various directions, striking different balances between error-correction performance, speed and complexity. Successive-cancellation list (SCL) and its incarnations constitute a powerful, well-studied set of algorithms, in constant improvement. At the same time, different implementation approaches provide a wide range of area occupations and latency results. 5G puts a focus on improved error-correction performance, high throughput and low power consumption: a comprehensive study considering all these metrics is currently lacking in literature. In this work, we evaluate SCL-based decoding algorithms in terms of error-correction performance and compare them to low-density parity-check (LDPC) codes. Moreover, we consider various decoder implementations, for both polar and LDPC codes, and compare their area occupation and power and energy consumption when targeting short code lengths and rates. Our work shows that among SCL-based decoders, the partitioned SCL (PSCL) provides the lowest area occupation and power consumption, whereas fast simplified SCL (Fast-SSCL) yields the lowest energy consumption. Compared to LDPC decoder architectures, different SCL implementations occupy up to 17.1x less area, dissipate up to 7.35x less power, and up to 26x less energy.
△ Less
Submitted 12 October, 2017; v1 submitted 15 August, 2017;
originally announced August 2017.
-
Efficient Bit-Channel Reliability Computation for Multi-Mode Polar Code Encoders and Decoders
Authors:
Carlo Condo,
Seyyed Ali Hashemi,
Warren J. Gross
Abstract:
Polar codes are a family of capacity-achieving error-correcting codes, and they have been selected as part of the next generation wireless communication standard. Each polar code bit-channel is assigned a reliability value, used to determine which bits transmit information and which parity. Relative reliabilities need to be known by both encoders and decoders: in case of multi-mode systems, where…
▽ More
Polar codes are a family of capacity-achieving error-correcting codes, and they have been selected as part of the next generation wireless communication standard. Each polar code bit-channel is assigned a reliability value, used to determine which bits transmit information and which parity. Relative reliabilities need to be known by both encoders and decoders: in case of multi-mode systems, where multiple code lengths and code rates are supported, the storage of relative reliabilities can lead to high implementation complexity. In this work, observe patterns among code reliabilities. We propose an approximate computation technique to easily represent the reliabilities of multiple codes, through a limited set of variables and update rules. The proposed method allows to tune the trade-off between reliability accuracy and implementation complexity. An approximate computation architecture for encoders and decoders is designed and implemented, showing 50.7% less area occupation than storage-based solutions, with less than 0.05 dB error correction performance degradation.
△ Less
Submitted 16 May, 2017;
originally announced May 2017.
-
Blind Detection with Polar Codes
Authors:
Carlo Condo,
Seyyed Ali Hashemi,
Warren J. Gross
Abstract:
In blind detection, a set of candidates has to be decoded within a strict time constraint, to identify which transmissions are directed at the user equipment. Blind detection is an operation required by the 3GPP LTE/LTE-Advanced standard, and it will be required in the 5th generation wireless communication standard (5G) as well. We propose a blind detection scheme based on polar codes, where the r…
▽ More
In blind detection, a set of candidates has to be decoded within a strict time constraint, to identify which transmissions are directed at the user equipment. Blind detection is an operation required by the 3GPP LTE/LTE-Advanced standard, and it will be required in the 5th generation wireless communication standard (5G) as well. We propose a blind detection scheme based on polar codes, where the radio network temporary identifier (RNTI) is transmitted instead of some of the frozen bits. A low-complexity decoding stage decodes all candidates, selecting a subset that is decoded by a high-performance algorithm. Simulations results show good missed detection and false alarm rates, that meet the system specifications. We also propose an early stop** criterion for the second decoding stage that can reduce the number of operations performed, improving both average latency and energy consumption. The detection speed is analyzed and different system parameter combinations are shown to meet the stringent timing requirements, leading to various implementation trade-offs.
△ Less
Submitted 15 May, 2017; v1 submitted 4 May, 2017;
originally announced May 2017.
-
Fast and Flexible Successive-Cancellation List Decoders for Polar Codes
Authors:
Seyyed Ali Hashemi,
Carlo Condo,
Warren J. Gross
Abstract:
Polar codes have gained significant amount of attention during the past few years and have been selected as a coding scheme for the next generation of mobile broadband standard. Among decoding schemes, successive-cancellation list (SCL) decoding provides a reasonable trade-off between the error-correction performance and hardware implementation complexity when used to decode polar codes, at the co…
▽ More
Polar codes have gained significant amount of attention during the past few years and have been selected as a coding scheme for the next generation of mobile broadband standard. Among decoding schemes, successive-cancellation list (SCL) decoding provides a reasonable trade-off between the error-correction performance and hardware implementation complexity when used to decode polar codes, at the cost of limited throughput. The simplified SCL (SSCL) and its extension SSCL-SPC increase the speed of decoding by removing redundant calculations when encountering particular information and frozen bit patterns (rate one and single parity check codes), while kee** the error-correction performance unaltered. In this paper, we improve SSCL and SSCL-SPC by proving that the list size imposes a specific number of bit estimations required to decode rate one and single parity check codes. Thus, the number of estimations can be limited while guaranteeing exactly the same error-correction performance as if all bits of the code were estimated. We call the new decoding algorithms Fast-SSCL and Fast-SSCL-SPC. Moreover, we show that the number of bit estimations in a practical application can be tuned to achieve desirable speed, while kee** the error-correction performance almost unchanged. Hardware architectures implementing both algorithms are then described and implemented: it is shown that our design can achieve 1.86 Gb/s throughput, higher than the best state-of-the-art decoders.
△ Less
Submitted 29 August, 2017; v1 submitted 23 March, 2017;
originally announced March 2017.
-
Fast Simplified Successive-Cancellation List Decoding of Polar Codes
Authors:
Seyyed Ali Hashemi,
Carlo Condo,
Warren J. Gross
Abstract:
Polar codes are capacity achieving error correcting codes that can be decoded through the successive-cancellation algorithm. To improve its error-correction performance, a list-based version called successive-cancellation list (SCL) has been proposed in the past, that however substantially increases the number of time-steps in the decoding process. The simplified SCL (SSCL) decoding algorithm expl…
▽ More
Polar codes are capacity achieving error correcting codes that can be decoded through the successive-cancellation algorithm. To improve its error-correction performance, a list-based version called successive-cancellation list (SCL) has been proposed in the past, that however substantially increases the number of time-steps in the decoding process. The simplified SCL (SSCL) decoding algorithm exploits constituent codes within the polar code structure to greatly reduce the required number of time-steps without introducing any error-correction performance loss. In this paper, we propose a faster decoding approach to decode one of these constituent codes, the Rate-1 node. We use this Rate-1 node decoder to develop Fast-SSCL. We demonstrate that only a list-size-bound number of bits needs to be estimated in Rate-1 nodes and Fast-SSCL exactly matches the error-correction performance of SCL and SSCL. This technique can potentially greatly reduce the total number of time-steps needed for polar codes decoding: analysis on a set of case studies show that Fast-SSCL has a number of time-steps requirement that is up to 66.6% lower than SSCL and 88.1% lower than SCL.
△ Less
Submitted 27 January, 2017;
originally announced January 2017.
-
Stall Pattern Avoidance in Polynomial Product Codes
Authors:
Carlo Condo,
Francois Leduc-Primeau,
Gabi Sarkis,
Pascal Giard,
Warren Gross
Abstract:
Product codes are a concatenated error-correction scheme that has been often considered for applications requiring very low bit-error rates, which demand that the error floor be decreased as much as possible. In this work, we consider product codes constructed from polynomial algebraic codes, and propose a novel low-complexity post-processing technique that is able to improve the error-correction…
▽ More
Product codes are a concatenated error-correction scheme that has been often considered for applications requiring very low bit-error rates, which demand that the error floor be decreased as much as possible. In this work, we consider product codes constructed from polynomial algebraic codes, and propose a novel low-complexity post-processing technique that is able to improve the error-correction performance by orders of magnitude. We provide lower bounds for the error rate achievable under post processing, and present simulation results indicating that these bounds are tight.
△ Less
Submitted 15 November, 2016;
originally announced November 2016.
-
Sparsely-Connected Neural Networks: Towards Efficient VLSI Implementation of Deep Neural Networks
Authors:
Arash Ardakani,
Carlo Condo,
Warren J. Gross
Abstract:
Recently deep neural networks have received considerable attention due to their ability to extract and represent high-level abstractions in data sets. Deep neural networks such as fully-connected and convolutional neural networks have shown excellent performance on a wide range of recognition and classification tasks. However, their hardware implementations currently suffer from large silicon area…
▽ More
Recently deep neural networks have received considerable attention due to their ability to extract and represent high-level abstractions in data sets. Deep neural networks such as fully-connected and convolutional neural networks have shown excellent performance on a wide range of recognition and classification tasks. However, their hardware implementations currently suffer from large silicon area and high power consumption due to the their high degree of complexity. The power/energy consumption of neural networks is dominated by memory accesses, the majority of which occur in fully-connected networks. In fact, they contain most of the deep neural network parameters. In this paper, we propose sparsely-connected networks, by showing that the number of connections in fully-connected networks can be reduced by up to 90% while improving the accuracy performance on three popular datasets (MNIST, CIFAR10 and SVHN). We then propose an efficient hardware architecture based on linear-feedback shift registers to reduce the memory requirements of the proposed sparsely-connected networks. The proposed architecture can save up to 90% of memory compared to the conventional implementations of fully-connected neural networks. Moreover, implementation results show up to 84% reduction in the energy consumption of a single neuron of the proposed sparsely-connected networks compared to a single neuron of fully-connected neural networks.
△ Less
Submitted 30 March, 2017; v1 submitted 4 November, 2016;
originally announced November 2016.
-
A 9.52 dB NCG FEC scheme and 164 bits/cycle low-complexity product decoder architecture
Authors:
Carlo Condo,
Pascal Giard,
François Leduc-Primeau,
Gabi Sarkis,
Warren J. Gross
Abstract:
Powerful Forward Error Correction (FEC) schemes are used in optical communications to achieve bit-error rates below $10^{-15}$. These FECs follow one of two approaches: concatenation of simpler hard-decision codes or usage of inherently powerful soft-decision codes. The first approach yields lower Net Coding Gains (NCGs), but can usually work at higher code rates and have lower complexity decoders…
▽ More
Powerful Forward Error Correction (FEC) schemes are used in optical communications to achieve bit-error rates below $10^{-15}$. These FECs follow one of two approaches: concatenation of simpler hard-decision codes or usage of inherently powerful soft-decision codes. The first approach yields lower Net Coding Gains (NCGs), but can usually work at higher code rates and have lower complexity decoders. In this work, we propose a novel FEC scheme based on a product code and a post-processing technique. It can achieve an NCG of 9.52~dB at a BER of $10^{-15}$ and 9.96~dB at a BER of $10^{-18}$, an error-correction performance that sits between that of current hard-decision and soft-decision FECs. A decoder architecture is designed, tested on FPGA and synthesized in 65 nm CMOS technology: its 164 bits/cycle worst-case information throughput can reach 100 Gb/s at the achieved frequency of 609~MHz. Its complexity is shown to be lower than that of hard-decision decoders in literature, and an order of magnitude lower than the estimated complexity of soft-decision decoders.
△ Less
Submitted 5 April, 2017; v1 submitted 18 October, 2016;
originally announced October 2016.
-
A joint communication and application simulator for NoC-based SoCs
Authors:
Carlo Condo,
Amer Baghdadi,
Guido Masera
Abstract:
NoCs have become a widespread paradigm in the system-on-chip design world, not only for multi-purpose SoCs, but also for application-specific ICs. The common approach in the NoC design world is to separate the design of the interconnection from the design of the processing elements: this is well suited for a large number of developments, but the need for joint application and NoC design is not unc…
▽ More
NoCs have become a widespread paradigm in the system-on-chip design world, not only for multi-purpose SoCs, but also for application-specific ICs. The common approach in the NoC design world is to separate the design of the interconnection from the design of the processing elements: this is well suited for a large number of developments, but the need for joint application and NoC design is not uncommon, especially in the application specific case. The correlation between processing and communication tasks can be strong, and separate or trace-based simulations fall often short of the desired precision. In this work, the OMNET++ based JANoCS simulator is presented: concurrent simulation of processing and communication allow cycle-accurate evaluation of the system. Two cases of study are presented, showing both the need for joint simulations and the effectiveness of JANoCS.
△ Less
Submitted 31 May, 2013; v1 submitted 8 January, 2013;
originally announced January 2013.
-
A Flexible LDPC code decoder with a Network on Chip as underlying interconnect architecture
Authors:
Carlo Condo,
Guido Masera
Abstract:
LDPC (Low Density Parity Check) codes are among the most powerful and widely adopted modern error correcting codes. The iterative decoding algorithms required for these codes involve high computational complexity and high processing throughput is achieved by allocating a sufficient number of processing elements (PEs). Supporting multiple heterogeneous LDPC codes on a parallel decoder poses serious…
▽ More
LDPC (Low Density Parity Check) codes are among the most powerful and widely adopted modern error correcting codes. The iterative decoding algorithms required for these codes involve high computational complexity and high processing throughput is achieved by allocating a sufficient number of processing elements (PEs). Supporting multiple heterogeneous LDPC codes on a parallel decoder poses serious problems in the design of the interconnect structure for such PEs. The aim of this work is to explore the feasibility of NoC (Network on Chip) based decoders, where full flexibility in terms of supported LDPC codes is obtained resorting to an NoC to connect PEs. NoC based LDPC decoders have been previously considered unfeasible because of the cost overhead associated to packet management and routing. On the contrary, the designed NoC adopts a low complexity routing, which introduces a very limited cost overhead with respect to architectures dedicated to specific classes of codes. Moreover the paper proposes an efficient configuration technique, which allows for fast on--the--fly switching among different codes. The decoder architecture is scalable and VLSI synthesis results are presented for several cases of study, including the whole set of WiMAX LDPC codes, WiFi codes and DVB-S2 standard.
△ Less
Submitted 13 May, 2011;
originally announced May 2011.