Pernah menjadi Teknisi Verifikasi Desain ASIC di Qualcomm. Dengan cara paling sederhana saya bisa menjelaskannya:
Pengujian: Memastikan suatu produk berfungsi, setelah Anda membuat produk (pikirkan QA).
Verifikasi: Memastikan suatu produk berfungsi SEBELUM Anda telah membuatnya.
Keduanya sama-sama pengujian, hanya saja verifikasi lebih rumit karena Anda harus mencari cara untuk menguji produk sebelum ada dan Anda harus dapat memastikan itu berfungsi seperti yang dirancang dan untuk menentukan kapan itu benar-benar keluar.
Sebagai contoh, Intel sedang merancang prosesor mereka berikutnya, mereka memiliki spesifikasi, mereka memiliki skema dan simulasi. Mereka menghabiskan $ 1 Miliar USD untuk melalui fabrikasi dan manufaktur. Kemudian chip kembali dan mereka mengujinya dan mengetahui bahwa itu tidak berhasil. Mereka hanya membuang banyak uang ke luar jendela.
Lemparkan verifikasi. Insinyur verifikasi membuat model yang mensimulasikan perilaku chip, mereka membuat testbench yang akan menguji model-model tertentu. Mereka mendapatkan hasil dari model-model ini dan kemudian mereka membandingkannya dengan hasil RTL (model rangkaian writting dalam bahasa desain perangkat keras). Jika mereka cocok, semuanya (biasanya) OK.
Ada sejumlah metodologi berbeda untuk proses verifikasi, yang populer adalah Universal Verification Metodologi (UVM) .
Ada banyak kedalaman di lapangan dan orang-orang dapat menghabiskan seluruh karir mereka di dalamnya.
Berita gembira acak lainnya: Biasanya Anda membutuhkan 3 insinyur verifikasi untuk 1 insinyur desain. Itulah yang dikatakan semua orang di lapangan.
EDIT: Banyak orang menganggap verifikasi sebagai peran pengujian, tetapi tidak; itu adalah peran desain itu sendiri karena Anda harus memahami semua seluk-beluk IC Anda seperti halnya perancang, dan kemudian Anda harus tahu cara merancang model, testbench, dan semua kasus uji yang akan mencakup semua fungsi fitur IC Anda. , serta mencoba menekan setiap baris kode RTL untuk semua kombinasi bit yang mungkin. Ingatlah bahwa prosesor saat ini memiliki milyaran transistor karena proses pembuatannya memungkinkan yang lebih kecil dan lebih kecil (sekarang 14 nm).
Juga, di perusahaan besar seperti Intel, AMD, Qualcomm, dll, desainer sebenarnya tidak merancang chip. Biasanya arsitek akan menentukan semua spesifikasi, tata letak jenis potongan yang perlu disatukan untuk mendapatkan fungsi tertentu dengan persyaratan tertentu (yaitu kecepatan, resolusi, dll.), Dan kemudian perancang akan mengkodekannya ke dalam RTL. Ini sama sekali bukan pekerjaan mudah, hanya saja tidak mendesain sebanyak yang diperkirakan oleh banyak insinyur dari sekolah. Apa yang semua orang inginkan adalah seorang arsitek, tetapi butuh banyak pendidikan dan pengalaman untuk sampai ke titik itu. Banyak arsitek memiliki PhD, dan seperti 15-20 tahun pengalaman di bidangnya sebagai desainer. Mereka adalah orang-orang yang brilian (dan kadang-kadang gila) yang layak melakukan apa yang mereka lakukan, dan mereka baik dalam hal itu. Arsitek pada chip pertama yang saya kerjakan agak canggung dan tidak benar-benar mengikuti beberapa norma sosial, tetapi dia bisa menyelesaikan apa pun yang Anda lakukan terkait dengan chip tersebut, dan kadang-kadang ia akan menyelesaikannya di kepalanya dan memberi tahu Anda untuk melihat satu sinyal dan Anda akan seperti, "bagaimana dia melakukan itu?". Kemudian Anda memintanya untuk menjelaskan dan dia melakukannya dan itu jauh di atas kepala Anda. Sebenarnya mengilhami saya untuk membaca buku teks meskipun saya sudah lulus.
Dalam buku saya, Verifikasi memastikan bahwa apa yang Anda rancang "lakukan pekerjaannya" - yaitu, Anda memiliki serangkaian hal yang perlu dilakukan "perangkat", dan verifikasi menandai yang tidak ada dalam daftar.
Namun, pengujian memastikan bahwa hal-hal yang dilakukan "perangkat" dilakukan dengan benar. Anda memiliki serangkaian fungsi, dan Anda menguji setiap fungsi untuk memastikan fungsi tersebut berfungsi dengan baik.
Singkatnya, Verifikasi memeriksa desain, dan Pengujian memeriksa produk.
sumber
Berasal dari latar belakang desain ASIC (perangkat keras), ada tiga istilah penting: validasi , verifikasi , dan pengujian . Jawaban sebelumnya biasanya berbicara tentang satu atau dua istilah ini, tetapi jangan jelas-jelas kontras ketiga cara saya. Inilah cara saya memahaminya:
sumber
Tes dirancang untuk melihat apakah spesifikasi terpenuhi. Verifikasi adalah untuk melihat apakah perangkat memenuhi input desain - yaitu, semua spesifikasi. Saya kira ada lebih banyak interpretasi, tetapi ini adalah apa yang saya lihat dalam dokumen panduan FIA.
sumber
Kami membuat perbedaan antara pengujian verifikasi dan pengujian validasi. Katakanlah Anda sedang merancang kipas yang mendinginkan beberapa peralatan. Pengujian verifikasi dilakukan untuk memastikan kipas memenuhi semua persyaratan desain. Jadi, Anda dapat menguji aliran udara, siklus termal, getaran, dll.
Pengujian validasi memastikan persyaratan desain adalah yang benar. Apakah input desain yang kami miliki untuk kipas benar-benar memberi kami kipas yang kami inginkan? Misalnya Anda akan memastikan kipas benar-benar mendinginkan peralatan seperti yang diinginkan.
sumber
ISO9000 berbicara tentang verifikasi dan validasi. Dalam konteks verifikasi ISO9000 berarti menguji desain prototipe untuk membuktikannya memenuhi harapan fungsional dan kinerja. Validasi berarti menguji proses produksi pertama juga memenuhi harapan desain. Verifikasi dulu, validasi nanti adalah cara kecil saya untuk mengingat urutan hal.
Beberapa standar perangkat lunak membalik urutan verifikasi dan memvalidasi dan ini benar-benar dapat menyebabkan kebingungan jadi waspadai hal ini.
Intinya adalah ... Mengapa Anda menguji sesuatu - apakah itu desain prototipe - jika demikian maka standar kualitas cenderung menyebut verifikasi ini. Jika Anda menguji menjalankan produksi untuk pertama kalinya maka orang-orang perangkat keras memanggil validasi ini.
Hanya pengalaman pribadi saya.
sumber
Dari membaca balasan ini, saya sekarang menyadari tidak ada definisi yang pasti tentang bagaimana "pengujian" berbeda dari "verifikasi" di industri.
Ketika bekerja dengan desain HW (desain HW "nyata", seperti barang-barang di PCB, bukan pemrograman VHDL) kami melewati fase verifikasi & validasi, dan fase pengujian produksi (sebenarnya hanya merancang tes produksi sendiri dan mengirimkannya ke lokasi produksi). - Verifikasi - (1) memverifikasi bahwa prototipe / item yang diproduksi secara massal memenuhi persyaratan HW (2) memvalidasi persyaratan HW terhadap persyaratan SYS. - Pengujian Produksi - uji asap dan kasus uji verifikasi disederhanakan & cepat diadaptasi untuk menyaring cacat produksi massal tanpa harus melalui seluruh proses verifikasi untuk masing-masing 500.000 unit yang diproduksi setahun.
Jadi dalam "pengujian" perusahaan multinasional tertentu mengacu pada tes produksi dan tidak lebih.
sumber