Dokumen - SKK113108 - STMIK EL RAHMA BAB_IX

BAB VIII
ORGANISASI PROCESSOR
1.

Struktur Dan fungsi CPU
A. Hal-hal yang perlu dilakukan CPU, berkaitan dengan syarat-syarat yang terdapat
pada CPU adalah :
1. Fetch instruksi/ mengambil instruksi, CPU harus membaca instruksi dari
memory .
2. Interpret instruksi/ menerjemahkan instruksi, instruksi harus didekode untuk
menentukan aksi apa yang dilakukan.
3. Fetch data/ mengambil data, eksekusi suatu instruksi mungkin memerlukan
pembacaan data dari memory atau modul I/O.
4. Proses data, eksekusi suatu instruksi mungkin memrlukan operasi
arithmatika atau logika terhadap data.
5. Write/ menulis data, hasil eksekusi mungkin memerlukan penulisan data ke
memory atau modul I/O.

CPU
ALU
Status flag


B
U
S

Shifter

C
P
U
I
N
T
E
R
R
U
P
T


Complementer

Logika
arithmatika dan
boolean

Regis
ter

Unit
control

Jalur kontrol
BUS

Gambar 8.1 Struktur internal CPU

SYSTEM

2. Organisasi Register

Register pada CPU memiliki 2 fungsi, yaitu:
A. User visible register
Memungkinkan pemrogram bahasa mesin dan assembly meminimalkan
referensi memory utama dengan menggunakan register. Dibedakan menjadi ;
1.
General purpose register
a. Dapat digunakan funsi-fungsi pengalamatan.
b. Register data.
c. Hanya dapat dipakai untuk menampung data.
2. Register alamat
a.
Dapat digunkan untuk metode pengalamatan tertentu
b. Flag register
c. Bit yang disetel perangkat keras CPU sebagai hasil operasi
3. Control dan status register
a. Program counter (PC), berisi alamat instruksi yang akan diambil, dan
dapat di up date CPU setiap kali mengambil instruksi.
b. Instruction register (IR), untuk memuat instruksi yang diambil.
c. Memory address register (MAR), terhubung langsung dengan bus alamat.
d. Memory buffer register (MBR), terhubung langsung dengan bus data.

e. PSW ( Program Status Word), berisi informasi status
A.

Siklus Instruksi.
1. Siklus instruksi meliputi sub siklus ;
a. Fetch, membaca instruksi berikutnya dari memory ke dalam CPU.
b. Execute, mengiterpretasikan op code dan melakukan operasi.
c. Interrupt, meminta layanan.
START

halt

Ambil instruksi
berikutnya
Eksekusi instruksi

interrupt tak
diijinkan

siklus fetch (pengambilan)


siklus eksekusi

Interrupt enabled
Periksa interrupt
Process interrupt

Siklus interrupt

Gambar 8.2 Siklus instruksi dengan interrupt
2. Aliran data pada siklus interupsi.
a. Urutan kejadian selama siklus interuksi berlangsung tergantung pada
rancangan CPU.
b. Diasumsikan CPU pada register MAR, MBR, PC dan IR.
3. Pada saat siklus pengambilan (fetch cycle).
a. Instruksi dibaca dari memory

b. PC berisi alamat berikutnya yang akan diambil
c. Alamat dipindahkan ke MAR dan diletakkan di bus alamat
d. Unit control meminta pembacaan memory, hasilnya disimpan di bus data

dan disalin ke MBR, kemudian dipindah ke IR, sementara PC nilainya
naik 1, untuk mengambil data berikutnya.

PC

MAR

Memory

Unit
control

IR

MBR

Gambar 8.3 Siklus pengambilan
2)

Pipelining Instruksi

A. Strategi.
1.
Strategi pipelining, suatu input baru di terima pada
sebuah sisi sebalum input yang diterima sebelumnya keluar sebagai output di
sisi lainnya.
2.
pengolahan instruksi mempunyai tahapan pengambilan
instruksi dan pengeksekusian instruksi.
3.
Pada saat eksekusi instruksi terdapat waktu pada
memory yang tidak diakses atau dipergunakan , waktu ini dapat
dipergunakan untuk mengambil instruksi berikutnya secara parallel dengan
eksekusi instruksi.
4.
Pipeline mempunyai 2 tahapan yang independent ;
a.Tahap 1, mengambil instruksi dam membufferkannya.
b.Tahap 2, mengeksekusi instruksi.
B. Tahapan .
Untuk memperoleh kecepatan yang lebih tinggi, pipeline harus mempunyai lebih
banyak tahapan. Dekomposisi pengolahan instruksi :

1. Fetch instruction (FI), membaca instruksi berikutnya yang diharapkan ke
dalam buffer
2. Decode instruction (DI), menetukan op code dan operand specifier
3. Calculate operand (CO), menghitung alamat efektif seluruh operand
( melibatkan displacement, register indirect)

4. Fetch operand (FO), mengambil semua operang dari memory, yang ada di
register tidak perlu diambil
5. Execute instruction (EI), melakukan operasi yang diindikasikan dan
menyimpan hasilnya bila ada di lokasi operand tujuan yang telah ditentukan
6. Write operand (WO), menyimpan hasilnya di dalam memory
Waktu

Instruksi 1
Instruksi 2
Instruksi 3
Instruksi 4
Instruksi 5
Instruksi 6
Instruksi 7

Instruksi 8
Instruksi 9

1

2

3

4

5

6

7

8

9


10

11

FI

DI

CO

FO

EI

WO

FI

DI


CO

FO

EI

WO

FI

DI

CO

FO

EI

WO

FI

DI

CO

FO

EI

WO

FI

DI

CO

FO

EI

WO

FI

DI

CO

FO

EI

WO

FI

DI

CO

FO

EI

WO

FI

DI

CO

FO

EI

WO

FI

DI

CO

FO

EI

Gambar 8.4 Diagram pewaktuan operasi Pipeline Instruksi.

12

13

14

WO