In the beginning the I2C bus was limited to the speed of 100 kbps. Now this I2C speed limitation is called the Standard-mode (Sm)
To keep up with the ever-increasing performance requirements of new ICs, Philip Semiconductors (now NXP Semiconductors) have reviewed the I2C frequency limitations. In 1992 the I2C bus speed was increased to 400 kbps, introducing the term Fast-mode (Fm).
Lately the I2C bus frequency has been increased several more times. At nowadays I2C specification defines the following I2C speeds for bidirectional bus:
|Standard-mode (Sm)||I2C speed up to 100 kbit/s|
|Fast-mode (Fm)||I2C speed up to 400 kbit/s|
|Fast-mode (Fm)||I2C speed up to 1 Mbit/s|
|High-speed mode (Hs-mode)||I2C speed up to 3.4 Mbit/s|
At February 2012 NXP Semiconductors(formerly Philips Semiconductors) released the revision 4 of I2C bus specification. In this revision NXP Semiconductors has introduced the unidirectional bus with Ultra Fast-mode (I2C speed up to 5 Mbit/s)
I2C Speed is NOT Just Frequency
Most vendors in their manuals specify maximum I2C bus frequency. By I2C frequency they mean the frequency on the SCL line during a single byte transmission. They don't mention the delays between successive bytes transmission. Sometimes the delays between bytes can be longer than the byte itself.