ALTERA-FPGA

Vending Machine Nedir? (Otomat)

Merhaba arkadaşlar! Bu yazımda sizlere Vending Machine, FPGA, Altera ve Verilog dili hakkında bilgiler vereceğim.

Vending Machine: Satıcı ile alıcı arasında yapılan ve bir malın alıcıya verilmesi karşılığında bir fiyat veya değer alınması işlemidir.

FPGA Nedir?

FPGA bir tür entegre devre sistemidir. Temel farkı, devrenin yapısı ve yönetiminin tamamen bize ait olmasıdır. Yani kodlayarak devreyi istediğimiz işe uygun hale getirebiliriz.

Altera Nedir?

Altera, yukarıda bahsedilen devrenin kendisidir. IDE aracılığıyla bu devreyi programlayabiliriz.

Altera DE2-115 Devre Kartı

Bu, ALTERA DE2-115 sürümüne ait devre kartıdır. Şimdi bu devrenin yazıldığı platform (IDE) ve gereksinimlerini inceleyelim:

Gereksinimler

  1. Quartus IDE (https://www.altera.com/downloads/download-center.html)
  2. Verilog HDL (Kullanılan Programlama Dili)
  3. Pin Assignment (Port ve switchlerin tanımı)

1 - QUARTUS

Quartus, yazdığınız binlerce satır kodun devre şemasını tek tuşla çıkarabilen ve aynı zamanda PDF veya JPG olarak export edebileceğiniz bir IDE'dir.

2 - Verilog HDL

Verilog, elektronik sistemleri modellemek için kullanılan bir donanım tanımlama dilidir. Analog, sayısal ve karışık işaretli devrelerin tasarımını ve doğrulanmasını sağlar.

3 - Pin Assignment

Altera kartı üzerindeki portlar, switchler ve diğer elemanlar bir CSV dosyasında tanımlanır. Dosyaya buradan erişebilirsiniz.

Örnek: LED Yakma Uygulaması

module ledyak(SW,LEDR);
  input [17:0]SW;
  output [17:0]LEDR;
  assign LEDR = SW;
endmodule

Module'ler Verilog'da başlar ve endmodule ile biter. Proje dosyası adı ile module dosyasının adı aynı olmalıdır; aksi takdirde derleme hatası alırsınız.

Switch ve LEDR Pinleri

Kırmızı dikdörtgen içindeki pinler input ve outputlardır. Switchler kullanıcıdan giriş alırken, LEDR ve Seven Segment display çıkışları sağlar.

Bundan sonrası Altera üzerinde oynama kısmı. Diğer blog yazımda görüşmek üzere.

Yorumlar

Bu blogdaki popüler yayınlar

Data Annotation Nedir?

2 bitlik 2 sayıyı çarpma

Asp.Net Mvc 5 Çoklu Dil Desteği