# US 7,612,780 B2 · Optimized memory addressing

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

- Number: US 7,612,780 B2
- Document ID: US7612780B2
- Status: Granted
- Kind: B2
- Application number: 11/784,342
- Filed: 2007-04-06
- Published: 2007-08-16
- Granted: 2009-11-03
- Earliest claimed: 2004-03-08
- Assignees: Intel Corporation
- Inventors: David E Freker; Aditya Sreenivas; Zohar Bogin; Anoop Mukker; Tuong Trieu
- Web page: https://patentgrep.com/patent/US7612780B2

## CPC

- G06F 13/1684: {using multiple buses}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Embodiments of the present invention relate to accessing a first pair of adjacent data blocks using a first channel of a dual channel memory device; and simultaneously accessing a second pair of adjacent data blocks using a second channel of the memory device, the second pair being spaced apart from the first pair by a predetermined interval.

## Claims

### Claim 1

A method of accessing memory comprising:
accessing a first pair of adjacent data blocks of a first sequence of pairs of consecutive data blocks using a first channel of a dual channel memory device, the first channel having a data channel width, each data block having the same number of bits as the width of the data channel; and
simultaneously accessing a second pair of adjacent data blocks of a second sequence of pairs of consecutive data blocks using a second channel of the memory device, the second channel having the same data channel width as the first channel and the data blocks of the second pair having the same number of bits as the data block in the first pair, the second pair being spaced apart from the first pair by a predetermined interval.

### Claim 2 (depends on 1)

The method of claim 1, wherein the adjacent data blocks of the first pair have adjacent address values.

### Claim 3 (depends on 1)

The method of claim 1, wherein the data blocks each consist of a fixed number of bytes and the first block of the first pair is spaced apart from the first block of the second block by eight times the fixed number.

### Claim 4 (depends on 1)

The method of claim 1, further comprising providing the accessed data blocks to a graphics controller.

### Claim 5 (depends on 1)

The method of claim 1, further comprising receiving data blocks from a graphics controller and wherein accessing the data blocks comprises writing the received data blocks to the memory device.

### Claim 6 (depends on 1)

The method of claim 1, wherein the memory device is a double data rate memory device.

### Claim 7

A machine-readable tangible storage medium having stored thereon data representing instructions which, when executed by a machine, cause the machine to perform operations comprising:
accessing a first pair of adjacent data blocks of a first sequence of pairs of consecutive data blocks using a first channel of a dual channel memory device, the first channel having a data channel width, each data block having the same number of bits as the width of the data channel; and
simultaneously accessing a second pair of adjacent data blocks of a second sequence of pairs of consecutive data blocks using a second channel of the memory device, the second channel having the same data channel width as the first channel and the data blocks of the second pair having the same number of bits as the data block in the first pair, the second pair being spaced apart from the first pair by a predetermined interval.

### Claim 8 (depends on 7)

The medium of claim 7, wherein the first sequence of pairs consists of odd pairs and the second sequence consists of even pairs.

### Claim 9 (depends on 7)

The medium of claim 7, wherein the first and second sequences of pairs have a transition interval and wherein after each occurrence of the interval the first and second sequences reverse order.

### Claim 10 (depends on 9)

The medium of claim 9, wherein the first sequence of pairs consists of odd pairs before the first transition point and the second sequence consists of even pairs, and wherein the first sequence consists of even pairs after the first transition interval and before a second transition interval, and wherein the second sequence consists of odd pairs after the first transition interval and before the second transition interval.

### Claim 11

A method of mapping memory comprising:
mapping a first pair of data blocks to a first channel of a dual channel memory;
mapping a consecutive second pair of data blocks to a second channel of the dual channel memory;
mapping a consecutive third pair of data blocks to the first channel of the dual channel memory;
mapping a consecutive fourth pair of data blocks to the second channel of the dual channel memory;
mapping a consecutive fifth pair of data blocks to the second channel of the dual channel memory; and
mapping a consecutive sixth pair of data blocks to the first channel of the dual channel memory,
wherein each channel has a data channel width corresponding to a number of bits and each data block has the same number of bits as the corresponding data channel width.

### Claim 12 (depends on 11)

The memory map of claim 11, wherein the data blocks each comprise a quadword.

### Claim 13 (depends on 12)

The memory map of claim 12, wherein each pair of data blocks consists of two sequential quadwords.

### Claim 14 (depends on 13)

The memory map of claim 13, wherein the first, second, third and fourth pairs combined contain 64 bytes.
