MODUL PERKULIAHAN
W142100052
Perancangan
Berbasis FPGA
Flip-flop
Abstrak Sub-CPMK
SR Flip-flop
SR-FF (Set Reset Flip Flop) adalah Flip-Flop paling sederhana, cukup terdiri dari 2
buah gerbang yang masing-masing memiliki 2 input, kedua gerbang ini harus berjenis
sama, misalnya keduanya gerbang NOR. Output dari masing-masing gerbang diumpan
balik ke input dari gerbang lainnya atau bersilangan, seperti tampak pada Gambar 1.a.
Seperti tampak pada Gambar 1.b. agar output selalu berlawanan, maka input Flip-Flip,
dalam hal ini S dan R, tidak boleh 11. Nilai SR = 11 dianggap menghasilkan output yang
tidak sah.
(a) (b)
Gambar 1. SR-FF
(a) Rangkaian, (b) Tabel Kebenaran
2021 Perancangan Berbasis FPGA Biro Bahan Ajar E-learning dan MKCU
2 Rachmat Muwardi, B.Sc., ST., M.Sc. http://pbael.mercubuana.ac.id/
Selain menggunakan gerbang NOR, SR juga dapat disusun dari gerbang lainnya
seperti OR dan NAND. Input dari setiap gerbang tidak harus sama, salah satunya boleh
diberi NOT seperti tampak pada Gambar 2.c.
D Flip-flop
D FF (Data atau Delay Flip-Flop) adalah Flip-Flop yang hanya terdiri dari sebuah
input, yaitu D, sepasang output yang nilainya berlawanan, yaitu Q dan Q’, dan sepasang
feedback. Selain itu, D FF juga dilengkapi dengan bit CLK atau Clock sebagai input. Clock
ini memberikan izin, kapan saatnya nilai output boleh berubah. Ringkasnya, nilai output Q
akan selalu sama dengan D dan perubahan nilai output hanya bisa terjadi jika diizinkan
oleh kondisi clock. Ada 4 macam kondisi clock, yaitu
HIGH clock, yaitu saat nilai CLK = 1 atau HIGH.
LOW clock, yaitu saat nilai CLK = 0 atau LOW.
Positive Edge atau Rising Edge clock, yaitu saat transisi nilai CLK dari LOW ke
HIGH atau dari 0 ke 1.
Negative Edge atau Falling Edge clock, yaitu saat transisi nilai CLK dari HIGH ke
LOW atau dari 1 ke 0.
Pada Gambar 3 dapat dilihat Rangkaian, Tabel Kebenaran dan Simbol D-FF. Nilai
output tetap selama CLK = 0. Nilai output akan sama dengan input D saat CLK = 1.
Sedangkan Gambar 8.4 adalah contoh D-FF yang dilengkapi Rising Edge Clock, nilai
outputnya diizinkan berubah hanya saat CLK transisi dari LOW ke HIGH seperti dapat
dilihat pada tabel kebenaran dalam Gambar 4.b.
2021 Perancangan Berbasis FPGA Biro Bahan Ajar E-learning dan MKCU
3 Rachmat Muwardi, B.Sc., ST., M.Sc. http://pbael.mercubuana.ac.id/
(a) Rangkaian, (b) Tabel Kebenaran (c) Simbol
2021 Perancangan Berbasis FPGA Biro Bahan Ajar E-learning dan MKCU
4 Rachmat Muwardi, B.Sc., ST., M.Sc. http://pbael.mercubuana.ac.id/
Gambar 6. Rangkaian D-FF 8-bit
JK Flip-flop
JK-FF merupakan penyempurnaan SR-FF, sehingga semua kombinasi input JK
dibolehkan, tidak ada kondisi pantangan seperti pada SR-FF yang tabel kebenarannya
dapat dilihat pada Gambar 7. Seperti dapat dilihat pada tabel kebenaran dalam Gambar
7.b, jika clock mengizinkan, maka semua kombinasi JK akan memberikan output yang
valid. Sesuai kondisi input JK, ada 4 kemungkinan output yang semuanya valid, yaitu
a. No Change, Tidak ada perubahan pada output jika JK = 00.
b. Set K, Pin Q’ akan bernilai 1 karena JK = 01.
c. Set J, Pin Q akan bernilai 1 karena JK = 10.
d. Toggle, Nilai output menjadi kebalikan kondisi sebelumnya jika input JK = 11.
Misalnya jika sebelumnya QQ’ = 10, setelah diizinkan clock, berubah menjadi
QQ’ = 01.
Gambar 7. JK-FF
(a) Rangkaian. (b) Tabel Kebenaran. (c) Simbol.
Pada gambar 8 dapat dilihat diagram waktu untuk JK-FF. Sisi kiri adalah nama
pin, yaitu J, K, CLK dan Q. Dari kiri ke kanan adalah perubahan nilai masing-masing pin
seiring berjalannya waktu, ada saat dalam kondisi LOW dan ada saat HIGH. Perhatikan 4
2021 Perancangan Berbasis FPGA Biro Bahan Ajar E-learning dan MKCU
5 Rachmat Muwardi, B.Sc., ST., M.Sc. http://pbael.mercubuana.ac.id/
garis vertikal berwarna biru, termasuk ujung anak panahnya. Terkait pin CLK, keempat
garis biru tsb menyentuh kondisi CLK saat rising edge atau transisi CLK dari LOW ke
HIGH. Tiga panah biru meliuk dari rising edge pada CLK ke Q menandakan bahwa
perubahan pada Q tersebut terjadi setelah masing-masing rising edge. Dari kiri ke kanan,
anak panah biru pertama menunjukkan Q berubah menjadi HIGH setelah rising edge
karena JK = 10. Anak panah kedua Q dipaksa menjadi LOW karena JK = 01. Sedangkan
anak panah ketiga Q toggle, dalam hal ini beralih dari LOW menjadi HIGH karena JK =
11. Seandainya JK = 11 sepanjang waktu, maka Q akan toggle, berubah dari LOW
menjadi HIGH atau sebaliknya, setiap kali setelah rising edge.
Pada Tabel 1 dapat dilihat ada 4 macam peralihan Q, yaitu
dari 0 ke 0 atau tetap LOW, terjadi karena J = 0, tanpa memperdulikan
kondisi pin K
dari 0 ke 1, terjadi karena J = 1.
dari 1 ke 0, terjadi karena K = 1, tanpa memperdulikan kondisi pin J.
dari 1 ke 1 atau tetap HIGH, terjadi karena K = 0.
Qn Qn+1 J K
0 0 0 x
0 1 1 x
1 0 x 1
1 1 x 0
Pada Gambar 9. dapat dilihat contoh IC (Integrated Circuit atau Chip) yang berisi 2
buah JK-FF yang tidak terkait satu sama lain, masing-masing memiliki JK, CP (Clock
Pulse), R dan QQ’. Seperti tampak pada tabel kebenarannya, tipe clock-nya adalah falling
edge clock, artinya kesempatan perubahan terjadi saat CP transisi dari HIGH ke LOW.
Pin R digunakan untuk reset atau memaksa Q menjadi LOW. Pin R ini active LOW, jika
2021 Perancangan Berbasis FPGA Biro Bahan Ajar E-learning dan MKCU
6 Rachmat Muwardi, B.Sc., ST., M.Sc. http://pbael.mercubuana.ac.id/
pin R = 0, maka QQ’ = 01 tanpa memperdulikan kondisi pin lainnya termasuk kondisi CP,
tidak harus falling edge.
Contoh IC JK-FF lainnya dapat dilihat pada Gambar 10. Pada gambar tsb dapat
dilihat terdapat pin SD atau Direct Set Input yang active LOW. Pin SD ini digunakan untuk
memaksa Q menjadi set atau HIGH, tanpa memperdulikan pin CP dan JK.
2021 Perancangan Berbasis FPGA Biro Bahan Ajar E-learning dan MKCU
7 Rachmat Muwardi, B.Sc., ST., M.Sc. http://pbael.mercubuana.ac.id/
Gambar 10. JK-FF dengan Direct Set Input
(a) Simbol. (b) Tabel Kebenaran
Pada Gambar 11 dapat dilihat IC JK-FF yang dilengkapi dengan Pin SD dan Pin
RD, keduanya active LOW, atau aktif jika dalam kondisi LOW. Kedua pin ini digunakan
untuk memaksa Q menjadi HIGH atau memaksanya menjadi LOW. Jika SDRD = 11 atau
HH, maka JK-FF bekerja normal, perubahan QQ’ ditentukan oleh kondisi JK dan hanya
terjadi saat CP aktif atau rising edge. Jika SDRD = 10 atau HL, maka Q dipaksa menjadi 0
atau L atau Reset tanpa peduli kondisi pin CP maupun JK. Jika SDRD = 01 atau LH, maka
2021 Perancangan Berbasis FPGA Biro Bahan Ajar E-learning dan MKCU
8 Rachmat Muwardi, B.Sc., ST., M.Sc. http://pbael.mercubuana.ac.id/
Q dipaksa menjadi 1 atau H atau Set. Kondisi SDRD = 00 adalah kondisi yang harus
dihindari karena nilai output QQ’ menjadi tidak valid.
T Flip-flop
T-FF atau Toggle Flip-Flop sebenarnya fungsinya sama dengan JK-FF, tetapi pin
J dan K digabung menjadi satu pin, yaitu pin T. Jika T = 0, maka Q tidak berubah, HIGH
tetap HIGH, LOW tetap LOW. Sedangkan jika T = 1, maka Q akan toggle saat datang
kesempatan perubahan, jika sebelumnya LOW, Q akan beralih ke HIGH dan sebaliknya,
jika sebelumnya HIGH akan beralih menjadi LOW.
2021 Perancangan Berbasis FPGA Biro Bahan Ajar E-learning dan MKCU
9 Rachmat Muwardi, B.Sc., ST., M.Sc. http://pbael.mercubuana.ac.id/
Gambar 12. T-FF, Simbol dan Diagram Waktu, contoh implementasi
Pada Gambar 12 dapat dilihat bahwa T-FF, seperti juga halnya JK-FF, dapat
dibuat dengan melakukan modifikasi rangkaian D-FF. Cukup menambahkan sebuah
gerbang XOR 2-input sebagai umpan balik. Output gerbang XOR ini dihubungkan dengan
input D, salah satu input XOR dihubungkan dengan output Q, dan input yang lain
berfungsi sebagai pin T.
Di bawah gambar simbol T-FF tsb ada gambar diagram waktu yang belum selesai.
Coba tebak, apa yang kurang. Mudah-mudahan teakan anda benar, gambar untuk Q
belum lengkap. Kita tidak dapat menggambarnya jika jenis clock-nya belum jelas, rising
edge CLK akan menyebabkan gambar Q yang berbeda dengan Q yang disebabkan
falling edge CLK. Jika jenis clock-nya adalah rising edge, maka Q akan toggle saat 2 hal
terpenuhi, yaitu saat CLK rising edge dan T dalam keadaan HIGH.
Berikutnya adalah Gambar 12 sebelah bawah. Jika CLK rising edge, Pin T = 1 dan
pin CLK diisi dengan sinyal periodik yang duty cycle-nya 50% (durasi ON sama panjang
dengan durasi OFF) dengan periode 1 ms. Cobalah tebak gambar sinyal pada S2 S1
dan S0. Semoga anda tetap menebak, walaupun gambar sinyal tsb susah ditebak.
Berikut ini, Gambar 13, adalah rangkaian dan gambar hasil simulasinya menggunakan
Proteus 7.4 sp3. Berturut-turut dari atas ke bawah, sinyal D0 D1 D2 dan CLK.
2021 Perancangan Berbasis FPGA Biro Bahan Ajar E-learning dan MKCU
10 Rachmat Muwardi, B.Sc., ST., M.Sc. http://pbael.mercubuana.ac.id/
U2:A
1
3 U1
2 4 2
D0 Q0 A
3
Q0
74HC386 5 7
D1 Q1 B
6
U2:B Q1
12 10
D2 Q2 C
5 11
Q2
4 13 15
D3 Q3 D
6 14
Q3
74HC386 9
CLK
1
MR
74HC175
2021 Perancangan Berbasis FPGA Biro Bahan Ajar E-learning dan MKCU
11 Rachmat Muwardi, B.Sc., ST., M.Sc. http://pbael.mercubuana.ac.id/
Daftar Pustaka
M. Moris Mano and Michael D. Ciletti, Digital Design, 4th Ed., Prentice Hall Inc., USA
2007
Albert Paul Malvino, Elektronika Komputer Digital, 2nd Ed., Penerbit Erlangga, Jakarta,
1983
2021 Perancangan Berbasis FPGA Biro Bahan Ajar E-learning dan MKCU
12 Rachmat Muwardi, B.Sc., ST., M.Sc. http://pbael.mercubuana.ac.id/