Berapa banyak bus yang tergantung pada sistem.
Saat ini (2017) banyak motherboard soket prosesor tunggal menggunakan pengendali SMBus tunggal di jembatan selatan. Bus ini dapat dihubungkan ke KEDUA pin SMBus pada slot PCIe dan digunakan untuk hal-hal seperti membaca info konfigurasi DRAM dari eeprom. Prosesor yang menggunakan soket dengan lebih banyak pin, seperti prosesor Intel Xeon E5, memiliki beberapa bus I2C ekstra untuk berbicara dengan eeprom memori, jadi jangan berbagi bus I2C tunggal antara slot dan perangkat motherboard.
Jika kartu dalam slot memiliki alamat yang bertentangan, atau menempatkan sinyal palsu di bus, hasilnya adalah sistem mungkin tidak bisa boot (tidak dapat membaca parameter DIMM untuk menginisialisasi pengontrol DRAM) atau mungkin memiliki masalah operasional dengan motherboard I2C perangkat seperti monitor suhu / tegangan.
Sayangnya, standar SMBus saat ini tidak memerlukan perangkat untuk menghindari alamat I2C yang sangat umum, seperti 0x50-0x57 (eMMP SPD DIMM), jadi kartu telah dibuat yang berfungsi dengan baik pada server kelas atas dengan banyak bus tetapi tidak berfungsi lebih rendah end server dengan bus bersama. Alamat apa yang digunakan pada desain bus bersama akan tergantung pada desain motherboard dan slot memori apa yang terisi. Anda mungkin memiliki sistem dengan 4 slot memori, 2 dari apa yang terisi, dan kartu pengontrol PCIe yang menggunakan SMBus dan semuanya berfungsi dengan baik. Ketika Anda pergi untuk menambahkan 2 DIMM lagi, sistem tidak bisa boot, dan alasannya adalah karena alamat kartu SMBus bertentangan dengan alamat I2C dari DIMM yang baru. Masalahnya adalah kartu pengontrol, bukan memori.
Penanganannya meliputi: menempatkan pita pada pin SMBus pada kartu pengontrol (lihat artikel Wikipedia tentang PCIe untuk pin yang benar), atau beberapa motherboard memiliki jumper untuk mengontrol jika SMBus diarahkan ke slot.
Solusi jangka panjang adalah mengubah spesifikasi SMBus untuk mencerminkan kenyataan ini dari komputer SMBus / I2C yang dibagikan, dan membuat alamat 0x50-0x57 dan alamat lainnya yang biasa digunakan untuk sensor termal dan semacamnya, dilarang untuk ditambahkan kartu. Spesifikasi DIMM Serial Presence Detect (SPD) juga dapat diklarifikasi untuk menguraikan bagaimana perangkat pada bus I2C bersama dapat bertentangan, dan mungkin membuat kasus bahwa mengambil langkah-langkah untuk menghindari konflik alamat adalah ide yang baik. Micron SPD spec yang saya lihat berbicara tentang pola bit dan Anda harus membaca dengan cermat untuk menyadari apa yang akan dikonsumsi oleh alamat I2C.