Spy-Bi-Wire vs JTAG

9

Saya sedang mengerjakan desain MSP430 dan saya sangat tertarik dengan antarmuka pemrograman dua-kawat Spy-Bi-Wire . Dari apa yang saya baca itu sangat mirip dalam hal fungsionalitas dengan JTAG dan bahkan terlihat lebih baik dalam beberapa kasus (tentu saja lebih sedikit kabel, tetapi juga kecepatan, dll).

Apakah ada sesuatu yang mampu dilakukan oleh JTAG yang akan saya lewatkan dengan menggunakan Spy-Bi-Wire (debugging, breakpoints, pemrograman flash) dan tidak termasuk JTAG 4-pin standar pada PCB saya?

Joel B
sumber

Jawaban:

12

Spy-Bi-Wire adalah JTAG - lapisan fisiknya berbeda. JTAG adalah seperangkat perintah di atas antarmuka serial. Masalah utama adalah chip yang Anda debug. Chip yang Anda debug harus memiliki dukungan untuk fitur-fitur mewah - bukan hanya JTAG Anda. Dan memang, dalam dokumentasi TI sendiri untuk antarmuka JTAG pada MSP430 ia menjabarkan bagaimana chip-chipnya tidak sepenuhnya mengimplementasikan semua perintah JTAG (bagian 3.2, hal 67):

Hanya instruksi BYPASS yang didukung. Tidak ada dukungan untuk instruksi SAMPEL, PRELOAD, atau EXTEST.

Inilah bagian yang menyenangkan: karena Spy-Bi-Wire hanyalah komunikasi serial, semua fitur keren yang sebenarnya harus diimplementasikan pada MSP430. Misalnya, jumlah breakpoint perangkat keras yang Anda miliki? Ditentukan oleh prosesor, bukan JTAG yang Anda gunakan. Kebanyakan MSP430 memiliki dua, beberapa memiliki delapan.

AngryEE
sumber
Bagaimana mungkin saya tidak dapat memperbaiki chip yang rusak jika saya dapat memprogram flash melalui Spy-Bi-Wire? Apakah Spy-Bi-wire tidak mengizinkan pemrograman flash?
Joel B
1
SBW dapat menghapus flash pada chip yang terbuat dari bata secara paksa. Itu dapat menulis program Anda atau mengubah nilai pada alamat tertentu dalam sekejap juga
jsolarski
Itu bagus untuk diketahui - saya pikir itu membutuhkan tegangan yang lebih tinggi dan hanya mampu menghapus chip secara paksa jika chip itu membantu. Saya pikir mungkin fungsionalitas itu mungkin tidak ada di semua perangkat SBW? Saya bertanya-tanya terutama tentang implementasi pada MSP430 Launchpad.
AngryEE
1
Jujur saya tidak tahu tentang chip dengan SBW dan JTAG tapi saya pikir itu adalah salah satu fungsi SBW. Jika Anda melihat dokumen TI yang Anda posting, ia menyatakan "1.2.1.3 2-Wire Spy-Bi-Wire (SBW) JTAG Interface. Inti logika JTAG yang terintegrasi ke dalam perangkat yang mendukung mode 2-kawat identik dengan hanya 4-kawat-identik Perbedaan mendasar adalah bahwa perangkat 2-kawat menerapkan logika tambahan yang digunakan untuk mengubah komunikasi 2-kawat menjadi komunikasi 4-kawat standar secara internal. Dengan cara ini, metodologi emulasi JTAG yang ada dari MSP430 dapat sepenuhnya digunakan. "
jsolarski
1
Adapun landasan peluncuran itu adalah programmer SBW yang sepenuhnya mampu
jsolarski
1

Saya mengembangkan solusi MSP430 khusus yang dijalankan pada Teradyne ICT

Pendapat saya, SbW tentu tidak lebih cepat. Dibutuhkan 3 siklus clock untuk mencapai 1 bit oleh JTAG. Kemudian, seseorang memiliki ide yang sangat buruk untuk memiliki garis RESET membawa data. Maka RESET biasanya memiliki setidaknya 1nF kapasitansi, yang membuatnya lebih lambat untuk diisi dan dikosongkan.

SbW baik untuk flash yang sangat kecil, seperti Value Series MSP430G, hanya memiliki beberapa K flash untuk diprogram. Tetapi untuk MSP430F5XX dan 6XX, Anda lebih baik menyediakan konektivitas ke seluruh set JTAG dan mendedikasikan pin tersebut untuk pemrograman, jika tidak Anda akan menyesal menggunakan SbW.

Dudley Hiller
sumber