FPGA PERTEMUAN 1
-
Upload
indra-ramdani -
Category
Documents
-
view
119 -
download
0
Transcript of FPGA PERTEMUAN 1
LABORATORIUM LANJUT SISTEM KOMPUTER
UNIVERSITAS GUNADARMA
Schematic 1
34
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
SCHEMATIC
I. Tujuan Praktikum :
Praktikan Dapat Mengenal dan Memahami Desain
Schematic pada FPGA
Praktikan Dapat Merancang Desain Schematic pada
Pemrograman FPGA
Praktikan Dapat Memahami Penggunaan Gerbang
Logika dalam Desain Schematic
II. Dasar Teori
Pengenalan Desain Schematic
Pengenalan Perancangan Desain Schematic
Aplikasi Rancangan Desain Schematic
III. Peralatan
FPGA XILINX SPARTAN 3E
Adaptor 5 Volt
1 buah PC
PERTEMUAN 1
35
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
2.1 Rancangan Schematic
Suatu rancangan rangkaian dapat diwujudkan ke dalam FPGA dengan cara menggambar
skema rangkaian tersebut. Penggambaran skema rangkaian gambar tersebut dapat dilakukan
pada perangkat lunak (software) yang biasanya disertakan dalam setiap pembelian FPGA.
Misalnya software Quartus dan Max+Plus untuk FPGA milik Altera. Sedangkan FPGA
buatan Xilinx dengan perangkat lunaknya yakni ISE WebPack. Selanjutnya, skema rangkaian
digambar dengan cara membuat tiap komponen serta jalur-jalur yang menghubungkan
komponen-komponen tersebut menjadi satu kesatuan. Hingga akhirnya tercipta gambar skema
rangkaian yang utuh. Metode ini terbilang mudah dan efektif terutama bila dipakai untuk skema
rangkaian yang sederhana serta tidak memiliki jalur-jalur yang rumit.
Gambar 2.2 Rangkaian yang dibuat dengan Metode Schematic
Skema desain schematic merupakan seperangkat sistem yang memungkinkan Anda untuk
menangkap struktur desain baik sebagai deskripsi datar atau hirarkis
seperangkat komponen, dan konektivitas antara komponen-komponen ini. Kemudian
Anda dapat menggunakan deskripsi ini untuk mendorong pelaksanaan dan verifikasi alat.
Anda membuat desain skematis menggunakan Schematic Editor. Schematics dapat
single-level (flat) atau multi-tingkat (hirarkis). Schematics dapat ditarik pada
beberapa "lembar" dan ukuran apapun.
36
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
2.2Gerbang Logika
Gerbang logika atau sering juga disebut gerbang logika Boolean merupakan
sebuah sistem pemrosesan dasar yang dapat memproses input-input yang berupa bilangan biner
menjadi sebuah output yang berkondisi yang akhirnya digunakan untuk proses selanjutnya.
Tegangan yang digunakan dalam gerbang logika adalah TINGGI atau RENDAH. Tegangan
tinggi berarti 1, sedangkan tegangan rendah berarti 0.
Gerbang logika dapat mengkondisikan input - input yang masuk kemudian
menjadikannya sebuah output yang sesuai dengan apa yang ditentukan olehnya. Terdapat tiga
gerbang logika dasar, yaitu : gerbang AND, gerbang OR, gerbang NOT. Ketiga gerbang ini
menghasilkan empat gerbang berikutnya, yaitu : gerbang NAND, gerbang NOR, gerbang XOR,
gerbang XAND.
2.2.1 Gerbang AND
Gerbang AND digunakan untuk menghasilkan logika 1 jika semua masukan
mempunyai logika 1, jika tidak maka akan dihasilkan logika 0.
Gambar 2.2 : Gerbang Logika AND dan Tabel Kebenaran AND
37
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
Pernyataan Boolean untuk Gerbang AND
2.2.2 Gerbang OR
Gerbang OR adalah gerbang dimana salah satu atau semua masukan; keluaran terjadi bila salah
satu atau semua masukan ada. Gerbang OR akan memberikan keluaran 1 jika salah satu
dari masukannya pada keadaan 1. jika diinginkan keluaran bernilai 0, maka semua masukan
harus dalam keadaan 0.
Gambar 2.7 : Gerbang Logika IR dan Tabel Kebenaran OR
2.2.3 Gerbang NOT
Gerbang NOT adalah gerbang yang mempunyai sebuah input dan sebuah output.
Gerbang NOT berfungsi sebagai pembalik (inverter), sehingga output dari gerbang ini
merupakan kebalikan dari inputnya.
A . B = Y (A and B sama dengan Y )
38
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
Gambar 2.3 Gerbang Logika NOT dan Tabel Kebenaran NOT
2.2.4 Gerbang NAND
Gerbang NAND akan mempunyai keluaran 0 bila semua masukan pada
logika 1. sebaliknya jika ada sebuah logika 0 pada sembarang masukan pada gerbang
NAND, maka keluaran akan bernilai 1.
Gambar 2.4 Gerbang Logika NAND dan Tabel Kebenaran NAND
A F
Y
39
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
2.2.5 Gerbang NOR
Gerbang NOR akan memberikan keluaran 0 jika salah satu dari masukannya
pada keadaan 1. jika diinginkan keluaran bernilai 1, maka semua masukannya harus dalam
keadaan 0.
Gambar 2.5 Gerbang Logika NOR dan Tabel Kebenaran NOR
2.2.6 Gerbang XOR
Gerbang XOR (dari kata exclusive OR) akan memberikan keluaran 1 jika
masukan-masukannya mempunyai keadaan yang berbeda.
Gambar 2.11 : Gerbang Logika XOR dan Tabel Kebenaran XOR
40
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
2.2.7 Gerbang XNOR
Gerbang XNOR (dari kata exclusive NOR) akan memberikan keluaran 0 jika
masukan-masukannya mempunyai keadaan yang berbeda.
Gambar 2.12 : Gerbang Logika XNOR dan Tabel Kebenaran XNOR
2.2.8 Half Adder
Half Adder Merupakan rangkaian elektronik yang bekerja melakukan perhitungan
penjumlahan dari dua buah bilangan binary, yang masing-masing terdiri dari satu bit. Rangkaian
ini memiliki dua input dan dua buah output, salah satu outputnya dipakai sebagai tempat nilai
pindahan dan yang lain sebagai hasil dari penjumlahan.
41
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
Gambar 2.13 : Rangkaian Half Adder dan Tabel Kebenarannya
2.2.9 Full Adder
Full Adder merupakan rangkaian elektronika yang menjumlahkan dua bilangan
yang telah dikonversikan menjadi bilangan-bilangan biner. Masing-masing bit pada posisi yang
sama saling dijumlahkan. Full Adder sebagai penjumlah pada bit-bit selain yang terendah. Full
Adder menjumlahkan dua bit input ditambah dengan nilai Carry-Out dari penjumlahan bit
sebelumnya. Output dari Full Adder adalah hasil penjumlahan (Sum) dan bit kelebihannya
(carry-out). Blok diagram dari sebuah full adder diberikan pada gambar di bawah.
Gambar 2.14 : Rangkaian Full Adder dan Tabel Kebenarannya
42
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
2.2.10Half Substractor
Half subtractor adalah rangkaian pengurangan sistem bilangan biner yang paling
sederhana, karena hanya dapat digunakan untuk operasi pengurangan data bilangan biner sampai
1 bit saja. Rangkaian ini memiliki 2 terminal input (A dan B) dan 2 terminal output
(DIFFERENCE dan BORROW).
Gambar 2.15 : Rangkaian Half Substractor dan Tabel Kebenarannya
43
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
2.2.11Full Substractor
Full subtractor adalah rangkaian yang digunakan untuk menjumlahkan bilangan-
bilangan biner yang lebih dari 1 bit. Rangkaian ini terdiri dari 3 terminal input (A, B, dan Carry
in) dan 2 terminal output (DIFFERENCE dan BORROW). Rangkaian full subtractor dibentuk
dari 2 buah rangkaian pada half subtractor.
Gambar 2.16 : Rangkaian Full Substractor dan Tabel Kebenarannya
44
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
PRAKTEK :
Percobaan 1 : Gerbang AND
Langkah-Langkah:
1. Buka Xilink ISE 9.2i
2. Klik File -> New Project
3. Ketik nama project dengan nama GerbangAND lalu klik next
4. Atur Device Properties seperti gambar dibawah ini :
5. Klik new source -> ketik nama file namenya GerbangAND pilih Schematic -> klik next -
> klik Finish -> pilih yes
6. Klik next -> pilih next lagi -> lalu Finish
7. Gambar desain schematic gerbang AND -> lalu save
8. Pada bagian tab Processes pada Synthesize-XST klik kanan pilih Run
9. Klik tanda + pada User Constraints pilih Assign Package Pins dengan klik kanan pilih
Run -> pilih yes
45
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
10. Isikan LOC pin seperti gambar berikut:
11. Klik kanan pada Implement Design lalu pilih Run
12. Klik tanda + pada Generate Programming File -> pilih Configure Device (iMPACT)
klik kanan lalu Run
13. Pada tab iMPACT klik Finish
14. Pilih gerbangand.bit klik Open -> Bila ada tanda warning klik Ok
15. klik Bypass -> lalu klik Bypass lagi
16. pada tab Xilink Web Talk Dialog klik Decline -> pilih Ok
17. Klik kanan pada gambar IC Xilink sebelah kiri lalu pilih program seperti gambar
dibawah ini:
18. Lalu pilih OK sampai muncul tulisan Program Succeeded
46
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
Percobaan Dengan Test Bench WaveForm
Dengan menggunakan metode Test Bench WafeForm kita dapat melakukan simulasi pada Xilinx
ISE, tanpa perlu mendownloadnya ke Spartan 3e.
Langka – langkah :
1. Pastikan langkah 1-8 pada perbobaan 1 telah dibuat dengan benar.
2. Pada bagian source klik kanan pada file yang telah kita buat -> pilih New Source
-> pilih Test bench WaveForm dan berilah nama file yang berbeda dengan
sebelumnya misalnya “perc_tb_1” -> klik Next->Next lagi->finish.
3. Kemudian pada clock information pilih combinatorial -> Finish
47
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
4. Kemudian berilah inputan dengan cara menurunkan dan menaikkan garis a dan b
menjadi seperti gambar di bawah ini-> lalu save.
5. Setelah itu pada bagian Source -> source code for : , ubahlah combo boxnya
menjadi Behavioral simulation
48
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
6. Kemudian pada bagian Proses -> klik tab proses ->klik tanda (+) pada Xilinx ISE
Simulator ->klik kanan pada Simulate Behavioral Model ->Run
7. Kemudian akan muncul simulasi seperti gambar di bawah ini :
Untuk mencoba hasil dari inputan kita pada sebelumnya kita hanya perlu menggeser garis biru
pada setiap inputan yang kita ingin ketahui hasilnya.
49
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
TABEL KEBENARAN GERBANG AND :
KESIMPULAN:
50
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
Ikuti Langkah-langkah seperti pada Gerbang And untuk mengerjakan Gerbang OR, Not,
Nand, Nor, Xor, Xnor, Half Adder, Full Adder, Half Substractor, dan Full Substractor.
Percobaan 2 : Gerbang OR
KESIMPULAN:
51
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
Percobaan 3 : Gerbang NOT
KESIMPULAN:
52
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
Percobaan 4 : Gerbang NAND
KESIMPULAN:
53
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
Percobaan 5 : Gerbang NOR
KESIMPULAN:
54
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
Percobaan 6 : Gerbang XOR
KESIMPULAN:
55
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
Percobaan 7 : Gerbang XNOR
KESIMPULAN:
56
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
Percobaan 8 : Half Adder
KESIMPULAN:
57
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
Percobaan 9 : Half Substractor
KESIMPULAN:
58
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
Percobaan 10 : Full Adder
KESIMPULAN:
59
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
Percobaan 11 : Full Substractor
KESIMPULAN:
60
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
Program Mandiri I :
Hasil Output :
Program Mandiri II :
Hasil Output :
61
Sch
em
ati
c
| U
NIV
ER
SIT
AS
GU
NA
DA
RM
A
Program Mandiri III :
Hasil Output :