Una razón muy común para necesitar más de un bus es tener dispositivos que funcionen a diferentes velocidades. Originalmente, I²C funcionaba a un máximo de 100 kHz. Más tarde, la velocidad se incrementó a un máximo de 400 kHz, y aún más tarde, a 1 MHz y más.
El problema es que, dado que la dirección de cada dispositivo está incrustada en el protocolo I²C, si tiene dispositivos con diferentes clasificaciones de velocidad en el mismo bus, digamos 100 kHz y 400 kHz, siempre debe ejecutar el bus a la velocidad más baja común a todos los dispositivos en el mismo bus (100 kHz en este caso).
Si ejecutó el bus a la velocidad más alta (400 kHz), obviamente el dispositivo de velocidad más baja no funcionaría correctamente, e incluso podría interpretar la dirección del dispositivo de alta velocidad como propia, causando que el dispositivo de 400 kHz falle como bien. Pero incluso si inicialmente ejecutó el bus a 100 kHz, y luego trató de acelerar el bus a 400 kHz después de abordar un chip de mayor velocidad, sería posible (aunque probablemente improbable) que el chip de menor velocidad interprete uno de los paquetes de datos de alta velocidad incorrectamente como su dirección y, por lo tanto, estropean la comunicación en el bus. En cualquier caso, al final del intercambio con el dispositivo de 400 kHz, el dispositivo de 100 kHz probablemente estaría en un estado desconocido.
Por lo tanto, es más eficiente, si tiene dispositivos que funcionan a diferentes velocidades y tiene múltiples puertos I²C y tiene los pines de repuesto para permitir ese lujo, tener un I²C para dispositivos de 100 kHz, otro para dispositivos de 400 kHz y otro para dispositivos de 1 MHz, según sus necesidades.
Esto no es un problema con SPI porque cada dispositivo está habilitado (direccionado) en el hardware por una línea de selección de chip separada. Por lo tanto, la velocidad del reloj puede coincidir con la velocidad del chip seleccionado (10 MHz, 20 MHz, lo que sea) sin tener ningún efecto en otros chips en el mismo bus, ya que no están habilitados.