Powered By Blogger

Sabtu, 28 Januari 2017

Bagaimana Cara Kerja Processor ?

Beginilah Cara Kerja Processor, Semua instruksi yang kita keluarkan terhadap computer, baik dengan cara mengetik mengggunakan keyboard atau menggunakan mouse, akan diubah menjadi bahasa mesin yang hanya dapat dipahami oleh mesin. Nah, instruksi dalam bahasa mesin dalam bahasa khusus CPU, yang disebut dengan instruction set architecture (ISA, diterjemahkan sebagai arsitektur set instruksi), yang akan dipecah ke dalam banyak instruksi yang jauh lebih sederhana lagi, yang disebut dengan microcode. Instruksi-instruksi dalam microcode ini, seperti halnya saat menjumlahkan angka yang ada dalam register semuanya telah ditanamkan di dalam CPU, dan merupakan instruksi yang paling dasar yang digunakan oleh CPU.
Agar komputer dapat melakukan sinkronisasi terhadap semua operasinya, maka komputer menggunakan sebuah system clock atau system timer, yakni sebuah komponen kecil yang ditaruh pada motherboard. Secara berkala, system clock akan mengirimkan sebuah sinyal kepada seluruh komponen komputer, yang mungkin mirip dengan detak jantung manusia atau metronome yang digunakan oleh para musisi. Nah, sinyal-sinyal ini umumnya disebut dengan sebuah siklus, atau dalam bahasa Inggrisnya disebut clock cycle yang dinyatakan dalam satuan Hertz. Karena satuan Hertz menggunakan prefiks satuan yang biasa (bukan pangkat 2), maka 1 kilohertz setara dengan 1000 detakan pada system clock, dan 1 megahertz setara dengan 1000000 detakan, dan seterusnya.
Banyak komputer sekarang yang berjalan dengan system clock 200 MHz, dan semua perangkat yang terkoneksi ke system unit akan melakukan sinkronisasi dengaan system clock tersebut, dengan cara menyelaraskan dengan kecepatan yang sama dengan system clock atau beberapa kali lebih banyak bila memang lebih cepat dari 200 MHz, atau beberapa kali lebih banyak bila lebih lambat dari 200 MHz, dengan menggunakan sebuah angka sebagai faktor pengali (multiplier). Sebagai contoh, untuk sebuah CPU yang memiliki kecepatan 2000 MHz (2 GHz), memiliki faktor pengali 10, yang berarti kecepatan CPU tersebut berdetak 10 kali untuk setiap siklusnya.

Nah, untuk setiap detak CPU, prosesor akan dapat mengeksekusi satu microcode atau lebih. Sebagian besar computer modern mampu mengerjakan lebih banyak lagi dalam satu waktunya, dan untuk system seperti itu lazim diberi atribut sebagai superscalar, yang merujuk pada kemampuan CPU untuk memproses banyak instruksi per siklusnya (dalam Bahasa Inggrisnya Instruction per cycle). Nah, CPU yang memiliki kecepatan yang lebih tinggi akan mampu memproses banyak instruksi per detiknya daripada CPU yang sama yang memiliki kecepatan yang lebih rendah. Saat CPU memproses satu microcode, maka kondisi itu disebut sebagai siklus mesin, atau machine cycle. Setiap siklus mesin memiliki empat operasi yang diilustrasikan pada gambar di bawah ini.

Siklus Mesin
Fetch, yakni saat instruksi program diambil dari memori, baik memori register, cache, RAM, atau memori sekunder/tersier lainnya. Hal ini dilakukan oleh Prefetch Unit. Decode, yakni saat instruksi program tersebut diterjemahkan oleh Decode Unit agar komponen Control Unit, Arithmetic and Logic Unit serta Floating Point Unit dapat memahaminya. Execute, yakni saat instruksi dilaksanakan. Store, yakni saat data asli atau hasil perhitungan dari ALU atau FPU disimpan di dalam register CPU.
Karena memang dalam satu siklus mesin hanya terjadi satu proses instruksi microcode, maka proses yang terlihat sederhana oleh kita justru membutuhkan banyak sekali siklus mesin. Sebagai contoh, anggaplah kita sedang mengalikan 4 dengan 5—sesuatu yang sederhana karena kita dapat menyelesaikannya kurang dari satu detik. Bagi CPU, instruksi 4*5 akan melibatkan beberapa instruksi seperti di bawah ini:
1.Ambil angka 4 dari RAM, terjemahkan, dan simpan di lokasi X di register.

2.Ambil angka 5 dari RAM, terjemahkan, dan simpan di lokasi Y di register.

3.Ambil dan terjemahkan insturksi perkalian, lalu kalikan angka yang ada di lokasi X dan Y di           register, lalu   simpan hasilnya di lokasi Z di register.

4. Ambil dan terjemahkan instruksi untuk menampilkan hasil perkaliannya, dan keluarkan output hasil     perhitungan dari lokasi Z di register ke RAM.

Tidak ada komentar:

Posting Komentar