Pengambilan Instruksi Kalkulasi alamat operand Pengambilan operand Operasi eksekusi

20 Pag e 20 e Execution Cycle Execution cycle adalah proses dari CPU untuk mengerjakan instruksi yang sudah dijemput dari main memory dan sudah berada di IR register.Control unit di CPU mengartikan instruksi tersebut, melaksanakan operasi yang harus dilakukan, seperti penjemputanpenambilan data dari main memory, mengirim instruksi ke ALU untuk melakukan operasi aritmatika atau logika dan menyimpan hasil pengolahan kembali ke main memory. Sedangkan Execution sequence adalah proses atau langkah sebuah eksekusi program yang terjadi dan berlangsung pada sebuah sistem mikroprosesor. Sebuah mikroprosesor harus dapat melakukan proses: - Fetch data atau mengambil data baik dari memori maupun dari IO dengan proses baca read data. - Proses data atau mengolah data dalam salah satu operasi aritmetika atau logika. - Write data atau menulis data ke memori atau IO. - Fetch Instruction atau mengambil instruksi yaitu membaca instruksi dari memori . - Interpret Instruction yaitu proses mengintepretasikan menterjemahkan instruksi. Instruksi harus didekode untuk menentukan aksi dari suatu instruksi yang harus dilakukan. Instruksi dalam bahasa mesin berbentuk kode-kode biner dalam heksadesimal. Setiap perintah dikodekan dan disusun dalam sebuah set instruksi.Untuk mendapatkan gambaran yang jelas, bagaimana bagian-bagian dari sebuah komputer atau sistem mikroprosesor bekerja.

1.7.1 Pengambilan Instruksi

Sub-siklus melibatkan pengambilan instruksi dari alamat meori program yang disediakan dalam program counter. Masalah yang muncul meliputi : 1. Jika panjangninstruksi lebih besar dari panjang word, maka unit control melakukan siklus baca memori lebih dari satu untuk melakukan pengambilan instruksi. Contoh : Panjang 21 Pag e 21 instruksi adalah 4byte dan panjang word memori adalah 2byte, maka dua word harus diambilfetch 2. Jika datapath antara CPU dan memori lebih kecil dari panjang word memori, maka unit control melakukan siklus bus lebih dari satu kali untuk mendapatkan satu word memori. Contoh : bus data adalah 16byte dan panjang word memori 32bit, dua siklus bus dibutuhkan untu mengambil satu word. Bagaimana unit control mengetahui panjang dari instruksi yang diambil? Panjang instruksi diketahui dari opcode instruksi tersebut. Karena itu, unit control mengetahui panjang instruksi hanya setelah pengambilan word pertama instruksi. Berdasarkan opcode, unit control memutuskan jumlah word yang akan diambil dari memori. Gambar 6.7 Pengambilan instruksi multiword 22 Pag e 22 Gambar : siklus instruksi

1.7.2 Kalkulasi alamat operand

Ada 4 lokasi alamat operand : 1. Pada instruksi itu sendiri sebagai immediate operand 2. Pada register prosesor 3. Pada memori utama 4. Pada port IO Alamat operan dinyatakan dalam instruksi pada salah satu mode pengalamatan seperti pengalamatan langsung dan tidak langsung. Prosedur kalkulasi alamat operand tergantung pada mode pengalamatan masing-masing

1.7.3 Pengambilan operand

Jika operand berada dalam memori utama, CPU melakukan sikles baca memori. Jumlah siklus memori utama bergantung pada dua factor yaitu panjang operand dan panjang word memori.

1.7.4 Operasi eksekusi

23 Pag e 23 Operasi control didesain untuk melaksanakan semua mikro-operasi seperti yang ditetapkan oleh instruksinya.Unit control mengetahui opcode urutan aksi yang tepat yang harus dilakukan selama tingkatan ini. Semua operasi internal berada di dalam prosesor sedangkan yang lain berada dalam unit eksternal memori.

1.7.5 Pemilihan Desain unit control