Anda di halaman 1dari 13

Modul 1

Dasar-dasar pemrograman FPGA


menggunakan Xilink ISE Software

1. Tujuan:

1. Praktikan mengetahui tahapan desain logika dengan FPGA


2. Praktikan mengetahui cara memulai program dengan FPGA
3. Praktikan mengetahui dasar-dasar pemrograman FPGA dengan menggunakan
perangkat lunak ISE dari Xilink

2. Teori dasar:

FPGA
Seperti diperlihatkan gambar 1.1, implementasi sebuah desain logika dengan
umumnya terdiri dari beberapa tahapan berikut ini:
1. Memasukkan deskripsi rangkaian logika menggunakan sebuah hardware descripsion
language (HDL) seperti VHDL atau Verilog. Bisa juga menggambar desain logika
dengan schematic editor

mentransfer HDL atau Schematic


2. Menggunakan program logic synthesizer untuk
sebuah desain dan
dalam bentuk netlist yaitu deskripisi variasi gerbang logika dalam
bagaimana mereka saling berhubungan.

tools untuk memetakan gerbang logika dan


3. Menggunakan implementation
menghubungkannya dengan FPGA. Sebuah FPGA terdiri dari banyak configurable

logic block (CLB), dimana dapat di uraikan lebih lanjut look-up tables (LUT)
dalam
Semua CLBs dan LUT terjalin dengan sumber daya
yang melakukan operasi logika.
netlist ke dalam
rutin yang beragam. Mapping tools mengumpulkan gerbang
kemudian place & route tools menugaskan
kelompok yang sesuai dengan LUTs dan
saklar dalam routing matrices
kelompok CLB tertentu saat membuka atau menutupP
untuk menghubungkan mereka bersama-sama.

saklar-saklar
4. Setelah tahap implementasi selesai, program mengekstrak keadaan
dimana satu dan nol bersesuaian
dalam routing matrices dan menghasilkan bitstream
dengan membuka dan menutp saklar.
FPGA. Saklar elektronik dalam FPGA akan
S. Bitstream di download ke dalam chip
membuka atau menutup dalam menanggapi bit biner dalam bitstream. Setelah
selesai proses download, FPGA akan melakukan operasi yang ditentukan oleh kode
HDL atau schematic.

1-1 | STMIK Jakarta STi&K: P erangk at logi ka terprogra m FPGA


VHDL Source Code
HDL Source T
h o g vector(3 downto 0); Simulation
UR _bg_ wecto6 doNo O)

ohecire leooon_on d leddoxd s


begin
6 1101 wnendTOD es Synthesize Netlist
lecuog am'

) Logic
UDe FPGA Simulabon
HE EE EE
Map, Place & Route

E
BitstreaM
looptzbte
ancon bock 010211iC
ICLLOLCO0:0:1001
Generate Brtsbeam
TmMng
SKnulato0n ALO0:0200201

E
01D01000JG101020
10201910021c31C1O1

Downloed and Test

xSA Board

logika dengan FPGA.


Gambar 1. Tahapan dalam implementasi desain

3. Alat-alat:

1. 1 Unit komputer
2. Modul FPGA
3. Adaptor 5 volt

4. Prosedur Percobaan:

logika dengan VHDL


Percobaan ke-1: Desain rangkaian
atau yang lebih tinggi. Ini akan
membawa kita ke empty
1. Buka Xilink ISE 9.2i
terdiri dari 4 pane:
project windows, yang
sumber file desain yang dibuat.
.Source pane menunjukkan organisai
Process pane daftar berbagai operasional
dari
Transcript pane menampilkan berbagai pesan proses
state diagram, dll
.Editor pane untuk memasukkan kode HDL, schematic,

logika terprogram FPGA


1-2 STMIK Jakarta STi&K: P e rangkatt
eouroe

proceas
pane

transcript pene

2. Untuk memulai desain proyek baru, Klik File -> New Project. Ini akan membawa
kita pada New Project Wizard - create new project. Tentukan Project name,
Project location dan Top-level source type.

Nw sajrrt Wi7ar reate hr Trojet


Eranans and leoaien farine paos

deegn1 CATEMPDg.dentgns detign

Soiec hevpeiperd oUCE or he proc

Tepierd auoe bpe:

HOL

Mo fo

3. Klik Nert akan menampilkan New Project Wizard - Device Properties.

desain.
Pilihlah properties sesuai FPGA yang akan dipergunakan dalam

LSSV
-----

FJ.
ST MDU

Gre r n d Desg S

FPGA
1-3 STMIK Jakarta STI&K: P erangkat logik a terprogram
4. Klik Next berikutnya akan menampilkan Create New Source dan kemudian Add
Existing Source. Tampilan terakhir untuk New Project Wizard adalah Project
Summary

Project
Prejeet Ramet denigni

Prajeet Patht Ci\IP\ Oa_desiens\design


Te ierel Scuree Tpet HDE

r i c e FanLlyt S I t a n
Deviee: Ei»1 000

PaCt>ge2 tr256
Speedi 4

Symthesis Teol: ST (VMDE/Verilog)

sualator: ISt Simuiacez (VROL/Terilog)


Freferred Lazquage: VEDL

Enbanced Des1qn SumOTy: enobled


Bessege Filtering: disabled

DAplay IDerenental Xeesages: d1sabled

LckJL
Fah Canad

5. Klik Finish untuk menyelesaikan kreasi proyek, maka pada Source pane akan ada

dua item, dan sesuai Project Summary akan tertulis sebagai berikut:
OProject object dengan nama designl
Chip Object dengan nama xc3sl000-4f256
xilinx- 1SE -CHEAPpa designside
Fe Edt ew P r t sare oges Whdaw

Saucea
Souces for. holenenidion

cal0D-55

6. Setelah set-up proyek lengkap, maka kita dapat memulai menuliskan program
desain dengan VHDL. Dimulai dengan menambahkan sebuah file VHDL pada
proyek design. Klik-kanan objek xc3s1000-4ft256 dalam Source pane dan pilih

New Source... dari pop-up menu berikut ini.

E AtSaa Pr Wndw
D XIpa
Souces for hyaato
-
d Saue.
Copy of souce.

Tooe Fo

rews
woerts
Prooses lor ch0024
D A a s E r g Sour

1 4| STMIK JakartaSTi&K: Perangkat logika terprogram FPGA


7. Sebuah windows akan tampak dimana kita harus menentukan sourcefile yang
VHDL
ingin ditambahkan. Karena akan menuliskan dengan VHDL, maka pilih
Module, dan tentukan juga nama file dan lokasinya

N w SulWira SelSouree lytsce

Ir cOE enerd&rctiechue Mard)

Weriomm

Looxton
OHOL Padape
HDL Tet ern CATEMPYpoAdeagno deaon11

Ad to prje
I <Eock IL Ne Lonce
Mae irko

Define Module
menampilkan Windows New Source Wizard
-

8. Klik Next, akan


dimana kita harus menentukan Port name dan Direction, apakah sebagai input
berikut
atau output. Untuk rangkaian LED decoder diperlihatkan seperti gambar

Byna|ieddbod
AdtdrenaBehavo
cdioti BsMSB SO

LcBcJL>N C

9. Klik Next selanjutnya adalah tampilan akhir New Source Wizard berupa

Summary (untuk contoh LED decoder) sebagai berikut


X

DTCATEP

10. Dengan klik Finish, editor pane akan menampilkan design summary dan rangka
untuk program. Klik pada leddcd dibawah editor pane dan scroll dibawah
1-5 STMIK Jakarta STi&K: P erangkat logika terprogram F PGA
rangka VHDL. Baris 20 -23 adalah pustaka IEEE. Input dan output LED
decoder pada baris 30 -33.
Sedangkan baris antara 37 sampai 40 adalah operasi
logika yang harus kita tuliskan untuk program LED decoder.

eeted

T. STA_109tt_3ie4.ALls
m. rmtesre mms.AL
C h m t the fellw Aray eantkm f instestlati
**.4lli
******

11. Setelah penulisan lengkap program VHDL, untuk melihat kebenarannya dapat
dilakukan dengan memilih leddcd object dalam source pane dan double kik
pada check syntax dalam process pane. Tidak ada kesalahan dalam sintaks
program ditandai simbol seperti diperlihatkan gambar.

1-
began

e a s roetally

CsIRiuoD

Percobaan ke-2: Synthesizing rangkaian logika pada program desa


1. Konversi desain VHDL menjadi rangkaian logika, dengan memilih objek leddcd
dalam Source pane dan double klik pada proses Synthesize-XST.
2. Tunggu beberapa saat, synthesizer akan membaca kode VHDL dan kemudian
menterjemahkan dalam gerbang netlist.

1-6 STMIKJakartaSTi&K: Perangkat logika terprogram FPGA


at

Cmenre

******

***

*
t i e s e s Aateeture SehaTaaais epiie.

3. Jika tidak ada masalah, maka ditandai denganpada Synthesize process.


pilihan double klik View
4. Untuk melihatlaporan synthesis dapat dilihat dengan
RTL Schematic dan teknologinya
Synthesis Report, diagram schematic pada View
pada View Technology Schematic.

dalam FPGA
Percobaan ke-3: Implementasi rangkaian logika
1. Setelah synthesize rangkaian logika, langkah
berikutnya adalah translate, map,
serta place & place kedalam
sumber logika FPGA agar dapat dipergunakan.
leddcd dalam Source pane dan klik
dua kali pada
Dimulai dengan menyorot objek
proses Implement Design.

.
dad

. . ..
::10
. . else
0 0 e . ***
** x.

m s
S

Btared i " w c h i g Deaigu s u r .

maka ditandai dengan pada Implementation proses


2. Jika tidak ada masalah dimana
tanda
Design. Jika ada kegagalan, akan muncul disebelah subproses

logika terprogram FPGA


1-7 STMIK Jakarta STI&K: P erangkat
kesalahan terjadi. Kita juga dapat melihat tanda? yang menunjukkan
keberhasilan dalam proses, tetapi dengan beberapa peringatan yang diberikan, atau
karena tidak semua subproses diaktifkan.
3. Kita dapat mengetahui lebih luas tentang implementation Design dengan melihat
sub prosesnya sebagai bcrikut:
OProses Translate: mengubah keluaran netlist oleh Synthezerdalam format
Spesifik Xilink, dan menambah catatan untuk setiap kendala desain.
Proses Map: menguraikan netlistdan menata ulang sehingga sesuai dengan
clemen rangkaian yang ada dalam FPGA.
Proses Place & Route: memberikan elemen yang dipetakan ke lokasi tertentu
dalam FPGA dan menetapkan saklar rute sinyallogikanya

3 1 Pore do e 87_L0I¢_VEton ts downe


ST01C_TSTOG I6 sownto O)1

a O00xA%
e e d - e d dMedh

ae _laodD 0 : c e * a * e s d-*cc:" else

.. .

: m seenne
e n do*- -*** else
. . 1e

"1:02**:

s d Beberio-al7

atde
4 eAePelce l o u e acatse Tmsg" coneleces o o e s a t u l l s

4. Informasi jumlah Chip yang dipergunakan, pin input dan output yang dipakai
dan
dalam FPGA dapat dilihat dengan klik dua kali pada Plan & Route Report
Pad Report dalam Process Pane.

C a y c i g e t ic) 1995-2000 Xulu, Ic. zi r

aao _ D e m a t r a tale "3a1000.zoe an v z

C D , vsioo 3.2, doe O**" * * **

z a t a r e to ts.000 Celaine. a t e l t anoi 0.0o9


et
ro: i222 - s z t i cenrerais e deveced ar you have a t

DurvasDLnaB
** *** ** *" *
* ** "**

Batu6 aied ueoaafuliy


dencieL4 Poet-Plaos eue
TUNBg
PTOCE

| STMIKJakarta STI&K: P erangk at logika ter progra


m FPG A
1-8
5. Untuk mendapatkan
kesesuaian pin-pin pada FPGA sesuai dengan inputdan
output program desain, prosesnya dimulai dengan klik kanan objek leddcd di
Panel Source dan pilih New Source... dari menu pop-up.

D o Lir3Vn_ ED

Dr Lb/aILn UUNED
oO_3/R"_S
M Ber. VECAUN

TO |UuED

Delete Partton

*----------- .
e Rs Re
Mave to Lban

Tegoe P t Pallup/nlldovo value caD be averzidden 1a DLtgen


M eoed Deen pes 8
a a n e e e rOr, Ay appy.
speciEiC PIare
guideline conaTeguLreeao
os Vco

Total tie:a Pc

c eede ae Koate S a E i c T L D g copieted oDocesofally

6. Kemudian pilih Implementation Constraint File sebagai jenis file sumber yang

kita ingin tambahkan dan ketik nama file (lcddcd), kemudian klik Next.
ENew Source Wizard Select Source Type

BMM Re
I P CORE Generator& Archiechre Wizd)
MEM Fe
Schernabc
brplamertztion Coretraits Re
Re rame
ISate
A
Dagram
Bench Wavefom
eddod
User Documert
odog Mode Locaionz
Veriog Te Fotre CTEMPpg_desgns gn
YHDL Modse

VHDL Radkage
VHDL T Bench

Aad oproe

|Nore to Beck

7. Kita akan menerima umpan balik yang menunjukkan nama dan jenis file yang
telah dibuat. Klik pada tombol Finish untuk menyelesaikan constraint file dari

proyek yang kita buat ini.


Eiew SouTce Wi7ard umrr
sauceht
Prajed Nervigator wd coete a now ddan
dd io
Souce Dredtoy

logika terprogram FPGA


1-9 STMIK Jakarta STI&K: P erangkat
8. Selanyutnya sorot objek leddcd dalam Source pane dan klik ganda Floorplan IO
Pre-Synthesis dalam Process pane untuk menentukan pin-pin sain.

1 . 1 . 0 a.34 te
May sD 31410 200
O-me
Idi IMe o nfemMtIn proeide4 in thre emAts a pere ot en

. The etesiua Ba Ithie fte dentgned tn prrid infor

edded mAp.s
M ed,tat
Eej00

A b e t by PIn Mmberi

P26 b e r |8ignAl Neme JeaItAn Mam DALection| 1o 9tAnd


epe n/D/le ***

TDI
UMOSIED

Ieed |DAdRa Rp Od pdM


Tetal tuet2 *ec*
oee oue eoeted eucoesotully

9. Saat jendela Xilink PACE muncul, kik I/O Pins pada Design Browser. Sebuah
daftar input dan output akan muncul dalam Design Object List- 10 Pins. Ubah
Lakukan ini untuk
pin dengan mengklik Loc untuk input d<0> dan ketikan: N14.
semua input dan output sesuai dengan FPGA yang dipergunakan.

X . i Device Architecture for xcIs10K) 4-11256

Dsign Otbjret iisd s


B
14 BIO

Pu RANG

O BANIS
-
TD BANDC

10. Setelah memasukkan semua pin yang diperlukan, sebuah jendela akan muncul
meminta kita untuk memilih pembatas I/O bus.... Klik OK setelah memilih

XST Default: <> dan tutup Xilink PACE window.


X
Bus Delimiter
Select 10 Bus Delnker-
ST Defat (
xST Opionad
Syrplty Verkog Defau: [1
Defaut: [)
Synolily VHDL/Exemolar

Dont show this dialog again


can be selt through preferences dialog)

Cancel Hep

1-10 STMIK Jakarta STI&K: P erangkat logika terprogram


FPGA
Percobaan ke-4: Membangkitkan bitstream
1. desain di sintesis dan dipetakan ke FPGA dengan penugasan
Setelah pin yang
benar, langkah berikutnya adalah menghasilkan bitstream yang digunakan untuk

memprogram chip yang sebenarnya.


2. Klik-kanan pada Generate Programming File dan pilih Properties.. dari
menu pop-up.

S dc 1 110 Lor_3/v3ITUT LNO25' a


T4
110

cS 110_L3IN LVOOs2S

CLEO

I1On Ingsm
DI 110 LOP_4MR UOSED
DIs
o e n e Aut oe &Ro

M Aied Degn

nee PrDet

Pa oe&A . 3pecial vcco Tecurete Y l . Pl a u l t the dario

Rarn

3. Selanjutnya pilih Configuration Options pada jendela Process Properties dan


atur semua nilai Pull Up dan Pull Down ke Float untuk menonaktifkan resistor

internal FPGA.

E uxstzortis .tomtufurator 0ptirs


egay
Genesa Opions
ptgreon Hopey
Crdgudon ok(conkgueon ra)

a g u n o n Pn M1

TTC "
TAG PnTDI
JTAG P TDO
TAG P TS
Pud
DCoda Dgt Haaduc

Rt DME SHUTDOWH D
DC Updei ode

leddcd dalam Source


4. Setelah mengatur bitstream generation options, sorot objek
Generate Programming File.
pane dan klik ganda proses
muncul tanda di samping proses Generate
5. Dalam beberapa detik, akan
detail akan dibuat. Sebuah bitstream file
Programming File dan file yang
bernama leddcd.bit sekarang dapat ditermukan di folder design1.

logika terprogram FPGA


1-11 | STMIK Jakarta STI&K: P erangkat
Percobaan ke-5: Mendownload bitstream pada Spartan-3E
1. Untuk mendownload file bitstream, pastikan Spartan-3E Design Kit board
dinyalakan dan saklar SWP di atur
pada posisi ON.
2. Klik -

kanan pada Generate Programming File dan klik


Properties.
. Dibawah kategori Start-Up Options, pastikan bahwa FPGA Start-Up Clock di

atur ke JTAG Clock dengan memilihnya dari menu drop-down. Klik OK.

BArCpe
NNA ONen

FPA b O;
Enoweha D e

Mach
DADo Pe,H

Dop Add

4. Klik-dua kali pada Generate Programming File


Operasi ini menghasilkan sebuah file .bit yang dapat dipergunakan oleh
programmer iMPACT untuk konfigurasi perangkat.
5. Perluas sub bagian Generate Programming File

6. Klik dua kali pada Configure Device (iMPACT)

7. Klik Finish pada layar "Welcome to iMPACT"

8. Rantai JTAG otomatis akan dikenal. Mengasosiasikan file top.bit dengan


perangkat Spartan-3E, serta menempatkan PROM dan CPLD ke mode bypass
sudut kanan bawah jendela.
dengan mengklik Bypass di
9. Klik pada gambar perangkat Spartan-3E.
10. Dari Menu Operasi, pilih Program.

Yerfy
Get Device D
Get Device Signatureusercode c2c64e
fie 7
Flo...
TDO Assign Now Configuration

11. Klik OK untuk program sampai ada tulisan Program Succeeded.

logIKa terprogra m FPGA


1-12 STMIK Jakarta STI&K: P erangkat
5. Tugas Pendahuluan
1. Jelaskan secara singkat kelcbihan dan kekurangan desain program ogika
menggunakan PLD dan FPGA!
2. Apa yang anda ketahui tentangn schematic diagram dalam desain logika!!
3. Terangkan gerbang-gerbang logika dasar!

6. Tugas Akhir

1. Apa yang anda ketahui tentang Hardware Description Languange (HDL)


2. Buatlah analisa dan kesimpulan dari masing-masing percobaan!

logika terprogram FPGA


1-13 STMIK Jakarta STI&K: P erangkat

Anda mungkin juga menyukai