Lewati ke konten
chip.peruri.co.id

Bab 8: Bahasa Deskripsi Perangkat Keras (HDL) & Alat Bantu Fondasional

Keberhasilan perancangan sirkuit terpadu bertumpu pada dua pilar utama: bahasa formal yang digunakan untuk mengekspresikan perilaku arsitektur perangkat keras (Hardware Description Languages - HDL) dan mesin komputasi matematis yang menerjemahkan ekspresi tersebut ke dalam jaringan transistor (Logic Synthesis and Physical Layout Tools).

Bab ini mengkaji spektrum bahasa deskripsi perangkat keras serta tiga perangkat lunak terbuka fondasional yang menjadi tiang penyangga ekosistem EDA modern: Yosys, ABC, dan Magic VLSI.


8.1 Lanskap Bahasa Deskripsi Perangkat Keras (HDL)

Section titled “8.1 Lanskap Bahasa Deskripsi Perangkat Keras (HDL)”

Meskipun perangkat lunak perancangan fisik backend mayoritas mengonsumsi bahasa Verilog sebagai format antarmuka standar, perancang frontend memiliki beragam pilihan bahasa deskripsi:

Bahasa HDL Paradigma & Basis Bahasa Karakteristik Utama & Ekosistem
Verilog (IEEE 1364) Prosedural bergaya bahasa C Standar industri paling mapan; didukung secara universal oleh seluruh perkakas sintesis dan perutean backend.
VHDL (IEEE 1076) Berorientasi tipe ketat (strongly typed), bergaya bahasa Ada Menuntut kedisiplinan tipe data tinggi; banyak digunakan pada sektor dirgantara (aerospace), pertahanan, dan institusi akademik Eropa.
SystemVerilog (IEEE 1800) Superset Verilog dengan fitur OOP Menggabungkan konstruksi sintesis yang lebih ringkas dengan fitur verifikasi tingkat lanjut (assertions, pemodelan berorientasi objek, constrained-random testbenches).
Chisel Domain-Specific Language berbasis bahasa fungsional Scala Dikembangkan di UC Berkeley; memungkinkan pembuatan generator perangkat keras yang sangat terparameterisasi (highly parameterizable hardware generators). Kode Chisel dikompilasi menjadi Verilog melalui perantara FIRRTL.
Amaranth (nMigen) Pustaka berbasis bahasa Python Menyediakan abstraksi penulisan sirkuit digital sinkron menggunakan sintaksis Python native yang terhubung ke alur sintesis Yosys.
Spade Bahasa HDL modern terinspirasi bahasa Rust Menghadirkan sistem pengetikan modern (strong static typing), inferensi tipe, pencocokan pola (pattern matching), dan pencegahan kondisi sinyal tak terdefinisi (X-states) sejak waktu kompilasi.

Tiga program komputer terbuka berikut merupakan mesin komputasi inti yang bekerja di balik layar LibreLane dan OpenROAD:

Diciptakan oleh Claire Wolf, Yosys adalah kerangka kerja sintesis RTL terbuka yang paling dominan di dunia.

  • Tugas Utama: Membaca kode Verilog, melakukan elaborasi modul, optimasi tingkat kasar (coarse-grain optimization), pemetaan memori dan aritmetika, serta konversi logika ke tingkat gerbang (fine-grain logic netlist).
  • Arsitektur Ekstensibel: Berbasis perintah skrip interaktif (pass-based architecture), memungkinkan penambahan algoritma optimasi kustom melalui C++ API.

Dikembangkan di University of California, Berkeley oleh Alan Mishchenko dan rekan-rekan.

  • Representasi AIG (And-Inverter Graphs): ABC mengabstraksikan fungsi logika kombinatorial dan sekuensial yang sangat masif ke dalam grafik terarah sederhana yang hanya memuat gerbang AND 2-masukan dan inverter.
  • Pemetaan Teknologi (Technology Mapping): Menggunakan algoritma pemotongan grafik (Boolean matching and graph covering) berbasis tabel penundaan Liberty (.lib) untuk memilih kombinasi sel standar fisik yang paling optimal dari segi area dan keterlambatan waktu. ABC dipanggil secara langsung oleh Yosys.

Diciptakan pada pertengahan dekade 1980-an oleh tim riset John Ousterhout di UC Berkeley.

  • Struktur Sudut Jahit (Corner Stitching): Merepresentasikan lapisan-lapisan poligon fisik geometris dalam struktur data ubin persegi (planes of rectangular tiles) yang memungkinkan eksekusi algoritma Design Rule Checking (DRC) secara instan dan interaktif.
  • Ekstraksi Sirkuit & Antarmuka Manufaktur: Mengekstrak kembali topologi kelistrikan transistor dan kapasitansi interkoneksi ke dalam netlist SPICE, serta mengekspor berkas akhir ke format biner standar industri GDSII.

Evaluasi Bab
Kuis Evaluasi Pemahaman Bab 8: Bahasa HDL & Perangkat Inti Fondasional
Belum selesai
1. Mengapa kerangka kerja Chisel berbasis bahasa Scala banyak digunakan untuk merancang generator prosesor modern (seperti RISC-V Rocket Core)?
2. Apa peran krusial perangkat lunak ABC (UC Berkeley) di dalam rantai sintesis logika Yosys?
3. Struktur data unik apa yang digunakan oleh perangkat lunak Magic VLSI sehingga mampu menjalankan verifikasi aturan desain (DRC) secara sangat cepat?