LAB-4: Latch ve Flip Flopların Verilog ile Modellenmesi

BİL 321 Mantık Devreleri Tasarımı LAB -­‐ 4 Adı Soyadı : Numarası : LAB-4: Latch ve Flip Flopların Verilog ile Modellenmesi
1. D latch modelleme:
R
Q
CLK
R
Q
SR Latch
Q’
S
S
D
Şekil 1- SR Latch
1.1.
Q’
Şekil 2- D Latch
Şekil-1’de verilen SR latch devresinin Verilog HDL modülünü kapı seviyesinde (yapısal) modelleme
ile gerçekleyiniz.
Modül doğru bir şekilde yazıldı?
1.2.
Evet
Hayır
Şekil-2’de verilen D Latch devresini Verilog HDL modülünü kapı seviyesinde (yapısal) modelleme ile
gerçekleyiniz. SR latch kısmı için 1.1’de yazdığınız Verilog modülünü kullanınız.
Modül doğru bir şekilde yazıldı?
1.3.
Evet
Hayır
Yazdığınız D latch modülünü test edecek testbench modülünü yazınız. Bu modülde D latch’a
uygulanacak sinyaller Şekil-3’ de verilmiştir (Saat işareti periyodu 20 birim alınmalıdır). Test işlemi
sonucunda D latch çıkışında elde ettiğiniz Q sinyalini Şekil-3’de verilen boşluğa çiziniz.
Modül doğru bir şekilde yazıldı?
Evet
CLK
D
Q (Latch)
Q(Flip Flop)
Şekil 3 – D Latch/Flip Flop test sinyalleri ve çıkış sinyalleri
Hayır
LAB -­‐ 4 Adı Soyadı : Numarası : BİL 321 Mantık Devreleri Tasarımı 2. D Flip Flop modelleme:
CLK
CLK
CLK
Q
Q
D
D
D Latch
Q’
D Latch
Q’
Slave
Master
Şekil 4 – D Flip Flop Devresi
2.1.
Şekil -4’de verilen D flip flop devresini Verilog HDL modülünü kapı seviyesinde (yapısal) modelleme
ile gerçekleyiniz. D latch kısmı için 1.2’de yazdığınız Verilog modülünü kullanınız.
Modül doğru bir şekilde yazıldı?
2.2.
Hayır
Yazdığınız D flip flop modülünü test edecek testbench modülünü yazınız. Bu modülde D flip flop’a
uygulanacak sinyaller Şekil-3’ de verilmiştir. Test işlemi sonucunda D flip flop çıkışında elde ettiğiniz
Q sinyalini Şekil-3’de verilen boşluğa çiziniz.
Modül doğru bir şekilde yazıldı?
2.3.
Evet
Evet
Hayır
D flip flop için Şekil-4’de verilen davranışsal model ile oluşturulmuş Verilog modülünü yazınız. Saat
çevrim süresini 1 saniyeye ayarlayınız. Bu modülü Spartan 3E kartına yükleyiniz ve modülü
çalıştırınız. Bunun için rst ve d girişlerini kart üzerindeki anahtarlara bağlayınız. q çıkışını kart
üzerindeki bir LED’e bağlayınız.
Modül doğru bir şekilde yazıldı?
Pin atamaları yapıldı?
Modül karta yüklendi?
Modül kart üzerinde doğru bir şekilde
çalıştı?
Evet
Evet
Evet
Evet
Hayır
Hayır
Hayır
Hayır
module dff(input clk, input rst, input d, output q);
always @(posedge clk or negedge rst) begin
if(!rst) q <= 1'b0;
else q <= d;
end
endmodule
Şekil 4 – D Flip Flop Verilog HDL Modülü (Davranışsal Model)
Değerlendirme:
LAB NOTU