Otomatisasi desain elektronik
Otomatisasi desain elektronik (EDA), juga disebut sebagai desain berbantuan komputer elektronik (ECAD), adalah kategori alat perangkat lunak untuk mendesain sistem elektronik seperti sirkuit terpadu dan papan sirkuit tercetak. Alat-alat ini bekerja bersama dalam alur desain yang digunakan perancang chip untuk mendesain dan menganalisis seluruh chip semikonduktor. Karena chip semikonduktor modern dapat memiliki miliaran komponen, alat EDA sangat penting untuk desain mereka; artikel ini secara khusus menjelaskan EDA secara khusus sehubungan dengan sirkuit terpadu (IC).
Sejarah
Masa-masa awal
Otomatisasi desain elektronik paling awal dikaitkan dengan IBM dengan dokumentasi komputer seri 700 pada tahun 1950-an.
Sebelum pengembangan EDA, sirkuit terpadu dirancang dengan tangan dan ditata secara manual. Beberapa toko canggih menggunakan perangkat lunak geometris untuk menghasilkan kaset untuk photoplotter Gerber, yang bertanggung jawab untuk menghasilkan gambar eksposur monokromatik, tetapi bahkan menyalin rekaman digital dari komponen yang digambar secara mekanis. Proses ini pada dasarnya bersifat grafis, dengan penerjemahan dari elektronik ke grafis yang dilakukan secara manual; perusahaan paling terkenal dari era ini adalah Calma, yang format GDSII-nya masih digunakan sampai sekarang. Pada pertengahan 1970-an, para pengembang mulai mengotomatiskan desain sirkuit selain penyusunan dan alat penempatan dan perutean pertama dikembangkan; ketika hal ini terjadi, prosiding Konferensi Otomasi Desain mengkatalogkan sebagian besar perkembangan pada saat itu.
Era berikutnya dimulai setelah publikasi "Introduction to VLSI Systems" oleh Carver Mead dan Lynn Conway pada tahun 1980; yang dianggap sebagai buku teks standar untuk desain chip. Hasilnya adalah peningkatan kompleksitas chip yang dapat didesain, dengan akses yang lebih baik ke alat verifikasi desain yang menggunakan simulasi logika. Chip lebih mudah ditata dan lebih mungkin berfungsi dengan benar, karena desainnya dapat disimulasikan secara lebih menyeluruh sebelum konstruksi. Meskipun bahasa dan alat telah berevolusi, pendekatan umum untuk menentukan perilaku yang diinginkan dalam bahasa pemrograman tekstual dan membiarkan alat mendapatkan desain fisik yang terperinci tetap menjadi dasar desain IC digital saat ini.
Alat EDA paling awal diproduksi secara akademis. Salah satu yang paling terkenal adalah "Berkeley VLSI Tools Tarball", seperangkat utilitas UNIX yang digunakan untuk mendesain sistem VLSI awal. Yang banyak digunakan adalah peminimalisasi logika heuristik Espresso, yang bertanggung jawab atas pengurangan kompleksitas sirkuit dan Magic, platform desain berbantuan komputer. Perkembangan penting lainnya adalah pembentukan MOSIS, sebuah konsorsium universitas dan perakit yang mengembangkan cara yang murah untuk melatih para perancang chip mahasiswa dengan memproduksi sirkuit terpadu yang sesungguhnya. Konsep dasarnya adalah menggunakan proses IC yang andal, murah, dan berteknologi relatif rendah serta mengemas sejumlah besar proyek per wafer, dengan beberapa salinan chip dari setiap proyek yang tetap dipertahankan. Perakit yang bekerja sama menyumbangkan wafer yang telah diproses atau menjualnya dengan biaya, karena mereka melihat program ini membantu pertumbuhan jangka panjang mereka sendiri.
Kelahiran komersial
Tahun 1981 menandai awal mula EDA sebagai sebuah industri. Selama bertahun-tahun, perusahaan elektronik yang lebih besar, seperti Hewlett-Packard, Tektronix, dan Intel, telah mengejar EDA secara internal, dengan para manajer dan pengembang mulai keluar dari perusahaan-perusahaan ini untuk berkonsentrasi pada EDA sebagai sebuah bisnis. Daisy Systems, Mentor Graphics, dan Valid Logic Systems semuanya didirikan pada masa ini dan secara kolektif disebut sebagai DMV. Pada tahun 1981, Departemen Pertahanan AS juga mulai mendanai VHDL sebagai bahasa deskripsi perangkat keras. Dalam beberapa tahun, ada banyak perusahaan yang berspesialisasi dalam EDA, masing-masing dengan penekanan yang sedikit berbeda.
Pameran dagang pertama untuk EDA diadakan di Design Automation Conference pada tahun 1984 dan pada tahun 1986, Verilog, bahasa desain tingkat tinggi yang populer, pertama kali diperkenalkan sebagai bahasa deskripsi perangkat keras oleh Gateway Design Automation. Simulator dengan cepat mengikuti perkenalan ini, memungkinkan simulasi langsung desain chip dan spesifikasi yang dapat dieksekusi. Dalam beberapa tahun, back-end dikembangkan untuk melakukan sintesis logika.
Masa kini
Aliran digital saat ini sangat modular, dengan ujung depan menghasilkan deskripsi desain standar yang dikompilasi menjadi doa unit yang mirip dengan sel tanpa memperhatikan teknologi masing-masing. Sel mengimplementasikan logika atau fungsi elektronik lainnya melalui pemanfaatan teknologi sirkuit terpadu tertentu. Perakit umumnya menyediakan pustaka komponen untuk proses produksi mereka, dengan model simulasi yang sesuai dengan alat simulasi standar.
Sebagian besar sirkuit analog masih dirancang dengan cara manual, membutuhkan pengetahuan khusus yang unik untuk desain analog (seperti konsep pencocokan). Oleh karena itu, alat EDA analog jauh lebih tidak modular, karena lebih banyak fungsi yang diperlukan, mereka berinteraksi lebih kuat, dan komponen, secara umum, kurang ideal.
EDA untuk elektronik telah meningkat pesat dalam hal kepentingan dengan peningkatan teknologi semikonduktor yang terus menerus. Beberapa pengguna adalah operator pengecoran, yang mengoperasikan fasilitas fabrikasi semikonduktor ("fabs") dan individu tambahan yang bertanggung jawab untuk memanfaatkan perusahaan jasa desain teknologi yang menggunakan perangkat lunak EDA untuk mengevaluasi desain yang masuk untuk kesiapan produksi. Alat EDA juga digunakan untuk memprogram fungsionalitas desain ke dalam FPGA atau susunan gerbang yang dapat diprogram di lapangan, desain sirkuit terpadu yang dapat disesuaikan.
Fokus perangkat lunak
Desain
Alur desain terutama tetap dicirikan melalui beberapa komponen utama; ini termasuk:
- Sintesis tingkat tinggi (juga dikenal sebagai sintesis perilaku atau sintesis algoritmik) - Deskripsi desain tingkat tinggi (misalnya dalam C / C ++) dikonversi ke RTL atau tingkat transfer register, yang bertanggung jawab untuk merepresentasikan sirkuit melalui pemanfaatan interaksi antar register.
- Sintesis logika - Penerjemahan deskripsi desain RTL (misalnya ditulis dalam Verilog atau VHDL) ke dalam netlist diskrit atau representasi gerbang logika.
- Penangkapan skematik - Untuk sel standar digital, analog, RF-like Capture CIS di Orcad oleh Cadence dan ISIS di Proteus [diperlukan klarifikasi].
- Tata letak - biasanya tata letak berbasis skematik, seperti Tata Letak di Orcad by Cadence, ARES di Proteus
Simulasi
- Simulasi transistor - simulasi transistor tingkat rendah dari perilaku skematik/tata letak, akurat pada tingkat perangkat.
- Simulasi logika - simulasi digital dari perilaku digital RTL atau daftar gerbang (Boolean 0/1), akurat pada tingkat Boolean.
- Simulasi perilaku - simulasi tingkat tinggi dari operasi arsitektur desain, akurat pada tingkat siklus atau tingkat antarmuka.
- Emulasi perangkat keras - Penggunaan perangkat keras dengan tujuan khusus untuk meniru logika desain yang diusulkan. Kadang-kadang dapat dicolokkan ke dalam sistem sebagai pengganti chip yang belum dibuat; ini disebut emulasi dalam sirkuit.
- Teknologi CAD mensimulasikan dan menganalisis teknologi proses yang mendasarinya. Sifat kelistrikan perangkat diperoleh langsung dari fisika perangkat
Analisis dan verifikasi
- Verifikasi fungsional: memastikan desain logika sesuai dengan spesifikasi dan menjalankan tugas dengan benar. Termasuk verifikasi fungsional dinamis melalui simulasi, emulasi, dan prototipe.
- RTL Linting untuk kepatuhan terhadap aturan pengkodean seperti sintaks, semantik, dan gaya.
- Verifikasi penyeberangan domain clock (pemeriksaan CDC): mirip dengan linting, tetapi pemeriksaan/alat ini mengkhususkan diri dalam mendeteksi dan melaporkan masalah potensial seperti kehilangan data, meta-stabilitas karena penggunaan beberapa domain clock dalam desain.
- Verifikasi formal, juga pengecekan model: upaya untuk membuktikan, dengan metode matematis, bahwa sistem memiliki sifat tertentu yang diinginkan, dan bahwa beberapa efek yang tidak diinginkan (seperti kebuntuan) tidak dapat terjadi.
- Pemeriksaan kesetaraan: perbandingan algoritmik antara deskripsi RTL chip dan daftar gerbang yang disintesis, untuk memastikan kesetaraan fungsional pada tingkat logis.
- Analisis waktu statis: analisis waktu rangkaian dengan cara yang tidak bergantung pada input, sehingga menemukan kasus terburuk dari semua input yang mungkin.
- Ekstraksi tata letak: dimulai dengan tata letak yang diusulkan, menghitung (perkiraan) karakteristik listrik setiap kabel dan perangkat. Sering digunakan bersama dengan analisis waktu statis di atas untuk memperkirakan kinerja chip yang telah selesai dibuat.
- Pemecah medan elektromagnetik, atau hanya pemecah medan, memecahkan persamaan Maxwell secara langsung untuk kasus-kasus yang menarik dalam desain IC dan PCB. Metode ini dikenal lebih lambat namun lebih akurat daripada ekstraksi tata letak di atas.
- Verifikasi fisik, PV: memeriksa apakah suatu desain dapat diproduksi secara fisik, dan bahwa chip yang dihasilkan tidak akan memiliki cacat fisik yang menghalangi fungsi, dan akan memenuhi spesifikasi asli.
Persiapan manufaktur
- Persiapan data masker atau MDP - Pembuatan foto litografi aktual, yang digunakan untuk membuat chip secara fisik.
- Penyelesaian akhir chip yang mencakup penunjukan dan struktur khusus untuk meningkatkan kemampuan manufaktur tata letak. Contoh yang terakhir adalah cincin segel dan struktur pengisi
- Memproduksi tata letak reticle dengan pola uji dan tanda pelurusan.
- Persiapan tata-letak-ke-topeng yang menyempurnakan data tata-letak dengan operasi grafis, misalnya, teknik peningkatan resolusi (RET) - metode untuk meningkatkan kualitas photomask akhir. Ini juga mencakup koreksi kedekatan optik (OPC) atau teknologi litografi terbalik (ILT) - kompensasi di muka untuk efek difraksi dan interferensi yang terjadi kemudian, apabila chip dibuat dengan menggunakan mask ini.
- Pembuatan topeng - Pembuatan gambar topeng datar dari desain hierarki.
- Pembuatan pola uji otomatis atau ATPG - Pembuatan data pola secara sistematis untuk menjalankan sebanyak mungkin gerbang logika dan komponen lainnya.
- Built-in self-test atau BIST - Pemasangan pengontrol uji mandiri untuk secara otomatis menguji logika atau struktur memori dalam desain
Keamanan fungsional
- Analisis keselamatan fungsional, penghitungan sistematis tingkat kegagalan dalam waktu (FIT) dan metrik cakupan diagnostik untuk desain guna memenuhi persyaratan kepatuhan untuk tingkat integritas keselamatan yang diinginkan.
- Sintesis keamanan fungsional, menambahkan peningkatan keandalan pada elemen terstruktur (modul, RAM, ROM, file register, FIFO) untuk meningkatkan deteksi kesalahan/toleransi kesalahan. Ini termasuk (tidak terbatas pada) penambahan deteksi kesalahan dan/atau kode koreksi (Hamming), logika redundan untuk deteksi kesalahan dan toleransi kesalahan (duplikat/rangkap tiga) dan pemeriksaan protokol (paritas antarmuka, perataan alamat, hitungan detak)
- Verifikasi keamanan fungsional, menjalankan kampanye kesalahan, termasuk memasukkan kesalahan ke dalam desain dan verifikasi bahwa mekanisme keamanan bereaksi dengan cara yang tepat untuk kesalahan yang dianggap tercakup.
Disadur dari: en.wikipedia.org