Struktur CPU
KOMPONEN UTAMA CPU
- Arithmetic
and Logic Unit (ALU)
- Control
Unit (CU)
- Registers
- CPU
Interconnections
Arithmetic
and Logic Unit
- Bertugas membentuk
fungsi-fungsi pengolahan data komputer.
- Arithmetic Logic Unit sering disebut dengan bahasa
mesin (machine language) karena bagian ini mengerkjakan
instruksi-instruksi bahasa mesin yang diberikan kepadanya.
- Arithmetic Logic Unit terdiri dari dua bagian yaitu
unit arithmetic dan unit logika Boolean yang masing-masing memiliki
spesifikasi tugas tersendiri.
Control Unit
[CU]
- Bertugas mengontrol operasi CPU
dan secara keseluruhan mengontrol komputer sehingga terjadi sinkronisasi
kerja antar komponen dalam menjalankan fungsi-fungsi operasinya.
- Termasuk dalam tanggung jawab
unit kontrol adalah mengambil instruksi-intstruksi dari memori utama dan
menentukan jenis instruksi tersebut.
Registers
[Top Level Memory]
- Media penyimpanan internal CPU
yang digunakan saat proses pengolahan data.
- Memori ini bersifat sementara,
biasanya digunakan untuk menyimpan data saat diolah ataupun data untuk
pengolahan selanjutnya.
CPU
Interconnections
- Sistem koneksi dan bus yang
menghubungkan komponen internal dan bus-bus eksternal CPU.
- Komponen internal CPU yaitu
ALU, unit kontrol dan register-register.
- Komponen eksternal CPU : sistem
lainnya, seperti memori utama, piranti masukan dan keluaran.
KOMPONEN INTERNAL CONTROL PROCESSING UNIT [CPU]
Fungsi CPU
- Menjalankan program-program
yang disimpan dalam memori utama dengan cara mengambil
instruksi-instruksi, menguji instruksi tersebut dan mengeksekusinya satu
persatu sesuai alur perintah.
- Pandangan paling sederhana
proses eksekusi program adalah dengan mengambil pengolahan instruksi yang
terdiri dari dua langkah, yaitu : operasi pembacaan instruksi (fetch) dan
operasi pelaksanaan instruksi (execute).
Siklus
Instruksi
- Terdiri dari siklus fetch dan
siklus eksekusi.
Siklus Fetch
– Eksekusi
- Pada setiap siklus instruksi,
CPU awalnya akan membaca instruksi dari memori.
- Terdapat register dalam CPU
yang berfungsi mengawasi dan menghitung instruksi selanjutnya, yang
disebut dengan Program Counter (PC).
- PC akan menambah satu
hitungannya setiap kali CPU membaca instruksi.
- Instruksi-instruksi yang dibaca
akan dibuat dalam register instruksi (IR).
- Instruksi-instruksi ini dalam
bentuk kode-kode biner yang dapat di interprestasikan oleh CPU kemudian
dilakukan aksi yang diperlukan.
Aksi CPU
- CPU – Memori, perpindahan data
dari CPU ke memori dan sebaliknya.
- CPU – I/O, perpindahan data
dari CPU ke modul I/O dan sebaliknya.
- Pengolahan Data, CPU membentuk
sejumlah operasi aritmatika dan logika terhadap data.
- Kontrol, merupakan instruksi
untuk pengontrolan fungsi atau kerja. Misalnya instruksi pengubahan urusan
eksekusi.
Siklus
Eksekusi
- Instruction Address Calculation
(IAC), yaitu mengkalkulasikan atau menentukan alamat instruksi berikutnya
yang akan dieksekusi.
- Instruction Fetch (IF), yaitu
membaca atau mengambil instruksi dari lokasi memorinya ke CPU.
- Instruction Operation Decoding
(IOD), yaitu menganalisa instruksi untuk menentukan jenis operasi yang
akan dibentuk dan operand yang akan digunakan.
- Operator Address Calculation
(OAC), yaitu menentukan alamat operand, hal ini dilakukan apabila
melibatkan referensi operand pada memori.
- Operand Fetch (OF), mengambil
operand dari memori atau dari modul I/O.
- Data Operation (DO), yaitu
membentuk operasi yang diperintahkan dalam instruksi.
- Operand Store (OS), yaitu
menyimpan hasil eksekusi ke dalam memori.
Fungsi
Interupsi
- Mekanisme penghentian atau
pengalihan pengolahan instruksi dalam CPU kepada routine interupsi.
- Hampir semua modul (memori dan
I/O) memiliki mekanisme yang dapat menginterupsi kerja CPU.
Tujuan
Interupsi
- Secara umum untuk manajemen
pengeksekusian routine instruksi agar efektif dan efisien antar CPU dan
modul-modul I/O maupun memori.
- Setiap komponen computer dapat
menjalankan tugasnya secara bersamaan, tetapi kendali terletak pada CPU
disamping itu kecepatan eksekusi masing-masing modul berbeda.
- Dapat sebagai sinkronisasi
kerja antar modul
Kelas Sinyal
Interupsi
- Program, yaitu interupsi yang
dibangkitkan dengan beberapa kondisi yang terjadi pada hasil eksekusi
program. Contohnya : aritmatika overflow, pembagian nol, operasi ilegal.
- Timer, adalah interupsi yang
dibangkitkan perwaktuan dalam processor. Sinyal ini memungkinkan sistem
operasi menjalankan fungsi tertentu secara reguler.
- I/O, sinyal interupsi yang
dibangkitkan oleh modul I/O sehubungan pemberitahuan kondisi error dan
penyelesaian suatu operasi.
- Hardware failure, adalah
interupsi yang dibangkitkan oleh kegagalan daya atau kesalahan paritas
memori.
Proses
Interupsi
- Dengan adanya mekanisme
interupsi, prosesor dapat digunakan untuk mengeksekusi instruksi-instruksi
lain.
- Saat suatu modul telah selesai
menjalankan tugasnya dan siap menerima tugas berikutnya, maka modul ini
akan mengirimkan permintaan interupsi ke prosesor.
- Kemudian prosesor akan
menghentikan eksekusi yang dijalankannya untuk menghandle routine
interupsi.
- Setelah program interupsi
selesai, maka prosesor akan melanjutkan eksekusi programnya.
- Saat sinyal interupsi diterima
prosesor ada dua kemungkinan tindakan, yaitu
- interupsi diterima/ditolak dan
interupsi ditolak.
Interupsi
ditangguhkan
Apa yang dilakukan prosesor?
Apa yang dilakukan prosesor?
- Prosesor menangguhkan eksekusi
program yang dijalankan dan menyimpan konteksnya. Tindakan ini adalah
menyimpan kalamat instruksi berikutnya yang akan dieksekusi dan data lain
yang relevan
- Prosesor menyetel program
counter (PC) ke alamat awal routine interrupt handler.
Sistem
Operasi Kompleks
- Interupsi Ganda (multiple
interrupt)
Misalnya
suatu komputer akan menerima permintaan interupsi saat proses pencetakan dengan
printer selesai, disamping itu dimungkinkan dari saluran komunikasi akan
mengirimkan permintaan interupsi setiap kali data tiba.
- Dapat diambil dua buah
pendekatan untuk menangani interupsi ganda ini.
Pendekatan
Interupsi Ganda
Ada dua
pendekatan :
- Pendekatan ini disebut
pengolahan interupsi berurutan/sekuensial.
- Menolak atau tidak mengizinkan
interupsi lain saat suatu interupsi ditangani prosesor.
- Setelah prosesor selesai
menangani suatu interupsi maka interupsi lain baru ditangani.
- Pengolahan interupsi bersarang
yaitu mendefinisikan prioritas bagi interupsi.
- Interrupt handler mengizinkan
interupsi berprioritas lebih tinggi ditangani terlebih dahulu.
0 komentar:
Posting Komentar