Menu
Coddy logo textTech

Taşıma Bitlerini Korumak

Coddy'nin Verilog Journey'sinin RTL Tasarımı ve Doğrulama bölümünün bir parçası. Ders 6 / 38.

Sinyal genişliği, hangi bitlerin temsil edilebileceğini belirler. Bir işlemden önce işlenenleri genişleterek aritmetik amacı açıkça belirtin. İki işaretsiz 8 bitlik değeri toplamak dokuz sonuç biti gerektirebilir; yalnızca sekiz bit atamak, düşük sekiz biti korur ve elde bitini kaybeder.

İlgili alıntı; çevreleyen bildirimler ve bağlantılar görevde sağlanmıştır.

wire [8:0] total;
assign total = {1'b0,a} + {1'b0,b};

Her işlenen, tam toplamla eşleşecek şekilde açıkça dokuz bit genişliğindedir.

Gerekli sonuç genişliğini seçin ve aritmetik işlemden önce işlenenleri genişletin.

challenge icon

Görev

Orta

Taşmayı kaybetmeden işaretsiz 8 bitlik a ve b değerlerini toplayın. total içinde 9 bitlik tam toplamı döndürün. Her iki işleneni de açıkça dokuz bite genişletin. Çıktı sütunları: total. Tüm uyarıcı değerleri bilinen ikili değerlerdir.

design.v dosyasını tamamlayın ve modül adlarıyla portlarını koruyun. Kilitli testbench.v giriş değişikliklerini sağlar ve çıktıları kararlı hâle geldikten sonra yazdırır. +CASE=1 gibi bir simülatör bağımsız değişkeni kullanarak bir senaryo seçer; standart girdi gerekmez. Tasarıma yazdırma, gecikme veya simülasyonu sonlandırma eklemeyin. Beklenen çıktı, her gözlem için ondalık değerlerden oluşan, tek bir boşlukla ayrılmış ve satır sonuyla biten bir satırdır.

Kendin dene

module dut (input [7:0] a, input [7:0] b, output [8:0] total);
    // Bu yer tutucuyu kendi tasarımınızla değiştirin.
    assign total = 0;
endmodule
quiz iconKendini test et

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

RTL Tasarımı ve Doğrulama bölümündeki tüm dersler

Kendi başına pratik yap: Online Verilog derleyicisi