Integer And Real
Coddy'nin Verilog Journey'sinin Temeller bölümünün bir parçası. Ders 8 / 90.
wire ve reg türlerine ek olarak Verilog, farklı amaçlarla kullanılan sayılar için başka veri türlerine de sahiptir.
Tamsayı
integer, sayma ve hesaplamalar için genel amaçlı bir değişkendir.
- Varsayılan boyut 32 bittir
- Signed (negative numbers saklayabilir)
- Çoğunlukla testbench'lerde ve for döngülerinde kullanılır
integer tanımlama:
integer i; // 32-bit işaretli değişken
integer count; // Negatif sayıları saklayabilirinteger kullanımı:
integer i;
initial begin
i = 0; // 0'dan başla
i = i + 1; // Yukarı say
i = -5; // Negatif saklayabilir
$display("i = %d", i); // Yazdırır: i = -5
endReal
real, kayan noktalı sayılar (ondalık basamakları olan sayılar) içindir.
- Kesirli değerleri depolar
- Hesaplamalar için testbençlerinde kullanılır
- Donanıma sentezlenemez
Bir real tanımlama:
real pi; // Kayan noktalı değişken
real voltage;real kullanımı:
real pi;
initial begin
pi = 3.14159; // Ondalık değer
pi = 22.0 / 7.0; // Bölme sonucu
$display("pi = %f", pi); // Yazdırır: pi = 3.142857
endBunlar Nerede Kullanılır?
Testbench'lerde: Tamsayılar ve gerçek sayılar genellikle döngü sayaçları, hesaplamalar ve beklenen değerlerin kontrolü için kullanılır. Test kodunu yazmayı ve anlamayı kolaylaştırırlar.
Donanımda: Bu türler genellikle sentezlenebilir değildir; yani gerçek devrelere dönüştürülemezler. FPGA veya çip üzerinde kullanılacak donanım için bunun yerine reg ve wire kullanın.
Görev
Testbench'in çalışmasını sağlamak için kodu tamamla.
Yapılacaklar:
- Bir integer Declare et; adı i olsun (for döngüsü counter'ı için)
- Bir real Declare et; adı value olsun (calculation için)
Kendin dene
module test;
// i adında bir integer bildir
// value adında bir real bildir
initial begin
i = 7;
value = i * 0.5;
$display("i = %0d, value = %f", i, value);
$finish;
end
endmoduleBu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temeller 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