Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.
17268 Discussions

implementing vhdl I2C MUX in CPLD VHDL

Altera_Forum
Honored Contributor II
3,169 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,119 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,119 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