Tabel ROM Kombinasional
Termasuk bagian Desain dan Verifikasi RTL dalam perjalanan Verilog di Coddy. Pelajaran 21 dari 38.
Tabel pencarian tetap menjelaskan pemetaan hanya-baca dari alamat ke data. case atau function yang lengkap dapat menyatakan isinya. Dengan pembacaan kombinasional, perubahan alamat akan mengubah output tanpa menunggu clock. Alat sintesis memilih implementasi; kode sumber ini tidak menjanjikan primitive memori FPGA tertentu.
Kutipan yang relevan; deklarasi dan koneksi di sekitarnya disediakan dalam tantangan.
function [7:0] lookup;
input [1:0] addr;
begin
case(addr)
0: lookup=3;
1: lookup=5;
2: lookup=8;
3: lookup=13;
default: lookup=0;
endcase
end
endfunctionSetiap alamat memilih konstanta yang sudah ditentukan tanpa mempertahankan keluaran sebelumnya.
Tentukan setiap entri tabel dan bedakan pencarian kombinasi dari latensi pembacaan terdaftar.
Tantangan
SedangImplementasikan tabel lookup kombinasi dengan delapan entri. Alamat 0 hingga 7 masing-masing mengembalikan 3,5,8,13,21,34,55,89. Gunakan function lengkap berbasis case untuk mengendalikan y. Kolom output: y. Semua nilai stimulus adalah nilai biner yang diketahui.
Lengkapi design.v dan pertahankan nama module serta port-nya. 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. 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 karakter baris baru.
Coba sendiri
module dut (input [2:0] addr, output [7:0] y);
// Ganti placeholder ini dengan desainmu.
assign y = 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 Bertanda5Memori dan Tabel Pencarian
Tabel ROM KombinasionalPenyimpanan array registerPort Baca TerdaftarPenerusan Baca-TulisRingkasan: Bank Baca Ganda3RTL 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