# US 12,602,335 B2 · Memory interface with reduced energy transmit mode

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,602,335 B2
- Document ID: US12602335B2
- Status: Granted
- Kind: B2
- Application number: 17/668,226
- Filed: 2022-02-09
- Published: 2023-02-09
- Granted: 2026-04-14
- Earliest claimed: 2021-07-30
- Assignees: NVIDIA Corporation
- Applicants: NVIDIA Corp.
- Inventors: James Michael O'Connor; Donghyuk Lee
- Web page: https://patentgrep.com/patent/US12602335B2

## CPC

- G06F 13/1673: {using buffers}
- G06F 13/1689: {Synchronisation and timing concerns (synchronisation on a memory bus G06F13/4234)}
- G06T 1/20: Processor architectures; Processor configuration, e.g. pipelining
- G06T 1/60: Memory management
- Y02D 10/00: Energy efficient computing, e.g. low power processors, power management or thermal management
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- Y02D: CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE

## Abstract

PAM encoding techniques that leverage unused idle periods in channels between data transmissions to apply longer but more energy-efficient codes. To improve energy savings, multiple sparse encoding schemes may be utilized selectively to fit different sized gaps in the traffic. These approaches may provide energy reductions, for example with memory READ and WRITE traffic, when transferring 4-bit data using 3-symbol sequences.

## Claims

### Claim 1

A communication method comprising:
applying a first encoding technique on a bit sequence to generate a plurality of first pulse amplitude modulated (PAM) symbols for data communicated over at least one bus;
detecting a gap in command traffic on the bus; and
in response to detecting the gap in command traffic, switching to a second encoding technique on the bit sequence to generate second PAM symbols for the data on the bus in the gap, the second PAM symbols comprising higher sparsity than the first PAM symbols.

### Claim 2 (depends on 1)

The method of claim 1, wherein both of the first encoding technique and the second encoding technique avoid 3-level transitions between symbols on the bus.

### Claim 3 (depends on 1)

The method of claim 1, wherein the second PAM symbols are formed to draw less energy from the bus than do the first PAM symbols.

### Claim 4 (depends on 1)

The method of claim 1, wherein the second PAM symbols comprise 4b4s31 symbols.

### Claim 5 (depends on 1)

The method of claim 1, wherein the second PAM symbols comprise 4b3s31 symbols.

### Claim 6 (depends on 1)

The method of claim 1, wherein the second encoding technique is selected based on a size of the gap in command traffic.

### Claim 7 (depends on 1)

The method of claim 1, wherein the second encoding technique is 4b3s31 regardless of a size of the gap in command traffic.

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
on condition that a first symbol value is not a lowest-energy consumption symbol value, swapping the first symbol value on the bus with a second symbol value of lowest energy consumption; and
encoding an indication of the swap on a data bus inversion (DBI) line of the at least one bus.

### Claim 9 (depends on 8)

The method of claim 8, wherein the indication on the DBI line specifies whether L0 was swapped for L1, L2, or neither one.

### Claim 10 (depends on 1)

The method of claim 1, further comprising:
on condition that one of the first PAM symbols or one of the second PAM symbols, respectively, is a highest energy consumption symbol, shifting a level of a next symbol to transmit on the bus to a next highest level than the first encoding technique or the second encoding technique, respectively, would have generated otherwise.

### Claim 11

A transceiver comprising:
a first codebook for a plurality of first PAM symbols;
a second codebook for a second plurality of PAM symbols comprising higher sparsity than the first PAM symbols; and
logic to switch from the first codebook to the second codebook to generate symbols on a data bus, in response to detection of a gap in command traffic, the symbols generated in the gap.

### Claim 12 (depends on 11)

The transceiver of claim 11, wherein the second PAM symbols are configured to draw less energy from the data bus than do the first PAM symbols.

### Claim 13 (depends on 11)

The transceiver of claim 11, wherein the second PAM symbols comprise 4b4s31 symbols.

### Claim 14 (depends on 11)

The transceiver of claim 11, wherein the second PAM symbols comprise 4b3s31 symbols.

### Claim 15 (depends on 11)

The transceiver of claim 11, wherein the second codebook is selected based on a size of the gap in command traffic.

### Claim 16

A system comprising:
a processor;
a memory;
logic to switch from utilizing a first encoding mechanism to utilizing a second encoding mechanism to generate PAM symbols on a memory bus, in response to detection of a gap in access commands from the processor to the memory, the symbols generated in the gap; and
wherein the second encoding mechanism draws less power from the memory bus than the first encoding mechanism.

### Claim 17 (depends on 16)

The system of claim 16, wherein the second encoding mechanism is selected based on a size of the gap between the memory access commands.

### Claim 18 (depends on 16)

The system of claim 16, wherein both of the first encoding mechanism and the second encoding mechanism implement maximum transition avoidance.

### Claim 19 (depends on 16)

The system of claim 16, wherein the second encoding mechanism generates 4b3s31 PAM symbols.

### Claim 20 (depends on 16)

The system of claim 16, wherein the processor is a graphics processing unit.

### Claim 21

A communication method comprising:
applying a first encoding technique on a bit sequence to generate a plurality of first pulse amplitude modulated (PAM) symbols for data communicated over at least one bus;
detecting a gap in command traffic on the bus;
in response to detecting the gap in command traffic, switching to a second encoding technique on the bit sequence to generate second PAM symbols for the data on the bus in the gap, the second PAM symbols comprising higher sparsity than the first PAM symbols; and
on condition that a first symbol value is not a lowest-energy consumption symbol value, swapping the first symbol value on the bus with a second symbol value of lowest energy consumption; and
encoding an indication of the swap on a data bus inversion (DBI) line of the at least one bus.

### Claim 22

A communication method comprising:
applying a first encoding technique on a bit sequence to generate a plurality of first pulse amplitude modulated (PAM) symbols for data communicated over at least one bus;
detecting a gap in command traffic on the bus;
in response to detecting the gap in command traffic, switching to a second encoding technique on the bit sequence to generate second PAM symbols for the data on the bus in the gap, the second PAM symbols comprising higher sparsity than the first PAM symbols; and
on condition that one of the first PAM symbols or one of the second PAM symbols, respectively, is a highest energy consumption symbol, shifting a level of a next symbol to transmit on the bus to a next highest level than the first encoding technique or the second encoding technique, respectively, would have generated otherwise.
