Spy-Bi-Wire vs JTAG


9

Sto lavorando su un design MSP430 e sono molto incuriosito dall'interfaccia di programmazione a due fili Spy-Bi-Wire . Da quello che ho letto è molto simile in termini di funzionalità a JTAG e sembra persino migliore in alcuni casi (meno fili ovviamente, ma anche velocità, ecc.).

C'è qualcosa di cui JTAG è capace e che mi perderei usando Spy-Bi-Wire (debug, breakpoint, programmazione flash) e non includendo il JTAG standard a 4 pin sul mio PCB?

Risposte:


12

Spy-Bi-Wire è JTAG - il livello fisico è solo diverso. JTAG è un insieme di comandi su un'interfaccia seriale. Il problema principale è il chip di cui stai eseguendo il debug. Il chip di cui stai eseguendo il debug deve avere il supporto per le fantasiose funzionalità, non solo per il tuo JTAG. E in effetti, nella documentazione di TI per l'interfaccia JTAG su MSP430, viene spiegato come i suoi chip non implementano completamente tutti i comandi JTAG (sezione 3.2, pag. 67):

È supportata solo l'istruzione BYPASS. Non è disponibile il supporto per le istruzioni SAMPLE, PRELOAD o EXTEST.

Ecco la parte divertente: poiché Spy-Bi-Wire è solo una comunicazione seriale, tutte le funzioni interessanti devono essere implementate su MSP430. Ad esempio, il numero di punti di interruzione hardware che hai? Determinato dal processore, non dal JTAG che stai utilizzando. La maggior parte degli MSP430 ne ha due, alcuni ne hanno otto.


Come potrei non essere in grado di riparare un chip bricked se posso programmare il flash tramite Spy-Bi-Wire? Spy-Bi-wire non consente la programmazione flash?
Gioele B

1
SBW può cancellare forzatamente il flash su chip con mattoni. Può scrivere il tuo programma o modificare un valore a un indirizzo specifico anche in flash
jsolarski

Buono a sapersi: ho pensato che richiedesse tensioni più elevate ed era in grado di cancellare forzatamente il chip solo se il chip stava aiutando. Penso che forse la funzionalità potrebbe non essere presente in tutti i dispositivi SBW? Mi chiedo principalmente sull'implementazione del Launchpad MSP430.
AngryEE,

1
Onestamente non conosco i chip con SBW e JTAG, ma penso che sia una delle funzioni di SBW. Se guardi il documento TI che hai pubblicato, si afferma "1.2.1.3 Interfaccia JTAG a 2 fili Spy-Bi-Wire (SBW) La logica JTAG di base integrata nei dispositivi che supportano la modalità a 2 fili è identica alla sola a 4 fili La differenza fondamentale è che i dispositivi a 2 fili implementano una logica aggiuntiva che viene utilizzata per convertire internamente la comunicazione a 2 fili nella comunicazione standard a 4 fili.In questo modo, la metodologia di emulazione JTAG esistente dell'MSP430 può essere pienamente utilizzata. "
jsolarski,

1
Per quanto riguarda il
trampolino di

1

Sviluppo soluzioni MSP430 personalizzate in esecuzione su Teradyne ICT

La mia opinione, SbW non è certamente più veloce. Sono necessari 3 cicli di clock per eseguire 1 bit con JTAG. Quindi, qualcuno ha avuto una pessima idea di far trasportare i dati alla linea RESET. Quindi il RESET di solito ha una capacità di almeno 1nF, il che rende ancora più lento il caricamento e lo scaricamento.

L'SbW va bene per flash molto piccoli, come la Value Series MSP430G, con solo pochi K di flash da programmare. Ma per MSP430F5XX e 6XX, è meglio fornire connettività all'intero set JTAG e dedicare quei pin alla programmazione, altrimenti rimpiangerai di usare SbW.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.