IP Library Granted Patent US 9,524,108
Granted Patent B2
US 9,524,108 · App. 14/473,689 · Granted Dec 20, 2016

System and method for providing personality switching in a solid state drive device

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,524,108
App. No.
14/473,689
Granted
Dec 20, 2016
Kind
B2
Abstract

A solid state drive (SSD) device includes a Peripheral Component Interconnect-Express (PCIe) interface, a non-volatile storage media, and a memory that stores code, the code including an Advanced Host Controller Interface (AHCI) controller, and a Non-Volatile Memory-Express (NVMe) controller. The SSD device is operable to select one of the AHCI controller and the NVMe controller to process data storage commands between the PCIe interface and the non-volatile storage media.

Claims (48)

1. A solid state drive (SSD) device comprising:

a Peripheral Component Interconnect-Express (PCIe) interface;

a non-volatile storage media; and

a memory that stores code, the code including:

an Advanced Host Controller Interface (AHCI) controller; and

a Non-Volatile Memory-Express (NVMe) controller;

wherein the SSD device is operable to select one of the AHCI controller and the NVMe controller to process data storage commands between the PCIe interface and the non-volatile storage media, and wherein the selected one of the AHCI controller and the NVMe controller is a default controller and the other one of the AHCI controller and the NVMe controller is a secondary controller.

2. The SSD device of claim 1 , further comprising:

a reversal detector module operable to:

detect that a host system coupled to the PCIe interface accesses the SSD device via a first driver associated with the default controller; and

provide an indication to the host system that the default controller is associated with the first default controller.

3. The SSD device of claim 2 , wherein in detecting that the host system accesses the SSD device via the first driver is based on a hardware detection.

4. The SSD device of claim 3 , wherein the hardware detection includes the reversal detector module further operable to detect that a pin #8 of a Socket ⅔ connector is pulled to a circuit high voltage level.

5. The SSD device of claim 2 , wherein in detecting that the host system accessed the SSD device via the first driver is based on a vendor specific command by the SSD device from the host system.

6. The SSD device of claim 2 , wherein the reversal detector module is further operable to:

detect that the host system accesses the SSD device via a second driver associated with the secondary controller; and

set the secondary controller to process data storage commands between the PCIe interface and the non-volatile storage media in response to detecting that the host system accesses the SSD device via the second driver.

7. The SSD device of claim 1 , wherein the SSD device is further operable provide an indication to a host system coupled to the PCIe interface that the select one of the AHCI controller and the NVMe controller processes data storage commands between the PCIe interface and the non-volatile storage media.

8. The SSD device of claim 7 , wherein the indication is provided based upon a hardware configuration of the SSD device.

9. The SSD device of claim 8 , wherein the hardware configuration includes a pin #6 of a Socket ⅔ connector that is pulled to a circuit ground.

10. A method comprising:

storing, on a memory of a solid state drive (SSD) device:

code for an Advanced Host Controller Interface (AHCI) controller; and

code for a Non-Volatile Memory-Express (NVMe) controller;

selecting one of the AHCI controller and the NVMe controller to process data storage commands between a Peripheral Component Interconnect-Express (PCIe) interface of the SSD device and a non-volatile storage media of the SSD device, wherein the select one of the AHCI controller and the NVMe controller is a default controller and the other one of the AHCI controller and the NVMe controller is a secondary controller.

11. The method of claim 10 , further comprising:

detecting, by a reversal detector module of the SSD device, that a host system coupled to the PCIe interface accesses the SSD device via a first driver associated with the default controller; and

providing, by the reversal detector module, an indication to the host system that the default controller is associated with the first default controller.

12. The method of claim 11 , wherein detecting that the host system accesses the SSD device is based on a hardware detection.

13. The method of claim 11 , wherein detecting that the host system accessed the SSD device is based on a vendor specific command from the host system.

14. The method of claim 10 , further comprising:

detecting, by the reversal detector module, that the host system accesses the SSD device via a second driver associated with the secondary controller; and

setting, by the reversal detector module, the secondary controller to process data storage commands between the PCIe interface and the non-volatile storage media in response to detecting that the host system accesses the SSD device via the second driver.

15. The method of claim 10 , further comprising:

providing, by the SSD device, an indication to a host system coupled to the PCIe interface that the select one of the AHCI controller and the NVMe controller processes data storage commands between the PCIe interface and the non-volatile storage media.

16. A non-transitory computer-readable medium including code for performing a method, the method comprising:

storing, on a memory of a solid state drive (SSD) device:

code for an Advanced Host Controller Interface (AHCI) controller; and

code for a Non-Volatile Memory-Express (NVMe) controller;

selecting one of the AHCI controller and the NVMe controller to process data storage commands between a Peripheral Component Interconnect-Express (PCIe) interface of the SSD device and a non-volatile storage media of the SSD device, wherein the select one of the AHCI controller and the NVMe controller is a default controller and the other one of the AHCI controller and the NVMe controller is a secondary controller.

17. The computer-readable medium of claim 16 , the method further comprising:

detecting, by a reversal detector module of the SSD device, that a host system coupled to the PCIe interface accesses the SSD device via a first driver associated with the default controller; and

providing, by the reversal detector module, an indication to the host system that the default controller is associated with the first default controller.

18. The computer-readable medium of claim 16 , the method further comprising:

detecting, by the reversal detector module, that the host system accesses the SSD device via a second driver associated with the secondary controller; and

setting, by the reversal detector module, the secondary controller to process data storage commands between the PCIe interface and the non-volatile storage media in response to detecting that the host system accesses the SSD device via the second driver.

19. The computer-readable medium of claim 16 , the method further comprising:

providing, by the SSD device, an indication to a host system coupled to the PCIe interface that the select one of the AHCI controller and the NVMe controller processes data storage commands between the PCIe interface and the non-volatile storage media.

Assignments (15)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL USA L.P.; ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
RELEASE OF REEL 034591 FRAME 0391 (TL) Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL PRODUCTS L.P.
Reel/Frame 040027/0719 →
RELEASE OF REEL 034590 FRAME 0731 (NOTE) Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL PRODUCTS L.P.
Reel/Frame 040027/0070 →
RELEASE OF REEL 034590 FRAME 0696 (ABL) Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL PRODUCTS L.P.
Reel/Frame 040016/0964 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (TERM LOAN) Recorded Dec 10, 2014
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 034591/0391 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (NOTES) Recorded Dec 10, 2014
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 034590/0731 →
SUPPLEMENT TO PATENT SECURITY AGREEMENT (ABL) Recorded Dec 10, 2014
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 034590/0696 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2014
From: HIA, SWEE CHAY; FARHAN, MUNIF M.
To: DELL PRODUCTS, LP
Reel/Frame 033714/0679 →