Cakupan Batas dan Kontrol
Termasuk bagian Desain dan Verifikasi RTL dalam perjalanan Verilog di Coddy. Pelajaran 29 dari 38.
Lulus beberapa pengujian berbeda dengan menguji skenario penting. Catat apakah nilai minimum, maksimum, dan biasa telah diuji, serta apakah kontrol yang saling bersaing terjadi bersamaan. Flag cakupan mencatat bahwa case telah diamati; flag tersebut tidak membuktikan bahwa desain merespons dengan benar. Padukan cakupan dengan pemeriksaan hasil.
Cuplikan yang relevan; deklarasi dan koneksi di sekitarnya disediakan dalam tantangan.
if(value==0) seen[0]=1;
else if(value==15) seen[1]=1;
else seen[2]=1;Masker bit mengingat kategori mana saja yang telah muncul tanpa mengganti kecocokan sebelumnya.
Gabungkan cakupan batas dan kombinasi kontrol dengan pemeriksaan kebenaran yang independen.
Tantangan
SedangLacak tiga bin cakupan input di seen tanpa menghapus hit sebelumnya: bit 0 mencatat value=0, bit 1 mencatat value=15, dan bit 2 mencatat nilai dari 1 hingga 14. Input berisi bit yang diketahui. Pemanggil menginisialisasi seen=0 sebelum suatu skenario. Modul ini berisi task khusus simulasi yang dipanggil oleh testbench terkunci. Kolom output: seen dalam desimal.
Lengkapi design.v dan pertahankan nama modul serta portnya. testbench.v yang terkunci menyediakan perubahan input dan mencetak output setelah stabil. Testbench memilih skenario menggunakan argumen simulator seperti +CASE=1; input standar tidak diperlukan. Pertahankan pencetakan dan kendali skenario di testbench terkunci; implementasikan hanya bagian isi task. Output yang diharapkan berupa satu baris nilai desimal untuk setiap observasi, dipisahkan dengan satu spasi dan diakhiri baris baru.
Coba sendiri
module dut;
task observe;
input [3:0] value;
inout [2:0] seen;
begin
// Lengkapi task checker.
seen=seen;
end
endtask
endmodulePelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Desain dan Verifikasi RTL
1RTL Kombinasional yang Andal
Nilai Default Mencegah LatchEncoder PrioritasValidasi One-HotDekode Case yang AmanRangkuman: Router Permintaan2Lebar Bit dan Aritmetika Bertanda
Mempertahankan Bit CarryPerbandingan BertandaPergeseran Kanan AritmetikaOverflow dan SaturasiRangkuman, Selisih Bertanda3RTL yang Dapat Digunakan Kembali
Fungsi KombinasionalParameter yang Aman terhadap LebarGenerate loopGenerate dengan KondisiRingkasan: Masker Bit yang Dapat Digunakan Kembali6Testbench dengan Pemeriksaan Mandiri
Pemeriksaan Empat KeadaanTask Checker yang Dapat Digunakan UlangModel Referensi dan SkorCakupan Batas dan KontrolRangkuman: Audit PenjumlahLatihan sendiri: Compiler Verilog online