Análisis de tiempo estático para I2C

0

¿Podría alguien ayudarme a comenzar con la señal I2C Análisis de tiempo estático? Solo quería comenzar con 1 combinación de esclavo maestro único. Tengo MPC8343EA como Maestro y TMP100 como esclavo. Sé que el análisis debe tener dos condiciones de lectura y escritura y no estoy seguro de qué parámetros considerar. Si tengo la idea de cómo analizar la condición de escritura, podría terminar la parte de lectura fácilmente.

    
pregunta seeker

1 respuesta

1

Para analizar completamente el tiempo de un bus I2C, necesita conocer las diferencias físicas entre el reloj y los canales de datos, el valor de la resistencia pullup y la impedancia del conductor que conduce el bus. Si los canales para el reloj y los datos no son los mismos, entonces debe considerar sesgo debido a las diferencias.

Como I2C es un colector abierto, con un pullup en las líneas, la velocidad a la que se carga y descarga la línea varía, dependiendo de los valores de la resistencia y la capacitancia en el diseño físico. Esto significa que para obtener resultados precisos en su análisis, necesita tener una placa totalmente enrutada con un stackup conocido.

Su bus cargará la línea a través de un pullup, quizás con un valor de 2.6k a 10k (generalmente más fuerte cuanto más rápido necesita que vaya el bus) y lo descargará a través de un mosfet en el MCU al suelo. El mosfet podría tener una resistencia en serie de 40 ohmios, esto se suele dar en hojas de datos. Si conoce los niveles de activación lógica Vol, Voh, Vih, Vil, puede encontrar el tiempo en el que tiene niveles lógicos válidos.

Debes notar que a la información que has brindado le faltan algunos de los valores más críticos que decidirán si tu autobús funciona o no. Se necesita cualquier capacitancia intencional o parasitaria en las líneas y los valores de las resistencias pullup, junto con los tiempos de las hojas de datos de los componentes.

    
respondido por el Stonie

Lea otras preguntas en las etiquetas