Tamsayı ve Gerçel
Coddy'nin Verilog Journey'sinin Temel Bilgiler bölümünün bir parçası. Ders 8 / 90.
wire ve reg türlerine ek olarak Verilog'da farklı amaçlara yönelik sayılar için başka veri türleri de vardır.
Tamsayı
integer, sayma ve hesaplama işlemleri için kullanılan genel amaçlı bir değişkendir.
- Varsayılan boyut 32 bittir
- İşaretlidir (negatif sayıları saklayabilir)
- Çoğunlukla test tezgâhlarında ve döngülerde kullanılır
Bir tamsayı tanımlama:
integer i; // 32 bitlik işaretli değişken
integer count; // Negatif sayıları saklayabilirTamsayı kullanımı:
integer i;
initial begin
i = 0; // 0'dan başla
i = i + 1; // Bir artır
i = -5; // Negatif değer saklayabilir
$display("i = %d", i); // Yazdırır: i = -5
endGerçek
real kayan noktalı sayılar (ondalıklı sayılar) içindir.
- Kesirli değerleri saklar
- Hesaplamalar için test düzeneklerinde kullanılır
- Donanıma sentezlenemez
Bir real değişkeni 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); // Ekrana yazdırır: pi = 3.142857
endNerelerde Kullanılırlar
Test tezgâhlarında: Tamsayılar ve gerçek sayılar genellikle döngü sayaçları, hesaplamalar ve beklenen değerleri denetlemek için kullanılır. Test kodunu yazmayı ve anlamayı kolaylaştırırlar.
Donanımda: real türü sentezlenebilir değildir; yani gerçek bir devreye dönüştürülemez. integer türü sentezlenebilir ve genellikle döngü sayacı olarak kullanılır, ancak FPGA’ya veya çipe aktarılacak donanım sinyalleri için reg ve wire kullanın.
Görev
Testbench'in çalışması için kodu tamamla.
Yapılacaklar:
- Döngü sayacı için i adlı bir tam sayı tanımla
- Hesaplama için value adlı bir gerçek sayı tanımla
Kendin dene
module test;
// i adlı bir tamsayı tanımla
// value adlı bir gerçek sayı tanımla
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.
Temel Bilgiler bölümündeki tüm dersler
4Operatörler Bölüm 1
Aritmetik OperatörlerMod Alma OperatörüKarşılaştırma OperatörleriTekrar - Basit MatematikBit Düzeyi Operatörleri7Atama ve Kapılar
Sürekli AtamaOperatörlerle AtamaYerleşik Kapı PrimitifleriAND, OR ve NOT KapılarıXOR ve XNOR KapılarıÖzet - Mantık Kapısı Devresi10Karar Verme
If İfadesiIf - ElseTekrar - Basit KarşılaştırıcıCase İfadesiCasex ve CasezTekrar - ALU Tasarımı2Veri Türleri
Wire TürüReg TürüTamsayı ve GerçelVektörlerDizilerParametrelerÖzet - Sinyalleri Tanımlama5Operatörler Bölüm 2
Mantıksal Operatörlerİndirgeme OperatörleriKaydırma OperatörleriBirleştirme OperatörüKoşullu OperatörTekrar - Operatör Meydan Okuması11Döngüler
For DöngüsüWhile DöngüsüTekrar DöngüsüSonsuz DöngüDevre Dışı Bırakma İfadesiTekrar - Döngü Kalıpları3Sayı Sistemi
İkili GösterimBoyutlu SayılarBoyutsuz SayılarNegatif SayılarÖzel X ve Z DeğerleriTekrar - Sayı Biçimleri6Modüller
Modül YapısıGiriş ve Çıkış PortlarıÇift Yönlü PortlarModül ÖrneklendirmeAda Göre Port EşlemeSıraya Göre Port EşlemeTekrar - Bir Modül Oluşturma9Prosedürel Bloklar
Always BloğuInitial BloğuDuyarlılık ListesiBloklayıcı AtamaBloklamayan AtamaTekrar - Always ve Initial Karşılaştırması15Trafik Işığı Denetleyicisi
Durumları TanımlamaDurum Makinesi MantığıKendi başına pratik yap: Online Verilog derleyicisi