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

Pernyataan Prosedur - Contoh VHDL

Prosedur adalah bagian dari sekelompok struktur yang disebut subprogram. Prosedur adalah bagian kecil dari kode yang melakukan operasi yang digunakan kembali di seluruh kode Anda. Ini berfungsi untuk membersihkan kode serta memungkinkan penggunaan kembali.

Prosedur dapat mengambil input dan menghasilkan output. Mereka umumnya bisa lebih rumit daripada fungsi. Tidak diperlukan untuk melewatkan sinyal apa pun ke suatu prosedur. Dalam contoh di bawah ini ada prosedur p_INCREMENT_SLV yang tujuannya adalah untuk menambah vektor logika standar sebesar 1 dan menghasilkan sinyal dengan hasilnya.

Satu catatan tambahan tentang penggunaan pernyataan tunggu:
Pernyataan tunggu BISA digunakan dalam prosedur, selama proses yang memanggil prosedur tidak memiliki daftar sensitivitas. Dalam contoh di bawah, prosedur memiliki pernyataan wait 1 ns untuk mendemonstrasikannya. Ini membuat prosedur berguna untuk membuat kode testbench.

library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;

entity example_procedure_simple is
end example_procedure_simple;

architecture behave of ex_procedure_simple is

  signal r_TEST : std_logic_vector(7 downto 0) := X"42";

  -- Purpose: Increments a std_logic_vector by 1
  procedure p_INCREMENT_SLV (
    signal r_IN  : in  std_logic_vector(7 downto 0);
    signal r_OUT : out std_logic_vector(7 downto 0)
    ) is
  begin
    r_OUT <= std_logic_vector(unsigned(r_IN) + 1);
    wait for 1 ns;                      -- Wait is OK here.
  end p_INCREMENT_SLV;

  
begin

  process is
  begin
    wait for 10 ns;
    p_INCREMENT_SLV(r_TEST, r_TEST);
    wait for 10 ns;
    p_INCREMENT_SLV(r_TEST, r_TEST);
    wait for 10 ns;
    p_INCREMENT_SLV(r_TEST, r_TEST);
    wait;
  end process;  
  
end behave;



Halaman Nandland Paling Populer

VHDL

  1. Tutorial - Pengantar VHDL
  2. Contoh Konversi VHDL
  3. Catatan - Contoh VHDL
  4. Ditandatangani vs. Tidak Ditandatangani di VHDL
  5. Pernyataan sakelar C#
  6. Pernyataan istirahat C#
  7. C# lanjutkan Pernyataan
  8. Cara membuat daftar string di VHDL
  9. C++ Switch Case Statement dengan CONTOH
  10. Prosedur penulisan:sederhana dan efisien dengan beralih ke digital