Switchless Semiconductor Pooled Memory Using Direct SoC Connections
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The current approach to building pooled memory systems using CXL switches between processors and memory modules introduces extra latency, power consumption, and cost, with latency being the most critical issue for system designers.
Innovation Solution
A mechanism is proposed to build pooled memory without using switches by employing multiple System-on-Chip (SoC) devices with directly attached memory modules, allowing processors to communicate through die-to-die or chip-to-chip interfaces, and utilizing a chiplet structure for memory request forwarding.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a CXL switch is used to build pooled memory between processors and memory modules, then memory pooling functionality is achieved, but latency increases
Solution Approach 1:
The patent extracts and removes the CXL switch from the memory access path. Instead of routing all memory traffic through a centralized switch, the system directly connects processors to memory modules attached to different SoCs, eliminating the switch-induced latency while maintaining pooled memory functionality through inter-SoC communication.
Solution Approach 2:
The system segments the memory access paths by allowing each SoC to directly manage its attached memory modules while enabling cross-SoC access. This segmentation creates multiple parallel access paths rather than a single centralized path, reducing latency by allowing direct access without switch arbitration.
2Adaptability or versatility
If a CXL switch is used to build pooled memory, then memory sharing is enabled, but power consumption increases
Solution Approach 1:
The patent removes the power-consuming CXL switch from the architecture. Memory sharing is achieved through direct connections between processors and memory modules attached to different SoCs, eliminating the continuous power consumption associated with switch operation while maintaining the ability to share memory across processors.
Solution Approach 2:
Each SoC independently manages its attached memory modules, performing memory control functions locally without requiring a centralized switch. This self-service approach reduces overall system power consumption by eliminating the need for a dedicated switching component while maintaining memory sharing capabilities.
3Adaptability or versatility
If a CXL switch is used to build pooled memory, then memory pooling is achieved, but system cost increases
Solution Approach 1:
The patent extracts and eliminates the CXL switch component from the system architecture. Pooled memory functionality is achieved through the existing inter-SoC communication infrastructure, removing the need for expensive switching hardware and reducing overall system cost while maintaining memory pooling capabilities.
Solution Approach 2:
The system uses the existing universal inter-SoC communication interface for multiple purposes: both for processor-to-processor communication and for memory access across SoCs. This multi-functionality eliminates the need for dedicated memory switching hardware, reducing system cost while maintaining pooled memory capability.
Data Source
AI summary
A semiconductor device includes a first processor configured to generate a first memory physical address and a first memory request; a second processor configured to generate a second memory physical address and a second memory request; a first system-on-chip physically connected to the first processor and configured to convert the first memory physical address into a first device address; a second system-on-chip physically connected to the second processor and the first system-on-chip and configured to convert the second memory physical address into a second device address; and a first memory and a second memory respectively and physically connected to the first system-on-chip and the second system-on-chip. The first system-on-chip and the second system-on-chip respectively forward the first memory request and the second memory request to one of a plurality of memories including the first memory and the second memory according to the first device address and the second device address.


