Menu
Coddy logo textTech

Yerleşik Kapı Primitifleri

Coddy'nin Verilog Journey'sinin Temeller bölümünün bir parçası — ders 39 / 90.

Verilog, mantık devrelerini gerçek mantık kapısı sembollerini kullanarak tanımlamanıza olanak tanıyan yerleşik gate primitives yapılarına sahiptir. Buna structural modeling denir — tıpkı bir şematik çizermiş gibi, kapıları birbirine bağlayarak devreler oluşturursunuz.

Kapı (gate) ilkselleri (primitives), temel mantık kapılarını modelleyen önceden tanımlanmış anahtar sözcüklerdir. assign out = a & b gibi bir ifade yazmak yerine, bir kapı (gate) örneklersiniz:

and(out, a, b);   // çıkışı out, girişleri a ve b olan AND kapısı

Genel Sözdizimi

gate_type (output, input1, input2, ...);
  • İlk bağımsız değişken her zaman output'tur
  • Sonraki bağımsız değişkenler inputs'tur (kapıya bağlı olarak 1 veya daha fazla)

Kullanılabilir Mantık Kapısı İlkselleri (Gate Primitives)

Kapı TürüAnahtar KelimeGiriş Sayısı
ANDand2 veya daha fazla
ORor2 veya daha fazla
NOTnot1
NANDnand2 veya daha fazla
NORnor2 veya daha fazla
XORxor2 veya daha fazla
XNORxnor2 veya daha fazla

Kapı İlkel Öğelerinin (Gate Primitives) Çalışma Şekli

and(out, a, b) yazdığınızda, Verilog a & b işleminin sonucuyla out çıkışını sürekli olarak süren bir AND kapısı oluşturur. a veya b her değiştiğinde, out tıpkı gerçek bir kapı gibi anında güncellenir.

Gate Primitives vs Continuous Assignment

Her iki yöntem de aynı donanımı üretir:

// Kapı primitif
and(out, a, b);

// Sürekli atama (aynı sonuç)
assign out = a & b;

Gate primitive'leri, bir devreyi bir gate koleksiyonu (structural tarz) olarak tanımlamak istediğinizde kullanışlıdır. Continuous assignment ise behavioral style (ifadeler) için daha iyidir.

challenge icon

Görev

Ne yapılmalı:

  1. Bu devrenin çalışmasını sağlamak için `correct` `gate` `primitive` ekleyin. `module`, `a` ve `b` `inputs` değerlerinin AND sonucunu `output` olarak vermelidir. `output` portu zaten `c` olarak adlandırılmıştır.

Kendin dene

module gate_challenge (
  input a,
  input b,
  output c
);
  
  // TODO: Doğru kapı primitifini ekle
  // Çıktı c, a AND b olmalıdır

endmodule
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Temeller bölümündeki tüm dersler