[Rangkaian Sekuensial] BAB V
Rangkaian Sekuesial a. Karakteristik Dasar Rangkaian Sekuensial Berdasarkan kemampuannya menyimpan data, rangkaian digital dibedakan menjadi 2 macam : 1. Rangkaian Kombinasional Pada rangkaian kombinasional, data dimasukkan pada waktu t, dan akan dikeluarkan pada waktu ti juga. Pada rangkaian kombinasional, hanya ada dua keadaan yaitu Present Input, yaitu data input yang diberikan pada saat itu dan Present Output, yaitu data yang dikeluarkan pada saat itu juga. 2. Rangkaian Sekuensial Rangkaian Sekuensial adalah rangkaian yang keadaan outputnya pada saat tertentu ditentukan oleh keadaan input saat itu, dan tergantung pada keadaan input dan output sebelumnya. Karakteristik rangkaian sekuensial adalah a. Siklus umpan balik output yang dihasilkan pada waktu ti diumpan balikkan sehingga menjadi input internal saat itu juga, bersama-sama dengan input dari luar. Hasil dari proses logika akan dikeluarkan sebagai output yang akan datang. b. Penundaan waktu keluar data. Adanya penundaan waktu keluar tersebut dimanfaatkan oleh disainer untuk menjadikan rangkaian sekuensial sebagai rangkaian pengingat atau penyimpan data. c. State (Keadaaan) Rangkaian yang mempunyai keluaran yang tidak hanya bergantung pada masukan sekarang melainkan juga pada masukan yang sebelumnya (lalu). Pada rangkaian sekuensial terdapat 3 keadaan yakni Present Input, Present Output, dan Next Output. Blok diagram perbedaan rangkaian kombinasional dan sekuensial disajikan pada gambar 5.1. d. Rangkaian Penyusun Rangkaian penyusun pada rangkaian sekuensial, minimal terdiri dari satu elemen memori. b. Latch Bistable Element Flip flop termasuk dalam rangkaian bistable karena rangkaian ini memiliki 2 keadaan stabil yaitu 0 dan 1 dan selalu berubah-ubah secara stabil. Gambar 5.1 merupakan contoh feedback rangkan sekuensial.
[Rangkaian Sekuensial] BAB V
Gambar 5.1. (a) Rangkaian Kombinasional (b) Rangkaian Sekuensial
Gambar 5.2. Rangkaian sekuensial dengan gerbang NOT Keadaan stabil dari rangkaian diatas digambarkan sebagai berikut : a. Kondisi 1 : Jika Vout1 = Vin1 bernilai 1, dan output inverter yang bawah (Vout2 = Vin1) bernilai 0, dimana output inverter Q adalah high (1). b. Kondisi 2 : Jika output Q rendah, output inverter bagian bawah Q' bernilai 1, dimana output inverter bagian atas, output Q bernilai 0. b.1 Latch Latch merupakan rangkaian sekuensial pengunci. karakteristik dari latch adalah sebagai berikut : a. flip-flop penyimpan (single - bit storage) b. perubahan output terjadi kapanpun tergantung dari perubahan input. c. Lebar pulsa yang minimum d. cepat dan murah (hanya terdiri dari transistor kecil e. Sering digunakan untuk mendesign mikroprosesor berkecepatan tinggi a. S-R Latch (Set - Reset Latch) Set-Reset Latch adalah latch yang paling sederhana, memiliki 2 input yaitu S dan R, 2 output Q dan QN, dimana QN adalah complement dari Q. QN sering diberi label π atau Q_L. Blok diagram latch terlihat pada gambar 5.3. sedangkan untuk tabel kebenaran dapat dilihat pada tabel 5.1.
[Rangkaian Sekuensial] BAB V
Gambar 5.3. S-R Latch tabel eksitasi dari S-R latch memperlihatkan bahwa pada kondisi S = 1 dan R = 1, nilai output Q dan Q' sama sehingga keadaan ini dinamakan keadaan terlarang (illegal).
S 0 0 1 1
R 0 1 0 1
Tabel 5.1. Tabel Eksitasi S-R Latch Q Q' Sifat Last Q Last Q' Ditahan 0 1 Reset 1 0 Set 0 0 Illegal
Gambar 5.2 adalah rangkaian SR Latch menggunakan gerbang NOR, dan Gambar 5.3 adalah rangkaian SR Latch menggunakan gerbang NAND.
Gambar 5.2. Rangkaian SR Latch dengan NOR
Gambar 5.3. Rangkaian SR Latch dengan NAND
[Rangkaian Sekuensial] BAB V
Gambar 5.4 menunjukkan functional behavior dari S-R latch untuk tipikal sequence input. Tanda panah berwarna pada bagian kanan menunjukkan transisi input menyebabkan adanya perubahan transisi output. Timing parameter untuk S-R Latch terlihat pada gambar 5.5. Dari diagram tersebut terlihat adanya propagation delay yakni waktu yang dibutuhkan untuk transisi dari sinyal input untuk menghasilkan transisi sinyal output. Setiap latch atau flip-flop memiliki spesifikasi propagation delay yang berbeda-beda, setiap pasang sinyal input dan output. Propagation delay mungkin akan berbeda tergantung pada output apakah berubah dari LOW ke HIGH atau HIGH ke LOW. Pada S-R Latch, transisi dari LOW ke HIGH pada S dapat menyebabkan perubahan dari LOW ke HIGH pada output Q, sehingga propagation delay tpLH(SQ) terjadi sebagaimana bagian 1. Sebagaimana perubahan dari LOW ke HIGH pada input R dapat menyebabkan perubahan dari HIGH ke LOW pada output Q, dengan propagation delay tpHL(RQ) sebagaimana pada transisi bagian 2. Transisi yang terjadi pada QN, akan terjadi propagation delay pada tpHL(SQN) dan t pLH(RQN).
Gambar 5.4. Functional Behavior dari S β R Latch secara simultan
Gambar 5.5. Timing Parameter dari S-R latch dengan enable S-R Latch With Enable Jenis lain dari SR-Latch adalah S-R Latch dengan Enable, block diagram ditunjukkan pada gambar 5.6, variabel C menunjukkan enable. Tabel kebenaran S-R Latch dengan Enable disajikan pada tabel 5.2. S-R Latch akan aktif pada saat Enable bernilai "1", sedangkan saat enable bernilai "0", maka otomatis S-R Latch tidak akan bekerja.
[Rangkaian Sekuensial] BAB V
Gambar 5.6. Blok S-R Latch with Enable
S 0 0 1 1 X
Tabel 5.2. Tabel Kebenaran S-R Latch with Enable R C Q 0 1 Last Q 1 1 0 0 1 1 1 1 1 X 0 Last Q
Q' Last Q' 1 0 1 Last Q'
Rangkaian SR Latch dengan enable terlihat pada gambar 5.7. Rangkaian ini dibangun menggunkan gerbang NAND. Timing diagram dari SR latch dengan enable pada tipical operationnya, terlihat pada gambar 5.8.
Gambar 5.7, Rangakaian S-R Latch dengan Enable
Gambar 5.8. Timing Diagram Typical Operation S-R Latch with Enable
[Rangkaian Sekuensial] BAB V
b. D - Latch Data latch adalah rangkaian sekuensial yang berfungsi untuk meneruskan atau menyimpan bit informasi sesuai dengan nilai input yang dimasukkan. Rangkaian D latch, menggunakan rangkaian S-R Latch dengan menggabungkan dan menambahkan gerbang NOT pada input D, terlihat pada gambar 5.8. Gambar 5.9 memperlihatkan blok rangkaian D latch. Tabel kebenaran D latch, terlihat pada table 5.3. Input control dari D latch diberi label C, terkadang disebut sebagai ENABLE, CLK, atau G, clock ini bekerja secara aktif low, pada beberapa desain D latch selalu membutuhkan lebar pulsa yang besarnya minimum. Sebagai contoh D latch functional behavior terlihat pada gambar 5.10. Ketika input enable C dimasukkan, output Q yang ditampilkan sesuai dengan input d yang dimasukkan. Pada keadaan ini dikatakan latch dalam kondisi terbuka dan pembentukkan D input ke output Q adalah transparan: rangkaian ini sering disebut sebagai transparan latch. Ketika C diberikan logika sebaliknya maka latch akan tertutup. Dan output Q berada pada nilai terakhir dan tidak akan berubah walaupun nilai D berubah.
Gambar 5.7. Rangkaian D Latch
Gambar 5.8. Blok Rangkaian DFF
C 1 1 0
Tabel 5.3. Tabel Kebenaran D Latch D Q 0 0 1 1 X Last Q
Q' 1 0 Last Qβ
[Rangkaian Sekuensial] BAB V
Input control dari D latch diberi label C, terkadang disebut sebagai ENABLE, CLK, atau G, clock ini bekerja secara aktif low, pada beberapa desain D latch selalu membutuhkan lebar pulsa yang besarnya minimum. Sebagai contoh D latch functional behavior terlihat pada gambar 5.9. Ketika input enable C dimasukkan, output Q yang ditampilkan sesuai dengan input d yang dimasukkan. Pada keadaan ini dikatakan latch dalam kondisi terbuka dan pembentukkan D input ke output Q adalah transparan: rangkaian ini sering disebut sebagai transparan latch. Ketika C diberikan logika sebaliknya maka latch akan tertutup. Dan output Q berada pada nilai terakhir dan tidak akan berubah walaupun nilai D berubah.
Gambar 5.9. Functional Behavior pada berbagai variasi input Timing behavior dari D latch terlihat pada gambar 5.10. Terdapat 4 parameter delay yang berbeda, yang ditunjukkan oleh sinyal propaganda dari C atau input D ke output Q. Sebagai contoh, pada transisi ke 1 dan 4, latch secara initial tertutup dan input D adalah kebalikan dari output Q, sehingga saat C adalah 1, latch dalam keadaan terbuka, dan output Q berubah setelah waktu tunggu tpLH(CQ) dan tpHL(CQ) . Pada transisi ke 2 dan 3 input C terlah bernilai 1 dan latch dalam keadaan terbuka, sehingga nilai Q secara transparent mengikuti table transisi dari D latch dengan nilai delay tpLH(DQ) dan tpHL(DQ) . Empat parameter lainnya menkhususkan waktu tunda untuk output QN dan tidak diperlihatkan. Jendela timing dimulai pada tsetup sebelum falling edge dari C, tsetup disebut sebagai setup time. Jendela timing berakhir pada waktu akhir thold setelahnya, thold disebut sebagai hold time (waktu tunda). Jika D berubah selama setup dan hold time window, output dari latch tidak dapat diprediksi dan mungkin akan menjadi metastable seperti terlihat pada gambar 5.10.
Gambar 5.10. Timing parameter dari D latch
[Rangkaian Sekuensial] BAB V
C. Clock mode, level mode dan pulse mode Clock merupakan pembangkit pulsa atau pemicu agar suatu rangkaian sekuensial sehingga terjadi perubahan keadaan output. Ada 2 jenis model pembangkit sinyal, yaitu a. Pulse Triggering Pada mode ini pulsa clock dibangkitkan selama terjadi pulsa naik atau pulsa turun. Ada 2 jenis pembangkit pulsa yakni positive pulse triggering dan negative pulse triggering. IIlustrasinya terlihat pada gambar 5.11. positive pulse triggering
ck
negative pulse triggering
ck
Gambar 5.11 ilustrasi Pulse Triggering b. Edge Triggering Pada mode ini pulsa clock dibangkitkan pada saat pulsa tepi naik atau pulsa tepi turun. Ada 2 jenis pembangkit pulsa yakni positive edge dan negative edge triggering. IIlustrasinya terlihat pada gambar 5.12. Edge Triggering (rising)
ck
Edge Triggering (falling)
ck Gambar 5.12. Ilustrasi Edge Triggering Sinyal clock dikatakan active high jika perubahan keadaan terjadi pada rising edge (untuk edge triggered device) atau pada keadaan logic 1 (untuk I pulse triggered devices). Sinyal clock dikatakan active low jika perubahan terjadi pada falling edge atau keadaan logicnya = 0. Ilustrasi active high dan active low disajikan pada gambar 5.13.
[Rangkaian Sekuensial] BAB V
(a)
(b) Gambar 5.13. (a) Timing Diagram Active high dan Active low ; (b) Flip-flop timing Periode Clock adalah waktu yang dibutuhkan untuk transisi pada arah yang sama. Frekuensi clock adalah periode clock yang berulang. Clock Tick adalah tepi pertama, atau pulsa pada periode clock. Duty Cycle adalah presentase waktu pada sebuah clock pada level assertion. Flip-flop timing dapat dikategorikan dalam beberapa tipe : a. Combinational ο· tpd, min : minimum propagation delay, input to output ο· tpd, max : maximum propagation delay, input to output b. Latch ο· tpd, min : minimum propagation delay, input to output ο· tpd, max : maximum propagation delay, input to output ο· tw : maximum pulse width, input to input c. Flip-Flop ο· tpd, min : minimum propagation delay, CLK to output ο· tpd, max : maximum propagation delay, CLK to output
[Rangkaian Sekuensial] BAB V
d. tsetup : waktu stabil, yang dibutuhkan input sebelum CLK, dari input sebelum CLK. e.
CLK a. thold setelah CLK.
: waktu stabil, yang dibutuhkan input setelah CLK, dari input
Persyaratan Waktu SETUP dan HOLD Flip-flop akan beroperasi benar jika data input stabil sesaat sebelum, selama dan sesaat setelah clock triggering ο waktu setup dan hold. Gambar 5.14 menunjukkan mekanisme Edge Triggering. Sedangkan Gambar 5.15 menunjukkan mekanisme setup dan hold untuk pulse triggering dengan sampling intervalnya tSU + th.
Gambar 5.14. Mekanisme setup dan hold pada edge triggering
Gambar 5.15. Mekanisme setup dan hold pada pulse triggering
[Rangkaian Sekuensial] BAB V
D.
FLIP-FLOP Flip-flop adalah penyusun dasar dari suatu rangkaian sekuensial, flip-flop banyak digunakan dalam memori karena berfungsi sebagai penyimpan data dan informasi dalam bentuk satu bit (single-bit storage). Karakteristik dari flip-flop sebagai berikut: a. Keadaan output berubah hanya saat terjadi perubahan sinyak clock atau pemicu. b. Menggunakan waktu tunggu / set up hold time sebelum dan sesudah pulsa clock untuk mencegah metastability. c. Pulsa clock mencegah desain proses. Macam-macam flip-flop sebagai berikut : a. D Edge Triggered Flip-Flop b. Scan Flip - Flop c. Set-Reset Flip-Flop d. Master-Slave Flip-Flop e. Data Flip-Flop f. JK Flip Flop g. JK Master-Slave Flip-flop h. Edge-triggered J-K Flip-Flop i. Togle Flip-Flop D.1.
D Edge Triggered Flip-Flop Positive Edge Triggered D Flip-Flop mengkombinasikan pasangan D latch, ouput terjadi hanya pada saat edge clock rising. Flip-flop pertama disebut sebagai master, yang terbuka dan mengikuti input saat clock = 0. Ketika Clock = 1, master D Flip-flop tertutup dan output ditransfer ke second flip-flop yang disebut slave. Flip-flop slave terbuka seluruhnya saat clock = 1, tetapi perubahan terjadi hanya diawal interval, karena master tertutup dan tidak berubah selama masa rehat dari interval. Block Diagram dan rangkaian D edge Possitive triggered terlihat pada gambar 5.16 (a) dan (b). Sedangkan untuk tabel kebenaran Positive Edge Triggered D Flip-Flop terlihat pada table 5.4. QM
(a) (b) Gambar 5.16. (a) Blok D Flip-Flop, (b) Rangkaian Positive Edge Triggered D Flip-Flop
[Rangkaian Sekuensial] BAB V
Tabel 5.4. Tabel Kebenaran Positive Edge Triggered D Flip-Flop D CLK Q Q' 0 1 X X
Edge rising Edge rising 0 1
0 1 Last Q Last Q
1 0 Last Qβ Last Qβ
Adanya segitiga pada input clock mengindikasikan sifat dari edge-triggered yang disebut sebagai dynamic input indicator. Timing diagram terlihat pada gambar 5.18.. Sinyal QM adalah output dari master latch, QM berubah pada saat CLK = 0. Ketika CLK berubah menjadi 1, nilai QM saat ini ditransfer ke Q dan QM tercegah dari perubahan hingga CLK berubah menjadi 0 kembali. Gambar 5.17 menunjukkan functional behavior dari D FlipFlop, seluruh propaganda delay diukur dari rising edge clock, sehingga hanya saat itulah terjadi perubahan output. Perubahan waktu tunda bias digambarkan dari perubahan LOW ke HIGH atau HIGH ke LOW.
Gambar 5.17. Functional Behavior Timing Diagram Positive Edge Triggered D Flip-Flop Seperti pada D latch, edge triggered D flip-flop memiliki set-up dan hold time window selama D input tidak berubah. Jendela ini terjadi selama edge triggered dari CLK. Jika setup dan hold time tidak bertemu, output flip-flop biasanya akan stabil, meskipun tidak stabil pada keadaan 0 atau 1. Pada beberapa kasus, output akan berosilasi pada keadaan metastable separuhnya diantara 0 dan 1. Hal ini terlihat pada clock terakhir. Jika flip-flop bergerak menuju keadaan metastable, flip-flop akan berubah pada keadaan stabil, hanya setelah terjadi adanya kemungkinan waktu tunda. Timing behavior dari Positive Edge Triggered D Flip-Flop. Terlihat pada gambar 5.16.
[Rangkaian Sekuensial] BAB V
Gambar 5.18. Timing bahaviour dari Positive Edge Triggered D Flip-Flop Negative Edge Triggered D Flip-Flop menginversi input clock, sehingga seluruh perubahan terjadi pada falling edge CLK_L, sehingga edge trigger bias dianggap sebagai active low. Block Diagram dan rangkaian D edge Possitive triggered terlihat pada gambar 5.19 (a) dan (b). Sedangkan untuk tabel kebenaran Negative Edge Triggered D Flip-Flop terlihat pada table 5.5.
Gambar 5.19. (a) Blok D Flip-Flop, (b) Rangkaian Negative Edge Triggered D Flip-Flop Tabel 5.5. Tabel Kebenaran Positive Edge Triggered D Flip-Flop D CLK Q Q' 0 1 X X
Edge Falling Edge Falling 0 1
0 1 Last Q Last Q
1 0 Last Qβ Last Qβ
Beberapa D flip-flop memiliki input asinkron yang digunakan untuk membuat flip-flop bekerja pada keadaaan yang independent untuk CLK dan input D. Input ini secara tipenya diberi label PR (Preset) dan CLR (Clear), yang kerjanya untuk set dan reset input pada S R latch. Block Diagram dan rangkaian D edge Possitive triggered dengan preset dan clear terlihat pada gambar 5.20 (a) dan (b).
[Rangkaian Sekuensial] BAB V
(a)
(b) Gambar 5.20. (a) Blok Edge-Triggered D Flip-flop dengan preset dan clear ,(b) Rangkaian Edge-Triggered D Flip-flop dengan preset dan clear Edge-Triggered D Flip-flop with Enable Pada edge triggered D flip-flop dengan enable, dilengkapi dengan preset dan clear. Ketika Preset diberi logika 0 maka output akan menjadi 1, sedangkan bila clear diset 0 maka output Q akan ikut menjadi 0 juga. Jika EN aktif maka external D input dipilih, dan jika EN tidak aktif, maka output flip-flop adalah current output.
J dfks
(a) (b) Gambar 5.21. (a) rangkaian dan (b) Blok Edge-Triggered D Flip-flop dengan enable Tabel kebenaran fungsi dari positive edge triggered D flip-flop dengan enable disajikan dalam table 5.6. Dari sifat dan fungsi pada table 5.6 dihasilkan rangkaian dan blok diagram flip-flop yang disajikan pada Gambar 5.21 (a) dan (b). Tabel 5.6. Tabel Kebenaran Positive Edge Triggered D Flip-Flop
[Rangkaian Sekuensial] BAB V
D
EN
0
CLK
Q
Q'
1
0
1
1
1
1
0
X
0
Last Q
Last Qβ
X
X
0
Last Q
Last Qβ
X
X
1
Last Q
Last Qβ
D.2.
Scan Flip-Flop Fungsi flip-flop yang utama untuk mencoba desain ASIC, disebut scan capability. Idenya adalah untuk mengendalikan flip-flop D dengan alternative sumber data selama terjadi percobaan alat. Ketika seluruh flip-flop dijadikan satu kedalam mode testing, pola testnya dapat discan untuk ASIC menggunakan alternative data input. Setelah pola test dimasukkan, flip-flop dikembalikan ke mode normal dan semua flip-flop diclock secara normal. Setelah satu atau lebih clock yang dimasukkan, Flip-flop kembali ke kondisi test mode dan hasil dari test dapat di scan keluar. Gambar 5.22 menunjukkan desain scan flipflop dan blok diagramnya.
(a)
(b)
Gambar 5.22 (a) Rangkaian dan (b) Blok Diagram Positive Edge Triggered D Flip-Flop dengan Scan Tabel kebenaran dari scan flip-flop disajikan pada table 5.7. Ketika input TE (test enable) dinegasikan, rangkaian bekerja seperti D flip-flop biasa. Ketika TE dimasukkan, maka ia akan mengambil data dari TI (Test Input) disamping dari D. Input ekstra ini digunakan untuk menghubungkan seluruh flip-flop ASIC pada rantai scan dengan tujuan untuk percobaan.
[Rangkaian Sekuensial] BAB V
Tabel 5.7. Tabel Kebenaran Positive Edge Triggered D Flip-Flop dengan scan TI CLK Q Q' TE D 0
X
0
0
1
0
X
1
1
0
1
0
X
0
1
1
1
X
1
0
X
X
X
0
Last Q
Last Qβ
X
X
X
1
Last Q
Last Qβ
D.3.
Set-Reset Flip-Flop Set-Reset Flip-Flop merupakan bentuk flip-flop yang paling sederhana. SRFF adalah bentuk dasar dari kebanyakan flip-flop yang ada sekarang. Gambar 5.23 (a) dan (b) adalah gambar rangkaian SRFF dengan clock manual dan blok rangkaian SRFF.
(a)
(b) Gambar 5.23. (a) Blok SRFF (b) Rangkaian SRFF
Tabel kebenaran SRFF, terlihat pada table 5.8. Dengan Qt adalah keadaan awal sebelum terjadi clock dan Qt+1 adalah keadaan akhir setelah terjadi clock. Ketika S = 0 dan R = 0, bila Q mula-mula adalah 0 maka ketika clock masuk, output yang dihasilkan Q setelah clock adalah 0. Begitu juga bila kita memasukkan input 1 pada Q, akan dikeluarkan sinyal 1, setelah dilakukan clock. Begitu seterusnya, untuk S = 1 dan R = 1 dilarang karena akan menghasilkan keadaan yang sama pada Q dan Qβ. Padahal seharusnya keduanya saling berkebalikan.
[Rangkaian Sekuensial] BAB V
Tabel 5.8. Tabel Kebenaran SRFF Output
Input S
Qt
R
0 0 0 0 1 1 1 1
Q 0 1 0 1 0 1 0 1
0 0 1 1 0 0 1 1
Qt+1 Qβ 1 0 1 0 1 0 1 0
Q 0 1 0 0 1 1 1 1
Qβ 1 0 1 1 0 0 1 1
Bila table diatas disederhanakan dalam table 5.9., maka akan terjadi :
S
Tabel 5.9. Tabel Eksitasi SRFF R Qt+1 Keterangan
0 0 1 1
0 1 0 1
Qt 0 1 ??
Tidak ada perubahan Reset Set Terlarang
D.4.
Master Slave S-R Flip-Flop Pada master slave SR Flip-flop, output tidak hanya tergantung pada nilai input pada clock falling edge, tetapi selama terjadi interval dimana C = 1 pada saat falling edge. Masuknya pulsa S saat terjadi interval maka akan mengaktifkan flip-flop master, dan saat pulsa R dimasukkan dapat meresetnya. Gambar 5.24. (a) Blok Master Slave S-R FF (b) Rangkaian Master Slave S-R FF.
(a) (b) Gambar 5.24. (a) Blok Master Slave S-R FF (b) Rangkaian Master Slave S-R FF Tabel Kebenaran Master / Slave SRFF terlihat pada table 5.10. Tabel 5.10. Tabel Kebenaran SRFF Master Slave S R C Q QN X
X
0
Last Q
Last QN
[Rangkaian Sekuensial] BAB V
0
0
Last Q
Last QN
0
1
0
1
1
0
0
1
1
1
Undef
Undef
Timing diagram SRFF master Slave terlihat pada Gambar 5.25. Pulsa pendek pada S pada selama interval terjadi dapat mengaktifkan master latch. Pulsa R dapat menon-aktifkanya. Nilai ditransfer ke output flip-flop pada saat clocknya falling edge tergantung apakah master latch dalam keadaan aktif terakhir atau dihapuskan ketika clock sama dengan 1. Pada gambar 5.24 (a), blok diagram SR master slave flip-flop tidak menggunakan dynamic input indicator, karena flip-flop tidak benar-benar diaktifkan pada edge triggered. Hal ini hanya seperti latch yang diikuti dengan input selama terjadi interval clock = 1 tetapi perubahan pada output merefleksikan nilai akhir dari latch hanya ketika clock bernilai 0. Pada blok diagram, postponed β output indicator mengindikasikan bahwa output sinyal tidak berubah hingga input enable, pada input C dinegasikan. Operasi master/slave S-R Flip-Flop tidak dapat diprediksi, jika kedua input S dan R dimasukkan pada Clock yang falling edge. Sebelum terjadi falling edge, kedua output Q dan QN master latch bernilai 1. Ketika Clock bernilai 0, output master latch berubah tidak dapat diprediksi dan sifatnya menjadi metastable. Pada waktu yang sama, latch slave terbuka dan meneruskan hasilnya ke output flip-flop.
Gambar 5.25. Timing Diagram SRFF master Salve D.5. Data Flip-Flop DFF adalah flip-flop yang merupakan pengembangan dari SRFF. Rangkaian ini dibuat untuk membuat suatu output yang sama dengan input yang telah dimasukkan. Blok Diagram
[Rangkaian Sekuensial] BAB V
dan rangkaian terlihat pada Gambar 5.26. (a) Blok DFF (b) Rangkaian DFF. Pada D Flip-flop, output akan dihasilkan dari clock Falling Edge.
(a)
(b) Gambar 5.26. (a) Blok DFF (b) Rangkaian DFF
Dengan menambahkan sebuah gerbang NAND pada input SRFF, maka kita akan mendapatkan DFF. Bagian depan dari rangkaian adalah SRFF. Ketika input D = 0 maka kondisi output gerbang 1 dan 3 akan saling berkebalikan. Bila keadaan Q awal adalah 0 maka output Q akhir akan menjadi sama dengan keadaan mula-mula. Hal ini juga berlaku untuk input D = 1, yang juga akan menghasilkan output Q sesuai dengan output pada keadaan awal. Tabel Kebenaran DFF terlihat pada table 5.11. Tabel 5.11. Tabel kebenaran DFF Output
Input Dn 0 0 1 1 D.5.
Awal Q 0 1 0 1
Akhir Q 1 0 1 0
β
Q 0 1 1 1
Qβ 1 0 0 0
JK Flip-Flop JKFF dibuat untuk mengatasi kelemahan SRFF, yaitu daerah S=R=1. Hal ini dilakukan dengna cara mengumpan balik Qβ ke gerbang 1 dan output Q ke gerbang 3. Jika input J = K = 0, dan keadaan awal Q adalah 0, maka dengan rangkaian JK ini akan dihasilkan nilai 0. Ini berarti untuk keadaan J=K=0, dihasilkan output yang berkebalikan dengan harga awal. Untuk input J = 0 dan K = 1, didapat apapun keadaan awal Qnya, ternyata menghasilkan keadaan akhir Q = 1. Tetapi bila input J = 1, K= 0 malah menghasilkan output yang bernilai 1 semua, tidak peduli nilai awal Qnya. Sedangkan untuk input J=K=1, didapat hasil yang berkebalikan dengan kkeadaan awal. Misal bila Q adalah 0, maka keadaan akhir adalah 1. Begitu pula sebaliknya, Gambar 5.27. (a) Blok JKFF (b) Rangkaian JKFF.
[Rangkaian Sekuensial] BAB V
(a)
(b) Gambar 5.27. (a) Blok JKFF (b) Rangkaian JKFF Tabel Kebenaran dari JK Flip-flop terlihat dari table 5.12. Tabel 5.12. Tabel Kebenran JKFF Input Output J
Qt
K
0 0 0 0 1 1 1 1
Q 0 1 0 1 0 1 0 1
0 0 1 1 0 0 1 1
Qt+1 Qβ 1 0 1 0 1 0 1 0
Q 0 1 0 0 1 1 1 0
Tabel eksitasi dari flip-flop JKFF terlihat pada table 5.13. Tabel 5.13. Tabel Eksitasi JKFF J K Qt+1 Keterangan 0 0 1 1 D.6
0 1 0 1
JK master Slave Flip-Flop (JKMS)
Qt 0 1 Not Qt
Tidak ada perubahan Reset Set berkebalikan
Qβ 1 0 1 1 0 0 0 1
[Rangkaian Sekuensial] BAB V
Pada rangkaian yang sesungguhnya tiap-tiap flip-flop selain dilengkapi dengan terminal input, output dan clock, juga dilengkapi dengan terminal preset (Pr) dan terminal clear (Cr), atau kadang-kadang disebut reset. Jika Pr diberi pulsa 0, maka output menjadi 1. Sedangkan bila Clear diset 0 maka output Q akan ikut menjadi 0 pula. Tabel 5.14 merupakan table hubungan antara preset (Pr), clear (Cr) dan clock (Ck) dengan output (Q).
Pr 0 0 1
Tabel 5.14. Tabel hubungan antara Pr, Cr, Ck, dan Q Cr Ck 0 1 1
1 0 1
Q 0 1 X
Tanda X diatas berarti keadaan ini mengikuti table kebenran, table kebenaran untuk JKMS sama dengan table kebenaran JKFF. Perbedaannya hanya pada saat kapan output Q berubah. Pada JKMS, Q berubah pada saat pulsa clock berubah dari 1 ke 0, atau pada saat trailing edge (pada saat pulsa turun). Rangkaian JKMS menggunakan gerbang NAND terlihat pada gambar 5.28. Blok diagram dan rangkaian JKFF master slave (menggunakan SRFF) terlihat pada gambar 5.29 (a) dan (b). Timing diagram JKMS terlihat pada gambar 5.28. Perubahan berkebalikan saat S=R=1 diperbaiki pada JKMS, dengan gate propagation delay complicate timing. Tabel Kebenaran JKMS terlihat pada table 5.15.
Gambar 5.28. Rangkaian JKMS menggunakan gerbang NAND
[Rangkaian Sekuensial] BAB V
(a)
(b) gambar 5.29 (a) Blok Diagram JKMS dan (b). Rangkaian JKMS menggunakan SRFF
J
Tabel 5.15. Tabel Kebenaran JKMS K C Q
X 0
X 0
0
0
Qβ
Last Q Last Q
Last Qβ Last Qβ
1
0
1
1
0
1
0
1
1
Last Qβ
Last Q
Gambar 5.30 menunjukkan diagram functional behavior dari J-K master slave flip-flop untuk beberapa set input. Input J dan K tidak dimasukkan pada akhir dari pulsa trigger agar output flip-flop dapat berubah kapan pun waktunya. Kemungkinan yang dapat terjadi pada output flip-flop berubah ke nilai 1 walaupun K dan not J dimasukkan pada akhir dari pulsa yang ditrigger. Sifat ini dinamakan 1s catching, hal ini terlihat pada timing diagram dibagian kedua hingga terakhir pulsa trigger
[Rangkaian Sekuensial] BAB V
Gambar 5.30. Timing diagram Flip-flop JKMS Sifat analog dari JKMS diketahui sebagai 0 catching diilustrasikan pada pulsa terakhir dari timing diagram. Karena pada sifat ini, input J dan K dari J-K master/slave flip-flop harus dilakukan secara pasti selama interval Clock = 1. D.7. Edge Triggered J-K Flip-Flop J-K Edge Triggered Flip-flop menggunakan edge triggered D flip-flop secara internal memiliki input dan rising edge sebagai clock, dan menghasilkan next output sesuai dengan persamaan karakteristik Q = J.Qβ + Kβ.Q. Blok diagram dan rangkaian JKFF master slave (menggunakan SRFF) terlihat pada gambar 5.31 (a) dan (b) adalah blok diagram dan rangkaian Edge Triggered J-K Flip-Flop. Sedangkan untuk table kebenaran Edge Triggered J-K Flip-Flop terlihat pada table 5.16. Sedangkan untuk timing diagram functional behavior dari positive edge triggered J-K Flip-Flop terlihat pada gambar 5.32.
(a)
(b)
Gambar 5.31. (a) Bok diagram (b) rangkaian Edge Triggered J-K Flip-Flop
[Rangkaian Sekuensial] BAB V
J
Tabel 5.16. Tabel kebenaran Edge Triggered J-K Flip-Flop K C Q
X X 0
X X 0
0
0 1
Qβ
Last Q Last Q Last Q
Last Qβ Last Qβ Last Qβ
1
0
1
1
0
1
0
1
1
Last Qβ
Last Q
Seperti input D pada edge triggered D flip-flop, input J dan K pada JK Flip-flop bertemu pada spesifikasi set-up dan hold time, yang merespon pada clock edge trigger untuk operasi yang sesuai.
Gambar 5.32. Timing diagram Flip-flop Edge Triggered J-K Flip-Flop D.8.
T (Toggle) Flip-flop TFF merupakan pengembangan dari JKFF. Dengan menghubungan input J dan K menjadi satu maka akan didapat TFF. Pada banyak aplikasi T Flip-Flop, flip-flop akan berubah seiring dengan adanya perubahan clock. Perubahan keadaan T Flip-flop terjadi hanya jika sinyal enable EN diaktifkan. Berbagai desain TFF tersaji pada Gambar 5.33 (a),(b),(c) dan (d). Blok diagram TFF dengan enable Gambar 5.34 rangkaian TFF. Tabel kebenaran TFF terlihat pada tabel 5.17.
(a)
(b)
[Rangkaian Sekuensial] BAB V
(b)
(d)
Gambar 5.33. (a) TFF dengan DFF (b) TFF dengan JKFF (Q(t+1) = Qβ(t) ) (c) TFF dengan XOR (d) TFF dengan JKFF (Q(t+1) = T Q(t)β + Tβ Q(t))
Gambar 5.34. Rangkaian TFF Pada rangkaian T Flip-Flop yang dilengkapi dengan enable, keadaan flip-flop berubah pada edge trigger dari clock hanya jika sinyal EN dimasukkan. Input Enable, harus dispesifikasikan dengan setup dan hold time, yang merespons pada triggering clock edge. Functional behavior dari TFF terlihat pada gambar 5.35.
Gambar 5.35. Functional Behavior dari TFF
[Rangkaian Sekuensial] BAB V
Tabel 5.17. Tabel Kebenaran TFF Output
Input T
Awal Q
0 0 1 1
Akhir Qβ
0 1 0 1
1 0 1 0
Q 0 1 1 0
Qβ 0 0 0 1
Pada saat tombol preset bernilai 0 dan clearnya mengikuti nilai output saat ini maka next outputnya tidak berubah, sedangkan saat Preset bernilai 1 sedangkan clearnya adalah kebalikan dari output saat ini, maka nilai output nextnya sesuai dengan table kebenaran TFF yaitu berkebalikan dengan keadaan sebelumnya. Tabel 5.17 dapat diringkas menjadi tabel 5.18. Tabel 5.18. tabel Eksitasi TFF Pr Cr Qt+1 0 1
Qt Not Qt
Tidak berubah berkebalikan
E. Persamaan Karakteristik Persamaan karakteristik mendeskripsikan keadaan selanjutnya dari sebuah flip-flop sebagai fungsi current state (keadaan saat ini) dan input : π π‘ + 1 = π π π‘ , ππππ’π‘π Persamaan karakteristik ini diperoleh dari tabel fungsi dasar dari masing-masing tipe flipflop, dan sangat bermanfaat untuk menganalisis dan mendesain mesin keadaan (state machine). Tabel 5.19 menyajikan persamaan karakteristik bagi latch dan flip-flop. F. Rangkaian Sekuensial Sinkron dan Asinkron Rangkaian Sekuensial Sinkron adalah rangkaian sekuensial yang menggunakan flipflop (secara internal, merupakan rangkaian sekuensial tak sinkron) untuk menghasilkan suatu fungsi logika atau aplikasi lainnya yang lebih bermanfaat. Karakteristiknya adalah a. Pada rangkaian sinkron variabel keadaan dan output dari suatu sistem sinkron yang berubah berdasarkan kontrol sinyal clock. b. Minimum lebar pulsa disederhanakan dengan memulai kembali seluruh rentang pewaktuan sinyal clock yang mengaktifkan flip-flop. Sifat dari rangkaian ini adalah sinyalnya bersifat diskrit point, dan ditentukan dengan sinyal kontrol (clock).
[Rangkaian Sekuensial] BAB V
Rangkaian Sekuensial Asinkron adalah rangkaian sekuensial yang menggunakan gerbang dan loop feedback untuk mengimplementasikan memori pada rangkaian logika. Sifat dari rangkaian sekeunsial : a. Perubahan keadaan output rangkaian tergantung pada perubahan sinyal input (perubahan dapat terjadi kapan saja). b. Input asinkron untuk suatu fungsi logika, hanya untuk sistem yang state (keadaannya) telah diketahui sebelumnya.
a. b. c. d.
Model untuk merepresentasikan rangkaian sekuensial, sebagai berikut : Abstraksi dari elemen sekuensial Finite state machine dan state diagram Input / Output Mealy, Moore, dan Mesin Mealy secara Sinkron Tabel 5.19. Tabel Persamaan Karakteristik Tipe Flip-flop
Persamaan karakteristik
S-R Latch D Latch Edge β Triggered D Flip-Flop Master / Slave S-R Flip-Flop Master / Slave J-K Flip-Flop Edge β Triggered J-K Flip-Flop T Flip-Flop T Flip-Flop dengan Enable
Q(t+1) = S + Rβ Q(t) Q(t+1) = D Q(t+1) = D Q(t+1) = S + Rβ Q(t) Q(t+1) = JQ(t)β + Kβ Q(t) Q(t+1) = J Q(t)β + Kβ Q(t) Q(t+1) = Q(t)β Q(t+1) = T Q(t)β + Tβ Q(t)
G. Counter dan Register Geser Counter (Pencacah) adalah rangkaian yang mencacah pulsa tegangan, counter adalah rangkaian sekuensial yang dibentuk dari gabungan rangkaian kombinasional dan flip-flop. Pencacah dibangun menggunakan flip-flop, dimana N buah flip-flop yang dibangun menghasilkan 2 ^ N keadaan yang berbeda. Secara umum dapat dikemukakan bahwa dengan N buah FF yang disusun secara serial akan menghasilkan frekuensi keluaran pada FF terakhir sebesar FN yang dapat dituliskan sebagai berikut : 1 . πΉ0 2π πΉ0 adalah frekuensi detak masukan mula-mula, sehingga membentuk rangkaian pembagi frekuensi. Secara umum, ada 2 jenis pencacah yaitu : a. Pencacah Sinkron πΉπ =
[Rangkaian Sekuensial] BAB V
Perubahan semua output FF terjadi secara serempak sesaat setelah terjadi pulsa input. Pulsa input dimasukkan pada input clock dari setiap FF. Perubahan output dari flip-flop terjadi secara bersamaan sesaat setelah pulsa input dimasukkan. Flip-flop paling depan berkedudukan sebagai LSB, yang dikenai J dan K = 1 secara permanen. Saluran J dan K pada FF yang lain dikendalikan melalui kombinasi output FF yang sesuai. Pencacah sinkron lebih cepat karena dapat menghitung frekuensi detak yang lebih tinggi untuk selang waktu yang sama. Untuk merancang pencacah sinkron langkah-langkahnya adalah sebagai berikut : 1. Digunakan tabel transisi siklus pencacahan dan tabel eksitasi FF yang digunakan. 2. Dari kedua tabel tersebut, dibentuk tabel kebenaran untuk menentukan fungsi saluran masukan terhadap keluarannya. 3. Dibuat peta karnaughnya untuk menghasilkan Fungsi Logikanya. 4. Dari persamaan logika tersebut dapat dibuat rangkaian pencacah sinkron menggunakan flip-flop. Tabel Eksitasi JKFF terlihat pada tabel 5.20. Tabel ini digunakan untuk menentukan persamaan input dan output bagi counter. Tabel 5.20. Tabel Eksitasi JKFF ο Qn Qn+1 J K 0 0 X 0 1 1 X 0 0 X 1 1 1 X 0 1 Berikut ini cara merancang pencacah sinkron modulo 8 menggunakan 3 buah Flip-flop JK. Tabel Representasi saluran masukan (J dan K) terhadap saluran output (Q), setiap Flip-flop terlihat pada table 5.21. Tabel 5.21 Tabel Representasi Input dan Output Flip-Flop No. QA QB QC JA KA JB KB JC KC Baris 0 1 2 3 4 5 6 7
0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
0 0 0 1 X X X X
X X X X 0 0 0 1
0 1 X X 0 1 X X
X X 0 1 X X 0 1
1 X 1 X 1 X 1 X
X 1 X 1 X 1 X 1
[Rangkaian Sekuensial] BAB V
Gambar 5.36. Rangkaian Pencacah Sinkron modulo 8 Untuk menentukan JA, KA, , JB , KB , JC, KC sebagai fungsi dari variable keluaran (QA, QB, QC) dibuat berdasarkan table eksitasi JKFF. Peta karnaugh untuk masing-masing variable disajikan pada table 5.22 berikut ini : Untuk JA : Tabel 5.22 Peta Karnaugh JA QBQC
00
01
11
10
0
0
X
X
0
1
X
X
QA 0 1
π½π΄ = ππ΄ ππ΅ ππΆ + ππ΄ ππ΅ ππΆ = ππ΅ ππΆ (ππ΄ + ππ΄ ) π½π΄ = ππ΅ ππΆ Untuk KA : Tabel 5.23 Peta Karnaugh KA QBQC
00
01
11
10
X
X
0
0
X
X
1
0
QA 0 1
[Rangkaian Sekuensial] BAB V
K A = ππ΄ ππ΅ ππΆ + ππ΄ ππ΅ ππΆ = ππ΅ ππΆ (ππ΄ + ππ΄ ) K A = ππ΅ ππΆ Untuk JB dan Kb map karnaughnya terlihat pada table 5.24 dan 5.25. Tabel 5.24 Peta Karnaugh JB QBQC
00
01
11
10
0
1
X
X
0
1
X
X
QA 0 1
π½π΅ = ππ΄ ππ΅ ππΆ + ππ΄ ππ΅ ππΆ + ππ΄ ππ΅ ππΆ + ππ΄ ππ΅ ππΆ = ππ΅ ππΆ ππ΄ + ππ΄ + ππ΅ ππΆ (ππ΄ + ππ΄ ) = ππ΅ ππΆ + ππ΅ ππΆ = ππΆ ππ΅ + ππ΅ = ππΆ Untuk KB map karnaughnya terlihat pada table 5.25. Tabel 5.25 Peta Karnaugh Kb QBQC
00
01
11
10
X
X
1
0
X
X
1
0
QA 0 1
πΎπ΅ = ππ΄ ππ΅ ππΆ + ππ΄ ππ΅ ππΆ + ππ΄ ππ΅ ππΆ + ππ΄ ππ΅ ππΆ = ππ΅ ππΆ ππ΄ + ππ΄ + ππ΅ ππΆ (ππ΄ + ππ΄ ) = ππ΅ ππΆ + ππ΅ ππΆ = ππΆ Untuk JC dan KC : Tabel 5.26 Peta Karnaugh Jc QBQC
00
01
11
10
0
1
1
1
1
1
X
X
X
X
QA
Tabel 5.27 Peta Karnaugh Kc QBQC
00
01
11
10
0 1
X 1
X 1
X 1
X 1
QA
[Rangkaian Sekuensial] BAB V
Dari map karnaugh tersebut, diperoleh persamaan sebagai berikut : ο· π½π΄ = K A = ππ΅ ππΆ ο· π½π΅ = πΎπ΅ = ππΆ ο· π½πΆ = K C = 1 ( masukan LSB, π½πΆ = K C = 1 karena seluruh nilainya biasanya bernilai 1 atau X donβt care dapat di sederhanakan menjadi satu pada map karnaugh) Dari persamaan dan map karnaugh tersebut, dapat dibuat rangakaiannya sesuai dengan persamaan tersebut seperti terlihat pada gambar 5.36. Pencacah Sinkron dengan T Flip-Flop Pencacah sinkron memiliki 3 buah output yaitu Q2, Q1, dan Q0. Bit pada Q0 berubah setiap terjadi clock. Bit Q1 berubah hanya jika q0 = 1. Bit Q2 berubah hanya jika Q1 dan Q2 bernilai 1. Gambar 5.37. menunjukkan (a) rangkaian pencacah sinkron dengan T Flipflop dan (b) timing diagram rangkaian pencacah sinkron.
Gambar 5.37. (a) Circuit Pencacah Sinkron dengan T Flip-Flop (b) Timing Diagram Pencacah Sinkron dengan D Flip-Flop
[Rangkaian Sekuensial] BAB V
Sebuah pencacah sinkron 4 bit, dengan output Q3,Q2, Q1, Q0. Jika diasumsikan Enable = 1, saat input D dari flip-flop didefinisikan dengan persamaan beikut ini : π·0 = π0 = 1β¨π0 π·1 = π1 β¨π0 π·2 = π2 β¨π1 π0 π·3 = π3 β¨π2 π1 π0 Untuk pencacah yang besar dengan kondisi ke-i, dapat didefinisikan dengan : π·π = ππ β¨ππβ1 ππβ2 β¦ π1 π0 Sinyal dikontrol oleh enable sehingga counter dapat menghitung saat pulsa clock jika Enable = 1. Persamaan diatas dapat dimodifikasi untuk diimplementasikan pada rangkaian dengan persamaan berikut : π·0 = π0 β¨πΈπππππ π·1 = π1 β¨π0 . πΈπππππ π·2 = π2 β¨π1 . π0 πΈπππππ π·3 = π3 β¨π2 π1 . π0 πΈπππππ Gambar 3.58 menunjukkan rangkaian 4 bit pencacah dengan D flip-flop. Output dari gerbang XOR menghasilkan π·1 = π1 . Gerbang AND digunakan sebagai rantai carry.
Gambar 3.58. Rangkaian 4 bit Pencacah Sinkron dengan D Flip-Flop
[Rangkaian Sekuensial] BAB V
b. Pencacah Tak Sinkron Pencacah tak sinkron disebut juga pencacah serial atau pencacah riak (ripple), dimana setiap keluaran FF bertindak sebagai sinyal masukkan bagi Clock pada FF berikutnya. Output setiap FF berubah secara tak sinkron terhadap pulsa detak. Hanya FF ke 0 yang dikenai pulsa detak, output FF-1 menunggu dipicu dari FF-0. Pulsa input clock hanya dimasukkan pada FF yang terdepan (Least Sighificant Bit = LSB). Perubahan FF-1 menunggu hingga dipicu oleh FF-0. Output FF-2 menunggu dipicu oleh FF-1, demikian seterusnya. Misalkan kombinasi dari ππ΄ ππ΅ ππΆ , pada akhir pulsa ke delapan ketiga FF kembali pada keadaan 000 dan serial biner terulang dengan sendirinya untuk pulsa yang berurutan. Pencacah tersebutmengitung nilai tertinggi 111 = 7 (8 keadaan) dan selanjutnya kembali ke 0. Pencacah ini memiliki 2 3=8 keadaan yang berbeda (dari 000 s/d 111) dan dikenal sebagai pencacah modulo 8. Pencacah modulo 2N akan mampu menghitung dari nol hingga 2N β 1 sebelum kembali ke keadaan nol. Berikut ini cara merancang pencacah sinkron modulo 8 menggunakan 3 buah Flip-flop JK. Tabel Representasi saluran masukan (J dan K) terhadap saluran output (Q), setiap Flip-flop terlihat pada table 5.28. Tabel 5.28 Tabel Representasi Input dan Output Flip-Flop No. QA QB QC JA KA JB KB Baris 0 1 2 3 4 5 6 7
0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
X X X 1 X X X X
X X X X X X X 1
X 1 X X X 1 X X
X X X 1 X X X 1
Dari tabel diatas dapat dilihat kalau dipilih semua X = 1, maka : JB= KB=1 dan JA= KA=1 Dari tabel ini terlihat bahwa FFC yang input clock-nya dihubungkan dengan pulsa input akan mengakibatkan QC selalu berubah setiap ada pulsa masuk. Hal ini akan terjadi kalau diatur JC=KC=1. Untuk FFB yang diharapkan sebagai pulsa clock adalah QC dan ini mungkin karena QB berubah (dari 0 ke 1 atau 1 ke 0) selalu bersamaan dengan perubahan dari QC dari 1 ke 0 (pulsa clock efektif). Sehingga input clock FFB dihubungkan dengan QC. Untuk mengatur harga JB dan KB, dari tabel 5.28 dapat terlihat pada cacah ke 0,2,4, dan 6, QC berubah dari 0 ke 1 yang merupakan pulsa clock tidak efektif, maka JB dan KB pada keadaan tersebut dapat diisi X.
[Rangkaian Sekuensial] BAB V
Sedang untuk keadaan yang lain harga JB dan KB diatur sesuai dengan perubahan QB. Untuk FFB yang diharapkan sebagai pulsa clock adalah QB dan QC, dan keduanya mungkin karena setiap QA berubah (dari 0 ke 1 atau 1 ke 0) selalu bersamaan dengan perubahan Q B dan QC dari 1 ke 0. Hanya saja karena perubahan QB dari 1 ke 0 lebih sedikit daripada QC, maka dengan memlilih QB sebagai pulsa clock FFA, harga X untuk JA dan KA akan lebih banyak. Rangakaian pencacah tak sinkron modulo 8 terlihat pada gambar 5.37.
Gambar 5.37. Pencacah Tak Sinkron Modulo 8 Up Counter dengan T Flip-Flop Input T flip-flop terkoneksi dengan nilai konstanta = 1, yang artinya outputnya akan bernilai bergantian. Clock input hanya dimasukkan pada FF yang pertama, sedangkan flipflop selanjutnya terhubung dengan π . Flip-flop kedua diclock oleh π0 demikian seterusnya hingga flip-flop ke-2. Gambar 5.38. (a) adalah rangkaian up counter dengan T Flip-Flop. Perubahan
[Rangkaian Sekuensial] BAB V
Gambar 5.38. Rangkaian Up Counter (a) Timing diagram (b) Down Counter dengan T Flip-Flop Clock pada down counter dengan T flip-flop dihubungkan ke bagian output Q sehingga menghasilkan counting secara berurutan dari 0,7,6,5,4,3,2,1,0,7 sebagai down counter. Pada gambar 5.39 menunjukkan (a) Rangkaian Up Counter dan (b) timing diagram dari Down Counter dengan T Flip-Flop. TUGAS : 1. Buatlah Counter Asinkron dan Sinkron yang dapat menghitung secara Up/Down Counter? (Modulo berapa pun bebas) 2. Buatlah Counter sinkron modulo 5 dengan FF Jk naik dan modulo 5 turun ? 3. Buatlah Counter Asinkron modulo 5 dengan FF Jk naik dan modulo 5 turun? 4. Rancanglah pencacah biner sinkron / pararel naik modulo 6 menggunakan flip-flop JK yang dapat di reset (di nol kan) dengan hanya menekan satu tombol?
[Rangkaian Sekuensial] BAB V
Gambar 5.39. (a) Rangkaian Down Counter dengan T Flip-Flop (b) Timing Diagram C. REGISTER GESER Register adalah kumpulan flip-flop, dimana tiap flip-flop terhubung pada clock dan mampu menyimpan informasi 1 bit. Register geser adalah n-bit register dengan kemampuan untuk menggeser dan memasukkan data dengan posisi satu bit akan bergeser dengan masukan satu clock. Register digunakan untuk menyimpan data sementara, untuk kemudian diproses atau diganti dengan data yang baru. Jenis register dapat pula diklasifikasikan berdasarkan cara data masuk ke dalam suatu register untuk disimpan dan cara data dikeluarkan dari register tersebut. Gambar 5.40 (a) menggambarkan 4 bit shift register yang digunakan untuk menggeser posisi bit data ke kanan. Bit data dimasukkan dalam shift register secara serial melalui In input. Isi dari masing-masing flip-flop ditransfer ke flip-flop selanjutnya melalui positive edge clock. Ilustrasi dari transfer bit data terlihat pada tabel 5.30, dimana nilai input yang dimasukkan adalah 1,0,1,1,1,0,0,dan 0 yang mengasumsikan bahwa inisial state dari seluruh flip-flop = 0.
[Rangkaian Sekuensial] BAB V
Gambar 5.40. Shift Register dengan D Flip-flop
In
Tabel 5.30 Ilustrasi Shift Register πΈπ πΈπ
πΈπ
πΈπ = πππ
ππ
1
0
0
0
0
ππ
0
1
0
0
0
ππ
1
0
1
0
0
ππ
1
1
0
1
0
ππ
1
1
1
0
1
ππ
0
1
1
1
0
ππ
0
0
1
1
1
ππ
0
0
0
1
1
Untuk memasukkan dan mengeluarkan data masing-masing dapat dilakukan secara serial atau pararel. Serial berarti data dimasukkan atau dikeluarkan ke atau dari register secara beruntun bit demi bit. Sedangkan cara pararel berarti data yang terdiri dari beberapa bit dimasukkan atau dikeluarkan ke atau dari register secara serempak. Berdasarkan hal itu maka terdapat 4 jenis register : a. Serial In Pararel Out (SIPO) Pada register SIPO data input dimasukkan secara serial, maka output dari FF yang satu dihubungkan ke input FF berikutnya. Kemudian Output dikeluarkan secara pararel. Gambar 5.41 menunjukkan rangkaian register serial in dan pararel out.
[Rangkaian Sekuensial] BAB V
b.
Gambar 5.41. Rangkaian Register SIPO Serial In Serial Out (SISO) Pada register SISO data input dimasukkan secara serial, dan output dari FF yang satu dihubungkan ke input FF berikutnya. Kemudian Output dikeluarkan secara serial. Gambar 5.42 menunjukkan rangkaian register serial in dan serial out.
Gambar 5.42. Rangkaian Register SIPO
c.
Pararel In Serial Out (PISO) Pada register PISO data input dimasukkan secara pararel, dan output dari FF yang satu dihubungkan ke input FF berikutnya. Kemudian Output dikeluarkan secara serial. Gambar 5.44 menunjukkan rangkaian register pararel in dan serial out.
[Rangkaian Sekuensial] BAB V
Gambar 5.44. Rangkaian Register Pararel In dan Serial Out d.
Pararel In Pararel Out (PIPO) Register 4 bit PIPO dapat dibentuk dengan 4 buah DFF, dan beberapa gerbang logika, seperti pada gambar 5.45. Sehingga jika data 4 bit dimasukkan secara bersama-sama pada (ABCD)in dan kemudian memberikan pulsa clock, maka ππ΄, , ππ΅, , ππΆ , ππ·, = (π΄π΅πΆπ·)ππ .
Gambar 5.45. Rangkaian Pararel In dan Pararel Out Shift Register
[Rangkaian Sekuensial] BAB V
TUGAS BAB REGISTER 1. Rancanglah register geser 4 bit untuk jenis PISO menggunakan flip-flop JK? 2. Rancanglah sebuah pengendali lampu lalu lintas (traffic Light) dengan urutan kejadian : Nyala hijau selama 20 detik, nyala kuning selama 10 detik, dan nyala merah selama 20 detik. Selain itu, pada malam hari hanya terjadi nyala kuning yang berkedip setiap 1 detik secara terus menerus. TUGAS AKHIR COUNTER DAN REGISTER 1. Buatlah pencacah waktu untuk permainan catur conter down 60 menit (1 jam)? Untuk mesing-masing pemain dimana jika salah satu pemain menekan tombol maka pewaktu akan berhendi dan dilanjutkan oleh pemain lainnya. 2. Buatlah pencacah Counter up / Down dimana pencacah akan mencacah mundur secara otomatis saat tombol ditekan? 3. Suatu perusahaan membangun sebuah sistem pengisian otomatis dengan 2 konveyor dan 4 sensor - Sensor 1 = 1 jika gallon terdeteksi, konveyor 1 stop dan gallon diisi, Sensor 2 = 1 jika gallon terdeteksi penuh dan konveyor 1 jalan dan berlanjut ke konveyor 2 - Sensor 3 = 1 jika mendeteksi gallon, konveyor 2 stop lalu memasangkan tutup, Sensor 4 = 1 jika botol sudah tertutup dan konveyor 2 jalan