© 2009 Fakultas Teknologi Informasi Universitas Budi Luhur Jl. Ciledug Raya Petukangan Utara Jakarta Selatan Website: Arsitektur Komputer Pertemuan – 12 Struktur & Fungsi CPU
Struktur & Fungsi CPU Fungsi CPU 1. Fetch instruksi 2. Interpretasi instruksi 3. Fetch data 4. Proses data 5. Simpan data CPU – BUS Sistem
Struktur Internal CPU
Register 1. CPU harus memiiki suatu working-space atau temporary storage 2. Dan itu disebut registers 3. Jumlah dan Fungsi Register bervariasi diantara rancangan prosesor 4. Merupakan Keputusan paling utama dalam suatu rangcangan komputer 5. Register menduduki Top-Level pada hirarki memori Jenis-Jenis Register 1. General Purpose 2. Data 3. Address 4. Condition Codes
General Purpose Register Digunakanuntuk data atau addressing Data: Accumulator Addressing: Segment General purpose: Menambah fleksibilitas programer Increase instruction size & complexity Ukuran Instruksi bertambah juga kompleksitasnya Specialized: Instruksi kecil dan cepat Tetapi kurang fleksibilitasnya
Jumlah General Purpose Register 1. Antara Lebih Sedikit = lebih banyak referensi memori 3. Semakin banyak tidak akan menurunkan referensi dan mengambil alih ruang untuk prosesor. Ukuran Lebar Register 1.Cukup untuk menampung alamat secara penuh 2. Cukup untuk menampung ukuran data secara penuh 3. Memungkinkan untuk mengkombinasikan dua data register Contoh :C programming double int a; long int a;
Condition Code Registers Set bit secara individual Contoh: hasil terakhir adalah nol Dapat dibaca oleh program e.g. Jump if zero Tak dapat dirubah dari program Control & Status Registers 1. Program Counter 2. Instruction Decoding Register 3. Memory Address Register 4. Memory Buffer Register
Program Status Word Kumpulan bit, Termasuk kode kondisi 1. Zero 2. Carry 3. Equal 4. Overflow 5. Interrupt enable/disable 6. Supervisor Supervisor Mode 1. Intel ring zero 2. Kernel mode 3. Memungkinkan instruksi khusus bisa dieksekusi 4. Digunakan oleh sistem operasi 5. Tak tersedia bagi program user
Beberapa Contoh Pengorganisasian Register
Instruction Cycle with Indirect
Instruction Cycle State Diagram
Siklus Fetch 1.PC berisi alamat berikutnya 2. Address pindah ke MAR 3. Addres diletakkan dalam bus 4. Control unit minta layanan memory read 5. Hasilnya disimpan ke data bus, dikopi ke MBR, lalu ke IR 6. PC = PC + 1 Data Fetch 1. IR diperiksa statusnya 2. Jika direct addressing maka, indirect Cycle dijalankan 3. N bit terkanan dari MBR ditransfer ke MAR 4. Control unit request memory read 5. Result (address atau operand) dipindahkan ke MBR
Data Flow (Fetch Diagram)
Execute Dapat berbentuk apa saja, tergantung pada instruksi sdg dieksekusi Dapat berupa : Memory read/write Input/Output, Register transfers ALU operations Interrupt Sederhana Predictable PC setelah interrupt disimpan Spesial lokasi memori (stack pointer) di-load ke MAR MBR dituliskan ke memory PC diisi dengan alamat interrupt handling routine Next instruction memungkinkan untuk di fetch
Interrupt Diagram
Prefetch Fetch melakukan akses ke Main Memori Eksekusii biasanya tidak melakukan akses ke memori Dapat melakukan fetch ke alamat berikutnya Proses ini disebut Instruksi Prefetch