Central Controller Read Data Alignment in Memory Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In memory systems, latency is introduced due to differences in command reception and read data alignment across multiple memory channels, caused by factors such as physical layer training, varying command issuance, register programming times, and clock speeds.

Innovation Solution

A central controller is coupled to multiple memory controllers via command and data buses, and side-band buses, to synchronize command issuance and read data alignment. Notifications are sent on side-band buses to manage physical layer busy states, ensuring that memory controllers block or resume commands accordingly.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple memory channels operate independently with different command reception and processing times, then each channel can function autonomously, but latency is introduced due to read data misalignment

Engineering Contradiction:
Improvememory system throughputVSAvoidread data alignment latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent implements a feedback mechanism where the central controller monitors the busy state of physical layers and memory controllers, and adjusts command issuance timing accordingly. Notifications are sent back to memory controllers to block or resume commands based on physical layer training status, ensuring synchronized read data alignment while maintaining high throughput

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent performs preliminary actions by having the central controller send notifications to memory controllers before issuing commands that would cause misalignment. Memory controllers block commands in advance when physical layers are busy with training, preventing read data misalignment before it occurs, thereby eliminating latency without reducing throughput

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If memory controllers issue commands at different times due to varying processing speeds, then each channel operates at its optimal speed, but read data alignment is lost

Engineering Contradiction:
Improvechannel independenceVSAvoidread data alignment precision
Core Design Contradiction:
Adaptability or versatilityVSManufacturing precision

Solution Approach 1:

The patent introduces the central controller as an intermediary between memory channels. It coordinates command issuance across all channels by monitoring physical layer training status and sending synchronization notifications, allowing each channel to operate independently while maintaining precise read data alignment through centralized coordination

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent implements dynamic command blocking and resuming based on real-time physical layer training status. Memory controllers adaptively block commands when notifications indicate training is in progress, and resume commands when training completes, maintaining both channel independence and read data alignment precision under varying operating conditions

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20250094091A1Read data alignment
Publication Date: 2025.03.20 MICRON TECHNOLOGY INC
  • US20250094091A1 patent drawing
  • US20250094091A1 patent drawing
  • US20250094091A1 patent drawing

AI summary

Systems, apparatuses, and methods related to a controller architecture for read data alignment are described. An example method can include sending a first notification from a physical layer to each of a number of memory controllers, wherein the first notification indicates that the physical layer and/or a memory device coupled to the physical layer is busy, and blocking commands on each of the number of memory controllers in response to receiving the first notification to cause read data alignment. The method can also include sending a second notification from the physical layer to each of the number of memory controllers, wherein the second notification indicates that the physical layer and/or the memory device coupled to the physical layer is no longer busy, and resuming processing commands on each of the number of memory controllers in response to receiving the second notification.