The I2C bus is a popular serial, two-wire interface used in many systems because of its low overhead. The two-wire interface minimizes interconnections so ICs have fewer pins, and the number of traces required on printed circuit boards is reduced. Capable of 100 KHz operation, each device connected to the bus is software addressable by a unique address with a simple Master/Slave protocol. The CoolRunner I2C Controller design contains an asynchronous microcontroller (μC) interface and provides I2C Master/Slave capability. It is intended to be used with a microcontroller (μC) or microprocessor (μP) as shown in Figure 1.