Anda di halaman 1dari 7

Design Capture dalam Implementasi Field Programmable Gate Array (FPGA) dan Application Spesific Integrated Circuit (ASIC)

Ferry Wahyu Wibowo1 Jurusan Teknik Informatika, STMIK AMIKOM Yogyakarta, Jl. Ring Road Utara, Condong Catur, Sleman, Yogyakarta Indonesia
1

ferrywahyu@gmail.com

I.

Pendahuluan Perancang telah lama memodelkan rangkaian elektronik pada tingkat transistor. Namun,

ketika teknologi semikonduktor telah berkembang pesat dan integrasi telah meningkat, perancang mulai bergerak maju pada sebuah level baru dari perancangan abstrak, yaitu tingkat gerbang. Teknologi dan kompleksitas pada tingkat gerbang pun masih berkembang, sampai perancang masuk pada ranah hardware description language (HDL), yang bertujuan untuk mengurangi kompleksitas perancangan menjadi skala yang bisa dipahami manusia. Kenaikan tingkat dari perancangan abstrak adalah salah satu jalan untuk menemukan rancangan yang lebih lengkap, dan sekarang, perancangan abstrak dari teknologi sampai pada perancangan tingkat sistem. Model perancangan tingkat sistem membantu perancang menghadapi masalah yang rumit. Metode design capture memberikan kesempatan kepada perancang untuk bereksperimen, mengembangkan, mengoptimalkan, dan memverifikasi sebelum mengimplementasikan sebuah rancangan pada FPGA atau ASIC. 1. Logic tambahan Kelengkapan dari perancangan yang meningkat membuat perancang mencoba merancang logic yang sesuai, dengan membuat celah produktivitas untuk spesifikasi dan verifikasi fungsional. 2. Intellectual property (IP) Penyesuaian antara waktu dengan tekanan pasar, banyak perancang memberikan rancangan komponen mereka ke perusahaan lain. Jaminan perlindungan IP sangat diperhitungkan, sehingga perusahaan ingin agar perancang model komponen menyembunyikan implementasi rinci rancangan, saat perancang pengembang model perlu verifikasi fungsional dan waktu dari sistem. 3. Daya guna rancangan

Perancang dapat menggunakan metode design capture, sebagai parameter model untuk menaikkan daya guna komponen.

II.

Tujuan Design Capture Pendekatan perancangan top-down, perancang membuat model dari tingkat terendah dari

perancangan abstraksi selama proses rancangan ke tingkat pembuatan model sistem, yang berada pada tingkat tertinggi pada abstraksi. Ketika konsep rancangan atau sistem telah divalidasi, perancang membuat implementasi model yang direpresentasikan sebagai model hardware description language (HDL) sebagai bagian dari perancangan selanjutnya pada tingkat yang lebih rendah dari abstraksi. Model HDL dapat ditulis dalam tingkat yang lebih rendah dari tingkat abstraksi, yaitu watak (behavioral), fungsional dan struktural. Secara umum, representasi tingkat ini tidak dapat disintesis, dapat disintesis, dan tingkat gerbang berturut turut. Perancang menggunakan model behavioral, ketika memodelkan blok yang akan diimplementasikan menggunakan metode lain dan sintesis. Perancang juga menggunakan model behavioral sebagai referensi dalam verifikasi fungsional. Di bawah tingkat behavioral adalah tingkat register transfer logic (RTL), atau tingkat fungsional. Model RTL dapat dituliskan menggunakan pemodelan yang sinkron, sehingga rancangan dapat diimplementasikan menggunakan synthesis tool. Kadang kala, metode terbaik bagian perancangan adalah langsung menempatkan komponen yang sudah ada (tingkat gerbang). Model pada tingkat gerbang biasanya dibuat secara otomatis oleh peralatan sintesis atau data path generator. Perancang mungkin masih memilih untuk membuat implementasi tingkat gerbang secara manual menggunakan schematic generator. Fase sebelum terbentuk modul komponen adalah pemodelan implementasi tingkat gerbang yang terintegrasi dalam bentuk model komponen sistem, dan jika model ini telah diverifikasi, maka rancangan telah siap untuk prototipe perangkat keras (hardware). Selama proses rancangan, tingkat abstraksi akan berubah. Beberapa model sistem ini mungkin merupakan aspek kunci pemodelan dari seluruh sistem, sebagai unit sendiri, sedangkan lainnya mungkin merupakan bagian sistem dalam subsistem. Dalam implementasi model, tingkat RTL dan tingkat gerbang, subsistem lebih jauh terpisah dalam subblok yang lebih kecil. Gambar 1 menunjukkan bagian pemodelan rancangan terkait dengan jenis model.

Gambar 1 Bagian pemodelan rancangan terkait dengan jenis model

III.

Model Rencana Pengembangan Pengembangan model dimulai dengan sistem rancangan tingkat tinggi. Selama

perancangan tingkat tinggi, perancang sistem memutuskan model apa yang akan dikembangkan sesuai dengan jumlah kebutuhan untuk implementasi dan verifikasi fungsi sistem. Informasi ini diambil sebagai bagian dalam rencana pengembangan model, menetapkan model dan tipenya. Ada dua langkah utama untuk menggerakkan pengembangan model perancangan sistem, yaitu dekomposisi sistem dan pembagian fungsi. Dekomposisi sistem menentukan sumber sistem tingkat tinggi, termasuk prosessor, bus, dan memori. Sedangkan, pembagian fungsi digunakan untuk mengarahkan alokasi dari fungsi sistem ke satu atau lebih IC, sehingga batasan fisik dipertimbangkan secara penuh. Faktor yang sering berpengaruh pada pembagian fungsi, adalah aliran data sistem utama dan bus, clock, software pengendali register, arsitektur memori, unit pemrosesan dan penghubung datapath, paket penghitung pin, paket ukuran, dan power trade-off. Pembagian

fungsi sering menghasilkan arsitektur untuk optimalisasi mikroarsitektur. Sehingga, antarmuka unit fungsional termasuk format data dan enkoding telah diputuskan. Sebagai perancang FPGA dan ASIC, perlu memahami spesifikasi tingkat sistem dan pengembangan model. Beberapa perbedaan tipe model akan dikembangkan diluar

pengembangan produk. Tabel I Perbedaan spesifikasi tingkat sistem (Browy dkk., 1997)

IV.

Pemodelan Sistem Capture merupakan kunci dalam perancangan untuk mengukur kinerja sistem. Hal ini

penting untuk mengetahui kemampuan sistem yang dirancang untuk dapat memperkirakan beban yang bisa ditangani. Capture juga merupakan kunci algoritma sistem, pembuatan model behavioral seluruh sistem, yang memungkinkan untuk membuat algoritma baru, optimalisasi algoritma untuk sebuah konteks baru, atau memilih algoritma terbaik. Penentuan dan optimalisasi arsitektur sistem, modul, dan paket, merupakan fase perancangan dalam berbagai subsistem, algoritma antara hardware dan software.

a. Model Behavioral HDL

Tingkat behavioral HDL dari abstraksi, mempunyai tujuan design capture, yaitu memisahkan bagian rancangan untuk implementasi lanjut, perancang memodelkan behavioral HDL sebagai kotak hitam dalam sintesis. Misalkan, seorang perancang FPGA atau ASIC mungkin menggunakan behavioral model dalam rancangannya menggunakan RAM atau ROM untuk diimplementasikan oleh module generator, atau perancang menggunakan model data path sebagai behavioral model untuk diimplementasikan oleh data path compiler. Perancang juga menggunakan behavioral model sebagai bagian modul komponen yang tidak diimplementasikan, untuk membantu verifikasi fungsional. Perancang juga menuliskan fungsional rancangan dari register transfer level (RTL) untuk sintesis. Perancang membuat model campuran antara model behavioral dan analitik. Model campuran ini lebih dikenal sebagai model analitik. Model ini digunakan ketika kecepatan proses sistem lebih rendah dari model uji. Model analitik dari sub-sistem mempunyai kemungkinan fungsi distribusi dan model antrian, yang kecepatan respon proses sistem sesuai parameter sistem tingkat tinggi. Design capture dalam fase implementasi modul bertujuan membuat rancangan yang dapat disintesis. Sintesis tool membutuhkan model rancangan RTL dibandingkan model sistem karena didalamnya tidak hanya terdapat algoritma, tetapi juga behavioral dari rangkaian elektronika pada setiap cycle clock. Synthesis tool membutuhkan HDL sebagai masukan, dan deskripsi harus mengikuti model sintesis, agar tool dapat memperbaiki behavior yang dimodelkan. Rancangan pada tingkat tinggi dari abstraksi digunakan untuk meningkatkan implementasi pewaktuan, dan synthesis tool dapat diimplementasikan pada tingkat gerbang deskripsi HDL yang dikenal sebagai RTL. Sehingga, untuk mendapatkan keuntungan penuh dari kemudahan penyedia synthesis tool, lebih baik memodelkan perancangan tingkat tinggi dari abstraksi pada tingkat state machine, bukan pada tingkat flip-flop. Partisi blok subsistem besar dapat dilakukan menggunakan synthesis tool terbaik menggunakan sedikitnya 5000 gerbang. Masalah yang harus dipertimbangkan saat partisi adalah clock, data path dan control logic, dan kebutuhan DFT. Optimalisasi inti blok tingkat rancangan seharusnya menggunakan rancangan sebelumnya dan pengoptimalisasian corei. Pendekatan ini mengurangi waktu pengembangan perancangan dan menaikkan kemampuan kualitas rancangan.

b. Model Struktural Pada tingkat struktural dalam abstraksi, tujuan design capture adalah untuk membuat modul-modul rancangan yang bersifat tidak dapat disintesis. Bentuk modul yang digunakan pada tingkat struktural ini meliputi uji struktur, tri-state bus driver, logik asinkron, dan I/O pad.

c. Model Sistem Model sistem dapat dibagi menjadi beberapa katagori, diantaranya : Sistem spesifikasi, bermain penting dalam pendefinisian sistem yang diperlukan. Model analitika, menganalisa kinerja sistem. Model behavioral, menggali perbedaan algoritma dan partisi untuk sistem kendali dan proses Model campuran, mengkombinasikan kinerja pemodelan dan pengembangan algoritma dalam satu set model. Blok diagram, merepresentasikan partisi sistem.

d. Spesifikasi Sistem Sistem tingkat rekayasa mengkhususkan pada dokumen sistem yang diperlukan. Spesifikasi ini, tidak hanya sebuah dokumen yang dapat dirangkum, tetapi juga termasuk model sistem yang dapat dieksekusi menggunakan verifikasi fungsional dari simulasi sistem tingkat HDL. Garis besar spesifikasi, terdiri dari : Fungsionalitas, merupakan bentuk pengoperasian subsistem dan merupakan garis besar umum pada setiap blok logik utama dan bus, dari FPGA dan ASIC. Daya guna, menjelaskan tentang harapan kinerja suatu sistem atau sub-sistem, dan biasanya diukur dari hubungan antara latensi dan kerja sistem per detik. Hal ini berguna untuk menentukan kinerja sistem yang diharapkan, sehingga perancang dapat menentukan tujuan khusus dan optimalisasi sistem, dan jika perlu perancang mengatur daya guna sistem tersebut. Banyaknya gerbang logika yang diperlukan dalam perancangan sistem. Banyaknya sumber tenaga yang diperlukan dalam perancangan sistem.

Fungsi blok, menjelaskan fungsi blok dan kerja blok di luar yang diharapkan dalam perancangan, masukan dan keluaran setiap blok, termasuk bentuk diagram waktu menggambarkan kualitas blok tersebut.

Makro blok, merupakan gambaran umum bentuk blok keseluruhan perancangan suatu sistem atau sub-sistem. Uji, merupakan proses peninjauan dan pengujian fungsi agar didapatkan kecepatan fungsi yang dapat bekerja dengan baik.

Daftar Pustaka Browy, C., Gullikson G., Indovina M., 1997, A Top-Down Approach Design to IC Design, Free published. Pratt, G. and Jarett, J., 2001, Top-Down Design Methods Bring Back The Useful Schematic Diagram, Mentor Graphics Corp. Stan, M., Cabe, A., Ghosh, S., Qi Z., 2007, Teaching Top-Down ASIC/SoC Design vs Bottom-Up Custom VLSI, IEEE International Conference on Microelectronic Systems Education (MSE07)

Anda mungkin juga menyukai