PROSESOR PADA KOMPUTER
(Central Processing
Unit)
Processor merupakan
otak dan pusat pengendali computer yang didukung oleh kompunen lainnya.
Processor adalah Sebuah IC yang mengontrol keseluruhan jalannya sebuah sistem
komputer.
Processor digunakan sebagai pusat atau otak dari komputer yang berfungsi untuk
melakukan perhitungan dan menjalankan tugas.
Prosesor adalah chip yang sering disebut “Microprosessor” yang sekarang
ukurannya sudah mencapai gigahertz. Ukuran tersebut adalah hitungan kecepatan
prosesor dalam mengolah data atau informasi. Merk prosesor yang banyak beredar
dipasatan adalah AMD, Apple, Cyrix VIA, IBM, IDT, dan Intel. Bagian dari
Prosesor Bagian terpenting dari prosesor terbagi 3 yaitu :
* Aritcmatics Logical Unit (ALU)
* Control Unit (CU)
* Memory Unit (MU)
Sejarah Perkembangan
Mikroprocessor
Dimulai dari sini :
1971: 4004 Microprocessor
Pada tahun 1971 munculah microprocessor pertama Intel , microprocessor 4004 ini
digunakan pada mesin kalkulator Busicom. Dengan penemuan ini maka terbukalah
jalan untuk memasukkan kecerdasan buatan pada benda mati.
1972: 8008
Microprocessor
Pada tahun 1972 munculah microprocessor 8008 yang berkekuatan 2 kali lipat dari
pendahulunya yaitu 4004.
1974: 8080 Microprocessor
Menjadi otak dari sebuah komputer yang bernama Altair, pada saat itu terjual
sekitar sepuluh ribu dalam 1 bulan
1978: 8086-8088 Microprocessor
Sebuah penjualan penting dalam divisi komputer terjadi pada produk untuk
komputer pribadi buatan IBM yang memakai prosesor 8088 yang berhasil
mendongkrak nama intel.
1982: 286 Microprocessor
Intel 286 atau yang lebih dikenal dengan nama 80286 adalah sebuah processor
yang pertama kali dapat mengenali dan menggunakan software yang digunakan untuk
processor sebelumnya.
1985: Intel386™ Microprocessor
Intel 386 adalah sebuah prosesor yang memiliki 275.000 transistor yang tertanam
diprosessor tersebut yang jika dibandingkan dengan 4004 memiliki 100 kali lipat
lebih banyak dibandingkan dengan 4004
1989: Intel486™ DX CPU Microprocessor
Processor yang pertama kali memudahkan berbagai aplikasi yang tadinya harus
mengetikkan command-command menjadi hanya sebuah klik saja, dan mempunyai
fungsi komplek matematika sehingga memperkecil beban kerja pada processor.
1993: Intel® Pentium® Processor
Processor generasi baru yang mampu menangani berbagai jenis data seperti suara,
bunyi, tulisan tangan, dan foto.
1995: Intel® Pentium® Pro Processor
Processor yang dirancang untuk digunakan pada aplikasi server dan workstation,
yang dibuat untuk memproses data secara cepat, processor ini mempunyai 5,5 jt
transistor yang tertanam.
1997: Intel® Pentium® II Processor
Processor Pentium II merupakan processor yang menggabungkan Intel MMX yang
dirancang secara khusus untuk mengolah data video, audio, dan grafik secara
efisien. Terdapat 7.5 juta transistor terintegrasi di dalamnya sehingga dengan
processor ini pengguna PC dapat mengolah berbagai data dan menggunakan internet
dengan lebih baik.
1998: Intel® Pentium II Xeon® Processor
Processor yang dibuat untuk kebutuhan pada aplikasi server. Intel saat itu
ingin memenuhi strateginya yang ingin memberikan sebuah processor unik untuk
sebuah pasar tertentu.
1999: Intel® Celeron® Processor
Processor Intel Celeron merupakan processor yang dikeluarkan sebagai processor
yang ditujukan untuk pengguna yang tidak terlalu membutuhkan kinerja processor
yang lebih cepat bagi pengguna yang ingin membangun sebuah system computer
dengan budget (harga) yang tidak terlalu besar. Processor Intel Celeron ini
memiliki bentuk dan formfactor yang sama dengan processor Intel jenis Pentium, tetapi
hanya dengan instruksi-instruksi yang lebih sedikit, L2 cache-nya lebih kecil,
kecepatan (clock speed) yang lebih lambat, dan harga yang lebih murah daripada
processor Intel jenis Pentium. Dengan keluarnya processor Celeron ini maka
Intel kembali memberikan sebuah processor untuk sebuah pasaran tertentu.
1999: Intel® Pentium® III Processor
Processor Pentium III merupakan processor yang diberi tambahan 70 instruksi
baru yang secara dramatis memperkaya kemampuan pencitraan tingkat tinggi, tiga
dimensi, audio streaming, dan aplikasi-aplikasi video serta pengenalan suara.
1999: Intel® Pentium® III Xeon® Processor
Intel kembali merambah pasaran server dan workstation dengan mengeluarkan seri
Xeon tetapi jenis Pentium III yang mempunyai 70 perintah SIMD. Keunggulan
processor ini adalah ia dapat mempercepat pengolahan informasi dari system bus
ke processor , yang juga mendongkrak performa secara signifikan. Processor ini
juga dirancang untuk dipadukan dengan processor lain yang sejenis.
2000: Intel® Pentium® 4 Processor
Processor Pentium IV merupakan produk Intel yang kecepatan prosesnya mampu
menembus kecepatan hingga 3.06 GHz. Pertama kali keluar processor ini
berkecepatan 1.5GHz dengan formafactor pin 423, setelah itu intel merubah
formfactor processor Intel Pentium 4 menjadi pin 478 yang dimulai dari
processor Intel Pentium 4 berkecepatan 1.3 GHz sampai yang terbaru yang saat
ini mampu menembus kecepatannya hingga 3.4 GHz.
2001: Intel® Xeon® Processor
Processor Intel Pentium 4 Xeon merupakan processor Intel Pentium 4 yang
ditujukan khusus untuk berperan sebagai computer server. Processor ini memiliki
jumlah pin lebih banyak dari processor Intel Pentium 4 serta dengan memory L2
cache yang lebih besar pula.
2001: Intel® Itanium® Processor
Itanium adalah processor pertama berbasis 64 bit yang ditujukan bagi pemakain
pada server dan workstation serta pemakai tertentu. Processor ini sudah dibuat
dengan struktur yang benar-benar berbeda dari sebelumnya yang didasarkan pada
desain dan teknologi Intel’s Explicitly Parallel Instruction Computing ( EPIC
).
2002: Intel® Itanium® 2 Processor
Itanium 2 adalah generasi kedua dari keluarga Itanium
2003: Intel® Pentium® M Processor
Chipset 855, dan Intel® PRO/WIRELESS 2100 adalah komponen dari Intel®
Centrino™. Intel Centrino dibuat untuk memenuhi kebutuhan pasar akan keberadaan
sebuah komputer yang mudah dibawa kemana-mana.
2004: Intel Pentium M 735/745/755 processors
Dilengkapi dengan chipset 855 dengan fitur baru 2Mb L2 Cache 400MHz system bus
dan kecocokan dengan soket processor dengan seri-seri Pentium M sebelumnya.
2004: Intel E7520/E7320
Chipsets
7320/7520 dapat digunakan untuk dual processor dengan konfigurasi 800MHz FSB,
DDR2 400 memory, and PCI Express peripheral interfaces.
2005: Intel Pentium 4 Extreme Edition 3.73GHz
Sebuah processor yang ditujukan untuk pasar pengguna komputer yang menginginkan
sesuatu yang lebih dari komputernya, processor ini menggunakan konfigurasi
3.73GHz frequency, 1.066GHz FSB, EM64T, 2MB L2 cache, dan HyperThreading.
2005: Intel Pentium D 820/830/840
Processor berbasis 64 bit dan disebut dual core karena menggunakan 2 buah inti,
dengan konfigurasi 1MB L2 cache pada tiap core, 800MHz FSB, dan bisa beroperasi
pada frekuensi 2.8GHz, 3.0GHz, dan 3.2GHz. Pada processor jenis ini juga
disertakan dukungan HyperThreading.
2006: Intel Core 2 Quad Q6600
Processor untuk type desktop dan digunakan pada orang yang ingin kekuatan lebih
dari komputer yang ia miliki memiliki 2 buah core dengan konfigurasi 2.4GHz
dengan 8MB L2 cache (sampai dengan 4MB yang dapat diakses tiap core ), 1.06GHz
Front-side bus, dan thermal design power ( TDP )
2006: Intel Quad-core Xeon X3210/X3220
Processor yang digunakan untuk tipe server dan memiliki 2 buah core dengan
masing-masing memiliki konfigurasi 2.13 dan 2.4GHz, berturut-turut , dengan 8MB
L2 cache ( dapat mencapai 4MB yang diakses untuk tiap core ), 1.06GHz
Front-side bus, dan thermal design power (TDP)
Komponen CPU
Komponen CPU terbagi
menjadi beberapa macam, yaitu sebagai berikut.
Unit kontrol yang
mampu mengatur jalannya program. Komponen ini sudah pasti terdapat dalam semua
CPU. CPU bertugas mengontrol komputer sehingga terjadi sinkronisasi kerja
antarkomponen dalam menjalankan fungsi-fungsi operasinya. termasuk dalam
tanggung jawab unit kontrol adalah mengambil intruksi-intruksi dari memori
utama dan menentukan jenis instruksi tersebut. Bila ada instruksi untuk
perhitungan aritmatika atau perbandingan logika, maka unit kendali akan
mengirim instruksi tersebut ke ALU. Hasil dari pengolahan data dibawa oleh unit
kendali ke memori utama lagi untuk disimpan, dan pada saatnya akan disajikan ke
alat output. Dengan demikian tugas dari unit kendali ini adalah:
Mengatur dan
mengendalikan alat-alat masukan (input) dan keluaran (output).
Mengambil
instruksi-instruksi dari memori utama.
Mengambil data dari
memori utama (jika diperlukan) untuk diproses.
Mengirim instruksi ke
ALU bila ada perhitungan aritmatika atau perbandingan logika serta mengawasi
kerja dari ALU.
Menyimpan hasil proses
ke memori utama.
Register merupakan
alat penyimpanan kecil yang mempunyai kecepatan akses cukup tinggi, yang
digunakan untuk menyimpan data dan/atau instruksi yang sedang diproses. Memori
ini bersifat sementara, biasanya digunakan untuk menyimpan data saat di olah
ataupun data untuk pengolahan selanjutnya. Secara analogi, register ini dapat
diibaratkan sebagai ingatan di otak bila kita melakukan pengolahan data secara
manual, sehingga otak dapat diibaratkan sebagai CPU, yang berisi
ingatan-ingatan, satuan kendali yang mengatur seluruh kegiatan tubuh dan
mempunyai tempat untuk melakukan perhitungan dan perbandingan logika.
ALU unit yang
bertugas untuk melakukan operasi aritmetika dan operasi logika berdasar
instruksi yang ditentukan. ALU sering di sebutmesin bahasa karena bagian
ini ALU terdiri dari dua bagian, yaitu unit arithmetika dan unit logika boolean
yang masing-masing memiliki spesifikasi tugas tersendiri. Tugas utama dari ALU
adalah melakukan semua perhitungan aritmatika yang terjadi sesuai dengan
instruksi program. ALU melakukan semua operasi aritmatika dengan dasar
penjumlahan sehingga sirkuit elektronik yang digunakan disebut adder.
Tugas lain dari ALU
adalah melakukan keputusan dari suatu operasi logika sesuai dengan instruksi
program. Operasi logika meliputi perbandingan dua operand dengan menggunakan
operator logika tertentu, yaitu sama dengan (=), tidak sama dengan (¹ ), kurang
dari (<), kurang atau sama dengan (£ ), lebih besar dari (>), dan lebih
besar atau sama dengan (³ ).
CPU Interconnections adalah
sistem koneksi dan bus yang menghubungkan komponen internal CPU, yaitu ALU,
unit kontrol dan register-register dan juga dengan bus-bus eksternal CPU yang
menghubungkan dengan sistem lainnya, seperti memori utama, piranti masukan
/keluaran.
Cara kerja CPU
Saat data dan/atau
instruksi dimasukkan ke processing-devices, pertama sekali diletakkan di MAA
(melalui Input-storage); apabila berbentuk instruksi ditampung oleh Control
Unit di Program-storage, namun apabila berbentuk data ditampung di Working-storage).
Jika register siap untuk menerima pengerjaan eksekusi, maka Control Unit akan
mengambil instruksi dari Program-storage untuk ditampungkan ke Instruction
Register, sedangkan alamat memori yang berisikan instruksi tersebut ditampung
di Program Counter. Sedangkan data diambil oleh Control Unit dari
Working-storage untuk ditampung di General-purpose register (dalam
hal ini di Operand-register). Jika berdasar instruksi pengerjaan yang
dilakukan adalah arithmatika dan logika, maka ALU akan mengambil alih operasi
untuk mengerjakan berdasar instruksi yang ditetapkan. Hasilnya ditampung di
Akumulator. Apabila hasil pengolahan telah selesai, maka Control Unit akan
mengambil hasil pengolahan di Accumulator untuk ditampung kembali ke Working-storage.
Jika pengerjaan keseluruhan telah selesai, maka Control Unit akan
menjemput hasil pengolahan dari Working-storage untuk ditampung ke Output-storage.
Lalu selanjutnya dari Output-storage, hasil pengolahan akan ditampilkan ke output-devices.
Fungsi CPU
CPU berfungsi seperti kalkulator,
hanya saja CPU jauh lebih kuat daya pemrosesannya. Fungsi utama dari CPU adalah
melakukan operasiaritmatika dan logika terhadap
data yang diambil dari memori atau
dari informasi yang dimasukkan melalui beberapa perangkat
keras, sepertipapan tombol, pemindai, tuas
kontrol, maupun tetikus. CPU dikontrol menggunakan sekumpulan instruksi perangkat
lunak komputer.Perangkat
lunak tersebut dapat dijalankan oleh CPU dengan membacanya dari media
penyimpan, seperti cakram keras, disket, cakram
padat, maupun pita perekam. Instruksi-instruksi tersebut kemudian disimpan
terlebih dahulu pada memori
fisik (MAA), yang mana setiap instruksi akan diberi alamat unik yang
disebut alamat memori. Selanjutnya, CPU dapat mengakses data-data pada MAA
dengan menentukan alamat data yang dikehendaki.
Saat sebuah program
dieksekusi, data mengalir dari RAM ke sebuah unit yang disebut dengan bus,
yang menghubungkan antara CPU dengan MAA. Data kemudian didekode dengan
menggunakan unit proses yang disebut sebagai pendekoder instruksi yang
sanggup menerjemahkan instruksi. Data kemudian berjalan ke unit aritmatika dan logika (ALU) yang melakukan
kalkulasi dan perbandingan. Data bisa jadi disimpan sementara oleh ALU dalam sebuah
lokasi memori yang disebut dengan register supaya dapat diambil
kembali dengan cepat untuk diolah. ALU dapat melakukan
operasi-operasi tertentu, meliputi penjumlahan, perkalian, pengurangan,
pengujian kondisi terhadap data dalam register, hingga mengirimkan hasil
pemrosesannya kembali ke memori
fisik, media penyimpan, atau register apabila akan mengolah hasil
pemrosesan lagi. Selama proses ini terjadi, sebuah unit dalam CPU yang disebut
dengan penghitung program akan memantau instruksi yang sukses
dijalankan supaya instruksi tersebut dapat dieksekusi dengan urutan yang benar
dan sesuai.
Percabangan instruksi
Pemrosesan instruksi
dalam CPU dibagi atas dua tahap, Tahap-I disebut Instruction Fetch, sedangkan
Tahap-II disebut Instruction Execute. Tahap-I berisikan pemrosesan CPU dimana
Control Unit mengambil data dan/atau instruksi dari main-memory ke register, sedangkan
Tahap-II berisikan pemrosesan CPU dimana Control Unit menghantarkan data
dan/atau instruksi dari register ke main-memory untuk ditampung di MAA, setelah
Instruction Fetch dilakukan. Waktu pada tahap-I ditambah dengan waktu pada
tahap-II disebut waktu siklus mesin (machine cycles time).
Penghitung program
dalam CPU umumnya bergerak secara berurutan. Walaupun demikian, beberapa
instruksi dalam CPU, yang disebut dengan instruksi lompatan, mengizinkan
CPU mengakses instruksi yang terletak bukan pada urutannya. Hal ini disebut
juga percabangan instruksi (branching instruction). Cabang-cabang instruksi
tersebut dapat berupa cabang yang bersifat kondisional (memiliki syarat
tertentu) atau non-kondisional. Sebuah cabang yang bersifat non-kondisional
selalu berpindah ke sebuah instruksi baru yang berada di luar aliran instruksi,
sementara sebuah cabang yang bersifat kondisional akan menguji terlebih dahulu
hasil dari operasi sebelumnya untuk melihat apakah cabang instruksi tersebut
akan dieksekusi atau tidak. Data yang diuji untuk percabangan instruksi
disimpan pada lokasi yang disebut dengan flag.
Bilangan yang dapat
ditangani
Kebanyakan CPU dapat
menangani dua jenis bilangan, yaitu fixed-point dan floating-point.
Bilangan fixed-point memiliki nilai digit spesifik pada salah satu
titik desimalnya. Hal ini memang membatasi jangkauan nilai yang mungkin untuk
angka-angka tersebut, tetapi hal ini justru dapat dihitung oleh CPU secara
lebih cepat. Sementara itu, bilangan floating-point merupakan
bilangan yang diekspresikan dalam notasi ilmiah, di mana sebuah angka
direpresentasikan sebagai angka desimal yang dikalikan dengan pangkat 10
(seperti 3,14 x 1057). Notasi ilmiah seperti ini merupakan cara yang singkat
untuk mengekspresikan bilangan yang sangat besar atau bilangan yang sangat
kecil, dan juga mengizinkan jangkauan nilai yang sangat jauh sebelum dan
sesudah titik desimalnya. Bilangan ini umumnya digunakan dalam
merepresentasikan grafik dan kerja ilmiah, tetapi proses aritmatika terhadap
bilangan floating-point jauh lebih rumit dan dapat diselesaikan dalam
waktu yang lebih lama oleh CPU karena mungkin dapat menggunakan beberapa siklus
detak CPU. Beberapa komputer menggunakan sebuah prosesor sendiri untuk
menghitung bilangan floating-point yang disebut dengan FPU (disebut juga math
co-processor) yang dapat bekerja secara paralel dengan CPU untuk mempercepat
penghitungan bilangan floating-point. FPU saat ini menjadi
standar dalam banyakkomputer karena kebanyakan aplikasi saat ini banyak
beroperasi menggunakan bilangan floating-point.