Cache-Coherent In-Memory Computing Interface for Latency Bottlenecks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Function-in-memory computing faces challenges due to the impact of operation latency on memory performance, which affects cache coherence, making it difficult to achieve optimal bandwidth and throughput.
Innovation Solution
Implementing a cache coherent protocol interface, such as Compute Express Link (CXL), to connect function-in-memory circuits with a host processing unit, allowing for efficient operation and maintaining cache coherence.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If function-in-memory circuits perform operations on data stored in memory, then computational efficiency and bandwidth are improved, but operation latency increases and cache coherence becomes difficult to maintain
Solution Approach 1:
The patent segments the memory system into multiple independent function-in-memory circuits (FIM0-FIM7) that can operate in parallel on different data segments. Each FIM circuit processes specific portions of data independently, allowing simultaneous computations across multiple units. This segmentation enables the system to achieve high throughput by processing multiple data elements concurrently, effectively hiding latency through parallel execution.
Solution Approach 2:
The patent implements preliminary action by pre-fetching operands into on-chip buffers before computation begins. The system prepares data in advance by loading operands from external memory into local buffer memory within each FIM circuit, so that when computation is initiated, the data is already available. This eliminates wait time during operation and ensures continuous processing, thereby reducing the impact of latency on overall computational efficiency.
2Quantity of substance
If function-in-memory circuits are integrated with memory, then total bandwidth between memory and processing circuits is increased, but device complexity increases
Solution Approach 1:
The patent implements universality by designing function-in-memory circuits that can perform multiple operations including arithmetic computations, logical operations, and data transformation functions. Each FIM circuit is equipped with configurable functional units that can be programmed to execute different operations on the same hardware infrastructure. This multi-functionality allows a single integrated memory-processor unit to replace multiple separate components, increasing bandwidth while managing complexity through consolidation rather than proliferation of dedicated circuits.
Solution Approach 2:
The patent introduces intermediary control logic and interface circuits that mediate between the external memory controller and the internal function-in-memory circuits. These intermediary components handle protocol conversion, data routing, and coordination between multiple FIM units, simplifying the overall system complexity by providing a standardized interface layer. The intermediary structures manage the increased complexity of integrated operations without exposing it to external systems, thereby maintaining manageable device complexity while achieving high bandwidth.
3Productivity
If multiple function-in-memory circuits operate in parallel, then processing throughput is improved, but maintaining cache coherence becomes more difficult
Solution Approach 1:
The patent implements feedback mechanisms where each function-in-memory circuit reports its operation status, data modification states, and completion signals back to a central coherence controller. This feedback enables the system to track which memory locations have been modified by which FIM circuit, allowing the coherence controller to maintain accurate cache state information. The feedback loop ensures that parallel operations do not compromise cache coherence by providing real-time visibility into data state changes across all FIM units.
Solution Approach 2:
The patent introduces a cache coherence controller as an intermediary component that manages coherence protocols across multiple parallel FIM circuits. This intermediary controller coordinates memory access requests, handles cache line invalidation, and ensures that all FIM circuits operate with consistent view of shared data. By placing a dedicated coherence management layer between the parallel FIM units and the memory subsystem, the system maintains cache coherence without sacrificing parallel processing throughput.
Data Source
AI summary
A system for computing. In some embodiments, the system includes: a memory, the memory including one or more function-in-memory circuits; and a cache coherent protocol interface circuit having a first interface and a second interface. A function-in-memory circuit of the one or more function-in-memory circuits may be configured to perform an operation on operands including a first operand retrieved from the memory, to form a result. The first interface of the cache coherent protocol interface circuit may be connected to the memory, and the second interface of the cache coherent protocol interface circuit may be configured as a cache coherent protocol interface on a bus interface.


