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.
· Interrupt: 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.
0 Reviews:
Posting Komentar