From Beginner to Expert in I2C: The Historical Origins and Comprehensive Overview of I2C

0. Introduction

The topic of PCIe is too vast, so today we will discuss a simpler and lighter topic: I2C.

All articles on I2C will be included in the collection “In-Depth Discussion on I2C”. We welcome your reviews. By reading this collection, you will become an I2C expert.

From Beginner to Expert in I2C: The Historical Origins and Comprehensive Overview of I2C

For those who need I2C learning materials and standards (in PDF format), please follow our WeChat public account “Hardware Engineer’s Handbook” and reply “I2C” in the dialog box to obtain the download link for the standards. Among them, the document “I2C_Spec_Rev7_2021_UM10204.pdf” is the latest I2C specification, which we hope everyone will read carefully.

Almost all electronic devices contain an I2C bus. This low-speed serial bus is almost a prerequisite for every hardware engineer. Once understood, it can be migrated to all other serial buses. Therefore, the I2C bus is simple yet not insignificant.

I2C (Inter-Integrated Circuit), literally meaning between integrated circuits, is a serial communication bus invented by Philips (now NXP Semiconductors) in the 1980s, aimed at solving the complex interconnection of numerous integrated circuits within televisions, allowing inter-chip communication with just two wires. The correct pronunciation of I2C is “I-squared-C”, not “I-two-C”.

1. Historical Origins

1982: Philips first released the I2C bus protocol. The original I2C system was a simple internal bus system primarily used to control chips produced by Philips, with a maximum speed of 100 kbit/s. The inventors of I2C were Philips engineers Ad P.M.M. Moelands and Herman Schutte, who worked on it in 1980. The internal development name of I2C was initially COMIC, later changed to I2C.

Purpose: Early computers were large and had complex wiring. To solve the data transmission issues between the microcontroller and numerous peripheral devices such as PLL synthesizers, non-volatile memory, audio processors, video processors, and display screens within televisions, Philips invented I2C. This design greatly simplified hardware circuits, reduced the number of chip pins, PCB traces, and connecting wires, and lowered the size, power consumption, and cost of IC chips.

Patents and Licensing: Philips developed chips with I2C functionality and sold them while also licensing the I2C patent technology to other chip manufacturers. As of October 1, 2006, there are no patent fees for using the I2C protocol, but manufacturers still need to pay to obtain I2C slave device addresses.

2. Version Information

The I2C protocol has undergone multiple revisions and developments to meet the demands for higher speeds and lower power consumption. The following diagram shows the history of I2C version changes.

From Beginner to Expert in I2C: The Historical Origins and Comprehensive Overview of I2C

1. Original Version (1982):

Maximum Speed:100 kbit/s.

Main Use:Control of chips produced by Philips.

2. Version 1.0 (1992):

New: Fast-mode, with a bit rate of up to 400 kbit/s, and backward compatibility with the standard mode (0-100 kbit/s).

New: 10-bit addressing mode, accommodating up to 1008 nodes.

Removed: Content on software programming of slave addresses and detailed descriptions of low-speed mode.

3. Version 2.0 (1998):

The I2C bus became a world standard, licensed to over 50 companies and applied in over 1000 different ICs.

New: High-speed mode, with a bit rate of up to 3.4 Mbit/s, and backward compatibility with fast mode and standard mode.

Support for low-voltage devices at 2V or lower, while being compatible with high-voltage devices.

Removed the 0.6V/6mA requirement for fast mode output stages.

Added new device usage related to bus voltage levels instead of fixed levels, and included applications for bidirectional level shifters.

4. Version 2.1 (2000): Update to the I2C bus specification.

5. Version 3 (June 19, 2007):

Introduced Fast-mode Plus, increasing drive strength by 10 times, data rate to 1 Mbit/s, while maintaining backward compatibility with fast mode and standard mode.

6. Subsequent Versions:

Fast-mode Plus: 1 Mbit/s.

Ultra Fast-mode: 5 Mbit/s.

Other revisions such as V4 (February 13, 2012), V5 (October 9, 2012), V6 (April 4, 2014), mainly involve updates to user manuals and detail corrections.

3. I2C Speeds

The speed modes of the I2C bus include: Standard-mode, Fast-mode, Fast-mode Plus, High-speed mode, Ultra Fast-mode, with the corresponding speeds shown in the table below:

From Beginner to Expert in I2C: The Historical Origins and Comprehensive Overview of I2C

From Beginner to Expert in I2C: The Historical Origins and Comprehensive Overview of I2C

4. Characteristics of I2C:

Two-wire System: Communication is conducted using only two wires: the serial data line (SDA) and the serial clock line (SCL).

Multi-Master/Slave Architecture: Allows one master device and multiple slave devices, or multiple masters and multiple slaves to coexist on the same bus.

Half-Duplex: Data transmission is half-duplex, with only one device transmitting data at a time.

Synchronous Communication: Both parties communicate under the same clock, usually provided by the master device.

Open-Drain Output: The SDA and SCL lines typically use open-drain outputs, requiring external pull-up resistors to ensure stable logic high levels.

Addressing: The master device selects the slave device to communicate with by sending the address of the slave device, commonly using 7-bit and 10-bit addressing modes.

Low-Speed Applications: Widely used for connecting low-speed peripherals such as sensors, memory, real-time clocks, etc.

Derived Technologies: SMBus (System Management Bus) and PMBus (Power Management Bus) are subsets of I2C, defining stricter usage specifications to improve robustness and interoperability. MIPI I3C provides backward compatibility with I2C, higher speeds, and lower power consumption.

5. Derived Technologies

The success of I2C has also spawned many derived protocols, such as SMBus (System Management Bus) and PMBus (Power Management Bus), which add stricter specifications and functionalities based on I2C to meet specific application needs, such as power management and system health monitoring. MIPI I3C also provides backward compatibility with I2C and offers higher speeds and lower power consumption.

6. A Thought-Provoking Conclusion

The importance of I2C (Inter-Integrated Circuit) lies mainly in its design philosophy and the practical benefits it brings, making it a widely adopted communication protocol in embedded systems and various electronic devices.

In the upcoming articles, we will delve deeper and comprehensively learn and master I2C.

Stay tuned for the next article: “From Beginner to Expert in I2C Part Two: The Hardware Architecture of I2C Devices”

7. References:

For those who need the following references (I2C standards), please follow our WeChat public account “Hardware Engineer’s Handbook” and reply “I2C” in the dialog box to obtain the download link for the standards. Among them, the document “I2C_Spec_Rev7_2021_UM10204.pdf” is the latest I2C specification, which we hope everyone will read carefully.

From Beginner to Expert in I2C: The Historical Origins and Comprehensive Overview of I2C

File shared via Baidu Cloud

Leave a Comment