IP Library Granted Patent US 10,229,078
Granted Patent B2
US 10,229,078 · App. 15/109,710 · Granted Mar 12, 2019

Multi-master bus

Inventors: Alexander Abraham Cornelius Van Der Zande (Eindhoven, NL); Jurgen Mario Vangeel (Eindhoven, NL)
Assignee: PHILIPS LIGHTING HOLDING B.V.
G06F13/364G06F13/4282G06F13/4291
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,229,078
App. No.
15/109,710
Granted
Mar 12, 2019
Kind
B2
Abstract

Multiple master modules are connected to a bus, each having bus communication logic for initiating a transaction over the bus. The bus communication logic is able to detect when the bus is busy (or apparently busy), and in response will wait before initiating a transaction of its own. Further, a distributed reset sub-system is provided, comprising an instance of a reset mechanism at each of a plurality of the master modules. Each reset mechanism recognizes a timeout condition indicative of the detected busy state being due to error, and in response performs a staged reset. This reset process first attempts a local reset which resets the respective bus communication logic of its respective master module. If the local reset fails to clear the error, the staged reset process then attempts one or more further resets to reset bus communication logic of one or more other modules connected to the bus.

Claims (29)

1. A system comprising:

a bus;

multiple master modules connected to the bus, each comprising respective bus communication logic operable to initiate a transaction over the bus, the bus communication logic being configured to detect a busy state of the bus, and in response to refrain from initiating a transaction until the busy state is cleared; and

a distributed reset sub-system comprising an instance of a reset mechanism at each respective one of a plurality of the master modules, the reset mechanism at each respective master module being configured to recognize a timeout condition indicative of the detected busy state being due to error, and to perform a staged reset in response to recognizing the timeout condition;

wherein the staged reset first attempts a local reset which resets the respective bus communication logic of the respective master module, and determines whether the local reset clears the error, and if the local reset fails to clear the error, subsequently attempts one or more further resets to reset bus communication logic of one or more other modules connected to the bus.

2. The system of claim 1 , wherein the bus comprises a cable between at least some of said master modules.

3. The system of claim 2 , wherein the cable comprises an unshielded cable.

4. The system of claim 2 , wherein at least some of the master modules each form part of a respective luminaire, being configured as a controller of the respective luminaire.

5. The system of claim 1 wherein the one or more further resets comprise at least: a reset which resets the bus communication logic of a plurality of the other modules connected to the bus.

6. The system of claim 5 wherein the one or more further resets comprise at least: a reset which resets the bus communication logic of all of the other modules connected to the bus.

7. The system of claim 1 , wherein the one or more further resets comprise at least: a hard reset of one or more of the other modules connected to said bus, the hard reset comprising a power reset and/or a reset via a pin of each module being reset.

8. The system of claim 1 , wherein the one or more further resets comprise at least: a reset which resets one or more dumb modules connected to the bus; the dumb modules being either slave modules, or master modules not equipped with an instance of said reset mechanism.

9. The system of claim 1 , wherein the staged reset comprises at least a three-stage reset, the further resets comprising, in turn:

a soft reset which resets the bus communication logic of one or more of the other modules connected to the bus, by sending a reset signal over the bus; and

subsequently, if the soft reset fails to clear the error, a hard reset of one or more of the other modules connected to said bus, wherein the hard reset comprises a power reset and/or a reset via a reset pin of each module being reset.

10. The system of claim 9 , wherein the hard reset is signaled over a control line being separate from said bus.

11. The system of claim 1 , wherein each of the master modules comprises a processor and the reset mechanism is implemented in software run on the processor.

12. The system of claim 1 , wherein the reset mechanism of each respective master module is configured to use a respective unique timeout value to recognize said timeout condition, being unique amongst the multiple master modules connected to the bus.

13. The system of claim 12 , wherein each of the respective unique timeout values is calculated using a number appearing in an address or serial number of the respective master module.

14. A first master module for use as one of multiple master modules connected to a bus, each comprising bus communication logic operable to initiate a transaction over the bus; wherein:

the respective bus communication logic of the first master module is configured to detect a busy state of the bus, and in response to refrain from initiating a transaction over the bus until the busy state is cleared;

the first master module comprises a reset mechanism configured to recognize a timeout condition indicative of the detected busy state being due to error, and to perform a staged reset in response to recognizing the timeout condition; and

the staged reset first attempts a local reset which resets the bus communication logic of the first master module, and determines whether the local reset clears the error, and if the local reset fails to clear the error, subsequently attempts one or more further resets to reset bus communication logic of one or more other modules connected to said bus.

15. A computer program product for operating at least a first master module being one of multiple master modules connected to a bus, each comprising bus communication logic operable to initiate a transaction over the bus; the computer program product comprising code embodied on a computer-readable medium and configured so as when executed on a processor of the first master module to perform operations of:

implementing at least part of the bus communication logic of the first master module, including detecting a busy state of the bus, and in response causing the bus communication logic to refrain from initiating a transaction over the bus until the busy state is cleared;

recognizing a timeout condition indicative of the detected busy state being due to an error; and

performing a staged reset in response to recognizing the timeout condition;

wherein the staged reset first attempts a local reset which resets the bus communication logic of the first master module, and determines whether the local reset clears the error, and if the local reset fails to clear the error, subsequently attempts one or more further resets to reset bus communication logic of one or more other modules connected to said bus.

16. The system of claim 1 , wherein prior to said subsequently attempted operation, each of the plurality of master modules sequentially attempts a local reset to reset the respective bus communication logic; wherein upon a successful clearing of the error, the staged reset terminates.

Assignments (3)
CHANGE OF NAME Recorded Oct 28, 2019
From: PHILIPS LIGHTING HOLDING B.V.
To: SIGNIFY HOLDING B.V.
Reel/Frame 050837/0576 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 10, 2019
From: KONINKLIJKE PHILIPS N.V.
To: PHILIPS LIGHTING HOLDING B.V.
Reel/Frame 049712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 5, 2016
From: VAN DER ZANDE, ALEXANDER ABRAHAM CORNELIUS; VANGEEL, JURGEN MARIO
To: KONINKLIJKE PHILIPS N.V.
Reel/Frame 039074/0161 →
Priority Claims (1)
EP 14150702 · Jan 10, 2014 · regional
Continuity (1)
Related Publication 20160328346A1 · Nov 10, 2016