IP Library Granted Patent US 11,379,280
Granted Patent B2
US 11,379,280 · App. 16/737,547 · Granted Jul 5, 2022

Methods and systems for managing communication lanes between a universal flash storage (USF) device and a USF host

Inventors: Rengaraja Sudarmani (Chennai, IN); Dipakkumar Prafulkumar Abhani (Bangalore, IN); Neethu Acha Cherian (Kerala, IN)
Assignee: SAMSUNG ELECTRONICS CO., LTD.
G06F9/546G06F9/4418G06F9/542G06F13/1621G06F13/20
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 11,379,280
App. No.
16/737,547
Granted
Jul 5, 2022
Kind
B2
Abstract

A method for managing communication between a Universal Flash Storage (UFS) device and a UFS host includes determining at least one path of payload data flow along at least one of a transmission lane of the UFS host and a transmission lane of the UFS device. Based on the determined at least one path of the payload data flow, the method includes initiating, by operating at least one of the UFS host and the UFS device, at least one Hibernate state entry action. Further, the method includes initiating, by operating the at least one of the UFS host and the UFS device, at least one Hibernate state exit action after completion of transfer of a pre-determined number of data frames of the payload data between the UFS host and the UFS device.

Claims (72)

1. A method for managing communication between a Universal Flash Storage (UFS) device and a UFS Host, the method comprising:

determining, by a device, at least one path of payload data flow along at least one of a transmission lane of the UFS host and a transmission lane of the UFS device, wherein the device is at least one of the UFS host and the UFS device;

initiating, by the device, at least one Hibernate state entry action based on the determined at least one path of the payload data flow between the UFS host and the UFS device; and

initiating, by the device, at least one Hibernate state exit action after completion of transfer of a pre-determined number of data frames of the payload data between the UFS host and the UFS device;

wherein determining the at least one path of the payload data flow includes:

scheduling, by the UFS host, at least one command, wherein the at least one command includes at least one of at least one write command and at least one read command; and

processing, by the UFS host, the at least one scheduled command to determine the at least one path of the payload data flow,

wherein the at least one path of the payload data flow is determined along the transmission lane of the UFS host for the at least one write command and the at least one path of the payload data flow is determined along the transmission lane of the UFS device for the at least one read command.

2. The method of claim 1 , wherein the transmission lane of the UFS host is formed by a connection established between a transmission unit (Tx) of the UFS host and a reception unit (Rx) of the UFS device.

3. The method of claim 1 , wherein the transmission lane of the UFS device is formed by a connection established between a transmission unit (Tx) of the UFS device and a reception unit (Rx) of the UFS host.

4. The method of claim 1 , wherein initiating the Hibernate state entry action includes:

switching the transmission lane of the UFS host to the Hibernate state on determining the at least one path of the payload data flow is along the transmission lane of the UFS device; and

switching the transmission lane of the UFS device to the Hibernate state on determining the at least one path of the payload data flow is along the transmission lane of the UFS host.

5. The method of claim 4 , wherein switching the transmission lane of the UFS host to the Hibernate state includes:

transmitting, by the UFS host, a power mode change request (‘PMC.REQ’) to the UFS device after sending the at least one read command to the UFS device;

generating, by the UFS device, a PMC confirmation (‘PMC.CNF’) in response to the ‘PMC.REQ’ received from the UFS host, wherein the ‘PMC.CNF’ is transmitted to the UFS host by the UFS device;

switching, by the UFS device, the Rx of the UFS device to the Hibernate state on generating the ‘PMC.CNF’ in response to the ‘PMC.REQ’ received from the UFS host; and

switching, by the UFS host, the Tx of the UFS host to the Hibernate state on receiving the ‘PMC.CNF’ from the UFS device.

6. The method of claim 4 , wherein switching the transmission lane of the UFS device to the Hibernate state includes:

decoding, by the UFS device, the at least one write command received from the UFS host;

transmitting, by the UFS device, a Ready to Transfer UFS Protocol Information Unit (‘RTT UPIU’) to the UFS host based on the decoding of the at least one write command;

transmitting, by the UFS device, a ‘PMC.REQ’ to the UFS host after transmitting the ‘RTT UPIU’;

generating, by the UFS host, a ‘PMC.CNF’ in response to the ‘PMC.REQ’ received by the UFS device, wherein the ‘PMC.CNF’ is transmitted to the UFS device by the UFS host;

switching, by the UFS host, the Rx of the UFS Host to the Hibernate state on generating the ‘PMC.CNF’ in response to the ‘PMC.REQ’ received from the UFS device; and

switching, by the UFS device, the Tx of the UFS device to the Hibernate state on receiving the ‘PMC.CNF’ from the UFS Host.

7. The method of claim 1 , further comprising processing, by the UFS device, the scheduled at least one command to determine the at least one path of the payload data flow.

8. The method of claim 1 , wherein initiating the at least one Hibernate state exit action includes:

exiting the Hibernate state of the transmission lane of the UFS host after completion of transfer of the pre-determined number of data frames of the payload data; and

exiting the Hibernate state of the transmission lane of the UFS device after completion of transfer of the pre-determined number of data frames of the payload data.

9. The method of claim 8 , wherein exiting the Hibernate state of the transmission lane of the UFS host includes:

receiving, by the UFS host, the payload data from the UFS device after switching the Tx of the UFS host to the Hibernate state;

enabling, by the UFS host, the Tx of the UFS Host to exit the Hibernate state after completion of reception of the pre-determined number of data frames of the payload data from the UFS device,

wherein the Tx of the UFS host is enabled to exit the Hibernate state for sending acknowledgment frames (‘ACK’ frames) to the UFS device to acknowledge reception of the pre-determined number of data frames of the payload data from the UFS device; and

enabling, by the UFS device, the Rx of the UFS device to exit the Hibernate after completion of transfer of the pre-determined number of data frames of the payload data to the UFS host.

10. The method of claim 9 , further comprising:

detecting, by the UFS host, at least one error in the payload data flow before receiving the pre-determined number of data frames of the payload data from the UFS device;

enabling, by the UFS host, the Tx of the UFS host to exit the Hibernate state based on the detected at least one error; and

enabling, by the UFS device, the Rx of the UFS device to exit the Hibernate state based on the detected at least one error.

11. A method for reducing power consumption in a Universal Flash Storage (UFS) system including a UFS host and a UFS device, the method comprising:

detecting, by a device, a path of payload data flow, wherein the device is at least one of the UFS host and the UFS device;

switching, by the device, a transmission lane of the UFS host to a Hibernate state on determining that the path of the payload data flow is along a transmission lane of the UFS device;

exiting, by the device, from the Hibernate state of the transmission lane of the UFS host after completion of transfer of a pre-determined number of data frames of the payload data;

switching, by the device, the transmission lane of the UFS device to the Hibernate state on determining that the path of the payload data flow is along the transmission lane of the UFS host; and

exiting, by the device, from the Hibernate state of the transmission lane of the UFS device after completion of transfer of a pre-determined number of data frames of the payload data.

12. A Universal Flash Storage (UFS) system comprising:

a device, wherein the device is at least one of a UFS host and a UFS device, wherein the device is configured to:

determine at least one path of payload data flow along at least one of a transmission lane of the UFS host and a transmission lane of the UFS device;

initiate at least one Hibernate state entry action based on the determined at least one path of the payload data flow;

initiate at least one Hibernate state exit action after completion of transfer of a pre-determined number of data frames of the payload data between the UFS host and the UFS device;

switch the transmission lane of the UFS host to the Hibernate state on determining the at least one path of the payload data flow is along the transmission lane of the UFS device; and

switch the transmission lane of the UFS device to the Hibernate state on determining the at least one path of the payload data flow is along the transmission lane of the UFS host.

13. The UFS system of claim 12 , wherein the transmission lane of the UFS host is formed by a connection established between a transmission unit (Tx) of the UFS host and a reception unit (Rx) of the UFS device.

14. The UFS system of claim 12 , wherein the transmission lane of the UFS device is formed by a connection established between a transmission unit (Tx) of the UFS device and a reception unit (Rx) of the UFS host.

15. The UFS system of claim 12 , wherein the UFS host is further

configured to:

schedule at least one command, wherein the at least one command includes at least one of at least one write command and at least one read command; and

process the at least one command to determine the at least one path of the payload data flow,

wherein the path of the payload data flow is determined along the transmission lane of the UFS host for the at least one write command and the path of the payload data flow is determined along the transmission lane of the UFS device for the at least one read command.

16. The UFS system of claim 12 , wherein the device is further configured to:

exit the Hibernate state of the transmission lane of the UFS host after completion of transfer of the pre-determined number of data frames of the payload data; and

exit the Hibernate state of the transmission lane of the UFS device after completion of transfer of the pre-determined number of data frames of the payload data.

17. The UFS system of claim 16 , wherein the UFS host is further configured to:

receive the payload data from the UFS device after switching the Tx of the UFS host to the Hibernate state; and

enable the Tx of the UFS host to exit the Hibernate state after completion of reception of the pre-determined number of data frames of the payload data from the UFS device, wherein the Tx of the UFS host is enabled to exit the Hibernate state for sending acknowledgment frames (‘ACK’ frames) to the UFS device to acknowledge reception of the pre-determined number of data frames of the payload data from the UFS device.

18. The UFS system of claim 17 , wherein the UFS device is further configured to:

enable the Rx of the UFS device to exit the Hibernate state after completion of transfer of the pre-determined number of data frames of the payload data to the UFS host.

19. The UFS system of claim 17 , wherein the UFS host is further configured to:

detect at least one error in the payload data flow before receiving the pre-determined number of data frames of the payload data from the UFS device; and

enable the Tx of the UFS host to exit the Hibernate state.

20. The UFS system of claim 16 , wherein the UFS device is further configured to:

receive the payload data from the UFS host after switching the Tx of the UFS device to the Hibernate state; and

enable the Tx of the UFS device to exit the Hibernate state after completion of reception of the pre-determined number of data frames of the payload data from the UFS host, wherein the Tx of the UFS device is enabled to exit the Hibernate state for sending acknowledgment frames to the UFS host to acknowledge reception of the pre-determined number of data frames of the payload data from the UFS host.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 8, 2020
From: SUDARMANI, RENGARAJA; ABHANI, DIPAKKUMAR PRAFULKUMAR; CHERIAN, NEETHU ACHA
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 051454/0111 →
Priority Claims (1)
IN 201941016174 · Apr 24, 2019 · national
Continuity (1)
Related Publication 20200341825A1 · Oct 29, 2020
Cited By (1)
US 12,386,509