Saya sama sekali tidak memiliki latar belakang dalam logika yang dapat diprogram, saya menggunakan sebagian besar mikrokontroler dalam proyek saya, tetapi baru-baru ini saya perlu bekerja dengan video dan mikrokontroler terlalu lambat untuk apa yang saya butuhkan sehingga saya mulai bermain dengan CPLD.
Saya bisa mendapatkan hasil yang baik dengan CPLD hanya menggunakan desain skematik tetapi ketika mencari info tentang CPLD saya menemukan banyak contoh menggunakan VHDL dan Verilog. Saya ingin tahu tentang apa yang membuat saya ingin mendefinisikan perangkat saya dalam salah satu bahasa ini. Apa yang bisa mereka lakukan yang tidak bisa dilakukan desain skematis? Apakah sebagian besar digunakan untuk fungsi?
Sampai sekarang saya hanya menggunakan CPLD, apakah desain FPGA menguntungkan lebih dari CPLD menggunakan bahasa ini?
sumber
Jawaban:
Desain skematik hanya berguna ketika Anda hanya menyatukan beberapa modul yang tidak tersedia (counter, adders, memori, dll). Tetapi menerapkan algoritma yang sebenarnya (katakanlah, algoritma hashing kriptografi) hampir tidak mungkin dilakukan tanpa HDL (seperti VHDL atau Verilog), karena tidak ada cara untuk menggambarkan sistem pada tingkat perilaku dengan simbol skematik.
Sebagian besar proyek dilakukan dalam HDL gaya-perilaku karena terlalu rumit untuk disintesis dengan tangan dan digambar menggunakan primitif logika secara skematis.
CPLD umumnya digunakan untuk lem logika dan lebih sedikit digunakan untuk pemrosesan, dan umumnya logika mudah diimplementasikan secara skematis, jadi saya pikir Anda benar ketika Anda menyarankan desain berbasis FPGA lebih diuntungkan dengan menggunakan HDL.
sumber
Beberapa aspek praktis di samping jawaban sempurna Jay:
* Bug favorit saya di Xilinx ISE adalah ketidakmampuan untuk memilih kabel vertikal.
sumber
Ada banyak keuntungan dari HDL (Bahasa Deskripsi Perangkat Keras) sebagai standar Entri Desain.
Deskripsi fungsionalitas dapat berada pada level yang lebih tinggi, desain berbasis HDL dapat disintesis menjadi deskripsi level gerbang dari teknologi yang dipilih, desain HDL lebih mudah dipahami daripada net-list gerbang level atau deskripsi skematik dan HDL. mengurangi kesalahan karena pemeriksaan tipe yang kuat.
Bahasa deskripsi perangkat keras VHDL dan Verilog dirancang untuk pemodelan perangkat keras dengan tujuan pemodelan pada tingkat abstraksi yang lebih tinggi yang mencakup fitur seperti, konkurensi, waktu, hierarki, penggunaan kembali komponen, perilaku negara, perilaku sinkron, perilaku asinkron, sinkronisasi, dan paralelisme yang melekat. .
Masalah muncul selama sintesis, memetakan deskripsi desain ke proses tertentu dan implementasi gerbang. Ini mengharuskan Anda tidak dapat menggunakan fitur HDL tingkat tinggi - Anda harus menghasilkan "Verilog / VHDL yang dapat disintesis"
Jadi Anda memiliki HDL untuk sintesis dan HDL untuk Simulasi dan bagian yang dapat disintesis adalah alat khusus.
Anda tidak dapat beralih dari deskripsi desain Perilaku ke daftar / tata letak net. Tetapi Anda dapat menyusun desain Anda untuk memiliki komponen perilaku yang juga memiliki aspek yang dapat disintesis yang dapat dibandingkan satu sama lain. Anda mulai dengan perilaku dan kemudian setelah itu berfungsi Anda menulis ulang untuk sintesis (yang merupakan subset). Anda pergi dari umum ke spesifik dan membangun bangku tes di sepanjang jalan.
sumber
Satu lagi kelebihan adalah bahwa HDL mendapatkan semua keuntungan yang sama dengan bahasa pemrograman biasa karena HDL dapat digunakan dalam sistem kontrol versi standar, berbeda untuk memeriksa perubahan, dll.
sumber
Selain apa yang sudah dikatakan: representasi teks jauh lebih mudah dikelola, terutama dalam proyek-proyek besar. Anda dapat (meskipun dengan kesulitan besar) mengubah HDL yang dapat disintesis menjadi skematis, tetapi ratusan baris teks biasa lebih mudah digunakan daripada ratusan elemen skematik.
sumber