CPU Strcuturer And Function

CPU
Komponen utama CPU
  • Arithmetic and logic unit (ALU) : Melakukan komputasi atau pengolahandata berdasar instruksi yang diberikan padanya.
  • Register : Memori internal berukuran kecil.
  • Control Unit (CU) : Mengontrol perpindahan data dan instruksi ke CPU atau dari CPU dan mengontrol operasi ALU. Menunjukan memori internal minimum yang terdiri dari beberapa lokasi penyimpan yang disebut register.

Diagram CPU


Tugas CPU:
  • Menyimpan data untuk sementara waktu
  • Mengingat lokasi instruksi terakhir agar dapat mengambil instruksi selanjutnya.
  • Menyimpan instruksi dan data untuk sementara waktu pada saat instruksi sedang dieksekusi.

Aktivitas CPU:
  • Fetch Instruction (mengambil instruksi) : membaca instruksi dari memori
  • Interpret Data (mengambil data) : eksekusi instruksi mungkin memerlukan pembacaan data dari memori atau modul I/O.
  • Fetch Data (mengambil data) : eksekusi instruksi mungkin memerlukan pembacaan data dari memori atau modul I/O.
  • Process Data (mengolah data) : eksekusi instruksi mungkin memerlukan operasi aritmatika atau logika terhadap data.
  • Write Data (menulis data) : hasil eksekusi mungkin memerlukan penulisan data ke memori


Organisasi Register
Fungsi register CPU
1. User Visible Registers : register ini memungkinkan pemrogram bahasa mesin dan bahasa assembler meminimalkan referensi main memori dengan cara mengoptimasi penggunaan register. Register ini merupakan register yang dapat direferensikan dengan menggunakan bahasa mesin yang dieksekusi CPU.
Jenis-jenisnya:
  • General Purpose : dapat digunakan untuk berbagai fungsi oleh pemrogram dan dapat berisi operand sembarang opcode. Pada kasus tertentu dapat digunakan untuk fungsi pengalamatan (misal: register indirect, displacement)
  • Data : hanya dapat digunakan untuk menampung data tidak dapat digunakan untuk kalkulasi dan alamat operand.
  • Alamat : menyerupai general purpose register digunakan untuk mode pengalamatan tertentu. Misal segment pointer digunakan untuk menyimpan alamat berbasis segmen, register index untuk alamat terindex atau autoindex, stack pointer untuk pengalamatan implisit yaitu push, pop dan instruksi stack lainnya yang tidak perlu operand stack eksplisit.
  • Kode-kode Kondisi

2. Control and Status Registers : register ini digunakan oleh unit kontrol untuk mengontrol operasi CPU dan oleh program sistem operasi untuk mengontrol eksekusi program. Register yang digunakan untuk mengontrol operasi bersifat visible terhadap instruksi mesin namun tidak visible bagi pengguna. 
Register yang digunakan untuk eksekusi instruksi:
  • Program Counter (PC) :berisi alamat instruksi yang akan diambil.
  • Instruction Register (IR) :berisi instruksi yang terakhir diambil.
  • Memory Address Register (MAR) :berisi alamat sebuah lokasi didalam memori.
  • Memory Buffer Register (MBR) :berisi sebuah word data yang akan dituliskan ke dalam memori atau word yang terakhir dibaca.
Program Status Word (PSW) adalah semua rancangan CPU mencakup sebuah register atau sekumpulan register. Berisi informasi status, kode kondisi dan informasi status lainnya.

Siklus Instruksi
  • Fetch : pengambilan data ke memori atau register.
  • Execute : menginterpretasikan opcode dan melakukan operasi yang diidentifikasi.
  • Interrupt : ketika interrupt diaktifkan atau telah terjadi simpan status proses yang sedang berjalan dan layani interupsi.

Sifat siklus instruksi:
  • Sekali instruksi terambil makan operand specifiernya harus diidentifikasi.
  • Seluruh operand input di memori akan diambil sementara operand berbasis register tidak perlu diambil.
  • Setelah eksekusi terjadi proses yang sama diperlukan untuk menyimpan hasilnya didalam memori.

Diagram Siklus Instruksi

Aliran Data Siklus Pengambilan
Urutan kejadian selama siklus instruksi tergantung rancangan CPU.
Proses aliran data:
  • Pada saat siklus pengambilan instruksi dibaca dari memori.
  • PC berisi alamat instruksi berikutnya yang akan diambil.
  • Alamat ini dipindahkan ke MAR dan di simpan di bus alamat.
  • Unit kontrol meminta pembacaan memori dan hasilnya disimpan di bus data dan disalin ke MBR dan kemudian dipindahkan ke IR.
  • PC naik nilainya 1, sebagai persiapan untuk pengambilan selanjutnya.
  • Siklus selesai, unit kontrol memerisa isi IR untuk menentukan apakah IR berisi operand specifier yang menggunakan pengalamat tak langsung.


Aliran Data Siklus Tak Langsung
  • N bit paling kanan pada MBR, yang berisi referensi alamat, dipindahkan ke MAR.
  • Unit kontrol meminta pembacaan memori, agar mendapatkan alamat operand yang diinginkan ke dalam MBR.
  • Siklus pengambilan dan siklus tidak langsung cukup sederhana dan dapat diramalkan.
  • Siklus instruksi mengambil banyak bentuk karena bentuk bergantung pada bermacammacam instruksi mesin yang terdapat didalam IR.
  • Siklus meliputi pemindahan data di antara register-register, pembacaan atau penulisan dari memori atau I/O, dan atau penggunaan ALU.


Aliran Data Siklus Interupsi
  • Isi PC saat itu harus disimpan sehingga CPU dapat melanjutkan aktivitas normal setelah terjadinya interupsi.
  • Isi PC dipindahkan ke MBR untuk kemudian dituliskan ke dalam memori.
  • Lokasi memori khusus yang dicadangkan untuk keperluan ini di muatkan ke MAR dari unit kontrol.
  • Lokasi ini berupa stack pointer.
  • PC dimuatkan dengan alamat rutin interupsi.
  • Akibatnya, siklus interupsi berikutnya akan mulai mengambil instruksi yang sesuai.



Pipeline
Mesin yang melaksanakan beberapa komputasi yang berbeda secar bersama-sama, namun pada saat itu setiap komputasi akan berada dalam tahapan eksekusi yang berbeda.
Input baru akan diterima pada sebuah sisi sebelum input yang diterima sebelumnya keluar sebagai output di sisi lainnya.

Gambar Instruksi Pipeline

Tahapan Pipeline
  • Tahapan pertama mengambil instruksi dan membuffernya.
  • Ketika tahapan kedua bebas, tahapan pertama mengirimkan instruksi yang di bufferkan tersebut.
  • Pada saat tahapan kedua sedang mengeksekusi instruksi, tahapan pertama memanfaatkan siklus memori yang tidak dipakai untukmengambil dan membufferkan instruksi berikutnya.

Efek Pipeline
  • Mempercepat eksekusi instruksi.
  • Apabila tahapan pengambilan dan eksekusi memerlukan waktu yang sama, maka siklus instruksi akan berkurang menjadi separuhnya.

Anda baru saja membaca artikel yang berkategori Kuliah / Pelajaran / Tutorial dengan judul CPU Strcuturer And Function. Anda bisa bookmark halaman ini dengan URL http://link-soft.blogspot.com/2011/07/cpu-strcuturer-and-function.html. Terima kasih!
Ditulis oleh: Unknown - Wednesday, July 6, 2011

Belum ada komentar untuk "CPU Strcuturer And Function"

Post a Comment

Silahkan tinggalkan komentar untuk kemajuan blog ini..