Carry Flag Circuit for Masked Binary Data Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

There is a need for more reliable processors that can efficiently process masked data without performing unmasking operations, which is currently a limitation in existing processors.

Innovation Solution

A method and circuit design that determine carry digit indicator bits for masked data by performing operations such as addition and masking, using EXCLUSIVE OR and addition/subtraction logic operations, without unmasking the data, as exemplified by the formulas Flag_C=CD1_M xor CD2_M xor CADD_D_M xor CADD_M xor CD_MD and Flag_C=CD1_M+CD2_M+CADD_D_M−CADD_M−CD_M, and implemented using comparators and logic gates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If unmasking operations are performed on masked data, then data processing can be completed, but processing time increases and reliability decreases

Engineering Contradiction:
Improveprocessor reliabilityVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Instead of unmasking the data to perform operations and then re-masking, the patent inverts the approach by performing operations directly on the masked data. The carry flag is calculated using masked values and mask values through equivalent mathematical relationships, eliminating the need to revert to unmasked data.

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

Solution Approach 2:

The patent introduces intermediate calculations using mask values as mediators. By computing the carry flag through operations on masked data and mask values (CD1_M, CD2_M, CADD_D_M, CADD_M, CD_M), it creates an indirect path that avoids direct unmasking while achieving the same result.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If unmasking operations are implemented, then data operations can proceed, but device complexity increases

Engineering Contradiction:
Improvemasked data processing capabilityVSAvoidprocessor complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the carry flag calculation into distinct components based on masked data operations and mask operations. By separating CD1_M, CD2_M, CADD_D_M, CADD_M, and CD_M calculations, it manages complexity through structured decomposition rather than requiring a complex unmasking mechanism.

Inventive Principle:
Principle #1Segmentation

3Productivity

If masked data is processed without unmasking, then processing efficiency improves, but measurement precision of carry flag may deteriorate

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidcarry flag accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent changes the parameters from unmasked values to masked values and their corresponding mask values. By transforming the calculation parameters to operate in the masked domain (using modular arithmetic properties), it maintains mathematical precision while working exclusively with masked data throughout the computation.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11714604B2Device and method for binary flag determination
Publication Date: 2023.08.01 STMICROELECTRONICS (ROUSSET) SAS
  • US11714604B2 patent drawing
  • US11714604B2 patent drawing

AI summary

An embodiment method for determining a carry digit indicator bit of a first binary datum includes a step for processing of the first binary datum masked by a masking operation, and not including any processing step of the first binary datum.