FPGA
Alanda Programlanabilir Kapı Dizisi
Dersin Amacı: %90 Teorik, %10 Pratik
Ödev içerikleri?
• Araştırma makalesi veya konu hakkında bir
yazının (blog, araştırma, inceleme, karşılaştırma)
sunumu
• Sayısal tasarım dersinde yapılan ödevlerin FPGA
tasarımlarının yapılması.
• 16-bitlik iki sayının çarpımı.
• Aritmetik mantık birimi
• 4-bitlik toplayıcı
• 4-bitlik çarpıcı
• 4-bitlik fark alıcı
• Karşılaştırıcı devresi
• Haberleşme Protokolleri (UART, SPI, I2C,
CanBUS, Ethernet)
2
Ders İçeriği
1. Giriş, Gömülü Sistemler, Entegre Devreler
2. FPGA,Tarihçe,Yapısı,Tasarım Süreci
3. IDE Kurulumu,Tasarım ve Simülasyon Ekranı
4. VHDLTasarımTemelleri
5. VHDL Nesneleri veVeriTipleri
6. Operatörler
7. Kombinasyonel DevreTasarımı
8. Ardışıl DevreTasarımı
9. Dosya ve Hafıza İşlemleri
10.Yapısal DevreTasarımı
11.İleri Konular veTasarımlar
12.Kart Uygulamaları
3
Gömülü Sistemler
• CPU – Merkezi işlem birimi
• GPU – grafik işlem birimi
• ASIC – Uygulamaya özel entegre devre
• FPGA – Alanda programlanabilir kapı dizisi
• MCU - Mikro denetleyici
Bir makinenin kontrolünü sağlamak için
donanım ve yazılımdan oluşan
sistemdir.
4
Gömülü Sistemler – Silicon Alternatives
5
FPGA nedir?
• Üzerinde hard-işlemci bulundurmayan ama işlem yapma yeteneği olan bir tek aygıttır.
• Sayısal entegre tasarımı için tek yoldur.
• Yapılan tasarımlar sonradan değiştirilebilir bir nitelik taşır.
• Seri üretim için uygun değildir.
• Donanım tasarımı yapılabilen bir aygıttır.
• İşlemler donanım üzerinde gerçekleştiğinden inanılmaz hızlıdır.
• Varsayılan olarak paralel işlem yapabilen tek teknolojidir.
6
FPGA – Field Programmed Gate Array
• FPGA, istenilen tasarıma göre sahada çalışabilecek şekilde programlanmış
entegre devredir.
• Bu demek oluyor ki; FPGA’lar yerine göre bir mikroişlemci gibi, bir şifreleme
ünitesi gibi veya bir grafik kartı gibi işlem görebilir.
• Hatta her üçünün aynı anda çalışabileceği bir sistemin parçası da olabilir.
7
FPGA – Field Programmed Gate Array
8
Gömülü Sistemler – Silicon Alternatives
9
ASIC - Application Spesific Integrated Circuit
• ASIC (Application Specific Integrated Curcuits), özel uygulamalar için geliştirilen
tümleşik bir devredir.
• FPGA gibi sayısal devrelerin yanında istenirse analog devreler ve alıcı-verici
devrelerde içerebilmektedir.
• Güç tüketimi açısından daha az enerji harcayıp daha az yer kaplamakta ve daha
hızlı işlem yapabilmektedir.
• Ancak tasarım maliyetleri açısından daha avantajlı hale gelebilmeleri için aynıASIC
devreden binlerce veya on binlerce basılmalıdır.
10
ASIC - Application Spesific Integrated Circuit
Mobil İşlemci iPhone 4 MobilTelefon
11
ASIC - Application Spesific Integrated Circuit
ElektronikTansiyon Aleti Medikal cihaz kontrol entegresi
12
FPGA ve ASIC
Karşılaştırması
NRE (Non-recurring engineering),
Yinelenmeyen mühendislik, yeni bir
ürün veya ürün geliştirmeyi araştırmak,
tasarlamak, geliştirmek ve test etmek
için bir kerelik maliyet anlamına gelir.
Yeni bir ürün için bütçeleme yapılırken
NRE, yeni bir ürünün karlı olup
olmayacağını analiz etmek için
düşünülmelidir.
13
FPGA ve ASIC Karşılaştırması
FPGA
• Yeniden düzenlenebilir, değiştirilebilir bir
devredir.
ASIC
• Tasarımı kalıcıdır ve değiştirilemez. Silikona
dönüştürüldükten sonra değiştirilmesi
imkansızdır.
14
FPGA ve ASIC Karşılaştırması
FPGA
• Donanım tanımlama dilleri olanVerilog veya
VHDL ile tasarlanır.
ASIC
• Tıpkı FPGA’larda olduğu gibi, donanım
tanımlama dilleri olanVerilog veyaVHDL ile
tasarlandıktan sonra silikona aktarılarak
entegreye dönüştürülür.
15
FPGA ve ASIC Karşılaştırması
FPGA
• Seri üretim için uygun değildir.
ASIC
• Seri üretim için son derece uygundur.
16
FPGA ve ASIC Karşılaştırması
FPGA
• Enerji tüketimi ASIC’lere nazaran yüksektir.
ASIC
• Enerji tüketimi FPGA’lara nazaran çok
düşüktür.
17
FPGA ve ASIC Karşılaştırması
FPGA
• FPGA’lar ile analog tasarımlar aynı yerde
olamaz. Her ne kadar ADC, PLL gibi bazı özel
devreler olsa da alıcı-verici gibi tam analog
devreler FPGA’larda bulunmaz.
ASIC
• ASIC'ler mikroişlemci çekirdekleriyle birlikte
aynı kalıpta örneğin analog alıcı-verici gibi tam
analog devrelere sahip olabilir. Bu, FPGA'ların
sahip olmadığı avantajdır.
18
FPGA ve ASIC Karşılaştırması
FPGA
• FPGA'lar, daha iyi algoritma veya daha iyi bir
tasarım kullanmak için mevcut tasarımın
yükseltilmesi gerekebilecek Radarlar, Cep
Telefonu Baz İstasyonları vb. Uygulamalar için
son derece uygundur.
ASIC
• ASIC'ler, tasarımın sık sık veya arada bir kez
yükseltilmesi gerekebilecek uygulama alanları
için kesinlikle uygun değildir.
19
FPGA ve ASIC Karşılaştırması
FPGA
• Bir tasarımın prototiplenmesi ve doğrulanması
için tercih edilir.
• Pek çok ASIC, FPGA'nın kendileri kullanılarak
prototip edilmiştir!
• Başlıca işlemci üreticileri kendi çipsetlerini
(SoC'ler) doğrulamak için FPGA'ları kullanmakta.
• FPGA prototiplemesi ile tasarımın doğru
çalıştığından emin olmak daha kolaydır.
ASIC
• Tamamen doğrulanmadıkça, ASIC'leri
kullanarak bir tasarımın prototiplenmesi
önerilmez.
• Silikon çip oluşturulduğunda, bir tasarım
hatasını düzeltmek için neredeyse hiçbir şey
yapılamaz (istisnalar uygulanır).
20
FPGA ve ASIC Karşılaştırması
FPGA
• FPGA tasarımcıları genellikle tasarım dışında ki
herhangi bir şeyle ilgilenmezler.
• Her şey, tasarımın RTL kodunda açıklandığı
şekilde çalıştığından ve zamanlamayı
karşıladığından emin olan sentez ve
yönlendirme araçlarıyla yapılır.
• Böylece, tasarımcılar RTL tasarımını yapmaya
odaklanabilirler.
ASIC
• ASIC tasarımcılarının RTL'den başlayarak
resetleme, saat darbesi, fiziksel yerleşim ve
yönlendirme, işlem düğümü, üretim
kısıtlamaları (DFM), test kısıtlamaları (DFT) vb.
her şeye özen göstermeleri gerekir.
• Genel olarak, söz konusu alanın her biri farklı
uzmanlar tarafından ele alınmaktadır.
21
FPGA ile ASIC
karşılaştırması
22
Gömülü Sistemler – Silicon Alternatives
23
FPGA ve CPU Karşılaştırması
FPGA
• Paralel işlem yapar.
• Donanımsal olarak uygulanır.
• Yüksek hızda çalışarak gerçek zamanlı
uygulamaların vazgeçilmezidir.
• Çevresel arabirimlere erişim için ayrıca tasarım
yapılmalıdır.
• Bellek alanı çok sınırlı ve dağınıktır.
CPU
• Ardışıl işlem yapar.
• Yazılımsal olarak uygulanır.
• Çalışması değişkendir, hızlı çalışabilmesinin
önünde çevresel bağımlılıklar mevcuttur.
• Pek çok çevresel arabirime kolaylıkla
ulaşılabilir.
• Bellek alanı çok geniştir.
24
FPGA ve CPU Karşılaştırması
FPGA
• Belli işlemleri doğrudan gerçekleştiremez. (Ör:
Floating Point)
• Tasarım dili (VHDL) karmaşıktır.
• Test ve debug olayı daha zordur. Her bir saat
darbesi test edilmelidir.
• Tasarım ve test işlemi için arabirim yazılımına
ihtiyaç duyar.
CPU
• İşlemlerde çok yönlülüğe sahiptir, bütün veri
tiplerini doğrudan tanıyabilir.
• C ile kolaylıkla programlanabilir.
• Test ve debug için çok çeşitli araçlara
sahiptir.
• Programlama ve test işlemi için herhangi bir
yazılım arabirimine ihtiyaç yoktur.
25
FPGA, GPU ve CPU
Karşılaştırması
Kaynak: Araştırma Makalesi
(Pulse-coupled neural network
performance for real-time identification
of vegetation during forced landing,
Warne ve arkadaşları, 2014)
İHA’ların herhangi bir sıkıntıda iniş
işlemini gerçekleştirirken bitki
örtüsünün gerçek zamanlı tanımlanarak
güvenli iniş gerçekleştirmesi
26
FPGA ve CPU
Karşılaştırması
Araştırma Makalesi
Hızlı Fourer Dönüşümünde CPU ve
FPGA’ların karşılaştırılması
27
DSP, FPGA ve ASIC
28
CPU, GPU, FPGA ve ASIC Karşılaştırması
29
FPGA ve Mikrodenetleyici
• Mikro denetleyici tüketici elektroniğinde yaygın bir şekilde kullanılır. O nedenle de piyasada son derece
baskındır.
• Mikro denetleyici seri üretimler için uygundur.
• FPGA ise özel amaçlı entegrelerin (ASIC) tasarımında kullanılır. O nedenle özel tasarımlarda vazgeçilmez bir
unsurdur.
• Örneğin 1 milyon adet üretilen bir oyuncakta mikro denetleyici kullanmak yerine ASIC kullanmak maliyeti
ziyadesiyle düşürecektir.
• Hatta ARM mühendislerinin mikroişlemcilerini tasarlamak için FPGA kullandıkları bilinen bir gerçektir.
• FPGA ile her türlü dijital işlemi gerçekleştirmek mümkündür, bir işlemci tasarlamak da buna dahil elbette.
• Mikro denetleyicilerde ise yapabilecekleriniz bu aygıtın yapısına bağlıdır.
30
Entegre Çeşitleri
Büyüklüğünü kullanılan mantık kapılarının sayıları belirler.
31
FPGA ile neler yapabiliriz?
• Sayısal entegrelerin sınıflandırılması:
• SSI (Small Scale Integration) – Küçük ölçekli entegre
• MSI (Middle Scale Integration) – Orta ölçekli entegre
• LSI (Large Scale Integration) – Büyük Ölçekli Entegre
• VLSI (Very Large SI) – Çok Büyük Ölçekli Entegre
Sayısal Entegre Tasarımı (ASIC)
gerçekleştirilerek lisanslama işlemi
yapılmaktadır.
32
SSI (Small Scale
Integration) – Küçük
Ölçekli Entegre
1 – 20 arası sayıda mantık kapısı
barındıran entegredir.
33
MSI (Middle Scale
Integration) – Orta Ölçekli
Entegre
20 – 100 arası sayıda mantık kapısı
barındıran entegredir.
34
74LS90 Sayıcı Entegre Şeması
LSI (Large Scale
Integration) – Büyük
Ölçekli Entegre
100 – 5000 arası sayıda mantık kapısı
barındıran entegredir.
35
VLSI (Very Large Scale
Integration) – Çok Büyük
Ölçekli Entegre
5000 – 10000 arası sayıda mantık kapısı
barındıran entegredir.
36
Entegre Üretim Aşamaları
Tasarım işleminden sonra da bazı aşamalar gerçekleştirilmelidir.
37
Entegre Üretimi
• Entegre üretiminde CMOS (FET) veTTL (BJT)
temelli teknolojiler kullanılır.
• SSI ve MSI ölçekli entegrelerTTL olarak
üretilirken; daha büyük ölçekli entegrelerin
üretiminde CMOS tercih edilir.
• Çünkü CMOS’da birim silisyum alana daha
fazla transistör yerleştirilmektedir.
• Ayrıca güç tüketimi açısından dolayıda CMOS
entegreler tercih edilmektedir.
38
Entegre Üretimi
• Çok fazla sayıda devre elemanının entegreye
monte edilmesi fotolitografi yöntemiyle
gerçekleşmektedir.
• Günümüzde devre elemanları 28 nm’ye kadar
küçültülerek silikon tabakaya
yerleştirilebilmektedir.
• Devre elemanlarının bağlantısı alüminyum ile
yapılmaktadır.
39
Fotolitografi Aşamaları
1. Litografi
2. Gravür (Oyma Baskı)
3. Tortu Giderme
4. Oksidasyon
5. İyonYerleştirme
6. Difüzyon
40
1) Litografi
• Silikon devre levhası oluşum aşaması
olarak da bilinir.
• Lazer yardımıyla tabakalara entegrenin
baskı devresi işlenir.
• Bu sayede maskeleme ve baskılama
işlemine hazır bir yüzey elde edilmiş olur.
41
2) Gravür (Oyma Baskı)
Seçici bir şekilde devre levhasında
istenmeyen malzemelerin çıkartılma
aşamasıdır.
42
EPROM mikro çipinin yakından görünümü
3)Tortu Giderme
• Fiziksel veya kimyasal yollarla levhanın
temizlenmesi işlemidir.
• Temizlik ve yüzey oluşturma aşamalarının
ilkidir.
43
4) Oksidasyon
Oksijen veya su kullanılarak silikon levhanın
tabakalarının silikon dioksit malzemesine
dönüştürülmesi işlemidir.
44
5) İyonYerleştirme
Tabakanın son şeklinin verildiği bu aşamada
iyonize edilmiş partiküller, elektrik alan
yardımıyla tabakaya yerleştirilir.
45
6) Difüzyon
İyon bombardımanı sonrası oluşabilecek olan
çeşitli istenmeyen partikülleri tabakadan
temizle işlemidir.
46
Bölüm Sonu
47

FPGA ve VHDL Ders - 1

  • 1.
    FPGA Alanda Programlanabilir KapıDizisi Dersin Amacı: %90 Teorik, %10 Pratik
  • 2.
    Ödev içerikleri? • Araştırmamakalesi veya konu hakkında bir yazının (blog, araştırma, inceleme, karşılaştırma) sunumu • Sayısal tasarım dersinde yapılan ödevlerin FPGA tasarımlarının yapılması. • 16-bitlik iki sayının çarpımı. • Aritmetik mantık birimi • 4-bitlik toplayıcı • 4-bitlik çarpıcı • 4-bitlik fark alıcı • Karşılaştırıcı devresi • Haberleşme Protokolleri (UART, SPI, I2C, CanBUS, Ethernet) 2
  • 3.
    Ders İçeriği 1. Giriş,Gömülü Sistemler, Entegre Devreler 2. FPGA,Tarihçe,Yapısı,Tasarım Süreci 3. IDE Kurulumu,Tasarım ve Simülasyon Ekranı 4. VHDLTasarımTemelleri 5. VHDL Nesneleri veVeriTipleri 6. Operatörler 7. Kombinasyonel DevreTasarımı 8. Ardışıl DevreTasarımı 9. Dosya ve Hafıza İşlemleri 10.Yapısal DevreTasarımı 11.İleri Konular veTasarımlar 12.Kart Uygulamaları 3
  • 4.
    Gömülü Sistemler • CPU– Merkezi işlem birimi • GPU – grafik işlem birimi • ASIC – Uygulamaya özel entegre devre • FPGA – Alanda programlanabilir kapı dizisi • MCU - Mikro denetleyici Bir makinenin kontrolünü sağlamak için donanım ve yazılımdan oluşan sistemdir. 4
  • 5.
    Gömülü Sistemler –Silicon Alternatives 5
  • 6.
    FPGA nedir? • Üzerindehard-işlemci bulundurmayan ama işlem yapma yeteneği olan bir tek aygıttır. • Sayısal entegre tasarımı için tek yoldur. • Yapılan tasarımlar sonradan değiştirilebilir bir nitelik taşır. • Seri üretim için uygun değildir. • Donanım tasarımı yapılabilen bir aygıttır. • İşlemler donanım üzerinde gerçekleştiğinden inanılmaz hızlıdır. • Varsayılan olarak paralel işlem yapabilen tek teknolojidir. 6
  • 7.
    FPGA – FieldProgrammed Gate Array • FPGA, istenilen tasarıma göre sahada çalışabilecek şekilde programlanmış entegre devredir. • Bu demek oluyor ki; FPGA’lar yerine göre bir mikroişlemci gibi, bir şifreleme ünitesi gibi veya bir grafik kartı gibi işlem görebilir. • Hatta her üçünün aynı anda çalışabileceği bir sistemin parçası da olabilir. 7
  • 8.
    FPGA – FieldProgrammed Gate Array 8
  • 9.
    Gömülü Sistemler –Silicon Alternatives 9
  • 10.
    ASIC - ApplicationSpesific Integrated Circuit • ASIC (Application Specific Integrated Curcuits), özel uygulamalar için geliştirilen tümleşik bir devredir. • FPGA gibi sayısal devrelerin yanında istenirse analog devreler ve alıcı-verici devrelerde içerebilmektedir. • Güç tüketimi açısından daha az enerji harcayıp daha az yer kaplamakta ve daha hızlı işlem yapabilmektedir. • Ancak tasarım maliyetleri açısından daha avantajlı hale gelebilmeleri için aynıASIC devreden binlerce veya on binlerce basılmalıdır. 10
  • 11.
    ASIC - ApplicationSpesific Integrated Circuit Mobil İşlemci iPhone 4 MobilTelefon 11
  • 12.
    ASIC - ApplicationSpesific Integrated Circuit ElektronikTansiyon Aleti Medikal cihaz kontrol entegresi 12
  • 13.
    FPGA ve ASIC Karşılaştırması NRE(Non-recurring engineering), Yinelenmeyen mühendislik, yeni bir ürün veya ürün geliştirmeyi araştırmak, tasarlamak, geliştirmek ve test etmek için bir kerelik maliyet anlamına gelir. Yeni bir ürün için bütçeleme yapılırken NRE, yeni bir ürünün karlı olup olmayacağını analiz etmek için düşünülmelidir. 13
  • 14.
    FPGA ve ASICKarşılaştırması FPGA • Yeniden düzenlenebilir, değiştirilebilir bir devredir. ASIC • Tasarımı kalıcıdır ve değiştirilemez. Silikona dönüştürüldükten sonra değiştirilmesi imkansızdır. 14
  • 15.
    FPGA ve ASICKarşılaştırması FPGA • Donanım tanımlama dilleri olanVerilog veya VHDL ile tasarlanır. ASIC • Tıpkı FPGA’larda olduğu gibi, donanım tanımlama dilleri olanVerilog veyaVHDL ile tasarlandıktan sonra silikona aktarılarak entegreye dönüştürülür. 15
  • 16.
    FPGA ve ASICKarşılaştırması FPGA • Seri üretim için uygun değildir. ASIC • Seri üretim için son derece uygundur. 16
  • 17.
    FPGA ve ASICKarşılaştırması FPGA • Enerji tüketimi ASIC’lere nazaran yüksektir. ASIC • Enerji tüketimi FPGA’lara nazaran çok düşüktür. 17
  • 18.
    FPGA ve ASICKarşılaştırması FPGA • FPGA’lar ile analog tasarımlar aynı yerde olamaz. Her ne kadar ADC, PLL gibi bazı özel devreler olsa da alıcı-verici gibi tam analog devreler FPGA’larda bulunmaz. ASIC • ASIC'ler mikroişlemci çekirdekleriyle birlikte aynı kalıpta örneğin analog alıcı-verici gibi tam analog devrelere sahip olabilir. Bu, FPGA'ların sahip olmadığı avantajdır. 18
  • 19.
    FPGA ve ASICKarşılaştırması FPGA • FPGA'lar, daha iyi algoritma veya daha iyi bir tasarım kullanmak için mevcut tasarımın yükseltilmesi gerekebilecek Radarlar, Cep Telefonu Baz İstasyonları vb. Uygulamalar için son derece uygundur. ASIC • ASIC'ler, tasarımın sık sık veya arada bir kez yükseltilmesi gerekebilecek uygulama alanları için kesinlikle uygun değildir. 19
  • 20.
    FPGA ve ASICKarşılaştırması FPGA • Bir tasarımın prototiplenmesi ve doğrulanması için tercih edilir. • Pek çok ASIC, FPGA'nın kendileri kullanılarak prototip edilmiştir! • Başlıca işlemci üreticileri kendi çipsetlerini (SoC'ler) doğrulamak için FPGA'ları kullanmakta. • FPGA prototiplemesi ile tasarımın doğru çalıştığından emin olmak daha kolaydır. ASIC • Tamamen doğrulanmadıkça, ASIC'leri kullanarak bir tasarımın prototiplenmesi önerilmez. • Silikon çip oluşturulduğunda, bir tasarım hatasını düzeltmek için neredeyse hiçbir şey yapılamaz (istisnalar uygulanır). 20
  • 21.
    FPGA ve ASICKarşılaştırması FPGA • FPGA tasarımcıları genellikle tasarım dışında ki herhangi bir şeyle ilgilenmezler. • Her şey, tasarımın RTL kodunda açıklandığı şekilde çalıştığından ve zamanlamayı karşıladığından emin olan sentez ve yönlendirme araçlarıyla yapılır. • Böylece, tasarımcılar RTL tasarımını yapmaya odaklanabilirler. ASIC • ASIC tasarımcılarının RTL'den başlayarak resetleme, saat darbesi, fiziksel yerleşim ve yönlendirme, işlem düğümü, üretim kısıtlamaları (DFM), test kısıtlamaları (DFT) vb. her şeye özen göstermeleri gerekir. • Genel olarak, söz konusu alanın her biri farklı uzmanlar tarafından ele alınmaktadır. 21
  • 22.
  • 23.
    Gömülü Sistemler –Silicon Alternatives 23
  • 24.
    FPGA ve CPUKarşılaştırması FPGA • Paralel işlem yapar. • Donanımsal olarak uygulanır. • Yüksek hızda çalışarak gerçek zamanlı uygulamaların vazgeçilmezidir. • Çevresel arabirimlere erişim için ayrıca tasarım yapılmalıdır. • Bellek alanı çok sınırlı ve dağınıktır. CPU • Ardışıl işlem yapar. • Yazılımsal olarak uygulanır. • Çalışması değişkendir, hızlı çalışabilmesinin önünde çevresel bağımlılıklar mevcuttur. • Pek çok çevresel arabirime kolaylıkla ulaşılabilir. • Bellek alanı çok geniştir. 24
  • 25.
    FPGA ve CPUKarşılaştırması FPGA • Belli işlemleri doğrudan gerçekleştiremez. (Ör: Floating Point) • Tasarım dili (VHDL) karmaşıktır. • Test ve debug olayı daha zordur. Her bir saat darbesi test edilmelidir. • Tasarım ve test işlemi için arabirim yazılımına ihtiyaç duyar. CPU • İşlemlerde çok yönlülüğe sahiptir, bütün veri tiplerini doğrudan tanıyabilir. • C ile kolaylıkla programlanabilir. • Test ve debug için çok çeşitli araçlara sahiptir. • Programlama ve test işlemi için herhangi bir yazılım arabirimine ihtiyaç yoktur. 25
  • 26.
    FPGA, GPU veCPU Karşılaştırması Kaynak: Araştırma Makalesi (Pulse-coupled neural network performance for real-time identification of vegetation during forced landing, Warne ve arkadaşları, 2014) İHA’ların herhangi bir sıkıntıda iniş işlemini gerçekleştirirken bitki örtüsünün gerçek zamanlı tanımlanarak güvenli iniş gerçekleştirmesi 26
  • 27.
    FPGA ve CPU Karşılaştırması AraştırmaMakalesi Hızlı Fourer Dönüşümünde CPU ve FPGA’ların karşılaştırılması 27
  • 28.
    DSP, FPGA veASIC 28
  • 29.
    CPU, GPU, FPGAve ASIC Karşılaştırması 29
  • 30.
    FPGA ve Mikrodenetleyici •Mikro denetleyici tüketici elektroniğinde yaygın bir şekilde kullanılır. O nedenle de piyasada son derece baskındır. • Mikro denetleyici seri üretimler için uygundur. • FPGA ise özel amaçlı entegrelerin (ASIC) tasarımında kullanılır. O nedenle özel tasarımlarda vazgeçilmez bir unsurdur. • Örneğin 1 milyon adet üretilen bir oyuncakta mikro denetleyici kullanmak yerine ASIC kullanmak maliyeti ziyadesiyle düşürecektir. • Hatta ARM mühendislerinin mikroişlemcilerini tasarlamak için FPGA kullandıkları bilinen bir gerçektir. • FPGA ile her türlü dijital işlemi gerçekleştirmek mümkündür, bir işlemci tasarlamak da buna dahil elbette. • Mikro denetleyicilerde ise yapabilecekleriniz bu aygıtın yapısına bağlıdır. 30
  • 31.
    Entegre Çeşitleri Büyüklüğünü kullanılanmantık kapılarının sayıları belirler. 31
  • 32.
    FPGA ile neleryapabiliriz? • Sayısal entegrelerin sınıflandırılması: • SSI (Small Scale Integration) – Küçük ölçekli entegre • MSI (Middle Scale Integration) – Orta ölçekli entegre • LSI (Large Scale Integration) – Büyük Ölçekli Entegre • VLSI (Very Large SI) – Çok Büyük Ölçekli Entegre Sayısal Entegre Tasarımı (ASIC) gerçekleştirilerek lisanslama işlemi yapılmaktadır. 32
  • 33.
    SSI (Small Scale Integration)– Küçük Ölçekli Entegre 1 – 20 arası sayıda mantık kapısı barındıran entegredir. 33
  • 34.
    MSI (Middle Scale Integration)– Orta Ölçekli Entegre 20 – 100 arası sayıda mantık kapısı barındıran entegredir. 34 74LS90 Sayıcı Entegre Şeması
  • 35.
    LSI (Large Scale Integration)– Büyük Ölçekli Entegre 100 – 5000 arası sayıda mantık kapısı barındıran entegredir. 35
  • 36.
    VLSI (Very LargeScale Integration) – Çok Büyük Ölçekli Entegre 5000 – 10000 arası sayıda mantık kapısı barındıran entegredir. 36
  • 37.
    Entegre Üretim Aşamaları Tasarımişleminden sonra da bazı aşamalar gerçekleştirilmelidir. 37
  • 38.
    Entegre Üretimi • Entegreüretiminde CMOS (FET) veTTL (BJT) temelli teknolojiler kullanılır. • SSI ve MSI ölçekli entegrelerTTL olarak üretilirken; daha büyük ölçekli entegrelerin üretiminde CMOS tercih edilir. • Çünkü CMOS’da birim silisyum alana daha fazla transistör yerleştirilmektedir. • Ayrıca güç tüketimi açısından dolayıda CMOS entegreler tercih edilmektedir. 38
  • 39.
    Entegre Üretimi • Çokfazla sayıda devre elemanının entegreye monte edilmesi fotolitografi yöntemiyle gerçekleşmektedir. • Günümüzde devre elemanları 28 nm’ye kadar küçültülerek silikon tabakaya yerleştirilebilmektedir. • Devre elemanlarının bağlantısı alüminyum ile yapılmaktadır. 39
  • 40.
    Fotolitografi Aşamaları 1. Litografi 2.Gravür (Oyma Baskı) 3. Tortu Giderme 4. Oksidasyon 5. İyonYerleştirme 6. Difüzyon 40
  • 41.
    1) Litografi • Silikondevre levhası oluşum aşaması olarak da bilinir. • Lazer yardımıyla tabakalara entegrenin baskı devresi işlenir. • Bu sayede maskeleme ve baskılama işlemine hazır bir yüzey elde edilmiş olur. 41
  • 42.
    2) Gravür (OymaBaskı) Seçici bir şekilde devre levhasında istenmeyen malzemelerin çıkartılma aşamasıdır. 42 EPROM mikro çipinin yakından görünümü
  • 43.
    3)Tortu Giderme • Fizikselveya kimyasal yollarla levhanın temizlenmesi işlemidir. • Temizlik ve yüzey oluşturma aşamalarının ilkidir. 43
  • 44.
    4) Oksidasyon Oksijen veyasu kullanılarak silikon levhanın tabakalarının silikon dioksit malzemesine dönüştürülmesi işlemidir. 44
  • 45.
    5) İyonYerleştirme Tabakanın sonşeklinin verildiği bu aşamada iyonize edilmiş partiküller, elektrik alan yardımıyla tabakaya yerleştirilir. 45
  • 46.
    6) Difüzyon İyon bombardımanısonrası oluşabilecek olan çeşitli istenmeyen partikülleri tabakadan temizle işlemidir. 46
  • 47.