Anda di halaman 1dari 4

Percobaan III

Rangkaian Logika Kombinasional


Agadi Samridho (13115004)
Asisten : Riyon Sanjaya Irmal (13112008)
Tanggal Percobaan : 15/11/2016
EL2102R Sistem Digital
Laboratorium Teknik Elektro
Institut Teknologi Sumatera
AbstrakRangkaian logika kombinasional adalah sebuah
rangkaian yang level logika outputnya bergantung pada
kombinasi dari level logika inputnya. Rangkaian logika
kombinasional tidak memiliki sifat penyimpanan (memory),
sehingga nilai keluarannya tergantung dari nilai masukan yang
diberikan. Pada praktikum ini praktikan diminta untuk
mendesain rangkaian kombinasional sederhana dan decoder
BCD-to-7-segmen untuk diimplementasikan di dalam FPGA.
Setelah desain dibuat, praktikan diminta untuk memverifikasi
rangkaian fungsinya menggunakan simulasi functional dan juga
diidentifikasi worst case delay pathnya menggunakan analisis
dan simulasi waktu. Praktikan juga diminta untuk menganalisis
melihat pengaruh waktu tunda maksimum pada rangkaian.
Apabila hasil simulasi yang didapatkan sudah sesuai, rancangan
didownload ke FPGA dan dapat dicoba kebenaran fungsinya
dengan memberi inputnya pada flex switch.
Kata Kuncidelay, BCD-to-7-Segment, Kombinasional

I.

PENDAHULUAN

ANGKAIAN logika kombinasional adalah sebuah


rangkaian yang level logika outputnya hanya
bergantung pada kombinasi dari level logika inputnya.
Pada praktikum ini praktikan diminta untuk mendesain
rangkaian logika kombinasional sederhana dan decoder BCDto-7-segmen pada software Altera Quartus II untuk
diimplementasikan di dalam FPGA. Setelah itu, Praktikan
diminta untuk memverifikasi fungsi rangkaian dengan metode
functional dan menganalisis worst case delay path dengan dua
metoda berbeda yaitu dengan level abstraksi struktural serta
abstraksi behavioral. Sehingga diharapkan praktikan dapat
memahami tujuan yang ingin dicapai, antara lain :
a.

Mendesain rangkaian
pengaruh waktu tunda
b.

c.
d.
e.
f.

sederhana

untuk

II. LANDASAN TEORETIS


A. Rangkaian Logika Kombinasional
Rangkaian sekuensial adalah adalah rangkaian logika yang
kondisi keluarannya dipengaruhi oleh masukan dan keadaan
keluaran sebelumnya atau dapat dikatakan rangkaian yang
bekerja berdasarkan urutan waktu. Ciri rangkaian logika
sekuensial yang utama adalah adanya jalur umpan balik
(feedback) di dalam rangkaiannya. Pada percobaan ini,
praktikan akan menggunakan salah satu aplikasi dari
rangkaian kombinasional, yaitu BCD-to -7-Segment.
B. Implementasi FPGA dan Waktu Tunda
Dalam teknologi Altera Cyclone yang kita gunakan, fungsi
logika diuraikan oleh software implementasi kedalam bentuk
subfungsi 4-masukan. Setiap subfungsi kemudian
diimplementasikan oleh tabel kebenaran yang bekerja seperti
multiplexer dan dibuat dengan memprogram SRAM yang
mendefinisikan fungsionalitas dari FPGA. Setiap tabel
kebenaran memiliki waktu tunda yang berkontribusi ke
waktu tunda keseluruhan. Sedangkan untuk membedakan
antara rangkaian kombinasional dan sekuensial, dalam
subfungsi juga diberikan sebuah D flip-flop seperti yang
terlihat pada Gambar 2.1

melihat

Mendesain rangkaian kombinasional berupa


decoder
BCD-to-7-segment
untuk
diimplementasikan di dalam FPGA
Menggunakan simulasi fungsional untuk memverifikasi
fungsi rangkaian
Menggunakan analisis dan simulasi waktu untuk
mengidentifikasi worst case delay path
Melakukan pengukuran waktu tunda propagasi pada
level rangkaian
Mengenal level abstraksi dalam perancangan digital.

Gambar 2.1 Bentuk subfungsi yang merepresentasikan


Logika pada FPGA
C. BCD-to-7-Segment
BCD-to-7-Segment adalah rangkaian kombinasional yang
menerima 4 buah masukan (4 bit) dan menghasilkan keluaran
berupa gambar visual yang merepresentasikan angka biner
tersebut dalam basis desimal.

Pada percobaan ini, praktikan diminta untuk menganalisis


waktu jeda yang diberikan oleh rangkaian logika pada
Gambar 3.1 secara Functional dan Timing.
Gambar 2.2 Pola Display 7-Segment dan Konversi
Penomoran 7-Segment

Berikut ini adalah hasil simulasi gerbang logika secara


Functional dan Timing :

Setiap segment yang menyala (a-g) akan merepresentasikan


sebuah gambar visual. Sebagai contoh, angka 0 (0000)
memiliki keluaran 1111110, maka hanya segment g yang
berbeda (sisanya membentuk angka 0).
D. Worst Case Delay Path
Worst case delay Path didefinisikan sebagai waktu tunda
terlama yang terdapat pada suatu rangkaian gerbang logika.

Gambar 3.2 Output Gelombang Functional

Gambar 2.3 Waktu Tunda Rangkaian


Perhatikan gambar diatas. Waktu tunda dari masukan ke
keluaran fungsi gerbang logika tersebut adalah jarak antara
dua buah garis merah yang ditampilkan pada waveform
tersebut.
E. Level Abstraksi
Dalam perancangan fungsi gerbang logika, ada tiga level
abstraksi yang dapat digunakan, yaitu level abstraksi
behavioral, struktural, serta physical.
Level abstraksi behavioral adalah tingkat abstraksi yang
mengimplementasikan sesuai dengan perilaku sistem, bukan
interkoneksi antara komponen yang digunakan.
Level abstraksi struktural adalah tingkat abstraksi dengan
implementasi menggunakan fungsi gerbang logika, baik
secara skematik maupun bahasa VHDL.
Level abstraksi physical adalah implementasi langsung,
seperti menggunakan FPGA maupun rangkaian digital
lainnya.
III. HASIL DAN ANALISIS
A. Membuat Rangkaian Sederhana

Gambar 3.3 Output Gelombang Timing


Pada waveform tersebut, ada 3 buah pin yang digunakan
yaitu CLK[0], GPIO[15] (NAND gate) dan GPIO[16] (NOT
gate).
Dari waveform tersebut, kita dapat mengamati perbedaan
utama dari simulasi functional dengan timing adalah jeda
waktu output. Pada simulasi functional, waktu saat
terjadinya perubahan logika 1 menjadi 0 pada GPIO[16]
adalah 245 ns, sedangkan waktu saat terjadinya perubahan
logika 1 menjadi 0 pada GPIO[16] adalah 252,5 ns. Dari
dua data tersebut, kita bisa mendapatkan waktu tunda:
GPIO[16] = 252.5 ns 245 ns = 7.5 ns
Dengan demikian, waktu tunda dari rangkaian
kombinasional (NOT gate) tersebut adalah 7.5 ns.
Berdasarkan referensi, waktu tunda yang dimiliki inverter /
NOT gate adalah antara 3 15 ns, sehingga hasil percobaan
ini masih masuk dalam rentang waktu tersebut.
Hasil percobaan ini sesuai dengan landasan yang telah
diuraikan sebelumnya, bahwa setiap rangkaian logika,
dalam kasus ini rangkaian logika kombinasional, memiliki
waktu tunda (delay time) yang tidak nol.
B. Membuat Rangkaian BCD
Dengan menggunakan implementasi persamaan boolean
menggunakan bahasa VHDL, didapatkan output sebagai
berikut :

Gambar 3.1 Rangkaian Sederhana dengan Modifikasi

Simulasi Timing pada rangkaian kombinasional BCD-to-7Segment memberikan gelombang output seperti berikut :

Gamb
ar 3.4 Hasil Simulasi Functional BCD-to-7-Segment
Dengan menggunakan simulasi Functional, kita dapat
menguji kebenaran dari persamaan logika (SOP/POS) yang
kita implementasikan seperti tabel kebenaran berikut :
Tabel 3.1 Truth Table Rangkaian BCD-to-7-Segment
D3

D2

D1

D0

Hasil simulasi functional yang kita implementasikan


menunjukkan hasil yang sesuai dengan referensi BCD-to-7Segment yang ada.

Gambar 3.5 Hasil Simulasi Functional BCD-to-7Segment


Dapat dilihat perbedaan mendasar antar simulasi Functional
dengan Timing, yaitu dari waktu jeda yang dihasilkan oleh
output. Untuk mendapatkan representasi nilai set, dicari
sebuah kondisi dimana masukan logika lainnya bernilai
tetap, tetapi keluaran berubah ketika nilai D3 berubah. Ada
beberapa kondisi yang memungkinkan hal tersebut terjadi,
seperti saat nilai set (1,1,0) maupun (0,0,1).
Saat nilai set (1,1,0), atau dapat dituliskan SW1[2] = 1,
SW1[1] = 1, SW1[0] = 0, kita dapat melihat pada tabel
kebenaran bahwa 0110 menghasilkan logika D bernilai 1,
sedangkan 1110 menghasilkan logika D bernilai d, yang
direpresentasikan dengan logika 0 pada gelombang diatas.
Selain itu, saat nilai set (0,0,1), kita dapat melihat pada tabel
kebenaran bahwa 0001 menghasilkan logika D bernilai 0,
sedangkan 1001 menghasilkan logika D bernilai 1.
Gambar 3.5 diatas merupakan hasil pengamatan langsung
yang kita dapatkan dari gelombang, dengan nilai set (1,1,0)
dan (0,0,1). Kita dapat mengamati langsung dari
gelombang output saat t = 47.14 ns, nilai logika output
delay mengalami perubahan dari 1 menjadi 0, sedangkan
saat t = 52.505 ns, nilai logika output delay mengalami
perubahan dari 0 menjadi 1, sesuai dengan referensi yang
diharapkan.

Tabel 3.2 Nilai Set dan Waktu Jeda Rangkaian


Dari
Logika

Ke
Logika

Set

Waktu
Ekspektasi

Waktu
Timing

Delay
Time

0110

1110

(1,1,0)

35 ns

47.14
Ns

12.14
ns

0001

1001

(0,0,1)

40 ns

52.505
ns

12.505
ns

Delay maksimum yang tercatat pada rangkaian BCD-to-7Segment yang digunakan adalah 12.505 ns, dengan nilai set
(0,0,1). 0001 adalah saat BCD-to-7-Segment menunjukkan
angka 1, sedangkan 1001 adalah saat BCD-to-7-Segment
menunjukkan angka 9.
Hasil implementasi fungsi logika kedalam FPGA tidak
ditunjukkan pada laporan ini, dikarenakan praktikan tidak
selesai dalam menjalani praktikum sehingga tidak dapat
dibuktikan dalam pengimplementasian pada FPGA.
C. Merancang BCD 7 Segment dengan Level Abstraksi
Behavioral

1 1

1 1

Dari truth table diatas dapat disimpulkan bahwa


implementasi menggunakan persamaan logika boolean
maupun abstraksi behavioral memberikan hasil keluaran
yang sama.
Hasil implementasi fungsi logika kedalam FPGA tidak
ditunjukkan pada laporan ini, dikarenakan praktikan tidak
selesai dalam menjalani praktikum sehingga tidak dapat
dibuktikan dalam pengimplementasian pada FPGA.
IV. SIMPULAN

Gambar 4-10 Simulasi BCD-to-7 Segment Modelsim


Hasil sinyal keluaran dapat direpresentasikan dengan tabel
kebenaran berikut ini (Tabel 4-4):
Tabel 3.3 Truth Table dengan Modelsim

Kesimpulan yang didapatkan dari percobaan modul III antara


lain :
1. Terdapat 2 kategori simulasi, yaitu simulasi
Functional dan simulasi Timing. Simulasi
Functional hanya menampilkan keluaran fungsi
gerbang logika, sedangkan simulasi Timing
memperhitungkan waktu tunda (delay) dari suatu
rangkaian.
2. Setiap rangkaian gerbang logika memiliki delay
time pada implementasinya di dunia nyata.
3. Waktu tunda paling lama yang terdapat dalam suatu
rangkaian
dapat
disimulasikan
dengan
mengidentifikasi worst case delay path.
4. Terdapat
beberapa
tingkatan
dalam
mengimplementasikan gerbang logika seperti level
abstraksi behavioral dan level abstraksi struktural.
Implementasi abstraksi behavioral memerlukan
keluaran (output) langsung dari fungsi logika,
sedangkan abstraksi struktural membutuhkan
masukan (input) dari fungsi logika seperti
persamaan boolean logika tersebut

D3 D2 D1 D0

B C D

E F G

1 1

1 1

1 0

1 1

1 1

REFERENSI

0 1

0 1

1 1

Hutabarat, Mervin T. 2016. Praktikum Sistem Digital. Penerbit


ITB. Bandung.
Brown, Stephen and Vranesic, Zvonko. 2009. Fundamentals
of Digital Logic with VHDL Design. McGraw-Hill. America.
R.H. Katz. 2005. Contemporary Logic Design Second Edition.
Pearson Prentince-Hall. NJ.