Leda Checking

Pada kesempatan Kerja Praktek (KP) di Versatile Silicon, salah satu tugas saya adalah melakukan leda checking terhadap desain Verilog. Apa itu leda? Itulah pertanyaan pertama yang muncul dalam otak saya ketika mendapat tugas itu. Untunglah, ada pembimbing yang selalu membantu jika saya membutuhkan dan tentunya ada Prof. Google yang selalu standby 24 jam. Langsung saja, saya bergegas ke laptop dan berselancar di dunia maya mencari bantuan. Setelah membaca beberapa bahan dan melakukan praktek langsung, akhirnya sekarang sudah sedikit tahu apa itu leda.

Leda adalah sebuah alat pengecek sistem-ke-netlist yang mempunyai prepackaged rule untuk mengecek desain Verilog atau VHDL dengan berbagai aturan desain dan coding standar. Leda mengandung optional specifier tool yang dapat kita gunakan untuk mendefinisikan aturan coding kita sendiri menggunakan VeRSL (Verilog Rule Specification Language) dan VRSL (VHDL Rule Specification Language) macro-based rule programming language untuk Verilog dan VHDL. Leda juga mempunyai fitur komplit API yang dapat kita gunakan untuk mengembangkan netlist rule pada Tcl atau C untuk dijalankan dengan database desain yang terperinci.

Dengan bantuan leda, kita dapat mengetahui bagian pada coding Verilog yang menimbulkan adanya warning/error. Setelah kita tahu adanya bug tersebut, tugas kita selanjutnya adalah melakukan debugging. Tentunya, ketika kita melakukan debugging, kita juga harus mengerti terlebih dahulu masalahnya (dalam hal ini masalah pada coding Verilog). Debugging sangat penting dilakukan, agar dihasilkan code RTL yang handal sebelum diimplementasikan ke dalam ASIC. Berikut ini salah satu contoh error message dan solusinya:

Error message: VER_2_1_4_2 Use bit-wise operators (&, |, ~) instead of logic operators (&&, ||, !), even in single bit operation expressions.

Solution: Replace logical operator (&&, ||, !) with bit-wise operator (&, |, ~).

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s