fpganedir.com'da ara

fpganedir mail

PROCEDURE

Procedure da işlevsel olaral fonksiyonlara benzer. Fakat procedure fonksiyonda olduğu gibi bir değer döndürmez. Procedure’ de input ve output tanımlanabilir. Bu özelliği ile fonksiyondan ayrılır.

Procedure Deklarasyonu

procedure procedure adı (virgülle ayrılmış girişler: in tür;
                                                virgülle ayrılmış çıkışları : out  tür );


Procedure Body

procedure procedure adı (virgülle ayrılmış inputlar: in tür;
                                                virgülle ayrılmış outputlar : out  tür) is
    -- sabit ve değişken tanımlamaları     
  begin
       -- procedure body
  end procedure adı;

Procedure Çağrılması

Procedure adı (virgülle ayrılmış inputlar,virgülle ayrılmış outputlar);

Eğer parantez içerisindeki sıraya uymayacaksak ise ;
Procedure adı (input1 => insig1, ... , output1 => outsig1> ...);
ifadesini kullanılması gerekir..

ÖRNEK (İki Girişli AND ve OR Kapısı):

library IEEE;
use
IEEE.STD_LOGIC_1164.ALL;

entity AND_OR_P is
     Port ( in1          : in    STD_LOGIC;
                in2          : in    STD_LOGIC;
                out_and : out  STD_LOGIC;
                out_or   : out  STD_LOGIC);
end AND_OR_P;

architecture Behavioral of AND_OR_P is
procedure AND_P(signal in1,in2: in STD_LOGIC;signal output: out STD_LOGIC ) is
    begin
        output<=in1 AND in2;
end AND_P;

procedure OR_P(signal in1,in2: in STD_LOGIC;signal output: out STD_LOGIC ) is
    begin
         output<=in1 OR in2;
    end OR_P;
begin --architecture
     AND_P(in1,in2,out_and);
     OR_P(in1,in2,out_or);
end Behavioral;


Programın ModelSim’de simülasyonunu yaptıktan sonra aşağıdaki tabloyu elde ederiz.

 

 

Anasayfa | Fpga | VHDL | VHDL Sözlüğü | Embedded Sistem | Android | Sayısal Tasarım | Simulasyon | PCB | Örnekler | Forum | İletişim
Copyright © 2010-2013 FPGAnedir. All Rights Reserved.