GF(2^r) ECC Inversion Using Subfield Lookup Tables
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current error correction code (ECC) decoders, such as BCH and Reed Solomon, require large lookup tables for discrete division and log operations, leading to excessive hardware costs and computational complexity due to the large number of operations performed, even though only a small number of operations are needed.
Innovation Solution
The method involves using smaller tables of size 3.5×|F|1/2×r bits by representing elements in a Galois field as a combination of primitive elements and subfield elements, allowing for efficient computation of inverses and logarithms through linear transformations and reduced table sizes, thereby reducing hardware requirements and computational complexity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If large lookup tables are used for log and inversion operations, then the operations can be performed directly, but the hardware cost and table size become excessive
Solution Approach 1:
The patent segments the field element representation by expressing elements in GF(2^r) as linear combinations of basis elements from the subfield GF(2^s) where r=2s. This segmentation allows the large lookup tables to be replaced with smaller tables that operate on the subfield elements, reducing the overall storage requirement while maintaining operational capability.
Solution Approach 2:
The patent introduces an intermediary representation system using basis elements {1, α, α^2, ..., α^(s-1)} of the subfield GF(2^s) to mediate between the input field element and the lookup table operations. This intermediary representation enables the use of smaller tables by transforming the problem into the subfield domain before performing operations.
2Ease of manufacture
If permanent lookup tables are used for each log and inversion operation, then the operations are straightforward, but a sizable hardware is dedicated to these operations
Solution Approach 1:
The patent divides the hardware structure into modular components: basis transformation logic, subfield operation units, and reconstruction logic. This segmentation allows the hardware to be implemented with smaller, more manageable units rather than large monolithic lookup tables, reducing overall hardware complexity while maintaining ease of operation.
Solution Approach 2:
The patent changes the parameter representation from full field elements to subfield element coefficients. By operating with coefficients of basis elements instead of complete field elements, the hardware can use smaller tables and reduced logic, thereby reducing device complexity while maintaining operational straightforwardness.
3Quantity of substance
If small tables are used to reduce hardware cost, then the overall table size is reduced, but the computational complexity per operation increases moderately
Solution Approach 1:
The patent performs preliminary basis transformation before lookup table operations and reconstructs the result after operations. These preliminary and final transformation steps are computationally simple (linear combinations of basis elements) and enable the use of small tables, achieving the trade-off where moderate computational complexity is acceptable in exchange for dramatically reduced table sizes.
4Productivity
If each log or inversion operation accesses a large LUT, then the operation is performed, but the hardware cost is excessive
Solution Approach 1:
The patent segments the resource requirements by operating in the subfield domain where elements can be represented with fewer coefficients. This segmentation allows multiple operations to share the same small lookup tables rather than requiring separate large tables for each operation, improving resource utilization and reducing overall hardware resources while maintaining operation performance.
Data Source
AI summary
A method of performing division operations in an error correction code includes the steps of receiving an output ω∈F†{0} wherein F=GF(2r) is a Galois field of 2r elements, ω=Σ0≤i≤r−1βi×αi wherein α is a fixed primitive element of F, and βi∈GF(2), wherein K=GF(2s) is a subfield of F, and {1, α} is a basis of F in a linear subspace of K; choosing a primitive element δ∈K, wherein ω=ω1+α×ω2, ω1=Σ0≤i≤s−1 γi×δi∈K, ω2=Σ0≤i≤s−1 γi+s×δi∈K, and γ=[γ0, . . . , γr−1]T∈GF(2)r; accessing a first table with ω1 to obtain ω3=ω1−1, computing ω2×ω3 in field K, accessing a second table with ω2=ω3 to obtain (1+α×ω2×ω3)−1=ω4+α×ω5, wherein ω−1=(ω1×(1+α×ω2×ω3))−1=ω3×(ω4+α×ω5)=ω3×ω4+α×ω3×ω5; and computing products ω3×ω4 and ω3×ω5 to obtain ω−1=Σ0≤i≤s−1θi×δi+α·Σi≤i≤s−1θi+s=δi where θi∈GF(2).


