Yazar: Mehmet Ali Çavuşlu

VHDL Veri Nesneleri – constant Veri Nesnesi

signal ve variable nesnelerinin aksine constant nesnelerinin değeri değiştirilemez. Bu yüzden tasarımda Bu yazıda constant veri nesnesi kullanımına ait sözdizimi amlatılmıştır.

VHDL Veri Nesneleri – variable Veri Nesnesi

VHDL’de tasarım yaparken kullanmak istediğimiz verileri yönetebileceğimiz üç temel veri nesnesi mevcuttur: signal, variable, constant. Veri nesnelerinden signal ve variable içeriği değişebilen verilerde kullanılırken sabit değerler için constant veri nesnesi kullanılmaktadır. Bilgisayar programlama dillerinden farklı olarak VHDL dili ile yapılan tasarımlar karşılığında fiziksel bir devre sentezlendiği unutulmamalı ve bu başlık altında anlatılan kavramlara her zaman bu açıdan bakılmalıdır.

VHDL Veri Nesneleri – signal Veri Nesnesi

VHDL’de tasarım yaparken kullanmak istediğimiz verileri yönetebileceğimiz üç temel veri nesnesi mevcuttur: signal, variable, constant. Veri nesnelerinden signal ve variable içeriği değişebilen verilerde kullanılırken sabit değerler için constant veri nesnesi kullanılmaktadır. Bilgisayar programlama dillerinden farklı olarak VHDL dili ile yapılan tasarımlar karşılığında fiziksel bir devre sentezlendiği unutulmamalı ve bu başlık altında anlatılan kavramlara her zaman bu açıdan bakılmalıdır.

Dijital Kronometre Uygulamasının Nexys 4 Kartı Üzerinde Gerçeklenmesi

Bu yazıda Nexys 4 bordu üzerinde kronometrenin VHDL ile donanımsal gerçeklenmesine ait video ve kodlar bulunmaktadır. Gerçekleştirilen sistem butonlar aracılığı ile başlatma, durdurma ve sıfırlama özelliklerine sahiptir. Krononemtre değerleri seven segment dispilaylerde sergilenmektedir.

VHDL Nitelikleri (Attributes)

VHDL dilinde ayrıca kod yazmayı kolaylaştıran ve tekrar kullanılabilirliği arttıran nitelik (attributes) tanımlamaları da mevcuttur. VHDL dilinde ön tanımlı olarak gelen nitelik (attributes) tanımlamaları olduğu gibi, kullanıcılar da kendi tanımlamalarını oluşturabilmektedir. Bu bölümdeki başlıklar operatörlerin öncelik sırasına göre düzenlenmiş olup operatör tanımlamalarından sonra ise nitelik (attributes) tanımlamalarından bahsedilmiştir. Nitelik tanımlamaları özellikle genelleştirilebilir (generic design) tasarım yapmak adına oldukça faydalı araçlardır….

VHDL Operatörleri – Diğer Operatörler ve Operatörlerin Kullanımı

Diğer Operatörler Yukarıda verilen tanımlamada çıkış değerine, in_giris_1 değerinin 3. dereceden kuvveti atanmaktadır. Örneğin in_giris_1 değeri “010” olsun. Bu durumda out_cikis değerine “000001000” atanmaktadır. Yukarıda verilen tanımlamada çıkış değerine, in_giris_1 değerinin mutlak değeri atanmaktadır. Örneğin in_giris_1 değeri “010” olsun. Bu durumda out_cikis değerine “010” atanmaktadır. in_giris_1 değeri “101” olduğu durumda ise out_cikis değerine “011” atanmaktadır. Yukarıda verilen tanımlamada çıkış değerine,…

VHDL Operatörleri – Çarpma, Bölme, Mod ve Artan Operatörleri

VHDL dilinde kullanılan çarpma, bölme, mod ve artan operatörleri aşağıda listelenmiştir: Yukarıda verilen tanımlamada çıkış değerine in_giris_1 değerine in_giris_2 değeri ile çarpılarak atanmaktadır. Örneğin in_giris_1 değeri “1010” ve in_giris_2 değeri “0101” olsun. Bu durumda out_cikis değerine “00110010” atanmaktadır. Yukarıda verilen tanımlamada çıkış değerine in_giris_1 değerine in_giris_2 değerine bölünerek atanmaktadır. Örneğin in_giris_1 değeri 19 ve in_giris_2 değeri 4 olsun. Bu durumda…

VHDL Operatörleri – Toplama, Çıkarma ve Ekleme Operatörleri

VHDL dilinde kullanılan toplama, çıkarma ve ekleme operatörleri aşağıda listelenmiştir: out_cikis <= in_giris_1 + in_giris_2; Yukarıda verilen tanımlamada çıkış değerine in_giris_1 ve in_giris_2 değerlerinin toplamı atanmaktadır. Örneğin in_giris_1 değeri”1010” ve in_giris_2 değeri “0101” olsun. Bu durumda out_cikis değerine “1111” olmaktadır. out_cikis <= in_giris_1 – in_giris_2; Yukarıda verilen tanımlamada çıkış değerine in_giris_1 değerinden in_giris_2 değerinin farkı atanmaktadır. Örneğin in_giris_1 değeri“1010” ve…

VHDL Operatörleri – İlişkisel Operatörler

VHDL dilinde kullanılan ilişkisel operatörler aşağıda listelenmiştir: Yukarıda verilen tanımlamada eğer A ve B değerleri birbirine eşit ise out_cikis değerine in_giris_1, aksi durumda in_giris_2 değeri atanmaktadır. Yukarıda verilen tanımlamada eğer A ve B değerleri birbirine eşit değil ise out_cikis değerine in_giris_1, aksi durumda in_giris_2 değeri atanmaktadır. Yukarıda verilen tanımlamada eğer A değeri B değerinden küçük ise out_cikis değerine in_giris_1, aksi…

VHDL Operatörleri – Mantıksal Operatörler

VHDL dilinde tasarım yaparken kullanılabilecek 3 tür operatör mevcuttur. Bunlar sırasıyla:
Mantıksal (Booelean) Operatörler, Aritmetik Operatörler,İlişkisel Operatörler’dir. Yukarıda verilen liste operatörlerin öncelik sırasına göre sıralanmış olup, aynı tür operatörlerin kendi aralarında bir öncelik sırası yoktur. VHDL dilinde ayrıca kod yazmayı kolaylaştıran ve tekrar kullanılabilirliği arttıran nitelik (attributes) tanımlamaları da mevcuttur. VHDL dilinde ön tanımlı olarak gelen nitelik (attributes) tanımlamaları olduğu gibi, kullanıcılar da kendi tanımlamalarını oluşturabilmektedir. Bu bölümdeki başlıklar operatörlerin öncelik sırasına göre düzenlenmiş olup operatör tanımlamalarından sonra ise nitelik (attributes) tanımlamalarından bahsedilmiştir. Nitelik tanımlamaları özellikle genelleştirilebilir (generic design) tasarım yapmak adına oldukça faydalı araçlardır.