Anda di halaman 1dari 6

Makalah Tugas Akhir Mata Kuliah Praktikum Perancangan Sistem Digital dan DSP

4-BIT Binary Up/Down Counter With VHDL


Frans Scifo L!F ""# $$%&

Abstrak 4-bit binary up/down counter adalah suatu rangkaian kombinasional gerbang-gerbang logika yang merepresentasikan kerja counter (penghitung) baik maju maupun mundur bilangan biner 4 bit.

I'()*D+HULU+* I'$ Latar Be,a-an. Counter merupakan suatu rangkaian gerbang-gerbang logika yang disusun sedemikian rupa sehingga menghasilkan keluaran yang berupa penghitungan , baik itu menghitung maju atau mundur dari suatu bilangan Counter sangat berguna pada suatu rangkaian elektronik, melihat !ungsinya yang sebagai penghitung Misalnya untuk keperluan timing dari alat-alat elektronik yang mutlak membutuhkan suatu counter "aik up counter maupun do#n counter sudah banyak digunakan, seperti penghitung mundur pada lampu lalu lintas dan penentuan detik, menit, dan jam pada jam digital $leh karena itu, perlu sekiranya kita memahami bagaimana kinerja dari suatu counter, sehingga kita dapat merancang up%do#n counter menggunakan &'D( code untuk kemudian mensimulasikannya I'! Tu/uan Tujuan makalah ini adalah membuat &'D( code untuk rangakain ) bit up%do#n counter kemudian mensimulasikannya

Dalam makalah ini pembahasan dibatasi pada * Sistem yang digunakan pada up%do#n counter Cara kerja dari rangkaian pada up%do#n counter II'D+S+2 T)32I !'$ Counter +angkaian dasar counter adalah !lip!lop, karena suatu !lip-!lop dapat mencacah , bit maka ) !lip-!lop dapat mencacah ) bit "ila input detak dari !lip-!lop yang kedua dikendalikan oleh output - dari !lip!lop di depannya, maka disebut pencacah asinkron, pulsa detak disalurkan beruntun dari suatu tahap ke tahap berikutnya "ila pulsa detak mencapai tiap-tiap input detak secara serentak disebut pencacah sinkron Counter dapat berupa up counter dan do#n counter .p counter merupakan counter yang menghitung maju, artinya penghitungan dari bilangan kecil ke bilangan besar +angkaian up counter dapat dilihat pada gambar berikut

4a56ar !'$ .p Counter

.ntuk tabel penghitungannya dapat dilihat pada tabel berikut* I'0 Batasan 1asa,ah

Tabel / , Tabel ) bit up counter -0 -/ -, -1 Pulsa Clock 1 1 1 1 1 1 1 1 , , 1 1 , 1 / 1 1 , , 0 1 , 1 1 ) 1 , 1 , 2 1 , , 1 3 1 , , , 4 , 1 1 1 5 , 1 1 , 6 , 1 , 1 ,1 , 1 , , ,, , , 1 1 ,/ , , 1 , ,0 , , , 1 ,) , , , , ,2 1 1 1 1 ,37mengulang8 1 1 1 , ,4

1 1 1 1 1 1 1 1 , ,

, , , , 1 1 1 1 , ,

, , 1 1 , , 1 1 , ,

, 1 , 1 , 1 , 1 , 1

5 6 ,1 ,, ,/ ,0 ,) ,2 ,37mengulang8 ,4

Sebagai catatan, keluaran yang merupakan bilangan yang dihitung baik maju maupun mundur, berupa bilangan biner !'! VHDL &'D( adalah kependekan dari &ery 'igh Speed :ntegrated Circuit 'ard#are Description (anguage, digunakan untuk memodelkan system digital Struktur dasar dari &'D( code terdiri dari library, entity, dan architecture (ibrary merupakan kumpulan dari kode-kode yang sering digunakan .ntuk mendeklarasikan library, diperlukan dua baris kode dimana yang pertama berisi nama library dan lainnya adalah use klausa, seperti terlihat di ba#ah ini

Sedangkan do#n counter merupakan counter yang menghitung mundur yang berarti penghitungan dari bilangan besar ke bilangan kecil 9ambar rangkaian dari do#n counter dapat dilihat pada gambar berikut

4a56ar !'! Do#n Counter .ntuk tabel penghitungannya dapat dilihat pada tabel berikut* Tabel / / Tabel ) bit do#n counter -0 -/ -, -1 Pulsa Clock , , , , 1 , , , 1 , , , 1 , / , , 1 1 0 , 1 , , ) , 1 , 1 2 , 1 1 , 3 , 1 1 1 4

;ntity adalah da!tar dengan ketentuan tertentu dari input%output pin 7port8 dari rangkaian Penulisannya sebagai berikut

Architecture deskripsi bagaimana rangkaian ber!ungsi atau bekerja Penulisannya adalah sebagai berikut

III'LISTI*4 (2342+1 0'$ VHDL Co7e 7ari 4-6it up/7own counter (isting &'D( untuk rangkaian )-bit up%do#n counter adalah sebagai berikut* library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; en i y C!un er_"HDL is #!r $ Nu%ber& in ! ,-;

e%# 53 Nu%ber; elsi1 $L!a'34+4 an' Dire) i!n34+4- /en

e%# 53

e%# 7 1;

elsi1 $L!a'34+4 an' Dire) i!n3414- /en e%# 53 e%# 8 1;

s '_l!(i)_*e) !r$+ en' i1; en' i1; en' #r!)ess; Ou #u 53 e%#;

Cl!).& in s '_l!(i); L!a'& in s '_l!(i); Rese & in s '_l!(i); Dire) i!n& in s '_l!(i); Ou #u & !u s '_l!(i)_*e) !r$+ ! ,- -; en' C!un er_"HDL; ar)/i e) ure 0e/a*i!ral C!un er_"HDL is si(nal ! ,-; !1

en' 0e/a*i!ral;

e%#& s '_l!(i)_*e) !r$+

be(in #r!)ess$Cl!).2Rese be(in i1 Rese 3414 /en e%# 53 6++++6; elsi1 $ Cl!).4e*en an' Cl!).3414- /en i1 L!a'3414 /en

IV' +*+LIS+ D+* ()1B+H+S+* 4'$ (en/e,asan (ro.ra5 Program ini, bertujuan untuk memberikan keluaran berupa up counter atau do#n counter Penentuan keluaran berupa up counter atau do#n counter ditentukan dengan suatu seleksi (ebih jelasnya sebagai berikut Pada entity ditentukan input ouput, yaitu untuk inputnya adalah number, clock, load, reset, dan direction Sedangkan keluarannya adalah output Pada bagian architecture menentukan bagaimana rangkaian bekerja Di situ ditentukan, apabila masukan reset berlogika <,=, maka program akan memberikan keluaran <1111= Kemudian untuk masukan load, apabila berlogika <,=, maka keluarannya akan sama dengan masukan number Di sini kita dapat menentukan a#al dari proses perhitungan atau dengan kata lain perhitungan dimulai dari bilangan biner yang ditunjukkan pada masukan number .ntuk menghasilkan keluaran berupa counter, masukan load harus diset <1= Di sini disediakan pilihan dimana keluaran berupa up counter atau do#n counter Apabila keluaran yang diinginkan adalah up counter, maka masukan direction juga diset <1= Sedangkan apabila keluaran yang diinginkan adalah do#n counter, maka direction diset=,= Sedangkan untuk menghasilkan proses up counter, kita cukup menambahkan keluaran dengan <,= secara berulang sehingga dihasilkan keluaran yang lebih besar satu dari keluaran sebelumnya atau bisa disebut keluaran menghitung naik Sebaliknya, untuk menghasilkan proses do#n counter, cukup dengan mengurangi keluaran dengan <,= Dengan demikian keluaran akan lebih kecil satu dari keluaran sebelumnya Apabila hal ini terjadi terus

menerus maka dapat dikatakan keluaran menghitung mundur

bah#a

4'! Hasi, Si5u,asi Setelah dilakukan simulasi dengan program ModelSim, didapatkan keluaran dari program yang diperlihatkan oleh gambar berikut

4a56ar 4'$ 'asil Simulasi Pada gambar terlihat, pertama-tama a#al perhitungan dimulai dari <1= Karena load diset <1= dan direction diset <,=, maka keluaran berupa do#n counter Kemudian saat load <,= dan number <0=, perhitungan dimulai dari 0 dengan keluaran tetap do#n counter Setelah itu saat perhitungan sampai <1=, direction diset <,=, sehingga keluaran berupa up counter yang menghitung maju dari <1= Pada gambar juga dapat dilihat apabila masukan reset berlogika <,=, maka keluaran akan <1= Dengan demikian, hasil simulasi ini sudah sesuai dengan isi program yang

memberikan keluaran berupa up counter maupun do#n counter

>/? Pedroni, &olnei A !ircuit Design "ith #$D% (ondon * T(Be"$$KModul Praktikum Teknik Digital /115 >0? http*%%en #ikibooks org%#iki %&'D(C!orCBP9ACDesign >)? ModelSim-Tutorial pd!

V'()*UTU( 8'$ 9esi5pu,an Dari analisa percobaan di atas maka dapat disimpulkan * , .p counter merupakan yang rangkaian memberikan BI342+FI ()*ULIS Frans Scifo (ahir di @akarta, pada tanggal /, @uni ,661 Penulis mengikuti pendidikan SD, SMP dan SMA di @akarta Saat ini sedang menuntut ilmu di Teknik ;lektro .ndip konsenterasi ;lektronika dan Telekomunikasi kombinasional bilangan biner / Do#n counter merupakan yang rangkaian memberikan kombinasional

keluaran berupa penghitungan maju suatu

keluaran berupa penghitungan mundur suatu bilangan biner 0 &'D( dapat digunakan untuk memodelkan rangkaian ) bit up%do#n counter dengan memberikan keluaran yang sama dengan keluaran pada rangkaian tersebut

Semarang,

@uni /1,/

Menyetujui, D+FT+2 (UST+9+ >,? Tocci,+onald @ ,66, Digital Systems : principles and pplications Ae# @ersey *Prentice 'all Aanang Trisnadik (/B 115 136 Koordinator Asisten

Anda mungkin juga menyukai