I2C is a two-wire, bi-directional serial bus that provides a simple and efficient method of data exchange between devices. It is most suitable for applications requiring occasional communication over a short distance between many devices. The I2C standard is a true multi-master bus including collision detection and arbitration that prevents data corruption if two or more masters attempt to control the bus simultaneously.
The interface defines 3 transmission speeds:
* Normal: 100Kbps
* Fast: 400Kbps
* High speed: 3.5Mbps
I2C Master and Slave
Overview
Key Features
- Compatible with Philips I2C standard
- Multimaster Operation
- Software programmable clock frequency
- Clock Stretching and Wait state generation
- Software programmable acknowledge bit
- Interrupt or bit-polling driven byte-by-byte data-transfers
- Arbitration lost interrupt, with automatic switching from master to slave
- Called as Slave interrupt
- Start/Stop/Repeated Start generation
- Acknowledge bit generation/detection
- Start/Stop detection
- Bus busy detection
- Supports 7 and 10bit addressing mode in both master and slave modes
- Operates from a wide range of input clock frequencies
- Static synchronous design
- Fully synthesizable
Technical Specifications
Availability
contact the provider
Related IPs
- I2C Master / Slave Controller w/FIFO (AXI & AXI-Lite Bus)
- I2C Master / Slave Controller w/FIFO (AHB & AHB-Lite Bus)
- I2C Master / Slave Controller w/FIFO (APB Bus)
- Hs-Mode I2C Controller - 3.4 Mbps, Master / Slave w/FIFO
- A bridge to convert the slave SPI interface to the master I2C interface and vice versa
- I2C Bus Master / Slave Controller Interface with FIFO