Register Oleh Wayan Suparta, PhD Prodi Informatika Universitas Pembangunan Jaya Pertemuan 12: INF203 (3 SKS)
Register
Oleh Wayan Suparta, PhD
Prodi Informatika
Universitas Pembangunan Jaya
Pertemuan 12: INF203 (3 SKS)
Sub Pokok Bahasan: Latch (Memalangi)
Register
Penggunaan Register
Shift Register
Capaian Pembelajaran • Mampu memahami fungsi dan cara kerja rangkaian register
serta penerapannya pada produk seperti latch.
Latch versus Register
Latch
simpan data ketika clock dalam kondisi rendah
D
Clk
Q D
Clk
Q
• Register
simpan data ketika clock naik
Clk Clk
D D
Q Q
Latches
Latch-Based Design
• N latch is transparent
when f = 0 • P latch is transparent
when f = 1
N Latch
Logic
Logic
P Latch
f
Timing Definitions
t
CLK
t
D
t c 2 q
t hold t su
t
Q DATA STABLE
DATA STABLE
Register
CLK
D Q
Register adalah rangkaian logika yang digunakan untuk
menyimpan data. Dengan kata lain, register adalah rangkaian
yang tersusun dari satu atau beberapa flip-flop yang
digabungkan menjadi satu.
Flipflop disebut juga sebagai register 1 bit.
Jadi untuk menyimpan 4 bit data, register harus terdiri dari 4
buah flipflop.
Beberapa fungsi register:
mengambil data dari register
menyimpan/memuat data baru ke register (serial atau paralel)
menggeser data dalam register (kiri atau kanan)
Register
Register Sederhana
Tidak ada gerbang luar/tambahan.
Contoh: register A 4-bit. Data 4-bit baru dimuat setiap siklus clock.
A3
CLK
A1 A0
D
Q
D
Q Q
D
A2
D
Q
I3 I1 I0 I2
Register dengan load Parallel
Alih-alih memuat register pada setiap pulsa
jam, kami mungkin ingin mengontrol kapan
memuat.
Memuat register: transfer informasi baru ke
register. Membutuhkan input kontrol beban.
Pemuatan paralel: semua bit dimuat secara
bersamaan.
Perhatikan gambar berikut:
A0
CLK
D Q
Load
I0
A1 D Q
A2 D Q
A3 D Q
CLEAR
I1
I2
I3
Load'.A0 + Load. I0
Sirkuit sekuensial dapat terdiri dari register (memori) dan sirkuit kombinasi.
Register Combin-
ational
circuit
Clock
Inputs Outputs
Next-state value
Input eksternal dan status register sekarang menentukan
status register berikutnya dan output eksternal, melalui
sirkuit kombinasional.
Sirkuit kombinasional dapat diimplementasikan dengan
salah satu metode yang tercakup dalam komponen MSI
dan Perangkat Logika yang Dapat Diprogram.
Penggunaan Register
Fungsi lain dari register, selain penyimpanan, adalah untuk menyediakan pergerakan data.
Setiap tahap (flip-flop) dalam register geser mewakili satu bit penyimpanan, dan kemampuan pergeseran register memungkinkan perpindahan data dari tahap ke tahap dalam register, atau masuk atau keluar dari register pada saat aplikasi pulsa clock.
Terdapat 4 macam shift register:
• PIPO (Parallel In - Parallel Out)
• PISO (Parallel In - Serial Out)
• SISO (Serial In - Serial Out)
• SIPO (Serial In - Parallel Out)
Shift Registers (Register Geser)
1. 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
secara bersama-sama ke Q3, Q2, Q1, dan Q0.
• Saat clock kembali tidak dipicu (Logika 0), maka apapun
masukannya, keluaran Q akan tetap.
2. Parallel In – Serial Out (PISO)
(a).
(b).
3. Register Geser (SISO) Menerima data secara serial - sedikit demi sedikit - dan juga
menghasilkan output secara serial.
Saat sinyal clock diberikan pertama kali, data dari Si masuk ke flipflop A, pada saat clock kedua, data dari flipflop A masuk ke flipflop B, demikian seterusnya, sampai keluar ke So.
Jadi pada register SISO untuk membaca data pertama kali dibutuhkan jumlah clock yang sama banyak dengan jumlah flipflop yang ada pada register (dalam hal ini adalah empat).
Q0
CLK
D
C
Q
Q1 Q2 Q3 Serial data
input
Serial data
output D
C
Q D
C
Q D
C
Q
A B C D
Contoh: SISO
Aplikasi: Transfer data serial dari satu register ke register lainnya.
Shift register A Shift register B SI SI SO SO
Clock
Shift control
CP
Wordtime
T1 T2 T3 T4 CP
Clock
Shift
control
Contoh transfer secara serial.
Timing Pulse Shift register A Shift register B Serial output of B
Initial value 1 0 1 1 0 0 1 0 0
After T1 1 1 0 1 1 0 0 1 1
After T2 1 1 1 0 1 1 0 0 0
After T3 0 1 1 1 0 1 1 0 0
After T4 1 0 1 1 1 0 1 1 1
Q0
CLK
D
C
Q
Q1
D
C
Q
Q2
D
C
Q
Q3
D
C
Q Data input
D
C CLK
Data input
Q0 Q1 Q2 Q3
SRG 4
Logic symbol
4. Serial In Parallel Out (SIPO)
Bit dimasukkan secara bersamaan, tetapi outputnya serial.
D0
CLK
D
C
Q
D1
D
C
Q
D2
D
C
Q
D3
D
C
Q
Data input
Q0 Q1 Q2 Q3
Serial
data
out
SHIFT
SHIFT.Q0 + SHIFT'.D1
Logic symbol
C CLK
SHIFT/LOAD
D0 D1 D2 D3
SRG 4 Serial data out
Data in
Input dan output simultan dari semua bit data.
Q0
CLK
D
C
Q
Q1
D
C
Q
Q2
D
C
Q
Q3
D
C
Q
Parallel data inputs
D0 D1 D2 D3
Parallel data outputs
5. Register Geser 2 Arah (B2R)
Data dapat digeser ke kiri atau kanan, menggunakan garis kontrol KANAN / KIRI (atau hanya KANAN) untuk menunjukkan arah.
CLK
D
C
Q D
C
Q D
C
Q D
C
Q
Q0
Q1 Q2 Q3
RIGHT/LEFT
Serial
data in
X = RIGHT.Q0
+ RIGHT'.Q2
W X Y Z
Register geser dua arah 4-bit dengan beban paralel
CLK
I4 I3 I2 I1
Serial
input for
shift-right
D
Q
D
Q
D
Q
D
Q Clear
4x1
MUX
s1
s0 3 2 1 0
4x1
MUX
3 2 1 0
4x1
MUX
3 2 1 0
4x1
MUX
3 2 1 0
A4 A3 A2 A1
Serial
input for
shift-left
Parallel inputs
Parallel outputs
Mode control
Mode Control
s1 s0 Register Operation
0 0 No change0 1 Shift right1 0 Shift left1 1 Parallel load
Sebagian besar operasi di komputer digital dilakukan secara paralel. Operasi serial lebih lambat tetapi membutuhkan lebih sedikit peralatan.
Penjumlah serial adalah seperti berikut. A A + B.
FA x y z
S
C
Shift-register A Shift-right
CP
SI
Shift-register B
SI External input SO
SO
Q D
Clear
Sebuah aplikasi – B2R
A = 0100; B = 0111. A + B = 1011 disimpan di A setelah pulsa ke 4.
Initial: A: 0 1 0 0
B: 0 1 1 1 Q: 0
Step 1: 0 + 1 + 0
S = 1, C = 0 A: 1 0 1 0
B: x 0 1 1 Q: 0
Step 2: 0 + 1 + 0
S = 1, C = 0 A: 1 1 0 1
B: x x 0 1 Q: 0
Step 3: 1 + 1 + 0
S = 0, C = 1 A: 0 1 1 0
B: x x x 0 Q: 1
Step 4: 0 + 0 + 1
S = 1, C = 0 A: 1 0 1 1
B: x x x x Q: 0
Pencacah Register Geser
Shift register counter: register geser dengan output serial terhubung kembali ke input serial.
Mereka diklasifikasikan sebagai penghitung karena mereka memberikan urutan secara tertentu.
Dua tipe umum: penghitung Johnson dan penghitung Cincin.
1. Nyatakan I/O dalam tabel kebenaran dan gambar rangkaian
SISO
SIPO
PISO
PIPO
Register Geser Bidirectional (B2R)
2. Jelaskan cara kerja register geser dua arah
3. Jelaskan cara kerja penghitung Cincin (Ring Counter)
4. Gambarkan dan terangkan model pergeseran dalam Shift
register.
5. Gambarkan ilustrasi aliran data pada register geser PIPO 4 bit.
6. Pada register buffer menggunakan rangkaian D flip-flop,
bagaimanakah keluaran dari D flip-flop bila input high dan
low. Gambarkan dalam tabel kebenaran.
LATIHAN 12