Modul Praktikum Rangkaian Logika 2015 FIX
Modul Praktikum Rangkaian Logika 2015 FIX
PELAKSANA
Koordinator Asisten
Gede Teguh Laksana
Administrasi
Rizka Fadhilla
Divisi Praktikum
Muhammad Aditya Taufik
Ridwan Pratama
Garizah Ganih Pranoto
Divisi Hardware
Widi Tama Salman
Wahyu Yanuar Arifin
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
Divisi Riset and Development
Faisal Arifin
Riandanu Aldy Sadewo
Hannan Aulia Mardhiah Harahap
Dwi Kurniawan
Divisi RNS
Fujitson Simamora
Fista Monica Deswanti
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
TATA TERTIB PELAKSANAAN PRAKTIKUM
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
1. ATURAN UMUM
a. Semua praktikan wajib menggunakan seragam sesuai peraturan resmi seragam Universitas Telkom dan wajib
memakai sepatu.
b. Praktikan laki – laki : Baju wajib dimasukkan untuk hari Senin – Rabu.
c. Praktikan perempuan : Bawahan rok berwarna biru dongker atau hitam.
d. Tidak diperbolehkan memakai bawahan selain celana / rok bahan biru dongker atau hitam sesuai dengan
aturan kampus Universitas Telkom.
e. Rambut harus rapi (untuk laki-laki, rambut tidak boleh menyentuh kerah).
f. Kelengkapan praktikum meliputi kartu praktikum (Kartu praktikum wajib diberi foto dan distempel oleh
Laboratorium Teknik Digital).
g. Praktikan diberikan waktu sampai tes awal berakhir untuk melengkapi segala kelengkapan praktikum yang
tidak dibawa.
h. Apabila praktikan tidak membawa kelengkapan praktikum, maka praktikan wajib melapor ke asisten.
i. Segala bentuk pelanggaran yang dilakukan oleh praktikan akan diberikan sanksi berupa tugas tambahan yang
diberikan di akhir praktikum oleh Laboratorium Teknik Digital.
j. Praktikan tidak diperbolehkan melakukan bentuk intimidasi. Segala bentuk intimidasi akan ditindaklanjuti oleh
Fakultas Teknik Elektro.
2. PELAKSANAAN PRAKTIKUM
Praktikum dimulai sesuai waktu yang telah ditentukan.
Praktikan sebaiknya datang 15 menit sebelum praktikum dimulai.
Apabila praktikan terlambat lebih dari 20 menit tanpa alas an yang jelas, maka praktikan tidak diijinkan
mengikuti praktikum untuk modul tersebut dan harus mengulang di tahun depan.
Praktikum diselenggarakan selama 2,5 jam.
Kartu praktikum wajib dibawa oleh praktikan dimana diserahkan dan ditandatangani oleh asisten yang
menjaganya pada saat itu.
Praktikan dapat melaksanakan praktikum setelah mendapatkan instruksi dari asisten praktikum.
Selama praktikum berlangsung, praktikan dilarang:
Membuat kegaduhan di dalam ruangan.
5. PENILAIAN PRAKTIKUM
a. Tugas Pendahuluan
Tugas pendahuluan akan dikeluarkan setiap dua minggu sekali oleh Fakultas.
Tugas Pendahuluan bersifat optional untuk dikerjakan. Jika tidak mengerjakan, maka nilai TP = 0.
Format penulisan TP : soal-jawaban.
Praktikan yang mengerjakan TP wajib mengerjakan SEMUA soal TP. Jika ada salah satu atau lebih soal TP
yang tidak dikerjakan, maka nilai TP=0.
Tidak boleh masteran. Jika terbukti masteran, maka nilai TP=0.
Tugas Pendahuluan ditulis tangan dalam buku TP sesuai ketentuan yang ditetapkan.
Penulisan Tugas Pendahuluan menggunakan alat tulis bolpoint (pensil tidak boleh), termasuk gambar dan
hitungan
Tugas pendahuluan dikeluarkan oleh Fakultas Teknik Elektro pada H-4 pelaksanaan praktikum
Tugas pendahuluan dikumpulkan di Laboratorium Teknik Digital pada hari senin pukul 07.00 - 09.00
WILTD. Jika melebihi waktu yang ditentukan nilai TP sama dengan NOL.
Praktikan yang tidak mengerjakan TP hanya menulis soal maka nilai TP sama dengan NOL. TP bersifat
Optional, tapi jika tidak mengerjakan TP sama dengan NOL.
Tugas pendahuluan dikumpulkan tiap-tiap kelompok secara bersamaan dalam sebuah amplop coklat yang
telah diberi nomor kelompok dan stempel Laboratorium Teknik Digital
Praktikan yang tidak mengumpulkan TP kedalam amplop kelompok masing-masing maka nilai TP
mendapat diskon 50%
Pengumpulan Tugas Pendahuluan boleh diwakilkan dengan ketentuan apabila TP yang dititipkan ternyata
tidak ada maka praktikan yang menitip mendapatkan nilai TP sama dengan NOL .
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
b. Tes Awal
Tes awal akan dilaksanakan pada saat praktikum.
Waktu untuk mengerjakan tes awal berkisar 15 – 20 menit.
Asisten berhak menentukan sifat Tes Awal (lisan atau tulisan) tanpa memberikan pemberitahuan terlebih
dahulu.
Tidak ada penambahan waktu pengerjaan tes awal bagi praktikan yang datang terlambat saat praktikum.
c. Jurnal Praktikum
Jurnal diberikan sebelum praktikum.
Jurnal dikerjakan dengan izin asisten yang menjaga saat itu.
Jurnal harus dikerjakan seluruhnya.
Jurnal praktikum dikerjakan setelah pelaksanaan praktikum berakhir selama 30 menit dan dikumpulkan
pada hari yang sama dengan praktikum modul tersebut.
Praktikan yang tidak mengumpulkan jurnal dianggap gugur pada praktikum modul tersebut.
Pengumpulan jurnal harus dilaksanakan di laboratorium dan tidak dapat diwakilkan.
Isi jurnal harus ditulis dengan bolpoin, kecuali untuk gambar dapat menggunakan pensil dan
menggunakan penggaris.
d. Tes Akhir
Tes akhir bersifat fleksibel.
e. Penilaian
Tugas Pendahuluan : 20 %
Tes Awal : 20 %
Praktikum : 40 %
Jurnal Praktikum : 20 %
6. KELULUSAN PRAKTIKUM
a. Memenuhi semua kelengkapan praktikum (mengikuti semua modul praktikum).
b. Nilai akhir suatu mata praktikum dihitung dengan cara :
Jumlah nilai masing – masing modul
NMP =
Jumlah Modul
c. Suatu mata praktikum dinyatakan lulus apabila indeks mata praktikum minimal C dan semua mata
percobaan/modul pada mata praktikum tersebut lulus.
d. Apabila nilai mata praktikum tidak lulus maka praktikan wajib mengulang semua mata percobaan/modul
dalam mata praktikum tersebut.
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
7. LAIN – LAIN
a. Selama berlangsungnya praktikum, asisten berhak untuk menegur atau mengeluarkan praktikan yang
dianggap belum siap mengikuti praktikum.
b. Hal lain yang belum tercantum dalam tata tertib ini akan ditetapkan kemudian.
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
MODUL I
A. Tujuan Praktikum
a. Mengenal dan memahami macam – macam IC dan alat pendukung lainnya.
b. Memahami metode perancangan rangkaian logika yang dibentuk dari gerbang logika dasar.
c. Mengenal dan memahami prinsip kerja decoder, adder, dan multiplexer.
d. Mengetahui dan dapat mengaplikasikan konsep perancangan rangkaian decoder dan multiplexer.
e. Mengetahui dan memahami aplikasi rangkaian driver seven segment.
B. Peralatan Praktikum
a. Digiboard
b. IC 74LS00, IC 74LS02, IC 74LS04, IC 74LS08, IC 74LS32, IC 74LS138, IC 74LS47, 7-Segment anode/ Cathode
C. Pengenalan IC
Intergrated Circuit (IC) adalah suatu komponen elektronik yang terbuat dari
bahan semikonduktor, dimana IC merupakan gabungan dari komponen seperti
Resistor, Kapasitor, Dioda, dan Transistor yang telah terintegrasi menjadi sebuah
rangkaian berbentuk chip kecil. IC digunakan untuk beberapa keperluan pembuatan
peralatan elektronik agar mudah dirangkai menjadi peralatan yang berukuran relative
kecil.
Pada umumnya, IC gerbang logika dasar memiliki 14 pin, dengan pin 1
ditandai dengan tanda dot atau lekukan setengah lingkaran. Untuk gerbang logika dasar pada pin 14 diberi catuan
ke VCC dan pin 7 di-ground-kan. Untuk penomoran IC, pin 2,3,4, dan seterusnya berurutan berlawanan arah jarum
jam.
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
Dalam praktikum, yang akan digunakan adalah IC TTL (Transistor-Transistor Logic). IC TTL bekerja pada
supply tegangan 5V. Berikut adalah teknik penomoran atau penamaan IC untuk tipe TTL:
Keterangan :
B = 74 = Kelompok IC
C = LS = Sub Family IC
E = N = Kemasan
(T untuk rangkap dua jalur keramik dan untuk bahan metal datar. N untuk rangkap dua jalur egativ).
D. Perancangan Rangkaian
a. Penyederhanaan
Penyederhanaan dilakukan untuk penghematan ruang kerja dan biaya. Penyederhanaan dapat
dilakukan dengan banyak metode, diantaranya K-Map dan Aljabar Boolean.
Aljabar Boolean
Penyederhanaan dengan aljabar Boolean dilakukan berdasarkan hokum Aljabar Boolean. Berikut
adalah Hukum Aljabar Boolean:
NOT Law AND Law OR Law
0 = 1̅ x . 0 = 0 x+0=x
x.1=x x+1=1
1 = 0̅
x.x=x x+x=x
X = x̅ x . x = 0̅ x + x = 1̅
f(x,y) = xy + x’y
Cara membaca:
0 0 0 0 m0 = 𝑥̅ 1𝑥̅ 2𝑥̅ 3
1 0 0 1 m1 = 𝑥̅ 1 𝑥̅ 2 𝑥 3
2 0 1 0 m2 = 𝑥̅ 1 𝑥 2 𝑥̅ 3
3 0 1 1 m3 = 𝑥̅ 1 𝑥 2 𝑥 3
4 1 0 0 m4 = 𝑥 1 𝑥̅ 2 𝑥̅ 3
5 1 0 1 m5 = 𝑥 1 𝑥̅ 2 𝑥 3
6 1 1 0 m6 = 𝑥 1 𝑥 2 𝑥̅ 3
7 1 1 1 m7 = 𝑥 1 𝑥 2 𝑥 3
BC F = ……………………
A 00 01 11 10
0 m0 m1 m3 m2 Contoh SOP pada K – Map disamping :
m0 = A̅ B̅C̅
1 m4 m5 m7 m6
m5 = AB̅ C
BC
A 00 01 11 10 F = B̅C + A̅BC̅
0 0 1 0 1
1 0 1 0 0
Rangkaian Pengganti
Sistem ini dilakukan ini dilakukan karena adanya keterbatasan bahan.Tidak semua IC tersedia di
pasaran. Jadi kita dapat memanfaatkan gerbang-gerbang logika yang ada untuk membentuk gerbang yang
lainnya. Sebagai contoh gerbang NOR dapat dibuat dari gerbang OR yang outputnya diberi gerbang NOT.
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
Setiap gerbang logika dasar memiliki tabel kebenaran tersendiri yang memberikan karakteristik
tertentu. Pada dasarnya hanya terdapat tiga gerbang logika dasar, yaitu gerbang AND, OR, dan NOT. Dari
ketiga gerbang tersebutlah dikembangkan menjadi gerbang NAND, NOR, XOR, dan XAND.
NOT (7404)
A Y A = A̅
0 1
1 0
E. Rangkaian Kombinasional
Rangkaian Kombinasional adalah rangkaian yang terdiri dari rangkain gerbang logika yang kondisi
keluarannya (output) hanya tergantung oleh kondisi masukan (input) saat itu dan tidak tergantung pada kondisi
output sebelumnya.
Rangkaian kombinasional tidak memiliki memori sebagai media penyimpanan, seperti: decoder, priority
encoder, multiplexer, adder, subtractor, multiplier, divider dan lain sebagainya.
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
F. Kegunaan Rangkaian Kombinasional
Untuk beberapa keperluan pembuatan peralatan elektronik yang membutuhkan rangkaian kombinasional
dengan sifat tertentu. Misalnya multiplexer yang dapat memilih bit select untuk memilih input yang akan
diteruskan ke output, sehingga multiplexer banyak digunakan pada perangkat telekomunikasi.
1. Decoder
Rangkaian decoder merupakan rangkaian kombinasional yang berfungsi untuk mendekode informasi
(data) yang terkode. Salah satu contoh decoder adalah binary decoder.
Karakteristik Binary Decoder :
a. Mempunyai N masukan data dan 2N keluaran.
Misal : binary decoder 3 masukan mempunyai 8 jalur keluaran.
b. Hanya satu keluaran yang diaktifkan dalam satu waktu (one-hot encoded).
Assert : ke nilai ‘1’ (logika positif / output active-high) atau ‘0’ (logika egative / output active-low).
Tiap keluaran diaktifkan oleh satu kombinasi nilai masukan.
c. Masukan ENABLE (En) digunakan untuk mematikan keluaran.
Asumsi keluaran active-high, enable active-high :
Jika En = 0, tidak ada keluaran decoder yang di-assert (diaktifkan).
Jika En = 1, satu keluaran di-assert (diaktifkan) sesuai kombinasi masukan.
N to 2n binary decoder
Logic Circuit
Fungsi Output
Dengan prioritas input, saat w2 dan w1 aktif bersamaan, w2 akan di-encoding menjadi y1y0 bernilai
“10”. Z adalah sinyal yang menunjukkan bahwa minimal 1 input aktif.
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
4. Multiplexer
Multiplexer adalah suatu rangkaian kombinasional yang fungsinya untuk memilih salah satu dari 2n bit
sinyal input untuk diteruskan ke satu jalur output. Multiplexer disebut juga sebagai data selector, karena
memiliki bit select sebanyak n yang berfungsi untuk memilih data dan sebagai pengontrol input. Multiplexer
ini banyak digunakan dalam bidang telekomunikasi.
Multiplexer 4-to-1
Dari tabel kebenaran diatas, dapat disederhanakan bahwa Sum dan Carry berasal dari dua
persamaan berikut :
S=A B C=A.B
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
b. Full Adder
Pada Full Adder, rangkaian dapat bekerja dengan menampung carry sebelumnya sehingga
inputnya ada 3, yaitu A, B, dan Cin.
INPUT OUTPUT
A B Cin Cout S
0 0 0 0 0
0 0 1 0 1
0 1 0 0 1
0 1 1 1 0
1 0 0 0 1
1 0 1 1 0
1 1 0 1 0
S=A B Cin Cout = ((A B) . Cin) + (A . B) = (A . B) + (B . Cin) + (Cin . A)
Jika diperhatikan, operasi pada full adder dapat direpresentasikan dengan menggunakan half
adder sesuai dengan gambar berikut :
Sedangkan untuk melakukan operasi penjumlahan bilangan dengan lebar data lebih dari satu bit
dibutuhkan sebuah rangkaian Full Adder Parallel. Full Adder Parallel tersusun atas rangkaian Full Adder
sebanyak n yang dapat menjumlahkan 2 bilangan selebar n bit dan menghasilkan 1 bilangan selebar n+1
bit. Seperti penjumlahan bilangan ratusan yang menghasilkan bilangan ribuan. Rangkaian ini mempunyai
prinsip menggunakan cout pada perhitungan bit sebelumnya menjadi cin.
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
6. Half Subtractor dan Full Subtractor
Kedua rangkaian ini melakukan operasi pengurangan biner. Half subtractor untuk pengurangan 2
bilangan selebar 1 bit menghasilkan sebuah bilangan selebar 2 bit, sedangkan full subtractor untuk
pengurangan 3 bilangan selebar 1 bit menghasilkan sebuah bilangan selebar 2 bit. Dalam hal ini, Full Subtractor
dapat terdiri dari 2 Half Subtractor.
a. Half Subtractor
INPUT OUTPUT
A B Bout D
0 0 0 0
0 1 1 1
1 0 0 1
1 1 0 0
D=A B Bout = A̅ . B = A – B
b. Full Subtractor
INPUT OUTPUT
A B Bin Bout D
0 0 0 0 0
0 0 1 1 1
0 1 0 1 1
0 1 1 1 0
1 0 0 0 1
1 0 1 0 0
1 1 0 0 0
1 1 1 1 1
Seperti halnya pada full adder 1 bit yang terdiri dari 2 buah half adder, pada rangkaian full
subtractor 1 bit juga terdiri dari 2 buah half subtractor.
G. Langkah Praktikum
a. Gerbang Logika dan IC Dasar
GERBANG AND (74LS08)
GERBANG OR (74LS32)
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
a. Rangkaian Kombinasional
Decoder 2 to 4 (dari Decoder 3 to 8)
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
74LS47
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
A. Tujuan Praktikum
a. Memahami dasar rangkaian memori.
b. Memahami karakteristik dan fungsi dari flip – flop dan rangkaian sekuensial.
c. Memahami perancangan rangkaian sekuensial menggunakan flip – flop.
B. Peralatan Praktikum
a. Digiboard
b. IC 74LS74, IC 74LS76
C. Flip – Flop
Flip-flop adalah rangkaian logika yang digunakan untuk menyimpan satu bit secara semi permanen sampai
ada suatu perintah untuk menghapus atau mengganti isi dari bit yang disimpan. Flip-flop bekerja berdasarkan
control dari sinyal clock. Prinsip dasar dari flip-flop adalah suatu komponen elektronika dasar seperti transistor,
resistor dan dioda yang di rangkai menjadi suatu gerbang logika yang dapat bekerja secara sekuensial.
Flip-flop merupakan bentuk dasar dari rangkaian logika sekuensial. Pada dasarnya flip-flop berasal dari
basic cell NAND atau basic cell NOR, yang sering disebut RS-flip-flop (SET RESET flip-flop). Berikut gambar
rangkaian, dan table kebenaran dari RS flip-flop:
INPUT OUTPUT
COMMENT
S R Q Q̅
0 0 NC NC No Chance, Hold
0 1 0 1 Reset
1 0 1 0 Set
1 1 0 0 Invalid Condition
INPUT OUTPUT
COMMENT
S R Q Q̅
1 1 NC NC No Chance, Hold
0 1 1 0 Set
1 0 0 1 Reset
0 0 1 1 Invalid Condition
Tidak seperti gerbang logika, flip-flop mempunyai dua keluaran komplementer. Keluaran tersebut diberi
lambang Q dan𝑄̅ . Keluaran Q merupakan keluaran normal dan paling sering digunakan pada kondisi normal dan
𝑄̅ merupakan komplemen dari Q.
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
MODE OPERASI FLIP – FLOP
Qt+1 adalah next state, atau kondisi flip-flop setelah clock aktif.
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
b. Universal Flip – Flop (JK – FF)
JK-FF memliki dua input yang mempengaruhi keluaran. Operasi flip-flop JK sama dengan operasi flip-
flop SR, kecuali pada masukkan, JK diperbolehkan kondisi J=K=1. Bila kondisi seperti itu maka keadaan Q akan
berubah tanpa memperhatikan keadaan Q sebelum ada detak. Sifat master slave terlihat pada output table
operasi yang selalu sama dengan masternya (J ).
F. Clock
Clock adalah sinyal pewaktu yang akan memicu rangkaian untuk aktif. Kondisi clock yang memicu
rangkaian dibagi 4, yaitu:
a. Counter
Counter merupakan rangkaian logika pengurut, karena counter membutuhkan karakteristik memori,
dan pewaktu memegang peranan yang penting. Counter digital mempunyai karakteristik penting yaitu sebagai
berikut:
• Jumlah hitungan maksimum (modulus N – counter).
• Menghitung keatas atau kebawah (up atau down – counter).
• Operasi asinkron atau sinkron.
• Bergerak bebas atau berhenti sendiri.
Sebagaimana dengan rangkaian sekuensial yang lain, untuk menyusun counter digunakan flip-flop.
Counter dapat digunakan untuk menghitung banyaknya clock-pulsa dalam waktu yang tersedia (pengukuran
frekuensi), Counter dapat juga digunakan untuk membagi frekuensi dan menyimpan data.
Ada dua macam counter, yaitu Asinkronous Counter dan Sinkronous Counter. Asinkronous Counter
disebut juga Ripple Through Counter atau Counter Serial (Serial Counter), karena output masing-masing flip-
flop yang digunakan akan berubah kondisi dari “0” ke “1” dan sebaliknya secara berurutan, hal ini disebabkan
karena flip-flop yang paling ujung dikendalikan oleh sinyal clock, sedangkan sinyal clock untuk flip-flop lainnya
berasal dari masing-masing flip-flop sebelumnya. Sedangkan pada counter sinkron, output flip-flop yang
digunakan bergantian secara serempak. Hal ini disebabkan karena masing-masing flip-flop tersebut
dikendalikan secara serempak oleh sinyal clock. Oleh karena itu Counter Sinkron dapat pula disebut sebagai
Counter paralel (Parallel Counter).
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
Contoh Perancangan Counter Up-Down 2-bit D-FF
b. Shift Register
Register merupakan sekelompok flip-flop yang dapat menyimpan dan menggeser data yang terdiri
dari bit majemuk. Register dengan n flip-flop mampu menyimpan sebesar n bit. Ada dua cara untuk
menyimpan dan membaca data ke dalam register, yaitu seri dan paralel. Dalam operasi paralel, penyimpanan
atau pembacaan dilakukan secara serentak oleh semua tingkat register dan hanya membutuhkan 1 clock saja
untuk menyimpan atau membaca semua data. Sedangkan untuk operasi seri, diterapkan secara sequential bit
demi bit sampai semua tingkat register terpenuhi dan jumlah clock tergantung pada jumlah data yang akan
disimpan.
Ada 4 mode operasi register :
i. Serial In Serial Out (SISO)
Pada mode ini, data masuk dan keluar secara seri (berurutan).
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
ii. Serial In Parallel Out (SIPO)
Pada mode ini, data masuk secara seri (berurutan) dan keluar secara paralel (serentak).
c. Detektor Sekuensial
Detektor sekuensial merupakan suatu jenis rangkaian sekuensial yang dapat mendeteksi urutan bit
dengan pola tertentu dari rangkaian data yang diinputkan. Jika data yang dideteksi sesuai dengan pola yang
diinginkan, maka output akan mengeluarkan suatu harga tertentu.
Ada 2 model dalam perancangan rangkaian detector sekuensial, yaitu model moore dan model mealy.
Perbedaan antara keduanya adalah pada jumlah state dan variable pembentuk outputnya:
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
i. Model Mealy
Model Mealy → Jumlah State = Jumlah Bit
Contoh : Perancangan detektor sekuensial dengan urutan bit 011 menggunakan model mealy.
Flip – flop yang digunakan adalah D – FF.
NS Z
PS
X=0 X=1 X=0 X =1
A B A 0 0
B B C 0 0
C B A 0 1
A = 00
B = 01
C = 11
NS Z
PS
X=0 X=1 X=0 X =1
00 01 00 0 0
01 01 11 0 0
11 01 00 0 1
Untuk mencari nilai input pada rangkaian detector (input masing – masing flip – flop), dibutuhkan tabel
transisi sesuai flip – flop yang digunakan, karena pada contoh ini memakai D – FF, maka yang digunakan
adalah tabel transisi milik D – FF.
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
Qt → Qt+1 D
0 → 0 0
0 → 1 1
1 → 0 0
1 → 1 1
Dengan melihat kondisi present state (PS) dan next state (NS) lalu dihubungkan dengan tabel transisi,
maka diperoleh tabel eksitasi sebagai berikut :
NS D Z
PS
X=0 X=1 X=0 X=1
X=0 X =1
Q1 Q2 Q1 Q2 Q1 Q2 D1 D2 D1 D2
0 0 0 1 0 0 0 1 0 0 0 0
0 1 0 1 1 1 0 1 1 1 0 0
1 1 0 1 0 0 0 1 0 0 0 1
Dengan melihat tabel eksitasi, kita dapat mencari persamaan input di masing – masing flip – flop, karena
pada rangkaian detektor sekuensial yang kita buat ini menggunakan 2 flip – flop, maka ada 2 persamaan
input dan sebuah persamaan output.
x x x
Q1 Q2 0 1 Q1 Q2 0 1 Q1 Q2 0 1
00 0 0 00 1 0 00 0 0
01 0 1 01 1 1 01 0 0
11 0 0 11 1 0 11 0 1
10 X X D1 = Q͞1 . Q2 . X 10 X X D2 = X̅ + Q͞1 . Q2 10 X X Z = Q1 . X
Dengan menggunakan persamaan input dan output yang telah didapat, maka gambar rangkaian detektor
sekuensialnya adalah :
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
ii. Model Moore
Model Moore → Jumlah State = Jumlah Bit + 1
Contoh : Perancangan detektor sekuensial dengan urutan bit 011 menggunakan model moore.
Flip – flop yang digunakan adalah D – FF.
NS
PS Z
X=0 X=1
A B A 0
B B C 0
C B D 0
D B A 1
A = 00
B = 01
C = 11
D = 10
Untuk mencari nilai input pada rangkaian detector (input masing – masing flip – flop), dibutuhkan tabel
transisi sesuai flip – flop yang digunakan, karena pada contoh ini memakai D – FF, maka yang digunakan
adalah tabel transisi milik D – FF.
Qt → Qt+1 D
0 → 0 0
0 → 1 1
1 → 0 0
1 → 1 1
Dengan melihat kondisi present state (PS) dan next state (NS) lalu dihubungkan dengan tabel transisi,
maka diperoleh tabel eksitasi sebagai berikut :
NS D
PS
X=0 X=1 X=0 X=1 Z
Q1 Q2 Q1 Q2 Q1 Q2 D1 D2 D1 D2
0 0 0 1 0 0 0 1 0 0 0
0 1 0 1 1 1 0 1 1 1 0
1 1 0 1 1 0 0 1 1 0 0
1 0 0 1 0 0 0 1 0 0 1
Dengan melihat tabel eksitasi, kita dapat mencari persamaan input di masing – masing flip – flop, karena
pada rangkaian detektor sekuensial yang kita buat ini menggunakan 2 flip – flop, maka ada 2 persamaan
input dan sebuah persamaan output.
x x x
Q1 Q2 0 1 Q1 Q2 0 1 Q1 Q2 0 1
00 0 0 00 1 0 00 0 0
01 0 1 01 1 1 01 0 0
11 0 1 11 1 0 11 0 0
10 0 0 D1 = Q2 . X 10 1 0 D2 = X̅ + Q͞1 . Q2 10 1 1 Z = Q1 . Q͞2
Dengan menggunakan persamaan input dan output yang telah didapat, maka gambar rangkaian detektor
sekuensialnya adalah :
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
H. Langkah Praktikum
a. FLIP FLOP
D-FF
JK-FF
b. SHIFT REGISTER
A. Tujuan Praktikum
a. Memperkenalkan penggunaan VHDL dalam perancangan rangkaian digital.
b. Memperkenalkan penggunaan software Quartus.
c. Mengenal dan memahami prinsip kerja rangkaian aritmatika dasar yaitu adder, subtractor, divider dan
multiplier dalam VHDL.
B. Peralatan Praktikum
a. Personal Computer
b. Software Quartus II version 12.1
C. Pengenalan VHDL
Very High-Speed Integrated Circuit Hardware Description Language(VHDL) adalah salah satu bahasa
pemrograman yang digunakan untuk memodelkan sistem digital dengan pemodelan dataflow, behavioral dan
struktural serta menggabungkan sinyal sistem sama seperti FPGA dan Integrated Circuit(IC). Dalam perancangan
rangkaian dengan menggunakan VHDL, sering digunakan software Modelsim atau Quartus untuk simulasi dan
sintesis.
Dua aplikasi utama dari VHDL adalah pada FPGA (Field Programmable Gate Arrays) dan ASIC (Aplication
Specific Integrated Circuits). Namun yang akan kita gunakan dalam praktikum Tekdig adalah pengaplikasian pada
FPGA. Ketika code VHDL telah ditulis, kita bisa mengimplementasikan rangkaian yang telah kita buat melalui FPGA
atau langsung dipabrikasi menjadi ASIC chip.
VHDL berbeda dengan program computer pada umumnya yang berjalan sequential (berurut), statement
yang ada dieksekusi secara pararel (bersamaan). Karena itu VHDL biasanya disebut sebagai code dibandingkan
program.
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
Susunan dasar program VHDL
LIBRARY
ENTITY
ARCHITECTURE
a. Library
Library merupakan kumpulan modul-modul perintah yang digunakan dalam program. Sebelum
digunakan di dalam program, modul yang berada di dalam library perlu diinisialisasi terlebih dahulu. Jika
tidak diinisialisasi terlebih dahulu, perintah-perintah yang tertulis tidak dapat dijalankan.
LIBRARY nama_library;
USE nama_library.package_name.package_parts;
b. Entity
Spesikfikasi pin input dan output pada desain bentuk rangkaian yang dibuat. Berfungsi untuk
menggambarkan port pada input ataupun output pada rangkain yang ingin dibuat, entity juga dapat berisi
parameter yang akan digunakan di dalam desain.
ENTITY nama_entity IS
PORT (
nama_port :mode_sinyaltipe_sinyal;
nama_port :mode_sinyaltipe_sinyal;
...);
END nama_entity;
c. Architecture
Architecture merupakan deskripsi kerja dari system / entity yang akan kita rancang. Pada architecture
terdapat satu set komponen yang saling berhubungan. Dalam pendeskripsiannya, architecture dapat di desain
secara behaviour ( secara perinsip kerja alat ), structural (terstuktur dalam port map), dataflow (RTL : Register
Transfer Level, yaitu secara rangkaian logika) ataupun campuran ketiga cara tersebut.
BEGIN
x <= a NAND b;
END myarch;
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
• Process
Process merupakan bagian dari suatu architecture. Di dalam suatu architecture bisa terdapat satu
atau lebih proses yang saling independen ataupun berhubungan. Contoh dari suatu proses:
begin
proses1 : process
begin
...
end process;
proses2 : process
begin
...
end process;
end nama_architecture;
begin
proses1 : process
begin
...
end process;
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
• Entity, Architecture dan Signal
Entity adalah jenis port-port yang digunakan di dalam suatu rangkaian. Pada gambar rangkaian
di atas, entity adalah port A,B,C dan D(sebagai input) dan Y (sebagai output). Sedangkan yang dinamakan
Architecture adalah bentuk dari rangkaian di dalamnya. Signal adalah kabel atau connector yang
menghubungkan antar gerbang logika.
• Komponen
Komponen adalah cara untuk partisi kode, menyediakan berbagi kode, dan penggunaan kembali
kode tersebut dalam program lain yang lebih komplek. Misalnya, yang biasa digunakan flip-flops,
multiplexers,adders, basic gates.
COMPONENT declaration:
COMPONENT component_name IS
PORT (
port_name :signal_modesignal_type;
port_name :signal_modesignal_type;
...);
END COMPONENT;
COMPONENT instantiation:
Test bench biasanya ditulis dengan kode bahasa VHDL maupun Verilog. Bentuk test bench ini
terbilang lebih sukar dibandingkan dengan bentuk timing diagram. Hal ini disebabkan karena untuk
melakukan test bench, diperlukan kemampuan untuk menulis dan mengerti kode-kode VHDL maupun
verilog. Sehingga bentuk test bench pada umumnya sering dipakai oleh pengguna FPGA tingkat mahir.
library IEEE;
use IEEE.std_logic_1164.ALL;
ENTITY myadder_tb is
END myadder_tb;
----------------------------------------------------
----------------------------------------------------
COMPONENT myadder8_top
PORT (
CLKP: IN std_logic ;
C_INP: IN std_logic;
END COMPONENT;
BEGIN
uut: myadder8_top
PORT MAP (
AP =>a_data_input,
BP =>b_data_input,
C_INP=>carry_in,
QP => Q);
stimulus: PROCESS
BEGIN
-----------------------------------------------------
-----------------------------------------------------
wait;
END simulate;
entity AND3input is
port (A,B,C : in std_logic;
Z : out std_logic);
End AND3input;
Begin
End behavioral;
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
• Program Half Adder
library ieee;
use ieee.std_logic_1164.all;
entity half_adder is
port (
a_input : in std_logic;
b_input : in std_logic;
Begin
End half_adder_bhv;
library ieee;
use ieee.std_logic_1164.all;
--nama entity
entity full_adder is
port (
a_input : in_std_logic;
b_input : in std_logic;
cin : in std_logic;
cout : out std_logic;
sum : out std_logic
); --port dari entity
end entity full_adder;
--nama architecture --nama entity
architecture full_adder_bhv of full_adder is
component half_adder is
port (
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
a_input : in std_logic;
b_input : in std_logic;
sum : out std_logic;
cout : out std_logic);
end component half_adder;
signal sum0 : std_logic;
signal cout0 : std_logic;
signal cout1 : std_logic;
begin
FA0 : half_adder
port map (a_input =>a_input , b_input => b_input , sum => sum0 , cout => cout0);
FA1 : half_adder
port map (a_input => cin , b_input => sum0 , sum => sum , cout => cout1);
end full_adder_bhv;
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity Counter_VHDL is
Reset: in std_logic;
Updown: in std_logic;
end Counter_VHDL;
begin
process(Clock,Reset)
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
begin
if Reset='1' then
a <= "0000";
if Updown='0' then
a <= a + 1;
else
a <= a - 1;
end if;
end if;
end process;
Output <= a;
end Behavioral;
Library ieee;
Use ieee.std_logic_1164.all;
Entity shift4 is
end shift4;
begin
process (clock)
begin
end if;
end process;
Q <= sreg;
End behavior;
D. Pengenalan Quartus
Software Quartus merupakan salah satu program untuk melakukan proses synthesis dan implementasi
desain rangkaian yang telah dibuat dalam VHDL, menjadi file konfigurasi FPGA (*.vhd). Dalam praktikum ini
digunakan Quartus II version 12.1.
Sintesis HDL merupakan proses pembangunan rangkaian secara skematik yang tersusun atas gerbang
logika atau komponen lain dari suatu rangkaian yang telah dibuat menggunakan bahasa VHDL. Sintesis rangkaian
bertujuan untuk memperlihakan bagaimana bentuk rancangan secara skematik dari suatu scipt VHDL.
Setelah script disintesis, barulah rangkaian ini dapat diload ke kit FPGA. Tahapannya dimulai dari perutean
pin – pin pada FPGA yang dihubungkan dengan rangkaian digital yang telah dibuat, lalu dilakukan inisiasi tipe FPGA
yang dipakai, setelah itu barulah dilakukan load rangkaian digital ke FPGA.
a. Interface Software Quartus
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
b. Penggunaan Software Quartus
1. Membuat project baru
a) Buat project baru dengan memilih file > New Project Wizard.
b) Klik Next.
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
c) Pilih tempat penyimpanan project yang ingin dibuat dan tentukan nama project yang ingin dibuat, lalu
klik Next.
d) Klik Next.
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
e) Pilih Cyclone II pada sub menu device family lalu pada sub menu target device pilih Specific device
selected in ‘Available device’ list, kemudian pilih device dengan nama EP2C20F484C7 setelah itu klik
Next.
f) Klik Next.
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
g) Klik Finish.
b) Cari tool pada bagian atas interface software Quartus, lalu klik tool tersebut.
b) Pada bagian library cari sub library work lalu pilih entity file yang sama dengan program sintesis
rangkaian yang dibuat.
c) Pada bagian object pilih semua variable yang ada pada rangkaian untuk dimasukkan ke jendela
simulasi.
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
d) Buka jendela simulasi.
e) Pada variable input masukkan nilai yang diinginkan dan ubah selang waktu yang dibutuhkan sesuai
keinginan.
F. Contoh Program
a. FULL SUBSTRACTOR
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
entity FullSubs is
Port ( Borin : in STD_LOGIC;
A : in STD_LOGIC;
B : in STD_LOGIC;
D : out STD_LOGIC;
Borout : out STD_LOGIC);
end FullSubs;
component HalfSubs is
port (a_input : in STD_LOGIC;
b_input : in STD_LOGIC;
bor : out STD_LOGIC;
diff : out STD_LOGIC);
end component HalfSubs;
begin
FA0 : HalfSubs
port map (a_input => A, b_input => B, bor => b0, diff => d0);
FA1 : HalfSubs
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
port map (a_input => Borin, b_input => d0, bor => b1, diff => D);
Borout <= b0 or b1;
end Behavioral;
b. HALF SUBSTRACTOR
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
entity HalfSubs is
Port ( a_input : in STD_LOGIC;
b_input : in STD_LOGIC;
bor : out STD_LOGIC;
diff : out STD_LOGIC);
end HalfSubs;
begin
bor<= (not(b_input)) and a_input ;
diff<= a_input xor b_input;
end Behavioral;
c. MULTIPLIER
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
entity Multiply is
Port ( A0 : in STD_LOGIC;
A1 : in STD_LOGIC;
B0 : in STD_LOGIC;
B1 : in STD_LOGIC;
C0 : out STD_LOGIC;
C1 : out STD_LOGIC;
C2 : out STD_LOGIC;
C3 : out STD_LOGIC);
end Multiply;
begin
C0 <= A0 and B0;
C1 <= (A0 and B1) xor (A1 and B0);
C2 <= ((A0 and B1) and (A1 and B0)) xor (A1 and B1);
C3 <= ((A0 and B1) and (A1 and B0)) and (A1 and B1);
end Behavioral;
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
MODUL IV
A. Tujuan Praktikum
a. Dapat memahami arsitektur FPGA.
b. Memperkenalkan FPGA untuk implementasi rangkaian digital yang didesain menggunakan VHDL.
c. Melakukan proses sintesis rangkaian digital menggunakan software Quartus.
B. Peralatan Praktikum
a. Personal Computer
b. Software Quartus II version 12.1
c. Board DE 1 FPGA
Arithmatic Logical Unit (ALU) adalah salah satu bagian/ komponen dalam sistem di dalam sisitem
computer yang berfungsi melakukan operasi/ perhitungan aritmatika dan logika, contoh operasi aritmatika adalah
operasi penjumlahan dan pengurangan, sedangkan contoh operasi logika adalah logika AND dan OR. ALU bekerja
bersama – sama memori, dimana hasil dari perhitungan di dalam ALU disimpan ke dalam memori.
Perhitungan dalam ALU menggunakan kode biner yang merepresentasikan instruksi yang akan dieksekusi
(opcode) dan data yang diolah (operand). ALU biasanya menggunakan sistem bilangan biner two’s complement.
ALU mendapat data dari register. Kemudian data tersebut diproses dan hasilnya akan disimpan dalam register
tersendiri yaitu ALU output register, sebelum disimpan dalam memori.
Pada saat sekarang ini sebuah chip/ IC dapat mempunyai beberapa ALU sekaligus yang memungkinkan
untuk melakukan kalkulasi secara paralel. Salah satu chip ALU yang sederhana (terdiri dari 1 buah ALU) adalah IC
74LS382/ HC 382ALU (TTL). IC ini terdiri dari 20 kaki dan beroperasi dengan 4 x 2 pin data input (pin A dan pin B)
dengan 4 pin keluaran (pin F).
Arithmatic Logical Unit (ALU), fungsi unit ini adalah untuk melakukan suatu proses data yang berbentuk
angka dan logika, seperti data matematika dan statistika. ALU terdiri dari register – register untuk menyimpan
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
informasi. Tugas utama dari ALU adalah melakukan perhitungan aritmatika (matematika) yang terjadi sesuai
dengan instruksi program. Rangkaian pada ALU yang digunakan untuk menjumlahkan bilangan dinamakan dengan
adder. Adder digunakan untuk memproses operasi aritmatika, adder juga disebut rangkaian kombinasional
aritmatika.
Fungsi – fungsi yang didefinisikan pada ALU adalah add (penjumlahan), addu (penjumlahan tidak
bertanda), sub (pengurangan), subu (pengurangan tidak bertanda), and, or, xor, sll (shift left logical), srl (shift right
logical), sra (shift right arithmetic), dan lain – lain.
D. Control Unit
Pada computer modern, bagian pengendali adalah unit kendali (control unit) yang berfungsi mengatur
seluruh jalannya komponen. Pada setiap tahap atau siklus tidak semua komponen aktif. Semuanya ditentukan
oleh keluaran dari bagian pengendali/ pengurut ini. Keluaran kendali lebarnya 12 bit, yang masing – masing bit-
nya mengendalikan seluruh register dalam sebuah computer. Setiap tahap dari T1 sampai T6, pengendali
mengeluarkan sinyal kendali sebanyak 6 buah. Sinyal kendali yang keluar dari pengendali/ pengurut dinamakan
mikro instruksi.
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
Diantara ke-12 jalur kendali terdapat jalur yang aktif high dan ada juga yang aktif low. Jalur yang aktif low
ditandai dengan garis diatas nama jalurnya, jalur tersebut akan aktif jika nilainya = 0. Sementara jalur yang aktif
high akan aktif jika nilainya = 1.
Keluaran register pengendali/ pengurut tergantung 4 bit kode operasi (opcode) dari register instruksi.
Setiap instruksi memiliki kode operasi yang berbeda – beda, seperti yang telah dijelaskan sebelumnya. Lebih jauh
lagi bagaimanakah kode operasi diproses oleh pengendali/ pengurut sehingga menghasilkan 12 bit mikro instruksi.
Kita bisa perhatikan lebih detail lagi.
Pencacah Presettable
Pencacah presettable akan mencacah dari 0000 sampai dengan 0011. Selanjutnya tergantung
dari kode operasi yang masuk dari ROM alamat. Jika instruksinya LDA maka nilai pencacah berikutnya
adalah 0011, jika instruksinya OUT maka nilai pencacah berikutnya 1100.
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
ROM Kendali 16 x 12
Mikro instruksi adalah isi ROM kendali 16 x 12 yang lebarnya 12 bit. Makro instruksi adalah
instruksi dalam bahasa assembly seperti LDA, ADD, SUB, dan OUT sering juga disebut Mnemonik, secara
singkat instruksi SAP-1 :
Mikroprogram adalah program yang disimpan dalam ROM kendali. Isi (CON) merupakan mikroprogram
yang secara permanen disimpan dalam ROM kendali.
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
E. Field Programmable Gate Array (FPGA)
Field Programmable Gate Array (FPGA) merupakan suatu Integrated Circuit (IC) yang dibuat agar dapat
deprogram sesuai dengan kebutuhan pengguna. Untuk memprogram FPGA umumnya menggunakan Hardware
description language (HDL). Di dalam FPGA terdapat komponen-komponen logika yang disebut “logic blocks”
dan blok-blok tersebut dapat deprogram menjadi suatu rangkaian sesuai dengan kebutuhan pengguna. FPGA
memiliki kemampuan untuk deprogram ulang kembali, seperti breadboard yang terdapat dalam satu chip. Blok-
blok logika dapat dikonfigurasi untuk melakukan fungsi- fungsi kombinasi komplek atau gerbang-gerbang logika,
seperti AND dan OR.Pada sebagian besar FPGA, blok-blok logika juga memuat elemen-elemen memory, seperti
flip-flop atau yang lebih kompleks.
Perkembangan FPGA pada saat ini berlangsung dengan cepat dan dewasa ini terdapat bermacam-
macam keluarga FPGA dengan kebutuhan perancangan dan perangkat perancangan (design tools) yang
berbeda. Untuk mempermudah pengguna, FPGA tidak hanya dapat deprogram dengan menggunakan
HDL. Desain schematic memungkinkan FPGA dapat diprogram oleh pengguna yang kesulitan
meggunakan HDL. Untuk menyedehanakan desain dari fungsi komplek, disediakan beberapa library.
Setiap vendor memiliki arsitektur FPGA yang berbeda-beda namun secara umum arsitektur
bagian dalam dari IC FPGA terdiri atas tiga elemen utama yaitu Input/Output Block ( IOB), Configurable Logic
Block (CLB) dan Interkoneksi.
1. Configurable Logic Block (CLB)
CLB adalah tempat logika terprogram pada FPGA. Beberapa komponen yang terdapat
pada CLB diantaranya RAM, Flip-Flop, dan Multiplekser.
2. Interkoneksi
Ada beberapa jenis koneksi yang terdapat FPGA, diantaranya Short Lines, Routing, dan
Long Lines. Short Lines adalah suatu interkoneksi dimana setiap CLB dihubungkan dengan CLB
terdekat. Sedangkan untuk Routing adalah suatu interkoneksi yang terdapat jalur-jalur yang
melewati sebuah CLB sebelum menuju Matriks Switch. Fungsi Matriks Switch adalah
menghubungkan CLB yang relatif jauh. Kerugian Interkoneksi jenis ini adalah adanya delay yang
cukup besar. Dan yang terakhir adalah long lines, dimana designer menghubungkan CLB yang
cukup jauh tapi dengan delay minimum, yaitu dengan menghilangkan Matriks Switch.
3. Input/ Output Block (IOB)
Fungsi bagian ini adalah menyalurkan sinyal ke dalam switch dan mengeluarkannya
kembali. Bagian ini terdiri dari buffer input dan buffer output.
MODUL PRAKTIKUM RANGKAIAN LOGIKA
LABORATORIUM TEKNIK DIGITAL
FAKULTAS TEKNIK ELEKTRO
UNIVERSITAS TELKOM
0000001001010100010001010100101101000100010010010100011100000011
Arsitektur FPGA
e. Seluruh datasheet mengenai komponen dalam board DE1 dapat dilihat di Usermanual DE1.