11 votos

Bus SPI Terminación Problema

He estado trabajando en un proyecto donde un OMAP Linux SPI maestro interactúa con 6 SPI esclavos periféricos (5x convertidores a/D y solo magnetómetro).

Puedo configurar el SPI de la frecuencia de reloj y han experimentado con 50 kHz, 100 kHz y 1 mhz.

Os adjunto un cableado/junta diagrama que muestra la longitud de SPI maestro y todos los periféricos. El bus SPI longitud (todas las longitudes de alambre), lejos de la maestría es de aproximadamente 970mm para mi experimento caso.

enter image description here

El problema que he encontrado es que la comunicación con 1 periférica se produce un error como puedo añadir más de los otros periféricos en el bus. Incluso si la comunicación llega a la magnetómetro en el lado lejano de la de autobuses, la comunicación con los convertidores a/D en el otro lado de la falla hasta el magnetómetro arnés stub es eliminado y, a continuación, el A/D de la sección de devoluciones.

He hecho un poco de lectura aquí: Bus SPI Terminación Consideraciones y aquí: A corta Distancia de la Junta al Consejo de la Comunicación

donde se recomienda poner un LPF RC como cerca de la conducción del nodo, por lo que SCLK y MOSI en el lado maestro y cada uno de mis 6x MISO/SOMI señales. He visto similar planteamiento hecho por USB con 47pF/27R red RC. Mi intención es intentar esto en mi circuito en un esfuerzo para reducir el borde afilado rápido ~100nsec borde de transición.

Es este el procedimiento correcto yo sigo aquí con la adición de un LPF RC? Esto parece realmente shakey, hay una mejor práctica? Vi una app nota de TI donde se hable acerca de la extensión SPI para que los más de autobús distancias, es esta una solución apropiada aquí o a mi problema, simplemente uno de alta frecuencia de los armónicos de la alta velocidad en el borde de la transición? http://www.ti.com/lit/an/slyt441/slyt441.pdf

Gracias, Nick

A clean CLK/MISO measurement from the magnetometer

Measuring clock transition time of the CLK signal

Does this MISO line (channel#1) show reflections?  The levels don't look digital with stair case, is this reflections

6voto

WedaPashi Puntos 146

Es difícil responder a esto sin todos los detalles, pero aquí hay un genérico de mirar el problema que creo que también puede ser el más útil tipo de respuesta para este sitio.

Multi-nodo-redes siempre debe ser simulado. Ellos son tan difíciles de predecir. Y que tomó cerca de 3 minutos para ver que su diseño, quizás no fue la óptima.

Aquí está la simulación de la instalación para el reloj del maestro a todos los dispositivos esclavos (los valores son sólo estimaciones aproximadas, como sería el caso si usted hizo esto antes de construir nada):

enter image description here

Y el resultado de la simulación de la parcela (ignoramos qué es lo que, unidades, etc. como es evidente que no vale la pena edificio):

enter image description here

La primera idea que viene a la mente es un encadenamiento de todas las entradas y un simple paralelo de terminación. Un fly-by esquema si lo desea. Esto se parece a esto en la simulación de la instalación:

enter image description here

Y el resultado de la trama se ve mucho mejor:

enter image description here

Si usted puede vivir con el aumento del consumo de energía de la thevenin de la terminación y la reducción de la oscilación de voltaje en las entradas de reloj de los distintos dispositivos y... (sólo tú sabes las limitaciones reales)... entonces la variación de esto puede ser realmente la pena construir.

Hay otras soluciones que iba a funcionar, pero la clave está en entender que el multi-nodo de redes no son fáciles de predecir. A los 5 minutos de simulación de aquí antes de construir algo puede ahorrar un montón de tiempo después. Desgraciadamente, este tipo de simuladores no son baratos.

Estoy usando la Cadencia SigXplorer aquí. La costumbre descargo de responsabilidad: I enseñar a hacer clases en la integridad de la señal y, a menudo, tienen la Cadencia o Mentor patrocinador de licencias de software para esas clases.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X