süleyman demirel üniversitesi
mühendislik mimarlýk fakültesi
elektronik ve haberleþme mühendisliði
bölümü
bitirme ödevi
fpga yonga mimarisi ve kullanýmý
içindekiler
1. alan programlanýr kapý dizileri………………………………………………1
1.1. kullaným alanlarý …………………………………………………………………….…..1
1.1.1. asýc ve custom silicon ……………………………………………………….……….1
1.1.2. digital signal processing…………………………………………………………….….2
1.1.3. embedded microcontroller……………………………………………………………...2
1.1.4. fiziksel katman haberleþmeleri………………………………………………………...2
1.1.5. reconfigurable computing……………………………………………………………...2
1.2. üretici firmalar…………………………………………………………………….……...3
2. temel teknolojiler………………………………………………………………….4
2.1. basit programlanabilir fonksiyon ……………………………………………………....…4
2.2. fusible teknolojisi…………………………………………………………………..4
2.3. antifuse teknolojisi…………………………………………………………….................5
2.4. mask-programmed aygýtlar………………………………………………………………6
2.5. prom (programmable reod-only memory) teknolojisi……………………………….7
2.6. eprom (erasable programmable read-only memory) teknolojisi……………………7
2.7. eeprom (electrically erasable programmable read-only memory)…………………..8
2.8. flash teknolojisi………………………………………………………………….……8
2.9. sram (static random access memory) teknolojisi……………………………………9
3. fpga teknolojisinin geliþimi ………………………………….………………..11
3.1. spld ve cpld………………………………………………………………………….11
3.2. prom……………………………………………………………………………………12
3.3. pla ( programmable logic array ) …………………………..……………..………….12
3.4. pal (programmable array logic) …………………………..………………...………..13
3.5. cpld (complex programmable logic device) ………………………………….……..14
3.6. asýc (application specific ýntegrated circuit) …………………………..……….……15
3.6.1. full custom …………………………..…………………………..………………...…15
3.6.2. standard cell…………………………..…………………………..…………………..16
3.6.3. gate array…………………………..…………………………..…..…………………16
3.6.4. structured asýc ………………………………………………………………………17
3.7. fpga……………………………………………………………………………………18
4. fpga mimarisi…………………………………………………………………………20
4.1. üretim teknikleri …………………………………………….…………………………20
4.1.1. sram temelli aygýtlar…………………………………………………………………20
4.1.2. antifuse temelli aygýtlar…………………………………….…………………………22
2
4.1.3. e prom/flash temelli aygýtlar…………………………..…………………………23
4.1.4. karma flash-sram aygýtlar………………………………..………………………23
4.2. birim hücre mimarileri …………………………………………………………………24
4.3.1. mux tabanlý……………………………………………………...……………………25
4.3.2. lut tabanlý ……………………………………………………………………………26
4.4. programlanýr mantýk öðeleri……………………………………….……………………28
4.4.1.1. logic cell……………………………………………………….……………………28
4.4.1.2. logic element ve adaptive logic module …………………….……………………28
4.4.2. slice ……………………………………………………………………………………29
4.4.3. clb ve lab ……………………………………………………………..……………29
4.4.3.1. ara baðlantýlar………………………………………………………………..………30
4.4.3.2. kontrol sinyalleri……………………………………………………………….……30
4.4.3.3. adaptive logic module…………………………………………………………...…30
4.4.3.4. shared aritmetic chain………………………………………………………………33
4.4.4. distributed ram………………………………………………………………………34
4.4.5. shift register……………………………………………………………………..……34
4.4.6. fast carry chain………………………………………………………………….……34
4.5. embedded ram…………………………………………………………………………34
4.6. embedded multiplier, adder, mac………………………………………………..……35
4.7. embedded processor core ………………………………………………………….……36
4.8. clock tree ………………………………………………………………………….……37
4.9. clock manager………………………………………………………………………...…38
4.10. genel amaçlý g/ç………………………………………………………………………41
4.11. yapýlandýrýlabilir g/ç özdirençleri………………………………………………….…41
4.12. gigabit alýcý vericiler …………………………………………………………………42
4.13. ýp (ýntellectual property) core………………………………………………………….42
4.14. ara baðlantý mimarisi………………………………………………………………….43
4.14.1. altera ara baðlantý yaklaþýmý………………………………………………………..43
4.14.2. xilinx ara baðlantý yaklaþýmý……………………………………………………….46
4.15. çekirdek ve g/ç besleme gerilimleri…………………………………………………...48
5. fpga programlama ………………………………………………………………...50
5.1. yapýlandýrma dosyasý……………………………………………………………………50
5.2. yapýlandýrma kipleri ……………………………………………………………………51
5.2.1 fast passive parallel (fpp) kipi………………………………………...………………52
5.2.2 active se-ri-@l (as) kipi …………………………………………………..……………52
5.2.3. passive se-ri-@l kipi …………………………………………………………..…………52
5.2.4. passive paralel asynchronous (ppa) kipi ………………………………….…………53
5.2.5. jtag kipi ……………………………………………………………………..………53
6. uygulama geliþtirme ……………………………………………………………56
6.1. tasarým giriþi……………………………………………………………………………57
6.2. sentez…………………………………………………………………………….………57
6.3. iþlevsel benzetim……………………………………………………………….……..…57
6.4. yerleþtirme…………………………………………………………………….…………57
6.5. zaman analizi ve benzetimi…………………………………………………….…….…57
6.6. programlama ve yapýlandýrma………………………………………………………..…58
6.7. örnek uygulama…………………………………………………………………………58
6.7.1. devre þemasý ve açýklama…………………………………………………………….58
6.7.2. devrenin aþamalý gerçeklenmesi………………………………………………………59
7. sonuç…………………………………………………………………………………….67
8. kaynaklar………………………………………………...…………………………..68