Single Lane Keccak Execution Circuitry for SHA-3 Latency Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current processor architectures face inefficiencies in executing Keccak instructions due to high latency associated with cross-lane data accesses, which hinders the performance of Secure Hash Algorithm (SHA-3) and Post-Quantum Cryptography (PQC) schemes, particularly in Keccak permutations.

Innovation Solution

Introduction of new Keccak instructions that utilize a single lane of multiple lane registers and execution circuits to accelerate complex bit manipulations and byte reordering, such as the SHA3-SL-PAR, SHA3-SL-TXR1, SHA3-SL-TXR2, SHA3-SL-PI, and SHA3-SL-CHI instructions, reducing latency and enabling parallel execution of Keccak permutations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If cross-lane data accesses are used in Keccak execution, then parallel processing capability is utilized, but latency increases significantly

Engineering Contradiction:
Improveparallel processing capabilityVSAvoidexecution latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the Keccak execution into independent single-lane operations that can be sequentially executed within one lane, avoiding the need for cross-lane data accesses. Each Keccak permutation is broken down into discrete steps (theta, rho, pi, chi, iota) that operate independently within a single lane, eliminating latency while maintaining functional correctness.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of using multiple lanes in parallel (the conventional approach), the patent inverts the approach by using a single lane to execute Keccak permutations sequentially. This inversion eliminates the cross-lane access latency problem while achieving comparable or better performance through optimized single-lane execution paths.

Inventive Principle:
Principle #13The other way round (Inversion)

2Quantity of substance

If multiple lane registers are used for Keccak instructions, then data throughput increases, but access latency increases

Engineering Contradiction:
Improvedata throughputVSAvoidaccess latency
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent processes data in segmented single-lane portions rather than attempting to process entire multiple-lane registers simultaneously. By dividing the Keccak state into manageable single-lane segments and processing them sequentially, the patent maintains data throughput while eliminating the access latency associated with multiple-lane operations.

Inventive Principle:
Principle #1Segmentation

3Loss of time

If single lane execution is used for Keccak instructions, then latency is reduced to single cycle, but processing capacity decreases

Engineering Contradiction:
Improveexecution latencyVSAvoidprocessing capacity
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent maintains continuous useful action by implementing optimized single-lane execution paths that process Keccak permutations without interruption. The single-lane approach is enhanced with specialized micro-operations and instruction fusion techniques that keep the execution unit continuously busy, compensating for the reduced parallel capacity with increased operational efficiency.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The patent changes operational parameters by optimizing the single-lane execution path with specialized instructions and micro-operations tailored for Keccak algorithms. This includes optimizing register allocation, instruction scheduling, and data flow within the single lane to maximize processing capacity despite the reduced parallelism.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20250004770A1Circuitry and methods for implementing one or more keccak instructions within a single lane of vector execution circuitry
Publication Date: 2025.01.02 INTEL PRODUCTS IP LLC
  • US20250004770A1 patent drawing
  • US20250004770A1 patent drawing
  • US20250004770A1 patent drawing

AI summary

Circuitry and methods for implementing one or more Keccak permutation instructions are described. In certain examples, a hardware processor (e.g., core) includes decoder circuitry to decode a first instruction into a decoded first instruction, the first instruction comprising identifiers of a first register to store a first word of Keccak state value, a second register to store a second word of Keccak state value and a third word of Keccak state value, and a third register to store a fourth word of Keccak state value and a fifth word of Keccak state value according to a SHA3 standard, and an opcode to indicate vector execution circuitry comprising a plurality of lanes is to use only a single lane of the plurality of lanes to perform a column parities operation of a theta step of a Keccak permutation according to the SHA3 standard to determine a computed parity value for an input of the first word of Keccak state value, the second word of Keccak state value, the third word of Keccak state value, the fourth word of Keccak state value, and the fifth word of Keccak state value, and store the computed parity value into an unused upper word of the first register; and the vector execution circuitry to execute the decoded first instruction according to the opcode.