Customizing the I2C

The core has parameters so you can customize its function. You set the parameters in the General tab of the core's IP Configuration window.

Table 1. I2C Core Master Parameters when I2C Controller Mode is MASTER
Parameters Options Description
I2C Data Transfer Speed 100 kHz normal mode, 400 kHz fast mode I2C data transfer speed.
Default = 100 kHz normal mode
Data Width 8, 16, 24, 32
Data width for the user interface data input/output bus.
Default = 32
Core Clock Frequency (MHz) 50, 100, 150 Core clock frequency.
Default = 100
SDA/SCL Spike Filtering Cycle 1 - 15 SDA/SCL spike filtering logic to filter out signal spike in clock cycle with reference to core clock frequency.
Default = 2
Table 2. I2C Core Master Parameters when I2C Controller Mode is Slave
Parameters Range Description
8-bit I2C Slave Address
Slave address for the I2C slave.
The least significant bit is ignored.
Default = 84 (decimal)
I2C Data Transfer Speed 0, 1 I2C data transfer speed.
Default = 100 kHz normal mode
Data Width 8, 16, 24, 32
Data width for the user interface data input/output bus.
Default = 32
Core Clock Frequency (MHz) 50, 100, 150 Core clock frequency in MHz.
Default = 100
SDA/SCL Spike Filtering Cycle 1 - 15 SDA/SCL spike filtering logic to filter out signal spike in clock cycle with reference to core clock frequency.
Default = 2