320 likes | 617 Views
Pemrograman Devais FPGA (Field Programmable Gate Array). Veronica Ernita K. Apa itu FPGA?. FPGA adalah suatu IC program logic dengan arsitektur seperti susunan matrik sel-sel logika yang dibuat saling berhubungan satu sama lain. Memiliki jalur – jalur I/O FPGA yang memadai .
E N D
PemrogramanDevaisFPGA(Field Programmable Gate Array) Veronica Ernita K.
Apaitu FPGA? • FPGA adalahsuatu IC program logic denganarsitektursepertisusunanmatriksel-sellogika yang dibuatsalingberhubungansatusama lain. • Memilikijalur – jalur I/O FPGA yang memadai. • Mempunyaibanyak gate: 5000 s/d juta-an gate • Kecepatan ~100 MHz • MemilikisifatProgrammabletapi, bersifatVolatile.
Programmable • User dapatmemakai IC digital secaraberulang-ulanguntukmenyesuaikan program yang akandidownloadkedalam FPGA. • Volatile • Jikalistrikmatimakasecaraotomatisfungsi FPGA akanhilang, artinya data yang telahdiprosesdandidownloadakanhilangsemuanya.
Mengapamenggunakan FPGA? • Memilikikemampuanuntukmenanganibebankomputasi yang begituberat. • Menghilangkantugas-tugasintensifdariDigital Signal Processing. • Kustomisasiarsitektur agar sesuaidenganalgoritma ideal. • Mengurangibiayasistem. • Efisiensibiaya.
Teknologi FPGA berawaldari? • PROM (Programmable Read Only Memory) • EPROM (Erasable Programmable Read Only Memory) • EEPROM (Electrically Erasable Programmable Read Only Memory) • FLASH • SRAM (Static Random Access Memory)
Teknologi yang berhubungandengan FPGA • Transistor, • IC (Integrated Circuit), • SRAM (Static Random Access Memory), • DRAM (Dynamic Random Access Memory), • SPLD (Simple Programmable Logic Devices), • CPLD (Complex Programmable logic Devices), • ASIC
Programmable Logic Device (PLD) • PLD adalah chip general-purpose yang digunakanuntukmengimplementasikanrangkaianlogika(kombinasional). • PLD merupakankomponenelektronik yang dapatdigunakanuntukmembangunrangkaian digital sesuaidengankeinginanperancang. PLD menghubungkanbeberapagerbanglogika yang diaturolehperancanghardware.
Programmable Logic Device (PLD) • Berdasarkanjumlahgerbanglogika yang dimiliki, PLD dapatdibagiatastigatipe,
Simple Programmable LogicDevices (SPLD) • SPLD merupakanalatdengangerbang AND yang dihubungkandengangerbang OR ataugerbang lain yang sejenis. • Gerbang-gerbanginidapatdiatursedemikianrupaolehpemakai. • SPLD dapatdiprogramdenganfusible link, antifuse, EPROM, EEPROM, atau flash.
PLA (Programmable Logic Array) • Merupakanpengembanganpertamadari PLD. • StrukturPLA:
Programmable Array Logic (PAL) • Di PLA, plane AND dan OR keduanyaprogrammable. • Programmable Array Logic (PAL), lebihsederhana: • Plane OR tetap. • PAL lebihmudahuntukdimanufakturdandapatberoperasilebihcepatdaripadaPLA. • Strukturini paling banyakdigunakandiaplikasiyang menggunakanprogrammable device sederhana.
Programmable Array Logic (PAL) • Device PAL mempunyairangkaiantambahandikeluarantiapgerbang OR untukmenyediakanfungsionaltambahan: • Macrocell: gerbang OR dikombinasikan dengan rangkaiantambahan. • PAL = plane AND + macrocell
Complex Programmable LogicDevice (CPLD) • CPLD adalahgabungandaribeberapa SPLD yang dihubungkanolehProgrammable Switching Matrix. • Jadi,CPLD merupakansebuahprogrammable logic device dengankompleksitasantaraProgrammable Array Logic (PAL) dan FPGA.
Karakteristik CPLD • CPLD memilikisifat non-volatile yang diadopsidariPAL. • Memilikibanyakgerbang yang diadopsidariFPGA, meskipungerbang PAL tidaksebanyak FPGA. • Jumlahgerbang yang terdapatpada IC CPLD berkisarantararibuansampairatusanribugerbanglogika.
Logic Block memilikimacrocell yang terdiridarisebuah SPLD dansebuah flip-flop. I/O Block merupakanbagianpada CPLD yang digunakansebagaiinterface data yang akan masuk dan keluar pada CPLD. Programmable Interconnect digunakansebagaipenghubungantarmacrocellatauantara macrocell dengan I/O Block.
Application-Specific Integrated Circuit (ASIC) • ASIC adalah IC yang hanyadigunakanpadakeperluantertentu , kompleksitas IC inicukuptinggijaditidakmuatpada CPLD .
Field Programmable Gate Array (FPGA) • Untukmengimplementasikanrangkaian yang lebihbesarlagi, digunakantipe IC yang dapatmempunyaikapasitaslogika yang lebihbesar: • Field Programmable Gate Array (FPGA) • Tidakberisiblok AND danOR. • Tapi, berisi array bloklogikadanjalurinterkoneksiantarblok. • Jalur interkoneksi disusun sebagai kanal routing secarahorisontaldanvertikal yang berisi programmable switch. • Dapatmengimplementasikanfungsilogikadenganjumlahgerbangekivalenjutaan.
Field Programmable Gate Array (FPGA) Terdiridari: • Configurable Logic Blocks (CLB). • Input/OutputBlocks (IOB). • Programmable Switch Matrix (PSM)
Configurable Logic Blocks (CLB) • CLB merupakanblokuntukmembangunkomponen-komponencombinational/sequential. • UntukdapatmembentukCLB dibutuhkantruth table dalammembangunjalurlogika.
Input/Output Blocks (IOB) • IOB merupakanblok yang digunakanuntukmengirimkansinyalkeluardarichip dansekaligusmembacasinyal yang masukkedalam chip.
Programmable Switch Matrix (PSM) • PSM merupakanpenghubung yang bisadiatursedemikianrupauntukmenghubungkanantar CLB dan CLB denganIOB secarahorizontal maupunsecaravertikal. • Dapatmengeluarkanfan out (kemampuanuntukmengirimkan data kebanyaksumberuntukdijadikan input sekaligus) untukmultiple output. • Jadi, output dari CLB yang satudapatdihubungkankeinput CLB yang lainmelalui multiple PSM.
Design Entry Schematic Entry Text Entry menggunakan VHDL (Verylog Hardware Definition Language)
Functional Simulation • Tujuan: memastikanrancanganrangkaianlogikabekerjasesuaikeinginandenganinput waveforms yang digunakan.
Synthesis • Optimasirangkaianlogikadalampenggunaangerbang. • Menghasilkannetlist yang merupakandaftar connection yang mendeskripsikankomponendanketerhubungankomponentersebut. Implementation • Meliputi: mapping, placing, and routing rancangansehinggadapatdiimplementasikanke IC FPGA sesuaiarsitekturdankonfigurasi pin IC FPGA tersebut.
Timing Simulation • Verifikasirangkaianapakahsudahbekerjapadafrekuensi yang diinginkandantidakadapropagation delay.
Device Programming • Membuatbitstream yang merepresentasikanrancanganakhirdanakandikirimke target device.