Rangkuman: Desain ALU
Termasuk bagian Dasar-Dasar dalam perjalanan Verilog di Coddy. Pelajaran 57 dari 90.
Tantangan
ALU (Arithmetic Logic Unit) adalah rangkaian digital yang menerima dua input, melakukan operasi pada keduanya, lalu menghasilkan satu output. ALU melakukan operasi aritmetika dan logika pada dua input berdasarkan sinyal pemilih. Sinyal select memilih satu operasi untuk dijalankan.
Cara kerjanya
| select | Operasi | Output |
|---|---|---|
2'b00 | Penjumlahan | a + b |
2'b01 | Pengurangan | a - b |
2'b10 | AND bitwise | a & b |
2'b11 | OR bitwise | a | b |
Buat ALU sederhana menggunakan pernyataan case.
Yang harus dilakukan:
- Buat module bernama
alu - Tambahkan input:
a(4-bit),b(4-bit),select(2-bit) - Tambahkan output:
result(4-bit, tipe reg) - Tambahkan blok
always @(*) - Di dalamnya, tambahkan pernyataan
case (select) - Tambahkan empat kasus untuk
2'b00,2'b01,2'b10,2'b11 - Tambahkan kasus
defaultuntuk menetapkanresult = 0 - Akhiri dengan
endcasedanendmodule
Coba sendiri
// TODO: Buat module alu
// TODO: Tambahkan input (a, b, select)
// TODO: Tambahkan output (result)
// TODO: Tambahkan blok always @(*)
// TODO: Tambahkan case (select)
// TODO: Tambahkan case 2'b00: result = a + b;
// TODO: Tambahkan case 2'b01: result = a - b;
// TODO: Tambahkan case 2'b10: result = a & b;
// TODO: Tambahkan case 2'b11: result = a | b;
// TODO: Tambahkan default: result = 0;
// TODO: Tambahkan endcase
// TODO: Tambahkan endmoduleSemua pelajaran di Dasar-Dasar
1Pengantar
Apa Itu VerilogPerangkat Keras vs Perangkat LunakModul PertamamuKomentarTingkat Abstraksi Desain4Operator Bagian 1
Operator AritmetikaOperator ModuloOperator PerbandinganUlasan, Matematika SederhanaOperator Bitwise7Penugasan dan Gerbang
Penugasan KontinuPenugasan dengan OperatorPrimitif Gerbang BawaanGerbang AND, OR, NOTGerbang XOR, XNORUlasan: Rangkaian Gerbang Logika10Pengambilan Keputusan
Pernyataan IfIf - ElseRangkuman: Komparator SederhanaPernyataan CaseCasex dan CasezRangkuman: Desain ALU5Operator Bagian 2
Operator LogikaOperator ReduksiOperator GeserOperator PenggabunganOperator KondisionalRangkuman, Tantangan Operator3Sistem Bilangan
Representasi BinerBilangan BerukuranBilangan Tanpa UkuranBilangan NegatifNilai Khusus X dan ZRingkasan: Format Bilangan6Modul
Struktur ModulPort Input dan OutputPort InoutInstansiasi ModulPemetaan Port Berdasarkan NamaPemetaan Port Berdasarkan UrutanRangkuman: Bangun Modul9Blok Prosedural
Blok alwaysBlok initialDaftar SensitivitasPenugasan BlockingPenugasan Non-BlockingRangkuman: always vs initial15Pengendali Lampu Lalu Lintas
Menentukan StatusLogika Mesin StatusLatihan sendiri: Compiler Verilog online