BAB 6
REGISTER
PENDAHULUAN
Register adalah adalah sekelompok flip-flop
yang dapat menyimpan informasi biner yang terdiri dari bit majemuk. Register
dengan n flip-flop mampu menyimpan informasi sebesar n bit. Ada dua jenis utama
register : register penyimpan (storage register), yang digunakan hanya untuk
menyimpan data, dan register geser (shift register), suatu rangkaian untuk
menyimpan dan menggeser (atau memanipulasikan) data. Dalam bagian ini akan
diuraikan operasi suatu register geser.
REGISTER
GESER
Register ini mempunyai banyak pemakaian
dalam perencanaan sistem digital dan tersedia dalam bentuk IC sebagai fungsi
MSI. Diagram logika suatu register geser empat bit ditunjukkan pada gambar,
terdiri dari empat flip-flop menurut waktu dengan masukan D. Register ini
digunakan untuk menyimpanan sementara suatu data sebesar empat bit. Data dapat
dipindahkan ke dalam atau ke luar register dengan cara yang berlainan yang
diatur oleh sinyal pengatur P, SR dan SL. Register geser dapat dibedakan atas 5
jenis yaitu :

1. Register
Seri-masuk, Paralel-keluar (Series-in, Paralel-out = SIPO)
Flip-flop dapat dihapuskan dengan
menggunakan "0" ke masukan hapus (clear) (ketika enable preset
rendah) sehingga setiap keluaran Q0,
Q1, ....., Q4 sama dengan 0. Kemudian Cr
disamakan dengan 1 dan Pr ditahan tetap pada 1 (dengan mempertahankan enable preset pada 0).
Rentetan data seri dan jam sinkron sekarang dimasukkan. Bit yang paling kurang
signifikan (LSB) dimasukkan ke dalam selot master FF4 ketika CK berubah dari 0 ke 1 dengan bantuan
FLIP-FLOP jenis-D. Sesudah pulsa jam, 1 dipindahkan ke selot slave FF4 dan Q4
= 1, sedang keluaran lain tetap pada 0.
Pada pulsa jam kedua, kedudukan Q4
dipindahkan ke selot master dari FF3 dengan pertolongan FLIP-FLOP S-R.
Secara simultan, bit berikutnya (1 dalam kata 01011) masuk ke master dari FF4.
Setelah pulsa jam kedua, bit dalam masing-masing master berpindah ke
masing-masing slave-nya dan Q4
= 1, Q3 = 1, dan keluaran lainnya tetap 0. Pembacaan register
setelah masing-masing pulsa diberikan dalam tabel 1. Misalnya, setelah pulsa
ketiga, Q3 telah menggesert ke Q2, Q4 ke Q3,
dan bit masukan ketiga (0) telah masuk FF4, sehingga Q4 = 0.
Kita dengan mudah mengikuti prosedur ini
dan kita lihat, bahwa dengan meregistrasikan tiap bit dalam MSB FLIP-FLOP dan
kemudian menggeserkan ke kanan untuk memberikan peluang pada digit berikutnya,
kita masukan telah terpasang dalam register setelah pulsa jam ke-n (untuk kode
n-bit). Sudah tentu pulsa-pulsa jam harus berhenti sementara kata
diregistrasikan. Tiap keluaran didapatkan pada baris yang terpisah, dan mereka
dapat dibaca secara simultan. Karena data masuk ke dalam sistem secara seri dan
keluar secara paralel, reggister ini merupakan konverter seri-ke-paralel. Juga
dinamakan register seri-masuk (in) paralel-keluar (out) (SIPO). Suatu
kode-temporal (susunan bit menurut waktu) telah berubah menjadi kode-spatial
(informasi yang disimpan dalam memori
statis).
|
Pulsa
Jam
|
BIT
KATA
|
q 4
|
q3
|
q2
|
q1
|
q0
|
|
|
1
|
1
|
0
|
0
|
|
0
|
|
2
|
1
|
1
|
1
|
0
|
|
0
|
|
|
0
|
0
|
1
|
1
|
|
0
|
|
|
1
|
1
|
0
|
|
|
0
|
|
5
|
0
|
0
|
1
|
0
|
1
|
1
|
|
|
|
|
|
|
|
|
FLIP-FLOP master-slave
dipergunakan karena masalah perpacuan antara tingkat-tingkat (seksi 7-3). Kalau
semua FLIP-FLOP berubah berubah keadaannya secara bersamaan, maka akan terjadi
keadaan mendua, yakni data yang mana yang harus dipindahkan dari tingkat
sebelumny. Misalnya, pada pulsa jam ketiga, Q4 berubah dari 1 ke 0,
dan akan timbul pertanyaan apakah Q3 akan mewnjadi 1 atau 0.
Sehinggga diperlukan agar Q4 tetap pada 1 sampai bit ini masuk ke
FF3, dan baru kemudian boleh berubah menjadi 0. Konfigurasi master-slave-lah
yang memungkinkan aksi tersebut. Kalau dalam gambar 7-8, masukan J(K) dinamakna
S(R) dan kalau hubungan umpan-balik (tebal) dihapuskan makan akan dihasilkan suatu
FLIP-FLOP master-slaveS-R. TI-164 merupakan register-register SIPO 8-bit dengan
masukan yang digerbang (enable).
2. Register
Seri-MAsuk, Seri-keluar (SISO = Series-in, Series-out)
Kita dapat mengambil keluaran pada Q0
dan dibaca register secara seri, kalau kita berikan n pulsa jam, untuk kata
n-bit. Setelah pulsa ke-n tiap-tiap FLIP-FLOP membaca 0. Perhatikan, bahwa laju jam penggeseran-keluar dapat lebih besar
atau lebih kecil dari pada frekuensi pulsa asli. Sehingga, di sini suatu metode
untuk mengubah waktu pulsa dari kode biner, suatu proses yang dinamakan
penyanggaan (buffering).
Paket MSI TI-91 merupakan register SISO
8-bit dengan masukan yang diberi gerbang dan keluaran komplementer. Karena
serpih SISO hanya memerlukan satu masukan data dan satu keluaran data, tidak
tergantung kepada jumlah bit yang disimpan, sehingga suatu register-register
yang sangat panjang (misalnya, 1.024 bit) mungkin dilaksanakan dengan LSI
(Seksi 9-1).
3. Register
Paralel-masuk, Seri-keluar (PISO = Parallel-in, Series-out)
Anggalah suatu situasi di mana bit-bit kata
diperoleh secara paralel, misalnya pada keluaran dari suatu ROM (Seksi 6-9).
Diinginkan untuk memperagakan kode ini, misalnya 01011, dalam bentuk seri.
LSB deberikan kepada Pr0, bit 21
kepada Pr1, . . . , sehingga Pr0 = 1, Pr1 = 1, Pr = 0, Pr3 = 1, dan
Pr4 = 0. Pertama register dihapuskan dengan Cr = 0, dan kemudian Cr = 1. Pada masukan
preset enable keadaan 1 mengaktifkan semua gerbang NAND masukan ke-k, di mana
Prk = 1. Preset dari FLIP-FLOP ke- k bersangkutan sama dengan Pr =
0, dan tingkat ini dengan demikian
preset ke 1 (tabel 7-2). Dalam ilusstrasiini FF0, FF1, dan FF3 preset dan kata
masukan 01011 dituliskan ke dalam register, semua bit dalam kedudukan paralel,
oleh pulsa preset enable.
seri pada Q0 dengan menggunakan
lima pulsa jam. Ini dinamakan konverter paralel-ke-seri, atau
spatiaal-ke-temporal. Paket TI-165 merupakan register 8-bit paralel-masuk,
seri-keluar (PISO).
4.
Register Seperti diterangkan di atas, kata yang disimpan dapat dibaca secara Paralel-masuk,
Paralel-keluaran (PIPO = Paralel-in, Paralel-out)
Seperti diterangkan di atas, data
dimasukkan dengan memasukkan 1 pada preset enable, atau terminal tulis.
Kemudian dapat diperoleh dalam bentuk paralel pada keluaran Q0, Q1,
. . . . kalau diinginkan untuk membaca register pada suatu waktu yang tertentu,
masing-masing keluaran Qk dimasukkan ke salah satu masukan dari
gerbang AND dua-masukan Nk, dan masukan kedua dari masing-masing AND
dirangsang oleh pulsa baca. Keluaran Nk sama dengan 0, kecuali untuk
periode pulsa, dimana ia membaca 1 kalau Qk = 1. (Gerbang Nk
tidak ditunjukkan dalam gambar 7-11)
Perhatian, bahwa dalm penggunaan ini sistem
tidak bekerja sebagai reggister geser karena tidak ada jam yang diperlukan (dan
tidak ada masukan seri). Masing-masing FLIP-FLOP-FLOP hanya digunakan sebagai
pengingat baca/tulis 1-bit yang terisolir.
5. Register Geser-Kanan, Geser-Kiri
(Dua-Arah)
Beberapa register-register komersial
diperlengkapi dengan gerbang yang memungkinkan penggeseran data dari kanan ke kiri
maupun pada arah sebaliknya. Salah satu penggunaan sistem demikian adalah untuk
membentuk perkalian atau pembagian oleh pembilang 2, seperti sekarang akan
diterangkan. Mula-mula anggaplah register geser-kanan seperti gambar 7-11 dan
bahwa masukan serinya diberikan rendah.
Misalkan bahwa suatu angka biner disimpan
dalam register geser, dengan bit yang paling kurang signifikan disimpan dalam
FF0. Sekarang berikan satu pulsa jam. Tiap bit sekarang bergerak menuju tempat
signifikan lebih rendah berikutnya, dan kemudian dibagi 2. Angka tersebut
sekarang yang disimpan dalam register setengah dari angka asli, asalkan FF0
aslinya 0. Karena bit 20 hilang pada saat menggeser ke kanan, maka
kalau FF0 aslinya berkeadaan 1, sesuai dengan angka desimal 1, sesudah penggeseran
register berada dalam kesalahan sebesar angka desimal 0,5. Pulsa jam berikutnya
mengakibatkan pembagian 2 berikutny, dan seterusnya.
Sekarang Anggalah bahwa sistem dikawatkan
demikian sehingga tiap-tiap pulsa jam mengakibatkan penggeseran ke kiri.
Masing-masing bit sekarang bergerak menuju digit dengan signifikan lebih besar,
dan angkanya sekarang disimpan dengan perkalian oleh 2.
Diagram logika untuk TI-194
register-register dua-arah 4-bit ditunjukkan dalam Gambar 7-12. Ini merupakan
register universal karena ia dapat berfungsi dalam semua mode yang dibahas
dalam seksi ini; SIPO, SISO, PISO, PIPO, dan sebagai register dua-arah. Ia
mempunyai dua masukan kendali, S0 dan S1, yang
memungkinkan empat mode operasi yang didaftar dalam tabel 7-4, dapat dilaksanakan.
Register geser universal 8-bit TI-198 mempunyai susunan yang sama seperti yang
ditunjukkan dalam gambar 7-12. Ia mempunyai ekivalen 87 gerbang, dalam paket
24-kaki.
Baris Penundaan
Digital
Suatu register dapat digunakan untuk
memasukkan waktu tunda D
ke dalam sistem, di mana D
merupakan perkalian bulat dari suatu periode jam T. Sehingga suatu rentetan
pulsa masukan muncul pada keluaran dari register tingkat-n tertunda selama
waktu (n - 1) T = D.
Generator Urutan2
Penggunaan yang penting dari register geser
adalah untuk menghasilkan urutan biner. Sistem ini dinamakan generator kata,
atau karakter. Register geser FLIP-FLOP dipreset untuk memberikan kode yang
diinginkan. Sehingga jam menerapkan pulsa geser, dan keluaran dari register geser memberikan pola temporal
sesuai dengan urutan yang ditentukan. Jelas, kita baru saja menjelaskan suatu
register paralel-masuk, seri-keluar. Untuk maksud pengujian, sering diperlukan
agar kode secara kontinyu diulang. Mode operasi ini mudah diperoleh dengan
mengumpan keluaran Q0 dari register kembali masuk ke masukan seri
untuk membentuk suatu “register geser masukan-kembali”. Konfigurasi demikian
dinamakan pengingat dinamis, atau pengingat sirkulasi, atun pengingat hanya-baca register geser.
Generator urutan dapat juga diperoleh dari
multiplexer (seksi 6-7) dan sejumlah urutan simultan dapat dihasilkan dengan
menggunakan ROM (Seksi 6-9).
Tidak ada komentar:
Posting Komentar