Pulse-Based Crossbar MAC Layout for Collision-Free Neural Computing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computing devices face performance limitations in performing vector matrix multiplication operations, such as MAC operations, which are crucial for neural networks, due to inefficiencies in processing and pulse management across input and output lines.

Innovation Solution

A computing device with a crossbar array architecture that selectively inputs pulses to input lines based on input signals and weights, using elements like diodes, transistors, and resistive memories to transfer pulses only when weights are set to specific values, and pulse counters to count output pulses, thereby optimizing MAC operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If pulses are input to all input lines simultaneously, then processing parallelism is improved, but pulse collision and interference increase

Engineering Contradiction:
Improveprocessing parallelismVSAvoidpulse collision interference
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies periodic action by sequentially enabling different groups of input lines across multiple cycles. Instead of all input lines being active simultaneously, the system divides them into groups that are activated in sequence, allowing pulses to be processed in an organized temporal pattern that prevents collisions while maintaining overall parallel processing capability.

Inventive Principle:
Principle #19Periodic action

2Speed

If more input lines are activated in each cycle, then processing speed is improved, but routing complexity increases

Engineering Contradiction:
Improveprocessing speedVSAvoidrouting complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the input lines into multiple groups, where each group is enabled during specific cycles. This segmentation allows the system to activate multiple input lines within each group simultaneously (improving speed) while keeping the total number of active lines manageable at any given moment (reducing routing complexity). The crossbar array is effectively segmented both spatially and temporally.

Inventive Principle:
Principle #1Segmentation

3Reliability

If sequential pulse input is used, then pulse collision is reduced, but computational cycle time increases

Engineering Contradiction:
Improvepulse collision reductionVSAvoidcomputational cycle time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent resolves this contradiction by implementing periodic action with a structured cycle-based approach. Within each cycle, multiple input lines are enabled in a controlled sequence, and pulses are processed during specific time windows. The system uses enable signals that are activated periodically for different groups of input lines, allowing efficient pulse routing without collisions while minimizing the overall computational cycle time through optimized timing.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS12197891B2Computing device for performing digital pulse-based crossbar operation and method of operating the computing device
Publication Date: 2025.01.14 SAMSUNG ELECTRONICS CO LTD
  • US12197891B2 patent drawing
  • US12197891B2 patent drawing
  • US12197891B2 patent drawing

AI summary

A computing device for performing a digital pulse-based crossbar operation and a method of operating the computing device. The computing device includes a plurality of input lines to which a pulse is selectively input in a sequential manner based on a corresponding input signal; a plurality of output lines crossing the input lines; a plurality of elements, each element being disposed at a cross point between a corresponding input line and a corresponding output line to transfer, to the corresponding output line, a pulse input to the corresponding input line in response to a corresponding weight being a first value; and a plurality of pulse counters, each pulse counter counting a number of pulses output from a corresponding output line.