Bagaimana saya bisa tahu jika sebuah chip memiliki kerusakan ESD?

13

Saya punya beberapa chip (mikrokontroler, PIC16F1939) beberapa di antaranya memiliki perilaku aneh (ulang acak, beberapa pin menarik tinggi beberapa waktu). Semuanya menjalankan perangkat lunak yang sama. Saya menduga bahwa chip tersebut memiliki kerusakan ESD (atau kerusakan internal lainnya). Bagaimana saya bisa yakin? Sinar-X? Adakah metode lain yang tersedia?

c0m4
sumber
4
@ com4, Ini bukan jawaban yang nyata, tetapi berapa kali saya pernah mendengar seseorang memastikan itu adalah ESD Damage dan kemudian menemukan pasti bahwa itu adalah sesuatu yang lain telah menjadi semuanya. Saya dulu bertindak sebagai asisten pengajar di kelas desain senior di mana hampir setiap kelompok menyalahkan ESD pada titik tertentu. Perusahaan terakhir saya melakukan hal yang sama dan menerapkan ESD yang ketat, kami menemukan kesalahan firmware atau case sebagai sumber untuk setiap hal.
Kortuk
@Kortuk, saya setuju, ESD dammage adalah boogeyman elektronik. Keripik rusak tanpa keraguan, saya hanya ingin tahu apakah ada cara untuk mengetahui apakah ESD itu rusak.
c0m4

Jawaban:

7

Saya tidak tahu cara "mudah" untuk mengkonfirmasi kerusakan ESD - tampaknya ada beberapa metode yang digunakan untuk mendeteksi kegagalan IC, semuanya cukup mahal. Mereka termasuk X-ray, Mikroskopi, Analisis Termal IR, Pelacak kurva, TDR, dll.

Ini contoh laporan analisis kegagalan cukup informatif, merinci beberapa metode yang berbeda digunakan untuk (akhirnya) menemukan kesalahan.

Namun, saya akan memeriksa kode dengan hati-hati untuk memastikan tidak ada bug berselang yang bertanggung jawab atas apa yang Anda lihat, atau masalah dengan sirkuit Anda (mis. EMI, masalah catu daya, dll.)
Mungkin coba beberapa program pengujian sederhana yang mereplikasi berbagai bagian dari firmware lengkap dan melihat apakah masalahnya khusus untuk satu bagian (atau hadir setiap saat)
Juga memeriksa situs Microchips untuk masalah silikon yang diketahui, saya telah ketahuan dengan ini beberapa kali di masa lalu.

Oli Glaser
sumber
7

Satu-satunya metode yang dapat diandalkan yang saya sadari adalah mendekap IC (yaitu mengetsa perumahan plastik) dan menggunakan mikroskop. Itu datang untuk mencari petunjuk visual dan pola khas: Luka bakar berlebih terlihat berbeda dari ESD zaps pada struktur terintegrasi.

Masalah dengan kerusakan ESD adalah bahwa itu bisa sangat halus. Anda bisa mendapatkan apa saja di antara perilaku yang sedikit tidak biasa (mis. Perubahan kecil pada tegangan ambang gerbang MOSFET) dan kegagalan total seluruh perangkat.

zebonaut
sumber
5

Jika Anda 100% yakin Anda menjalankan chip dalam sirkuit dan kondisi yang sama maka chip tersebut kemungkinan besar penyebabnya. Tidak perlu kerusakan ESD, bisa jadi mekanis atau disebabkan oleh daya >> 5V. Kadang-kadang kerusakan mungkin mudah dibuktikan (seperti pin yang menolak driver tinggi), tetapi secara umum sangat sulit untuk membuktikan atau menyangkal fungsi yang benar dari chip yang kompleks. Jika waktu Anda sepadan dengan apa pun: buang chip yang dicurigai (atau paling tidak tandai dan sisihkan untuk pekerjaan dengan prioritas sangat rendah).

PS, apakah Anda yakin tidak digigit bug / fitur / perangkap baca-modifikasi-tulis?

Wouter van Ooijen
sumber
Tidak yakin apa yang Anda maksud dengan "baca / modifikasi-tulis bug / fitur / jebakan"
c0m4
1
Jika Anda tidak yakin apa artinya dan Anda menggunakan chip inti 12 atau 14 bit, Anda pasti harus membacanya! Pada dasarnya, ketika Anda menulis satu bit di port output, bit lain akan mengunci nilai sesaat dari bit-bit tersebut seperti yang dibaca oleh buffer input . Dalam beberapa situasi (kesalahan, beban berat) ini dapat berbeda dari level yang ingin dicapai oleh buffer output. Lihat misalnya cornerstonerobotics.org/curriculum/lessons_year2/…
Wouter van Ooijen
Terima kasih atas tipnya! Saya tidak menyadari bahwa tahap membaca membaca keadaan sebenarnya dari pin. Untungnya kisaran 16f193x memiliki latch register seperti halnya chip 16 bit. Bukan berarti saya menggunakannya tetapi itu ada. Namun, saya yakin bahwa ini bukan masalah bagi saya karena saya tidak memiliki beban nyata pada output.
c0m4