Mempertahankan Bit Carry
Termasuk bagian Desain dan Verifikasi RTL dalam perjalanan Verilog di Coddy. Pelajaran 6 dari 38.
Lebar sinyal menentukan bit mana yang dapat direpresentasikan. Perjelas maksud aritmetika dengan memperluas operand sebelum operasi. Penjumlahan dua nilai unsigned 8-bit dapat memerlukan sembilan bit hasil; menetapkan hanya delapan bit akan mempertahankan delapan bit terbawah dan menghilangkan carry.
Kutipan yang relevan; deklarasi dan koneksi di sekitarnya disediakan dalam tantangan.
wire [8:0] total;
assign total = {1'b0,a} + {1'b0,b};Setiap operand secara eksplisit memiliki lebar sembilan bit, sesuai dengan hasil penjumlahan lengkap.
Pilih lebar hasil yang diperlukan dan perluas operand sebelum melakukan operasi aritmetika.
Tantangan
SedangJumlahkan a dan b unsigned 8-bit tanpa kehilangan carry. Kembalikan jumlah lengkap 9-bit dalam total. Perluas kedua operand secara eksplisit menjadi sembilan bit. Kolom output: total. Semua nilai stimulus adalah nilai biner yang diketahui.
Lengkapi design.v dan pertahankan nama module serta port-nya. testbench.v yang terkunci memberikan perubahan input dan mencetak output setelah stabil. Testbench memilih skenario menggunakan argumen simulator seperti +CASE=1; input standar tidak diperlukan. Jangan tambahkan pencetakan, delay, atau penghentian simulasi ke design. Output yang diharapkan adalah satu baris nilai desimal untuk setiap pengamatan, dipisahkan dengan satu spasi dan diakhiri dengan baris baru.
Coba sendiri
module dut (input [7:0] a, input [7:0] b, output [8:0] total);
// Ganti placeholder ini dengan desainmu.
assign total = 0;
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