IP Library Granted Patent US 11,308,021
Granted Patent B2
US 11,308,021 · App. 16/879,682 · Granted Apr 19, 2022

Methods and apparatus for using an addressable serial peripheral interface

Inventors: Frank Lane (Easton, PA); Enkhbayasgalan Gantsog (Newark, NJ)
Assignee: Mixcomm, Inc.
G06F13/4282
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,308,021
App. No.
16/879,682
Granted
Apr 19, 2022
Kind
B2
Abstract

Devices in an array of devices, coupled to a common SPI bus, are automatically assigned identifiers by an enumeration process. In some embodiments, the devices are coupled together in an enumeration daisy chain. The enumeration function is initiated, e.g., by a controller, with a single SPI transaction.

Claims (49)

1. A method of device identifier assignment, the method comprising:

detecting, at a first device in a daisy chain of devices, a signal indicating the start of a serial peripheral interface (SPI) transaction;

operating the first device to detect an amount of time between the start of the SPI transaction and a signal on a first identifier assignment pin of the first device; and

determining, at the first device, the device identifier assigned to the first device based on the detected amount of time between the start of the SPI transaction and the signal on the first identifier assignment pin of the first device.

2. The method of claim 1 , further comprising,

prior to detecting said signal indicating the start of a serial peripheral interface (SPI) transaction, operating the first device in the daisy chain of devices to receive a command used to put devices in an identifier assignment state of operation; and

wherein said first device is in said identifier assignment state of operation when said signal indicating the start of a serial peripheral interface (SPI) transaction is received.

3. The method of claim 2 , further comprising:

operating the first device to generate a signal on a second identifier assignment pin of the first device, said second identifier assignment pin of the first device being coupled to a first identifier assignment pin of a second device in the daisy chain of devices.

4. The method of claim 3 , wherein said command used to put devices in the identifier assignment state of operation is a broadcast signal, the method further comprising:

operating the second device in the daisy chain of devices to receive the command used to put devices in the identifier assignment state of operation.

5. The method of claim 4 , further comprising:

operating the second device to detect an amount of time between the start of the SPI transaction and the signal on the first identifier assignment pin of the second device received from the first device in the daisy chain of devices; and

determining, at the second device, the device identifier assigned to the second device based on the detected amount of time between the start of the SPI transaction and the signal on the first identifier assignment pin of the second device.

6. The method of claim 5 , wherein said device identifier assigned to the second device is one number higher than said device identifier assigned to the first device.

7. The method of claim 5 , further comprising:

operating the second device to generate a signal on a second identifier assignment pin of the second device, said second identifier assignment pin being coupled to a first identifier assignment pin of a third device in the daisy chain of devices.

8. The method of claim 7 , further comprising:

operating the third device in the daisy chain of devices to receive the command used to put devices in an identifier assignment state of operation at the same time the first and second devices receive the command.

9. The method of claim 8 , further comprising:

operating the third device to detect an amount of time between the start of the SPI transaction and the signal on the first identifier assignment pin of the third device received from the second device in the daisy chain of devices; and

determining, at the third device, the device identifier assigned to the third device based on the detected amount of time between the start of the SPI transaction and the signal received on the first identifier assignment pin of the third device.

10. The method of claim 9 , wherein said device identifier assigned to the third device is one number higher than said device identifier assigned to the second device.

11. The method of claim 1 ,

wherein said first and second pins of the first device are CHIP_ID pins of a serial peripheral interface;

wherein said signal indicating the start of a serial peripheral interface (SPI) transaction is a SPI_CSN signal communicated on an SPI_CSN pin of a SPI interface; and

wherein said command used to put devices in an identifier assignment state is communicated in broadcast signal.

12. An array of devices, the array of devices comprising:

a first device including:

a first input and output interface including i) a first input configured to receive a signal indicating a start of a serial peripheral interface (SPI) transaction, ii) a first identifier assignment pin and iii) a second identifier assignment pin; and

a first processor configured to:

detect a signal communicated on the first input indicating the start of a serial peripheral interface (SPI) transaction;

detect an amount of time between the start of the SPI transaction and a signal on a first identifier assignment pin of the first device; and

determine the device identifier assigned to the first device based on the detected amount of time between the start of the SPI transaction and the signal on the first identifier assignment pin of the first device.

13. The array of devices of claim 12 , further comprising:

a second device including:

a second input and output interface including i) a first input configured to receive a signal indicating a start of a serial peripheral interface (SPI) transaction, ii) a first identifier assignment pin coupled to the second identifier assignment pin of the first device and iii) a second identifier assignment pin; and

a second processor configured to:

detect a signal communicated on the first input of the second device indicating the start of a serial peripheral interface (SPI) transaction;

detect an amount of time between the start of the SPI transaction and a signal on the first identifier assignment pin of the second device; and

determine the device identifier assigned to the second device based on the detected amount of time between the start of the SPI transaction and the signal on the first identifier assignment pin of the second device.

14. The array of devices of claim 13 , wherein the first device further includes:

a first memory storing the device identifier assigned to the first device after the device identifier assigned to the first device is determined.

15. The array of devices of claim 14 , wherein the second device further includes:

a second memory storing the device identifier assigned to the second device after the device identifier assigned to the second device is determined.

16. A non-transitory computer readable medium including computer executable instructions which when executed by a processor of a first device cause the first device to perform the steps of:

detecting, at the first device in a daisy chain of devices, a signal indicating the start of a serial peripheral interface (SPI) transaction;

operating the first device to detect an amount of time between the start of the SPI transaction and a signal on a first identifier assignment pin of the first device; and

determining, at the first device, the device identifier assigned to the first device based on the detected amount of time between the start of the SPI transaction and the signal on the first identifier assignment pin of the first device.

Assignments (2)
SECURITY INTEREST Recorded Mar 5, 2026
From: SIVERS SEMICONDUCTORS, INC.
To: BOOTSTRAP EUROPE 4.0 SARL
Reel/Frame 073985/0194 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 4, 2020
From: LANE, FRANK; GANTSOG, ENKHBAYASGALAN
To: MIXCOMM, INC.
Reel/Frame 053697/0878 →
Continuity (2)
Provisional Application 62960103 · Jan 12, 2020
Related Publication 20210216492A1 · Jul 15, 2021