I2C is an integrated circuit, which serves as an interface between most standard parallel-bus micro controllers/microprocessors and the serial I2C-bus. These provides both master and slave functions.
Communication with the I2C-bus is carried out on a byte-wise basis .It converts the data from serial to parallel and from parallel to serial.
That means in transmitter mode it receives the data from micro controller/microprocessor serially and send it to the slaves parallel and when it is in receiving mode it receives data from slaves parallely and send it to the master serially.
I²C is a multi-master serial computer bus invented by Philips that is used to attach low-speed peripherals to a motherboard, embedded system, or cell phone. The name stands for Inter- Integrated Circuit and is pronounced I-squared-C. The I2C bus physically consists of 2 active wires and a ground connection.
The active wires, called SDA and SCL, are both bi-directional. SDA is the Serial Data line, and SCL is the Serial Clock line
Simulation: ModelSim XE III 6.4b.
Synthesis: XiLinx ISE 10.1.