IP Library Granted Patent US 10,554,617
Granted Patent B2
US 10,554,617 · App. 16/109,483 · Granted Feb 4, 2020

Device identifier selection

Inventors: Yosi Pinto (Kfar Vradim, IL); Eitan Mardiks (Ra'ananna, IL)
Assignee: SANDISK IL LTD.
H04L61/20G06F13/4247G06F15/177
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 10,554,617
App. No.
16/109,483
Granted
Feb 4, 2020
Kind
B2
Abstract

A method includes receiving an enumeration message via a host interface of a device that is operatively coupled to a host device and to one or more other devices. The method includes identifying the enumeration message as a command originated by the host device or as a response message from one of the other devices. In response to identifying the enumeration message as a command, an enumeration response message is sent to the host device. The enumeration response message indicates a distinctive device identifier value. The method also includes, in response to identifying the enumeration message as a response message from one of the other devices, reading from the response message an identifier value used by such other device and at least temporarily storing this identifier value at the device to enable the device to select the distinctive device identifier value.

Claims (26)

1. A device adapted to be operatively coupled to a host device as well as to other one or more devices, the device comprising:

a host interface; and

a controller coupled to the host interface, wherein the controller is configured to:

select a distinctive device identifier value different from any identifier value which any of the other one or more devices have indicated as being used,

receive an enumeration message via the host interface and to identify the received enumeration message as a command originated by the host device or as a response message from one of the other one or more devices,

in response to identifying the received enumeration message as a command, selectively initiate sending an enumeration response message to the host device, the enumeration response message indicating the distinctive device identifier value, and

in response to identifying the enumeration message as a response message from one of the other one or more devices, read an identifier value used by such other device of the other one or more devices from the response message and to at least temporarily store the identifier value to enable the device to select its distinctive device identifier value.

2. The device of claim 1 , further comprising a non-volatile memory and wherein after selecting the distinctive device identifier value the controller is responsive to memory access requests that include the distinctive device identifier value to provide access to the non-volatile memory.

3. The device of claim 1 , further comprising a wireless transceiver coupled to the controller, and wherein the controller is configured to provide transmission content received from the host device via the host interface to the wireless transceiver.

4. The device of claim 1 , further comprising a used identifier value storage accessible to the controller, and wherein the controller is configured to store the identifier value read from the response message at least temporarily to the used identifier value storage.

5. The device of claim 4 , wherein the controller is configured to select the distinctive device identifier value to be distinct from each used identifier value that is stored at the used identifier value storage.

6. The device of claim 5 , wherein the controller is configured to accumulate multiple used identifier values at the used identifier storage.

7. The device of claim 5 , wherein the controller is configured to use a most recently stored used identifier value at the used identifier value storage as a threshold value that defines an allowed identifier range of values and to select the distinctive device identifier value to be within the allowed identifier range of values.

8. The device of claim 5 , wherein the controller is configured to generate the distinctive device identifier message by adding an offset value to a most recently stored used identifier value at the used identifier value storage to generate a result that is greater than any identifier value which any of the other devices have indicated as being used.

9. The device of claim 5 , wherein the controller is configured to replace a stored used identifier value at the used identifier value storage with the identifier value from the response message.

10. The device of claim 1 , wherein the controller is configured to select the distinctive device identifier value to be distinct from any used identifier value in the response message in response to identifying the enumeration message as a response message.

11. The device of claim 10 , wherein the controller is further configured to, in response to identifying the enumeration message as a response message when the host interface has a second device position on a communication path and the response message originates from a first device having a first device position along the communication path:

generate a second response message that includes each used identifier value identified by the response message and that includes the distinctive device identifier value; and

send the second response message along the communication path to the host device.

12. The device of claim 11 , wherein the response message further includes a used identifier value of any of the other devices that has a corresponding position on the communication path between the first device position and the second device position.

13. The device of claim 11 , wherein the controller is configured to generate the second response message by adding the distinctive device identifier value to a first unused field of a set of device identifier fields in the response message, and wherein the controller is configured to send the second response message by forwarding the response message including the distinctive device identifier value along the communication path to the host device.

14. The device of claim 10 , wherein the controller is configured to use a received used identifier value as a threshold value that defines an allowed identifier range of values and to select the distinctive device identifier value to be within the allowed identifier range of values.

15. The device of claim 1 , wherein the enumeration response message include cyclic redundancy check (CRC).

16. The device of claim 1 , wherein the command is forwarded without sending the enumeration response message in response to the command indicating one or more recipients but not indicating the device as a recipient.

17. The device of claim 1 , wherein, after selecting the distinctive device identifier value, the command is forwarded without sending the enumeration response message in response to the command not specifically identifying any recipients.

18. The device of claim 1 , wherein the device and the other devices are coupled to a memory device interface of the host device.

Assignments (5)
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
PARTIAL RELEASE OF SECURITY INTERESTS Recorded Apr 25, 2025
From: JPMORGAN CHASE BANK, N.A., AS AGENT
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 071382/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 24, 2024
From: WESTERN DIGITAL ISRAEL, LTD.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 069267/0794 →
CHANGE OF NAME Recorded Aug 21, 2020
From: SANDISK IL LTD
To: WESTERN DIGITAL ISRAEL LTD
Reel/Frame 053574/0513 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 3, 2019
From: PINTO, YOSI; MARDIKS, EITAN
To: SANDISK IL LTD.
Reel/Frame 049353/0919 →
Continuity (4)
Continuation 14296124 · Jun 4, 2014
Division 13758393 · Feb 4, 2013
Division 12509832 · Jul 27, 2009
Related Publication 20190007367A1 · Jan 3, 2019