Identificando el maestro SPI

5

Estoy tratando de aplicar ingeniería inversa a las comunicaciones SPI entre dos chips. Pero, no está claro quién es el amo y quién es el esclavo.

He encontrado el chip seleccionado. Sin levantar ningún pasador ni cortar rastros, ¿hay una manera de detectar qué extremo lo está afirmando?

Las fichas son: CC1110 (radio SoC) y CY7C63803 (MCU USB). La selección de chip sale de la línea SSEL (selección de esclavo) en el CY7C63803 y en un pin GPIO en el CC1110.

El CY7C63803 es un SOIC, así que podría levantar una pierna, pero no quiero romperla.

    
pregunta Toby Jaffey

5 respuestas

9

Es difícil usar un pin GPIO en un dispositivo esclavo como una selección de chip. Si la señal de selección de chip no se detecta lo suficientemente pronto en el dispositivo esclavo después de que se haya confirmado, puede perder los datos que el maestro está sincronizando. Dado que el CY7C63803 tiene su pin SSEL conectado a la línea de selección de chip, supongo que es el esclavo. El CC1110 es probablemente el maestro. Probablemente necesitará levantar un pin en uno de los dispositivos para estar seguro.

    
respondido por el mjh2007
7

¿Qué hay de mantener cada uno de los chips en reinicio (a su vez) y observar la línea CS?

La teoría es que la línea se triplicará mientras el chip se reinicie.

    
respondido por el Toby Jaffey
2

¿Qué tan rápido está cambiando la línea? Si es lo suficientemente lento, podría medir el voltaje entre los pines con un buen multímetro para determinar qué lado está tratando de hundir la corriente. De los valores de pullup / fuerza de la unidad / resistencia de la traza, supongo que podría ser posible con mi 187 por ejemplo.

Sin embargo, a falta de una prueba absoluta, probablemente mjh2007 tenga razón; Si un lado usa el pin SS compartido por el periférico de hardware SPI, mientras que el otro usa algún GPIO aleatorio, eso es todo menos concluyente.

    
respondido por el Nick T
2

Intente acercar waaaaaaaaaaaaay con un o-scope de muy alta resolución. Tal vez puedas ver el reflejo en el rastro? El timbre en la carga debe ser peor que el timbre en la fuente.

    
respondido por el ajs410
1

Necesitaría averiguar de qué manera fluye la corriente: el chip ascendente en la línea de selección de chip es el controlador. Eso es duro sin cortar rastros. Mi mejor idea sería colocar una bobina de cable magnético conectada a una resistencia grande junto a la traza. Mida el voltaje inducido en la resistencia a través de la inductancia mutua cuando la línea de selección de chip cambie de estado. La polaridad de la tensión debe corresponder a la dirección del flujo de corriente.

Pero honestamente, eso es solo una respuesta teórica. Dado que probablemente está intentando detectar uA, lo que induciría potenciales nV en la bobina, creo que las posibilidades de que realmente funcione son muy cercanas a cero. Tal vez, inténtelo primero con un cable y un generador de señales, para ver cuán pequeño es el cambio que puede detectar.

    
respondido por el pingswept

Lea otras preguntas en las etiquetas