Lookup Table Compression via Significant Bit Shift for AES
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Lookup tables in data processing systems, particularly in AES encryption and decryption processes, occupy significant area and contribute to high power consumption due to the need for multiple entries for each possible input value, with existing attempts to reduce size complicating the mapping transformations and adding delay to the critical path.
Innovation Solution
A data processing apparatus and method that reduces the size of lookup tables by using input and output interface circuitry to detect significant bits and perform shift operations, allowing for fewer entries in the lookup table while maintaining the required mathematical properties, such as derivability of output values, thereby reducing area and power consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a complete lookup table with 2^n entries is used to store all possible input-output mappings, then the accuracy and completeness of the operation results are ensured, but the area occupied by the lookup table and power consumption increase significantly
Solution Approach 1:
The patent segments the n-bit input data into multiple parts, using significant bits as address inputs to the lookup table while less significant bits are processed separately. This divides the single large lookup table into multiple smaller tables or reduces the address space required, thereby reducing the overall area occupied by the lookup table structure.
Solution Approach 2:
The patent employs a hierarchical structure where the lookup table is nested within a larger data processing system that includes additional processing stages. The lookup table provides core functionality while surrounding circuitry handles edge cases and transformations, allowing the lookup table itself to be smaller while maintaining overall system reliability.
2Reliability
If a complete lookup table with 2^n entries is used to store all possible input-output mappings, then the accuracy and completeness of the operation results are ensured, but the power consumption increases significantly
Solution Approach 1:
By segmenting the input data and using only significant bits for addressing the lookup table, the patent reduces the number of entries that need to be stored and accessed. This reduction in table size directly decreases the power consumption associated with maintaining and accessing the lookup table, while still ensuring complete and accurate operation results through the processing of less significant bits in subsequent stages.
Solution Approach 2:
The patent applies partial action by not storing all possible 2^n entries in the lookup table, but only the necessary subset that covers the significant bit combinations. This partial storage approach reduces power consumption while maintaining the reliability needed for correct operation results.
3Area of stationary object
If the lookup table size is reduced by replacing 8-bit GF datapath with smaller datapaths, then the area occupied by lookup tables decreases, but the mapping transformations become complicated and add delay to the critical path
Solution Approach 1:
The patent extracts the transformation complexity from the lookup table structure itself and relocates it to the input interface circuitry. By handling the mapping transformations before data enters the lookup table, the patent simplifies the lookup table design and reduces its area while maintaining functional correctness without adding critical path delay within the table.
4Area of stationary object
If the lookup table size is reduced by replacing 8-bit GF datapath with smaller datapaths, then the area occupied by lookup tables decreases, but the delay to the critical path increases
Solution Approach 1:
The patent performs preliminary processing of the input data, including the mapping transformations, before the data is fed into the lookup table. This preliminary action ensures that when data reaches the lookup table, it is already in the correct format, allowing the table to operate efficiently with minimal internal delay and reducing the overall critical path time while maintaining reduced area.
Data Source
AI summary
A lookup table receives an n-bit input value and returns an output value that would be obtained by performance of a predetermined operation on the input value. The number of entries in the lookup table is less than 2n. An n-bit input data value is received, a modification condition is detected if any of a predetermined number of significant bits of the input data value are logic zeroes, and a shift operation is performed on the input data value if the modification condition is detected, prior to providing the input to the lookup table. If the modification condition is detected, an output value derivation operation is performed on the output value received from the lookup table to modify it prior to returning it to for processing. The derivation operation accounts for the shift operation. This approach can lead to a significant reduction in the lookup table size.


