-->

Organisasi Processor, Register, Siklus Intruksi, Fetching, Decoding dan Executing

Organisasi CPU

Organisasi Processor

Hal-hal yang perlu dilakukan cpu adalah:

1.    Fetch instruction / mengambil instruksi : cpu harus membaca instruksi dari memori.
2.    Interpret instruction / menerjemahkan instruksi : instruksi harus didekode untuk menentukan aksi    apa yang diperlukan.
3.    Fetch data / mengambil data : eksekusi suatu instruksi mungkin memerlukan pembacaan data dari memori atau modul i/o.
4.    Process data / mengolah data : eksekusi suatu instruksi mungkin memerlukan operasi aritmetika atau logika terhadap data.
5.    Write data / menulis data : hasil eksekusi mungkin memerlukan penulisan data ke memori atau modul i/o.


Organisasi Register


Organisasi register meliputi jenis-jenis register di bawah ini:
General: terdapat 8 buah register general-purpose 32-bit. Register-register ini juga dapat menampung operand-operand untuk keperluan kalkulasi alamat.
Segment: keenam register segmen 16-bit berisi pemilih segmen, yang diindex ke dalam tabel segmen.
Flags: register eflag berisi kode kondisi (persyaratan) dan bermacam-macam bit mode.
Instruction pointer: berisi alamat instruksi saat itu.
Terdapat juga register-register yang secara khusus ditujukan bagi unit floating point:
Numeric: semua register menampung bilangan floating point 80 bit extended-precision.
Control: register control 16-bit berisi bit-bit yang mengontrol operasi unit floating point.
Status: register status 16-bit berisi bit-bit yang merefleksikan status unit floating point saat itu.
Tag word: register 16-bit ini berisi tag 2-bit bagi semua register numerik floating point, yang mengindikasikan sifat-sifat isi register yang berkaitan. Keempat nilainya adalah valid, nol, special (nan, infinity, denormalized) dan kosong.

Register pada cpu memiliki 2 fungsi:

1.    User-visible registers: register ini memungkinkan pemrogram bahasa mesin dan bahasa assembler meminimalkan referensi main memori dengan cara mengoptimasi penggunaan register. Register ini adalah register yang dapat direfensikan dengan menggunakan bahasa mesin yang dieksekusi cpu.
2.    Control and status registers: register-register ini digunakan oleh unit kontrol untuk mengontrol operasi cpu dan oleh program sistem operasi untuk mengontrol eksekusi program. Terdapat 4 macam register yang penting bagi eksekusi instruksi :
Program counter (pc) atau pencacah program : berisi alamat instruksi yang akan diambil.
Instruction register (ir) : berisi instruksi yang terakhir diambil.
Memori address register (mar) : berisi alamat sebuah lokasi di dalam memori.
Memori buffer register (mbr) : berisi sebuah word data yang akan dituliskan ke dalam memori atau word yang terakhir dibaca.


Siklus Instruksi (Instruction Cycle)


Sebuah siklus instruksi meliputi subsiklus-subsiklus berikut ini:
Fetch: membaca instruksi berikutnya dari memori ke dalam cpu.
Execute: menginterpretasikan opcode dan melakukan operasi yang diindikasikan.
nterrupt: apabila interrupt diaktifkan dan interrupt telah terjadi, simpan status proses saat itu dan layani interrupt.


Siklus Tak Langsung


Eksekusi sebuah instruksi melibatkan sebuah operand atau lebih di dalam memori, yang masing-masing operand memerlukan akses memori. Kemudian, apabila digunakan pengalamatan tak langsung, maka diperlukan akses memori tambahan.


 Machine cycle


Machine cycle atau nama lainnya adalah processor cycle atau instruction cyclemerupakan merupakan suatu siklus instruksi dasar yang dikerjakan oleh cpu di dalam melakukan eksekusi suatu instruksi. Rangkaian proses eksekusi instruksi ini dimulai dari proses fetching data dan instruksi yang ada didalam memori hingga proses penulisan kembali hasil eksekusi instruksi tersebut ke dalam memori.


Secara garis besar siklus instruksi (machine cycle) dibagi ke dalam beberapa tahapan yaitu:

1.    Proses Fetching

Merupakan proses dimana instruksi dan data akan di load dari memori ke dalam cpu. Proses ini dimulai dari pengambilan alamat instruksi yang terdapat di dalam pc (program counter). Alamat yang terdapat di dalam pc ini merupakan alamat valid dari instruksi dan data yang disimpan ke dalam memori utama, dan merupakan alamat instruksi yang akan dieksekusi. Berdasarkan alamat instruksi yang terdapat di dalam pc, cpu akan mengambil instruksi tersebut untuk ditempatkan ke dalam register (instruction register/ ir) yang menyimpan instruksi yang akan dieksekusi.

2.    Proses Decoding

Merupakan tahapan dimana instruksi akan di terjemahkan (interpret) ke dalam perintah-perintah bahasa mesin dasar (add, sb, mba, sta, jmp, dll). Proses ini dilakukan oleh instruction decoder.

3.    Proses Executing

Pada tahapan dimana instruksi akan dieksekusi di dalam cpu, yaitu oleh alu (arithmetic logic unit).


Setelah tahapan diatas dikerjakan, maka hasil dari eksekusi tersebut akan dikembalikan ke dalam memori untuk disimpan. proses penyimpanan kembali hasil eksekusi isntruksi terdiri dari beberapa tahapan yaitu:

proses penempatan alamat memori yang digunakan untuk menyimpan hasil instruksi ke dalam mar
proses penempatan data (hasil instruksi) kedalam mdr
proses mengaktifkan memory write control signal pada control bus
proses menunggu memori untuk melakukan write data pada alamat tertentu
proses untuk menonaktifkan memory write control signal pada bus



Dalam menjalakan instruction cycle / machine cycle ada beberapa komponen yang berperan, yaitu:

1.    Program counter (pc)

Nama lainnya adalah instruction pointer, merupakan suatu pointer (penunjuk), bagi sejumlah instruksi yang ditempatkan di dalam memori dan akan dieksekusi oleh cpu.

2.    Memory address register (mar)

Adalah salah satu register yang terdapat di dalam cpu yang fungsinya adalah untuk menyimpan alamat memori dari data yang akan diambil (fetch) oleh cpu untuk dieksekusi. Selain itu mar juga akan menyimpan alamat memori dari data (hasil instruksi) yang akan ditulis kembali ke dalam memori.

3.    Memory data register (mdr)

Merupakan register yang terdapat dalam cpu yang fungsinya adalah menyimpan data sementara yang akan dieksekusi oleh cpu. Setiap kali proses fetching berlangsung, data akan disimpan di dalam mdr sebelum dilakukan proses eksekusi. Demikian juga hasil dari eksekusi instruksi akan disimpan di dalam register ini sebelum dilakukan proses penulisan kembali ke memori.

4.    Instruction register

Sama seperti mar dan mdr, instruction register (ir) ini terletak di dalam cpu. Ir ini bertanggung jawab untuk menyimpan instruksi yang akan dieksekusi oleh cpu. Pada beberapa jenis prosesor (terutama yang ada sekarang), digunakan konsep pipeline pada ir ini, dimana pada setiap stage pipeline melakukan proses decoding, dan proses yang lain pada waktu instruksi dikerjakan.

5.    Control unit (cu)

Control unit mengkoordinasi semua komponen-komponen yang ada di sistem computer, terutama yang berkaitan dengan pengolahan data dan eksekusi instruksi. Cu mengatur proses fetching instruksi maupun data dari memori ke cpu. Selain itu juga mengatur unit yang lain dengan menyediakan timing dan control signal.

6.    Arithmetic logic unit (alu)

Merupakan sirkuit digital yang terdapat di dalam cpu yang memiliki fungsi untuk melakukan komputasi aritmatika dan logika. Alu merupakan unit dasar dari pengolah data dan eksekusi instruksi.

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel