Kategori: VHDL
VHDL’de Saat Darbesi (Clock) Kullanımı
Genelde process yapılarını tetikleme için harici bir kaynak tarafından üretilen kare dalga işareti kullanılmaktadır. Bu kare dalga işaretinin değişimlerinde ise process yapısı tetiklenmektedir. Bu dışarıdan uygulanan (tasarıma göre FPGA içerisinde de üretilebilir) tetikleme işareti çoğu zaman “saat darbesi” (clock) olarak adlandırılır. Şekil 1’de saat darbesi gösterimi verilmiştir. Şekil 1’den de görüleceği üzere saat darbesi işaretin 0’dan 1’e veya 1’den 0’a…
VHDL’de IF, CASE ve LOOP Sözdizimleri
if Sözdizimi VHDL dilinde if sözdizimi, bir veya birden fazla koşula bağlı olarak, koşulların bağlı olduğu sözdizimlerinden birini seçmektedir ve seçilen koşula ait söz dizim ifadesi gerçeklenmektedir. Eğer koşul ifadelerinin hiç biri sağlanmamış ise bu durumda hiçbir işlem yapılmamaktadır. Aşağıda VHDL dilinde if sözdizimi tanımı verilmiştir. Verilen sözdiziminde if söz dizimi ile ilgili koşul denetlenmektedir. Eğer bu koşul sağlanırsa koşula…
VHDL’de VARIABLE Kullanımı
Örnek 1: Aşağıda signal veri nesnesi kullanılarak 8 bitlik giriş portu değerinde bulunan ‘1‘ bitlerinin sayısını çıkışa aktaran programı gerçeklemeyi amaçlayan bit_say_signal.vhd VHDL kodu verilmiştir. Kodda 17. satırda process hassasiyet listesinde in_giris girişi mevcuttur. Bunun anlamı in_giris giriş portunda meydana gelen değişikliklerde process aktif hale gelecektir. process‘in aktif olması ile birlikte 19. satırda tanımlanan varsayılan atama işlemi gerçekleştirlecektir ve r_sayac…
VHDL’de Sıralı Atama Sözdizimleri – PROCESS
Sıralı sözdizimleri, VHDL dilinde paralel işlemler için kullanılan sözdizimlerinden farklı olarak kullanılmalıdır. Bu nedenle VHDL dilinde sıralı sözdizimleri mimari içerisinde process sözdizimi kullanılarak tanımlanmaktadır. process için genel tanımlama aşağıda verilmiştir. process’lerin tasarlandıkları işleri yapabilmeleri için dışarıdan uygulanan bir tetikleme işaretine ihtiyaçları vardır. Bu tetikleme işareti herhangi bir sinyalin değişimi olabileceği gibi, harici bir kaynak tarafından üretilen bir işarette olabilir. process…
VHDL’de GENERATE İfadeleri
generate ifadesi, VHDL’de tekrarlanan lojikler eşitlikler veya component örneklerinde kullanılır. İki tip generate ifadesi mevcuttur : Bu ifadelerden if generate çok nadir kullanılır. Fakat for generate sıklıkla kullanılan bir ifadedir ve genel gösterimi aşağıda verilmiştir. Aşağıda verilen örnekte 4 bitlik std_logic_vector tipinde sinyal_1 sinyaline başlangıç değeri olarak “0001” atanmıştır. sinyal_2 sinyali de 5 bitlik std_logic_vector tipinde tanımlanmıştır. sinyal_2 sinyalinin en…
VHDL’de OTHERS Kullanımı, Seçilmiş Sinyal Atamaları ve Şartlı Sinyal Atamaları
OTHERS Kullanarak Sinyal Değeri Atama Bir sinyal değerinin belli bir kısmına aynı bitler yazılacaksa others kullanılarak bu işlem yapılabilmektedir. Aşağıda verilen tanımlamada sinyal_1 sinyalinin tüm bitlerine 0, sinyal_2 sinyalinin tüm bitlerine ise 1 atanmaktadır. Seçilmiş Sinyal Atama Seçilmiş sinyal ifadesi, seçim koşullarına uygun birkaç alternatif değerden bir sinyalin değer olarak atanmasında kullanılır. Genel tanımlama ifadesi aşağıdaki gibidir. Aşağıda verilen tanımlamada…
VHDL’de Basit Sinyal Atamaları
Basit sinyal atamaları lojik veya aritmetik ifadelerde kullanılır. Atama işlemine ait genel form aşağıda verilmiştir. <= operatörü VHDL’de atama operatörüdür. Aşağıdaki verilen örnekte bu operatörün kullanımını daha detaylı olarak göstermektedir. sinyal_sonuc sinyaline, sinyal_1 ve sinyal_2 sinyallerinin xor sonucunun sinyal_3 ile and işlemine tabi tutulmasında elde edilen sonuç atanmaktadır. Bu tanımlamada sinyal_sonuc ifadesi, bir bitlik sonucu içermektedir. VHDL’de aynı zamanda çoklu…
VHDL’de PACKAGE Kullanımı
package, VHDL dilinde tanımlanacak olan type, function gibi genel ifadeleri tanımlamada kullanılır. package iki temel bömlümden oluşur: Genel olarak paket dosyasında tanımlama işlemi aşağıdaki gibi yapışmaktadır. Örnek 1: Aşağıda örnek olarak oluşturulan benim_paketim.vhd VHDL paketi verilmiştir. benim_paketim paketi içerisinde tanımlama bölgesinde 6-7. Satırlarda bir bitlik std_logic tipinde r_giris_1, r_giris_2 sinyalleri, 8. satırda integer tipinde VERI_UZUNLUGU sabiti ve 9-10. satırlarda VERI_UZUNLUGU…
VHDL’de Procedure Kullanımı
Fonksiyonun aksine procedure VHDL dilinde tanımlanan diğer söz dizimlerini de kullanılabilmektedir. Fonksiyon gibi bir değer döndürmez. VHDL kodundaki pozisyonlarına (mimari veya process içerisinde) bağlı olarak eş zamanlı veya sıralı olarak gerçeklenebilmektedir. procedure modül içerisinde VHDL kodunun analizini kolaylaştırmaktadır. Çıkış parametrelerini kullanarak değişkenlerin sayılarını döndürebilir. Söz dizimi aşağıdaki gibidir : Aşağıda 4 bitlik tam toplayıcı devresinin procesdure kullanılarak gerçeklenmesi gösterilmiştir. Örnek…
VHDL’de Function Kullanımı
Fonksiyon hesaplama değerleri veya davranış tanımlaması için bir algoritmanın tanımlı olduğu alt programdır. Fonksiyonun önemli özelliği belirli bir tipe ait değerde dönüş sağlamasıdır. Fonksiyonun bu özelliği diğer alt program tiplerinden en önemli farkıdır. Aşağıda VHDL dilinde fonksiyon tanımlama sözdizimi verilmiştir. Aşağıda ayni_giris isimli fonksiyonda 4 bitlik giriş sinyallerinin bir biri ile aynı olması durumunda 1 aksi durumda 0 döndürülmektedir. ayni_giris…