Sayfalar

18 Kasım 2011 Cuma

Verilog Komut Derleme ve Test

Metin editöründe kodumuzu yazıp '.v' uzantısıyla kaydettikten sonra, Ctrl + Alt + T tuşlarına basıp terminali açıyoruz.
Bundan sonra öncelikle dosya yolumuzu terminale bildirmemiz gerekiyor. Bunun için öncelikle Terminale "sudo su" yazıp şifremizi giriyoruz. Sonra "dir" komutuyla birlikte karşımıza bilgisayarımızda ki dosyalar geliyor. Buradan '.v' uzantılı dosyamızı kaydettiğimiz yeri belirtmemiz gerekiyor. Bunun için örneğin masaüstüne kaydettiysek "cd Masaüstü" komutunu yazıyoruz. Artık tek yapmamız gereken kodumuzu derlemek.

Bunun için "iverilog -o <dosya_adi> <dosya_adi.v>" komutunu giriyoruz ( < > karakterlerini yazmıyoruz).
Artık kodumuzu derledik.  Şimdi test etme zamanı.

Örneğin, 2 input girdisi ve 2 output çıktısı olan bir devrenin testini yapmak için;

module test; //module with no ports

   reg i1,i2;
   wire o1,o2;

   ADD_add answer(.o1(o1),.o2(o2),.i1(i1),.i2(i2));

     initial
     begin

     i1 = 1'b0;   // Burada tüm input olasılıklarını giriyoruz
     i2 = 1'b0;

     #5 

     i1 = 1'b0;
     i2 = 1'b1;

     #5

     i1 = 1'b1;
     i2 = 1'b0;

     #5

     i1 = 1'b1;
     i2 = 1'b1;

     end

     initial begin
$dumpfile("deneme.vcd");
$dumpvars;
     end

     initial
$monitor(i1,i2,o1,o2);

    initial
#100 
$finish;

endmodule

Şeklinde bir kod yazıp ".v" uzantısıyla Masaüstüne kaydediyoruz.

Ardından tekrar terminalimizi açıp test dosyamızı derlememiz gerekiyor. Bunun için;
"iverilog <dosya_adi.v> <test_dosyasi_adi.v>" şeklinde derliyoruz.
Bu işlemi yaptıktan sonra masaüstünde ".out" uzantılı bir dosyanın oluşması gerekiyor. 
Kodu derledikten sonra artık tek yapmamız gereken kodu çalıştırmak bunun içinde
"./<olusan_dosyanin_adi.out>" komutu terminale girmek. ("./dosya.out" arada hiç boşluk yok).

Artık kodunuz derlenip çalıştırıldı ve karşınızda 1 ve 0'lardan oluşan çıktınızı görebilirsiniz. Kodumuzu bu şekilde test ettiğimizde masaüstünde ".vcd" uzantılı bir dosya uzantılı dosya oluştuğunu göreceksiniz.

Devremizi gtkwave üzerinde test etmek istersek. Terminale;
"gtkwave dosya.vcd" yazıyoruz ve gtkwave programı otomatik açılıyor ve orada devreyi somut olarak görüp işlemleri yapabilirsiniz.

Icarus Verilog Kurulumu (Ubuntu)

Uçbirimi açıp sırasıyla aşağıdaki kodları işletin:


sudo su
apt-get purge verilog
apt-get install build-essential git-core autoconf gperf flex bison
git clone git://icarus.com/~steve-icarus/verilog
cd verilog
source autoconf.sh
./configure
make
make install
cd ..
rm -rf verilog


Sonrasında yazdığınız kodun uzantısını ".v" olarak değiştirin. Örneğin "deneme.v"
Ardından yine uçbirimde aşağıdaki kodu işletin böylelikle kodunuzu derleyin:


iverilog -o deneme deneme.v


Sonra bu kodu işleterek kodunuzu çalıştırın:


vvp deneme