BAB 13: RANGKAIAN SEKUENSIAL —
FLIP-FLOP DAN CLOCK
A.
Pengantar
Rangkaian Sekuensial
1.
Definisi
Rangkaian Sekuensial
a.
Output
bergantung pada input saat ini DAN keadaan sebelumnya (memori)
b.
Memiliki
elemen penyimpan (flip-flop, latch, register)
c.
Output
berubah hanya pada saat ada clock (synchronous)
d.
Contoh:
counter, register, shift register, state machine
2.
Perbedaan
Kombinasional vs Sekuensial
a.
Kombinasional
— output = f(input)
b.
Sekuensial
— output = f(input, state)
c.
Kombinasional
— tidak punya clock
d.
Sekuensial
— dipicu oleh clock
3.
Blok
Diagram Rangkaian Sekuensial
a.
Input
→ Rangkaian Kombinasional → Output
b.
State
(dari flip-flop) → Rangkaian Kombinasional → Input berikutnya
c.
Clock
→ Flip-Flop (sinkronisasi)
d.
Element
penyimpan menyimpan state (0/1)
4.
Elemen
Memori Dasar
a.
Latch
— level-triggered (dipicu oleh level sinyal)
b.
Flip-Flop
— edge-triggered (dipicu oleh tepi clock)
c.
Register
— kumpulan flip-flop untuk menyimpan data multi-bit
d.
SRAM
— memory berbasis flip-flop
B.
Latch
— Elemen Memori Sederhana
1.
SR
Latch (Set-Reset Latch)
a.
Dua
gerbang NOR atau NAND yang saling silang
b.
Input:
Set (S) dan Reset (R)
c.
Output:
Q dan Q̄ (komplementer)
d.
Kondisi
forbidden (tidak diperbolehkan): S=1, R=1
e.
Simbol
dan tabel kebenaran
2.
Implementasi
SR Latch dengan NOR
a.
Dua
gerbang NOR disilangkan
b.
S=0,R=0
→ Q=Q (keep state)
c.
S=1,R=0
→ Q=1, Q̄=0 (Set)
d.
S=0,R=1
→ Q=0, Q̄=1 (Reset)
e.
S=1,R=1
→ forbidden (Q=0, Q̄=0)
3.
Implementasi
SR Latch dengan NAND
a.
Dua
gerbang NAND disilangkan (aktif low)
b.
S̄=0,R̄=0
→ forbidden
c.
S̄=1,R̄=1
→ keep state
d.
S̄=0,R̄=1
→ Set
e.
S̄=1,R̄=0
→ Reset
4.
Gated
SR Latch
a.
SR
Latch dengan enable (E) atau clock
b.
Input
S dan R hanya aktif saat E=1
c.
E=0
→ latch mempertahankan state
d.
E=1
→ S dan R dapat mengubah state
e.
Jembatan
ke flip-flop
5.
D
Latch (Data Latch)
a.
Gated
SR latch dengan S = D, R = D̄
b.
Menghilangkan
kondisi forbidden
c.
E=1
→ Q = D (transparent)
d.
E=0
→ Q mempertahankan state (latched)
e.
Jembatan
ke D Flip-Flop
C.
Flip-Flop
(FF) — Elemen Memori Edge-Triggered
1.
Mengapa
Edge-Triggered?
a.
Level-triggered
(latch) — sensitif terhadap perubahan saat enable aktif
b.
Edge-triggered
(flip-flop) — hanya berubah pada tepi clock
c.
Menghindari
kondisi race (perubahan ganda)
d.
Memungkinkan
desain sinkron yang stabil
2.
Positive
Edge vs Negative Edge
a.
Positive
edge (rising edge) — perubahan saat clock 0→1
b.
Negative
edge (falling edge) — perubahan saat clock 1→0
c.
Simbol
— bubble pada input clock untuk negative edge
d.
Pemilihan
tergantung desain
3.
D
Flip-Flop (Data Flip-Flop)
a.
Paling
sederhana dan paling umum digunakan
b.
Q
= D pada saat tepi clock
c.
Implementasi
dengan master-slave atau edge-detector
d.
IC
7474 — dual D flip-flop (positive edge)
e.
Aplikasi
— register, shift register, counter
4.
JK
Flip-Flop
a.
Universal
flip-flop — dapat meniru D, T, dan SR
b.
Input:
J (set) dan K (reset)
c.
Tidak
ada forbidden state
d.
JK=11
→ Q = Q̄ (toggle)
e.
IC
7473 — dual JK flip-flop (negative edge)
5.
T
Flip-Flop (Toggle Flip-Flop)
a.
Hanya
satu input T
b.
T=0
→ Q mempertahankan state
c.
T=1
→ Q = Q̄ (toggle)
d.
Dapat
dibuat dari JK dengan J=K=1
e.
Aplikasi
— counter, frequency divider
6.
SR
Flip-Flop
a.
Sama
dengan SR latch tetapi edge-triggered
b.
Input
S (set) dan R (reset)
c.
Kondisi
forbidden: S=1, R=1
d.
Lebih
jarang digunakan di IC modern
D.
Karakteristik
Flip-Flop
1.
Setup
Time (t_setup)
a.
Waktu
minimum data harus stabil SEBELUM tepi clock
b.
Jika
dilanggar — data tidak akan tersimpan dengan benar
c.
Tergantung
pada teknologi (TTL, CMOS)
d.
Biasanya
5-20ns (CMOS) atau 10-30ns (TTL)
2.
Hold
Time (t_hold)
a.
Waktu
minimum data harus stabil SETELAH tepi clock
b.
Jika
dilanggar — data mungkin berubah terlalu cepat
c.
Lebih
kecil dari setup time (5-10ns)
d.
Biasanya
0-5ns
3.
Propagation
Delay (t_pd)
a.
Waktu
dari tepi clock hingga output berubah
b.
Biasanya
10-30ns (TTL) atau 5-20ns (CMOS)
c.
Menentukan
kecepatan maksimum clock
d.
f_max
= 1/(t_setup + t_pd + margin)
4.
Asynchronous
Input (Preset & Clear)
a.
Input
yang tidak dipengaruhi clock
b.
Preset
— langsung set Q=1 (set)
c.
Clear
— langsung set Q=0 (reset)
d.
Berguna
untuk inisialisasi state (reset sistem)
E.
Analisis
Rangkaian Sekuensial
1.
State
Diagram
a.
Representasi
grafis dari semua state dan transisinya
b.
Lingkaran
= state (Q1,Q0)
c.
Panah
= transisi antar state (dengan kondisi)
d.
Sangat
berguna untuk memahami perilaku sistem
2.
State
Table (Tabel Keadaan)
a.
Tabel
yang menunjukkan transisi state berdasarkan input
b.
Kolom:
Current State, Input, Next State, Output
c.
Dari
state table → dapat dirancang rangkaian
d.
Dibuat
dari state diagram
3.
Analisis
Counter Sederhana
a.
Counter
2-bit dengan T flip-flop (T=1)
b.
State:
00 → 01 → 10 → 11 → 00
c.
State
diagram dan state table
d.
Analisis
perilaku dan output
4.
Persamaan
Eksitasi
a.
Menentukan
input flip-flop yang dibutuhkan untuk transisi state
b.
Untuk
D-FF: D = Q_next
c.
Untuk
JK-FF: J = f(Q, Q_next), K = f(Q, Q_next)
d.
K-Map
untuk menyederhanakan persamaan
F.
Clock
dan Sinkronisasi
1.
Clock
Signal
a.
Clock
= sinyal persegi (square wave) dengan frekuensi tetap
b.
Karakteristik:
frekuensi (f), duty cycle, rise time, fall time
c.
Sumber
clock: osilator kristal, RC osilator, IC generator
d.
Clock
distribution — mendistribusikan ke semua flip-flop
2.
Clock
Skew
a.
Perbedaan
waktu kedatangan clock di berbagai flip-flop
b.
Disebabkan
oleh perbedaan panjang jalur (PCB)
c.
Dapat
menyebabkan kesalahan timing (race condition)
d.
Solusi
— clock tree, buffer clock, design margins
3.
Synchronous
vs Asynchronous
a.
Synchronous
— semua flip-flop dipicu oleh clock yang sama
b.
Asynchronous
— flip-flop dipicu oleh sinyal lain (tidak seragam)
c.
Synchronous
lebih mudah didesain dan dianalisis
d.
Asynchronous
lebih cepat tapi rentan masalah
4.
Clock
Frequency dan Timing
a.
f_max
= 1/(t_setup + t_pd + t_skew)
b.
Semakin
tinggi frekuensi, semakin cepat sistem
c.
Trade-off
dengan konsumsi daya
d.
Limitasi
fisik — delay gate dan capacitance
G.
Aplikasi
Flip-Flop
1.
Frequency
Divider
a.
T
flip-flop dengan T=1 → output frekuensi = clock/2
b.
Seri
T flip-flop → pembagi frekuensi 2^n
c.
Aplikasi
d.
Contoh:
clock 10MHz → 5MHz, 2.5MHz, 1.25MHz
2.
Register
(Penyimpan Data)
a.
Kumpulan
D flip-flop untuk menyimpan data multi-bit
b.
Semua
flip-flop dipicu oleh clock yang sama
c.
Aplikasi
d.
IC
74174 — 6-bit register, 74374 — 8-bit register
3.
Latch
vs Flip-Flop dalam Desain
a.
Latch
— level-triggered (transparent)
b.
Flip-Flop
— edge-triggered (synchronous)
c.
Flip-Flop
lebih aman untuk desain sinkron
d.
Latch
digunakan dalam ASIC/FPGA untuk optimasi area
4.
Debouncing
Saklar
a.
Saklar
mekanis menghasilkan bouncing (getaran)
b.
SR
Latch dapat menghilangkan bouncing
c.
S
= tombol NO, R = tombol NC
d.
Output
Q = sinyal yang bersih (tanpa bouncing)
Komentar
Posting Komentar