OpenCores
Issue List
Arbitration error in (vhdl) version 1.17 of the i2c_master_bit_ctrl #11
Closed awijsmuller opened this issue about 15 years ago
awijsmuller commented about 15 years ago

Hello Richard,

We updated our code to the latest available on the web: i2c_master_bit_ctrl (vhdl) 1.17

However, it appeared that arbitration is going wrong. We have a test case where 2 instantiations from the i2c_master tries to access the same serial eeprom. The master that starts first, aborts with an AL error at the moment that the second master is accessing the bus.

We switched back to version 1.14, and arbitration is OK now. The second master aborts due to an AL conditions, and the first master can finish the access properly.

If you wish, I can send you the waveform.

Regards, Arjen Wijsmuller

rherveille commented about 15 years ago

This might actually be the correct behaviour. Arbitration lost is asserted when a master wants to drive SDA high while another one pulls it low. The master wanting to drive high then loses arbitration.

If you send me the waveforms then we can check if this is the correct behaviour.

Richard

awijsmuller commented about 15 years ago

Richard,

I think this is a typically example of user error :-) I should have waited for the busy bit to negate (SR bit 6), before I started an access on the 2nd master.

Doing this, solves my problem. As far as I'm concerned, you can close this bug.

Regards, Arjen Wijsmuller

rherveille was assigned about 15 years ago
rherveille closed this about 15 years ago

Assignee
rherveille
Labels
Bug