Flip Flop
Flip Flop
Flip-flop
A. Pengertian
Flip-flop adalah suatu rangkaian elektronika yang memiliki dua kondisi stabil dan dapat digunakan
untuk menyimpan informasi. Flip Flop merupakan pengaplikasian gerbang logika yang bersifat Multivibrator
Bistabil. Dikatakan Multibrator Bistabil karena kedua tingkat tegangan keluaran pada Multivibrator tersebut
adalah stabil dan hanya akan mengubah situasi tingkat tegangan keluarannya saat dipicu (trigger). Flip-flop
mempunyai dua Output (Keluaran) yang salah satu outputnya merupakan komplemen Output yang lain.
Flip-flop Elektronik yang pertama kali ditemukan oleh dua orang ahli fisika Inggris William Eccles and F.
W. Jordan pada tahun 1918 ini merupakan dasar dari penyimpan data memory pada komputer maupun
Smartphone. Flip-flop juga dapat digunakan sebagai penghitung detak dan sebagai penyinkronsasian input
sinyal waktu variabel untuk beberapa sinyal waktu referensi.
D. Jenis-jenis Flip-flop
Rangkaian Flip-flop pada umumnya dapat dibagi menjadi beberapa jenis, yaitu S-R Flip-flop, D Flip-flop,
T Flip-flop dan JK Flip-flop. Berikut dibawah ini adalah penjelasan singkatnya.
a. Flip Flop RS
Flip flop RS atau SR (SET – RESET) merupakan dasar dari flip flop jenis lain. Flip flop ini
mempunyai 2 masukkan : satu disebut S (set) yang dipakai untuk menyetel (membuat keluaran flip flop
berkeadaan 1) dan yang lain disebut R (reset) yang dipakai untuk me-reset (membuat keluaran berkeadaan
0). Flip flop RS dapat dibentuk dari dua gerbang NOR atau dua gerbang NAND.
b. Flip Flop JK
Flip flop JK yang diberi nama berdasarkan nama masukannya, yaitu J dan K. Flip Flop ini
mengatasi kelemahan flip flop RS, yang tidak mengizinkan pemberian masukkan R=S=1, dengan meng-
NAND-kan masukkan dari luar dengan keluaran. Flip flop JK ini tidak berkerja tak serempak dengan
rangkaian lain karena tidak ada penabuhan (clocking).
c. Flip Flop D
Flip flop d ini berasal dari delay. Dlip dlop ini mempunyai hanya satu masukkan, yaitu D. jenis flip
flop ini sangat banyak dipakai sebagai sel memori dalam computer. Pada umumnya flip flop ini dilengkapi
masukkan penabuh. Dapat dilihat bahwa sebenarnya flip flop D berfungsi seperti apa yang dilakukan oleh
flip flop JK bila masukkan K dihubungkan dengan komplemen masukan J.
d. Flip Flop T
Flip flop T diambil dari sifatnya yang selalu berubah keadaan setiap adanya sinyal pemicu (trigger)
pada masukkannya. Input T merupakan satu-satunkanya masukkan yang ada pada flip flop jenis ini
sedangkan keluarannya tetap dua, umumnya. Kalau keadaan keluar flip flop 0, makasetelah adanya sinyal
pemicu keadaan berikut menjadi 1 dan bila keadaannya 2, maka setelah adanya pemicuan keadaannya
berubah menjadi 0. flip flop T dapat disusun dari satu flip flop RS dan dua Gerbang AND.
RS Flip-flop adalah clocked RS-FF yang dilengkapi dengan sebuah terminal pulsa clock. Pulsa
clock ini berfungsi mengatur keadaan Set dan Reset. Bila pulsa clock berlogik 0, maka perubahan logik
pada input R dan S tidak akan mengakibatkan perubahan pada output Q dan Qnot. Akan tetapi apabila
pulsa clock berlogik 1, maka perubahan pada input R dan S dapat mengakibatkan perubahan pada output
QÂ dan Q not.
2. Programmed I/O
Pada I/O terprogram, data saling dipertukarkan antara CPU dan modul I/O. CPU mengeksekusi
program yang memberikan operasi I/O kepada CPU secara langsung, seperti pemindahan data,
pengiriman perintah baca maupun tulis, dan monitoring perangkat. Kelemahan teknik ini adalah
CPU akan menunggu sampai operasi I/O selesai dilakukan modul I/O sehingga akan membuang
waktu, apalagi CPU lebih cepat proses operasinya. Dalam teknik ini, modul I/O tidak dapat
melakukan interupsi kepada CPU terhadap proses – proses yang diinteruksikan padanya. Seluruh
proses merupakan tanggung jawab CPU sampai operasi lengkap dilaksanakan.
Untuk melaksanakan perintah – perintah I/O, CPU akan mengeluarkan sebuah alamat bagi modul
I/O dan perangkat peripheralnya sehingga terspesifikasi secara khusus dan sebuah perintah I/O
yang akan dilakukan.
Keunggulan, Pemroses tidak disibukkan menunggui dan menjaga perangkat I/O untuk
memeriksa status perangkat.
Kelemahan, Pemroses terikat ketat dalam mengelola transfer I/O. Sejumlah intruksi harus
dieksekusi untuk tiap transfer I/O dan Rate transfer I/O dibatasi kecepatan menguji dan
melayani operasi
Dalam interrupt driven I/O, CPU tetap memiliki kontol langsung terhadap proses I/O,
seperti pada programmed I/O. CPU meminta untuk melakukan operasi I/O, modul I/O mentrasfer
perintah ke peripheral, sementara itu CPU dapat melakukan kegiatan lain / melaksanakan proses
berikutnya, modul I/O mengirimkan interrupt kepada CPU untuk memberitahukan status hasil
operasinya, dan CPU bereaksi atas status tersebut.Interrupt driven I/O memiliki kelebihan yaitu
peniadaan waktu tunggu CPU, sehingga mempercepat proses CPU.
Pada programed I/O dan interrupt driven I/O, CPU melakukannya secara langsung untuk
mengirimkan perintah ke peripheral, tetapi pada DMA memerintahkan DMA apa yang harus
dilakukan ( read / write ), alamat peripheral, tempat data dalam memori, dan jumlah data yang
akan ditransfer. Setelah itu, CPU melanjutkan pekerjaan / proses nya yang lain. DMA
melaksanakan apa yang diperintahkan oleh CPU tadi, jika semua tugas telah selesai, maka DMA
mengirimkan interrupt kepada CPU, pada saat itu CPU akan merespon interrupt yang diterimanya.
Keunggulan DMA adalah penghematan waktu pemrosesan dan peningkatan kinerja I/O.
CS A1 A0 SELEKSI
0 0 0 C0
0 0 1 C1
0 1 0 C2
0 1 1 Kontrol Daftar
Penerapan :
Nilai terkait adalah nilai hitung mundur timer , yang menentukan kapan interupsi timer
berikutnya terjadi. Itu dimuat di salah satu register kontrol timer dan dikurangi dengan satu setiap
siklus clock input. Register pengatur waktu yang tersisa menentukan mode operasi pengatur waktu
lainnya, seperti apakah penghitung waktu periodik dihasilkan dan apakah nilai hitung mundur
harus secara otomatis dimuat kembali untuk pengatur waktu berikutnya.
Sistem tertanam yang disesuaikan datang dengan skema yang merinci interkoneksi
komponen sistem. Dari skema ini, pengembang dapat menentukan komponen eksternal mana yang
bergantung pada chip timer sebagai sumber jam input. Misalnya, jika pin output chip timer saling
berhubungan dengan pin input kontrol dari chip DMA, chip timer mengontrol laju refresh DRAM.
Inisialisasi timer-chip dilakukan sebagai bagian dari startup sistem. Secara umum,
inisialisasi chip timer melibatkan langkah-langkah berikut:
Menyetel ulang dan membawa chip timer ke kondisi perangkat yang dikenal.
Menghitung nilai yang tepat untuk mendapatkan frekuensi interupsi timer yang diinginkan
dan memprogram nilai ini ke register kontrol timer yang sesuai.
Memprogram register pengatur waktu lainnya yang terkait dengan frekuensi interupsi
sebelumnya dengan nilai yang benar. Langkah ini tergantung pada chip timer dan
ditentukan secara rinci oleh manual referensi hardware chip timer.
Memprogram chip timer dengan mode operasi yang tepat.
Menginstal rutinitas layanan interupsi timer ke sistem.
Mengaktifkan penghenti waktu.
Perilaku output chip timer dapat diprogram melalui register kontrol, yang paling penting
adalah register interrupt-rate register (TINTR), yang adalah sebagai berikut:
TINTR = F (x)
Pembuat chip timer menyediakan fungsi ini dan informasinya tersedia di manual referensi
programmer. Tingkat interupsi timer sama dengan jumlah kejadian interupsi timer per
detik. Setiap interupsi disebut tanda centang, yang mewakili satuan waktu. Misalnya, jika laju
pengatur waktu adalah 100 kutu, setiap kutu mewakili waktu yang telah berlalu 10 milidetik.
Kemampuan pembuatan peristiwa berkala PIT penting bagi banyak kernel waktu
nyata. Inti dari banyak kernel real-time adalah pengumuman terjadinya interupsi timer,
atau pengumuman centang , dari ISR ke kernel, serta ke scheduler kernel, jika ada. Banyak dari
penjadwal kernel ini menjalankan algoritma mereka dan melakukan penjadwalan tugas pada setiap
tick.
4. CISC (Complex Instructions Set Computer).
Definisi CISC
Complex instruction-set computing atau Complex Instruction-Set Computer (CISC;
“Kumpulan instruksi komputasi kompleks”) adalah sebuah arsitektur dari set instruksi dimana
setiap instruksi akan menjalankan beberapa operasi tingkat rendah, seperti pengambilan dari
memory, operasi aritmetika, dan penyimpanan ke dalam memory, semuanya sekaligus
hanya di dalam sebuah instruksi. Karakteristik CISC dapat dikatakan bertolak-belakang
dengan RISC.
Sebelum proses RISC didesain untuk pertama kalinya, banyak arsitek komputer
mencoba menjembatani celah semantik”, yaitu bagaimana cara untuk membuat set-set
instruksi untuk mempermudah pemrograman level tinggi dengan menyediakan instruksi
“level tinggi” seperti pemanggilan procedure, proses pengulangan dan mode-mode
pengalamatan kompleks sehingga struktur data dan akses array dapat dikombinasikan
dengan sebuah instruksi. Karakteristik CISC yg “sarat informasi” ini memberikan keuntungan
di mana ukuran program-program yang dihasilkan akan menjadi relatif lebih kecil, dan
penggunaan memory akan semakin berkurang. Karena CISC inilah biaya pembuatan
komputer pada saat itu (tahun 1960) menjadi jauh lebih hemat.
Memang setelah itu banyak desain yang memberikan hasil yang lebih baik dengan
biaya yang lebih rendah, dan juga mengakibatkan pemrograman level tinggi menjadi lebih
sederhana, tetapi pada kenyataannya tidaklah selalu demikian. Contohnya, arsitektur
kompleks yang didesain dengan kurang baik (yang menggunakan kode-kode mikro untuk
mengakses fungsi-fungsi hardware), akan berada pada situasi di mana akan lebih mudah
untuk meningkatkan performansi dengan tidak menggunakan instruksi yang kompleks
(seperti instruksi pemanggilan procedure), tetapi dengan menggunakan urutan instruksi yang
sederhana.
Satu alasan mengenai hal ini adalah karena set-set instruksi level-tinggi, yang sering
disandikan (untuk kode-kode yang kompleks), akan menjadi cukup sulit untuk diterjemahkan
kembali dan dijalankan secara efektif dengan jumlah transistor yang terbatas. Oleh karena
itu arsitektur -arsitektur ini memerlukan penanganan yang lebih terfokus pada desain
prosesor. Pada saat itu di mana jumlah transistor cukup terbatas, mengakibatkan semakin
sempitnya peluang ditemukannya cara-cara alternatif untuk optimisasi perkembangan
prosesor. Oleh karena itulah, pemikiran untuk menggunakan desain RISC muncul pada
pertengahan tahun 1970 (Pusat Penelitian Watson IBM 801 – IBMs)
Contoh-contoh prosesor CISC adalah System/360, VAX, PDP-11, varian Motorola 68000 ,
dan CPU AMD dan Intel x86.
Istilah RISC dan CISC saat ini kurang dikenal, setelah melihat perkembangan lebih
lanjut dari desain dan implementasi baik CISC dan CISC. Implementasi CISC paralel untuk
pertama kalinya, seperti 486 dari Intel, AMD, Cyrix, dan IBM telah mendukung setiap instruksi
yang digunakan oleh prosesor-prosesor sebelumnya, meskipun efisiensi tertingginya hanya
saat digunakan pada subset x86 yang sederhana (mirip dengan set instruksi RISC, tetapi
tanpa batasan penyimpanan/pengambilan data dari RISC). Prosesor-prosesor modern x86
juga telah menyandikan dan membagi lebih banyak lagi instruksi-instruksi kompleks menjadi
beberapa “operasi-mikro” internal yang lebih kecil sehingga dapat instruksi-instruksi tersebut
dapat dilakukan secara paralel, sehingga mencapai performansi tinggi pada subset instruksi
yang lebih besar
Jadi sebenarnya Tujuan utama dari arsitektur CISC adalah melaksanakan suatu
perintah cukup dengan beberapa baris bahasa mesin sedikit mungkin. Hal ini bisa tercapai
dengan cara membuat perangkat keras prosesor mampu memahami dan menjalankan
beberapa rangkaian operasi. Untuk tujuan contoh kita kali ini, sebuah prosesor CISC sudah
dilengkapi dengan sebuah instruksi khusus, yang kita beri nama MULT. Saat dijalankan,
instruksi akan membaca dua nilai dan menyimpannya ke 2 register yag berbeda, melakukan
perkalian operan di unit eksekusi dan kemudian mengambalikan lagi hasilnya ke register
yang benar. Jadi instruksi-nya cukup satu saja, Sedangkan
Sejarah RISC
Reduced Instruction Set Computing (RISC) atau “Komputasi set instruksi yang
disederhanakan” pertama kali digagas oleh John Cocke, peneliti dari IBM di Yorktown, New
York pada tahun 1974 saat ia membuktikan bahwa sekitar 20% instruksi pada sebuah
prosesor ternyata menangani sekitar 80% dari keseluruhan kerjanya. Komputer pertama
yang menggunakan konsep RISC ini adalah IBM PC/XT pada era 1980-an. Istilah RISC
sendiri pertama kali dipopulerkan oleh David Patterson, pengajar pada University of California
di Berkely.
RISC
DEFINISI RISC
Selain RISC, desain Central Processing Unit yang lain adalah CISC (Complex
Instruction Set Computing), yang jika diterjemahkan ke dalam Bahasa Indonesia berarti
Komputasi Kumpulan Instruksi yang kompleks atau rumit.
Tujuan utama dari arsitektur CISC adalah melaksanakan suatu instruksi cukup
dengan beberapa baris bahasa mesin yang relatif pendek sehingga implikasinya hanya
sedikit saja RAM yang digunakan untuk menyimpan instruksi-instruksi tersebut. Arsitektur
CISC menekankan pada perangkat keras karena filosofi dari arsitektur CISC yaitu bagaimana
memindahkan kerumitan perangkat lunak ke dalam perangkat keras.
Karakteristik CISC
RISC singkatan dari Reduced Instruction Set Computer. Merupakan bagian dari
arsitektur mikroprosessor, berbentuk kecil dan berfungsi untuk negeset istruksi dalam
komunikasi diantara arsitektur yang lainnya.
Sejarah RISC
Proyek RISC pertama dibuat oleh IBM, stanford dan UC –Berkeley pada akhir tahun
70 dan awal tahun 80an. IBM 801, Stanford MIPS, dan Barkeley RISC 1 dan 2 dibuat dengan
konsep yang sama sehingga dikenal sebagai RISC.
one cycle execution time : satu putaran eksekusi. Prosessor RISC mempunyai CPI
(clock per instruction)
atau waktu per instruksi untuk setiap putaran. Hal ini dimaksud untuk
mengoptimalkan setiap instruksi pada CPU.
Pipelining adalah sebuah teknik yang memungkinkan dapat melakukan eksekusi
secara simultan.Sehingga proses instruksi lebih efiisien
large number of registers: Jumlah register yang sangat banyak. RISC di Desain
dimaksudkan untuk dapat menampung jumlah register yang sangat banyak untuk
mengantisipasi agar tidak terjadi interaksi yang berlebih dengan memory.
Ciri-ciri
RISC :
1. Komputer vektor
2. Mikroprosesor Intel 960
3. Itanium (IA64) dari Intel Corporation
4. Power PC dari International Business Machine, dll.
CISC :
1. Prosesor system/360
2. Prosesor VAX
3. Prosesor PDP-11
4. CPU AMD
5. Intel x86, dll.
Kesimpulan
Perbedaan antara RISC dan CISC chip semakin kecil dan lebih kecil.. Yang penting
adalah seberapa cepat sebuah chip dapat mengeksekusi instruksi yang diberikan dan
seberapa baik menjalankan perangkat lunak yang ada. Saat ini, baik RISC dan CISC
produsen melakukan segalanya untuk mendapatkan keunggulan pada kompetisi. Masa
depan mungkin tidak membawa kemenangan kepada salah satu dari mereka, tetapi
membuat keduanya punah. EPIC bisa membuat RISC yang pertama punah dan kemudian
diikuti CISC.
Referensi