Menu
CoddyTech

Integer dan Real

Termasuk bagian Dasar-Dasar dalam perjalanan Verilog di Coddy. Pelajaran 8 dari 90.

Selain wire dan reg, Verilog memiliki tipe data lain untuk angka dengan berbagai kegunaan.

Integer

integer adalah variabel serbaguna untuk menghitung dan melakukan perhitungan.

  • Ukuran default adalah 32 bit
  • Bertanda (dapat menyimpan angka negatif)
  • Terutama digunakan dalam testbench dan for loop

Mendeklarasikan integer:

integer i;        // Variabel bertanda 32-bit
integer count;    // Dapat menyimpan bilangan negatif

Menggunakan integer:

integer i;

initial begin
  i = 0;           // Mulai dari 0
  i = i + 1;       // Tambah hitungan
  i = -5;          // Bisa menyimpan nilai negatif
  $display("i = %d", i);  // Menampilkan: i = -5
end

Real

real digunakan untuk bilangan floating-point (bilangan dengan angka desimal).

  • Menyimpan nilai pecahan
  • Digunakan dalam testbench untuk perhitungan
  • Tidak dapat disintesis menjadi perangkat keras

Mendeklarasikan real:

real pi;           // Variabel bilangan pecahan
real voltage;

Menggunakan real:

real pi;

initial begin
  pi = 3.14159;               // Nilai desimal
  pi = 22.0 / 7.0;            // Hasil pembagian
  $display("pi = %f", pi);    // Menampilkan: pi = 3.142857
end

Di Mana Menggunakannya

Dalam testbench: Integer dan real umumnya digunakan untuk pencacah perulangan, perhitungan, dan memeriksa nilai yang diharapkan. Keduanya membuat kode pengujian lebih mudah ditulis dan dipahami.

Pada perangkat keras: Tipe-tipe ini biasanya tidak dapat disintesis, artinya tidak dapat diubah menjadi sirkuit nyata. Untuk perangkat keras yang akan dipasang pada FPGA atau chip, gunakan reg dan wire.

challenge icon

Tantangan

Lengkapi kode agar testbench berfungsi.

Yang harus dilakukan:

  1. Deklarasikan integer bernama i (untuk pencacah perulangan)
  2. Deklarasikan real bernama value (untuk perhitungan)

Coba sendiri

module test;
  
  // Deklarasikan bilangan bulat bernama i

  
  // Deklarasikan bilangan real bernama value

  
  initial begin
    i = 7;
    value = i * 0.5;
    $display("i = %0d, value = %f", i, value);
    
    $finish;
  end
  
endmodule
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Compiler Verilog online