Universal guessing random additive noise decoding (GRAND) decoder

US11870459B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11870459-B2
Application numberUS-202117225818-A
CountryUS
Kind codeB2
Filing dateApr 8, 2021
Priority dateJun 8, 2020
Publication dateJan 9, 2024
Grant dateJan 9, 2024

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Described is a decoder suitable for use with any communication or storage system. The described decoder has a modular decoder hardware architecture capable of implementing a noise guessing process and due to its dependency only on noise, the decoder design is independent of any encoder, thus making it a universal decoder. Hence, the decoder architecture described herein is agnostic to any coding scheme.

First claim

Opening claim text (preview).

What is claimed is: 1. A universal decoder comprising: a syndrome calculator for checking membership of received data in a codebook; and an error generator, coupled to the syndrome calculator, the error generator including a primary error generator and a secondary error generator coupled to the primary error generator, wherein in response to the syndrome calculator detecting an error, the syndrome calculator provides the error to the error generator and the error generator calculates rank-ordered binary symmetric channel noise patterns and checks for membership in the codebook, wherein data is pipelined such that processing of data in the syndrome calculator, primary error generator and secondary error generator result in out-of-order decoded codewords; a re-ordering circuit configured to receive the out-of-order decoded codewords and configured to re-order the out-of-order decoded codewords; and wherein the universal decoder utilizes noise statistics to optimize an energy per decoded bit by dynamic clock gating of the primary and secondary error generators based on a probability of error likelihood. 2. The universal decoder of claim 1 wherein the primary and secondary error generators are configured to check errors in parallel to reduce latency in processing codewords. 3. A universal decoder comprising: a syndrome calculator for checking membership of received data in a codebook, and an error generator, coupled to the syndrome calculator, wherein in response to the syndrome calculator detecting an error, the syndrome calculator provides the error to the error generator and the error generator calculates rank-ordered binary symmetric channel noise patterns and checks for membership in the codebook, wherein the error generator comprises: an error logic which generates (D 1 , D 2 ) distance pairs to indicate distances between active bits having a first logic value in a guessed noise sequence (E); a pattern generator coupled to the error logic; and an error shifter coupled to the error logic and the pattern generator wherein the error logic which generates (D 1 , D 2 ) distance pairs to indicate the distances between active bits having the first logic value in a guessed noise sequence (E) and the pattern generator constructs a bit sequence defined by (D 1 , D 2 ), which is then used as indices of one or more input-seed values having the first logic value for the error shifter and the error shifter creates in parallel variations of a sequence of input-seed values through cyclical shifts for the primary and secondary error generators such that the error generator creates ordered error sequences in parallel. 4. The universal decoder of claim 1 wherein the re-ordering circuit comprises a tag-based re-ordering circuit. 5. A universal decoder comprising: means for receiving input codewords and H matrix values; means for multiplexing H matrix values between parallel signal paths each leading to a pair of memories in which H matrix values are stored; a syndrome calculator configured to receive input codewords and H matrix values; an error generator, coupled to the syndrome calculator, wherein in response to the syndrome calculator detecting an error, the syndrome calculator provides the error to the error generator and the error generator calculates rank-ordered binary symmetric channel noise patterns and checks for membership in a codebook, wherein data is pipelined such that processing of data in the syndrome calculator and error generator result in out-of-order decoded codewords; a re-ordering circuit configured to receive the out-of-order decoded codewords and configured to re-order the out-of-order decoded codewords; and wherein the universal decoder utilizes noise statistics to optimize an energy per decoded bit by dynamic clock gating of the error generator based on a probability of error likelihood. 6. The universal decoder of claim 5 further comprising a pseudo-random number generator coupled to the means for multiplexing H matrix values and causing the means for multiplexing H matrix values to randomly select one of a plurality of H matrices. 7. The universal decoder of claim 5 further comprising a pseudo-random number generator coupled to the means for multiplexing H matrix values and causing the means for multiplexing H matrix values to randomly select one of a plurality of input codewords and one of a plurality of H matrices. 8. The universal decoder of claim 5 wherein the means for receiving input codewords and H matrix values directs a selected input codeword to a first input of a multiplier circuit. 9. The universal decoder of claim 8 further comprising means for providing H matrix values from a first one of the pair of memories to a second input of a multiplier circuit such that the multiplier circuit produces a product of the H matrix values and input codewords. 10. The universal decoder of claim 9 further comprising means for loading H-matrix values into a second one of the pair of memories concurrently with the first one of the pair of memories providing H-matrix values to the second input of the multiplier circuit. 11. The universal decoder of claim 9 further comprising means for loading H-matrix data in the pair of memories in an interleaved manner. 12. A universal decoder comprising: means for receiving input codewords and H matrix values; means for multiplexing H matrix values between parallel signal paths each leading to a pair of memories in which H matrix values are stored; a syndrome calculator configured to receive input codewords and H matrix values; an error generator, coupled to the syndrome calculator, wherein in response to the syndrome calculator detecting an error, the syndrome calculator provides the error to the error generator and the error generator calculates rank-ordered binary symmetric channel noise patterns and checks for membership in a codebook; and means for re-randomizing codebooks in real time by concurrently decoding and changing H matrices stored in the pair of memories such that when an H-matrix in a first one of the pair of memories is ready to be used for a decoding operation, the H-matrix in a second one of the pair of memories is being changed. 13. The universal decoder of claim 5 wherein at least one of the syndrome calculator and the error generator comprise a sparse multiplier configured to receive H-matrix values (H) and error vector values (E) and produce a product value HE. 14. The universal decoder of claim 13 wherein the sparse multiplier comprises a memory having H-matrix values stored therein and wherein active bits of the error vector (E) having the first logic value are used to select column addresses for an H matrix and the selected H matrix columns are logically XORed to produce the product value HE.

Assignees

Inventors

Classifications

  • Arrangements at the receiver end · CPC title

  • Decoding · CPC title

  • Structural properties of the code parity-check or generator matrix · CPC title

  • Interleaver using block-wise interleaving, e.g. the interleaving matrix is sub-divided into sub-matrices and the permutation is performed in blocks of sub-matrices · CPC title

  • Implementations based on combinatorial logic, e.g. Boolean circuits · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11870459B2 cover?
Described is a decoder suitable for use with any communication or storage system. The described decoder has a modular decoder hardware architecture capable of implementing a noise guessing process and due to its dependency only on noise, the decoder design is independent of any encoder, thus making it a universal decoder. Hence, the decoder architecture described herein is agnostic to any codin…
Who is the assignee on this patent?
Massachusetts Inst Technology, Univ Boston, Nat Univ Ireland Maynooth
What technology area does this patent fall under?
Primary CPC classification H03M13/1105. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jan 09 2024 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).