๐ฏTujuan Pembelajaran
Sub-CPMK 4.1: Memahami prinsip flip-flop dan register
๐ Konsep Memory
Memahami prinsip penyimpanan data dalam sistem digital
โฐ Clock dan Trigger
Menganalisis pengaruh clock pada operasi flip-flop
๐ง Jenis Flip-Flop
Mengenal berbagai jenis flip-flop dan karakteristiknya
๐พ Aplikasi Register
Memahami penerapan flip-flop dalam register
๐ Pengantar Flip-Flop
Flip-flop adalah elemen memori dasar dalam sistem digital yang dapat menyimpan satu bit informasi. Berbeda dengan gerbang logika kombinasional, flip-flop memiliki sifat sekuensial yang berarti outputnya bergantung pada input sebelumnya (state).
Mengapa Flip-Flop Penting?
Sistem digital modern bergantung pada flip-flop untuk:
- Penyimpanan data sementara (register)
- Counter dan timer
- Memory address decoding
- State machine dan control logic
- Pipeline processing
Clock Signal - Sinyal pewaktu yang mengontrol operasi flip-flop
๐ SR Flip-Flop (Set-Reset)
SR Flip-Flop adalah jenis flip-flop paling dasar dengan dua input: Set (S) dan Reset (R).
SR Flip-Flop
Input: S (Set), R (Reset)
Output: Q, Q' (komplement)
Fungsi: Menyimpan 1 bit data
Tabel Karakteristik
| S | R | Q(t+1) | Keterangan |
|---|---|---|---|
| 0 | 0 | Q(t) | No Change |
| 0 | 1 | 0 | Reset |
| 1 | 0 | 1 | Set |
| 1 | 1 | - | Invalid |
Q(t+1) = S + R'ยทQ(t)
// Dengan constraint: SยทR = 0
Kelemahan SR Flip-Flop
Kondisi Invalid: Ketika S=1 dan R=1 simultaneously, output menjadi tidak terdefinisi
Solusi: SR Flip-Flop dengan clock (Clocked SR FF) atau menggunakan JK Flip-Flop
๐ฅ D Flip-Flop (Data)
D Flip-Flop menyelesaikan masalah kondisi invalid pada SR Flip-Flop dengan hanya memiliki satu input data.
D Flip-Flop
Input: D (Data), CLK (Clock)
Output: Q, Q'
Fungsi: Menyimpan data pada rising/falling edge clock
Tabel Karakteristik
| CLK | D | Q(t+1) |
|---|---|---|
| โ | 0 | 0 |
| โ | 1 | 1 |
| โ | X | Q(t) |
Q(t+1) = D
// Pada active clock edge
Implementasi D Flip-Flop dari SR Flip-Flop
Gambar: D = S, R = D' melalui inverter
๐ JK Flip-Flop
JK Flip-Flop adalah penyempurnaan dari SR Flip-Flop yang menghilangkan kondisi invalid.
JK Flip-Flop
Input: J, K, CLK
Output: Q, Q'
Fungsi: Universal flip-flop dengan toggle capability
Tabel Karakteristik
| J | K | Q(t+1) | Keterangan |
|---|---|---|---|
| 0 | 0 | Q(t) | No Change |
| 0 | 1 | 0 | Reset |
| 1 | 0 | 1 | Set |
| 1 | 1 | Q'(t) | Toggle |
Q(t+1) = JยทQ'(t) + K'ยทQ(t)
// Tidak ada kondisi invalid
๐ฎ Simulator D Flip-Flop
Simulasi Interaktif D Flip-Flop
Status Flip-Flop
โฐ Diagram Timing
Diagram timing menunjukkan hubungan antara clock, input, dan output flip-flop dalam domain waktu.
Timing Diagram D Flip-Flop (Positive Edge-Triggered)
Keterangan: Output Q berubah hanya pada rising edge clock
Setup time dan hold time harus dipenuhi untuk operasi yang reliable
Parameter Timing Penting
Setup Time (tsu): Waktu minimum data harus stabil sebelum clock edge
Hold Time (th): Waktu minimum data harus tetap stabil setelah clock edge
Clock-to-Q Delay (tcq): Waktu dari clock edge sampai output berubah
๐ก Aplikasi Flip-Flop
Flip-flop memiliki berbagai aplikasi penting dalam sistem digital.
Register
Konsep: Kumpulan flip-flop untuk menyimpan data multi-bit
Contoh: 8-bit register menggunakan 8 D Flip-Flop
Aplikasi: Data storage, buffer, temporary memory
Shift Register
Konsep: Register yang dapat menggeser data
Jenis: SISO, SIPO, PISO, PIPO
Aplikasi: Serial communication, data conversion
Aplikasi Lainnya
Counter: Menggunakan flip-flop untuk menghitung pulsa clock
Frequency Divider: Membagi frekuensi clock
State Machine: Implementasi finite state machine
Memory Cells: Basic building block untuk RAM
Latihan & Evaluasi
Soal 1: Rancang D Flip-Flop menggunakan JK Flip-Flop!
Soal 2: Jelaskan perbedaan antara latch dan flip-flop!
Soal 3: Buat tabel karakteristik untuk T Flip-Flop (Toggle Flip-Flop)!
Soal 4: Analisis timing diagram berikut untuk D Flip-Flop positive edge-triggered:
- CLK: 0โ1โ0โ1โ0
- D: 1โ0โ1โ1โ0
- Tentukan output Q dengan asumsi Q awal = 0