1. MATERI KULIAH
1. Pengenalan dan konsep dasar
2. Perbandingan teknologi
3. Arsitektur FPGA
4. Perancangan FPGA
5. Pemrograman VHDL
6. Simulasi dan Sintesis
7. Studi kasus:CPLD Board
8. Studi kasus dan tugas
2
3. PROGRAMMABLE LOGIC DEVICES
(PLDS)
Perangkat Logika Terprogram
Field-Programmable Device (FPD)
Istilah umum yang mengacu pada segala jenis
IC yang digunakan untuk aplikasi perangkat
keras digital, dimana chipnya dapat
dikonfigurasi oleh pemakai untuk
merealisasikan desain yang berbeda beda
Chip general-purpose yang digunakan untuk
mengimplementasikan rangkaian logika
(kombinasional).
4
4. PLDS …
PLD merupakan komponen elektronik yang dapat
digunakan untuk membangun rangkaian digital
sesuai dengan keinginan perancang
Beradasrkan jumlah gerbang logika yang dimiliki,
PLD dibedakan:
5
5. SEJARAH PERKEMBANGAN PLDS
Chip pertama yang dapat diprogram dan
diterapkan dalam rangkaian logika adalah
PROM (programmable Read-only memory).
Arsitektur PROMs tidak efisien untuk
rangkaian logika, jarang dipergunakan.
Piranti pertama yang dikembangkan untuk
dipakai dalam rangkaian logika adalah Field-
Programmable Logic Array (FPLA) atau biasa
disingkat hanya PLA.
6
6. TEKNOLOGI FUSIBLE LINK
Teknologi Fusible link
Salah satu teknologi awal yang mengijinkan
pemakai untuk memprogram piranti.
Piranti dipabrikasi dengan semua link refer
ke fuse.
7
7. PENGENALAN & KONSEP
Teknologi Antifuse
Saat belum program, antifuse mempunyai
resistansi yang sangat tinggi (rangkaian
open). Setelah diprogram, terbentuk link.
Diprogram dengan memberik pulsa tegangan
tinggi pada input .
Teknologi OTP, sekali
terbentuk link,
tidak dapat di
hilangkan.
8
8. PENGENALAN & KONSEP
Mask-programmed devices
Dua jenis memori dalamkomputer: ROM (read
only memory) dan RAM (random access
memory).
ROM: nonvolatile, mask-programmable
RAM volatile
Jenis ROM: Mask-
ROM, PROM,
EPROM,
EEPROM, FLASH
9
10. PENGENALAN & KONSEP FPGA
Field Programmable Gate Arrays (FPGAs)
are digital integrated circuits (IC) that contain
configurable (programmable) blocks of logic
along with configurable interconnects between
these blocks.
Gerbang-gerbang digital dimana interkoneksi
antar masing-masing gerbang dapat di
konfigurasi satu sama lain, serta dirancang
sesuai keinginan dan kebutuhan pemakai
tanpa melalui proses “burn”.
11
11. PENGENALAN & KONSEP FPGA
Sebuah FPGA
Digunakan sebagai model atau prototyping
karena mempunyai software simulasi seperti
Xilink.
Bisa dikatakan Adalah sebuah prosesor atau
embedded controller
Teknologi FPGA berawal dari PROM,
EPROM, EEPROM, FROM dan SRAM
12
14. PERBANDINGAN TEKNOLOGI
Transistor
23 Desember 1947, Fisikawan Willian Shockley ,
Walter Brattain dan John Barden yang bekerja di
Bell Laboratories, Amerika sukses membuat
transistor pertama. Menggunakan germanium
Tahun 1950: bipolar juction transistor (BJT)
Akhir tahun 1950 pabrikasi transistor
menggunakan Silikon: TTL dan ECL
Tahun 1962, Steven Hofstein dan Fredric Heiman
dari RCA research laboratory di Princeton,
NewJersey mengenalkan MOSFET, walau
awalnya lebih lambat dari bipolar, tetapi lebih
murah, kecil dan less-power. Ada 2 FET (NMOS
dan PMOS) CMOS 15
15. PERBANDINGAN TEKNOLOGI
Integrated circuits
Ide pabrikasi beberapa rangkaian dalam sebuah
semikonduktor: G.W.A Dummer 1952.
Jack Kilby dari Texa Instrument, tahun 1958
sukses membuat phase-shift oscilator comprising
five components dalam sebuah semikonduktor.
Tahun yang sama, pendiri Fairchild
Semiconductors Fisikawan Swiss Jean Hoern dan
fisikawan Ameriksa Robert Noyce menggunakan
teknik underlying optical lithographic untuk
membuat transistor, insulating layer dan
interkoneksi pada IC.
Pertengahan 1960, Texas Instrument
memperkenalkan IC seri 54xx dan 74xx 16
16. PERBANDINGAN TEKNOLOGI
SRAMs, DRAMs, dan mikroprosesor
Akhir tahun 1960 dan awal tahun 1970 adalah
pengembangan baru dibidang IC digital
Internaitonal Research Corporation, 1968:
arsitektur untuk “computer-on-a-chip”.
1970, Intel memperkenalkan DRAM pertama
(1024-bit) dan Fairchild memperkenalkan SRAM
pertama (256-bit).
Desember 1970, Gilbert Hyatt mempatenkan
“Single Chip IC Computer Architecture.
1971, Intel memperkenalkan mikroprosesor
pertama, 4004 berisi 2.300 transistor, beroperasi
60.000 per detik. First Physically constructed,
commercially available, useful tasks
17
17. PERBANDINGAN TEKNOLOGI
SPLDs dan CPLDs
Programmable logic divices (PLDs): adalah IC
pertama yang dapat diprogram. Komponennya
dalam bentuk PROMs pada tahun 1970.
Akhir 1970, versi yang lebih kompleks hadir:
complex PLDs (CPLDs).
18
18. PERBANDINGAN TEKNOLOGI
PROMs
SPLD pertama adalah PROM pada 1970.
Simple 3-input, 3-output PROM
PROMs are useful for equations requiring
a large number of product terms, but they
can support relatively few inputs because
every input combination is always
decoded and used.
19
19. PERBANDINGAN TEKNOLOGI
PLAs
Untuk mengatasi kelemahan arsitektur PROM,
perkembangan PLD selanjutnya adalah PLAs
(programmable logic arrays), tersedia tahun 1975
Fakta bahwa array AND dan OR diprogram,
berarti bahwa PLAs lebih lambat dari PROMs
Arsitekturnya yang umum
adalah AND-OR,
walaupun secara teori
adalah mungkin: OR-AND,
NAND-OR, NAND-NOR,
NOT-NOR-NOR-NOT. 20
20. PERBANDINGAN TEKNOLOGI
PALs dan GALs
Masalah kecepatan PLAs, diatasi dengan PAL
(programmable array logic), dikenalkan akhir
tahun 1970an.
Variasi dari PAL
adalah GAL
(generic array
logic), pada
1983, dibuat oleh
Lattice
Semiconductor
Corporation 21
21. PERBANDINGAN TEKNOLOGI
CPLDs
Perkembangan elektronika melihat
• Kapabilitas makin besar
• Ukuran makin kecil
• Lebih cepat
• Lebih powerful
• Lebih murah
MegaPAL: 84-pin, kompres 4 PAL standar, tetapi
daya lebih besar dan hanya sedikit kelebihan
Altera, 1984 memperkenalkan CPLD didasarkan
pada kombinasi teknologi CMOS (menangani
kompleksitas, power kecil) & EPROM (ideal untuk
lingkungan pengembangan dan prototyping) 22
22. PERBANDINGAN TEKNOLOGI
… lanjutan CPLDs
Bergantung pada pabrikasi yang membuat, The
CPLD’s programmable switches bisa didasarkan
pada: EPROM, EEPROM, FLASH atau SRAM
Struktur genertik CPLD
PIM terdiri dari 100 wire,
tetapi SPLD blok hanya
mengakomir 30, maka
perlu programmble
multiplexer
23
23. PERBANDINGAN TEKNOLOGI
ABEL, CUPL, PALASM
Pada 1980 JEDEC mengusulkan format standar
PLD programming text files. Saat yang sama John
Birkner (konseptor PAL), membuat PALAssembler
(PALASM)
Advanced Boolean Expression Language (ABEL)
dirilis tahun 1983, bersamaan dengan CUPL
(Common Universal tool for Programmable Logic).
PALASM, ABEL, CUPL adalah software awal
HDL (hardware description language). Lainnya
adalah AMAZE
Perkembangan selanjutnya adalah higher-level HDLs
(Verilog & VHDL) dan tools (logic synthesis).
Digunakan untuk desain dalam ASIC dan FPGA
24
24. COMPLEX PROGRAMMABLE LOGIC
DEVICE (CPLD)
CPLD adalah gabungan dari beberapa SPLD
yang dihubungkan oleh Programmable Switching
Matrix.
Jadi, CPLD merupakan sebuah programmable
logic device dengan kompleksitas antara
Programmable Array Logic (PAL) dan FPGA.
25
25. KARAKTERISTIK CPLD
CPLD memiliki sifat non-volatile yang
diadopsi dari PAL.
Memiliki banyak gerbang yang
diadopsi dari FPGA, meskipun gerbang
PAL tidak sebanyak FPGA.
Jumlah gerbang yang terdapat pada IC
CPLD berkisar antara ribuan sampai
ratusan ribu gerbang logika.
26
27. Logic Block memiliki macrocell
yang terdiri dari sebuah SPLD dan
sebuah flip-flop.
I/O Block merupakan bagian pada
CPLD yang digunakan sebagai
interface data yang akan masuk dan
keluar pada CPLD.
Programmable Interconnect
digunakan sebagai penghubung
antar macrocell atau antara
macrocell dengan I/O Block.
28
33. PLDS, ASICS & FPGA
Pada tahun 1980an ada gap antara IC digital,
yaitu PLD dan ASIC
34
34. ARSITEKTUR 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.
Mempunyai banyak gate: 5000 s/d juta-an gate
Kecepatan ~100 MHz
Memiliki sifat Programmable tapi, bersifat
Volatile.
35
35. ARSITEKTUR FPGA
Programmable
User dapat memakai IC digital secara
berulang-ulang untuk menyesuaikan
program yang akan didownload ke dalam
FPGA.
Volatile
Jika listrik mati maka secara otomatis fungsi
FPGA akan hilang, artinya data yang telah
diproses dan didownload akan hilang
semuanya.
36
36. ARSITEKTUR FPGA
Alasan penggunaan fpga
Memiliki kemampuan untuk menangani beban
komputasi yang begitu berat.
Menghilangkan tugas-tugas intensif dari Digital
Signal Processing.
Kustomisasi arsitektur agar sesuai dengan
algoritma ideal.
Mengurangi biaya sistem.
Efisiensi biaya.
37
37. ARSITEKTUR FPGA
Awal dari teknologi fpga
PROM (Programmable Read Only Memory)
EPROM (Erasable Programmable Read Only
Memory)
EEPROM (Electrically Erasable Programmable
Read Only Memory)
FLASH
SRAM (Static Random Access Memory)
38
38. ARSITEKTUR FPGA
Teknologi yang berhubungan dgn
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 39
39. ARSITEKTUR FPGA
Geometri IC
Channel, awal sampai pertengahan 1980 : 3 µm
Teknologi node, 1990an: 1 µm
2001: lebih kecil dari 0.18µm
2002: 0.13 µm
2003: 0.09 µm = 90nm
DSM, deep submicron: geometri yang lebih kecil
atau sekitar 0.5 µm.
UDSM, ultradeep submicron: lebih kecil lagi
40
40. ARSITEKTUR FPGA
Piranti berdasarkan SRAM
Sebagain besar FPGA berdasarkan SRAM, artinya
dapat di konfigurasi setiap saat.
Kelebihan teknik ini:
1. Desain awal dapat segera diimplementasikan
dan diuji.
2. Pirati ini forefront of technology
3. SRAM adalah teknologi CMOS
Struktur FPGA mudah untuk identifikasi dan
lokasi masalah.
Perhatian utama piranti dengan SRAM adalah
sulit untuk memproteksi intellectual property
dalam desain, karena disimpan di memori
eksternal.
41
41. ARSITEKTUR FPGA
Piranti berdasarkan SRAM
Sebagain besar FPGA berdasarkan SRAM, artinya
dapat di konfigurasi setiap saat.
Kelebihan teknik ini:
1. Desain awal dapat segera diimplementasikan
dan diuji.
2. Pirati ini forefront of technology
3. SRAM adalah teknologi CMOS
Struktur FPGA mudah untuk identifikasi dan
lokasi masalah.
Perhatian utama piranti dengan SRAM adalah
sulit untuk memproteksi intellectual property
dalam desain, karena disimpan di memori
eksternal.
42
42. FIELD PROGRAMMABLE
GATE ARRAY (FPGA)
Untuk mengimplementasikan rangkaian yang lebih besar
lagi, digunakan tipe IC yang dapat mempunyai kapasitas
logika yang lebih besar:
Field Programmable Gate Array (FPGA)
Tidak berisi blok AND dan OR.
Tapi, berisi array blok logika dan jalur interkoneksi
antar blok.
Jalur interkoneksi disusun sebagai kanal routing secara
horisontal dan vertikal yang berisi programmable
switch.
Dapat mengimplementasikan fungsi logika dengan jumlah
gerbang ekivalen jutaan. 43
44. CONFIGURABLE LOGIC BLOCKS
(CLB)
CLB merupakan blok untuk
membangun komponen-komponen
combinational/sequential.
Untuk dapat membentuk CLB
dibutuhkan truth table dalam
membangun jalur logika.
45
45. INPUT/OUTPUT BLOCKS (IOB)
IOB merupakan blok yang digunakan untuk
mengirimkan sinyal keluar dari chip dan
sekaligus membaca sinyal yang masuk ke dalam
chip.
46
46. PROGRAMMABLE SWITCH
MATRIX (PSM)
PSM merupakan penghubung yang bisa diatur
sedemikian rupa untuk menghubungkan antar
CLB dan CLB dengan IOB secara horizontal
maupun secara vertikal.
Dapat mengeluarkan fan out (kemampuan untuk
mengirimkan data ke banyak sumber untuk
dijadikan input sekaligus) untuk multiple
output.
Jadi, output dari CLB yang satu dapat
dihubungkan ke input CLB yang lain melalui
multiple PSM.
47
50. DESIGN ENTRY
Text Entry menggunakan
VHDL (Verylog Hardware
Definition Language)
Schematic Entry
51
51. FUNCTIONAL SIMULATION
Tujuan: memastikan rancangan
rangkaian logika bekerja sesuai keinginan
dengan input waveforms yang digunakan.
52
52. SYNTHESIS
Optimasi rangkaian logika dalam penggunaan
gerbang.
Menghasilkan netlist yang merupakan daftar
connection yang mendeskripsikan komponen
dan keterhubungan komponen tersebut.
Implementation
• Meliputi: mapping, placing, and routing rancangan
sehingga dapat diimplementasikan ke IC FPGA sesuai
arsitektur dan konfigurasi pin IC FPGA tersebut. 53
53. TIMING SIMULATION
Verifikasi rangkaian apakah sudah bekerja pada
frekuensi yang diinginkan dan tidak ada
propagation delay.
54
54. DEVICE PROGRAMMING
Membuat bitstream yang merepresentasikan
rancangan akhir dan akan dikirim ke target
device.
55
56. VHDL
Didasarkan pada bahasa pemrograman
perangkat lunak ADA, tapi tidak sama, dan juga
bukan software bahasa pemrograman.
Hardware descriptionlanguage yang didesain
untuk merancang rangkaian logika digital, yang
memiliki fitur:
1. Bahasa pemrograman konvensional seperti
PASCAL dan C.
2. Bahasa deskripsi logika seperti ABEL-HDL.
3. Bahasa Netlist seperti EDIF
4. Manajemen desaian & Modeling yang presisi
57
57. CONTOH PEMROGRAMAN VHDL
Berikut contoh gerbang AND dan NOT
Buatlah untuk gerbang NAND, OR, NOR, XOR
(Rangkaian logika, table kebenaran, program)
58
58. CONTOH PEMROGRAMAN VHDL
Berikut contoh pemrograman Half Adder
Buatlah rangkaian logika, table kebenaran dan
pemrograman untuk FULL ADDER
59
59. CONTOH PEMROGRAMAN VHDL
Berikut contoh pemrograman Half Substractor
Buatlah rangkaian logika, table kebenaran dan
pemrograman untuk FULL SUBSTRACTOR
60
60. VERILOG
Verilog adalah sdalah satu bahasa HDL
(hardware description language) yang
dipergunakan untuk menggambarkan system
digital pada suatu perangkat keras.
Verilog adalah bahasa yang popular sekitar
tahun 1990an, walaupun saat ini banyak inustri
mulai beralih kebahasa VHDL
61
61. CONTOH PEMROGRAMAN
VERILOG
Berikut contoh pemrograman AND dan Half
ADDER
Buatlah rangkaian logika, table kebenaran dan
pemrograman untuk OR, XOR, XNOR, NAND,
FULL ADDER 62