Bagaimana CPU dan Memori Memproses Miliaran Instruksi per Detik?
- Menjelaskan tahapan input, processing, output, dan storage.
- Menganalisis peran CPU, memori, register, serta perangkat input/output.
- Menelusuri bagaimana instruksi diproses hingga menghasilkan informasi.
- Mengevaluasi pengaruh cache, clock speed, dan pipelining terhadap kinerja.
Pertanyaan pemantik: Ketika kita menekan tombol pada kalkulator digital, bagaimana angka berubah menjadi hasil di layar?
Setiap klik mouse, tombol keyboard, atau animasi game yang kita lihat di layar komputer sejatinya diuraikan menjadi jutaan perintah biner sederhana (0 dan 1). Proses pemrosesan internal ini bertumpu pada Arsitektur Von Neumann dan digerakkan oleh Siklus Mesin (Machine Cycle) yang berulang tanpa henti.
1. Fetch (Mengambil): CPU mengambil kode instruksi dari RAM. → 2. Decode (Menerjemahkan): CPU menguraikan maksud kode perintah. → 3. Execute (Mengeksekusi): ALU/CPU menjalankan perhitungan/logika. → 4. Store (Menyimpan): CPU menuliskan hasil olahan kembali ke RAM/Register.
Karena CPU tidak dapat memproses instruksi tanpa mengetahui alamat memori berikutnya, maka siklus ini dikawal ketat oleh penanda waktu (Clock Pulse) dan register internal.
Elemen Kunci di Dalam CPU: Register & Bus Data
Untuk menjalankan siklus eksekusi dengan kecepatan tinggi, CPU dilengkapi dengan lokasi penyimpanan internal sementara berukuran sangat kecil bernama Register, yang terhubung melalui jalur Bus.
- Program Counter (PC): Menyimpan alamat memori RAM dari instruksi *berikutnya* yang akan diambil.
- Memory Address Register (MAR): Memegang alamat lokasi RAM yang sedang dibaca atau ditulis.
- Memory Data Register (MDR): Menampung data/instruksi mentah yang baru saja diambil dari RAM atau yang akan dikirim ke RAM.
- Instruction Register (IR): Menampung kode instruksi biner yang sedang di-decode oleh Unit Kontrol (CU).
- Accumulator (ACC): Menampung hasil perhitungan sementara yang dikeluarkan oleh ALU.
Jalur Bus Sistem (Address Bus, Data Bus, Control Bus) berfungsi sebagai saluran fisik tempat lalu lintas sinyal biner mengalir antar-register dan RAM.
Tahap 1: Pengambilan Instruksi (Fetch Phase)
Tahap awal dalam siklus mesin adalah membawa data instruksi dari memori utama (RAM) ke dalam sirkuit CPU.
1. Alamat instruksi di Program Counter (PC) disalin ke Memory Address Register (MAR). → 2. Control Unit mengirim sinyal *Read* melalui Control Bus ke RAM. → 3. RAM membaca alamat tersebut dan mengirimkan biner instruksi via Data Bus menuju Memory Data Register (MDR). → 4. Instruksi di MDR dipindahkan ke Instruction Register (IR) untuk diproses. → 5. Nilai pada Program Counter (PC) bertambah secara otomatis (+1) untuk menunjuk ke alamat instruksi berikutnya.
Jika PC gagal menaikkan nilai nilainya (+1), CPU akan terjebak mengeksekusi instruksi yang sama berulang-ulang (Infinite Loop).
Tahap 2: Penerjemahan Kode (Decode Phase)
Setelah instruksi berada di dalam Instruction Register (IR), sinyal biner tersebut harus diterjemahkan agar CPU memahami aksi apa yang diminta.
1. Control Unit (CU) memecah struktur biner instruksi menjadi dua bagian utama: Opcode (Operation Code - jenis perintah seperti ADD, SUB, LOAD) dan Operand (data atau alamat data yang dioperasikan). → 2. Pengkode sirkuit (*Instruction Decoder*) mengonversi Opcode menjadi serangkaian mikro-sinyal kendali elektrik. → 3. Jika perintah membutuhkan data tambahan dari RAM, CU memerintahkan pengambil data sekunder untuk membaca alamat Operand tersebut.
Tahap 3 & 4: Eksekusi (Execute) & Penyimpanan (Store)
Setelah sinyal kendali siap, perhitungan diwujudkan dan hasilnya disimpan kembali ke tempat penyimpanan.
1. Execute Phase: Jika instruksi melibatkan operasi matematika/logika, ALU (Arithmetic Logic Unit) melakukan perhitungan. Hasil perhitungan fisik tersebut ditampung sementara di register Accumulator (ACC).
2. Store Phase: Control Unit memerintahkan hasil akhir di Accumulator untuk ditulis kembali ke RAM melalui MDR dan MAR, atau disimpan tetap di register untuk instruksi berikutnya.
3. *Siklus Selesai:* CPU kembali ke Tahap 1 (Fetch) untuk membaca instruksi baru yang ditunjuk oleh Program Counter (PC).
Faktor Penentu Kecepatan CPU: Clock Speed & Cache Memory
Mengapa satu prosesor dapat menjalankan siklus instruksi jauh lebih cepat daripada prosesor lainnya?
- Clock Speed (Kecepatan Clock - GHz): Menunjukkan frekuensi clock; 1 GHz setara satu miliar siklus clock per detik. Clock lebih tinggi dapat membantu, tetapi tidak otomatis membuat semua komputer lebih cepat karena kinerja juga dipengaruhi arsitektur, jumlah core, cache, suhu, dan jenis beban kerja.
- Cache Memory (L1, L2, L3): Memori internal berkecepatan ultra-tinggi di dalam chip CPU. Berfungsi menampung data yang sering diakses agar CPU tidak perlu menunggu lama mengambil data dari RAM (*RAM Latency Bottleneck*).
- Pipelining: Teknik mengeksekusi beberapa tahap siklus instruksi berbeda secara bersamaan dalam paralel (misal: mengambil instruksi 2 saat instruksi 1 sedang di-decode).
Matriks Sintesis Siklus Eksekusi CPU
Ringkasan komparatif peranan 4 tahapan dalam Siklus Mesin (*Machine Cycle*):
| Tahapan Siklus | Komponen Utama Terlibat | Aksi Fisik Utama | Dampak Jika Tahap Terganggu |
|---|---|---|---|
| 1. Fetch | PC, MAR, MDR, RAM, Address Bus | Menyalin kode biner dari RAM ke IR; PC + 1 | CPU tidak mendapatkan instruksi; komputer macet (*Freeze*) |
| 2. Decode | IR, Control Unit (CU), Decoder | Memecah biner menjadi Opcode & Operand | Instruksi tidak dikenali (*Invalid Opcode Error*) |
| 3. Execute | ALU, Accumulator (ACC) | Menjalankan perhitungan matematika / logika | Hasil kalkulasi salah atau aplikasi crash (*Arithmetic Overflow*) |
| 4. Store | ACC, MDR, MAR, RAM, Data Bus | Menuliskan hasil olahan dari ACC ke RAM | Data hasil olahan hilang dan tidak dapat diperbarui |
Petunjuk Pengerjaan Kuis Evaluasi (HOTS)
Anda telah mempelajari alur siklus eksekusi instruksi (Fetch-Decode-Execute-Store), fungsi register (PC, MAR, MDR, IR, ACC), peran Opcode/Operand, hingga faktor Cache dan Clock Speed. Ujilah pemahaman analitis Anda melalui kuis interaktif ini.
1. Klik tombol "📝 Buka Kuis Realtime" di pojok kanan atas.
2. Isikan Nama Lengkap, Kelas, dan Asal Sekolah pada form yang tersedia.
3. Jawab 10 soal HOTS berbasis studi kasus mekanisme internal CPU.
4. Anda tetap dapat membaca slide materi ini sambil membuka panel kuis.
5. Setelah selesai, klik tombol "Kirim & Lihat Analisis Hasil" untuk menyimpan nilai ke server database dan melihat Papan Nilai.