Son Yazılar

Verilog'da Vektör ve Array Kavramı Nedir?






"Verilog'da vektör ve array kavramı nedir, nasıl kullanılır?" bu yazıda bunlara değineceğiz. Diğer programlama dillerine aşinasanız eğer bu kavramları önceden de duymuşsunuzdur. Fakat bunları ilk defa duyanlar için kısaca vektörü, dinamik olarak yeniden boyutlandıralabilen tek boyutlu dizi yapısı şeklinde açıklayabiliriz. Arrayler ise isimlerinden anlaşıldığı üzere çok boyutlu dizileri ifade etmede kullanılır. 

Vektörlerden başlamamız gerekirse:

reg [7:0] Vector1;

Yukarıda gördüğünüz üzere "Vector1" bizim 8 bitlik bir vektörümüzdür. Bunu isterseniz [0:7] şeklinde de belirtebilirsiz; fakat sıklıkla kullanılan MSB'den LSB şeklinde olandır. 

Peki biz bu vektöre nasıl değişken atayabiliriz?

    initial begin
        Vector1=8'b0000_1111;
    end

Görüldüğü üzere Vector1 isimli değişkenimize 8 bit, binary türünden bir değer atamayı gerçekleştirdik. Simülasyonun çıktısı da göründüğü gibidir: 



Arraylere geçecek olursak...
Arrayleri incelerken onları birer matris olarak düşünmenizde her zaman fayda vardır. Verilog ile basit bir array tanımlayacak olursak:

reg[3:0] mem [0:2];

Görüldüğü üzere bu sefer değişkenimizden sonra da bir blok açarak yeni bir bit aralığı tanımlamış bulunmaktayız. Basit bir şekilde bu array'i 4 sütun ve 3 satırdan oluşan bir matris olarak düşünebiliriz. 
array1 isimli değişkenimize değer atamak istersek:

    initial begin
    mem[0]=3'b100;
    mem[1]=3'b111;
    end
Üstte yazdığımız kod ile, her sütun için MSB'den itibaren değer atama işlemi gerçekleşecektir. 

Bu konunun detaylı anlatımı ve proje dosyaları yakında yine bu blok içerisinde paylaşılacaktır. 
Yazıyı okuduğunuz için teşekkürler...
İyi çalışmalar...

Hiç yorum yok