I2C Master/Slave Controller
The I2C-MS core is a controller for the Inter-Integrated Circuit (I2C) bus.
Overview
The I2C-MS core is a controller for the Inter-Integrated Circuit (I2C) bus. The highly configurable core can implement an I2C bus master, slave, or a combined master and slave, and it communicates with the host via an APB, AHB, or Wishbone slave interface.
The core supports all variations and configurations of I2C networks. It can be used in single- or multiple-master networks, running in any of bus standard-defined speeds, employing 7-bit I2C slave addressing. Supporting clock stretching, it allows communication between slow slave and fast master.
Designed for ease of use and operation, the core allows choosing between master and slave operation, and setting up I2C transfers at runtime with few register accesses. The core reports its internal status and the I2C bus status via its registers but also with via a rich set of interrupts.
The I2C-MS core is rigorously verified, and silicon-proven. It is available in synthesizable RTL and FPGA netlist forms, and includes everything required for successful implementation, including a sophisticated self-checking testbench, simulation scripts, test vectors, and expected results, synthesis scripts and comprehensive user documentation.
Key features
- I2C Bus Protocol Controller
- Compliant to Philips I2C standard
- All I2C bus speeds:
- Standard-mode (Sm): up to 100 kbit/s, bidirectional
- Fast-mode (Fm): up to 400 kbit/s, bidirectional
- Fast-mode Plus (Fm+): up to 1 Mbit/s, bidirectional
- High-speed mode (Hs-mode): up to 3.4 Mbit/s, bidirectional
- Ultra Fast-mode (UFm): up to 5 Mbit/s, unidirectional
- 7-bit slave addressing
- Supports single or multi-master buses
- Clock-Stretching to allow fast-master slow-slave communication
- Configuration Options
- Operation mode: Master, Slave, or Master/Slave
- Host Interface: APB, AHB, or Wishbone Slave
- Read and Write Data FIFOs depth
- Maximum number of I2C transfers without host intervention
- Run-Time Options
- I2C Bus Speed and Clock Frequency
- Master or slave operation (for I2C master/slave core)
- I2C slave addressing mode (for I2C master)
Block Diagram
Specifications
Identity
Files
Note: some files may require an NDA depending on provider policy.
Provider
Learn more about I2C / I3C IP core
Maximizing the Usability of Your Chip Development: Design with Flexibility for the Future
MIPI I3C v1.1 - A Conversation with Ken Foust
How to Connect Sensors with I3C
MIPI CCI over I3C: Faster Camera Control for SoC Architects
Arasan I3C PHY - Ternary vs. Non-Ternary
Frequently asked questions about I2C / I3C IP cores
What is I2C Master/Slave Controller?
I2C Master/Slave Controller is a I2C / I3C IP core from CAST listed on Semi IP Hub.
How should engineers evaluate this I2C / I3C?
Engineers should review the overview, key features, supported foundries and nodes, maturity, deliverables, and provider information before shortlisting this I2C / I3C IP.
Can this semiconductor IP be compared with similar products?
Yes. Buyers can compare this product with similar semiconductor IP cores or IP families based on category, provider, process options, and structured technical specifications.