# US 10,372,339 B2 · Extensible memory hub

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

- Number: US 10,372,339 B2
- Document ID: US10372339B2
- Status: Granted
- Kind: B2
- Application number: 15/175,697
- Filed: 2016-06-07
- Published: 2016-12-15
- Granted: 2019-08-06
- Earliest claimed: 2014-06-25
- Assignees: Intel Corporation
- Applicants: Intel Corporation
- Inventors: Randall K. Webb; Jawad B. Khan; Richard L. Coulson; Knut S. Grimsrud; Brian M. Yablon
- Web page: https://patentgrep.com/patent/US10372339B2

## CPC

- G06F 3/061: {Improving I/O performance}
- G06F 3/0655: {Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices}
- G06F 3/0688: {Non-volatile semiconductor memory arrays}
- G06F 11/1008: {in individual solid state devices (G06F11/1004 takes precedence)}
- G06F 11/1016: {Error in accessing a memory location, i.e. addressing error}
- G06F 11/1068: {in sector programmable memories, e.g. flash disk (G06F11/1072 takes precedence)}
- G06F 12/0246: {in block erasable memory, e.g. flash memory}
- G06F 2212/7201: Logical to physical mapping or translation of blocks or pages
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

The present disclosure relates to an extensible memory hub. An apparatus may include a first extensible non-volatile memory (NVM) hub (EN hub). The first EN hub includes an upstream interface port configured to couple the first EN hub to an NVM controller or to a second EN hub; a downstream interface port configured to couple the first EN hub to a third EN hub or to a NVM device; at least one NVM device port, each NVM device port configured to couple the first EN hub to a respective NVM device via a NVM channel; and an EN hub controller. The EN hub controller includes command logic configured to initialize the first EN hub in response to an initialize chain command from the NVM controller, the initializing including enumerating each NVM device coupled to the first EN hub and each of one or more associated NVM dies.

## Claims

### Claim 1

An apparatus comprising:
a first extensible non-volatile memory (NVM) hub (EN hub) assembly electrically coupled to at least one bus and at least one NVM device, the at least one bus having at least a first channel, wherein the first EN hub assembly includes:
a first EN hub electrically coupled to the first channel, the first EN hub creating an electric load on the first channel, and wherein a first identifier is assigned to the first EN hub;
a second EN hub electrically coupled to the first EN hub without increasing the electrical load, wherein a second identifier is assigned to the second EN hub; and
a first NVM device electrically coupled to the first EN hub and a second NVM device electrically coupled to the second EN hub; and
a NVM controller, wherein the first EN hub receives the first identifier from the NVM controller and the first EN hub generates the second identifier based, at least in part, on the first identifier.

### Claim 2 (depends on 1)

The apparatus of claim 1, wherein the first EN hub includes:
a first upstream interface port;
a first downstream interface port; and
at least one first NVM device port, the first upstream interface port being electrically coupled to the first channel of the bus and the first NVM device port being electrically coupled to the first NVM device.

### Claim 3 (depends on 2)

The apparatus of claim 2, wherein the second EN hub includes:
a second upstream interface port; and
at least one second NVM device port, the second upstream interface port being electrically coupled to the first downstream interface port and the second NVM device port being electrically coupled to the second NVM device.

### Claim 4 (depends on 3)

The apparatus of claim 3, wherein the second EN hub further includes a second downstream interface port, the second downstream interface port being electrically coupled to an additional EN hub, the additional EN hub not increasing the electrical load.

### Claim 5 (depends on 4)

The apparatus of claim 4 further comprising an NVM controller, wherein the NVM controller determines a topology of the first EN hub assembly.

### Claim 6 (depends on 5)

The apparatus of claim 5, wherein the topology identifies at least one of a port to which the first EN hub assembly is electrically coupled, a number of EN hubs in the first EN hub assembly, a number of interface ports for each EN hub in the first EN hub assembly, or a storage capacity for each NVM device included in the first EN hub assembly.

### Claim 7 (depends on 1)

The apparatus of claim 1, wherein the first channel electrically drives only the first EN hub of the first EN hub assembly.

### Claim 8 (depends on 1)

The apparatus of claim 1, wherein a first volume address is assigned to the first NVM device and a second volume address is assigned to the second NVM device.

### Claim 9 (depends on 8)

The apparatus of claim 8, wherein the first EN hub identifies a first port number corresponding to the first NVM device and the second EN hub identifies a second port number corresponding to the second NVM device, the first EN hub associating the first port number with the first volume address and the second EN hub associating the second port number with the second volume address.

### Claim 10

An apparatus comprising:
a first extensible non-volatile memory (NVM) hub (EN hub) including a first upstream interface port and a plurality of NVM device ports, wherein the first upstream interface port is electrically coupled to a first channel of a bus; and
a first NVM device electrically coupled to one of the NVM device ports and a second NVM device electrically coupled to another of the NVM device ports, wherein a volume address is assigned to each of the first and second NVM devices;
a second EN hub electrically coupled to the first EN hub, wherein the second EN hub is electrically coupled to a third NVM device and wherein an additional volume address is assigned to the third NVM device; and
a NVM controller, wherein the first EN hub receives a first identifier from the NVM controller and the first EN hub generates a second identifier based, at least in part, on the first identifier.

### Claim 11 (depends on 10)

The apparatus of claim 10, wherein the first EN hub identifies a port number corresponding to each of the first and second NVM devices.

### Claim 12 (depends on 11)

The apparatus of claim 11, wherein the first EN hub associates each port number with a respective volume address.

### Claim 13 (depends on 12)

The apparatus of claim 12, wherein the port numbers and respective volume addresses are stored in the first EN hub.

### Claim 14

An apparatus comprising:
a bus having at least a first channel and a second channel;
a first extensible non-volatile memory (NVM) hub (EN hub) assembly electrically coupled to the bus, the first EN hub assembly including at least:
a first EN hub electrically coupled to the first channel, the first EN hub creating a first electric load on the first channel;
a second EN hub electrically coupled to the first EN hub without substantially increasing the first electrical load; and
a first NVM device electrically coupled to the first EN hub and a second NVM device electrically coupled to the second EN hub; and
a second EN hub assembly electrically coupled to the bus, the second EN hub assembly including at least:
a third EN hub electrically coupled to the second channel; and
a third and fourth NVM device electrically coupled to the third EN hub, wherein a volume address is assigned to each of the first, second, third, and fourth NVM devices;
wherein the first channel electrically drives only the first EN hub of the first EN hub assembly and the second channel electrically drives only the third EN hub of the second EN hub assembly.

### Claim 15 (depends on 14)

The apparatus of claim 14, wherein an identifier is assigned to each EN hub.

### Claim 16 (depends on 14)

The apparatus of claim 14, wherein each EN hub identifies at least one port number corresponding to the NVM devices electrically coupled to the EN hub and associates each identified port number with a respective volume address.

### Claim 17 (depends on 14)

The apparatus of claim 14 further comprising a NVM controller, wherein the NVM controller determines a topology for each of the first and second EN hub assemblies, the topology identifying at least one of ports to which the first and second EN hub assemblies are electrically coupled, a number of EN hubs in the first and second EN hub assemblies, a number of interface ports for each EN hub in the first and second EN hub assemblies, or a storage capacity for each NVM device included in the first and second EN hub assemblies.
