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 Controller IP- Master / Slave, Parameterized FIFO, AXI Bus
- I2C Controller IP- Master / Slave, Parameterized FIFO, AHB Bus
- I2C Controller IP- Master / Slave, Parameterized FIFO, APB Bus
- I2C Controller IP – Master / Slave, Parameterized FIFO, Hs-Mode (3.4 Mbps) AXI/AHB/APB/Avalon Buses
- A bridge to convert the slave SPI interface to the master I2C interface and vice versa
- I2C Bus Master / Slave Controller Interface with FIFO