Kategori: Yazılar
Rastgele Sayı Üreteci Modülünün VHDL ile Gerçeklenmesi
Rastgele sayı üretimi işlemleri için Galois tarafından önerilen LFSR (Linear Feedback Shift Register ) yöntemi kullanılmıştır. Kaydırma ve tanımlı olan bitlerin xor işlemine tabi tutulması ile yeni sayı üretim işlemi gerçekleştirilmektedir. Bu yazıda ise kullanıc tarafından xor işlemine tabi tutulacak bitlerin sayısı ve bit numaraları generic olarak tanımlanabilme imkanı sağlayan kod sunulmuştur. Rastgele sayı üretim işlemleri bu değere göre gerçekleşitirilmiştir. Bununla…
Vivado ile Nexys 4 Kartı Üzerinde UART Protokolü Kullanarak Data Kontrolü
UART (Universal asynchronous receiver/transmitter – Evrensel eşzamanlı olmaya alıcı/verici) paralel ve seri formlar arasında data çevrim işlemi yapan bilgisayar donanım parçasından biridir. UART’lar RS-232, RS-485 gibi yaygın iletişim standartları ile birlikte kullanılır. Aşağıda VHDL dilinde UART modülü ile data alma ve gönderme işlemlerinin gerçekleştirildiği örnekler verilmiştir. Örnek 1: Aşağıda UART protokoklü kullanarak data gönderim işlemninin yapıldığı UART_tx.vhd VHDL kodu erilmiştir….
Vivado ile Nexys 4 Kartı Üzerinde Hata Ayıklama (Debug) Uygulaması
Aşğaıda verilen display.vhd VHDL kod ile tanımlı 4 bitlik giriş portunun aldığı değeri 7 Segment Displaylerde gösterilmektedir. Aynı zamanda bu kod ile Vivado programında sinyal değişlenlerinin aldığı değerleri kontrol edilebilmektedir. 26-33. satırlarda tanımlı nitelikler (attribitude) ile kod FPGA içerisinde çalışırken tanımlı sinyallerin aldığı değerleri görebilmemiz sağlanacaktır. 26-27. satırlarda tanımlı nitelikle kod içerisinde kesinlikle bulunması gerekmektedir. 29-30 ve 32-33. satırlarda tanımlı…
İmge İşlemede Konvolüsyonun VHDL ile Gerçeklenmesi
volisyon kerneli olarak adlandırılan bir matris ile çarpımıyla elde edilir. Konvolisyon işlemine ilişkin denklem aşağıda verilmiştir. Şekil 1 Konvolüsyon işlemi Şekil 1’de verilen örnek piksel değeri ve konvolüsyon kerneline ilişkin hesaplama aşağıdaki gibi yapılmatakdır. Örnek : Aşağıda imge de konvolüsyon işleminin gerçekleştirildiği konvolusyon_imge.vhd VHDL kodu verilmiştir. Kodda RAM üzerinden okunan datalar 3×3 matriste saklanmaktadır. Matriste bulunan datalar konvolusyon işlemine tabi…
Temel İmge İşleme Algoritmalarının VHDL ile Gerçeklenmesi
Bu örnekte de işaret işleme uygulamalarına devam ediyoruz. Bir önceki başlık bir alçak geçiren filtre uygulaması gerçekleştirmiştik. Bu örnekte ise işaret işleme uygulamarı arasında bulunan temel imge (görüntü) işleme algoritmalarından ve VHDL ile tasarımından bahsedeceğiz. Uygulamaya geçmeden önce ilk olarak temel imge işleme işlemleri tanıtılacak olup ardından VHDL kodları verilecektir. Örnek uygulamada kullanılan görüntü 8 bit gri seviyeli bir görüntüdür….
Sinyal İşlemede Konvolüsyon İşleminin VHDL ile Gerçeklenmesi
Bu kısma kadar olan örneklerde genelde sayısal tasarımla alakalı uygulamalar gerçekleştirdik. Uygulamalarla VHDL ile ilgili kullanım şekillerini ve tasasrım yollarını göstermeye çalıştık. Bu örnekte ise temel bir işaret işleme uygulamasına geçiş yapıyoruz. Bu kısımda bahsedilen kavramları anlayabilmek için temel seviyede işaret işleme ile alakalı konuların bilinmesi gerekmektedir. Bu bölüme devam etmeden önce lütfen işaret işleme ile alakalı kaynakları gözden geçriniz….
VHDL’de FIFO tasarımı
Yaptığımız tasarımlarda zaman zaman farklı hızlarda çalışan modüller arasında veri alış-verişi yapmamız gerekebilir. Ya da bazı durumlarda işlenmesi gereken verilerin önce belli bir miktar biriktirilip daha sonra işlenmesi gerekebilir. Bu ve bunun gibi durumlarda en sık tercih edilen yaklaşım FIFO (First In First Out – İlk Giren İlk Çıkar) kullanımıdır. FIFO’ya giren veriler giriş sırasına çıkışından alınır. FIFO elemanını, hafıza…
VHDL ile Clock Domain Crossing İşlemi
Aşağıda A saat darbesi frekansında mevcut bir sinyalin B saat darbesi frekansında oluşturulmasını sağlayan VHDL kodları aşağıda verilmiştir.
İris Tanımada Normalizasyon
Farklı insanlardan alınan irisler farklı boyutlarda olabilir ve hatta aynı gözdeki irislerde görüntü titreşimlerine göre veya görüntü iris arası uzaklığa göre boyutu değişebilir. İriste yüksek derecede elastik bozulmalar eşleştirme sonuçlarını etkileyecektir. Daha doğru tanıma sonuçları elde edebilmek amacıyla yüksek derecede bozulmayı gidermek gerekir. Şekilde de görüldüğü gibi r ile ifade edilen nokta iris bölgesinin dış noktası ile iç noktası arasında…
MATLAB ile FFT Alma İşlemi
MATLAB ile bir boyutlu FFT alma işlemlerinin gerçekleştirilmesinde fft komutu kullanılmaktadır. FFT sonuçlarının gösteriminde yaşanan en büyük sorunlardan biri sonuçlarda gösterilen freknas binlerinin hangi frekans değerine karşılık geldiğidir. Bu durum FFT çözünürlüğünün bulunması ile yani, örnekleme frekansının FFT boyutuna bölünmesi ile gerçekleştirilrimektedir (Kodda 4. satır). FFT analizi sonucunda elde edilen frekans bilgisi 14. satırdaki gibi hesaplanmaktadır. Aşağıda verilen kodda oluşturulan 1 sn’lik…