Organisasi Processor
SISTEM
KOMPUTER
A.
Organisasi Processor
Organisasi
Processor terdiri dari :
ALU
(Arithmatic and Logical Unit) : untuk melakukan komputasi atau pengolahan
data aktual
CU(Control
Unit) : untuk mengontrol perpindahan data dan instruksi ke / dariCPU dan
juga mengontrol operasi ALU.
Register:
memory internal CPU
Hal-hal
yang dilakukan CPU :
Fetch
Instruction(Mengambil instruksi) : CPU membaca instruksi dari memory
Interpret
Instruction(Menterjemahkan instruksi) : CPU menterjemahkan instruksi untuk
menentukan aksi yang diperlukan.
Fetch
Data (Mengambil data) : eksekusi instruksi mungkin memerlukan pembacaan data
dari memory atau dari modul I/O
Process
Data (Mengolah data) : eksekusi instruksi memerlukan operasi aritmatik atau
logika.
Write
data (Menulis data) :Hasil eksekusi mungkin memerlukan penulisan data ke memory
atau ke modul I/O
Untuk
melakukan tindakan ini prosesor kebutuhan beberapa cara untuk menyimpan
instruksi dan data sementara. Sebuah representasi sederhana dari sebuah
prosesor dapat ditampilkan sebagai berikut
Jika
Anda melihat lebih dekat pada organisasi internal prosesor, Anda akan melihat
bahwa sangat mirip dengan pembuatan komputer.
B.
Register Organization
Dalam
prosesor ada satu set register yang berfungsi sebagai tingkat memori atas
memori utama dan cache dalam hirarki / register tersebut dalam prosesor
melakukan dua peran
User
Visible register : register yang isinya dapat diketahui oleh pemrogram,
register ini juga dapat meminimalkan referensi ke main memory
Control
and Status register : register yang digunakan olehCU, kontrol operasiCPU dan
oleh sistem operasi untuk kontrol eksekusi program.
Perhatikan
tidak ada pemisahan bersih dari register ke dalam dua kategori . Pada beberapa
mesin program counter adalah pengguna terlihat saat pada orang lain itu tidak.
User Visible Registers
Terlihat
Pengguna register dapat dikategorikan ke dalam kategori berikut …
General
Purpose (Tujuan Umum)
Data
(data)
Address
(alamat)
Condition
codes (Kode kondisi)
Control & Status Registers
Ada berbagai register prosesor yang digunakan untuk mengendalikan operasi prosesor – sebagian besar tidak terlihat oleh pengguna tetapi beberapa dapat terlihat oleh instruksi mesin dieksekusi dalam kontrol atau mode sistem operasi .
Empat
register sangat penting untuk eksekusi instruksi
Program
counter (PC) – alamat instruksi yang akan diambil
Instruction
register (IR) – instruksi yang terakhir diambil
Memory
address register (MAR) – alamat lokasi dalam memori
Memory
buffer register (MBR) – kata data yang akan ditulis ke memori atau kata yang
paling baru dibaca
Banyak
prosesor termasuk register atau kumpulan register yang dikenal sebagai kata
status program ( PSW ) yang berisi informasi status . Beberapa bidang umum
termasuk
Sign
– tanda sedikit hasil dari operasi aritmatika terakhir
Zero
– Mengatur kapan hasilnya adalah 0
Carry
– Mengatur jika operasi menghasilkan carry masuk atau meminjam dari sedikit
high-order
Equal
– Mengatur jika hasil membandingkan logis adalah kesetaraan
Overflow
– Digunakan untuk menunjukkan aritmetik overflow
Interrupt
Enable/Disable – Digunakan untuk mengaktifkan / menonaktifkan interupsi
Supervisor
– menunjukkan apakah prosesor mengeksekusi di supervisor atau mode pengguna
C.
Siklus Instruksi
Siklus
instruksi meliputi subsiklus-subsiklus :
· Fetch : Membaca instruksi berikutnya dari
memory ke dalamCPU
· Execute : Menginterpretasi opcode dan melakukan
operasi yang diindikasikan
· Interrupt
: Apabila interrupt diaktifkan dan telah terjadi, maka simpan status proses
saat itu
dan layani
interrupt
Langkah-langkah yang
dilakukan oleh prosesor komputer untuk setiap instruksi bahasa mesin yang
diterima. Siklus mesin adalah proses siklus 4 yang meliputi :
1. Fetch
Mendapatkan instruksi dari Main Memory,
Instruksi berikutnya diambil dari alamat memori yang tersimpan saat ini dalam Kontra
Program (PC), dan disimpan dalam Instruksi mendaftar (IR). Pada akhir operasi fetch,
poin PC ke instruksi berikutnya yang akan dibaca pada siklus berikutnya.
2. Decode
menerjemahkannya ke dalam perintah komputer,
Decode menafsirkan instruksi. Selama siklus ini instruksi di dalam IR
(instruksi pendaftaran) akan diterjemahkan.
3. Execute
Sebenarnya proses perintah, Fase eksekusi akan
di pulsa clock berikutnya. Jika instruksi memiliki alamat tidak langsung , alamat efektif dibaca dari
memori utama, dan setiap data yang dibutuhkan diambil dari memori utama untuk
diolah dan kemudian ditempatkan ke dalam register data (Jam Pulse: T 3).
Jika instruksi ini langsung, tidak ada yang dilakukan pada pulsa clock. Jika
ini adalah instruksi I / O atau instruksi Register, operasi dilakukan
(dijalankan) di Pulse jam.
Store
menulis hasilnya ke Memori Utama
Store
menulis hasilnya ke Memori Utama
Proses
decoding pada siklus instruksi system komputer :
Proses
di mana komputer menentukan makna pesan input dari sinyal dan memutuskan maksud
dari sinyal tersebut agar bisa lebih mudah untuk di tampilkan.
Pipelining
Instruksi
Pipeline
memiliki dua tahapan independen yaitu fetch dan execution.
Tahap
pertama, mengambil instruksi dan mem-buffer- kannya
Ketika
tahap kedua bebas, tahapan pertama mengirimkan mengirimkan instruksi yang
dibufferkan.
Pada
saat tahap kedua sedang mengeksekusi instruksi, tahap pertama dapat mengambil
dan membufferkan instruksi berikutnya
Diharapkan
terjadi penggandaan kecepatan eksekusi Tetapi :
Umumnya
waktu eksekusi lebih lama dibandingkan dengan waktu pengambilan instruksi
Instruksi
pencabangan bersyarat membuat alamat instruksi berikutnya yang akan diambil
tidak diketahui
Prosesor
Pentium
Processor
sering disebut sebagai otak dan pusat pengendali computer yang didukung oleh
kompunen lainnya. Processor adalah sebuah IC yang mengontrol keseluruhan
jalannya sebuah sistem komputer dan digunakan sebagai pusat atau otak dari
komputer yang berfungsi untuk melakukan perhitungan dan menjalankan tugas.
Processor terletak pada socket yang telah disediakan oleh motherboard, dan dapat diganti dengan
processor yang lain asalkan sesuai dengan socket yang ada pada motherboard.
Salah satu yang sangat besar pengaruhnya terhadap kecepatan komputer tergantung
dari jenis dan kapasitas processor.
Prosesor
adalah chip yang sering disebut “Microprosessor” yang sekarang ukurannya sudah
mencapai Gigahertz (GHz). 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
-
1971 : 4004
Microprocessor
-
1972 : 8008 Microprocessor
-
1974 : 8080
Microprocessor
-
1978 : 8086-8088
Microprocessor
-
1982 : 286
Microprocessor
-
1985 : Intel386™
Microprocessor
-
1989 : Intel486™ DX CPU
Microprocessor
-
1993 : Intel Pentium
Processor
-
1995 : Intel Pentium Pro Processor
-
1997 : Intel Pentium II
Processor
-
1998 : Intel Pentium II Xeon
Processor
-
1999 : Intel Celeron
Processor
-
1999 : Intel Pentium III
Processor
-
1999 : Intel Pentium III Xeon Processor
-
2000 : Intel Pentium 4
Processor
-
2001 : Intel Xeon Processor
-
2001 : Intel Itanium Processor
-
2002 : Intel Itanium 2 Processor
-
2003 : Intel Pentium M Processor
-
2004 : Intel E7520/E7320 Chipsets
-
2005 : Intel Pentium D 820/830/840
-
2006 : Intel Core 2 Quad Q6600
-
2004 : Intel Pentium M 735/745/755
-
2006 : Intel Quad-core Xeon X3210/X3220
Siklus organisasi prosesor
Komponen Utama CPU
CPU
merupakan komponen terpenting dari sistem komputer. CPU adalah komponen
pengolah data berdasarkan instruksi – instruksi yang diberikan kepadanya. Dalam
mewujudkan fungsi dan tugasnya, CPU tersusun atas beberapa komponen sebagai
bagian dari struktur CPU, seperti terlihat pada gambar 1 dan struktur detail
internal CPU terlihat pada gamber 2. CPU tersusun atas beberapa komponen, yaitu
:
Arithmetic and Logic Unit (ALU), bertugas membentuk fungsi – fungsi pengolahan
data komputer. ALU sering disebut mesin bahasa (machine language)
karena bagian ini mengerjakan instruksi – instruksi bahasa mesin yang diberikan
padanya. Seperti istilahnya, ALU terdiri dari dua bagian, yaitu unit
arithmetika dan unit logika boolean, yang masing – masing memiliki spesifikasi
tugas tersendiri.
Control Unit, bertugas mengontrol operasi CPU dan secara keselurahan mengontrol
computer sehingga terjadi sinkronisasi kerja antar komponen dalam menjalankan
fungsi – fungsi operasinya. Termasuk dalam tanggung jawab unit kontrol adalah
mengambil instruksi – instruksi dari memori utama dan menentukan jenis
instruksi tersebut.
Registers, adalah media penyimpan internal CPU yang digunakan saat proses pengolahan
data. Memori ini bersifat sementara, biasanya digunakan untuk menyimpan data
saat diolah ataupun data untuk pengolahan selanjutnya.
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/keluar
Siklus
Fetch – Eksekusi
Pada setiap siklus instruksi, CPU awalnya akan membaca instruksi dari memori. Terdapat
register dalam CPU yang berfungsi mengawasi dan menghitung instruksi selanjutnya, yang disebut Program Counter (PC). PC akan menambah satu hitungannya setiap kali CPU membaca instruksi.
Pada setiap siklus instruksi, CPU awalnya akan membaca instruksi dari memori. Terdapat
register dalam CPU yang berfungsi mengawasi dan menghitung instruksi selanjutnya, yang disebut Program Counter (PC). PC akan menambah satu hitungannya setiap kali CPU membaca instruksi.
Instruksi – instruksi yang dibaca akan dibuat dalam register instruksi (IR). Instruksi – instruksi ini dalam bentuk kode – kode binner yang dapat diinterpretasikan oleh CPU kemudian dilakukan aksi yang diperlukan. Aksi – aksi ini dikelompokkan menjadi empat katagori, yaitu:
CPU – Memori, perpindahan data dari CPU ke memori dan sebaliknya.
CPU –I/O,
perpindahan data dari CPU ke modul I/O dan sebaliknya.
Pengolahan Data, CPU membentuk sejumlah operasi aritmatika dan logika terhadap data.
Kontrol,
merupakan instruksi untuk pengontrolan fungsi atau kerja. Misalnya instruksi
pengubahan urusan eksekusi.
Perlu
diketahui bahwa siklus eksekusi untuk suatu instruksi dapat melibatkan lebih
dari sebuah referensi ke memori. Disamping itu juga, suatu instruksi dapat
menentukan suatu operasi I/O. Instruction Addess Calculation (IAC), yaitu
mengkalkulasi atau menentukan alamat instruksi berikutnya yang akan dieksekusi.
Biasanya melibatkan penambahan bilangan tetap ke alamat instruksi sebelumnya.
Misalnya, bila panjang setiap instruksi 16 bit padahal memori memiliki panjang
8 bit, maka tambahkan 2 ke alamat sebelumnya.
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.
Fungsi Interrupt
Fungsi Interrupt
Fungsi interupsi adalah mekanisme penghentian atau pengalihan pengolahan instruksi dalam CPU kepada routine interupsi. Hampir semua modul (memori dan I/O) memiliki mekanisme yang dapat menginterupsi kerja CPU.
Tujuan interupsi secara umum untuk menejemen pengeksekusian routine instruksi agar
efektif dan efisien antar CPU dan modul – modul I/O maupun memori. Setiap komponen komputer dapat menjalankan tugasnya secara bersamaan, tetapi kendali terletak pada CPU disamping itu kecepatan eksekusi masing – masing modul berbeda sehingga dengan adanya fungsi interupsi ini dapat sebagai sinkronisasi kerja antar modul. Macam – macam kelas sinyal
interupsi :
Program,
yaitu interupsi yang dibangkitkan dengan beberapa kondisi yang terjadi pada
hasil eksekusi program. Contohnya: arimatika overflow, pembagian nol, oparasi
ilegal.
Timer,
adalah interupsi yang dibangkitkan pewaktuan dalam prosesor. Sinyal ini
memungkinkan sistem operasi menjalankan fungsi tertentu secara reguler.
I/O,
sinyal interupsi yang dibangkitkan oleh modul I/O sehubungan pemberitahuan
kondisi error dan penyelesaian suatu operasi.
Hardware failure, adalah interupsi yang dibangkitkan oleh kegagalan daya atau kesalahan
paritas memori.
Dengan
adanya mekanisme interupsi, prosesor dapat digunakan untuk mengeksekusi
instruksi – instruksi lain. Saat suatu modul telah selesai menjalankan tugasnya dan siap menerima tugas berikutnya maka modul ini akan mengirimkan permintaan interupsi ke prosesor. Kemudian prosesor akan menghentikan eksekusi yang dijalankannya untuk menghandel routine interupsi. Setelah program interupsi selesai maka prosesor akan melanjutkan eksekusi programnya kembali. Saat sinyal interupsi diterima prosesor ada dua kemungkinan tindakan, yaitu interupsi diterima/ditangguhkan dan interupsi ditolak. Apabila interupsi ditangguhkan, prosesor akan melakukan hal – hal dibawah ini :
instruksi – instruksi lain. Saat suatu modul telah selesai menjalankan tugasnya dan siap menerima tugas berikutnya maka modul ini akan mengirimkan permintaan interupsi ke prosesor. Kemudian prosesor akan menghentikan eksekusi yang dijalankannya untuk menghandel routine interupsi. Setelah program interupsi selesai maka prosesor akan melanjutkan eksekusi programnya kembali. Saat sinyal interupsi diterima prosesor ada dua kemungkinan tindakan, yaitu interupsi diterima/ditangguhkan dan interupsi ditolak. Apabila interupsi ditangguhkan, prosesor akan melakukan hal – hal dibawah ini :
Prosesor
menangguhkan eksekusi program yang dijalankan dan menyimpan konteksnya.
Tindakan ini adalah menyimpan alamat instruksi berikutnya yang akan dieksekusi
dan data lain yang relevan.
Prosesor
menyetel program counter (PC) ke alamat awal routine interrupt handler.
Gambar 3 berikut menjelaskan siklus eksekusi oleh prosesor dengan adanya fungsi
interupsi.
Untuk
sistem operasi yang kompleks sangat dimungkinkan adanya interupsi ganda (multiple
interrupt). Misalnya suatu komputer akan menerima permintaan interupsi saat
proses pencetakan dengan printer selesai, disamping itu dimungkinkan dari
saluran komunikasi akan
mengirimkan permintaan interupsi setiap kali data tiba. Dalam hal ini prosesor harus menangani interupsi ganda.
mengirimkan permintaan interupsi setiap kali data tiba. Dalam hal ini prosesor harus menangani interupsi ganda.
Dapat diambil dua buah pendekatan untuk menangani interupsi ganda ini. Pertama adalah menolak atau tidak mengizinkan interupsi lain saat suatu interupsi ditangani prosesor. Kemudian setelah prosesor selesai menangani suatu interupsi maka interupsi lain baru di tangani. Pendekatan ini disebut pengolahan interupsi berurutan / sekuensial. Pendekatan ini cukup baik dan sederhana karena interupsi ditangani dalam ututan yang cukup ketat. Kelemahan pendekatan ini adalah metode ini tidak memperhitungkan prioritas interupsi.
Pendekatan kedua adalah dengan mendefinisikan prioritas bagi interupsi dan interrupt
handler mengizinkan interupsi berprioritas lebih tinggi ditangani terlebih dahulu. Pedekatan ini disebut pengolahan interupsi bersarang. Metode ini digambarkan pada gambar b.
Sebagai
contoh untuk mendekatan bersarang, misalnya suatu sistem memiliki tiga
perangkat I/O: printer, disk, dan saluran komunikasi, masing – masing prioritasnya 2, 4 dan 5
Pada awal sistem melakukan pencetakan dengan printer, saat itu terdapat pengiriman data pada saluran komunikasi sehingga modul komunikasi meminta interupsi. Proses selanjutnya adalah pengalihan eksekusi interupsi mudul komunikasi, sedangkan interupsi printer ditangguhkan. Saat pengeksekusian modul komunikasi terjadi interupsi disk, namun karena prioritasnya lebih rendah maka interupsi disk ditangguhkan. Setelah interupsi modul komunikasi selesai akan dilanjutkan interupsi yang memiliki prioritas lebih tinggi, yaitu disk. Bila interupsi disk selesai dilanjutkan eksekusi interupsi printer. Selanjutnya dilanjutkan eksekusi program utama.
perangkat I/O: printer, disk, dan saluran komunikasi, masing – masing prioritasnya 2, 4 dan 5
Pada awal sistem melakukan pencetakan dengan printer, saat itu terdapat pengiriman data pada saluran komunikasi sehingga modul komunikasi meminta interupsi. Proses selanjutnya adalah pengalihan eksekusi interupsi mudul komunikasi, sedangkan interupsi printer ditangguhkan. Saat pengeksekusian modul komunikasi terjadi interupsi disk, namun karena prioritasnya lebih rendah maka interupsi disk ditangguhkan. Setelah interupsi modul komunikasi selesai akan dilanjutkan interupsi yang memiliki prioritas lebih tinggi, yaitu disk. Bila interupsi disk selesai dilanjutkan eksekusi interupsi printer. Selanjutnya dilanjutkan eksekusi program utama.
Comments
Post a Comment
1.Jangan Lupa Commentnya :)