Menu
Coddy logo textTech

Etkin Örnekleri Kabul Et

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

challenge icon

Görev

Zor

Beş adımda bir Sample Monitor oluşturun. Enable denetimi ekleyin: reset önceliğinden sonra, en=1 veriyi kabul eder ve toplama ekler; en=0 toplamı korur. Önceki tüm davranışları koruyun. Testbench’i ve önceki çıktı davranışını da içeren önceki adımlardaki her şeyi koruyun. Tüm giriş değerleri bilinir. Senaryolar en fazla 40 kenar içerir; bu nedenle toplam 16 bite sığar. Sabit testbench, 1-9 senaryoları için total değerini, 10-12 senaryoları için total ve count değerlerini, 13-15 senaryoları için ise total, count ve alarm değerlerini yazdırır. Yalnızca bu adım için etkinleştirilen senaryolar değerlendirilir.

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. Bir simülatör argümanı (örneğin +CASE=1) kullanarak bir senaryo seçer; standart girdiye gerek yoktur. Tasarıma yazdırma, gecikme veya simülasyonu sonlandırma eklemeyin. Beklenen çıktı, her gözlem için bir satır ondalık değer; değerler tek bir boşlukla ayrılır ve satır yeni satır karakteriyle biter.

Kendin dene

module dut(input clk,rst,en,clear, input [7:0] data, input [15:0] limit, output reg [15:0] total, output reg [3:0] count, output alarm);
    always @(posedge clk)begin
        if(rst)total<=0;else total<=total+data;
        count<=0;
    end
    assign alarm=0;
endmodule

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

Kendi başına pratik yap: Online Verilog derleyicisi