FPGA PERTEMUAN 1

29
LABORATORIUM LANJUT SISTEM KOMPUTER UNIVERSITAS GUNADARMA Schematic 1

Transcript of FPGA PERTEMUAN 1

Page 1: FPGA PERTEMUAN 1

LABORATORIUM LANJUT SISTEM KOMPUTER

UNIVERSITAS GUNADARMA

Schematic 1

Page 2: FPGA PERTEMUAN 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

Page 3: FPGA 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.

Page 4: FPGA PERTEMUAN 1

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

Page 5: FPGA PERTEMUAN 1

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 )

Page 6: FPGA PERTEMUAN 1

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

Page 7: FPGA PERTEMUAN 1

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

Page 8: FPGA PERTEMUAN 1

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.

Page 9: FPGA PERTEMUAN 1

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

Page 10: FPGA PERTEMUAN 1

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

Page 11: FPGA PERTEMUAN 1

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

Page 12: FPGA PERTEMUAN 1

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

Page 13: FPGA PERTEMUAN 1

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

Page 14: FPGA PERTEMUAN 1

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

Page 15: FPGA PERTEMUAN 1

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

Page 16: FPGA PERTEMUAN 1

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.

Page 17: FPGA PERTEMUAN 1

49

Sch

em

ati

c

| U

NIV

ER

SIT

AS

GU

NA

DA

RM

A

TABEL KEBENARAN GERBANG AND :

KESIMPULAN:

Page 18: FPGA PERTEMUAN 1

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:

Page 19: FPGA PERTEMUAN 1

51

Sch

em

ati

c

| U

NIV

ER

SIT

AS

GU

NA

DA

RM

A

Percobaan 3 : Gerbang NOT

KESIMPULAN:

Page 20: FPGA PERTEMUAN 1

52

Sch

em

ati

c

| U

NIV

ER

SIT

AS

GU

NA

DA

RM

A

Percobaan 4 : Gerbang NAND

KESIMPULAN:

Page 21: FPGA PERTEMUAN 1

53

Sch

em

ati

c

| U

NIV

ER

SIT

AS

GU

NA

DA

RM

A

Percobaan 5 : Gerbang NOR

KESIMPULAN:

Page 22: FPGA PERTEMUAN 1

54

Sch

em

ati

c

| U

NIV

ER

SIT

AS

GU

NA

DA

RM

A

Percobaan 6 : Gerbang XOR

KESIMPULAN:

Page 23: FPGA PERTEMUAN 1

55

Sch

em

ati

c

| U

NIV

ER

SIT

AS

GU

NA

DA

RM

A

Percobaan 7 : Gerbang XNOR

KESIMPULAN:

Page 24: FPGA PERTEMUAN 1

56

Sch

em

ati

c

| U

NIV

ER

SIT

AS

GU

NA

DA

RM

A

Percobaan 8 : Half Adder

KESIMPULAN:

Page 25: FPGA PERTEMUAN 1

57

Sch

em

ati

c

| U

NIV

ER

SIT

AS

GU

NA

DA

RM

A

Percobaan 9 : Half Substractor

KESIMPULAN:

Page 26: FPGA PERTEMUAN 1

58

Sch

em

ati

c

| U

NIV

ER

SIT

AS

GU

NA

DA

RM

A

Percobaan 10 : Full Adder

KESIMPULAN:

Page 27: FPGA PERTEMUAN 1

59

Sch

em

ati

c

| U

NIV

ER

SIT

AS

GU

NA

DA

RM

A

Percobaan 11 : Full Substractor

KESIMPULAN:

Page 28: FPGA PERTEMUAN 1

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 :

Page 29: FPGA PERTEMUAN 1

61

Sch

em

ati

c

| U

NIV

ER

SIT

AS

GU

NA

DA

RM

A

Program Mandiri III :

Hasil Output :