CENTRAL
PROCESSING UNIT (CPU)
Arsitektur
dasar mesin tipe Von Neumann menjadi kerangka referensi pada komputer
digital umum (general-purpose)
modern. 3 bagian fundamental tersebut adalah :
Program
disimpan dalam unit memori utama yang berhadapan dengan piranti I/O
melalui CPU. CPU membaca dari atau menulis ke memori, dengan
mengirimkan alamat word ke unit memori melalui bus
address kemudian
menerima atau mengirimkan data melalui bus
data.
Data dipertukarkan antara CPU dan Unit I/O juga dengan
menggunakan bus
data.
Operasi disinkronisasikan oleh dua bus
control dengan
sinyal kendali yang dikirimkan oleh CPU dan sinyal acknowledgment
serta sinyal interupsi yang diterima oleh CPU.
- Sistem BUS
Sistem
Bus yaitu Jalur komunikasi yang dibagi pemakai Suatu set kabel
tunggal yang digunakan untuk menghubungkan berbagai subsistem.
Karakteristik penting sebuah bus ialah bahwa bus merupakan media
transmisi yang dapat dipakai secara bersamaan. Sistem komputer
terdiri dari sejumlah bus yang berlainan yang menyediakan jalan
antara dua buah komponen pada bermacam-macam tingkatan hirarki sistem
komputer. Suatu
Komputer terdiri dengan beberapa unsur penting seperti CPU, memori,
perangkat Input/Output. setiap computer saling terhubung dan
membentuk saling terkait fungsinya. Sistem bus adalah penghubung bagi
keseluruhan komponen computer dalam menjalankan tugasnya. Transfer
data antara komputer sangatlah terkait dengan mendominasikan
kerja suatu computer. Data atau program yang tersimpan di sebuah
memori dapat diakses dan dieksekusi CPU melalui bantuan sistem bus,
dengan demikian kita dapat melihat hasil eksekusi melalui monitor
juga menggunakan sistem bus.
- Cara Kerja Sistem BUS
- Pada sistem komputer akan lebih maju, jika arsitektur komputernya diciptakan dengan lebih kompleks, sehingga tingkatannya lebih performa, dan di pakai beberapa buah bus. Bus tersebut merupakan jalur akses data antara beberapa device yang berbeda.
- Dengan cara ini RAM, Prosesor, GPU (VGA AGP) dikaitkan oleh Otak bus dengan tegangan yang atau biasa disebut dengan sebutan FSB (Front Side Bus) .
- Sementara perangkat lain yang lebih lambat dihubungkan oleh bus yang tegangannya lebih rendah yang terkait dengan bus lain yang lebih cepat sampai ke Otak bus. Untuk komunikasi antar bus ini dapat digunakan sebuah bridge.
- Jenis Sistem BUS
Sedangkan
jenis-jenis bus itu sendiri juga dikelompokkan berdasarkan
masingmasing kriteria, tapi disini akan di jelaskan Jenis Bus menurut
fungsinya masing - masing . Langsung saja berikut Jenis-jenis Bus
Berdasarkan Fungsi :
- Data Bus :
- Berfungsi untuk mengirim data, membawa data dari dan ke perangkat atau periferal
- Terdiri atas bagian tertentu atau jalur penghantar, 8, 16, 32 dan 64 bahkan lebih jalur paralel
- Data ditransmisikan dalam dua jalur, yaitu dari CPU atau mesin proseses ke unit memori atau modul I/O dan sebaliknya.
Semakin lebar bus maka semakin besar data yang dapat dikirim sewaktu - waktu.
- Control Bus:
- Berfungsi untuk mensinkronkan proses penerimaan dan pengiriman data.
- Untuk menentukan memori atau port agar siap ditulis atau dibaca.
- Sinyal Kontrol: RD, WR, IO/M
- Sinyal Read dan write : untuk mencari data dari perangkat - Address Bus:
- Membawa informasi agar dapat mengetahui tempat suatu perangkat atau periferal
- Untuk memilih tempat memori atau port yang akan ditulis atau dibaca
- Untuk mengatur rute data, muncul dari mana, tujuannya ke mana.
- Bersifat searah, cpu memberikan alamat yang bertujuan untuk mengatur periferal mana yang dituju. Contoh memori mana yang dicari atau I/O mana yang dituju.
- Semakin besar bus alamat, akan semakin banyak range lokasi tempat yang dapat di temukan.
- Jumlah alamat yang dapat dicari pada Bus alamat yaitu sebanyak jumlah yang di tentukan.
- ALU (Aritmatik Logic unit)
unit
yang bertugas untuk melakukan operasi aritmetika dan operasi logika
berdasar instruksi yang ditentukan. ALU sering di sebut mesin 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 (matematika) 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 ( ≥).
- CONTROL UNIT
Unit kendali / Control Unit (CU) adalah salah satu bagian dari CPU yang bertugas untuk memberikan arahan/kendali/ kontrol terhadap operasi yang dilakukan di bagian ALU (Arithmetic Logical Unit) di dalam CPU tersebut. Output dari CU ini akan mengatur aktivitas bagian lainnya dari perangkat CPU.
Pada awal-awal desain komputer, CU diimplementasikan sebagai ad-hoc logic yang susah untuk didesain. Sekarang, CU diimplementasikan sebagai sebuah microprogram yang disimpan di dalam tempat penyimpanan kontrol (control store). Beberapa word dari microprogram dipilih oleh microsequencer dan bit yang datang dari word-word tersebut akan secara langsung mengontrol bagian-bagian berbeda dari perangkat tersebut, termasuk di antaranya adalah register, ALU, register instruksi, bus dan peralatan input/output di luar chip. Pada komputer modern, setiap subsistem ini telah memiliki kontrolernya masing-masing, dengan CU sebagai pemantaunya (supervisor). CU, juga berfungsi untuk bersinkronasi antar komponen.
Tugas CU :
- Mengatur dan mengendalikan alat input dan output
- Mengatur dan mengendalikan instruksi-instruksi dari memori utama
- Mengambil data dari memori utama kalau diperlukan oleh proses
- Mengirim instruksi ke ALU bila ada perhitungan aritmetika atau perbandingan logika serta mengawasi kerja.
- Menyimpan hasil proses ke memori utama.
Macam-macam
CU :
1.Single
Cycle CU : Proses
di CUl ini hanya terjadi dalam satu clock cycle, artinya setiap
instruksi ada pada satu cycle, maka dari itu tidak memerlukan state.
Dengan demikian fungsi boolean masing-masing control line hanya
merupakan fungsi dari opcode saja. Clock cycle harus mempunyai
panjang yang sama untuk setiap jenis instruksi. Ada dua bagian pada
unit kontrol ini, yaitu proses men-decode opcode untuk
mengelompokkannya menjadi 4 macam instruksi (yaitu di gerbang AND),
dan pemberian sinyal kontrol berdasarkan jenis instruksinya (yaitu
gerbang OR). Keempat jenis instruksi adalah “R-format”
(berhubungan dengan register), “lw” (membaca memori), “sw”
(menulis ke memori), dan “beq” (branching). Sinyal kontrol yang
dihasilkan bergantung pada jenis instruksinya. Misalnya jika
melibatkan memori ”R-format” atau ”lw” maka akan sinyal
”Regwrite” akan aktif. Hal lain jika melibatkan memori “lw”
atau “sw” maka akan diberi sinyal kontrol ke ALU, yaitu “ALUSrc”.
Desain single-cycle ini lebih dapat bekerja dengan baik dan benar
tetapi cycle ini tidak efisien.
2.Multi
Cycle CU : Berbeda
dengan unit kontrol yang single-cycle, unit kontrol yang multi-cycle
lebih memiliki banyak fungsi. Dengan memperhatikan state dan opcode,
fungsi boolean dari masing-masing output control line dapat
ditentukan. Masing-masingnya akan menjadi fungsi dari 10 buah input
logic. Jadi akan terdapat banyak fungsi boolean, dan masing-masingnya
tidak sederhana. Pada cycle ini, sinyal kontrol tidak lagi ditentukan
dengan melihat pada bit-bit instruksinya. Bit-bit opcode
memberitahukan operasi apa yang selanjutnya akan dijalankan CPU;
bukan instruksi cycle selanjutnya.
- Set register
Register
prosesor merupakan memory yang dapat diakses secara cepat untuk
central processing unit (CPU). Register biasanya terdiri dari
sejumlah kecil penyimpanan cepat, meskipun beberapa register memiliki
fungsi hardware tertentu, dapat berupa read-only atau menulis-hanya.
Register biasanya ditangani oleh mekanisme lain dari memori utama,
tetapi mungkin dalam beberapa kasus menjadi pemetaan memori.
Register
prosesor biasanya berada di bagian atas hirarki memori, dan
menyediakan cara tercepat untuk mengakses data. register prosesor
biasanya mengacu hanya untuk kelompok register yang secara langsung
dikodekan sebagai bagian dari instruksi, seperti yang didefinisikan
oleh set instruksi. Namun, CPU modern dengan kinerja tinggi sering
memiliki duplikat dari "register arsitektur" dalam rangka
meningkatkan kinerja melalui daftar penamaan register, yang
memungkinkan eksekusi paralel. desain x86 modern mengakuisisi teknik
ini sekitar tahun 1995 dengan rilis dari Pentium Pro, Cyrix 6x86,
Nx586, dan AMD K5.
Register dapat diklasifikasikan sebagai berikut :
Register dapat diklasifikasikan sebagai berikut :
- User Accessible Register
- Data Register
- Address Register
- General Purpose Register
- Status Register
- Floating Point Register
- Constant Register
- Vector Register
- Special Purpose Register
- Internal Register
- Instruction Register
- Register yang terhubung dengan informasi dari ram : Memory Buffer Register, Memory Data Register, Memory Address Register
Pada
gambar (a) diatas menunjukkan kumpulan register pada mikroprosesor
intel 8085. Pada CPU ini, register A berfungsi sebagai sebuah
akumulator 8 bit. CPU juga mencakup sebuah program
counter (PC),
sebuah stack
pointer(SP),
sebuah flag
register dan
enam register pengalamatan 8 bit. Pada gambar (b) diatas, register 8
bit biasanya digunakan secara berpasangan. Register A bersama-sama
dengan flag register, membentuk program status word (PSW). Tiga
pasangan lainnya digunakan untuk tujuan pengalamatan, pasangan H
merupakan pasangan yang sangat umum digunakan. Pasangan ini bisa
dirujuk secara bersama-sama atau terpisah, yang menyebabkan
tersedianya berbagai variasi intruksi.
refrensi:
ricky.staff.gunadarma.ac.id/Downloads/files/21939/5+CPU.doc
hasanudin.staff.gunadarma.ac.id/Downloads/files/32415/Central+Processing+Unit.doc