Sahada Programlanabilir Kapı Dizileri (FPGA) Sayısal CMOS Tümdevre Tasarımı Y. Fırat Kula

Benzer belgeler
VHDL DONANIM TANIMLAMA DİLİD ve FPGA, CPLD DONANIMLARI. Yard. Doç. Dr. Özdemir ÇETİN

FPGA Mimarisi. Bilgisayar Mimarisinde Yeni Yaklaşımlar. Mehmet AKTAŞ

FPGA ile Gömülü Sistem Tasarımına Giriş

İ.T.Ü. Bilişim Enstitüsü Bilgisayar Bilimleri FPGA MİMARİSİ

SAYISAL TASARIM. Ege Üniversitesi Ege MYO Mekatronik Programı

FPGA ile Kablosuz Görüntü Aktarımı. Yusuf Onur Koçberber

Gömülü Sistemler. (Embedded Systems)

ELM320- ENTEGRE DEVRE TASARIMI

SAYISAL VLSI SİSTEM TASARIM AKIŞI

T.C. TRAKYA ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ ŞİFRELEME İŞLEMLERİ İÇİN FPGA İLE YÜKSEK KAPASİTELİ ÇARPMA DEVRESİ TASARIMI.

FPGA ile Gömülü Sistem Tasarımına Giriş Bilgisayar Bil. Müh. Selçuk BAŞAK

VHDL Programlama Dili ve Sayısal Elektronik Devrelerin FPGA Tabanlı Uygulaması

HAFTA 1 KALICI OLMAYAN HAFIZA RAM SRAM DRAM DDRAM KALICI HAFIZA ROM PROM EPROM EEPROM FLASH HARDDISK

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK ELEKTRONİK FAKÜLTESİ

1. GİRİŞ 1.1. Giriş ve Çalışmanın Amacı

CUMHURİYET MESLEKİ VE TEKNİK ANADOLU LİSESİ BİLİŞİM TEKNOLOJİLERİNİN TEMELLERİ DERSİ DERS NOTLARI BELLEKLER

BÖLÜM 2 SAYI SİSTEMLERİ

Programlanabilir Sayısal Sistemler

T.C. TRAKYA ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ ŞİFRELEME ALGORİTMASININ FPGA'DA UYGULANMASI. Yasin AKMAN YÜKSEK LİSANS TEZİ

Digital Design HDL. Dr. Cahit Karakuş, February-2018

SAYISAL ELEKTRONİK. Ege Üniversitesi Ege MYO Mekatronik Programı

FGPA ile Gömülü Sistem Tasarımına Giriş Introduction to Embeded System Design Using FPGA

2. SAHADA PROGRAMLANABİLİR KAPI DİZİLERİ (FPGA)

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ ÖZET FONKSİYON TABANLI GÜVENLİ BİR RFID PROTOKOLÜNÜN FPGA ÜZERİNDE GERÇEKLENMESİ

HDL ile Gelişmiş Sayısal Tasarım (EE 425) Ders Detayları

VHDL. Ece Olcay Güneş & S. Berna Örs

DONANIM KURULUMU. Öğr. Gör. Murat YAZICI. 1. Hafta.

BENZERSİZ SORUNLARA BENZERSİZ ÇÖZÜMLER

T.C. SÜLEYMAN DEMİREL ÜNİVERSİTESİ MÜHENDİSLİK MİMARLIK FAKÜLTESİ ELEKTRONİK VE HABERLEŞME MÜHENDİSLİĞİ BÖLÜMÜ

GÖMÜLÜ SİSTEMLER GÖMÜLÜ SİSTEMLER 1

(Random-Access Memory)

Programlanabilir Devreler

APPLICATION OF CPLD BASED LOGIC ELECTRONICS CIRCUITS

ERCİYES ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTUSÜ BİLGİSAYAR MÜHENDİSLİĞİ ANABİLİMDALI. I. GENEL BİLGİLER Ders Adı

ENTEGRELER (Integrated Circuits, IC) Entegre nedir, nerelerde kullanılır?...

T.C. SÜLEYMAN DEMİREL ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ FPGA TABANLI ÜÇ EKSENLİ ROBOT KOL KONTROLÜ

BÖLÜM Mikrodenetleyicisine Giriş

VHDL Kullanarak FPGA ile Yüksek Kapasiteli Tam Çıkarıcı Devre Tasarımı

HDL Dilleri VHDL. Son olarak, spesifik ASIC teknolojisi için devrenin yerleşimi netlist tanımlamalarından gelen diğer araçlarla oluşturulmuş olunur.

Görüntü İşleme Algoritmalarının Fpga Donanımı Üzerinde Gerçeklenmesi. Implementatıon Image Processıng Algorıthms on FPGA Hardware

Temel Mikroişlemci Tabanlı Bir Sisteme Hata Enjekte Etme Yöntemi Geliştirilmesi. Buse Ustaoğlu Berna Örs Yalçın

6. Fiziksel gerçeklemede elde edilen sonuç fonksiyonlara ilişkin lojik devre şeması çizilir.

William Stallings Computer Organization and Architecture 9 th Edition

KOCAELİ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ ELEKTRONİK VE HABERLEŞME MÜHENDİSLİĞİ

Fatih Üniversitesi. İstanbul. Haziran Bu eğitim dokümanlarının hazırlanmasında SIEMENS ve TEKO eğitim dokümanlarından faydalanılmıştır.

T.C. YILDIZ TEKNİK ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ FPGA TABANLI SENTEZLENEBİLİR İŞLEMCİ TASARIMI SELÇUK BAŞAK

5. LOJİK KAPILAR (LOGIC GATES)

Ders Notlarının Creative Commons lisansı Feza BUZLUCA ya aittir. Lisans:

FPGA ĐLE YAPAY SĐNĐR AĞI EĞĐTĐMĐNĐN DONANIMSAL GERÇEKLENMESĐ. Mehmet Ali ÇAVUŞLU

MİKROİŞLEMCİ MİMARİLERİ

İÇİNDEKİLER. 1-1 Lojik ve Anahtara Giriş Lojik Kapı Devreleri... 9

1. GİRİŞ. 1.1 Giriş ve çalışmanın amacı

80C51 Mikrodenetleyicilerinde Timer-Counter Yapılarının FPGA Mimarileri Kullanılarak Geliştirilmesi. Özdemir ÇETİN 1. Bölümü, Adapazarı

1969 yılında, klasik (Elektrik) kumandanın. Elektronik karşılığı olan ilk PLC yapıldı yılında ise dört yıllık bir çalımanın ürünü

Bilgisayar Yapısı MİKROİŞLEMCİ SİSTEMLERİ. Bilgisayar Temel Birimleri. MİB Yapısı. Kütükler. Kütükler

Bellekler. Mikroişlemciler ve Mikrobilgisayarlar

BSE 207 Mantık Devreleri Lojik Kapılar ve Lojik Devreler (Logic Gates And Logic Circuits)

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS. Bilgisayar Organizasyonu BIL

T.C. KOCAELİ ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ BİLİŞİM SİSTEMLERİ MÜHENDİSLİĞİ

T.C SELÇUK ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ

DERS 3 MİKROİŞLEMCİ SİSTEM MİMARİSİ. İçerik

MEB YÖK MESLEK YÜKSEKOKULLARI PROGRAM GELİŞTİRME PROJESİ. 1. Tipik bir mikrobilgisayar sistemin yapısı ve çalışması hakkında bilgi sahibi olabilme

EEM 306 Mikroişlemciler ve Lab. Doç.Dr. Mehmet SAĞBAŞ

Bölüm 4 Aritmetik Devreler

İşletim Sistemleri (Operating Systems)

FPGA TABANLI DES KRİPTO ÇÖZÜCÜ SİSTEMİ YÜKSEK LİSANS TEZİ. Müh. Bora EMİROĞLU. Anabilim Dalı : Disiplinler Arası Programlar

İçindekiler FPGA GELİŞTİRME KARTI ENERJİ BESLEMESİ:... 5 ENERJİ SİSTEMİ ŞEMASI:... 5 FPGA GELİŞTİRME KARTINA PROGRAM YÜKLEME:... 6

İNTERNET PROGRAMCILIĞI DERSİ

BİLGİSAYAR DONANIMI KONU: ANAKART RAM-ROM ADI: KÜBRA SOYADI: ŞAHİN NO: SINIFI:1/B ADI: SELMA SOYADI: ÇELİK NO: SINIFI:1/B

Mikroişlemcili Sistemler ve Laboratuvarı 5.HAFTA:BÖLÜM-1

MİKROİŞLEMCİLER. Mikroişlemcilerde Kullanılan Yeni Teknolojiler ve Mikroişlemcilerin Rakipleri

EEM 419-Mikroişlemciler Güz 2016

Eğitim Amaçlı Temel Bir Mikrobilgisayarın Tasarlanması ve Gerçeklemesi Design and Implementation of a Basic Microcomputer for Educational Purpose

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS. Mantık Devreleri EEE

SFINKS DİZİ ŞİFRELEME ALGORİTMASININ VHDL İLE YAZILIMI VE FPGA ÜZERİNDE GERÇEKLENMESİ

ELK2016 SAYISAL TASARIM DERSİ LABORATUVARI DENEY NO: 2

PROGRAMLAMAYA GİRİŞ FONKSİYONLAR

EEM 419-Mikroişlemciler Güz 2017

DOĞRULUK TABLOLARI (TRUTH TABLE)

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN

KONTROL VE OTOMASYON KULÜBÜ

BİL 201 Boole Cebiri ve Temel Geçitler (Boolean Algebra & Logic Gates) Bilgisayar Mühendisligi Bölümü Hacettepe Üniversitesi

Hacettepe Robot Topluluğu

Hale Yenginer 1, Çağatay Canbaz 1, S. Ünsal Keser 1,, Hayriye Korkmaz 2

Makine Mühendisliği İçin Elektrik-Elektronik Bilgisi. Sayısal Elektronik

DENEY 1a- Kod Çözücü Devreler

Konular MİKROİŞLEMCİ SİSTEMLERİ. Giriş. Bilgisayar Tarihi. Elektronik Kuşak. Elektronik Öncesi Kuşak

T.C. SELÇUK ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ

BLM 221 MANTIK DEVRELERİ

Şekil-1 MSP430 serisi bir mikro denetleyici

PLC (Programlanabilir Lojik. Denetleyici)

SAYISAL UYGULAMALARI DEVRE. Prof. Dr. Hüseyin EKİZ Doç. Dr. Özdemir ÇETİN Arş. Gör. Ziya EKŞİ

Donanım İÇERİK. Bölüm 1:FATEK FBs PLC Serisine Genel Bakış. Bölüm 2:Sistem Mimarisi

SAYISAL DEVRELER. İTÜ Bilgisayar Mühendisliği Bölümündeki donanım derslerinin bağlantıları

Bahar Dönemi. Öğr.Gör. Vedat MARTTİN

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

BİLGİSAYAR MİMARİSİ. İkili Kodlama ve Mantık Devreleri. Özer Çelik Matematik-Bilgisayar Bölümü

ANKARA ÜNİVERSİTESİ GAMA MESLEK YÜKSEKOULU

Klonlanamaz Fonksiyonlar ve Yardımcı Bilgiler Kullanılarak Patent Hakları Korunması, Özgün Algoritma ve Donanımın Güvenliğinin Sağlanması

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.

Transkript:

Sahada Programlanabilir Kapı Dizileri (FPGA) Sayısal CMOS Tümdevre Tasarımı Y. Fırat Kula

Programlanabilir Lojik Basit Programlanabilir Lojik Cihazlar (Simple Programmable Logic Device - SPLD) ** PAL (Programmable Array Logic), PLA (Programmable Logic Array) Karmaşık Programlanabilir Lojik Cihazlar (Complex PLD - CPLD) ** PAL benzeri birçok blok ve bunları birbirine bağlayan programlanabilir bağlantılar Sahada Programlanabilir Kapı Dizileri (Field Programmable Gate Array - FPGA)

PROM (1970)

PLA (1975)

PAL (1978)

CPLD (1983)

FPGA (1985)

FPGA Tekrar tekrar programlanabilen lojik bloklar, ara bağlantılar Aritmetik devre blokları, hafıza blokları vb. de içerebilmektedirler Sahada programlanabilirlik?

CPLD Az sayıda SPLD benzeri lojik bloklardan oluşur EEPROM tabanlı programlama Yapısının daha basit olması nedeniyle gecikmeler düşük Küçük çapta lojik uygulamaları için uygun FPGA Çok sayıda, çoklayıcı ve LUT (Look-UpTable) tabanı lojik bloklardan oluşur. Çoğunlukla RAM tabanlı programlama Karmaşık yapı nedeniyle gecikmeler daha fazla olabilmekte ve tahmin edilebilirliği düşük Karmaşık lojik uygulamalar için uygun SPLDs CPLDs FPGAs Equivalent gates 0 ~ 200 200 ~ 12,000 1000 ~ 1,000,000

Programlanabilir Devrelerin Artıları/Eksileri Hızlı tasarım süreleri Küçük çaplı üretimler için daha ekonomik Üretimden sonra tekrar değiştirilebilme Hız, alan ve güç tüketimi açısından ASIC lerden (Application Specific Integrated Circuit) daha düşük performans Büyük miktarda üretimlerde bir programlanabilir yonganın üretim maliyeti sabit kaldığından toplam maliyet daha yüksek olmaktadır

FPGA Uygulama Alanları Sayısal işaret işleme uygulamaları Haberleşme uygulamaları (Radarlar, yazılım tanımlı radyolar, haberleşme cihazları...) Otomasyon, mikrodenetleyicili sistemler Donanım hızlandırma devreleri (FPGA üzerinde paralel işlem blokları oluşturmaya dayanır) Tasarımlar için prototip oluşturma FPGA'in ASIC yerine alternatif olarak kullanılabileceği, özellikle piyasaya hızlı ürün sürme önceliği bulunan çeşitli uygulamalar.

FPGA mimarisi Lojik Bloklar Çoklayıcı Tabanlı Lojik Blok

Shannon Açılımı

LUT (Look-up Table) Tabanlı Lojik Blok Bir lojik fonksiyonun tüm çıkış değerlerini tutan ve ilgili girişe göre çıkışta görülmesi gereken değeri seçen yapılara LUT adı verilir. K sayısına kadar farklı değişkene sahip her tür lojik fonksiyon K girişli LUT (LUT-K) ile gerçeklenebilir.

Source: Altera white paper: FPGA Architecture

Optimum LUT Boyutu

27 Source: Altera white paper: FPGA Architecture

Programlama Teknikleri Ters-sigorta (Anti-fuse) EEPROM SRAM

SRAM ile Programlama FPGA da kullanılan CMOS prosesine uygundur. Yazılan veri kalıcı değildir. Güç kesildikten sonra tekrar programlanmalıdır. Alternatif olarak yeniden programlamayı sağlamak için SRAM hücrelerini programlayacak veriyi tutan EEPROM blokları kullanılabilmektedir.

EEPROM ile Programlama Bir veya iki transistor ile hafıza hücresi gerçeklenebilir Güç kesildiğinde programlama bilgisi korunur Yeniden programlanabilme ömrü RAM lere göre azdır Yüzen geçit kullanımı imalat sürecinin karmaşıklığını arttırmaktadır

Ters Sigorta (Anti-fuse) ile Programlama Metal yüzeyler arasına sıkıştırılmış amorf dielektrik kullanılarak gerçeklenir (Transistor kullanılmaz) Güç kesildiğinde programlama bilgisi korunur Yeniden programlanamaz Düşük direnç ve parazitik kapasiteler

Programlama Teknolojisi SRAM Metal-Metal antifuse EEPROM Üretim Karmaşıklığı Düşük Yüksek Yüksek Yeniden Programlanabilirlik Var Yok Var Programlama Ömrü Çok Yüksek Bir defa Düşük Alan İletim Halindeki İç Direnci(Ω) Kesim Halindeki İç Kapasitesi (ff) 6 transistor Transistor kullanılmaz 1-2 transistor 600 800 30 80 1-4K 10 50 1 10 50 Güç Tüketimi Düşük En düşük Düşük Kalıcılık Kalıcı değil Kalıcı Kalıcı

FPGA mimarisi Ara Bağlantılar

FPGA mimarisi Ara Bağlantılar

FPGA datasarımın Aşamaları 1. Gerçeklenecek yapının tasarımı: Gereksinimlere göre beklenen işlevi yerine getirecek devrenin ve alt bloklarının fonksiyonlarının belirlenmesi, bağlantı ara yüzünün yapılması işlemlerini içerir 2. Tasarımın HDL ile ifadesi: Yapılan tasarım bir donanım tanımlama dili (Hardware Description Language - HDL) ile ifade edilir. Günümüzde en sık kullanılan donanım tanımlama dilleri Verilog ve VHDL dir.

FPGA datasarımın Aşamaları 3. Test ortamı tasarımı: Yazılan HDL tasarımın işlevsel olarak beklendiği şekilde çalıştığını doğrulamak için bir test ortamı yazılır ve burada tasarıma verilecek test giriş değerleri belirlenir. 4. Davranışsal Benzetim: Yazılmış olan test ortamı çalıştırılarak devrenin verilen test girişlerine karşılık hangi çıkışları ürettiği incelenir. Bu benzetimde sadece üretilen çıkışlar önemlidir, gecikmeler hesaba katılmamaktadır.

FPGA datasarımın Aşamaları 5. Sentez: Bu aşamada, ikinci adımda yazılmış olan devreye ait HDL kodun netlist adı verilen ve devrede hangi elemanın nereye bağlanacağını ifade eden bir başka kodlamaya çevirir. Bu iş için sentezleyici adı verilen yazılımlar kullanılmaktadır. Bu adımın önemi, sentezleme sonucunda devrede ortaya çıkabilecek zamanlama ve bağlantı problemlerinin öngörülebilir olmasıdır.

FPGA datasarımın Aşamaları 6. Gerçekleme (Implementation): Çeviri (Translate): Sentez tarafından üretilen bağlantı listesi, kullanılacak FPGA cihazın iç elemanları cinsinden ifadesine çevrilir. Planlama (Map): Yapılan çeviri sonucunda ortaya çıkan lojiğin FPGA üzerindeki bloklara (kaynaklara) göre nasıl yerleşeceğini planlar. Yerleştirme ve Bağlama (Place and Route): Planda oluşturulan haritaya ve belirlenen alan ve gecikme kıstaslarına göre tasarımı FPGA üzerine yerleştirir ve ara bağlantıları yapar.

FPGA datasarımın Aşamaları 7. Zamanlama Analizi: Gerçekleme işleminden sonra FPGA üzerinde kurulması planlanmış olan hatlar üzerindeki gecikmeleri analiz edilir. Tasarım kısıtlamalarına uymayan gecikme veya yeterli saat frekansı olup olmadığına bakılır. Bütün bu işlemler sonunda FPGA üzerindeki programlamayı yapacak olan bit dizilimi üretilecektir.