Ternary Vector Signaling Code for Pin-Efficient Memory Controller Interface

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern computer systems face challenges in achieving high-speed, low-latency data transfers between memory controllers and memory devices while minimizing pin count and power utilization, due to constraints in available resources and differing semiconductor processes between controller and memory devices.

Innovation Solution

The implementation of a PHY and Link Layer interface for both controller and memory sides, utilizing a ternary vector signaling code with a 3b4w interface over six high-speed wires, including a Gearbox that employs a Hadamard matrix for encoding and decoding, and a Kandou Memory Link protocol for reliable data transfer with low power consumption and reduced pin usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If differential signaling is used for chip-to-chip communication, then signal recoverability is improved by cancelling crosstalk and common-mode noise, but pin count increases and power consumption rises

Engineering Contradiction:
Improvesignal recoverabilityVSAvoidpin count
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent merges multiple signaling functions into a unified vector signaling framework where multiple wires are controlled collectively as a vector. This allows the system to achieve differential signaling benefits (noise cancellation) while using fewer pins by exploiting the collective degrees of freedom of the wire group rather than treating each wire independently.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The vector signaling code provides multi-functionality by enabling both differential signaling benefits and pin-efficient communication through a single unified approach. The system can operate with varying numbers of active wires depending on the data rate and pin availability, making the interface adaptable to different physical constraints while maintaining reliability.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Productivity

If more wires are used for high-speed data transfer, then throughput is improved, but pin count and power utilization increase

Engineering Contradiction:
ImprovethroughputVSAvoidpin count
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent implements dynamic wire utilization where the number of actively driven wires varies based on the data rate requirement and pin availability. The vector signaling code allows the system to activate only the necessary subset of wires for each communication task, enabling high throughput when pins are available while conserving pins when bandwidth requirements are modest.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the signaling parameters by using collective vector control of multiple wires rather than independent binary signaling. This allows the same physical wire count to support higher effective throughput by exploiting the increased degrees of freedom in the vector space, achieving better productivity without proportionally increasing pin count.

Inventive Principle:
Principle #35Parameter changes

3Quantity of substance

If vector signaling codes are used for pin-efficient communication, then pin count is reduced, but system complexity increases due to encoding and decoding requirements

Engineering Contradiction:
Improvepin countVSAvoidencoding complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent extracts the encoding complexity from the critical path by using pre-computed vector signaling codes and lookup tables. The encoder simply maps input bits to predetermined vector patterns, and the decoder uses similar lookup mechanisms, removing complex real-time computation from the signal path and leaving only simple pattern recognition and generation.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system performs preliminary action by pre-defining the vector signaling code mappings before communication occurs. The Hadamard matrix-based codes are predetermined and stored, allowing the encoder and decoder to operate with simple pattern matching rather than complex real-time calculation, thereby reducing operational complexity while maintaining pin efficiency.

Inventive Principle:
Principle #10Preliminary action

4Loss of time

If high-speed wires are used for data transfer, then latency is reduced, but power dissipation increases

Engineering Contradiction:
ImprovelatencyVSAvoidpower dissipation
Core Design Contradiction:
Loss of timeVSLoss of energy

Solution Approach 1:

The patent employs periodic action through clocked vector signaling where groups of bits are transmitted in synchronized bursts rather than continuous individual bit transmission. This periodic structure allows for efficient clocking and reduces the average power consumption while maintaining high-speed transfer by utilizing the full vector bandwidth during active transmission periods.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS10468078B2Methods and systems for pin-efficient memory controller interface using vector signaling codes for chip-to-chip communication
Publication Date: 2019.11.05 KANDOU LABS SA
  • US10468078B2 patent drawing
  • US10468078B2 patent drawing
  • US10468078B2 patent drawing

AI summary

Systems and methods are described for transmitting data over physical channels to provide a high speed, low latency interface such as between a memory controller and memory devices. Controller-side and memory-side embodiments of such channel interfaces are disclosed which require a low pin count and have low power utilization. In some embodiments of the invention, different voltage, current, etc. levels are used for signaling and more than two levels may be used, such as a vector signaling code wherein each wire signal may take on one of four signal values.