LAB -­‐ 4 BİL 321 Mantık Devreleri Tasarımı Adı Soyadı : Numarası : LAB-2: Görevler, Fonksiyonlar ve UDP
Parity Bit Jeneratörü
1. Aşağıda bir Verilog modülü kalıbı verilmektedir. Bu modül N bitlik data_in girişine ve N+1 bitlik
data_out çıkışına sahiptir. Modül içerisinde N bitlik data_in girişindeki 1’ler sayılarak parity bit üretilir.
Bu parity bit data_in girişinin msb bitine eklenerek N+1 bitlik data_out çıkışı elde edilir.
2. Yeni bir Verilog projesi oluşturunuz.
3. Yeni bir Verilog modülü yaratınız. Modül ismi olarak parity_gorev.v verilebilir. Bu modülü aşağıda
verilen kalıp modüle göre düzenleyiniz.
4. Çift parity bitini üretecek görevi bu modül içerisinde yazınız. Gerekli düzenlemeleri yaparak bu
görevi çağırınız ve N+1 bitlik data_out çıkışının üretimi için gerekli diğer işlemleri tanımlayınız.
5. Test bench oluşturarak N = 8 ve N = 16 için bu modülü test ediniz.
Görev yazıldı
Test bench yazıldı
Modül düzenlendi
Sonuçlar alındı
6. Yeni bir Verilog modülü yaratınız. Bu modül içinde N=4 için parity_gorev modülünün bir örneğini
oluşturunuz. parity_gorev modülünün portları, yeni modülün portlarına bağlanmalıdır.
7. data_in girişi için Spartan-3E kartı üzerindeki anahtarları ve data_out çıkışı için LED’leri kullanacak
şekilde pin atamalarını yapınız.
8. Modülü karta yükleyerek çalıştırınız.
Yeni modül oluşturuldu ve
port bağlantıları yapıldı
pin atamaları yapıldı
Modül karta yüklendi
Modül çalıştı
module parity_.......(input [N-1:0] data_in, output reg [N:0] data_out);
//Gerekli diğer sinyal/değişken bildirimleri
always @(data_in) begin
//Foksiyon/Görev çağırma
//Diğer işlemler
end
//Fonksiyon/Görev Tanımı
endmodule
Liste-1: parity_gorev modülü yapısı
LAB -­‐ 4 Adı Soyadı : Numarası : BİL 321 Mantık Devreleri Tasarımı Kullanıcı Tanımlı Temel Öğeler (UDP)
1. Yeni bir Verilog modülü oluşturunuz. Bu modülün ismini udp_devre.v olarak seçiniz. Modülünüz 3
skaler girişe ve bir skaler çıkışa sahip olsun.
2. Oluşturduğunuz modül dosyası içinde fakat modül gövdesi dışında, aşağıda verilen mantık
devresini kullanıcı tanımlı temel öğe (UDP) olarak Verilog kodunu yazınız.
3. Kodunu yazdığınız UDP’nin modül içerisinde bir örneğini oluşturunuz. Modülün 3 girişini UDP’nin
girişlerine ve modülün çıkışını UDP’nin çıkışına uygulayınız.
4. Modülünüzü test etmek için test bench oluşturunuz. Bu test bench içinde UDP’nin doğruluk tablosu
elde edilecek şekilde girişler uygulayınız. Girişler ile birlikte çıkışı konsola yazdırınız.
Modül yazıldı
Test bench yazıldı
UDP yazıldı
Doğruluk tablosu izlendi
a
XNOR
b
AND
OR
c
Şekil – 1. UDP için Mantık Devresi
Değerlendirme:
Modül + Görev tanımı
Karta Yükleme
UDP Tanımı
LAB NOTU
f
Download

LAB-2: Görevler, Fonksiyonlar ve UDP