Recap - ALU Design
Coddy'nin Verilog Journey'sinin Temeller bölümünün bir parçası. Ders 57 / 90.
Görev
Bir ALU (Aritmetik Mantık Birimi), iki girdi alan, bunlar üzerinde bir işlem gerçekleştiren ve bir çıktı üreten dijital bir devredir. Bir seçim sinyaline göre iki girdi üzerinde aritmetik ve mantık işlemleri gerçekleştirir. select sinyali yürütülecek bir işlemi seçer.
Nasıl çalışır?
| select | İşlem | Çıktı |
|---|---|---|
2'b00 | Toplama | a + b |
2'b01 | Çıkarma | a - b |
2'b10 | Bit düzeyinde AND | a & b |
2'b11 | Bit düzeyinde OR | a | b |
Bir case ifadesi kullanarak basit bir ALU oluşturun.
Yapılacaklar:
aluadlı bir module oluşturun- Girdileri ekleyin:
a(4 bit),b(4 bit),select(2 bit) - Çıktıyı ekleyin:
result(4 bit, reg türünde) - Bir
always @(*)block ekleyin - İçine bir
case (select)ifadesi ekleyin 2'b00,2'b01,2'b10,2'b11için dört case ekleyinresult = 0değerini atamak için birdefaultcase ekleyinendcaseveendmoduleile kapatın
Kendin dene
// TODO: alu modülünü oluştur
// TODO: girdileri ekle (a, b, select)
// TODO: çıktıyı ekle (result)
// TODO: always @(*) bloğunu ekle
// TODO: case (select) ekle
// TODO: case 2'b00: result = a + b; ekle
// TODO: case 2'b01: result = a - b; ekle
// TODO: case 2'b10: result = a & b; ekle
// TODO: case 2'b11: result = a | b; ekle
// TODO: default: result = 0; ekle
// TODO: endcase ekle
// TODO: endmodule ekleTemeller bölümündeki tüm dersler
4Operators Part 1
Arithmetic OperatorsModulo OperatorComparison OperatorsRecap - Simple MathBitwise Operators7Assign And Gates
Continuous AssignmentAssign With OperatorsBuilt In Gate PrimitivesAND OR NOT GatesXOR XNOR GatesRecap - Logic Gate Circuit10Decision Making
If StatementIf - ElseRecap - Simple ComparatorCase StatementCasex And CasezRecap - ALU Design5Operators Part 2
Logical OperatorsReduction OperatorsShift OperatorsConcatenation OperatorConditional OperatorRecap - Operator Challenge3Number System
Binary RepresentationSized NumbersUnsized NumbersNegative NumbersSpecial Values X And ZRecap - Number Formats6Modules
Module StructureInput And Output PortsInout PortsModule InstantiationPort Mapping By NamePort Mapping By OrderRecap - Build A Module9Procedural Blocks
Always BlockInitial BlockSensitivity ListBlocking AssignmentNon Blocking AssignmentRecap - Always vs Initial15Traffic Light Controller
Defining The StatesState Machine LogicKendi başına pratik yap: Online Verilog derleyicisi