Espía-Bi-Wire vs JTAG

Estoy trabajando en un diseño MSP430 y estoy muy intrigado por la interfaz de programación de dos cables Spy-Bi-Wire . Por lo que leí, es muy similar en términos de funcionalidad a JTAG e incluso se ve mejor en algunos casos (menos cables, por supuesto, pero también velocidad, etc.).

¿Hay algo que JTAG sea capaz de hacer y que me estaría perdiendo al usar Spy-Bi-Wire (depuración, puntos de interrupción, programación flash) y no incluir el JTAG estándar de 4 pines en mi PCB?

Respuestas (2)

Spy-Bi-Wire es JTAG: la capa física es simplemente diferente. JTAG es un conjunto de comandos sobre una interfaz serial. El principal problema es el chip que estás depurando. El chip que está depurando debe ser compatible con las características sofisticadas, no solo con su JTAG. Y, de hecho, en la propia documentación de TI para la interfaz JTAG en MSP430, se explica cómo sus chips no implementan completamente todos los comandos JTAG (sección 3.2, página 67):

Solo se admite la instrucción BYPASS. No hay soporte para las instrucciones SAMPLE, PRELOAD o EXTEST.

Aquí está la parte divertida: dado que Spy-Bi-Wire es solo una comunicación en serie, todas las características geniales reales deben implementarse en el MSP430. Por ejemplo, ¿la cantidad de puntos de interrupción de hardware que tiene? Determinado por el procesador, no por el JTAG que está utilizando. La mayoría de los MSP430 tienen dos, algunos tienen ocho.

¿Cómo no podría arreglar un chip bloqueado si puedo programar el flash a través de Spy-Bi-Wire? ¿Spy-Bi-wire no permite la programación flash?
SBW puede borrar por la fuerza el flash en chips bloqueados. También puede escribir su programa o cambiar un valor en una dirección específica en flash
Es bueno saberlo: pensé que requería voltajes más altos y solo podía borrar el chip a la fuerza si el chip estaba ayudando. Creo que tal vez esa funcionalidad podría no estar en todos los dispositivos SBW. Me pregunto principalmente sobre la implementación en el MSP430 Launchpad.
Sinceramente, no conozco los chips con SBW y JTAG, pero creo que es una de las funciones de SBW. Si observa el documento de TI que publicó, dice "1.2.1.3 Interfaz JTAG de 2 hilos Spy-Bi-Wire (SBW) La lógica central JTAG integrada en los dispositivos que admiten el modo de 2 hilos es idéntica a la de solo 4 hilos". La diferencia fundamental es que los dispositivos de 2 hilos implementan una lógica adicional que se utiliza para convertir internamente la comunicación de 2 hilos en la comunicación estándar de 4 hilos. De esta manera, la metodología de emulación JTAG existente del MSP430 se puede utilizar por completo. "
En cuanto a la plataforma de lanzamiento, es un programador SBW totalmente capaz.
@jsolarski - Entonces, ¿tiene capacidad completa de programación y depuración con SBW en la plataforma de lanzamiento?
Sí, ese es el caso. La única pregunta que tenía era si podría rescatar un chip bloqueado y jsolarski parece decir que sí.
@AngryEE - Gracias por regresar y editar esto. Gran respuesta y gran documento. No creo que me hubiera topado con eso.
SBW en la plataforma de lanzamiento no puede quemar el fusible de seguridad, por lo que necesitaría un programador separado para eso si planea hacer esto
El enlace a TI parece estar roto. @Angry, si todavía está allí, ¿recuerda el título u otra información de búsqueda sobre el documento que vinculó?

Desarrollo una solución MSP430 personalizada que se ejecuta en Teradyne ICT

Mi opinión, SbW ciertamente no es más rápido. Se necesitan 3 ciclos de reloj para lograr 1 bit por JTAG. Entonces, alguien tuvo una muy mala idea de hacer que la línea RESET transportara los datos. Luego, el RESET generalmente tiene una capacitancia de al menos 1 nF, lo que hace que la carga y la descarga sean aún más lentas.

El SbW está bien para flash muy pequeño, como el Value Series MSP430G, que tiene solo unos pocos K de flash para programar. Pero para el MSP430F5XX y el 6XX, es mejor que proporcione conectividad a todo el conjunto JTAG y dedique esos pines para la programación, de lo contrario, se arrepentirá de usar el SbW.