Kursus FPGA – Semua yang perlu Anda ketahui tentang Kursus VHDL Dot Matrix
Saya senang mengumumkan bahwa kursus VHDL dan FPGA yang telah saya kerjakan selama enam bulan terakhir mulai selesai. Kursus ini dalam versi beta saat ini, dan saya berencana meluncurkannya untuk pertama kalinya pada musim gugur ini.
Untuk siapa kursus FPGA?
Kursus FPGA ditujukan untuk pengembang yang memiliki pengetahuan tentang bahasa pemrograman lain tetapi baru mengenal VHDL dan FPGA. Kursus ini akan membawa Anda dari tingkat pemula atau menengah hingga mampu memahami dan menggunakan konstruksi pengkodean VHDL tingkat lanjut.
Kursus ini sangat cocok untuk insinyur perangkat lunak profesional yang telah ditugaskan untuk pengembangan FPGA. Ini juga cocok untuk pelajar atau pekerja lepas yang tertarik dengan desain perangkat keras, mungkin sedang mempertimbangkan transisi karier ke pengembangan FPGA.
Siapa pun yang memiliki keterampilan pemrograman dasar dapat memperoleh manfaat dari pendekatan langsung yang diajarkan kursus ini kepada Anda. Kami sedang mengembangkan produk fisik yang nyata dari awal. Saya menunjukkan kepada Anda bagaimana saya akan memecahkan masalah ini jika diminta dari saya sebagai insinyur FPGA.
Proyek
Pengontrol tampilan LED dot matrix adalah produk yang kami buat dalam kursus ini. Tampilan LED dot matrix biasanya digunakan untuk billboard outdoor besar atau tampilan informasi akhir-akhir ini. Meskipun, mereka telah digunakan untuk perangkat yang lebih kecil seperti jam tangan digital dan mesin penjual otomatis sebelum munculnya layar LCD yang murah.
Anda dapat melakukan kursus sebagai latihan simulasi saja jika Anda mau. Anda tidak perlu membeli perangkat keras apa pun atau bahkan papan pengembangan FPGA. Tetapi Anda dapat membuat prototipe sendiri jika mau, semua informasi disertakan dalam kursus.
Kit Evaluasi FPGA iCEstick Lattice adalah papan pengembangan FPGA yang digunakan dalam kursus ini. Papan seharga $25 ini memiliki fitur iCE40 HX1K FPGA dengan 1280 elemen logika dan 64 kb RAM blok, yang lebih dari cukup untuk aplikasi kita. Papan iCEstick dapat dipasang langsung ke papan tempat memotong roti, sesuatu yang akan kami lakukan saat membuat prototipe.
Kami membuat implementasi FPGA yang mampu mengontrol tampilan LED matriks 8x8 dot dengan 64 LED. FPGA akan menyimpan informasi dalam blok RAM tentang cara merender setiap karakter ASCII.
Anda akan dapat mengirim teks ke FPGA dengan menggunakan konektor USB yang ada di papan FPGA. Teks ditampilkan pada tampilan dot matrix saat kita mengetik di terminal serial pada komputer. FPGA akan menggemakan karakter kembali ke terminal serial menggunakan transceiver UART yang kita buat dalam kursus.
Lihat Bill of Materials (BOM) untuk semua suku cadang, bahan habis pakai, dan alat yang digunakan untuk membuat prototipe.
Struktur Kursus FPGA
120 kuliah dibagi menjadi 17 bagian, dengan video berdurasi rata-rata 10 menit. Saya sengaja membagi hal-hal rumit menjadi beberapa kuliah pendek agar lebih mudah dikelola. Setiap bagian mencakup modul VHDL, testbench, atau konsep dalam desain VHDL dan FPGA. Kursus ini tidak meninggalkan apa pun, semua konsep dan keputusan desain dijelaskan.
Dalam Memulai bagian, kami menginstal perangkat lunak yang diperlukan dan mengatur lingkungan pengembangan. Bagian berikutnya menyajikan papan pengembangan FPGA Lattice iCEstick, serta skema analog dari tampilan dot matrix dan sirkuit pendukung.
Saya akan menjelaskan semua yang saya lakukan di sesi pengkodean sehingga Anda dapat mengikuti perkembangannya, bahkan jika Anda hanya memiliki pengetahuan dasar VHDL. Anda dapat menghubungkan kode yang kami tulis dengan bahasa pemrograman lain yang mungkin Anda ketahui.
Editor Visual Studio Code (VSCode) dengan plugin VHDL digunakan dalam kursus ini. VSCode adalah salah satu editor pemrograman paling populer saat ini, dan sepenuhnya gratis. Kami menggunakan cuplikan template dari plugin VHDL untuk menghindari menghabiskan waktu pada kode yang sepele dan berulang. Meskipun demikian, VSCode bukanlah IDE yang menyelesaikan kode secara otomatis tanpa Anda benar-benar memahami apa yang terjadi.
Kami mensintesis setiap modul VHDL satu per satu dan memeriksa skema yang dibuat oleh alat sintesis. Kami melakukan ini sebagai kuliah terakhir dari setiap bagian coding yang menghasilkan modul produksi RTL (register-transfer level). Pelajaran ini mengajarkan Anda keterampilan yang berharga untuk memahami bagaimana setiap baris kode diterjemahkan ke dalam logika digital.
Kursus FPGA Pengendali LED Dot Matrix mengajarkan Anda teknik desain VHDL yang tepat. Lakukan dengan benar saat pertama kali Anda menyalakan chip dengan membuat testbench untuk setiap modul, di setiap hierarki desain. Trial and error bukanlah strategi yang tepat saat mengembangkan perangkat keras. Kursus ini mengajarkan Anda untuk mengembangkan meja ujian pemeriksaan mandiri sebagai insinyur FPGA profesional.
ModelSim PE Student Edition digunakan dalam kursus karena merupakan simulator VHDL yang paling umum digunakan. Simulator edisi pelajar dapat diunduh secara gratis; ini berlaku untuk semua perangkat lunak yang digunakan dalam kursus ini.
Akhirnya, kami menyelesaikan kursus dengan membuat prototipe fisik di papan tempat memotong roti dan mengimplementasikan desain pada FPGA. Momen sebenarnya adalah ketika kita menghubungkan perangkat ke komputer melalui port USB dan ketik terminal serial. Apakah karakter akan muncul di layar LED dot matrix?
Inilah saat manfaat memiliki rezim verifikasi yang ketat menjadi jelas. Masalah yang harus kami tangani jauh lebih mudah dipecahkan daripada chip yang tidak responsif, yang kemungkinan merupakan hasil pertama untuk proyek hobi FPGA murni.
Apa yang akan Anda pelajari dari kursus FPGA
Anda akan belajar bagaimana mendekati tugas sebagai insinyur FPGA profesional. Kursus ini akan mengubah keterampilan VHDL Anda ke tingkat di mana Anda merasa percaya diri mengambil tugas VHDL apa pun.
Ini adalah beberapa hal yang akan diajarkan kursus ini kepada Anda:
Fitur VHDL lanjutan Paket, catatan, dan subprogram
Jenis yang dilindungi (kelas VHDL)
Jenis akses (penunjuk VHDL)
Generik
Atribut sinyal seperti 'last_event
atau 'stable
Fitur VHDL-2008 seperti referensi sinyal hierarkis
Strategi testbench lanjutan Komponen verifikasi
Model fungsional bus
memeriksa sendiri VHDL testbench
Testbench berbasis TCL interaktif
Menggunakan alat desain FPGA Simulator VHDL ModelSim
Perangkat lunak sintesis Synplify Pro
Perangkat lunak desain iCEcube2 Lattice
Penetapan pin dan batasan jam
Sintesis, tempat, dan rute
Ingin tahu lebih banyak tentang kursus ini?
Diperbarui pada 21 September 2019: Saya telah menyelesaikan kursus.
Klik di sini untuk melihat kurikulum kursus
Buka: Untuk diputuskan .