Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial Internet of Things >> Tertanam

Desain tersemat dengan FPGA:Implementasi

Ketersediaan FPGA yang lebih kuat dan lingkungan pemrograman yang lebih efektif telah membuat implementasi FPGA dapat diakses secara luas tetapi menggunakan FPGA bisa tampak menakutkan.

Catatan Editor:Karena algoritme canggih terus muncul untuk desain produk cerdas, pengembang sering kali kesulitan menerapkan sistem tertanam yang mampu memenuhi tuntutan pemrosesan terkait algoritme ini. FPGA dapat memberikan kinerja yang diperlukan, tetapi merancang dengan FPGA telah lama dianggap terbatas pada bidang ahli pemrograman FPGA. Namun, hari ini, ketersediaan FPGA yang lebih kuat dan lingkungan pengembangan yang lebih efektif telah membuat pengembangan FPGA dapat diakses secara luas. Dalam kutipan ini, Bab 4 dari buku Architecting High-Performance Embedded Systems, penulis menawarkan tinjauan komprehensif perangkat FPGA, bahasa implementasi, dan proses pengembangan FPGA serta panduan terperinci tentang cara mulai mengimplementasikan FPGA di Anda sendiri desain. Kutipan lengkapnya disajikan dalam rangkaian angsuran berikut:
1:Sumber daya perangkat keras
2:Bahasa implementasi
3:Proses pengembangan
4:Membangun proyek
5:Implementasi (artikel ini)

Diadaptasi dari Merancang Sistem Tertanam Kinerja Tinggi, oleh Jim Ledin.


Menguji perilaku logika

Penting untuk menguji perilaku logika menggunakan simulasi sebelum mencoba menjalankannya di FPGA. Ini karena lebih mudah untuk mendeteksi dan memperbaiki masalah di lingkungan simulasi daripada dengan logika yang berjalan di dalam FPGA. Alat simulasi Vivado melakukan pekerjaan yang sangat baik dalam merepresentasikan perilaku sirkuit:

  1. Di Sumber sub-jendela, klik kanan pada Sumber Simulasi dan pilih Tambahkan Sumber… :


Gambar 4.18 – Pilihan menu Add Sources… untuk Simulation Sources

  1. Dalam Tambahkan Sumber dialog, pastikan Tambah atau buat sumber simulasi dipilih, lalu klik Berikutnya .
  2. Dalam Tambah atau Buat Sumber Simulasi dialog, klik Buat File .
  3. Masukkan nama file vhdl dan klik Oke .
  4. Klik Selesai untuk menutup Tambah atau Buat Sumber Simulasi dialog, lalu klik OK di Tentukan Modul dialog dan klik Ya ketika ditanya apakah Anda yakin ingin menggunakan ini
  5. Klik dua kali Adder4 TestBench (Perilaku) (Adder4TestBench.vhdl) di bawah Sumber Simulasi . Hapus konten vhdl . yang terisi secara otomatis jendela editor dan masukkan kode berikut ke dalam Adder4TestBench.vhdl editor:
perpustakaan IEEE; gunakan IEEE.STD_LOGIC_1164.ALL; gunakan IEEE.NUMERIC_STD.ALL;entity ADDER4_TESTBENCH isend entity ADDER4_TESTBENCH;architecture BEHAVIORAL of ADDER4_TESTBENCH adalah komponen ADDER4 port ( A4 :in std_logic_vector(3 downto 0); B4 :in std_logic_vector(3 downtovector_vector(3 downtovector_logic) 0); C_OUT4 :keluar std_logic ); komponen akhir; sinyal a :std_logic_vector(3 hingga 0); sinyal b :std_logic_vector(3 hingga 0); sinyal s :std_logic_vector(3 hingga 0); sinyal c_out :std_logic; sinyal yang diharapkan_sum5:tidak ditandatangani(4 hingga 0); sinyal yang diharapkan_sum4:unsigned(3 ke 0); sinyal yang diharapkan_c :std_logic; kesalahan sinyal :std_logic;mulai TESTED_DEVICE:peta port ADDER4 ( A4 => a, B4 => b, SUM4 => s, C_OUT4 => c_out ); TEST:proses dimulai -- Uji semua kombinasi dari dua tambahan 4-bit (256 pengujian total) untuk a_val dalam loop 0 hingga 15 untuk b_val dalam loop 0 hingga 15 -- Atur input ke komponen ADDER4 a <=std_logic_vector(to_unsigned( a_val, a'panjang)); b <=std_logic_vector(to_unsigned(b_val, b'length)); tunggu 1 ns; -- Hitung jumlah 5-bit dari dua nilai 4-bit yang diharapkan_sum5 <=unsigned('0' &a) + unsigned('0' &b); tunggu 1 ns; -- Pecah jumlah menjadi 4-bit output dan carry bit expect_sum4 <=expect_sum5(3 downto 0); diharapkan_c <=diharapkan_sum5(4); tunggu 1 ns; -- Sinyal 'error' hanya akan menjadi 1 jika terjadi error jika ((unsigned(s) =unsigned(expected_sum4)) dan (c_out =expected_c)) maka error <='0'; kesalahan lain <='1'; berakhir jika; -- Setiap melewati loop dalam membutuhkan waktu 10 ns, tunggu selama 7 ns; lingkaran akhir; lingkaran akhir; tunggu; akhir proses TEST;akhiri arsitektur PERILAKU;

Kode ini menjalankan fungsionalitas penambah 4-bit dengan menampilkan semua kombinasi angka 4-bit ke masing-masing A4 dan B4 masukan ke Adder4 komponen. Ini membandingkan SUM4 dan C_OUT4 keluaran Adder4 komponen ke nilai yang dihitung secara independen untuk input yang sama. Setelah setiap operasi penambahan, kesalahan sinyal disetel ke 0 jika Adder4 keluaran cocok dengan nilai yang diharapkan, atau disetel ke 1 jika ada ketidaksesuaian.

Kode di Adder4TestBench.vhdl menyerupai kode perangkat lunak tradisional dalam cara menggunakan loop bersarang untuk menerapkan semua kombinasi input pengujian ke Adder4 komponen yang diuji. Kode yang menjalankan pengujian dalam mode simulasi tidak dapat disintesis, yang berarti kode tersebut tidak sepenuhnya mewakili rangkaian logika perangkat keras dan mampu melakukan operasi seperti perangkat lunak tradisional, seperti eksekusi iteratif untuk loop.

Namun, seperti dalam sirkuit fisik, sinyal yang diberi nilai dalam kode bangku tes menggunakan operator <=tidak dapat digunakan pada saat yang sama dalam waktu dalam ekspresi berikutnya. Ini karena lingkungan simulasi mewakili efek dunia nyata dari penundaan propagasi, yang signifikan bahkan dalam perangkat FPGA kecil. Tiga menunggu 1 ns; pernyataan dalam operasi rangkaian jeda kode bangku tes untuk memungkinkan penundaan propagasi. Penundaan 1 ns ini memberikan waktu untuk nilai sinyal yang dihitung tepat sebelum menunggu pernyataan untuk menyebarkan sehingga mereka dapat digunakan dalam pernyataan berikut. akhir menunggu 7 ns; pernyataan di loop dalam adalah jeda yang memungkinkan kita untuk melihat dengan jelas hasil setiap iterasi dari loop simulasi di tampilan jejak sinyal.

  1. Klik kanan Adder4 TestBench (Perilaku) (Adder4TestBench.vhdl) di bawah Sumber Simulasi dan pilih Pembaruan Otomatis dan Susun Kompilasi . Ini menetapkan ADDER4_TESTBENCH sebagai objek tingkat atas untuk menjalankan simulasi:


Gambar 4.19 – Pilihan menu untuk mengatur Pembaruan Otomatis dan Urutan Kompilasi

  1. Klik Jalankan Simulasi , lalu Jalankan Simulasi Perilaku di Navigator Alur jendela untuk masuk ke mode simulasi. Jika Anda belum menyimpan file editor, Anda akan diminta untuk melakukannya. Klik Simpan . Kemudian simulasi akan berjalan:


Gambar 4.20 – Jalankan pilihan menu Simulasi Perilaku

  1. Saat SIMULASI jendela terbuka, klik tombol maksimalkan di jendela keluaran simulasi dengan judul Tanpa Judul 1 :


Gambar 4.21 – Jendela hasil simulasi

Total waktu simulasi setiap melewati loop dalam adalah 10 ns. Karena ada 256 melewati loop di Adder4TestBench.vhdl , waktu untuk menjalankan simulasi adalah 2560 ns.

  1. Setel waktu menjalankan simulasi ke 2560 ns di bilah alat atas (langkah 1 pada gambar berikut), tekan tombol restart yang mengarah ke kiri (langkah 2 ), lalu tekan tombol yang menghadap ke kanan untuk menjalankan simulasi selama 2560 ns (langkah 3 ), dan, terakhir, tekan tombol Zoom Fit tombol (langkah 4 ) untuk menskalakan rentang data keluaran simulasi agar sesuai dengan jendela:


Gambar 4.22 – Hasil simulasi dari awal sampai akhir run

Anda dapat menggunakan ikon kaca pembesar untuk memperbesar setiap titik jejak dan mengamati hasil dari setiap operasi penambahan yang dilakukan selama pengujian. Misalnya, gambar berikut menunjukkan nilai desimal 6 dan 2 ditambahkan untuk menghasilkan hasil 8 dengan carry 0. Nilai ini sesuai dengan nilai yang diharapkan, yang menyebabkan error untuk disetel ke 0. kesalahan sinyal 0 untuk semua 256 kasus uji, menunjukkan rangkaian logika kami lulus semua pengujian:


Gambar 4.23 – Tampilan hasil simulasi yang diperbesar

  1. Tutup mode simulasi dengan mengeklik X dengan warna biru SIMULASI bilah di atas jejak data Klik OK ketika ditanya apakah Anda ingin menutup simulasi.

Setelah lulus pengujian perilaku, kami akan menentukan sinyal I/O yang digunakan dalam desain.

Mendefinisikan sinyal I/O

Langkah kita selanjutnya adalah menghubungkan input dan output dari rangkaian kita ke perangkat keras pada papan Arty. Masukannya akan berupa sakelar papan dan tombol tekan, dan keluarannya adalah LED.

Langkah-langkah berikut akan membuat file kendala yang menjelaskan pin I/O yang akan kita gunakan pada perangkat FPGA dan fungsi yang terhubung ke pin tersebut pada papan Arty. File kendala memiliki ekstensi xdc:

  1. Di Sumber sub-jendela, klik kanan Batasan dan pilih Tambahkan Sumber… .
  2. Dalam Tambahkan Sumber dialog, pastikan Tambah atau buat batasan dipilih, lalu klik Berikutnya .
  3. Dalam Tambah atau Buat Batasan dialog, klik Buat File .
  4. Masukkan nama file Arty-A7-100.xdc (atau Arty-A7-35.xdc jika sesuai untuk perangkat Anda) dan klik OK .
  5. Klik Selesai untuk mengabaikan Tambah atau Buat Batasan
  6. Luaskan Batasan pohon sumber dan klik dua kali Arty-A7-35.xdc .
  7. Digilent menyediakan file kendala yang telah diisi sebelumnya untuk papan Arty A7 Kunjungi https://raw.githubusercontent.com/Digilent/digilent-xdc/master/Arty-A7-35-Master .xdc dan salin seluruh konten jendela browser ke jendela editor Arty-A7-35.xdc di Vivado. Jika sesuai untuk perangkat Anda, gunakan file di https://raw.githubusercontent.com/Digilent/digilent-xdc/master/Arty-A7-100-Master.xdc sebagai gantinya.
  8. Semua pin I/O dikomentari dalam file kendala dengan Batalkan komentar pada baris yang sesuai dalam file dengan menghapus karakter # dari awal setiap baris. Kami akan menggunakan pin yang terdaftar di bagian berikut di Arty- A7-100.xdc file:Switch , RGB LED (tetapi hanya led0_g , LED hijau pertama), LED , dan Tombol . Gambar berikut menunjukkan baris-baris ini setelah dihapus komentarnya:


Gambar 4.24 – Jendela editor kendala

Di bagian berikutnya, kita akan membuat file VHDL tingkat atas yang menghubungkan kode penambah dengan perangkat I/O.

Membuat file VHDL tingkat atas

Kami selanjutnya akan membuat file VHDL tingkat atas yang menghubungkan komponen penambah 4-bit kami ke sinyal I/O papan yang sesuai:

  1. Di Sumber sub-jendela, klik kanan pada Sumber Desain dan pilih Tambahkan Sumber… .
  2. Dalam Tambahkan Sumber dialog, pastikan Tambah atau buat sumber desain dipilih, lalu klik Berikutnya .
  3. Dalam Tambah atau Buat Sumber Desain dialog, klik Buat File .
  4. Masukkan nama file vhdl dan klik Oke .
  5. Klik Selesai untuk menutup Tambah atau Buat Sumber Desain dialog, lalu klik OK di Tentukan Modul dialog dan klik Ya ketika ditanya apakah Anda yakin ingin menggunakan ini
  6. Klik dua kali vhdl di bawah Sumber Desain . Hapus konten ArtyAdder.vhdl . yang terisi secara otomatis jendela editor dan masukkan kode berikut ke dalam ArtyAdder.vhdl editor:
-- Muat pustaka standar IEEE; gunakan IEEE.STD_LOGIC_1164.ALL;entitas ARTY_ADDER adalah port ( sw :in STD_LOGIC_VECTOR (3 downto 0); btn :in STD_LOGIC_VECTOR (3 downto 0); led :out STD_LOGIC_VECTOR (3 downto 0); led0_g :out STD_LOGIC );end entity ARTY_ADDER;architecture BEHAVIORAL dari ARTY_ADDER adalah -- Referensi definisi sebelumnya dari komponen penambah 4-bit ADDER4 adalah port ( A4 :in std_logic_vector(3 downto 0); B4 :in std_logic_vector(3 downto 0); SUM4 :out std_logic_vector(3 downto 0); C_OUT4 :keluar std_logic ); komponen akhir;mulai ADDER :peta port ADDER4 ( A4 => sw, B4 => btn, SUM4 => led, C_OUT4 => led0_g );akhiri arsitektur PERILAKU;

Kode ini memetakan nama sinyal untuk perangkat I/O yang disebutkan dalam Arty-A7-100.xdc sebagai sw (4 sakelar), btn (4 tombol tekan), dipimpin (4 LED satu warna), dan led0_g (saluran hijau dari LED multi-warna pertama) ke ADDER4 masukan dan keluaran.

Meskipun VHDL tidak peka huruf besar/kecil, pemrosesan xdc file kendala di Vivado peka huruf besar-kecil. Kasus yang digunakan dalam nama perangkat I/O yang ditentukan dalam xdc file harus identik ketika direferensikan dalam file VHDL. Secara khusus, nama sinyal I/O di VHDL harus huruf kecil dalam file ini karena huruf kecil dalam file kendala.

Kami sekarang siap untuk mensintesis, mengimplementasikan, dan memprogram desain kami untuk papan Arty.

Mensintesis dan mengimplementasikan bitstream FPGA

Atau, Anda dapat memilih Hasilkan Bitstream dan Vivado akan melakukan semua langkah yang diperlukan, termasuk sintesis, implementasi, dan pembuatan bitstream tanpa campur tangan pengguna lebih lanjut. Jika terjadi kesalahan fatal, proses akan berhenti dan pesan kesalahan akan ditampilkan. Lakukan langkah-langkah berikut untuk menghasilkan bitstream:

  1. Klik Buat Bitstream untuk memulai pembuatan Anda mungkin ditanya apakah ingin menyimpan editor teks. Klik Simpan . Anda mungkin diberi tahu bahwa tidak ada hasil implementasi yang tersedia dan ditanya apakah boleh meluncurkan sintesis dan implementasi. Klik Ya :


Gambar 4.25 – Menghasilkan pilihan menu Bitstream

  1. Peluncuran Berjalan dialog kemudian Anda dapat memilih nilai untuk Jumlah pekerjaan hingga jumlah inti prosesor di komputer Anda. Menggunakan lebih banyak inti membuat proses berjalan lebih cepat, tetapi dapat menghambat mesin Anda jika Anda ingin terus menggunakannya selama proses pembuatan yang panjang. Klik Oke untuk memulai pembuatan:


Gambar 4.26 – Dialog Luncurkan Jalankan

  1. Selama proses build, Vivado akan menampilkan status di sudut kanan atas jendela utama. Jika perlu, Anda dapat membatalkan proses pembuatan dengan mengeklik Batalkan di sebelah tampilan status:


Gambar 4.27 – Tampilan status kompilasi

  1. Saat proses pembangunan selesai, dengan asumsi tidak ada kesalahan fatal, Pembuatan Bitstream Selesai dialog will Meskipun opsi lain ditawarkan, kami akan melanjutkan langsung dengan mengunduh bitstream ke papan Arty. Pilih Buka Pengelola Perangkat Keras dan klik Oke :


Gambar 4.28 – Dialog Pembangkitan Bitstream yang Selesai

Selanjutnya, kita akan mengunduh bitstream ke dalam FPGA.

Mengunduh bitstream ke papan

Lakukan langkah-langkah berikut untuk mengunduh bitstream ke papan Arty A7:

  1. MANAGER PERANGKAT KERAS dialog akan muncul dan menunjukkan Tidak ada target perangkat keras yang terbuka .
  2. Hubungkan papan Arty A7-35 atau A7-100 Anda ke komputer dengan USB Tunggu beberapa detik hingga papan dikenali, lalu klik Buka target , lalu Sambung Otomatis :


Gambar 4.29 – Buka target dan pilihan Auto Connect

  1. Setelah beberapa detik, Vivado akan menunjukkan bahwa papan telah terhubung. Klik Program perangkat untuk mengunduh bitstream FPGA ke Arty Anda akan diminta untuk memilih file bitstream. Jika Anda menggunakan struktur direktori yang sama seperti contoh ini, file akan berada di C:/Projects/ArtyAdder/ ArtyAdder.runs/impl_1/ARTY_ADDER.bit :


Gambar 4.30 – Dialog Perangkat Program

  1. Klik Program untuk mengunduh program ke perangkat FPGA dan memulainya
  2. Sekarang Anda dapat menguji pengoperasian program dengan Arty I/O. Tempatkan keempat sakelar di mati posisi (gerakkan sakelar ke arah tepi papan yang berdekatan) dan jangan tekan salah satu dari empat tombol tekan. Keempat LED hijau harus mati.
  3. Jika Anda menghidupkan sakelar individual atau menekan salah satu tombol, LED hijau yang sesuai akan menyala. Menyalakan kombinasi sakelar apa pun sambil menekan sejumlah tombol tekan akan menambahkan nomor 4-bit yang sesuai dan menyalakan LED dengan tombol Jika ada carry (misalnya, nyalakan SW3 dan tekan BTN3 secara bersamaan), LED carry hijau akan menyala.

Proses pemrograman yang dilakukan disini menyimpan program dalam RAM FPGA. Jika Anda memutar daya pada papan FPGA, Anda harus mengulangi proses pemrograman untuk memuat ulang program. Atau, Anda dapat menyimpan file konfigurasi FPGA di memori flash onboard seperti yang dijelaskan di bagian berikut.

Memrogram bitstream ke memori flash onboard

Untuk mengkonfigurasi FPGA setiap kali daya diterapkan ke papan Arty, file konfigurasi FPGA harus disimpan ke memori flash di papan. Jika jumper MODE dipasang, FPGA akan mencoba mengunduh file konfigurasi dari memori flash onboard saat dihidupkan. Memori ini terletak di chip terpisah yang berdekatan dengan FPGA Artix-7. Ikuti langkah-langkah berikut untuk memprogram file konfigurasi ke memori flash:

  1. Pasang MODE jumper di papan Arty jika belum ada
  2. Klik kanan Hasilkan Bitstream dan pilih Setelan Bitstream… .
  3. Di Setelan dialog, centang kotak di sebelah -bin_file dan klik Oke :


Gambar 4.31 – Dialog pengaturan Bitstream

  1. Dalam dialog utama Vivado, klik Hasilkan Bitstream dan ulangi proses pembuatan bitstream. Klik Batalkan ketika Pembuatan Bitstream Selesai dialog
  1. Di Perangkat Keras dialog, klik kanan nomor bagian FPGA (xc7a100t_0 ) dan pilih Tambahkan Perangkat Memori Konfigurasi… :


Gambar 4.32 – Pilihan menu Add Configuration Memory Device…

  1. Ketik s25fl127 ke dalam Telusuri Ini akan memunculkan satu nomor bagian yang cocok. Pilih bagian dan klik OK :


Gambar 4.33 – Tambahkan dialog Perangkat Memori Konfigurasi

  1. Anda akan disajikan dengan dialog yang menanyakan Apakah Anda ingin memprogram perangkat memori konfigurasi sekarang? Klik Oke .
  2. Ini akan memunculkan Perangkat Memori Konfigurasi Program dialog yang meminta nama file konfigurasi. Klik tombol di sebelah kanan File konfigurasi dan pilih C:/Projects/ArtyAdder/ArtyAdder.runs/impl_1/ARTY_ADDER.bin. Klik Oke :


Gambar 4.34 – Dialog Perangkat Memori Konfigurasi Program

  1. Proses pemrograman akan memakan waktu beberapa detik. Anda akan menerima pesan yang menunjukkan keberhasilan setelah file diprogram ke dalam memori flash board:


Gambar 4.35 – Dialog Program Flash selesai

Setelah ini, setiap kali Anda memutar daya papan, program penambah 4-bit akan dimuat dan dijalankan. Ini akan memakan waktu lama untuk memuat program dengan pengaturan yang kami gunakan untuk memuat file konfigurasi. Untuk menghindari menunggu FPGA memuat program, Anda dapat meningkatkan kecepatan memuat file konfigurasi dengan melakukan langkah-langkah berikut:

  1. Pilih Buka Desain Sintesis di Navigator Arus .
  2. Di menu utama Vivado, pilih Alat/Edit Properti Perangkat… .
  3. Dalam Umum tab, atur Aktifkan Kompresi Bitstream ke BENAR .
  4. Dalam Konfigurasi tab, atur Laju Konfigurasi (MHz) ke 33, lalu klik OK .
  5. Buat bitstream lagi, dan program memori flash seperti yang dijelaskan. Anda harus menghapus perangkat memori konfigurasi dan menambahkannya kembali untuk menampilkan opsi untuk memprogram ulang.
  6. Tutup Perangkat Keras Manajer .
  7. Cabut kabel USB papan Arty dan colokkan. Program akan mulai berjalan hampir seketika saat dihidupkan.

Bagian ini menyajikan contoh logika kombinasional sederhana yang berinteraksi dengan sinyal pada pin I/O FPGA. Maksud di sini adalah untuk membiasakan Anda dengan Vivado

rangkaian alat dan untuk mendemonstrasikan bagaimana alat digunakan untuk melakukan siklus pengembangan FPGA yang lengkap.

Ringkasan

Bab ini dimulai dengan diskusi tentang penggunaan FPGA yang efektif dalam arsitektur sistem tertanam waktu nyata dan dilanjutkan dengan deskripsi perangkat FPGA standar dan komponen tingkat rendah yang dikandungnya. Rentang bahasa desain FPGA, termasuk HDL, metode diagram blok, dan bahasa pemrograman perangkat lunak populer seperti C/C++, diperkenalkan. Garis besar proses pengembangan FPGA disajikan. Bab ini diakhiri dengan contoh lengkap siklus pengembangan FPGA, dimulai dengan pernyataan persyaratan dan diakhiri dengan sistem fungsional yang diimplementasikan pada papan pengembangan FPGA berbiaya rendah.

Setelah menyelesaikan bab ini, Anda harus mengetahui bagaimana FPGA dapat diterapkan secara efektif dalam arsitektur sistem tertanam waktu nyata dan memahami komponen di dalam sirkuit terpadu FPGA. Anda telah mempelajari tentang bahasa pemrograman yang digunakan dalam desain algoritme FPGA, langkah-langkah dalam siklus pengembangan FPGA, dan memahami urutan langkah-langkah dalam proses pengembangan FPGA.

Bab berikutnya akan memperluas proses pengembangan FPGA untuk memberikan pendekatan lengkap untuk merancang sistem tertanam real-time yang berisi FPGA. Ini juga akan memulai pengembangan prototipe sistem tertanam berkinerja tinggi, osiloskop digital, yang akan menjadi contoh untuk bab-bab berikutnya.

Dicetak ulang dengan izin dari Packt Publishing. Hak Cipta © 2021 Packt Publishing


Jim Ledin adalah CEO dari Ledin Engineering, Inc. Jim adalah pakar dalam desain, pengembangan, dan pengujian perangkat lunak dan perangkat keras tertanam. Dia juga mahir dalam penilaian keamanan siber sistem tertanam dan pengujian penetrasi. Dia memiliki B.S. gelar di bidang teknik kedirgantaraan dari Iowa State University dan M.S. gelar di bidang teknik listrik dan komputer dari Georgia Institute of Technology. Jim adalah insinyur listrik profesional terdaftar di California, Certified Information System Security Professional (CISSP), Certified Ethical Hacker (CEH), dan Certified Penetrasi Tester (CPT).

Konten Terkait:

  • Desain tersemat dengan FPGA:Sumber daya perangkat keras
  • Desain tersemat dengan FPGA:Bahasa implementasi
  • Desain tersemat dengan FPGA:Proses pengembangan
  • Alat sumber terbuka membantu menyederhanakan pemrograman FPGA
  • Menerapkan algoritme titik-mengambang dalam FPGA atau ASIC
  • Memanfaatkan FPGA untuk pembelajaran mendalam
  • Alat perangkat lunak memigrasikan kode GPU ke FPGA untuk aplikasi AI

Untuk lebih banyak Tertanam, berlangganan buletin email mingguan Tertanam.


Tertanam

  1. Apa itu Desain Sistem Tertanam :Langkah-langkah dalam Proses Desain
  2. Menyelesaikan bagian cetakan 3D dengan… krayon?
  3. Wawancara Pakar:Kepala Teknologi ANSYS untuk Mencapai Keberhasilan Pencetakan 3D Logam dengan Simulasi
  4. Mengubah data besar menjadi data pintar dengan AI tersemat
  5. Tantangan implementasi port USB Type-C dan solusi desain
  6. Tren industri utama membentuk desain yang disematkan
  7. Platform sumber terbuka menargetkan IoT dengan Linux yang disematkan
  8. Klien:terminal POS multi-fungsi dengan printer terintegrasi
  9. Kit desain mengukur tekanan darah dengan sensor optik
  10. Semua Dengan Aditif