Generic

You might also like

Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 1

GENERIC

Herhangi bir block, entity ya da component altnda tanmlanan arayz sabitleridir.


Generic ler, bir blok yapnn evresiyle iletiimi iin kanallar olutururlar.
Sabitlerden farkl olarak; generic ler, component ve configuration tanmlamalar
iinde bulunabilirler ve deerleri dardan deitirilebilir.
generic ( generic_arayz_listesi ) ;
NOT:Bir ok sentezleme gerecinde integer tipindeki generic ler desteklenmektedir.
RNEK 1
entity CPU is
generic (BusWidth : Integer := 16);
port(DataBus : inout Std_Logic_Vector(BusWidth-1 downto 0));
. . .
rnekte DataBus portunun boyutu BusWidth generic i ile belirleniyor. Bu generic CPU
entitiy si ile ilikili olan tm architecture larda kullanlabilecektir. Bu sayede
tm tasarm iindeki parametreler kullanc tarafndan tek bir noktadan deitirilebiliyor.
RNEK 2
entity Gen_Gates is
generic (Delay : Time := 10 ns);
port (In1, In2 : in Std_Logic;
Output : out Std_Logic);
end Gen_Gates;
architecture Gates of Gen_Gates is
begin
. . .
Output <= In1 or In2 after Delay;
. . .
end Gates;
rnekte, delay generic deeri bir kn gecikme zamann belirliyor.
DETAYLI AIKLAMA
Generic ler, sabitlere benzer bir ekilde blok yaplara statik bilgi salarlar ve archit
ecture
iinde ilenebilirler, sabitlerden farkl olarak ise dardan beslenebilirler. Entity ve co
mponent
deklarasyonlar iinde tanmlanmalar ile de portlara ok benzerler fakat her zaman portla
rdan nce yazlrlar.
Entity iindeki generic ler tarafndan belirlenen deerler, hem entity nin iinde hem de o e
ntity
ile ilikili olan architecture iinde okunabilirler. Genel olarak generic ler aadaki gibi
kullanlabilirler:
-Port larn boyutlarn ifade etmek. (rnek1)
-Alt komponentlerin saysn belirlemek,
-Zamanlama zelliklerini belirtmek, (rnek2)
-Bir tasarmn fiziksel zelliklerini belirtmek,
-Architecture iindeki vector lerin uzunluunu belirlemek,
-Dng saysn belirlemek

You might also like