VHDL Kullanarak FPGA İle Yüksek Kapasİtelİ Tam ÇIkarIcI Devre TasarImI

24
Kenan BAYSAL VHDL KULLANARAK FPGA İLE YÜKSEK KAPASİTELİ TAM ÇIKARICI DEVRE TASARIMI Namık Kemal Üniversitesi Bilgi Yönetimi Programı

description

Kenan BAYSAL. Namık Kemal Üniversitesi Bilgi Yönetimi Programı. VHDL Kullanarak FPGA İle Yüksek Kapasİtelİ Tam ÇIkarIcI Devre TasarImI. Özet. FPGA VHDL Bilgisayar Aritmetiğinde Çıkartma İşlemi Yüksek Kapasiteli Çıkartma Devresi Tasarımı Sonuç. - PowerPoint PPT Presentation

Transcript of VHDL Kullanarak FPGA İle Yüksek Kapasİtelİ Tam ÇIkarIcI Devre TasarImI

Page 1: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

Kenan BAYSAL

VHDL KULLANARAK FPGA İLE YÜKSEK KAPASİTELİ TAM ÇIKARICI DEVRE TASARIMI

Namık Kemal ÜniversitesiBilgi Yönetimi Programı

Page 2: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

Özet

• FPGA• VHDL• Bilgisayar Aritmetiğinde Çıkartma İşlemi• Yüksek Kapasiteli Çıkartma Devresi Tasarımı• Sonuç

2

Page 3: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

FPGA (Field Programmable Gate Arrays)

• FPGA’lar bir donanım tanımlama dili kullanılarak sayısal tasarım yapmaya imkan sağlayan geliştirme platformlarıdır, entegre devrelerdir.

• Tasarım sırasında büyük esneklik sağlaması ve paralel işlem yapabilme kabiliyeti sebebiyle FPGA kullanımı günümüzde oldukça yaygınlaşmıştır.

3

Altera - Cyclone Xilinx - Spartan

Page 4: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

FPGA

• FPGA’yi günümüzde popüler yapan özellikler;• Kullanımının artmasına bağlı olarak fiyatlarının

düşmesi• Gelişen teknoloji ile birlikte kapasitelerinin artması• 1987: 9000 Lojik Kapı• 2012: 20 Milyon Lojik Kapı

• Gelişmiş tasarım programları (Quartus)• Örnek uygulamaların kolay erişilebilir hale gelmesi • www.cizgi-tagem.org• www.mcu-turkey.com

4

Page 5: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

VHDL (VHSIC Hardware Description Language)

• VHDL bir donanım tanımlama dilidir. • Donanım kelimesi, bir taraftan kişisel bilgisayarlar gibi

geniş bir içeriği tanımlamak için kullanılsa da diğer bir taraftan küçük mantık kapıları ve onların içindeki entegre devreleri tanımlamak için de kullanılır.

5

Page 6: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

VHDL (VHSIC Hardware Description Language)

• ISP (Carnegie Mellon University) - 1976• KARL (Kaiserslautern University) - 1977

• Verilog HDL (Gateway Design Automation – 1985)• VHDL (Very High Speed Integrated Circuit Hardware

Description Language – Amerikan Savunma Bakanlığı -1987)

• AHDL (Altera HDL)• RHDL (Ruby HDL)• Confluence • CUPL (Logical Devices Inc.)

6

Önc

ü di

ller

Yayg

ın d

iller

Diğe

r

Page 7: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

VHDL & Verilog HDL

7

VHDL Verilog HDL

Daha katı kurallı olan bir dil. Akademik seviye

Öğrenmesi ve kod yazması daha hızlı ve kolay

Karmaşık devrelerde daha az kapı kullanan derleyici yapısı

Karmaşık devrelerde daha fazla kapı kullanan derleyici

Yaygın olarak Avrupa ve Japonya Yaygın olarak Amerika

ADA programlama dilini baz alan Pascal sınıfında bir dil

C’ye yakın syntax yapısı

ATI – Nokia NVIDIA - AMD

Page 8: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

VHDL

• Donanım tanımlama dilinin en büyük avantajlarından biri de yazılan kodun adım adım çalıştırılabilmesidir. • Biçimsel bir modeldeki kodlama hataları ya da sistemdeki

kavramsal hatalar benzetim çalıştırılarak bulunabilmektedir. • Oluşturulan modeldeki farklı giriş değerlerine göre

sistemin verdiği yanıt benzetimle gözlemlenebilir ve analiz edilebilmektedir.

8

Page 9: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

VHDL Kod Yapısı

9

LIBRARY

ENTITY

ARCHITECTURE

TEMEL VHDL KODU

PROCESS

Page 10: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

VHDL Kod Yapısı

10

entity and_gate is port( A: in bit, B: in bit, X: out bit);end entity and_gate;

architecture mimari of and_gate is begin X <= A and B;end architecture mimari;

Page 11: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

Bilgisayar Aritmetiğinde Çıkartma İşlemi

• Standart bir bilgisayar işlemcisinde, • Birikeç Yazacı (Akümülatör-AC)• Toplayıcı ve Mantık devresi• Denetim kapılarından

• İşlenecek veri, kaydedicilerden veri yolu ile buraya aktarılarak işlem süreci gerçekleştirilir.

11

Birikeç (Akümülatör) Yapısı

Page 12: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

Bilgisayar Aritmetiğinde Çıkartma İşlemi

• 32 bit bir işlemciye sahip olan standart bir bilgisayar, yazılımsal olarak birçok adımda çıkarma işlemini gerçekleştirir.

• İşlemcinin veri kapasitesi ile aynı veri boyutu büyüklüğüne sahip iki değerin dahi çıkarma işlemi birçok adımda gerçekleştirilebilmektedir.

12

32 bitlik iki veriye çıkarma işlemi uygulama algoritması

Page 13: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

Yüksek Kapasiteli Çıkartma Devresi Tasarımı

13

VHDL ile Bir Bit Tam Çıkarıcı Devresi

Page 14: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

Yüksek Kapasiteli Çıkartma Devresi Tasarımı

14

Bir Bit Tam Çıkarıcı devresinin ModelSim benzetim sonuçları

Page 15: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

Yüksek Kapasiteli Çıkartma Devresi Tasarımı

15

N bit Çıkarıcı Devresi Blok Şeması

Page 16: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

Yüksek Kapasiteli Çıkartma Devresi Tasarımı

16

“n” bit Tam Çıkarıcı devresi VHDL kod yapısı

Page 17: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

Yüksek Kapasiteli Çıkartma Devresi Tasarımı

17

N bit tam Çıkarıcı devresi ModelSim benzetim sonuçları

Page 18: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

Yüksek Kapasiteli Toplama Devresi Tasarımı

18

Bir Bit toplayıcı VHDL kodlarının RTL görünüşü

Bir Bit Toplayıcı ModelSIM benzetim sonuçları

Page 19: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

Yüksek Kapasiteli Toplama Devresi Tasarımı

19

1024 bit toplayıcının ModelSIM benzetim sonuçları

Page 20: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

Yüksek Kapasiteli Toplama - Çıkarma Devresi Tasarımı

20

M=0 ToplayıcıM=1 Çıkarıcı

Toplayıcı & Çıkarıcı Devrtesi

Page 21: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

Yüksek Kapasiteli Toplama - Çıkarma Devresi Tasarımı

21

1024 bit Toplayıcı & Çıkarıcı Devresi ModelSIM benzetim sonuçları

Page 22: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

Sorunlar & Öneriler

22

• FPGA devrelerinin giriş ve çıkış pin sayısı• Öneri:

• Veri aktarımı için arı bir modül tasarımı • Çoklu FPGA kullanımı

Page 23: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

Sonuç

• Gerçekleştirilen bu çalışmada, FPGA donanım yapısının esnek ve kolay programlama kabiliyetinden faydalanılarak yüksek kapasiteli çıkarıcı devresi benzetim seviyesinde tasarlanmıştır.

• VHDL ve FPGA kullanarak Yüksek Kapasiteli Aritmetik Ünite tasarlanabilir.

• Yüksek Kapasiteli Aritmetik Ünite, Büyük sayılar ile çalışan bazı şifreleme algoritmaları için donanım altyapısı oluşturmak için kullanılabilir.

• Günümüzde piyasadaki en güçlü PC’den daha güçlü hesaplama kapasitesi sunar.

• Donanım Tasarım Dili kullanılarak çok daha yüksek kapasiteli aritmetik işlemler için aritmetik ünite tasarlanabilir. 23

Page 24: VHDL Kullanarak FPGA İle Yüksek  Kapasİtelİ  Tam  ÇIkarIcI  Devre  TasarImI

Teşekkürler…

24