IP Library Granted Patent US 9,158,459
Granted Patent B2
US 9,158,459 · App. 13/412,088 · Granted Oct 13, 2015

Managing a storage device using a hybrid controller

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,158,459
App. No.
13/412,088
Granted
Oct 13, 2015
Kind
B2
Abstract

Methods, apparatuses, and computer program products for managing a storage device using a hybrid controller are provided where the storage device comprises an internal peripheral component interconnect express (PCIe) interface to control solid state memory within the storage device. In particular embodiments, the storage device includes a first external interface configured to establish an external PCIe link and a second external interface configured to establish at least one of an external serial attached small computer system interface (SAS) link and an external serial advanced technology attachment (SATA) link. Embodiments include receiving from an external source, by the hybrid controller, a first command at the first external interface and a second command at the second external interface; and concurrently implementing, by the hybrid controller, the first command using a PCIe protocol and the second command using one of a SAS protocol and a SATA protocol.

Claims (44)

1. A method comprising:

by computer program instructions on a hybrid controller of a storage device,

detecting a failure of an external PCIe link between a source external to the storage device and a first external interface configured to establish an external PCIe link to the external source; and

in response to detecting the failure of the external PCIe link:

utilizing a second external interface to communicate with the external source over one of an external SAS link and an external SATA link;

suspending processing at the first external interface;

flushing any pending commands received from the first external interface; and

in response to flushing the pending commands from the first external interface, shutting down the storage device.

2. The method of claim 1 further comprising by computer program instructions on the hybrid controller of the storage device,

receiving from the external source, a first command at the first external interface;

receiving from the external source, a second command at the second external interface; and

concurrently implementing the first command using a PCIe protocol and the second command using one of a SAS protocol and a SATA protocol; wherein

the first command comprises a PCIe I/O command; and

the second command comprises a management command to access management data registers in the hybrid controller, the management data registers storing management data corresponding to the solid state memory.

3. The method of claim 1 wherein utilizing the second external interface to communicate with the external source over one of an external SAS link and an external SATA link includes transmitting via the second external interface, a message to the external source, the message indicating a failure of the external PCIe link.

4. An apparatus comprising an internal peripheral component interconnect express (PCIe) interface to control solid state memory within a storage device, the storage device including a hybrid controller, a first external interface and a second external interface, the first external interface configured to establish an external PCIe link, the second external interface configured to establish at least one of an external serial attached small computer system interface (SAS) link and an external serial advanced technology attachment (SATA) link, the hybrid controller comprising a computer processor and a computer memory operatively coupled to the computer processor, the hybrid controller configured to:

detect a failure of the external PCIe link; and

in response to detecting the failure of the external PCIe link:

utilize the second external interface to communicate with the external source over one of the external SAS link and the external SATA link;

suspend processing at the first external interface;

flush any pending commands received from the first external interface; and

in response to flushing the pending commands from the first external interface, shut down the storage device.

5. The apparatus of claim 4 wherein the hybrid controller is further configured to:

receive from the external source, a first command at the first external interface;

receive from the external source, a second command at the second external interface; and

concurrently implement the first command using a PCIe protocol and the second command using one of a SAS protocol and a SATA protocol; wherein

the first command comprises a PCIe I/O command; and

the second command comprises a management command to access management data registers in the hybrid controller, the management data registers storing management data corresponding to the solid state memory.

6. The apparatus of claim 4 wherein utilizing the second external interface to communicate with the external source over one of an external SAS link and an external SATA link includes transmitting via the second external interface, a message to the external source, the message indicating a failure of the external PCIe link.

7. A computer program product comprising a non-transitory computer readable medium, the computer readable medium including computer program instructions that when executed by a hybrid controller of a storage device cause the hybrid controller to carry out the steps of:

detecting a failure of an external PCIe link between a source external to the storage device and a first external interface configured to establish an external PCIe link to the external source; and

in response to detecting the failure of the external PCIe link:

utilizing a second external interface to communicate with the external source over one of an external SAS link and an external SATA link;

suspending processing at the first external interface;

flushing any pending commands received from the first external interface; and

in response to flushing the pending commands from the first external interface, shutting down the storage device.

8. The computer program product of claim 7 the computer readable medium including computer program instructions that when executed by a hybrid controller of a storage device cause the hybrid controller to carry out the steps of:

receiving from the external source, a first command at the first external interface;

receiving from the external source, a second command at the second external interface; and

concurrently implementing the first command using a PCIe protocol and the second command using one of a SAS protocol and a SATA protocol; wherein

the first command comprises a PCIe I/O command; and

the second command comprises a management command to access management data registers in the hybrid controller, the management data registers storing management data corresponding to the solid state memory.

9. The computer program product of claim 7 wherein utilizing the second external interface to communicate with the external source over one of an external SAS link and an external SATA link includes transmitting via the second external interface, a message to the external source, the message indicating a failure of the external PCIe link.

10. The computer program product of claim 7 wherein the computer readable medium comprises a storage medium.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 6, 2019
From: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE LTD.
To: LENOVO INTERNATIONAL LIMITED
Reel/Frame 050300/0947 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2016
From: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE. LTD.
To: LENOVO INTERNATIONAL LIMITED
Reel/Frame 037696/0522 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 10, 2014
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE. LTD.
Reel/Frame 034194/0111 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 5, 2012
From: CUDAK, GARY D.; HARDEE, CHRISTOPHER J.; HUMES, RANDALL C.; ROBERTS, ADAM
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 027806/0256 →