• Agar dapat melakukan hal-hal di atas, maka CPU perlu menyimpan data untuk
sementara waktu
• CPU harus dapat mengingat lokasi instruksi terakhir sehingga CPU akan dapat
mengambil instruksi berikutnya.
• CPU perlu menyimpan data dan instruksi untuk sementara waktu pada saat instruksi
sedang di eksekusi, jadi dengan kata lain CPU memerlukan memori internal dengan
ukuran kecil
Diagram Siklus Instruksi
Diagram Siklus Instruksi
• Instruction Address Calculation (IAC), yaitu mengkalkulasi atau menentukan alamat
instruksi berikutnya yang akan dieksekusi.
• Instruction Fetch (IF), yaitu membaca atau pengambil 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.
• Operand Address Calculation (OAC), yaitu menentukan alamat operand, hal ini
dilakukan apabila melibatkan referensi operand pada memori.
• Operand Fetch (OF), adalah 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
CPU State
CPU mempunyai 2 keadaan operasi utama yaitu running state
dan halt state.
• Running state CPU melakukan siklus instruksi
• Halt state CPU tidak melakukan siklus instruksi
• Ketika komputer dihidupkan, maka CPU segera melakukan
running state
CPU State
CPU beralih dari running state ke halt state apabila ada aksi berikut :
1. Software halt : sebuah instruksi halt diambil dan akan dieksekusi oleh
CPU, karena itu CPU dalam keadaan berhenti.
2. Halt input : CPU menerima masukan halt dan berhenti. Sinyal ini
dapat berasal dari penekanan tombol HALT oleh operator atau saklar
PAUSE pada panel depan atau oleh sirkuit eksternal ke CPU
3. Auto shutdown : selama siklus instruksi, CPU mengalami situasi
abnormal yg serius dan karena itu terjadi shutdown yg menghentikan
siklus instruksi. Jika kemampuan shutdown tidak tersedia dlm CPU,
maka bisa terjadi hang, loop atau menjadi tidak beres pada situasi
abnormal yg tidak terprediksi.
Fungsi CPU Register
Satu persatu setiap instruksi kode mesin diambil dari RAM ke dalam CPU Instruction
Register sehingga dapat dieksekusi. Delapan sel register telah dialokasikan untuk
menyimpan op-code, 24 sel tersisa telah dialokasikan untuk menyimpan operan. 8 bit
yang tersedia untuk op-code, prosesor ini dapat memiliki hingga 2 pangkat 8 = 256 op-
code dalam set instruksinya. Dengan 24 bit tersedia untuk operan (alamat memori),
instruksi dapat merujuk hinggan 2 pangkat 24 alamat memori berbeda secara langsung.
Lebih dari 16,7 juta alamat memori berbeda, tapi ini artinya tidak banyak (sama dengan
16 MB memori). Untuk IR ukuran tetap saat ini, bagaimana kita dapat meningkatkan
jumlah memori yg dapat ditangani oleh program?
RISC dan CISC
Instruction Register
Salah satu solusinya adalah mengalokasikan lebih banyak bit ke operan. Disini
dialokasikan 27 bit untuk menentukan alamat memori yang artinya 2 pangkat 27
lokasi memori yang berbeda sekarang dapat diakses secara langsung, yaitu lebih
dari 134 juta lokasi saat ini. Tetapi ada harga yang harus dibayar, sekarang hanya
tersedia 5 bit untuk op-code yang artinya 2 pangkat 5 = 32 operasi yang
mungkin dalam set instruksi.
Keputusan desain mendasar berapa bit dialokasikan untuk op-code dan
berapa bit untuk operan, adalah inti yang membedakan antara RISC dan CISC.
RISC dan CISC
Complex Instruction Set
Tidak ada jawaban sederhana, seberapa cepat prosesor dapat menyelesaikan tugas, tergantung
pada beberapa hal: jumlah siklus clock perdetik; jumlah siklus clock yang diperlukan untuk
menyelesaikan satu instruksi; jumlah instruksi yang diperlukan untuk melakukan tugas.
Siklus clock perdetik Sebagian besar tidak tergantung pada arsitektur prosesor sehingga ada
dua factor:
- Prosesor CISC mencapai kecepatan dengan set instruksi yang kaya sehingga dibutuhkan
lebih sedikit instruksi untuk menyelesaikan tugas.
- Prosesor RISC menggunakan lebih banyak instruksi untuk tugas yang diberikan, tapi
siklus clock lebih sedikit diperlukan untuk mengeksekusi setiap instruksi.
Maka tidak ada manfaat satu diatas yang lain.
Tapi, RISC sering digunakan dalam aplikasi kelas atas yang membutuhkan pemrosesan cepat
dari sejumlah instruksi terbatas seperti pemrosesan video, gambar dan audio, disisi lain CISC
sering digunakan dalam aplikasi kelas bawah seperti system keamanan dan otomatisasi
rumah.