Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
17238 Discussions

implementing vhdl I2C MUX in CPLD VHDL

Altera_Forum
Honored Contributor II
3,120 Views

hi all ,  

i need to implement i2c mux that consists of: 

4 i2c masters  

8 i2c slaves 

 

external hardwre can configure with master is going to be connected to one of the 8 slaves. 

 

The problem is that I2C signal ( SDA) is bidirectional, which makes  

I2C mux within an CPLD hard to implement.  

 

thans
0 Kudos
2 Replies
Altera_Forum
Honored Contributor II
2,070 Views

The I2C allows 2 masters and 8 slaves on the same bus. Do your really need to have a "mux"? 

 

Anyway, if you really do need, you can do it by making the CPLD logic track the state of the I2C transaction, so it can known what direction to use for SDA.
0 Kudos
Altera_Forum
Honored Contributor II
2,070 Views

 

--- Quote Start ---  

The I2C allows 2 masters and 8 slaves on the same bus. Do your really need to have a "mux"? 

 

Anyway, if you really do need, you can do it by making the CPLD logic track the state of the I2C transaction, so it can known what direction to use for SDA. 

--- Quote End ---  

 

 

on each bus is going to be one master and one slave. 

external hardwre configures whitch master is going to be connected to one of the 8 slaves. 

 

how can the cpld track the state of the I2C transaction?  

do you have ref design of guidelines ? 

 

thanks 

0 Kudos
Reply