Floating-Point Data Computation Circuit Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current compute-in-memory (CIM) circuits face challenges in performing floating-point operations efficiently in terms of time, area, and power consumption, and often introduce quantization errors when converting floating-point data to fixed-point data.

Innovation Solution

A data computation circuit is designed to separate sign and mantissa bits from exponent bits, using a multiplier circuit to generate two's complement products, a summing circuit to add exponents, and a shifting circuit to align products based on sum differences, with an adder tree to produce partial sums, thereby performing floating-point computations with reduced time, area, and power without quantization errors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If floating-point operations are performed in current CIM circuits, then computation accuracy is maintained, but time, area, and power consumption increase

Engineering Contradiction:
Improvecomputation accuracyVSAvoidcomputation efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The floating-point data is segmented into exponent bits and signed-mantissa bits, which are processed separately through dedicated circuit paths. The exponent bits go through a summing circuit while the signed-mantissa bits go through a multiplier circuit, allowing parallel processing that maintains accuracy while improving efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A shifting circuit acts as an intermediary component that receives the absolute difference between exponent sums and controls the shifting amount of mantissa products. This intermediary mechanism enables precise alignment of partial sums without quantization errors, resolving the contradiction between maintaining precision and improving computational efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Speed

If floating-point data is converted to fixed-point data, then computation speed increases, but quantization errors are introduced

Engineering Contradiction:
Improvecomputation speedVSAvoiddata precision
Core Design Contradiction:
SpeedVSMeasurement precision

Solution Approach 1:

Instead of converting floating-point data to fixed-point data (the conventional approach), the patent inverts the approach by maintaining floating-point representation throughout the computation process. The circuit processes floating-point exponents and mantissas separately using dedicated circuits, achieving both high speed and high precision without quantization errors.

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

3Loss of time

If conventional computation circuits are used, then operation time is reduced, but area and power consumption increase

Engineering Contradiction:
Improveoperation timeVSAvoidcircuit area
Core Design Contradiction:
Loss of timeVSArea of stationary object

Solution Approach 1:

The computation circuit is segmented into specialized sub-circuits: a summing circuit for exponent bits, a multiplier circuit for signed-mantissa bits, and a shifting circuit for alignment. This segmentation allows each component to be optimized for its specific function, reducing overall circuit area while maintaining fast operation through parallel processing paths.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20230418557A1Data computation circuit and method
Publication Date: 2023.12.28 TAIWAN SEMICONDUCTOR MANUFACTURING CO LTD
  • US20230418557A1 patent drawing
  • US20230418557A1 patent drawing
  • US20230418557A1 patent drawing

AI summary

A circuit includes a multiplier circuit that receives a signed mantissa of each data element of pluralities of input and weight data elements and generates two's complement products by performing multiplication and reformatting operations on some or all of the input data element signed mantissas and some or all of the weight data element signed mantissas, a summing circuit that receives an exponent of each data element of the pluralities of input and weight data elements and generates sums by adding each input data element exponent to each weight data element exponent, a shifting circuit that shifts each product by an amount equal to a difference between a corresponding sum and a maximum sum, and an adder tree that generates a mantissa sum from the shifted products.