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

Menguasai For-Loop dalam VHDL: Panduan Praktis

Dalam tutorial sebelumnya kami mengeksplorasi cara membuat loop tak terbatas menggunakan pernyataan loop dan keluar darinya dengan exit. Bagaimana jika kita perlu loop untuk berjalan sejumlah kali tertentu? For-Loop adalah solusi paling sederhana.

For-Loop mengulang melalui rentang integer atau item terhitung yang tetap. Nilai iterasi saat ini otomatis tersedia di dalam loop melalui konstanta yang dideklarasikan implisit.

Artikel ini adalah bagian dari seri Tutorial Dasar VHDL.

Sintaks

for <constant> in <range> loop -- loop body end loop;

Di sini, <constant> adalah nama yang ditentukan pengguna untuk penghitung loop, dan <range> dapat berupa rentang integer (menaik atau menurun) atau sekumpulan nilai terhitung.

Rentang Integer

Kode Contoh

 entity T04_ForLoopTb is end entity; architecture sim of T04_ForLoopTb is begin process is begin for i in 1 to 10 loop report "i=" & integer'image(i); end loop; wait; end process; end architecture; 

Keluaran Simulasi (ModelSim)

VSIM 2> run # ** Note: i=1 # Time: 0 ns Iteration: 0 Instance: /t04_forlooptb # ** Note: i=2 # Time: 0 ns Iteration: 0 Instance: /t04_forlooptb # ** Note: i=3 # Time: 0 ns Iteration: 0 Instance: /t04_forlooptb # ** Note: i=4 # Time: 0 ns Iteration: 0 Instance: /t04_forlooptb # ** Note: i=5 # Time: 0 ns Iteration: 0 Instance: /t04_forlooptb # ** Note: i=6 # Time: 0 ns Iteration: 0 Instance: /t04_forlooptb # ** Note: i=7 # Time: 0 ns Iteration: 0 Instance: /t04_forlooptb # ** Note: i=8 # Time: 0 ns Iteration: 0 Instance: /t04_forlooptb # ** Note: i=9 # Time: 0 ns Iteration: 0 Instance: /t04_forlooptb # ** Note: i=10 # Time: 0 ns Iteration: 0 Instance: /t04_forlooptb

Analisis

For-Loop dieksekusi tepat sepuluh iterasi, mencetak nilai penghitung pada waktu simulasi 0. Karena tidak ada wait di dalam loop, seluruh loop selesai seketika. Pernyataan wait; akhir menempatkan proses dalam penundaan tak terbatas, yang umum dalam testbench.

Kami juga mendemonstrasikan dua operasi string penting:

Poin Utama

Lanjutkan ke tutorial berikutnya untuk konsep VHDL yang lebih dalam.

VHDL

  1. Bagaimana Molibdenum Mengubah Industri Modern: Penggunaan, Manfaat, dan Dinamika Pasokan
  2. Membuat Daftar String dalam VHDL: Praktik Terbaik & Contoh
  3. Mengakhiri Simulasi Testbench VHDL dengan Elegan
  4. Implementasi Pengontrol PWM dalam VHDL: Desain, Simulasi, dan Demo FPGA
  5. Menghasilkan Angka Acak dalam VHDL: Dari Uniform hingga OSVVM
  6. Memanfaatkan Prosedur Dalam Proses untuk Desain FSM VHDL yang Lebih Bersih
  7. Menggunakan Fungsi Tidak Murni di VHDL: Meningkatkan Keterbacaan dan Pemeliharaan FSM
  8. Menguasai Fungsi VHDL: Panduan Praktis untuk Desain Efisien
  9. Mendesain Mesin Status Terbatas dalam VHDL: Contoh Praktis Pengatur Lampu Lalu Lintas
  10. Menguasai Teknik Mesin Gerinda Cutter: Panduan Praktis