- Dasar Teori
Rangkaian Logika terbagi menjadi dua kelompok yaitu
rangkaian logika kombinasional dan rangkaian sekuensial. Rangkaian logika
kombinasional adalah rangkaian yang kondisi keluarannya (output) dipengaruhi
oleh kondisi masukan (input). Rangkaian logika sekuensial 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.
Rangkaian yang termasuk rangkaian logika kombinasional
yaitu Dekoder, Enkoder, Multiplekser, Demultiplekser. Pada rangkaian-rangkaian
itu terlihat bahwa kondisi keluaran hanya dipengaruhi oleh kondisi masukan pada
saat itu. Adapun contoh rangkaian yang termasuk rangkaian sekuensial yaitu
flip-flop, counter, dan register.
Flip-flop adalah rangkaian utama dalam
logika sekuensial. Counter, register serta rangkaian sekuensial lain disusun
dengan menggunakan flip-flop sebagai komponen utama. Flip-flop adalah rangkaian
yang mempunyai fungsi pengingat (memory). Artinya rangkaian ini mampu melakukan
proses penyimpanan data sesuai dengan kombinasi masukan yang diberikan
kepadanya. Data yang tersimpan itu dapat dikeluarkan sesuai dengan kombinasi
masukan yang diberikan.
Ada beberapa macam flip-flop yang akan dibahas, yaitu
flip-flop R-S, flip-flop J-K, dan flip-flop D. Sebagai tambahan akan dibahas
pula masalah pemicuan yang akan mengaktifkan kerja flip-flop.
Hubungan input-output ideal yang dapat
terjadi pada flip-flop adalah:
- Set, yaitu jika suatu kondisi masukan mengakibatkan keluaran (Q) bernilai logika positif (1) saat dipicu, apapun kondisi sebelumnya.
- Reset, yaitu jika suatu kondisi masukan mengakibatkan keluaran (Q) bernilai logika negatif (0) saat dipicu, apapun kondisi sebelumnya.
- Tetap, yaitu jika suatu kondisi masukan mengakibatkan keluaran (Q) tidak berubah dari kondisi sebelumnya saat dipicu.
- Toggle, yaitu jika suatu kondisi masukan mengakibatkan logika keluaran (Q) berkebalikan dari kondisi sebelumnya saat dipicu.
Secara ideal berdasar perancangan kondisi
keluaran Q’ selalu berkebalikan dari kondisi keluaran Q.
- Pemicuan Flip-Flop
Pada flip-flop untuk menyerempakkan
masukan yang diberikan pada kedua masukannya maka diperlukan sebuah clock untuk
memungkinkan hal itu terjadi. Clock yang dimaksud di sini adalah sinyal pulsa
yang beberapa kondisinya dapat digunakan untuk memicu flip-flop untuk bekerja.
Ada beberapa kondisi clock yang biasa digunakan untuk menyerempakkan kerja
flip-flop yaitu :
- Tepi naik : yaitu saat perubahan sinyal clock dari logika rendah (0) ke logika tinggi.
- Tepi turun : yaitu saat perubahan sinyal clock dari logika tinggi (1) ke logika rendah (0).
- Logika tinggi : yaitu saat sinyal clock berada dalam logika 1.
- Logika rendah : yaitu saat sinyal clock berada dalam logika 0.
Gambar 3.1. Kondisi Pemicuan Clock
Gambar 3.2. Simbol-simbol Pemicuan
Selanjutnya cara pengujian pemicuan suatu
flip-flop akan dijelaskan dalam Tabel 3.2. Pada tabel tersebut, kita gunakan
penerapan logika positif. Kondisi Clock High, yaitu saat clock ditekan sama
artinya dengan logika 1, sedangkan saat clock dilepas sama artinya dengan
logika 0. Jika pada langkah pengujian pertama keadaan sudah sesuai dengan
tabel, pengujian dapat dihentikan, demikian seterusnya.
Tabel 3.1. Pengujian
Pemicuan Clock
Langkah Pengujian
|
Clock
|
Input
|
Output
|
Jenis Pemicuan
|
1.
|
1
|
Diubah-ubah
|
Berubah
|
Logika Tinggi
|
2.
|
0
|
Diubah-ubah
|
Berubah
|
Logika rendah
|
3.
|
0
|
Diubah-ubah
|
Tetap
|
Tepi naik
|
0 ke 1
(ditekan)
|
Diubah-ubah
|
Berubah
|
||
1
|
Diubah-ubah
|
Tetap
|
||
4.
|
1
|
Diubah-ubah
|
Tetap
|
Tepi turun
|
1 ke 0
(dilepas)
|
Diubah-ubah
|
Berubah
|
||
0
|
Diubah-ubah
|
Tetap
|
- Flip-Flop R-S
Flip-flop R-S adalah rangkaian dasar dari
semua jenis flip-flop yang ada. Terdapat berbagai macam rangkaian flip-flop
R-S, pada percobaan ini flip-flop R-S disusun dari empat buah gerbang NAND 2
masukan. Dua masukan flip-flop ini adalah S (set) dan R (reset), serta dua
keluarannya adalah Q dan Q’.
Kondisi keluaran akan tetap ketika kedua
masukan R dan S berlogika 0. Sedangkan pada kondisi masukan R dan S berlogika 1
maka kedua keluaran akan berlogika 1, hal ini sangat dihindari karena bila
kondisi masukan diubah menjadi berlogika 0 kondisi kelurannya tidak dapat
diprediksi (bisa 1 atau 0). Keadaan ini disebut kondisi terlarang. Selanjutnya
kondisi terlarang, pacu, dan tak tentu akan dijelaskan melalui Tabel 3.1.
Gambar 3.3. Rangkaian Percobaan Flip-Flop R-S
Tabel 3.2.a.
Kondisi terlarang, pacu, dan tak tentu, karena perubahan clock
No.
|
S
|
R
|
Clock
|
Keterangan
|
1.
|
1
|
1
|
Aktif (1)
|
Kondisi terlarang
|
2.
|
1
|
1
|
Tepi turun (Berubah dari 1 ke 0)
|
Kondisi pacu
|
3.
|
1
|
1
|
Tidak aktif (0)
|
Kondisi tak tentu
|
Tabel 3.2.b.
Kondisi terlarang, pacu, dan tak tentu, karena perubahan clock dan masukan
yang serempak
No.
|
S
|
R
|
Clock
|
Keterangan
|
1.
|
1
|
1
|
Aktif (1)
|
Kondisi terlarang
|
2.
|
0
|
0
|
Tepi turun
|
Kondisi pacu
|
3.
|
0
|
0
|
Tidak aktif (0)
|
Kondisi tak tentu
|
- Flip-flop D
Flip-flop D dapat disusun dari flip-flop
S-R atau flip-flop J-K yang masukannya saling berkebalikan. Hal ini
dimungkinkan dengan menambahkan salah satu masukannya dengan inverter agar
kedua masukan flip-flop selalu dalam kondisi berlawanan. Flip-flop ini
dinamakan dengan flip-flop data karena keluarannya selalu sama dengan masukan
yang diberikan. Saat flip-flop pada keadaan aktif, masukan akan diteruskan ke
saluran keluaran.
Gambar 3.4. Contoh rangkaian Flip-flop D (Picu
logika tinggi)
- Flip-flop J-K
Flip-flop J-K merupakan penyempurnaan dari flip-flop
R-S terutama untuk mengatasi masalah osilasi, yaitu dengan adanya umpan balik,
serta masalah kondisi terlarang seperti yang telah dijelaskan di atas, yaitu
pada kondisi masukan J dan K berlogika 1 yang akan membuat kondisi keluaran
menjadi berlawanan dengan kondisi keluaran sebelumnya atau dikenal dengan
istilah toggle. Sementara untuk keluaran berdasarkan kondisi-kondisi
masukan yang lain semua sama dengan flip-flop R-S.
Gambar 3.5. Flip-flop J-K
- Register
Register merupakan sekelompok flip-flop yang dapat
menyimpan informasi biner 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 reigster. Sedangkan
untuk operasi seri, diterapkan secara sequential bit demi bit sampai semua tingkat
register terpenuhi.
Ada empat tipe register :
- Serial In – Serial Out
- Paralel In – Paralel Out
- Serial In – Paralel Out
- Paralel In – Serial Out
- Register Serial In – Serial Out
Pada Register Serial In – Serial Out,
jalur masuk data berjumlah satu dan jalur keluarannya juga berjumlah satu. Pada
jenis register ini data mengalami pergeseran, flip-flop pertama menerima
masukan dari input, sedangkan flip-flop kedua menerima masukan dari flip-flop
pertama, dan seterusnya.
Gambar 5.2. Rangkaian Register
Serial In – Serial Out
- Register Paralel In – Paralel Out
Register Paralel In – Paralel Out
mempunyai jalur masukan dan keluaran sesuai dengan jumlah flip-flop yang
menyusunnya. Pada register jenis ini, data masuk dan keluar secara serentak.
Dan hanya membutuhkan satu kali picu.
Gambar 5.3. Rangkaian Register
Paralel In – Paralel Out
- Register Serial In – Paralel Out
Register serial In – Paralel Out mempunyai
satu saluran masukan dan saluran keluaran sejumlah flip-flop yang menyusunnya.
Data masuk satu-persatu (secara serial) dan dikeluarkan secara serentak.
Pengeluaran data dikendalikan oleh sebuah sinyal kontrol. Selama sinyal kontrol
tidak diberikan, data akan tetap tersimpan dalam register.
Gambar 5.4. Rangkaian Register
serial In – Paralel Out
- Register Paralel In – Serial Out
Register Paralel In – Serial Out mempunyai
jalur masukan sesuai dengan jumlah flip-flop yang menyusunnya, dan hanya
mempunyai satu jalur keluaran. Data masuk ke dalam register secara serentak
dengan dikendalikan sinyal kontrol, sedangkan data keluar satu-persatu (secara
serial).
Gambar 5.5. Rangkaian Register
Paralel In – Serial Out
BAB II
COUNTER
- Dasar Teori
Counter juga disebut pencacah atau
penghitung yaitu rangkaian logika sekuensial yang digunakan untuk menghitung
jumlah pulsa yang diberikan pada bagian masukan. Counter digunakan untuk berbagai operasi
aritmatika, pembagi frekuensi, penghitung jarak (odometer), penghitung
kecepatan (spedometer), yang pengembangannya digunakan luas dalam aplikasi
perhitungan pada instrumen ilmiah, kontrol industri, komputer, perlengkapan
komunikasi, dan sebagainya .
Counter tersusun atas sederetan flip-flop
yang dimanipulasi sedemikian rupa dengan menggunakan peta Karnough sehingga
pulsa yang masuk dapat dihitung sesuai rancangan. Dalam perancangannya counter dapat tersusun atas semua jenis
flip-flop, tergantung karakteristik masing-masing flip-flop tersebut.
Secara global counter terbagi atas 2 jenis, yaitu: Syncronus
Counter dan Asyncronous counter. Perbedaan kedua jenis counter ini adalah pada pemicuannya. Pada
Syncronous counter pemicuan flip-flop dilakukan serentak (dipicu oleh
satu sumber clock) susunan flip-flopnya paralel. Sedangkan pada Asyncronous counter, minimal ada salah satu flip-flop
yang clock-nya dipicu oleh keluaran flip-flop lain atau dari sumber clock lain,
dan susunan flip-flopnya seri. Dengan memanipulasi koneksi flip-flop
berdasarkan peta karnough atau timing diagram dapat dihasilkan counter acak, shift
counter (counter sebagai fungsi register) atau juga up-down
counter.
- Asyncronous counter
Seperti tersebut pada bagian sebelumnya Asyncronous counter tersusun atas flip-flop yang
dihubungkan seri dan pemicuannya tergantung dari flip-flop sebelumnya, kemudian
menjalar sampai flip-flop MSB-nya. Karena itulah Asyncronous counter sering disebut juga sebagai ripple-through
counter.
- Syncronous Counter
Syncronous counter memiliki pemicuan dari sumber clock
yang sama dan susunan flip-flopnya adalah paralel. Dalam Syncronous counter ini sendiri terdapat perbedaan
penempatan atau manipulasi gerbang dasarnya yang menyebabkan perbadaan waktu
tunda yang di sebut carry propagation delay.
Penerapan counter dalam aplikasinya adalah
berupa chip IC baik IC TTL, maupun CMOS, antara lain adalah: (TTL) 7490, 7493,
74190, 74191, 74192, 74193, (CMOS) 4017,4029,4042,dan lain-lain.
- Counter Sebagai Pembagi Frekuensi
Counter sebagai pembagi frekuensi
merupakan salah satu aplikasi dari counter. Dalam rangkaian ini, frekuensi
keluaran suatu flip-flop merupakan setengah frekuensi masukannya. Untuk lebih
jelasnya, dapat diamati dalam diagram waktu di bawah ini.
Gambar 4.1. Diagram Waktu Asyncronous Counter 2
bit
Pada gambar tersebut dapat dilihat
frekuensi masukan FF1 (berasal dari clock) dua kali lipat frekuensi Q1.
- Perancangan Counter
Perancangan counter dapat dibagi menjadi
2, yaitu dengan menggunakan peta Karnough, dan dengan diagram waktu. Berikut
ini akan dijelaskan langkah-langkah dalam merancang suatu counter.
- Perancangan Counter Menggunakan Peta Karnough
Umumnya perancangan dengan peta karnough
ini digunakan dalam merancang syncronous counter. Langkah-langkah perancangannya:
- Dengan mengetahui urutan keluaran counter yang akan dirancang, kita tentukan masukan masing-masing flip-flop untuk setiap kondisi keluaran, dengan menggunakan tabel kebalikan.
- Cari fungsi boolean masing-masing masukan flip-flop dengan menggunakan peta Karnough. Usahakan untuk mendapatkan fungsi yang sesederhana mungkin, agar rangkaian counter menjadi sederhana.
- Buat rangkaian counter, dengan fungsi masukan flip-flop yang telah ditentukan. Pada umumnya digunakan gerbang-gerbang logika untuk membentuk fungsi tersebut.
- Perancangan Counter Menggunakan Diagram Waktu
Umumnya perancangan dengan diagram waktu
digunakan dalam merancang asyncronous counter, karena kita dapat mengamati dan
menentukan sumber pemicuan suatu flip-flop dari flip-flop lainnya. Adapun
langkah-langkah perancangannya:
- Menggambarkan diagram waktu clock, tentukan jenis pemicuan yang digunakan, dan keluaran masing-masing flip-flop yang kita inginkan. Untuk n kondisi keluaran, terdapat n jumlah pulsa clock.
- Dengan melihat keluaran masing-masing flip-flop sebelum dan sesudah clock aktif (Qn dan Qn+1), tentukan fungsi masukan flip-flop dengan menggunakan tabel kebalikan.
- Menggambarkan fungsi masukan tersebut pada diagram waktu yang sama.
- Sederhanakan fungsi masukan yang telah diperoleh sebelumnya, dengan melihat kondisi logika dan kondisi keluaran flip-flop. Untuk flip-flop R-S dan J-K kondisi don’t care (x) dapat dianggap sama dengan 0 atau 1.
- Tentukan (minimal satu) flip-flop yang dipicu oleh keluaran flip-flop lain. Hal ini dapat dilakukan dengan mengamati perubahan keluaran suatu flip-flop setiap perubahan keluaran flip-flop lain, sesuai dengan jenis pemicuannya.
- Buat rangkaian counter, dengan fungsi masukan flip-flop yang telah ditentukan. Pada umumnya digunakan gerbang-gerbang logika untuk membentuk fungsi tersebut.