FPGA ile (Sahada Programlanabilir Mantık Dizeleri) gerçekleştirilen bu örnek uygulamamızda, Verilog Donanım Tanımlama Dili(HDL) veya VHDL gibi bir yazılımsal bir dil kullanmaksızın 2bit ALU(Aritmetik Mantık Birimi) örnek uygulaması gerçekleştireceğiz. Geliştirme kartımız üzerinde bulunan sürgülü anahtar(SWITCH) üzerinden 2bit A,B ve fonksiyon girişini gerçekleştirip LEDler ile fonksiyon çıktılarını göreceğiz.

ALU(Aritmetik Mantık Birimi) nedir?

Aritmetik Mantık Birimi (ALU) aritmetik ve mantık işlemlerini gerçekleştiren bir dijital devredir. ALU en basit işlemi gerçekleştiren mikro denetleyiciden, en karmaşık mikroişlemciye sahip bir bilgisayara kadar tüm işlemcilerin yapıtaşıdır. Modern bilgisayarların içinde bulunan mikroişlemcilerin ve ekran kartlarının içinde çok karışık ve güçlü ALU’lar bulunmaktadır. ALU kavramına ilk olarak 1945 yılında matematikçi John von Neumann EDVAC adlı yeni bir bilgisayar üzerine bulgularını anlatan raporunda değinmiştir.

 

Aşağıda blok şeması görülen 2 bitlik ALU da, 2bitlik veri girişleri A0, A1, B0 ve B1 dir. Fonksiyon girişleri ise f0 ve f1 olarak belirtilmiştir. Çıkışlar ise, C0,C1 ve taşma(overflow) dır. Altera firmasının Quartus FPGA derleyecisinde bu blok şemayı oluşturacağız.

2bitALU

f0/f1, fonksiyonları ile şu işlemler gerçekleşir;

 

 

f0,f1=00; A+B

f0,f1=01; A DEĞİL

f0,f1=10; A VEYA B

f0,f1=11; A VE B

 

Quartus programında, FPGA olarak kullandığımız çipi seçip proje oluşturuyoruz. Program ekranında ise yeni seçeneği ile,

blok01

“Blog Diagram/ Schematic File” seçeneğini seçilir.

Blog diagram şemasını oluşurmak için; Symbol Tool ile istenilen lojik elementler eklenir.

blok02

Giriş, çıkış bağlantı noktaları ise;  Pin Tool ile tasarıma eklenir.

blok03

Tasarım sona erdiğinde böyle ekran görüntüsü oluşacaktır; LED çıkışlarının Katot ucu FPGA ya bağlı olduğundan çıkışlar, değillenmiştir.

2bitALU3

2 bit ALU uygulamasının giriş ve çıkışları şöyle oluşur;

2bitALUgirCik

Örnek uygulamalarımızda; FPGA çipi olarak ALTERA Firmasının Cyclone IV ailesinden EP4CE6E22C8 model bir FPGA ulandık. Bu FPGA çipinin gelişmiş özellikleri için modelin datasheet’i(bilgiSayfası) incelenmelidir. Ama kabaca olarak kullandığımız FPGA çipi; 6272 Lojik Elementli, 270Kbit Gömülü Hafızası, 91 adet I/O (Giriş/Çıkış) Pini bulunan, 144 ayaklı bir çiptir.

ALTERA firmasının üretmiş olduğu FPGA’ları programlayabilmek için, “Quartus” Derleyicisini kullanıyoruz. Quartus Derleyicisinin kurumsal internet sitesinden indirdiğimiz “Demo” versiyonu ile bu örnek uygulamayı gerçekleştirdik.

FPGA ile Sürgülü Anahtar(SWITCH) ve LED’ler arasındaki Pin Bağlantıları:

anahtarGir

ledler

Blok tasarım ile 2 bit ALU Uygulaması Pin Tanımlama & Bağlantıları

Çıkış Pinleri

C0                                                                                   PIN_74

C1                                                                                     PIN_77

TASMA                                                                           PIN_83

Giriş Pinleri

F0                                                                                    PIN_58

F1                                                                                    PIN_59

A0                                                                                  PIN_68

A1                                                                                  PIN_67

B0                                                                                   PIN_66

B1                                                                                   PIN_65

 

Uygulamanın PDF dosyasını indirmek için :

İndir (PDF, 1.18MB)