描述
I2C控制器违反了I 2 C总线规范tBUF; STA时序参数在快速模式下运行且控制器在384 kHz以上运行。
tBUF; STA定时参数时间是I2C时钟周期的一半
。解
I 2 C总线规范对t BUF的最低要求为1.3 us (STOP和START条件之间的总线空闲时间)。
当运行在384 kHz以上时,I2C控制器在快速模式下违反此规范。
I2C快速模式的最大SCL时钟频率指定为400 kHz。
该错误校正了与t BUF成正比的SCL的最大频率限制到384 kHz。
在此频率t BUF 最低指定值为1.3 us。
此问题仅影响使用I2C快速模式的器件。
注意 :SCL频率和t BUF 取决于PS中I2C控制器中的内部总线频率和分频器值。
有关详细编程指南,请参阅Zynq TRM。
有关详细编程指南,请参阅Zynq TRM。
影响 :
次要。
t BUF I2C控制器在400 kHz下工作的时间为1.25 us。
最新的I2C器件通常可以在BUF接受时间1.25我们。
解决方法:
这个问题有3种解决方法。
- 在快速模式下运行低于384 kHz的I2C。
- 假设在BUF 如果SCL频率为400 kHz,则设计中的1.25 us代替1.3 us。
- 对于单主系统,更新驱动程序以确保在STOP条件之后,事务不会在1.3 us之前启动。
受影响的配置:
所有Zynq器件均采用I2C快速模式。
受影响的器件版本:
全部,没有计划修复。
请参阅(Xilinx答复47916) – Zynq-7000 SoC芯片版本差异
解析度:
这是第三方勘误,这个问题不会修复。
没有回复内容