I2C interface definition
Detect the rising and falling Edge of the SCL signals
Filter the SCL and SDA input signals
I2C Master IO Layer _ | |<------- I2C ------->| | | Master | | Slave | CMD Stream ->||-> RSP Flow |_|
Define the command interface
Runtime configuration of the I2C master
Global configuration of the I2C Master
Global configuration of the I2C Master
: Number of sampler to generate a bit
: Width of the clockDivider value
: Width of the clockDivider value
Define the response interface If you want to read data, set data = True
Define the response interface If you want to read data, set data = True
For the slave : (FREEZE) is done with the response stream.
I2C Slave IO Layer :
I2C Slave IO Layer :
This component manages the low level of the I2C protocol. (START, STOP, Send & Receive bit data)
| |<------- I2C ------->| | | Master | | Slave | || RSP Stream --->||---> CMD Flow
Write sequence :
RSP : DATA DATA DATA DATA DATA Master : | START | DATA | | DATA | DATA | STOP | Slave : | | | DATA | | | | CMD : START DATA DATA DATA DATA STOP
Restart sequence :
RSP : DATA DATA DATA DATA DATA Master : | START | | DATA | START | DATA | STOP | Slave : | | DATA | | | | | CMD : START DATA DATA START DATA STOP
Define the command interface
Run-time configuration for the I2CSlave
Generics for the I2C Slave
Generics for the I2C Slave
: deepth sampling
: Width of the clock divider
Define the response interface If you want to read data, set data = True
Define the response interface If you want to read data, set data = True
For the slave : (FREEZE) is done with the response stream.
Mode used to manage the slave
Mode used to manage the slave
I2C Master IO Layer _ | |<------- I2C ------->| | | Master | | Slave | CMD Stream ->||-> RSP Flow |_|
Sequence :
CMD : START DATA DATA DATA DATA STOP Master : | START | DATA | | DATA | | STOP | Slave : | | | DATA | | DATA | | RSP : DATA DATA DATA DATA