??? 11/04/08 16:50 Read: times |
#159647 - Token-passing requires explicit or arbitrated mast Responding to: ???'s previous message |
I have never said that you should run multiple masters without protocol synchronization.
But you do not get multiple masters to be synchronized unless they are asymetrical in some way. And the time to synchronize nodes is affected by the frequency of the arbitration loop. If you turn on 10 identical nodes, you have to figure out what nodes are on the cable, and allocate an initial "token" for the synchronization. If they start without any address in them, they would all start to send a message (without hearing that the message gets destroyed by everyone else). They would then all wait for an answer, fail and try again. Having a serial number in each unit to affect random delays do help but only on a small scale unless the delays are long in comparison to a message transmission. Collission detect capabilities - while not perfect - can greatly help to speed up this arbitration phase. Being able to hear a collision means that you can let the serial number (or noise on an ADC channel) create quite short delays where you have a good chance of establishing a token owner within a limited number of character send times. Then you can continue to pick up the remaining nodes and one-by-one and assign each node a unique address and/or time-slot for the following communication. And being able to hear collisions helps a node to figure out if it is broken - or alone - on a cable. Don't be so convinced that people have to shoot themselves in the foot. |