register dan counter - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_counter-dan-register.pdf ·...

29
www.st3telkom.ac.id REGISTER DAN COUNTER

Upload: nguyentuyen

Post on 31-Aug-2018

451 views

Category:

Documents


35 download

TRANSCRIPT

Page 1: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

www.st3telkom.ac.id

REGISTER DAN COUNTER

Page 2: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Register

• Register adalah rangkaian yang tersusun dari satu

atau beberapa flip-flop yang digabungkan menjadi

satu.

• Flip-Flop disebut juga sebagai register 1 bit.

• Jadi untuk menyimpan 4 bit data, register harus

terdiri dari 4 buah flip-flop.

• Register selain digunakan sebagai penyimpan data,

juga sering digunakan sebagai Counter dan operasi

bilangan.

Page 3: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Untuk menyimpan data pada register, dapat dilakukan dengan duacara :

1. Disimpan secara sejajar (Parallel In) :

Pada cara ini semua bagian register atau masing-masing flip-flop di isi (dipicu) pada saat yang bersamaan.

2. Disimpan secara seri (Serial In) :

Pada cara ini, data dimasukkan bit demi bit mulai dari flip-flop yang paling ujung (dapat dari kiri atau dari kanan), dandigeser sampai semuanya terisi.

Bila data digeser dari kanan kekiri disebut “Register geser kiri” (Shift Left Register), sebaliknya bila data digeser dari kirikekanan disebut “Register geser kanan” (Shift Right Register).

Page 4: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Seperti pada penyimpanan data, untukmengeluarkan data juga dapat dilakukan dengandua cara :

1. Dikeluarkan secara sejajar (Parallel Out)

2. Dikeluarkan secara seri (Serial Out)

Sehingga Register dapat dibagi atas:

1. Parallel In – Parallel Out (PIPO)

2. Serial In – Serial Out (SISO)

3. Parallel In – Serial Out (PISO)

4. Serial In – Parallel Out (SIPO)

Page 5: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Parallel In - Parallel Out (PIPO)Perhatikan gambar berikut:

A, B, C, dan D adalah sinyal masukan. Saat clock (pemicu) diaktifkan (Logika 1),maka data yang ada akan dikeluarkan secarabersamasama ke Q3, Q2, Q1, dan Q0. Saat clock kembali tidakdipicu (Logika 0), maka apapun masukannya, keluaran Q akan tetap.

Page 6: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Serial In – Serial Out (SISO)Perhatikan Gambar berikut :

Saat sinyal clock diberikan pertama kali, data dari Si masuk ke flip-flop A, pada saat clock kedua, data dari flip-flop A masuk ke flip- flop B, demikianseterusnya, sampai keluar ke So.

Jadi pada register SISO untuk membaca data pertama kali dibutuhkanjumlah clock yang sama banyak dengan jumlah flip-flop yang ada padaregister (dalam hal ini adalah empat).

Page 7: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Parallel In – Serial Out (PISO)

Page 8: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Serial In – Parallel Out (SIPO)

Page 9: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Counter

• Counter (pencacah) merupakan register yangmampu menghitung jumlah pulsa detak yangmasuk melalui masukan detakannya.

• Pencacah terdiri dari flip-flop yang diserikandimana keadaan arus keluaranya ditahan sampaiada clock .

• Pencacah dapat dibagi menjadi dua tipe, yaitu :Synchronous dan Asynchonous, dimanakeduanya dibedakan dengan bagaimana caradiclock.

Page 10: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

• Pencacah Asynchonous didisain dengan menggunakan flip-flop pada keadaan toggle.

• Flip-flop JK atau D dapat dibuat kedalam keadaantoggle.

• Flip-flop JK dapat dibuat dalam keadaan toggle dengan menghubungkan kedua input J dan K pada logika 1(high).

• Sedangkan untuk flip-flop tipe D, dapat dibuatdalam keadaan toggle dengan menghubungkankeluaran Q’ kembali ke input.

Page 11: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

• Pencacah asynchonous bekerja denganmengkaskade seri flip-flop dalam keadaan toggle secara bersamaan. Keluaran tiap-tiap flip-flop digunakan sebagai clock untuk flip-flop berikutnya secara berurutan. Hal inimenyebabkan flip-flop berubah secaraasynchonous, seperti gelombang.

• Pencacah asynchonous lebih dikenal sebagaipencacah ripple.

Page 12: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Ripple Counter

Gambar di atas memperlihatkan sebuah ripple counter (pencacah riak) yang dibangun dengan flip-flop JK. Karenamasukan J dan K terpasang pada tingkat tegangan tinggi, makasetiap flip-flop akan mengalami toggle ketika masukan detakmenerima tepi negatif pulsa.

J3Q3

K3Q3

J2Q2

K2Q2

J1Q1

K1Q1

J0Q0

K0Q0

High

CLR

Page 13: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Cara Kerja Ripple Counter

Jika CLR rendah, semua flip-flop akan direset danmenghasilkan kata digital Q3Q2Q1Q0 = 0000. Jika CLR kembalipada logika tinggi, pencacah telah siap melaksanakan operasi. Karena flip-flop paling kanan menerima pulsa detak secaralangsung, maka Q0 akan mengalami toggle sekali setiap tepinegatif pulsa detak.

CLK

Q0

Page 14: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Selanjutnya

Jika Q0 berubah dari 1 menjadi 0, maka flip-flop Q1 akanmenerima sebuah tepi negatif pulsa dan menimbulkan toggle pada keluaran Q1. Demikian selanjutnya jika sebuah flip-flop mengalami reset menjadi nol, maka akan menimbulkan toggle pada flip-flop berikutnya.

CLK

Q0

Q1

Q2

Q3

Page 15: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Controlled Ripple Counter

Sebuah pencacah riak terkendali hanya akanmencacah pulsa-pulsa detak. Sinyal COUNTmengendalikan operasi pencacah.

J3Q3

K3Q3

J2Q2

K2Q2

J1Q1

K1Q1

J0Q0

K0Q0

COUNT

Page 16: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Cara Kerja Controlled Ripple Counter

• Jika COUNT rendah, masukan J dan K akan menjadi rendah. Ini menyebabkan semua flip-flop tertahan dalam keadaansebelumnya meskipun pulsa-pulsa detak terus memasukipencacah.

• Bila COUNT tinggi, masukan J dan K ikut menjadi tinggi. Dalam hal ini pencacah akan bekerja sebagaimana telahdibahas sebelumnya, yakni setiap tepi negatif dari pulsadetak akan menambah 1 hitungan pada pencacah.

Page 17: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Synchronous Counter

Pada pencacah riak, waktu tunda propagasi total adalah ntp. Inimenyebabkan pencacah riak terlalu lambat untuk beberapapemakaian tertentu. Guna mengatasi masalah tersebut, dapatmenggunakan sebuah synchronous counter (pencacahsinkron).

J3Q3

K3Q3

J2Q2

K2Q2

J1Q1

K1Q1

J0Q0

K0Q0

CLR

Tinggi

Page 18: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Cara Kerja Synchronous Counter

• CLR yang rendah akan mereset pencacah menjadi Q = 0000.

• Ketika sinyal CLR kembali pada keadaan tinggi, pencacah siapberoperasi.

• Tepi positif dari pulsa detak yang pertama akan mengisi Q0

untuk menghasilkan Q = 0001.

• Pada saat tibanya tepi positif yang kedua, Q1 dan Q0 secaraserempak mengalami toggle dan kata keluaran menjadi Q = 0010.

• Tepi positif ketiga menaikkan cacahan menjadi Q = 0011, dst. Keuntungan dari pencacah sinkron terletak padakecepatannya.

• Pencacah ini hanya membutuhkan satu kali waktu tundapropagasi dalam menghasilkan cacahan biner yang tepatsesudah tibanya tepi sinyal detak.

Page 19: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Controlled Synchronous Counter

Pada pencacah sinkron terkendali, sinyal COUNT yang rendahmembuat semua flip-flop menjadi tidak aktif. Bila COUNTdijadikan tinggi, rangkaian akan berfungsi sebagai pencacahsinkron. Artinya, setiap tepi positif dari detak akan menaikkansatu angka cacahan.

J3Q3

K3Q3

J2Q2

K2Q2

J1Q1

K1Q1

J0Q0

K0Q0

CLR

COUNT

Page 20: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Ring Counter

Sebuah pencacah lingkar (putar) tidak mencacah denganbilangan biner tapi bekerja dengan kata-kata yang hanyamemiliki satu bit tinggi. Pencacah ini berguna untukmengendalikan suatu deretan operasi, karena kita dapatmengaktifkan pada setiap saat hanya satu di antara beberapapiranti yang ada.

D3Q3 D2Q2 D1Q1 D0Q0

CLR

PR

CLRCLRCLR

Page 21: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Cara Kerja Ring Counter

• Jika CLR rendah dan kemudian menjadi tinggi lagi, makakata keluaran pertama adalah Q = 0001.

• Tepi pulsa detak yang pertama menggeser bit paling kiri(MSB) ke dalam posisi paling kanan (LSB). Bit-bit yang lain bergeser ke kiri satu posisi sehingga keluaran menjadi Q = 0010.

• Tepi positif yang kedua menyebabkan operasi pemutaran kekiri berikutnya, sehingga keluaran menjadi Q = 0100.

• Demikian seterusnya hingga tepi positif ke empat memulaisiklus yang sama, karena pemutaran ke kiri menghasilkan0001.

Page 22: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Mod-10 Counter

Sebuah pencacah modulus-10 mencacah dari0000 hingga 1001. Pada pulsa detak ke sepuluh, pencacah membangkitkan sinyal CLR-nya sendiridan angka pencacahan melompat kembali ke0000. Pencacah mod-10 dikenal juga sebagairangkaian pembagi-10.

J3Q3

K3Q3

J2Q2

K2Q2

J1Q1

K1Q1

J0Q0

K0Q0

CLR

Tinggi

CLK

Page 23: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Down Counter

Sebuah pencacah turun dapat mencacah dari 1111 sampai0000. Setiap flip-flop mengalami toggle ketika bila masukansinyal detak berubah dari 1 menjadi 0. Masukan ini ekivalendengan perubahan dari 0 ke 1 pada keluaran yang tidakdikomplemen kan. Misalnya, q1 mengalami toggle bila Q0 berubah dari dari 1 menjadi 0; dan ini ekivalen dengan Q0 yang berubah dari 0 menjadi 1.

J3Q3

K3Q3

J2Q2

K2Q2

J1Q1

K1Q1

J0Q0

K0Q0

Tinggi

CLK

PRE

Page 24: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Cara Kerja Down Counter

• Mula-mula preset PRE berupa sinyal rendah danmenghasilkan kata keluaran Q = 1111.

• Pada waktu PRE menjadi tinggi, operasi akan dimulai.

Perhatikan bahwa Q0 mengalami satu kali toggle pada setiappulsa detak.

• Pulsa detak yang pertama hanya menghasilkan satu toggle negatif (perubahan dari 1 ke 0) dalam Q0 sehingga kata keluaran menjadi Q = 1110.

• Pulsa detak yang kedua menghasilkan satu toggle positifdalam Q0, dan mengakibatkan toggle satu toggle negatifpada Q1. Hasilnya adalah Q = 1101.

Page 25: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Selanjutnya

• Pada pulsa detak yang ketiga, Q0 mengalamitoggle negatif, dan Q = 1100. Pada pulsa detakyang ke-empat, Q0 mengalami toggle positif, Q1

mengalami toggle positif dan Q2 mengalami toggle negatif. Hasilnya adalah Q = 1011. Demikianseterusnya hingga Q = 0000.

• Pada pulsa detak berikutnya, seluruh flip-flop mengalami poggle positif dan menghasilkan angkacacahan Q = 1111. Selanjutnya siklus yang samaakan berulang kembali.

Page 26: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Up-Down Counter

Keluaran-keluaran flip-flop dihubungkan denganjaringan pengarah pengemudi (steering network) Sebuah sinyal kendali UP menghasilkan baikpencacahan turun maupun pencacahan naik.

J3Q3

K3Q3

J2Q2

K2Q2

J1Q1

K1Q1

J0Q0

K0Q0

CLR

Tinggi

CLK

Q2 Q2 Q1 Q1 Q0 Q0

ATAS

Page 27: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Cara Kerja Up-Down Counter

Jika sinyal UP merupakan tingkat logika rendah, Q2, Q1 dan Q0 akan disalurkan ke masukan-masukan detak, dan ini akan menghasilkanpencacahan turun.

Di pihak lain, apabila UP tinggi, Q2, Q1 dan Q0 akanmenggerakkan masukan-masukan detak danrangkaian menjadi sebuah pencacah naik.

Page 28: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Presetable Counter

Dalam sebuah presetable counter, pencacahan dapatdimulai dari bilangan yang lebih besar daripada nol. Pencacahan dimulai dari bilangan P3P2P1P0, sebuahbilangan antara 0000 dan 1111.

J3Q3

K3Q3

J2Q2

K2Q2

J1Q1

K1Q1

J0Q0

K0Q0

CLR

Tinggi

CLK

LOAD

P2P3 P1 P0

Page 29: REGISTER DAN COUNTER - …emiiryanti.dosen.st3telkom.ac.id/.../03/13-14_Counter-dan-Register.pdf · • Counter (pencacah) merupakan register yang mampu menghitung jumlah pulsa detak

Cara Kerja Presetable Counter

• Bila LOAD rendah, semua gerbang NAND memiliki keluarantinggi. Karena itu masukan preset dan clear dari semua flip-flop menjadi tak-aktif. Dalam hal ini rangkaian melakukanpencacahan naik. Masukan-masukan data dari P3 sampai P1

sama sekali tidak memberikan pengaruh karena gerbang-gerbang NAND tidak aktif.

• Pada waktu LOAD tinggi, masukan-masukan data dankomplemennya akan lolos melaluigerbang-gerbang NAND dan melakukan preset terhadap pencacah sehinggakeluarannya menjadi P3P2P1P0.

• Ketika LOAD kembali rendah, rangkaian kembali berfungsisebagai pencacah.