EmbeddedRelated.com
Forums
The 2024 Embedded Online Conference

Questions:I2C arbitration under special cases

Started by duge...@gmail.com September 5, 2006
Does anybody know what  does Philips specification on I2C mean when
saying:

" Masters must send repeated Start and Stop conditions at the same
position in the format frame. In other words, arbitration isn't allowed



between:
1. A repeated START condition and a data bit.
2. A STOP condition and a data bit.
3. A repeated START condition and a STOP condition "


What the hell mean "arbitration isn't allowed"?
WHO wins? Is still the wired-and the solution? If there are two
masters.one sends repeated START ,another sends STOP conditions.Does it

mean a low level on SDA bus finally?Is it allowed?


Thank you! I need to understand this!!!

duge0413@gmail.com wrote:
> Does anybody know what does Philips specification on I2C mean when > saying: > > " Masters must send repeated Start and Stop conditions at the same > position in the format frame. In other words, arbitration isn't allowed > > > > between: > 1. A repeated START condition and a data bit. > 2. A STOP condition and a data bit. > 3. A repeated START condition and a STOP condition " > > > What the hell mean "arbitration isn't allowed"? > WHO wins? Is still the wired-and the solution? If there are two > masters.one sends repeated START ,another sends STOP conditions.Does it > > mean a low level on SDA bus finally?Is it allowed? > > > Thank you! I need to understand this!!! >
Not Sure. But a low always wins since you can not force a logic high.
<duge0413@gmail.com> schrieb

> > What the hell mean "arbitration isn't allowed"? > WHO wins? Is still the wired-and the solution? If there are two > masters.one sends repeated START ,another sends STOP conditions.Does it >
The intention of a repeated start condition is to allow a master to keep talking on the bus without the risk of someon else getting control over the bus between two messages. If one master is talking (whether or not it has previously won an arbitration phase) no other master devices are allowed to send anything on the bus until the bus is free again i.e. a stop was sent. In other words masters have to detect a busy bus and are not allowed to send data at any time regardles of bus activity. A typical application is a "Read-After-Restart" applied on a EEPROM where a master first writes an address and then uses a repeated start condition to read back the requested data. In this case it would be fatal if an arbitration was allowed during this second addressing phase and the atomic communication would be interrupted by another master requesting a different data chunk from the same EEPROM. Thus, to answer your question, there shouldn't be a stray stop condition coming from another device. /Roland
I see.Thanks
Roland Zitzke =E5=86=99=E9=81=93=EF=BC=9A

> <duge0413@gmail.com> schrieb > > > > > What the hell mean "arbitration isn't allowed"? > > WHO wins? Is still the wired-and the solution? If there are two > > masters.one sends repeated START ,another sends STOP conditions.Does it > > > > The intention of a repeated start condition is to allow a master to keep > talking on the bus without the risk of someon else getting control over t=
he
> bus between two messages. > If one master is talking (whether or not it has previously won an > arbitration phase) no other master devices are allowed to send anything on > the bus until the bus is free again i.e. a stop was sent. > In other words masters have to detect a busy bus and are not allowed to s=
end
> data at any time regardles of bus activity. > A typical application is a "Read-After-Restart" applied on a EEPROM where=
a
> master first writes an address and then uses a repeated start condition to > read back the requested data. > In this case it would be fatal if an arbitration was allowed during this > second addressing phase and the atomic communication would be interrupted=
by
> another master requesting a different data chunk from the same EEPROM. > > Thus, to answer your question, there shouldn't be a stray stop condition > coming from another device. >=20 > /Roland

The 2024 Embedded Online Conference