Tekrar - Operatör Meydan Okuması
Coddy'nin Verilog Journey'sinin Temel Bilgiler bölümünün bir parçası. Ders 29 / 90.
Görev
Her görev için doğru ifadeleri yazarak kodu tamamlayın. Bu meydan okuma, bu bölümdeki tüm operatörleri kapsar.
Yapılacaklar:
- Mantıksal: Hem
value1hem devalue2değerlerinin sıfır olmadığını kontrol edin ve sonuculogic_outiçine kaydedin - Reduction:
vectoriçindeki tüm bitlerin 1 olup olmadığını kontrol edin ve sonucureduction_outiçine kaydedin - Kaydırma:
datadeğerini 2 bit sola kaydırın ve sonucushift_outiçine kaydedin - Birleştirme:
highvelowdeğerlerini 8 bitlik bir değerde birleştirin ve sonucuconcat_outiçine kaydedin - Koşullu: `a` ve `b` değerlerinden büyük olanı
cond_outiçine kaydedin
Kendin dene
module operator_challenge;
reg [3:0] value1, value2;
reg logic_out;
reg [3:0] vector;
reg reduction_out;
reg [7:0] data;
reg [7:0] shift_out;
reg [3:0] high, low;
reg [7:0] concat_out;
reg [3:0] a, b;
reg [3:0] cond_out;
initial begin
// Mantıksal
value1 = 4'd6;
value2 = 4'd0;
logic_out = ______; // value1 ve value2'nin her ikisinin de sıfır olmadığını kontrol et
// İndirgeme
vector = 4'b1111;
reduction_out = ______; // Check if all bits of vector are 1
// Shift
data = 8'b00001111;
shift_out = ______; // data'yı 2 bit sola kaydır
// Birleştirme
high = 4'b1010;
low = 4'b1100;
concat_out = ______; // high ve low'u 8 bitlik bir değerde birleştir
// Koşullu
a = 4'd7;
b = 4'd12;
cond_out = ______; // `a` ve `b`'nin daha büyüğünü sakla
$display("6 && 0 = %d", logic_out);
$display("&4'b1111 = %d", reduction_out);
$display("00001111 << 2 = %b", shift_out);
$display("{1010, 1100} = %b", concat_out);
$display("max(7, 12) = %d", cond_out);
$finish;
end
endmoduleTemel Bilgiler bölümündeki tüm dersler
4Operatörler Bölüm 1
Aritmetik OperatörlerMod Alma OperatörüKarşılaştırma OperatörleriTekrar - Basit MatematikBit Düzeyi Operatörleri7Atama ve Kapılar
Sürekli AtamaOperatörlerle AtamaYerleşik Kapı PrimitifleriAND, OR ve NOT KapılarıXOR ve XNOR KapılarıÖzet - Mantık Kapısı Devresi10Karar Verme
If İfadesiIf - ElseTekrar - Basit KarşılaştırıcıCase İfadesiCasex ve CasezTekrar - ALU Tasarımı2Veri Türleri
Wire TürüReg TürüTamsayı ve GerçelVektörlerDizilerParametrelerÖzet - Sinyalleri Tanımlama5Operatörler Bölüm 2
Mantıksal Operatörlerİndirgeme OperatörleriKaydırma OperatörleriBirleştirme OperatörüKoşullu OperatörTekrar - Operatör Meydan Okuması11Döngüler
For DöngüsüWhile DöngüsüTekrar DöngüsüSonsuz DöngüDevre Dışı Bırakma İfadesiTekrar - Döngü Kalıpları3Sayı Sistemi
İkili GösterimBoyutlu SayılarBoyutsuz SayılarNegatif SayılarÖzel X ve Z DeğerleriTekrar - Sayı Biçimleri6Modüller
Modül YapısıGiriş ve Çıkış PortlarıÇift Yönlü PortlarModül ÖrneklendirmeAda Göre Port EşlemeSıraya Göre Port EşlemeTekrar - Bir Modül Oluşturma9Prosedürel Bloklar
Always BloğuInitial BloğuDuyarlılık ListesiBloklayıcı AtamaBloklamayan AtamaTekrar - Always ve Initial Karşılaştırması15Trafik Işığı Denetleyicisi
Durumları TanımlamaDurum Makinesi MantığıKendi başına pratik yap: Online Verilog derleyicisi